From 574199c94d11ba7e5f0b420a7c41904cc5df5a5d Mon Sep 17 00:00:00 2001
From: rdb
Date: Tue, 30 Jul 2013 21:33:50 +0000
Subject: [PATCH] Remove pandaapp completely
---
pandaapp/Package.pp | 59 -
pandaapp/Sources.pp | 4 -
pandaapp/src/Sources.pp | 4 -
pandaapp/src/configfiles/Sources.pp | 1 -
pandaapp/src/configfiles/pandaapp.init | 1 -
pandaapp/src/httpbackup/Sources.pp | 19 -
pandaapp/src/httpbackup/backupCatalog.I | 59 -
pandaapp/src/httpbackup/backupCatalog.cxx | 195 -
pandaapp/src/httpbackup/backupCatalog.h | 74 -
pandaapp/src/httpbackup/httpBackup.cxx | 519 ---
pandaapp/src/httpbackup/httpBackup.h | 84 -
pandaapp/src/indexify/Sources.pp | 38 -
pandaapp/src/indexify/default_font.cxx | 3357 -----------------
pandaapp/src/indexify/default_font.h | 22 -
pandaapp/src/indexify/default_index_icons.cxx | 297 --
pandaapp/src/indexify/default_index_icons.h | 36 -
pandaapp/src/indexify/fontSamples.cxx | 264 --
pandaapp/src/indexify/fontSamples.h | 59 -
pandaapp/src/indexify/indexImage.cxx | 918 -----
pandaapp/src/indexify/indexImage.h | 96 -
pandaapp/src/indexify/indexParameters.cxx | 296 --
pandaapp/src/indexify/indexParameters.h | 154 -
pandaapp/src/indexify/indexify.cxx | 738 ----
pandaapp/src/indexify/indexify.h | 66 -
pandaapp/src/indexify/left.png | Bin 536 -> 0 bytes
pandaapp/src/indexify/movie.png | Bin 258 -> 0 bytes
pandaapp/src/indexify/music_big.jpg | Bin 2053 -> 0 bytes
pandaapp/src/indexify/photo.cxx | 182 -
pandaapp/src/indexify/photo.h | 67 -
pandaapp/src/indexify/right.png | Bin 526 -> 0 bytes
pandaapp/src/indexify/rollDirectory.cxx | 878 -----
pandaapp/src/indexify/rollDirectory.h | 112 -
pandaapp/src/indexify/sound.png | Bin 310 -> 0 bytes
pandaapp/src/indexify/up.png | Bin 549 -> 0 bytes
pandaapp/src/pandaappbase/Sources.pp | 10 -
pandaapp/src/pandaappbase/pandaappbase.cxx | 15 -
pandaapp/src/pandaappbase/pandaappbase.h | 25 -
pandaapp/src/pandaappbase/pandaappsymbols.h | 26 -
38 files changed, 8675 deletions(-)
delete mode 100644 pandaapp/Package.pp
delete mode 100644 pandaapp/Sources.pp
delete mode 100644 pandaapp/src/Sources.pp
delete mode 100644 pandaapp/src/configfiles/Sources.pp
delete mode 100644 pandaapp/src/configfiles/pandaapp.init
delete mode 100644 pandaapp/src/httpbackup/Sources.pp
delete mode 100644 pandaapp/src/httpbackup/backupCatalog.I
delete mode 100644 pandaapp/src/httpbackup/backupCatalog.cxx
delete mode 100644 pandaapp/src/httpbackup/backupCatalog.h
delete mode 100644 pandaapp/src/httpbackup/httpBackup.cxx
delete mode 100644 pandaapp/src/httpbackup/httpBackup.h
delete mode 100644 pandaapp/src/indexify/Sources.pp
delete mode 100644 pandaapp/src/indexify/default_font.cxx
delete mode 100644 pandaapp/src/indexify/default_font.h
delete mode 100644 pandaapp/src/indexify/default_index_icons.cxx
delete mode 100644 pandaapp/src/indexify/default_index_icons.h
delete mode 100644 pandaapp/src/indexify/fontSamples.cxx
delete mode 100644 pandaapp/src/indexify/fontSamples.h
delete mode 100644 pandaapp/src/indexify/indexImage.cxx
delete mode 100644 pandaapp/src/indexify/indexImage.h
delete mode 100644 pandaapp/src/indexify/indexParameters.cxx
delete mode 100644 pandaapp/src/indexify/indexParameters.h
delete mode 100644 pandaapp/src/indexify/indexify.cxx
delete mode 100644 pandaapp/src/indexify/indexify.h
delete mode 100755 pandaapp/src/indexify/left.png
delete mode 100644 pandaapp/src/indexify/movie.png
delete mode 100644 pandaapp/src/indexify/music_big.jpg
delete mode 100644 pandaapp/src/indexify/photo.cxx
delete mode 100644 pandaapp/src/indexify/photo.h
delete mode 100755 pandaapp/src/indexify/right.png
delete mode 100644 pandaapp/src/indexify/rollDirectory.cxx
delete mode 100644 pandaapp/src/indexify/rollDirectory.h
delete mode 100644 pandaapp/src/indexify/sound.png
delete mode 100755 pandaapp/src/indexify/up.png
delete mode 100644 pandaapp/src/pandaappbase/Sources.pp
delete mode 100644 pandaapp/src/pandaappbase/pandaappbase.cxx
delete mode 100644 pandaapp/src/pandaappbase/pandaappbase.h
delete mode 100644 pandaapp/src/pandaappbase/pandaappsymbols.h
diff --git a/pandaapp/Package.pp b/pandaapp/Package.pp
deleted file mode 100644
index 5aee397978..0000000000
--- a/pandaapp/Package.pp
+++ /dev/null
@@ -1,59 +0,0 @@
-//
-// Package.pp
-//
-// This file defines certain configuration variables that are to be
-// written into the various make scripts. It is processed by ppremake
-// (along with the Sources.pp files in each of the various
-// directories) to generate build scripts appropriate to each
-// environment.
-//
-// This is the package-specific file, which should be at the top of
-// every source hierarchy. It generally gets the ball rolling, and is
-// responsible for explicitly including all of the relevent Config.pp
-// files.
-
-
-
-// What is the name and version of this source tree?
-#if $[eq $[PACKAGE],]
- #define PACKAGE pandaapp
- #define VERSION 0.80
-#endif
-
-
-// Where should we find the PANDATOOL source directory?
-#if $[or $[CTPROJS],$[PANDATOOL]]
- // If we are presently attached, use the environment variable.
- #define PANDATOOL_SOURCE $[PANDATOOL]
- #if $[eq $[PANDATOOL],]
- #error You seem to be attached to some trees, but not PANDATOOL!
- #endif
-#else
- // Otherwise, if we are not attached, we guess that the source is a
- // sibling directory to this source root.
- #define PANDATOOL_SOURCE $[standardize $[TOPDIR]/../pandatool]
-#endif
-
-// Where should we install PANDAAPP?
-#if $[PANDAAPP_INSTALL]
- #define PANDAAPP_INSTALL $[unixfilename $[PANDAAPP_INSTALL]]
-#elif $[CTPROJS]
- #define PANDAAPP_INSTALL $[PANDAAPP]/built
- #if $[eq $[PANDAAPP],]
- #error You seem to be attached to some trees, but not PANDAAPP!
- #endif
-#else
- #defer PANDAAPP_INSTALL $[unixfilename $[INSTALL_DIR]]
-#endif
-
-// Also get the PANDATOOL Package file and everything that includes.
-#if $[not $[isfile $[PANDATOOL_SOURCE]/Package.pp]]
- #printvar PANDATOOL
- #error PANDATOOL source directory not found from pandaapp! Are you attached properly?
-#endif
-
-#include $[PANDATOOL_SOURCE]/Package.pp
-
-// Define the inter-tree dependencies.
-#define NEEDS_TREES pandatool $[NEEDS_TREES]
-#define DEPENDABLE_HEADER_DIRS $[DEPENDABLE_HEADER_DIRS] $[PANDATOOL_INSTALL]/include
diff --git a/pandaapp/Sources.pp b/pandaapp/Sources.pp
deleted file mode 100644
index fba9e6b34a..0000000000
--- a/pandaapp/Sources.pp
+++ /dev/null
@@ -1,4 +0,0 @@
-// This is the toplevel directory. It contains configure.in and other
-// stuff.
-
-#define DIR_TYPE toplevel
diff --git a/pandaapp/src/Sources.pp b/pandaapp/src/Sources.pp
deleted file mode 100644
index fb8681dab2..0000000000
--- a/pandaapp/src/Sources.pp
+++ /dev/null
@@ -1,4 +0,0 @@
-// This is a group directory: a directory level above a number of
-// source subdirectories.
-
-#define DIR_TYPE group
diff --git a/pandaapp/src/configfiles/Sources.pp b/pandaapp/src/configfiles/Sources.pp
deleted file mode 100644
index 28acd50576..0000000000
--- a/pandaapp/src/configfiles/Sources.pp
+++ /dev/null
@@ -1 +0,0 @@
-#define INSTALL_CONFIG pandaapp.init
diff --git a/pandaapp/src/configfiles/pandaapp.init b/pandaapp/src/configfiles/pandaapp.init
deleted file mode 100644
index 68cfd0940e..0000000000
--- a/pandaapp/src/configfiles/pandaapp.init
+++ /dev/null
@@ -1 +0,0 @@
-ATTACH pandatool
diff --git a/pandaapp/src/httpbackup/Sources.pp b/pandaapp/src/httpbackup/Sources.pp
deleted file mode 100644
index b3ca9d6d62..0000000000
--- a/pandaapp/src/httpbackup/Sources.pp
+++ /dev/null
@@ -1,19 +0,0 @@
-#define BUILD_DIRECTORY $[HAVE_OPENSSL]
-
-#begin bin_target
- #define TARGET httpbackup
- #define LOCAL_LIBS pandaappbase
- #define USE_PACKAGES ssl
-
- #define OTHER_LIBS \
- progbase pandatoolbase \
- express:c downloader:c pandaexpress:m \
- panda:m dtool:m dtoolconfig:m \
- pystub
-
- #define SOURCES \
- backupCatalog.I backupCatalog.cxx backupCatalog.h \
- httpBackup.cxx httpBackup.h
-
-#end bin_target
-
diff --git a/pandaapp/src/httpbackup/backupCatalog.I b/pandaapp/src/httpbackup/backupCatalog.I
deleted file mode 100644
index 7dc6c2fcf6..0000000000
--- a/pandaapp/src/httpbackup/backupCatalog.I
+++ /dev/null
@@ -1,59 +0,0 @@
-// Filename: backupCatalog.I
-// Created by: drose (29Jan03)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-
-////////////////////////////////////////////////////////////////////
-// Function: BackupCatalog::Entry::Constructor
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-INLINE BackupCatalog::Entry::
-Entry() {
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: BackupCatalog::Entry::operator <
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-INLINE bool BackupCatalog::Entry::
-operator < (const BackupCatalog::Entry &other) const {
- return get_date() < other.get_date();
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: BackupCatalog::Entry::get_date
-// Access: Public
-// Description: Returns the date associated with the entry. This is
-// the last-modified date provided by the server, if we
-// have such a thing; or the downloaded date if that's
-// all we have.
-////////////////////////////////////////////////////////////////////
-INLINE const HTTPDate &BackupCatalog::Entry::
-get_date() const {
- return _document_spec.has_date() ? _document_spec.get_date() : _download_date;
-}
-
-
-INLINE istream &
-operator >> (istream &in, BackupCatalog::Entry &entry) {
- entry.input(in);
- return in;
-}
-
-INLINE ostream &
-operator << (ostream &out, const BackupCatalog::Entry &entry) {
- entry.output(out);
- return out;
-}
diff --git a/pandaapp/src/httpbackup/backupCatalog.cxx b/pandaapp/src/httpbackup/backupCatalog.cxx
deleted file mode 100644
index 2aa144164a..0000000000
--- a/pandaapp/src/httpbackup/backupCatalog.cxx
+++ /dev/null
@@ -1,195 +0,0 @@
-// Filename: backupCatalog.cxx
-// Created by: drose (29Jan03)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#include "backupCatalog.h"
-#include "indirectLess.h"
-#include
-
-// These are the characters that are not escaped when we write a
-// filename out to the catalog. Really, the only reason we use
-// URLSpec::quote() to protect the filenames is to escape spaces.
-static const char * const acceptable_chars = "~/:";
-
-////////////////////////////////////////////////////////////////////
-// Function: BackupCatalog::Constructor
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-BackupCatalog::
-BackupCatalog() {
- _dirty = false;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: BackupCatalog::Destructor
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-BackupCatalog::
-~BackupCatalog() {
- clear();
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: BackupCatalog::read
-// Access: Public
-// Description: Reads the catalog from the named file. Returns true
-// on success, false on failure. On a false return, the
-// catalog may have been partially read in.
-////////////////////////////////////////////////////////////////////
-bool BackupCatalog::
-read(const Filename &filename) {
- clear();
-
- ifstream file;
- if (!filename.open_read(file)) {
- nout << "Unable to read: " << filename << "\n";
- return false;
- }
-
- Entry *entry = new Entry;
- file >> (*entry);
- while (!file.fail() && !file.eof()) {
- _table[entry->_document_name].push_back(entry);
- _filenames.insert(entry->_filename);
- entry = new Entry;
- file >> (*entry);
- }
-
- // Delete the last Entry that we didn't use.
- delete entry;
-
- if (!file.eof()) {
- // Oops, we had an error on one of the entries.
- return false;
- }
-
- // Now sort all of the entries by date.
- Table::iterator ti;
- for (ti = _table.begin(); ti != _table.end(); ++ti) {
- Entries &entries = (*ti).second;
- sort(entries.begin(), entries.end(), IndirectLess());
- }
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: BackupCatalog::write
-// Access: Public
-// Description: Rewrites the catalog to the named file. Returns true
-// on success, false on failure.
-////////////////////////////////////////////////////////////////////
-bool BackupCatalog::
-write(const Filename &filename) {
- ofstream file;
- if (!filename.open_write(file)) {
- nout << "Unable to write: " << filename << "\n";
- return false;
- }
-
- Table::const_iterator ti;
- for (ti = _table.begin(); ti != _table.end(); ++ti) {
- const Entries &entries = (*ti).second;
- Entries::const_iterator ei;
- for (ei = entries.begin(); ei != entries.end(); ++ei) {
- (*ei)->write(file);
- file << "\n";
- }
- }
-
- if (file) {
- _dirty = false;
- return true;
- }
-
- return false;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: BackupCatalog::clear
-// Access: Public
-// Description: Completely empties the contents of the catalog.
-////////////////////////////////////////////////////////////////////
-void BackupCatalog::
-clear() {
- Table::iterator ti;
- for (ti = _table.begin(); ti != _table.end(); ++ti) {
- Entries &entries = (*ti).second;
- Entries::iterator ei;
- for (ei = entries.begin(); ei != entries.end(); ++ei) {
- delete (*ei);
- }
- }
- _dirty = false;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: BackupCatalog::Entry::delete_file
-// Access: Public
-// Description: Deletes the file named by the entry, echoing the
-// indicated reason to nout.
-////////////////////////////////////////////////////////////////////
-void BackupCatalog::Entry::
-delete_file(const Filename &dirname, const string &reason) {
- Filename pathname(dirname, _filename);
- if (pathname.exists()) {
- nout << "Deleting " << _filename << " (" << reason << ").\n";
- if (!pathname.unlink()) {
- nout << "unable to delete.\n";
- }
-
- } else {
- nout << "Tried to delete " << _filename << " but it's already gone!\n";
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: BackupCatalog::Entry::input
-// Access: Public
-// Description: Can be used to read in the catalog entry from a
-// stream generated by either output() or write().
-////////////////////////////////////////////////////////////////////
-void BackupCatalog::Entry::
-input(istream &in) {
- in >> _document_name >> _filename >> _document_spec >> _download_date;
- _document_name = URLSpec::unquote(_document_name);
- _filename = URLSpec::unquote(_filename);
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: BackupCatalog::Entry::output
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-void BackupCatalog::Entry::
-output(ostream &out) const {
- out << URLSpec::quote(_document_name, acceptable_chars) << " "
- << URLSpec::quote(_filename, acceptable_chars) << " "
- << _document_spec << " "
- << _download_date;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: BackupCatalog::Entry::write
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-void BackupCatalog::Entry::
-write(ostream &out) const {
- out << URLSpec::quote(_document_name, acceptable_chars) << " "
- << URLSpec::quote(_filename, acceptable_chars) << "\n";
- _document_spec.write(out, 2);
- out << " " << _download_date << "\n";
-}
diff --git a/pandaapp/src/httpbackup/backupCatalog.h b/pandaapp/src/httpbackup/backupCatalog.h
deleted file mode 100644
index 1dcf87ead5..0000000000
--- a/pandaapp/src/httpbackup/backupCatalog.h
+++ /dev/null
@@ -1,74 +0,0 @@
-// Filename: backupCatalog.h
-// Created by: drose (29Jan03)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#ifndef BACKUPCATALOG_H
-#define BACKUPCATALOG_H
-
-#include "pandaappbase.h"
-
-#include "documentSpec.h"
-#include "filename.h"
-#include "pvector.h"
-#include "pmap.h"
-#include "pset.h"
-
-////////////////////////////////////////////////////////////////////
-// Class : BackupCatalog
-// Description : This is the list of previous versions of this file
-// (and possibly other files) stored in the "catalog", a
-// text file within the download directory.
-////////////////////////////////////////////////////////////////////
-class BackupCatalog {
-public:
- BackupCatalog();
- ~BackupCatalog();
-
- bool read(const Filename &filename);
- bool write(const Filename &filename);
- void clear();
-
- class Entry {
- public:
- INLINE Entry();
- INLINE bool operator < (const Entry &other) const;
- INLINE const HTTPDate &get_date() const;
-
- void delete_file(const Filename &dirname, const string &reason);
- void input(istream &in);
- void output(ostream &out) const;
- void write(ostream &out) const;
-
- string _document_name;
- string _filename;
- DocumentSpec _document_spec;
- HTTPDate _download_date;
- };
-
- typedef pvector Entries;
- typedef pmap Table;
- Table _table;
-
- typedef pset Filenames;
- Filenames _filenames;
-
- bool _dirty;
-};
-
-INLINE istream &operator >> (istream &in, BackupCatalog::Entry &entry);
-INLINE ostream &operator << (ostream &out, const BackupCatalog::Entry &entry);
-
-#include "backupCatalog.I"
-
-#endif
-
diff --git a/pandaapp/src/httpbackup/httpBackup.cxx b/pandaapp/src/httpbackup/httpBackup.cxx
deleted file mode 100644
index 443ac80b49..0000000000
--- a/pandaapp/src/httpbackup/httpBackup.cxx
+++ /dev/null
@@ -1,519 +0,0 @@
-// Filename: httpBackup.cxx
-// Created by: drose (29Jan03)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#include "httpBackup.h"
-#include "httpChannel.h"
-
-
-static const int seconds_per_day = 60 * 60 * 24;
-
-////////////////////////////////////////////////////////////////////
-// Function: HTTPBackup::Constructor
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-HTTPBackup::
-HTTPBackup() {
- clear_runlines();
- add_runline("[opts] url");
- add_runline("-check url");
-
- set_program_description
- ("This program is designed to run periodically as a "
- "background task, e.g. via a cron job. It fetches the "
- "latest copy of a document from an HTTP server and "
- "stores it, along with an optional number of previous "
- "versions, in a local directory so that it may be "
- "backed up to tape.\n\n"
-
- "If the copy on disk is already the same as the latest "
- "copy available on the HTTP server, this program generally "
- "does nothing (although it may delete old versions if they "
- "have expired past the maximum age specified on the command "
- "line).");
-
- add_option
- ("p", "url", 0,
- "Specifies the URL of the HTTP proxy server(s), if one is required. "
- "Multiple servers may be specified by separating them with semicolons; "
- "they will be tried in the order listed.",
- &HTTPBackup::dispatch_string, &_got_proxy, &_proxy);
-
- add_option
- ("a", "", 0,
- "If this option is specified, the document is always downloaded every "
- "time httpbackup runs, even if the document does not appear to have "
- "been changed since last time.",
- &HTTPBackup::dispatch_none, &_always_download, NULL);
-
- add_option
- ("d", "dirname", 0,
- "Specifies the name of the directory in which to store the backup "
- "versions of the document. The default is '.', the current "
- "directory.",
- &HTTPBackup::dispatch_filename, NULL, &_dirname);
-
- add_option
- ("c", "filename", 0,
- "Specifies the name of the catalog file that httpbackup uses to "
- "record the HTTP entity tags, etc., downloaded from previous "
- "versions. If a relative filename is given, it is relative to "
- "the directory specified by -d. The default is 'Catalog'.",
- &HTTPBackup::dispatch_filename, NULL, &_catalog_name);
-
- add_option
- ("n", "filename", 0,
- "Specifies the name of the document that is being retrieved. This "
- "name is written to the catalog file to identify entries for this "
- "document, and is used to generate the filename to store the "
- "backup versions. The default if this is omitted or empty is to use "
- "the basename of the URL.",
- &HTTPBackup::dispatch_string, NULL, &_document_name);
-
- add_option
- ("s", "string", 0,
- "Specifies how the date is appended onto the filename (see -n) for "
- "each version of the file. This string should contain the sequence "
- "of characters from strftime() that correspond to the desired date "
- "format to append to the filename. The default is '.%Y-%m-%d.%H-%M', "
- "or the year, month, day, hour, and minute. (The date is always "
- "represented in GMT, according to HTTP convention.)",
- &HTTPBackup::dispatch_string, NULL, &_version_append);
-
- add_option
- ("maxage", "days", 0,
- "Specifies the maximum age, in days, to keep an old version of the "
- "file around. If unspecified, the default is no limit. This may "
- "be a floating-point number.",
- &HTTPBackup::dispatch_double, &_got_max_keep_days, &_max_keep_days);
-
- add_option
- ("minage", "days", 0,
- "Specifies the minimum age, in days, an old version of the file must "
- "have before it is automatically deleted due to exceeding -maxver. "
- "The default is 0. This may be a floating-point number.",
- &HTTPBackup::dispatch_double, NULL, &_min_keep_days);
-
- add_option
- ("maxver", "count", 0,
- "Specifies the maximum number of old versions of the file to keep "
- "around. If unspecified, the default is no limit.",
- &HTTPBackup::dispatch_int, &_got_max_keep_versions, &_max_keep_versions);
-
- add_option
- ("minver", "count", 0,
- "Specifies the minimum number of old versions to keep after "
- "deleting versions older than -maxage. The default is 1.",
- &HTTPBackup::dispatch_int, NULL, &_min_keep_versions);
-
- add_option
- ("check", "days", 0,
- "Instead of downloading any document, check the date of the most recent "
- "document downloaded. Returns success if that date is no more than the "
- "indicated number of days old (which may be a floating-point number), "
- "or failure otherwise.",
- &HTTPBackup::dispatch_double, &_got_check_days, &_check_days);
-
- _dirname = ".";
- _catalog_name = "Catalog";
- _version_append = ".%Y-%m-%d.%H-%M";
- _max_keep_days = 0.0;
- _min_keep_days = 0.0;
- _max_keep_versions = 0;
- _min_keep_versions = 1;
-}
-
-
-////////////////////////////////////////////////////////////////////
-// Function: HTTPBackup::handle_args
-// Access: Protected, Virtual
-// Description: Does something with the additional arguments on the
-// command line (after all the -options have been
-// parsed). Returns true if the arguments are good,
-// false otherwise.
-////////////////////////////////////////////////////////////////////
-bool HTTPBackup::
-handle_args(ProgramBase::Args &args) {
- if (_got_check_days && !_document_name.empty() && args.empty()) {
- // If -check and -n are both specified, we don't really need to
- // specify an URL. Accept it if we don't.
- return true;
- }
-
- if (args.size() != 1) {
- nout <<
- "You must specify the URL of the document to download "
- "on the command line.\n\n";
- return false;
- }
-
- _url = URLSpec(args[0]);
- if (!(_url.has_server() && _url.has_path())) {
- nout
- << "Invalid URL specification: " << args[0] << "\n";
- return false;
- }
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: HTTPBackup::post_command_line
-// Access: Protected, Virtual
-// Description: This is called after the command line has been
-// completely processed, and it gives the program a
-// chance to do some last-minute processing and
-// validation of the options and arguments. It should
-// return true if everything is fine, false if there is
-// an error.
-////////////////////////////////////////////////////////////////////
-bool HTTPBackup::
-post_command_line() {
- if (_got_proxy) {
- _http.set_proxy_spec(_proxy);
- }
-
- if (!_catalog_name.is_fully_qualified()) {
- _catalog_name = Filename(_dirname, _catalog_name);
- }
-
- if (_document_name.empty()) {
- Filename pathname = _url.get_path();
- _document_name = pathname.get_basename();
- }
-
- if (_min_keep_days < 0.0) {
- nout << "Invalid -minage " << _min_keep_days << "\n";
- return false;
- }
-
- if (_min_keep_versions < 0) {
- nout << "Invalid -minver " << _min_keep_versions << "\n";
- return false;
- }
-
- if (_got_max_keep_days) {
- if (_max_keep_days < _min_keep_days) {
- nout
- << "-maxage " << _max_keep_days << " is less than -minage "
- << _min_keep_days << "\n";
- return false;
- }
- }
-
- if (_got_max_keep_versions) {
- if (_max_keep_versions < _min_keep_versions) {
- nout
- << "-maxver " << _max_keep_versions << " is less than -minver "
- << _min_keep_versions << "\n";
- return false;
- }
- }
-
- _now = HTTPDate::now();
- if (_got_max_keep_days) {
- _max_keep_date = _now - (time_t)(_max_keep_days * seconds_per_day);
- }
- _min_keep_date = _now - (time_t)(_min_keep_days * seconds_per_day);
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: HTTPBackup::dispatch_url
-// Access: Protected, Static
-// Description: Dispatch function for a URL parameter.
-////////////////////////////////////////////////////////////////////
-bool HTTPBackup::
-dispatch_url(const string &opt, const string &arg, void *var) {
- URLSpec *up = (URLSpec *)var;
- URLSpec new_url(arg);
- (*up) = new_url;
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: HTTPBackup::run
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-void HTTPBackup::
-run() {
- // Output the current date and time in GMT, for logging.
- nout << _now.get_string() << "\n";
-
- // First, read in the catalog.
- _catalog_name.set_text();
- if (!_catalog_name.exists()) {
- nout << _catalog_name << " does not yet exist.\n";
- } else {
- if (!_catalog.read(_catalog_name)) {
- nout << "Unable to read " << _catalog_name << ".\n";
- exit(1);
- }
- }
-
- if (_got_check_days) {
- // We're only checking the date of the latest download.
- BackupCatalog::Entries &entries = _catalog._table[_document_name];
- if (entries.empty()) {
- nout << "No previous downloads for " << _document_name << ".\n";
- exit(1);
- }
- BackupCatalog::Entry *latest = entries[entries.size() - 1];
- int diff_secs = _now - latest->get_date();
- double diff_days = (double)diff_secs / (double)seconds_per_day;
- nout << "Most recent at " << latest->get_date().get_string()
- << ", " << diff_days << " days old.\n";
- if (diff_days <= _check_days) {
- nout << "OK.\n";
- } else {
- nout << "Too old!\n";
- exit(1);
- }
-
- } else {
- // Try to do the download.
-
- // Now try to fetch the document.
- if (!fetch_latest()) {
- nout << "Errors while processing latest.\n";
- exit(1);
- }
-
- if (!cleanup_old()) {
- nout << "Errors while cleaning up old versions.\n";
- // We don't bother to exit the program in this case.
- }
-
- if (_catalog._dirty) {
- // Now write out the modified catalog.
- nout << "Writing " << _catalog_name << "\n";
- _catalog_name.make_dir();
- if (!_catalog.write(_catalog_name)) {
- nout << "Unable to rewrite " << _catalog_name << ".\n";
- exit(1);
- }
- }
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: HTTPBackup::fetch_latest
-// Access: Private
-// Description: Tries to get the latest version of the document from
-// the server, if there is one available. Returns true
-// on success (even if the most recent document hasn't
-// changed), or false if there was some error.
-////////////////////////////////////////////////////////////////////
-bool HTTPBackup::
-fetch_latest() {
- // Check the most recent version of this document.
- BackupCatalog::Entries &entries = _catalog._table[_document_name];
-
- DocumentSpec document_spec(_url);
- if (!entries.empty()) {
- BackupCatalog::Entry *latest = entries[entries.size() - 1];
- document_spec = latest->_document_spec;
- document_spec.set_url(_url);
- if (!document_spec.has_date()) {
- // If we didn't get a last-modified date, use the download date
- // instead.
- document_spec.set_date(latest->get_date());
- }
- if (!_always_download) {
- document_spec.set_request_mode(DocumentSpec::RM_newer);
- }
- }
-
- // Since the purpose of this program is to check to see if a more
- // recent document is available, we probably always want any proxies
- // in the way to revalidate their cache.
- document_spec.set_cache_control(DocumentSpec::CC_revalidate);
-
- if (document_spec.get_request_mode() == DocumentSpec::RM_newer &&
- document_spec.has_date()) {
- nout << "Checking for newer than "<< document_spec.get_date().get_string()
- << ".\n";
- }
- nout << "Fetching " << document_spec.get_url() << "\n";
-
- PT(HTTPChannel) channel = _http.make_channel(true);
- if (_always_download) {
- channel->get_document(document_spec);
- } else {
- // Start out by asking for the header first, so we can verify the
- // document has changed before we try to download it again.
- channel->get_header(document_spec);
- }
-
- if (!channel->is_valid()) {
- if (channel->get_status_code() == 304) {
- nout << "Document has not been modified.\n";
- // This is considered a success condition.
- return true;
- }
- nout << "Error fetching document: " << channel->get_status_code()
- << " " << channel->get_status_string() << "\n";
- return false;
- }
-
- // The document is available.
- if (!_always_download) {
- if (!entries.empty()) {
- // Has it been modified? We need to check again because the
- // If-None-Match fields, etc. might have been ignored (e.g. by a
- // proxy).
- if (document_spec == channel->get_document_spec()) {
- nout
- << "Document has not been modified (server ignored conditional request).\n";
- return true;
- }
- }
-
- // Ok, the document really is ready. Go ahead and download it.
- if (!channel->get_document(document_spec)) {
- nout << "Unable to request document.\n";
- return false;
- }
- }
-
- // We've started to download the document. Create an entry for it.
- BackupCatalog::Entry *entry = new BackupCatalog::Entry;
- entry->_document_name = _document_name;
- entry->_document_spec = channel->get_document_spec();
- entry->_download_date = _now;
-
- // Generate a filename based on the last-modified date or the
- // download date.
- time_t time = entry->get_date().get_time();
- struct tm *tp = gmtime(&time);
-
- static const int buffer_size = 512;
- char buffer[buffer_size];
- if (strftime(buffer, buffer_size, _version_append.c_str(), tp) == 0) {
- buffer[0] = '\0';
- }
-
- string filename = _document_name + string(buffer);
-
- // Check the filename for uniqueness, just for good measure.
- check_unique(filename);
-
- entry->_filename = filename;
-
- // Download to the indicated filename.
- Filename pathname(_dirname, filename);
- nout << "Downloading to " << pathname << "\n";
- pathname.make_dir();
- if (!channel->download_to_file(pathname)) {
- nout << "Error while downloading.\n";
- delete entry;
- return false;
- }
-
- // The file is successfully downloaded; save the entry.
- entries.push_back(entry);
- _catalog._dirty = true;
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: HTTPBackup::cleanup_old
-// Access: Private
-// Description: Removes old versions that are no longer needed.
-////////////////////////////////////////////////////////////////////
-bool HTTPBackup::
-cleanup_old() {
- BackupCatalog::Entries &entries = _catalog._table[_document_name];
-
- if (_got_max_keep_versions &&
- (int)entries.size() > _max_keep_versions) {
- // Too many versions; delete the oldest ones, except those newer
- // than min_keep_date.
- int num_delete = entries.size() - _max_keep_versions;
- while (num_delete > 0 && entries[num_delete - 1]->get_date() > _min_keep_date) {
- num_delete--;
- }
-
- for (int i = 0; i < num_delete; i++) {
- entries[i]->delete_file(_dirname, "too many old versions");
- delete entries[i];
- }
- entries.erase(entries.begin(), entries.begin() + num_delete);
- _catalog._dirty = true;
- }
-
- if (_got_max_keep_days &&
- (int)entries.size() > _min_keep_versions &&
- entries[0]->get_date() < _max_keep_date) {
- // The oldest version is too old; delete all the oldest ones,
- // but keep at least min_keep_versions of them around.
- int num_delete = 1;
- while (num_delete < (int)entries.size() - _min_keep_versions &&
- entries[num_delete]->get_date() < _max_keep_date) {
- num_delete++;
- }
-
- for (int i = 0; i < num_delete; i++) {
- entries[i]->delete_file(_dirname, "too old");
- delete entries[i];
- }
- entries.erase(entries.begin(), entries.begin() + num_delete);
- _catalog._dirty = true;
- }
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: HTTPBackup::check_unique
-// Access: Private
-// Description: Ensures that the given filename is unique among all
-// files in the catalog.
-////////////////////////////////////////////////////////////////////
-void HTTPBackup::
-check_unique(string &filename) {
- bool inserted = _catalog._filenames.insert(filename).second;
-
- if (!inserted) {
- // Conflict; append one or more letters to the filename until it
- // is unique.
- unsigned int uniquifier = 1;
- string orig_filename = filename;
- orig_filename += '.';
-
- while (!inserted) {
- filename = orig_filename;
-
- unsigned int count = uniquifier;
- while (count > 0) {
- char ch = (char)((count % 26) + 'a');
- filename += ch;
- count /= 26;
- }
-
- uniquifier++;
- inserted = _catalog._filenames.insert(filename).second;
- }
- }
-}
-
-int
-main(int argc, char *argv[]) {
- HTTPBackup prog;
- prog.parse_command_line(argc, argv);
- prog.run();
- return 0;
-}
diff --git a/pandaapp/src/httpbackup/httpBackup.h b/pandaapp/src/httpbackup/httpBackup.h
deleted file mode 100644
index 46c4ade1ff..0000000000
--- a/pandaapp/src/httpbackup/httpBackup.h
+++ /dev/null
@@ -1,84 +0,0 @@
-// Filename: httpBackup.h
-// Created by: drose (29Jan03)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#ifndef HTTPBACKUP_H
-#define HTTPBACKUP_H
-
-#include "pandaappbase.h"
-#include "programBase.h"
-#include "backupCatalog.h"
-
-#include "httpClient.h"
-#include "urlSpec.h"
-
-////////////////////////////////////////////////////////////////////
-// Class : HTTPBackup
-// Description : This program is designed to run periodically as a
-// background task, e.g. via a cron job. It fetches the
-// latest copy of a document from an HTTP server and
-// stores it, along with an optional number of previous
-// versions, in a local directory so that it may be
-// backed up to tape.
-//
-// If the copy on disk is already the same as the latest
-// copy available on the HTTP server, this program does
-// nothing.
-////////////////////////////////////////////////////////////////////
-class HTTPBackup : public ProgramBase {
-public:
- HTTPBackup();
-
-protected:
- virtual bool handle_args(Args &args);
- virtual bool post_command_line();
-
- static bool dispatch_url(const string &opt, const string &arg, void *var);
-
-public:
- void run();
-
-private:
- bool fetch_latest();
- bool cleanup_old();
- void check_unique(string &filename);
-
-private:
- string _proxy;
- bool _got_proxy;
-
- URLSpec _url;
- Filename _dirname;
- Filename _catalog_name;
- string _document_name;
- string _version_append;
- bool _always_download;
-
- double _max_keep_days;
- bool _got_max_keep_days;
- double _min_keep_days;
- int _max_keep_versions;
- bool _got_max_keep_versions;
- int _min_keep_versions;
- double _check_days;
- bool _got_check_days;
-
- HTTPDate _max_keep_date;
- HTTPDate _min_keep_date;
- HTTPDate _now;
-
- HTTPClient _http;
- BackupCatalog _catalog;
-};
-
-#endif
diff --git a/pandaapp/src/indexify/Sources.pp b/pandaapp/src/indexify/Sources.pp
deleted file mode 100644
index f2d60085ee..0000000000
--- a/pandaapp/src/indexify/Sources.pp
+++ /dev/null
@@ -1,38 +0,0 @@
-#define BUILD_DIRECTORY $[HAVE_FREETYPE]
-
-#define OTHER_LIBS \
- progbase pandatoolbase \
- dtoolutil:c dtool:m prc:c dtoolbase:c dtoolconfig:m \
- express:c pandaexpress:m \
- putil:c pipeline:c linmath:c pnmimage:c mathutil:c pnmtext:c \
- pnmimagetypes:c event:c panda:m \
- pystub
-
-#define UNIX_SYS_LIBS dl
-
-#begin bin_target
- #define USE_PACKAGES freetype
-
- #define TARGET indexify
-
- #define SOURCES \
- default_index_icons.cxx default_index_icons.h \
- default_font.cxx default_font.h \
- indexImage.cxx indexImage.h \
- indexParameters.cxx indexParameters.h \
- indexify.cxx indexify.h \
- photo.cxx photo.h \
- rollDirectory.cxx rollDirectory.h
-
-#end bin_target
-
-#begin bin_target
- #define USE_PACKAGES freetype
-
- #define TARGET font-samples
-
- #define SOURCES \
- default_font.cxx default_font.h \
- fontSamples.cxx fontSamples.h
-
-#end bin_target
diff --git a/pandaapp/src/indexify/default_font.cxx b/pandaapp/src/indexify/default_font.cxx
deleted file mode 100644
index f796906a42..0000000000
--- a/pandaapp/src/indexify/default_font.cxx
+++ /dev/null
@@ -1,3357 +0,0 @@
-// Filename: default_font.cxx
-// Created by: drose (04Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#include "default_font.h"
-
-// This file was generated from uhvr8ac.pfb, a PostScript Type1 font
-// installed along with TeX (and it was probably converted there from
-// some other format). It defines the font "Nimbus Sans L Regular
-// Condensed", a nice simple sans-serif font.
-
-// This is used as a standard fallback font when no font file is
-// specified by the user.
-
-const unsigned char default_font[] = {
- 0x80, 0x01, 0x6e, 0x06, 0x00, 0x00, 0x25, 0x21, 0x50, 0x53, 0x2d,
- 0x41, 0x64, 0x6f, 0x62, 0x65, 0x46, 0x6f, 0x6e, 0x74, 0x2d, 0x31,
- 0x2e, 0x30, 0x3a, 0x20, 0x4e, 0x69, 0x6d, 0x62, 0x75, 0x73, 0x53,
- 0x61, 0x6e, 0x4c, 0x2d, 0x52, 0x65, 0x67, 0x75, 0x43, 0x6f, 0x6e,
- 0x64, 0x20, 0x31, 0x2e, 0x30, 0x35, 0x0a, 0x25, 0x25, 0x43, 0x72,
- 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x74, 0x65, 0x3a,
- 0x20, 0x57, 0x65, 0x64, 0x20, 0x44, 0x65, 0x63, 0x20, 0x32, 0x32,
- 0x20, 0x31, 0x39, 0x39, 0x39, 0x0a, 0x25, 0x20, 0x43, 0x6f, 0x70,
- 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, 0x55, 0x52, 0x57,
- 0x29, 0x2b, 0x2b, 0x2c, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67,
- 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x39, 0x20, 0x62, 0x79, 0x20,
- 0x28, 0x55, 0x52, 0x57, 0x29, 0x2b, 0x2b, 0x20, 0x44, 0x65, 0x73,
- 0x69, 0x67, 0x6e, 0x20, 0x26, 0x20, 0x44, 0x65, 0x76, 0x65, 0x6c,
- 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x25, 0x20, 0x28, 0x55,
- 0x52, 0x57, 0x29, 0x2b, 0x2b, 0x2c, 0x43, 0x6f, 0x70, 0x79, 0x72,
- 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x39, 0x20, 0x62,
- 0x79, 0x20, 0x28, 0x55, 0x52, 0x57, 0x29, 0x2b, 0x2b, 0x20, 0x44,
- 0x65, 0x73, 0x69, 0x67, 0x6e, 0x20, 0x26, 0x20, 0x44, 0x65, 0x76,
- 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x0a, 0x25, 0x20,
- 0x53, 0x65, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x69, 0x6c,
- 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x28, 0x41,
- 0x6c, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x20, 0x46, 0x72, 0x65, 0x65,
- 0x20, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20, 0x4c, 0x69, 0x63,
- 0x65, 0x6e, 0x73, 0x65, 0x29, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x6c,
- 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x64,
- 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x0a, 0x25, 0x20, 0x41,
- 0x73, 0x20, 0x61, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c,
- 0x20, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2c,
- 0x20, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e,
- 0x20, 0x69, 0x73, 0x20, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64,
- 0x20, 0x74, 0x6f, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65,
- 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x66, 0x6f, 0x6e, 0x74, 0x0a,
- 0x25, 0x20, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x20, 0x69,
- 0x6e, 0x20, 0x61, 0x20, 0x50, 0x6f, 0x73, 0x74, 0x73, 0x63, 0x72,
- 0x69, 0x70, 0x74, 0x20, 0x6f, 0x72, 0x20, 0x50, 0x44, 0x46, 0x20,
- 0x66, 0x69, 0x6c, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x63,
- 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x20,
- 0x61, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20,
- 0x74, 0x68, 0x61, 0x74, 0x0a, 0x25, 0x20, 0x63, 0x6f, 0x6e, 0x74,
- 0x61, 0x69, 0x6e, 0x73, 0x20, 0x74, 0x65, 0x78, 0x74, 0x20, 0x74,
- 0x6f, 0x20, 0x62, 0x65, 0x20, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61,
- 0x79, 0x65, 0x64, 0x20, 0x6f, 0x72, 0x20, 0x70, 0x72, 0x69, 0x6e,
- 0x74, 0x65, 0x64, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x74,
- 0x68, 0x69, 0x73, 0x20, 0x66, 0x6f, 0x6e, 0x74, 0x2c, 0x20, 0x72,
- 0x65, 0x67, 0x61, 0x72, 0x64, 0x6c, 0x65, 0x73, 0x73, 0x0a, 0x25,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e,
- 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x72, 0x20,
- 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68,
- 0x65, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20,
- 0x69, 0x74, 0x73, 0x65, 0x6c, 0x66, 0x2e, 0x0a, 0x31, 0x32, 0x20,
- 0x64, 0x69, 0x63, 0x74, 0x20, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x0a,
- 0x2f, 0x46, 0x6f, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x20, 0x31,
- 0x30, 0x20, 0x64, 0x69, 0x63, 0x74, 0x20, 0x64, 0x75, 0x70, 0x20,
- 0x62, 0x65, 0x67, 0x69, 0x6e, 0x0a, 0x2f, 0x76, 0x65, 0x72, 0x73,
- 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x31, 0x2e, 0x30, 0x35, 0x29, 0x20,
- 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x64, 0x65,
- 0x66, 0x0a, 0x2f, 0x4e, 0x6f, 0x74, 0x69, 0x63, 0x65, 0x20, 0x28,
- 0x28, 0x55, 0x52, 0x57, 0x29, 0x2b, 0x2b, 0x2c, 0x43, 0x6f, 0x70,
- 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x31, 0x39, 0x39, 0x39,
- 0x20, 0x62, 0x79, 0x20, 0x28, 0x55, 0x52, 0x57, 0x29, 0x2b, 0x2b,
- 0x20, 0x44, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x20, 0x26, 0x20, 0x44,
- 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
- 0x20, 0x53, 0x65, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x69,
- 0x6c, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x28,
- 0x41, 0x6c, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x20, 0x46, 0x72, 0x65,
- 0x65, 0x20, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20, 0x4c, 0x69,
- 0x63, 0x65, 0x6e, 0x73, 0x65, 0x29, 0x20, 0x66, 0x6f, 0x72, 0x20,
- 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x20, 0x63, 0x6f, 0x6e,
- 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20, 0x41, 0x73,
- 0x20, 0x61, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x20,
- 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x20,
- 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x20,
- 0x69, 0x73, 0x20, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x20,
- 0x74, 0x6f, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x20,
- 0x74, 0x68, 0x69, 0x73, 0x20, 0x66, 0x6f, 0x6e, 0x74, 0x20, 0x70,
- 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x20, 0x69, 0x6e, 0x20, 0x61,
- 0x20, 0x50, 0x6f, 0x73, 0x74, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x20, 0x6f, 0x72, 0x20, 0x50, 0x44, 0x46, 0x20, 0x66, 0x69, 0x6c,
- 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x73,
- 0x69, 0x73, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x20, 0x64,
- 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x68, 0x61,
- 0x74, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x20,
- 0x74, 0x65, 0x78, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x20,
- 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x20, 0x6f,
- 0x72, 0x20, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x65, 0x64, 0x20, 0x75,
- 0x73, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x66,
- 0x6f, 0x6e, 0x74, 0x2c, 0x20, 0x72, 0x65, 0x67, 0x61, 0x72, 0x64,
- 0x6c, 0x65, 0x73, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73,
- 0x20, 0x6f, 0x72, 0x20, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65,
- 0x20, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x20, 0x74,
- 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x20, 0x69, 0x74, 0x73, 0x65, 0x6c, 0x66, 0x2e,
- 0x29, 0x20, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x20,
- 0x64, 0x65, 0x66, 0x0a, 0x2f, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69,
- 0x67, 0x68, 0x74, 0x20, 0x28, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69,
- 0x67, 0x68, 0x74, 0x20, 0x28, 0x55, 0x52, 0x57, 0x29, 0x2b, 0x2b,
- 0x2c, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20,
- 0x31, 0x39, 0x39, 0x39, 0x20, 0x62, 0x79, 0x20, 0x28, 0x55, 0x52,
- 0x57, 0x29, 0x2b, 0x2b, 0x20, 0x44, 0x65, 0x73, 0x69, 0x67, 0x6e,
- 0x20, 0x26, 0x20, 0x44, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d,
- 0x65, 0x6e, 0x74, 0x29, 0x20, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e,
- 0x6c, 0x79, 0x20, 0x64, 0x65, 0x66, 0x0a, 0x2f, 0x46, 0x75, 0x6c,
- 0x6c, 0x4e, 0x61, 0x6d, 0x65, 0x20, 0x28, 0x4e, 0x69, 0x6d, 0x62,
- 0x75, 0x73, 0x20, 0x53, 0x61, 0x6e, 0x73, 0x20, 0x4c, 0x20, 0x52,
- 0x65, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x43, 0x6f, 0x6e, 0x64,
- 0x65, 0x6e, 0x73, 0x65, 0x64, 0x29, 0x20, 0x72, 0x65, 0x61, 0x64,
- 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x64, 0x65, 0x66, 0x0a, 0x2f, 0x46,
- 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x20, 0x28,
- 0x4e, 0x69, 0x6d, 0x62, 0x75, 0x73, 0x20, 0x53, 0x61, 0x6e, 0x73,
- 0x20, 0x4c, 0x29, 0x20, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c,
- 0x79, 0x20, 0x64, 0x65, 0x66, 0x0a, 0x2f, 0x57, 0x65, 0x69, 0x67,
- 0x68, 0x74, 0x20, 0x28, 0x52, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x72,
- 0x29, 0x20, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x20,
- 0x64, 0x65, 0x66, 0x0a, 0x2f, 0x49, 0x74, 0x61, 0x6c, 0x69, 0x63,
- 0x41, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x30, 0x2e, 0x30, 0x20, 0x64,
- 0x65, 0x66, 0x0a, 0x2f, 0x69, 0x73, 0x46, 0x69, 0x78, 0x65, 0x64,
- 0x50, 0x69, 0x74, 0x63, 0x68, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65,
- 0x20, 0x64, 0x65, 0x66, 0x0a, 0x2f, 0x55, 0x6e, 0x64, 0x65, 0x72,
- 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f,
- 0x6e, 0x20, 0x2d, 0x31, 0x30, 0x30, 0x20, 0x64, 0x65, 0x66, 0x0a,
- 0x2f, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x65, 0x54,
- 0x68, 0x69, 0x63, 0x6b, 0x6e, 0x65, 0x73, 0x73, 0x20, 0x35, 0x30,
- 0x20, 0x64, 0x65, 0x66, 0x0a, 0x65, 0x6e, 0x64, 0x20, 0x72, 0x65,
- 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x64, 0x65, 0x66, 0x0a,
- 0x2f, 0x46, 0x6f, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x20, 0x2f,
- 0x4e, 0x69, 0x6d, 0x62, 0x75, 0x73, 0x53, 0x61, 0x6e, 0x4c, 0x2d,
- 0x52, 0x65, 0x67, 0x75, 0x43, 0x6f, 0x6e, 0x64, 0x20, 0x64, 0x65,
- 0x66, 0x0a, 0x2f, 0x50, 0x61, 0x69, 0x6e, 0x74, 0x54, 0x79, 0x70,
- 0x65, 0x20, 0x30, 0x20, 0x64, 0x65, 0x66, 0x0a, 0x2f, 0x57, 0x4d,
- 0x6f, 0x64, 0x65, 0x20, 0x30, 0x20, 0x64, 0x65, 0x66, 0x0a, 0x2f,
- 0x46, 0x6f, 0x6e, 0x74, 0x42, 0x42, 0x6f, 0x78, 0x20, 0x7b, 0x2d,
- 0x31, 0x33, 0x36, 0x20, 0x2d, 0x32, 0x38, 0x32, 0x20, 0x38, 0x32,
- 0x30, 0x20, 0x39, 0x35, 0x31, 0x7d, 0x20, 0x72, 0x65, 0x61, 0x64,
- 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x64, 0x65, 0x66, 0x0a, 0x2f, 0x46,
- 0x6f, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x20, 0x31, 0x20, 0x64,
- 0x65, 0x66, 0x0a, 0x2f, 0x46, 0x6f, 0x6e, 0x74, 0x4d, 0x61, 0x74,
- 0x72, 0x69, 0x78, 0x20, 0x5b, 0x30, 0x2e, 0x30, 0x30, 0x31, 0x20,
- 0x30, 0x2e, 0x30, 0x20, 0x30, 0x2e, 0x30, 0x20, 0x30, 0x2e, 0x30,
- 0x30, 0x31, 0x20, 0x30, 0x2e, 0x30, 0x20, 0x30, 0x2e, 0x30, 0x5d,
- 0x20, 0x72, 0x65, 0x61, 0x64, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x64,
- 0x65, 0x66, 0x0a, 0x2f, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e,
- 0x67, 0x20, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x45,
- 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x65, 0x66,
- 0x0a, 0x2f, 0x55, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x49, 0x44, 0x20,
- 0x35, 0x30, 0x32, 0x30, 0x39, 0x31, 0x33, 0x20, 0x64, 0x65, 0x66,
- 0x0a, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x64, 0x69, 0x63,
- 0x74, 0x20, 0x65, 0x6e, 0x64, 0x0a, 0x63, 0x75, 0x72, 0x72, 0x65,
- 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x20, 0x65, 0x65, 0x78, 0x65,
- 0x63, 0x0d, 0x80, 0x02, 0x71, 0x86, 0x00, 0x00, 0xe9, 0x8d, 0x09,
- 0xd7, 0x60, 0xa3, 0xc2, 0x2c, 0xf1, 0x19, 0xf9, 0xdc, 0x69, 0x9a,
- 0x22, 0xc3, 0x5b, 0x5b, 0x35, 0xed, 0x6a, 0xa2, 0x35, 0x93, 0xc7,
- 0x6d, 0x54, 0xca, 0xbb, 0x5e, 0x94, 0x2b, 0xf7, 0xd6, 0xdd, 0x84,
- 0xf1, 0x66, 0x4b, 0x89, 0x69, 0x9c, 0x74, 0xb4, 0x72, 0xde, 0x9f,
- 0x8e, 0x6d, 0xf9, 0x25, 0xf6, 0xc4, 0xf2, 0x04, 0xe9, 0xf1, 0xc6,
- 0x39, 0xb4, 0xdb, 0xa9, 0x88, 0xed, 0x2a, 0xc4, 0x19, 0xff, 0x2b,
- 0x2b, 0xde, 0x60, 0x5b, 0x8e, 0xe3, 0x26, 0x4e, 0xdd, 0x66, 0x41,
- 0x2d, 0x4f, 0x21, 0xc6, 0x4a, 0xc5, 0x22, 0xbd, 0xfc, 0x7c, 0x55,
- 0x02, 0xf9, 0xc3, 0xf3, 0xe5, 0x59, 0x2b, 0x3b, 0x20, 0x93, 0xd3,
- 0x3c, 0x9b, 0xfa, 0xed, 0xd2, 0xd4, 0x9e, 0x89, 0xaa, 0xba, 0xa8,
- 0x32, 0xe2, 0x3f, 0x06, 0x2e, 0x91, 0xa2, 0x50, 0x32, 0x51, 0x9d,
- 0x18, 0x68, 0x81, 0x6e, 0x44, 0xb4, 0xe0, 0x74, 0x77, 0x95, 0x00,
- 0x3d, 0x79, 0x30, 0x29, 0x9d, 0x6e, 0x1e, 0x2a, 0x5b, 0xfe, 0x0d,
- 0x59, 0x5d, 0xc9, 0x7e, 0x14, 0x09, 0x89, 0xce, 0x81, 0xd8, 0xd7,
- 0xf8, 0x52, 0xff, 0x9c, 0xdc, 0x7a, 0x1b, 0x1b, 0x59, 0x8c, 0x69,
- 0x13, 0x1d, 0xee, 0x00, 0x5b, 0x41, 0x58, 0x05, 0xa1, 0x6d, 0x8a,
- 0x12, 0x3e, 0x6f, 0x2c, 0x76, 0xad, 0xd0, 0x4b, 0x32, 0x5a, 0xf1,
- 0x71, 0xa3, 0xdf, 0x24, 0x79, 0x62, 0x05, 0x93, 0xda, 0x38, 0x3f,
- 0xcf, 0xe4, 0x56, 0xc9, 0x84, 0x6e, 0xb7, 0xe9, 0x29, 0x63, 0xe2,
- 0xb2, 0xe8, 0xdc, 0x46, 0x91, 0x2c, 0xa8, 0x16, 0xd0, 0xbe, 0x13,
- 0x2d, 0x78, 0xa5, 0x48, 0x29, 0xcc, 0xc2, 0x9b, 0xfa, 0xfb, 0x6a,
- 0x63, 0xf8, 0xe5, 0x4b, 0x92, 0xb5, 0x07, 0x0f, 0xf3, 0xd8, 0x08,
- 0x01, 0xdb, 0xec, 0x65, 0x8c, 0xd4, 0x56, 0xa3, 0x52, 0xef, 0xcf,
- 0x47, 0xb4, 0x29, 0x38, 0xb8, 0x28, 0x9b, 0xa0, 0xd1, 0xe9, 0x68,
- 0x67, 0x5a, 0x94, 0x55, 0x9c, 0x00, 0xc4, 0x42, 0x46, 0x5c, 0x93,
- 0x07, 0xd6, 0x5a, 0xa1, 0xa6, 0xbe, 0x3d, 0x3b, 0x6a, 0xbc, 0xe4,
- 0x37, 0x8f, 0x9d, 0xb4, 0xb1, 0xc5, 0xb1, 0xf6, 0xda, 0xfa, 0x20,
- 0x63, 0x39, 0x0f, 0x53, 0xcf, 0xbf, 0x87, 0x4f, 0x0f, 0x1d, 0x8a,
- 0x3b, 0xf8, 0x04, 0x46, 0x05, 0x80, 0x73, 0x83, 0x4d, 0x7c, 0x65,
- 0x15, 0x15, 0xe6, 0x7d, 0xc6, 0x8d, 0x86, 0xe9, 0xfe, 0xb8, 0x5e,
- 0xcf, 0x97, 0xca, 0x99, 0xc0, 0xac, 0x62, 0x2c, 0x27, 0x73, 0xcd,
- 0x3d, 0x1f, 0xfd, 0x4f, 0x30, 0x02, 0x98, 0x77, 0x80, 0xaf, 0xc8,
- 0x85, 0xcd, 0xbb, 0xb2, 0xb1, 0x5d, 0x2f, 0x97, 0x4d, 0x08, 0xb1,
- 0x51, 0x11, 0x6f, 0x00, 0x9f, 0xab, 0xfa, 0x99, 0x40, 0x4a, 0x5e,
- 0x06, 0xa7, 0x68, 0xf0, 0x32, 0x5e, 0x6b, 0x4c, 0x3b, 0xd3, 0x6c,
- 0xdc, 0x48, 0x90, 0x00, 0xfd, 0x9d, 0xa3, 0x0e, 0x21, 0xb8, 0xe7,
- 0x07, 0xa0, 0x9a, 0x5f, 0x6c, 0x4a, 0xa7, 0x0e, 0x01, 0x91, 0x63,
- 0xda, 0xcc, 0x09, 0xfb, 0x4e, 0x15, 0x32, 0x04, 0xe0, 0xb7, 0xb4,
- 0x56, 0x98, 0xbc, 0xbc, 0x6f, 0x90, 0xb0, 0xf7, 0x6a, 0x30, 0xd5,
- 0xab, 0x7a, 0x96, 0xaf, 0x34, 0x70, 0xf5, 0x41, 0x0f, 0x70, 0x93,
- 0x52, 0x9c, 0xef, 0x4b, 0xb8, 0x53, 0x5a, 0xdf, 0xc7, 0x88, 0x89,
- 0xa1, 0xe6, 0x34, 0x8f, 0x0f, 0x4e, 0xde, 0xc3, 0xce, 0x72, 0x9c,
- 0x0b, 0xb2, 0x06, 0x59, 0xaf, 0x1c, 0x65, 0x0d, 0x32, 0x0b, 0xca,
- 0xa4, 0xe9, 0x06, 0x56, 0x52, 0x81, 0x10, 0x22, 0x58, 0xe8, 0xc0,
- 0x96, 0x46, 0x21, 0x3d, 0xca, 0xef, 0x7a, 0x79, 0x5b, 0xb5, 0xad,
- 0x52, 0xee, 0xfa, 0x4a, 0xcf, 0xa7, 0xd9, 0xce, 0xc0, 0x8e, 0x76,
- 0x9a, 0x2f, 0x1f, 0x0c, 0xc6, 0xec, 0x25, 0xd4, 0x22, 0xdb, 0x7e,
- 0xfb, 0xa7, 0xaf, 0xd7, 0x17, 0x61, 0x44, 0xca, 0xb3, 0x23, 0x8a,
- 0xfb, 0x98, 0xa6, 0xf7, 0x38, 0x9d, 0xf3, 0xe7, 0x35, 0x87, 0x73,
- 0x27, 0xa3, 0x0e, 0x0e, 0x4a, 0x53, 0xed, 0xc6, 0x4c, 0xe5, 0x4f,
- 0x00, 0x56, 0xe8, 0x61, 0xd2, 0x9d, 0x93, 0x37, 0x1b, 0x57, 0x10,
- 0xa8, 0x19, 0x68, 0x7b, 0x0d, 0xe2, 0xe0, 0x5e, 0xcf, 0x30, 0x77,
- 0xbf, 0x4e, 0x73, 0xb1, 0x7f, 0x8e, 0xc0, 0x15, 0x53, 0xf5, 0x17,
- 0x85, 0xdb, 0x07, 0x36, 0x79, 0xea, 0x4b, 0x9f, 0xdd, 0x29, 0xd8,
- 0x43, 0x32, 0x92, 0xaa, 0x30, 0xcc, 0xc5, 0xa6, 0x65, 0x9e, 0x2c,
- 0xbd, 0x6d, 0x77, 0x92, 0xde, 0x21, 0x2c, 0x8e, 0xea, 0x0f, 0xa6,
- 0xb4, 0xfe, 0x74, 0x9a, 0xb0, 0x9d, 0x5f, 0xfa, 0x49, 0x75, 0x24,
- 0x19, 0x58, 0xc4, 0x3e, 0xd6, 0x79, 0xe4, 0x9b, 0x64, 0xcf, 0xeb,
- 0x26, 0x50, 0x05, 0xbb, 0xa5, 0xc6, 0xb3, 0x96, 0xca, 0xb8, 0xe5,
- 0x6c, 0x31, 0xc1, 0xa7, 0xe1, 0xb5, 0x1a, 0xeb, 0xa7, 0xae, 0x9b,
- 0x6d, 0xbf, 0x00, 0x2c, 0x6e, 0x0b, 0x7c, 0xdc, 0x48, 0x5f, 0xee,
- 0xf1, 0x32, 0x7e, 0x56, 0xab, 0xa5, 0x10, 0xbb, 0x29, 0x3d, 0x09,
- 0x70, 0x5a, 0x04, 0x69, 0xbc, 0xd7, 0x3a, 0xa5, 0xb3, 0x08, 0x4d,
- 0x80, 0x52, 0x25, 0x10, 0x31, 0x3d, 0xec, 0xaf, 0x57, 0x90, 0xc9,
- 0xe7, 0x30, 0xb0, 0x3e, 0xdf, 0xde, 0x97, 0x54, 0x0c, 0x3e, 0x20,
- 0x78, 0x23, 0x86, 0xf1, 0x51, 0x86, 0xd0, 0xa3, 0xbb, 0x6f, 0x66,
- 0x28, 0x35, 0x84, 0xe2, 0xc0, 0xb2, 0x06, 0x54, 0x89, 0x78, 0x50,
- 0x9d, 0xb2, 0x36, 0xc3, 0x2e, 0x66, 0x4e, 0xb3, 0x76, 0x6c, 0xe1,
- 0xcf, 0xff, 0xb2, 0x73, 0xd8, 0xb6, 0xdb, 0xa5, 0xfc, 0xf2, 0x69,
- 0x9e, 0x8a, 0xc7, 0xcc, 0x6c, 0x72, 0x77, 0x4c, 0x05, 0x60, 0x43,
- 0xb8, 0x5d, 0x3b, 0xb2, 0x49, 0x82, 0xa8, 0xf7, 0x08, 0xad, 0x89,
- 0x17, 0xbe, 0x02, 0x9a, 0x1e, 0x84, 0xab, 0xd1, 0x13, 0x20, 0x28,
- 0x12, 0xf5, 0x68, 0x51, 0x80, 0xaf, 0xe3, 0x83, 0xc5, 0x19, 0x40,
- 0xce, 0xac, 0xc3, 0xff, 0x8b, 0x0e, 0x51, 0x87, 0xd3, 0xdc, 0x3d,
- 0x1b, 0xad, 0x50, 0xcd, 0xf3, 0x58, 0x71, 0xee, 0x14, 0x0e, 0xf9,
- 0x76, 0x36, 0xc3, 0xf7, 0x27, 0x90, 0x4a, 0xf4, 0xca, 0x52, 0xca,
- 0x26, 0xd1, 0x6b, 0xe5, 0x2f, 0xe6, 0x88, 0x8f, 0x46, 0x77, 0x90,
- 0x4e, 0x38, 0xd3, 0x26, 0x8f, 0x84, 0xae, 0xed, 0x6a, 0xfb, 0x7b,
- 0x01, 0x5b, 0xce, 0x4c, 0x34, 0xae, 0xf8, 0xee, 0x9b, 0x0c, 0x01,
- 0x37, 0x4c, 0x52, 0xb3, 0xba, 0x49, 0x38, 0xc6, 0xe8, 0x5a, 0x88,
- 0xa5, 0xa6, 0x11, 0xcb, 0xf4, 0x7c, 0xae, 0x9d, 0xf1, 0xdc, 0x35,
- 0xfc, 0x64, 0x9d, 0x76, 0xc6, 0xc9, 0x9b, 0x12, 0xb4, 0xcd, 0x0e,
- 0xfc, 0x69, 0xbc, 0x36, 0xef, 0xbd, 0xaf, 0x4e, 0x62, 0x12, 0x06,
- 0x12, 0xba, 0xe8, 0x43, 0x38, 0xa3, 0x38, 0x52, 0x76, 0x5f, 0x26,
- 0xec, 0xdf, 0xbe, 0x33, 0x2e, 0x0b, 0xae, 0xd3, 0x76, 0x32, 0xac,
- 0x5b, 0x57, 0x94, 0x1e, 0xec, 0xab, 0x3b, 0x75, 0x5f, 0xc5, 0x82,
- 0x20, 0xc3, 0x9d, 0xcd, 0x82, 0x84, 0xc4, 0x5b, 0x65, 0x6c, 0xf9,
- 0x81, 0xef, 0x14, 0x84, 0x10, 0xd8, 0xe5, 0x0c, 0x0f, 0x97, 0x18,
- 0x06, 0x25, 0xc3, 0x0a, 0x5f, 0xb8, 0x3f, 0xcb, 0xd1, 0x3a, 0x37,
- 0x3d, 0x96, 0xc0, 0xcf, 0x7a, 0x57, 0x06, 0x6e, 0x5f, 0x85, 0x01,
- 0x4e, 0xd7, 0x97, 0x5f, 0xd6, 0x9a, 0xfc, 0xaf, 0x65, 0x86, 0xa7,
- 0x0f, 0x10, 0x61, 0x7c, 0xce, 0xc3, 0xfe, 0xa7, 0x3e, 0x34, 0x4c,
- 0x26, 0x4f, 0x7f, 0x73, 0xc7, 0xc2, 0x09, 0xa5, 0x56, 0xa3, 0xfe,
- 0xe9, 0xe0, 0xdd, 0xc4, 0x93, 0x17, 0x6d, 0x84, 0xf9, 0x8e, 0x6c,
- 0xcc, 0x20, 0x03, 0xe4, 0x75, 0x29, 0x44, 0x06, 0x11, 0x88, 0x8d,
- 0xcb, 0xd4, 0x55, 0x65, 0x56, 0x33, 0xf0, 0x29, 0x6b, 0x33, 0x26,
- 0xf3, 0xfa, 0xd2, 0xbe, 0x38, 0x7f, 0x0b, 0xbf, 0xe1, 0x95, 0x7a,
- 0xf0, 0xb9, 0x68, 0xda, 0x0e, 0x4a, 0x3e, 0x56, 0x29, 0x1d, 0x11,
- 0xd0, 0x2f, 0x4c, 0x22, 0x84, 0x84, 0x0e, 0x6d, 0x6d, 0x6c, 0xab,
- 0x0a, 0x90, 0xa6, 0x89, 0x9c, 0xa0, 0x89, 0x2b, 0xfc, 0x5c, 0xca,
- 0x77, 0x5e, 0xea, 0x0d, 0x9e, 0x24, 0x94, 0x70, 0x70, 0x6a, 0x15,
- 0xea, 0x93, 0xf5, 0xfa, 0x78, 0x80, 0xd3, 0xe4, 0xc2, 0x13, 0xbb,
- 0xac, 0xce, 0x69, 0x77, 0x5d, 0xa6, 0xc1, 0x68, 0x7f, 0x15, 0xc4,
- 0xc8, 0x69, 0x57, 0x01, 0x8d, 0x42, 0x8d, 0x98, 0xce, 0x71, 0xa3,
- 0x05, 0xac, 0xfe, 0x87, 0x53, 0xac, 0x95, 0xb6, 0x5c, 0x30, 0x05,
- 0x47, 0x93, 0xb8, 0x2e, 0xf4, 0x30, 0x38, 0x0d, 0x8b, 0x96, 0xe8,
- 0x26, 0xba, 0x74, 0x1f, 0x3c, 0x57, 0x58, 0xff, 0x30, 0x2c, 0x10,
- 0x13, 0x5c, 0x3a, 0x48, 0x1c, 0xc1, 0x2c, 0x32, 0x08, 0xb9, 0xff,
- 0x93, 0x4a, 0xd3, 0x97, 0x7b, 0x3c, 0x4d, 0x61, 0xdb, 0x5e, 0xf5,
- 0x1a, 0x50, 0x35, 0x09, 0x6b, 0xcd, 0x45, 0x9e, 0x57, 0x23, 0xc1,
- 0x52, 0x54, 0xd4, 0x9b, 0x01, 0xca, 0x7b, 0xb5, 0xe4, 0x9b, 0x70,
- 0xa7, 0x92, 0x18, 0xe8, 0xc4, 0xaa, 0xdd, 0x40, 0x77, 0x06, 0xd0,
- 0x3e, 0x96, 0x79, 0x9c, 0xa8, 0x60, 0x6f, 0x48, 0x0d, 0xcd, 0x7d,
- 0xe4, 0x06, 0xd3, 0xa4, 0x3b, 0xf3, 0x37, 0x8e, 0x79, 0x46, 0xd7,
- 0xd7, 0xac, 0xdb, 0x28, 0xd4, 0xeb, 0x74, 0x44, 0x14, 0xbc, 0xa5,
- 0x64, 0xbe, 0xaa, 0x12, 0x3e, 0x5c, 0xf7, 0xc5, 0x6d, 0xb4, 0xa4,
- 0x83, 0xd8, 0x76, 0x72, 0x53, 0x30, 0xbc, 0x45, 0xfe, 0x74, 0x95,
- 0x2b, 0x53, 0xa0, 0x63, 0x8f, 0x22, 0xe3, 0xfb, 0x38, 0x84, 0x6b,
- 0xc6, 0xc7, 0xff, 0x68, 0xfb, 0xd0, 0x4e, 0x18, 0xa9, 0x6a, 0xb8,
- 0x7b, 0x21, 0x86, 0xb6, 0xab, 0xdd, 0x86, 0xc9, 0x8f, 0x9c, 0xd0,
- 0x10, 0x14, 0x42, 0xc9, 0xa9, 0x00, 0xf2, 0x21, 0x1a, 0xda, 0xdf,
- 0x11, 0x35, 0xce, 0x36, 0xc7, 0xe2, 0x02, 0x8a, 0x6d, 0xa8, 0x69,
- 0xdd, 0xe0, 0x46, 0xb8, 0xe8, 0x74, 0x8a, 0x42, 0xaf, 0xc2, 0x1a,
- 0x4c, 0xcf, 0x87, 0x49, 0x60, 0x82, 0x48, 0xe9, 0x64, 0xfc, 0xa1,
- 0x92, 0x09, 0x10, 0xb0, 0xa7, 0xa1, 0x54, 0xd9, 0x57, 0x7e, 0xb6,
- 0x27, 0xa2, 0xe3, 0x7e, 0x21, 0x2d, 0x4a, 0x16, 0x11, 0xca, 0xa7,
- 0x87, 0xec, 0x82, 0xd8, 0xd2, 0xce, 0xb7, 0x7c, 0xea, 0x11, 0x5c,
- 0xe3, 0xa6, 0xcf, 0x8a, 0xe7, 0x23, 0x99, 0x56, 0xa2, 0xf3, 0x85,
- 0xa8, 0x4b, 0xb6, 0x4b, 0x27, 0x28, 0x27, 0xb0, 0xcf, 0xa3, 0x84,
- 0x78, 0xb7, 0x48, 0x5b, 0xe9, 0xc8, 0x6a, 0x19, 0xac, 0xd4, 0x28,
- 0xa2, 0x62, 0xae, 0x0e, 0x74, 0x4a, 0xe5, 0xd6, 0x7b, 0x3b, 0xff,
- 0xa3, 0xb9, 0xb6, 0x43, 0xf2, 0x50, 0x96, 0x5c, 0x97, 0xb7, 0x28,
- 0x84, 0xb5, 0x19, 0xa4, 0x5a, 0x6a, 0xe6, 0xa2, 0x10, 0xd1, 0x41,
- 0xf1, 0x4c, 0x95, 0xe9, 0x4e, 0x62, 0xe8, 0x27, 0x4d, 0x0b, 0x1c,
- 0x69, 0x88, 0xf9, 0x63, 0xbb, 0x0d, 0x75, 0x31, 0x5b, 0xe4, 0x6c,
- 0xfc, 0x8d, 0x7d, 0x71, 0xd7, 0x3f, 0x8f, 0x59, 0xef, 0xc0, 0xdc,
- 0x03, 0xcd, 0x92, 0x93, 0xa5, 0xdd, 0x58, 0x1a, 0x34, 0x88, 0x65,
- 0xa4, 0xf0, 0xdf, 0x69, 0x98, 0x1e, 0x94, 0x92, 0xde, 0x50, 0xea,
- 0xcb, 0x42, 0xa5, 0x46, 0x9d, 0x30, 0x2b, 0x99, 0xae, 0xab, 0x30,
- 0x4f, 0xc4, 0xd0, 0x14, 0x0a, 0xe1, 0x7d, 0xe9, 0x62, 0x63, 0xa6,
- 0x38, 0x79, 0x68, 0x0b, 0xd9, 0x2b, 0x43, 0x5d, 0xeb, 0x3c, 0x8c,
- 0x4f, 0xca, 0xe5, 0x28, 0xe0, 0x4c, 0x35, 0xe0, 0xb3, 0x0f, 0xcd,
- 0xe4, 0x1c, 0xe1, 0x06, 0xce, 0x7a, 0x22, 0xff, 0x0b, 0xf5, 0xd3,
- 0xd1, 0x2d, 0x9b, 0x8b, 0xba, 0xd5, 0x04, 0xad, 0x15, 0x5d, 0x3b,
- 0x19, 0xed, 0x31, 0x0a, 0xd8, 0xa0, 0x3e, 0x74, 0xdc, 0xc4, 0xff,
- 0x29, 0xff, 0x94, 0x7f, 0xe9, 0xbb, 0x99, 0x8e, 0x65, 0x28, 0xaa,
- 0xc0, 0x2f, 0x1d, 0x70, 0x26, 0x51, 0xaf, 0x32, 0x5f, 0x21, 0x95,
- 0x4f, 0xd0, 0x6c, 0x6c, 0x2e, 0x8f, 0x53, 0xbf, 0xd7, 0xef, 0x3a,
- 0x5d, 0x9d, 0x7f, 0x43, 0xcc, 0x5f, 0xd8, 0x6d, 0x1f, 0xaf, 0x8b,
- 0x78, 0xc8, 0xdf, 0x66, 0x25, 0xfc, 0x2e, 0x3a, 0xf3, 0x4f, 0xf5,
- 0x8f, 0xcc, 0xad, 0x40, 0x8f, 0xcf, 0x4e, 0x1d, 0x90, 0xfa, 0x68,
- 0x90, 0xa6, 0x20, 0xdd, 0x86, 0x3b, 0x27, 0x26, 0x6b, 0x4f, 0x63,
- 0xc4, 0x03, 0x5b, 0x98, 0x55, 0x2c, 0xa0, 0x73, 0xad, 0xdd, 0x3e,
- 0x64, 0x33, 0x4b, 0xcb, 0x40, 0x12, 0x96, 0xd4, 0xe1, 0xc0, 0xaa,
- 0xea, 0xcb, 0xeb, 0x98, 0x04, 0x1b, 0x19, 0x7f, 0xac, 0x84, 0x67,
- 0x74, 0xfd, 0xe2, 0x0a, 0x1e, 0x41, 0xc8, 0xc9, 0x40, 0x23, 0x96,
- 0x32, 0x19, 0x15, 0x39, 0xa3, 0x30, 0x54, 0x4b, 0x8d, 0x1a, 0x63,
- 0x28, 0x6b, 0x2f, 0x15, 0xf0, 0x23, 0x5a, 0xf8, 0x94, 0x88, 0x32,
- 0x41, 0x7d, 0x74, 0xe4, 0xd4, 0x18, 0x31, 0x27, 0x92, 0xc4, 0xc0,
- 0x11, 0x46, 0x4f, 0xce, 0xbf, 0x55, 0xeb, 0x34, 0x6f, 0x51, 0xc5,
- 0x15, 0x3d, 0x72, 0xb4, 0x19, 0x53, 0x60, 0x5c, 0x0a, 0x0b, 0x7b,
- 0x6b, 0x52, 0x63, 0xcc, 0xcb, 0x83, 0xab, 0x64, 0x11, 0x1b, 0xe3,
- 0xc1, 0xb6, 0xd3, 0xda, 0x1c, 0x8c, 0xc2, 0x24, 0xe7, 0xe0, 0xff,
- 0x26, 0x6f, 0x35, 0xe7, 0x4c, 0x00, 0xcc, 0x48, 0x31, 0x2d, 0xae,
- 0x25, 0x9b, 0x08, 0x4f, 0xc4, 0xcb, 0xf4, 0x40, 0x2a, 0xc6, 0x04,
- 0xd0, 0xe1, 0x87, 0x44, 0xe9, 0xe5, 0x6f, 0x2d, 0x7e, 0xed, 0x55,
- 0x3e, 0x8b, 0xc4, 0x24, 0x98, 0xeb, 0x45, 0x02, 0xa6, 0x14, 0x35,
- 0x7b, 0x84, 0x3f, 0x05, 0x8a, 0xae, 0x3e, 0xe0, 0x89, 0x90, 0x06,
- 0xd1, 0x83, 0x84, 0x3c, 0x73, 0x3c, 0x74, 0x28, 0x23, 0x31, 0xee,
- 0x30, 0x2f, 0x0c, 0xbc, 0x39, 0x16, 0xfd, 0x27, 0x94, 0x19, 0x73,
- 0x46, 0xb0, 0xee, 0xfb, 0x9a, 0x19, 0x69, 0x70, 0x3b, 0x37, 0xb1,
- 0x6f, 0x27, 0xa4, 0x00, 0xa2, 0x9b, 0xef, 0x5b, 0x2c, 0xa0, 0xeb,
- 0x1b, 0x0e, 0xbc, 0xb7, 0x43, 0xac, 0xa6, 0x07, 0xdf, 0xb7, 0xca,
- 0x62, 0xea, 0xc1, 0x82, 0xb1, 0xff, 0xc5, 0x71, 0xb9, 0x96, 0x4b,
- 0x73, 0xbf, 0xf3, 0x5c, 0x32, 0x00, 0x17, 0xd0, 0x8b, 0x47, 0x92,
- 0x0d, 0x86, 0x41, 0x96, 0xe8, 0x9f, 0x6f, 0x91, 0x50, 0x85, 0x49,
- 0xb2, 0xb1, 0x89, 0xce, 0x32, 0x19, 0xfd, 0x53, 0x82, 0x7c, 0x84,
- 0x05, 0x0f, 0xac, 0x62, 0x68, 0xd0, 0xc4, 0x89, 0x5e, 0x03, 0x33,
- 0xef, 0x93, 0x9e, 0xf2, 0xed, 0x50, 0x55, 0x77, 0xb8, 0x5b, 0x10,
- 0xb7, 0x64, 0x45, 0x67, 0xff, 0x29, 0xa7, 0xab, 0x80, 0x94, 0xfa,
- 0x7e, 0x0d, 0x03, 0x3e, 0x33, 0x72, 0x87, 0x69, 0x56, 0x24, 0x2c,
- 0x3c, 0x8d, 0xa0, 0xdc, 0x9f, 0xa9, 0xba, 0xd3, 0x0b, 0x23, 0xc5,
- 0x44, 0xe5, 0xc0, 0xd4, 0xbd, 0xde, 0x22, 0xcd, 0xa4, 0x91, 0x71,
- 0xa4, 0xec, 0x1f, 0x2b, 0x57, 0x4b, 0x88, 0x62, 0xb8, 0x75, 0x9d,
- 0x5a, 0x35, 0x5e, 0x21, 0x33, 0x1c, 0xdb, 0xdf, 0xae, 0x62, 0xf7,
- 0x6c, 0x02, 0xb7, 0xf8, 0x4d, 0x5b, 0x81, 0x52, 0xb9, 0x91, 0x7a,
- 0x24, 0xd5, 0x68, 0xc1, 0xca, 0x87, 0x17, 0xe9, 0x5b, 0x75, 0x97,
- 0xad, 0x7c, 0x2c, 0x16, 0x92, 0x9c, 0x4a, 0x1f, 0xad, 0x61, 0x83,
- 0xad, 0x1d, 0xd3, 0xab, 0x90, 0x06, 0x84, 0x7a, 0xfe, 0x8a, 0x99,
- 0xcc, 0x31, 0x9d, 0x8b, 0xf4, 0xcc, 0xf3, 0xb4, 0xde, 0x10, 0x9c,
- 0x3e, 0x06, 0x91, 0x5e, 0xc4, 0x49, 0x9d, 0x90, 0x75, 0x11, 0x21,
- 0x26, 0xa0, 0x4f, 0x00, 0x9e, 0x95, 0xfb, 0x0e, 0x25, 0x66, 0xce,
- 0xfc, 0x28, 0xe7, 0x7e, 0x72, 0x68, 0x8a, 0x81, 0xa2, 0x73, 0x1b,
- 0xa0, 0x88, 0x3b, 0xe7, 0x90, 0x05, 0xfb, 0xd4, 0xdb, 0x3d, 0x23,
- 0x4a, 0x76, 0x39, 0x81, 0x41, 0x3b, 0x16, 0x49, 0x2e, 0xc6, 0x28,
- 0xdb, 0xe6, 0x21, 0xa0, 0x8b, 0xbf, 0x3f, 0x70, 0x99, 0x2a, 0x55,
- 0x7d, 0x56, 0xa5, 0x4f, 0xd3, 0x54, 0x6f, 0xa8, 0xda, 0x01, 0xec,
- 0xd4, 0xa5, 0x14, 0x62, 0x6c, 0x26, 0xf0, 0x52, 0xe2, 0x53, 0xc8,
- 0xa4, 0x06, 0x8b, 0x33, 0xbf, 0x19, 0x28, 0x47, 0x30, 0xba, 0xec,
- 0x36, 0xe2, 0x56, 0x1f, 0xca, 0xb8, 0xf1, 0x1c, 0x2d, 0x1b, 0x9d,
- 0x7b, 0x65, 0x76, 0x71, 0x04, 0x81, 0xce, 0xca, 0x3a, 0x8f, 0x82,
- 0xc6, 0x43, 0xa6, 0x1a, 0xe3, 0x82, 0x29, 0xfb, 0xe2, 0x65, 0x2a,
- 0xac, 0xa4, 0xe9, 0x4a, 0x33, 0x67, 0x17, 0x06, 0x27, 0xc9, 0x77,
- 0xe3, 0xa0, 0xa4, 0x69, 0xa7, 0x8f, 0xdc, 0x06, 0x81, 0x0d, 0x5e,
- 0xa8, 0xe4, 0xbb, 0xcf, 0xc2, 0x6a, 0x6d, 0xc4, 0x0a, 0xac, 0x28,
- 0x58, 0x38, 0x84, 0xbd, 0x61, 0xa7, 0x04, 0xa1, 0x2c, 0x0c, 0x1a,
- 0x72, 0xfa, 0x37, 0x11, 0xb3, 0xc4, 0xe1, 0x99, 0xad, 0xb3, 0x8d,
- 0x44, 0xd0, 0x5b, 0x53, 0xec, 0xa4, 0xc7, 0xc8, 0x4a, 0x54, 0x81,
- 0xfc, 0xd0, 0xd5, 0xe6, 0x10, 0x78, 0x5f, 0xe4, 0x0b, 0x59, 0xa1,
- 0xd7, 0x3b, 0x29, 0x4f, 0xa0, 0x12, 0xc1, 0xb3, 0xed, 0xbf, 0x9b,
- 0x51, 0x43, 0x36, 0xc5, 0x7e, 0xff, 0xf3, 0x5a, 0x1c, 0xd9, 0x19,
- 0xd6, 0x23, 0x9d, 0x58, 0x5d, 0xa8, 0x32, 0x25, 0xa1, 0xe3, 0x3a,
- 0xb1, 0xe2, 0xb7, 0x27, 0xf9, 0x02, 0x42, 0xa6, 0xee, 0xf2, 0x96,
- 0x1e, 0x67, 0x9d, 0x7f, 0x6e, 0x06, 0x48, 0x84, 0x4c, 0xa2, 0xd4,
- 0x40, 0xe3, 0xc3, 0xb9, 0xad, 0x9b, 0x8a, 0xb9, 0x09, 0x43, 0x0d,
- 0x4c, 0xef, 0x8e, 0x68, 0x0c, 0xf9, 0x36, 0x60, 0xbd, 0xbb, 0x48,
- 0x9f, 0x35, 0x00, 0x9c, 0x9c, 0x48, 0x7f, 0x3a, 0x86, 0xc5, 0xab,
- 0x84, 0xdb, 0xa1, 0x49, 0xe2, 0x82, 0x1c, 0x07, 0x71, 0xcc, 0xc1,
- 0x6d, 0xc2, 0x73, 0xd4, 0xa0, 0x18, 0x41, 0x7e, 0x36, 0x92, 0x5c,
- 0x80, 0x2b, 0xfe, 0xf5, 0x66, 0x83, 0x4d, 0x99, 0x51, 0x8c, 0xd2,
- 0x6e, 0xa7, 0x1d, 0x80, 0xb9, 0x0f, 0x95, 0xb7, 0x1c, 0xef, 0xb4,
- 0x33, 0x81, 0xd4, 0x30, 0x4d, 0x34, 0xa2, 0xb0, 0xcc, 0x5e, 0x7e,
- 0x81, 0xaa, 0x4b, 0xfa, 0xe2, 0xa4, 0x5a, 0x3e, 0x75, 0x2d, 0xf7,
- 0x6d, 0xa9, 0x9b, 0xa1, 0xe1, 0xcc, 0x97, 0x50, 0xdb, 0xb3, 0x5a,
- 0x93, 0x96, 0x62, 0x96, 0x6c, 0xa2, 0xb5, 0x3d, 0xb3, 0x1f, 0x06,
- 0x59, 0xa0, 0x33, 0x8f, 0xbe, 0x5a, 0xee, 0x01, 0x29, 0x0e, 0xa0,
- 0x38, 0x04, 0x2d, 0xc2, 0xd8, 0x7e, 0x2c, 0x0e, 0xd2, 0x07, 0xc1,
- 0x1c, 0x8d, 0x8d, 0x99, 0xb6, 0xf3, 0xe2, 0x11, 0xe7, 0x60, 0xc8,
- 0x9a, 0x6b, 0xc6, 0x50, 0x82, 0xa7, 0xdf, 0xde, 0xa5, 0x32, 0x62,
- 0x9a, 0xc9, 0x78, 0xb7, 0x5b, 0xd5, 0x66, 0x10, 0x4e, 0x12, 0xab,
- 0x79, 0x2e, 0x72, 0x77, 0xd5, 0x60, 0x27, 0x62, 0x98, 0x24, 0x2d,
- 0xdc, 0x09, 0x24, 0x66, 0x3c, 0x65, 0xec, 0x66, 0x7c, 0x23, 0xf2,
- 0x3f, 0x52, 0x7d, 0xa1, 0xd5, 0x85, 0x57, 0x12, 0x7e, 0xc1, 0x7a,
- 0x72, 0x20, 0xfd, 0x0e, 0x0e, 0x33, 0x95, 0xfc, 0x7f, 0x5e, 0xb8,
- 0xcb, 0x76, 0x05, 0x57, 0xea, 0x42, 0xba, 0x2d, 0x56, 0xe3, 0x35,
- 0x2b, 0xd2, 0xc4, 0x7b, 0xf4, 0xff, 0xff, 0xbd, 0x11, 0x66, 0xd8,
- 0xed, 0x27, 0xfa, 0x12, 0x15, 0x63, 0xb4, 0xc0, 0xc4, 0x42, 0x69,
- 0xfd, 0x4e, 0x9f, 0x6f, 0x57, 0x7f, 0x85, 0xef, 0xef, 0x71, 0xa6,
- 0x82, 0x29, 0x36, 0x27, 0x5a, 0xaf, 0x52, 0xf2, 0x54, 0xe8, 0x9c,
- 0xf6, 0x68, 0xd0, 0xe0, 0xa1, 0xdd, 0x93, 0xe4, 0x37, 0x21, 0x10,
- 0x52, 0x60, 0xcf, 0x2c, 0xda, 0xee, 0xef, 0x1b, 0x64, 0x27, 0xc9,
- 0x94, 0x3e, 0x87, 0xf5, 0x1b, 0x41, 0x34, 0x4c, 0x3e, 0x4a, 0x4e,
- 0x35, 0x46, 0x20, 0x37, 0x36, 0x15, 0xb0, 0xa6, 0x0c, 0x38, 0xfb,
- 0x50, 0x1a, 0xe1, 0x0b, 0xe8, 0xec, 0x1a, 0x9a, 0x84, 0xa3, 0xa7,
- 0x6e, 0x4b, 0x83, 0x87, 0x6b, 0xdd, 0x11, 0xa8, 0xcb, 0x27, 0x57,
- 0x8d, 0x1a, 0x9c, 0x93, 0x24, 0xa3, 0xd1, 0x9a, 0x2c, 0xe9, 0xf0,
- 0xde, 0xc2, 0x6c, 0x4f, 0x91, 0x38, 0x92, 0x36, 0x06, 0xc2, 0xdd,
- 0x6b, 0x00, 0x69, 0xfa, 0x2e, 0x2b, 0xa9, 0x86, 0xe4, 0xa3, 0xd0,
- 0xf9, 0x51, 0xa9, 0x35, 0x46, 0x31, 0x2b, 0x1d, 0x70, 0x0e, 0x13,
- 0x02, 0x72, 0xe8, 0x01, 0x35, 0xb2, 0x92, 0x6b, 0x98, 0x4a, 0xe0,
- 0xaa, 0x69, 0xa3, 0x36, 0x9c, 0x1e, 0x51, 0x34, 0xc2, 0x84, 0x09,
- 0x2c, 0x89, 0x89, 0x25, 0xa9, 0xe3, 0x94, 0xdb, 0x10, 0xe5, 0x07,
- 0xc8, 0x32, 0x4f, 0x29, 0x4f, 0xf4, 0x02, 0x19, 0x6a, 0x4c, 0x73,
- 0x5a, 0xeb, 0x7a, 0x76, 0x06, 0x79, 0x82, 0xba, 0x61, 0x36, 0xb7,
- 0x0f, 0x8e, 0xcd, 0x17, 0x51, 0xea, 0xda, 0xe7, 0xab, 0xff, 0x19,
- 0xf1, 0xe5, 0x9d, 0x64, 0x3c, 0xd3, 0xc2, 0x3b, 0x45, 0xd5, 0xfc,
- 0xc1, 0x0f, 0x14, 0xf2, 0xd5, 0xda, 0x8c, 0xf4, 0x6d, 0x5d, 0x04,
- 0xbf, 0xe0, 0xe3, 0xfc, 0x5a, 0xf8, 0xe8, 0x6b, 0x2e, 0x07, 0xc4,
- 0x03, 0xca, 0xbe, 0x1e, 0xb7, 0x0f, 0x31, 0xf4, 0x72, 0x16, 0x6b,
- 0x21, 0x56, 0xbc, 0x9d, 0xa1, 0x94, 0xb8, 0x95, 0x5c, 0xfa, 0x91,
- 0xf9, 0x7f, 0xf3, 0x0a, 0xef, 0x73, 0xab, 0x8b, 0xea, 0x72, 0x22,
- 0x0b, 0x06, 0xfc, 0x97, 0xda, 0x56, 0x98, 0xd5, 0xb4, 0xbc, 0x5a,
- 0xd4, 0x4f, 0x88, 0x03, 0x68, 0x7f, 0x3d, 0xac, 0xea, 0xd5, 0x9a,
- 0x3d, 0x8e, 0x43, 0x8f, 0x0f, 0xbe, 0x78, 0x30, 0x4b, 0x76, 0xc5,
- 0x01, 0x2d, 0xbc, 0x1f, 0xba, 0x98, 0x28, 0xf0, 0xd3, 0x4b, 0x4a,
- 0x1d, 0x8a, 0x15, 0xb5, 0xb0, 0x0b, 0x58, 0x73, 0xd0, 0x4b, 0x67,
- 0x2f, 0x4a, 0xe0, 0x18, 0x22, 0xa9, 0x1c, 0x8e, 0x2a, 0x6a, 0xac,
- 0x44, 0x1e, 0xa3, 0x36, 0x45, 0x6c, 0xcb, 0x55, 0x8f, 0xaa, 0x22,
- 0x8d, 0x1d, 0x16, 0x50, 0xe5, 0x6b, 0xa8, 0x8d, 0x8f, 0xeb, 0x5a,
- 0xdb, 0x05, 0x32, 0x0a, 0xed, 0xad, 0x39, 0xac, 0xfe, 0xce, 0xf5,
- 0xa9, 0x07, 0x42, 0xbb, 0xcb, 0xf5, 0xfc, 0xd6, 0xc2, 0xe3, 0x8e,
- 0xf7, 0xd7, 0xc0, 0x21, 0x69, 0xe5, 0x91, 0x4f, 0xe1, 0xdf, 0x55,
- 0xa3, 0x20, 0xea, 0x3e, 0xa8, 0x65, 0x04, 0x2f, 0x5c, 0xe0, 0x27,
- 0x85, 0x66, 0x79, 0x21, 0xae, 0x6d, 0x16, 0x17, 0xf8, 0x13, 0xa2,
- 0x08, 0xdd, 0xc6, 0x90, 0x25, 0x6d, 0x20, 0x85, 0xb4, 0x7f, 0x61,
- 0x55, 0x3b, 0xaf, 0x71, 0xc8, 0xed, 0x83, 0xa3, 0x15, 0x5e, 0xdd,
- 0xf6, 0x24, 0xaa, 0x55, 0x1a, 0xa6, 0x38, 0x40, 0x8f, 0x61, 0x5a,
- 0xc9, 0xcf, 0x77, 0xf9, 0xbe, 0x66, 0x91, 0xb7, 0x9c, 0xe6, 0x93,
- 0xea, 0xf1, 0x25, 0x72, 0x68, 0x48, 0x0d, 0xcd, 0x7d, 0xe4, 0x06,
- 0xd3, 0xa4, 0x44, 0x9c, 0xc5, 0x2b, 0x20, 0x40, 0x23, 0x44, 0x3a,
- 0x9d, 0xdf, 0x71, 0x2e, 0xba, 0x9a, 0x6f, 0x1e, 0xcb, 0x30, 0x1e,
- 0x43, 0xf2, 0x9b, 0x60, 0x0c, 0x85, 0x2f, 0x7d, 0xb5, 0x55, 0x2d,
- 0x02, 0x52, 0xf9, 0x8a, 0x02, 0x91, 0xb5, 0x92, 0x95, 0xf8, 0x3e,
- 0x95, 0x84, 0xef, 0x01, 0x02, 0x57, 0xd9, 0xc9, 0xbe, 0xb3, 0x36,
- 0x54, 0x9d, 0x88, 0xb0, 0x96, 0x95, 0x1a, 0x91, 0xd5, 0x22, 0xaa,
- 0xb0, 0x4f, 0x5f, 0x1c, 0xf2, 0x5a, 0xad, 0x1b, 0x52, 0x12, 0x86,
- 0x7b, 0xe2, 0xfa, 0xd1, 0xa3, 0x83, 0x8e, 0xaa, 0x47, 0x39, 0x36,
- 0xb1, 0x75, 0x4d, 0xa9, 0xbb, 0xe1, 0xad, 0xa0, 0x5d, 0x89, 0xfa,
- 0xb1, 0xb4, 0x9e, 0x59, 0x46, 0xfe, 0x99, 0xf0, 0x8d, 0xc0, 0x9f,
- 0xf7, 0x4e, 0x16, 0x46, 0x35, 0xf2, 0x3c, 0xe9, 0x96, 0xf0, 0x67,
- 0xef, 0xb2, 0xff, 0x9a, 0xdd, 0xbc, 0x57, 0xde, 0xd8, 0xbc, 0x38,
- 0x12, 0x36, 0xc4, 0x7e, 0x45, 0xc2, 0x87, 0x75, 0x1a, 0xbe, 0x5e,
- 0x60, 0x6c, 0x07, 0x9d, 0x70, 0x69, 0x1d, 0xd9, 0x68, 0x3b, 0x71,
- 0x76, 0x31, 0x69, 0xff, 0x56, 0xc2, 0x3a, 0x74, 0x53, 0xd9, 0x32,
- 0xae, 0x04, 0xba, 0x8c, 0x19, 0xc5, 0x08, 0x22, 0xae, 0x41, 0x94,
- 0xf9, 0x20, 0x98, 0x6c, 0x6c, 0x0f, 0x4b, 0x45, 0x29, 0xaf, 0x40,
- 0x0f, 0xe7, 0x79, 0xdb, 0xea, 0x3b, 0x40, 0x9a, 0xd2, 0x06, 0x86,
- 0x41, 0x8e, 0xfb, 0xcd, 0x8b, 0x54, 0x7e, 0xcf, 0x89, 0x55, 0x40,
- 0xec, 0xd1, 0x84, 0x77, 0x5c, 0xd1, 0x7f, 0xd2, 0x08, 0x4f, 0xea,
- 0x43, 0x87, 0xc2, 0x8b, 0x06, 0x84, 0x7d, 0x5e, 0x19, 0x51, 0xd9,
- 0xe6, 0x85, 0x46, 0xd7, 0xa3, 0xdf, 0x9e, 0x24, 0x00, 0x6a, 0x4f,
- 0xcb, 0x9f, 0xd8, 0x4f, 0x76, 0xb8, 0xc3, 0xe9, 0xa6, 0xcc, 0x52,
- 0x0f, 0xf3, 0xc4, 0x5b, 0xaa, 0xe4, 0x36, 0x1e, 0x29, 0xc3, 0x20,
- 0xcf, 0x15, 0x64, 0x95, 0x17, 0x49, 0x37, 0x4d, 0xfa, 0x07, 0x49,
- 0x96, 0x45, 0x6c, 0x14, 0xa3, 0xeb, 0x97, 0x62, 0x17, 0xf2, 0x99,
- 0xa2, 0x00, 0x35, 0x75, 0xab, 0x90, 0x6c, 0x33, 0x6a, 0x7c, 0xe1,
- 0x55, 0x96, 0x4a, 0x98, 0xb9, 0xde, 0x49, 0x76, 0xd3, 0xc6, 0x5b,
- 0xe6, 0xff, 0x58, 0xfc, 0xfc, 0x0e, 0xc8, 0x83, 0x9c, 0xd9, 0x93,
- 0x9c, 0x6b, 0x4f, 0x83, 0xd4, 0x68, 0xce, 0xb6, 0x71, 0xfe, 0x5a,
- 0x9d, 0x69, 0xee, 0xde, 0x25, 0xa0, 0xc5, 0x8c, 0x9b, 0x30, 0x5b,
- 0x18, 0x46, 0xbb, 0x86, 0xd3, 0x3c, 0xd6, 0x6d, 0x06, 0x9c, 0x44,
- 0x0b, 0x40, 0x61, 0x1f, 0x3d, 0xb8, 0x08, 0x65, 0x33, 0x05, 0x56,
- 0xe9, 0xe7, 0x58, 0x2f, 0xa3, 0x8f, 0x7f, 0x38, 0x8e, 0x84, 0x8d,
- 0x9c, 0xd1, 0xde, 0xa3, 0xcf, 0x75, 0x12, 0x0e, 0x14, 0x3a, 0xa4,
- 0xbc, 0x88, 0x22, 0xf5, 0xaf, 0xc9, 0x38, 0x49, 0x4e, 0x09, 0x92,
- 0xcf, 0x23, 0xf6, 0x17, 0xd4, 0x0d, 0xa3, 0x8d, 0x3c, 0xa8, 0xc9,
- 0x27, 0xa8, 0x83, 0xb7, 0x7d, 0xad, 0xc3, 0xa9, 0x0f, 0x91, 0xf3,
- 0x56, 0x61, 0x58, 0x10, 0x1b, 0x23, 0x91, 0x8e, 0xf9, 0x3c, 0xe8,
- 0xc1, 0xe4, 0x0a, 0x37, 0x7c, 0x47, 0x3d, 0x6d, 0xc5, 0x61, 0xe6,
- 0x6e, 0x95, 0xdd, 0x1a, 0xa7, 0x1e, 0x80, 0x83, 0x42, 0x92, 0x21,
- 0xf5, 0xd5, 0x00, 0x0c, 0x1e, 0x37, 0x2d, 0xe3, 0x9f, 0xf5, 0xc9,
- 0x97, 0x7d, 0x82, 0x0e, 0x70, 0xcf, 0xbd, 0x83, 0x8b, 0x94, 0x22,
- 0x83, 0x52, 0x05, 0xf5, 0xfe, 0x1b, 0xa3, 0x24, 0xd2, 0x53, 0xec,
- 0x52, 0x08, 0xe6, 0x89, 0x51, 0xde, 0xf8, 0x85, 0xb5, 0x9e, 0x01,
- 0x83, 0x87, 0x5c, 0x61, 0x58, 0x08, 0xf6, 0x0c, 0x7e, 0x49, 0x66,
- 0xb4, 0xfa, 0xeb, 0xf4, 0xd9, 0xf5, 0x9a, 0xa5, 0xdb, 0xfe, 0x87,
- 0x56, 0x8e, 0x40, 0xb0, 0x72, 0xa8, 0xe2, 0x49, 0x3d, 0x8b, 0x65,
- 0x2a, 0x04, 0xf0, 0x6f, 0x1a, 0xce, 0x9c, 0x2b, 0x85, 0x68, 0xcb,
- 0x7f, 0x2b, 0x49, 0xaf, 0x32, 0x77, 0x32, 0xe6, 0x55, 0xd4, 0x1f,
- 0xc4, 0xb4, 0x1f, 0xa9, 0xcb, 0xb8, 0x95, 0xbd, 0x60, 0xf7, 0xd3,
- 0xec, 0xa6, 0x0c, 0x08, 0x78, 0xb2, 0x71, 0x93, 0x47, 0x6d, 0xa2,
- 0x21, 0xb9, 0xa0, 0x2f, 0xe3, 0xc0, 0xea, 0x21, 0x12, 0x5f, 0x40,
- 0x93, 0xbe, 0xf5, 0xcf, 0xd0, 0x93, 0xf6, 0xdd, 0x30, 0xf1, 0xf1,
- 0xd2, 0x03, 0x07, 0x38, 0x0c, 0xd8, 0x6d, 0x0f, 0xae, 0x5b, 0x3a,
- 0x06, 0x49, 0xbb, 0x26, 0x6c, 0x0a, 0xeb, 0xaf, 0xb0, 0x27, 0x89,
- 0xd2, 0x63, 0x73, 0xda, 0xba, 0xdf, 0xcc, 0xf2, 0xbb, 0xe2, 0x89,
- 0x27, 0xfc, 0x98, 0xb3, 0xbf, 0x62, 0x25, 0xee, 0x01, 0xff, 0x9c,
- 0xfa, 0xc9, 0x2b, 0x4c, 0x43, 0xda, 0x45, 0x5f, 0x66, 0x1c, 0x13,
- 0xf2, 0x58, 0x34, 0x3e, 0xc1, 0x8c, 0xf8, 0x53, 0x67, 0x36, 0xf4,
- 0xa7, 0x9d, 0xaa, 0xc5, 0xfd, 0xb8, 0x93, 0xf9, 0xd9, 0x27, 0x61,
- 0xa5, 0x39, 0x6b, 0x67, 0xe8, 0x2a, 0xad, 0x74, 0xfe, 0x46, 0xa0,
- 0xdc, 0xe6, 0x7c, 0x5a, 0xc0, 0xfc, 0x00, 0xcf, 0x3e, 0x00, 0xba,
- 0xc7, 0xf2, 0xdb, 0xb4, 0x8e, 0x42, 0x4a, 0x0b, 0xe2, 0xba, 0xd2,
- 0x1d, 0x5e, 0x27, 0x30, 0x6c, 0xf7, 0x87, 0x7e, 0xb7, 0xdd, 0x23,
- 0xdc, 0xa2, 0x19, 0x57, 0x42, 0xd5, 0xae, 0xe9, 0x02, 0x2a, 0x24,
- 0xf8, 0x4f, 0x3b, 0x69, 0x90, 0x7b, 0xcd, 0xaf, 0x29, 0x53, 0xe0,
- 0x98, 0xe0, 0x25, 0xa1, 0x61, 0x89, 0x22, 0xfb, 0xc0, 0xc8, 0x69,
- 0x80, 0x8c, 0x4d, 0x7f, 0xd2, 0xf5, 0xed, 0xea, 0x14, 0xb7, 0xf6,
- 0x06, 0x00, 0x98, 0x3a, 0xb0, 0xa2, 0xfb, 0xaf, 0xe2, 0x29, 0x0e,
- 0x8a, 0xa0, 0xb0, 0xa7, 0x33, 0xa2, 0xc7, 0xbc, 0x1d, 0xfb, 0xa8,
- 0x81, 0x61, 0x1d, 0x0b, 0x58, 0xa1, 0x52, 0x0d, 0xdc, 0x0e, 0x29,
- 0x44, 0xa9, 0xc5, 0xfd, 0xc5, 0xf8, 0x84, 0x42, 0xb3, 0xb1, 0x2a,
- 0x01, 0x7b, 0x1a, 0x07, 0xde, 0x35, 0x61, 0x8e, 0x45, 0xbd, 0x79,
- 0x7b, 0x7c, 0x3c, 0x74, 0x55, 0xe1, 0x2d, 0x8a, 0x89, 0xad, 0xeb,
- 0x14, 0xc9, 0xf4, 0x88, 0xcb, 0xde, 0x81, 0xf0, 0x1e, 0x0c, 0xbb,
- 0x7e, 0xbe, 0xbf, 0x06, 0xe4, 0xc9, 0x64, 0xd8, 0x5b, 0x43, 0x80,
- 0x1f, 0x8b, 0xe0, 0x38, 0x20, 0xa1, 0xa7, 0xce, 0x46, 0x7a, 0x1a,
- 0xe7, 0x27, 0x91, 0xaf, 0xa1, 0xdf, 0xf4, 0xb2, 0xa1, 0x32, 0x49,
- 0xf1, 0x4b, 0xed, 0x32, 0xed, 0x24, 0x63, 0x0b, 0xa4, 0x36, 0xcc,
- 0xa2, 0xad, 0x3b, 0xcd, 0x08, 0x18, 0x7e, 0x96, 0x41, 0x18, 0x8c,
- 0x75, 0x98, 0xdf, 0xac, 0x59, 0x5e, 0x9a, 0x2a, 0xcb, 0x8f, 0xd9,
- 0x87, 0x63, 0x0f, 0x1d, 0x44, 0x14, 0xac, 0xd7, 0x0d, 0x7e, 0xed,
- 0x1f, 0x1c, 0x2f, 0xf2, 0xf5, 0xc2, 0xa1, 0x1b, 0x31, 0x7d, 0x1b,
- 0x8b, 0x01, 0xea, 0x03, 0x93, 0x3f, 0x8a, 0xb8, 0x07, 0x72, 0x54,
- 0xad, 0xb3, 0xbf, 0x69, 0x4c, 0x6c, 0x59, 0xc1, 0x6d, 0x89, 0x48,
- 0x65, 0x9e, 0xd4, 0x25, 0xfc, 0xeb, 0xf7, 0xe5, 0x1c, 0x6e, 0xfb,
- 0x0b, 0xfd, 0x90, 0xd4, 0x76, 0x6b, 0x27, 0xc3, 0xd9, 0x4b, 0x4b,
- 0x9a, 0x19, 0x53, 0xc0, 0xf0, 0xdf, 0xdf, 0x48, 0x0c, 0xe6, 0xd5,
- 0xb5, 0xc1, 0x37, 0x88, 0x0b, 0x43, 0x2f, 0xcd, 0x46, 0xa4, 0x77,
- 0x64, 0x35, 0x8d, 0x7a, 0xd2, 0x27, 0x24, 0xb7, 0xa2, 0xae, 0xd3,
- 0xa0, 0x91, 0x12, 0xbc, 0x30, 0xf5, 0xfe, 0x30, 0xc2, 0x00, 0x52,
- 0xcd, 0xb8, 0x38, 0xb2, 0xa5, 0x72, 0xca, 0x35, 0xe6, 0x29, 0x25,
- 0xcc, 0x12, 0xf6, 0xbb, 0xea, 0x0d, 0xd4, 0x67, 0xd1, 0x35, 0x53,
- 0x22, 0x32, 0xfe, 0x5f, 0x49, 0x34, 0xdb, 0x4b, 0xfb, 0x13, 0x14,
- 0x0f, 0x77, 0x2a, 0x78, 0x1c, 0xcf, 0x5f, 0x3e, 0x1b, 0x7a, 0x61,
- 0xd0, 0x0c, 0x41, 0x14, 0xf3, 0x76, 0x41, 0x54, 0xd7, 0x60, 0xca,
- 0x4d, 0x00, 0x2d, 0x08, 0xc8, 0x54, 0x43, 0xd3, 0x4f, 0x23, 0x8d,
- 0x3c, 0xa7, 0x0d, 0x19, 0x55, 0x1a, 0x8b, 0x29, 0xcc, 0xfe, 0x98,
- 0x9e, 0x47, 0x3d, 0xfc, 0x22, 0xd4, 0xe3, 0xd4, 0xfa, 0xb8, 0xcf,
- 0x81, 0x4c, 0xc9, 0xa1, 0x9a, 0x06, 0xae, 0x4f, 0x4e, 0x8d, 0x07,
- 0x06, 0x53, 0x3a, 0xe6, 0xc9, 0xa7, 0x3e, 0x81, 0xe0, 0xdf, 0x2b,
- 0xb0, 0xc8, 0xfe, 0x22, 0xcc, 0x93, 0x6f, 0xa2, 0xde, 0xc4, 0x4d,
- 0x0f, 0x00, 0x90, 0xe4, 0x01, 0x87, 0xea, 0x77, 0x5c, 0xc2, 0x90,
- 0xee, 0x65, 0x85, 0x96, 0xff, 0xf2, 0xfe, 0x5d, 0x5d, 0xd1, 0xc3,
- 0xe4, 0x39, 0x54, 0xf9, 0xdb, 0xc6, 0x5b, 0xe8, 0x01, 0x50, 0x45,
- 0x24, 0xcd, 0xc4, 0xdf, 0xd9, 0x12, 0x51, 0x64, 0x33, 0xf1, 0xf2,
- 0x26, 0x13, 0x74, 0x40, 0x90, 0x95, 0x66, 0x39, 0x85, 0xcb, 0xeb,
- 0x26, 0xad, 0x63, 0x05, 0xa2, 0xf2, 0x19, 0xf8, 0x74, 0x12, 0xd2,
- 0xed, 0x67, 0x89, 0xbe, 0x6c, 0xe5, 0x58, 0xbc, 0xea, 0xb2, 0xef,
- 0x68, 0x26, 0x56, 0x65, 0x98, 0xdc, 0x89, 0x20, 0x94, 0x91, 0x86,
- 0x62, 0x99, 0xad, 0x2f, 0x00, 0xde, 0x6e, 0x9e, 0xce, 0x75, 0xe7,
- 0x98, 0x1c, 0x6b, 0xfe, 0x69, 0x78, 0x3b, 0xdb, 0x0b, 0x97, 0x25,
- 0x1c, 0x58, 0xc2, 0xdf, 0x3a, 0x17, 0x3c, 0x97, 0xa9, 0x8d, 0xf6,
- 0xe3, 0xe9, 0xbe, 0xcd, 0x2a, 0x39, 0x70, 0xa8, 0xbc, 0xaa, 0x09,
- 0xc0, 0xdb, 0x23, 0xbc, 0x7d, 0xa4, 0x41, 0xed, 0x1b, 0x5d, 0x45,
- 0x70, 0x31, 0x19, 0x1e, 0xc7, 0x7b, 0xb1, 0xd2, 0xb1, 0xa5, 0x74,
- 0xc0, 0x4f, 0x00, 0x0b, 0x74, 0xc8, 0xf1, 0xbb, 0xdb, 0x0d, 0xe9,
- 0xac, 0x98, 0xd5, 0x87, 0x8c, 0x4e, 0x45, 0xbb, 0xb5, 0xa6, 0x47,
- 0xe6, 0xb8, 0xdc, 0xe6, 0x51, 0x11, 0x8d, 0x4f, 0x24, 0x36, 0x5f,
- 0xb5, 0x7e, 0x53, 0xe2, 0xf3, 0x6e, 0xa0, 0x06, 0xe1, 0xe6, 0x0b,
- 0x8d, 0x76, 0x16, 0xa0, 0x62, 0xe0, 0x86, 0xaf, 0x7a, 0x5c, 0xb0,
- 0x51, 0xd5, 0xc7, 0x27, 0xc7, 0x2c, 0xec, 0x3a, 0xab, 0x2d, 0x6c,
- 0x3c, 0x35, 0x48, 0x77, 0xec, 0x10, 0x8d, 0x7f, 0x4d, 0xf2, 0x20,
- 0xce, 0x02, 0x82, 0xa4, 0xcd, 0x40, 0xc3, 0xb8, 0xda, 0xcb, 0xe8,
- 0xbe, 0x59, 0x2e, 0x1f, 0xc3, 0x06, 0x89, 0x9a, 0xf4, 0x1c, 0x7e,
- 0x65, 0x12, 0xf2, 0x75, 0xd2, 0x4d, 0x08, 0x9e, 0xef, 0x4f, 0xe1,
- 0x46, 0x2f, 0x5e, 0x5e, 0xd5, 0xc4, 0x5a, 0xff, 0x2a, 0x3a, 0xdd,
- 0xb1, 0x11, 0x79, 0x07, 0x1b, 0x0f, 0x5d, 0x11, 0x53, 0x17, 0xe9,
- 0x23, 0x81, 0x63, 0x71, 0x32, 0x90, 0xd9, 0xba, 0x50, 0xd2, 0x09,
- 0xe9, 0x5d, 0xdb, 0x23, 0x2f, 0xaf, 0xe2, 0x84, 0xbd, 0x3e, 0x60,
- 0x99, 0xb3, 0x05, 0xf4, 0x6a, 0xd1, 0x71, 0x0f, 0xe1, 0x87, 0x28,
- 0x4c, 0x2f, 0x64, 0xde, 0x93, 0x10, 0xb5, 0x54, 0xab, 0xed, 0x5b,
- 0xd3, 0x5e, 0xdc, 0x8c, 0x3a, 0x9a, 0xc4, 0xaf, 0x84, 0xe8, 0x42,
- 0x2c, 0x22, 0x0c, 0x7e, 0x52, 0x58, 0x51, 0xd1, 0xb2, 0xef, 0x26,
- 0xf8, 0x36, 0xdf, 0x73, 0xb0, 0x31, 0xe5, 0x97, 0xfa, 0xc9, 0x0d,
- 0x2c, 0xb7, 0xf2, 0x0a, 0x7d, 0x1e, 0xfe, 0x25, 0x90, 0xfe, 0x31,
- 0x2f, 0xf2, 0x6e, 0x97, 0x96, 0x21, 0xe1, 0xb4, 0x11, 0xf8, 0xb0,
- 0x28, 0x39, 0xff, 0xf2, 0xc6, 0x3c, 0x0b, 0x75, 0x4a, 0xa7, 0x55,
- 0xb2, 0x53, 0x32, 0xc4, 0xf2, 0xaf, 0xc4, 0xcf, 0xc0, 0x30, 0xe9,
- 0x79, 0x1f, 0x4a, 0xf7, 0x77, 0x6d, 0xf7, 0x25, 0xbc, 0xa1, 0x2a,
- 0x97, 0x3f, 0x02, 0xec, 0x98, 0xfc, 0x9b, 0x83, 0xc9, 0xad, 0x60,
- 0xe4, 0x57, 0x0f, 0xdf, 0x98, 0x2b, 0x14, 0x7d, 0x22, 0x9a, 0x40,
- 0x76, 0xbb, 0xaf, 0x30, 0xb3, 0x6b, 0x22, 0x48, 0x2c, 0xf9, 0x6f,
- 0x86, 0x74, 0x5f, 0xa4, 0xb9, 0x1c, 0xe3, 0xc8, 0xec, 0x8a, 0xf5,
- 0x5d, 0x58, 0x1f, 0x5f, 0x61, 0xb2, 0x99, 0x55, 0xf1, 0x18, 0x59,
- 0x01, 0xa6, 0xfb, 0x55, 0x11, 0xb1, 0xdb, 0x54, 0xc6, 0xff, 0xf9,
- 0xda, 0x1e, 0xb9, 0xd2, 0xaf, 0xef, 0x58, 0x66, 0x48, 0x63, 0x19,
- 0xe5, 0xaf, 0xc8, 0xed, 0x80, 0x94, 0xbe, 0x2c, 0xdc, 0x44, 0xea,
- 0x04, 0x64, 0x94, 0x56, 0xf2, 0x82, 0xef, 0x53, 0x95, 0x89, 0x86,
- 0xf3, 0x24, 0xbc, 0x66, 0xbc, 0x47, 0x7f, 0xc0, 0x80, 0x2a, 0x1e,
- 0x95, 0x22, 0x40, 0x76, 0x17, 0xf5, 0x3a, 0x74, 0xe2, 0xd3, 0xc6,
- 0xba, 0x46, 0xd8, 0xa4, 0x7c, 0x42, 0x20, 0x2d, 0xce, 0x9a, 0xb3,
- 0x64, 0x9c, 0xf1, 0xac, 0x50, 0xaa, 0x81, 0xfa, 0x29, 0xef, 0xe2,
- 0x41, 0x81, 0xdc, 0x36, 0xc9, 0xc9, 0x99, 0x78, 0x35, 0xff, 0x4e,
- 0xb2, 0x59, 0xa7, 0xb1, 0x9d, 0xc0, 0x91, 0xd0, 0x88, 0x34, 0x09,
- 0x16, 0xf1, 0xe3, 0x8c, 0x42, 0x63, 0x78, 0x05, 0x0d, 0xbe, 0x72,
- 0xf1, 0x62, 0x73, 0x85, 0xab, 0xa8, 0xa9, 0xa1, 0x44, 0x7f, 0x8c,
- 0xc8, 0x8b, 0xd9, 0x8a, 0xf4, 0xda, 0x85, 0x26, 0x19, 0x2e, 0xdf,
- 0xdf, 0xc2, 0x77, 0x8f, 0x1d, 0x8e, 0x62, 0x2d, 0xe7, 0xc4, 0xb1,
- 0xbe, 0x16, 0xac, 0x61, 0x78, 0xa1, 0x35, 0x8a, 0xc7, 0xea, 0x84,
- 0x8b, 0x10, 0xe4, 0xf4, 0x79, 0x08, 0x04, 0x0b, 0x90, 0x20, 0x27,
- 0xaf, 0xb5, 0xda, 0x0d, 0x04, 0xdc, 0xb7, 0x1b, 0x07, 0x96, 0xba,
- 0x17, 0x99, 0xd3, 0x5f, 0x8a, 0xb2, 0x40, 0x80, 0x34, 0x39, 0x52,
- 0xf3, 0xf1, 0x8b, 0x17, 0xf2, 0x41, 0xf3, 0x42, 0xf5, 0x5f, 0x61,
- 0xcc, 0x54, 0xea, 0xb1, 0x8a, 0x0e, 0xcb, 0x0b, 0x8a, 0x9e, 0xdf,
- 0x38, 0x96, 0x27, 0xff, 0x4b, 0xc3, 0xd6, 0x66, 0x38, 0x62, 0x6a,
- 0xbc, 0x69, 0xa0, 0x90, 0x87, 0x0f, 0xa1, 0xca, 0x88, 0x0d, 0x9d,
- 0x11, 0x42, 0x3d, 0x33, 0x9c, 0xe4, 0xb4, 0x64, 0x80, 0x49, 0x56,
- 0x9d, 0x03, 0x4b, 0x6d, 0xae, 0x75, 0x56, 0xe3, 0x38, 0x05, 0x88,
- 0x5b, 0xca, 0x6e, 0xa1, 0x99, 0x33, 0x86, 0x9d, 0xaf, 0x19, 0xe4,
- 0x3d, 0xea, 0x5f, 0xb0, 0x4e, 0x1b, 0x46, 0xf9, 0x58, 0x8a, 0xed,
- 0xa1, 0x74, 0xca, 0x00, 0x1b, 0x31, 0x21, 0x36, 0x7b, 0x30, 0x36,
- 0x64, 0x5f, 0x16, 0x0a, 0x38, 0xe2, 0x50, 0xd5, 0xf6, 0x06, 0x7f,
- 0x47, 0x35, 0x8c, 0x07, 0x4a, 0x25, 0x3f, 0xb2, 0xae, 0x3d, 0x37,
- 0xee, 0xbc, 0xbe, 0xfc, 0x62, 0x7f, 0x39, 0x6e, 0x04, 0xc5, 0x39,
- 0x7a, 0x98, 0x50, 0x05, 0xd9, 0xe6, 0xcd, 0xe4, 0xf4, 0x70, 0x9e,
- 0xc1, 0xd0, 0xec, 0xa9, 0x73, 0xf8, 0x30, 0xc8, 0xd8, 0x58, 0x57,
- 0x94, 0x94, 0x72, 0xa4, 0x1c, 0xdd, 0x66, 0xa1, 0xf4, 0xb8, 0x5c,
- 0x04, 0xd8, 0xbb, 0xb1, 0x73, 0x84, 0xc7, 0x95, 0x2a, 0xc7, 0xeb,
- 0xbf, 0x49, 0xb0, 0xbc, 0xc3, 0x4b, 0xf0, 0xdc, 0x26, 0xb6, 0x72,
- 0x2b, 0x2a, 0x64, 0x8f, 0x9f, 0xc0, 0x97, 0x17, 0x34, 0xb3, 0xd6,
- 0xdc, 0xf6, 0x0d, 0x35, 0x17, 0x3e, 0xb8, 0x3f, 0xd2, 0x23, 0xec,
- 0x33, 0x6a, 0x9c, 0x77, 0x3a, 0x62, 0x2c, 0x26, 0x54, 0xc7, 0x82,
- 0x04, 0x1f, 0x12, 0x1b, 0xe8, 0x66, 0xda, 0x15, 0x5c, 0x0c, 0x57,
- 0xd6, 0x04, 0x49, 0xb7, 0xfb, 0x66, 0x85, 0xfb, 0x34, 0xb7, 0xde,
- 0x4f, 0x59, 0x5e, 0x66, 0x05, 0xff, 0x7e, 0x80, 0x93, 0xb2, 0x87,
- 0x5b, 0xe6, 0x94, 0xe8, 0x00, 0x3f, 0x50, 0x7e, 0x1a, 0xb8, 0x4c,
- 0x55, 0xd7, 0x44, 0x0d, 0xc3, 0xa8, 0xc5, 0xe0, 0xb4, 0x0c, 0x8e,
- 0xa4, 0xe7, 0x41, 0x26, 0xac, 0x21, 0x9e, 0x04, 0xc0, 0x0b, 0xba,
- 0xd7, 0x7c, 0x89, 0xf7, 0x10, 0xc7, 0x72, 0x82, 0xc5, 0xef, 0xc8,
- 0x3e, 0xf7, 0x7f, 0xff, 0x54, 0xfe, 0x3e, 0xea, 0xc9, 0xf8, 0xd1,
- 0x95, 0xd0, 0x10, 0x5b, 0xd0, 0x52, 0xd2, 0x1e, 0x90, 0xc0, 0xb1,
- 0x12, 0xa1, 0xdf, 0x16, 0xb9, 0xc8, 0xcf, 0xf1, 0xc8, 0xf1, 0xbb,
- 0x03, 0x56, 0x8a, 0xf4, 0x4e, 0x2e, 0xe4, 0xd4, 0x0a, 0x34, 0x18,
- 0x63, 0xf5, 0x18, 0xee, 0x6b, 0x93, 0x9c, 0xbc, 0xca, 0xb1, 0xb4,
- 0x9d, 0xa2, 0x89, 0x5a, 0xac, 0x1a, 0x47, 0xb8, 0x8c, 0xb2, 0x3e,
- 0xbf, 0xed, 0xa4, 0xed, 0xf1, 0x65, 0x99, 0x7a, 0x23, 0x18, 0xde,
- 0x8b, 0x1b, 0x9e, 0xdb, 0xf5, 0x37, 0x6c, 0x65, 0xfb, 0xbb, 0x09,
- 0x49, 0x6c, 0xf8, 0x9a, 0xbd, 0xf6, 0x42, 0xae, 0xd2, 0x55, 0xda,
- 0x42, 0xb5, 0xd6, 0x5d, 0xfc, 0x09, 0xc4, 0x2d, 0x87, 0xf2, 0x50,
- 0xaf, 0x9c, 0xfb, 0xc1, 0x9a, 0x8e, 0x8d, 0x40, 0x8d, 0xb4, 0xb3,
- 0x42, 0xb1, 0x48, 0xaa, 0x93, 0xa8, 0x44, 0x82, 0x75, 0xf7, 0x51,
- 0xe2, 0x22, 0x42, 0xea, 0x1f, 0xd4, 0x7a, 0xbc, 0xd6, 0x8b, 0x1a,
- 0x0e, 0x73, 0x36, 0x0c, 0xbf, 0x06, 0x2e, 0xd1, 0x9e, 0x19, 0x5a,
- 0x11, 0x8e, 0x57, 0xcc, 0x97, 0xd2, 0x0b, 0x3c, 0x70, 0xca, 0x1a,
- 0x22, 0xc3, 0x64, 0x19, 0xd2, 0x86, 0xf3, 0x64, 0x0b, 0xcb, 0xc4,
- 0xa5, 0xfb, 0xb4, 0xca, 0x5e, 0xbf, 0x4e, 0x7d, 0x52, 0x2c, 0xdd,
- 0x9b, 0x82, 0xb2, 0xaf, 0x31, 0x98, 0xc8, 0x89, 0xd6, 0xbb, 0x32,
- 0x56, 0xed, 0x35, 0x1f, 0x7b, 0x64, 0x4b, 0x80, 0x4e, 0xc4, 0x22,
- 0xeb, 0xa8, 0xd6, 0x8d, 0x18, 0x7e, 0x7f, 0x07, 0x31, 0xd8, 0xae,
- 0x65, 0xf9, 0xea, 0x55, 0xf5, 0x86, 0x43, 0xcc, 0x9e, 0x6c, 0xcc,
- 0x48, 0x47, 0xcf, 0x20, 0x19, 0xb1, 0xd2, 0x4b, 0x6b, 0x5c, 0x93,
- 0xc7, 0x3b, 0x2a, 0x65, 0x18, 0x8d, 0x79, 0x40, 0x5e, 0xdf, 0xb3,
- 0xb8, 0x19, 0x8a, 0x64, 0x52, 0x5d, 0x6d, 0xb5, 0xd8, 0x3e, 0x17,
- 0xa2, 0xa4, 0x63, 0x6e, 0x9a, 0x53, 0x71, 0x3a, 0x88, 0xbb, 0xac,
- 0xce, 0x69, 0x77, 0x5d, 0xa6, 0xcb, 0x61, 0x8d, 0x97, 0x1b, 0x7a,
- 0x63, 0xe5, 0x90, 0x01, 0xf0, 0x52, 0xd5, 0x55, 0x8e, 0x35, 0xd4,
- 0x92, 0x6b, 0x60, 0x61, 0x93, 0x7a, 0x33, 0x28, 0xee, 0xc6, 0xcd,
- 0xf0, 0xd1, 0xa2, 0x0b, 0xd0, 0xfd, 0x1a, 0x48, 0x81, 0xa3, 0x4f,
- 0xae, 0x1f, 0x6f, 0x59, 0x55, 0xd8, 0x5f, 0xc3, 0x43, 0xc5, 0x98,
- 0x97, 0x60, 0x99, 0x1d, 0x2e, 0x72, 0xb9, 0xdb, 0x57, 0x45, 0x16,
- 0xfc, 0x35, 0x15, 0xb3, 0x11, 0x5c, 0xa1, 0x4f, 0x4a, 0x36, 0x8b,
- 0x4a, 0xcd, 0xcd, 0x61, 0x4d, 0x55, 0x47, 0x9b, 0x3e, 0x94, 0xa9,
- 0x85, 0xf9, 0x71, 0x6f, 0x30, 0x98, 0xe2, 0x4a, 0x99, 0xfe, 0x10,
- 0xcc, 0xe9, 0xa2, 0x1e, 0x96, 0xa5, 0x1d, 0x12, 0x67, 0x61, 0xf9,
- 0xb0, 0x48, 0x02, 0xb0, 0x9b, 0xd8, 0xff, 0x40, 0xe4, 0x83, 0xfe,
- 0x1e, 0xca, 0xb5, 0xfa, 0x13, 0x7b, 0x59, 0x61, 0x4b, 0x07, 0x3f,
- 0xdc, 0x83, 0x64, 0x91, 0x61, 0xb4, 0x3d, 0xc5, 0xd3, 0x4b, 0x40,
- 0x01, 0x7c, 0x5f, 0x12, 0xeb, 0x86, 0xf1, 0xee, 0x7c, 0x79, 0xec,
- 0x00, 0xef, 0xbd, 0xfb, 0x10, 0x57, 0x79, 0x5f, 0xf3, 0xb7, 0xaf,
- 0xe4, 0xc2, 0x62, 0x07, 0x41, 0xb6, 0xab, 0xaa, 0x0a, 0xd6, 0xab,
- 0x3c, 0xb2, 0x16, 0xa5, 0xc2, 0x7d, 0x66, 0xda, 0x6b, 0xd8, 0xbd,
- 0xf2, 0x33, 0xc7, 0x06, 0x49, 0x34, 0xfb, 0x53, 0x0b, 0xb5, 0x6c,
- 0xd6, 0x4e, 0x66, 0x52, 0xac, 0x64, 0xc5, 0x0a, 0x9c, 0xb3, 0x56,
- 0x38, 0xc7, 0x02, 0xa3, 0xa9, 0x83, 0x42, 0xdf, 0x8e, 0xb5, 0xf8,
- 0x77, 0x03, 0x34, 0x56, 0xcd, 0xfe, 0x58, 0x2e, 0x3c, 0xb8, 0x77,
- 0xfe, 0x38, 0xc5, 0x8a, 0x7f, 0xd4, 0xd0, 0x8d, 0x2d, 0x4b, 0x61,
- 0xfc, 0xdb, 0x45, 0x90, 0xde, 0x26, 0x0d, 0xe5, 0xdc, 0x01, 0xb8,
- 0xde, 0xad, 0x99, 0xdf, 0x31, 0xf1, 0xfc, 0x82, 0xe8, 0xe1, 0x5f,
- 0x36, 0x6c, 0xe9, 0x8a, 0x08, 0x25, 0x30, 0xcf, 0x02, 0xf5, 0x64,
- 0x87, 0xa2, 0x06, 0x4e, 0x16, 0x93, 0x44, 0xf1, 0x6d, 0x66, 0xbf,
- 0xfd, 0x32, 0xe7, 0x04, 0xc2, 0xca, 0xc7, 0x07, 0x27, 0xf2, 0x4c,
- 0xb5, 0x72, 0xf3, 0xda, 0xe8, 0x22, 0x28, 0x64, 0x6a, 0xa9, 0xca,
- 0x42, 0x8d, 0x8c, 0xdc, 0x20, 0xc1, 0xd5, 0xf5, 0x51, 0x48, 0xfc,
- 0xf1, 0x3a, 0xa2, 0x1c, 0x0b, 0xff, 0x92, 0x40, 0xeb, 0xa6, 0xdb,
- 0xec, 0x77, 0xb4, 0xb5, 0xcd, 0x78, 0x0c, 0x3e, 0x1b, 0xfc, 0xde,
- 0xad, 0xad, 0xbf, 0x72, 0x9a, 0x01, 0x41, 0x9d, 0x57, 0xcb, 0x34,
- 0x5f, 0xb5, 0xf0, 0x45, 0x22, 0x5c, 0x94, 0xbb, 0xd6, 0x36, 0x15,
- 0xc7, 0xec, 0x0c, 0x52, 0xec, 0x31, 0xc0, 0xe5, 0x75, 0x30, 0xf1,
- 0x8d, 0xf1, 0x6a, 0xca, 0x88, 0x39, 0x16, 0x4e, 0xa2, 0xce, 0x1e,
- 0x30, 0xa6, 0xe7, 0x74, 0x69, 0x6c, 0x25, 0x9f, 0xe8, 0xf6, 0xe2,
- 0x1a, 0x43, 0x0d, 0x1f, 0x38, 0x6a, 0x9a, 0x50, 0x1e, 0xe2, 0xca,
- 0xe8, 0xc8, 0x20, 0x36, 0x22, 0xc7, 0x29, 0x0b, 0x06, 0x8a, 0x60,
- 0xf4, 0x50, 0xcd, 0x73, 0xf7, 0x0e, 0x47, 0x66, 0x4d, 0xba, 0x49,
- 0x74, 0x83, 0x2c, 0x8b, 0xdc, 0x0f, 0x5f, 0xb0, 0xed, 0x07, 0xc7,
- 0x8d, 0x4c, 0x59, 0x87, 0x1c, 0x2b, 0x71, 0xea, 0xba, 0xc5, 0xfd,
- 0x91, 0xec, 0xf3, 0xdc, 0x3a, 0x90, 0x62, 0xb8, 0x0f, 0x9c, 0x42,
- 0xf9, 0x4b, 0xb8, 0x3f, 0x02, 0x08, 0x33, 0x17, 0x19, 0x10, 0x86,
- 0x5b, 0xc4, 0x9c, 0xdf, 0x6f, 0x54, 0xb6, 0x71, 0x3e, 0x35, 0x01,
- 0x31, 0x3f, 0x67, 0xe4, 0x64, 0xd8, 0x05, 0x7c, 0x5e, 0x0f, 0xec,
- 0xe1, 0x98, 0x08, 0xb1, 0xaa, 0x77, 0xa9, 0x09, 0xdc, 0x82, 0x6c,
- 0x01, 0xbb, 0x35, 0xbe, 0x48, 0x9a, 0x97, 0x9d, 0xce, 0x42, 0x0e,
- 0x30, 0x8b, 0x59, 0x1a, 0xcc, 0x8a, 0x7f, 0xa1, 0xf9, 0xcb, 0x06,
- 0x3c, 0xb1, 0x1e, 0x21, 0xe4, 0x66, 0x2c, 0x27, 0x61, 0xe3, 0x1a,
- 0xe0, 0x3f, 0x7a, 0x2a, 0x00, 0x82, 0x95, 0x95, 0x35, 0xd1, 0x1e,
- 0x93, 0x9f, 0x0f, 0xca, 0xa5, 0x6b, 0x9c, 0x29, 0xbd, 0x82, 0x51,
- 0x51, 0xdb, 0xc6, 0x92, 0x20, 0x8c, 0xfb, 0x1d, 0x48, 0x9f, 0x1c,
- 0x2a, 0xe3, 0x43, 0x04, 0xb8, 0xa5, 0xa0, 0x8a, 0xde, 0x39, 0x60,
- 0x9d, 0xe2, 0x17, 0xc9, 0x3e, 0x54, 0xb9, 0x47, 0x69, 0xbf, 0x0e,
- 0xf1, 0x9e, 0x00, 0xe9, 0xca, 0x5f, 0x15, 0x65, 0xc3, 0xce, 0xa8,
- 0x9b, 0xfa, 0x48, 0xc3, 0xf8, 0xb4, 0x69, 0xc9, 0xff, 0x3d, 0x85,
- 0xd6, 0xad, 0x5b, 0x39, 0xfa, 0x8e, 0x17, 0xbf, 0xe0, 0x49, 0xe4,
- 0xb8, 0xaa, 0xb3, 0x9b, 0xaf, 0x5a, 0x19, 0x64, 0xcf, 0x6e, 0x8c,
- 0x4d, 0xc8, 0xf9, 0xfd, 0x7a, 0xc9, 0x18, 0xfb, 0xde, 0x32, 0x30,
- 0xb0, 0x48, 0x45, 0x5f, 0x8d, 0x2f, 0x61, 0xb3, 0x98, 0x9b, 0xe3,
- 0xd2, 0x40, 0xd6, 0x0c, 0x89, 0xc6, 0xe2, 0xc3, 0xc0, 0x53, 0x04,
- 0xf9, 0xd6, 0x24, 0xf4, 0x61, 0x62, 0x5e, 0xb4, 0x49, 0xfd, 0xca,
- 0x79, 0xb7, 0x48, 0x95, 0xc8, 0x8b, 0x75, 0xed, 0x06, 0x43, 0xec,
- 0x45, 0xba, 0x46, 0x64, 0xfa, 0x70, 0x11, 0xd8, 0x4f, 0x19, 0x2d,
- 0xff, 0xf5, 0x94, 0x9a, 0x8d, 0x91, 0xbd, 0x5c, 0x8c, 0x19, 0x5a,
- 0x8a, 0xec, 0xea, 0xf5, 0x3e, 0x59, 0xec, 0x7a, 0x1a, 0xf4, 0x2e,
- 0xe9, 0x4c, 0x3c, 0x52, 0x6d, 0x57, 0xbe, 0x33, 0x8b, 0xdd, 0xf0,
- 0x3a, 0xac, 0x23, 0x4f, 0xf4, 0xd6, 0xf6, 0xf3, 0x84, 0x3b, 0x6e,
- 0x50, 0x0e, 0x0c, 0xa6, 0xa7, 0x48, 0x74, 0x85, 0xa2, 0x75, 0xd2,
- 0x03, 0x38, 0x92, 0x54, 0x7e, 0x99, 0x7c, 0xfd, 0xeb, 0xac, 0x31,
- 0xe2, 0x6d, 0x58, 0x9a, 0x9a, 0x2b, 0xde, 0x4d, 0x48, 0x46, 0x11,
- 0x32, 0xec, 0x6d, 0x54, 0xca, 0xbb, 0x0d, 0x91, 0x33, 0x2c, 0xc0,
- 0x80, 0x2f, 0x2e, 0xc8, 0x62, 0xfb, 0x85, 0xa1, 0x43, 0x57, 0xf4,
- 0xa5, 0x12, 0x33, 0x08, 0x46, 0xc7, 0xa5, 0xca, 0x80, 0x88, 0xa9,
- 0x18, 0x26, 0x15, 0x95, 0x69, 0x8d, 0x86, 0x89, 0x11, 0x93, 0xeb,
- 0x82, 0x31, 0x94, 0x81, 0x8e, 0x6d, 0xe2, 0x49, 0xa0, 0x26, 0x54,
- 0xb0, 0x3d, 0xbb, 0xde, 0x62, 0xbb, 0x57, 0xfe, 0x29, 0x95, 0x3e,
- 0xe6, 0xcf, 0xb6, 0xc2, 0xf8, 0x82, 0x57, 0xc7, 0xb0, 0xf8, 0xfe,
- 0x0a, 0x6a, 0x33, 0x73, 0x6c, 0xa5, 0xa0, 0x54, 0x64, 0xdf, 0x69,
- 0x20, 0x49, 0x61, 0x67, 0x54, 0x3d, 0x9f, 0x4c, 0x41, 0x2c, 0xb1,
- 0x2d, 0xcf, 0x72, 0x73, 0xbd, 0x84, 0x62, 0xcf, 0x8f, 0xa6, 0xc0,
- 0x70, 0x28, 0x0d, 0xfe, 0x56, 0xc7, 0x50, 0xb7, 0xec, 0x4d, 0x60,
- 0xb0, 0xe6, 0xe8, 0x3c, 0x28, 0x10, 0xa3, 0xa3, 0x0c, 0x7d, 0x42,
- 0xbe, 0x4e, 0x5e, 0xd7, 0x51, 0x96, 0x6a, 0xc7, 0x2f, 0xfc, 0x33,
- 0x9b, 0xaa, 0xe0, 0xfa, 0xcd, 0x2b, 0x2a, 0x18, 0x50, 0xe4, 0xa9,
- 0xf5, 0xbb, 0xf5, 0x3e, 0x9f, 0x3e, 0x8d, 0x25, 0x3e, 0x3c, 0x0a,
- 0x49, 0x9f, 0x3e, 0xf6, 0x54, 0x86, 0x78, 0xf3, 0xed, 0x7f, 0x27,
- 0x52, 0xc0, 0xb8, 0x39, 0xff, 0x9e, 0x5e, 0x94, 0x76, 0x14, 0x46,
- 0x45, 0x15, 0xa1, 0x45, 0xa7, 0xbc, 0xef, 0xf0, 0x78, 0xc3, 0x42,
- 0xe9, 0xdb, 0x48, 0x25, 0x5a, 0x3b, 0xdd, 0x4c, 0x3d, 0x39, 0xef,
- 0x8e, 0xaf, 0xb1, 0x27, 0xb6, 0xbd, 0xb6, 0xc1, 0xc4, 0x99, 0x88,
- 0x08, 0x3a, 0x52, 0xd1, 0xf7, 0x53, 0x8e, 0xac, 0xd4, 0xa6, 0x5a,
- 0x2d, 0xcd, 0xa4, 0x1d, 0x8a, 0xb6, 0xf3, 0x94, 0x27, 0x4c, 0xbc,
- 0x59, 0xf7, 0x5a, 0xe2, 0x56, 0x55, 0x8d, 0xf3, 0xcd, 0xcd, 0x0a,
- 0x03, 0xa2, 0x74, 0x93, 0x23, 0xab, 0x04, 0xce, 0x1c, 0x91, 0xa6,
- 0x94, 0x57, 0x2d, 0x19, 0x25, 0x02, 0x5c, 0x34, 0x12, 0xca, 0xad,
- 0x4b, 0x1d, 0x79, 0x6b, 0xb2, 0x1e, 0x7c, 0x14, 0x9b, 0x75, 0x97,
- 0x44, 0xb6, 0x27, 0xc9, 0x80, 0x49, 0x06, 0xdc, 0x33, 0x8f, 0x6a,
- 0xe2, 0x6a, 0x82, 0x99, 0xa8, 0x8e, 0x34, 0xdf, 0x64, 0x4d, 0xbb,
- 0x55, 0x82, 0x0b, 0x33, 0xbc, 0x50, 0xba, 0xaf, 0x86, 0x55, 0x7d,
- 0x14, 0x8d, 0xd4, 0x12, 0xa1, 0xee, 0xeb, 0x14, 0xd7, 0x29, 0xab,
- 0x07, 0x7d, 0x7c, 0x9e, 0x97, 0x19, 0x50, 0x49, 0x0d, 0x01, 0xdf,
- 0xb0, 0x09, 0xfb, 0x8d, 0x31, 0xf7, 0x26, 0x3b, 0x76, 0x42, 0xa7,
- 0x6c, 0xeb, 0x76, 0x9c, 0x4e, 0xe4, 0x4b, 0xe4, 0xab, 0x58, 0xe9,
- 0xb5, 0xa0, 0x35, 0x3a, 0xf1, 0xfa, 0xcd, 0xef, 0xfe, 0xb1, 0x44,
- 0xe4, 0x51, 0xe7, 0xb9, 0xeb, 0x25, 0xa7, 0x38, 0x86, 0x1b, 0x7b,
- 0x30, 0x8f, 0xa8, 0xf1, 0x12, 0x26, 0x76, 0xce, 0x7c, 0x74, 0xa9,
- 0xcc, 0xcb, 0x17, 0x5b, 0x08, 0x9e, 0x48, 0x81, 0x67, 0xd3, 0x65,
- 0xc1, 0xc9, 0x08, 0x43, 0xd6, 0x5d, 0x44, 0x04, 0xd0, 0x32, 0x34,
- 0x45, 0xa0, 0xf0, 0x8c, 0xa5, 0x6a, 0x13, 0x3d, 0xc1, 0x20, 0x43,
- 0x29, 0x56, 0xd2, 0xd8, 0x78, 0x07, 0xe2, 0x5c, 0x60, 0xd6, 0xa1,
- 0x03, 0x75, 0x67, 0x22, 0x67, 0xa7, 0xb5, 0x85, 0xc2, 0x14, 0x04,
- 0x98, 0x29, 0x64, 0x02, 0x00, 0xff, 0x67, 0x6d, 0x90, 0xa4, 0xc6,
- 0x40, 0x56, 0xd7, 0xaa, 0x2a, 0x77, 0x2c, 0x5b, 0xc2, 0x88, 0x84,
- 0x0d, 0x96, 0x5b, 0xf2, 0xea, 0xc8, 0x76, 0x04, 0x8f, 0xbb, 0x9b,
- 0x8b, 0x86, 0x7b, 0xef, 0xea, 0x8d, 0x10, 0xd3, 0x6a, 0xb0, 0x39,
- 0x27, 0x43, 0x44, 0x8c, 0x36, 0x9b, 0xe4, 0x53, 0x4e, 0x3f, 0x02,
- 0x6d, 0x76, 0xbf, 0x38, 0x7d, 0x01, 0x7a, 0xc6, 0x9a, 0x37, 0x45,
- 0x24, 0x79, 0xcb, 0x03, 0x01, 0x13, 0x7a, 0xc0, 0xb8, 0xf9, 0x52,
- 0x47, 0xbd, 0x40, 0x59, 0x01, 0x34, 0x86, 0x08, 0xc6, 0xbb, 0xe2,
- 0xf8, 0x60, 0x04, 0xc9, 0xd4, 0xa7, 0x37, 0x98, 0x7a, 0x83, 0xd0,
- 0xe8, 0x02, 0x64, 0xaf, 0x01, 0x94, 0x4b, 0xa2, 0xd5, 0x5b, 0x9e,
- 0x5f, 0x03, 0xc1, 0xb6, 0xa5, 0xf7, 0x82, 0x17, 0x10, 0x39, 0x49,
- 0xcd, 0x12, 0x71, 0x5e, 0x4f, 0xbc, 0x4c, 0x69, 0xda, 0xd6, 0xf0,
- 0xf5, 0x07, 0x0c, 0x44, 0x37, 0x5e, 0x95, 0xf8, 0x9f, 0x90, 0x72,
- 0x4a, 0x50, 0x0a, 0x6e, 0x46, 0x3a, 0x15, 0xf9, 0xa8, 0x11, 0x85,
- 0x3d, 0x86, 0xa4, 0x99, 0x82, 0x07, 0x90, 0xb5, 0x62, 0xa8, 0xcd,
- 0xcd, 0x7c, 0x93, 0xfe, 0xff, 0x17, 0x43, 0xaa, 0x45, 0x14, 0xb7,
- 0xae, 0x2a, 0x34, 0x18, 0x34, 0x29, 0xc1, 0x08, 0x82, 0x84, 0xf7,
- 0x84, 0x7a, 0x9d, 0xd7, 0x65, 0x6e, 0x37, 0x70, 0xd4, 0x3b, 0x26,
- 0xa9, 0x92, 0xaf, 0xab, 0xbf, 0x56, 0x01, 0xf0, 0x4a, 0xd0, 0xe3,
- 0xdc, 0x99, 0x3d, 0xc7, 0xb6, 0x09, 0x51, 0xbf, 0x09, 0x9c, 0x21,
- 0xbc, 0x71, 0x9c, 0x0d, 0xce, 0x89, 0x7b, 0xbf, 0x86, 0x59, 0x84,
- 0xef, 0x5c, 0x42, 0xeb, 0x25, 0xc9, 0x80, 0x58, 0xb6, 0x8c, 0x38,
- 0x95, 0xde, 0x08, 0x15, 0x45, 0x3d, 0x29, 0xd7, 0x31, 0x5b, 0x04,
- 0x92, 0x93, 0x5d, 0x2c, 0xf4, 0x08, 0x98, 0x76, 0x84, 0x74, 0x3b,
- 0xd6, 0x2e, 0xd0, 0x72, 0x71, 0x70, 0x8c, 0xc3, 0xd6, 0x6a, 0x73,
- 0x82, 0xdf, 0x2a, 0x15, 0x0f, 0x47, 0xa2, 0xe7, 0x13, 0x80, 0xbe,
- 0xba, 0x54, 0xc4, 0x14, 0xde, 0x8a, 0xd1, 0x95, 0x9c, 0x26, 0x6c,
- 0xb6, 0x22, 0xf9, 0xf7, 0xdd, 0x74, 0x85, 0x06, 0xa5, 0x82, 0x91,
- 0x42, 0xa6, 0x13, 0xf3, 0xf4, 0xf4, 0xd2, 0xfa, 0xb4, 0x57, 0xda,
- 0xd3, 0xcf, 0x27, 0x03, 0xb3, 0xbc, 0xac, 0x0f, 0x50, 0x86, 0xc7,
- 0xc4, 0x85, 0x15, 0x2d, 0x77, 0x83, 0x8d, 0x9f, 0xec, 0x0c, 0x3d,
- 0x9e, 0x1e, 0x48, 0xc2, 0x78, 0xbf, 0x42, 0x4a, 0xc3, 0x81, 0x86,
- 0x4e, 0xa3, 0xaa, 0x7d, 0x02, 0x5e, 0xf5, 0x1f, 0x50, 0xb1, 0x17,
- 0x1c, 0xbc, 0xb5, 0xe2, 0x15, 0xb1, 0x01, 0x71, 0xab, 0xf5, 0xf9,
- 0x48, 0x7e, 0x72, 0x5b, 0xa4, 0xf2, 0x34, 0x56, 0xba, 0x3d, 0x10,
- 0x27, 0x83, 0xca, 0x66, 0x12, 0x27, 0xeb, 0x12, 0x0e, 0x32, 0x0a,
- 0x2f, 0x56, 0x85, 0x0d, 0x08, 0xd7, 0xef, 0xde, 0x56, 0x52, 0xe3,
- 0x17, 0x72, 0x56, 0xef, 0xaa, 0x9b, 0x91, 0x25, 0x33, 0x93, 0xf3,
- 0x1f, 0x86, 0x66, 0xa2, 0x74, 0xb7, 0x83, 0x74, 0x01, 0x61, 0x33,
- 0xfa, 0x6f, 0x8a, 0x1e, 0xa0, 0x01, 0x28, 0xb2, 0xc5, 0xd7, 0xa5,
- 0xf5, 0x9e, 0xf9, 0xfb, 0xbb, 0x8a, 0x55, 0x0a, 0x60, 0x45, 0xf6,
- 0xbb, 0xc1, 0x8a, 0xa3, 0xd7, 0x2f, 0xe3, 0x44, 0x89, 0x0b, 0x51,
- 0x42, 0xa6, 0x5d, 0x70, 0x1a, 0x73, 0x87, 0x8e, 0x10, 0x7d, 0x1e,
- 0x9f, 0x1f, 0x25, 0x86, 0x92, 0x71, 0x2b, 0xa0, 0x92, 0xcb, 0xca,
- 0x51, 0xbd, 0x8d, 0x11, 0x35, 0x8d, 0xb2, 0xd4, 0xf7, 0x2b, 0x51,
- 0xb5, 0x2f, 0x75, 0xcf, 0x8f, 0x81, 0xc1, 0x42, 0xe7, 0x07, 0x27,
- 0x13, 0x50, 0x97, 0x65, 0x5c, 0xda, 0xe4, 0x53, 0xe2, 0x47, 0xe2,
- 0x04, 0x3d, 0xf1, 0xe5, 0x7a, 0xbd, 0xd9, 0x5b, 0xf8, 0xb9, 0x2a,
- 0xc9, 0xe2, 0x70, 0x1b, 0xf1, 0x28, 0x1b, 0x0d, 0x67, 0xd4, 0xd3,
- 0xcd, 0xcb, 0x4c, 0xc2, 0x27, 0x75, 0x3b, 0x47, 0xd7, 0xe2, 0xb7,
- 0xb3, 0x0d, 0x34, 0xe2, 0xa9, 0xcd, 0x50, 0xc1, 0x69, 0x4b, 0xee,
- 0x7b, 0x39, 0x07, 0xf3, 0xa8, 0x0d, 0x0c, 0x48, 0xde, 0xf2, 0xca,
- 0x6a, 0x5d, 0x39, 0x35, 0xc2, 0x01, 0xc3, 0xd7, 0xef, 0xa3, 0xf6,
- 0x90, 0x69, 0x5b, 0x86, 0xfd, 0x05, 0xd7, 0xca, 0xa8, 0xb3, 0x6a,
- 0x21, 0xb1, 0x1a, 0xe0, 0x5f, 0xd6, 0x4a, 0xf0, 0xa7, 0x9f, 0x2e,
- 0x8b, 0xf2, 0x8e, 0x9e, 0xbf, 0x0c, 0x6e, 0x41, 0xb3, 0x3b, 0x67,
- 0xaa, 0x67, 0xff, 0x31, 0x98, 0x96, 0xdf, 0x7f, 0xca, 0xe8, 0xf8,
- 0x71, 0x2e, 0x1b, 0xec, 0x81, 0x4e, 0x09, 0x8a, 0x52, 0xc2, 0xa2,
- 0x6c, 0x9b, 0x15, 0x29, 0x01, 0xa9, 0x65, 0xa8, 0x10, 0x8c, 0x54,
- 0x8d, 0x81, 0x96, 0x2b, 0x34, 0x04, 0x00, 0x61, 0x72, 0x9a, 0xc4,
- 0x24, 0x30, 0xac, 0x68, 0x03, 0x0e, 0xc7, 0xd4, 0xea, 0x89, 0xc6,
- 0x8e, 0x35, 0x09, 0xff, 0x9c, 0x71, 0xde, 0x9d, 0x46, 0x66, 0x1b,
- 0xd7, 0xc0, 0xe4, 0x42, 0x5a, 0x68, 0x86, 0xde, 0xe4, 0xe6, 0xc6,
- 0xae, 0x0b, 0x79, 0x3c, 0x70, 0x9d, 0x65, 0x98, 0x9f, 0xd2, 0x72,
- 0x3e, 0x90, 0xe1, 0x76, 0xa3, 0x44, 0xab, 0x82, 0xc8, 0x68, 0xf0,
- 0x72, 0x9a, 0x5a, 0x1d, 0x1e, 0xb4, 0x1a, 0x3b, 0xbe, 0x96, 0x51,
- 0xf4, 0x4f, 0x41, 0xcf, 0x8e, 0x18, 0x19, 0x61, 0xe6, 0x5d, 0x79,
- 0xa2, 0x49, 0xaa, 0x3d, 0x1b, 0xd0, 0xc3, 0xac, 0x14, 0x70, 0x86,
- 0x88, 0x1c, 0xd9, 0xc9, 0x33, 0x58, 0xd6, 0xa4, 0xdc, 0xd7, 0x4c,
- 0x22, 0x14, 0xd8, 0x90, 0xde, 0xde, 0x37, 0x65, 0x72, 0x20, 0x36,
- 0xd4, 0x1d, 0xb0, 0xbb, 0x99, 0xfd, 0xb6, 0x26, 0x55, 0x15, 0xdf,
- 0x5a, 0xe0, 0xbd, 0xd7, 0xd9, 0xab, 0xe9, 0xf4, 0x77, 0x96, 0x2e,
- 0x37, 0xbd, 0xc3, 0xa8, 0xd1, 0x81, 0x8d, 0x68, 0x3a, 0xeb, 0x91,
- 0x50, 0x5f, 0xaf, 0x8d, 0x73, 0xf0, 0x26, 0xc5, 0xf3, 0xf3, 0xcc,
- 0x8c, 0x5e, 0x51, 0x89, 0xf8, 0x3a, 0x1b, 0x06, 0x87, 0xf9, 0x78,
- 0xb1, 0xa3, 0xa9, 0xf2, 0x55, 0xc6, 0x64, 0x0a, 0xbc, 0xaf, 0x8b,
- 0xf3, 0x2f, 0xe4, 0xf1, 0xe9, 0xc6, 0x84, 0xe2, 0xc8, 0x09, 0x51,
- 0xb2, 0xad, 0x97, 0x71, 0x80, 0x79, 0x07, 0x43, 0xa3, 0x94, 0xad,
- 0xce, 0x6d, 0x3f, 0x82, 0xf2, 0xb2, 0x11, 0x3a, 0xe2, 0x41, 0x8d,
- 0x41, 0xeb, 0x3d, 0x13, 0x09, 0xd2, 0x47, 0x61, 0x3a, 0x69, 0xcf,
- 0xb9, 0x17, 0x73, 0x15, 0x65, 0xec, 0x4e, 0x0a, 0xc8, 0xa7, 0xe4,
- 0x98, 0xae, 0x14, 0x37, 0x79, 0x8f, 0xbf, 0x13, 0x79, 0x80, 0x2e,
- 0x90, 0xb0, 0xbd, 0xfe, 0xdd, 0x71, 0xd6, 0xcc, 0x3e, 0xbd, 0xe3,
- 0x57, 0x64, 0x8b, 0xb4, 0x7d, 0x7e, 0x21, 0x3a, 0x84, 0xca, 0x73,
- 0x91, 0x43, 0xd5, 0x67, 0x14, 0xd2, 0x86, 0xd0, 0xe6, 0xe0, 0x02,
- 0x6b, 0x47, 0x3e, 0xdb, 0xa5, 0xaa, 0x04, 0x2a, 0xdf, 0xe9, 0xfa,
- 0x43, 0x8c, 0x92, 0x11, 0x37, 0xa8, 0xd5, 0x92, 0x2c, 0x9e, 0x5a,
- 0x87, 0xb3, 0xb6, 0x70, 0x93, 0x7b, 0xa8, 0x62, 0xdc, 0x3d, 0x3e,
- 0x64, 0x26, 0xd4, 0xa2, 0x5d, 0x29, 0xba, 0xd7, 0x61, 0x7f, 0x51,
- 0x2a, 0x27, 0x8d, 0x48, 0xfc, 0x6b, 0xb1, 0x92, 0x36, 0x61, 0x54,
- 0x5a, 0x15, 0xd4, 0xc1, 0x62, 0x35, 0x7c, 0x5f, 0x31, 0x2b, 0x1f,
- 0xe2, 0x3e, 0x68, 0x04, 0x7b, 0x4c, 0x03, 0xa3, 0x7a, 0x68, 0x7e,
- 0x66, 0x01, 0xeb, 0x1a, 0xeb, 0x51, 0xc4, 0xbf, 0x46, 0x0c, 0x29,
- 0x80, 0xbe, 0xd8, 0xb6, 0xb8, 0xef, 0xca, 0xd3, 0xa6, 0xd8, 0x37,
- 0x8e, 0xfe, 0xd4, 0xad, 0xc9, 0x91, 0xbf, 0x7a, 0x13, 0xa3, 0xa5,
- 0xbe, 0x34, 0xc0, 0x5d, 0xca, 0x3b, 0xe5, 0x83, 0x28, 0xc2, 0x7a,
- 0x4c, 0xdf, 0xfa, 0x8c, 0x70, 0x7e, 0x2b, 0xd3, 0x07, 0xdc, 0xfb,
- 0xa8, 0x7a, 0xcd, 0x06, 0xed, 0x4d, 0x34, 0xa5, 0xe4, 0xa2, 0xf4,
- 0xc5, 0x28, 0xea, 0x72, 0x9c, 0x6d, 0x83, 0xb1, 0xad, 0x50, 0xb2,
- 0x43, 0xed, 0xf7, 0xc7, 0x91, 0x91, 0x82, 0xcd, 0xc5, 0x0e, 0xa4,
- 0x9a, 0x53, 0xcf, 0x41, 0xb3, 0x07, 0xc9, 0x10, 0x6e, 0x18, 0x20,
- 0x09, 0xc8, 0x11, 0x65, 0xa0, 0x01, 0xc7, 0x2b, 0x50, 0xb7, 0xf5,
- 0x8c, 0x9f, 0x8a, 0xfb, 0x51, 0x61, 0x4d, 0xc1, 0x40, 0xc5, 0x3d,
- 0xd7, 0x85, 0xaf, 0x10, 0xb7, 0x38, 0x0a, 0x0c, 0xbb, 0xc2, 0x2a,
- 0x3c, 0xde, 0x08, 0xa6, 0x9c, 0x85, 0x8b, 0xc5, 0xca, 0xf9, 0xdc,
- 0x8e, 0x0e, 0xcb, 0xe4, 0xb9, 0xb3, 0x71, 0xaa, 0x79, 0x92, 0x70,
- 0x73, 0xd0, 0xc8, 0x42, 0x9f, 0xc7, 0x1b, 0x92, 0x3c, 0xb5, 0xa7,
- 0xe1, 0x61, 0xad, 0xe1, 0xcf, 0x85, 0x2d, 0xd8, 0x18, 0xf0, 0x8d,
- 0x24, 0x1b, 0xfc, 0x4c, 0xf3, 0xf5, 0x6f, 0xe0, 0xe6, 0x09, 0x27,
- 0xb2, 0xab, 0xf8, 0x8d, 0x45, 0x22, 0x64, 0xe6, 0xc3, 0x5b, 0xcb,
- 0xe5, 0x45, 0x93, 0xd5, 0x69, 0xcc, 0x5b, 0x4f, 0x71, 0xd5, 0x66,
- 0x90, 0xf7, 0xb9, 0xc7, 0x78, 0x24, 0x7b, 0xa3, 0x19, 0xcf, 0x1d,
- 0x95, 0xe6, 0x37, 0xe8, 0x94, 0x51, 0xaa, 0x8a, 0x95, 0x9d, 0x30,
- 0x75, 0x13, 0xfa, 0xd4, 0xfe, 0x71, 0x46, 0x4f, 0xb6, 0x2a, 0x83,
- 0x7b, 0x7b, 0xb1, 0xf1, 0xc0, 0x4c, 0xab, 0x7e, 0xb5, 0x32, 0x9f,
- 0xde, 0x27, 0xdf, 0xaf, 0x4c, 0x2b, 0x89, 0x3e, 0x33, 0x40, 0xec,
- 0x53, 0xe4, 0x9f, 0xb3, 0x56, 0xcc, 0x26, 0x95, 0xcb, 0x22, 0x76,
- 0x19, 0x98, 0x3c, 0x37, 0x38, 0xd6, 0xf0, 0x64, 0xc3, 0xbb, 0x1a,
- 0x93, 0xde, 0x0b, 0xcf, 0xd8, 0xc9, 0x42, 0x0a, 0x40, 0xe7, 0xbf,
- 0x4c, 0x5c, 0x81, 0xbd, 0xc0, 0x76, 0xdb, 0xd6, 0xa7, 0x3f, 0xb4,
- 0xc0, 0x77, 0x14, 0xe2, 0x26, 0x7f, 0x7d, 0xc1, 0x64, 0x82, 0x4b,
- 0x6e, 0x3e, 0x3c, 0x3e, 0x1e, 0x57, 0x38, 0x2f, 0xb0, 0xa6, 0x94,
- 0xde, 0x40, 0xc1, 0x31, 0x66, 0x98, 0xf1, 0x3e, 0x78, 0x80, 0x24,
- 0x53, 0x3a, 0xb5, 0x92, 0x1d, 0xe8, 0xea, 0xc5, 0x6a, 0xdb, 0x2e,
- 0xc8, 0x83, 0x61, 0x95, 0xc8, 0xd0, 0x59, 0x48, 0xa5, 0x55, 0xb0,
- 0x97, 0x90, 0xc4, 0x3c, 0x27, 0xe5, 0x6a, 0x40, 0x3b, 0xcc, 0xd0,
- 0x13, 0x1d, 0x05, 0xb9, 0x8f, 0x79, 0x1a, 0x70, 0x80, 0x55, 0x57,
- 0x94, 0x5f, 0x12, 0x9b, 0x6d, 0x3a, 0x3e, 0xf2, 0x77, 0xcc, 0x7d,
- 0x7b, 0x13, 0x2d, 0xeb, 0xfa, 0x01, 0x6c, 0xf3, 0x5b, 0x32, 0x95,
- 0x87, 0xcb, 0x85, 0xfb, 0xfb, 0xe7, 0x56, 0x03, 0xa0, 0xa1, 0x17,
- 0xc1, 0x37, 0x98, 0xc5, 0x68, 0x66, 0x14, 0x4f, 0x34, 0x69, 0x76,
- 0xbd, 0x94, 0x6c, 0xff, 0x07, 0xc2, 0xdc, 0x0f, 0xf5, 0xa6, 0xf2,
- 0xe5, 0x18, 0x0c, 0xaa, 0xe8, 0xae, 0x94, 0xf7, 0x44, 0xc0, 0x2b,
- 0x85, 0x19, 0xde, 0x24, 0xf5, 0xc3, 0xae, 0x91, 0x6c, 0x3d, 0x5b,
- 0x43, 0x2e, 0x3a, 0x7f, 0xed, 0xd0, 0x8a, 0xa5, 0x79, 0xb1, 0xfd,
- 0x89, 0xba, 0x0d, 0xf0, 0xe6, 0x75, 0xc3, 0xb3, 0xb7, 0x1c, 0x87,
- 0x56, 0x1e, 0x6e, 0x4c, 0xd9, 0x50, 0x08, 0xa2, 0x91, 0x31, 0x48,
- 0x23, 0xfc, 0xa1, 0x97, 0x56, 0x80, 0x70, 0x19, 0x56, 0x5d, 0xad,
- 0x39, 0x8a, 0x23, 0x49, 0x31, 0xf9, 0x10, 0xd5, 0xdd, 0x09, 0x57,
- 0x73, 0xd1, 0x4b, 0x08, 0xf6, 0xe4, 0xe3, 0x2c, 0xef, 0x72, 0xdf,
- 0x5e, 0x59, 0xd1, 0x93, 0xbb, 0xd5, 0xac, 0x3c, 0x5e, 0xb9, 0xf8,
- 0x13, 0x80, 0xc4, 0x15, 0xb3, 0x99, 0xc2, 0x43, 0x9f, 0x14, 0xcd,
- 0xd2, 0x4a, 0xf5, 0x8c, 0xe5, 0xba, 0x1a, 0xb2, 0x35, 0xe1, 0x19,
- 0x8b, 0x17, 0xe6, 0x82, 0x9f, 0xb3, 0x9f, 0xc6, 0xfd, 0x37, 0xb5,
- 0x84, 0xda, 0x2a, 0x77, 0xc8, 0x97, 0x64, 0xbf, 0x44, 0x0a, 0xbf,
- 0x0f, 0xe3, 0x88, 0xed, 0xc2, 0xa0, 0x94, 0x3c, 0x05, 0xc9, 0x12,
- 0xb7, 0xb6, 0x03, 0x34, 0xa8, 0xd6, 0xfe, 0x78, 0xba, 0x90, 0x3c,
- 0x06, 0x9d, 0xdc, 0xe2, 0xd4, 0xe4, 0x94, 0xee, 0x01, 0x42, 0x2f,
- 0x68, 0x0a, 0xb9, 0x4e, 0x4c, 0xbc, 0x44, 0x07, 0x0f, 0xc7, 0x9d,
- 0x86, 0x88, 0x21, 0x69, 0xff, 0xcd, 0xe7, 0x3f, 0x2f, 0x56, 0x33,
- 0x3a, 0xd2, 0x34, 0xbf, 0x00, 0x65, 0x3b, 0x61, 0xf2, 0x4a, 0x4b,
- 0x46, 0x88, 0x66, 0xf1, 0x98, 0xad, 0x4a, 0xff, 0xb7, 0x19, 0x9b,
- 0x0b, 0xa9, 0x51, 0xdc, 0x93, 0xbd, 0xae, 0xf8, 0x40, 0x20, 0x89,
- 0x15, 0x86, 0x37, 0x4a, 0x80, 0x52, 0x04, 0xda, 0x84, 0x96, 0xb5,
- 0xe3, 0x3f, 0x0b, 0xbc, 0x47, 0x05, 0xb9, 0xa8, 0xeb, 0x09, 0x28,
- 0x62, 0xc8, 0x0b, 0x3f, 0x2e, 0xf9, 0x6b, 0x55, 0xdc, 0x58, 0x7f,
- 0xee, 0xca, 0xd3, 0x54, 0xa0, 0x34, 0xee, 0xfc, 0x2c, 0x05, 0xeb,
- 0xcd, 0xcf, 0x42, 0x54, 0x6f, 0x42, 0x2f, 0x22, 0x05, 0x65, 0xb9,
- 0x12, 0x24, 0xe7, 0xf3, 0x70, 0x6c, 0x16, 0x09, 0xe0, 0x12, 0x41,
- 0xa5, 0x3e, 0x22, 0x48, 0xd6, 0x94, 0xb1, 0x69, 0xf5, 0xed, 0xa7,
- 0x2c, 0x8a, 0x88, 0x2c, 0xf2, 0x68, 0xab, 0xb0, 0x44, 0x35, 0xb7,
- 0xaf, 0xab, 0xe6, 0x9f, 0xf4, 0xb9, 0xb2, 0x75, 0xb5, 0x20, 0xb8,
- 0x63, 0x5e, 0xd3, 0xd9, 0x4c, 0x08, 0x13, 0x2e, 0xe8, 0x8f, 0xcf,
- 0xa1, 0xd4, 0x21, 0xd6, 0x18, 0xa1, 0x1c, 0x8f, 0xe5, 0xd4, 0x03,
- 0xc3, 0x3f, 0xeb, 0xcf, 0xd6, 0x66, 0x97, 0x0f, 0x39, 0xe1, 0xf0,
- 0x15, 0x51, 0xb9, 0xe6, 0x82, 0xac, 0x90, 0xd7, 0xf1, 0xbe, 0xb5,
- 0x7b, 0x06, 0x1e, 0xcf, 0xb2, 0x5e, 0xa3, 0x98, 0x08, 0x4d, 0xaf,
- 0xcb, 0x0f, 0x18, 0xa3, 0xba, 0xea, 0xc5, 0xcb, 0xfe, 0x58, 0x85,
- 0xb0, 0x75, 0x03, 0x6d, 0xf7, 0x63, 0x4b, 0x34, 0xeb, 0x31, 0x6e,
- 0x13, 0x45, 0xac, 0x23, 0x2a, 0x02, 0x4c, 0xf5, 0x64, 0xd0, 0x48,
- 0x96, 0xd2, 0x36, 0x0e, 0x7c, 0xd5, 0x42, 0xf1, 0xb7, 0x85, 0x67,
- 0x38, 0x00, 0x55, 0x3e, 0xc7, 0x89, 0x3d, 0x07, 0xee, 0x7d, 0x9e,
- 0xbb, 0x4b, 0x41, 0x21, 0xbd, 0x98, 0x35, 0x3b, 0x8b, 0xdd, 0x72,
- 0xde, 0xec, 0x9e, 0x32, 0x2a, 0x7e, 0x2e, 0xc7, 0xc1, 0x75, 0xf0,
- 0x6c, 0xcc, 0x29, 0x12, 0xca, 0xc3, 0x88, 0xa0, 0xc0, 0x06, 0xb3,
- 0x4b, 0x23, 0xa9, 0x36, 0xd3, 0x27, 0x29, 0xd3, 0x99, 0xf2, 0x5b,
- 0x1d, 0x55, 0x85, 0x35, 0xcc, 0x45, 0x89, 0xf7, 0x11, 0x6c, 0x4b,
- 0x06, 0x78, 0xd0, 0x68, 0xe3, 0xba, 0x5f, 0x44, 0x2e, 0xe9, 0x68,
- 0x05, 0x2f, 0x56, 0x6e, 0x73, 0xc4, 0xc3, 0xc5, 0x00, 0x6e, 0x5a,
- 0x22, 0x47, 0x0b, 0x4b, 0x65, 0xb3, 0x5f, 0xc2, 0x2d, 0x89, 0x7e,
- 0xd6, 0x24, 0x53, 0xef, 0xd2, 0xa5, 0x6c, 0x19, 0x0e, 0xb5, 0xd4,
- 0xc2, 0xb0, 0x2f, 0x86, 0xdc, 0xe8, 0x59, 0xf1, 0xf4, 0x8a, 0xc0,
- 0x43, 0xb1, 0x79, 0x24, 0x06, 0x30, 0x48, 0x6d, 0xf5, 0xf0, 0x97,
- 0x8e, 0xf3, 0x1c, 0xe2, 0x3f, 0x77, 0x98, 0x99, 0x91, 0xc7, 0xce,
- 0x23, 0x40, 0x77, 0xfa, 0xff, 0x59, 0x9a, 0x61, 0x62, 0x77, 0xef,
- 0x31, 0xce, 0xaf, 0x18, 0x01, 0x58, 0x2e, 0x07, 0x77, 0xfb, 0x00,
- 0xc6, 0x3b, 0xb4, 0x2b, 0xfa, 0x61, 0xe1, 0x67, 0x45, 0x3e, 0x71,
- 0xe3, 0x18, 0x58, 0xd0, 0x1c, 0x1a, 0x2c, 0x80, 0x6c, 0x87, 0x13,
- 0x38, 0x13, 0x65, 0x29, 0x3b, 0xd9, 0xa6, 0xb7, 0x22, 0x52, 0x8a,
- 0xa4, 0xb8, 0x78, 0xb5, 0x69, 0xf3, 0xe2, 0x9a, 0x0b, 0xe2, 0x81,
- 0x1e, 0x49, 0xd6, 0x75, 0xa9, 0xa9, 0xec, 0x70, 0x9b, 0x67, 0xc6,
- 0xea, 0xda, 0xd9, 0x9b, 0xfe, 0x64, 0x97, 0x37, 0xcb, 0xc6, 0x6c,
- 0xfd, 0x06, 0x2b, 0xdf, 0x62, 0x66, 0x55, 0x3b, 0xe3, 0x99, 0xdc,
- 0x29, 0x1b, 0x0f, 0x00, 0x2a, 0x0a, 0x8c, 0xb8, 0xc5, 0x51, 0x14,
- 0xb4, 0xad, 0x13, 0xf8, 0xf9, 0x5a, 0xb9, 0xb4, 0x15, 0x07, 0x71,
- 0x72, 0xbb, 0x3f, 0xb0, 0xf2, 0xa7, 0x24, 0x6d, 0x2a, 0xd2, 0xa0,
- 0x41, 0x0d, 0xb5, 0x7b, 0x48, 0x5d, 0xfe, 0xeb, 0xf7, 0x9f, 0x1e,
- 0xbb, 0xfd, 0x8f, 0xee, 0xc4, 0xe6, 0x0f, 0x3a, 0x13, 0x67, 0x0d,
- 0x4c, 0xe2, 0xa0, 0x51, 0xbc, 0xe1, 0x5f, 0x7b, 0xfc, 0x95, 0xe6,
- 0x6e, 0xde, 0x79, 0xbf, 0x94, 0x51, 0xcb, 0xb3, 0xb8, 0xe2, 0xab,
- 0x65, 0x1e, 0x39, 0x04, 0x6a, 0x34, 0xdc, 0xdb, 0xd0, 0x26, 0xd1,
- 0xc4, 0x02, 0x0f, 0xbf, 0x1a, 0xf1, 0x0f, 0x3f, 0x37, 0x69, 0x1e,
- 0x06, 0xde, 0xf6, 0x2b, 0x6c, 0x6e, 0x4d, 0x67, 0x24, 0x52, 0xa4,
- 0x3e, 0xbb, 0xc7, 0x28, 0xe8, 0xe4, 0x3e, 0xeb, 0xa9, 0xc1, 0x02,
- 0xc4, 0x00, 0x45, 0x99, 0x71, 0x5a, 0x36, 0x2d, 0x9a, 0xe5, 0xf4,
- 0x94, 0x7e, 0x63, 0xac, 0x6d, 0x9d, 0x25, 0xdd, 0x86, 0xa5, 0x02,
- 0x8d, 0x97, 0xf4, 0xf7, 0xd0, 0xea, 0x3c, 0x66, 0xe2, 0xfe, 0xdf,
- 0x35, 0xba, 0x06, 0xe8, 0x0a, 0xa6, 0xbe, 0xfa, 0x15, 0xf9, 0x8f,
- 0x60, 0x7e, 0xa4, 0x1d, 0x26, 0xb9, 0x62, 0x6c, 0xea, 0x61, 0xb2,
- 0x1b, 0x42, 0x4b, 0x06, 0x33, 0x76, 0x62, 0xb9, 0x4b, 0xe1, 0x27,
- 0x84, 0x99, 0xd9, 0x4b, 0x66, 0x0b, 0x02, 0x41, 0x84, 0x1e, 0x2f,
- 0x08, 0x35, 0xfd, 0x37, 0x3a, 0x00, 0x36, 0x23, 0xa3, 0x74, 0x9b,
- 0xb5, 0x06, 0x94, 0x23, 0xf7, 0x46, 0x51, 0x9f, 0xe5, 0x3f, 0xff,
- 0x2b, 0xc0, 0x31, 0x14, 0xcf, 0x31, 0x0f, 0x76, 0xcb, 0x84, 0x5e,
- 0xb4, 0x6d, 0x26, 0x05, 0x21, 0xde, 0x8d, 0x30, 0x1a, 0x5a, 0xe9,
- 0x48, 0x6b, 0x84, 0x33, 0x06, 0xd1, 0x49, 0x3b, 0x28, 0xdd, 0xc6,
- 0xa7, 0x1a, 0xa5, 0x9d, 0x43, 0xbd, 0x68, 0x03, 0x9c, 0x8e, 0x3c,
- 0x52, 0x6b, 0xb4, 0xa7, 0x97, 0x5a, 0x24, 0xe2, 0x61, 0x4f, 0x18,
- 0x0f, 0xff, 0x70, 0x98, 0x5b, 0x4a, 0x91, 0x19, 0x33, 0xa8, 0xa0,
- 0x8d, 0xf8, 0x48, 0x84, 0x29, 0x43, 0xc5, 0x62, 0xca, 0x59, 0xc1,
- 0xfc, 0xaa, 0x65, 0x27, 0xda, 0x0f, 0xbc, 0x55, 0xbd, 0x73, 0xc3,
- 0xf5, 0xf2, 0x12, 0x6a, 0x15, 0x6f, 0x65, 0x5e, 0x24, 0xcf, 0xba,
- 0x3c, 0x39, 0x84, 0xcf, 0x58, 0xc0, 0xc3, 0x2c, 0x06, 0xfa, 0x40,
- 0x29, 0xb1, 0x7c, 0xa6, 0x4a, 0xa2, 0xed, 0xc6, 0x79, 0xa9, 0x59,
- 0xf3, 0x00, 0xc4, 0x27, 0x59, 0xe3, 0xad, 0xcc, 0xcf, 0xca, 0xbc,
- 0xf0, 0xa1, 0xe8, 0xa3, 0xe2, 0xaf, 0x25, 0x9f, 0xb3, 0x3e, 0x6f,
- 0xdb, 0xd7, 0x40, 0x89, 0xfd, 0x6d, 0x1f, 0x54, 0x4c, 0x4d, 0xf2,
- 0xa7, 0x7d, 0x8d, 0x29, 0x91, 0xd2, 0x89, 0x0f, 0xe1, 0xba, 0x31,
- 0xfb, 0x51, 0x41, 0x1e, 0xd4, 0xe1, 0xce, 0x16, 0x76, 0x83, 0x2e,
- 0xd3, 0xe4, 0xdb, 0x5e, 0x15, 0xc9, 0xf2, 0xe6, 0xd6, 0xda, 0xa2,
- 0x6c, 0xd5, 0xd5, 0x64, 0xac, 0xab, 0x75, 0xe5, 0xcf, 0xc0, 0x51,
- 0x86, 0x33, 0x85, 0x03, 0xb9, 0x11, 0x65, 0x08, 0xdc, 0xa2, 0x77,
- 0xf2, 0x50, 0x68, 0xb5, 0x86, 0x99, 0x06, 0x17, 0x85, 0x8b, 0x44,
- 0x38, 0x3f, 0x66, 0xef, 0xa1, 0x7d, 0x75, 0x35, 0xb5, 0x23, 0x98,
- 0xb4, 0xb4, 0xf9, 0x9e, 0xd2, 0xc0, 0xe7, 0xe2, 0xee, 0x6a, 0x38,
- 0x1f, 0xf4, 0x8d, 0x4e, 0xc0, 0xc8, 0x23, 0xa9, 0x92, 0x39, 0x92,
- 0xef, 0xb9, 0x36, 0x5a, 0xc0, 0x90, 0xcb, 0xd5, 0x73, 0x72, 0x57,
- 0x10, 0x8b, 0xf8, 0x1c, 0x2a, 0x7a, 0x23, 0x2a, 0x36, 0x10, 0x60,
- 0xb3, 0xaa, 0x3d, 0x20, 0x9a, 0xea, 0xb7, 0xd6, 0x29, 0xad, 0xe4,
- 0xba, 0xd5, 0xdd, 0xac, 0x4c, 0x23, 0xac, 0xc7, 0x61, 0x23, 0x88,
- 0x8e, 0xa6, 0x47, 0x4a, 0x3e, 0xbb, 0xbb, 0x15, 0x70, 0xad, 0x58,
- 0xe6, 0xb8, 0xd6, 0xa0, 0xab, 0x87, 0x02, 0x21, 0x5c, 0x8b, 0xa4,
- 0xdf, 0xa1, 0xe7, 0x58, 0x92, 0x8d, 0xe6, 0xc5, 0x86, 0xab, 0x07,
- 0xd2, 0x64, 0xf0, 0xfa, 0x76, 0x2a, 0xb3, 0x08, 0x6f, 0xb9, 0x46,
- 0xd5, 0x47, 0x4a, 0x3b, 0x00, 0x62, 0xc9, 0x1d, 0xff, 0x73, 0x49,
- 0x87, 0x42, 0xa9, 0xb9, 0x80, 0x52, 0x8f, 0x68, 0x36, 0xe3, 0xcd,
- 0x32, 0x3b, 0x86, 0x78, 0x7d, 0x24, 0xb1, 0x31, 0x2c, 0xa9, 0x50,
- 0x1e, 0xc3, 0x18, 0x37, 0x00, 0x20, 0xd1, 0x76, 0xd5, 0x49, 0xa1,
- 0xa0, 0x55, 0x95, 0x43, 0xd3, 0xbe, 0x6e, 0xd6, 0xda, 0xba, 0x60,
- 0x13, 0x64, 0xcc, 0xe8, 0xbb, 0x6e, 0x62, 0x88, 0x6e, 0x82, 0x6b,
- 0x1e, 0x34, 0xfe, 0x4c, 0x73, 0xbd, 0x46, 0x3f, 0xc4, 0x0c, 0x01,
- 0xdf, 0xf4, 0x81, 0xde, 0xff, 0x38, 0x23, 0x25, 0x4f, 0xbb, 0x28,
- 0xb4, 0x0b, 0x0c, 0x75, 0x3a, 0xc6, 0x88, 0xe3, 0xc0, 0x0a, 0xa3,
- 0xde, 0x66, 0x8c, 0xfc, 0xb1, 0x71, 0x0f, 0x35, 0x9e, 0xb3, 0xf0,
- 0x10, 0xdf, 0x5d, 0x09, 0x61, 0x5e, 0x22, 0x54, 0x07, 0x05, 0x72,
- 0x9a, 0x90, 0xef, 0xc2, 0xd8, 0xdf, 0x03, 0x56, 0xd9, 0x9e, 0xd3,
- 0xdb, 0x30, 0xd7, 0x89, 0xf5, 0x9f, 0xab, 0x45, 0x15, 0xda, 0x29,
- 0xf1, 0x83, 0x50, 0x98, 0x84, 0xa4, 0xc0, 0x7f, 0x54, 0x48, 0x09,
- 0x2d, 0xec, 0xcb, 0x9d, 0x1d, 0x1a, 0xb6, 0x04, 0xc1, 0xbe, 0x18,
- 0xd9, 0xa9, 0x00, 0x3d, 0xf1, 0xea, 0x0d, 0xec, 0x91, 0xdf, 0x9d,
- 0x1a, 0xef, 0xa9, 0x7c, 0x8f, 0x40, 0xba, 0x0a, 0x81, 0xa0, 0x18,
- 0x05, 0x17, 0x44, 0xe4, 0x0f, 0xb9, 0xc9, 0x29, 0x9d, 0xf1, 0x60,
- 0x45, 0xc4, 0x69, 0xd8, 0xe4, 0xb8, 0xbd, 0xfd, 0xd6, 0x4e, 0x22,
- 0xfc, 0xeb, 0xa6, 0xf4, 0x2e, 0x89, 0x7c, 0x9f, 0x0d, 0xf9, 0xfb,
- 0xce, 0x0a, 0x5d, 0xcf, 0x82, 0xc1, 0x86, 0x8c, 0xc5, 0x47, 0xb0,
- 0x8b, 0xa9, 0x4b, 0x4f, 0x15, 0x31, 0x83, 0x39, 0x1c, 0x83, 0xad,
- 0xc9, 0x5e, 0x79, 0x51, 0x4d, 0x5f, 0x93, 0xa9, 0xd3, 0x97, 0x6b,
- 0xa0, 0x27, 0xb7, 0x20, 0xa4, 0x5d, 0x54, 0xad, 0xe2, 0x8e, 0xc9,
- 0x9f, 0x57, 0xad, 0x5a, 0x16, 0x01, 0x56, 0xe3, 0x84, 0x3d, 0xd0,
- 0xfb, 0x86, 0x3c, 0x34, 0xde, 0x7b, 0xf9, 0x8f, 0xba, 0xc8, 0xb0,
- 0x41, 0xe8, 0xdd, 0x61, 0xaa, 0x9b, 0x3d, 0xe7, 0xaa, 0xfc, 0xb4,
- 0x06, 0x11, 0xc0, 0x09, 0xa8, 0x0e, 0x48, 0x67, 0xc7, 0x7e, 0x42,
- 0xb8, 0xf1, 0xdf, 0xdc, 0xa6, 0xf8, 0x02, 0x58, 0x62, 0xfa, 0x3d,
- 0x6c, 0x18, 0xc7, 0x81, 0x44, 0xca, 0x02, 0xc2, 0x67, 0x5b, 0x71,
- 0x98, 0x44, 0xb8, 0x45, 0xea, 0x33, 0x1d, 0xee, 0x77, 0x1e, 0x05,
- 0xbd, 0xfc, 0x62, 0x5c, 0x57, 0x17, 0xd4, 0x53, 0x49, 0x85, 0x29,
- 0x78, 0x0c, 0x3e, 0x14, 0x00, 0xd8, 0x4e, 0x5c, 0x12, 0x5b, 0x50,
- 0x7e, 0x7e, 0x14, 0xc8, 0xd5, 0x42, 0x0c, 0xcf, 0xc2, 0xde, 0x4f,
- 0xcd, 0xff, 0x8c, 0x7a, 0x41, 0x36, 0x50, 0xcd, 0x26, 0xc5, 0xc9,
- 0x49, 0x37, 0x5e, 0xa0, 0x5c, 0x1d, 0x40, 0xa9, 0x84, 0xe6, 0xe7,
- 0x5a, 0xba, 0xb2, 0xb5, 0x59, 0x00, 0x20, 0x81, 0xcc, 0xea, 0xc8,
- 0x9b, 0xbc, 0x50, 0x1e, 0x5d, 0x32, 0x26, 0x14, 0xb8, 0x65, 0xe1,
- 0xf7, 0xb0, 0x37, 0xa2, 0x8b, 0xc3, 0x2e, 0xcd, 0xd2, 0x0a, 0xc2,
- 0x34, 0x72, 0xec, 0x09, 0x7e, 0x97, 0x8c, 0x1a, 0x32, 0x77, 0x34,
- 0xd5, 0xca, 0x57, 0x8c, 0xeb, 0x2b, 0x6e, 0xf8, 0x72, 0xe1, 0xf8,
- 0x7f, 0x16, 0x15, 0x33, 0x6b, 0x00, 0xb0, 0x59, 0x69, 0x4c, 0xaf,
- 0xd8, 0x1a, 0x66, 0x1f, 0xd9, 0xdd, 0x80, 0xbe, 0x80, 0x1c, 0x7b,
- 0x6e, 0xf0, 0x8a, 0xab, 0xab, 0x14, 0x92, 0x48, 0x2a, 0xe6, 0x65,
- 0x46, 0x3b, 0x64, 0x5c, 0x28, 0x3f, 0x53, 0x1a, 0x22, 0xa6, 0x4e,
- 0x73, 0xbd, 0x6b, 0x6e, 0x9b, 0x93, 0xff, 0x67, 0xf7, 0x86, 0xa8,
- 0x62, 0x14, 0xc0, 0x34, 0x96, 0x58, 0x89, 0xe4, 0xd8, 0xb8, 0x7f,
- 0xd6, 0x79, 0xf9, 0x97, 0x7a, 0xaa, 0x33, 0xe6, 0xaa, 0x1c, 0xc1,
- 0x30, 0x9e, 0x54, 0x10, 0x2c, 0xb3, 0x2b, 0xf3, 0xe7, 0x99, 0x3f,
- 0x21, 0x66, 0xe1, 0x39, 0x6a, 0xe2, 0x31, 0x21, 0x74, 0xeb, 0x82,
- 0x01, 0x15, 0xce, 0x04, 0xba, 0xfd, 0x07, 0x7e, 0x52, 0x63, 0xfa,
- 0x46, 0x23, 0xa9, 0x75, 0xd4, 0x63, 0xc8, 0x13, 0x19, 0x17, 0x64,
- 0xc9, 0xba, 0x8b, 0xda, 0x26, 0x1b, 0x6f, 0x5e, 0x73, 0x7a, 0x00,
- 0x16, 0x01, 0x21, 0x61, 0xc3, 0xce, 0xf8, 0xa2, 0x96, 0xf1, 0xb8,
- 0x63, 0xa0, 0x7e, 0xb1, 0x0f, 0x75, 0xf2, 0xfa, 0x2c, 0xbd, 0xa1,
- 0x7f, 0xed, 0xdf, 0xaa, 0x76, 0x45, 0xf0, 0xd4, 0xbc, 0x70, 0x13,
- 0xe3, 0x89, 0x83, 0x34, 0xbd, 0x99, 0xcf, 0x23, 0xf3, 0xec, 0x39,
- 0x80, 0xc0, 0x9d, 0x74, 0x8e, 0x4d, 0x7e, 0xe7, 0x60, 0x48, 0xa2,
- 0x45, 0x3c, 0xdd, 0x58, 0x50, 0xea, 0xfb, 0x11, 0xda, 0xe8, 0x0e,
- 0x4f, 0x0f, 0xc7, 0x78, 0xd1, 0x8b, 0xcf, 0x5d, 0xbd, 0x51, 0xa5,
- 0xb1, 0x3d, 0x9a, 0xc7, 0x52, 0x06, 0x71, 0x19, 0xb4, 0x08, 0x30,
- 0xa3, 0x99, 0x09, 0xd4, 0x3a, 0x2d, 0x21, 0x71, 0xb5, 0xda, 0x11,
- 0x5a, 0x9f, 0x4c, 0x56, 0xf9, 0x73, 0x60, 0xee, 0xe4, 0xa3, 0x30,
- 0x71, 0x00, 0x70, 0x9c, 0xdc, 0xe1, 0x08, 0x0e, 0x54, 0x40, 0xcf,
- 0xf9, 0x7c, 0x82, 0xee, 0xb7, 0x48, 0xb3, 0x3c, 0xc2, 0x9a, 0xd8,
- 0x65, 0x7c, 0x52, 0x89, 0x29, 0x0c, 0x25, 0x7c, 0x15, 0x8e, 0xfb,
- 0x4b, 0xe3, 0x9e, 0x87, 0x4b, 0xea, 0x67, 0xe9, 0xd6, 0x88, 0x10,
- 0x98, 0x00, 0x5e, 0xc6, 0x48, 0x5f, 0x65, 0x64, 0xe7, 0x90, 0xf9,
- 0xc9, 0x1b, 0x16, 0xee, 0x6e, 0x5c, 0x16, 0xd0, 0x5d, 0xd8, 0x1e,
- 0x2f, 0x10, 0x16, 0xdd, 0xc2, 0xb9, 0x40, 0x9a, 0x75, 0x0e, 0x33,
- 0xaa, 0x3d, 0x09, 0x31, 0x6d, 0x5f, 0xc3, 0x20, 0x3c, 0x5f, 0x89,
- 0x06, 0xb4, 0xaa, 0xfb, 0x57, 0x54, 0xd4, 0xb5, 0x53, 0x9d, 0x4e,
- 0x80, 0x9c, 0x2b, 0x5a, 0x23, 0x11, 0x50, 0x97, 0x93, 0x8c, 0x69,
- 0x93, 0xc5, 0x58, 0x79, 0xa8, 0xea, 0x02, 0x24, 0x35, 0x74, 0x93,
- 0xc8, 0x25, 0xa8, 0x8a, 0xb3, 0x52, 0x37, 0x19, 0xb9, 0xf4, 0x1f,
- 0xa0, 0x71, 0x6e, 0x25, 0xe4, 0x37, 0x28, 0x90, 0xc4, 0x04, 0x4c,
- 0xec, 0x05, 0x47, 0x0e, 0xaa, 0xb8, 0xe5, 0xd7, 0x28, 0xb9, 0xc1,
- 0x7f, 0x05, 0x82, 0xf8, 0xea, 0xa3, 0xd6, 0xcd, 0x18, 0x56, 0x0a,
- 0x60, 0x56, 0xa5, 0xa0, 0xea, 0x50, 0xc3, 0xd7, 0x8b, 0x0f, 0x98,
- 0xcf, 0x69, 0xbd, 0xf5, 0x61, 0xd1, 0x37, 0x25, 0xda, 0x16, 0x2a,
- 0xbc, 0xec, 0x55, 0xcc, 0xae, 0x54, 0xe8, 0x67, 0xdd, 0xd4, 0x1b,
- 0xf0, 0x2b, 0x01, 0x75, 0x3b, 0x8a, 0xe0, 0x14, 0xed, 0xb0, 0x94,
- 0xe1, 0x66, 0xea, 0x0e, 0x58, 0x6a, 0xd6, 0xe7, 0xec, 0xce, 0x24,
- 0xfa, 0x6f, 0x64, 0xb1, 0xc3, 0xc7, 0xf2, 0x13, 0x7e, 0x55, 0x57,
- 0x8b, 0x8b, 0x4e, 0x33, 0x50, 0xfa, 0x44, 0x65, 0x51, 0xbb, 0xd7,
- 0x8b, 0xd0, 0x49, 0x49, 0x49, 0x2f, 0x9c, 0x4b, 0x2e, 0xe2, 0xc9,
- 0xf3, 0xc7, 0xb1, 0x63, 0x82, 0x52, 0x75, 0xce, 0xa2, 0x1f, 0xf2,
- 0x6e, 0x27, 0xbd, 0xd3, 0xd4, 0x35, 0x27, 0x4d, 0x13, 0x77, 0xbe,
- 0xac, 0x6f, 0x00, 0xfd, 0x7a, 0xfa, 0xe1, 0xdd, 0x4a, 0xf1, 0x6c,
- 0xe7, 0x1c, 0xc4, 0x0d, 0x6c, 0x44, 0xbd, 0x9b, 0xff, 0xc5, 0xa1,
- 0x6e, 0x0c, 0xfa, 0x8e, 0x11, 0xc1, 0x90, 0x2d, 0x56, 0x3b, 0x42,
- 0x57, 0x1d, 0x12, 0x8f, 0xd0, 0xea, 0xff, 0x1d, 0xcf, 0x28, 0x87,
- 0xb9, 0x98, 0x24, 0x1e, 0x6b, 0xae, 0xcb, 0x71, 0xe4, 0x7a, 0x99,
- 0xb3, 0x82, 0x82, 0x16, 0x94, 0x8f, 0x8b, 0x89, 0xc6, 0x41, 0x8d,
- 0x63, 0x27, 0x60, 0xb2, 0xb2, 0x23, 0x80, 0xe6, 0xb5, 0x58, 0x4f,
- 0xa1, 0xee, 0x0c, 0x76, 0xae, 0x79, 0xc6, 0xd1, 0x6d, 0x0d, 0x28,
- 0x4e, 0x29, 0x00, 0x59, 0x5c, 0xe1, 0xa4, 0x44, 0x74, 0x3a, 0x01,
- 0xf3, 0xaf, 0x19, 0xc2, 0x4a, 0x9b, 0x67, 0x49, 0xdd, 0x04, 0x55,
- 0x77, 0x37, 0xa2, 0xaa, 0x77, 0x9a, 0xc9, 0x7c, 0xcd, 0x00, 0x1d,
- 0x32, 0x78, 0x86, 0xe2, 0x0b, 0xdb, 0x76, 0xa3, 0x6b, 0xa7, 0x54,
- 0xa3, 0x25, 0x70, 0x65, 0x40, 0x10, 0xda, 0x43, 0xd3, 0x7c, 0xbb,
- 0x8a, 0xce, 0x85, 0xc3, 0x8d, 0x8a, 0x5e, 0xcb, 0xe3, 0xf0, 0xdd,
- 0xc0, 0x08, 0x86, 0x92, 0xf0, 0xf1, 0x37, 0xe3, 0x3e, 0xb9, 0xd4,
- 0x78, 0xb7, 0x83, 0x2c, 0x62, 0x4b, 0x27, 0x06, 0x76, 0x47, 0x69,
- 0x80, 0x46, 0xcd, 0xea, 0xb4, 0x16, 0x59, 0xee, 0xa8, 0x6b, 0x12,
- 0xaf, 0x52, 0xc5, 0x66, 0x78, 0xd6, 0x11, 0x40, 0x88, 0xf3, 0x3d,
- 0x73, 0xa9, 0xd9, 0xa4, 0xc4, 0x84, 0x1e, 0xc9, 0x6c, 0xe6, 0x63,
- 0x57, 0xc4, 0x90, 0x4b, 0x79, 0x6e, 0xd3, 0xd6, 0x74, 0x13, 0xa9,
- 0xd4, 0xcb, 0x5a, 0x5c, 0x16, 0x29, 0xe6, 0x43, 0xc0, 0x23, 0x28,
- 0xf4, 0x46, 0x87, 0x5c, 0x65, 0x91, 0x7b, 0xc5, 0xff, 0xfb, 0x5f,
- 0xb5, 0x5f, 0xbb, 0xbb, 0x85, 0xbf, 0xd7, 0xfb, 0xe8, 0x23, 0x57,
- 0x8a, 0x1d, 0xd1, 0x64, 0x9c, 0x69, 0xa1, 0x62, 0x4b, 0xd2, 0xb7,
- 0x6e, 0x0f, 0x47, 0x34, 0xec, 0xd5, 0x49, 0x52, 0xe6, 0x11, 0x53,
- 0x9f, 0x45, 0x5d, 0x05, 0x2f, 0xc9, 0xfb, 0x83, 0x2d, 0x0b, 0x2e,
- 0xd9, 0x2f, 0x4b, 0xa7, 0x8f, 0x3b, 0xf7, 0x34, 0x3a, 0xb6, 0xb8,
- 0x4f, 0x18, 0x24, 0x9c, 0xba, 0x08, 0x11, 0x32, 0xde, 0xc6, 0xc5,
- 0xa3, 0x95, 0xce, 0xb7, 0xe3, 0x0b, 0x9d, 0xe8, 0xf0, 0xbc, 0x5b,
- 0xf6, 0xff, 0xa9, 0x8b, 0x8c, 0x0b, 0xc2, 0x4e, 0x41, 0x00, 0x3b,
- 0x90, 0x7a, 0x21, 0xef, 0xcf, 0x0b, 0xd2, 0xe1, 0x28, 0xc0, 0x4a,
- 0xda, 0xc9, 0xba, 0xd3, 0x78, 0xb6, 0xa7, 0x47, 0x68, 0x68, 0x18,
- 0xf2, 0x14, 0xaa, 0xf4, 0xc4, 0x2a, 0x4b, 0x1e, 0x8d, 0x76, 0xb2,
- 0x96, 0x0c, 0x3d, 0x1f, 0x99, 0xaa, 0x9f, 0xba, 0xa0, 0x91, 0x84,
- 0x95, 0xb9, 0x2f, 0x7b, 0x6d, 0xca, 0x16, 0x76, 0xc8, 0x89, 0xde,
- 0xde, 0x52, 0x45, 0x5e, 0xcb, 0x1d, 0x5d, 0x94, 0x1c, 0x25, 0x11,
- 0xe9, 0x26, 0x58, 0x41, 0x7b, 0xd4, 0x2d, 0xe2, 0x9d, 0x9e, 0x12,
- 0xb9, 0x72, 0x76, 0xe7, 0x41, 0x64, 0x8e, 0x20, 0x17, 0x05, 0x52,
- 0xa5, 0x0a, 0x67, 0x4e, 0x58, 0xb1, 0x4f, 0xf8, 0xeb, 0xd1, 0x64,
- 0x75, 0xef, 0x2c, 0xbe, 0xd9, 0xf5, 0x05, 0x11, 0xc9, 0x2c, 0x30,
- 0x11, 0xce, 0x4c, 0xe1, 0x83, 0x22, 0xd5, 0x61, 0x94, 0x5b, 0x4d,
- 0xd4, 0x3c, 0xf3, 0xc2, 0x90, 0x4c, 0xbf, 0xbe, 0xe9, 0xbd, 0xf8,
- 0x8d, 0xdf, 0xd9, 0x8e, 0x0a, 0xed, 0xf0, 0x5a, 0x33, 0xf3, 0x51,
- 0xd0, 0x78, 0xf4, 0xa1, 0x6d, 0xcf, 0x28, 0xf1, 0xd6, 0x8e, 0x5c,
- 0x31, 0x3b, 0x9d, 0x24, 0xac, 0xb4, 0xd4, 0x4c, 0x2e, 0xb1, 0xc5,
- 0x38, 0x94, 0x9d, 0xf8, 0x69, 0x65, 0x7f, 0x3c, 0xb0, 0xab, 0x08,
- 0x3e, 0x65, 0xb1, 0x56, 0x3b, 0xfd, 0x62, 0x76, 0xf7, 0x2e, 0x86,
- 0xc3, 0x7d, 0xc9, 0xd6, 0x96, 0x59, 0x96, 0xda, 0x30, 0x56, 0x12,
- 0xb4, 0x1a, 0x75, 0xd2, 0x79, 0x9f, 0x97, 0x39, 0x8e, 0xc5, 0xdb,
- 0x0b, 0x35, 0xc7, 0x83, 0x0e, 0xa3, 0xd9, 0x90, 0x9e, 0x2e, 0xcc,
- 0x70, 0x62, 0x8c, 0x01, 0xef, 0x33, 0xd2, 0xa8, 0xc3, 0x6f, 0x72,
- 0x24, 0xf8, 0x2f, 0xa3, 0x12, 0x32, 0xbf, 0x9d, 0x0c, 0x40, 0x7b,
- 0xb4, 0x76, 0xee, 0xc0, 0x6e, 0x8c, 0xb3, 0xe4, 0xd0, 0x54, 0x68,
- 0xab, 0xbf, 0x27, 0xd1, 0x57, 0xf6, 0x41, 0x07, 0xfc, 0x11, 0x0a,
- 0x6b, 0xb0, 0x17, 0x5f, 0xd7, 0x21, 0x2e, 0x5f, 0xa8, 0x17, 0xf5,
- 0x83, 0xbc, 0x7a, 0xca, 0x39, 0x2e, 0xa2, 0x7e, 0x0a, 0x9d, 0x13,
- 0xb8, 0x1c, 0x39, 0x04, 0xdf, 0x76, 0x4d, 0xad, 0xcb, 0xd3, 0x1c,
- 0xb6, 0x71, 0x88, 0x10, 0x08, 0x49, 0x78, 0x8e, 0x81, 0xba, 0x66,
- 0x10, 0xd8, 0xcb, 0x57, 0x91, 0x7d, 0xa2, 0x09, 0xf3, 0xcf, 0xbe,
- 0x2c, 0xd2, 0x09, 0x29, 0x6f, 0x6b, 0x15, 0xf4, 0xfa, 0x7b, 0x9f,
- 0xd1, 0xd9, 0xd6, 0x9e, 0x98, 0xfe, 0x46, 0xe9, 0x53, 0xa5, 0xcf,
- 0x2e, 0xed, 0x1e, 0x99, 0x42, 0x1d, 0xae, 0xaa, 0xfd, 0xe6, 0x97,
- 0xd4, 0xd1, 0x68, 0x9f, 0xf6, 0x47, 0x57, 0x75, 0xee, 0xda, 0x10,
- 0x4e, 0xd5, 0x19, 0x5f, 0x2d, 0x8c, 0x93, 0x93, 0x62, 0xd7, 0x87,
- 0x5d, 0x98, 0xde, 0xfb, 0x13, 0xbd, 0x13, 0xcc, 0xeb, 0x59, 0x8b,
- 0x92, 0x69, 0x95, 0xf1, 0xfb, 0x40, 0xff, 0xe9, 0x5e, 0xc5, 0x41,
- 0xbb, 0x56, 0x3a, 0xd0, 0x76, 0xe3, 0x4b, 0x81, 0x06, 0x0a, 0x97,
- 0x55, 0x95, 0x33, 0x8a, 0xac, 0x66, 0x7e, 0x1a, 0x47, 0x97, 0xb3,
- 0x7e, 0x18, 0xad, 0xd1, 0x22, 0x90, 0x91, 0x85, 0x46, 0x27, 0xa4,
- 0xda, 0x29, 0x22, 0xbb, 0xf0, 0x32, 0xda, 0x5a, 0xff, 0xc8, 0xec,
- 0xa9, 0x12, 0x72, 0x57, 0xa6, 0xdd, 0x0e, 0x49, 0x72, 0xe2, 0xb5,
- 0xfc, 0xe8, 0x82, 0xa4, 0x3d, 0x31, 0x85, 0x2b, 0x6d, 0x00, 0xe0,
- 0xe1, 0x91, 0xbb, 0x85, 0x7e, 0x09, 0xfe, 0xbc, 0xea, 0x1a, 0xe0,
- 0x61, 0x53, 0x2b, 0x48, 0x94, 0x8c, 0x4b, 0x25, 0xd8, 0x92, 0x4e,
- 0x9a, 0x53, 0x8f, 0xf4, 0x3d, 0x7e, 0xb0, 0x3c, 0xfd, 0xe5, 0x6d,
- 0xee, 0x13, 0x7b, 0xfa, 0xc6, 0xfa, 0x11, 0x88, 0x1c, 0xb9, 0x02,
- 0x8e, 0x53, 0xef, 0x92, 0xe2, 0xb1, 0xf9, 0x81, 0xef, 0x06, 0x17,
- 0xff, 0xba, 0x28, 0xc9, 0xbf, 0x2f, 0xb0, 0x6e, 0x27, 0xb8, 0x38,
- 0xc4, 0x3f, 0x36, 0x6c, 0x82, 0x90, 0x0c, 0x86, 0x22, 0x0e, 0xe0,
- 0x03, 0x88, 0xc5, 0x29, 0x65, 0xa5, 0x11, 0x6d, 0xac, 0xba, 0x7f,
- 0x78, 0xcd, 0xbc, 0xe9, 0xf4, 0xf5, 0x39, 0x76, 0xfb, 0x31, 0x80,
- 0x65, 0x8b, 0x08, 0x01, 0x3b, 0x73, 0xce, 0x57, 0x50, 0xb7, 0xe9,
- 0x60, 0x6d, 0xd6, 0x35, 0x71, 0xf8, 0x9a, 0xc7, 0x68, 0x2a, 0x9e,
- 0xc0, 0x10, 0xe8, 0x10, 0x26, 0xbc, 0x1f, 0x35, 0xa5, 0x8d, 0xb8,
- 0x8c, 0x20, 0xd8, 0xcf, 0x2f, 0xb4, 0xa6, 0x26, 0xea, 0x3e, 0x54,
- 0xa5, 0xff, 0xda, 0x2b, 0xab, 0x79, 0x57, 0x1d, 0x5f, 0xe1, 0x90,
- 0xd2, 0xa2, 0xb1, 0x24, 0x21, 0xda, 0x88, 0xbd, 0x94, 0x30, 0xa8,
- 0x5c, 0x20, 0xbf, 0xe3, 0x9b, 0x88, 0xeb, 0x82, 0x33, 0xcb, 0xcb,
- 0xad, 0xa3, 0x3d, 0x97, 0x1a, 0xd0, 0x9b, 0xb3, 0x0f, 0x20, 0x29,
- 0xeb, 0x48, 0x3a, 0xaa, 0x81, 0x04, 0x78, 0x82, 0x28, 0x41, 0xcb,
- 0xac, 0x82, 0xdd, 0x84, 0xe4, 0x46, 0x6c, 0x40, 0xad, 0x8d, 0x02,
- 0xb5, 0xa6, 0xac, 0xb2, 0x6d, 0x36, 0x1c, 0x0a, 0x08, 0xda, 0x25,
- 0x48, 0x0c, 0x65, 0xe5, 0xc4, 0xc0, 0xf5, 0xda, 0x37, 0x8c, 0xa9,
- 0x0c, 0xe6, 0xca, 0x81, 0x66, 0x06, 0x2e, 0x84, 0x60, 0x7f, 0xbb,
- 0x58, 0x57, 0x8a, 0xa6, 0xed, 0xa1, 0x46, 0xe6, 0x6b, 0x74, 0x16,
- 0x36, 0x65, 0xe4, 0xcf, 0x8e, 0x54, 0xa5, 0xc9, 0x9a, 0xa5, 0x27,
- 0x3c, 0x44, 0x7e, 0x55, 0x1d, 0x11, 0x93, 0xd6, 0x70, 0xf1, 0x93,
- 0x08, 0x3c, 0x62, 0xd7, 0x9c, 0x04, 0x83, 0x70, 0xcb, 0x0f, 0x87,
- 0x26, 0x6f, 0x45, 0xd8, 0xc7, 0xe7, 0x5c, 0xbf, 0x39, 0x5d, 0x90,
- 0x2b, 0xb3, 0xa9, 0x79, 0x39, 0x4e, 0xfd, 0x38, 0x8b, 0x2d, 0x92,
- 0x3d, 0xdc, 0x62, 0x88, 0xad, 0xfd, 0x74, 0xfa, 0x03, 0xca, 0xd8,
- 0x90, 0x46, 0x77, 0xcd, 0x15, 0x9e, 0x4f, 0xc5, 0x65, 0x8f, 0x8f,
- 0xba, 0x13, 0x8b, 0xda, 0x18, 0xac, 0xd9, 0xe1, 0x7b, 0xae, 0x72,
- 0x2b, 0xf6, 0x37, 0x1a, 0xce, 0x10, 0x29, 0x3a, 0xb1, 0x45, 0xae,
- 0x7a, 0xf3, 0x2e, 0x83, 0x90, 0x0b, 0x25, 0x62, 0xff, 0x18, 0x4d,
- 0xe2, 0xe1, 0x87, 0x73, 0x58, 0x31, 0x59, 0x9f, 0x7b, 0xde, 0x3a,
- 0xca, 0x90, 0xc0, 0xea, 0x1a, 0x97, 0x00, 0xd1, 0xb7, 0x0f, 0x41,
- 0x15, 0xee, 0xb4, 0xca, 0xe9, 0xf4, 0x7d, 0x38, 0x05, 0xdb, 0xd1,
- 0x6b, 0x79, 0xdd, 0xad, 0x1e, 0x44, 0x0c, 0xd0, 0xc5, 0x7c, 0x14,
- 0x58, 0x18, 0x21, 0x6c, 0xb1, 0x0f, 0x3b, 0x5d, 0x1b, 0xc0, 0xc3,
- 0xf3, 0xae, 0x44, 0x94, 0xd1, 0xe2, 0xca, 0x7c, 0x84, 0x45, 0x20,
- 0x02, 0xad, 0xbd, 0xd8, 0x81, 0xb4, 0x24, 0xf8, 0xaa, 0xe9, 0xcf,
- 0xf1, 0xd1, 0xac, 0x7f, 0x10, 0x00, 0x30, 0x62, 0x39, 0xc3, 0xff,
- 0xbc, 0x36, 0x80, 0xd9, 0xd8, 0x1d, 0xaa, 0x41, 0xfa, 0xa2, 0x8f,
- 0x38, 0xa3, 0x62, 0xe9, 0x12, 0xe2, 0xdb, 0x38, 0x7a, 0x2e, 0x53,
- 0x00, 0xba, 0x78, 0x28, 0xad, 0xca, 0xc0, 0x54, 0x30, 0x95, 0xa8,
- 0x95, 0x1b, 0xe1, 0x16, 0x24, 0xf2, 0x9c, 0x13, 0xc6, 0x6d, 0x1d,
- 0x7e, 0x97, 0x3e, 0xa4, 0x0e, 0x70, 0x28, 0x74, 0xde, 0xaf, 0xfc,
- 0x31, 0x08, 0x04, 0xea, 0xf7, 0x0f, 0x37, 0xb2, 0x6f, 0xdb, 0xd4,
- 0x86, 0xe3, 0x2b, 0x7a, 0x1b, 0xa9, 0x3c, 0x28, 0x23, 0xf1, 0x5d,
- 0x32, 0xab, 0x39, 0xbe, 0x47, 0xa8, 0xe5, 0x13, 0x2c, 0xc6, 0x3a,
- 0x53, 0x71, 0xd9, 0x55, 0xcd, 0xd2, 0x47, 0xa4, 0x92, 0x4d, 0x73,
- 0x64, 0x12, 0xa7, 0x82, 0x54, 0x14, 0x79, 0x8f, 0x47, 0x0b, 0xa9,
- 0x37, 0x50, 0x87, 0xdd, 0x38, 0xa8, 0x25, 0x84, 0x5c, 0x9d, 0xeb,
- 0x9f, 0x2e, 0xcf, 0x12, 0x9f, 0x31, 0x9f, 0x0b, 0xf9, 0xd2, 0xa2,
- 0x12, 0xff, 0xfd, 0x4e, 0xc8, 0xb8, 0x10, 0xaf, 0xbe, 0x76, 0x79,
- 0xb6, 0x18, 0xb4, 0x57, 0xd7, 0x10, 0xc2, 0xb8, 0x7c, 0x8b, 0xc7,
- 0xac, 0x77, 0x62, 0x88, 0xeb, 0x1d, 0xab, 0xf0, 0xa2, 0x3c, 0x95,
- 0x41, 0x3d, 0xc5, 0xbd, 0xd2, 0x93, 0xc4, 0x8b, 0x7c, 0xb5, 0xfc,
- 0xbe, 0x67, 0xbb, 0x7c, 0x81, 0x45, 0x71, 0x0e, 0x32, 0xf4, 0xd0,
- 0x3b, 0xe9, 0xcd, 0xfa, 0x1c, 0xc2, 0x96, 0xe2, 0xe8, 0xda, 0x7e,
- 0x0f, 0xc0, 0xaa, 0x7e, 0xae, 0x38, 0x3e, 0xd8, 0x90, 0x99, 0x3f,
- 0xec, 0x9b, 0x63, 0x2f, 0xa8, 0x5b, 0x0b, 0x7e, 0xe9, 0x1a, 0x35,
- 0x0b, 0x3d, 0x27, 0xd1, 0xa8, 0x20, 0xf3, 0xad, 0xfd, 0xe3, 0x7c,
- 0xc5, 0xa8, 0x67, 0x4e, 0x01, 0x83, 0xe9, 0xbf, 0xf6, 0x1a, 0x8a,
- 0xb0, 0xb9, 0xcf, 0xac, 0x4a, 0x6d, 0x29, 0xa3, 0x72, 0xa9, 0xb3,
- 0x55, 0x28, 0x15, 0x52, 0x0a, 0xb1, 0xed, 0x15, 0x90, 0x68, 0xc9,
- 0xab, 0x63, 0x32, 0x02, 0xd1, 0x39, 0x1d, 0x3a, 0xf0, 0x3e, 0xd5,
- 0xf8, 0xa8, 0xed, 0xd2, 0xbb, 0xb0, 0xa3, 0x1b, 0xd0, 0x37, 0xc7,
- 0x26, 0xbb, 0xb1, 0x7c, 0x1a, 0xc5, 0x3c, 0xa0, 0xcb, 0xa6, 0xdc,
- 0x92, 0xa9, 0x84, 0x10, 0x3d, 0xd5, 0x06, 0xbf, 0xe3, 0x00, 0xf3,
- 0x16, 0x23, 0x38, 0x5e, 0x9f, 0x8d, 0xeb, 0x39, 0x67, 0x78, 0xfb,
- 0xd9, 0xef, 0xc1, 0xff, 0xc4, 0x0b, 0x8d, 0x37, 0x6d, 0x1b, 0xc0,
- 0x53, 0xc9, 0x94, 0xf2, 0xd5, 0x74, 0xf7, 0x89, 0x1f, 0xc6, 0x4f,
- 0x44, 0xe3, 0x78, 0x8c, 0x02, 0xbf, 0x39, 0xbc, 0x69, 0xdb, 0x1f,
- 0x22, 0x2e, 0x2c, 0xd4, 0xff, 0x98, 0xdc, 0xda, 0x8c, 0x65, 0x2d,
- 0xb1, 0x22, 0x9a, 0xd6, 0xec, 0x6f, 0x96, 0xae, 0x75, 0x40, 0x66,
- 0x22, 0xec, 0x5a, 0x86, 0xcd, 0x54, 0x30, 0xab, 0x9b, 0x2f, 0xe1,
- 0xab, 0xec, 0xce, 0x1d, 0xa6, 0x1c, 0xa2, 0xce, 0x09, 0xa0, 0xa2,
- 0x12, 0x57, 0x40, 0x56, 0x3c, 0xce, 0x13, 0x61, 0x44, 0x65, 0xd9,
- 0x18, 0x4a, 0x2e, 0xe0, 0xcb, 0xc3, 0x5e, 0x2d, 0x8d, 0x78, 0xa8,
- 0x9b, 0xf3, 0x80, 0x5f, 0x30, 0x5c, 0xf8, 0x2f, 0x12, 0xaf, 0xfd,
- 0x85, 0x60, 0x3d, 0x2d, 0x35, 0x39, 0xe4, 0xd9, 0x91, 0x01, 0x60,
- 0x07, 0xa3, 0xfb, 0x1c, 0x7b, 0x26, 0xaa, 0x9d, 0x3d, 0x01, 0xc5,
- 0xaf, 0xb0, 0x3d, 0x08, 0x47, 0x92, 0x0d, 0x14, 0xc1, 0x09, 0xd0,
- 0xc0, 0xea, 0xf3, 0x8b, 0x80, 0x10, 0x43, 0xbb, 0x9f, 0x5e, 0x22,
- 0x8e, 0x1b, 0xdb, 0x72, 0xc4, 0x38, 0x6f, 0x83, 0x7f, 0x88, 0x03,
- 0xe7, 0x93, 0xc5, 0x47, 0x5a, 0x3f, 0xba, 0x4c, 0x4e, 0xd0, 0x66,
- 0xdb, 0x6f, 0x1c, 0x4a, 0x37, 0x41, 0x2c, 0xac, 0x1c, 0x0a, 0x22,
- 0x61, 0xdf, 0x3e, 0xf9, 0x87, 0x7e, 0x16, 0xe6, 0x53, 0x20, 0x1e,
- 0x2f, 0x45, 0x93, 0x71, 0x9f, 0x53, 0xa5, 0x02, 0xd0, 0xba, 0x5a,
- 0x6d, 0xfa, 0xca, 0x1a, 0xc1, 0x48, 0x28, 0xc7, 0x8d, 0x0b, 0xb2,
- 0xaf, 0xd4, 0x66, 0xc9, 0xe1, 0xa1, 0xbb, 0x3f, 0xee, 0x0d, 0x9a,
- 0x7a, 0x9d, 0xcf, 0x20, 0x92, 0x62, 0x06, 0x9b, 0x58, 0x77, 0x89,
- 0xe8, 0xed, 0xa8, 0xf7, 0xc0, 0xfb, 0xe0, 0xa9, 0xba, 0xa0, 0x93,
- 0xdb, 0x1a, 0x19, 0x55, 0x27, 0x58, 0x59, 0xaa, 0x65, 0x73, 0xdb,
- 0x71, 0x57, 0xdb, 0x3c, 0xcc, 0x1c, 0x86, 0x85, 0xf9, 0x2b, 0x6f,
- 0xbc, 0xc5, 0x41, 0x51, 0x59, 0x58, 0x27, 0xc8, 0x5e, 0xf2, 0x60,
- 0x4e, 0xbf, 0x85, 0xb8, 0xb1, 0xc6, 0x70, 0xe2, 0x1c, 0xd3, 0x1d,
- 0x80, 0x1e, 0x38, 0x6f, 0x09, 0x9b, 0x2c, 0x82, 0x00, 0xc0, 0xc4,
- 0x32, 0xc2, 0x83, 0x71, 0xb0, 0x69, 0x34, 0x81, 0x20, 0xaa, 0x40,
- 0x43, 0xd3, 0x25, 0x6b, 0x93, 0x5c, 0xfe, 0x59, 0x58, 0xfe, 0xe6,
- 0x65, 0x0a, 0x56, 0x11, 0x48, 0xce, 0xea, 0x8e, 0x5e, 0xd3, 0x1c,
- 0x56, 0xb3, 0x47, 0x62, 0x5d, 0xb7, 0x07, 0x83, 0xf7, 0xd1, 0x3b,
- 0x6e, 0xf2, 0x1c, 0xf6, 0xbe, 0x73, 0x3d, 0x89, 0xcf, 0x90, 0x02,
- 0xf7, 0x1b, 0x83, 0xf4, 0x03, 0x62, 0xce, 0xc2, 0x9a, 0x91, 0x8c,
- 0x0c, 0x33, 0xc5, 0xb5, 0x0c, 0x88, 0x56, 0x5f, 0x2d, 0x43, 0x14,
- 0xef, 0x45, 0x4e, 0x22, 0x66, 0xc7, 0xff, 0xbe, 0xd6, 0xc7, 0x09,
- 0x68, 0x4a, 0x26, 0xec, 0x3c, 0x7a, 0x2b, 0x30, 0xe5, 0x69, 0xc1,
- 0x3b, 0x4e, 0x65, 0x5b, 0xf2, 0xa7, 0x95, 0x7d, 0x52, 0xbc, 0x06,
- 0x33, 0x0d, 0x6e, 0x98, 0x71, 0x08, 0xe9, 0x77, 0x6c, 0xb0, 0xbd,
- 0x07, 0x5b, 0x0a, 0x99, 0xc7, 0xbf, 0xa7, 0xdf, 0x5f, 0x37, 0x4b,
- 0xfc, 0x92, 0xce, 0x69, 0x55, 0x80, 0x97, 0x83, 0x81, 0x25, 0x52,
- 0x8c, 0xd2, 0xa4, 0x00, 0x04, 0xe7, 0xc6, 0x91, 0x9c, 0x2b, 0x9f,
- 0x31, 0xba, 0x19, 0x93, 0x38, 0xeb, 0x34, 0xd1, 0x44, 0x74, 0x04,
- 0x49, 0x2f, 0x3d, 0xf2, 0xbf, 0x19, 0xca, 0x75, 0x07, 0x08, 0xfc,
- 0xb2, 0xf8, 0x24, 0xf1, 0xc8, 0x7a, 0x0b, 0x67, 0x69, 0x00, 0x48,
- 0xff, 0xe4, 0x50, 0xe1, 0xcd, 0x2f, 0x0f, 0x23, 0x4a, 0xfb, 0x04,
- 0x65, 0x4b, 0xd7, 0x8b, 0xd2, 0xfd, 0x2f, 0x0a, 0x2d, 0xc2, 0xb0,
- 0x79, 0xcf, 0x31, 0x26, 0xf3, 0xe8, 0x4e, 0xe6, 0x49, 0xfb, 0x0a,
- 0x21, 0x89, 0x49, 0x76, 0x79, 0xe9, 0x9a, 0xff, 0xe9, 0x27, 0xda,
- 0x10, 0x79, 0xcc, 0x7b, 0xba, 0x5b, 0x12, 0x7f, 0xb0, 0x19, 0xfb,
- 0xd7, 0x48, 0xb7, 0x24, 0xf8, 0x59, 0xc7, 0x17, 0x55, 0xfc, 0x8b,
- 0x21, 0x57, 0xd6, 0xab, 0x35, 0x81, 0x14, 0x6c, 0xbd, 0x4c, 0xc2,
- 0x09, 0xd6, 0x1d, 0x98, 0x15, 0x14, 0xd3, 0x89, 0x24, 0x17, 0x18,
- 0x98, 0xe3, 0x94, 0x95, 0xba, 0x5e, 0x38, 0x0d, 0x4a, 0x61, 0x6f,
- 0x28, 0xc3, 0x99, 0x8d, 0x7f, 0x56, 0x5d, 0xc2, 0xf0, 0x79, 0x4c,
- 0xba, 0x09, 0x2f, 0x36, 0x9c, 0x38, 0x19, 0xd0, 0x67, 0x52, 0xeb,
- 0x9a, 0x0a, 0x79, 0x37, 0x81, 0x7a, 0x38, 0x0b, 0xb9, 0xb1, 0x67,
- 0x70, 0x5a, 0x29, 0xa1, 0xc7, 0x90, 0x3f, 0x02, 0xb4, 0x63, 0x1a,
- 0x16, 0x66, 0x59, 0x9e, 0xe5, 0x75, 0x61, 0x38, 0xda, 0x27, 0xd5,
- 0x78, 0xb3, 0x03, 0xd3, 0xbe, 0x0a, 0xb2, 0x8d, 0xad, 0xca, 0xe9,
- 0xf2, 0xdf, 0x9d, 0x99, 0xab, 0x6b, 0x14, 0x1b, 0x02, 0x35, 0xc7,
- 0xba, 0x4b, 0x0a, 0x48, 0x0a, 0xf0, 0xc3, 0x9a, 0x12, 0xb6, 0x8f,
- 0xa6, 0xab, 0xe6, 0x8c, 0xaa, 0xab, 0x13, 0xab, 0x4c, 0xdb, 0x1a,
- 0xcf, 0x19, 0x54, 0x13, 0xa0, 0xde, 0x36, 0xd8, 0x03, 0x0c, 0x7f,
- 0xc1, 0x99, 0x7a, 0x99, 0x4d, 0xc3, 0xa0, 0xc6, 0x04, 0x62, 0xec,
- 0x44, 0x4c, 0x59, 0x3a, 0xab, 0x36, 0x5f, 0xd0, 0xba, 0x56, 0x27,
- 0xf1, 0xff, 0x02, 0xec, 0x30, 0xa8, 0x29, 0xac, 0x0a, 0x02, 0xeb,
- 0x0c, 0x40, 0x73, 0xf5, 0x58, 0xf2, 0x4e, 0x21, 0x6a, 0x1c, 0xc4,
- 0x30, 0x4c, 0x33, 0x6d, 0xb5, 0x66, 0xb6, 0x68, 0x2b, 0x5c, 0xc8,
- 0xe2, 0xab, 0x9b, 0x76, 0x30, 0x02, 0xdd, 0x6e, 0xe3, 0x7b, 0x14,
- 0x9a, 0x25, 0xce, 0x9f, 0x8e, 0x3f, 0x4f, 0xee, 0x36, 0x35, 0xe4,
- 0x35, 0xa2, 0x65, 0x10, 0xac, 0xd4, 0xca, 0xd4, 0xd5, 0xb1, 0x69,
- 0x8e, 0xa5, 0xfd, 0xcb, 0x80, 0xa5, 0x77, 0xf9, 0xcc, 0xbd, 0xd6,
- 0x9f, 0x03, 0x98, 0xcb, 0x5f, 0x94, 0x38, 0x78, 0xa9, 0xe4, 0x6a,
- 0xc8, 0x8e, 0xcb, 0xd4, 0x2e, 0x93, 0xd9, 0x0c, 0x42, 0x4b, 0xfb,
- 0xa0, 0x60, 0x65, 0xab, 0x22, 0x47, 0x6b, 0xcd, 0xba, 0x0d, 0x0d,
- 0xc1, 0xd9, 0x8f, 0x44, 0x9b, 0xb7, 0x03, 0xec, 0x18, 0x51, 0x5e,
- 0xc4, 0x24, 0x6a, 0x24, 0x89, 0xbb, 0x6a, 0x56, 0x45, 0xbb, 0xe0,
- 0xbf, 0x6e, 0x47, 0x49, 0x5b, 0xf5, 0x33, 0x86, 0x9c, 0xa8, 0x7f,
- 0x7a, 0x07, 0x19, 0x44, 0xe9, 0x53, 0x85, 0x5e, 0x37, 0x9f, 0x4a,
- 0x7e, 0xde, 0x97, 0xdb, 0xdd, 0x9c, 0xd1, 0x6f, 0xaf, 0x19, 0x7a,
- 0xba, 0xfa, 0xcf, 0xa0, 0xfe, 0x75, 0x34, 0x56, 0xf2, 0x9a, 0x78,
- 0xba, 0x78, 0xaf, 0x78, 0xb4, 0x2f, 0x19, 0x6a, 0xc5, 0xfb, 0xd5,
- 0x87, 0x1a, 0xab, 0x1f, 0x2e, 0xe9, 0xfe, 0xbf, 0xba, 0x5e, 0x55,
- 0x79, 0x40, 0xc1, 0xc9, 0xae, 0x6a, 0xc4, 0x70, 0xf8, 0xd8, 0xa0,
- 0x48, 0x2a, 0x2f, 0x99, 0x64, 0xa8, 0xb3, 0x1f, 0xda, 0xea, 0x29,
- 0x37, 0x98, 0x63, 0xe3, 0xbf, 0xff, 0x5d, 0x81, 0xf2, 0xad, 0xe3,
- 0xe6, 0xab, 0x23, 0xf3, 0x7d, 0x70, 0xaa, 0xaf, 0xda, 0x14, 0x57,
- 0x18, 0x94, 0xa1, 0x37, 0x49, 0x4f, 0x36, 0x63, 0x9d, 0x9b, 0xa1,
- 0x14, 0x03, 0x36, 0xbc, 0x63, 0x21, 0x65, 0x49, 0x75, 0xeb, 0x27,
- 0x0a, 0x2d, 0x95, 0x76, 0x88, 0xf9, 0x09, 0xcb, 0x17, 0x84, 0xcb,
- 0x07, 0x8b, 0xff, 0x5f, 0x4f, 0x6d, 0x7a, 0x41, 0xa1, 0x71, 0x6b,
- 0x3c, 0xda, 0x7f, 0xfd, 0x28, 0x8e, 0x5f, 0x50, 0xeb, 0x0f, 0xdb,
- 0x18, 0xe2, 0x91, 0x5a, 0xc1, 0x3d, 0x06, 0x30, 0x24, 0xf5, 0xc6,
- 0x9e, 0x3e, 0x71, 0xf9, 0x64, 0x00, 0x77, 0x5c, 0xb9, 0xea, 0x0a,
- 0x97, 0xdd, 0x79, 0xa0, 0x2b, 0x65, 0xec, 0x78, 0xbc, 0x20, 0xd3,
- 0x77, 0xd6, 0x15, 0xfc, 0x5a, 0x58, 0x0c, 0xd4, 0x3e, 0xcf, 0xa1,
- 0x24, 0x44, 0xf9, 0xef, 0xe4, 0x33, 0x0d, 0xf6, 0x23, 0x36, 0x46,
- 0xf7, 0x8a, 0xc5, 0xed, 0x99, 0x5b, 0x35, 0xd3, 0xa3, 0xcc, 0xed,
- 0xc9, 0x2b, 0xdf, 0xc8, 0xbe, 0x83, 0x27, 0x00, 0xde, 0x54, 0x12,
- 0xd1, 0x28, 0x51, 0x1c, 0x86, 0xc2, 0x8a, 0x6a, 0xe9, 0x54, 0xa1,
- 0x29, 0x4a, 0x69, 0x0a, 0x1c, 0x95, 0x00, 0xa5, 0xb5, 0x5a, 0x87,
- 0x30, 0xa3, 0xc5, 0xcc, 0xa6, 0x56, 0x81, 0x12, 0x98, 0x8f, 0x9e,
- 0xb9, 0xb8, 0x48, 0xe3, 0x3f, 0x44, 0xa1, 0x74, 0xad, 0x97, 0x2a,
- 0x2d, 0x7f, 0x07, 0x46, 0x9d, 0xdf, 0xdc, 0xab, 0x6b, 0x8e, 0x27,
- 0x5d, 0x93, 0xc7, 0xb9, 0xca, 0x64, 0x7e, 0x44, 0xf7, 0xc8, 0xca,
- 0xca, 0x13, 0xde, 0xff, 0x8c, 0xc8, 0xb6, 0x98, 0xda, 0x2c, 0xe1,
- 0x6d, 0xba, 0xb9, 0x50, 0xc1, 0xef, 0x2e, 0x00, 0x53, 0x09, 0x5c,
- 0xd9, 0xca, 0x0a, 0xd0, 0x3f, 0x22, 0xb3, 0xae, 0x26, 0xed, 0xd4,
- 0xec, 0xaa, 0xf2, 0x88, 0x26, 0x4a, 0xe8, 0x5d, 0xfa, 0x3d, 0xef,
- 0x8a, 0x88, 0xbe, 0x79, 0x13, 0x50, 0x2e, 0x56, 0x46, 0x43, 0x98,
- 0x89, 0x05, 0xab, 0x70, 0xdc, 0xd9, 0x5f, 0x0f, 0x1b, 0x87, 0xee,
- 0x0b, 0x4a, 0x47, 0xa6, 0x79, 0x46, 0x8d, 0x84, 0xbe, 0xb8, 0x66,
- 0x82, 0x24, 0xfa, 0x06, 0x67, 0xf9, 0x66, 0xf4, 0x5f, 0xe4, 0xbb,
- 0x83, 0x6b, 0x41, 0xd7, 0x9f, 0x9b, 0x7c, 0x69, 0x42, 0x02, 0x54,
- 0xb3, 0x14, 0xcb, 0xf2, 0x5c, 0xbe, 0xf5, 0x16, 0xd7, 0xb4, 0xf1,
- 0x19, 0xdf, 0x6d, 0x5d, 0x27, 0x38, 0x9e, 0xa0, 0x74, 0x5d, 0x76,
- 0x48, 0x67, 0x70, 0x55, 0x33, 0x67, 0x83, 0xde, 0x83, 0xe0, 0x53,
- 0x1c, 0xc5, 0x85, 0xab, 0xce, 0x91, 0xd0, 0x70, 0xa7, 0x43, 0x87,
- 0x31, 0x17, 0xe3, 0x84, 0xe0, 0xb9, 0x24, 0x02, 0x58, 0x1f, 0x6f,
- 0x84, 0xbe, 0x8a, 0x0a, 0x83, 0x6b, 0x06, 0x43, 0xe6, 0x52, 0x9d,
- 0xf2, 0x07, 0xeb, 0xd6, 0x91, 0x3c, 0xa7, 0xe8, 0x4e, 0x9b, 0xe8,
- 0xa2, 0xa6, 0x45, 0x66, 0xe0, 0xf9, 0xb5, 0x1d, 0x92, 0x21, 0x5b,
- 0xbd, 0xf1, 0xe5, 0x51, 0xdb, 0xde, 0xf6, 0xb8, 0x57, 0x8c, 0x96,
- 0xc1, 0x5c, 0x75, 0x89, 0xab, 0x84, 0x20, 0xdd, 0x1f, 0xac, 0xdd,
- 0xfa, 0xd8, 0x52, 0xde, 0xce, 0x30, 0x15, 0x0a, 0xad, 0x7c, 0x4a,
- 0x9a, 0xe8, 0x82, 0xc4, 0x54, 0x81, 0x9d, 0x3a, 0x52, 0xc1, 0x6d,
- 0x29, 0xa9, 0x1a, 0x0d, 0x7b, 0x49, 0xd3, 0x63, 0xa0, 0xca, 0xb4,
- 0x3e, 0xcb, 0x62, 0xb0, 0xc1, 0x67, 0x4b, 0x27, 0x69, 0x68, 0xd5,
- 0x8b, 0x23, 0x0d, 0x56, 0xb3, 0x2f, 0xfc, 0xc8, 0x96, 0xc4, 0xbb,
- 0xe6, 0xe0, 0xa7, 0x68, 0x42, 0xaf, 0xd1, 0xb4, 0x07, 0xe5, 0x20,
- 0x42, 0x59, 0x46, 0x60, 0x8c, 0x7c, 0x94, 0xcb, 0xb0, 0xe9, 0xcd,
- 0x23, 0xe4, 0x4f, 0x54, 0xfe, 0x1b, 0x16, 0xd9, 0xd9, 0xb0, 0x58,
- 0x72, 0xa6, 0xa7, 0x6f, 0x61, 0x4a, 0x73, 0x30, 0x9f, 0xff, 0x15,
- 0x6b, 0xed, 0x83, 0x43, 0xbf, 0xd1, 0xa0, 0x31, 0x5d, 0xeb, 0xb3,
- 0x5f, 0x88, 0xd5, 0x8a, 0x58, 0x5f, 0xd1, 0xf1, 0x1d, 0x28, 0x44,
- 0x74, 0x06, 0x92, 0xa8, 0x8e, 0x38, 0x30, 0x1c, 0xa6, 0x9b, 0xe8,
- 0x29, 0x4f, 0x58, 0xf3, 0xf1, 0xa2, 0x88, 0xf8, 0xe4, 0x47, 0x55,
- 0xfa, 0xa5, 0xf2, 0x4a, 0xff, 0x09, 0x7d, 0x8e, 0x4a, 0x3a, 0x66,
- 0xdc, 0x9c, 0x52, 0x96, 0xdf, 0x19, 0xaa, 0x8d, 0x94, 0xaa, 0xdb,
- 0xa4, 0xe3, 0xb5, 0x21, 0x7f, 0x77, 0x65, 0x34, 0xc0, 0xba, 0x4f,
- 0x04, 0xe3, 0xe9, 0x88, 0x29, 0x6d, 0xa9, 0x09, 0x65, 0x3c, 0xf5,
- 0xbc, 0x02, 0x6b, 0x71, 0x80, 0xa0, 0x4e, 0x2b, 0x90, 0x55, 0xa7,
- 0xcf, 0x32, 0x76, 0xd3, 0xb0, 0x61, 0x18, 0x13, 0xc4, 0xa9, 0x2b,
- 0x26, 0xd0, 0xb9, 0xdf, 0x91, 0xfd, 0x30, 0x3a, 0xbf, 0xf6, 0x48,
- 0x82, 0x89, 0xd7, 0xfd, 0x8d, 0x43, 0x23, 0xa2, 0x07, 0x66, 0x7b,
- 0x18, 0x92, 0x6e, 0xf3, 0x00, 0xbd, 0x3d, 0x28, 0x0b, 0x04, 0xa5,
- 0x9c, 0xd8, 0x8b, 0x75, 0x45, 0x56, 0x49, 0xa7, 0x1d, 0x41, 0xaa,
- 0x33, 0x79, 0xb6, 0xcc, 0x32, 0x93, 0x5b, 0xb1, 0x93, 0x6c, 0x25,
- 0x70, 0x46, 0x85, 0xa8, 0x12, 0xc0, 0x09, 0x0a, 0xbd, 0x1b, 0xbd,
- 0x50, 0xd7, 0x16, 0xd7, 0x31, 0xfe, 0x24, 0xe8, 0xf3, 0xe4, 0x3d,
- 0x71, 0xdb, 0x1e, 0xa3, 0xfa, 0xcd, 0xb5, 0xbb, 0xde, 0x55, 0xa3,
- 0x9f, 0x0a, 0x67, 0x84, 0x95, 0x00, 0x13, 0x2e, 0xd9, 0x44, 0x95,
- 0xbc, 0x18, 0x30, 0x92, 0x49, 0x1d, 0xdc, 0x1a, 0x90, 0x5f, 0x3a,
- 0xe3, 0x46, 0xbf, 0x4a, 0x7d, 0xef, 0xe6, 0xc1, 0x71, 0xfd, 0x5b,
- 0x9d, 0x80, 0xa4, 0xee, 0xe5, 0x9c, 0x6d, 0xb3, 0x21, 0x5d, 0xc3,
- 0x2b, 0x03, 0xec, 0xbf, 0x40, 0xb6, 0xbd, 0xf7, 0x95, 0xb9, 0x76,
- 0xb7, 0x17, 0xa8, 0xcc, 0x0b, 0x23, 0x75, 0x2f, 0xf0, 0x17, 0x46,
- 0xea, 0x4d, 0x90, 0x0b, 0x58, 0x74, 0x5c, 0x88, 0x54, 0x27, 0x1f,
- 0x9e, 0x9a, 0x1b, 0x3f, 0x3f, 0xfa, 0x68, 0x48, 0x97, 0x4e, 0x6c,
- 0xa1, 0xa8, 0xa1, 0xc1, 0xdd, 0x27, 0x9e, 0x7f, 0xe0, 0x92, 0x20,
- 0x8b, 0xf4, 0x11, 0x8d, 0xcb, 0x9a, 0x85, 0xa6, 0x56, 0xf0, 0x47,
- 0x13, 0xda, 0x6c, 0xbd, 0x28, 0x38, 0x5e, 0x81, 0x8c, 0x04, 0xc0,
- 0x7f, 0x4b, 0x0f, 0x28, 0xd6, 0x61, 0x32, 0xb2, 0x66, 0x91, 0xd6,
- 0x41, 0xcf, 0x57, 0x31, 0xf5, 0xb3, 0x1a, 0xe2, 0xcc, 0xef, 0x0e,
- 0x43, 0x04, 0xfb, 0x4d, 0x64, 0xc0, 0x2a, 0x29, 0xbd, 0x9b, 0xbc,
- 0xb5, 0x64, 0x90, 0xcb, 0x6a, 0x70, 0xff, 0xb9, 0x47, 0xd1, 0x78,
- 0x25, 0x96, 0x72, 0xd8, 0x26, 0xd7, 0x5f, 0xc5, 0x59, 0x15, 0x95,
- 0xf1, 0x7b, 0x89, 0x5b, 0x1e, 0x0c, 0x2d, 0x3e, 0xcc, 0xc4, 0x3f,
- 0x42, 0xa9, 0xd5, 0x20, 0xb6, 0x68, 0x8b, 0x77, 0x85, 0x42, 0x8b,
- 0xb3, 0x5c, 0xa2, 0xa7, 0x97, 0x4e, 0x4e, 0xa3, 0x30, 0xb8, 0xa4,
- 0x81, 0x54, 0x76, 0x63, 0xf2, 0xaf, 0x61, 0xed, 0x23, 0xc8, 0xbb,
- 0x7e, 0x5d, 0x79, 0x85, 0x19, 0x6c, 0xbe, 0x2e, 0x7d, 0x11, 0x6a,
- 0x37, 0xcc, 0x13, 0x9d, 0x67, 0xac, 0x89, 0x9b, 0xb8, 0x64, 0xb2,
- 0x1c, 0xac, 0x6f, 0x16, 0x8e, 0x1f, 0x06, 0x12, 0xb6, 0xe8, 0x59,
- 0x75, 0x2f, 0xb5, 0x76, 0x15, 0x18, 0xc7, 0x77, 0xd5, 0xca, 0xc8,
- 0x8a, 0x57, 0xe0, 0x6d, 0xc7, 0xf4, 0x50, 0x93, 0xb4, 0xd4, 0x35,
- 0x8e, 0x18, 0x02, 0xcf, 0xe6, 0x75, 0x99, 0xef, 0xc6, 0xf3, 0xf8,
- 0xd9, 0xb8, 0xf5, 0xab, 0x9e, 0x96, 0xce, 0x47, 0x47, 0x87, 0x95,
- 0x1b, 0xd4, 0x90, 0x83, 0x2a, 0xee, 0x50, 0x10, 0xae, 0x16, 0xa4,
- 0x29, 0x26, 0x74, 0xea, 0x01, 0x58, 0xaf, 0x4f, 0x85, 0x4c, 0x64,
- 0xdc, 0x6b, 0x54, 0xeb, 0xbc, 0x55, 0x25, 0x56, 0x2d, 0x3d, 0xc3,
- 0x77, 0x12, 0xa9, 0xae, 0x48, 0xd8, 0xb5, 0xb5, 0x11, 0x33, 0x24,
- 0xa3, 0x1e, 0x87, 0x9c, 0x6f, 0x89, 0x95, 0x95, 0xbb, 0x77, 0xff,
- 0x54, 0xf0, 0x14, 0xcc, 0x8b, 0x27, 0xd7, 0x95, 0xfe, 0x00, 0xcf,
- 0x9a, 0x0d, 0xa5, 0x6e, 0x43, 0x50, 0x84, 0x67, 0x50, 0x6e, 0x68,
- 0xc3, 0x87, 0xcf, 0xb9, 0x1c, 0xb9, 0x7c, 0x73, 0xba, 0x64, 0x27,
- 0x0f, 0x0c, 0x93, 0xdf, 0xd4, 0x1a, 0xd4, 0x13, 0x0e, 0xd5, 0xa6,
- 0xf3, 0x1f, 0xda, 0x24, 0x0a, 0x6a, 0x81, 0x76, 0x89, 0xc7, 0x2b,
- 0xb8, 0xea, 0x86, 0x5a, 0x5e, 0x30, 0x15, 0x7b, 0xfc, 0x1c, 0x2e,
- 0x81, 0xe2, 0x32, 0xfb, 0x16, 0xfd, 0x07, 0x37, 0x8c, 0xdb, 0xc6,
- 0x7b, 0xfb, 0xc1, 0x07, 0xb7, 0x1e, 0xcc, 0x46, 0xf3, 0x96, 0xb1,
- 0xd6, 0xa0, 0xae, 0x3f, 0x76, 0xea, 0x87, 0x6f, 0x7b, 0xd3, 0x01,
- 0x7c, 0xe6, 0xfa, 0x65, 0x56, 0x80, 0xd9, 0xb5, 0x68, 0x53, 0x73,
- 0xb0, 0xbf, 0x1b, 0xd4, 0xec, 0x43, 0x47, 0x33, 0x99, 0x3c, 0xde,
- 0x61, 0xd0, 0x87, 0x38, 0x76, 0xb3, 0xd1, 0x11, 0x31, 0x4b, 0x40,
- 0xb4, 0xf0, 0x72, 0xed, 0xa5, 0xa5, 0x2b, 0xb6, 0xa4, 0xb3, 0xc3,
- 0x47, 0x3e, 0xfd, 0x7c, 0x98, 0x03, 0xdc, 0x68, 0x0e, 0xbe, 0xe8,
- 0x50, 0xe3, 0x52, 0xaf, 0x85, 0x01, 0xeb, 0x1a, 0xc0, 0xd9, 0x78,
- 0x91, 0x4f, 0x55, 0x49, 0x7e, 0x35, 0x59, 0x70, 0xd0, 0xc4, 0x19,
- 0xf8, 0xb4, 0x25, 0x8d, 0x29, 0xa4, 0x22, 0x67, 0x81, 0x6b, 0x55,
- 0xa7, 0x43, 0xc5, 0xb2, 0x4c, 0x46, 0x65, 0xec, 0xc7, 0xa4, 0x3a,
- 0xdc, 0x42, 0x02, 0x81, 0xf0, 0x78, 0xf5, 0x49, 0x30, 0x93, 0x51,
- 0xed, 0x28, 0xb0, 0x87, 0x5a, 0x42, 0x24, 0xee, 0x81, 0x1b, 0x28,
- 0x98, 0xd8, 0x89, 0xa5, 0x81, 0xea, 0x30, 0xb3, 0xf9, 0xc4, 0xa2,
- 0x77, 0x71, 0xd4, 0x9a, 0x1d, 0xcf, 0xaf, 0x01, 0x03, 0x90, 0x0d,
- 0x2b, 0x65, 0xa2, 0x64, 0x9f, 0xa6, 0xc8, 0xb2, 0x4c, 0xa2, 0x90,
- 0x2d, 0xbc, 0xa3, 0x5f, 0xd5, 0x6d, 0xbe, 0x07, 0x3f, 0x79, 0x2c,
- 0xcd, 0x37, 0x3d, 0xae, 0x81, 0x64, 0x3e, 0x32, 0xe0, 0x96, 0x78,
- 0xef, 0x8b, 0x1c, 0x5d, 0xba, 0xec, 0x59, 0xf5, 0x75, 0xb8, 0x68,
- 0x2d, 0x23, 0x93, 0x7e, 0x0d, 0xb1, 0xec, 0x2a, 0xdb, 0xe4, 0xbb,
- 0xb1, 0x5e, 0x15, 0x17, 0x9a, 0x83, 0x15, 0x01, 0xd2, 0xc3, 0x21,
- 0x91, 0x4f, 0x9d, 0xec, 0x6b, 0xa4, 0x71, 0x7b, 0x75, 0x20, 0x8d,
- 0x1f, 0x32, 0xd2, 0x17, 0x22, 0x6e, 0x08, 0x01, 0xec, 0xc1, 0xb5,
- 0x80, 0x2f, 0xcb, 0x67, 0xa7, 0xd5, 0xe9, 0xb0, 0xaf, 0xe7, 0x19,
- 0x67, 0xee, 0x6f, 0xa4, 0x65, 0x95, 0xdb, 0x4c, 0x06, 0x02, 0x93,
- 0xd6, 0x30, 0xcf, 0xfb, 0x10, 0x3d, 0xe2, 0xcd, 0x08, 0x66, 0xf3,
- 0xab, 0xdc, 0x54, 0x24, 0xbc, 0x65, 0xa8, 0x44, 0xde, 0x2c, 0x31,
- 0x66, 0x7c, 0xca, 0xd0, 0xad, 0xc8, 0x9f, 0x3a, 0xdf, 0x9a, 0xc7,
- 0xdf, 0xd0, 0xd0, 0x67, 0x6f, 0x4e, 0xe9, 0xbf, 0x4e, 0xc3, 0x9a,
- 0x8d, 0x70, 0xbe, 0x25, 0x21, 0x48, 0x68, 0x30, 0xb5, 0xb5, 0xa5,
- 0xea, 0xa3, 0x37, 0xeb, 0xea, 0x5d, 0x98, 0xe0, 0xcd, 0x84, 0x55,
- 0x82, 0x62, 0x7c, 0x8d, 0x31, 0x32, 0xd5, 0xc4, 0x44, 0xe5, 0xf5,
- 0xc5, 0x8b, 0xa1, 0xda, 0xa7, 0x9d, 0x4b, 0x3c, 0xb4, 0xf9, 0xf9,
- 0x10, 0x76, 0x3f, 0x93, 0xb2, 0x8a, 0x0d, 0x2f, 0xa1, 0x7b, 0x93,
- 0x12, 0x2c, 0x58, 0x00, 0x24, 0x7b, 0xc4, 0x35, 0x27, 0xdd, 0x55,
- 0x82, 0x2f, 0x11, 0xc3, 0x3b, 0xd9, 0xd0, 0x59, 0x58, 0xb4, 0x8c,
- 0x53, 0x2e, 0x7f, 0x2c, 0xd7, 0x87, 0xa5, 0x02, 0xcc, 0x37, 0x45,
- 0x70, 0x1e, 0x02, 0xb8, 0x31, 0x09, 0x4b, 0xe2, 0xfe, 0x2b, 0x16,
- 0x89, 0xd3, 0x70, 0x59, 0x1c, 0xb6, 0x49, 0x8e, 0x68, 0x9c, 0x1c,
- 0x78, 0x89, 0x69, 0x24, 0x45, 0xd5, 0x84, 0xa6, 0x0b, 0x92, 0x15,
- 0xfe, 0x5e, 0xd1, 0xbb, 0x84, 0x28, 0x9a, 0xb1, 0xd5, 0x60, 0x7f,
- 0x18, 0x65, 0x9a, 0xad, 0xa0, 0x7d, 0x3f, 0xd3, 0x38, 0xbe, 0x04,
- 0x47, 0x0d, 0x13, 0x64, 0x33, 0x37, 0x88, 0xc5, 0x3f, 0xde, 0xe5,
- 0x59, 0x7d, 0xb3, 0x0e, 0x6c, 0x71, 0xb5, 0x1b, 0x0d, 0x21, 0x95,
- 0x33, 0x1b, 0x19, 0x6a, 0x27, 0xa7, 0x28, 0x28, 0x8d, 0xd7, 0x2e,
- 0xbc, 0x86, 0xa5, 0xdc, 0xbe, 0xd1, 0xad, 0x93, 0xff, 0x68, 0xfe,
- 0x6b, 0x0e, 0xf8, 0x54, 0x81, 0x9d, 0x47, 0x78, 0x57, 0xa5, 0x3e,
- 0x17, 0x77, 0x89, 0x9f, 0x4e, 0x7a, 0x1c, 0x07, 0x96, 0x08, 0x6b,
- 0xba, 0xaa, 0x86, 0xcf, 0x87, 0x0a, 0x77, 0xc5, 0xeb, 0xaa, 0x0d,
- 0x04, 0xd3, 0x0f, 0x2a, 0xc1, 0x21, 0xde, 0x99, 0xa3, 0xac, 0x5f,
- 0xdd, 0x7b, 0x3a, 0xf7, 0x72, 0xf7, 0x45, 0x4f, 0xd8, 0x9e, 0xb0,
- 0x0e, 0xd8, 0x25, 0x09, 0xe3, 0x72, 0x39, 0xa4, 0xb8, 0x97, 0x35,
- 0x06, 0x40, 0xc5, 0x62, 0x29, 0x20, 0x7e, 0x83, 0xce, 0xda, 0x0c,
- 0x13, 0x85, 0x45, 0x62, 0x41, 0x01, 0x96, 0xd1, 0x35, 0x51, 0x3c,
- 0x3f, 0xdd, 0x58, 0x57, 0x68, 0x75, 0x82, 0x4c, 0xd8, 0x4c, 0x3d,
- 0xae, 0xbe, 0x4a, 0xb8, 0x0f, 0x54, 0x35, 0xda, 0x66, 0xf4, 0x7d,
- 0x9f, 0x89, 0xd1, 0xc1, 0xd4, 0x6a, 0x52, 0x32, 0xd6, 0xfa, 0x52,
- 0xc6, 0x50, 0x1e, 0xd9, 0xb4, 0xbd, 0x0c, 0xdc, 0x03, 0x4c, 0xf6,
- 0x77, 0x0c, 0x5d, 0xf2, 0xb9, 0x35, 0x50, 0x30, 0x0a, 0x97, 0xd7,
- 0xbc, 0x0f, 0x17, 0xd3, 0xf8, 0xd3, 0x5d, 0x73, 0x17, 0xe7, 0x5e,
- 0x67, 0x44, 0xbd, 0x71, 0x22, 0xe3, 0xf8, 0xef, 0x38, 0xa0, 0xe0,
- 0x69, 0xbb, 0x43, 0x4d, 0x7a, 0x12, 0xa5, 0x76, 0x8c, 0x18, 0x72,
- 0x8e, 0xa3, 0x27, 0xfe, 0x20, 0x58, 0xa7, 0x42, 0x7b, 0x46, 0xc3,
- 0x30, 0x2e, 0xc7, 0x4f, 0xef, 0x56, 0x36, 0xf7, 0x57, 0x25, 0x08,
- 0x5e, 0xcf, 0xd5, 0xc0, 0xa0, 0x86, 0xf0, 0x6b, 0x14, 0x95, 0xb3,
- 0x5e, 0xf3, 0x08, 0x44, 0xcd, 0x3a, 0x74, 0x12, 0x9b, 0x02, 0x34,
- 0x19, 0x51, 0x81, 0xdc, 0x72, 0x01, 0xdc, 0xa9, 0xb5, 0xfd, 0x1b,
- 0x1a, 0x3e, 0xfb, 0x0b, 0xee, 0x49, 0x66, 0x6e, 0x75, 0x4e, 0x93,
- 0xf8, 0x8e, 0xe3, 0x7b, 0xe9, 0xd1, 0xd8, 0x20, 0x00, 0x9c, 0xa1,
- 0xc4, 0x82, 0x61, 0xfc, 0xa9, 0x07, 0xd3, 0x23, 0x44, 0x63, 0x79,
- 0x77, 0x78, 0x9b, 0x19, 0xee, 0x83, 0xc5, 0x1b, 0xd1, 0x10, 0x17,
- 0xe5, 0xe5, 0x14, 0xee, 0xed, 0xc3, 0xbf, 0x87, 0x2f, 0x24, 0x33,
- 0xcd, 0x08, 0xb9, 0x01, 0xdf, 0x88, 0x01, 0x6f, 0xba, 0x13, 0x5e,
- 0x48, 0xc9, 0x5f, 0x8d, 0x79, 0xef, 0xd1, 0x0d, 0x19, 0x83, 0x96,
- 0x91, 0xe6, 0xdc, 0x3f, 0x8d, 0xcf, 0xe4, 0xd6, 0x23, 0xbe, 0xe2,
- 0x37, 0xe5, 0x5c, 0x2e, 0x5e, 0xa2, 0x84, 0x1f, 0xb4, 0x3c, 0x96,
- 0xcf, 0xf0, 0x9a, 0x82, 0x60, 0xde, 0xbb, 0xe0, 0x94, 0x0c, 0xf7,
- 0x37, 0x8d, 0x6b, 0x60, 0x7c, 0x1b, 0x28, 0x41, 0xed, 0xbb, 0x2b,
- 0xe3, 0x70, 0x49, 0xc4, 0x64, 0x40, 0x9a, 0x03, 0x67, 0x46, 0x9d,
- 0x7e, 0x86, 0x4f, 0xe8, 0xf2, 0xb2, 0xee, 0xe5, 0x6b, 0x4a, 0x5e,
- 0xb7, 0x18, 0x64, 0x6b, 0xd1, 0xc8, 0x6f, 0xcf, 0x17, 0x5c, 0x6a,
- 0x69, 0x08, 0xbe, 0xe8, 0xce, 0x55, 0xe9, 0xc9, 0xa2, 0x03, 0x98,
- 0x1a, 0xa8, 0x06, 0x22, 0xf2, 0xfb, 0x9e, 0x69, 0xbf, 0x71, 0x0a,
- 0x25, 0xdb, 0xae, 0x27, 0x02, 0x06, 0x3c, 0x9b, 0xc9, 0x2c, 0x76,
- 0x3e, 0x75, 0x9e, 0x81, 0xfd, 0x78, 0x2c, 0xa0, 0xd7, 0xa7, 0x6f,
- 0xd8, 0xe7, 0x84, 0x1e, 0xaa, 0x49, 0xb9, 0x89, 0xb5, 0x98, 0x93,
- 0xbe, 0xf4, 0xa7, 0xf0, 0xab, 0x66, 0x21, 0xa9, 0x0e, 0x1c, 0x98,
- 0x28, 0xc2, 0x93, 0x83, 0x73, 0x93, 0xe8, 0x0e, 0x2d, 0x57, 0xa0,
- 0x27, 0x35, 0xce, 0x9f, 0x3c, 0x9d, 0x1b, 0x7f, 0x22, 0xee, 0x2e,
- 0x0d, 0xbc, 0x4f, 0x70, 0x80, 0xd8, 0x41, 0xbc, 0xb5, 0x58, 0x65,
- 0xc5, 0x95, 0x2a, 0xad, 0xd1, 0xac, 0xd2, 0x82, 0x23, 0x28, 0xd0,
- 0x7c, 0x25, 0xec, 0x81, 0x24, 0xa4, 0x35, 0x90, 0xc6, 0xf1, 0x75,
- 0x9d, 0xcb, 0xed, 0x2a, 0x8d, 0xa2, 0x81, 0x35, 0xe0, 0x75, 0x0b,
- 0xe1, 0x23, 0xa5, 0xb2, 0x3c, 0xad, 0x50, 0x29, 0x84, 0xe0, 0x9e,
- 0x57, 0x75, 0x19, 0xf6, 0x32, 0xbb, 0xec, 0x78, 0xcb, 0x9a, 0x65,
- 0x59, 0xc0, 0x23, 0x46, 0x79, 0x34, 0xc9, 0x78, 0x4d, 0x2e, 0xed,
- 0x61, 0x21, 0x5d, 0x5c, 0xa2, 0x1c, 0x99, 0x47, 0xe9, 0xd0, 0xf4,
- 0xd0, 0x04, 0x68, 0xa0, 0xa5, 0xc0, 0x1a, 0x6e, 0x82, 0x88, 0x56,
- 0x74, 0xba, 0xfc, 0xe9, 0xd2, 0xfb, 0x23, 0x91, 0x3d, 0x67, 0x26,
- 0x3c, 0xbf, 0x84, 0xa4, 0xfd, 0x63, 0x18, 0x8c, 0x92, 0xcf, 0x00,
- 0x6a, 0x6e, 0x88, 0x32, 0xdf, 0x0a, 0x5d, 0x3d, 0x02, 0x76, 0xd0,
- 0x1a, 0x97, 0xe1, 0xdd, 0x2d, 0x84, 0xf2, 0xc8, 0x79, 0x8b, 0x45,
- 0x5d, 0x81, 0x9b, 0xe9, 0xa5, 0x71, 0x2f, 0x5c, 0x30, 0x41, 0xaf,
- 0x29, 0xd8, 0x07, 0xd2, 0xa1, 0xfd, 0xb6, 0xed, 0xa2, 0x2e, 0xc0,
- 0xfc, 0xd8, 0x85, 0x5a, 0x26, 0xc6, 0x05, 0x05, 0x29, 0x91, 0x33,
- 0xc0, 0x3c, 0xf6, 0x18, 0x53, 0xfc, 0x77, 0x1b, 0x9c, 0x89, 0x04,
- 0xc6, 0x90, 0x5e, 0xf4, 0x85, 0xd5, 0xcf, 0xa7, 0x20, 0xd3, 0x63,
- 0xe3, 0x8a, 0x24, 0xea, 0x68, 0x69, 0xfe, 0xa9, 0x03, 0xac, 0xd2,
- 0xe3, 0x5f, 0xa0, 0xa2, 0xeb, 0xdb, 0x24, 0x20, 0x89, 0x61, 0xd2,
- 0x14, 0x42, 0xaa, 0x76, 0x9b, 0x24, 0x7d, 0xd5, 0x5b, 0x49, 0x8b,
- 0xe8, 0xb1, 0xf3, 0x35, 0x0d, 0xe3, 0x25, 0xfb, 0xe5, 0xab, 0x2a,
- 0x68, 0x8b, 0x99, 0xc2, 0x00, 0xa5, 0x87, 0xae, 0xfb, 0x12, 0x2c,
- 0x28, 0x38, 0xee, 0x71, 0x3c, 0x0e, 0x27, 0x59, 0xbe, 0xc2, 0x03,
- 0x3d, 0x4b, 0x8b, 0x15, 0x32, 0x46, 0xdf, 0xf0, 0xd1, 0x80, 0xbb,
- 0xcb, 0x5e, 0x50, 0x28, 0xb2, 0xc9, 0x1f, 0xe1, 0x42, 0x91, 0x9b,
- 0x53, 0x38, 0x8f, 0xb2, 0xe2, 0x48, 0xc4, 0x5f, 0x3d, 0xe7, 0x45,
- 0xcd, 0x0a, 0x3d, 0x15, 0xbb, 0xe2, 0x9a, 0xb5, 0xcc, 0x61, 0xc9,
- 0xeb, 0x26, 0xaa, 0xf4, 0x8c, 0x01, 0x0c, 0xfb, 0x6c, 0x34, 0xc8,
- 0x14, 0x7d, 0x38, 0x2e, 0xf1, 0x5a, 0xa9, 0xd5, 0xd6, 0xe6, 0x87,
- 0x32, 0x41, 0xe4, 0xe3, 0x4a, 0xe4, 0xbe, 0x29, 0xd3, 0xc4, 0xf4,
- 0xf1, 0xdd, 0xc2, 0x66, 0xc5, 0xba, 0x0b, 0x3e, 0xa9, 0x1f, 0xfb,
- 0xc5, 0xd1, 0x77, 0xa4, 0x80, 0x11, 0xb7, 0xed, 0xa7, 0xc5, 0x43,
- 0x7d, 0xe2, 0x90, 0x73, 0x00, 0xde, 0xd6, 0xa5, 0xd9, 0x46, 0xa1,
- 0x26, 0xaa, 0xf2, 0x24, 0xb1, 0xe0, 0x1d, 0x40, 0xd6, 0x52, 0x1d,
- 0x52, 0x5c, 0x0e, 0xe4, 0x5e, 0x00, 0x83, 0xe4, 0x11, 0x7d, 0x1b,
- 0xbe, 0x7a, 0xd3, 0x1e, 0xb1, 0x91, 0xee, 0x15, 0xfd, 0x2b, 0x27,
- 0xa0, 0x12, 0x70, 0x1a, 0x9f, 0xe4, 0xd3, 0xb2, 0x1f, 0x23, 0xc5,
- 0x6f, 0x76, 0xe3, 0x9d, 0xeb, 0x42, 0xf5, 0x6e, 0xb0, 0x0a, 0x34,
- 0x07, 0x72, 0x4b, 0xbd, 0x32, 0x75, 0xc1, 0xc4, 0x2d, 0x0a, 0x53,
- 0xb0, 0xa7, 0x31, 0x4e, 0x69, 0x5f, 0x05, 0x31, 0xbb, 0x7a, 0x3c,
- 0x8f, 0x2f, 0x84, 0x02, 0x56, 0x63, 0x02, 0x41, 0x62, 0xc0, 0x53,
- 0xf3, 0xef, 0x77, 0xf2, 0x78, 0x3f, 0xbe, 0xe4, 0xa0, 0xf8, 0xfc,
- 0xbe, 0xfb, 0xf3, 0x69, 0x17, 0xca, 0xc3, 0x76, 0xd3, 0xb9, 0x7f,
- 0x34, 0xbc, 0xf9, 0xc3, 0x2f, 0x28, 0x5e, 0xea, 0x8e, 0x60, 0x2a,
- 0xc2, 0x56, 0xea, 0xcd, 0xc7, 0xf6, 0x25, 0x52, 0x8d, 0x34, 0xc6,
- 0x41, 0x1d, 0xc3, 0x0f, 0x26, 0xfc, 0x39, 0x60, 0x53, 0x90, 0x9c,
- 0x6a, 0x73, 0x77, 0x38, 0xbd, 0x19, 0xcf, 0x81, 0x14, 0xdb, 0x84,
- 0xad, 0x96, 0xe4, 0xa8, 0xdc, 0xda, 0x21, 0x92, 0x35, 0x8a, 0x25,
- 0xd4, 0xd4, 0xbb, 0x7c, 0x55, 0xd5, 0x53, 0x6b, 0x0c, 0x02, 0x8e,
- 0xed, 0x57, 0x29, 0xfd, 0x8a, 0xa2, 0xc5, 0x04, 0xa0, 0x1d, 0xf4,
- 0xc6, 0x9b, 0xb1, 0xb0, 0xff, 0x0a, 0x69, 0xd7, 0x70, 0xc6, 0xca,
- 0x0e, 0x16, 0xfb, 0xbc, 0x05, 0xa2, 0xef, 0xc5, 0x09, 0xcd, 0x54,
- 0xa1, 0x16, 0xc5, 0xa0, 0xf8, 0xd2, 0x31, 0x5e, 0xeb, 0x27, 0x06,
- 0x70, 0x70, 0xb1, 0x34, 0x15, 0x30, 0x04, 0x26, 0x66, 0xb6, 0xef,
- 0xaa, 0x83, 0x0d, 0x46, 0x2d, 0x97, 0xd7, 0x5d, 0x6e, 0x6a, 0x85,
- 0x38, 0x32, 0xa0, 0xfa, 0xb4, 0x21, 0xdd, 0x0c, 0x37, 0x29, 0x91,
- 0xdf, 0x77, 0x73, 0x14, 0xc0, 0x24, 0xcb, 0x72, 0x0a, 0x86, 0x1a,
- 0x6e, 0x14, 0xc7, 0x14, 0xd0, 0xe2, 0xc0, 0xf4, 0x95, 0x95, 0x32,
- 0x1b, 0x3e, 0x1f, 0x0e, 0x15, 0x5f, 0x8f, 0x02, 0x19, 0x5a, 0x22,
- 0xe7, 0xda, 0x30, 0x7b, 0x6f, 0x9d, 0x4d, 0x6a, 0xb1, 0x9f, 0xee,
- 0x02, 0xd4, 0xf5, 0x06, 0x15, 0x0f, 0x1e, 0x18, 0xde, 0x46, 0x3b,
- 0xc4, 0x47, 0x70, 0x8a, 0x1d, 0x98, 0x1c, 0xad, 0xc1, 0xfd, 0x34,
- 0x79, 0x5d, 0x0f, 0x7f, 0xe6, 0xcd, 0x9d, 0xf3, 0x92, 0x8e, 0x86,
- 0x53, 0x7f, 0x44, 0x00, 0xff, 0x3e, 0xf4, 0xca, 0x19, 0x36, 0xfc,
- 0xd8, 0x54, 0x35, 0x5d, 0x78, 0xdb, 0xc1, 0xca, 0x53, 0xa0, 0x3d,
- 0xdf, 0x0b, 0xbe, 0xaa, 0x28, 0xe8, 0x98, 0xb3, 0x86, 0x12, 0x4c,
- 0x6b, 0x3f, 0x42, 0xde, 0x36, 0x79, 0x8e, 0x66, 0x8d, 0x0c, 0x69,
- 0x45, 0x36, 0x74, 0xc4, 0xe5, 0x8f, 0x73, 0x4a, 0xc6, 0x45, 0x95,
- 0x41, 0xff, 0x84, 0xdf, 0xa8, 0x68, 0xda, 0x9c, 0x4b, 0x20, 0xcd,
- 0x75, 0x18, 0x3a, 0xbb, 0x16, 0x10, 0x09, 0x4a, 0xa1, 0x06, 0xaa,
- 0xd8, 0x76, 0x76, 0x96, 0x0d, 0x4a, 0x6a, 0x6b, 0x36, 0x4b, 0x89,
- 0x1b, 0xe1, 0x09, 0xb0, 0x02, 0x4f, 0x22, 0xc0, 0x51, 0x79, 0xfb,
- 0x1e, 0x5d, 0x70, 0xaf, 0x64, 0xec, 0xed, 0xf0, 0xa7, 0x44, 0x41,
- 0x40, 0x67, 0x46, 0x75, 0x67, 0xb6, 0xd1, 0x8c, 0xf2, 0xd0, 0x5a,
- 0xb2, 0x11, 0x04, 0xc9, 0xa6, 0xa1, 0x69, 0xc7, 0x51, 0x86, 0x71,
- 0xb8, 0xd6, 0x44, 0x0a, 0x28, 0x8b, 0x84, 0x67, 0x82, 0x47, 0xc0,
- 0x1c, 0x6b, 0xf0, 0xcf, 0x91, 0x87, 0xeb, 0x65, 0xf6, 0x34, 0xa4,
- 0xdf, 0x13, 0x42, 0x9c, 0x09, 0xd1, 0x23, 0x3c, 0x75, 0x4a, 0xc1,
- 0x52, 0x19, 0x2b, 0x71, 0xdf, 0xa5, 0x01, 0xd9, 0x8e, 0x24, 0x8e,
- 0x9b, 0x87, 0x8a, 0xa7, 0xac, 0xa2, 0xd0, 0x87, 0x3c, 0xb6, 0xbc,
- 0x13, 0x41, 0x47, 0x0c, 0xca, 0x00, 0x80, 0x72, 0x2e, 0x3f, 0xfa,
- 0xc9, 0x2e, 0x04, 0x24, 0x2b, 0x2e, 0xc6, 0x1f, 0x4f, 0xb6, 0x92,
- 0x37, 0xef, 0x3d, 0x52, 0x39, 0x56, 0xcc, 0x4a, 0x23, 0x23, 0xbd,
- 0xf1, 0x7b, 0x36, 0x12, 0xa0, 0xb1, 0xad, 0x89, 0xad, 0x2c, 0x0e,
- 0xbb, 0x4f, 0x25, 0x42, 0xa7, 0x4a, 0x0b, 0x5c, 0x7f, 0xe7, 0x31,
- 0x98, 0xd9, 0x89, 0x6d, 0xf3, 0x31, 0xc9, 0x7e, 0x76, 0x6b, 0xb1,
- 0x8e, 0x47, 0x40, 0x25, 0x3d, 0xb3, 0x10, 0x9b, 0xaa, 0xf2, 0x01,
- 0x19, 0x68, 0x0d, 0x92, 0xc5, 0xb1, 0x9d, 0x06, 0x52, 0x95, 0x10,
- 0x4d, 0xd2, 0x17, 0x00, 0xc8, 0xb9, 0x6a, 0x48, 0xc6, 0xd2, 0x99,
- 0x1f, 0xd8, 0xcc, 0xc0, 0x5a, 0x5f, 0x8c, 0x69, 0x8d, 0x89, 0xe4,
- 0x6b, 0xd8, 0x49, 0x04, 0xc0, 0xf1, 0xc7, 0x88, 0xd0, 0xf1, 0xf2,
- 0x30, 0xf9, 0x9b, 0xdf, 0x7b, 0xe2, 0x79, 0xe8, 0x15, 0x89, 0x9a,
- 0x8a, 0x31, 0x86, 0xd9, 0x2a, 0x5c, 0x45, 0x01, 0xc8, 0x94, 0xff,
- 0x2a, 0xfd, 0xde, 0x36, 0x34, 0x89, 0x6e, 0xe6, 0x07, 0xd3, 0xf2,
- 0x04, 0xe0, 0x9d, 0x43, 0x80, 0x52, 0xe2, 0x7b, 0x75, 0xd6, 0x18,
- 0xa3, 0x8b, 0x05, 0xc5, 0x68, 0xb8, 0x5b, 0x62, 0xca, 0xf0, 0xec,
- 0x1b, 0x4b, 0xec, 0xcd, 0xc7, 0x5f, 0x9e, 0x81, 0xf9, 0xec, 0x3d,
- 0xb8, 0x7d, 0x7f, 0x18, 0x94, 0x7b, 0x58, 0x42, 0x30, 0xf9, 0xde,
- 0xd6, 0x31, 0x4c, 0x73, 0x17, 0xe7, 0x5e, 0x67, 0x44, 0xbf, 0xee,
- 0x30, 0xfa, 0x0e, 0xa8, 0x81, 0xb4, 0x2c, 0xa3, 0xaf, 0x57, 0xd3,
- 0x78, 0xd3, 0x78, 0x3a, 0xe6, 0xfc, 0x9e, 0x54, 0x8e, 0xd9, 0xd1,
- 0x51, 0x13, 0xcf, 0x35, 0x5d, 0xd9, 0x61, 0x27, 0xa1, 0x21, 0xd0,
- 0x93, 0x37, 0x99, 0xf5, 0x8b, 0x8a, 0x46, 0x2d, 0xd9, 0xd9, 0x65,
- 0xf6, 0x72, 0xa0, 0x3f, 0xa5, 0xf6, 0x6f, 0x24, 0x37, 0xff, 0x9f,
- 0x87, 0x22, 0xca, 0x75, 0x04, 0x9a, 0xb4, 0xdf, 0x2d, 0x40, 0x9a,
- 0xf4, 0x52, 0x93, 0xe9, 0x09, 0x05, 0x0e, 0xae, 0xde, 0xee, 0x88,
- 0x99, 0x3c, 0xac, 0x67, 0xe5, 0x01, 0x9f, 0x9e, 0xe8, 0x64, 0x65,
- 0x86, 0xe9, 0x58, 0x0c, 0x31, 0x36, 0x0d, 0xcd, 0x32, 0x43, 0xd1,
- 0x85, 0x26, 0x1c, 0x0f, 0x81, 0x15, 0xd8, 0x2e, 0x1f, 0x3b, 0x10,
- 0x0c, 0xdb, 0xad, 0x1d, 0x48, 0x76, 0xdb, 0x62, 0xfb, 0x90, 0x8b,
- 0x56, 0xb5, 0x74, 0x23, 0x53, 0xc2, 0x4b, 0xae, 0x42, 0xf2, 0x77,
- 0xe9, 0x67, 0x85, 0x7d, 0x58, 0x5a, 0xce, 0x25, 0xa1, 0x90, 0x6c,
- 0x94, 0x0b, 0x9a, 0x8c, 0x99, 0x04, 0xa2, 0xeb, 0xf7, 0x2b, 0x20,
- 0xb2, 0x46, 0x76, 0x84, 0x53, 0xc4, 0x68, 0x6a, 0x2a, 0xff, 0x2d,
- 0xcd, 0xde, 0xbd, 0x38, 0x5a, 0xa4, 0x3e, 0xd4, 0x19, 0xa2, 0x1d,
- 0x15, 0xb7, 0xc3, 0xdf, 0x65, 0xcd, 0x62, 0xfb, 0xbe, 0xb9, 0x63,
- 0x17, 0x76, 0x65, 0x66, 0x63, 0x4a, 0x5b, 0xbe, 0x73, 0x7f, 0x06,
- 0x33, 0x31, 0xa6, 0xf7, 0xdc, 0x71, 0xf7, 0x39, 0xc1, 0x76, 0xc7,
- 0x4b, 0x52, 0x7c, 0x8c, 0x10, 0x34, 0xad, 0x86, 0x90, 0x9e, 0x42,
- 0x5a, 0x25, 0x1b, 0xdb, 0x51, 0x84, 0xb6, 0xa9, 0xf4, 0x08, 0x32,
- 0x92, 0x4e, 0xb5, 0x23, 0x68, 0x7c, 0x5e, 0x2e, 0xa0, 0x18, 0x16,
- 0x25, 0xaa, 0x55, 0x06, 0xc4, 0x96, 0x86, 0x2f, 0x52, 0x2f, 0xc8,
- 0x18, 0xee, 0x94, 0x37, 0xbf, 0x0f, 0x86, 0xc0, 0xc5, 0xf4, 0x52,
- 0x10, 0x18, 0xa7, 0x1d, 0xf8, 0xc9, 0xd8, 0x67, 0xf6, 0xe2, 0x91,
- 0x2a, 0xbb, 0x64, 0x54, 0x8e, 0xcd, 0x6e, 0xbe, 0xff, 0x5d, 0x5d,
- 0xa9, 0xe8, 0x16, 0xb7, 0x32, 0x59, 0x0e, 0x7b, 0x12, 0x6d, 0xc2,
- 0x0c, 0x2a, 0x36, 0x83, 0xf4, 0x68, 0xc3, 0x8c, 0xb4, 0x03, 0xe8,
- 0x4e, 0xd3, 0x76, 0xb0, 0x1b, 0xf1, 0x85, 0x62, 0x4a, 0x97, 0xb3,
- 0xe3, 0xd4, 0x05, 0x83, 0xef, 0x8e, 0xe4, 0xbc, 0x92, 0xab, 0x11,
- 0x6d, 0x38, 0x5c, 0x74, 0xd7, 0xab, 0x4e, 0xfd, 0x3c, 0x20, 0x4f,
- 0xc7, 0xde, 0x23, 0x92, 0x90, 0x58, 0xbd, 0x32, 0x42, 0x13, 0x2d,
- 0x8e, 0xee, 0xac, 0x27, 0x66, 0xb6, 0x02, 0x0e, 0x97, 0xe6, 0xd1,
- 0x73, 0x6f, 0xe0, 0xf9, 0x37, 0x8c, 0x14, 0xcd, 0x05, 0x7b, 0x67,
- 0x57, 0x06, 0x6a, 0x45, 0x92, 0x3c, 0x01, 0x54, 0x09, 0x79, 0x47,
- 0x2f, 0xf6, 0x37, 0xb3, 0x34, 0xdf, 0x6f, 0xdb, 0x97, 0xfa, 0x0e,
- 0xa1, 0x25, 0xb3, 0x52, 0xfb, 0xf4, 0x56, 0xc1, 0x40, 0x68, 0xe9,
- 0x9e, 0x56, 0xdb, 0x65, 0xa3, 0x82, 0x3d, 0xa2, 0xc3, 0xb9, 0x11,
- 0x38, 0x89, 0x95, 0xdf, 0x2a, 0xe0, 0xaa, 0x7c, 0xab, 0xc7, 0x5e,
- 0xe4, 0xa2, 0x7b, 0xa1, 0x85, 0x0c, 0xb8, 0xc5, 0x1f, 0x8c, 0xf8,
- 0x0e, 0x04, 0x32, 0xd4, 0xdd, 0x0d, 0xd8, 0x9a, 0xf1, 0x06, 0x8c,
- 0xee, 0x7b, 0x5e, 0x29, 0x28, 0x7b, 0x55, 0xb7, 0xb1, 0xd8, 0x1a,
- 0x46, 0x47, 0xf2, 0x88, 0x55, 0x2d, 0xab, 0x9e, 0x4e, 0x4e, 0xc9,
- 0x35, 0x2a, 0x62, 0x47, 0xa1, 0xf8, 0x59, 0x18, 0x7c, 0xd3, 0x96,
- 0xea, 0x54, 0x2f, 0xba, 0x00, 0xd3, 0x53, 0xb3, 0xfa, 0xf9, 0x0f,
- 0x31, 0xdb, 0x13, 0x49, 0x39, 0xcd, 0x28, 0xaf, 0x21, 0x97, 0x6b,
- 0xed, 0x7c, 0x2a, 0x57, 0xd3, 0xa6, 0x2b, 0xde, 0x14, 0x0b, 0xc3,
- 0x70, 0x63, 0x3f, 0x24, 0xdc, 0xdc, 0x4d, 0x73, 0x5e, 0x42, 0x1a,
- 0x82, 0x41, 0x77, 0x9d, 0x61, 0xb4, 0x6b, 0x7d, 0x08, 0xbc, 0x1e,
- 0x4b, 0x60, 0x2c, 0x1f, 0xef, 0xee, 0x28, 0xf0, 0x44, 0x8c, 0xe3,
- 0x5e, 0x49, 0xa8, 0x15, 0x61, 0x9a, 0x4f, 0x69, 0x49, 0x93, 0x6a,
- 0xdf, 0x8c, 0x43, 0x92, 0x6a, 0xea, 0xc3, 0x63, 0x3b, 0x52, 0x37,
- 0xdb, 0x78, 0x67, 0x79, 0xf2, 0x56, 0x65, 0x4b, 0xf1, 0xb5, 0xc2,
- 0x9e, 0x14, 0x78, 0xd7, 0xfe, 0x8d, 0x98, 0x89, 0xbb, 0x02, 0x01,
- 0xce, 0x92, 0x82, 0x52, 0x11, 0x25, 0x74, 0xe4, 0xa3, 0x41, 0x8e,
- 0x6e, 0x2c, 0x07, 0xe9, 0xad, 0x47, 0x23, 0x51, 0xaa, 0x34, 0x46,
- 0x95, 0xd6, 0x5b, 0xc5, 0xdc, 0x34, 0xc9, 0x28, 0x36, 0x16, 0x4c,
- 0xd3, 0x55, 0x31, 0x91, 0xc7, 0x5e, 0x96, 0xe4, 0x7a, 0xc9, 0x36,
- 0xbb, 0xc6, 0x6d, 0x8b, 0xae, 0x61, 0x46, 0xb8, 0xc1, 0xd4, 0x2c,
- 0x0d, 0x72, 0x94, 0x96, 0x98, 0xe4, 0x8e, 0x39, 0x81, 0xfb, 0x52,
- 0x26, 0x86, 0x23, 0x38, 0x56, 0x2d, 0x90, 0x39, 0xfb, 0xd2, 0x50,
- 0x5a, 0x68, 0x43, 0x51, 0x12, 0x10, 0xdd, 0x51, 0x48, 0xac, 0x36,
- 0xe3, 0x8c, 0x59, 0x72, 0xab, 0x85, 0x60, 0xf3, 0x19, 0x2f, 0x7f,
- 0xf6, 0x43, 0xe5, 0x71, 0x8c, 0x4d, 0x8e, 0x80, 0x81, 0x21, 0x10,
- 0x1d, 0x35, 0x61, 0x15, 0x01, 0x41, 0x48, 0xd1, 0xed, 0xa6, 0xe2,
- 0xd7, 0x63, 0x4c, 0x4f, 0x15, 0xe3, 0x65, 0xa9, 0xe8, 0x94, 0x33,
- 0x29, 0xe2, 0x22, 0xd3, 0x21, 0x8d, 0x3a, 0x7d, 0x12, 0x5b, 0x49,
- 0x58, 0x4c, 0xc3, 0xd3, 0xaf, 0x9e, 0x3c, 0x44, 0x30, 0x1a, 0xe3,
- 0xb2, 0x82, 0x03, 0xb5, 0xfe, 0xcc, 0xc1, 0x82, 0x42, 0x34, 0x88,
- 0xc2, 0xfe, 0xe7, 0x85, 0x29, 0xb2, 0x17, 0xbd, 0xf9, 0x53, 0xd7,
- 0xbf, 0x3d, 0xd1, 0x4a, 0xc4, 0x0a, 0x4e, 0x42, 0x26, 0x57, 0x62,
- 0xb9, 0x27, 0xda, 0xab, 0x6f, 0xca, 0x23, 0x00, 0x65, 0x74, 0x64,
- 0x7b, 0xb5, 0xe8, 0x98, 0xeb, 0xfb, 0x0c, 0x9a, 0xd4, 0xec, 0xab,
- 0x04, 0x2a, 0x60, 0x63, 0x46, 0xd4, 0xe6, 0x96, 0x72, 0x0a, 0x17,
- 0xe8, 0x4a, 0xf5, 0x9a, 0x64, 0xf6, 0x7d, 0x64, 0x1b, 0xd7, 0xc0,
- 0xe4, 0x42, 0x5a, 0x68, 0x86, 0x89, 0x39, 0xa6, 0x1d, 0xf1, 0x96,
- 0x95, 0xc1, 0xc9, 0x1c, 0x23, 0xee, 0xf0, 0xb6, 0x73, 0x44, 0xff,
- 0xa3, 0xa2, 0xbe, 0xc8, 0xdb, 0x52, 0xdb, 0xd3, 0x37, 0xd2, 0xdc,
- 0x80, 0x9b, 0x94, 0x0b, 0xa4, 0xfd, 0x97, 0xd6, 0x4e, 0x8e, 0xe5,
- 0x35, 0x34, 0xf0, 0x16, 0xaf, 0xfd, 0x7f, 0xce, 0x95, 0xcf, 0x0a,
- 0xbe, 0x55, 0x1c, 0x6c, 0x02, 0x6c, 0xf3, 0x7a, 0x10, 0x19, 0x71,
- 0xb9, 0x77, 0x5b, 0xea, 0x21, 0x4f, 0xe7, 0xdb, 0x04, 0xcf, 0x4b,
- 0x14, 0x23, 0x58, 0x7f, 0x5a, 0x77, 0xe7, 0x91, 0xab, 0x65, 0x08,
- 0x57, 0xa2, 0xb2, 0x12, 0x22, 0xea, 0x4b, 0x19, 0x1b, 0xf2, 0xa0,
- 0xd3, 0x8a, 0x64, 0xb1, 0x0e, 0x8c, 0x19, 0xe0, 0x79, 0xfc, 0xd3,
- 0x8b, 0xf5, 0xe0, 0x68, 0xf5, 0xaf, 0x3a, 0x47, 0xd0, 0x38, 0x3a,
- 0x25, 0xf1, 0x9f, 0xbf, 0x74, 0xca, 0x4f, 0xbe, 0x17, 0x40, 0x7a,
- 0xcf, 0xf4, 0xff, 0x97, 0x5e, 0x04, 0x2a, 0x5f, 0x03, 0x1b, 0x9b,
- 0x16, 0x16, 0xa1, 0xea, 0xdd, 0x90, 0xc7, 0xd4, 0x61, 0xae, 0xc9,
- 0xb4, 0xe1, 0x12, 0x06, 0xfb, 0xff, 0x9e, 0x5c, 0xf9, 0xc8, 0x80,
- 0xd4, 0x6a, 0x1e, 0x33, 0x39, 0xec, 0x1f, 0x9f, 0x34, 0x6a, 0xbe,
- 0x43, 0xb6, 0xe9, 0x2b, 0x89, 0xa5, 0xee, 0xfc, 0x33, 0xd7, 0x42,
- 0x01, 0x53, 0x81, 0x9d, 0x47, 0x78, 0x57, 0xa5, 0x3e, 0x17, 0x66,
- 0xc3, 0xc7, 0x61, 0xcb, 0xe9, 0xc0, 0x9c, 0x46, 0xed, 0x9d, 0x53,
- 0xd9, 0xe1, 0x21, 0xdd, 0x4f, 0x46, 0xb0, 0x58, 0xa4, 0x92, 0x7f,
- 0x62, 0x63, 0x31, 0xde, 0xdf, 0x46, 0xfc, 0xa6, 0x3c, 0xdb, 0x11,
- 0xe9, 0xd9, 0x01, 0x79, 0xbc, 0x10, 0x76, 0x15, 0xb9, 0xce, 0x26,
- 0xf1, 0xcd, 0x6b, 0xc9, 0xb8, 0xfc, 0xfb, 0x99, 0xa5, 0x6a, 0x3c,
- 0x42, 0x12, 0x00, 0x00, 0x10, 0xd7, 0x78, 0x3c, 0x69, 0xf5, 0xe6,
- 0xd0, 0x0c, 0x08, 0x5d, 0x03, 0xfa, 0xcf, 0xcb, 0xd8, 0x93, 0x29,
- 0xaa, 0x81, 0x3a, 0xc6, 0xc3, 0x53, 0x2c, 0x83, 0x92, 0x79, 0x56,
- 0x1a, 0xf0, 0x1f, 0x69, 0x6b, 0x45, 0xaf, 0xff, 0xad, 0x68, 0xd2,
- 0x72, 0xb4, 0xf9, 0xb7, 0x2f, 0xb0, 0x46, 0x2d, 0xfe, 0x6d, 0x93,
- 0x06, 0x70, 0x08, 0xad, 0x49, 0x4a, 0x9b, 0xcd, 0xc3, 0x6f, 0x80,
- 0x4e, 0x02, 0xf6, 0x56, 0x64, 0xa6, 0xcd, 0x3f, 0x22, 0x5d, 0xee,
- 0x14, 0x04, 0x49, 0x62, 0xf0, 0xb4, 0x26, 0x3c, 0x05, 0x51, 0x46,
- 0x6e, 0x31, 0x4e, 0x43, 0x6a, 0xaa, 0xa5, 0xde, 0x36, 0xb2, 0x79,
- 0x01, 0x1c, 0xe7, 0x45, 0x2d, 0xd7, 0x30, 0xa4, 0x53, 0x54, 0x49,
- 0xe5, 0xd8, 0x3a, 0xa7, 0xc4, 0x3c, 0x6b, 0xe7, 0xb6, 0x14, 0xcf,
- 0xa0, 0x3d, 0xd0, 0x90, 0xd0, 0x92, 0x0e, 0x51, 0x15, 0xcb, 0xc7,
- 0x2a, 0x77, 0xae, 0xe4, 0x59, 0xa6, 0x53, 0x47, 0x48, 0x8b, 0xcb,
- 0x94, 0x8f, 0xb4, 0x84, 0xe8, 0x57, 0x78, 0xb9, 0xa7, 0x33, 0x53,
- 0xb6, 0x54, 0x10, 0xb8, 0x87, 0xd3, 0xf2, 0xbf, 0x77, 0x4e, 0x52,
- 0x3d, 0xde, 0x14, 0x94, 0x79, 0x8c, 0x6b, 0x3a, 0x91, 0xc2, 0x47,
- 0xfe, 0x7d, 0xc3, 0xb7, 0x04, 0x02, 0xfa, 0xc1, 0x1f, 0x68, 0x29,
- 0x86, 0xa2, 0x5c, 0x58, 0x14, 0x94, 0x1a, 0xdc, 0xa6, 0x1c, 0x54,
- 0xc5, 0x80, 0xc0, 0x70, 0xd2, 0x8e, 0xc4, 0xbe, 0x37, 0x10, 0x0f,
- 0x5c, 0x54, 0xc5, 0xbf, 0x61, 0x2a, 0x59, 0xb6, 0x48, 0x52, 0xa1,
- 0x68, 0x59, 0x9c, 0x9b, 0x1c, 0xfc, 0x2a, 0x01, 0x6a, 0xc5, 0x61,
- 0x5a, 0x76, 0x8f, 0xfd, 0x5e, 0xa8, 0xd9, 0xba, 0xda, 0x9d, 0x38,
- 0x59, 0x1c, 0x90, 0xbf, 0xc7, 0x66, 0x34, 0x0a, 0xc8, 0xda, 0x5a,
- 0x97, 0x65, 0xd0, 0x7a, 0xe5, 0xd3, 0x9c, 0x13, 0xda, 0x6f, 0xc5,
- 0x1c, 0x30, 0xff, 0xed, 0xce, 0xcd, 0xfa, 0xe0, 0x31, 0xeb, 0x5c,
- 0xab, 0x11, 0xfc, 0x0b, 0xae, 0x7b, 0x67, 0xf2, 0xf1, 0xa3, 0xfc,
- 0xb3, 0xea, 0x8c, 0xca, 0x0f, 0xf4, 0xd3, 0x65, 0xa1, 0x75, 0x1b,
- 0xb2, 0x9f, 0x4b, 0x4c, 0x0b, 0xf0, 0x2c, 0x97, 0x26, 0xbd, 0x57,
- 0x4c, 0x98, 0xfb, 0x4c, 0xa5, 0xdd, 0x1e, 0xc3, 0xe1, 0x29, 0x6d,
- 0x4f, 0x6d, 0x3a, 0xc1, 0x84, 0xbd, 0x70, 0x78, 0x95, 0x85, 0xf3,
- 0xd5, 0x30, 0xb3, 0x66, 0x31, 0x68, 0xf9, 0x42, 0x89, 0x25, 0xbe,
- 0x05, 0xe9, 0x00, 0xbc, 0x73, 0xf4, 0xd0, 0xd8, 0x0e, 0x05, 0x09,
- 0x00, 0xec, 0xb1, 0xc4, 0x47, 0x9a, 0xcc, 0xf4, 0xd7, 0xda, 0xff,
- 0xc9, 0x6d, 0xd0, 0x81, 0xd1, 0xb7, 0x01, 0x6b, 0xb3, 0xf5, 0x35,
- 0x18, 0xca, 0xdd, 0xe3, 0xc3, 0x30, 0x11, 0x80, 0x2c, 0x22, 0xe2,
- 0x8e, 0xb8, 0x0d, 0xa8, 0x82, 0x76, 0x47, 0x4f, 0xe7, 0x69, 0x98,
- 0x4d, 0x4f, 0xc0, 0xec, 0xea, 0xf3, 0x86, 0x9f, 0xc7, 0x3a, 0x3d,
- 0xd2, 0xac, 0x00, 0x5b, 0x8e, 0xef, 0xfb, 0xf1, 0x8a, 0x2b, 0x0f,
- 0x46, 0x80, 0xc4, 0x92, 0x62, 0x2e, 0xc9, 0x59, 0xb4, 0x58, 0x46,
- 0xc8, 0x16, 0xa0, 0xa4, 0xaf, 0xeb, 0x12, 0xfb, 0x67, 0xe7, 0x7c,
- 0x15, 0x57, 0x4e, 0x51, 0x1b, 0x10, 0xc2, 0x9d, 0x55, 0x98, 0xb4,
- 0x98, 0xc5, 0x95, 0x8d, 0x3b, 0xf3, 0x30, 0x0c, 0x2a, 0x29, 0xc3,
- 0x4a, 0xe6, 0x25, 0x5b, 0xc7, 0x27, 0x7f, 0xcb, 0x34, 0x0b, 0x45,
- 0x3d, 0x0e, 0x74, 0xb1, 0x09, 0x77, 0xbe, 0xc5, 0x3d, 0xa8, 0xc4,
- 0xab, 0xe0, 0x17, 0xdb, 0x17, 0x17, 0xc1, 0x58, 0x7e, 0xf4, 0x59,
- 0xa1, 0x7d, 0xbf, 0xfa, 0x1b, 0xa5, 0x40, 0x78, 0x80, 0x03, 0xd3,
- 0x70, 0x1a, 0x7b, 0xfa, 0x59, 0xae, 0x4c, 0x20, 0xb5, 0x81, 0xfb,
- 0x7f, 0x7a, 0xd9, 0xff, 0xbc, 0xc2, 0xda, 0x6c, 0x63, 0x45, 0xf0,
- 0x1a, 0x9f, 0xcc, 0x2e, 0xc5, 0xbb, 0x99, 0x5b, 0x11, 0x6e, 0x16,
- 0xf9, 0x8b, 0x83, 0xb8, 0xfc, 0x10, 0x9b, 0x17, 0xae, 0xe7, 0xd7,
- 0xd2, 0xb6, 0x0e, 0x86, 0x39, 0xa4, 0xa7, 0xdb, 0xa5, 0xbb, 0x13,
- 0x1a, 0x0b, 0xf9, 0x76, 0x7e, 0x06, 0x0f, 0x50, 0x4c, 0xf2, 0xef,
- 0x0b, 0xd9, 0x1d, 0xeb, 0x96, 0x70, 0xbe, 0x9f, 0x0f, 0xba, 0xd9,
- 0xc5, 0xc1, 0x3f, 0x36, 0xf2, 0xa0, 0xb6, 0x0f, 0x82, 0x43, 0x16,
- 0x20, 0xf5, 0xcc, 0x31, 0x79, 0x2e, 0x6c, 0xd3, 0x0b, 0x9a, 0x31,
- 0xb1, 0x7e, 0x97, 0x7a, 0x76, 0x2b, 0x6a, 0x38, 0xad, 0xa2, 0xf8,
- 0xb3, 0x26, 0x65, 0xc5, 0x10, 0x0b, 0x2e, 0xdd, 0x81, 0xcf, 0xf5,
- 0xb3, 0x99, 0xa9, 0xe3, 0xcf, 0x8a, 0x3e, 0xc0, 0x54, 0xd6, 0x53,
- 0x65, 0x58, 0xe0, 0x1e, 0xb3, 0x30, 0x66, 0xda, 0xc4, 0x05, 0x2d,
- 0xcd, 0xe4, 0xf7, 0x31, 0xdb, 0x05, 0x30, 0x13, 0x70, 0x62, 0x29,
- 0x4b, 0xb9, 0x12, 0xfa, 0xd4, 0xcb, 0x97, 0xfd, 0x57, 0xb3, 0x37,
- 0xa4, 0x15, 0x77, 0xc2, 0x05, 0xc0, 0x15, 0x31, 0xe9, 0x32, 0xa0,
- 0x8c, 0xa4, 0xf3, 0xa7, 0xb5, 0x18, 0xb7, 0x46, 0xe5, 0x82, 0x44,
- 0xc0, 0x34, 0xb7, 0xfe, 0x89, 0xa5, 0xc4, 0xf0, 0x3d, 0x8d, 0xe3,
- 0xf4, 0x57, 0x35, 0x5a, 0xee, 0x4d, 0xbf, 0xd1, 0x86, 0x6e, 0x08,
- 0xc3, 0x60, 0xc2, 0x5d, 0xd9, 0x50, 0xe0, 0x0e, 0x4f, 0x85, 0xbf,
- 0x7f, 0xbe, 0x54, 0x01, 0x15, 0x72, 0x84, 0xdc, 0x5b, 0x0d, 0xf8,
- 0xe8, 0xb6, 0x1c, 0x84, 0x0e, 0xa3, 0x0b, 0x75, 0x69, 0x7c, 0xea,
- 0x7b, 0x88, 0x31, 0x7d, 0x7d, 0x8d, 0xd6, 0x81, 0x04, 0x73, 0x5f,
- 0x8f, 0xfe, 0x77, 0x69, 0x10, 0x64, 0x8d, 0x44, 0x93, 0xdd, 0x9b,
- 0x1e, 0xe6, 0x80, 0xf9, 0x9c, 0x54, 0x7e, 0x83, 0x80, 0x9e, 0xf8,
- 0x22, 0x34, 0x0f, 0x90, 0x2a, 0xbe, 0x52, 0x16, 0x55, 0xaa, 0x62,
- 0x41, 0xab, 0x98, 0x76, 0x1e, 0x06, 0x6f, 0x7f, 0xca, 0x3e, 0x57,
- 0x63, 0x8a, 0x3a, 0x74, 0x31, 0x53, 0x4d, 0xce, 0xee, 0x91, 0x4d,
- 0x40, 0x8b, 0xe1, 0x24, 0x2f, 0x2b, 0x79, 0x74, 0x7d, 0x67, 0x63,
- 0xdd, 0x53, 0xfc, 0xc5, 0x6e, 0x83, 0xa9, 0x3d, 0x83, 0xb7, 0xaa,
- 0x3b, 0x84, 0xa3, 0x6e, 0x5a, 0x74, 0x54, 0x77, 0xa7, 0x8a, 0x5c,
- 0xd3, 0x30, 0x3f, 0x9a, 0x4b, 0xa6, 0xaa, 0xda, 0x7a, 0xd0, 0x6f,
- 0x85, 0xec, 0x20, 0x44, 0x7a, 0x17, 0x79, 0x54, 0x09, 0x17, 0x6c,
- 0xed, 0xee, 0x64, 0xbb, 0x20, 0xbb, 0xbf, 0x69, 0x28, 0x8c, 0x89,
- 0xe6, 0x0a, 0xd5, 0xd0, 0x26, 0x69, 0x8d, 0x3c, 0x7c, 0xef, 0xbb,
- 0x0d, 0xf2, 0xd0, 0x1e, 0x2b, 0xae, 0xbb, 0x5f, 0x00, 0x68, 0xbc,
- 0x57, 0x79, 0xfb, 0x72, 0x6c, 0x87, 0x8f, 0x3f, 0x24, 0x8c, 0xd5,
- 0x1b, 0xe5, 0xfd, 0xfe, 0x22, 0xf7, 0x1d, 0xce, 0xd8, 0xcb, 0x4f,
- 0xf0, 0x02, 0xee, 0x1b, 0x9f, 0x72, 0xb7, 0x15, 0xf4, 0xcb, 0x54,
- 0xd0, 0x92, 0xc6, 0xaf, 0x6d, 0x62, 0xfc, 0x4a, 0x60, 0x3f, 0xd4,
- 0xd8, 0x3f, 0x15, 0x08, 0x8f, 0x16, 0xf8, 0xfb, 0x35, 0x5f, 0x5c,
- 0x74, 0xcc, 0xea, 0x7c, 0xeb, 0xb6, 0x2f, 0x1e, 0x44, 0xed, 0xf3,
- 0xc8, 0xe2, 0x4b, 0x6c, 0x83, 0x40, 0xd3, 0x0d, 0x28, 0x25, 0x95,
- 0x2e, 0x67, 0x71, 0x32, 0xa0, 0xf4, 0x7c, 0x2c, 0x78, 0x28, 0xb0,
- 0xc0, 0xfd, 0xf1, 0x01, 0xbd, 0x50, 0x3e, 0x28, 0x35, 0x0b, 0x04,
- 0x6f, 0xe2, 0xb2, 0x53, 0xaa, 0x7a, 0x44, 0xc0, 0x1c, 0x79, 0x7a,
- 0x81, 0x7b, 0x3f, 0x07, 0xd7, 0x56, 0x33, 0x3b, 0xf5, 0xd4, 0xb1,
- 0x9c, 0xce, 0x10, 0x0f, 0x22, 0x7e, 0x76, 0x5d, 0x07, 0x88, 0xbd,
- 0x5c, 0x9e, 0xb2, 0x20, 0x78, 0xb2, 0x50, 0xb9, 0x50, 0xd5, 0xc4,
- 0xb5, 0x40, 0x56, 0x7e, 0xdc, 0xa7, 0x57, 0x27, 0x74, 0x55, 0x81,
- 0x86, 0x89, 0xad, 0xd4, 0x36, 0x35, 0x12, 0x52, 0x47, 0x76, 0x75,
- 0x75, 0xe6, 0x48, 0xea, 0xb8, 0xe7, 0xba, 0x72, 0x4b, 0x07, 0x4a,
- 0x4e, 0xcc, 0x6f, 0xcd, 0x7d, 0x73, 0x14, 0x15, 0xb1, 0x2d, 0x08,
- 0xb5, 0xcd, 0x4c, 0xf6, 0x43, 0xdb, 0xef, 0xe1, 0x09, 0xd8, 0x2c,
- 0x86, 0x0b, 0x4c, 0xb4, 0x18, 0xe1, 0x88, 0xba, 0x94, 0xb0, 0x9b,
- 0x57, 0xfb, 0x87, 0xc9, 0xfd, 0x01, 0xd3, 0x1c, 0x72, 0x98, 0x3b,
- 0xbb, 0xf5, 0xbe, 0x88, 0x4c, 0x1f, 0x84, 0xf2, 0x9b, 0x7a, 0xa5,
- 0x74, 0x5b, 0xaf, 0x7e, 0x8a, 0x72, 0x63, 0x9d, 0xaf, 0xb5, 0x60,
- 0x16, 0x2c, 0x72, 0xbf, 0x9b, 0xed, 0xfd, 0xb6, 0x40, 0xd0, 0xbd,
- 0x06, 0x22, 0xd5, 0xb3, 0x0b, 0xba, 0x5e, 0x0f, 0x96, 0x15, 0xf1,
- 0x48, 0x16, 0xb2, 0xf4, 0x4e, 0x47, 0x84, 0xa9, 0x95, 0x94, 0xe1,
- 0xda, 0xa5, 0xd7, 0xc2, 0x3a, 0x8b, 0x17, 0x46, 0xd7, 0xdd, 0xf8,
- 0x9a, 0xf3, 0x8b, 0x7e, 0xf4, 0x2e, 0xfb, 0x43, 0xcc, 0x70, 0x7b,
- 0xee, 0x8a, 0xfa, 0x4f, 0xa8, 0x13, 0x7e, 0x90, 0x50, 0x3e, 0x63,
- 0x14, 0xcc, 0x53, 0xbb, 0x84, 0x06, 0x06, 0x14, 0x6e, 0xd1, 0x44,
- 0xfa, 0x64, 0x28, 0x02, 0x95, 0xb1, 0x1c, 0xb2, 0x08, 0x33, 0x74,
- 0xd9, 0x02, 0x25, 0x12, 0xb0, 0x7a, 0xcc, 0x15, 0xf4, 0xe5, 0x84,
- 0xfd, 0x66, 0xea, 0xd8, 0x8a, 0x7e, 0xb7, 0x2b, 0xa0, 0x28, 0x39,
- 0x71, 0xeb, 0xde, 0xbf, 0xc0, 0x85, 0x8f, 0x52, 0x0f, 0x38, 0x50,
- 0xed, 0xc0, 0x6e, 0x53, 0xf8, 0x05, 0xce, 0x80, 0x1f, 0xcd, 0xa3,
- 0x3d, 0x4f, 0xa3, 0x97, 0x36, 0xad, 0x87, 0x3b, 0x48, 0xfc, 0x54,
- 0x81, 0x9d, 0x58, 0xab, 0x27, 0x21, 0x06, 0x82, 0xbd, 0x22, 0x83,
- 0x22, 0xb5, 0x23, 0xbc, 0xc5, 0xb6, 0x58, 0xca, 0x49, 0x9b, 0x44,
- 0x53, 0xd7, 0x24, 0x9e, 0x42, 0xac, 0xe0, 0xa4, 0x6a, 0x4c, 0xa3,
- 0xec, 0x47, 0x8d, 0x57, 0x22, 0x97, 0xf5, 0xa4, 0x54, 0x64, 0x5f,
- 0xaf, 0x3f, 0xa7, 0xf0, 0x40, 0x7f, 0xde, 0x82, 0x86, 0x88, 0xf0,
- 0x31, 0x82, 0xf1, 0x04, 0x03, 0x5f, 0x93, 0x19, 0x7b, 0xc3, 0x53,
- 0xbc, 0x53, 0xb8, 0xee, 0xfb, 0x12, 0x14, 0x87, 0xe9, 0x57, 0x73,
- 0xe9, 0x80, 0x98, 0x7f, 0x0c, 0xd1, 0xf1, 0x5d, 0x19, 0x5a, 0x60,
- 0x4f, 0x8a, 0x68, 0xa4, 0xd7, 0x47, 0x6b, 0x7f, 0x4f, 0x13, 0x78,
- 0x91, 0xcb, 0xfd, 0x39, 0xa0, 0x6c, 0x86, 0xb1, 0xfd, 0xf7, 0x74,
- 0xaa, 0xdc, 0x8d, 0xeb, 0x17, 0xdb, 0x2f, 0x55, 0xf1, 0x5d, 0x99,
- 0x64, 0x95, 0xd1, 0x7d, 0x52, 0xd1, 0x81, 0xd2, 0x61, 0x39, 0x5d,
- 0x47, 0x33, 0x46, 0x7c, 0x85, 0xfc, 0x84, 0x06, 0xee, 0x50, 0xfd,
- 0xdc, 0xd7, 0x3f, 0x2e, 0x28, 0x7f, 0x3b, 0x09, 0xda, 0xcb, 0xee,
- 0xbe, 0x25, 0xba, 0x50, 0x2b, 0x6d, 0x3b, 0x19, 0x70, 0x2f, 0x6e,
- 0xa2, 0x65, 0x46, 0x41, 0xe0, 0xfc, 0xd0, 0x7d, 0x21, 0x8b, 0x1c,
- 0x37, 0x35, 0x69, 0xbc, 0xd3, 0x0f, 0xed, 0x0a, 0x74, 0x5d, 0xdf,
- 0xd4, 0x98, 0x82, 0x5f, 0x6b, 0x43, 0x8c, 0xdf, 0x71, 0x24, 0x00,
- 0xcf, 0x7b, 0x37, 0x40, 0xce, 0xc9, 0x49, 0x05, 0x40, 0xa6, 0xd0,
- 0x5a, 0xe5, 0x08, 0xf4, 0xfd, 0x11, 0x3e, 0xea, 0xac, 0xcf, 0x07,
- 0x45, 0xc7, 0x8e, 0xe4, 0x0b, 0xe5, 0x52, 0xf5, 0xb7, 0x7d, 0xaf,
- 0x5a, 0xb8, 0xb8, 0x82, 0x00, 0x01, 0x10, 0x0b, 0xca, 0xaa, 0xf8,
- 0x5f, 0x19, 0xec, 0x01, 0x87, 0xd6, 0x66, 0xfe, 0x6e, 0x2b, 0xe3,
- 0x61, 0x75, 0x49, 0xfe, 0xa4, 0xee, 0x42, 0x0e, 0x80, 0x4d, 0xa3,
- 0x67, 0x9b, 0xf2, 0x9a, 0x46, 0x83, 0x6d, 0x5f, 0x6b, 0x3c, 0x04,
- 0x6f, 0x15, 0xcf, 0x30, 0x37, 0x49, 0xd2, 0x5f, 0x80, 0x34, 0x47,
- 0x11, 0x83, 0x34, 0x01, 0x83, 0xb9, 0x25, 0x91, 0x7e, 0xd8, 0x13,
- 0x50, 0xc7, 0xf7, 0xa9, 0x05, 0xdf, 0xd6, 0xef, 0x04, 0xea, 0x84,
- 0x5a, 0x62, 0x8d, 0x8a, 0x27, 0x58, 0x18, 0x09, 0x45, 0x9f, 0xce,
- 0x93, 0x07, 0x8c, 0xc2, 0xb1, 0xe4, 0xeb, 0x57, 0x2a, 0x3b, 0x94,
- 0xe7, 0x77, 0x8f, 0x8f, 0x95, 0x6d, 0x7e, 0x83, 0x56, 0xfd, 0x7d,
- 0x0a, 0xd8, 0x56, 0x46, 0x3c, 0xf1, 0xd3, 0x35, 0x28, 0xf9, 0x54,
- 0xd9, 0xdf, 0x01, 0xd3, 0xe0, 0x75, 0xdf, 0x02, 0x19, 0x69, 0x6b,
- 0x21, 0x4d, 0x61, 0x80, 0x7f, 0x75, 0x10, 0x87, 0xfe, 0xd1, 0x9a,
- 0xa3, 0x95, 0xfc, 0xcb, 0x12, 0x5c, 0x21, 0x3f, 0x1e, 0x8c, 0xca,
- 0x79, 0xc4, 0x66, 0x47, 0x7c, 0xcb, 0x02, 0xf7, 0x6e, 0x2e, 0x05,
- 0x5d, 0xb2, 0x15, 0x82, 0xdb, 0x60, 0xc5, 0x56, 0xbd, 0x8c, 0x6f,
- 0xb9, 0x1a, 0xfc, 0x16, 0xd8, 0x2d, 0xec, 0x15, 0x38, 0x61, 0xf3,
- 0x2b, 0x0e, 0x10, 0x38, 0x64, 0x5d, 0x65, 0xcf, 0xa5, 0xb3, 0xf7,
- 0xf8, 0x77, 0xdf, 0xaa, 0x99, 0x3e, 0x7d, 0x9d, 0x69, 0x73, 0xce,
- 0x3c, 0x2d, 0xab, 0x27, 0x80, 0xe8, 0x76, 0xdb, 0x45, 0x9c, 0xe7,
- 0x3f, 0x95, 0x24, 0xb5, 0x95, 0xc3, 0x19, 0xbe, 0xbd, 0x9f, 0x84,
- 0x68, 0xfa, 0x5d, 0xf5, 0xeb, 0x38, 0xcb, 0xa8, 0x5b, 0x58, 0xc4,
- 0x7b, 0x8f, 0x51, 0x7b, 0xe2, 0x2d, 0xdd, 0x1a, 0xf1, 0x22, 0xc4,
- 0xa5, 0xac, 0x0e, 0x4d, 0xce, 0x82, 0xab, 0x59, 0x39, 0x5a, 0x95,
- 0xd5, 0x7c, 0xf8, 0x43, 0xe1, 0x3f, 0xbc, 0x61, 0x0f, 0x2c, 0xa7,
- 0x47, 0x45, 0x8e, 0xd4, 0x16, 0xd4, 0x1d, 0xec, 0x91, 0x9c, 0xe4,
- 0xfc, 0x96, 0x67, 0xfe, 0xfd, 0xc9, 0x91, 0x38, 0xa7, 0x01, 0xc9,
- 0x08, 0xd1, 0xcc, 0xcb, 0xd4, 0x3b, 0x58, 0x2c, 0x3a, 0xf2, 0x18,
- 0xda, 0x39, 0x76, 0x53, 0xc2, 0xea, 0xe7, 0x6e, 0x9b, 0x61, 0xce,
- 0x62, 0x75, 0x39, 0xea, 0x01, 0xe8, 0x88, 0x14, 0x8f, 0xd1, 0x3e,
- 0x5c, 0x4c, 0xef, 0x27, 0xfe, 0x10, 0xf2, 0x54, 0x65, 0xd3, 0x2a,
- 0x1e, 0x4a, 0xee, 0x42, 0x46, 0x56, 0xa7, 0xca, 0x43, 0xa3, 0x5e,
- 0x4a, 0x0b, 0xd6, 0x30, 0x11, 0x3e, 0x98, 0xdc, 0xdc, 0xdd, 0x79,
- 0x13, 0xa6, 0x04, 0x6e, 0x7c, 0x62, 0x65, 0xb2, 0x40, 0xe6, 0x18,
- 0x8e, 0x5d, 0x51, 0xa8, 0x7a, 0xf0, 0x47, 0xf3, 0xe7, 0x0b, 0xd0,
- 0x93, 0x53, 0x86, 0x78, 0x52, 0x5c, 0x08, 0x2d, 0x02, 0x46, 0x5e,
- 0xf1, 0x1b, 0x5d, 0x1b, 0x82, 0x66, 0x28, 0xba, 0x8f, 0x11, 0xac,
- 0x61, 0x55, 0x01, 0x57, 0xb9, 0x9c, 0xab, 0x4d, 0x36, 0x43, 0x78,
- 0x62, 0x96, 0x8f, 0xf5, 0x4a, 0xb9, 0x5c, 0xd4, 0x59, 0x16, 0xd1,
- 0xf7, 0x0b, 0xf6, 0xda, 0x26, 0xdc, 0xa2, 0x27, 0x6d, 0x49, 0xf7,
- 0x70, 0x77, 0x92, 0x28, 0xd1, 0x55, 0xc3, 0x2f, 0x01, 0x41, 0x29,
- 0x59, 0x57, 0x73, 0x31, 0x5f, 0x1c, 0x52, 0x1f, 0xc0, 0x1e, 0xe6,
- 0xa0, 0xac, 0x35, 0xa7, 0x2e, 0xf2, 0x04, 0x22, 0x1f, 0x11, 0x55,
- 0x71, 0x68, 0x4f, 0xa4, 0xea, 0x18, 0xe5, 0x96, 0x02, 0x23, 0x46,
- 0x5c, 0x4c, 0x75, 0xd7, 0xb9, 0x42, 0x6f, 0x41, 0x9a, 0xe9, 0x38,
- 0xe2, 0x64, 0x6a, 0xf7, 0x60, 0x8e, 0xfe, 0x50, 0x1f, 0xaf, 0xf0,
- 0x3f, 0xb7, 0x24, 0xae, 0xc5, 0x51, 0x51, 0x9d, 0x15, 0x04, 0x77,
- 0x8c, 0xc6, 0xca, 0xd1, 0x42, 0x69, 0x85, 0xc7, 0xf2, 0x6e, 0x4c,
- 0x4d, 0x70, 0xac, 0x79, 0xd3, 0xcd, 0x5a, 0xd0, 0x23, 0x4a, 0x87,
- 0x89, 0x22, 0x85, 0xd7, 0x00, 0x4e, 0xcf, 0x9b, 0x9e, 0x27, 0xc2,
- 0xa5, 0x7c, 0xcc, 0x32, 0x0c, 0x58, 0x84, 0xc6, 0x90, 0x69, 0x08,
- 0x21, 0x41, 0x3e, 0xe5, 0x32, 0xb5, 0xa8, 0x4f, 0x4c, 0x98, 0x33,
- 0xd8, 0x7b, 0x60, 0xc7, 0x29, 0x3c, 0xf3, 0x62, 0xa4, 0x90, 0xe2,
- 0xa0, 0xda, 0xda, 0x14, 0x77, 0xff, 0x42, 0xa0, 0x35, 0x96, 0x2a,
- 0x3b, 0x37, 0xe5, 0xc1, 0xa7, 0x6f, 0x45, 0x3c, 0x4b, 0x2b, 0x56,
- 0x3e, 0x0c, 0x72, 0xcd, 0xd8, 0x5a, 0x42, 0x3b, 0xec, 0x12, 0x65,
- 0x73, 0xf8, 0xe8, 0x77, 0x58, 0xc6, 0x1b, 0x0c, 0x4c, 0x16, 0xcd,
- 0xdc, 0x55, 0x4e, 0x73, 0x53, 0xa1, 0xe9, 0xf1, 0xfc, 0x52, 0x5b,
- 0xa4, 0x18, 0xd8, 0xa8, 0xcd, 0x1b, 0x28, 0x2f, 0x33, 0xbf, 0x9d,
- 0xb5, 0x63, 0x98, 0x1d, 0x6b, 0xbd, 0x7d, 0x9d, 0x8d, 0x4d, 0xfe,
- 0xf8, 0x1a, 0x9b, 0x1f, 0xa7, 0xf1, 0x9e, 0xca, 0x9a, 0xf6, 0x14,
- 0x36, 0x16, 0x70, 0x18, 0x47, 0xea, 0x6f, 0x1b, 0xb8, 0x01, 0x43,
- 0x8c, 0xcb, 0x41, 0xc7, 0x17, 0x7e, 0xdd, 0x65, 0xf8, 0xb5, 0x9e,
- 0x99, 0x5f, 0x83, 0xbb, 0x3e, 0x65, 0x04, 0x16, 0x8c, 0xb3, 0x4b,
- 0xf3, 0x20, 0x98, 0x77, 0x13, 0x1b, 0x34, 0xb1, 0x35, 0x4d, 0xd2,
- 0x92, 0x1e, 0x53, 0x6b, 0xd2, 0xa7, 0x37, 0xd5, 0x35, 0x66, 0x02,
- 0xb6, 0xde, 0x69, 0x66, 0x48, 0x5d, 0xba, 0xb0, 0xbe, 0x32, 0xf0,
- 0x0f, 0x18, 0xf5, 0xe9, 0xb6, 0x69, 0xad, 0x57, 0x2e, 0x57, 0x92,
- 0xba, 0xa9, 0x65, 0xaf, 0x9b, 0x80, 0xf4, 0xca, 0xa3, 0x56, 0x16,
- 0x50, 0xf5, 0xf5, 0xc8, 0xc4, 0x2a, 0x48, 0x6d, 0x6f, 0xac, 0xf5,
- 0xa2, 0xa0, 0x15, 0xc1, 0x13, 0xa4, 0xbb, 0x4b, 0xcb, 0x7a, 0x28,
- 0xd4, 0x0b, 0x2c, 0xca, 0x7d, 0x7b, 0x19, 0x5c, 0x35, 0x83, 0xcf,
- 0x4a, 0x20, 0xf5, 0xf9, 0x95, 0x41, 0x0d, 0x77, 0xab, 0x82, 0xaa,
- 0xfc, 0x99, 0x39, 0xda, 0x0c, 0xb4, 0x3b, 0xc5, 0xca, 0x75, 0xd5,
- 0xc1, 0x3a, 0xd7, 0x38, 0x8a, 0xb7, 0x25, 0x98, 0x7e, 0x93, 0x36,
- 0x6c, 0x0c, 0x33, 0x8a, 0x14, 0xe9, 0x71, 0x65, 0xa6, 0x53, 0x05,
- 0xcd, 0x58, 0xca, 0xf3, 0xb9, 0x6c, 0xad, 0xc5, 0x5a, 0xc7, 0x86,
- 0xbb, 0x54, 0x51, 0xbf, 0x23, 0x10, 0x5f, 0x05, 0x1e, 0x20, 0xb9,
- 0x34, 0x65, 0x42, 0xfd, 0x4a, 0x3e, 0xee, 0x02, 0x57, 0xca, 0x15,
- 0x7c, 0xf2, 0xcb, 0x10, 0x56, 0xee, 0x46, 0xc3, 0x44, 0x9f, 0xce,
- 0x08, 0x6a, 0x7a, 0xfe, 0xfa, 0xdd, 0x18, 0x3d, 0x85, 0xa2, 0x54,
- 0x1c, 0xc9, 0x36, 0xe4, 0x66, 0xe8, 0x98, 0xe8, 0xfe, 0x8f, 0xf6,
- 0x19, 0x80, 0x82, 0xc2, 0xcf, 0x72, 0xc7, 0x8f, 0xc6, 0xc6, 0x10,
- 0xeb, 0xdd, 0x7f, 0x14, 0xc9, 0x4c, 0x93, 0x9f, 0x26, 0xac, 0x6a,
- 0x4c, 0x4d, 0x00, 0x03, 0x86, 0xc5, 0x49, 0x42, 0xe5, 0x2e, 0xb7,
- 0x53, 0xfa, 0xe4, 0xc3, 0xe2, 0x6d, 0xb4, 0xac, 0xe4, 0x19, 0x62,
- 0x85, 0x3c, 0xc6, 0x0d, 0xe9, 0xae, 0x5e, 0x87, 0x5c, 0x12, 0x69,
- 0x02, 0xaf, 0x77, 0x8a, 0xc7, 0xe9, 0xe4, 0xb3, 0x4f, 0x6c, 0xb8,
- 0xd5, 0xd1, 0xf3, 0x8c, 0xe0, 0x80, 0xb8, 0x7c, 0x8d, 0x90, 0x36,
- 0xc0, 0xf9, 0xc4, 0x5c, 0x40, 0x3e, 0xf9, 0x3d, 0xb5, 0xd5, 0xb8,
- 0x8f, 0x3e, 0x72, 0xe7, 0x99, 0xc1, 0x67, 0xec, 0x36, 0xa2, 0x1d,
- 0x55, 0x2f, 0x2d, 0x92, 0x9b, 0x8a, 0x57, 0xf3, 0xb0, 0x1d, 0xfb,
- 0x67, 0x34, 0xed, 0x1b, 0xde, 0x98, 0x10, 0x81, 0xec, 0x0b, 0x0c,
- 0x21, 0x87, 0x7b, 0xb2, 0x49, 0x71, 0x9f, 0x8d, 0xa7, 0x65, 0x50,
- 0x76, 0x05, 0xeb, 0xda, 0xc7, 0xea, 0x7e, 0xce, 0xaa, 0x4e, 0x1d,
- 0xee, 0xa5, 0xd6, 0x8f, 0xcf, 0x42, 0x35, 0xbf, 0x2c, 0x2a, 0xea,
- 0x77, 0xd8, 0x16, 0x29, 0xa2, 0x76, 0x93, 0xaa, 0xe0, 0xec, 0xb6,
- 0xba, 0x4a, 0x26, 0x8a, 0x0d, 0x6d, 0x4b, 0x77, 0x1f, 0xce, 0xac,
- 0x40, 0x80, 0x12, 0xde, 0xe1, 0x40, 0xcb, 0x7b, 0xbf, 0x30, 0xa4,
- 0x8e, 0x74, 0xb0, 0x93, 0x1d, 0xf7, 0x30, 0x0a, 0xad, 0x1d, 0xa7,
- 0x98, 0xa9, 0x0e, 0x12, 0x2a, 0x6f, 0xb0, 0x56, 0xbb, 0xb2, 0x65,
- 0xbb, 0xc4, 0xee, 0x8f, 0x71, 0xc7, 0x34, 0xad, 0x3f, 0xcc, 0xcb,
- 0x15, 0xdf, 0x9a, 0xb8, 0xfd, 0x9e, 0x9f, 0xe2, 0x4d, 0x9c, 0x19,
- 0xce, 0x62, 0x4b, 0x23, 0x3f, 0xed, 0xbc, 0x78, 0x8e, 0xd3, 0x04,
- 0x35, 0xf5, 0x7f, 0xcc, 0xee, 0x63, 0x75, 0xb8, 0x42, 0xf9, 0xe3,
- 0xb2, 0xdf, 0x0c, 0xf2, 0x78, 0x4c, 0x6b, 0x23, 0x4a, 0x1a, 0xe1,
- 0x1e, 0x6f, 0x13, 0xc0, 0xb6, 0x5e, 0xa3, 0x4b, 0xd3, 0x09, 0x07,
- 0xd0, 0xe5, 0xe5, 0xb6, 0x47, 0x4a, 0x13, 0x3b, 0xb2, 0x4e, 0x38,
- 0x0e, 0x62, 0x36, 0x20, 0x33, 0xc6, 0x1f, 0x18, 0xaa, 0x37, 0xdc,
- 0x68, 0xad, 0x6e, 0xcb, 0x11, 0x88, 0x7a, 0xe9, 0x68, 0xc7, 0x81,
- 0x28, 0xfd, 0x34, 0xed, 0x7f, 0x8a, 0x12, 0xeb, 0xb2, 0xe2, 0x2f,
- 0x13, 0x44, 0xfb, 0x35, 0xde, 0x8b, 0x91, 0x24, 0xce, 0xc3, 0x46,
- 0x83, 0x34, 0xd0, 0xe2, 0x89, 0x1f, 0x99, 0x02, 0x19, 0x21, 0xa4,
- 0x5d, 0xd6, 0x7e, 0x2a, 0xa2, 0xf5, 0x65, 0xb4, 0xeb, 0xe5, 0xff,
- 0x22, 0x05, 0xd0, 0x43, 0x0c, 0x41, 0xe3, 0x12, 0x6a, 0x58, 0xa5,
- 0x63, 0x20, 0xb8, 0x85, 0x1f, 0xbb, 0x02, 0x93, 0x62, 0xe4, 0xe6,
- 0x5c, 0x2d, 0x3e, 0x95, 0xb0, 0xe7, 0x0d, 0xc0, 0xc8, 0x79, 0x09,
- 0xd9, 0x08, 0xa7, 0xf8, 0x1a, 0x59, 0xd6, 0xa6, 0x90, 0x90, 0x14,
- 0x4e, 0xd2, 0x5d, 0x85, 0xd0, 0x03, 0xb2, 0x4d, 0xc9, 0x38, 0x7d,
- 0x00, 0x29, 0xa6, 0xfb, 0x84, 0x0e, 0x6a, 0xf7, 0x7d, 0x9d, 0x52,
- 0xf6, 0xcb, 0x8d, 0x69, 0xf4, 0xfe, 0x6c, 0x69, 0x67, 0x3d, 0xd7,
- 0x51, 0x8b, 0x6a, 0x15, 0x00, 0x82, 0x4b, 0xcc, 0xe9, 0xac, 0x15,
- 0xa5, 0x13, 0x55, 0x46, 0xf5, 0xdc, 0x6c, 0xbe, 0x1b, 0xeb, 0x6d,
- 0xf1, 0x1b, 0x97, 0x8e, 0x88, 0x9c, 0xb1, 0x84, 0xe4, 0x3d, 0x07,
- 0xad, 0xe1, 0xfe, 0x39, 0x62, 0x93, 0x25, 0x54, 0x0b, 0xc3, 0x60,
- 0xe9, 0x06, 0xf6, 0x38, 0x42, 0x5a, 0xc9, 0x25, 0x26, 0xb3, 0xad,
- 0x4b, 0xc6, 0x00, 0xeb, 0xb8, 0xa1, 0xfd, 0x31, 0x80, 0x7c, 0x17,
- 0x7f, 0x90, 0xfe, 0x2f, 0xb7, 0x8a, 0x86, 0x88, 0xbd, 0x27, 0x27,
- 0x7d, 0x57, 0x47, 0x15, 0xb9, 0x69, 0xfa, 0xbf, 0x0a, 0x22, 0x72,
- 0x50, 0x8b, 0x37, 0x7a, 0x2e, 0xa0, 0xd4, 0x31, 0x80, 0xfb, 0x12,
- 0x85, 0x30, 0x25, 0xe4, 0xb8, 0x08, 0x82, 0xeb, 0x6b, 0x16, 0x5b,
- 0x14, 0x76, 0x64, 0x12, 0x79, 0xf2, 0x9e, 0x94, 0xdb, 0xe4, 0xf2,
- 0x4a, 0x82, 0x01, 0x59, 0xcf, 0x83, 0x37, 0xb9, 0x20, 0x95, 0x0c,
- 0x36, 0xa0, 0x85, 0xfd, 0xc2, 0x6f, 0xb2, 0x90, 0x3f, 0x3b, 0x00,
- 0x65, 0x91, 0xf4, 0x62, 0x19, 0x0e, 0x6b, 0x16, 0x60, 0x01, 0x07,
- 0xf3, 0x88, 0x05, 0xd5, 0x9d, 0x3f, 0xe8, 0x81, 0xd0, 0xd5, 0x87,
- 0xec, 0xea, 0xb3, 0xa1, 0x87, 0xb3, 0x45, 0x1d, 0x56, 0x57, 0xe1,
- 0x1f, 0x04, 0xcb, 0x88, 0x44, 0x94, 0x62, 0xf0, 0xe5, 0x55, 0x84,
- 0x16, 0x8a, 0xf0, 0x5e, 0xb1, 0x2b, 0x34, 0x60, 0x84, 0xc2, 0x39,
- 0x71, 0xc1, 0x21, 0x87, 0x56, 0xb6, 0xac, 0x41, 0x27, 0xad, 0xa6,
- 0x53, 0x8e, 0xad, 0x64, 0x40, 0x8d, 0x4a, 0x38, 0x34, 0xd9, 0x47,
- 0xb3, 0x4e, 0x76, 0x32, 0x07, 0x76, 0xe8, 0x2e, 0x39, 0xa8, 0x13,
- 0xfc, 0x48, 0x91, 0xb4, 0x9e, 0x07, 0xe9, 0xe9, 0xbd, 0x03, 0x48,
- 0x79, 0xf9, 0x4f, 0x27, 0x7d, 0x2d, 0x94, 0xe8, 0xc4, 0x0a, 0x98,
- 0xdd, 0x37, 0x95, 0x0c, 0xf9, 0x5d, 0xd2, 0x15, 0x9d, 0x06, 0x5a,
- 0x66, 0xda, 0xd6, 0xfe, 0x0d, 0x6c, 0x92, 0x7e, 0xa2, 0xda, 0xf8,
- 0xb7, 0x6a, 0xaa, 0xa5, 0x4c, 0xc0, 0x07, 0x62, 0xa5, 0xa9, 0x9d,
- 0x44, 0xda, 0x27, 0x30, 0xdb, 0x53, 0xfd, 0xad, 0x6e, 0x97, 0x62,
- 0x2b, 0xab, 0x30, 0xf0, 0x42, 0x6c, 0xfd, 0x3d, 0x97, 0xde, 0xff,
- 0xe1, 0xae, 0xd9, 0xb3, 0xd9, 0xee, 0x27, 0x41, 0x08, 0x82, 0xab,
- 0xe0, 0xc6, 0xed, 0x83, 0x7f, 0xdc, 0x81, 0xde, 0x01, 0x3a, 0x32,
- 0x1c, 0xd4, 0xdf, 0x93, 0x4b, 0xd7, 0x9c, 0xc1, 0x58, 0x54, 0x5a,
- 0x6a, 0x98, 0xe5, 0xf0, 0x1e, 0x30, 0xfb, 0xb6, 0x4b, 0x09, 0x43,
- 0x80, 0xef, 0xc1, 0xb2, 0x72, 0x4d, 0x34, 0xd1, 0x16, 0x25, 0x70,
- 0xb3, 0x4e, 0x77, 0x45, 0x6c, 0x47, 0x8e, 0x58, 0xff, 0xb8, 0x37,
- 0x76, 0x37, 0x5b, 0x97, 0x78, 0x72, 0x33, 0x06, 0xd5, 0x6a, 0x13,
- 0x3d, 0x95, 0xb3, 0xb9, 0xe0, 0x06, 0xf0, 0xdf, 0xd4, 0xd8, 0x3f,
- 0x15, 0x3a, 0x1d, 0x84, 0x57, 0xc5, 0x18, 0xfc, 0x96, 0x4b, 0xa4,
- 0xd7, 0xc1, 0x10, 0xd6, 0xae, 0xf3, 0xb9, 0xfe, 0xc6, 0x35, 0xb5,
- 0x3c, 0xca, 0x18, 0xb3, 0xaa, 0xaf, 0x8a, 0xa6, 0xc2, 0x72, 0x02,
- 0x67, 0x60, 0x38, 0xcc, 0x0f, 0x89, 0x50, 0x39, 0x2b, 0x6c, 0xd6,
- 0x21, 0x24, 0x90, 0xfe, 0x78, 0xf5, 0x25, 0x91, 0x4a, 0x47, 0xe9,
- 0xcc, 0x5d, 0xfe, 0xf3, 0x15, 0xb4, 0x89, 0x0c, 0x4a, 0xe3, 0x38,
- 0x08, 0xc5, 0xd9, 0x63, 0xe6, 0xcd, 0x6f, 0xcc, 0xe3, 0x7b, 0xaf,
- 0x72, 0x25, 0xb8, 0x32, 0x9d, 0xd0, 0xbb, 0x01, 0x00, 0x02, 0x9c,
- 0x2c, 0x0d, 0x01, 0x6e, 0x54, 0x36, 0xc6, 0x2f, 0x25, 0xdb, 0x74,
- 0x08, 0x04, 0x66, 0x12, 0x72, 0x05, 0x73, 0x4a, 0x76, 0x15, 0xf4,
- 0xbe, 0xf1, 0xab, 0x98, 0x7a, 0x47, 0x28, 0xdd, 0xcc, 0xd5, 0x96,
- 0xc9, 0x1c, 0x9b, 0x77, 0x89, 0xe8, 0xec, 0x3c, 0x7f, 0x88, 0xb0,
- 0x84, 0x9c, 0x72, 0x0b, 0x71, 0xfe, 0xac, 0xe1, 0x0e, 0x0d, 0x8a,
- 0x12, 0xd8, 0xe2, 0x89, 0xf9, 0x09, 0xd4, 0x54, 0x87, 0xe1, 0xee,
- 0x40, 0x2a, 0xc2, 0x17, 0x8e, 0xb9, 0xac, 0xb0, 0xde, 0xcd, 0xec,
- 0x93, 0x15, 0x40, 0x48, 0xd5, 0xa6, 0x80, 0x97, 0x57, 0x56, 0x54,
- 0x21, 0xf7, 0x25, 0xd3, 0xbf, 0xcb, 0x20, 0xf1, 0x73, 0xe8, 0x8c,
- 0x11, 0xc1, 0x63, 0x15, 0x06, 0x37, 0xb9, 0xd8, 0x36, 0x42, 0xd9,
- 0x0a, 0x29, 0x3c, 0x31, 0x46, 0x92, 0xac, 0x84, 0xa9, 0x83, 0x1c,
- 0x3e, 0xe8, 0xc9, 0x7b, 0x5c, 0xe0, 0x8c, 0x1f, 0x7c, 0x77, 0xd6,
- 0x1a, 0x3a, 0x7f, 0x03, 0x44, 0x79, 0xc1, 0x05, 0xe2, 0x94, 0x42,
- 0x3c, 0xe7, 0xcd, 0x55, 0x84, 0xce, 0x9e, 0xeb, 0x34, 0xc8, 0x77,
- 0x85, 0xd8, 0x00, 0xff, 0x24, 0x03, 0xf3, 0xa9, 0xc6, 0x3d, 0x81,
- 0xee, 0x85, 0xac, 0x2d, 0xc1, 0xbb, 0xbd, 0x67, 0xaa, 0xa7, 0x68,
- 0x90, 0x76, 0x59, 0xb5, 0x17, 0x1f, 0x8e, 0x0d, 0x70, 0x99, 0x69,
- 0xa5, 0xa2, 0xe3, 0x61, 0x1a, 0x49, 0x29, 0x21, 0x0d, 0xed, 0xb1,
- 0xdb, 0x06, 0xb8, 0x65, 0xf0, 0xdf, 0x73, 0x2d, 0x35, 0xea, 0x3c,
- 0x2d, 0x30, 0xbc, 0x24, 0xa1, 0x55, 0x78, 0x84, 0xc8, 0x44, 0xa4,
- 0x93, 0x3d, 0x68, 0x61, 0x0a, 0xd3, 0x5a, 0x0f, 0x17, 0x9c, 0x0a,
- 0x64, 0x0e, 0x54, 0xd1, 0x01, 0x6e, 0x0b, 0x1d, 0xf2, 0x12, 0x5d,
- 0xef, 0x11, 0x75, 0x0b, 0x87, 0xd2, 0xa9, 0x20, 0xf3, 0xa7, 0x93,
- 0x8b, 0xdc, 0x52, 0x16, 0x7b, 0x46, 0x9d, 0x01, 0x1d, 0xe3, 0x3c,
- 0xb1, 0x5b, 0xb3, 0x71, 0xf1, 0xa8, 0xa3, 0xbd, 0xfa, 0x82, 0x65,
- 0xbc, 0x17, 0xc8, 0x50, 0xff, 0xe3, 0xf7, 0x2e, 0x29, 0x44, 0x64,
- 0x43, 0xca, 0x2e, 0x7f, 0x2f, 0xd6, 0x86, 0xcb, 0x92, 0xba, 0xa7,
- 0xf7, 0xcf, 0x89, 0x54, 0x71, 0xf9, 0x82, 0xa4, 0x24, 0x73, 0xf2,
- 0x59, 0xa8, 0x0d, 0x89, 0x52, 0xbd, 0xaf, 0xce, 0x2e, 0xee, 0x73,
- 0x0d, 0x3c, 0xee, 0xfd, 0x90, 0x8e, 0xd8, 0x94, 0x13, 0xcd, 0xc3,
- 0x6e, 0x80, 0x6b, 0x70, 0xc1, 0x7f, 0x64, 0x35, 0x54, 0xea, 0xd7,
- 0x64, 0x29, 0xcd, 0x2d, 0xef, 0x9d, 0xb0, 0x16, 0x90, 0x28, 0xa1,
- 0xfe, 0xd6, 0xbc, 0xb5, 0x73, 0xa3, 0xcc, 0xa2, 0x5d, 0xc7, 0x55,
- 0x24, 0xc7, 0xeb, 0x2f, 0xb7, 0x5c, 0x24, 0xbd, 0xab, 0x2f, 0x12,
- 0x53, 0xa5, 0xd9, 0xa3, 0x6d, 0x25, 0x80, 0x39, 0x15, 0x26, 0x05,
- 0xc5, 0x21, 0xec, 0x86, 0xa6, 0xe3, 0xed, 0x3f, 0x5a, 0xea, 0xad,
- 0x2e, 0xe2, 0x2f, 0x3d, 0x9e, 0x99, 0x03, 0x18, 0xdb, 0x10, 0x39,
- 0xc7, 0xcf, 0x60, 0xb1, 0x63, 0x94, 0xb5, 0xa2, 0x4e, 0x49, 0x74,
- 0x0c, 0x2b, 0x0d, 0x64, 0x75, 0x38, 0x2c, 0xc9, 0x9e, 0x68, 0x33,
- 0x94, 0xcf, 0x48, 0x35, 0x65, 0x3f, 0x42, 0x70, 0xee, 0x87, 0x3c,
- 0xce, 0xe5, 0xe0, 0xa1, 0xe0, 0xfe, 0xb7, 0xd8, 0x7c, 0xcc, 0xde,
- 0x43, 0x70, 0x33, 0x25, 0xa7, 0x7f, 0xca, 0xab, 0x2a, 0x5d, 0x73,
- 0x67, 0x36, 0x69, 0x49, 0xa0, 0x86, 0xee, 0x9f, 0xf3, 0x04, 0x63,
- 0x14, 0xa5, 0xcc, 0x31, 0x5e, 0x23, 0x8b, 0x99, 0x97, 0xac, 0x34,
- 0x22, 0x58, 0x2d, 0xc8, 0x60, 0x42, 0x85, 0x77, 0x7d, 0x95, 0xe7,
- 0xed, 0xed, 0x84, 0x30, 0x67, 0x38, 0xe5, 0xcd, 0xa9, 0xeb, 0x8b,
- 0xee, 0x1a, 0xf4, 0x4f, 0x09, 0xc4, 0x93, 0xe7, 0xca, 0xe4, 0x50,
- 0xd9, 0x9a, 0x75, 0x62, 0xcd, 0x6a, 0xa2, 0x06, 0xf5, 0x66, 0xab,
- 0xdf, 0xae, 0xe9, 0x78, 0x6d, 0xd7, 0x08, 0xd8, 0x97, 0xa8, 0xee,
- 0x46, 0xd9, 0x0a, 0x2d, 0xe2, 0x8f, 0x2a, 0x89, 0xbc, 0x09, 0xa7,
- 0xeb, 0x4d, 0x60, 0xcd, 0x09, 0x3e, 0xe4, 0x6b, 0x90, 0x6b, 0xd6,
- 0x66, 0x89, 0xc0, 0x46, 0x15, 0x4c, 0x2d, 0x69, 0xab, 0x81, 0xa8,
- 0xee, 0xad, 0xdf, 0xeb, 0xec, 0x28, 0xa1, 0xcf, 0xd1, 0xe0, 0xa5,
- 0x9e, 0x78, 0x89, 0x65, 0xbe, 0x6d, 0x8d, 0xa6, 0x34, 0x48, 0x41,
- 0x3e, 0x84, 0x9f, 0xf8, 0x47, 0x7f, 0xe8, 0x68, 0x26, 0x28, 0x1f,
- 0xc8, 0x16, 0xe1, 0x96, 0x35, 0x78, 0x3f, 0xd9, 0x43, 0xc2, 0x33,
- 0xb3, 0xc8, 0x3f, 0x3e, 0x9f, 0xdf, 0x04, 0x7f, 0x9c, 0x4a, 0xe6,
- 0xdb, 0xd6, 0x10, 0xbc, 0x34, 0x4e, 0xc8, 0x41, 0xcf, 0x2d, 0x70,
- 0xe3, 0x09, 0xa0, 0x4a, 0xe0, 0x82, 0xef, 0xf0, 0x6d, 0xff, 0x5d,
- 0x0b, 0x90, 0x59, 0x26, 0xca, 0x13, 0xd3, 0xa0, 0x34, 0x3a, 0x73,
- 0x71, 0x7a, 0x4e, 0x47, 0xfa, 0x3e, 0x58, 0xd2, 0xb8, 0xc6, 0x1a,
- 0x0b, 0x85, 0x1a, 0xac, 0x43, 0xf3, 0x06, 0x13, 0x3b, 0x92, 0x6b,
- 0xf9, 0x55, 0x94, 0x0d, 0x51, 0x7a, 0x38, 0xdf, 0xa4, 0x3d, 0xb0,
- 0x0b, 0x76, 0x09, 0xf8, 0x63, 0xa0, 0xc7, 0xe3, 0x50, 0x63, 0x2d,
- 0x05, 0x79, 0x36, 0xa3, 0x90, 0x68, 0x9a, 0x99, 0xb8, 0x13, 0xd1,
- 0x45, 0x3d, 0x98, 0x6e, 0x24, 0x26, 0x4b, 0x47, 0xd3, 0xb2, 0x37,
- 0x98, 0xc2, 0xdf, 0x09, 0xe7, 0xc4, 0x9f, 0x2a, 0xab, 0x39, 0xab,
- 0xa4, 0x6d, 0x40, 0xc1, 0x3f, 0x5c, 0xa0, 0x41, 0x92, 0x64, 0xf1,
- 0x6a, 0xd6, 0x8d, 0xab, 0x44, 0xbf, 0xec, 0xac, 0x38, 0xc6, 0x4f,
- 0x9a, 0x56, 0x7e, 0xe3, 0x69, 0xe5, 0xce, 0xe2, 0x43, 0x99, 0xdc,
- 0xe2, 0x38, 0xa6, 0xbf, 0x51, 0x98, 0x39, 0x32, 0xf1, 0xb4, 0x48,
- 0xa6, 0x4f, 0x75, 0xc0, 0xfd, 0x39, 0x84, 0xa5, 0x5d, 0x9a, 0xeb,
- 0xb4, 0x9b, 0xe5, 0x9c, 0x6f, 0x40, 0x8d, 0x09, 0xfd, 0xba, 0x0a,
- 0xfb, 0xbf, 0xd2, 0x62, 0x0b, 0x87, 0xc3, 0x55, 0xa8, 0xa6, 0xe1,
- 0xbc, 0x97, 0x4a, 0x7a, 0x31, 0xdf, 0xff, 0x57, 0xdc, 0x16, 0xd1,
- 0x7d, 0xd4, 0xd2, 0xc7, 0xeb, 0xfd, 0x0d, 0x3a, 0x30, 0x7b, 0x64,
- 0xd0, 0x9f, 0xda, 0xba, 0xf3, 0x4a, 0x95, 0x6f, 0xf7, 0x63, 0x15,
- 0x0f, 0x15, 0x26, 0x9b, 0x77, 0xcc, 0xa4, 0x10, 0x16, 0xb6, 0x95,
- 0x66, 0x67, 0x76, 0x92, 0xbf, 0xa7, 0x7d, 0x25, 0x03, 0x0f, 0x0d,
- 0x6a, 0x64, 0x68, 0xf4, 0xcf, 0x49, 0x2e, 0x67, 0x4b, 0x22, 0x37,
- 0xe6, 0xb9, 0x0b, 0xb1, 0xb4, 0xcb, 0x10, 0x2a, 0x29, 0xe0, 0x06,
- 0x8e, 0x68, 0x84, 0x25, 0xe8, 0x5b, 0x19, 0x1d, 0x1c, 0x83, 0x3b,
- 0xe0, 0xd0, 0x14, 0x5f, 0xc1, 0x80, 0x3b, 0x22, 0x3f, 0x6d, 0xbb,
- 0x34, 0x5b, 0xfc, 0x23, 0x19, 0x68, 0x4b, 0x6c, 0xc0, 0xea, 0xd5,
- 0xe7, 0xd1, 0xf8, 0x2f, 0x0f, 0x68, 0x21, 0x01, 0x91, 0x94, 0xf2,
- 0x75, 0x2c, 0x0f, 0x80, 0x0e, 0x0c, 0x98, 0x88, 0x46, 0x2c, 0x73,
- 0x54, 0x18, 0xa1, 0x4d, 0x40, 0x85, 0xd1, 0x74, 0x18, 0x48, 0x16,
- 0x62, 0xee, 0xfb, 0xf2, 0x74, 0x54, 0x8f, 0xd9, 0x31, 0x92, 0x0a,
- 0x41, 0xd2, 0x26, 0xed, 0x78, 0x9f, 0xac, 0xbd, 0x12, 0xd2, 0xf9,
- 0x28, 0x90, 0x46, 0xc0, 0xab, 0x8d, 0x94, 0x9d, 0x37, 0x73, 0x9a,
- 0xc3, 0xb5, 0xa6, 0xe0, 0x7c, 0x17, 0xbb, 0x68, 0xa8, 0xe3, 0x69,
- 0x30, 0x04, 0x02, 0xe5, 0xdb, 0x75, 0xb1, 0xa9, 0x4a, 0xbf, 0xed,
- 0x56, 0xb0, 0x43, 0x76, 0xf2, 0x2b, 0x8c, 0x39, 0x99, 0xc2, 0x2a,
- 0xd6, 0xb7, 0x48, 0xd0, 0x05, 0x36, 0xa4, 0x44, 0x97, 0x70, 0xfb,
- 0x6c, 0x7a, 0x21, 0xd6, 0xf9, 0x79, 0x40, 0x93, 0xe0, 0x87, 0x7f,
- 0x1a, 0xcb, 0xbb, 0x8d, 0x5e, 0x01, 0x8e, 0x4b, 0x5b, 0x8e, 0x45,
- 0xe3, 0xf7, 0xf5, 0x32, 0x55, 0xb4, 0x80, 0x58, 0x9a, 0x1d, 0x3f,
- 0x40, 0x8c, 0x90, 0x5f, 0xd4, 0xfa, 0x50, 0xac, 0xca, 0xe8, 0x2c,
- 0x0f, 0xc6, 0x45, 0x70, 0xa4, 0x8b, 0x56, 0x55, 0xd9, 0xbb, 0xdb,
- 0xae, 0x44, 0x9d, 0xda, 0xea, 0xc5, 0xbf, 0x7c, 0x88, 0xa0, 0x24,
- 0xd4, 0x2d, 0xf8, 0x9c, 0x45, 0x86, 0x75, 0xa2, 0x4e, 0x58, 0x65,
- 0x84, 0x0a, 0x14, 0xab, 0x61, 0xb7, 0x24, 0x6e, 0x9a, 0x6c, 0xb6,
- 0x3e, 0xab, 0x19, 0xe5, 0x1b, 0x9b, 0xe3, 0x10, 0x02, 0x11, 0x14,
- 0x87, 0x96, 0x47, 0x0c, 0xbd, 0xd7, 0x45, 0xbd, 0x04, 0xa1, 0xb5,
- 0x7f, 0x0a, 0xe6, 0x50, 0x10, 0x72, 0xe3, 0x32, 0xe8, 0xad, 0x8f,
- 0x3c, 0x93, 0x6f, 0x0a, 0x73, 0x66, 0xc9, 0xb1, 0xb3, 0xa6, 0xde,
- 0xef, 0x09, 0x78, 0x33, 0x99, 0x4b, 0x18, 0xcc, 0x2c, 0xea, 0xd1,
- 0x5e, 0x02, 0xa8, 0xc2, 0x18, 0x90, 0xa1, 0x37, 0x15, 0xb7, 0xb5,
- 0xcc, 0x25, 0xc6, 0x62, 0x42, 0x48, 0x75, 0xc7, 0x92, 0x89, 0xa2,
- 0x2e, 0xa9, 0x53, 0xae, 0xa7, 0x68, 0x11, 0x24, 0xcd, 0xe7, 0x0e,
- 0xfb, 0x20, 0x81, 0x86, 0x84, 0xe7, 0x98, 0x6e, 0x6a, 0x06, 0xcf,
- 0x67, 0xb7, 0x01, 0x5b, 0xea, 0xb3, 0x6e, 0x0e, 0x5d, 0x67, 0x7b,
- 0x65, 0x9e, 0x9a, 0x9f, 0x4d, 0x27, 0xbc, 0xcd, 0x23, 0xed, 0x0d,
- 0x78, 0x29, 0x18, 0xab, 0xfb, 0x45, 0x12, 0xac, 0x44, 0xd1, 0xfc,
- 0xa7, 0x7a, 0xac, 0x3a, 0xe5, 0x1c, 0xef, 0xd4, 0xca, 0xb9, 0x81,
- 0xdd, 0x51, 0xa9, 0x4f, 0x24, 0x26, 0x2b, 0xff, 0x41, 0xc8, 0xdd,
- 0x8f, 0x43, 0xd7, 0xec, 0x17, 0x48, 0xfc, 0x6d, 0x85, 0x9b, 0xd2,
- 0x33, 0xa7, 0x03, 0xa5, 0xf3, 0xe4, 0x4c, 0x2a, 0xbc, 0x84, 0x97,
- 0x81, 0xcc, 0x24, 0x52, 0x8c, 0x79, 0xf5, 0x40, 0xf0, 0x98, 0xad,
- 0x3e, 0x2d, 0xca, 0xff, 0x1c, 0xce, 0x4c, 0x00, 0xc3, 0x14, 0xd9,
- 0xf1, 0x19, 0x1b, 0xae, 0xe9, 0x7c, 0xb7, 0x80, 0xe2, 0x7b, 0x8c,
- 0x4b, 0x6e, 0x8b, 0x4f, 0x05, 0xf7, 0xb0, 0x63, 0x2f, 0x83, 0x13,
- 0xb5, 0x60, 0x5f, 0xae, 0xc1, 0xa0, 0xa6, 0x99, 0x0d, 0xfc, 0x60,
- 0xd2, 0x19, 0xe5, 0xe6, 0xa2, 0x08, 0x98, 0xeb, 0x5e, 0x6b, 0x11,
- 0xe3, 0x23, 0x32, 0x5b, 0x9c, 0x8f, 0xb8, 0x09, 0x63, 0x5f, 0x26,
- 0xf1, 0xb8, 0x1d, 0xc5, 0xf7, 0xc7, 0x92, 0x61, 0x53, 0xfd, 0xb4,
- 0x6d, 0xbb, 0x2c, 0x0d, 0x5e, 0x08, 0xe2, 0x76, 0xe2, 0x22, 0x68,
- 0xd7, 0xf0, 0xcd, 0xa4, 0x63, 0x33, 0xf7, 0x2b, 0xf6, 0x35, 0x8a,
- 0xac, 0x5a, 0x02, 0x33, 0x06, 0x75, 0x28, 0x14, 0x5b, 0x46, 0x27,
- 0x2f, 0x06, 0x74, 0xb1, 0x1f, 0x2d, 0x5f, 0x1e, 0xf5, 0xe0, 0xd0,
- 0x6f, 0xb2, 0x77, 0xcb, 0x77, 0x77, 0x58, 0x64, 0xb3, 0x42, 0x14,
- 0xba, 0x04, 0x95, 0x50, 0x79, 0x1d, 0xb5, 0x99, 0x1d, 0x55, 0xeb,
- 0xfa, 0x55, 0x29, 0xb4, 0xf4, 0xd7, 0x1a, 0xed, 0xb6, 0x5c, 0x5d,
- 0x4b, 0x5c, 0xe8, 0x89, 0xd7, 0x61, 0x78, 0xca, 0x6e, 0x1d, 0x9a,
- 0xd1, 0x62, 0x06, 0x2e, 0x3e, 0xaf, 0xc1, 0x45, 0x50, 0x6d, 0xb2,
- 0x4b, 0x2c, 0xd5, 0x18, 0xad, 0xe1, 0xf8, 0xa8, 0xd0, 0xe4, 0x14,
- 0xb9, 0x49, 0x99, 0xca, 0x1b, 0x61, 0x80, 0xf2, 0x1c, 0xd4, 0xfd,
- 0xbd, 0x09, 0xeb, 0x15, 0x9e, 0x8c, 0x24, 0xf3, 0x00, 0x85, 0x9d,
- 0x62, 0x6d, 0x85, 0xea, 0xca, 0xf6, 0x41, 0x65, 0xf1, 0x55, 0x26,
- 0x9e, 0x93, 0x25, 0x8f, 0xfe, 0x3c, 0xfb, 0x16, 0x79, 0xf0, 0x10,
- 0x2f, 0x17, 0x01, 0xcb, 0x23, 0x65, 0xac, 0x4d, 0x51, 0xe0, 0x10,
- 0x64, 0x43, 0xba, 0x08, 0x32, 0x55, 0x45, 0x1b, 0xb7, 0x20, 0xbc,
- 0xd9, 0x24, 0x36, 0x16, 0x5c, 0xcf, 0x09, 0x3c, 0x33, 0xe0, 0x43,
- 0xb6, 0xd2, 0x15, 0x5b, 0xe8, 0x5d, 0x91, 0x34, 0x07, 0xb2, 0x25,
- 0x51, 0x7c, 0x70, 0x0a, 0x89, 0x79, 0xe6, 0x9a, 0x16, 0xb7, 0xad,
- 0x09, 0x1a, 0x06, 0x14, 0x7b, 0xcd, 0xe4, 0x3a, 0x09, 0x76, 0xd3,
- 0x32, 0x92, 0x47, 0x87, 0xd9, 0x1c, 0xd5, 0x0d, 0x1f, 0xc4, 0xbd,
- 0xcc, 0xe7, 0x56, 0xc3, 0xad, 0x86, 0x5f, 0x36, 0xbc, 0x94, 0x3f,
- 0x23, 0xb3, 0xcf, 0xb2, 0xc7, 0xcf, 0xef, 0xeb, 0x5b, 0x14, 0xa5,
- 0xe4, 0xd0, 0xb7, 0xe8, 0xbd, 0x1f, 0x74, 0x32, 0x28, 0x55, 0xb8,
- 0xdd, 0x39, 0xc4, 0xc9, 0x12, 0x57, 0xa1, 0xa6, 0xa0, 0x9d, 0xde,
- 0x12, 0x1a, 0x58, 0x0d, 0xc8, 0x31, 0xe3, 0xa7, 0x0f, 0x02, 0xec,
- 0x6d, 0x05, 0xa8, 0x3b, 0xf4, 0x77, 0x31, 0xe3, 0xf8, 0x1e, 0x12,
- 0xd4, 0xb6, 0xa6, 0x2f, 0x52, 0xed, 0x97, 0xbf, 0xb7, 0xfa, 0x06,
- 0x99, 0x94, 0x9d, 0x9f, 0x63, 0xad, 0x0b, 0xc2, 0x2d, 0xe2, 0x03,
- 0xc4, 0x77, 0xf9, 0x8e, 0x89, 0x9b, 0x23, 0x2c, 0x8c, 0x81, 0x73,
- 0x54, 0xdb, 0x05, 0x71, 0x5c, 0x05, 0x87, 0x70, 0x7a, 0x25, 0x8a,
- 0xbe, 0x6a, 0x1c, 0x2a, 0xd0, 0xfe, 0x5e, 0xec, 0x0a, 0x3f, 0x01,
- 0x09, 0xcd, 0xcc, 0x9b, 0x60, 0xba, 0xa2, 0xc0, 0x4f, 0xb7, 0x9b,
- 0xdb, 0x23, 0xc6, 0xeb, 0x1a, 0xed, 0x17, 0x49, 0x6b, 0x8b, 0x39,
- 0x37, 0x60, 0xaa, 0x69, 0x53, 0x52, 0x3c, 0x29, 0x89, 0x37, 0x23,
- 0xbe, 0x8f, 0xde, 0x61, 0x28, 0xd4, 0x0b, 0x7c, 0xb5, 0xab, 0x27,
- 0xa7, 0x7e, 0xe4, 0x5f, 0x11, 0xe1, 0x1e, 0x0a, 0x62, 0x61, 0x28,
- 0x51, 0x56, 0x42, 0xa1, 0x7f, 0xb2, 0xa5, 0x85, 0xa8, 0x0a, 0xc2,
- 0xc5, 0xf6, 0x8b, 0x07, 0x3d, 0xf2, 0x91, 0xa7, 0xaa, 0x0b, 0x59,
- 0x46, 0xa6, 0xd6, 0xab, 0x43, 0x89, 0x06, 0x69, 0xac, 0x37, 0x6f,
- 0xef, 0x0f, 0xbd, 0x27, 0xdc, 0x15, 0xdb, 0xd9, 0x34, 0xba, 0x4e,
- 0x74, 0x73, 0xb8, 0xab, 0x45, 0xd4, 0x18, 0x97, 0x4f, 0x49, 0xe3,
- 0x49, 0xfe, 0xcd, 0xde, 0xd7, 0x07, 0x1f, 0x0e, 0x51, 0x8b, 0x63,
- 0x31, 0xf9, 0x29, 0x2e, 0x82, 0xe0, 0x3c, 0xc2, 0xa8, 0xbd, 0x5e,
- 0x2b, 0xfc, 0x2a, 0x61, 0x8e, 0x07, 0x69, 0xd1, 0x2c, 0x60, 0xda,
- 0x97, 0xd3, 0x20, 0x90, 0x91, 0xd8, 0x3a, 0xae, 0x4f, 0xc2, 0xd4,
- 0x43, 0xb9, 0x66, 0x42, 0xf0, 0x0b, 0x8a, 0x99, 0x55, 0xd6, 0x35,
- 0xd7, 0x15, 0xcc, 0x4d, 0x46, 0xee, 0x45, 0x1d, 0xf9, 0x81, 0xff,
- 0x01, 0xc7, 0x82, 0x0b, 0x35, 0x85, 0x09, 0xb1, 0x80, 0x94, 0xde,
- 0x2b, 0xc1, 0x27, 0x68, 0xaf, 0x50, 0x80, 0xbb, 0xe7, 0xf7, 0x75,
- 0xf6, 0xa3, 0xf2, 0x69, 0x9a, 0xfe, 0x8f, 0x89, 0xb0, 0x5b, 0x1e,
- 0x9e, 0x76, 0x0a, 0x3d, 0xfc, 0x8c, 0xe7, 0x96, 0x33, 0x46, 0xec,
- 0xc1, 0x28, 0xfd, 0xcd, 0x83, 0xbf, 0x34, 0xfd, 0x6f, 0x4b, 0x7e,
- 0xf1, 0x44, 0x40, 0x67, 0xeb, 0xdc, 0x79, 0xbc, 0x05, 0xe8, 0x10,
- 0xb3, 0xeb, 0xa8, 0xfc, 0x34, 0x9b, 0x3e, 0xe1, 0x88, 0x1c, 0xf5,
- 0xbe, 0x3d, 0xfa, 0x1c, 0x99, 0xd8, 0x12, 0xd0, 0x02, 0x61, 0xb4,
- 0x0d, 0x83, 0x74, 0x1f, 0x0d, 0xa9, 0x96, 0x2c, 0x4e, 0x54, 0xed,
- 0xf0, 0x63, 0xd3, 0xfb, 0x97, 0xb7, 0x4d, 0xef, 0x35, 0x57, 0x8b,
- 0x79, 0x32, 0xd1, 0x94, 0xe1, 0xe6, 0x90, 0x9a, 0xea, 0x23, 0x32,
- 0x5b, 0xa9, 0xfc, 0xe1, 0x78, 0x66, 0x07, 0x42, 0x05, 0x4a, 0x8f,
- 0x06, 0x56, 0x6d, 0x39, 0xd7, 0xd5, 0xa2, 0x76, 0x31, 0xd1, 0xe5,
- 0x03, 0x57, 0xe0, 0x6e, 0x04, 0x8b, 0x46, 0x65, 0x43, 0x0b, 0xa1,
- 0x7b, 0x3f, 0x45, 0x4a, 0x1a, 0x21, 0xee, 0x86, 0x6b, 0x96, 0x99,
- 0x78, 0x31, 0xbb, 0xc2, 0x2a, 0x0b, 0xb7, 0x43, 0xd4, 0x6f, 0x93,
- 0xba, 0xb6, 0x09, 0x17, 0x2c, 0x5f, 0xfd, 0xc1, 0xd5, 0xc4, 0xf3,
- 0xb8, 0x4f, 0xf6, 0xa2, 0xac, 0x1f, 0x54, 0x15, 0xab, 0x29, 0x58,
- 0xd1, 0x56, 0x80, 0x34, 0xa4, 0xcd, 0x09, 0xb8, 0x79, 0x72, 0xc2,
- 0x8b, 0x29, 0x05, 0xd4, 0xc3, 0x4b, 0x00, 0x50, 0xbe, 0xc3, 0x64,
- 0xa7, 0xad, 0xe4, 0xb3, 0x56, 0x67, 0x06, 0xad, 0x1d, 0x5f, 0xf2,
- 0xa8, 0x22, 0x99, 0xc4, 0x00, 0xdc, 0x0e, 0x74, 0xea, 0x89, 0x84,
- 0x95, 0x5e, 0x14, 0x0a, 0x78, 0x03, 0x63, 0xf6, 0x32, 0xde, 0x70,
- 0x4d, 0x66, 0x7c, 0xae, 0x9b, 0x1d, 0x5a, 0x20, 0xd1, 0x26, 0xa8,
- 0x01, 0x63, 0x73, 0x9e, 0x88, 0x14, 0x92, 0x35, 0x9b, 0x10, 0x82,
- 0xdb, 0x4b, 0x01, 0xe8, 0xe9, 0x7a, 0x54, 0xb0, 0xc5, 0x9e, 0xd9,
- 0x1b, 0xc2, 0xa9, 0x42, 0x8b, 0x70, 0xb7, 0x2a, 0xed, 0x3a, 0x79,
- 0x49, 0xdf, 0x11, 0x57, 0x0c, 0x07, 0x6a, 0xe4, 0x3a, 0x14, 0xf3,
- 0x83, 0xfc, 0x46, 0x9c, 0xd2, 0x77, 0xff, 0xf6, 0xca, 0x45, 0xcc,
- 0xec, 0x88, 0xce, 0x9d, 0x05, 0xbc, 0x66, 0x1b, 0x28, 0x7a, 0x5a,
- 0x18, 0x69, 0x25, 0x97, 0x11, 0x63, 0xb3, 0x54, 0x7d, 0x75, 0xcc,
- 0xc0, 0xfc, 0xf3, 0xfc, 0xf0, 0x0f, 0x47, 0xdc, 0x88, 0x38, 0x31,
- 0x89, 0x44, 0xef, 0x9b, 0x1b, 0x1a, 0x46, 0x67, 0xa5, 0xa2, 0x16,
- 0x96, 0x61, 0x49, 0x37, 0x91, 0xda, 0x3f, 0x71, 0xcb, 0x07, 0x68,
- 0xd3, 0x2c, 0x47, 0x8c, 0xfa, 0xe6, 0xb9, 0x99, 0x72, 0x09, 0xb1,
- 0xe6, 0xd8, 0xe2, 0xf6, 0xb7, 0xd5, 0xe0, 0x4d, 0xf4, 0x0c, 0xc1,
- 0x0d, 0xdc, 0x35, 0xc2, 0xfa, 0x57, 0xee, 0x7c, 0x83, 0x21, 0x3d,
- 0xf1, 0xcc, 0x90, 0xce, 0x71, 0xaa, 0x9e, 0x8c, 0x2e, 0xdf, 0x8c,
- 0x43, 0x41, 0x3d, 0x4f, 0x09, 0xe3, 0x33, 0xde, 0x69, 0x55, 0x56,
- 0x7d, 0x41, 0x26, 0x01, 0x1b, 0x84, 0xb3, 0x16, 0xf0, 0x7a, 0xfc,
- 0xd2, 0xc8, 0x13, 0xbf, 0xac, 0x9c, 0x6f, 0xf3, 0x7c, 0xbe, 0xf9,
- 0x67, 0x38, 0xb7, 0x60, 0xf3, 0x07, 0xf7, 0x4e, 0x23, 0x1e, 0xfc,
- 0xbd, 0xd4, 0x32, 0x73, 0xf4, 0xd2, 0x9b, 0x20, 0x11, 0x97, 0x72,
- 0xec, 0xe2, 0xe1, 0x88, 0xef, 0xbe, 0x12, 0xee, 0x59, 0x99, 0x56,
- 0x12, 0xcd, 0xcf, 0xea, 0xaa, 0x2a, 0x7a, 0x6d, 0xac, 0x2f, 0x06,
- 0xa1, 0x7d, 0x6c, 0x64, 0x8d, 0x5c, 0xa9, 0x63, 0x80, 0x17, 0x54,
- 0x12, 0x2e, 0xb9, 0x14, 0x97, 0xb5, 0x96, 0xf4, 0xf8, 0x8b, 0xad,
- 0x10, 0x31, 0xbc, 0xa6, 0x26, 0xc8, 0x82, 0x44, 0x80, 0xb0, 0xc6,
- 0x43, 0x7d, 0x1a, 0xed, 0xd6, 0x8f, 0xbe, 0x29, 0x02, 0x4d, 0x61,
- 0x1b, 0xe3, 0xec, 0x09, 0xc2, 0xa0, 0x41, 0x1d, 0x74, 0x60, 0x28,
- 0xaa, 0x24, 0xfc, 0xc2, 0x8a, 0xa9, 0x79, 0xa2, 0xb6, 0x1e, 0x16,
- 0x6a, 0x62, 0x98, 0xea, 0x1d, 0x61, 0x4c, 0x79, 0xe2, 0xf6, 0xe4,
- 0x50, 0xb1, 0x21, 0xfa, 0xac, 0x68, 0x84, 0x58, 0x34, 0x62, 0x34,
- 0xc0, 0xad, 0x45, 0x6c, 0xd9, 0x21, 0xbc, 0x95, 0x54, 0xf1, 0xf7,
- 0xbe, 0x7e, 0x32, 0xcc, 0x7a, 0x00, 0xd4, 0x86, 0xeb, 0x1a, 0x97,
- 0x9c, 0x04, 0x9a, 0x47, 0x77, 0xa7, 0xf2, 0x11, 0xfd, 0x0f, 0xd9,
- 0xb8, 0x60, 0x03, 0xb3, 0x77, 0xa3, 0x76, 0xd8, 0xf7, 0x09, 0xd9,
- 0x29, 0x19, 0xbf, 0x29, 0x64, 0x56, 0x7d, 0xfa, 0x45, 0x13, 0x74,
- 0xc5, 0x56, 0x2b, 0x4d, 0xf5, 0xae, 0x83, 0xb7, 0xdc, 0x57, 0xb0,
- 0xdb, 0x6d, 0xd2, 0xb6, 0x1c, 0xf3, 0xc9, 0x67, 0x31, 0x9f, 0x9e,
- 0xa1, 0x9f, 0xbd, 0xe0, 0x58, 0x10, 0x61, 0x7d, 0xb0, 0x60, 0xdd,
- 0x8a, 0x20, 0xdf, 0x72, 0x5b, 0xdb, 0x22, 0xf8, 0x8c, 0xe7, 0x29,
- 0x6e, 0x94, 0xfd, 0xc1, 0x59, 0x2a, 0x70, 0xf7, 0x85, 0x1a, 0x4f,
- 0xd8, 0x4b, 0x10, 0x80, 0xd3, 0x72, 0xfd, 0xc0, 0x1d, 0xb6, 0x52,
- 0x5f, 0xf4, 0x02, 0x87, 0x2d, 0x36, 0x80, 0xe1, 0xf5, 0xad, 0xac,
- 0xd1, 0x4d, 0xfa, 0x33, 0xad, 0xe4, 0x40, 0xc7, 0x4d, 0xb6, 0x3e,
- 0xfe, 0xec, 0xef, 0xd0, 0x21, 0xe1, 0xe7, 0x98, 0x26, 0x09, 0x9b,
- 0x25, 0x10, 0x96, 0x92, 0x1c, 0x19, 0xfe, 0x11, 0xd8, 0xda, 0xb6,
- 0x12, 0x95, 0x6d, 0x3e, 0x0c, 0xa2, 0x8c, 0xa4, 0x66, 0x2e, 0x57,
- 0x2a, 0xe4, 0x90, 0x02, 0xd4, 0x3e, 0x0b, 0x8c, 0xfe, 0x7e, 0x86,
- 0x9a, 0x59, 0xe7, 0x67, 0x50, 0xcb, 0xe9, 0x76, 0x48, 0x0a, 0x3c,
- 0xd0, 0x54, 0xe0, 0xa7, 0x54, 0xa0, 0x95, 0x26, 0x3b, 0xdc, 0x5f,
- 0x7c, 0x54, 0x77, 0xc5, 0x34, 0x71, 0x2c, 0xbb, 0x85, 0x05, 0x5f,
- 0xb3, 0x27, 0xca, 0xd7, 0x7a, 0x9f, 0xc6, 0xbf, 0xc8, 0x73, 0x1a,
- 0x3f, 0x7a, 0x66, 0xfb, 0x96, 0x4c, 0x82, 0xfb, 0x0d, 0x77, 0x7c,
- 0x6d, 0x59, 0x33, 0x72, 0x0e, 0x45, 0x73, 0x26, 0x88, 0x32, 0xc2,
- 0xfa, 0x26, 0xfc, 0x2e, 0xb2, 0x3f, 0x23, 0x79, 0xaf, 0xd1, 0xcb,
- 0x7e, 0x1a, 0x81, 0x75, 0xf2, 0xbc, 0x62, 0x29, 0x35, 0x9b, 0xe1,
- 0x7a, 0x68, 0x81, 0xd0, 0xd7, 0xc6, 0x41, 0x33, 0x2c, 0xfc, 0xda,
- 0x03, 0xf6, 0xcd, 0x79, 0x85, 0x63, 0x13, 0xd9, 0x03, 0x92, 0x34,
- 0x3f, 0xba, 0x52, 0x86, 0x68, 0x70, 0x58, 0xc7, 0xe2, 0xda, 0xc5,
- 0xc8, 0x0e, 0x15, 0x8f, 0x57, 0xae, 0x2b, 0x5c, 0x2d, 0xf3, 0x33,
- 0x72, 0x9a, 0x13, 0xc3, 0x8d, 0x38, 0xbc, 0xf9, 0xe2, 0xfc, 0x02,
- 0xad, 0xb9, 0x3d, 0x31, 0xc1, 0x44, 0x84, 0xa3, 0x27, 0x79, 0x3a,
- 0x95, 0x2e, 0x9a, 0x0f, 0x49, 0xa3, 0x6f, 0xe8, 0xab, 0x3d, 0xe7,
- 0xd2, 0xbe, 0x93, 0xd1, 0x09, 0x51, 0x7c, 0x68, 0x30, 0x25, 0xda,
- 0xcd, 0xb0, 0x5a, 0x17, 0xaf, 0x4a, 0x67, 0x26, 0x75, 0x48, 0xd4,
- 0x78, 0xc1, 0x2e, 0xcf, 0x8b, 0xbb, 0xb8, 0x96, 0x18, 0xa9, 0xd0,
- 0x88, 0xf8, 0x21, 0xf5, 0xa9, 0x69, 0x6e, 0x5f, 0x73, 0x43, 0x40,
- 0xfa, 0xf9, 0x9e, 0x11, 0x08, 0x88, 0x57, 0xda, 0xc8, 0x3d, 0xdf,
- 0x7a, 0x34, 0xed, 0xa6, 0x5f, 0x3b, 0x34, 0x01, 0x36, 0xa6, 0xb2,
- 0x51, 0xfe, 0xd2, 0x49, 0x6b, 0xb8, 0xe4, 0x3f, 0x82, 0x74, 0xb3,
- 0x60, 0x23, 0xdc, 0xd2, 0xb6, 0x4e, 0x23, 0x46, 0x3a, 0x33, 0x33,
- 0x3f, 0x14, 0xe8, 0x35, 0x87, 0x31, 0xed, 0xe0, 0xbd, 0x16, 0xf4,
- 0xe1, 0x7d, 0x43, 0xdc, 0xf7, 0xd2, 0x5c, 0x6f, 0xbd, 0x38, 0xd4,
- 0x3c, 0xdf, 0xea, 0x65, 0xc4, 0x3e, 0xaf, 0xff, 0xb2, 0x44, 0xec,
- 0x19, 0xae, 0x34, 0x53, 0xbb, 0xec, 0xb9, 0x18, 0x92, 0xab, 0x87,
- 0x64, 0x45, 0x60, 0x24, 0x20, 0x62, 0xe4, 0x20, 0xa9, 0x88, 0xdf,
- 0xf1, 0xfe, 0x23, 0xc8, 0x6e, 0x8a, 0x84, 0x8f, 0xa8, 0x68, 0xfe,
- 0x01, 0x10, 0x36, 0x52, 0x17, 0xf3, 0x91, 0x23, 0xa2, 0x2e, 0xc4,
- 0x84, 0x73, 0x47, 0x82, 0xcf, 0x45, 0xbf, 0xf8, 0xa0, 0x79, 0xef,
- 0xf1, 0xee, 0x67, 0xd1, 0x9f, 0x58, 0x13, 0x24, 0x3a, 0x65, 0x40,
- 0x97, 0x76, 0xf1, 0xa8, 0xf7, 0x05, 0xe0, 0x04, 0xba, 0xc0, 0xd5,
- 0x4a, 0xb4, 0xb6, 0xd2, 0x0e, 0x34, 0x89, 0xee, 0x26, 0x1c, 0x92,
- 0x10, 0xd2, 0x19, 0xbf, 0x51, 0xb1, 0xa6, 0xe2, 0xc0, 0x35, 0xe8,
- 0x58, 0xe0, 0x60, 0x61, 0x34, 0xa0, 0x5b, 0x96, 0x67, 0x2c, 0x59,
- 0xb8, 0xfc, 0x78, 0x2d, 0x05, 0xd4, 0x48, 0x10, 0xf8, 0x8d, 0xbe,
- 0x0f, 0xb6, 0xea, 0xf6, 0xa3, 0x9d, 0x2b, 0x1e, 0x7f, 0x99, 0x60,
- 0x3a, 0x48, 0x86, 0x21, 0x3e, 0xc7, 0x82, 0xab, 0x55, 0xf4, 0xec,
- 0x87, 0x7c, 0x2b, 0xe3, 0x8e, 0x0f, 0xcb, 0x8b, 0xeb, 0x57, 0x83,
- 0x9a, 0x38, 0x2e, 0x4c, 0xe1, 0xde, 0x68, 0x3b, 0x36, 0xf2, 0x40,
- 0xed, 0x29, 0x45, 0xe9, 0x9c, 0x47, 0x28, 0xa3, 0x17, 0x3a, 0xc7,
- 0x99, 0x94, 0x2c, 0xf1, 0x17, 0x6f, 0x88, 0xcb, 0xd2, 0x99, 0xa6,
- 0xc2, 0x09, 0x1e, 0x9d, 0x20, 0x85, 0xec, 0xf4, 0x93, 0x00, 0xfe,
- 0x5e, 0xb0, 0x63, 0x2c, 0x6a, 0xb3, 0x01, 0xbd, 0x58, 0x3c, 0x72,
- 0xbc, 0x42, 0x05, 0xc2, 0xe8, 0x1a, 0xef, 0xbd, 0x02, 0xc5, 0xa3,
- 0xc5, 0x24, 0x8c, 0xd6, 0xec, 0xb8, 0x6a, 0xb9, 0x05, 0xd4, 0x16,
- 0x29, 0xe0, 0xe2, 0x8b, 0x11, 0x71, 0xeb, 0x10, 0x8a, 0x4d, 0x2d,
- 0x18, 0x0c, 0xaf, 0xe4, 0x3a, 0xd2, 0x17, 0xc2, 0x60, 0x6a, 0xa7,
- 0x7f, 0x3e, 0xb6, 0x4c, 0x61, 0xab, 0xaf, 0x38, 0x2b, 0x7a, 0xdd,
- 0xeb, 0x9f, 0x2c, 0xd9, 0x45, 0x2c, 0xf8, 0x9b, 0x0d, 0x27, 0xe5,
- 0x30, 0xec, 0xb8, 0xa7, 0x3d, 0x8c, 0x30, 0xe1, 0xb0, 0x3b, 0x7a,
- 0xcc, 0xa2, 0xe2, 0x46, 0x16, 0x02, 0xeb, 0x1d, 0x93, 0xa9, 0xc0,
- 0x76, 0x2c, 0x84, 0xe2, 0x89, 0x51, 0x9b, 0x58, 0x91, 0x3b, 0xd7,
- 0x15, 0x8d, 0x84, 0x6a, 0x73, 0x8f, 0x93, 0xa1, 0x2a, 0x28, 0x84,
- 0x9d, 0xc8, 0xc5, 0x34, 0x9d, 0xf9, 0x24, 0x93, 0x5b, 0xdc, 0xb7,
- 0xc7, 0x33, 0x9b, 0x51, 0xd6, 0x6f, 0x99, 0xe0, 0x58, 0x7d, 0xc1,
- 0x9e, 0x07, 0x47, 0x8f, 0x61, 0x26, 0xce, 0x76, 0xbb, 0x1b, 0xf7,
- 0x9e, 0x01, 0x00, 0x08, 0x12, 0x51, 0xab, 0x56, 0xee, 0x61, 0xb6,
- 0xfd, 0x83, 0x48, 0xe7, 0xd0, 0x19, 0xa3, 0x59, 0x98, 0x73, 0x19,
- 0x46, 0xeb, 0x25, 0xed, 0xb0, 0x55, 0x93, 0x20, 0x4a, 0x59, 0x37,
- 0xcb, 0xa0, 0x93, 0x91, 0x34, 0x87, 0xe1, 0xa0, 0x88, 0x62, 0x64,
- 0x48, 0x5d, 0x5b, 0x28, 0x6f, 0xca, 0x54, 0x4a, 0xd5, 0xf8, 0x1a,
- 0x58, 0x83, 0xec, 0x9a, 0x1c, 0x61, 0xf8, 0xbb, 0x6c, 0x2b, 0x48,
- 0xa9, 0x3f, 0xa4, 0xe2, 0xb5, 0xa5, 0x7f, 0x52, 0x13, 0x9b, 0x4d,
- 0xda, 0xb9, 0x21, 0xf8, 0xd7, 0xe4, 0x08, 0x78, 0x54, 0xcb, 0x47,
- 0x13, 0x26, 0x79, 0xfb, 0x3f, 0xc0, 0xe5, 0xf4, 0x0d, 0xb7, 0x78,
- 0x07, 0xe3, 0xb2, 0x7d, 0x4e, 0x97, 0x00, 0x6c, 0x29, 0x29, 0xec,
- 0x80, 0x35, 0x66, 0x24, 0x78, 0xbc, 0xbd, 0x89, 0x24, 0xd2, 0x23,
- 0xbe, 0x52, 0x7b, 0x5e, 0x76, 0xab, 0x75, 0xe9, 0xf3, 0xe1, 0xb3,
- 0x28, 0xb9, 0xf9, 0xee, 0xd2, 0x7d, 0x41, 0x3a, 0x97, 0xb6, 0x28,
- 0x02, 0x09, 0x1b, 0x0e, 0x39, 0x28, 0xad, 0x6c, 0xb4, 0xa5, 0x26,
- 0xb4, 0xe2, 0xa2, 0xe8, 0x4b, 0x57, 0x1c, 0xd8, 0x58, 0x51, 0x64,
- 0x5c, 0xe9, 0x9c, 0xb2, 0xdc, 0x82, 0x31, 0x9a, 0xe4, 0x5f, 0x91,
- 0x3b, 0x46, 0x99, 0x43, 0x47, 0x09, 0x83, 0xa1, 0xdf, 0x2a, 0x5e,
- 0x88, 0x75, 0x01, 0x52, 0x8a, 0x7d, 0x77, 0x41, 0x61, 0xc9, 0xf9,
- 0xff, 0xf7, 0x1d, 0xd8, 0x5d, 0x3d, 0x09, 0x6c, 0x4b, 0xf0, 0x4e,
- 0x4f, 0x5e, 0xf6, 0x18, 0xdb, 0xe6, 0x3d, 0x6f, 0x6f, 0xee, 0xb6,
- 0x06, 0x9e, 0x27, 0x88, 0xaa, 0xb7, 0xa0, 0x38, 0x7b, 0x8a, 0xdb,
- 0xb2, 0xaa, 0x7f, 0x79, 0x2e, 0x87, 0x63, 0x0f, 0x83, 0x2f, 0x5c,
- 0xfd, 0x43, 0xcd, 0x9e, 0xad, 0xba, 0x09, 0xaa, 0xcb, 0xdb, 0x54,
- 0xc8, 0xd2, 0xcd, 0x1a, 0xd8, 0x7f, 0x79, 0x55, 0xf4, 0x79, 0x77,
- 0xff, 0xd2, 0x9a, 0xcc, 0x8c, 0xee, 0x62, 0x86, 0xee, 0xae, 0xd9,
- 0xe9, 0xbf, 0x0c, 0x0f, 0xf0, 0x25, 0xc9, 0x03, 0x98, 0x3f, 0x9e,
- 0xf8, 0x19, 0xec, 0xa3, 0xef, 0x80, 0x34, 0xcd, 0xec, 0xdd, 0x40,
- 0xfa, 0xe4, 0x09, 0x64, 0x6b, 0x59, 0x17, 0xde, 0xe4, 0x30, 0x41,
- 0x4f, 0x39, 0x3b, 0xf2, 0x1c, 0xdf, 0x39, 0x1d, 0x9e, 0xe4, 0x2e,
- 0xac, 0xd7, 0xcb, 0x3d, 0x8d, 0x88, 0xd4, 0xe9, 0xd9, 0xef, 0xc6,
- 0x6e, 0xfe, 0x7f, 0x7b, 0x5c, 0x4e, 0xe9, 0x9b, 0x37, 0x92, 0x89,
- 0x92, 0x69, 0xfa, 0xe5, 0xbe, 0xb2, 0xd9, 0x22, 0x9d, 0x4b, 0x5c,
- 0xd8, 0xe0, 0x37, 0x1e, 0x1e, 0x75, 0x6b, 0xb0, 0xad, 0x71, 0x94,
- 0x6f, 0x3d, 0x2b, 0x1e, 0x68, 0xf3, 0xaf, 0x9b, 0xb4, 0x6a, 0x4f,
- 0xd0, 0xf1, 0x7b, 0x01, 0xc6, 0x7d, 0x10, 0xac, 0x46, 0x5e, 0x9b,
- 0x49, 0x23, 0x01, 0x8d, 0x04, 0x9d, 0xed, 0xb0, 0xb0, 0x2e, 0x39,
- 0xc2, 0x7c, 0x01, 0x0b, 0xeb, 0x73, 0x3d, 0x5f, 0x67, 0x62, 0x6a,
- 0x5a, 0x11, 0x93, 0x8b, 0x2d, 0xc5, 0x94, 0x22, 0x42, 0x2f, 0x20,
- 0xf9, 0xa7, 0x4b, 0x72, 0xaa, 0xaa, 0xd7, 0x2c, 0x93, 0x37, 0x45,
- 0x91, 0x2c, 0xfb, 0x37, 0x6b, 0x30, 0x45, 0x12, 0x3e, 0xe4, 0xcf,
- 0xc2, 0xcf, 0x48, 0xdb, 0xcd, 0x4d, 0x10, 0x5a, 0xb0, 0xcf, 0xe6,
- 0x4b, 0xdc, 0x02, 0x2a, 0xbe, 0x67, 0x8a, 0x7f, 0x2e, 0x8b, 0xa8,
- 0xcd, 0xc0, 0x90, 0xb4, 0x7e, 0xf1, 0xcf, 0xbf, 0x23, 0x06, 0xb2,
- 0x8e, 0x45, 0x92, 0x08, 0xb3, 0x1e, 0x53, 0x5e, 0xfa, 0x98, 0x29,
- 0x5e, 0x89, 0x79, 0x01, 0x37, 0x25, 0x26, 0x9d, 0x2e, 0x0f, 0x9f,
- 0xe0, 0x54, 0xc6, 0x1c, 0x0a, 0xd4, 0x3d, 0x6f, 0x0c, 0x5b, 0xb1,
- 0x78, 0xaf, 0x76, 0x0a, 0xbd, 0x63, 0x62, 0xa1, 0xc2, 0xb4, 0x2b,
- 0xa2, 0x77, 0xcb, 0xe1, 0xbc, 0x5d, 0xcf, 0x39, 0xd8, 0xe6, 0xbb,
- 0x07, 0x2b, 0x81, 0x49, 0xb3, 0x4c, 0x1a, 0x02, 0x46, 0x12, 0x56,
- 0x67, 0x21, 0x89, 0x60, 0xac, 0x1b, 0xe5, 0xed, 0x43, 0x8a, 0x28,
- 0xa4, 0xbd, 0xd0, 0x15, 0x54, 0x4f, 0xf3, 0x00, 0x65, 0xad, 0x95,
- 0xc5, 0x02, 0x5f, 0x1c, 0x8e, 0xbd, 0x04, 0x28, 0x45, 0xae, 0xa6,
- 0x4f, 0x31, 0x44, 0xa2, 0x98, 0x01, 0x91, 0x09, 0xe6, 0x8e, 0x45,
- 0x5f, 0xf1, 0xbf, 0x9e, 0x69, 0x7a, 0x5b, 0x01, 0x42, 0xfa, 0xe0,
- 0x3a, 0xc0, 0x8a, 0x95, 0x8f, 0xde, 0x3b, 0x5d, 0x1a, 0xb2, 0x5f,
- 0xbe, 0xeb, 0xff, 0xc4, 0x2a, 0x48, 0xba, 0x40, 0xa8, 0xc0, 0xdb,
- 0x4e, 0xc4, 0x41, 0x25, 0x6f, 0x76, 0x3d, 0x88, 0x9e, 0x5b, 0x3d,
- 0xf5, 0xea, 0xeb, 0x8a, 0x9d, 0xfa, 0xca, 0x42, 0x7f, 0x30, 0xf8,
- 0x01, 0x32, 0x32, 0x42, 0x6d, 0x10, 0xdb, 0xf4, 0xa5, 0x17, 0xfa,
- 0xd0, 0x24, 0x6b, 0x75, 0xeb, 0x23, 0xcb, 0x35, 0xf8, 0xb9, 0xdf,
- 0xda, 0x68, 0xad, 0xd4, 0xe2, 0x82, 0x6a, 0xb9, 0xab, 0x1d, 0x03,
- 0x6a, 0xb5, 0xfb, 0xf9, 0x24, 0xa8, 0x1a, 0x97, 0xf8, 0xc4, 0x07,
- 0xe1, 0xa3, 0xe0, 0x5b, 0xa9, 0xd7, 0xde, 0x41, 0xaf, 0x1e, 0xf4,
- 0x44, 0x14, 0x2c, 0x77, 0x57, 0x8b, 0xe7, 0x96, 0x03, 0x91, 0x8c,
- 0x60, 0x32, 0x85, 0x38, 0x6e, 0x04, 0x32, 0x1c, 0xea, 0xef, 0x4b,
- 0x14, 0x7e, 0xc0, 0x4d, 0xec, 0x80, 0x71, 0x07, 0xa8, 0xf9, 0x13,
- 0x5d, 0x3a, 0x9d, 0x1e, 0x41, 0x7e, 0xd1, 0xde, 0x4b, 0x7b, 0xeb,
- 0xec, 0x7c, 0x31, 0x0e, 0xbc, 0x77, 0x7a, 0x86, 0x97, 0x28, 0x0e,
- 0x97, 0x13, 0x84, 0xb2, 0x6c, 0x80, 0xa8, 0xc6, 0xfe, 0x7e, 0x3f,
- 0x34, 0xd5, 0x1f, 0xfb, 0x9e, 0xd5, 0x03, 0x5a, 0x8c, 0x57, 0x54,
- 0xf2, 0x06, 0x13, 0xa8, 0xb4, 0x18, 0x6a, 0x9d, 0xa9, 0x60, 0xaa,
- 0x03, 0x5c, 0x29, 0xa7, 0x46, 0x03, 0xab, 0xaa, 0x73, 0xae, 0xee,
- 0x1b, 0x68, 0x51, 0x22, 0xae, 0xdd, 0x3f, 0xd3, 0xf4, 0x80, 0x0c,
- 0xe1, 0x29, 0x55, 0x51, 0xcf, 0x56, 0x6e, 0x56, 0x0b, 0xcd, 0x33,
- 0x48, 0x75, 0x77, 0xc9, 0xf1, 0x96, 0xea, 0xf1, 0xaa, 0xcc, 0x02,
- 0x7b, 0xa2, 0xc5, 0xd6, 0x98, 0x4d, 0x87, 0xdc, 0x55, 0x81, 0x8d,
- 0xc7, 0xda, 0xda, 0xdc, 0x5b, 0x29, 0xf6, 0x46, 0x93, 0x1c, 0x66,
- 0x18, 0x83, 0x63, 0x79, 0x24, 0xec, 0xcd, 0x86, 0x7a, 0xb7, 0x41,
- 0xf3, 0xc6, 0xe2, 0xb4, 0xe8, 0xf7, 0xff, 0x68, 0x97, 0xef, 0xbb,
- 0xba, 0xc7, 0x0b, 0xff, 0xec, 0xf1, 0x87, 0x62, 0xeb, 0x23, 0x1d,
- 0x9a, 0x20, 0x5c, 0xf2, 0x7c, 0xd7, 0x5a, 0xf2, 0xee, 0xf2, 0xf4,
- 0x8e, 0xd0, 0x44, 0xfe, 0xcb, 0x41, 0x38, 0x03, 0xcc, 0x5e, 0x13,
- 0x5d, 0x83, 0x89, 0xb5, 0xc5, 0xc4, 0xe5, 0xce, 0x0d, 0x30, 0x27,
- 0x30, 0xbb, 0x64, 0x76, 0x7f, 0x99, 0x15, 0x8e, 0x38, 0x49, 0x4b,
- 0x06, 0x6d, 0x36, 0xf7, 0xc2, 0x66, 0x2c, 0x53, 0xc0, 0x66, 0x29,
- 0xe5, 0x56, 0x6a, 0x4f, 0x21, 0xbe, 0xee, 0xbe, 0xb5, 0x45, 0x0b,
- 0xd0, 0xaf, 0x52, 0x8a, 0xc4, 0x3d, 0x78, 0x36, 0x9e, 0x88, 0x6a,
- 0x87, 0x69, 0x96, 0xe0, 0xa6, 0xbf, 0xca, 0xd4, 0xda, 0x41, 0x0e,
- 0x69, 0xc5, 0x42, 0x67, 0xb0, 0x7f, 0x34, 0xf5, 0xe2, 0x0f, 0xcf,
- 0x42, 0x2d, 0x55, 0x1d, 0xbc, 0xcc, 0x32, 0xf8, 0x50, 0x44, 0xef,
- 0x14, 0x4c, 0x7e, 0x99, 0x5d, 0xb5, 0x38, 0x4f, 0x5c, 0x19, 0xe4,
- 0x70, 0x0e, 0xa5, 0x28, 0x8c, 0x8b, 0xba, 0x8a, 0x32, 0x58, 0x58,
- 0x32, 0xb5, 0xe9, 0x2e, 0xff, 0xf6, 0xfd, 0x18, 0xbc, 0x53, 0xa9,
- 0xe9, 0x21, 0x2d, 0x1b, 0x35, 0x2a, 0x48, 0x83, 0x1c, 0x42, 0x28,
- 0x8b, 0x6c, 0x51, 0xa5, 0xa8, 0x9c, 0x6d, 0xec, 0xec, 0x2b, 0xd8,
- 0xd7, 0x89, 0x64, 0x42, 0xb9, 0x89, 0xf2, 0x32, 0xf8, 0x02, 0xf1,
- 0x0c, 0x01, 0x95, 0x70, 0x0a, 0x12, 0xac, 0x67, 0x2d, 0x58, 0x96,
- 0xeb, 0x2e, 0x14, 0x35, 0xe2, 0xfa, 0xd8, 0xa2, 0x70, 0x50, 0xc5,
- 0x89, 0x5b, 0x2d, 0x18, 0x05, 0x79, 0x15, 0x58, 0x46, 0x67, 0xda,
- 0x24, 0xe8, 0xd3, 0xfb, 0xa2, 0x66, 0xf6, 0x8e, 0x81, 0xc3, 0x58,
- 0xdc, 0x77, 0xb3, 0xe3, 0xbb, 0xe7, 0x33, 0xe7, 0x8b, 0xf9, 0x84,
- 0x7c, 0x64, 0x1d, 0x89, 0x93, 0x21, 0x78, 0xfe, 0x52, 0x99, 0x02,
- 0x36, 0x1c, 0xe4, 0x7f, 0x96, 0x43, 0xb7, 0xbb, 0x8c, 0x15, 0xfb,
- 0xb0, 0x19, 0xd8, 0x85, 0xcb, 0x64, 0x5b, 0x94, 0xfb, 0xd6, 0x9c,
- 0x74, 0x83, 0x96, 0x2a, 0xc1, 0x99, 0xf2, 0x2e, 0x80, 0xf8, 0xdf,
- 0x35, 0xb9, 0xaa, 0x7b, 0x7a, 0x66, 0x69, 0xe0, 0xa0, 0xdf, 0x9e,
- 0x05, 0x90, 0xa9, 0xc1, 0x40, 0x5b, 0x2b, 0x62, 0xda, 0x76, 0xa1,
- 0x70, 0x4e, 0xa3, 0x69, 0xb1, 0xd2, 0x69, 0x36, 0x02, 0x4a, 0xbd,
- 0xab, 0xf0, 0x9c, 0x3e, 0x00, 0x48, 0x03, 0xe2, 0x20, 0x73, 0x51,
- 0xd0, 0x1b, 0xe5, 0x70, 0x57, 0x22, 0x82, 0xf2, 0x44, 0x0e, 0x47,
- 0x67, 0x27, 0xb5, 0x8a, 0xc5, 0xc7, 0x21, 0xf7, 0x8a, 0x77, 0xbb,
- 0x04, 0xdd, 0x6d, 0x17, 0xba, 0xf4, 0xed, 0xb6, 0x26, 0x66, 0xf5,
- 0x63, 0xb3, 0x8d, 0x3f, 0xec, 0x27, 0x27, 0x39, 0x5b, 0xed, 0x9b,
- 0x53, 0x31, 0xb5, 0x0a, 0x2f, 0xf6, 0xb8, 0xe4, 0x69, 0xe0, 0x8d,
- 0x33, 0xbd, 0x8a, 0xad, 0x3f, 0xcf, 0x76, 0x09, 0x4d, 0xe3, 0xa9,
- 0x0d, 0x79, 0xe0, 0x97, 0x89, 0xed, 0xb1, 0x0e, 0x0a, 0x14, 0xb3,
- 0x7c, 0x4a, 0xe3, 0x67, 0x27, 0xac, 0xc0, 0x77, 0xc8, 0x0e, 0xf3,
- 0xe7, 0xec, 0xe0, 0x83, 0x16, 0x60, 0x31, 0x1d, 0x9d, 0xfa, 0x95,
- 0x5d, 0x4b, 0xaf, 0x6d, 0x43, 0xf3, 0xe4, 0x6b, 0xb7, 0xe4, 0xa4,
- 0x34, 0x5d, 0x51, 0xf2, 0xb4, 0x49, 0x83, 0x90, 0x7a, 0x02, 0xbd,
- 0x1b, 0x37, 0xa0, 0xd7, 0xcb, 0x6e, 0x5b, 0xc5, 0x5f, 0x67, 0xe4,
- 0xdc, 0x50, 0x47, 0x89, 0x20, 0x43, 0x28, 0x33, 0x05, 0x48, 0xa6,
- 0x42, 0xc8, 0x7d, 0xc4, 0x46, 0xc7, 0x75, 0x6e, 0x64, 0x0a, 0xf7,
- 0xb2, 0xd1, 0xfc, 0xdf, 0x76, 0x8a, 0x64, 0x3c, 0x7b, 0x6c, 0x80,
- 0x15, 0x51, 0xae, 0x7e, 0x42, 0xa2, 0x6d, 0x18, 0x30, 0x3b, 0x0c,
- 0x85, 0xa9, 0xc6, 0x45, 0xd1, 0xfb, 0x12, 0x04, 0x4a, 0xa3, 0x96,
- 0x41, 0x75, 0xb6, 0xe8, 0x42, 0x12, 0x1e, 0x37, 0x85, 0x1b, 0x92,
- 0xb7, 0x48, 0x7c, 0x1d, 0x09, 0xfc, 0x30, 0x85, 0xb4, 0xb3, 0x46,
- 0x35, 0xd0, 0x28, 0x79, 0x2d, 0x20, 0xb6, 0x9b, 0x9a, 0xe0, 0x97,
- 0xd6, 0x8b, 0xc5, 0xf5, 0xd1, 0x6c, 0xfc, 0x85, 0xfc, 0xf0, 0xcb,
- 0x8c, 0xf1, 0x6b, 0xd3, 0xf2, 0x12, 0x79, 0x82, 0x44, 0xb3, 0xdc,
- 0x99, 0x62, 0x98, 0xad, 0xa3, 0x72, 0xc9, 0xf9, 0x04, 0xf9, 0x16,
- 0xa5, 0xef, 0x8d, 0x33, 0x65, 0x03, 0x49, 0x9d, 0x1d, 0xe6, 0x2c,
- 0x8f, 0xaf, 0xc3, 0x65, 0xf4, 0x11, 0x94, 0x46, 0x8a, 0x53, 0xa6,
- 0xf4, 0x62, 0x6e, 0x30, 0xd6, 0xc0, 0xd7, 0xb2, 0xfe, 0xd4, 0x55,
- 0x85, 0x06, 0x7f, 0x92, 0x85, 0x5b, 0xfe, 0xd3, 0x4f, 0x57, 0x39,
- 0x7b, 0x0b, 0xfb, 0x6c, 0x30, 0x4a, 0x67, 0xed, 0x0c, 0xd4, 0x43,
- 0xa3, 0x4d, 0xb5, 0x21, 0x76, 0x50, 0x3c, 0xd4, 0x01, 0x89, 0x29,
- 0xe4, 0x1a, 0x08, 0x92, 0x7c, 0x03, 0x53, 0x72, 0x9c, 0x68, 0xc7,
- 0x61, 0x77, 0xc1, 0x6c, 0x84, 0x03, 0x87, 0xc5, 0xf3, 0x0f, 0x20,
- 0xc1, 0x7e, 0xf8, 0x74, 0x78, 0xdd, 0xb7, 0xc6, 0x62, 0x8b, 0xcb,
- 0xfb, 0x56, 0x34, 0xfd, 0x7a, 0xae, 0xbb, 0x67, 0x8a, 0x99, 0xe1,
- 0x0d, 0x68, 0x9f, 0xdd, 0xa5, 0xbc, 0x42, 0x40, 0xb7, 0x85, 0xd2,
- 0x74, 0x87, 0xdc, 0x8a, 0x61, 0x1f, 0xeb, 0x52, 0x28, 0x6a, 0xe9,
- 0x37, 0xd5, 0x77, 0x7d, 0x78, 0xca, 0xee, 0x4d, 0x2c, 0x9b, 0x1c,
- 0x37, 0xeb, 0x17, 0x03, 0x5c, 0x1d, 0x76, 0x3d, 0xc3, 0xf0, 0x2c,
- 0x49, 0x54, 0x28, 0x3d, 0x63, 0x24, 0x02, 0x10, 0x1b, 0x60, 0xb3,
- 0xe0, 0x7a, 0x29, 0x7c, 0x66, 0x79, 0x6b, 0xc7, 0x15, 0xb1, 0x8a,
- 0xd3, 0x13, 0x20, 0x35, 0xb3, 0xa8, 0x3e, 0x73, 0x4b, 0xf1, 0x17,
- 0xc6, 0x6e, 0x11, 0x77, 0xa4, 0x21, 0xbc, 0x1f, 0x10, 0xb1, 0xfb,
- 0xb1, 0x04, 0xf8, 0xb5, 0x57, 0x73, 0x05, 0xb1, 0xca, 0xde, 0x4e,
- 0xa2, 0x6c, 0x7e, 0x9a, 0x80, 0x86, 0x32, 0x17, 0x56, 0x94, 0xc9,
- 0xf9, 0x8a, 0xaf, 0x7d, 0xce, 0xee, 0x3e, 0xac, 0x7b, 0xd5, 0xea,
- 0x9e, 0xa7, 0x3a, 0x3c, 0x23, 0x95, 0x53, 0x95, 0x89, 0x4a, 0x19,
- 0xea, 0x70, 0x63, 0xe6, 0x82, 0x95, 0xd3, 0xa4, 0x1a, 0xcc, 0x2b,
- 0xdd, 0x88, 0x73, 0x93, 0x8e, 0x7d, 0x56, 0x04, 0xde, 0xd8, 0x21,
- 0xae, 0x4c, 0x13, 0x4c, 0x01, 0x09, 0xef, 0xd9, 0x71, 0xef, 0x45,
- 0xf2, 0x37, 0x37, 0xf1, 0x94, 0x82, 0x68, 0xd7, 0xda, 0xea, 0x47,
- 0x7b, 0x1f, 0x1b, 0x70, 0xfa, 0x31, 0x13, 0x7c, 0xe9, 0x19, 0xa7,
- 0x6c, 0x6b, 0x23, 0xb1, 0x58, 0x1f, 0xd8, 0x8d, 0xe9, 0xd1, 0xea,
- 0x4e, 0x05, 0x4b, 0x4b, 0xab, 0xb0, 0x08, 0x53, 0x43, 0x2e, 0x54,
- 0x82, 0x82, 0x05, 0xd9, 0x72, 0xfb, 0xd2, 0xf3, 0x3f, 0x84, 0x79,
- 0x10, 0x3f, 0x75, 0x16, 0x09, 0x7f, 0x9e, 0xfa, 0x29, 0x5f, 0x56,
- 0xcb, 0x13, 0xc5, 0x67, 0xdd, 0xe7, 0x24, 0x39, 0x15, 0x89, 0xc0,
- 0x10, 0xa8, 0xba, 0xa7, 0xc7, 0x36, 0x6e, 0xff, 0x3b, 0x20, 0xb5,
- 0x36, 0x95, 0x6a, 0x40, 0x69, 0x88, 0x84, 0x43, 0xc5, 0xd9, 0x37,
- 0x85, 0x7e, 0xcf, 0x66, 0xaf, 0xf2, 0x7d, 0xe5, 0xaa, 0xf0, 0xd2,
- 0x0e, 0x15, 0x1d, 0xd1, 0x13, 0xb3, 0xed, 0x89, 0x1a, 0xe6, 0x0f,
- 0xbb, 0x62, 0x29, 0x78, 0x59, 0xde, 0x46, 0xfe, 0x85, 0x7a, 0x5f,
- 0x74, 0xaf, 0x1b, 0x9a, 0x74, 0xc3, 0x27, 0xef, 0x50, 0x9a, 0x66,
- 0x94, 0xe9, 0x1a, 0xb5, 0xcd, 0xf1, 0xcf, 0x5c, 0x4e, 0xa2, 0x1f,
- 0x35, 0x93, 0xb0, 0xc1, 0x1e, 0xba, 0x66, 0x33, 0x0d, 0x0d, 0x45,
- 0xd6, 0xb2, 0x3d, 0x86, 0x0b, 0xcf, 0x67, 0x2f, 0x8c, 0x11, 0xba,
- 0x8f, 0xa2, 0xad, 0x86, 0x42, 0x28, 0x73, 0xb7, 0xfd, 0xf1, 0xea,
- 0x50, 0xa4, 0x6f, 0xbe, 0x91, 0x21, 0xb4, 0x52, 0x90, 0x75, 0xc5,
- 0xd7, 0x64, 0x04, 0x5b, 0x45, 0x46, 0xd9, 0xd1, 0x48, 0xd5, 0xcb,
- 0x37, 0x20, 0x71, 0x10, 0x83, 0xc5, 0x8b, 0xcd, 0x53, 0xfa, 0x70,
- 0xe3, 0xb3, 0x23, 0xd4, 0x1d, 0xdb, 0x5f, 0x7c, 0x84, 0xe2, 0xe1,
- 0x0a, 0xf2, 0x8d, 0x80, 0x77, 0xe3, 0xa0, 0x82, 0xb7, 0xee, 0xda,
- 0x90, 0x21, 0xc7, 0x55, 0x6c, 0x60, 0xa0, 0xe7, 0x58, 0x07, 0x4a,
- 0x2d, 0x3c, 0x98, 0xe2, 0xca, 0x0d, 0x13, 0x1e, 0x9f, 0xa8, 0xe6,
- 0x77, 0x04, 0x1e, 0xb9, 0x17, 0x42, 0x32, 0xb9, 0x7c, 0x44, 0xf4,
- 0xb4, 0xd6, 0x83, 0xfd, 0x91, 0xac, 0x9e, 0x1a, 0x2d, 0x26, 0xb8,
- 0x7c, 0xd3, 0xef, 0xf9, 0xea, 0xb0, 0xbc, 0x95, 0x0b, 0x1e, 0xf4,
- 0x57, 0x2a, 0x83, 0xe0, 0x48, 0x24, 0x2d, 0xb3, 0xeb, 0xb4, 0xde,
- 0xe1, 0x8e, 0x73, 0xc9, 0x5a, 0xf0, 0x6a, 0x71, 0x33, 0xeb, 0xde,
- 0x3b, 0xce, 0x42, 0x64, 0x96, 0x25, 0xd9, 0xe3, 0x48, 0x65, 0xf3,
- 0xee, 0x00, 0x54, 0xb0, 0x0a, 0x1b, 0x5d, 0xca, 0x6c, 0x77, 0xc9,
- 0xb0, 0x9b, 0xf8, 0xcb, 0x1f, 0xf3, 0xae, 0x3c, 0xd3, 0x8a, 0x37,
- 0x8f, 0xb1, 0xc3, 0x2f, 0x28, 0x02, 0x99, 0xf2, 0x2b, 0xa8, 0xd6,
- 0x56, 0x6a, 0xa4, 0x69, 0xfa, 0xac, 0x70, 0x80, 0xb5, 0xc0, 0x2a,
- 0x1b, 0xbd, 0x87, 0x24, 0x5b, 0xcc, 0x96, 0xbe, 0x03, 0x82, 0xd2,
- 0x1e, 0x78, 0xde, 0xc3, 0xa4, 0x18, 0x94, 0xfd, 0x2f, 0xc6, 0xb8,
- 0x6a, 0x23, 0xbb, 0x0c, 0xbe, 0xe6, 0xd9, 0xe0, 0xdc, 0xbb, 0x01,
- 0x8e, 0x1d, 0x04, 0xfa, 0x66, 0x88, 0xc7, 0x66, 0x90, 0xa2, 0xc9,
- 0x8d, 0x1e, 0x83, 0x7c, 0xa7, 0xeb, 0xce, 0x48, 0xcf, 0x23, 0x74,
- 0x1c, 0xb0, 0x1a, 0xe2, 0xba, 0x10, 0x4c, 0xd0, 0x01, 0xd3, 0xb5,
- 0x11, 0x73, 0x61, 0xd9, 0x28, 0xff, 0xdf, 0xa3, 0x1a, 0x8d, 0xae,
- 0x03, 0xd6, 0x24, 0x47, 0xe2, 0x5f, 0x5f, 0xab, 0x6c, 0x36, 0xbd,
- 0x7e, 0xac, 0x60, 0xe1, 0x5d, 0x95, 0x5e, 0x25, 0x15, 0x2e, 0xf6,
- 0xc4, 0x69, 0x8a, 0x6d, 0x70, 0xeb, 0x06, 0x64, 0x51, 0xdf, 0x0d,
- 0xbd, 0xcc, 0x4a, 0xc4, 0x85, 0xc7, 0xaf, 0x6c, 0xb1, 0x54, 0x78,
- 0xe3, 0xad, 0x20, 0xb0, 0xec, 0x29, 0x56, 0x7d, 0x6d, 0x6f, 0xc1,
- 0x50, 0x8a, 0xd1, 0xb0, 0x67, 0x5a, 0xff, 0x86, 0x0e, 0x05, 0xc7,
- 0x2f, 0xee, 0x31, 0xee, 0xd0, 0x3f, 0x2e, 0x6c, 0x83, 0xe4, 0x19,
- 0x40, 0x40, 0xe5, 0x52, 0x50, 0x7f, 0x0f, 0x42, 0x1a, 0xc2, 0xbc,
- 0x42, 0x3a, 0xe9, 0x67, 0x1e, 0x9a, 0x66, 0x0d, 0x1c, 0x40, 0x46,
- 0xa4, 0x74, 0xfe, 0x18, 0x19, 0xc4, 0x77, 0xb4, 0xdb, 0xc6, 0x1a,
- 0xbf, 0xb5, 0xa6, 0xeb, 0x71, 0xb1, 0xfc, 0xaf, 0x3a, 0xca, 0xe9,
- 0x41, 0xea, 0xc6, 0x2b, 0xb8, 0xc8, 0xab, 0x7b, 0x8b, 0xf9, 0x6a,
- 0xe7, 0x5c, 0x0a, 0x7d, 0x75, 0x0e, 0x07, 0x6d, 0x59, 0x04, 0x9f,
- 0x53, 0xc9, 0x1b, 0xba, 0xd9, 0xf1, 0x6d, 0x3a, 0xb7, 0xaa, 0x70,
- 0xc3, 0x74, 0x62, 0x13, 0x4c, 0x63, 0xa4, 0xf5, 0xa9, 0x06, 0x77,
- 0xe3, 0xb2, 0x52, 0x01, 0x15, 0x97, 0x8c, 0xd9, 0x8a, 0x47, 0x1a,
- 0x31, 0x7c, 0x69, 0x6a, 0xc8, 0x46, 0x28, 0xf1, 0x30, 0xd9, 0x2e,
- 0xc2, 0x64, 0x9c, 0x26, 0x3c, 0x5d, 0x41, 0x32, 0x79, 0x3c, 0xdf,
- 0x8d, 0xb0, 0xce, 0x9b, 0x42, 0xe4, 0x94, 0x74, 0xd5, 0x5a, 0xf8,
- 0xa0, 0x47, 0x91, 0xee, 0xef, 0x29, 0x96, 0x3a, 0xbe, 0xd0, 0x7a,
- 0x72, 0x25, 0xd0, 0xb6, 0x1e, 0x88, 0xad, 0x2d, 0x9f, 0x3d, 0xeb,
- 0x44, 0x78, 0x63, 0x35, 0xf3, 0x13, 0x2a, 0x77, 0x0e, 0xda, 0xb6,
- 0x9e, 0xf5, 0x46, 0x93, 0x12, 0x4a, 0x2a, 0xe4, 0x40, 0x7f, 0x77,
- 0xff, 0xe8, 0x8a, 0x39, 0x8a, 0x3f, 0x14, 0x9b, 0x2e, 0xbd, 0xcb,
- 0xbe, 0xb3, 0xa8, 0xc7, 0x36, 0x89, 0x2f, 0x98, 0x20, 0xa3, 0xf2,
- 0x28, 0x00, 0x5e, 0x6d, 0xe7, 0xcb, 0xc0, 0x06, 0xb8, 0xb1, 0x5c,
- 0x88, 0x0d, 0xdd, 0x52, 0x04, 0x35, 0x81, 0xd4, 0x07, 0x6b, 0xd9,
- 0x45, 0xdd, 0x01, 0x7d, 0x8b, 0x4b, 0x1e, 0x22, 0x4b, 0x75, 0x80,
- 0x05, 0x8e, 0x0f, 0xb0, 0xeb, 0x3c, 0x62, 0x52, 0x59, 0x21, 0x37,
- 0x93, 0xda, 0x3f, 0x52, 0xdd, 0xdd, 0x49, 0x8a, 0xcc, 0x74, 0xbe,
- 0xdb, 0xa5, 0x8a, 0x5b, 0xcb, 0xa9, 0x88, 0x97, 0x8d, 0x3e, 0x20,
- 0x69, 0x03, 0x18, 0x74, 0xb6, 0x69, 0x20, 0x83, 0x96, 0x8d, 0x3a,
- 0x9a, 0xe5, 0xe3, 0xbd, 0xc0, 0xdd, 0x94, 0x84, 0xa5, 0xfa, 0x08,
- 0x16, 0x5f, 0x6f, 0xf2, 0x7d, 0x64, 0x41, 0xd7, 0x27, 0x60, 0x50,
- 0xc0, 0x1d, 0x4f, 0x84, 0x56, 0x66, 0xc7, 0x86, 0xeb, 0x15, 0xa5,
- 0xf0, 0xde, 0xc6, 0xef, 0xe1, 0x5a, 0x64, 0x5b, 0xb1, 0x2c, 0xb6,
- 0x36, 0x00, 0x31, 0x12, 0xb8, 0x10, 0x74, 0xe2, 0x8b, 0x46, 0x3d,
- 0xe5, 0x6c, 0x02, 0x1e, 0x0d, 0x3b, 0x1e, 0xbf, 0xcf, 0xe5, 0x7c,
- 0x19, 0x11, 0x20, 0x8e, 0xe9, 0x06, 0x35, 0x18, 0x85, 0x7a, 0xaa,
- 0x8f, 0xf2, 0x5f, 0x4d, 0x03, 0xc6, 0xab, 0x2c, 0xd6, 0x36, 0xbc,
- 0xb8, 0xbf, 0xc4, 0xe3, 0x6f, 0x50, 0xe0, 0x78, 0x8f, 0x2f, 0x0e,
- 0xc0, 0xf8, 0x16, 0x44, 0xbd, 0x58, 0x70, 0xf2, 0x47, 0x86, 0x1e,
- 0x89, 0xda, 0x5a, 0x6a, 0x76, 0x4a, 0x49, 0x3c, 0x33, 0x01, 0x25,
- 0x94, 0xed, 0x6b, 0x52, 0x6a, 0xa7, 0x8d, 0x68, 0xd6, 0x91, 0xee,
- 0x6d, 0x8c, 0xd6, 0xd4, 0x15, 0x59, 0xe5, 0x95, 0x9a, 0xca, 0xa3,
- 0x21, 0xe8, 0x33, 0xda, 0x79, 0x2e, 0x6d, 0x43, 0x6f, 0xf9, 0x5d,
- 0x50, 0x06, 0x11, 0x49, 0x56, 0x72, 0x3b, 0x4b, 0x39, 0x85, 0xcd,
- 0x2f, 0xca, 0xa1, 0x94, 0x28, 0x53, 0x52, 0xa2, 0xe0, 0x48, 0x4e,
- 0x37, 0x99, 0xca, 0x5a, 0x3d, 0xf3, 0x98, 0xea, 0xed, 0x82, 0x58,
- 0x12, 0x5b, 0xd3, 0x74, 0xa5, 0x34, 0x75, 0x0e, 0x15, 0xd5, 0xad,
- 0x12, 0x82, 0xbb, 0x76, 0x99, 0x0e, 0xf9, 0x18, 0x07, 0xe4, 0x7a,
- 0x4a, 0xb3, 0x34, 0x65, 0xd4, 0xd5, 0x25, 0xee, 0x5e, 0x49, 0xbc,
- 0xfc, 0xa6, 0xd4, 0x5b, 0xd3, 0xd3, 0x45, 0x9b, 0x71, 0xf3, 0x84,
- 0xde, 0xb8, 0xcb, 0x3c, 0x05, 0xaf, 0x60, 0xd5, 0xe0, 0x50, 0x63,
- 0xde, 0x4a, 0xa9, 0x62, 0x33, 0x91, 0x11, 0x76, 0x43, 0xb8, 0x83,
- 0xa8, 0x71, 0x10, 0x84, 0x08, 0xf7, 0x8d, 0x4b, 0xc5, 0x5c, 0x89,
- 0x5e, 0x58, 0x5b, 0xcf, 0xe0, 0x58, 0x97, 0xa7, 0xe3, 0xa7, 0x5b,
- 0x4d, 0x07, 0x37, 0xdb, 0xdf, 0xe9, 0x10, 0x73, 0xdc, 0x0b, 0x7c,
- 0xed, 0xba, 0x42, 0x56, 0x7a, 0x87, 0xb2, 0x4d, 0x85, 0x5a, 0xe0,
- 0x28, 0x94, 0xc1, 0x73, 0xbf, 0x18, 0xbc, 0x91, 0x31, 0xa6, 0x30,
- 0xc5, 0x7a, 0xdf, 0x5a, 0x09, 0xb4, 0x2d, 0x7f, 0xc8, 0x2b, 0x67,
- 0x77, 0x3b, 0xb5, 0x56, 0xc2, 0xb0, 0x1a, 0x5a, 0x5f, 0x11, 0x3a,
- 0x48, 0x2f, 0x06, 0x53, 0xa5, 0xa9, 0x6a, 0xc2, 0xcf, 0x1c, 0xfd,
- 0x9e, 0x58, 0x5f, 0x11, 0x86, 0x66, 0x82, 0xe5, 0x32, 0x78, 0x5e,
- 0x11, 0xc4, 0xeb, 0xb4, 0x2d, 0xa5, 0xea, 0x70, 0x83, 0xfe, 0xa9,
- 0xf4, 0x37, 0xc5, 0x31, 0x86, 0x4a, 0xd0, 0x2a, 0x72, 0x42, 0xd5,
- 0x21, 0x37, 0x46, 0x1c, 0x53, 0x30, 0xf0, 0x0b, 0x84, 0x12, 0xef,
- 0x96, 0xd7, 0x1f, 0x8c, 0x7a, 0xbb, 0xc7, 0xd1, 0xc7, 0x25, 0x6e,
- 0xf1, 0x7e, 0x63, 0x71, 0x4b, 0x2c, 0x02, 0x1e, 0x50, 0xb3, 0xe0,
- 0xc0, 0x54, 0x3b, 0x68, 0xb2, 0x84, 0x13, 0x52, 0x43, 0x85, 0x5c,
- 0x82, 0xb9, 0xfe, 0xf8, 0xfe, 0x5d, 0xf7, 0x16, 0x68, 0xac, 0x8e,
- 0x2f, 0xf6, 0x7a, 0x37, 0xf3, 0x8c, 0x0b, 0x7d, 0xbd, 0x8a, 0xd9,
- 0xff, 0x3b, 0xd0, 0x4f, 0xb9, 0xeb, 0x22, 0x6d, 0x24, 0xb3, 0xe9,
- 0x64, 0x75, 0x46, 0xb4, 0x1b, 0x2e, 0xd7, 0xbe, 0xc3, 0xb6, 0x82,
- 0x7f, 0x86, 0xb8, 0x2f, 0xc2, 0x81, 0x03, 0x7b, 0x52, 0x20, 0x3e,
- 0xe4, 0x33, 0x93, 0xda, 0x14, 0xa9, 0xf9, 0x99, 0x38, 0x93, 0x99,
- 0x56, 0x7f, 0x09, 0xda, 0xc4, 0x7c, 0xe4, 0x86, 0xf3, 0xb4, 0x87,
- 0x6d, 0x7f, 0xad, 0xaf, 0xd9, 0x67, 0x56, 0x2d, 0xda, 0x8c, 0xd0,
- 0x0a, 0xda, 0x81, 0x08, 0x3d, 0xf1, 0x0f, 0x3f, 0x1d, 0x2c, 0x9b,
- 0xdd, 0x58, 0x50, 0xf3, 0x8b, 0x0a, 0x6f, 0x93, 0x4f, 0x53, 0x02,
- 0x42, 0x60, 0xf7, 0x63, 0x42, 0x98, 0x9c, 0x41, 0x89, 0x88, 0x89,
- 0x74, 0x5b, 0x07, 0xac, 0x7b, 0xf8, 0x76, 0xf6, 0xf6, 0xb3, 0x70,
- 0x2f, 0x37, 0xb9, 0x78, 0xa6, 0x9a, 0xc0, 0x83, 0x76, 0x8b, 0x43,
- 0xf5, 0x32, 0x7a, 0x9d, 0x14, 0xbf, 0xc4, 0x21, 0xff, 0xbe, 0xc7,
- 0xed, 0x17, 0x53, 0xbf, 0xf6, 0x32, 0xa0, 0xea, 0xf5, 0xfa, 0x8c,
- 0x4c, 0x63, 0xf4, 0xe0, 0x5a, 0x9a, 0xd3, 0x39, 0x29, 0x23, 0xaf,
- 0xec, 0x70, 0x9b, 0x67, 0xc6, 0xea, 0xda, 0xd9, 0x80, 0x0d, 0x36,
- 0x0b, 0xfb, 0xfd, 0xae, 0xdd, 0x46, 0x7b, 0xd0, 0x1e, 0x6e, 0x2e,
- 0x8b, 0x51, 0x20, 0xd3, 0x37, 0x8c, 0x56, 0x79, 0x75, 0x35, 0xf0,
- 0x96, 0x35, 0x3f, 0x85, 0x33, 0xe9, 0x27, 0x18, 0xb3, 0x31, 0xbc,
- 0x53, 0x12, 0x00, 0xcb, 0x39, 0x57, 0x64, 0xd6, 0xad, 0xe9, 0x12,
- 0x2c, 0xf9, 0x6b, 0x93, 0x62, 0x0e, 0x8d, 0xf5, 0x44, 0x3f, 0x31,
- 0x5d, 0x87, 0xef, 0x6a, 0x13, 0x48, 0x4d, 0x6e, 0xe3, 0x4e, 0xc7,
- 0xff, 0x6a, 0xd5, 0x55, 0x36, 0x3d, 0x24, 0xc3, 0x60, 0xa1, 0xbe,
- 0x89, 0x27, 0x0f, 0xb5, 0x53, 0x38, 0x4e, 0x97, 0x19, 0xa2, 0x5a,
- 0x9b, 0x4c, 0x8d, 0xbe, 0x58, 0xa7, 0xb4, 0x9f, 0xcc, 0x6a, 0xb2,
- 0xb5, 0x64, 0xbd, 0xfb, 0xcf, 0x48, 0xfe, 0xcd, 0x2f, 0x29, 0xb4,
- 0xe6, 0xe9, 0xef, 0x83, 0x4c, 0x75, 0x24, 0x7e, 0xda, 0x37, 0xc8,
- 0x64, 0x92, 0x51, 0x13, 0x5c, 0x18, 0x96, 0x5a, 0x7a, 0xad, 0x98,
- 0x91, 0x2a, 0x14, 0xcd, 0xd7, 0xfe, 0x72, 0xad, 0xf9, 0xff, 0x00,
- 0x0f, 0xf0, 0x47, 0x71, 0xd6, 0xf1, 0xd7, 0x76, 0x67, 0xeb, 0x71,
- 0xdb, 0xea, 0x3d, 0x80, 0x3c, 0xea, 0xb2, 0xd3, 0x4b, 0x29, 0x8d,
- 0x48, 0x9f, 0x76, 0xce, 0x0d, 0x9e, 0x48, 0x93, 0x73, 0xe0, 0x77,
- 0x34, 0x75, 0xc9, 0xf9, 0xfc, 0xf2, 0x28, 0x9a, 0x6a, 0x64, 0x45,
- 0x10, 0x45, 0x4a, 0x0a, 0x9c, 0x00, 0xb5, 0x26, 0x3e, 0x09, 0xaa,
- 0x46, 0xb2, 0x7d, 0xbb, 0x6b, 0x77, 0x02, 0xc8, 0x2e, 0xde, 0x3e,
- 0xd1, 0xdd, 0x46, 0xef, 0xaf, 0x0d, 0x66, 0x3e, 0x83, 0x1e, 0x2b,
- 0x34, 0xf0, 0x69, 0xf8, 0x53, 0x7b, 0x62, 0xad, 0x6a, 0x8a, 0x0e,
- 0x91, 0x34, 0x6e, 0xee, 0xad, 0xfb, 0x41, 0x48, 0x59, 0x16, 0xf5,
- 0x29, 0x6e, 0xbf, 0x76, 0x79, 0x7e, 0x44, 0xca, 0x6a, 0x0a, 0xf3,
- 0xaa, 0x07, 0x58, 0x81, 0xb3, 0xc5, 0xe0, 0xf7, 0x73, 0x35, 0xb2,
- 0x19, 0xc1, 0x00, 0x27, 0xcd, 0xe1, 0x02, 0xfa, 0x19, 0x17, 0x98,
- 0x03, 0x15, 0x95, 0xa4, 0x64, 0x94, 0x13, 0xea, 0x53, 0x12, 0xd2,
- 0x13, 0xde, 0xf4, 0x57, 0x3b, 0xc9, 0xf6, 0x7e, 0x62, 0xa8, 0x4b,
- 0xdd, 0xf7, 0x95, 0x53, 0x1e, 0xbf, 0x55, 0x5f, 0x40, 0x7e, 0x17,
- 0x81, 0x28, 0xd9, 0x49, 0xff, 0xdb, 0xc1, 0xeb, 0x54, 0x19, 0xa9,
- 0x0d, 0x06, 0x2a, 0x6e, 0xbb, 0xb0, 0xd4, 0x9f, 0x33, 0x3d, 0xf0,
- 0xf9, 0xd4, 0x7b, 0x66, 0x8b, 0x23, 0xfd, 0x4b, 0xfc, 0x65, 0xbe,
- 0x3f, 0xbd, 0x25, 0xb8, 0xe2, 0xbb, 0x2c, 0x8d, 0xc5, 0x58, 0x00,
- 0x4f, 0x34, 0xbe, 0x33, 0x1b, 0x07, 0xa3, 0x01, 0x5a, 0x58, 0xe5,
- 0x99, 0x5f, 0xf4, 0x09, 0x2f, 0xf8, 0x4d, 0x9d, 0x92, 0xe1, 0x5b,
- 0x0e, 0x9b, 0x74, 0x93, 0x8b, 0x98, 0xf9, 0x81, 0xf3, 0x85, 0x22,
- 0xb9, 0x5f, 0xf4, 0xfa, 0x18, 0x73, 0x87, 0xa2, 0xf9, 0x2a, 0x69,
- 0xca, 0xd3, 0x2f, 0x86, 0x14, 0x6b, 0xe6, 0xb9, 0xc1, 0xf9, 0xf9,
- 0x8e, 0x79, 0xdd, 0xe4, 0xce, 0x3f, 0x78, 0x42, 0x4a, 0x46, 0x21,
- 0x67, 0xc9, 0xaf, 0xb2, 0x62, 0xe7, 0x26, 0x35, 0x5a, 0xf7, 0x4c,
- 0xd2, 0x3c, 0x7c, 0xc9, 0x49, 0xde, 0xf9, 0x83, 0xb4, 0x60, 0x95,
- 0x16, 0x4a, 0xda, 0xc2, 0xf6, 0xb4, 0x79, 0xa9, 0x2d, 0x91, 0x32,
- 0x62, 0x1d, 0x17, 0x0f, 0xb4, 0xc3, 0x8f, 0x8b, 0x2e, 0xae, 0xf5,
- 0x05, 0x8c, 0x30, 0xfa, 0x5d, 0x9a, 0x1a, 0xd2, 0x6e, 0x83, 0x60,
- 0xb1, 0x9b, 0x15, 0x55, 0x07, 0x6f, 0x31, 0x22, 0x78, 0xcb, 0x3a,
- 0x5c, 0xe3, 0x92, 0x40, 0x3d, 0x96, 0x91, 0xc3, 0x13, 0xad, 0x7d,
- 0xfd, 0x4d, 0xac, 0x93, 0xca, 0xd2, 0xb4, 0x66, 0xc1, 0xd1, 0x5e,
- 0x10, 0x83, 0xea, 0xde, 0x95, 0x76, 0x7a, 0xb3, 0x0d, 0x56, 0x8d,
- 0x8f, 0xa7, 0xe4, 0x14, 0x81, 0x65, 0xf2, 0x9f, 0xeb, 0x40, 0x90,
- 0xad, 0x6d, 0x29, 0xf5, 0x23, 0xa6, 0x02, 0x02, 0xb4, 0x06, 0x2b,
- 0x5c, 0x52, 0x8b, 0x67, 0x57, 0x00, 0xb5, 0xf8, 0x94, 0x83, 0x56,
- 0x1d, 0xbb, 0x92, 0x75, 0xeb, 0xf7, 0x22, 0x5f, 0x48, 0xfa, 0x5d,
- 0x73, 0x78, 0x49, 0xb2, 0x50, 0xb6, 0xaf, 0xab, 0x41, 0x49, 0xc5,
- 0xae, 0xa8, 0x4a, 0x93, 0xb5, 0xd7, 0x08, 0xb0, 0x62, 0x30, 0x79,
- 0x7b, 0x51, 0xa9, 0xdb, 0x72, 0x11, 0x93, 0xca, 0xfb, 0x47, 0xbb,
- 0x0c, 0x07, 0xd1, 0x6b, 0xdb, 0x73, 0xc2, 0x83, 0x97, 0x32, 0x82,
- 0xaa, 0xea, 0x24, 0xa8, 0x32, 0x3e, 0x65, 0x40, 0x6b, 0x2c, 0xfa,
- 0xa9, 0x1c, 0x88, 0xb4, 0x58, 0x2b, 0x81, 0x4e, 0x22, 0xfc, 0xb4,
- 0x77, 0x0f, 0xa1, 0x13, 0x04, 0x7a, 0x8b, 0x74, 0xd9, 0xc1, 0xa3,
- 0xa4, 0x46, 0x2e, 0xd7, 0x9e, 0x3b, 0x86, 0x88, 0x7d, 0x49, 0x72,
- 0x23, 0x2f, 0xca, 0x17, 0xd1, 0x93, 0x99, 0xe1, 0xd5, 0x14, 0x2e,
- 0x7e, 0xc8, 0x19, 0x00, 0x25, 0x6e, 0xbb, 0xae, 0xb4, 0x8f, 0x25,
- 0x17, 0x4d, 0xf6, 0xbf, 0xb1, 0x51, 0xf9, 0xa8, 0x59, 0xd7, 0xb6,
- 0x4a, 0xd4, 0x0e, 0x0e, 0x8b, 0x8d, 0xb8, 0xbe, 0x11, 0xb5, 0xe9,
- 0x50, 0x8b, 0x14, 0xb3, 0xd6, 0x09, 0xf1, 0x2c, 0x57, 0x60, 0xef,
- 0x7a, 0xd0, 0x31, 0xf8, 0x89, 0xaf, 0xb1, 0x68, 0x13, 0x2e, 0x05,
- 0xb2, 0xea, 0xd5, 0x58, 0xa5, 0x42, 0xa8, 0xed, 0x30, 0xaf, 0xc0,
- 0xd0, 0x6b, 0xd5, 0x51, 0x87, 0xd8, 0xe3, 0x81, 0x87, 0xcb, 0xfc,
- 0x5e, 0x3f, 0xfd, 0x15, 0x40, 0x82, 0x59, 0x74, 0xac, 0x06, 0x6b,
- 0xe6, 0xde, 0xc4, 0x83, 0xcb, 0x84, 0x4b, 0x15, 0xb0, 0x2b, 0xc9,
- 0x1a, 0x28, 0xbc, 0xe8, 0x09, 0x15, 0xc7, 0x99, 0xd2, 0xf9, 0x71,
- 0x1d, 0x0f, 0x6d, 0x8c, 0x3a, 0x1d, 0x8c, 0xdb, 0xf2, 0x65, 0x69,
- 0x30, 0xdb, 0x0e, 0xc9, 0xef, 0xb0, 0xcd, 0x0c, 0x1a, 0x7d, 0x93,
- 0xde, 0xb8, 0xc7, 0x59, 0x50, 0x20, 0xae, 0x53, 0x61, 0x7f, 0x4b,
- 0x27, 0xc5, 0x55, 0x36, 0xff, 0x56, 0xa6, 0x50, 0x84, 0xd9, 0xf8,
- 0x41, 0x6c, 0x3f, 0x33, 0x0c, 0x22, 0xff, 0x46, 0x6b, 0xac, 0xf2,
- 0xe5, 0x19, 0x30, 0x01, 0x2e, 0x1e, 0xc9, 0x0c, 0xa8, 0x2c, 0xf0,
- 0x63, 0xb8, 0xa6, 0xb9, 0xc9, 0x15, 0xea, 0x88, 0x77, 0x4b, 0xb8,
- 0xa8, 0xc4, 0x37, 0x42, 0xf6, 0xc6, 0xd2, 0x75, 0xb7, 0x0a, 0x0d,
- 0x42, 0x03, 0x64, 0x44, 0xfd, 0x47, 0x29, 0xff, 0x82, 0x6f, 0xcd,
- 0x3d, 0xe0, 0xce, 0xf7, 0xef, 0x9a, 0x0c, 0xe0, 0xd5, 0xfd, 0xab,
- 0x0a, 0xc0, 0x3a, 0x49, 0x9c, 0x7c, 0xb5, 0x6b, 0xd8, 0x0a, 0xc8,
- 0xf2, 0x10, 0x1c, 0x69, 0x67, 0x7f, 0x39, 0x57, 0x44, 0xf0, 0x51,
- 0x16, 0xa0, 0x64, 0x0d, 0x87, 0x15, 0x4c, 0xe5, 0x56, 0x53, 0xb5,
- 0xc5, 0x68, 0x92, 0x5e, 0x99, 0x60, 0x22, 0x6b, 0x00, 0x6b, 0x1e,
- 0x5f, 0xe9, 0x8c, 0xe9, 0xfa, 0xad, 0x07, 0x88, 0x58, 0xec, 0x7f,
- 0x06, 0x5f, 0xb1, 0xd8, 0x33, 0x95, 0x7e, 0xee, 0x10, 0x3d, 0x65,
- 0xe2, 0x4f, 0xea, 0x77, 0xcb, 0xd2, 0x99, 0x96, 0x0e, 0x8b, 0x20,
- 0xaa, 0x5c, 0x36, 0xcd, 0xc4, 0xd6, 0x57, 0xd1, 0x2f, 0x09, 0x9d,
- 0x23, 0xd9, 0x8f, 0x99, 0x2d, 0x37, 0xaa, 0x25, 0x17, 0xcf, 0x2c,
- 0x74, 0x36, 0xee, 0x14, 0x72, 0x05, 0x54, 0x6b, 0xc2, 0x3b, 0xf1,
- 0xc1, 0x1f, 0x8e, 0x5e, 0x20, 0x23, 0x84, 0x50, 0x4c, 0xa0, 0x15,
- 0x07, 0x98, 0x43, 0x36, 0x62, 0xd8, 0x9b, 0xe0, 0x1f, 0x54, 0x63,
- 0x1f, 0x38, 0x8b, 0x13, 0x27, 0xb6, 0x06, 0xd2, 0xc1, 0x6b, 0x73,
- 0x46, 0x18, 0x82, 0x66, 0x58, 0x05, 0x54, 0x41, 0x6e, 0x11, 0x19,
- 0x04, 0x54, 0x50, 0xd7, 0xe3, 0xaf, 0x0d, 0xc2, 0x2f, 0x54, 0x91,
- 0x38, 0x58, 0xd1, 0xbd, 0x09, 0x59, 0x98, 0xf3, 0xd6, 0x49, 0x61,
- 0x6b, 0x45, 0x9d, 0x8b, 0x45, 0xdb, 0xbd, 0x24, 0x7e, 0xf3, 0x88,
- 0x3c, 0xa5, 0xad, 0x4e, 0x82, 0x1e, 0xaa, 0x0d, 0xcf, 0xc1, 0xb3,
- 0x5b, 0x90, 0x7f, 0xf8, 0xab, 0xdc, 0x93, 0x92, 0xd3, 0x9b, 0x5e,
- 0x28, 0xd7, 0xf4, 0xd0, 0x2a, 0x5c, 0xd5, 0xf6, 0xcc, 0x3b, 0x03,
- 0x63, 0x0a, 0x11, 0xf4, 0x37, 0x57, 0xe5, 0x7f, 0xb8, 0xf4, 0x6a,
- 0x48, 0x0f, 0x6e, 0xfe, 0xaf, 0x85, 0x24, 0x88, 0x67, 0x40, 0x07,
- 0xb5, 0xec, 0x28, 0x7b, 0x3b, 0x9b, 0xe1, 0xab, 0x5d, 0x29, 0x21,
- 0xab, 0x42, 0xa8, 0x89, 0xb1, 0xb0, 0xf1, 0x2d, 0xb3, 0x32, 0x13,
- 0x9d, 0x24, 0x61, 0xc0, 0x2f, 0x70, 0x4c, 0x07, 0xe4, 0xab, 0xfc,
- 0xc7, 0xc5, 0x43, 0x2f, 0xfc, 0xc6, 0x1c, 0x9f, 0x57, 0xc2, 0x9e,
- 0xca, 0xce, 0xb4, 0xa1, 0x32, 0xb9, 0x3e, 0x9c, 0x85, 0x5c, 0xca,
- 0x2f, 0x46, 0xa8, 0x95, 0xef, 0xbb, 0xdd, 0xa3, 0xc8, 0x40, 0xf5,
- 0xae, 0x78, 0x8d, 0xdf, 0x47, 0xcc, 0x3b, 0x2c, 0x49, 0x73, 0x43,
- 0xb5, 0x11, 0x43, 0x8f, 0x28, 0x16, 0x77, 0xd2, 0x5f, 0x0a, 0x7d,
- 0x19, 0xcb, 0x20, 0x04, 0x2e, 0x23, 0x62, 0x51, 0xd6, 0x5e, 0x49,
- 0xbc, 0x21, 0x97, 0x4e, 0x6f, 0x82, 0xd3, 0x50, 0x99, 0x61, 0xa6,
- 0x0a, 0xff, 0xdf, 0x9a, 0xca, 0x19, 0xbb, 0xd8, 0x5c, 0x3b, 0x66,
- 0x98, 0x2a, 0x4c, 0x64, 0x62, 0xb1, 0x21, 0x49, 0x84, 0x02, 0x61,
- 0x1b, 0x7f, 0x67, 0xa2, 0x50, 0xbf, 0xb3, 0x29, 0x2c, 0x23, 0x35,
- 0xbf, 0x66, 0x63, 0x08, 0x8e, 0x4a, 0xb6, 0x78, 0x93, 0xa4, 0x64,
- 0x2d, 0x6f, 0xe2, 0x45, 0x42, 0xc4, 0x63, 0xf5, 0x41, 0x78, 0xa8,
- 0xd6, 0x3e, 0x57, 0xb1, 0x2c, 0x73, 0xe9, 0x71, 0xd8, 0xa4, 0x4e,
- 0xb6, 0x2b, 0x67, 0x21, 0x27, 0x1b, 0x68, 0x7e, 0xaa, 0x5f, 0x79,
- 0x66, 0xe9, 0x78, 0x9a, 0x91, 0xa3, 0xc2, 0xa9, 0x20, 0x7a, 0x2d,
- 0x82, 0x72, 0xd2, 0x24, 0x94, 0xf7, 0x1f, 0x08, 0xdb, 0x63, 0x59,
- 0xd9, 0xda, 0x0c, 0x71, 0x1b, 0xf2, 0xa6, 0xae, 0x6e, 0xef, 0x1b,
- 0x96, 0xc9, 0xa4, 0xc0, 0x45, 0xb2, 0xf7, 0x39, 0x12, 0x9f, 0x27,
- 0x4e, 0x14, 0x31, 0x60, 0x10, 0x4f, 0xdc, 0x0a, 0xd1, 0x3e, 0xdc,
- 0x9c, 0x93, 0x46, 0xa5, 0x53, 0xed, 0xf4, 0x28, 0x70, 0x63, 0x36,
- 0x3e, 0x5d, 0xb7, 0xa6, 0x8d, 0x20, 0x91, 0x44, 0x85, 0xe9, 0xdb,
- 0xb7, 0x2a, 0xab, 0x92, 0xf5, 0xc7, 0xa7, 0x71, 0x77, 0x0d, 0x3e,
- 0xdc, 0x6c, 0x87, 0xfe, 0x0c, 0x7e, 0x3e, 0x9c, 0xb1, 0xb6, 0x78,
- 0x7c, 0x30, 0x44, 0x0a, 0xf2, 0x15, 0x41, 0x44, 0x82, 0x68, 0xe4,
- 0xa7, 0x74, 0x93, 0x11, 0xcd, 0xf0, 0x6b, 0x1c, 0xe0, 0x76, 0xb9,
- 0xba, 0x40, 0xa9, 0x00, 0x6f, 0x26, 0x78, 0x40, 0xf6, 0x5a, 0x5a,
- 0xc8, 0x42, 0xff, 0x81, 0x36, 0xcf, 0x71, 0x86, 0x9e, 0xec, 0xf0,
- 0x62, 0x57, 0x45, 0x7a, 0x02, 0x9c, 0x14, 0xf0, 0xbb, 0x05, 0xf3,
- 0x4d, 0x57, 0xaf, 0x0a, 0xa3, 0xca, 0x22, 0xea, 0xec, 0xfc, 0xdb,
- 0xe8, 0x6f, 0x44, 0x6a, 0xad, 0x07, 0x3c, 0xe8, 0xa5, 0x91, 0xc0,
- 0x34, 0x18, 0x46, 0x1c, 0x1f, 0x6f, 0x37, 0xab, 0xd2, 0x1b, 0xa0,
- 0x18, 0x32, 0x31, 0x64, 0x29, 0x3a, 0xbb, 0xae, 0x19, 0x4f, 0xa8,
- 0x60, 0x1a, 0x00, 0x77, 0x14, 0x61, 0xec, 0xb4, 0x79, 0xa6, 0x50,
- 0x3b, 0x38, 0x72, 0x6a, 0x7c, 0x11, 0x18, 0xa2, 0x47, 0xf9, 0xab,
- 0x24, 0x73, 0xf9, 0x99, 0xae, 0x92, 0xc6, 0xb2, 0x3a, 0x19, 0x37,
- 0x69, 0x06, 0xb5, 0xfa, 0x85, 0x14, 0x07, 0x2d, 0xc2, 0x73, 0xd1,
- 0xb0, 0x69, 0xba, 0x19, 0xe8, 0x0f, 0x85, 0x34, 0x0e, 0x0a, 0x81,
- 0x55, 0x25, 0xbd, 0xec, 0x6f, 0x9b, 0x0d, 0x2b, 0xf9, 0xd1, 0xde,
- 0x18, 0x6b, 0x3b, 0x18, 0x9b, 0x3e, 0x4f, 0x33, 0x68, 0x41, 0xe8,
- 0x6b, 0xda, 0x0c, 0x96, 0x4a, 0xeb, 0x71, 0xe1, 0x4f, 0x8e, 0x4a,
- 0x1c, 0x25, 0x8c, 0x86, 0x74, 0xa2, 0xee, 0x48, 0x8c, 0xc7, 0x0c,
- 0xef, 0x31, 0xe9, 0x3f, 0x9c, 0x7c, 0x0b, 0x8e, 0x05, 0x96, 0x9a,
- 0x44, 0x0e, 0x4f, 0x79, 0xbd, 0xdb, 0x4f, 0xbc, 0x50, 0x27, 0x6b,
- 0x5c, 0x66, 0x8f, 0xfe, 0x0a, 0x3c, 0xdd, 0xf3, 0xb0, 0x70, 0x84,
- 0x7c, 0x96, 0x9b, 0x50, 0x55, 0xb1, 0x4e, 0x1f, 0xf8, 0x68, 0x57,
- 0xea, 0x96, 0x8f, 0x75, 0x7b, 0xcc, 0x66, 0x12, 0x8e, 0x8a, 0x39,
- 0x78, 0xd5, 0x7a, 0x5c, 0x15, 0x0c, 0x02, 0x16, 0xc0, 0x27, 0xe2,
- 0x9e, 0x83, 0xbe, 0x54, 0x47, 0xf1, 0x41, 0x27, 0xdc, 0xb7, 0x49,
- 0x51, 0x94, 0xdb, 0x86, 0xbb, 0x77, 0xf1, 0x5b, 0xa6, 0x5b, 0x9a,
- 0xf5, 0x1b, 0xc9, 0x6d, 0x03, 0xb7, 0xb7, 0x6b, 0x0d, 0x01, 0x5d,
- 0xab, 0xe8, 0x98, 0xd2, 0xf3, 0xa8, 0x7f, 0x76, 0xd5, 0x79, 0x27,
- 0xec, 0xd8, 0x2b, 0x1f, 0x54, 0x5e, 0xd3, 0xc4, 0xd7, 0x5a, 0x10,
- 0xd6, 0xed, 0x3f, 0xf3, 0x21, 0xaf, 0x83, 0xcd, 0xcc, 0x11, 0x96,
- 0xf6, 0x24, 0x82, 0x9e, 0xbd, 0x7a, 0xeb, 0x5a, 0x92, 0x5d, 0x0e,
- 0x60, 0x1d, 0x24, 0xac, 0x93, 0x09, 0xaf, 0xbf, 0x6f, 0x0a, 0xd4,
- 0xe4, 0x80, 0xff, 0x7f, 0xb4, 0xa6, 0xcb, 0x04, 0x13, 0xbf, 0x89,
- 0x71, 0xb8, 0xa3, 0x45, 0xf9, 0x6d, 0x1e, 0x56, 0x25, 0xbf, 0xaf,
- 0x9c, 0xd6, 0xc9, 0xdc, 0xb7, 0x02, 0x4a, 0x2a, 0xaf, 0xcc, 0x66,
- 0x2c, 0x4f, 0x52, 0x9e, 0x3e, 0xf5, 0x15, 0xe0, 0x5e, 0x22, 0x03,
- 0x47, 0x29, 0x1a, 0x2b, 0x67, 0x45, 0xdb, 0xd5, 0x50, 0xf4, 0xd3,
- 0xa8, 0x5f, 0xeb, 0xef, 0xcf, 0x82, 0x79, 0x7d, 0x4e, 0x7f, 0x48,
- 0x6a, 0x53, 0xa1, 0xbf, 0xd2, 0xf7, 0x33, 0xdb, 0x58, 0xd4, 0x8b,
- 0x96, 0xbe, 0x23, 0x69, 0x22, 0xdf, 0xfe, 0x76, 0x79, 0xb1, 0x1c,
- 0x8e, 0x34, 0x2c, 0xa1, 0xa5, 0x70, 0x2b, 0x19, 0xb2, 0x63, 0xb8,
- 0xf7, 0x03, 0x8b, 0x37, 0x53, 0xe9, 0x3a, 0x0c, 0xa0, 0xa2, 0xff,
- 0x37, 0xb9, 0x2c, 0xe6, 0xc9, 0x53, 0xa9, 0xe4, 0x58, 0x97, 0xe3,
- 0xf4, 0xec, 0xe2, 0x66, 0x8d, 0xdf, 0x72, 0x1e, 0x7a, 0x2e, 0xb6,
- 0x33, 0x27, 0x4a, 0xb4, 0xcd, 0x43, 0xa2, 0x88, 0x61, 0x5b, 0xf1,
- 0x32, 0x6e, 0xf1, 0xd4, 0x03, 0x1b, 0x6d, 0xa9, 0x5f, 0x4c, 0xac,
- 0x4b, 0x8a, 0xab, 0xb5, 0x8d, 0x53, 0x41, 0xe2, 0xad, 0xd9, 0x62,
- 0x19, 0xef, 0xc4, 0x11, 0x20, 0xfc, 0xf5, 0xeb, 0x55, 0x29, 0xd9,
- 0x11, 0x89, 0xd0, 0x81, 0x12, 0x1b, 0x8b, 0x89, 0xca, 0xb2, 0x4c,
- 0x3a, 0x60, 0x23, 0x61, 0x3c, 0x4d, 0xb9, 0x14, 0xb4, 0x2b, 0x9e,
- 0x7c, 0xb5, 0x13, 0x06, 0x4e, 0x9a, 0x02, 0x01, 0x25, 0x09, 0xa2,
- 0x61, 0x5d, 0xa5, 0x07, 0x4f, 0xe7, 0xd3, 0x32, 0xb2, 0x4f, 0xd7,
- 0xc2, 0xb2, 0xaa, 0xaf, 0xc0, 0x57, 0xeb, 0xe3, 0xc5, 0x07, 0x95,
- 0x5f, 0x25, 0x42, 0x85, 0xd6, 0x44, 0x3b, 0xa9, 0xc1, 0x31, 0x88,
- 0x84, 0x31, 0xfc, 0x30, 0xf2, 0xf1, 0xdc, 0xdf, 0xb2, 0xf2, 0xb3,
- 0x10, 0xc4, 0x0b, 0x9b, 0x25, 0xbe, 0xfd, 0xf0, 0x1d, 0x7d, 0xf9,
- 0x1d, 0x9f, 0x36, 0x5c, 0x20, 0x2a, 0xe6, 0xbf, 0x72, 0xd1, 0x6e,
- 0x3f, 0x3a, 0xd0, 0xa9, 0xde, 0x0b, 0x8b, 0xe2, 0x25, 0xe1, 0xc0,
- 0xa7, 0x39, 0xd6, 0x43, 0x96, 0xf6, 0x52, 0xbf, 0xfc, 0xd6, 0x60,
- 0xbf, 0xf9, 0xe0, 0x14, 0xaf, 0xb3, 0x3a, 0x15, 0x9d, 0x0b, 0x5d,
- 0xcf, 0xab, 0xc7, 0x9e, 0x8f, 0xf6, 0x64, 0x87, 0x5e, 0x6b, 0x83,
- 0x57, 0x77, 0x65, 0xed, 0xfd, 0x14, 0xe9, 0xd2, 0x65, 0x18, 0xeb,
- 0x2d, 0x5e, 0xf0, 0xcc, 0xff, 0xc3, 0x7c, 0x4b, 0x2a, 0x73, 0x1f,
- 0xde, 0x67, 0xad, 0xeb, 0xc5, 0x1e, 0x95, 0x4c, 0x0c, 0x2d, 0x85,
- 0x96, 0x34, 0x49, 0x1d, 0x86, 0xe3, 0x34, 0xa4, 0x93, 0x57, 0x82,
- 0xc0, 0x96, 0x9d, 0xf5, 0x96, 0xa8, 0xba, 0xc2, 0xe6, 0x73, 0x77,
- 0xaf, 0xcc, 0xa1, 0x58, 0xe9, 0x9e, 0x37, 0xe4, 0x77, 0x3b, 0xff,
- 0x5b, 0x33, 0x24, 0x62, 0xf3, 0x40, 0x87, 0x92, 0x57, 0x66, 0xd9,
- 0x42, 0x4b, 0xcd, 0xd0, 0x93, 0xec, 0xd8, 0x3d, 0x64, 0xef, 0x7a,
- 0x8b, 0xd9, 0x86, 0x19, 0x45, 0xee, 0x5c, 0xf8, 0xdb, 0x51, 0xb1,
- 0x5d, 0x60, 0xe4, 0x28, 0x9e, 0x78, 0x22, 0xa8, 0x42, 0xd4, 0xd6,
- 0xde, 0x71, 0x55, 0xd8, 0x58, 0xb7, 0xcd, 0x13, 0x1d, 0xe8, 0x01,
- 0x36, 0xe0, 0x57, 0x85, 0x76, 0x06, 0x97, 0x61, 0xe0, 0xd5, 0xfe,
- 0x56, 0x47, 0x4a, 0x9c, 0x1a, 0x0c, 0xea, 0x5a, 0x61, 0x9d, 0x94,
- 0xaa, 0x19, 0xbb, 0xec, 0x6d, 0xee, 0x39, 0x84, 0xb8, 0xc1, 0x54,
- 0xa8, 0xa7, 0x7f, 0x28, 0xc2, 0xcb, 0x13, 0x4b, 0x81, 0xbc, 0xaf,
- 0xcb, 0x8d, 0x77, 0x81, 0x14, 0xf7, 0xc4, 0x92, 0x94, 0x6a, 0x08,
- 0x6c, 0x20, 0x5f, 0xa0, 0x1b, 0x7a, 0x3d, 0xa2, 0x5d, 0x9b, 0x5e,
- 0xdf, 0xb2, 0x6c, 0x65, 0x20, 0x84, 0xf1, 0x07, 0xea, 0x53, 0x99,
- 0x18, 0x36, 0x96, 0x78, 0x10, 0x19, 0x02, 0x8d, 0x28, 0x4b, 0x8f,
- 0xc5, 0x98, 0x27, 0xae, 0xbc, 0x8e, 0x7e, 0x3e, 0x14, 0xc2, 0x50,
- 0xbe, 0x91, 0x9b, 0x18, 0xc7, 0x87, 0x4d, 0x74, 0xd4, 0x25, 0xd1,
- 0x08, 0x3c, 0xd5, 0x88, 0xf7, 0xd4, 0x66, 0x17, 0x2e, 0x3e, 0xa4,
- 0x1e, 0xce, 0x19, 0xc6, 0x7e, 0x2e, 0x13, 0x92, 0xba, 0x1d, 0x88,
- 0xa9, 0x5a, 0x49, 0x9e, 0xf8, 0x97, 0x0b, 0x84, 0xd1, 0x82, 0x5a,
- 0xd5, 0x30, 0xd8, 0x3f, 0x54, 0x30, 0x7e, 0x66, 0x22, 0x8f, 0xcc,
- 0xa9, 0xa2, 0x90, 0x16, 0xd4, 0x05, 0x85, 0xc0, 0xab, 0x2f, 0x5a,
- 0xce, 0x79, 0x8f, 0x14, 0x49, 0xa8, 0x23, 0x78, 0xa0, 0xdc, 0xef,
- 0x4e, 0xcb, 0x8b, 0xae, 0x62, 0xb8, 0xff, 0xe9, 0x44, 0x41, 0xbf,
- 0x79, 0x73, 0x06, 0x5c, 0x57, 0x4c, 0x31, 0x7c, 0x2d, 0x90, 0xbd,
- 0xcb, 0x66, 0x66, 0x3e, 0x76, 0xc6, 0x7b, 0xb0, 0x16, 0xb2, 0x41,
- 0x28, 0x23, 0xc2, 0xf2, 0xb4, 0xaf, 0xeb, 0x9d, 0x8a, 0xf5, 0xbb,
- 0x0c, 0x24, 0x8e, 0x2d, 0xb4, 0x20, 0x74, 0x8b, 0x68, 0xb3, 0x14,
- 0x65, 0xb2, 0xbc, 0x04, 0x29, 0x16, 0x2b, 0x40, 0xc6, 0x89, 0x0b,
- 0x0c, 0x11, 0xa3, 0x39, 0x8e, 0x29, 0xc2, 0x3a, 0xfa, 0xf5, 0xb0,
- 0xa5, 0x29, 0xc3, 0x29, 0x95, 0x05, 0x6a, 0xc7, 0x41, 0xf5, 0x1e,
- 0xe7, 0xfb, 0xc9, 0xb7, 0x18, 0xbb, 0xcc, 0x62, 0xea, 0x43, 0x92,
- 0x69, 0x1c, 0xd1, 0xe2, 0x65, 0xdb, 0x2f, 0x52, 0x9b, 0x23, 0x05,
- 0x70, 0xe6, 0x40, 0x29, 0xb1, 0x56, 0x49, 0x48, 0xf6, 0x1d, 0x5f,
- 0x0b, 0x00, 0x1b, 0x16, 0x38, 0xe4, 0xe4, 0x1a, 0x26, 0x62, 0xc4,
- 0x73, 0x6b, 0x5f, 0x80, 0x63, 0x51, 0x03, 0x4e, 0xf8, 0xe0, 0x22,
- 0xe4, 0x71, 0xfd, 0x11, 0x42, 0x0d, 0xa4, 0x45, 0x54, 0x03, 0x06,
- 0xd9, 0x95, 0x8c, 0x99, 0x8b, 0x0b, 0x0b, 0xd6, 0x64, 0x86, 0xcd,
- 0x93, 0x62, 0x67, 0xc4, 0x30, 0x44, 0x17, 0x01, 0x5d, 0x28, 0x56,
- 0x20, 0xe1, 0x87, 0xfe, 0xd7, 0xbf, 0x5e, 0x67, 0x84, 0x14, 0x9c,
- 0x85, 0xfd, 0x01, 0x42, 0xeb, 0x70, 0x98, 0x90, 0xe2, 0x11, 0xfc,
- 0xc8, 0x30, 0xac, 0x0c, 0xed, 0x28, 0x69, 0xaf, 0xa0, 0xed, 0xc6,
- 0x87, 0x4e, 0x8e, 0x8f, 0x88, 0x72, 0x96, 0x2f, 0x05, 0x78, 0x65,
- 0x71, 0xc1, 0x91, 0xa7, 0x67, 0x5a, 0x07, 0x62, 0x86, 0xcf, 0xef,
- 0x05, 0x71, 0x59, 0x76, 0x24, 0x40, 0x6f, 0x42, 0xb8, 0xd2, 0x6c,
- 0x05, 0x28, 0x3e, 0xc2, 0xcb, 0xbb, 0xdf, 0x40, 0x67, 0xf1, 0x0d,
- 0xe9, 0x61, 0x85, 0x76, 0xac, 0x3f, 0x75, 0x13, 0x9a, 0x71, 0x6e,
- 0x9a, 0x9f, 0xc9, 0xe6, 0x5c, 0xb3, 0x3a, 0x11, 0x50, 0x3a, 0xce,
- 0x91, 0xc3, 0x90, 0x77, 0xea, 0x74, 0xdf, 0x32, 0xd7, 0x30, 0xcf,
- 0x09, 0x7f, 0x9b, 0xde, 0xfe, 0xca, 0x88, 0x5d, 0x0e, 0x9d, 0x27,
- 0xa3, 0x7f, 0x2b, 0xd4, 0xbf, 0xb8, 0x97, 0x8f, 0x8a, 0x3b, 0x65,
- 0x23, 0x7b, 0x39, 0xa7, 0x14, 0x1a, 0x1d, 0x1a, 0x35, 0xcf, 0x48,
- 0x59, 0xd5, 0xc6, 0xe6, 0x7f, 0x36, 0x71, 0xc6, 0x62, 0xa6, 0x5e,
- 0x91, 0xc4, 0xb2, 0xaf, 0x07, 0x65, 0xea, 0x91, 0xbd, 0xd3, 0xd9,
- 0x2c, 0x8b, 0x37, 0x7f, 0x5f, 0xb4, 0x94, 0xe2, 0x8b, 0x65, 0xc8,
- 0xf8, 0x87, 0xf8, 0x30, 0x11, 0xd3, 0xcd, 0xac, 0x19, 0xb3, 0x7b,
- 0x4d, 0xb1, 0x32, 0x49, 0xc7, 0xce, 0xb4, 0x16, 0x26, 0x58, 0x66,
- 0x8f, 0xd6, 0x3c, 0x08, 0x14, 0xf3, 0x0c, 0xb8, 0x98, 0xe2, 0xe3,
- 0x9c, 0x75, 0xdc, 0xda, 0x90, 0x7f, 0x1c, 0x4d, 0xd9, 0xbc, 0x50,
- 0x9b, 0x41, 0x5d, 0x2a, 0xf3, 0x53, 0x07, 0xe2, 0xee, 0x93, 0x2a,
- 0x6d, 0x17, 0x09, 0x6f, 0xd6, 0xb8, 0xb6, 0xa0, 0xc8, 0x55, 0x78,
- 0x27, 0xfd, 0x75, 0xc5, 0xb7, 0x48, 0xdd, 0xc9, 0xe3, 0x1a, 0xf7,
- 0x96, 0x05, 0x9f, 0xa8, 0xe8, 0x58, 0x09, 0x0c, 0xe7, 0x64, 0xe7,
- 0x04, 0x76, 0xfd, 0x05, 0xe6, 0x3d, 0xde, 0x16, 0xf4, 0x5e, 0x42,
- 0x18, 0x9d, 0x55, 0x0a, 0x9f, 0x98, 0x96, 0xc7, 0x4e, 0x7e, 0xee,
- 0xa2, 0xda, 0x3b, 0x88, 0x3f, 0x89, 0x60, 0xad, 0x1f, 0x36, 0xb9,
- 0xb0, 0xe7, 0xf5, 0x6b, 0xf1, 0xec, 0x61, 0x1f, 0xa8, 0xad, 0xdd,
- 0x53, 0x95, 0x0e, 0x0b, 0xe4, 0x54, 0x87, 0x3c, 0x53, 0x3b, 0x3a,
- 0xc7, 0xa5, 0xf4, 0xee, 0xf8, 0xbf, 0x1d, 0x0e, 0x83, 0x8a, 0xb2,
- 0x1b, 0xab, 0x19, 0xcc, 0x6f, 0x23, 0x14, 0x2f, 0x0a, 0xeb, 0x52,
- 0x10, 0x6e, 0x4a, 0x62, 0xdc, 0x72, 0x4f, 0x17, 0x2d, 0xda, 0x2b,
- 0x70, 0xe1, 0xde, 0xce, 0xc9, 0x9d, 0xa9, 0xe3, 0xdc, 0x20, 0x7c,
- 0x63, 0x7f, 0x63, 0xa1, 0x5f, 0x33, 0xb6, 0xc8, 0x65, 0x34, 0xf4,
- 0xc6, 0x72, 0x42, 0xe8, 0x28, 0x05, 0xe5, 0xe6, 0xdf, 0x48, 0xdb,
- 0xd5, 0x31, 0xf6, 0x91, 0x0b, 0xde, 0x74, 0x35, 0x43, 0x2f, 0xa0,
- 0xd8, 0xae, 0x4b, 0x46, 0x15, 0xd5, 0x5f, 0x0b, 0xa6, 0xc4, 0xe6,
- 0x38, 0x79, 0xeb, 0x58, 0xd5, 0x3f, 0xb9, 0x45, 0x45, 0xdb, 0x16,
- 0xdc, 0xcc, 0x86, 0x56, 0x40, 0x51, 0x7e, 0x33, 0x9f, 0xd4, 0xa4,
- 0xd2, 0xca, 0xab, 0x3f, 0xe0, 0xd5, 0xac, 0x37, 0xdd, 0xc2, 0x25,
- 0x1b, 0x34, 0xcd, 0x14, 0xa5, 0x65, 0x9d, 0xe0, 0x39, 0x02, 0xfe,
- 0x45, 0x41, 0xe5, 0xa9, 0x1a, 0x32, 0x1f, 0x08, 0xc8, 0xe1, 0x26,
- 0xf5, 0x05, 0xc1, 0xb0, 0x2e, 0x50, 0xb7, 0x33, 0x85, 0xc9, 0x9b,
- 0xe4, 0xed, 0xe0, 0x57, 0x1d, 0xc3, 0x6e, 0xe2, 0x63, 0x05, 0x9f,
- 0x74, 0xea, 0x1d, 0x7a, 0xdc, 0x03, 0x65, 0x46, 0x1b, 0xb5, 0x76,
- 0xe4, 0x3a, 0x0b, 0xf4, 0x40, 0xf8, 0x30, 0xd8, 0x5c, 0x8f, 0xca,
- 0x6d, 0x3f, 0x46, 0xc7, 0xb2, 0xa1, 0xae, 0xd3, 0xaf, 0xc0, 0x37,
- 0x5c, 0x9d, 0xec, 0x5a, 0x4f, 0xe4, 0x20, 0xb3, 0x7e, 0x00, 0x52,
- 0xfb, 0x99, 0xc4, 0x19, 0x0b, 0x42, 0x97, 0x62, 0x99, 0x71, 0xf4,
- 0x49, 0x75, 0x8e, 0x5f, 0x31, 0x46, 0xff, 0x33, 0x35, 0x11, 0x28,
- 0x0c, 0x2c, 0x56, 0x75, 0x17, 0xef, 0xc0, 0x9a, 0xba, 0xbc, 0x61,
- 0xd3, 0x0e, 0xde, 0xed, 0x78, 0x66, 0x43, 0x55, 0xd1, 0xdc, 0x09,
- 0xdb, 0x51, 0x47, 0xca, 0x88, 0x58, 0xbe, 0x7f, 0xe7, 0x56, 0xdf,
- 0x61, 0x13, 0xb8, 0x0f, 0x4f, 0xa3, 0xa9, 0x37, 0xc2, 0x65, 0xcc,
- 0x28, 0xa8, 0x3e, 0x50, 0x92, 0xbb, 0x63, 0xbc, 0x36, 0x98, 0x1e,
- 0xed, 0xaa, 0xad, 0x18, 0xe8, 0x84, 0xd3, 0x72, 0x80, 0x63, 0x03,
- 0xe8, 0xd2, 0x45, 0xab, 0xa2, 0xdc, 0x98, 0x4d, 0xf4, 0x8e, 0x69,
- 0xd6, 0x70, 0x2d, 0x8a, 0x06, 0x9d, 0x93, 0xb9, 0x3b, 0xd1, 0x79,
- 0xa6, 0x20, 0x70, 0xf7, 0x8b, 0x1f, 0x4b, 0x77, 0x5b, 0x38, 0x11,
- 0xe8, 0xaf, 0x1d, 0x38, 0x69, 0xef, 0x2b, 0x04, 0xa9, 0x86, 0x43,
- 0xbf, 0x8d, 0x9e, 0x3d, 0x79, 0x5f, 0x3e, 0xac, 0xee, 0xbd, 0x39,
- 0x8e, 0x65, 0xe5, 0x95, 0x50, 0xab, 0x79, 0xf1, 0xf1, 0xed, 0x04,
- 0x49, 0x4b, 0x28, 0x4f, 0xed, 0x92, 0xe1, 0x90, 0x5b, 0x43, 0x6e,
- 0x88, 0x36, 0x39, 0x6b, 0x3d, 0x0b, 0x37, 0x7c, 0xca, 0xc0, 0x73,
- 0x1c, 0xc0, 0x2f, 0x17, 0x28, 0x50, 0xbb, 0xe0, 0x54, 0x6f, 0x9a,
- 0xc0, 0xc7, 0x3f, 0x73, 0xda, 0xd5, 0x2c, 0xb8, 0xd7, 0xa9, 0x73,
- 0x9b, 0x01, 0x39, 0xc0, 0x0b, 0x7c, 0xb7, 0xf1, 0x3b, 0x8b, 0x00,
- 0x3c, 0x20, 0xe7, 0xc3, 0x09, 0x18, 0x06, 0xe4, 0xf6, 0x34, 0x0c,
- 0x59, 0xba, 0x8a, 0xd2, 0xf7, 0x0b, 0x4c, 0x05, 0x3d, 0xbe, 0x40,
- 0x3c, 0xa9, 0xf9, 0x07, 0xc4, 0xcb, 0xfd, 0xb7, 0x5a, 0x0a, 0x26,
- 0x8b, 0x36, 0xab, 0x3a, 0xb2, 0xae, 0xf0, 0xa1, 0x55, 0xd8, 0x5e,
- 0x88, 0xb8, 0xd3, 0x55, 0x66, 0xbf, 0x17, 0x14, 0x1c, 0x12, 0x3a,
- 0x81, 0x7a, 0xfb, 0xc3, 0x47, 0x32, 0xd9, 0x74, 0xcd, 0x36, 0x29,
- 0x7b, 0x2d, 0x61, 0x7e, 0x11, 0xfc, 0x92, 0x42, 0x39, 0x8a, 0xa4,
- 0x69, 0xbb, 0x10, 0xe3, 0xaf, 0xdd, 0xad, 0xba, 0x19, 0xda, 0x0b,
- 0x53, 0x17, 0x1c, 0x83, 0x37, 0x3d, 0x91, 0x5b, 0x2f, 0x11, 0xe1,
- 0xef, 0x5f, 0x52, 0x56, 0x5f, 0x0c, 0x14, 0xf4, 0x0d, 0x16, 0x90,
- 0x04, 0x5a, 0xf5, 0xc4, 0x82, 0xa9, 0x81, 0xcb, 0x3f, 0xf6, 0xfe,
- 0x58, 0xbd, 0x79, 0x66, 0x9d, 0x00, 0xd6, 0x44, 0x99, 0xd9, 0xe9,
- 0x53, 0x4d, 0x2f, 0x91, 0x64, 0xf2, 0x33, 0xbc, 0x08, 0xef, 0x08,
- 0x61, 0x9d, 0x4d, 0x67, 0x6c, 0xd0, 0x16, 0x6c, 0x9f, 0x0b, 0x99,
- 0x67, 0x76, 0x26, 0x33, 0xd4, 0x77, 0xcf, 0x75, 0xa6, 0xa2, 0x2b,
- 0x92, 0xcf, 0x92, 0xb0, 0x26, 0xf1, 0xa9, 0x71, 0xf8, 0xcc, 0x9e,
- 0x8b, 0x0d, 0x23, 0x03, 0x29, 0x2e, 0x87, 0xa4, 0x5a, 0x22, 0xed,
- 0x99, 0xb0, 0x48, 0xc7, 0x0b, 0x0a, 0xf2, 0xa4, 0x1d, 0xe1, 0x88,
- 0xd3, 0x10, 0x2e, 0xf2, 0x90, 0xc1, 0x87, 0x41, 0x3e, 0xfc, 0x1b,
- 0xef, 0x4b, 0x8e, 0x5f, 0xc9, 0xf6, 0xa7, 0x19, 0xd0, 0x2d, 0xe8,
- 0x0d, 0x3e, 0x3f, 0x74, 0xc8, 0xe2, 0xdf, 0x72, 0xbf, 0xb1, 0x6d,
- 0x2b, 0x9e, 0x10, 0x6a, 0x76, 0xe5, 0x7c, 0x05, 0xfd, 0xef, 0xa0,
- 0x42, 0xa1, 0x75, 0x78, 0xea, 0x19, 0x97, 0x2f, 0xd9, 0x9b, 0xef,
- 0x17, 0xae, 0x20, 0x66, 0x1e, 0xc5, 0x1e, 0xb3, 0x85, 0x2a, 0x11,
- 0x0c, 0xec, 0x30, 0xa3, 0x72, 0xae, 0xc1, 0xe0, 0x96, 0x63, 0x47,
- 0xe0, 0x06, 0xd9, 0x7d, 0x25, 0x4b, 0x59, 0x05, 0x7b, 0x01, 0x8f,
- 0xe7, 0xaf, 0x20, 0xf9, 0x37, 0x1a, 0xd4, 0xb1, 0xc8, 0x3d, 0xb0,
- 0xd7, 0xd2, 0x86, 0xae, 0x3c, 0xc9, 0xc2, 0xe2, 0x42, 0x95, 0x8e,
- 0xc0, 0xc3, 0x1a, 0xcb, 0xbf, 0xb6, 0x13, 0x1b, 0x9a, 0xe6, 0xb8,
- 0x39, 0x04, 0x87, 0x89, 0x7a, 0x54, 0x42, 0x7d, 0xde, 0xa3, 0x6b,
- 0x59, 0x89, 0x1f, 0x32, 0x3c, 0x37, 0x1d, 0x21, 0xee, 0x83, 0xbd,
- 0x77, 0xab, 0x98, 0x3c, 0xa1, 0x3d, 0x29, 0xf8, 0xc2, 0xee, 0x28,
- 0xca, 0x82, 0x80, 0x18, 0x3a, 0x87, 0x09, 0x4a, 0x6f, 0xc1, 0x8d,
- 0x5e, 0xd9, 0xbe, 0x2d, 0x61, 0x8a, 0xdf, 0x19, 0x2b, 0x08, 0xd4,
- 0x45, 0x45, 0xcc, 0x72, 0x8d, 0xc2, 0x43, 0x3b, 0x74, 0xc9, 0xe8,
- 0x14, 0xad, 0xe9, 0xf4, 0x88, 0x29, 0x10, 0x57, 0x2e, 0x47, 0xbe,
- 0xd8, 0x73, 0x37, 0x4d, 0x1b, 0xfe, 0x29, 0x61, 0x14, 0x04, 0x79,
- 0x45, 0x89, 0x13, 0x22, 0x6f, 0xad, 0x29, 0xba, 0x6a, 0x17, 0xb9,
- 0x0e, 0x87, 0xbd, 0x72, 0xc4, 0xa3, 0x3e, 0x91, 0xd7, 0x93, 0xbe,
- 0x7b, 0x73, 0x14, 0xe8, 0xf3, 0x21, 0xc4, 0x03, 0x21, 0x7f, 0xb6,
- 0xad, 0xa2, 0x9b, 0x07, 0xee, 0xff, 0x28, 0x5c, 0xa7, 0xd9, 0xba,
- 0xec, 0xb4, 0x0f, 0xe7, 0xa8, 0xcb, 0x48, 0xc3, 0xa2, 0x39, 0x66,
- 0x51, 0xf8, 0xb1, 0x0d, 0x4f, 0x40, 0xa2, 0x38, 0xd7, 0x84, 0x31,
- 0xff, 0x5f, 0x3b, 0xf2, 0x73, 0x9d, 0x31, 0x1b, 0xf7, 0xad, 0x5c,
- 0x8c, 0x0d, 0x1b, 0xdd, 0x33, 0x5b, 0x35, 0xcb, 0x22, 0x1a, 0x13,
- 0x5c, 0x43, 0xda, 0x58, 0x7b, 0x9a, 0x83, 0x27, 0x4e, 0xbd, 0xc0,
- 0x56, 0x78, 0x65, 0x23, 0x3a, 0x03, 0xad, 0x2e, 0x37, 0xda, 0xa0,
- 0x97, 0x33, 0x7c, 0x82, 0xaa, 0x62, 0xd3, 0x61, 0x6b, 0xc1, 0xfb,
- 0x3b, 0xdc, 0x72, 0x9b, 0xb1, 0x84, 0xcf, 0xc8, 0xb4, 0x6d, 0x87,
- 0x2b, 0xdd, 0x0f, 0x3e, 0x8a, 0xd8, 0x00, 0x21, 0xc9, 0xc8, 0x33,
- 0x21, 0xb3, 0xe6, 0x81, 0xa9, 0x8f, 0x65, 0x49, 0x4c, 0x1f, 0xbb,
- 0x53, 0xbc, 0xb8, 0x56, 0x47, 0x22, 0x8b, 0x6e, 0x3c, 0x6f, 0x2d,
- 0x19, 0x9b, 0x88, 0x55, 0x24, 0x67, 0x8c, 0x3a, 0xc7, 0xb1, 0xa7,
- 0x9e, 0xfd, 0x45, 0x48, 0x25, 0x4b, 0xbe, 0x30, 0x49, 0xbc, 0x26,
- 0x89, 0xc4, 0xed, 0xf4, 0x76, 0xae, 0x12, 0x7b, 0xed, 0x2b, 0xc8,
- 0x0b, 0x36, 0xad, 0xb7, 0xe3, 0x66, 0x55, 0xc2, 0x84, 0x2f, 0x5c,
- 0x7f, 0xcb, 0x2f, 0x6b, 0xfe, 0x3e, 0x0c, 0x4b, 0x6c, 0xf7, 0xdc,
- 0x41, 0xce, 0xc9, 0x57, 0x1a, 0x00, 0x67, 0xa6, 0x46, 0x45, 0x26,
- 0x3f, 0x8d, 0x79, 0x89, 0x04, 0x1d, 0xa9, 0x66, 0xa6, 0xfb, 0x21,
- 0xb7, 0x71, 0x80, 0x3b, 0x04, 0x3c, 0x97, 0xa8, 0x48, 0x34, 0x32,
- 0x02, 0x5d, 0x4f, 0xbe, 0x82, 0xab, 0x3b, 0x44, 0x73, 0x0a, 0xbe,
- 0xa6, 0x00, 0x79, 0x3c, 0x18, 0x7b, 0x3f, 0xb0, 0x9e, 0x27, 0x3f,
- 0x79, 0x90, 0x20, 0x61, 0xce, 0xc7, 0x91, 0x6e, 0xd5, 0x58, 0xb6,
- 0xd6, 0x7f, 0xb3, 0x00, 0x28, 0xa3, 0x2f, 0x92, 0xa7, 0x14, 0x72,
- 0xc0, 0xfa, 0x6f, 0x27, 0x37, 0x8a, 0x59, 0x15, 0x3f, 0x6d, 0x4e,
- 0x44, 0xd1, 0x42, 0x62, 0xef, 0x77, 0xa7, 0x58, 0xc2, 0x11, 0x12,
- 0x5e, 0x0a, 0x1b, 0x0c, 0x98, 0xb4, 0x6b, 0xc4, 0xae, 0xcd, 0x4b,
- 0xbc, 0x22, 0x8f, 0x1e, 0x62, 0x1b, 0xfe, 0x91, 0x1f, 0xee, 0x6a,
- 0x59, 0x59, 0x16, 0x2b, 0x04, 0xc1, 0x5c, 0x34, 0x2c, 0x6f, 0xd1,
- 0x8d, 0xf1, 0x4e, 0xde, 0xaa, 0xcb, 0xf5, 0x98, 0x0f, 0xe7, 0x36,
- 0x64, 0x46, 0xdc, 0xdc, 0x0c, 0x18, 0x99, 0xd2, 0xe1, 0x0a, 0x6f,
- 0x67, 0xad, 0x05, 0x3d, 0x7b, 0x48, 0x4e, 0xf5, 0x2a, 0xbf, 0x35,
- 0xbd, 0xa4, 0xd1, 0x81, 0xc9, 0x73, 0xe3, 0x75, 0x81, 0x65, 0x29,
- 0x53, 0x94, 0x6d, 0xf3, 0xbb, 0x4a, 0x82, 0x70, 0xa9, 0xca, 0x70,
- 0xe2, 0x2c, 0x21, 0x33, 0x84, 0xde, 0x62, 0x3c, 0x07, 0x1d, 0xd1,
- 0xd3, 0x05, 0x20, 0xa8, 0x2f, 0x13, 0xc0, 0x31, 0xef, 0x79, 0x96,
- 0x06, 0x67, 0x64, 0x1c, 0x05, 0xda, 0xa2, 0xa0, 0x55, 0xd2, 0x95,
- 0x11, 0x20, 0xf8, 0x29, 0x10, 0xa9, 0x23, 0x86, 0xf2, 0x59, 0x82,
- 0xba, 0x84, 0x85, 0xaa, 0xed, 0x65, 0x64, 0x6e, 0x17, 0x74, 0x62,
- 0x9f, 0x33, 0x99, 0x7f, 0xa4, 0x37, 0x73, 0x3e, 0x73, 0x4d, 0xe6,
- 0x45, 0xa2, 0x6d, 0x59, 0x02, 0x25, 0x3f, 0x0a, 0xde, 0xe3, 0x59,
- 0x2a, 0xc0, 0x00, 0xb1, 0x49, 0xce, 0xb7, 0x20, 0xcf, 0x5f, 0x2a,
- 0x84, 0x12, 0x25, 0x12, 0x93, 0x74, 0x52, 0x8d, 0x00, 0xe7, 0xbd,
- 0x79, 0x27, 0xd8, 0xe0, 0xa9, 0xca, 0x31, 0xb1, 0x36, 0x13, 0x2c,
- 0xbd, 0x6c, 0x7f, 0x35, 0x16, 0xf8, 0x0d, 0x18, 0xec, 0xbb, 0x98,
- 0xb8, 0x0c, 0x25, 0x12, 0x70, 0x78, 0xac, 0x3c, 0xdd, 0x7a, 0x9f,
- 0xe7, 0x31, 0x5e, 0x70, 0x9f, 0xa4, 0xb5, 0xa8, 0x75, 0x16, 0x82,
- 0x56, 0x03, 0xb6, 0xec, 0x47, 0x42, 0x63, 0xac, 0x29, 0x95, 0x45,
- 0x4e, 0x92, 0xc7, 0x4f, 0xfc, 0xaa, 0x86, 0xac, 0x61, 0xff, 0xbe,
- 0xe5, 0xd4, 0x94, 0x76, 0xab, 0x03, 0x8d, 0xfb, 0xbb, 0x57, 0x0e,
- 0x2c, 0xbc, 0x50, 0x39, 0x7f, 0x9b, 0x5f, 0x6f, 0xe5, 0x9b, 0x82,
- 0x4a, 0x08, 0xb9, 0x83, 0xde, 0xe6, 0x79, 0xaa, 0xa4, 0x19, 0x74,
- 0x77, 0x73, 0x74, 0x0c, 0x19, 0x4a, 0xc4, 0x21, 0x61, 0x96, 0x43,
- 0x76, 0xf4, 0xa3, 0xbd, 0xd0, 0x73, 0x84, 0x99, 0x75, 0xa6, 0x8c,
- 0x92, 0x52, 0x96, 0xdb, 0xec, 0x40, 0x06, 0x79, 0x9c, 0x9a, 0xfe,
- 0xfb, 0x41, 0x90, 0xc8, 0xb5, 0x75, 0xba, 0xcc, 0x0f, 0xf8, 0x1c,
- 0xa3, 0x0b, 0xa5, 0x34, 0x1c, 0xbd, 0x8c, 0x91, 0x43, 0x15, 0x33,
- 0xed, 0xfe, 0xde, 0x79, 0xdd, 0x16, 0x9b, 0x6b, 0x01, 0x61, 0x97,
- 0x71, 0x09, 0x9e, 0x09, 0x6a, 0xc1, 0xb9, 0x96, 0xc8, 0xbd, 0x60,
- 0x6e, 0xfe, 0x00, 0xfc, 0xc0, 0x31, 0xca, 0x0c, 0x46, 0xa8, 0xc6,
- 0x3b, 0x93, 0x7b, 0x6b, 0xd4, 0x3a, 0x33, 0xba, 0xcb, 0x36, 0xf3,
- 0xb5, 0x88, 0xb7, 0x97, 0xdc, 0xc1, 0x94, 0x08, 0xdf, 0xda, 0x7e,
- 0xc8, 0xfc, 0xf4, 0x83, 0xf8, 0x95, 0x59, 0xc5, 0xcc, 0xac, 0x74,
- 0x6a, 0x23, 0x64, 0x0a, 0xf1, 0xda, 0x5e, 0x72, 0xed, 0x0a, 0x93,
- 0xe7, 0xf4, 0x9c, 0x3d, 0xd5, 0xae, 0x25, 0x7f, 0x73, 0x5c, 0xf2,
- 0x1d, 0x18, 0x21, 0xf9, 0x6d, 0xf9, 0x97, 0xde, 0x9c, 0xb2, 0x77,
- 0x81, 0xdb, 0x02, 0x6a, 0xfb, 0xa3, 0x46, 0xcf, 0xcc, 0xfa, 0xd2,
- 0xcd, 0xf1, 0x4e, 0x43, 0x97, 0x9d, 0x20, 0x50, 0xf4, 0xa7, 0x42,
- 0xcf, 0xb9, 0x1f, 0x48, 0x92, 0x21, 0x2a, 0x41, 0xc7, 0x58, 0xc2,
- 0x8b, 0x79, 0x48, 0x44, 0x8c, 0x99, 0x27, 0xf3, 0x5d, 0x28, 0xd3,
- 0x9d, 0xde, 0x34, 0x8a, 0x77, 0xcf, 0x44, 0x14, 0x47, 0xeb, 0xa3,
- 0xdb, 0xc0, 0x98, 0xd5, 0xb0, 0x9b, 0xaa, 0x66, 0x4a, 0x13, 0x54,
- 0xef, 0xf2, 0x1a, 0x71, 0x6a, 0x88, 0x4d, 0xef, 0x68, 0x5b, 0xe5,
- 0xc2, 0xea, 0xcb, 0x6d, 0x49, 0x75, 0x32, 0x76, 0x0d, 0x01, 0xd1,
- 0x4d, 0x8b, 0xe1, 0x2d, 0x39, 0x37, 0xfb, 0x4f, 0xe7, 0xf1, 0x4f,
- 0x2a, 0xb4, 0xcf, 0x26, 0xed, 0xdc, 0xfa, 0x24, 0x22, 0xdb, 0x0a,
- 0x9c, 0xa6, 0x16, 0x74, 0xf9, 0xff, 0xa0, 0xbf, 0x50, 0x42, 0x9e,
- 0xee, 0x56, 0xa9, 0x41, 0x20, 0x56, 0x22, 0x18, 0x8d, 0xe1, 0xeb,
- 0xa9, 0x1f, 0xfd, 0xd7, 0x15, 0xcd, 0xdf, 0x5f, 0xe6, 0xbf, 0x6a,
- 0xef, 0x99, 0xf6, 0x42, 0x1b, 0xbf, 0x75, 0x20, 0xef, 0xd7, 0x87,
- 0x40, 0x10, 0xc6, 0xff, 0x9f, 0x6a, 0x52, 0xa0, 0xa3, 0xf2, 0xdc,
- 0x3a, 0x9a, 0xb9, 0x6b, 0x7e, 0x35, 0xdc, 0x91, 0xbf, 0x7e, 0xe1,
- 0xf6, 0x5a, 0x11, 0xd0, 0x85, 0xac, 0xdd, 0x25, 0x21, 0x01, 0x9d,
- 0x23, 0x0c, 0x13, 0xfe, 0x0c, 0x1e, 0x36, 0x5c, 0x95, 0x2b, 0xd3,
- 0x9e, 0x8c, 0x51, 0xf0, 0x3e, 0x40, 0x9d, 0xce, 0x07, 0x8d, 0xf7,
- 0x9a, 0x49, 0x32, 0x84, 0x30, 0xbe, 0xed, 0x73, 0x38, 0x0d, 0x3c,
- 0x45, 0x29, 0xc0, 0x35, 0xe5, 0x11, 0x9d, 0x56, 0xe8, 0xc2, 0xa8,
- 0xc6, 0x88, 0x37, 0xd4, 0x67, 0x1e, 0x18, 0xd0, 0x26, 0x8e, 0x08,
- 0xd8, 0x04, 0x3c, 0xe6, 0xcb, 0x47, 0xaf, 0x29, 0xb6, 0x7e, 0x89,
- 0xf9, 0xd4, 0x7b, 0x97, 0x5d, 0x40, 0xd4, 0xe4, 0xa9, 0x7c, 0xc1,
- 0x6c, 0x1c, 0x4d, 0x70, 0x27, 0x78, 0x75, 0x10, 0x6a, 0x4f, 0x29,
- 0x86, 0x6d, 0xe2, 0x55, 0x61, 0x1d, 0x7e, 0x2b, 0x97, 0x0f, 0xd0,
- 0xe4, 0xc9, 0xc2, 0x68, 0x32, 0x11, 0x65, 0x34, 0x53, 0xa5, 0x74,
- 0xa5, 0x3c, 0xcf, 0xdd, 0x81, 0xce, 0x0d, 0xa3, 0x68, 0x0f, 0x8a,
- 0x2a, 0x77, 0x7d, 0xeb, 0xe3, 0x8e, 0x3b, 0x16, 0x4e, 0x87, 0x38,
- 0xa5, 0x68, 0x52, 0x64, 0xa9, 0x8e, 0xb7, 0xde, 0xdf, 0xba, 0x5f,
- 0xca, 0x93, 0x4f, 0x1a, 0x29, 0xa0, 0xa1, 0xf9, 0x0c, 0x97, 0x0b,
- 0xf5, 0xc1, 0x3c, 0x49, 0x99, 0xb8, 0x39, 0x38, 0x54, 0xf2, 0xee,
- 0x88, 0xce, 0x9c, 0x2c, 0x61, 0x6e, 0xa7, 0xc0, 0x0b, 0x1a, 0xdb,
- 0x65, 0x7e, 0x9c, 0x8f, 0x1d, 0xb7, 0xe4, 0x98, 0x81, 0x0d, 0xe2,
- 0x9d, 0x74, 0x46, 0x56, 0xa0, 0x59, 0xf4, 0xc8, 0x6e, 0x09, 0xd9,
- 0x06, 0xaf, 0x26, 0x02, 0x03, 0x7f, 0x21, 0x7f, 0xd3, 0x52, 0x4c,
- 0x51, 0x69, 0x86, 0x48, 0x16, 0xdd, 0x04, 0xe4, 0x5e, 0xe5, 0xd0,
- 0xec, 0x62, 0x0b, 0x4a, 0x21, 0x1d, 0x01, 0x46, 0x3a, 0x01, 0x38,
- 0x49, 0x05, 0x43, 0x4b, 0x67, 0x08, 0x28, 0x54, 0xfc, 0x61, 0x48,
- 0xe2, 0xe1, 0x91, 0x9a, 0x96, 0x94, 0x21, 0x6a, 0xfc, 0x2b, 0x78,
- 0xa2, 0x03, 0x7f, 0xdb, 0x83, 0x23, 0x47, 0x8f, 0xc2, 0x80, 0x61,
- 0x38, 0x84, 0xff, 0x1b, 0xe3, 0xb1, 0x69, 0xfe, 0x0b, 0x32, 0xcc,
- 0xa1, 0xfa, 0x90, 0x66, 0xb1, 0x07, 0x04, 0x7a, 0x1a, 0x2f, 0x17,
- 0x3e, 0x0e, 0x9c, 0x34, 0x4f, 0xaf, 0x8f, 0x82, 0xbe, 0x5f, 0x75,
- 0x13, 0xb4, 0x79, 0x78, 0xcb, 0x54, 0x84, 0x17, 0x57, 0x74, 0x67,
- 0x8b, 0x4f, 0xc7, 0x4c, 0x56, 0xff, 0x66, 0x28, 0x5c, 0xc9, 0x21,
- 0xfe, 0x0a, 0x6e, 0xb3, 0x07, 0xd5, 0x62, 0x5b, 0xfd, 0x1a, 0xf8,
- 0x50, 0x30, 0x74, 0x8f, 0xc3, 0x23, 0xb8, 0xa9, 0x1d, 0x5f, 0x89,
- 0x8b, 0xb9, 0xe4, 0xcd, 0x3f, 0x19, 0xcd, 0x16, 0xd8, 0xee, 0x82,
- 0x26, 0x93, 0x73, 0xba, 0x99, 0x1c, 0x1c, 0xea, 0xca, 0x16, 0x04,
- 0x60, 0x28, 0x6e, 0xa2, 0x5d, 0x9b, 0x40, 0x04, 0x2b, 0xcb, 0x04,
- 0x5e, 0xdc, 0x0c, 0xdb, 0xc6, 0x82, 0x61, 0x05, 0x0b, 0x27, 0x02,
- 0xc4, 0x34, 0xdc, 0x14, 0x93, 0xd7, 0x30, 0xa5, 0x67, 0x9f, 0x65,
- 0x9c, 0x52, 0xa1, 0x63, 0x51, 0x80, 0x3a, 0x28, 0xd1, 0x15, 0xf3,
- 0xdf, 0x3b, 0x2b, 0xe1, 0xe5, 0x4b, 0xb8, 0xef, 0x53, 0x44, 0x0f,
- 0x8a, 0xa1, 0x58, 0xcf, 0x0e, 0x1f, 0x75, 0xa8, 0xcf, 0x63, 0xbb,
- 0x58, 0xc9, 0x81, 0x21, 0xe5, 0xf4, 0x2f, 0xd5, 0x79, 0x81, 0x84,
- 0xb6, 0xb0, 0x34, 0x52, 0x76, 0x79, 0x8f, 0x1a, 0x88, 0x98, 0xe3,
- 0x77, 0xf7, 0x86, 0x20, 0xd7, 0x53, 0x2f, 0x23, 0xdc, 0xa6, 0x3a,
- 0x39, 0x97, 0x93, 0x34, 0x67, 0xe3, 0x33, 0xda, 0x99, 0xc0, 0x91,
- 0xa4, 0xd0, 0x56, 0x44, 0x70, 0xbc, 0x00, 0x88, 0x30, 0x43, 0x51,
- 0x39, 0x28, 0x14, 0x5b, 0xa9, 0x3c, 0x3c, 0x5e, 0x8f, 0x7e, 0xfa,
- 0x95, 0x72, 0xb2, 0x11, 0xb0, 0x0d, 0x41, 0x16, 0x88, 0xdc, 0x3d,
- 0x14, 0x86, 0x99, 0x67, 0xd4, 0x3d, 0x7b, 0xf9, 0x0b, 0xde, 0x98,
- 0xcb, 0x15, 0xb4, 0xba, 0xb3, 0x37, 0xab, 0xe2, 0x54, 0x58, 0xc8,
- 0x0c, 0x77, 0xe3, 0xa8, 0x44, 0x49, 0x71, 0xa1, 0x4a, 0x43, 0xe1,
- 0x79, 0xf0, 0x20, 0x8f, 0xc2, 0x1e, 0xd2, 0xa4, 0x50, 0x70, 0xaf,
- 0x23, 0x10, 0xf0, 0x0a, 0xb7, 0xae, 0x31, 0x37, 0x3f, 0x00, 0x75,
- 0xdd, 0xc5, 0xc7, 0x86, 0xf9, 0x03, 0xa8, 0x4d, 0x24, 0x85, 0x98,
- 0x96, 0xcc, 0x98, 0xee, 0xa1, 0x67, 0xfe, 0xfe, 0x69, 0x56, 0x71,
- 0x89, 0x25, 0x52, 0x00, 0x70, 0x2e, 0x60, 0x92, 0x3b, 0x97, 0xe6,
- 0xf3, 0x48, 0x61, 0x4f, 0xf1, 0x1a, 0x40, 0xb4, 0x1b, 0xd9, 0xed,
- 0xce, 0xf9, 0xc6, 0x18, 0x58, 0xfd, 0xea, 0x9d, 0xc2, 0x12, 0x0f,
- 0x4d, 0xd2, 0xfb, 0x60, 0x2f, 0x36, 0xfa, 0x46, 0xaa, 0x5c, 0xbd,
- 0x3d, 0xd8, 0x6e, 0x00, 0x51, 0xd2, 0x30, 0xde, 0xe5, 0x25, 0xce,
- 0x43, 0xd5, 0xb3, 0x9c, 0x91, 0xec, 0x7f, 0xe2, 0x99, 0x9f, 0xdc,
- 0xd4, 0x01, 0xa4, 0xa5, 0x29, 0x88, 0x18, 0x17, 0x42, 0x40, 0x54,
- 0x19, 0x13, 0x83, 0xe7, 0x7e, 0x96, 0x3d, 0x17, 0x61, 0xb6, 0x84,
- 0x00, 0xac, 0xc3, 0xed, 0xeb, 0xa6, 0xb7, 0x01, 0x0f, 0x33, 0xa1,
- 0x1a, 0x26, 0x03, 0x9a, 0x67, 0xee, 0xf6, 0xf2, 0x69, 0x21, 0xd8,
- 0x31, 0x1a, 0xeb, 0x1e, 0xfe, 0x2a, 0xfb, 0x59, 0x02, 0x21, 0x58,
- 0x50, 0xa3, 0xfb, 0x05, 0xa3, 0x1f, 0x6f, 0x38, 0x99, 0xac, 0x32,
- 0xc3, 0x6b, 0x5c, 0x39, 0x5b, 0x05, 0xe3, 0x7f, 0x67, 0xa4, 0xe4,
- 0xe5, 0x67, 0x70, 0x5f, 0xaf, 0x6c, 0x7b, 0xfb, 0x35, 0x56, 0xaf,
- 0xa5, 0x21, 0xf0, 0x24, 0xc3, 0x31, 0xe0, 0xf8, 0xb6, 0x8f, 0x61,
- 0xc5, 0x66, 0x68, 0x2c, 0xaa, 0x65, 0xe0, 0xc8, 0x24, 0xcc, 0xdf,
- 0x35, 0xa9, 0xbe, 0x88, 0x0b, 0x8e, 0x04, 0x4e, 0x46, 0x62, 0x23,
- 0x07, 0xef, 0xec, 0xab, 0x37, 0x31, 0x67, 0x47, 0xfc, 0x56, 0xaf,
- 0xcf, 0x7a, 0x50, 0xcb, 0x81, 0xfe, 0xa6, 0xe7, 0x1c, 0xd4, 0xef,
- 0x2c, 0x5b, 0x7f, 0x39, 0x85, 0x69, 0x93, 0x05, 0x58, 0xff, 0x35,
- 0x47, 0x84, 0xdb, 0x04, 0x9b, 0xa4, 0x22, 0x64, 0x7f, 0x5d, 0x92,
- 0xc8, 0x06, 0x38, 0x7f, 0x30, 0x39, 0xa9, 0x44, 0xc4, 0xf0, 0xf1,
- 0x72, 0xce, 0xe6, 0xc9, 0x5c, 0x15, 0x98, 0x47, 0x17, 0xb7, 0xca,
- 0xf5, 0xa0, 0x47, 0xfb, 0x4a, 0xd6, 0x73, 0xef, 0x54, 0xfc, 0x0d,
- 0xb7, 0x6a, 0x9c, 0x78, 0xbf, 0xaa, 0x8d, 0x12, 0xa2, 0x15, 0xa9,
- 0xab, 0x7d, 0xfd, 0x3a, 0x1b, 0xce, 0x62, 0x8a, 0x20, 0xf3, 0x8d,
- 0x26, 0x55, 0xae, 0x2b, 0x46, 0x24, 0x35, 0x75, 0x50, 0x85, 0x70,
- 0x78, 0x27, 0xcf, 0xb2, 0x55, 0xc5, 0x2a, 0x77, 0xa7, 0x9a, 0x73,
- 0xd6, 0xae, 0x24, 0xc1, 0x51, 0x11, 0xae, 0xe8, 0x51, 0x96, 0xe9,
- 0x4a, 0xf4, 0xb1, 0x6b, 0xd5, 0xb0, 0x81, 0xf1, 0x8e, 0xc1, 0x3e,
- 0x05, 0x6d, 0x58, 0xed, 0x8a, 0x35, 0x50, 0x83, 0x5d, 0xa9, 0xa2,
- 0x19, 0x3e, 0x0f, 0x92, 0x67, 0xe9, 0x5f, 0x64, 0xe1, 0x88, 0x87,
- 0xcd, 0x98, 0x79, 0x12, 0xc9, 0x9c, 0xaa, 0xa0, 0x27, 0x83, 0x2a,
- 0xaa, 0x6e, 0xff, 0x7a, 0x09, 0x49, 0x27, 0xf5, 0x92, 0x40, 0xeb,
- 0x3f, 0x70, 0x48, 0xf7, 0x19, 0xe7, 0x33, 0x74, 0xcd, 0x23, 0x52,
- 0xaa, 0x0b, 0x0f, 0x59, 0x70, 0x3e, 0x6f, 0xec, 0x46, 0xcd, 0xfe,
- 0x8a, 0xfe, 0xb9, 0xcb, 0xbe, 0x72, 0xe6, 0x43, 0xb6, 0x0e, 0x2c,
- 0x84, 0x31, 0x22, 0x72, 0x3b, 0x32, 0x25, 0x23, 0x10, 0x1f, 0x00,
- 0xa7, 0xa5, 0xaf, 0x17, 0x31, 0x40, 0xa8, 0x8c, 0x7b, 0xfe, 0x5e,
- 0x35, 0x0a, 0x70, 0xb1, 0xac, 0x3f, 0xc0, 0x74, 0xfa, 0xa5, 0x10,
- 0x17, 0x9a, 0x7e, 0xfd, 0x3d, 0x5a, 0xfc, 0xdc, 0xff, 0xb0, 0x3b,
- 0x91, 0xdd, 0x98, 0xaf, 0x45, 0xf6, 0x53, 0xf0, 0x61, 0x49, 0x03,
- 0x80, 0x1d, 0x95, 0xa9, 0x4c, 0x34, 0x2b, 0x97, 0x3c, 0x6a, 0x6b,
- 0x04, 0x5c, 0x82, 0x91, 0xa1, 0xd8, 0xa1, 0x6f, 0x9c, 0x16, 0x3f,
- 0x32, 0xba, 0xd4, 0xb7, 0x1d, 0x02, 0x2b, 0x98, 0x31, 0xbc, 0xc7,
- 0xc7, 0xd5, 0xed, 0x43, 0x60, 0x41, 0x6a, 0x6a, 0x30, 0xfe, 0x1c,
- 0x62, 0x14, 0x62, 0x2c, 0x3a, 0xb4, 0xca, 0x31, 0xd1, 0x35, 0x05,
- 0xde, 0x9a, 0xd3, 0xa3, 0x1c, 0xe8, 0x2d, 0x00, 0x8e, 0x0f, 0x17,
- 0x04, 0xb3, 0xbb, 0x04, 0x09, 0x1a, 0x08, 0x5c, 0x87, 0x3a, 0xc4,
- 0xa8, 0xb3, 0x7d, 0xc6, 0x95, 0xff, 0xb3, 0x36, 0x71, 0xd8, 0xb2,
- 0x69, 0xcb, 0xfa, 0xdd, 0xc4, 0xbb, 0x1b, 0x15, 0xd9, 0x10, 0x3a,
- 0x5f, 0xa2, 0x45, 0x3e, 0xe0, 0xd8, 0x71, 0x78, 0xaf, 0x74, 0x4b,
- 0x5a, 0x19, 0xb2, 0xa7, 0x97, 0xb3, 0x9f, 0xe1, 0x2b, 0x86, 0x87,
- 0x5b, 0x49, 0x6b, 0x0b, 0xa1, 0xe9, 0xce, 0xdb, 0x74, 0xb4, 0xd0,
- 0xc7, 0x15, 0x47, 0xe2, 0x81, 0x3b, 0xd4, 0x69, 0x09, 0x58, 0xf0,
- 0x71, 0xde, 0x0d, 0x29, 0xbc, 0x34, 0x8b, 0xb6, 0xe8, 0xe0, 0x52,
- 0x4b, 0xb5, 0x5b, 0xa9, 0xa8, 0x45, 0xda, 0x2a, 0xbd, 0xf8, 0x52,
- 0x57, 0xfc, 0x2b, 0xeb, 0xb6, 0x47, 0x24, 0x75, 0x69, 0x9b, 0x1c,
- 0xa0, 0xd7, 0xf3, 0x26, 0x47, 0x2e, 0xf7, 0x83, 0xef, 0x47, 0x27,
- 0x06, 0xa4, 0xfa, 0x0d, 0x0a, 0x17, 0xa3, 0x15, 0x98, 0xd6, 0xfd,
- 0x4c, 0xd9, 0xc1, 0x2d, 0xdb, 0xca, 0xe4, 0x1f, 0x55, 0x44, 0xa8,
- 0xfe, 0xa5, 0x37, 0x5f, 0x4f, 0x00, 0xf9, 0xb9, 0x8d, 0x6a, 0x84,
- 0x7b, 0x55, 0x15, 0x8d, 0xec, 0x9c, 0x03, 0xae, 0xb1, 0x0f, 0x0e,
- 0x5c, 0x7e, 0x74, 0x79, 0x73, 0x01, 0x71, 0x75, 0xcf, 0xd7, 0x3b,
- 0x83, 0xf6, 0x0f, 0xf3, 0xc1, 0x4d, 0x8b, 0xf7, 0xa4, 0xfd, 0xf9,
- 0x03, 0x1b, 0xf0, 0x42, 0xfc, 0xc7, 0xf5, 0xdd, 0xab, 0x12, 0x68,
- 0xac, 0x14, 0xd6, 0x44, 0x73, 0x37, 0xd6, 0x95, 0x06, 0x6c, 0x72,
- 0xb5, 0xf4, 0x6d, 0x8b, 0x0c, 0x73, 0x64, 0x7c, 0x18, 0x7b, 0xfd,
- 0x9b, 0x04, 0x50, 0x1f, 0xbf, 0x57, 0x72, 0x32, 0xb6, 0x08, 0xa1,
- 0xac, 0xd0, 0x9e, 0xb5, 0xcb, 0x52, 0xec, 0x98, 0x2b, 0x41, 0xbd,
- 0xdd, 0x55, 0x9d, 0x90, 0x0c, 0xca, 0x8f, 0xb0, 0x5a, 0xd6, 0x46,
- 0x9f, 0x07, 0x4b, 0x3d, 0x1e, 0x6d, 0x96, 0xda, 0x26, 0xd6, 0xb7,
- 0xfa, 0x86, 0x59, 0xf0, 0xb0, 0x5e, 0x93, 0xe1, 0xe4, 0x39, 0x9d,
- 0xd7, 0x90, 0xec, 0x50, 0x16, 0x26, 0x88, 0x4c, 0xe5, 0xed, 0xc9,
- 0x49, 0xe2, 0x6f, 0x16, 0xa7, 0x90, 0x37, 0xca, 0x00, 0x58, 0xe6,
- 0x48, 0x34, 0x74, 0x94, 0x45, 0xda, 0xe8, 0x9b, 0x9c, 0xcd, 0x24,
- 0xbe, 0x1e, 0xec, 0x38, 0x38, 0x93, 0x9d, 0xf0, 0x65, 0x24, 0x52,
- 0x79, 0x3b, 0x58, 0xf6, 0x91, 0xe3, 0x31, 0x90, 0x05, 0x83, 0x29,
- 0x5d, 0x85, 0x56, 0x03, 0x5b, 0xc7, 0x6c, 0xae, 0x7d, 0x1f, 0xd4,
- 0x50, 0x1d, 0x1d, 0x50, 0x84, 0xdc, 0x41, 0x2f, 0x7b, 0xcd, 0x91,
- 0x3d, 0xbe, 0x83, 0xbe, 0xef, 0xe7, 0xd8, 0x9f, 0xe6, 0x4f, 0xb4,
- 0x0e, 0x70, 0xdf, 0x42, 0x39, 0xe2, 0xa7, 0xce, 0xbb, 0x41, 0xc8,
- 0xe9, 0x31, 0xf9, 0xe9, 0x0c, 0x3a, 0x27, 0x23, 0x5b, 0xe8, 0xb8,
- 0xf6, 0xff, 0xa4, 0x78, 0x3e, 0x1a, 0x9a, 0x4f, 0xcb, 0xd2, 0x83,
- 0xeb, 0x09, 0x84, 0x32, 0xae, 0xea, 0x35, 0xaf, 0x98, 0xcd, 0x70,
- 0x28, 0x0d, 0x9a, 0xe8, 0x06, 0x49, 0xc1, 0xa4, 0xfa, 0xe4, 0xaf,
- 0x03, 0x46, 0x16, 0x7e, 0x45, 0x17, 0x2c, 0x7e, 0x4c, 0x06, 0x02,
- 0xd1, 0x3d, 0x4d, 0xc4, 0x65, 0xb8, 0x68, 0xf3, 0x2e, 0x45, 0xc0,
- 0x4a, 0x7d, 0x54, 0xd1, 0xd4, 0xd4, 0xfc, 0xbe, 0xcd, 0xf1, 0xae,
- 0x1d, 0x53, 0x79, 0xb1, 0x3e, 0x61, 0x4f, 0x2b, 0x4b, 0xb4, 0x9b,
- 0x06, 0x60, 0x02, 0x6e, 0xa6, 0xe1, 0x27, 0xd6, 0xa2, 0x92, 0xab,
- 0x11, 0x1e, 0xc5, 0xdd, 0x0d, 0xa1, 0x38, 0x42, 0x2e, 0xb4, 0xbc,
- 0xea, 0x3d, 0x03, 0xbd, 0x6c, 0x92, 0x48, 0x1d, 0x93, 0xcb, 0x4d,
- 0xa9, 0x34, 0x34, 0x82, 0xec, 0xf8, 0xcb, 0xbd, 0x5b, 0x2a, 0xea,
- 0x44, 0xd9, 0x6b, 0x89, 0xd1, 0xda, 0x9e, 0x3d, 0xeb, 0xd5, 0x64,
- 0xf7, 0x5d, 0xf7, 0xc4, 0x12, 0x13, 0x34, 0x43, 0x75, 0x91, 0x4b,
- 0x41, 0xb1, 0x1c, 0x14, 0x36, 0x87, 0xea, 0xf2, 0x0f, 0x83, 0xbb,
- 0x8e, 0x63, 0x1f, 0x47, 0x19, 0x45, 0xc4, 0x23, 0x0d, 0x75, 0xcb,
- 0x5b, 0x1b, 0x9b, 0xa1, 0xf4, 0x65, 0x38, 0x6e, 0x1a, 0x0c, 0x3e,
- 0xdf, 0xf6, 0xf3, 0xda, 0x2a, 0x90, 0x98, 0xf7, 0xce, 0xf4, 0x86,
- 0x68, 0x16, 0x3c, 0xca, 0x05, 0x6b, 0xa3, 0x9d, 0x11, 0x51, 0x18,
- 0x21, 0x6b, 0x10, 0x99, 0xc7, 0x27, 0x6d, 0xc4, 0xa1, 0xe2, 0x19,
- 0x00, 0xd0, 0xf3, 0xa4, 0x39, 0x46, 0x12, 0x37, 0x08, 0xbf, 0x6c,
- 0x92, 0x04, 0x2c, 0x3e, 0x38, 0xfe, 0x3f, 0xf2, 0x08, 0xee, 0x44,
- 0x6a, 0x42, 0x06, 0xf8, 0x8a, 0x35, 0xa3, 0x17, 0x54, 0xc3, 0x92,
- 0x1e, 0xb8, 0xad, 0x8a, 0x29, 0x16, 0x1b, 0x82, 0x49, 0x07, 0x93,
- 0x48, 0xfc, 0xcd, 0xa3, 0x37, 0xa1, 0x61, 0x33, 0x81, 0x2d, 0x0a,
- 0x1c, 0xcc, 0xeb, 0xa8, 0xe9, 0x82, 0x05, 0x7c, 0x95, 0x54, 0xa9,
- 0xd5, 0x5c, 0xed, 0x4a, 0x8b, 0xf4, 0x78, 0xe6, 0x04, 0x37, 0x89,
- 0xc2, 0x1d, 0x41, 0x4f, 0x6c, 0x66, 0xea, 0xa8, 0xaa, 0xfe, 0x9d,
- 0x76, 0xd9, 0xbc, 0x7e, 0xca, 0x7f, 0xea, 0x2b, 0x7a, 0x07, 0x43,
- 0x4a, 0x26, 0x5f, 0x01, 0xdb, 0x27, 0x1d, 0x3f, 0x9a, 0x39, 0xbe,
- 0x3f, 0x93, 0x4f, 0x48, 0xa4, 0x2d, 0xb4, 0x0c, 0xc3, 0x01, 0x1d,
- 0x9f, 0xf5, 0x0e, 0x53, 0x11, 0xcc, 0xae, 0x00, 0xf1, 0x27, 0xfe,
- 0xdf, 0x41, 0xd8, 0x9d, 0xec, 0x24, 0x16, 0x58, 0xa8, 0x95, 0x97,
- 0x97, 0x18, 0xd2, 0x66, 0xb7, 0x51, 0xff, 0x52, 0x60, 0x83, 0x1e,
- 0xc4, 0xa1, 0xdb, 0x7b, 0x21, 0xfb, 0x72, 0xc9, 0xaf, 0x61, 0x3b,
- 0xdf, 0x01, 0xc8, 0x86, 0x7c, 0xb3, 0x6c, 0x2f, 0xf3, 0xd5, 0x0b,
- 0x7f, 0x84, 0x91, 0x50, 0xd3, 0x4c, 0x5d, 0x62, 0xf3, 0x68, 0xc2,
- 0x86, 0xb1, 0xcc, 0x81, 0xfb, 0xbf, 0x28, 0x0e, 0xef, 0xb4, 0x76,
- 0xda, 0xa4, 0x3f, 0x16, 0x25, 0xb3, 0x03, 0x0f, 0x46, 0xc2, 0x32,
- 0xd3, 0x8b, 0x34, 0x3d, 0x1f, 0x89, 0x7e, 0x3d, 0x6a, 0x8a, 0xe2,
- 0xb2, 0x0d, 0x9c, 0x8c, 0xca, 0x59, 0x1f, 0x3c, 0x1a, 0xfe, 0x67,
- 0x76, 0xeb, 0xd7, 0xe6, 0xbe, 0xd2, 0xab, 0xfd, 0xda, 0xe4, 0x49,
- 0xfe, 0x68, 0x18, 0xf3, 0x91, 0x65, 0x7e, 0x7a, 0x44, 0x63, 0xfd,
- 0x50, 0xe7, 0x8c, 0xdd, 0xa8, 0xfd, 0x95, 0xc7, 0xb5, 0x93, 0xee,
- 0x03, 0x10, 0xb6, 0xa3, 0xa9, 0x22, 0xe6, 0xd9, 0x92, 0xf9, 0x58,
- 0x98, 0xc3, 0x92, 0xc9, 0xc7, 0x14, 0x7b, 0x96, 0x6a, 0x73, 0xe7,
- 0xc7, 0xf0, 0x0c, 0x23, 0xd5, 0xa4, 0x2b, 0x41, 0x15, 0xcb, 0x01,
- 0x44, 0x63, 0x79, 0xd9, 0xa6, 0x4d, 0xfe, 0x6c, 0xc0, 0x9d, 0xaa,
- 0xe8, 0xa6, 0xfc, 0x03, 0xed, 0xdb, 0xa3, 0xc5, 0x65, 0x5f, 0x67,
- 0xf9, 0x94, 0x35, 0xad, 0x9b, 0xe3, 0xc2, 0x4e, 0x64, 0xa0, 0xae,
- 0xf0, 0x95, 0x5b, 0xe5, 0xec, 0x8d, 0x04, 0x9c, 0xc1, 0x93, 0x10,
- 0xde, 0x9b, 0x76, 0xe1, 0xf6, 0x3c, 0x66, 0xc5, 0xe8, 0x8c, 0xfa,
- 0x03, 0x6f, 0x01, 0xa1, 0x9b, 0xd3, 0xa5, 0x1c, 0xec, 0xf1, 0x4c,
- 0xc0, 0x92, 0xaa, 0x7c, 0x96, 0x96, 0xc3, 0x34, 0xd4, 0xf8, 0x79,
- 0xb2, 0x35, 0xe1, 0x7a, 0xd6, 0xac, 0x0c, 0x24, 0xd8, 0x95, 0xa6,
- 0x5f, 0xbb, 0x2f, 0x8d, 0x15, 0x43, 0x75, 0x0f, 0x8c, 0x87, 0x49,
- 0xaf, 0xde, 0xad, 0x63, 0xe7, 0x45, 0x7d, 0xb3, 0x23, 0x20, 0x08,
- 0xca, 0xd6, 0xe2, 0xeb, 0xb8, 0xa7, 0x7f, 0x46, 0xa9, 0x46, 0x84,
- 0xd7, 0xa8, 0x0d, 0x0d, 0x65, 0x40, 0xfa, 0xcc, 0x55, 0xb0, 0x1e,
- 0xa7, 0x12, 0x22, 0x49, 0xf7, 0x0e, 0x25, 0x6a, 0xf8, 0xc2, 0xc0,
- 0x97, 0x48, 0xa5, 0x03, 0xdd, 0xc3, 0x09, 0x26, 0x67, 0x15, 0xbd,
- 0xd4, 0x0e, 0x7f, 0x78, 0xf6, 0x60, 0x0d, 0xf3, 0x23, 0x3c, 0x25,
- 0xc0, 0x1d, 0xa7, 0x45, 0x3d, 0x40, 0x80, 0x80, 0x5d, 0xe4, 0xd4,
- 0xda, 0x92, 0x91, 0xc7, 0x68, 0x58, 0x72, 0xb2, 0x45, 0xd5, 0x41,
- 0x1c, 0x47, 0x04, 0x01, 0x86, 0xa3, 0x55, 0xf6, 0xa8, 0xc8, 0x82,
- 0x0d, 0xe1, 0x42, 0xf7, 0x01, 0xa0, 0x8f, 0x43, 0x9d, 0x6a, 0xf1,
- 0x72, 0x75, 0xd0, 0xed, 0x44, 0xf8, 0x68, 0x89, 0xf0, 0x78, 0xbd,
- 0x8c, 0x50, 0x00, 0x16, 0x6a, 0xa8, 0x57, 0x80, 0xea, 0x59, 0x04,
- 0x01, 0x64, 0xeb, 0x5c, 0x93, 0x1c, 0xb3, 0x53, 0x03, 0x15, 0x57,
- 0xcd, 0xfa, 0x24, 0x36, 0x29, 0x22, 0xa7, 0xa8, 0x37, 0x13, 0x34,
- 0x4a, 0xd1, 0x82, 0xb6, 0x87, 0x15, 0xf8, 0x64, 0x5f, 0x9c, 0x64,
- 0xfe, 0xf5, 0x5a, 0xb3, 0x53, 0xea, 0x0d, 0x2f, 0xcb, 0x03, 0xfd,
- 0x0d, 0x3f, 0x05, 0x0f, 0xcf, 0x6f, 0xe2, 0x38, 0x1c, 0x25, 0xa3,
- 0xa9, 0x83, 0x3d, 0x01, 0xda, 0x38, 0xbe, 0x16, 0x36, 0xb2, 0xa5,
- 0x61, 0x9d, 0x32, 0x24, 0x9d, 0x16, 0x92, 0x55, 0xe7, 0x09, 0x7c,
- 0x0a, 0x9f, 0xdb, 0xb0, 0xdd, 0x47, 0x09, 0xb4, 0x4b, 0x07, 0x2c,
- 0x70, 0x3f, 0xcf, 0x53, 0x11, 0x08, 0x3b, 0x89, 0xc8, 0xbe, 0x7a,
- 0xaf, 0x83, 0x3a, 0x9d, 0x1b, 0x51, 0xfa, 0x3a, 0xb0, 0xb7, 0xa2,
- 0x59, 0x39, 0x7b, 0x71, 0x36, 0x55, 0x75, 0x28, 0x0a, 0xce, 0x5c,
- 0x76, 0x8c, 0x0c, 0x00, 0xd6, 0xa7, 0x45, 0x34, 0xdd, 0x4c, 0xea,
- 0x4d, 0x3e, 0x3f, 0xf8, 0x09, 0x5f, 0xbb, 0x71, 0x72, 0xe9, 0x70,
- 0xa6, 0xa9, 0xd7, 0x7e, 0xa2, 0xd6, 0x1a, 0xd9, 0xdd, 0xe4, 0x48,
- 0xe4, 0xec, 0x56, 0x14, 0x2d, 0xf0, 0x56, 0x20, 0x38, 0x49, 0x61,
- 0x83, 0xd3, 0xa9, 0xcc, 0x7e, 0x78, 0x16, 0xd5, 0x9b, 0xad, 0x4b,
- 0xaf, 0x08, 0x85, 0x9c, 0xf8, 0xe2, 0x56, 0x59, 0x91, 0x50, 0xda,
- 0xd5, 0x2e, 0x05, 0x8a, 0xd5, 0xb9, 0x10, 0xf3, 0x65, 0xaa, 0x7f,
- 0xbe, 0xbd, 0x31, 0x64, 0xe8, 0xfd, 0xf9, 0xae, 0x09, 0x7a, 0x7c,
- 0x6e, 0x8a, 0x5b, 0x11, 0xe8, 0xbe, 0x74, 0x26, 0x24, 0xf9, 0x9d,
- 0xe1, 0xc5, 0xc2, 0x0e, 0x22, 0x97, 0xb2, 0x5b, 0xce, 0x7f, 0xe5,
- 0xba, 0xc0, 0xc9, 0x69, 0xac, 0xfd, 0xa1, 0x5d, 0x2f, 0x16, 0x33,
- 0xe6, 0x9b, 0x48, 0xe7, 0xa5, 0x44, 0x87, 0xa8, 0x4a, 0x1f, 0xe0,
- 0x82, 0xdb, 0xb8, 0x74, 0x3f, 0x21, 0x1d, 0x14, 0x1e, 0xba, 0xe2,
- 0x4b, 0xa8, 0xc7, 0xcf, 0x5f, 0xe9, 0xd1, 0x60, 0xe9, 0x5c, 0x5f,
- 0x54, 0x4c, 0xbc, 0xa8, 0x04, 0x28, 0xe5, 0xd0, 0xfe, 0xb2, 0x44,
- 0xff, 0x46, 0x78, 0xf8, 0x65, 0x7c, 0xda, 0xb3, 0xe9, 0xf2, 0x02,
- 0x94, 0x98, 0x66, 0xa3, 0xcb, 0x7b, 0xbf, 0x4d, 0x9e, 0x79, 0x39,
- 0xce, 0x5b, 0x30, 0x10, 0xc9, 0xa4, 0xd0, 0x18, 0xf1, 0xb8, 0x6d,
- 0xde, 0x98, 0x85, 0xed, 0xc9, 0xbc, 0x3d, 0x63, 0xb2, 0x4a, 0x4f,
- 0xb5, 0xb9, 0x40, 0xfb, 0x3e, 0x78, 0x93, 0xd6, 0xec, 0x37, 0x2c,
- 0x58, 0x51, 0x6e, 0xbe, 0xdf, 0x05, 0xe2, 0x16, 0x52, 0xe6, 0x51,
- 0x7b, 0xac, 0x7c, 0x44, 0xba, 0xe4, 0xcc, 0x23, 0x25, 0xdd, 0x56,
- 0xcb, 0x11, 0x96, 0x9f, 0x2f, 0x29, 0xf6, 0xc3, 0x17, 0xd9, 0x8d,
- 0xf4, 0x6e, 0x0d, 0xd7, 0x17, 0x81, 0x00, 0x9c, 0x24, 0xbc, 0xbc,
- 0x58, 0x3b, 0x9e, 0x95, 0xe2, 0x11, 0x0d, 0xa8, 0x1e, 0x6d, 0x58,
- 0x00, 0x36, 0x75, 0xf8, 0x8b, 0xbe, 0xef, 0x65, 0xa4, 0x5d, 0x6f,
- 0x6d, 0x45, 0x7c, 0x5f, 0xb6, 0x9e, 0x63, 0x13, 0x3f, 0xe5, 0x4e,
- 0x19, 0x7c, 0x9b, 0x12, 0xa8, 0x74, 0x0e, 0x15, 0x07, 0x91, 0xe2,
- 0x72, 0xca, 0x23, 0x4f, 0x58, 0x91, 0x65, 0x03, 0x51, 0xa5, 0xdb,
- 0xb9, 0x0b, 0xc3, 0xe7, 0x55, 0x8a, 0x32, 0x5b, 0xfd, 0x57, 0xa1,
- 0x01, 0xe2, 0x80, 0xbe, 0xae, 0xbf, 0x7a, 0x91, 0x9c, 0xec, 0x81,
- 0x77, 0x6b, 0xa2, 0xf6, 0x29, 0xdd, 0xf4, 0x12, 0x3c, 0x7e, 0x24,
- 0xfe, 0xfb, 0xae, 0xf7, 0xa4, 0x8a, 0x4c, 0x36, 0xd6, 0x96, 0x35,
- 0x15, 0xa4, 0x3c, 0x74, 0x35, 0x89, 0xc8, 0x5e, 0xfa, 0xc9, 0x6d,
- 0xcd, 0xd0, 0x08, 0x8d, 0x70, 0x2b, 0x69, 0xb4, 0xf2, 0x76, 0x0b,
- 0x91, 0x3b, 0xda, 0x10, 0x23, 0xea, 0xfa, 0xb1, 0x8e, 0x90, 0xa1,
- 0x6f, 0x21, 0xbb, 0x6b, 0xaa, 0x18, 0x8a, 0xa0, 0xdb, 0x25, 0xfa,
- 0xb1, 0xec, 0x81, 0xfd, 0x8b, 0x86, 0xeb, 0xfb, 0xc8, 0x2b, 0xdc,
- 0x64, 0xe3, 0x20, 0xb2, 0x8b, 0x46, 0x0b, 0x6f, 0x49, 0x38, 0xee,
- 0xb8, 0x59, 0xc6, 0x33, 0x7b, 0x78, 0xc0, 0x1a, 0xba, 0x2a, 0xcc,
- 0xf9, 0xc8, 0x25, 0x4e, 0x35, 0xe0, 0xba, 0x2c, 0x94, 0x08, 0x8b,
- 0x52, 0x98, 0x6f, 0x45, 0x1e, 0xbf, 0xed, 0xc6, 0x0a, 0xfd, 0xe6,
- 0x14, 0x5c, 0x04, 0x66, 0x7c, 0x31, 0x0f, 0x2c, 0x63, 0x24, 0x10,
- 0xdb, 0x58, 0xdf, 0x62, 0x65, 0x04, 0x80, 0x01, 0x14, 0x02, 0x00,
- 0x00, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x0d,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x0d, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x0d, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x0d, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x0d, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x0d, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x0d, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
- 0x30, 0x30, 0x30, 0x0d, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x74, 0x6f,
- 0x6d, 0x61, 0x72, 0x6b, 0x0a, 0x80, 0x03,
-};
-
-const int default_font_size = sizeof(default_font);
diff --git a/pandaapp/src/indexify/default_font.h b/pandaapp/src/indexify/default_font.h
deleted file mode 100644
index 7cebddb5df..0000000000
--- a/pandaapp/src/indexify/default_font.h
+++ /dev/null
@@ -1,22 +0,0 @@
-// Filename: default_font.h
-// Created by: drose (04Apr02)
-//
-////////////////////////////////////////////////////////////////////
-///
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#ifndef DEFAULT_FONT_H
-#define DEFAULT_FONT_H
-
-extern const unsigned char default_font[];
-extern const int default_font_size;
-
-#endif
-
diff --git a/pandaapp/src/indexify/default_index_icons.cxx b/pandaapp/src/indexify/default_index_icons.cxx
deleted file mode 100644
index aeb41d281e..0000000000
--- a/pandaapp/src/indexify/default_index_icons.cxx
+++ /dev/null
@@ -1,297 +0,0 @@
-// Filename: default_index_icons.cxx
-// Created by: drose (04Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#include "default_index_icons.h"
-
-// This file was generated from left.png, right.png, up.png,
-// movie.png, and sound.png; it provides data for default icons if the
-// -i parameter is supplied on the command line.
-
-const char *default_left_icon_filename = "left.png";
-const char *default_right_icon_filename = "right.png";
-const char *default_up_icon_filename = "up.png";
-const char *default_movie_icon_filename = "movie.png";
-const char *default_sound_icon_filename = "sound.png";
-
-/*
-
-Use this series of commands to regenerate the tables:
-
-bin2c -n default_left_icon left.png >> default_index_icons.cxx
-bin2c -n default_right_icon right.png >> default_index_icons.cxx
-bin2c -n default_up_icon up.png >> default_index_icons.cxx
-bin2c -n default_movie_icon movie.png >> default_index_icons.cxx
-bin2c -n default_sound_icon sound.png >> default_index_icons.cxx
-
-*/
-
-/*
- * This table was generated by the command:
- *
- * bin2c -n default_left_icon left.png
- */
-
-const unsigned char default_left_icon[] = {
- 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00,
- 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00,
- 0x00, 0x1e, 0x08, 0x03, 0x00, 0x00, 0x00, 0x0c, 0xee, 0x5e, 0x90,
- 0x00, 0x00, 0x00, 0x04, 0x67, 0x41, 0x4d, 0x41, 0x00, 0x00, 0xb1,
- 0x8f, 0x0b, 0xfc, 0x61, 0x05, 0x00, 0x00, 0x00, 0x2d, 0x50, 0x4c,
- 0x54, 0x45, 0xeb, 0xed, 0xee, 0xdd, 0xe1, 0xe3, 0xcf, 0xd4, 0xd7,
- 0xc2, 0xc9, 0xcd, 0xb5, 0xbd, 0xc2, 0xae, 0xb7, 0xbc, 0xa7, 0xb0,
- 0xb6, 0x99, 0xa4, 0xab, 0x8c, 0x98, 0xa0, 0x7e, 0x8c, 0x95, 0x77,
- 0x86, 0x8f, 0x6c, 0x7a, 0x83, 0x60, 0x6c, 0x74, 0x55, 0x60, 0x67,
- 0x4f, 0x5a, 0x60, 0x44, 0x10, 0xa7, 0xee, 0x00, 0x00, 0x01, 0x96,
- 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0x7d, 0x93, 0xdd, 0x92, 0xec,
- 0x20, 0x08, 0x84, 0x47, 0x7e, 0x04, 0xd4, 0xe4, 0xfd, 0x1f, 0xf7,
- 0x74, 0xe3, 0x9c, 0xaa, 0xbd, 0xd8, 0x5a, 0x2f, 0x66, 0x12, 0x3f,
- 0x81, 0xb6, 0x21, 0x9f, 0xcf, 0x2f, 0x4b, 0xe4, 0xfb, 0x70, 0x7e,
- 0xa3, 0x9f, 0x31, 0xee, 0xff, 0x24, 0x56, 0x15, 0x8b, 0xa9, 0x63,
- 0x08, 0x96, 0xe9, 0xf8, 0x0c, 0x35, 0x9f, 0xa6, 0xa2, 0xb5, 0x89,
- 0x45, 0x67, 0xba, 0xca, 0x10, 0x33, 0x73, 0x13, 0x9c, 0x53, 0x2e,
- 0xb3, 0x45, 0x6c, 0x86, 0x27, 0x1c, 0xc6, 0x29, 0x47, 0x26, 0xe2,
- 0x7e, 0x33, 0xad, 0x02, 0x8e, 0x00, 0x9d, 0xd3, 0xb8, 0x21, 0x0c,
- 0x14, 0x3b, 0xce, 0x42, 0xa3, 0x16, 0x05, 0x4c, 0x77, 0xc7, 0x19,
- 0x60, 0x63, 0xca, 0xb9, 0x9f, 0x07, 0x69, 0x20, 0x26, 0xd7, 0x95,
- 0xa6, 0xea, 0xdc, 0x40, 0x65, 0xf3, 0x7a, 0xdf, 0xe7, 0xa0, 0x1e,
- 0xb4, 0xcc, 0x6c, 0x69, 0x54, 0x3c, 0xad, 0x57, 0x3e, 0x58, 0xa7,
- 0xb1, 0x68, 0x54, 0x47, 0xb3, 0xa4, 0xff, 0x80, 0x7b, 0xb7, 0x46,
- 0xcd, 0xfc, 0x62, 0xe4, 0x45, 0x81, 0xf3, 0x36, 0x5c, 0x6b, 0x07,
- 0x6f, 0xe6, 0x19, 0xc4, 0x14, 0x84, 0x3b, 0xd5, 0x83, 0xa2, 0x7b,
- 0xef, 0xca, 0x5c, 0xd1, 0x2a, 0xcf, 0xba, 0xf7, 0x86, 0xde, 0x42,
- 0xda, 0xf7, 0x41, 0x64, 0x55, 0x56, 0x39, 0xb2, 0x89, 0x1e, 0x9a,
- 0xea, 0x6e, 0x1a, 0xcc, 0x4b, 0x0c, 0x08, 0xba, 0x9c, 0x29, 0x75,
- 0x37, 0x06, 0x7d, 0xbb, 0xea, 0x73, 0x16, 0x28, 0x70, 0xb5, 0x91,
- 0xd6, 0xd1, 0xbc, 0x17, 0xac, 0xa0, 0x60, 0x64, 0x66, 0x74, 0x26,
- 0x5d, 0xd6, 0x9b, 0x9c, 0x1d, 0x10, 0x49, 0x62, 0x42, 0xe2, 0x0a,
- 0x52, 0x59, 0xed, 0x1a, 0xcc, 0x62, 0xae, 0xd8, 0x0c, 0xcf, 0x3e,
- 0x10, 0x74, 0xf2, 0xde, 0xdb, 0x33, 0xd9, 0x14, 0x38, 0x57, 0x67,
- 0xdf, 0xec, 0x3b, 0x18, 0xe0, 0xbb, 0x5b, 0x12, 0xc0, 0xd7, 0xd9,
- 0x80, 0xe8, 0x95, 0x51, 0x3b, 0x69, 0xe2, 0xad, 0xad, 0x16, 0x41,
- 0xda, 0xdd, 0x44, 0x85, 0x8a, 0x2c, 0x36, 0xd1, 0xa4, 0x1b, 0x0a,
- 0xbf, 0x1d, 0xed, 0x61, 0x13, 0xc4, 0xdc, 0x29, 0x3c, 0x31, 0x4d,
- 0xae, 0x63, 0x4e, 0x46, 0x63, 0xb0, 0xe4, 0x36, 0x5b, 0x67, 0xc0,
- 0xfb, 0xeb, 0x1a, 0x42, 0x26, 0x3d, 0x97, 0x89, 0xdc, 0x18, 0x17,
- 0x12, 0x4e, 0x05, 0x86, 0x6a, 0xb9, 0xd0, 0xd5, 0x6c, 0x5b, 0xa8,
- 0x0b, 0xd9, 0x48, 0xfa, 0xc7, 0xfe, 0xcf, 0xe5, 0x6a, 0x7c, 0x27,
- 0x8c, 0x9b, 0x82, 0xa1, 0x31, 0xef, 0xa9, 0x1e, 0xa8, 0xb9, 0xf7,
- 0xd7, 0xd4, 0x56, 0xae, 0x2d, 0xa0, 0xa7, 0xb2, 0xa5, 0x7e, 0x3d,
- 0xff, 0x33, 0x7a, 0xf6, 0x45, 0xe1, 0xdc, 0x84, 0x3a, 0x98, 0xb6,
- 0xcf, 0xc2, 0x0b, 0xac, 0xa1, 0x03, 0xf8, 0xcc, 0xce, 0x69, 0xa3,
- 0x89, 0xc9, 0xd1, 0x9a, 0xc0, 0x73, 0x9e, 0x8d, 0xad, 0x7f, 0xbd,
- 0xcf, 0x11, 0xe9, 0xc6, 0x04, 0xc1, 0x3d, 0x00, 0x00, 0x00, 0x00,
- 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
-};
-
-const int default_left_icon_len = 536;
-
-
-/*
- * This table was generated by the command:
- *
- * bin2c -n default_right_icon right.png
- */
-
-const unsigned char default_right_icon[] = {
- 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00,
- 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00,
- 0x00, 0x1e, 0x08, 0x03, 0x00, 0x00, 0x00, 0x0c, 0xee, 0x5e, 0x90,
- 0x00, 0x00, 0x00, 0x04, 0x67, 0x41, 0x4d, 0x41, 0x00, 0x00, 0xb1,
- 0x8f, 0x0b, 0xfc, 0x61, 0x05, 0x00, 0x00, 0x00, 0x2d, 0x50, 0x4c,
- 0x54, 0x45, 0xec, 0xee, 0xef, 0xd8, 0xdc, 0xdf, 0xca, 0xd0, 0xd3,
- 0xc3, 0xc9, 0xcd, 0xae, 0xb7, 0xbc, 0xa8, 0xb1, 0xb7, 0x99, 0xa4,
- 0xab, 0x93, 0x9f, 0xa6, 0x86, 0x93, 0x9b, 0x77, 0x86, 0x8f, 0x71,
- 0x80, 0x89, 0x60, 0x6c, 0x74, 0x5b, 0x67, 0x6e, 0x50, 0x5b, 0x61,
- 0x45, 0x4e, 0x53, 0xeb, 0x64, 0x46, 0x0c, 0x00, 0x00, 0x01, 0x8c,
- 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0x6d, 0x92, 0x59, 0x6e, 0xc3,
- 0x30, 0x0c, 0x44, 0x2d, 0x71, 0x95, 0x94, 0xf4, 0xfe, 0xc7, 0xed,
- 0xcc, 0xc8, 0x40, 0x7f, 0x4a, 0x04, 0x89, 0xc3, 0xc7, 0x65, 0x4c,
- 0xf2, 0x79, 0xfe, 0xb1, 0x39, 0xde, 0x87, 0xf3, 0xfc, 0x6b, 0x2f,
- 0x0e, 0xe2, 0x69, 0xd3, 0x6c, 0xce, 0x31, 0xf8, 0xc1, 0xef, 0x33,
- 0x3c, 0x33, 0xc3, 0xe7, 0x58, 0x1b, 0x18, 0xc8, 0x33, 0x8c, 0x6c,
- 0x20, 0x14, 0x99, 0xd3, 0x3d, 0x1c, 0x6e, 0x61, 0x64, 0x44, 0x05,
- 0x53, 0xdd, 0xcd, 0x6d, 0xa8, 0xde, 0x44, 0x45, 0x5b, 0x0d, 0x0c,
- 0xa7, 0x79, 0x7d, 0x62, 0x98, 0x52, 0xc6, 0x20, 0x1e, 0xc2, 0x0b,
- 0x38, 0x13, 0xbc, 0x7f, 0xbe, 0x1b, 0x71, 0x72, 0x8f, 0x71, 0x45,
- 0x8c, 0x22, 0x8e, 0x70, 0xf7, 0xf5, 0xf3, 0xfd, 0x7c, 0xda, 0x21,
- 0x03, 0x32, 0x81, 0xf9, 0xfd, 0x44, 0xdf, 0xde, 0xd3, 0xfa, 0xfb,
- 0x39, 0xb0, 0x36, 0xbe, 0x86, 0x5d, 0x8d, 0x23, 0x97, 0x94, 0xa3,
- 0x56, 0x01, 0xef, 0x7d, 0xce, 0x4e, 0x89, 0x12, 0xb6, 0x62, 0xb6,
- 0xa2, 0xf3, 0x0b, 0x4a, 0x3b, 0xcb, 0xe9, 0xa0, 0x78, 0xeb, 0x7c,
- 0x31, 0xb2, 0xcf, 0x5e, 0xb2, 0x7d, 0xca, 0x5c, 0x21, 0x7e, 0x54,
- 0x9c, 0x73, 0xe9, 0xef, 0x21, 0xeb, 0x06, 0xdf, 0xbb, 0x9d, 0x6f,
- 0xe1, 0xe7, 0xdc, 0x6c, 0xb3, 0x22, 0x86, 0xbf, 0x5a, 0x05, 0x76,
- 0x72, 0x04, 0xfb, 0xdc, 0xb1, 0xcc, 0x99, 0xc4, 0x50, 0x5e, 0x85,
- 0x02, 0x94, 0x90, 0xc8, 0x39, 0x17, 0x73, 0xac, 0x12, 0xbe, 0xbb,
- 0x6f, 0x7e, 0xb3, 0xf9, 0xc5, 0x9a, 0x91, 0x13, 0x93, 0xca, 0x5c,
- 0xe2, 0xa6, 0x86, 0xaa, 0x55, 0x09, 0xaf, 0x0b, 0xcb, 0x4c, 0x0d,
- 0x67, 0xd5, 0xa3, 0xf5, 0xf9, 0xed, 0xbd, 0x29, 0x9d, 0x4d, 0x45,
- 0xcd, 0x36, 0xb3, 0xbd, 0x2a, 0xa1, 0x9c, 0xaf, 0x8d, 0xfc, 0xd0,
- 0xfa, 0x5d, 0x31, 0xea, 0x1d, 0x59, 0xe9, 0xf9, 0x01, 0x5a, 0x2b,
- 0xe1, 0xc4, 0x34, 0x71, 0x2b, 0xec, 0xdd, 0x4b, 0xc5, 0x33, 0x2d,
- 0x0e, 0x87, 0x31, 0x4d, 0x58, 0x3f, 0x38, 0x8c, 0x08, 0x4a, 0xa3,
- 0x0b, 0xd2, 0x96, 0xf1, 0x5e, 0x5c, 0x1b, 0x9a, 0xce, 0x5b, 0x8b,
- 0x54, 0x36, 0x1e, 0xe3, 0x68, 0x4e, 0x91, 0x1c, 0x02, 0x37, 0xcc,
- 0x2a, 0xa5, 0x4b, 0x8d, 0xc4, 0x7c, 0x43, 0x04, 0x97, 0x83, 0xd6,
- 0xda, 0x18, 0x2f, 0xf5, 0x1e, 0xb2, 0xaa, 0x22, 0x68, 0x28, 0x92,
- 0x17, 0x39, 0x74, 0x6b, 0xfb, 0xbd, 0xd4, 0xa1, 0x6a, 0x8a, 0x82,
- 0xaa, 0x0c, 0x1e, 0xbb, 0x79, 0xfc, 0x0d, 0xf5, 0x35, 0xd2, 0x08,
- 0x5d, 0x1b, 0x12, 0x98, 0x1d, 0x7b, 0x65, 0x61, 0x53, 0x19, 0x68,
- 0xcf, 0x75, 0x9f, 0x85, 0x3f, 0xa9, 0xb5, 0x43, 0xf9, 0xd1, 0x1a,
- 0xab, 0x89, 0xc9, 0x79, 0x6f, 0x78, 0x6e, 0xac, 0x2f, 0xe3, 0x17,
- 0x29, 0xef, 0x0f, 0xde, 0x36, 0xeb, 0x43, 0xec, 0x00, 0x00, 0x00,
- 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
-};
-
-const int default_right_icon_len = 526;
-
-
-/*
- * This table was generated by the command:
- *
- * bin2c -n default_up_icon up.png
- */
-
-const unsigned char default_up_icon[] = {
- 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00,
- 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00,
- 0x00, 0x1e, 0x08, 0x03, 0x00, 0x00, 0x00, 0x0c, 0xee, 0x5e, 0x90,
- 0x00, 0x00, 0x00, 0x04, 0x67, 0x41, 0x4d, 0x41, 0x00, 0x00, 0xb1,
- 0x8f, 0x0b, 0xfc, 0x61, 0x05, 0x00, 0x00, 0x00, 0x2d, 0x50, 0x4c,
- 0x54, 0x45, 0xeb, 0xed, 0xee, 0xdd, 0xe1, 0xe3, 0xcf, 0xd4, 0xd7,
- 0xc9, 0xcf, 0xd2, 0xc2, 0xc9, 0xcd, 0xb4, 0xbc, 0xc1, 0xad, 0xb6,
- 0xbb, 0x98, 0xa3, 0xaa, 0x92, 0x9e, 0xa5, 0x7d, 0x8b, 0x94, 0x70,
- 0x7f, 0x88, 0x65, 0x72, 0x7a, 0x5f, 0x6b, 0x73, 0x54, 0x5f, 0x66,
- 0x4a, 0x53, 0x59, 0xac, 0xfc, 0xc3, 0x4d, 0x00, 0x00, 0x01, 0xa3,
- 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0x6d, 0x53, 0x59, 0x96, 0xc3,
- 0x30, 0x08, 0x8b, 0x59, 0xbd, 0x90, 0xdc, 0xff, 0xb8, 0x23, 0xe1,
- 0x7e, 0x0e, 0xaf, 0x75, 0x5a, 0x8b, 0x45, 0x02, 0xf2, 0x3c, 0xff,
- 0x98, 0xc8, 0xef, 0x47, 0xfd, 0x87, 0x3e, 0x63, 0xdc, 0x67, 0x10,
- 0x16, 0x53, 0x33, 0x15, 0x19, 0xfc, 0xa8, 0x8c, 0x21, 0x9e, 0x99,
- 0xe1, 0x22, 0xeb, 0x00, 0x06, 0xe4, 0x19, 0x86, 0x6b, 0x98, 0xeb,
- 0x78, 0x86, 0x7a, 0x84, 0x9b, 0xe8, 0xde, 0x80, 0x55, 0x34, 0x66,
- 0x20, 0x4c, 0xdc, 0x1d, 0x41, 0xf0, 0x33, 0x55, 0x35, 0xf7, 0xb5,
- 0x00, 0xbb, 0x9b, 0x7f, 0xdf, 0xf7, 0xbe, 0x6f, 0x1f, 0x3f, 0x13,
- 0x73, 0x5b, 0x8c, 0xce, 0xf4, 0x86, 0xeb, 0x7d, 0xeb, 0x9c, 0x2a,
- 0x1c, 0x78, 0xa0, 0xd0, 0x98, 0x84, 0x03, 0x46, 0xf8, 0xb4, 0x11,
- 0xdc, 0xfb, 0x1c, 0xd3, 0x31, 0x62, 0xb2, 0x36, 0x8a, 0x5b, 0x04,
- 0xf8, 0xa3, 0xb2, 0x3b, 0x1e, 0x26, 0xa2, 0xe0, 0x20, 0xc9, 0xda,
- 0xd6, 0x8c, 0x89, 0xc0, 0x20, 0xb1, 0x71, 0xc0, 0x62, 0x93, 0xd1,
- 0x66, 0x70, 0xb0, 0x0b, 0xaf, 0xa9, 0x74, 0x71, 0xf8, 0x10, 0xce,
- 0x1f, 0x0c, 0xa5, 0x06, 0xc0, 0xab, 0x80, 0x41, 0x68, 0xe0, 0x52,
- 0xa3, 0x48, 0x8d, 0xbe, 0xe8, 0x83, 0x22, 0xc3, 0x79, 0x6b, 0xb1,
- 0x81, 0x2c, 0x05, 0xf7, 0xaa, 0xab, 0x1b, 0x2d, 0x00, 0xec, 0x1b,
- 0xea, 0xaa, 0x39, 0xe2, 0x3f, 0x52, 0x9e, 0x6a, 0x61, 0xde, 0x74,
- 0xd4, 0x5b, 0xdd, 0x62, 0x2a, 0x04, 0x20, 0xfd, 0x85, 0x1d, 0xca,
- 0x40, 0xc4, 0xd7, 0xf7, 0x15, 0x34, 0xa3, 0x4b, 0x24, 0xd3, 0x4c,
- 0x7a, 0xba, 0x72, 0xa5, 0x31, 0x78, 0xc3, 0xbc, 0xd3, 0x83, 0x5b,
- 0x8f, 0x04, 0x53, 0xec, 0x60, 0x56, 0xde, 0x7b, 0xad, 0x3d, 0xc9,
- 0x05, 0xfa, 0xa5, 0x75, 0xa3, 0x96, 0x33, 0xd7, 0xc7, 0x9e, 0xaf,
- 0x35, 0xd7, 0xbe, 0xc4, 0xcc, 0x3a, 0x3a, 0xe6, 0x44, 0x39, 0x87,
- 0x28, 0x54, 0x5e, 0xc4, 0x17, 0x96, 0x81, 0x62, 0xba, 0x76, 0x24,
- 0x60, 0x4b, 0x8e, 0x6b, 0x13, 0x9b, 0x73, 0xcf, 0xe8, 0xee, 0xf7,
- 0x40, 0x15, 0xbb, 0x63, 0x52, 0x28, 0x7c, 0x43, 0x67, 0x22, 0x3d,
- 0xa6, 0xe8, 0x12, 0xd1, 0xbb, 0x16, 0x21, 0xf3, 0x25, 0x3c, 0xe9,
- 0x00, 0x43, 0x76, 0xb4, 0x71, 0x04, 0x7b, 0xae, 0xcc, 0xf4, 0x36,
- 0xbc, 0x20, 0xab, 0xe1, 0x0d, 0x18, 0xeb, 0xd0, 0xba, 0x23, 0xcd,
- 0x79, 0x09, 0x82, 0x7d, 0x70, 0x3f, 0x8c, 0x5d, 0xde, 0x0d, 0x73,
- 0xfc, 0xb8, 0x4b, 0x8c, 0xb8, 0x0f, 0xca, 0xea, 0xbd, 0x3c, 0xa4,
- 0xc6, 0x8e, 0xb2, 0xe9, 0xb8, 0x94, 0x0e, 0x4b, 0x94, 0x1d, 0x03,
- 0x8c, 0xea, 0xfc, 0x9a, 0xaa, 0xfc, 0x2a, 0x3b, 0x6d, 0xdc, 0xf1,
- 0x7e, 0x21, 0x6e, 0x74, 0xec, 0x95, 0x13, 0x7c, 0x49, 0x36, 0xc1,
- 0x1c, 0xea, 0xf1, 0x27, 0xc9, 0x72, 0xe5, 0x83, 0xc5, 0xad, 0x16,
- 0x43, 0x98, 0x78, 0xd5, 0xc6, 0x2b, 0x14, 0xf3, 0x1c, 0x5c, 0xfd,
- 0x01, 0x56, 0x35, 0x13, 0x9e, 0xbd, 0x4e, 0x62, 0x4e, 0x00, 0x00,
- 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
-};
-
-const int default_up_icon_len = 549;
-
-
-/*
- * This table was generated by the command:
- *
- * bin2c -n default_movie_icon movie.png
- */
-
-const unsigned char default_movie_icon[] = {
- 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00,
- 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00,
- 0x00, 0x16, 0x04, 0x03, 0x00, 0x00, 0x00, 0x32, 0x6f, 0xa1, 0x35,
- 0x00, 0x00, 0x00, 0x15, 0x50, 0x4c, 0x54, 0x45, 0xcc, 0xff, 0xff,
- 0xff, 0xff, 0xff, 0xcc, 0xcc, 0xcc, 0x99, 0x99, 0x99, 0x66, 0x66,
- 0x66, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x89, 0x10, 0x3a, 0x6d,
- 0x00, 0x00, 0x00, 0x01, 0x62, 0x4b, 0x47, 0x44, 0x06, 0x61, 0x66,
- 0xb8, 0x7d, 0x00, 0x00, 0x00, 0x39, 0x49, 0x44, 0x41, 0x54, 0x78,
- 0xda, 0x63, 0x48, 0x83, 0x82, 0x04, 0x06, 0x86, 0x24, 0x35, 0x30,
- 0x4b, 0x29, 0x15, 0xc4, 0x74, 0x01, 0x02, 0x31, 0x10, 0x33, 0x2d,
- 0xcd, 0xd9, 0xd8, 0xd8, 0x58, 0x2c, 0x0d, 0x2c, 0x0a, 0x66, 0x2a,
- 0xa1, 0x32, 0x89, 0x50, 0x20, 0x08, 0x04, 0x50, 0x05, 0xf4, 0xb5,
- 0x02, 0xce, 0x64, 0x0d, 0x85, 0x02, 0x06, 0x00, 0x66, 0x25, 0x34,
- 0xea, 0x21, 0xc4, 0xeb, 0x5e, 0x00, 0x00, 0x00, 0x56, 0x74, 0x45,
- 0x58, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x00, 0x54,
- 0x68, 0x69, 0x73, 0x20, 0x61, 0x72, 0x74, 0x20, 0x69, 0x73, 0x20,
- 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x75, 0x62, 0x6c,
- 0x69, 0x63, 0x20, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x2e, 0x20,
- 0x4b, 0x65, 0x76, 0x69, 0x6e, 0x20, 0x48, 0x75, 0x67, 0x68, 0x65,
- 0x73, 0x2c, 0x20, 0x6b, 0x65, 0x76, 0x69, 0x6e, 0x68, 0x40, 0x65,
- 0x69, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x2c, 0x20, 0x53, 0x65, 0x70,
- 0x74, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x31, 0x39, 0x39, 0x35,
- 0x4c, 0xe8, 0xf4, 0xc4, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e,
- 0x44, 0xae, 0x42, 0x60, 0x82
-};
-
-const int default_movie_icon_len = 258;
-
-
-/*
- * This table was generated by the command:
- *
- * bin2c -n default_sound_icon sound.png
- */
-
-const unsigned char default_sound_icon[] = {
- 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00,
- 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00,
- 0x00, 0x16, 0x04, 0x03, 0x00, 0x00, 0x00, 0x32, 0x6f, 0xa1, 0x35,
- 0x00, 0x00, 0x00, 0x18, 0x50, 0x4c, 0x54, 0x45, 0xcc, 0xff, 0xff,
- 0xff, 0x33, 0x33, 0xff, 0xff, 0xff, 0xcc, 0xcc, 0xcc, 0x99, 0x99,
- 0x99, 0x66, 0x00, 0x00, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0xfd,
- 0xef, 0xcf, 0xe1, 0x00, 0x00, 0x00, 0x01, 0x62, 0x4b, 0x47, 0x44,
- 0x07, 0x16, 0x61, 0x88, 0xeb, 0x00, 0x00, 0x00, 0x6a, 0x49, 0x44,
- 0x41, 0x54, 0x78, 0xda, 0x63, 0x60, 0xc0, 0x0d, 0x12, 0x18, 0x18,
- 0x05, 0x20, 0x2c, 0xf6, 0x02, 0x41, 0x06, 0x41, 0x08, 0xb3, 0xa4,
- 0x80, 0x51, 0x00, 0x22, 0xcc, 0xee, 0x54, 0xc0, 0x20, 0x08, 0x61,
- 0x96, 0x28, 0x15, 0x08, 0x30, 0x02, 0x55, 0xb0, 0x97, 0x97, 0x3b,
- 0x29, 0x15, 0x00, 0x05, 0x03, 0x19, 0x4a, 0x5c, 0x5c, 0x94, 0x80,
- 0x4c, 0x56, 0x10, 0x53, 0x09, 0x08, 0x0a, 0x02, 0x89, 0x63, 0xa6,
- 0xa4, 0x24, 0x41, 0xb5, 0x01, 0x0d, 0x33, 0x83, 0x1a, 0xc6, 0x90,
- 0x96, 0x56, 0x9c, 0x04, 0xb1, 0x02, 0x08, 0xd2, 0xcd, 0xe0, 0x16,
- 0xb3, 0x15, 0x83, 0x9c, 0x03, 0x71, 0x59, 0x3a, 0xc2, 0x91, 0x6c,
- 0x08, 0xa7, 0x63, 0x00, 0x00, 0xac, 0x1b, 0x1b, 0xa7, 0x07, 0x45,
- 0x3c, 0x76, 0x00, 0x00, 0x00, 0x56, 0x74, 0x45, 0x58, 0x74, 0x43,
- 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x00, 0x54, 0x68, 0x69, 0x73,
- 0x20, 0x61, 0x72, 0x74, 0x20, 0x69, 0x73, 0x20, 0x69, 0x6e, 0x20,
- 0x74, 0x68, 0x65, 0x20, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20,
- 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x2e, 0x20, 0x4b, 0x65, 0x76,
- 0x69, 0x6e, 0x20, 0x48, 0x75, 0x67, 0x68, 0x65, 0x73, 0x2c, 0x20,
- 0x6b, 0x65, 0x76, 0x69, 0x6e, 0x68, 0x40, 0x65, 0x69, 0x74, 0x2e,
- 0x63, 0x6f, 0x6d, 0x2c, 0x20, 0x53, 0x65, 0x70, 0x74, 0x65, 0x6d,
- 0x62, 0x65, 0x72, 0x20, 0x31, 0x39, 0x39, 0x35, 0x4c, 0xe8, 0xf4,
- 0xc4, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42,
- 0x60, 0x82
-};
-
-const int default_sound_icon_len = 310;
-
diff --git a/pandaapp/src/indexify/default_index_icons.h b/pandaapp/src/indexify/default_index_icons.h
deleted file mode 100644
index 23aad07026..0000000000
--- a/pandaapp/src/indexify/default_index_icons.h
+++ /dev/null
@@ -1,36 +0,0 @@
-// Filename: default_index_icons.h
-// Created by: drose (04Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#ifndef DEFAULT_INDEX_ICONS_H
-#define DEFAULT_INDEX_ICONS_H
-
-extern const char *default_left_icon_filename;
-extern const char *default_right_icon_filename;
-extern const char *default_up_icon_filename;
-extern const char *default_movie_icon_filename;
-extern const char *default_sound_icon_filename;
-
-extern const unsigned char default_left_icon[];
-extern const int default_left_icon_len;
-extern const unsigned char default_right_icon[];
-extern const int default_right_icon_len;
-extern const unsigned char default_up_icon[];
-extern const int default_up_icon_len;
-extern const unsigned char default_movie_icon[];
-extern const int default_movie_icon_len;
-extern const unsigned char default_sound_icon[];
-extern const int default_sound_icon_len;
-
-#endif
-
diff --git a/pandaapp/src/indexify/fontSamples.cxx b/pandaapp/src/indexify/fontSamples.cxx
deleted file mode 100644
index d65900b4ea..0000000000
--- a/pandaapp/src/indexify/fontSamples.cxx
+++ /dev/null
@@ -1,264 +0,0 @@
-// Filename: fontSamples.cxx
-// Created by: drose (03Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#include "fontSamples.h"
-#include "pnmTextMaker.h"
-#include "default_font.h"
-#include "pnmImage.h"
-#include "pnotify.h"
-
-#include
-
-#ifdef WIN32_VC
-#define snprintf _snprintf
-#endif
-
-////////////////////////////////////////////////////////////////////
-// Function: FontSamples::Constructor
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-FontSamples::
-FontSamples() {
- clear_runlines();
- add_runline("[opts] fontname [fontname ...]");
-
- set_program_description
- ("Generates one or more image files with one line of text from "
- "each of several given font files, as a font sample sheet.");
-
- add_option
- ("t", "text", 0,
- "Specifies the sample text to render using each font.",
- &FontSamples::dispatch_string, NULL, &_sample_text);
-
- add_option
- ("sh", "height", 0,
- "Specifies the pixel height of each sample.",
- &FontSamples::dispatch_int, NULL, &_sample_height);
-
- add_option
- ("nf", "filename", 0,
- "Specifies the filename of the font to be used to write each font's "
- "name.",
- &FontSamples::dispatch_filename, NULL, &_name_font_filename);
-
- add_option
- ("nh", "height", 0,
- "Specifies the pixel height of each font's name.",
- &FontSamples::dispatch_int, NULL, &_name_height);
-
- add_option
- ("fontaa", "factor", 0,
- "Specifies a scale factor to apply to the fonts "
- "for the purpose of antialiasing the fonts a "
- "little better than FreeType can do by itself. The letters are "
- "generated large and then scaled to their proper size. Normally this "
- "should be a number in the range 3 to 4 for best effect.",
- &FontSamples::dispatch_double, NULL, &_font_aa_factor);
-
- add_option
- ("space", "y", 0,
- "Specifies the vertical space in pixels between font samples.",
- &FontSamples::dispatch_int, NULL, &_vert_space);
-
- add_option
- ("image", "x, y", 0,
- "Specifies the width and height in pixels of the resulting image(s).",
- &FontSamples::dispatch_int_pair, NULL, &_image_width);
-
- add_option
- ("o", "filename", 50,
- "Specify the filename(s) to which the resulting image file will "
- "be written. This should contain the string '%d' which will be "
- "filled in with the index number of the particular frame.",
- &FontSamples::dispatch_string, NULL, &_output_filename);
-
- _sample_text = "The quick brown fox jumped over the lazy dog's back.";
- _sample_height = 14;
- _name_height = 10;
- _font_aa_factor = 4.0;
- _vert_space = 10;
- _image_width = 600;
- _image_height = 600;
- _output_filename = "samples-%d.jpg";
- _name_text_maker = (PNMTextMaker *)NULL;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: FontSamples::Destructor
-// Access: Public, Virtual
-// Description:
-////////////////////////////////////////////////////////////////////
-FontSamples::
-~FontSamples() {
- if (_name_text_maker != (PNMTextMaker *)NULL) {
- delete _name_text_maker;
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: FontSamples::handle_args
-// Access: Protected, Virtual
-// Description: Does something with the additional arguments on the
-// command line (after all the -options have been
-// parsed). Returns true if the arguments are good,
-// false otherwise.
-////////////////////////////////////////////////////////////////////
-bool FontSamples::
-handle_args(ProgramBase::Args &args) {
- if (args.empty()) {
- nout << "You must specify the font filenames on the command line.\n";
- return false;
- }
-
- Args::const_iterator ai;
- for (ai = args.begin(); ai != args.end(); ++ai) {
- Filename filename = Filename::from_os_specific(*ai);
- filename.standardize();
- if (filename.exists()) {
- _font_filenames.push_back(filename);
-
- } else {
- nout << filename << " does not exist.\n";
- return false;
- }
- }
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: FontSamples::post_command_line
-// Access: Protected, Virtual
-// Description: This is called after the command line has been
-// completely processed, and it gives the program a
-// chance to do some last-minute processing and
-// validation of the options and arguments. It should
-// return true if everything is fine, false if there is
-// an error.
-////////////////////////////////////////////////////////////////////
-bool FontSamples::
-post_command_line() {
- if (_font_filenames.empty()) {
- nout << "No font filenames.\n";
- return false;
- }
-
- if (_name_height != 0) {
- if (!_name_font_filename.empty()) {
- _name_text_maker = new PNMTextMaker(_name_font_filename, 0);
- if (!_name_text_maker->is_valid()) {
- delete _name_text_maker;
- _name_text_maker = (PNMTextMaker *)NULL;
- }
- }
-
- if (_name_text_maker == (PNMTextMaker *)NULL) {
- _name_text_maker = new PNMTextMaker((const char *)default_font,
- default_font_size, 0);
- if (!_name_text_maker->is_valid()) {
- nout << "Unable to open default font.\n";
- delete _name_text_maker;
- _name_text_maker = (PNMTextMaker *)NULL;
- }
- }
- }
-
- if (_name_text_maker != (PNMTextMaker *)NULL) {
- _name_text_maker->set_scale_factor(_font_aa_factor);
- _name_text_maker->set_pixel_size(_name_height);
- } else {
- _name_height = 0;
- }
-
- return ProgramBase::post_command_line();
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: FontSamples::run
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-void FontSamples::
-run() {
- int output_index = 1;
- PNMImage output_image(_image_width, _image_height, 1);
- static const int output_filename_size = 1024;
- char output_filename[output_filename_size];
-
- bool all_ok = true;
-
- output_image.fill(1, 1, 1);
- int y = _vert_space;
-
- int vert_per_font =
- _sample_height + _name_height + _vert_space;
-
- Filenames::iterator fi;
- for (fi = _font_filenames.begin(); fi != _font_filenames.end(); ++fi) {
- if (y > _image_height - vert_per_font) {
- // Write out the current image.
- snprintf(output_filename, output_filename_size,
- _output_filename.c_str(), output_index);
- nout << "Writing " << output_filename << "\n";
- if (!output_image.write(output_filename)) {
- nout << "Unable to write to " << output_filename << "\n";
- exit(1);
- }
- output_index++;
- output_image.fill(1, 1, 1);
- y = _vert_space;
- }
- const Filename &filename = (*fi);
- PNMTextMaker *text_maker = new PNMTextMaker(filename, 0);
- if (!text_maker->is_valid()) {
- all_ok = false;
- } else {
- text_maker->set_scale_factor(_font_aa_factor);
- text_maker->set_pixel_size(_sample_height);
- text_maker->generate_into(_sample_text, output_image,
- 16, y + _sample_height);
- if (_name_text_maker != (PNMTextMaker *)NULL) {
- string desc = filename.get_basename() + ": " + text_maker->get_name();
- _name_text_maker->generate_into(desc, output_image,
- 16, y + _sample_height + _name_height);
- }
- }
-
- y += vert_per_font;
- delete text_maker;
- }
-
- snprintf(output_filename, output_filename_size,
- _output_filename.c_str(), output_index);
- nout << "Writing " << output_filename << "\n";
- if (!output_image.write(output_filename)) {
- nout << "Unable to write to " << output_filename << "\n";
- exit(1);
- }
-
- if (!all_ok) {
- nout << "Problem loading fonts.\n";
- exit(1);
- }
-}
-
-
-int main(int argc, char *argv[]) {
- FontSamples prog;
- prog.parse_command_line(argc, argv);
- prog.run();
- return 0;
-}
diff --git a/pandaapp/src/indexify/fontSamples.h b/pandaapp/src/indexify/fontSamples.h
deleted file mode 100644
index e7371156d1..0000000000
--- a/pandaapp/src/indexify/fontSamples.h
+++ /dev/null
@@ -1,59 +0,0 @@
-// Filename: indexify.h
-// Created by: drose (07Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#ifndef FONTSAMPLES_H
-#define FONTSAMPLES_H
-
-#include "pandatoolbase.h"
-
-#include "programBase.h"
-#include "filename.h"
-#include "pvector.h"
-
-class PNMTextMaker;
-
-////////////////////////////////////////////////////////////////////
-// Class : FontSamples
-// Description : A program to generate one or more image files showing
-// samples of various fonts.
-////////////////////////////////////////////////////////////////////
-class FontSamples : public ProgramBase {
-public:
- FontSamples();
- virtual ~FontSamples();
-
-protected:
- virtual bool handle_args(Args &args);
- virtual bool post_command_line();
-
-public:
- void run();
-
- string _sample_text;
- int _sample_height;
- int _name_height;
- Filename _name_font_filename;
- double _font_aa_factor;
- int _vert_space;
- int _image_width;
- int _image_height;
- string _output_filename;
-
- typedef pvector Filenames;
- Filenames _font_filenames;
-
- PNMTextMaker *_name_text_maker;
-};
-
-#endif
diff --git a/pandaapp/src/indexify/indexImage.cxx b/pandaapp/src/indexify/indexImage.cxx
deleted file mode 100644
index 78cf829419..0000000000
--- a/pandaapp/src/indexify/indexImage.cxx
+++ /dev/null
@@ -1,918 +0,0 @@
-// Filename: indexImage.cxx
-// Created by: drose (03Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#include "indexImage.h"
-#include "rollDirectory.h"
-#include "photo.h"
-#include "pnmTextMaker.h"
-#include "indexParameters.h"
-#include "pnmImage.h"
-#include "pnmReader.h"
-
-#include "string_utils.h"
-
-////////////////////////////////////////////////////////////////////
-// Function: IndexImage::Constructor
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-IndexImage::
-IndexImage(RollDirectory *dir, int index) :
- _dir(dir),
- _index(index)
-{
- _name = _dir->get_basename() + "_" + format_string(index + 1);
- _index_x_size = 0;
- _index_y_size = 0;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: IndexImage::Destructor
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-IndexImage::
-~IndexImage() {
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: IndexImage::add_photo
-// Access: Public
-// Description: Adds the nth photo in the roll to the index image.
-// Returns true if the photo is added, or false if there
-// was no more room.
-////////////////////////////////////////////////////////////////////
-bool IndexImage::
-add_photo(int photo_index) {
- int count = _photos.size();
- if (count >= max_thumbs) {
- return false;
- }
-
- int yi = count / thumb_count_x;
- int xi = count - (yi * thumb_count_x);
-
- int x = thumb_x_space + xi * (thumb_width + thumb_x_space);
- int y = thumb_y_space + yi * (thumb_height + thumb_caption_height + thumb_y_space);
-
- PhotoInfo pinfo;
- pinfo._photo_index = photo_index;
- pinfo._x_place = x;
- pinfo._y_place = y;
- _photos.push_back(pinfo);
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: IndexImage::generate_images
-// Access: Public
-// Description: Computes the thumbnail image file and writes it to
-// the indicated directory; generates all reduced images
-// associated with these photos into the appropriate
-// subdirectory. Returns true on success, false on
-// failure.
-////////////////////////////////////////////////////////////////////
-bool IndexImage::
-generate_images(const Filename &archive_dir, PNMTextMaker *text_maker) {
- int count = _photos.size();
- int num_rows = (count + thumb_count_x - 1) / thumb_count_x;
- int actual_index_height = thumb_y_space + num_rows * (thumb_height + thumb_caption_height + thumb_y_space);
-
- PNMImage index_image;
-
- Filename thumbnail_dir(archive_dir, "thumbs");
- Filename output_filename(thumbnail_dir, _name);
- output_filename.set_extension("jpg");
-
- Photos::const_iterator pi;
-
- // First, scan the image files to see if we can avoid regenerating
- // the index image.
- bool generate_index_image = true;
- if (!dummy_mode && !force_regenerate && output_filename.exists()) {
- // Maybe we don't need to renegerate the index.
- generate_index_image = false;
-
- const Filename &newest_contributing_filename =
- _dir->get_newest_contributing_filename();
- if (!newest_contributing_filename.empty()) {
- generate_index_image =
- (output_filename.compare_timestamps(newest_contributing_filename) < 0);
- }
-
- for (pi = _photos.begin();
- pi != _photos.end() && !generate_index_image;
- ++pi) {
- const PhotoInfo &pinfo = (*pi);
- Photo *photo = _dir->get_photo(pinfo._photo_index);
- Filename photo_filename(_dir->get_dir(), photo->get_basename());
-
- // If any of the source photos are newer than the index image,
- // we must regenerate it.
- generate_index_image =
- (output_filename.compare_timestamps(photo_filename) < 0);
- }
- }
-
- // If we don't need to regenerate the index, we do need to at least
- // scan the header.
- if (!generate_index_image) {
- if (index_image.read_header(output_filename)) {
- if (index_image.get_x_size() != actual_index_width ||
- index_image.get_y_size() != actual_index_height) {
- // If the index exists but is the wrong size, we'd better
- // regenerate it.
- generate_index_image = true;
- }
-
- } else {
- // If we couldn't even read the header, we'd better regenerate it
- // after all.
- nout << "Couldn't read " << output_filename << "; regenerating.\n";
- generate_index_image = true;
- }
- }
-
- if (generate_index_image) {
- index_image.clear(actual_index_width, actual_index_height);
- index_image.fill(1.0, 1.0, 1.0);
- }
-
- // Now go back through and read whichever images are necessary, or
- // just read the headers if we can get away with it.
- for (pi = _photos.begin(); pi != _photos.end(); ++pi) {
- const PhotoInfo &pinfo = (*pi);
- Photo *photo = _dir->get_photo(pinfo._photo_index);
- PNMImage reduced_image;
- if (!make_reduced_image(photo, reduced_image, generate_index_image, false)) {
- return false;
- }
-
- if (generate_index_image) {
- // Generate a thumbnail image for the photo.
- PNMImage thumbnail_image;
- compute_reduction(reduced_image, thumbnail_image,
- thumb_interior_width, thumb_interior_height);
-
- if (dummy_mode) {
- draw_box(thumbnail_image);
- } else {
- thumbnail_image.quick_filter_from(reduced_image);
- }
- // Center the thumbnail image within its box.
- int x_center = (thumb_width - thumbnail_image.get_x_size()) / 2;
- int y_center = (thumb_height - thumbnail_image.get_y_size()) / 2;
-
- if (draw_frames) {
- draw_frame(index_image,
- pinfo._x_place, pinfo._y_place,
- thumb_width, thumb_height,
- pinfo._x_place + x_center, pinfo._y_place + y_center,
- thumbnail_image.get_x_size(), thumbnail_image.get_y_size());
- }
-
- thumbnail_image.set_color_type(index_image.get_color_type());
- index_image.copy_sub_image(thumbnail_image,
- pinfo._x_place + x_center,
- pinfo._y_place + y_center);
-
- if (text_maker != (PNMTextMaker *)NULL) {
- int label_x = pinfo._x_place + thumb_width / 2;
- int label_y = pinfo._y_place + thumb_height + thumb_caption_height;
-
- int width =
- text_maker->generate_into(photo->get_frame_number(), index_image,
- label_x, label_y);
- if (photo->_has_movie && get_movie_icon().is_valid()) {
- const PNMImage &movie_icon_image = get_movie_icon();
- int icon_x = label_x - width / 2 - movie_icon_image.get_x_size();
- int icon_y = label_y - movie_icon_image.get_y_size();
-
- index_image.blend_sub_image(movie_icon_image, icon_x, icon_y);
- } else if (photo->_has_sound && get_sound_icon().is_valid()) {
- const PNMImage &sound_icon_image = get_sound_icon();
- int icon_x = label_x - width / 2 - sound_icon_image.get_x_size();
- int icon_y = label_y - sound_icon_image.get_y_size();
-
- index_image.blend_sub_image(sound_icon_image, icon_x, icon_y);
- }
- }
- }
- }
-
- if (generate_index_image) {
- nout << "Writing " << output_filename << "\n";
- output_filename.make_dir();
- if (!index_image.write(output_filename)) {
- nout << "Unable to write.\n";
- return false;
- }
- }
-
- _index_x_size = index_image.get_x_size();
- _index_y_size = index_image.get_y_size();
- _index_basename = output_filename.get_basename();
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: IndexImage::make_reduced_image
-// Access: Public
-// Description: Copies the full-sized image to the reduced image
-// folder, if necessary.
-////////////////////////////////////////////////////////////////////
-bool IndexImage::
-make_reduced_image(Photo *photo, PNMImage &reduced_image,
- bool generate_index_image, bool force_reduced) {
- Filename reduced_dir(archive_dir, "reduced/" + _dir->get_basename());
-
- Filename photo_filename(_dir->get_dir(), photo->get_basename());
- Filename reduced_filename(reduced_dir, photo->get_basename());
- photo_filename.standardize();
- reduced_filename.standardize();
-
- if (!dummy_mode && photo_filename != reduced_filename &&
- (force_regenerate ||
- reduced_filename.compare_timestamps(photo_filename) < 0)) {
- // If the reduced filename does not exist or is older than the
- // source filename, we must read the complete source filename to
- // generate the reduced image.
- PNMImage photo_image;
- PNMReader *reader = photo_image.make_reader(photo_filename);
- if (reader == (PNMReader *)NULL) {
- nout << "Unable to read " << photo_filename << ".\n";
- return false;
- }
- photo_image.copy_header_from(*reader);
-
- photo->_full_x_size = photo_image.get_x_size();
- photo->_full_y_size = photo_image.get_y_size();
-
- // Generate a reduced image for the photo.
- compute_reduction(photo_image, reduced_image,
- reduced_width, reduced_height);
-
- photo->_reduced_x_size = reduced_image.get_x_size();
- photo->_reduced_y_size = reduced_image.get_y_size();
-
- // Only bother making a reduced version if it would actually be
- // smaller than the original.
- if (photo->_reduced_x_size < photo->_full_x_size ||
- photo->_reduced_y_size < photo->_full_y_size) {
- nout << "Reading " << photo_filename << "\n";
- if (!photo_image.read(reader)) {
- nout << "Unable to read.\n";
- return false;
- }
- reader = NULL;
-
- reduced_image.quick_filter_from(photo_image);
- reduced_filename.make_dir();
- nout << "Writing " << reduced_filename << "\n";
- if (!reduced_image.write(reduced_filename)) {
- nout << "Unable to write.\n";
- delete reader;
- return false;
- }
- photo->_has_reduced = true;
-
- } else if (force_reduced) {
- // Even though the reduced image would not be smaller, copy it
- // anyway when force_reduced is true.
- photo_filename.set_binary();
- if (!copy_file(photo_filename, reduced_dir)) {
- return false;
- }
-
- } else {
- // We're not making a reduced version. But maybe we still
- // need to read the original so we can make a thumbnail.
- reduced_filename = photo_filename;
- reduced_image.copy_header_from(photo_image);
-
- if (!dummy_mode && generate_index_image) {
- nout << "Reading " << photo_filename << "\n";
- if (!reduced_image.read(reader)) {
- nout << "Unable to read image.\n";
- return false;
- }
- reader = NULL;
- }
- }
- if (reader != (PNMReader *)NULL) {
- delete reader;
- }
-
- } else {
- // If the reduced image already exists and is newer than the
- // source image, use it.
-
- if (!force_reduced) {
- // We still read the image header to determine its size.
- PNMImageHeader photo_image;
- if (!photo_image.read_header(photo_filename)) {
- nout << "Unable to read " << photo_filename << "\n";
- return false;
- }
-
- photo->_full_x_size = photo_image.get_x_size();
- photo->_full_y_size = photo_image.get_y_size();
- photo->_has_reduced = true;
-
- if (dummy_mode) {
- // In dummy mode, we may or may not actually have a reduced
- // image. In either case, ignore the file and compute its
- // appropriate size from the source image.
- compute_reduction(photo_image, reduced_image, reduced_width, reduced_height);
- photo->_reduced_x_size = reduced_image.get_x_size();
- photo->_reduced_y_size = reduced_image.get_y_size();
-
- } else if (generate_index_image) {
- // Now read the reduced image from disk, so we can put it on
- // the index image.
- nout << "Reading " << reduced_filename << "\n";
-
- if (!reduced_image.read(reduced_filename)) {
- nout << "Unable to read.\n";
- return false;
- }
-
- photo->_reduced_x_size = reduced_image.get_x_size();
- photo->_reduced_y_size = reduced_image.get_y_size();
-
- } else {
- // If we're not generating an index image, we don't even need
- // the reduced image--just scan its header to get its size.
- if (!reduced_image.read_header(reduced_filename)) {
- nout << "Unable to read " << reduced_filename << "\n";
- return false;
- }
- photo->_reduced_x_size = reduced_image.get_x_size();
- photo->_reduced_y_size = reduced_image.get_y_size();
- }
- }
- }
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: IndexImage::generate_html
-// Access: Public
-// Description: Generates all HTML files associated with reduced
-// images into the appropriate subdirectory, and
-// generates root-level HTML code to access the
-// thumbnails on the index image into the indicated
-// stream.
-////////////////////////////////////////////////////////////////////
-bool IndexImage::
-generate_html(ostream &root_html, const Filename &archive_dir,
- const Filename &roll_dir_root) {
- root_html
- << "\n"
- << "
\n"
- << "\n";
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: IndexImage::copy_reduced
-// Access: Public
-// Description: Copies key files from the full directory into the
-// reduced directory.
-////////////////////////////////////////////////////////////////////
-bool IndexImage::
-copy_reduced(const Filename &archive_dir) {
- Photos::const_iterator pi;
- for (pi = _photos.begin(); pi != _photos.end(); ++pi) {
- const PhotoInfo &pinfo = (*pi);
- int photo_index = pinfo._photo_index;
- Photo *photo = _dir->get_photo(photo_index);
-
- // Make sure we have a "reduced" image.
- PNMImage reduced_image;
- if (!make_reduced_image(photo, reduced_image, false, true)) {
- return false;
- }
-
- if (photo->_has_movie) {
- // Also copy the movie file to the reduced directory, even
- // though it's not reduced in any way--but there's no way
- // (presently) to reduce a movie file.
- Filename movie_filename(_dir->get_dir(), photo->get_movie());
- if (movie_filename.exists()) {
- movie_filename.set_binary();
- Filename reduced_dir(archive_dir, "reduced/" + _dir->get_basename());
- if (!copy_file(movie_filename, reduced_dir)) {
- return false;
- }
- }
- }
-
- if (photo->_has_sound) {
- // Also copy the sound clip to the reduced directory.
- Filename sound_filename(_dir->get_dir(), photo->get_sound());
- if (sound_filename.exists()) {
- sound_filename.set_binary();
- Filename reduced_dir(archive_dir, "reduced/" + _dir->get_basename());
- if (!copy_file(sound_filename, reduced_dir)) {
- return false;
- }
- }
- }
- }
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: IndexImage::output
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-void IndexImage::
-output(ostream &out) const {
- out << _name;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: IndexImage::write
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-void IndexImage::
-write(ostream &out, int indent_level) const {
- indent(out, indent_level)
- << _name << "\n";
- Photos::const_iterator pi;
- for (pi = _photos.begin(); pi != _photos.end(); ++pi) {
- const PhotoInfo &pinfo = (*pi);
- indent(out, indent_level + 2)
- << *_dir->get_photo(pinfo._photo_index) << "\n";
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: IndexImage::generate_reduced_html
-// Access: Public
-// Description: Generates HTML code for rendering the indicated
-// reduced-image photo into the given ostream.
-////////////////////////////////////////////////////////////////////
-bool IndexImage::
-generate_reduced_html(ostream &html, Photo *photo, int photo_index, int pi,
- const Filename &roll_dir_root) {
- Filename full_dir;
- if (roll_dir_root.empty()) {
- full_dir = Filename("../..", _dir->get_dir());
- } else {
- compose_href("../..", roll_dir_root, _dir->get_basename());
- }
- Filename full(full_dir, photo->get_basename());
- Filename movie(full_dir, photo->get_movie());
- Filename sound(full_dir, photo->get_sound());
-
- Filename reduced_dir("../../reduced", _dir->get_basename());
- Filename reduced(reduced_dir, photo->get_basename());
- if (!photo->_has_reduced) {
- reduced_dir = full_dir;
- reduced = full;
- }
-
- string up_href = "../" + _dir->get_basename() + ".htm#" + _name;
-
- Filename prev_photo_filename;
- Filename next_photo_filename;
-
- if (pi != 0) {
- // If this is not the first photo on the index, "back" will take
- // us to the previous photo on the same index.
- Photo *prev_photo = _dir->get_photo(_photos[pi - 1]._photo_index);
- prev_photo_filename = Filename(prev_photo->get_basename());
- prev_photo_filename.set_extension("htm");
-
- } else {
- // If this is the first photo on the index, "back" will take us to
- // the last photo on the previous index. Or even to the last
- // photo on the previous roll.
- RollDirectory *roll_dir = _dir;
- int index = _index - 1;
- while (index < 0 && roll_dir->_prev != (RollDirectory *)NULL) {
- roll_dir = roll_dir->_prev;
- index = roll_dir->get_num_index_images() - 1;
- }
-
- if (index >= 0) {
- IndexImage *prev_index = roll_dir->get_index_image(index);
- nassertr(!prev_index->_photos.empty(), false);
- Photo *prev_photo =
- roll_dir->get_photo(prev_index->_photos.back()._photo_index);
- Filename other_dir("..", roll_dir->get_basename());
- prev_photo_filename = Filename(other_dir, prev_photo->get_basename());
- prev_photo_filename.set_extension("htm");
- }
- }
-
- if (pi + 1 < (int)_photos.size()) {
- // If this is not the last photo, "next" will take us to the next
- // photo on the same index.
- Photo *next_photo = _dir->get_photo(_photos[pi + 1]._photo_index);
- next_photo_filename = Filename(next_photo->get_basename());
- next_photo_filename.set_extension("htm");
-
- } else {
- // If this is the last photo on the index, "next" will take us to
- // the first photo on the next index. Or even to the first photo
- // on the next roll.
-
- RollDirectory *roll_dir = _dir;
- int index = _index + 1;
- while (index >= roll_dir->get_num_index_images() &&
- roll_dir->_next != (RollDirectory *)NULL) {
- roll_dir = roll_dir->_next;
- index = 0;
- }
-
- if (index < roll_dir->get_num_index_images()) {
- IndexImage *next_index = roll_dir->get_index_image(index);
- nassertr(!next_index->_photos.empty(), false);
- Photo *next_photo =
- roll_dir->get_photo(next_index->_photos.front()._photo_index);
- Filename other_dir("..", roll_dir->get_basename());
- next_photo_filename = Filename(other_dir, next_photo->get_basename());
- next_photo_filename.set_extension("htm");
- }
- }
-
- html
- << "\n"
- << "\n"
- << "" << photo->get_name() << " (" << photo_index + 1 << " of "
- << _dir->get_num_photos() << " on " << _dir->get_basename()
- << ")\n"
- << "\n"
- << "\n"
- << "" << photo->get_name() << " (" << photo_index + 1 << " of "
- << _dir->get_num_photos() << ")
";
-
- generate_nav_buttons(html, prev_photo_filename, next_photo_filename,
- up_href);
-
- if (photo->_has_cm) {
- // If a comment file for the photo exists, insert its contents
- // here, right above the photo.
- Filename cm_filename(_dir->get_dir(), photo->get_cm());
- if (!RollDirectory::insert_html_comment(html, cm_filename)) {
- return false;
- }
- }
-
- html
- << ""
- << "
get_name()
- << "\">
\n";
-
- if (!omit_full_links && photo->_has_reduced) {
- html
- << "View full size image ("
- << photo->_full_x_size << " x " << photo->_full_y_size << ")
\n";
- }
-
- if (photo->_has_movie) {
- html << "";
- if (!movie_icon.empty()) {
- // Show the movie icon if we got one.
- Filename movie_icon_href = compose_href("../..", movie_icon);
- html << "
";
- }
-
- // Determine the size of the file.
- streampos size = 0;
- ifstream stream;
- Filename movie_filename(_dir->get_dir(), photo->get_movie());
- movie_filename.set_binary();
- if (movie_filename.open_read(stream)) {
- // Seek to the end and get the stream position there.
- stream.seekg(0, ios::end);
- size = stream.tellg();
- }
-
- static const streampos MB = 1024 * 1024;
- static const streampos GB = 1024 * 1024 * 1024;
- string size_units;
- double size_float = size;
-
- if (size > GB) {
- size_units = "GB";
- size_float = (double)size / (double)GB;
- } else if (size > MB) {
- size_units = "MB";
- size_float = (double)size / (double)MB;
- }
-
- if (size_units.empty()) {
- html
- << "Play movie
\n";
- } else {
- char buffer[128];
- sprintf(buffer, "%.1f", size_float);
- html
- << "Play movie ("
- << buffer << " " << size_units << ")
\n";
- }
- }
-
- if (photo->_has_sound) {
- html << "";
- if (!sound_icon.empty()) {
- // Show the sound icon if we got one.
- Filename sound_icon_href = compose_href("../..", sound_icon);
- html << "
";
- }
-
- // Determine the size of the file.
- streampos size = 0;
- ifstream stream;
- Filename sound_filename(_dir->get_dir(), photo->get_sound());
- sound_filename.set_binary();
- if (sound_filename.open_read(stream)) {
- // Seek to the end and get the stream position there.
- stream.seekg(0, ios::end);
- size = stream.tellg();
- }
-
- static const streampos MB = 1024 * 1024;
- static const streampos GB = 1024 * 1024 * 1024;
- string size_units;
- double size_float = size;
-
- if (size > GB) {
- size_units = "GB";
- size_float = (double)size / (double)GB;
- } else if (size > MB) {
- size_units = "MB";
- size_float = (double)size / (double)MB;
- }
-
- if (size_units.empty()) {
- html
- << "Play sound clip
\n";
- } else {
- char buffer[128];
- sprintf(buffer, "%.1f", size_float);
- html
- << "Play sound clip ("
- << buffer << " " << size_units << ")\n";
- }
- }
-
- generate_nav_buttons(html, prev_photo_filename, next_photo_filename,
- up_href);
-
- html
- << "\n"
- << "\n";
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: IndexImage::generate_nav_buttons
-// Access: Private
-// Description: Outputs the HTML code to generate the next, prev,
-// up buttons when viewing each reduced image.
-////////////////////////////////////////////////////////////////////
-void IndexImage::
-generate_nav_buttons(ostream &html, const Filename &prev_photo_filename,
- const Filename &next_photo_filename,
- const string &up_href) {
- html << "\n";
-
- bool first_icons = false;
- if (!prev_icon.empty() && !next_icon.empty()) {
- first_icons = true;
- // Use icons to go forward and back.
- Filename prev_icon_href = compose_href("../..", prev_icon);
- if (prev_photo_filename.empty()) {
- html << "
\n";
- } else {
- html << "
\n";
- }
-
- Filename next_icon_href = compose_href("../..", next_icon);
- if (next_photo_filename.empty()) {
- html << "
\n";
- } else {
- html << "
\n";
- }
-
- } else {
- // No prev/next icons; use text to go forward and back.
- if (prev_photo_filename.empty()) {
- html << "(This is the first photo.)\n";
- } else {
- html << "Back to previous photo\n";
- }
-
- if (next_photo_filename.empty()) {
- html << "
(This is the last photo.)\n";
- } else {
- html << "
On to next photo\n";
- }
- }
-
- if (!up_href.empty()) {
- if (!up_icon.empty()) {
- // Use an icon to go up.
- if (!first_icons) {
- html << "
";
- } else {
- html << " ";
- }
- Filename up_icon_href = compose_href("../..", up_icon);
- html << "
\n";
- } else {
- // No up icon; use text to go up.
- html << "
Return to index\n";
- }
- }
- html << "
\n";
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: IndexImage::compute_reduction
-// Access: Private, Static
-// Description: Computes the amount by which the source image must be
-// scaled to fit within the indicated box, and clears
-// the dest_image to the computed size.
-////////////////////////////////////////////////////////////////////
-void IndexImage::
-compute_reduction(const PNMImageHeader &source_image, PNMImage &dest_image,
- int x_size, int y_size) {
- double x_scale = (double)x_size / (double)source_image.get_x_size();
- double y_scale = (double)y_size / (double)source_image.get_y_size();
- double scale = min(x_scale, y_scale);
-
- // Don't ever enlarge an image to fit the rectangle; if the image is
- // smaller than the rectangle, just leave it small.
- scale = min(scale, 1.0);
-
- int new_x_size = (int)(source_image.get_x_size() * scale + 0.5);
- int new_y_size = (int)(source_image.get_y_size() * scale + 0.5);
-
- dest_image.clear(new_x_size, new_y_size,
- source_image.get_num_channels(),
- source_image.get_maxval());
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: IndexImage::draw_box
-// Access: Private, Static
-// Description: Called in dummy mode to draw a little box in black
-// around the border of the empty thumbnail image.
-////////////////////////////////////////////////////////////////////
-void IndexImage::
-draw_box(PNMImage &image) {
- // First, fill it in white.
- image.fill(1, 1, 1);
-
- if (!draw_frames) {
- // Now make the border pixel black. We only need to do this if we
- // aren't drawing frames, since the frames will reveal the shape
- // of the image too.
- int x_size = image.get_x_size();
- int y_size = image.get_y_size();
- for (int xi = 0; xi < x_size; xi++) {
- image.set_xel(xi, 0, 0, 0, 0);
- image.set_xel(xi, y_size - 1, 0, 0, 0);
- }
-
- for (int yi = 1; yi < y_size - 1; yi++) {
- image.set_xel(0, yi, 0, 0, 0);
- image.set_xel(x_size - 1, yi, 0, 0, 0);
- }
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: IndexImage::draw_frame
-// Access: Private, Static
-// Description: Called in draw_frames mode to draw a slide mount in
-// gray on the index image before drawing the thumbnail
-// image in the center.
-////////////////////////////////////////////////////////////////////
-void IndexImage::
-draw_frame(PNMImage &image,
- int frame_left, int frame_top, int frame_width, int frame_height,
- int hole_left, int hole_top, int hole_width, int hole_height) {
- // Gray levels.
- static const RGBColord mid(0.5, 0.5, 0.5);
- static const RGBColord light(0.7, 0.7, 0.7);
- static const RGBColord lighter(0.9, 0.9, 0.9);
- static const RGBColord dark(0.3, 0.3, 0.3);
- static const RGBColord darker(0.1, 0.1, 0.1);
-
- // First, fill in the whole rectangle in gray.
- int xi, yi;
- for (yi = 0; yi < frame_height; yi++) {
- for (xi = 0; xi < frame_width; xi++) {
- image.set_xel(xi + frame_left, yi + frame_top, mid);
- }
- }
-
- // Now draw the bevel.
- for (xi = 0; xi < frame_outer_bevel; xi++) {
- for (yi = xi; yi < frame_height - xi; yi++) {
- // Left edge.
- image.set_xel(xi + frame_left, yi + frame_top, light);
- // Right edge.
- image.set_xel(frame_width - 1 - xi + frame_left, yi + frame_top, dark);
- }
- }
- for (yi = 0; yi < frame_outer_bevel; yi++) {
- for (xi = yi; xi < frame_width - yi; xi++) {
- // Top edge.
- image.set_xel(xi + frame_left, yi + frame_top, lighter);
- // Bottom edge.
- image.set_xel(xi + frame_left, frame_height - 1 - yi + frame_top, darker);
- }
- }
-
- // Interior bevel.
- for (xi = -1; xi >= -frame_inner_bevel; xi--) {
- for (yi = xi; yi < hole_height - xi; yi++) {
- // Left edge.
- image.set_xel(xi + hole_left, yi + hole_top, dark);
- // Right edge.
- image.set_xel(hole_width - 1 - xi + hole_left, yi + hole_top, light);
- }
- }
- for (yi = -1; yi >= -frame_inner_bevel; yi--) {
- for (xi = yi; xi < hole_width - yi; xi++) {
- // Top edge.
- image.set_xel(xi + hole_left, yi + hole_top, darker);
- // Bottom edge.
- image.set_xel(xi + hole_left, hole_height - 1 - yi + hole_top, lighter);
- }
- }
-
- // We don't have to cut out the hole, since the thumbnail image will
- // do that when it is placed.
-}
diff --git a/pandaapp/src/indexify/indexImage.h b/pandaapp/src/indexify/indexImage.h
deleted file mode 100644
index 87b208c1e8..0000000000
--- a/pandaapp/src/indexify/indexImage.h
+++ /dev/null
@@ -1,96 +0,0 @@
-// Filename: indexImage.h
-// Created by: drose (03Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#ifndef INDEXIMAGE_H
-#define INDEXIMAGE_H
-
-#include "pandatoolbase.h"
-
-#include "filename.h"
-#include "pvector.h"
-
-class RollDirectory;
-class Photo;
-class PNMTextMaker;
-class PNMImage;
-class PNMImageHeader;
-
-////////////////////////////////////////////////////////////////////
-// Class : IndexImage
-// Description : An aggregate image containing several thumbnails, one
-// for each of several photos. A roll directory will
-// collect its photos into one or more IndexImages.
-////////////////////////////////////////////////////////////////////
-class IndexImage {
-public:
- IndexImage(RollDirectory *dir, int index);
- ~IndexImage();
-
- bool add_photo(int index);
- bool generate_images(const Filename &archive_dir, PNMTextMaker *text_maker);
- bool make_reduced_image(Photo *photo, PNMImage &reduced_image,
- bool generate_index_image, bool force_reduced);
-
- bool generate_html(ostream &root_html, const Filename &archive_dir,
- const Filename &roll_dir_root);
-
- bool copy_reduced(const Filename &archive_dir);
-
- void output(ostream &out) const;
- void write(ostream &out, int indent_level) const;
-
-private:
- bool generate_reduced_html(ostream &html, Photo *photo, int photo_index,
- int pi, const Filename &roll_dir_root);
- void generate_nav_buttons(ostream &html, const Filename &prev_photo_filename,
- const Filename &next_photo_filename,
- const string &up_href);
-
- static void compute_reduction(const PNMImageHeader &source_image,
- PNMImage &dest_image,
- int x_size, int y_size);
- static void draw_box(PNMImage &image);
-
- static void draw_frame(PNMImage &image,
- int frame_left, int frame_top,
- int frame_width, int frame_height,
- int hole_left, int hole_top,
- int hole_width, int hole_height);
-
-private:
- RollDirectory *_dir;
- int _index;
- string _name;
-
- class PhotoInfo {
- public:
- int _photo_index;
- int _x_place;
- int _y_place;
- };
-
- typedef pvector Photos;
- Photos _photos;
-
- int _index_x_size;
- int _index_y_size;
- string _index_basename;
-};
-
-INLINE ostream &operator << (ostream &out, const IndexImage &d) {
- d.output(out);
- return out;
-}
-
-#endif
diff --git a/pandaapp/src/indexify/indexParameters.cxx b/pandaapp/src/indexify/indexParameters.cxx
deleted file mode 100644
index 88d7022eb9..0000000000
--- a/pandaapp/src/indexify/indexParameters.cxx
+++ /dev/null
@@ -1,296 +0,0 @@
-// Filename: indexParameters.cxx
-// Created by: drose (04Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#include "indexParameters.h"
-
-// User parameters
-int max_index_size_array[2] = { 700, 700 };
-int thumb_size_array[2] = { 150, 150 };
-
-int thumb_caption_height = 12;
-int caption_font_size = 12;
-
-int thumb_space_array[2] = { 12, 12 };
-
-double frame_reduction_factor = 0.75;
-int frame_outer_bevel = 2;
-int frame_inner_bevel = 1;
-
-int reduced_size_array[2] = { 800, 700 };
-
-Filename archive_dir;
-
-Filename prev_icon;
-Filename next_icon;
-Filename up_icon;
-Filename movie_icon;
-Filename sound_icon;
-
-////////////////////////////////////////////////////////////////////
-// Function: get_movie_icon
-// Description: Reads the movie icon filename and returns it as an
-// image, if possible. Returns a valid image if
-// successful, an invalid one otherwise.
-////////////////////////////////////////////////////////////////////
-const PNMImage &
-get_movie_icon() {
- static PNMImage movie_icon_image;
- static bool got_image = false;
-
- if (!got_image) {
- if (!movie_icon.empty()) {
- Filename icon_filename(archive_dir, movie_icon);
- nout << "Reading " << icon_filename << "\n";
- movie_icon_image.read(icon_filename);
- }
- got_image = true;
- }
-
- return movie_icon_image;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: get_sound_icon
-// Description: Reads the sound icon filename and returns it as an
-// image, if possible. Returns a valid image if
-// successful, an invalid one otherwise.
-////////////////////////////////////////////////////////////////////
-const PNMImage &
-get_sound_icon() {
- static PNMImage sound_icon_image;
- static bool got_image = false;
-
- if (!got_image) {
- if (!sound_icon.empty()) {
- Filename icon_filename(archive_dir, sound_icon);
- nout << "Reading " << icon_filename << "\n";
- sound_icon_image.read(icon_filename);
- }
- got_image = true;
- }
-
- return sound_icon_image;
-}
-
-bool force_regenerate = false;
-bool format_rose = false;
-bool sort_date = false;
-bool dummy_mode = false;
-bool draw_frames = false;
-bool omit_roll_headers = false;
-DSearchPath cm_search;
-bool omit_full_links = false;
-bool omit_complete = false;
-bool caption_frame_numbers = false;
-
-
-// Computed parameters
-int thumb_count_x;
-int thumb_count_y;
-int max_thumbs;
-int actual_index_width;
-
-int thumb_interior_width;
-int thumb_interior_height;
-
-////////////////////////////////////////////////////////////////////
-// Function: finalize_parameters
-// Description: This is called after all user parameters have been
-// changed, to do whatever computations are required for
-// the other parameters that are based on the user
-// parameters.
-////////////////////////////////////////////////////////////////////
-void
-finalize_parameters() {
- thumb_count_x =
- (max_index_width - thumb_x_space) / (thumb_width + thumb_x_space);
- thumb_count_y =
- (max_index_height - thumb_y_space) / (thumb_height + thumb_caption_height + thumb_y_space);
-
- max_thumbs = thumb_count_x * thumb_count_y;
-
- actual_index_width = thumb_x_space + thumb_count_x * (thumb_width + thumb_x_space);
-
- if (draw_frames) {
- thumb_interior_width = (int)(thumb_width * frame_reduction_factor + 0.5);
- thumb_interior_height = (int)(thumb_height * frame_reduction_factor + 0.5);
- } else {
- thumb_interior_width = thumb_width;
- thumb_interior_height = thumb_height;
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: compose_href
-// Description: Combines a user-supplied prefix with a relative
-// directory to generate the appropriate href to the
-// file.
-//
-// rel_dir is the relative path to archive_dir.
-// user_prefix is the string the user indicated as the
-// relative or absolute path to the file's parent
-// directory from archive_dir. basename is the name
-// of the file, or empty if the filename is part of
-// user_prefix.
-////////////////////////////////////////////////////////////////////
-Filename
-compose_href(const Filename &rel_dir, const Filename &user_prefix,
- const Filename &basename) {
- Filename result;
-
- if (user_prefix.empty()) {
- result = rel_dir;
-
- } else {
- // Check to see if the user prefix begins with a URL designator,
- // like http:// or ftp://.
- size_t ui = 0;
- while (ui < user_prefix.length() && isalpha(user_prefix[ui])) {
- ui++;
- }
- bool is_url = (user_prefix.get_fullpath().substr(ui, 3) == "://");
-
- if (!is_url && user_prefix.is_local()) {
- Filename rel_user_dir(rel_dir, user_prefix);
- result = rel_user_dir;
- result.standardize();
-
- } else {
- result = user_prefix;
- }
- }
-
- if (basename.empty()) {
- return result;
- } else {
- return Filename(result, basename);
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: escape_html
-// Description: Returns the input string with all invalid characters
-// for HTML code replaced by their HTML equivalents.
-////////////////////////////////////////////////////////////////////
-string
-escape_html(const string &input) {
- static const struct {
- const char *name;
- int code;
- } tokens[] = {
- { "amp", '&' }, { "lt", '<' }, { "gt", '>' }, { "quot", '"' },
- { "nbsp", 160 },
-
- { "iexcl", 161 }, { "cent", 162 }, { "pound", 163 }, { "curren", 164 },
- { "yen", 165 }, { "brvbar", 166 }, { "brkbar", 166 }, { "sect", 167 },
- { "uml", 168 }, { "die", 168 }, { "copy", 169 }, { "ordf", 170 },
- { "laquo", 171 }, { "not", 172 }, { "shy", 173 }, { "reg", 174 },
- { "macr", 175 }, { "hibar", 175 }, { "deg", 176 }, { "plusmn", 177 },
- { "sup2", 178 }, { "sup3", 179 }, { "acute", 180 }, { "micro", 181 },
- { "para", 182 }, { "middot", 183 }, { "cedil", 184 }, { "sup1", 185 },
- { "ordm", 186 }, { "raquo", 187 }, { "frac14", 188 }, { "frac12", 189 },
- { "frac34", 190 }, { "iquest", 191 }, { "Agrave", 192 }, { "Aacute", 193 },
- { "Acirc", 194 }, { "Atilde", 195 }, { "Auml", 196 }, { "Aring", 197 },
- { "AElig", 198 }, { "Ccedil", 199 }, { "Egrave", 200 }, { "Eacute", 201 },
- { "Ecirc", 202 }, { "Euml", 203 }, { "Igrave", 204 }, { "Iacute", 205 },
- { "Icirc", 206 }, { "Iuml", 207 }, { "ETH", 208 }, { "Dstrok", 208 },
- { "Ntilde", 209 }, { "Ograve", 210 }, { "Oacute", 211 }, { "Ocirc", 212 },
- { "Otilde", 213 }, { "Ouml", 214 }, { "times", 215 }, { "Oslash", 216 },
- { "Ugrave", 217 }, { "Uacute", 218 }, { "Ucirc", 219 }, { "Uuml", 220 },
- { "Yacute", 221 }, { "THORN", 222 }, { "szlig", 223 }, { "agrave", 224 },
- { "aacute", 225 }, { "acirc", 226 }, { "atilde", 227 }, { "auml", 228 },
- { "aring", 229 }, { "aelig", 230 }, { "ccedil", 231 }, { "egrave", 232 },
- { "eacute", 233 }, { "ecirc", 234 }, { "euml", 235 }, { "igrave", 236 },
- { "iacute", 237 }, { "icirc", 238 }, { "iuml", 239 }, { "eth", 240 },
- { "ntilde", 241 }, { "ograve", 242 }, { "oacute", 243 }, { "ocirc", 244 },
- { "otilde", 245 }, { "ouml", 246 }, { "divide", 247 }, { "oslash", 248 },
- { "ugrave", 249 }, { "uacute", 250 }, { "ucirc", 251 }, { "uuml", 252 },
- { "yacute", 253 }, { "thorn", 254 }, { "yuml", 255 },
-
- { NULL, 0 },
- };
-
- string result;
- for (string::const_iterator ii = input.begin();
- ii != input.end();
- ++ii) {
- int code = (unsigned char)(*ii);
- bool found_match = false;
- for (int i = 0; !found_match && tokens[i].name != NULL; i++) {
- if (code == tokens[i].code) {
- result += '&';
- result += tokens[i].name;
- result += ';';
- found_match = true;
- }
- }
-
- if (!found_match) {
- result += (*ii);
- }
- }
-
- return result;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: copy_file
-// Description: Copies a file into the named directory, if it does
-// not already exist there. Returns true if
-// successful, false otherwise.
-////////////////////////////////////////////////////////////////////
-bool
-copy_file(const Filename &source_file, const Filename &dest_dir) {
- Filename dest_file = source_file;
- dest_file.set_dirname(dest_dir);
-
- if (dest_file.exists()) {
- return true;
- }
-
- if (!source_file.exists()) {
- return false;
- }
-
-#if defined(HAVE_UNISTD_H) && !defined(WIN32)
- // Try to make a hard link.
- string os_source_file = source_file.to_os_specific();
- string os_dest_file = dest_file.to_os_specific();
- if (link(os_source_file.c_str(), os_dest_file.c_str()) == 0) {
- cerr << "Linked " << source_file << " to " << dest_file << "\n";
- return true;
- }
-#endif
-
- ifstream in;
- if (!source_file.open_read(in)) {
- cerr << "Unable to read " << source_file << "\n";
- return false;
- }
- ofstream out;
- if (!dest_file.open_write(out)) {
- cerr << "Unable to write " << dest_file << "\n";
- return false;
- }
-
- cerr << "Copying " << source_file << " to " << dest_file << "\n";
-
- int c = in.get();
- while (in && !in.eof()) {
- out.put(c);
- c = in.get();
- }
-
- return in.eof();
-}
diff --git a/pandaapp/src/indexify/indexParameters.h b/pandaapp/src/indexify/indexParameters.h
deleted file mode 100644
index 1cf74ad53c..0000000000
--- a/pandaapp/src/indexify/indexParameters.h
+++ /dev/null
@@ -1,154 +0,0 @@
-// Filename: indexParameters.h
-// Created by: drose (04Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#ifndef INDEXPARAMETERS_H
-#define INDEXPARAMETERS_H
-
-#include "pandatoolbase.h"
-
-#include "filename.h"
-#include "dSearchPath.h"
-#include "pnmImage.h"
-
-// Some of these constants may be modified by command-line parameters
-// from the user.
-
-// The maximum size of the index image. It will shrink vertically to
-// fit the images it contains, and it will shrink horizontally to fit
-// a complete row of images (even if it does not contain a complete
-// row). It will never be larger than this.
-extern int max_index_size_array[2];
-#define max_index_width (max_index_size_array[0])
-#define max_index_height (max_index_size_array[1])
-
-// The size of the individual thumbnail images, including the frames
-// (if present). Thumbnail images are scaled to fit within this box.
-extern int thumb_size_array[2];
-#define thumb_width (thumb_size_array[0])
-#define thumb_height (thumb_size_array[1])
-
-// The total number of pixels reserved for the caption under each
-// thumbnail image. This is the caption_font_size plus whatever
-// spacing should be included between the caption and the image.
-extern int thumb_caption_height;
-
-// The size in pixels of the caption font. This depends on the point
-// size of the font as reported by FreeType, so the actual height of
-// the letters might be slightly lower or higher than this, depending
-// on the font.
-extern int caption_font_size;
-
-// The amount of space, in pixels, between each two neighboring
-// thumbnail images, and around the overall index image.
-extern int thumb_space_array[2];
-#define thumb_x_space (thumb_space_array[0])
-#define thumb_y_space (thumb_space_array[1])
-
-// The ratio by which the thumbnail images are reduced further when
-// frames are drawn, to allow room for a frame that resembles a slide
-// mount.
-extern double frame_reduction_factor;
-
-// The number of pixels of thickness to draw for the frames' outer
-// bevels and inner bevels, respectively.
-extern int frame_outer_bevel;
-extern int frame_inner_bevel;
-
-// The size of the reduced images on the individual image pages. The
-// source image will be scaled to fit within this rectangle.
-extern int reduced_size_array[2];
-#define reduced_width (reduced_size_array[0])
-#define reduced_height (reduced_size_array[1])
-
-// The directory at the root of the output hierarchy (or as specified
-// by -a on the command line).
-extern Filename archive_dir;
-
-// The filenames (or URLS) to the icon images for navigating the
-// individual image pages.
-extern Filename prev_icon;
-extern Filename next_icon;
-extern Filename up_icon;
-extern Filename movie_icon;
-extern Filename sound_icon;
-
-const PNMImage &get_movie_icon();
-const PNMImage &get_sound_icon();
-
-// True to regenerate every image, whether it appears to need it or
-// not.
-extern bool force_regenerate;
-
-// True to use the Rose formatting convention for roll directory names.
-extern bool format_rose;
-
-// True to sort roll directory names by date. Useful only with -r.
-extern bool sort_date;
-
-// True to place dummy thumbnails instead of loading actual images.
-extern bool dummy_mode;
-
-// True to draw frames (slide mounts) around each thumbnail image.
-extern bool draw_frames;
-
-// True to avoid introducing each roll directory on the index page
-// with its own little header. This also ignored the roll.cm file if
-// it exists.
-extern bool omit_roll_headers;
-extern DSearchPath cm_search;
-
-// True to omit links to the full-size source images.
-extern bool omit_full_links;
-
-// True to omit complete.htm
-extern bool omit_complete;
-
-// True to caption photos with just a frame number instead of the
-// whole image basename. This only works if the photo image filenames
-// consist of the roll directory name concatenated with a frame number.
-extern bool caption_frame_numbers;
-
-
-void finalize_parameters();
-
-
-
-// The following parameters are all computed based on the above.
-
-// The number of thumbnail images that fit across an index image,
-// horizontally and vertically.
-extern int thumb_count_x;
-extern int thumb_count_y;
-
-// The total number of thumbnail images within each index image.
-extern int max_thumbs;
-
-// The number of pixels wide each index image will actually be, based
-// on thumb_count_x.
-extern int actual_index_width;
-
-// The actual size of the rectangle each thumbnail image must be
-// scaled into, accounting for the presence of a frame.
-extern int thumb_interior_width;
-extern int thumb_interior_height;
-
-Filename compose_href(const Filename &rel_dir, const Filename &user_prefix,
- const Filename &basename = Filename());
-
-string escape_html(const string &input);
-bool copy_file(const Filename &source_file, const Filename &dest_dir);
-
-#endif
-
-
diff --git a/pandaapp/src/indexify/indexify.cxx b/pandaapp/src/indexify/indexify.cxx
deleted file mode 100644
index 88460773ae..0000000000
--- a/pandaapp/src/indexify/indexify.cxx
+++ /dev/null
@@ -1,738 +0,0 @@
-// Filename: indexify.cxx
-// Created by: drose (03Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#include "indexify.h"
-#include "rollDirectory.h"
-#include "pnotify.h"
-#include "pnmTextMaker.h"
-#include "default_font.h"
-#include "default_index_icons.h"
-#include "indexParameters.h"
-#include "string_utils.h"
-
-#include
-
-////////////////////////////////////////////////////////////////////
-// Function: Indexify::Constructor
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-Indexify::
-Indexify() {
- clear_runlines();
- add_runline("[opts] roll1-dir roll2-dir [roll3-dir ...]");
- add_runline("[opts] full/*");
-
- set_program_description
- ("This program reads a collection of directories containing photo "
- "archives (typically JPEG files), and will generate a number of "
- "thumbnail images and a series of HTML pages to browse them. It is "
- "especially useful in preparation for burning the photo archives to "
- "CD.\n\n"
-
- "A number of directories is named on the command line; each "
- "directory must contain a number of image files, and all directories "
- "should be within the same parent directory. Each directory is "
- "considered a \"roll\", which may or may not correspond to a physical "
- "roll of film, and the photos within each directory are grouped "
- "correspondingly on the generated HTML pages. One common special case "
- "is in which all the roll directories are found in the subdirectory "
- "named \"full\" (e.g., the second example above) or \"reduced\". This "
- "keeps the root directory nice and clean.\n\n"
-
- "If a file exists by the same name as an image file but with the "
- "extension \"cm\", that file is taken to be a HTML comment about that "
- "particular image and is inserted the HTML page for that image. "
- "Similarly, if there is a file within a roll directory with the same "
- "name as the directory itself (but with the extension \"cm\"), that file "
- "is inserted into the front page to introduce that particular roll. "
- "Finally, a file with the name of the directory, but with the extension "
- "\"ds\" may contain a brief one-line description of the directory, for "
- "the toplevel index page.\n\n"
-
- "Normally, all image files with the specified extension (normally "
- "\"jpg\") within a roll directory are included in the index, and sorted "
- "into alphabetical (or numerical) order. If you wish to specify a "
- "different order, or use only a subset of the images in a directory, "
- "create a file in the roll directory with the same name as the "
- "directory itself, and the extension \"ls\". This file should "
- "simply list the filenames (with or without extension) within the "
- "roll directory in the order they should be listed. If the ls "
- "file exists but is empty, it indicates that the files should be "
- "listed in reverse order, as from a camera that loads its film "
- "upside-down.");
-
- add_option
- ("t", "title", 0,
- "Specifies the title to give to the front HTML page.",
- &Indexify::dispatch_string, NULL, &_front_title);
-
- add_option
- ("a", "archive-dir", 0,
- "Write the generated files to the indicated directory, instead of "
- "the directory above roll1-dir.",
- &Indexify::dispatch_filename, NULL, &archive_dir);
-
- add_option
- ("r", "relative-dir", 0,
- "When -a is specified to place the generated html files in a directory "
- "other than the default, you may need "
- "to specify how the html files will address the roll directories. This "
- "parameter specifies the relative path to the directory above the roll "
- "directories, from the directory named by -a.",
- &Indexify::dispatch_filename, NULL, &_roll_dir_root);
-
- add_option
- ("f", "", 0,
- "Forces the regeneration of all reduced and thumbnail images, even if "
- "image files already exist that seem to be newer than the source "
- "image files.",
- &Indexify::dispatch_none, &force_regenerate);
-
- add_option
- ("r", "", 0,
- "Specifies that roll directory names are encoded using the Rose "
- "convention of six digits: mmyyss, where mm and yy are the month and "
- "year, and ss is a sequence number of the roll within the month. This "
- "name will be reformatted to m-yy/s for output.",
- &Indexify::dispatch_none, &format_rose);
-
- add_option
- ("s", "", 0,
- "When used in conjunction with -r, requests sorting of the roll "
- "directory names by date.",
- &Indexify::dispatch_none, &sort_date);
-
- add_option
- ("d", "", 0,
- "Run in \"dummy\" mode; don't load any images, but instead just "
- "draw an empty box indicating where the thumbnails will be.",
- &Indexify::dispatch_none, &dummy_mode);
-
- add_option
- ("slide", "", 0,
- "Draw a frame, like a slide mount, around each thumbnail image.",
- &Indexify::dispatch_none, &draw_frames);
-
- add_option
- ("pe", "extension", 0,
- "Specifies the filename extension (without a leading dot) to identify "
- "photo files within the roll directories. This is normally jpg.",
- &Indexify::dispatch_string, NULL, &_photo_extension);
-
- add_option
- ("me", "extension", 0,
- "Specifies the filename extension (without a leading dot) to identify "
- "movie files within the roll directories. This is normally mov. If "
- "a file exists with the same name as a given photo but with this "
- "extension, it is taken to be a movie associated with the photo, and "
- "a link will be generated to play the movie.",
- &Indexify::dispatch_string, NULL, &_movie_extension);
-
- add_option
- ("se", "extension", 0,
- "Specifies the filename extension (without a leading dot) to identify "
- "sound files within the roll directories. This is normally mp3. If "
- "a file exists with the same name as a given photo but with this "
- "extension, it is taken to be a sound clip associated with the photo, "
- "and a link will be generated to play the clip.",
- &Indexify::dispatch_string, NULL, &_sound_extension);
-
- add_option
- ("i", "", 0,
- "Indicates that default navigation icon images should be generated "
- "into a directory called \"icons\" which will be created within the "
- "directory named by -a. This is meaningful only if -iprev, -inext, "
- "-iup, -imovie, and -isound are not explicitly specified.",
- &Indexify::dispatch_none, &_generate_icons);
-
- add_option
- ("omit-rh", "", 0,
- "Omits roll headers introducing each roll directory, including any "
- "headers defined in roll.cm files.",
- &Indexify::dispatch_none, &omit_roll_headers);
-
- add_option
- ("cmdir", "director", 0,
- "Searches in the named directory for .cm files before searching within "
- "the source archive. This option may be repeated.",
- &Indexify::dispatch_search_path, NULL, &cm_search);
-
- add_option
- ("omit-full", "", 0,
- "Omits links to the full-size images.",
- &Indexify::dispatch_none, &omit_full_links);
-
- add_option
- ("omit-complete", "", 0,
- "Omits the complete.htm index file that lists all thumbnails at once.",
- &Indexify::dispatch_none, &omit_complete);
-
- add_option
- ("caption", "size[,spacing]", 0,
- "Specifies the font size in pixels of the thumbnail captions. If the "
- "optional spacing parameter is included, it is the number of pixels "
- "below each thumbnail that the caption should be placed. Specify "
- "-caption 0 to disable thumbnail captions.",
- &Indexify::dispatch_caption, NULL);
-
- add_option
- ("fnum", "", 0,
- "Writes the frame number of each thumbnail image into the caption "
- "on the index page, instead of the image filename. This only works "
- "if the photo image filenames consist of the roll directory name "
- "concatenated with a frame number.",
- &Indexify::dispatch_none, &caption_frame_numbers);
-
- add_option
- ("font", "fontname", 0,
- "Specifies the filename of the font to use to generate the thumbnail "
- "captions.",
- &Indexify::dispatch_filename, NULL, &_font_filename);
-
- add_option
- ("fontaa", "factor", 0,
- "Specifies a scale factor to apply to the fonts used for captioning "
- "when generating text for the purpose of antialiasing the fonts a "
- "little better than FreeType can do by itself. The letters are "
- "generated large and then scaled to their proper size. Normally this "
- "should be a number in the range 3 to 4 for best effect.",
- &Indexify::dispatch_double, NULL, &_font_aa_factor);
-
- add_option
- ("thumb", "x,y", 0,
- "Specifies the size in pixels of the thumbnail images.",
- &Indexify::dispatch_int_pair, NULL, &thumb_width);
-
- add_option
- ("reduced", "x,y", 0,
- "Specifies the size in pixels of reduced images (images presented after "
- "the first click on a thumbnail).",
- &Indexify::dispatch_int_pair, NULL, &reduced_width);
-
- add_option
- ("space", "x,y", 0,
- "Specifies the x,y spacing between thumbnail images, in pixels.",
- &Indexify::dispatch_int_pair, NULL, &thumb_x_space);
-
- add_option
- ("index", "x,y", 0,
- "Specifies the size in pixels of the index images (the images that "
- "contain an index of thumbnails).",
- &Indexify::dispatch_int_pair, NULL, &max_index_width);
-
- add_option
- ("iprev", "filename", 0,
- "Specifies the relative pathname from the archive directory (or "
- "absolute pathname) to the \"previous\" icon.",
- &Indexify::dispatch_filename, NULL, &prev_icon);
-
- add_option
- ("inext", "filename", 0,
- "Specifies the relative pathname from the archive directory (or "
- "absolute pathname) to the \"next\" icon.",
- &Indexify::dispatch_filename, NULL, &next_icon);
-
- add_option
- ("iup", "filename", 0,
- "Specifies the relative pathname from the archive directory (or "
- "absolute pathname) to the \"up\" icon.",
- &Indexify::dispatch_filename, NULL, &up_icon);
-
- add_option
- ("imovie", "filename", 0,
- "Specifies the relative pathname from the archive directory (or "
- "absolute pathname) to the \"movie\" icon. This is used only if "
- "there are one or more movie files found in the directory.",
- &Indexify::dispatch_filename, NULL, &movie_icon);
-
- add_option
- ("isound", "filename", 0,
- "Specifies the relative pathname from the archive directory (or "
- "absolute pathname) to the \"sound\" icon. This is used only if "
- "there are one or more sound files found in the directory.",
- &Indexify::dispatch_filename, NULL, &sound_icon);
-
- add_option
- ("copyreduced", "", 0,
- "Instead of generating index files, copy key files (such as "
- "*.cm, *.ds) from the full image directory into the reduced "
- "image directory, so that the full image directory may be removed "
- "for generating a reduced-size archive.",
- &Indexify::dispatch_none, &_copy_reduced);
-
- _photo_extension = "jpg";
- _movie_extension = "mov";
- _sound_extension = "mp3";
- _text_maker = (PNMTextMaker *)NULL;
- _font_aa_factor = 4.0;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: Indexify::Destructor
-// Access: Public, Virtual
-// Description:
-////////////////////////////////////////////////////////////////////
-Indexify::
-~Indexify() {
- RollDirs::iterator di;
- for (di = _roll_dirs.begin(); di != _roll_dirs.end(); ++di) {
- RollDirectory *roll_dir = (*di);
- delete roll_dir;
- }
-
- if (_text_maker != (PNMTextMaker *)NULL) {
- delete _text_maker;
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: Indexify::handle_args
-// Access: Protected, Virtual
-// Description: Does something with the additional arguments on the
-// command line (after all the -options have been
-// parsed). Returns true if the arguments are good,
-// false otherwise.
-////////////////////////////////////////////////////////////////////
-bool Indexify::
-handle_args(ProgramBase::Args &args) {
- if (args.empty()) {
- nout << "You must specify the roll directories containing archive photos on the command line.\n";
- return false;
- }
-
- Args::const_iterator ai;
- for (ai = args.begin(); ai != args.end(); ++ai) {
- Filename filename = Filename::from_os_specific(*ai);
- filename.standardize();
- if (filename.is_directory()) {
- string basename = filename.get_basename();
- if (basename == "icons" || basename == "html" ||
- basename == "reduced" || basename == "thumbs") {
- nout << "Ignoring " << filename << "; indexify-generated directory.\n";
-
- } else {
- RollDirectory *roll_dir = new RollDirectory(filename);
- _roll_dirs.push_back(roll_dir);
- }
-
- } else if (filename.exists()) {
- nout << "Ignoring " << filename << "; not a directory.\n";
-
- } else {
- nout << filename << " does not exist.\n";
- return false;
- }
- }
-
- return true;
-}
-
-class SortRollDirs {
-public:
- bool operator () (const RollDirectory *a, const RollDirectory *b) const {
- return a->sort_date_before(*b);
- }
-};
-
-////////////////////////////////////////////////////////////////////
-// Function: Indexify::post_command_line
-// Access: Protected, Virtual
-// Description: This is called after the command line has been
-// completely processed, and it gives the program a
-// chance to do some last-minute processing and
-// validation of the options and arguments. It should
-// return true if everything is fine, false if there is
-// an error.
-////////////////////////////////////////////////////////////////////
-bool Indexify::
-post_command_line() {
- if (_roll_dirs.empty()) {
- nout << "No roll directories.\n";
- return false;
- }
-
- if (archive_dir.empty()) {
- // Choose a default archive directory, above the first roll directory.
- archive_dir = _roll_dirs.front()->get_dir().get_dirname();
- string parent_dirname = archive_dir.get_basename();
- if (parent_dirname == "full" || parent_dirname == "reduced") {
- // As a special case, if the subdirectory name is "full" or
- // "reduced", use the directory above that.
- archive_dir = archive_dir.get_dirname();
- }
- if (archive_dir.empty()) {
- archive_dir = ".";
- }
- }
- archive_dir.standardize();
-
- if (!_roll_dir_root.empty()) {
- _roll_dir_root.standardize();
- }
-
- // Sort the roll directories, if specified.
- if (format_rose && sort_date) {
- sort(_roll_dirs.begin(), _roll_dirs.end(), SortRollDirs());
- }
-
- // Update the next/prev pointers in each roll directory so we can
- // browse from one to the other.
- RollDirectory *prev_roll_dir = (RollDirectory *)NULL;
- RollDirs::iterator di;
- for (di = _roll_dirs.begin(); di != _roll_dirs.end(); ++di) {
- RollDirectory *roll_dir = (*di);
- if (prev_roll_dir != (RollDirectory *)NULL) {
- roll_dir->_prev = prev_roll_dir;
- prev_roll_dir->_next = roll_dir;
- }
- prev_roll_dir = roll_dir;
- }
-
- if (_front_title.empty()) {
- // Supply a default title.
- if (_roll_dirs.size() == 1) {
- _front_title = _roll_dirs.front()->get_name();
- } else {
- _front_title = _roll_dirs.front()->get_name() + " through " + _roll_dirs.back()->get_name();
- }
- }
-
- if (caption_font_size != 0) {
- if (!_font_filename.empty()) {
- _text_maker = new PNMTextMaker(_font_filename, 0);
- if (!_text_maker->is_valid()) {
- delete _text_maker;
- _text_maker = (PNMTextMaker *)NULL;
- }
- }
-
- if (_text_maker == (PNMTextMaker *)NULL) {
- _text_maker = new PNMTextMaker((const char *)default_font,
- default_font_size, 0);
- if (!_text_maker->is_valid()) {
- nout << "Unable to open default font.\n";
- delete _text_maker;
- _text_maker = (PNMTextMaker *)NULL;
- }
- }
-
- if (_text_maker != (PNMTextMaker *)NULL) {
- _text_maker->set_scale_factor(_font_aa_factor);
- _text_maker->set_pixel_size(caption_font_size);
- _text_maker->set_align(PNMTextMaker::A_center);
- }
- }
-
- if (_generate_icons) {
- if (prev_icon.empty()) {
- prev_icon = Filename("icons", default_left_icon_filename);
- Filename icon_filename(archive_dir, prev_icon);
-
- if (force_regenerate || !icon_filename.exists()) {
- nout << "Generating " << icon_filename << "\n";
- icon_filename.make_dir();
- icon_filename.set_binary();
-
- ofstream output;
- if (!icon_filename.open_write(output)) {
- nout << "Unable to write to " << icon_filename << "\n";
- exit(1);
- }
- output.write((const char *)default_left_icon, default_left_icon_len);
- }
- }
- if (next_icon.empty()) {
- next_icon = Filename("icons", default_right_icon_filename);
- Filename icon_filename(archive_dir, next_icon);
- if (force_regenerate || !icon_filename.exists()) {
- nout << "Generating " << icon_filename << "\n";
- icon_filename.make_dir();
- icon_filename.set_binary();
-
- ofstream output;
- if (!icon_filename.open_write(output)) {
- nout << "Unable to write to " << icon_filename << "\n";
- exit(1);
- }
- output.write((const char *)default_right_icon, default_right_icon_len);
- }
- }
- if (up_icon.empty()) {
- up_icon = Filename("icons", default_up_icon_filename);
- Filename icon_filename(archive_dir, up_icon);
- if (force_regenerate || !icon_filename.exists()) {
- nout << "Generating " << icon_filename << "\n";
- icon_filename.make_dir();
- icon_filename.set_binary();
-
- ofstream output;
- if (!icon_filename.open_write(output)) {
- nout << "Unable to write to " << icon_filename << "\n";
- exit(1);
- }
- output.write((const char *)default_up_icon, default_up_icon_len);
- }
- }
- if (movie_icon.empty()) {
- movie_icon = Filename("icons", default_movie_icon_filename);
- Filename icon_filename(archive_dir, movie_icon);
- if (force_regenerate || !icon_filename.exists()) {
- nout << "Generating " << icon_filename << "\n";
- icon_filename.make_dir();
- icon_filename.set_binary();
-
- ofstream output;
- if (!icon_filename.open_write(output)) {
- nout << "Unable to write to " << icon_filename << "\n";
- exit(1);
- }
- output.write((const char *)default_movie_icon, default_movie_icon_len);
- }
- }
- if (sound_icon.empty()) {
- sound_icon = Filename("icons", default_sound_icon_filename);
- Filename icon_filename(archive_dir, sound_icon);
- if (force_regenerate || !icon_filename.exists()) {
- nout << "Generating " << icon_filename << "\n";
- icon_filename.make_dir();
- icon_filename.set_binary();
-
- ofstream output;
- if (!icon_filename.open_write(output)) {
- nout << "Unable to write to " << icon_filename << "\n";
- exit(1);
- }
- output.write((const char *)default_sound_icon, default_sound_icon_len);
- }
- }
- }
-
- finalize_parameters();
-
-
- return ProgramBase::post_command_line();
-}
-
-
-////////////////////////////////////////////////////////////////////
-// Function: Indexify::dispatch_caption
-// Access: Protected, Static
-// Description: Dispatch function for the -caption parameter, which
-// takes either one or two numbers separated by a comma,
-// representing the caption font size and the optional
-// pixel spacing of the caption under the image.
-////////////////////////////////////////////////////////////////////
-bool Indexify::
-dispatch_caption(const string &opt, const string &arg, void *) {
- vector_string words;
- tokenize(arg, words, ",");
-
- int caption_spacing = 0;
-
- bool okflag = false;
- if (words.size() == 1) {
- okflag =
- string_to_int(words[0], caption_font_size);
-
- } else if (words.size() == 2) {
- okflag =
- string_to_int(words[0], caption_font_size) &&
- string_to_int(words[1], caption_spacing);
- }
-
- if (!okflag) {
- nout << "-" << opt
- << " requires one or two integers separated by a comma.\n";
- return false;
- }
-
- thumb_caption_height = caption_font_size + caption_spacing;
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: Indexify::run
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-void Indexify::
-run() {
- bool all_ok = true;
-
- RollDirs::iterator di;
- for (di = _roll_dirs.begin(); di != _roll_dirs.end(); ++di) {
- RollDirectory *roll_dir = (*di);
- if (!roll_dir->scan(_photo_extension, _movie_extension, _sound_extension)) {
- nout << "Unable to read " << *roll_dir << "\n";
- all_ok = false;
- }
- roll_dir->collect_index_images();
- }
-
- if (!all_ok) {
- exit(1);
- }
-
- if (_copy_reduced) {
- do_copy_reduced();
- } else {
- do_generate_images();
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: Indexify::do_generate_images
-// Access: Public
-// Description: The main work function. Generates all of the reduced
-// images and the html code.
-////////////////////////////////////////////////////////////////////
-void Indexify::
-do_generate_images() {
- // First, generate all the images.
- RollDirs::iterator di;
- for (di = _roll_dirs.begin(); di != _roll_dirs.end(); ++di) {
- RollDirectory *roll_dir = (*di);
- if (!roll_dir->generate_images(archive_dir, _text_maker)) {
- nout << "Failure.\n";
- exit(1);
- }
- }
-
- // Then go back and generate the HTML.
- for (di = _roll_dirs.begin(); di != _roll_dirs.end(); ++di) {
- RollDirectory *roll_dir = (*di);
- if (!roll_dir->generate_html(archive_dir, _roll_dir_root)) {
- nout << "Failure.\n";
- exit(1);
- }
- }
-
- if (!omit_complete) {
- // Generate the complete index that browses all the roll directories
- // at once.
- Filename complete_filename(archive_dir, "html/complete.htm");
- nout << "Generating " << complete_filename << "\n";
- complete_filename.set_text();
- ofstream complete_html;
- if (!complete_filename.open_write(complete_html)) {
- nout << "Unable to write to " << complete_filename << "\n";
- exit(1);
- }
-
- complete_html
- << "\n"
- << "\n"
- << "" << _front_title << "\n"
- << "\n"
- << "\n"
- << "" << _front_title << "
\n";
-
- for (di = _roll_dirs.begin(); di != _roll_dirs.end(); ++di) {
- RollDirectory *roll_dir = (*di);
- complete_html
- << roll_dir->get_comment_html()
- << roll_dir->get_index_html();
- }
-
- complete_html << "\n";
- if (!up_icon.empty()) {
- // Use an icon to go up.
- Filename up_icon_href = compose_href("..", up_icon);
- complete_html
- << "
\n";
- } else {
- // No up icon; use text to go up.
- complete_html
- << "
Return to index\n";
- }
- complete_html << "
\n";
-
- complete_html
- << "\n"
- << "\n";
- }
-
- // And finally, generate the index HTML file that sits on the top of
- // all of this.
- Filename index_filename(archive_dir, "index.htm");
- nout << "Generating " << index_filename << "\n";
- index_filename.set_text();
- ofstream index_html;
- if (!index_filename.open_write(index_html)) {
- nout << "Unable to write to " << index_filename << "\n";
- exit(1);
- }
-
- index_html
- << "\n"
- << "\n"
- << "" << _front_title << "\n"
- << "\n"
- << "\n"
- << "" << _front_title << "
\n"
- << "\n";
-
- if (!omit_complete) {
- index_html
- << "(complete archive)\n";
- }
-
- index_html
- << "\n"
- << "\n";
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: Indexify::do_copy_reduced
-// Access: Public
-// Description: The main work function in -copyreduced mode. Simply
-// copies key files from the full directory to the
-// reduced directory.
-////////////////////////////////////////////////////////////////////
-void Indexify::
-do_copy_reduced() {
- RollDirs::iterator di;
- for (di = _roll_dirs.begin(); di != _roll_dirs.end(); ++di) {
- RollDirectory *roll_dir = (*di);
- if (!roll_dir->copy_reduced(archive_dir)) {
- nout << "Failure.\n";
- exit(1);
- }
- }
-}
-
-
-int main(int argc, char *argv[]) {
- Indexify prog;
- prog.parse_command_line(argc, argv);
- prog.run();
- return 0;
-}
diff --git a/pandaapp/src/indexify/indexify.h b/pandaapp/src/indexify/indexify.h
deleted file mode 100644
index 49a980ef1e..0000000000
--- a/pandaapp/src/indexify/indexify.h
+++ /dev/null
@@ -1,66 +0,0 @@
-// Filename: indexify.h
-// Created by: drose (03Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#ifndef INDEXIFY_H
-#define INDEXIFY_H
-
-#include "pandatoolbase.h"
-
-#include "programBase.h"
-#include "filename.h"
-#include "pvector.h"
-
-class RollDirectory;
-class PNMTextMaker;
-
-////////////////////////////////////////////////////////////////////
-// Class : Indexify
-// Description : A program to generate a series of thumbnail images
-// and HTML pages to view a number of image files in an
-// archive directory, before writing the archive to a
-// permanent medium like a CD.
-////////////////////////////////////////////////////////////////////
-class Indexify : public ProgramBase {
-public:
- Indexify();
- virtual ~Indexify();
-
-protected:
- virtual bool handle_args(Args &args);
- virtual bool post_command_line();
-
- static bool dispatch_caption(const string &opt, const string &arg, void *var);
-
-public:
- void run();
- void do_generate_images();
- void do_copy_reduced();
-
- string _front_title;
- Filename _roll_dir_root;
- string _photo_extension;
- string _movie_extension;
- string _sound_extension;
- Filename _font_filename;
- bool _generate_icons;
- double _font_aa_factor;
- bool _copy_reduced;
-
- typedef pvector RollDirs;
- RollDirs _roll_dirs;
-
- PNMTextMaker *_text_maker;
-};
-
-#endif
diff --git a/pandaapp/src/indexify/left.png b/pandaapp/src/indexify/left.png
deleted file mode 100755
index 3b72aca091eb3696bd6f5f0852901b669d94f29e..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 536
zcmV+z0_XjSP)+SB{;p5NL*TTuowY|cwx4fsYwwa`>jF_N)jFoqWk8FB_U~F_%
zU}sNSU_=n7?f?J*mPtfGRCwBbliiZ+AP9s3<$cMDRnmneY@&&7ASDFk=D_?7p$OQWM*_GUDlhN9S})kLgETiS?wCk
zVy@T>&pr@z^4{As*%UZeXW#5Q7~s2G62RBlfasM`J89yrtrkJr-9&|oEH=@k8w$T2
z?O_wd+$lUUO|D~3Mq{w#Hd|-F`|BD)COwyl+!z-UP6dW)xzN>YTc``!NczYA&*f@-
zCybkdp)v2N9;mtZ*VI<7Eug2erG7pCGkW$#;oO8en6}Tt3#_37_{`2}qlwAUn!t0O
ajjeyZ&k^ay1i?K30000hxUrnS(hGeCiZC4lwIR;F_)ysb=Z3~8z+uN05GjsqGJR^l2_;+&tGo0?a`
z5R#EutdLk#q5z~a^At)lQWXkHlX5bX6;kqZ6EpMl6ueW*fD#_1=^3fTIttk!UWP+z
qW{F;Mey)x}aB4wGYHm_$k%FP6rK!)0FGqkjFnGH9xvXz+nhT
z4*+985DaLo6Tku>01SpG#`q5qNF@{q0)xU8ZhKV#1W^DC1tVeKV?baC6oA2%5E!J|
zR&{HX9?nlgQ{U!L#POWs_6{v0*Ih(^MdC)qumI#AtboD-LtzS+Ax2RV1cv?K`(9Q-
zih*v0si|B0Y2pqQx9hFF29y=qU;T&EM2<}an+NdR_g6X=4LX-nF2XA$*r&E(
zEO}}G676*%gLSK~ivHKc&NE}L*>V{;OIru=q#$_aNC_=ZKhi;hc(=jrQ&v~HXycHw`QA9R)y$6$>CU{?k0o7e(a$_=!%;=M@{zbtnXZp3f^_K?^Om4O;;7Z2seyMZr
z53_?WYJi*6u^@7%*Zc;U*>kjR5l=Tx9&eEKx8?XTx^
z@6-R@akZ|HQ59IanvZq0U8V+GN^7of4Oz8gM`*pdazB%s5%_!UAJ$#lqI)>9TULI9
zfST9AR@UrHEc^utoF
z%xkA+a8riwAQ`PXlr1YFR64YtZ>Rg*9L=p^V2_?m69mK<6AfImi=4`Nb>b7w(=LOV
zCwwxbA9_z~&&GzGC-d9tv)B}6j-eOI3ySI1pCJwVwBG21Z`A3IGFjcZFZuZOfBr~~tchBJOLDZP
zdh?(c@n8=O1BwifXGg=XBpKm?sDY%g(2gFp$!Z!%Rr6fN
zAd9=^D}~q1{OGS3=V#C@B|YP1Ui4gQIdv*jz-O?d(Z2}$7#DsmpigL{)u$cUY;U|r
zZG!K#(o5Z?3g79HfwEv)Y(eHV$a
zf>WJHH>jHvAkx%(I?r&^1@+|IQp@cUUA@lW#1e^lTQcVF1{GAEWf7vE1yh`>csmZl
z5^>TG9Gm~XD@I%)oBrI(N|Fy^`wkvUA8v{7d`&U+$F=M1xn}+-9*3JUu`u14RJyqJ
zu1aPssddW?HZNw=;qg05g51=m9+H43OME=yZ&2mtojk08O0Pc^MVP#*7hOX+uJ7
zWnW60%P;PF@Gb>gKSP)GAEUNjJI?jOkNSRj%S_8exZt3Wz{tF`&2;PPk^A>F(}R+k
zkH{&X#b0Tn?1#tmJe`8
zMO6Q?T3IkJ;(N!9ZsU+Wxc3z{&7a7@S(#`pl9YPRQy$HC>~
zR*G4)Lu{jR{z?IN7}I&v^?pBPcf)*NpZM9~rTK4x=K4j>#deF*^GVl*Sw7DqrP3q2
zBSxv}!SnGcQG*M8_xE@(eakIb{1=|ky5Y#fr&Ckp2ln}2nHM&vN<&XI?zyxnaFX78
zX`2y>{4|92Uf06YQWa;>FiLPLWujO;p1QX%;>QOnTFpNY8F7*a)9*D(bb?E^M~9v}
zE$OYd=eqVvwT#IJ$Wi;_eca*%A2lXf$Zs5?NNuP##sgqTQwhROx|PGw<^|jPAd@%yiVZ
zRjH+%EoJDCEvbZxyr{v%q)p+CW7`IVR(rYJ(MaK>_2zpIOAKMIEP6Y?uXEe74xs
z==9Gt?OhpPeZHA(G+w&v9{W
z2&(|eHR{v|dNPS=$ad_QH6OoCZ3+`Fu-ci0fn6*3fgPzcL0tphH~2zYh(#|xddbY!
zZf~5O`=8wLVqOlCht_(IXvbrGtD}so;*Aqf9fYX8&3=tWf4(Vc=t7e|n&5+wKN<$D
Gjr<#n)q5)d
diff --git a/pandaapp/src/indexify/photo.cxx b/pandaapp/src/indexify/photo.cxx
deleted file mode 100644
index 0375358f4f..0000000000
--- a/pandaapp/src/indexify/photo.cxx
+++ /dev/null
@@ -1,182 +0,0 @@
-// Filename: photo.cxx
-// Created by: drose (03Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#include "photo.h"
-#include "indexParameters.h"
-#include "rollDirectory.h"
-
-static const char * const standard_movie_extensions[] = {
- "mov", "avi", "mpg", "mp4", NULL
-};
-
-static const char * const standard_sound_extensions[] = {
- "mp3", "wav", "ogg", NULL
-};
-
-
-
-////////////////////////////////////////////////////////////////////
-// Function: Photo::Constructor
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-Photo::
-Photo(RollDirectory *dir, const Filename &basename,
- const string &movie_extension, const string &sound_extension) :
- _dir(dir),
- _basename(basename)
-{
- _name = _basename.get_basename_wo_extension();
- _frame_number = _name;
- if (caption_frame_numbers) {
- const string &dirname = _dir->get_basename();
-
- // If the initial prefix of the filename is the same as the roll
- // directory, lop it off when caption_frame_numbers is in effect.
- if (_frame_number.substr(0, dirname.length()) == dirname) {
- _frame_number = _frame_number.substr(dirname.length());
- while (_frame_number.length() > 1 && _frame_number[0] == '0') {
- _frame_number = _frame_number.substr(1);
- }
- }
- }
-
- _full_x_size = 0;
- _full_y_size = 0;
- _reduced_x_size = 0;
- _reduced_y_size = 0;
- _has_reduced = false;
-
- _has_movie = false;
- Filename movie_filename(_dir->get_dir(), _basename);
- movie_filename.set_extension(movie_extension);
- if (movie_filename.exists()) {
- _movie = movie_filename.get_basename();
- _has_movie = true;
-
- } else {
- const char * const *ext;
- for (ext = standard_movie_extensions; *ext != NULL; ++ext) {
- movie_filename.set_extension(*ext);
- if (movie_filename.exists()) {
- _movie = movie_filename.get_basename();
- _has_movie = true;
- }
- }
- }
-
- _has_sound = false;
- Filename sound_filename(_dir->get_dir(), _basename);
- sound_filename.set_extension(sound_extension);
- if (sound_filename.exists()) {
- _sound = sound_filename.get_basename();
- _has_sound = true;
-
- } else {
- const char * const *ext;
- for (ext = standard_sound_extensions; *ext != NULL; ++ext) {
- sound_filename.set_extension(*ext);
- if (sound_filename.exists()) {
- _sound = sound_filename.get_basename();
- _has_sound = true;
- }
- }
- }
-
- _has_cm = false;
- Filename cm_filename(_dir->get_dir(), _basename);
- cm_filename.set_extension("cm");
- if (cm_filename.exists()) {
- _cm = cm_filename.get_basename();
- _has_cm = true;
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: Photo::get_basename
-// Access: Public
-// Description: Returns the filename of the photo within its roll
-// directory.
-////////////////////////////////////////////////////////////////////
-const Filename &Photo::
-get_basename() const {
- return _basename;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: Photo::get_movie
-// Access: Public
-// Description: Returns the filename of the movie associated with the
-// photo, if any.
-////////////////////////////////////////////////////////////////////
-const Filename &Photo::
-get_movie() const {
- return _movie;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: Photo::get_sound
-// Access: Public
-// Description: Returns the filename of the sound clip associated
-// with the photo, if any.
-////////////////////////////////////////////////////////////////////
-const Filename &Photo::
-get_sound() const {
- return _sound;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: Photo::get_cm
-// Access: Public
-// Description: Returns the filename of the comment file associated
-// with the photo, if any.
-////////////////////////////////////////////////////////////////////
-const Filename &Photo::
-get_cm() const {
- return _cm;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: Photo::get_name
-// Access: Public
-// Description: Returns the name of the photo without its filename
-// extension.
-////////////////////////////////////////////////////////////////////
-const string &Photo::
-get_name() const {
- return _name;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: Photo::get_frame_number
-// Access: Public
-// Description: Returns the string describing the photo within the
-// roll directory. This is usually the same string
-// reported by get_name(), but it may be just the frame
-// number if caption_frame_numbers is in effect.
-////////////////////////////////////////////////////////////////////
-const string &Photo::
-get_frame_number() const {
- return _frame_number;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: Photo::output
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-void Photo::
-output(ostream &out) const {
- out << _basename;
-}
diff --git a/pandaapp/src/indexify/photo.h b/pandaapp/src/indexify/photo.h
deleted file mode 100644
index 6c7486dd35..0000000000
--- a/pandaapp/src/indexify/photo.h
+++ /dev/null
@@ -1,67 +0,0 @@
-// Filename: photo.h
-// Created by: drose (03Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#ifndef PHOTO_H
-#define PHOTO_H
-
-#include "pandatoolbase.h"
-
-#include "filename.h"
-
-class RollDirectory;
-
-////////////////////////////////////////////////////////////////////
-// Class : Photo
-// Description : A single photo image within a roll directory.
-////////////////////////////////////////////////////////////////////
-class Photo {
-public:
- Photo(RollDirectory *dir, const Filename &basename,
- const string &movie_extension, const string &sound_extension);
-
- const Filename &get_basename() const;
- const Filename &get_movie() const;
- const Filename &get_sound() const;
- const Filename &get_cm() const;
- const string &get_name() const;
- const string &get_frame_number() const;
-
- void output(ostream &out) const;
-
-public:
- int _full_x_size;
- int _full_y_size;
- int _reduced_x_size;
- int _reduced_y_size;
- bool _has_reduced;
- bool _has_movie;
- bool _has_sound;
- bool _has_cm;
-
-private:
- RollDirectory *_dir;
- Filename _basename;
- Filename _movie;
- Filename _sound;
- Filename _cm;
- string _name;
- string _frame_number;
-};
-
-INLINE ostream &operator << (ostream &out, const Photo &p) {
- p.output(out);
- return out;
-}
-
-#endif
diff --git a/pandaapp/src/indexify/right.png b/pandaapp/src/indexify/right.png
deleted file mode 100755
index a3b41b62652b87524610b07b48b4b6fe6ec178ae..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 526
zcmV+p0`dKcP)Sai$UuKe1c}4PWlZvU{;@gU
zhx7bvFAm~q(`?Q$_`&ZpJTt@RSQ{9~GmLB?6q(aK9ByG`L;u`#G>SzJ^_mBbSt;
zRsrvQ&Q6IEwqmxT^9xEl%juwa>wGb?&t9^9%3L9SRGf3^?;-03-@Bb};pg0Jvm%DS
zS_O7;1pC~v%$dYcUWEdbkjOa~bF31+yKjE8`Nf)%6O+nZ;--eGRSB;P%S;Vt)uZ+K
z?Y$|TO-0Q%v%M;zoUe`i(E435>K$3>`2kuh;lwm?E9~7%#WO7qhcQi9KRApCN}~(X
zmhoO(8=B5ri&Qoq<7iHi90E7YDy2(}#C$^pmxI>Y7%%l6vZ^9zD3TXBbZh&))S+sM
zf~pK2yLtQ#^)=E6T^kaZ9eZVAQyFN_b)SVlskKA-(Hg6X$$4*hZmcik7b))#-Ztw)
Q>;M1&07*qoM6N<$f(Oa;jsO4v
diff --git a/pandaapp/src/indexify/rollDirectory.cxx b/pandaapp/src/indexify/rollDirectory.cxx
deleted file mode 100644
index 0dc1307be9..0000000000
--- a/pandaapp/src/indexify/rollDirectory.cxx
+++ /dev/null
@@ -1,878 +0,0 @@
-// Filename: rollDirectory.cxx
-// Created by: drose (03Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#include "rollDirectory.h"
-#include "photo.h"
-#include "indexImage.h"
-#include "indent.h"
-#include "pnotify.h"
-#include "string_utils.h"
-#include "indexParameters.h"
-
-#include
-#include
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::Constructor
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-RollDirectory::
-RollDirectory(const Filename &dir) :
- _dir(dir)
-{
- _prev = (RollDirectory *)NULL;
- _next = (RollDirectory *)NULL;
-
- _basename = _dir.get_basename();
- if (format_rose) {
- _name = format_basename(_basename);
- } else {
- _name = _basename;
- }
-
- _got_ds_file = false;
- _got_ls_file = false;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::Destructor
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-RollDirectory::
-~RollDirectory() {
- IndexImages::iterator ii;
- for (ii = _index_images.begin(); ii != _index_images.end(); ++ii) {
- IndexImage *index_image = (*ii);
- delete index_image;
- }
-
- Photos::iterator pi;
- for (pi = _photos.begin(); pi != _photos.end(); ++pi) {
- Photo *photo = (*pi);
- delete photo;
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::get_dir
-// Access: Public
-// Description: Returns the filename of the directory.
-////////////////////////////////////////////////////////////////////
-const Filename &RollDirectory::
-get_dir() const {
- return _dir;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::get_basename
-// Access: Public
-// Description: Returns the base name of the directory.
-////////////////////////////////////////////////////////////////////
-const string &RollDirectory::
-get_basename() const {
- return _basename;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::get_name
-// Access: Public
-// Description: Returns the formatted name of the directory. This is
-// often the same as the basename, but if -r is
-// specified on the command line it might be a somewhat
-// different, reformatted name. In any case, it is the
-// name of the roll as it should be presented to the
-// user.
-////////////////////////////////////////////////////////////////////
-const string &RollDirectory::
-get_name() const {
- return _name;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::get_desc
-// Access: Public
-// Description: Returns the one-line description for the directory.
-////////////////////////////////////////////////////////////////////
-const string &RollDirectory::
-get_desc() const {
- return _desc;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::scan
-// Access: Public
-// Description: Scans the directory for all the listed photos.
-////////////////////////////////////////////////////////////////////
-bool RollDirectory::
-scan(const string &photo_extension, const string &movie_extension,
- const string &sound_extension) {
- bool reverse_order = false;
- bool explicit_list = false;
-
- // Check for a .ds file, which contains a one-line description of
- // the contents of the directory.
- _ds_filename = Filename(_basename);
- _ds_filename.set_extension("ds");
- if (cm_search.is_empty() || !_ds_filename.resolve_filename(cm_search)) {
- // If the ds file isn't found along the search path specified
- // via -cmdir on the command line, then look for it in the
- // appropriate source directory.
- _ds_filename = Filename(_dir, _ds_filename);
- }
- if (_ds_filename.exists()) {
- _got_ds_file = true;
- _ds_filename.set_text();
- ifstream ds;
- if (!_ds_filename.open_read(ds)) {
- nout << "Could not read " << _ds_filename << "\n";
- } else {
- // Get the words out one at a time and put just one space
- // between them.
- string word;
- ds >> word;
- while (!ds.eof() && !ds.fail()) {
- if (!_desc.empty()) {
- _desc += ' ';
- }
- _desc += word;
- word = string();
- ds >> word;
- }
- if (!word.empty()) {
- if (!_desc.empty()) {
- _desc += ' ';
- }
- _desc += word;
- }
- }
- }
-
- // Check for an .ls file in the roll directory, which may give an
- // explicit ordering, or if empty, it specifies reverse ordering.
- _ls_filename = Filename(_dir, _basename);
- _ls_filename.set_extension("ls");
- if (_ls_filename.exists()) {
- _got_ls_file = true;
- add_contributing_filename(_ls_filename);
- _ls_filename.set_text();
- ifstream ls;
- if (!_ls_filename.open_read(ls)) {
- nout << "Could not read " << _ls_filename << "\n";
- } else {
- bool any_words = false;
- string word;
- ls >> word;
- while (!ls.eof() && !ls.fail()) {
- any_words = true;
- Filename try_filename(_dir, word);
- if (!try_filename.exists()) {
- try_filename = Filename(_dir, word + "." + photo_extension);
- }
- if (!try_filename.exists()) {
- try_filename = Filename(_dir, _basename + word + "." + photo_extension);
- }
- if (!try_filename.exists()) {
- try_filename = Filename(_dir, _basename + "0" + word + "." + photo_extension);
- }
- if (try_filename.exists()) {
- add_photo(try_filename.get_basename(), movie_extension,
- sound_extension);
- } else {
- nout << "Frame " << word << " not found in " << _name << "\n";
- }
- ls >> word;
- }
-
- if (!any_words) {
- // An empty .ls file just means reverse the order.
- reverse_order = true;
- } else {
- // A non-empty .ls file has listed all the files we need; no
- // need to scan the directory.
- explicit_list = true;
- }
- }
- }
-
- if (!explicit_list) {
- vector_string contents;
-
- if (!_dir.scan_directory(contents)) {
- nout << "Could not read " << _dir << "\n";
- return false;
- }
-
- // We want to sort the filenames in our own way, so that
- // underscore is deemed to fall before anything else. This allows
- // the underscore, the only non-alphnumeric character we can have
- // in a filename for an iso9660 image, to stand for "before 0".
- sort(contents.begin(), contents.end(), compare_filenames);
-
- if (reverse_order) {
- reverse(contents.begin(), contents.end());
- }
-
- vector_string::iterator ci;
- for (ci = contents.begin(); ci != contents.end(); ++ci) {
- Filename basename = (*ci);
- if (basename.get_extension() == photo_extension) {
- add_photo(basename, movie_extension, sound_extension);
- }
- }
- }
-
- if (_photos.empty()) {
- nout << _dir << " contains no photos.\n";
- // This is not an error, just a notice.
- }
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::collect_index_images
-// Access: Public
-// Description: Groups the photos into one or more IndexImages.
-////////////////////////////////////////////////////////////////////
-void RollDirectory::
-collect_index_images() {
- // Don't call this twice.
- nassertv(_index_images.empty());
-
- if (is_empty()) {
- return;
- }
-
- IndexImage *index_image = new IndexImage(this, _index_images.size());
- _index_images.push_back(index_image);
-
- size_t i;
- for (i = 0; i < _photos.size(); i++) {
- if (!index_image->add_photo(i)) {
- // Oops, that one's full.
- index_image = new IndexImage(this, _index_images.size());
- _index_images.push_back(index_image);
- bool result = index_image->add_photo(i);
- nassertv(result);
- }
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::sort_date_before
-// Access: Public
-// Description: Returns true if the given directory name should sort
-// before the other one, assuming the Rose naming
-// convention of mmyyss is in place.
-////////////////////////////////////////////////////////////////////
-bool RollDirectory::
-sort_date_before(const RollDirectory &other) const {
- if (_name == _basename && other._name == other._basename) {
- // If Rose naming convention is not in place in either case, sort
- // alphabetically.
- return _basename < other._basename;
-
- } else if (_name == _basename) {
- // If Rose naming convention is in place on this one and not the
- // other, it sorts first.
- return true;
-
- } else if (other._name == other._basename) {
- // And vice-versa.
- return false;
-
- } else {
- // Rose naming convention holds. Sort based on year first. Years
- // above 90 are deemed to belong to the previous century.
- string yy = _basename.substr(2, 2);
- string other_yy = other._basename.substr(2, 2);
- int year = atoi(yy.c_str());
- int other_year = atoi(other_yy.c_str());
- if (year < 90) {
- year += 100;
- }
- if (other_year < 90) {
- other_year += 100;
- }
- if (year != other_year) {
- return year < other_year;
- }
-
- // After year, sort alphabetically.
- return _basename < other._basename;
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::get_newest_contributing_filename
-// Access: Public
-// Description: Returns the Filename with the newest timestamp that
-// contributes to the contents of the index images in
-// this directory, if any (other than the images
-// themselves). This is used by the IndexImage code to
-// determine if it needs to regenerate the index image.
-////////////////////////////////////////////////////////////////////
-const Filename &RollDirectory::
-get_newest_contributing_filename() const {
- return _newest_contributing_filename;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::is_empty
-// Access: Public
-// Description: Returns true if the directory is empty (has no
-// photos).
-////////////////////////////////////////////////////////////////////
-bool RollDirectory::
-is_empty() const {
- return _photos.empty();
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::get_num_photos
-// Access: Public
-// Description: Returns the number of photos in the roll.
-////////////////////////////////////////////////////////////////////
-int RollDirectory::
-get_num_photos() const {
- return _photos.size();
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::get_photo
-// Access: Public
-// Description: Returns the nth photo in the roll.
-////////////////////////////////////////////////////////////////////
-Photo *RollDirectory::
-get_photo(int n) const {
- nassertr(n >= 0 && n < (int)_photos.size(), NULL);
- return _photos[n];
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::get_num_index_images
-// Access: Public
-// Description: Returns the number of index images in the roll.
-////////////////////////////////////////////////////////////////////
-int RollDirectory::
-get_num_index_images() const {
- return _index_images.size();
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::get_index_image
-// Access: Public
-// Description: Returns the nth index image in the roll.
-////////////////////////////////////////////////////////////////////
-IndexImage *RollDirectory::
-get_index_image(int n) const {
- nassertr(n >= 0 && n < (int)_index_images.size(), NULL);
- return _index_images[n];
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::generate_images
-// Access: Public
-// Description: Generates image files appropriate to this directory
-// to the indicated archive dir. Returns true on
-// success, false on failure.
-////////////////////////////////////////////////////////////////////
-bool RollDirectory::
-generate_images(const Filename &archive_dir, PNMTextMaker *text_maker) {
- if (is_empty()) {
- return true;
- }
- nassertr(!_index_images.empty(), false);
-
- IndexImages::iterator ii;
- for (ii = _index_images.begin(); ii != _index_images.end(); ++ii) {
- IndexImage *index_image = (*ii);
- if (!index_image->generate_images(archive_dir, text_maker)) {
- return false;
- }
- }
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::generate_html
-// Access: Public
-// Description: Generates all appropriate HTML files for this
-// directory, and generate the appropriate HTML code
-// into the html strings (retrieved by
-// get_comment_html() and get_index_html()).
-////////////////////////////////////////////////////////////////////
-bool RollDirectory::
-generate_html(const Filename &archive_dir, const Filename &roll_dir_root) {
- if (is_empty()) {
- return true;
- }
- nassertr(!_index_images.empty(), false);
-
- ostringstream comment_strm;
- comment_strm
- << "\n";
-
- if (!omit_roll_headers) {
- Filename cm_filename(_basename);
- cm_filename.set_extension("cm");
- if (cm_search.is_empty() || !cm_filename.resolve_filename(cm_search)) {
- // If the cm file isn't found along the search path specified
- // via -cmdir on the command line, then look for it in the
- // appropriate source directory.
- cm_filename = Filename(_dir, cm_filename);
- }
-
- if (cm_filename.exists()) {
- // If the comment file for the roll exists, insert its contents
- // here instead of the generic header.
- if (!insert_html_comment(comment_strm, cm_filename)) {
- return false;
- }
-
- } else {
- comment_strm
- << "" << _name << "
\n";
- if (!_desc.empty()) {
- comment_strm << "" << escape_html(_desc) << ".
\n";
- }
- }
- }
- _comment_html = comment_strm.str();
-
- Filename html_dir(archive_dir, "html");
- nout << "Generating " << Filename(html_dir, _basename) << "/*\n";
-
- ostringstream index_strm;
- index_strm << "\n";
- IndexImages::iterator ii;
- for (ii = _index_images.begin(); ii != _index_images.end(); ++ii) {
- IndexImage *index_image = (*ii);
- if (!index_image->generate_html(index_strm, archive_dir, roll_dir_root)) {
- return false;
- }
- }
- index_strm << "
\n";
- _index_html = index_strm.str();
-
- // Also generate the index html for this directory.
- Filename html_filename(html_dir, _basename);
- html_filename.set_extension("htm");
- nout << "Generating " << html_filename << "\n";
- html_filename.set_text();
- ofstream index_html;
- if (!html_filename.open_write(index_html)) {
- nout << "Unable to write to " << html_filename << "\n";
- exit(1);
- }
-
- string up_href = "../index.htm#" + _basename;
-
- Filename prev_roll_filename;
- Filename next_roll_filename;
-
- if (_prev != (RollDirectory *)NULL) {
- prev_roll_filename = _prev->_basename;
- prev_roll_filename.set_extension("htm");
- }
- if (_next != (RollDirectory *)NULL) {
- next_roll_filename = _next->_basename;
- next_roll_filename.set_extension("htm");
- }
-
- index_html
- << "\n"
- << "\n";
- if (_desc.empty()) {
- index_html
- << "" << _name << "\n";
- } else {
- index_html
- << "" << _name << " " << escape_html(_desc) << "\n";
- }
- index_html
- << "\n"
- << "\n"
- << get_comment_html();
-
- generate_nav_buttons(index_html, prev_roll_filename, next_roll_filename,
- up_href);
- index_html << get_index_html();
- generate_nav_buttons(index_html, prev_roll_filename, next_roll_filename,
- up_href);
-
- if (!omit_complete) {
- index_html
- << "(complete archive)\n";
- }
-
- index_html
- << "\n"
- << "\n";
-
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::get_comment_html
-// Access: Public
-// Description: Returns the HTML text that describes this directory's
-// index. This is set when generate_html() returns
-// true.
-//
-// This text may be inserted into the middle of a HTML
-// page to include the imagemap that references each of
-// the images in this directory.
-////////////////////////////////////////////////////////////////////
-const string &RollDirectory::
-get_comment_html() const {
- return _comment_html;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::get_index_html
-// Access: Public
-// Description: Returns the HTML text that describes this directory's
-// index. This is set when generate_html() returns
-// true.
-//
-// This text may be inserted into the middle of a HTML
-// page to include the imagemap that references each of
-// the images in this directory.
-////////////////////////////////////////////////////////////////////
-const string &RollDirectory::
-get_index_html() const {
- return _index_html;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::copy_reduced
-// Access: Public
-// Description: Copies key files from the full directory into the
-// reduced directory.
-////////////////////////////////////////////////////////////////////
-bool RollDirectory::
-copy_reduced(const Filename &archive_dir) {
- if (is_empty()) {
- return true;
- }
- nassertr(!_index_images.empty(), false);
-
- Filename reduced_dir(archive_dir, "reduced/" + _dir.get_basename());
-
- if (!reduced_dir.exists()) {
- cerr << "Ignoring " << reduced_dir << "; does not exist.\n";
- return true;
- }
-
- if (_got_ds_file) {
- if (!copy_file(_ds_filename, reduced_dir)) {
- return false;
- }
- }
-
- if (_got_ls_file) {
- if (!copy_file(_ls_filename, reduced_dir)) {
- return false;
- }
- }
-
- IndexImages::iterator ii;
- for (ii = _index_images.begin(); ii != _index_images.end(); ++ii) {
- IndexImage *index_image = (*ii);
- if (!index_image->copy_reduced(archive_dir)) {
- return false;
- }
- }
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::output
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-void RollDirectory::
-output(ostream &out) const {
- out << _name;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::write
-// Access: Public
-// Description:
-////////////////////////////////////////////////////////////////////
-void RollDirectory::
-write(ostream &out, int indent_level) const {
- indent(out, indent_level)
- << _dir << "\n";
-
- if (!_index_images.empty()) {
- // If we have any index images, output those.
- IndexImages::const_iterator ii;
- for (ii = _index_images.begin(); ii != _index_images.end(); ++ii) {
- const IndexImage *index_image = (*ii);
- index_image->write(out, indent_level + 2);
- }
-
- } else {
- // Otherwise, just output the photos.
- Photos::const_iterator pi;
- for (pi = _photos.begin(); pi != _photos.end(); ++pi) {
- const Photo *photo = (*pi);
- indent(out, indent_level + 2)
- << *photo << "\n";
- }
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::insert_html_comment
-// Access: Public, Static
-// Description: Reads the indicated comment file and inserts its
-// contents (after the header) within the indicated
-// ostream at the current point.
-////////////////////////////////////////////////////////////////////
-bool RollDirectory::
-insert_html_comment(ostream &html, Filename cm_filename) {
- cm_filename.set_text();
- ifstream cm;
- if (!cm_filename.open_read(cm)) {
- nout << "Unable to read " << cm_filename << "\n";
- return false;
- }
-
- // First, scan through the file looking for or .
- string line;
- getline(cm, line);
- while (!cm.eof() && !cm.fail()) {
- string lower = downcase(line);
- size_t body = lower.find("");
- if (body != string::npos) {
- return insert_html_comment_body(html, cm);
- }
- getline(cm, line);
- }
-
- // We didn't find it. Insert the whole file.
- cm.clear();
- cm.seekg(0);
- int ch = cm.get();
- while (ch != EOF) {
- html.put(ch);
- ch = cm.get();
- }
-
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::add_photo
-// Access: Private
-// Description: Adds the photo with the indicated basename to the
-// list.
-////////////////////////////////////////////////////////////////////
-void RollDirectory::
-add_photo(const Filename &basename, const string &movie_extension,
- const string &sound_extension) {
- Photo *photo = new Photo(this, basename, movie_extension, sound_extension);
- _photos.push_back(photo);
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::add_contributing_filename
-// Access: Private
-// Description: Specifies an additional filename that contributes to
-// the index image.
-////////////////////////////////////////////////////////////////////
-void RollDirectory::
-add_contributing_filename(const Filename &filename) {
- if (_newest_contributing_filename.empty() ||
- _newest_contributing_filename.compare_timestamps(filename) < 0) {
- _newest_contributing_filename = filename;
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::insert_html_comment_body
-// Access: Private, Static
-// Description: Copies from the comment file up until the next
-// , or until the end of file.
-////////////////////////////////////////////////////////////////////
-bool RollDirectory::
-insert_html_comment_body(ostream &html, istream &cm) {
- string line;
- getline(cm, line);
- while (!cm.eof() && !cm.fail()) {
- string lower = downcase(line);
- size_t body = lower.find("");
- if (body != string::npos) {
- // Here's the end; we're done.
- return true;
- }
- html << line << "\n";
- getline(cm, line);
- }
-
- // Reached end of file; good enough.
- return true;
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::format_basename
-// Access: Private, Static
-// Description: Reformats the roll directory into a user-friendly
-// name based on its encoded directory name.
-////////////////////////////////////////////////////////////////////
-string RollDirectory::
-format_basename(const string &basename) {
- if (basename.length() <= 4) {
- return basename;
- }
-
- // The first two characters must be alphanumeric.
- if (!isalnum(basename[0]) || !isalnum(basename[1])) {
- return basename;
- }
-
- // The next two characters must be digits.
- if (!isdigit(basename[2]) || !isdigit(basename[3])) {
- return basename;
- }
-
- // If the first two were digits as well as being alphanumeric, then
- // we have mm-yy/sequence. Otherwise, we just have xxyy/sequence.
- bool mm_is_month = (isdigit(basename[0]) && isdigit(basename[1]));
-
- string mm = basename.substr(0, 2);
- string yy = basename.substr(2, 2);
- string ss = basename.substr(4);
-
- if (mm_is_month && mm[0] == '0') {
- mm = mm[1];
- }
- while (ss.length() > 1 && ss[0] == '0') {
- ss = ss.substr(1);
- }
-
- if (mm_is_month) {
- return mm + "-" + yy + "/" + ss;
- } else {
- return mm + yy + "/" + ss;
- }
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::generate_nav_buttons
-// Access: Private, Static
-// Description: Outputs the HTML code to generate the next, prev,
-// up buttons when viewing each reduced image.
-////////////////////////////////////////////////////////////////////
-void RollDirectory::
-generate_nav_buttons(ostream &html, const Filename &prev_roll_filename,
- const Filename &next_roll_filename,
- const string &up_href) {
- html << "\n";
-
- bool first_icons = false;
- if (!prev_icon.empty() && !next_icon.empty()) {
- first_icons = true;
- // Use icons to go forward and back.
- Filename prev_icon_href = compose_href("..", prev_icon);
- if (prev_roll_filename.empty()) {
- html << "
\n";
- } else {
- html << "
\n";
- }
-
- Filename next_icon_href = compose_href("..", next_icon);
- if (next_roll_filename.empty()) {
- html << "
\n";
- } else {
- html << "
\n";
- }
-
- } else {
- // No prev/next icons; use text to go forward and back.
- if (prev_roll_filename.empty()) {
- html << "(This is the first roll.)\n";
- } else {
- html << "Back to previous roll\n";
- }
-
- if (next_roll_filename.empty()) {
- html << "
(This is the last roll.)\n";
- } else {
- html << "
On to next roll\n";
- }
- }
-
- if (!up_href.empty()) {
- if (!up_icon.empty()) {
- // Use an icon to go up.
- if (!first_icons) {
- html << "
";
- } else {
- html << " ";
- }
- Filename up_icon_href = compose_href("..", up_icon);
- html << "
\n";
- } else {
- // No up icon; use text to go up.
- html << "
Return to index\n";
- }
- }
- html << "
\n";
-}
-
-////////////////////////////////////////////////////////////////////
-// Function: RollDirectory::compare_filenames
-// Access: Private, Static
-// Description: Returns true if filename a sorts before filename b,
-// false otherwise.
-////////////////////////////////////////////////////////////////////
-bool RollDirectory::
-compare_filenames(const string &a, const string &b) {
- size_t i = 0;
- size_t min_length = min(a.length(), b.length());
- while (i < min_length) {
- char achar = a[i];
- char bchar = b[i];
- if (achar != bchar) {
- if (achar == '_') {
- return true;
- } else if (bchar == '_') {
- return false;
- } else {
- return achar < bchar;
- }
- }
- ++i;
- }
-
- return a.length() < b.length();
-}
-
diff --git a/pandaapp/src/indexify/rollDirectory.h b/pandaapp/src/indexify/rollDirectory.h
deleted file mode 100644
index 83f52b618c..0000000000
--- a/pandaapp/src/indexify/rollDirectory.h
+++ /dev/null
@@ -1,112 +0,0 @@
-// Filename: rollDirectory.h
-// Created by: drose (03Apr02)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#ifndef ROLLDIRECTORY_H
-#define ROLLDIRECTORY_H
-
-#include "pandatoolbase.h"
-
-#include "filename.h"
-#include "pvector.h"
-
-class Photo;
-class IndexImage;
-class PNMTextMaker;
-
-////////////////////////////////////////////////////////////////////
-// Class : RollDirectory
-// Description : A representation of a single directory containing one
-// or more photos.
-////////////////////////////////////////////////////////////////////
-class RollDirectory {
-public:
- RollDirectory(const Filename &dir);
- ~RollDirectory();
-
- const Filename &get_dir() const;
- const string &get_basename() const;
- const string &get_name() const;
- const string &get_desc() const;
- bool scan(const string &photo_extension, const string &movie_extension,
- const string &sound_extension);
- void collect_index_images();
-
- bool sort_date_before(const RollDirectory &other) const;
-
- const Filename &get_newest_contributing_filename() const;
-
- bool is_empty() const;
- int get_num_photos() const;
- Photo *get_photo(int n) const;
-
- int get_num_index_images() const;
- IndexImage *get_index_image(int n) const;
-
- bool generate_images(const Filename &archive_dir, PNMTextMaker *text_maker);
- bool generate_html(const Filename &archive_dir,
- const Filename &roll_dir_root);
- const string &get_comment_html() const;
- const string &get_index_html() const;
-
- bool copy_reduced(const Filename &archive_dir);
-
- void output(ostream &out) const;
- void write(ostream &out, int indent_level) const;
-
- static bool insert_html_comment(ostream &html, Filename cm_filename);
-
-private:
- void add_photo(const Filename &basename, const string &movie_extension,
- const string &sound_extension);
- void add_contributing_filename(const Filename &filename);
- static bool insert_html_comment_body(ostream &html, istream &cm);
- static string format_basename(const string &basename);
- void generate_nav_buttons(ostream &html,
- const Filename &prev_roll_filename,
- const Filename &next_roll_filename,
- const string &up_href);
- static bool compare_filenames(const string &a, const string &b);
-
-public:
- RollDirectory *_prev;
- RollDirectory *_next;
-
-private:
- Filename _dir;
- string _basename;
- string _name;
- string _desc;
- typedef pvector Photos;
- Photos _photos;
-
- bool _got_ds_file;
- Filename _ds_filename;
- bool _got_ls_file;
- Filename _ls_filename;
-
- Filename _newest_contributing_filename;
-
- typedef pvector IndexImages;
- IndexImages _index_images;
-
- string _comment_html;
- string _index_html;
-};
-
-INLINE ostream &operator << (ostream &out, const RollDirectory &d) {
- d.output(out);
- return out;
-}
-
-#endif
diff --git a/pandaapp/src/indexify/sound.png b/pandaapp/src/indexify/sound.png
deleted file mode 100644
index 7a766be6cc8038c54605beca648425afa090b17a..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 310
zcmeAS@N?(olHy`uVBq!ia0vp^B0wz0!VDyh@)w!{DTx4|5Z5#R|Nl2O1`=n^oS8Xu
zW*P&7v9U2w^6&fe4}lb8lDE4HyI5k!Yal1f)5S5Q;#P9P0bU^q304K2Z%mGCjvSkp
zGz2mzop~2>K!GE1nuaKc0aNIP>C>$>MHyI`CB0%|rZo732?TR;a4~fzFI%GGxRsID
zxLNAhglS=OST-_oTsr$eY_n+d9OlAEt3wlWIF=_fFszZ5Ue4}nQwFp(ti&~<#5q4V
zH#M(>AtWQSSRt{fL;*-;<|&k9q$(7YCgo%%E2QM-CT8a8DR`%r0VO<2(=$?wbriBe
uybOob%o4ri{9GM{;M9VW)ZC=hA_YTBOH-d0UycB6VDNPHb6Mw<&;$S_1!QFa
diff --git a/pandaapp/src/indexify/up.png b/pandaapp/src/indexify/up.png
deleted file mode 100755
index d371bbf92b4394403fc01a25f256b0c210a620b1..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 549
zcmV+=0^0qFP)+SB{;p5NL*U8V)!pY6Fyuq!uyO^V@lAfh~izpbac%aajgabzSv=Q9<9MdskvNnoa1o)$}J02#Y;2_D`
z){Ke3AhB`4Vw2HkaIg!nsdRDp5Y8VAr3S#OfI(>BQlm(XzUYG@!+C45fh-00s;e6<
z0PGv;syX66Ql4sI-gMMk-C`;PApM0M%0R@|_Z2jwOC-}wdb)C@F?hqg(}P=&1XJu_
zR^EH9J;??7rFEm0GuOwSuQk`c#LPN6=0rJ%C{$j=7nXryx^^UBOO9(3n{&_T?)N|y
zyJJ!)d_!jb*Rq#*VV-xRee{lpO<%>in9j{3<(b-0^-PZglLG6MRWF!5r%GC&_Z<
ngT<{DLzsBg#w!%_99;bYRy7lzy-s3I00000NkvXXu0mjfx9S0$
diff --git a/pandaapp/src/pandaappbase/Sources.pp b/pandaapp/src/pandaappbase/Sources.pp
deleted file mode 100644
index e742c83336..0000000000
--- a/pandaapp/src/pandaappbase/Sources.pp
+++ /dev/null
@@ -1,10 +0,0 @@
-#begin ss_lib_target
- #define TARGET pandaappbase
-
- #define SOURCES \
- pandaappbase.cxx pandaappbase.h pandaappsymbols.h
-
- #define INSTALL_HEADERS \
- pandaappbase.h pandaappsymbols.h
-
-#end ss_lib_target
diff --git a/pandaapp/src/pandaappbase/pandaappbase.cxx b/pandaapp/src/pandaappbase/pandaappbase.cxx
deleted file mode 100644
index 5a58f3b627..0000000000
--- a/pandaapp/src/pandaappbase/pandaappbase.cxx
+++ /dev/null
@@ -1,15 +0,0 @@
-// Filename: pandaappbase.cxx
-// Created by: drose (15Sep00)
-//
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-#include "pandaappbase.h"
diff --git a/pandaapp/src/pandaappbase/pandaappbase.h b/pandaapp/src/pandaappbase/pandaappbase.h
deleted file mode 100644
index d3a7e687ff..0000000000
--- a/pandaapp/src/pandaappbase/pandaappbase.h
+++ /dev/null
@@ -1,25 +0,0 @@
-// Filename: pandaappbase.h
-// Created by: drose (12Sep00)
-////////////////////////////////////////////////////////////////////
-//
-// PANDA 3D SOFTWARE
-// Copyright (c) Carnegie Mellon University. All rights reserved.
-//
-// All use of this software is subject to the terms of the revised BSD
-// license. You should have received a copy of this license along
-// with this source code in a file named "LICENSE."
-//
-////////////////////////////////////////////////////////////////////
-
-/* This file is included at the beginning of every header file and/or
- C or C++ file. It must be compilable for C as well as C++ files,
- so no C++-specific code or syntax can be put here. */
-
-#ifndef PANDAAPPBASE_H
-#define PANDAAPPBASE_H
-
-#include "pandatoolbase.h"
-#include "pandaappsymbols.h"
-
-#endif
-
diff --git a/pandaapp/src/pandaappbase/pandaappsymbols.h b/pandaapp/src/pandaappbase/pandaappsymbols.h
deleted file mode 100644
index 8ea8cd759b..0000000000
--- a/pandaapp/src/pandaappbase/pandaappsymbols.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Filename: pandaappsymbols.h
- * Created by: drose (26Apr01)
- *
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
- *
- * PANDA 3D SOFTWARE
- * Copyright (c) Carnegie Mellon University. All rights reserved.
- *
- * All use of this software is subject to the terms of the revised BSD
- * license. You should have received a copy of this license along
- * with this source code in a file named "LICENSE."
- *
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
-
-#ifndef PANDAAPPSYMBOLS_H
-#define PANDAAPPSYMBOLS_H
-
-/* See dtoolsymbols.h for a rant on the purpose of this file. */
-
-#if defined(WIN32_VC) && !defined(CPPPARSER) && !defined(LINK_ALL_STATIC)
-
-#else /* !WIN32_VC */
-
-#endif /* WIN32_VC */
-
-#endif