summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose Fonseca <jfonseca@vmware.com>2017-03-23 11:52:20 +0000
committerJose Fonseca <jfonseca@vmware.com>2017-03-23 11:53:31 +0000
commit338f368725009fb5ff0c2f97cb04b1ea00c2e057 (patch)
treea05e574a1eaa6fe1325ae43bbb5a338292c8d460
parentcbe7245f53a93b542fb80a98f920482f93b5b1e9 (diff)
brotli: Update to 0.5.2.thirdparty
-rw-r--r--cli/CMakeLists.txt2
-rw-r--r--cli/cli_repack.cpp3
-rw-r--r--lib/trace/CMakeLists.txt2
-rw-r--r--lib/trace/trace_file_brotli.cpp8
-rw-r--r--thirdparty/brotli/CMakeLists.txt98
-rw-r--r--thirdparty/brotli/LICENSE2
-rw-r--r--thirdparty/brotli/README.md19
-rw-r--r--thirdparty/brotli/common/constants.h47
-rw-r--r--thirdparty/brotli/common/dictionary.c (renamed from thirdparty/brotli/dec/dictionary.c)14
-rw-r--r--thirdparty/brotli/common/dictionary.h29
-rw-r--r--thirdparty/brotli/common/port.h107
-rw-r--r--thirdparty/brotli/common/types.h (renamed from thirdparty/brotli/dec/types.h)26
-rw-r--r--thirdparty/brotli/dec/bit_reader.c10
-rw-r--r--thirdparty/brotli/dec/bit_reader.h42
-rw-r--r--thirdparty/brotli/dec/context.h2
-rw-r--r--thirdparty/brotli/dec/decode.c930
-rw-r--r--thirdparty/brotli/dec/decode.h172
-rw-r--r--thirdparty/brotli/dec/dictionary.h38
-rw-r--r--thirdparty/brotli/dec/huffman.c10
-rw-r--r--thirdparty/brotli/dec/huffman.h27
-rw-r--r--thirdparty/brotli/dec/port.h105
-rw-r--r--thirdparty/brotli/dec/prefix.h8
-rw-r--r--thirdparty/brotli/dec/state.c40
-rw-r--r--thirdparty/brotli/dec/state.h57
-rw-r--r--thirdparty/brotli/dec/transform.h2
-rw-r--r--thirdparty/brotli/enc/backward_references.c892
-rw-r--r--thirdparty/brotli/enc/backward_references.cc858
-rw-r--r--thirdparty/brotli/enc/backward_references.h187
-rw-r--r--thirdparty/brotli/enc/backward_references_inc.h147
-rw-r--r--thirdparty/brotli/enc/bit_cost.c35
-rw-r--r--thirdparty/brotli/enc/bit_cost.h144
-rw-r--r--thirdparty/brotli/enc/bit_cost_inc.h127
-rw-r--r--thirdparty/brotli/enc/block_encoder_inc.h33
-rw-r--r--thirdparty/brotli/enc/block_splitter.c197
-rw-r--r--thirdparty/brotli/enc/block_splitter.cc505
-rw-r--r--thirdparty/brotli/enc/block_splitter.h90
-rw-r--r--thirdparty/brotli/enc/block_splitter_inc.h432
-rw-r--r--thirdparty/brotli/enc/brotli_bit_stream.c1334
-rw-r--r--thirdparty/brotli/enc/brotli_bit_stream.cc1181
-rw-r--r--thirdparty/brotli/enc/brotli_bit_stream.h262
-rw-r--r--thirdparty/brotli/enc/cluster.c56
-rw-r--r--thirdparty/brotli/enc/cluster.h328
-rw-r--r--thirdparty/brotli/enc/cluster_inc.h315
-rw-r--r--thirdparty/brotli/enc/command.h159
-rw-r--r--thirdparty/brotli/enc/compress_fragment.c747
-rw-r--r--thirdparty/brotli/enc/compress_fragment.cc701
-rw-r--r--thirdparty/brotli/enc/compress_fragment.h85
-rw-r--r--thirdparty/brotli/enc/compress_fragment_two_pass.c557
-rw-r--r--thirdparty/brotli/enc/compress_fragment_two_pass.cc524
-rw-r--r--thirdparty/brotli/enc/compress_fragment_two_pass.h63
-rw-r--r--thirdparty/brotli/enc/compressor.cc139
-rw-r--r--thirdparty/brotli/enc/compressor.h161
-rw-r--r--thirdparty/brotli/enc/context.h198
-rw-r--r--thirdparty/brotli/enc/dictionary.cc9466
-rw-r--r--thirdparty/brotli/enc/dictionary.h41
-rw-r--r--thirdparty/brotli/enc/dictionary_hash.h14
-rw-r--r--thirdparty/brotli/enc/encode.c1562
-rw-r--r--thirdparty/brotli/enc/encode.cc1175
-rw-r--r--thirdparty/brotli/enc/encode.h408
-rw-r--r--thirdparty/brotli/enc/encode_parallel.cc312
-rw-r--r--thirdparty/brotli/enc/encode_parallel.h15
-rw-r--r--thirdparty/brotli/enc/entropy_encode.c501
-rw-r--r--thirdparty/brotli/enc/entropy_encode.cc480
-rw-r--r--thirdparty/brotli/enc/entropy_encode.h196
-rw-r--r--thirdparty/brotli/enc/entropy_encode_static.h91
-rw-r--r--thirdparty/brotli/enc/fast_log.h46
-rw-r--r--thirdparty/brotli/enc/find_match_length.h43
-rw-r--r--thirdparty/brotli/enc/hash.h1485
-rwxr-xr-xthirdparty/brotli/enc/hash_forgetful_chain_inc.h249
-rw-r--r--thirdparty/brotli/enc/hash_longest_match_inc.h241
-rw-r--r--thirdparty/brotli/enc/hash_longest_match_quickly_inc.h230
-rw-r--r--thirdparty/brotli/enc/histogram.c95
-rw-r--r--thirdparty/brotli/enc/histogram.cc67
-rw-r--r--thirdparty/brotli/enc/histogram.h132
-rw-r--r--thirdparty/brotli/enc/histogram_inc.h51
-rw-r--r--thirdparty/brotli/enc/literal_cost.c178
-rw-r--r--thirdparty/brotli/enc/literal_cost.cc165
-rw-r--r--thirdparty/brotli/enc/literal_cost.h26
-rw-r--r--thirdparty/brotli/enc/memory.c181
-rw-r--r--thirdparty/brotli/enc/memory.h62
-rw-r--r--thirdparty/brotli/enc/metablock.c515
-rw-r--r--thirdparty/brotli/enc/metablock.cc539
-rw-r--r--thirdparty/brotli/enc/metablock.h144
-rw-r--r--thirdparty/brotli/enc/metablock_inc.h183
-rw-r--r--thirdparty/brotli/enc/port.h120
-rw-r--r--thirdparty/brotli/enc/prefix.h95
-rwxr-xr-xthirdparty/brotli/enc/quality.h130
-rw-r--r--thirdparty/brotli/enc/ringbuffer.h259
-rw-r--r--thirdparty/brotli/enc/static_dict.c (renamed from thirdparty/brotli/enc/static_dict.cc)301
-rw-r--r--thirdparty/brotli/enc/static_dict.h41
-rw-r--r--thirdparty/brotli/enc/static_dict_lut.h23260
-rw-r--r--thirdparty/brotli/enc/streams.cc14
-rw-r--r--thirdparty/brotli/enc/streams.h64
-rw-r--r--thirdparty/brotli/enc/transform.h248
-rw-r--r--thirdparty/brotli/enc/types.h29
-rw-r--r--thirdparty/brotli/enc/utf8_util.c (renamed from thirdparty/brotli/enc/utf8_util.cc)42
-rw-r--r--thirdparty/brotli/enc/utf8_util.h25
-rw-r--r--thirdparty/brotli/enc/write_bits.h92
98 files changed, 24035 insertions, 31835 deletions
diff --git a/cli/CMakeLists.txt b/cli/CMakeLists.txt
index 0863e57f..4e3a15d6 100644
--- a/cli/CMakeLists.txt
+++ b/cli/CMakeLists.txt
@@ -41,7 +41,7 @@ add_executable (apitrace
target_link_libraries (apitrace
common
- brotli_enc_bundled
+ brotli_dec brotli_enc brotli_common
${ZLIB_LIBRARIES}
${SNAPPY_LIBRARIES}
${GETOPT_LIBRARIES}
diff --git a/cli/cli_repack.cpp b/cli/cli_repack.cpp
index 2e17cdeb..5f294283 100644
--- a/cli/cli_repack.cpp
+++ b/cli/cli_repack.cpp
@@ -24,6 +24,7 @@
**************************************************************************/
+#include <assert.h>
#include <string.h>
#include <getopt.h>
@@ -32,7 +33,7 @@
#include "cli.hpp"
-#include <brotli/enc/encode.h>
+#include <brotli/enc/compressor.h>
#include <zlib.h> // for crc32
#include "trace_file.hpp"
diff --git a/lib/trace/CMakeLists.txt b/lib/trace/CMakeLists.txt
index a3615616..d72e0709 100644
--- a/lib/trace/CMakeLists.txt
+++ b/lib/trace/CMakeLists.txt
@@ -30,7 +30,7 @@ target_link_libraries (common
guids
highlight
os
- brotli_dec_bundled
+ brotli_dec brotli_common
)
add_gtest (trace_parser_flags_test trace_parser_flags_test.cpp)
diff --git a/lib/trace/trace_file_brotli.cpp b/lib/trace/trace_file_brotli.cpp
index e99b010e..10d4a4dc 100644
--- a/lib/trace/trace_file_brotli.cpp
+++ b/lib/trace/trace_file_brotli.cpp
@@ -53,7 +53,7 @@ protected:
virtual bool rawSkip(size_t length) override;
virtual int rawPercentRead(void) override;
private:
- BrotliState state;
+ BrotliState *state;
std::ifstream m_stream;
static const size_t kFileBufferSize = 65536;
uint8_t input[kFileBufferSize];
@@ -63,7 +63,7 @@ private:
BrotliFile::BrotliFile(void)
{
- BrotliStateInit(&state);
+ state = BrotliCreateState(nullptr, nullptr, nullptr);
available_in = 0;
next_in = input;
}
@@ -71,7 +71,7 @@ BrotliFile::BrotliFile(void)
BrotliFile::~BrotliFile()
{
close();
- BrotliStateCleanup(&state);
+ BrotliDestroyState(state);
}
bool BrotliFile::rawOpen(const char *filename)
@@ -94,7 +94,7 @@ size_t BrotliFile::rawRead(void *buffer, size_t length)
BrotliResult result;
result = BrotliDecompressStream(&available_in, &next_in,
&available_out, &next_out, &total_out,
- &state);
+ state);
if (result == BROTLI_RESULT_NEEDS_MORE_INPUT) {
if (m_stream.fail()) {
break;
diff --git a/thirdparty/brotli/CMakeLists.txt b/thirdparty/brotli/CMakeLists.txt
index 8ef1917b..a087790a 100644
--- a/thirdparty/brotli/CMakeLists.txt
+++ b/thirdparty/brotli/CMakeLists.txt
@@ -1,72 +1,38 @@
force_release_build ()
-add_convenience_library (brotli_dec_bundled EXCLUDE_FROM_ALL
+if(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
+ add_definitions(-DOS_LINUX)
+elseif(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
+ add_definitions(-DOS_FREEBSD)
+elseif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
+ add_definitions(-DOS_MACOSX)
+endif()
- dec/bit_reader.c
- dec/bit_reader.h
- dec/context.h
- dec/decode.c
- dec/decode.h
- dec/dictionary.c
- dec/dictionary.h
- dec/huffman.c
- dec/huffman.h
- dec/port.h
- dec/prefix.h
- dec/state.c
- dec/state.h
- dec/transform.h
- dec/types.h
-)
-
-add_convenience_library (brotli_enc_bundled EXCLUDE_FROM_ALL
- enc/backward_references.cc
- enc/backward_references.h
- enc/bit_cost.h
- enc/block_splitter.cc
- enc/block_splitter.h
- enc/brotli_bit_stream.cc
- enc/brotli_bit_stream.h
- enc/cluster.h
- enc/command.h
- enc/compress_fragment.cc
- enc/compress_fragment.h
- enc/compress_fragment_two_pass.cc
- enc/compress_fragment_two_pass.h
- enc/context.h
- enc/dictionary.cc
- enc/dictionary.h
- enc/dictionary_hash.h
- enc/encode.cc
- enc/encode.h
- enc/encode_parallel.cc
- enc/encode_parallel.h
- enc/entropy_encode.cc
- enc/entropy_encode.h
- enc/entropy_encode_static.h
- enc/fast_log.h
- enc/find_match_length.h
- enc/hash.h
- enc/histogram.cc
- enc/histogram.h
- enc/literal_cost.cc
- enc/literal_cost.h
- enc/metablock.cc
- enc/metablock.h
- enc/port.h
- enc/prefix.h
- enc/ringbuffer.h
- enc/static_dict.cc
- enc/static_dict.h
- enc/static_dict_lut.h
- enc/streams.cc
- enc/streams.h
- enc/transform.h
- enc/types.h
- enc/utf8_util.cc
- enc/utf8_util.h
- enc/write_bits.h
-)
+add_convenience_library(brotli_common STATIC EXCLUDE_FROM_ALL
+ common/dictionary.c)
+add_convenience_library(brotli_dec STATIC EXCLUDE_FROM_ALL
+ dec/bit_reader.c
+ dec/decode.c
+ dec/huffman.c
+ dec/state.c)
+add_convenience_library(brotli_enc STATIC EXCLUDE_FROM_ALL
+ enc/backward_references.c
+ enc/bit_cost.c
+ enc/block_splitter.c
+ enc/brotli_bit_stream.c
+ enc/cluster.c
+ enc/compress_fragment.c
+ enc/compress_fragment_two_pass.c
+ enc/compressor.cc # XXX
+ enc/encode.c
+ enc/entropy_encode.c
+ enc/histogram.c
+ enc/literal_cost.c
+ enc/memory.c
+ enc/metablock.c
+ enc/static_dict.c
+ enc/streams.cc # XXX
+ enc/utf8_util.c)
install (
FILES LICENSE
diff --git a/thirdparty/brotli/LICENSE b/thirdparty/brotli/LICENSE
index 6298a5dc..33b7cdd2 100644
--- a/thirdparty/brotli/LICENSE
+++ b/thirdparty/brotli/LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2009, 2010, 2013-2015 by the Brotli Authors.
+Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/thirdparty/brotli/README.md b/thirdparty/brotli/README.md
index 520a0657..e87d8ac7 100644
--- a/thirdparty/brotli/README.md
+++ b/thirdparty/brotli/README.md
@@ -1,5 +1,4 @@
-brotli
-======
+### Introduction
Brotli is a generic-purpose lossless compression algorithm that compresses data
using a combination of a modern variant of the LZ77 algorithm, Huffman coding
@@ -7,11 +6,21 @@ and 2nd order context modeling, with a compression ratio comparable to the best
currently available general-purpose compression methods. It is similar in speed
with deflate but offers more dense compression.
-The specification of the Brotli Compressed Data Format is defined in the
-following internet draft:
-http://www.ietf.org/id/draft-alakuijala-brotli
+The specification of the Brotli Compressed Data Format is defined in [RFC 7932](https://www.ietf.org/rfc/rfc7932.txt).
Brotli is open-sourced under the MIT License, see the LICENSE file.
Brotli mailing list:
https://groups.google.com/forum/#!forum/brotli
+
+[![Build Status](https://travis-ci.org/google/brotli.svg?branch=master)](https://travis-ci.org/google/brotli)
+
+### Benchmarks
+* [Squash Compression Benchmark](https://quixdb.github.io/squash-benchmark/) / [Unstable Squash Compression Benchmark](https://quixdb.github.io/squash-benchmark/unstable/)
+* [Large Text Compression Benchmark](http://mattmahoney.net/dc/text.html)
+* [Lzturbo Benchmark](https://sites.google.com/site/powturbo/home/benchmark)
+
+### Related projects
+Independent [decoder](https://github.com/madler/brotli) implementation by Mark Adler, based entirely on format specification.
+
+JavaScript port of brotli [decoder](https://github.com/devongovett/brotli.js). Could be used directly via `npm install brotli`
diff --git a/thirdparty/brotli/common/constants.h b/thirdparty/brotli/common/constants.h
new file mode 100644
index 00000000..2ca99bc6
--- /dev/null
+++ b/thirdparty/brotli/common/constants.h
@@ -0,0 +1,47 @@
+/* Copyright 2016 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+#ifndef BROTLI_COMMON_CONSTANTS_H_
+#define BROTLI_COMMON_CONSTANTS_H_
+
+/* Specification: 7.3. Encoding of the context map */
+#define BROTLI_CONTEXT_MAP_MAX_RLE 16
+
+/* Specification: 2. Compressed representation overview */
+#define BROTLI_MAX_NUMBER_OF_BLOCK_TYPES 256
+
+/* Specification: 3.3. Alphabet sizes: insert-and-copy length */
+#define BROTLI_NUM_LITERAL_SYMBOLS 256
+#define BROTLI_NUM_COMMAND_SYMBOLS 704
+#define BROTLI_NUM_BLOCK_LEN_SYMBOLS 26
+#define BROTLI_MAX_CONTEXT_MAP_SYMBOLS (BROTLI_MAX_NUMBER_OF_BLOCK_TYPES + \
+ BROTLI_CONTEXT_MAP_MAX_RLE)
+#define BROTLI_MAX_BLOCK_TYPE_SYMBOLS (BROTLI_MAX_NUMBER_OF_BLOCK_TYPES + 2)
+
+/* Specification: 3.5. Complex prefix codes */
+#define BROTLI_REPEAT_PREVIOUS_CODE_LENGTH 16
+#define BROTLI_REPEAT_ZERO_CODE_LENGTH 17
+#define BROTLI_CODE_LENGTH_CODES (BROTLI_REPEAT_ZERO_CODE_LENGTH + 1)
+/* "code length of 8 is repeated" */
+#define BROTLI_INITIAL_REPEATED_CODE_LENGTH 8
+
+/* Specification: 4. Encoding of distances */
+#define BROTLI_NUM_DISTANCE_SHORT_CODES 16
+#define BROTLI_MAX_NPOSTFIX 3
+#define BROTLI_MAX_NDIRECT 120
+/* BROTLI_NUM_DISTANCE_SYMBOLS == 520 */
+#define BROTLI_NUM_DISTANCE_SYMBOLS (BROTLI_NUM_DISTANCE_SHORT_CODES + \
+ BROTLI_MAX_NDIRECT + \
+ (24 << (BROTLI_MAX_NPOSTFIX + 1)))
+
+/* 7.1. Context modes and context ID lookup for literals */
+/* "context IDs for literals are in the range of 0..63" */
+#define BROTLI_LITERAL_CONTEXT_BITS 6
+
+/* 7.2. Context ID for distances */
+#define BROTLI_DISTANCE_CONTEXT_BITS 2
+
+#endif /* BROTLI_COMMON_CONSTANTS_H_ */
diff --git a/thirdparty/brotli/dec/dictionary.c b/thirdparty/brotli/common/dictionary.c
index f8f58575..7e6bac12 100644
--- a/thirdparty/brotli/dec/dictionary.c
+++ b/thirdparty/brotli/common/dictionary.c
@@ -10,9 +10,17 @@
extern "C" {
#endif
-/* In case of multiple definition linker error with dictionary.cc from the
- encoder: include only one of enc/dictionary.cc or dec/dictionary.c in a
- target using both enc and dec. */
+const uint32_t kBrotliDictionaryOffsetsByLength[] = {
+ 0, 0, 0, 0, 0, 4096, 9216, 21504, 35840, 44032, 53248, 63488, 74752, 87040,
+ 93696, 100864, 104704, 106752, 108928, 113536, 115968, 118528, 119872, 121280,
+ 122016
+};
+
+const uint8_t kBrotliDictionarySizeBitsByLength[] = {
+ 0, 0, 0, 0, 10, 10, 11, 11, 10, 10, 10, 10, 10,
+ 9, 9, 8, 7, 7, 8, 7, 7, 6, 6, 5, 5,
+};
+
const uint8_t kBrotliDictionary[122784] = {
0x74, 0x69, 0x6d, 0x65, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x69, 0x66, 0x65, 0x6c,
0x65, 0x66, 0x74, 0x62, 0x61, 0x63, 0x6b, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x61,
diff --git a/thirdparty/brotli/common/dictionary.h b/thirdparty/brotli/common/dictionary.h
new file mode 100644
index 00000000..a78bde5f
--- /dev/null
+++ b/thirdparty/brotli/common/dictionary.h
@@ -0,0 +1,29 @@
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Collection of static dictionary words. */
+
+#ifndef BROTLI_COMMON_DICTIONARY_H_
+#define BROTLI_COMMON_DICTIONARY_H_
+
+#include "./types.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+extern const uint8_t kBrotliDictionary[122784];
+extern const uint32_t kBrotliDictionaryOffsetsByLength[25];
+extern const uint8_t kBrotliDictionarySizeBitsByLength[25];
+
+#define kBrotliMinDictionaryWordLength 4
+#define kBrotliMaxDictionaryWordLength 24
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
+
+#endif /* BROTLI_COMMON_DICTIONARY_H_ */
diff --git a/thirdparty/brotli/common/port.h b/thirdparty/brotli/common/port.h
new file mode 100644
index 00000000..1af9e316
--- /dev/null
+++ b/thirdparty/brotli/common/port.h
@@ -0,0 +1,107 @@
+/* Copyright 2016 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Macros for compiler / platform specific features and build options. */
+
+#ifndef BROTLI_COMMON_PORT_H_
+#define BROTLI_COMMON_PORT_H_
+
+/* Compatibility with non-clang compilers. */
+#ifndef __has_builtin
+#define __has_builtin(x) 0
+#endif
+
+#ifndef __has_attribute
+#define __has_attribute(x) 0
+#endif
+
+#ifndef __has_feature
+#define __has_feature(x) 0
+#endif
+
+#if defined(__GNUC__) && defined(__GNUC_MINOR__)
+#define BROTLI_GCC_VERSION (__GNUC__ * 100 + __GNUC_MINOR__)
+#else
+#define BROTLI_GCC_VERSION 0
+#endif
+
+#if defined(__ICC)
+#define BROTLI_ICC_VERSION __ICC
+#else
+#define BROTLI_ICC_VERSION 0
+#endif
+
+#if defined(BROTLI_BUILD_MODERN_COMPILER)
+#define BROTLI_MODERN_COMPILER 1
+#elif BROTLI_GCC_VERSION > 300 || BROTLI_ICC_VERSION >= 1600
+#define BROTLI_MODERN_COMPILER 1
+#else
+#define BROTLI_MODERN_COMPILER 0
+#endif
+
+/* Define "PREDICT_TRUE" and "PREDICT_FALSE" macros for capable compilers.
+
+To apply compiler hint, enclose the branching condition into macros, like this:
+
+ if (PREDICT_TRUE(zero == 0)) {
+ // main execution path
+ } else {
+ // compiler should place this code outside of main execution path
+ }
+
+OR:
+
+ if (PREDICT_FALSE(something_rare_or_unexpected_happens)) {
+ // compiler should place this code outside of main execution path
+ }
+
+*/
+#if BROTLI_MODERN_COMPILER || __has_builtin(__builtin_expect)
+#define PREDICT_TRUE(x) (__builtin_expect(!!(x), 1))
+#define PREDICT_FALSE(x) (__builtin_expect(x, 0))
+#else
+#define PREDICT_FALSE(x) (x)
+#define PREDICT_TRUE(x) (x)
+#endif
+
+#if BROTLI_MODERN_COMPILER || __has_attribute(always_inline)
+#define ATTRIBUTE_ALWAYS_INLINE __attribute__ ((always_inline))
+#else
+#define ATTRIBUTE_ALWAYS_INLINE
+#endif
+
+#if defined(_WIN32) || defined(__CYGWIN__)
+#define ATTRIBUTE_VISIBILITY_HIDDEN
+#elif BROTLI_MODERN_COMPILER || __has_attribute(visibility)
+#define ATTRIBUTE_VISIBILITY_HIDDEN __attribute__ ((visibility ("hidden")))
+#else
+#define ATTRIBUTE_VISIBILITY_HIDDEN
+#endif
+
+#ifndef BROTLI_INTERNAL
+#define BROTLI_INTERNAL ATTRIBUTE_VISIBILITY_HIDDEN
+#endif
+
+#ifndef _MSC_VER
+#if defined(__cplusplus) || !defined(__STRICT_ANSI__) || \
+ __STDC_VERSION__ >= 199901L
+#define BROTLI_INLINE inline ATTRIBUTE_ALWAYS_INLINE
+#else
+#define BROTLI_INLINE
+#endif
+#else /* _MSC_VER */
+#define BROTLI_INLINE __forceinline
+#endif /* _MSC_VER */
+
+#if BROTLI_MODERN_COMPILER || __has_attribute(noinline)
+#define BROTLI_NOINLINE __attribute__((noinline))
+#else
+#define BROTLI_NOINLINE
+#endif
+
+#define BROTLI_UNUSED(X) (void)(X)
+
+#endif /* BROTLI_COMMON_PORT_H_ */
diff --git a/thirdparty/brotli/dec/types.h b/thirdparty/brotli/common/types.h
index 0f7a0216..2e9135a5 100644
--- a/thirdparty/brotli/dec/types.h
+++ b/thirdparty/brotli/common/types.h
@@ -6,8 +6,8 @@
/* Common types */
-#ifndef BROTLI_DEC_TYPES_H_
-#define BROTLI_DEC_TYPES_H_
+#ifndef BROTLI_COMMON_TYPES_H_
+#define BROTLI_COMMON_TYPES_H_
#include <stddef.h> /* for size_t */
@@ -24,6 +24,26 @@ typedef __int64 int64_t;
#include <stdint.h>
#endif /* defined(_MSC_VER) && (_MSC_VER < 1600) */
+#if (!defined(_MSC_VER) || (_MSC_VER >= 1800)) && \
+ (defined(__cplusplus) || (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L))
+#include <stdbool.h>
+#define BROTLI_BOOL bool
+#define BROTLI_TRUE true
+#define BROTLI_FALSE false
+#define TO_BROTLI_BOOL(X) (!!(X))
+#else
+typedef enum {
+ BROTLI_FALSE = 0,
+ BROTLI_TRUE = !BROTLI_FALSE
+} BROTLI_BOOL;
+#define TO_BROTLI_BOOL(X) (!!(X) ? BROTLI_TRUE : BROTLI_FALSE)
+#endif
+
+#define MAKE_UINT64_T(high, low) ((((uint64_t)(high)) << 32) | low)
+
+#define BROTLI_UINT32_MAX (~((uint32_t)0))
+#define BROTLI_SIZE_MAX (~((size_t)0))
+
/* Allocating function pointer. Function MUST return 0 in the case of failure.
Otherwise it MUST return a valid pointer to a memory region of at least
size length. Neither items nor size are allowed to be 0.
@@ -35,4 +55,4 @@ typedef void* (*brotli_alloc_func)(void* opaque, size_t size);
address is 0. */
typedef void (*brotli_free_func)(void* opaque, void* address);
-#endif /* BROTLI_DEC_TYPES_H_ */
+#endif /* BROTLI_COMMON_TYPES_H_ */
diff --git a/thirdparty/brotli/dec/bit_reader.c b/thirdparty/brotli/dec/bit_reader.c
index cde90af5..5498269e 100644
--- a/thirdparty/brotli/dec/bit_reader.c
+++ b/thirdparty/brotli/dec/bit_reader.c
@@ -8,8 +8,8 @@
#include "./bit_reader.h"
+#include "../common/types.h"
#include "./port.h"
-#include "./types.h"
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
@@ -20,7 +20,7 @@ void BrotliInitBitReader(BrotliBitReader* const br) {
br->bit_pos_ = sizeof(br->val_) << 3;
}
-int BrotliWarmupBitReader(BrotliBitReader* const br) {
+BROTLI_BOOL BrotliWarmupBitReader(BrotliBitReader* const br) {
size_t aligned_read_mask = (sizeof(br->val_) >> 1) - 1;
/* Fixing alignment after unaligned BrotliFillWindow would result accumulator
overflow. If unalignment is caused by BrotliSafeReadBits, then there is
@@ -30,17 +30,17 @@ int BrotliWarmupBitReader(BrotliBitReader* const br) {
}
if (BrotliGetAvailableBits(br) == 0) {
if (!BrotliPullByte(br)) {
- return 0;
+ return BROTLI_FALSE;
}
}
while ((((size_t)br->next_in) & aligned_read_mask) != 0) {
if (!BrotliPullByte(br)) {
/* If we consumed all the input, we don't care about the alignment. */
- return 1;
+ return BROTLI_TRUE;
}
}
- return 1;
+ return BROTLI_TRUE;
}
#if defined(__cplusplus) || defined(c_plusplus)
diff --git a/thirdparty/brotli/dec/bit_reader.h b/thirdparty/brotli/dec/bit_reader.h
index e77d1143..22ea1936 100644
--- a/thirdparty/brotli/dec/bit_reader.h
+++ b/thirdparty/brotli/dec/bit_reader.h
@@ -11,12 +11,8 @@
#include <string.h> /* memcpy */
+#include "../common/types.h"
#include "./port.h"
-#include "./types.h"
-
-#ifdef BROTLI_DECODE_DEBUG
-#include <stdio.h>
-#endif
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
@@ -66,13 +62,13 @@ typedef struct {
} BrotliBitReaderState;
/* Initializes the bitreader fields. */
-void BrotliInitBitReader(BrotliBitReader* const br);
+BROTLI_INTERNAL void BrotliInitBitReader(BrotliBitReader* const br);
/* Ensures that accumulator is not empty. May consume one byte of input.
Returns 0 if data is required but there is no input available.
For BROTLI_ALIGNED_READ this function also prepares bit reader for aligned
reading. */
-int BrotliWarmupBitReader(BrotliBitReader* const br);
+BROTLI_INTERNAL BROTLI_BOOL BrotliWarmupBitReader(BrotliBitReader* const br);
static BROTLI_INLINE void BrotliBitReaderSaveState(
BrotliBitReader* const from, BrotliBitReaderState* to) {
@@ -103,9 +99,9 @@ static BROTLI_INLINE size_t BrotliGetRemainingBytes(BrotliBitReader* br) {
/* Checks if there is at least num bytes left in the input ringbuffer (excluding
the bits remaining in br->val_). */
-static BROTLI_INLINE int BrotliCheckInputAmount(
+static BROTLI_INLINE BROTLI_BOOL BrotliCheckInputAmount(
BrotliBitReader* const br, size_t num) {
- return br->avail_in >= num;
+ return TO_BROTLI_BOOL(br->avail_in >= num);
}
static BROTLI_INLINE uint16_t BrotliLoad16LE(const uint8_t* in) {
@@ -224,9 +220,9 @@ static BROTLI_INLINE void BrotliFillBitWindow16(BrotliBitReader* const br) {
}
/* Pulls one byte of input to accumulator. */
-static BROTLI_INLINE int BrotliPullByte(BrotliBitReader* const br) {
+static BROTLI_INLINE BROTLI_BOOL BrotliPullByte(BrotliBitReader* const br) {
if (br->avail_in == 0) {
- return 0;
+ return BROTLI_FALSE;
}
br->val_ >>= 8;
#if (BROTLI_64_BITS)
@@ -237,7 +233,7 @@ static BROTLI_INLINE int BrotliPullByte(BrotliBitReader* const br) {
br->bit_pos_ -= 8;
--br->avail_in;
++br->next_in;
- return 1;
+ return BROTLI_TRUE;
}
/* Returns currently available bits.
@@ -263,15 +259,15 @@ static BROTLI_INLINE uint32_t BrotliGetBits(
/* Tries to peek the specified amount of bits. Returns 0, if there is not
enough input. */
-static BROTLI_INLINE int BrotliSafeGetBits(
+static BROTLI_INLINE BROTLI_BOOL BrotliSafeGetBits(
BrotliBitReader* const br, uint32_t n_bits, uint32_t* val) {
while (BrotliGetAvailableBits(br) < n_bits) {
if (!BrotliPullByte(br)) {
- return 0;
+ return BROTLI_FALSE;
}
}
*val = (uint32_t)BrotliGetBitsUnmasked(br) & BitMask(n_bits);
- return 1;
+ return BROTLI_TRUE;
}
/* Advances the bit pos by n_bits. */
@@ -298,10 +294,8 @@ static BROTLI_INLINE void BrotliBitReaderUnload(BrotliBitReader* br) {
static BROTLI_INLINE void BrotliTakeBits(
BrotliBitReader* const br, uint32_t n_bits, uint32_t* val) {
*val = (uint32_t)BrotliGetBitsUnmasked(br) & BitMask(n_bits);
-#ifdef BROTLI_DECODE_DEBUG
- printf("[BrotliReadBits] %d %d %d val: %6x\n",
- (int)br->avail_in, (int)br->bit_pos_, n_bits, (int)*val);
-#endif
+ BROTLI_LOG(("[BrotliReadBits] %d %d %d val: %6x\n",
+ (int)br->avail_in, (int)br->bit_pos_, n_bits, (int)*val));
BrotliDropBits(br, n_bits);
}
@@ -327,26 +321,26 @@ static BROTLI_INLINE uint32_t BrotliReadBits(
/* Tries to read the specified amount of bits. Returns 0, if there is not
enough input. n_bits MUST be positive. */
-static BROTLI_INLINE int BrotliSafeReadBits(
+static BROTLI_INLINE BROTLI_BOOL BrotliSafeReadBits(
BrotliBitReader* const br, uint32_t n_bits, uint32_t* val) {
while (BrotliGetAvailableBits(br) < n_bits) {
if (!BrotliPullByte(br)) {
- return 0;
+ return BROTLI_FALSE;
}
}
BrotliTakeBits(br, n_bits, val);
- return 1;
+ return BROTLI_TRUE;
}
/* Advances the bit reader position to the next byte boundary and verifies
that any skipped bits are set to zero. */
-static BROTLI_INLINE int BrotliJumpToByteBoundary(BrotliBitReader* br) {
+static BROTLI_INLINE BROTLI_BOOL BrotliJumpToByteBoundary(BrotliBitReader* br) {
uint32_t pad_bits_count = BrotliGetAvailableBits(br) & 0x7;
uint32_t pad_bits = 0;
if (pad_bits_count != 0) {
BrotliTakeBits(br, pad_bits_count, &pad_bits);
}
- return pad_bits == 0;
+ return TO_BROTLI_BOOL(pad_bits == 0);
}
/* Peeks a byte at specified offset.
diff --git a/thirdparty/brotli/dec/context.h b/thirdparty/brotli/dec/context.h
index 37ebe6ae..2a34e4d2 100644
--- a/thirdparty/brotli/dec/context.h
+++ b/thirdparty/brotli/dec/context.h
@@ -99,7 +99,7 @@
#ifndef BROTLI_DEC_CONTEXT_H_
#define BROTLI_DEC_CONTEXT_H_
-#include "./types.h"
+#include "../common/types.h"
enum ContextType {
CONTEXT_LSB6 = 0,
diff --git a/thirdparty/brotli/dec/decode.c b/thirdparty/brotli/dec/decode.c
index a81706b0..91e1d1bf 100644
--- a/thirdparty/brotli/dec/decode.c
+++ b/thirdparty/brotli/dec/decode.c
@@ -10,62 +10,35 @@
#include <arm_neon.h>
#endif
-#include <stdio.h> /* printf (debug output) */
#include <stdlib.h> /* free, malloc */
#include <string.h> /* memcpy, memset */
+#include "../common/constants.h"
+#include "../common/dictionary.h"
#include "./bit_reader.h"
#include "./context.h"
-#include "./dictionary.h"
#include "./huffman.h"
#include "./port.h"
#include "./prefix.h"
+#include "./state.h"
#include "./transform.h"
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
#endif
-/* BROTLI_FAILURE macro unwraps to BROTLI_RESULT_ERROR in non-debug build. */
-/* In debug build it dumps file name, line and pretty function name. */
-#if defined(_MSC_VER) || \
- (!defined(BROTLI_DEBUG) && !defined(BROTLI_DECODE_DEBUG))
-#define BROTLI_FAILURE() BROTLI_RESULT_ERROR
-#else
-#define BROTLI_FAILURE() BrotliFailure(__FILE__, __LINE__, __PRETTY_FUNCTION__)
-static inline BrotliResult BrotliFailure(const char* f, int l, const char* fn) {
- fprintf(stderr, "ERROR at %s:%d (%s)\n", f, l, fn);
- fflush(stderr);
- return BROTLI_RESULT_ERROR;
-}
-#endif
+#define BROTLI_FAILURE(CODE) (BROTLI_DUMP(), CODE)
-#ifdef BROTLI_DECODE_DEBUG
#define BROTLI_LOG_UINT(name) \
- printf("[%s] %s = %lu\n", __func__, #name, (unsigned long)(name))
+ BROTLI_LOG(("[%s] %s = %lu\n", __func__, #name, (unsigned long)(name)))
#define BROTLI_LOG_ARRAY_INDEX(array_name, idx) \
- printf("[%s] %s[%lu] = %lu\n", __func__, #array_name, \
- (unsigned long)(idx), (unsigned long)array_name[idx])
-#define BROTLI_LOG(x) printf x
-#else
-#define BROTLI_LOG_UINT(name)
-#define BROTLI_LOG_ARRAY_INDEX(array_name, idx)
-#define BROTLI_LOG(x)
-#endif
-
-static const uint32_t kDefaultCodeLength = 8;
-static const uint32_t kCodeLengthRepeatCode = 16;
-static const uint32_t kNumLiteralCodes = 256;
-static const uint32_t kNumInsertAndCopyCodes = 704;
-static const uint32_t kNumBlockLengthCodes = 26;
-static const int kLiteralContextBits = 6;
-static const int kDistanceContextBits = 2;
+ BROTLI_LOG(("[%s] %s[%lu] = %lu\n", __func__, #array_name, \
+ (unsigned long)(idx), (unsigned long)array_name[idx]))
#define HUFFMAN_TABLE_BITS 8U
#define HUFFMAN_TABLE_MASK 0xff
-#define CODE_LENGTH_CODES 18
-static const uint8_t kCodeLengthCodeOrder[CODE_LENGTH_CODES] = {
+static const uint8_t kCodeLengthCodeOrder[BROTLI_CODE_LENGTH_CODES] = {
1, 2, 3, 4, 0, 5, 17, 6, 16, 7, 8, 9, 10, 11, 12, 13, 14, 15,
};
@@ -78,36 +51,52 @@ static const uint8_t kCodeLengthPrefixValue[16] = {
0, 4, 3, 2, 0, 4, 3, 1, 0, 4, 3, 2, 0, 4, 3, 5,
};
-#define NUM_DISTANCE_SHORT_CODES 16
-
-BrotliState* BrotliCreateState(
+BrotliDecoderState* BrotliDecoderCreateInstance(
brotli_alloc_func alloc_func, brotli_free_func free_func, void* opaque) {
- BrotliState* state = 0;
+ BrotliDecoderState* state = 0;
if (!alloc_func && !free_func) {
- state = (BrotliState*)malloc(sizeof(BrotliState));
+ state = (BrotliDecoderState*)malloc(sizeof(BrotliDecoderState));
} else if (alloc_func && free_func) {
- state = (BrotliState*)alloc_func(opaque, sizeof(BrotliState));
+ state = (BrotliDecoderState*)alloc_func(opaque, sizeof(BrotliDecoderState));
}
if (state == 0) {
- (void)BROTLI_FAILURE();
+ BROTLI_DUMP();
return 0;
}
- BrotliStateInitWithCustomAllocators(state, alloc_func, free_func, opaque);
+ BrotliDecoderStateInitWithCustomAllocators(
+ state, alloc_func, free_func, opaque);
+ state->error_code = BROTLI_DECODER_NO_ERROR;
return state;
}
-/* Deinitializes and frees BrotliState instance. */
-void BrotliDestroyState(BrotliState* state) {
+/* Deinitializes and frees BrotliDecoderState instance. */
+void BrotliDecoderDestroyInstance(BrotliDecoderState* state) {
if (!state) {
return;
} else {
brotli_free_func free_func = state->free_func;
void* opaque = state->memory_manager_opaque;
- BrotliStateCleanup(state);
+ BrotliDecoderStateCleanup(state);
free_func(opaque, state);
}
}
+/* Saves error code and converts it to BrotliDecoderResult */
+static BROTLI_NOINLINE BrotliDecoderResult SaveErrorCode(
+ BrotliDecoderState* s, BrotliDecoderErrorCode e) {
+ s->error_code = (int)e;
+ switch (e) {
+ case BROTLI_DECODER_SUCCESS:
+ return BROTLI_DECODER_RESULT_SUCCESS;
+ case BROTLI_DECODER_NEEDS_MORE_INPUT:
+ return BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT;
+ case BROTLI_DECODER_NEEDS_MORE_OUTPUT:
+ return BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT;
+ default:
+ return BROTLI_DECODER_RESULT_ERROR;
+ }
+}
+
/* Decodes a number in the range [9..24], by reading 1 - 7 bits.
Precondition: bit-reader accumulator has at least 7 bits. */
static uint32_t DecodeWindowBits(BrotliBitReader* br) {
@@ -138,29 +127,29 @@ static BROTLI_INLINE void memmove16(uint8_t* dst, uint8_t* src) {
}
/* Decodes a number in the range [0..255], by reading 1 - 11 bits. */
-static BROTLI_NOINLINE BrotliResult DecodeVarLenUint8(BrotliState* s,
- BrotliBitReader* br, uint32_t* value) {
+static BROTLI_NOINLINE BrotliDecoderErrorCode DecodeVarLenUint8(
+ BrotliDecoderState* s, BrotliBitReader* br, uint32_t* value) {
uint32_t bits;
switch (s->substate_decode_uint8) {
case BROTLI_STATE_DECODE_UINT8_NONE:
if (PREDICT_FALSE(!BrotliSafeReadBits(br, 1, &bits))) {
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
if (bits == 0) {
*value = 0;
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
/* No break, transit to the next state. */
case BROTLI_STATE_DECODE_UINT8_SHORT:
if (PREDICT_FALSE(!BrotliSafeReadBits(br, 3, &bits))) {
s->substate_decode_uint8 = BROTLI_STATE_DECODE_UINT8_SHORT;
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
if (bits == 0) {
*value = 1;
s->substate_decode_uint8 = BROTLI_STATE_DECODE_UINT8_NONE;
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
/* Use output value as a temporary storage. It MUST be persisted. */
*value = bits;
@@ -169,27 +158,28 @@ static BROTLI_NOINLINE BrotliResult DecodeVarLenUint8(BrotliState* s,
case BROTLI_STATE_DECODE_UINT8_LONG:
if (PREDICT_FALSE(!BrotliSafeReadBits(br, *value, &bits))) {
s->substate_decode_uint8 = BROTLI_STATE_DECODE_UINT8_LONG;
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
*value = (1U << *value) + bits;
s->substate_decode_uint8 = BROTLI_STATE_DECODE_UINT8_NONE;
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
default:
- return BROTLI_FAILURE();
+ return
+ BROTLI_FAILURE(BROTLI_DECODER_ERROR_UNREACHABLE);
}
}
/* Decodes a metablock length and flags by reading 2 - 31 bits. */
-static BrotliResult BROTLI_NOINLINE DecodeMetaBlockLength(BrotliState* s,
- BrotliBitReader* br) {
+static BrotliDecoderErrorCode BROTLI_NOINLINE DecodeMetaBlockLength(
+ BrotliDecoderState* s, BrotliBitReader* br) {
uint32_t bits;
int i;
for (;;) {
switch (s->substate_metablock_header) {
case BROTLI_STATE_METABLOCK_HEADER_NONE:
if (!BrotliSafeReadBits(br, 1, &bits)) {
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
s->is_last_metablock = (uint8_t)bits;
s->meta_block_remaining_len = 0;
@@ -204,18 +194,18 @@ static BrotliResult BROTLI_NOINLINE DecodeMetaBlockLength(BrotliState* s,
case BROTLI_STATE_METABLOCK_HEADER_EMPTY:
if (!BrotliSafeReadBits(br, 1, &bits)) {
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
if (bits) {
s->substate_metablock_header = BROTLI_STATE_METABLOCK_HEADER_NONE;
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
s->substate_metablock_header = BROTLI_STATE_METABLOCK_HEADER_NIBBLES;
/* No break, transit to the next state. */
case BROTLI_STATE_METABLOCK_HEADER_NIBBLES:
if (!BrotliSafeReadBits(br, 2, &bits)) {
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
s->size_nibbles = (uint8_t)(bits + 4);
s->loop_counter = 0;
@@ -232,10 +222,10 @@ static BrotliResult BROTLI_NOINLINE DecodeMetaBlockLength(BrotliState* s,
for (; i < s->size_nibbles; ++i) {
if (!BrotliSafeReadBits(br, 4, &bits)) {
s->loop_counter = i;
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
if (i + 1 == s->size_nibbles && s->size_nibbles > 4 && bits == 0) {
- return BROTLI_FAILURE();
+ return BROTLI_FAILURE(BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE);
}
s->meta_block_remaining_len |= (int)(bits << (i * 4));
}
@@ -246,31 +236,31 @@ static BrotliResult BROTLI_NOINLINE DecodeMetaBlockLength(BrotliState* s,
case BROTLI_STATE_METABLOCK_HEADER_UNCOMPRESSED:
if (!s->is_last_metablock) {
if (!BrotliSafeReadBits(br, 1, &bits)) {
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
s->is_uncompressed = (uint8_t)bits;
}
++s->meta_block_remaining_len;
s->substate_metablock_header = BROTLI_STATE_METABLOCK_HEADER_NONE;
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
case BROTLI_STATE_METABLOCK_HEADER_RESERVED:
if (!BrotliSafeReadBits(br, 1, &bits)) {
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
if (bits != 0) {
- return BROTLI_FAILURE();
+ return BROTLI_FAILURE(BROTLI_DECODER_ERROR_FORMAT_RESERVED);
}
s->substate_metablock_header = BROTLI_STATE_METABLOCK_HEADER_BYTES;
/* No break, transit to the next state. */
case BROTLI_STATE_METABLOCK_HEADER_BYTES:
if (!BrotliSafeReadBits(br, 2, &bits)) {
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
if (bits == 0) {
s->substate_metablock_header = BROTLI_STATE_METABLOCK_HEADER_NONE;
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
s->size_nibbles = (uint8_t)bits;
s->substate_metablock_header = BROTLI_STATE_METABLOCK_HEADER_METADATA;
@@ -281,19 +271,21 @@ static BrotliResult BROTLI_NOINLINE DecodeMetaBlockLength(BrotliState* s,
for (; i < s->size_nibbles; ++i) {
if (!BrotliSafeReadBits(br, 8, &bits)) {
s->loop_counter = i;
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
if (i + 1 == s->size_nibbles && s->size_nibbles > 1 && bits == 0) {
- return BROTLI_FAILURE();
+ return BROTLI_FAILURE(
+ BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE);
}
s->meta_block_remaining_len |= (int)(bits << (i * 8));
}
++s->meta_block_remaining_len;
s->substate_metablock_header = BROTLI_STATE_METABLOCK_HEADER_NONE;
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
default:
- return BROTLI_FAILURE();
+ return
+ BROTLI_FAILURE(BROTLI_DECODER_ERROR_UNREACHABLE);
}
}
}
@@ -325,17 +317,16 @@ static BROTLI_INLINE uint32_t ReadSymbol(const HuffmanCode* table,
/* Same as DecodeSymbol, but it is known that there is less than 15 bits of
input are currently available. */
-static BROTLI_NOINLINE int SafeDecodeSymbol(const HuffmanCode* table,
- BrotliBitReader* br,
- uint32_t* result) {
+static BROTLI_NOINLINE BROTLI_BOOL SafeDecodeSymbol(
+ const HuffmanCode* table, BrotliBitReader* br, uint32_t* result) {
uint32_t val;
uint32_t available_bits = BrotliGetAvailableBits(br);
if (available_bits == 0) {
if (table->bits == 0) {
*result = table->value;
- return 1;
+ return BROTLI_TRUE;
}
- return 0; /* No valid bits at all. */
+ return BROTLI_FALSE; /* No valid bits at all. */
}
val = (uint32_t)BrotliGetBitsUnmasked(br);
table += val & HUFFMAN_TABLE_MASK;
@@ -343,13 +334,13 @@ static BROTLI_NOINLINE int SafeDecodeSymbol(const HuffmanCode* table,
if (table->bits <= available_bits) {
BrotliDropBits(br, table->bits);
*result = table->value;
- return 1;
+ return BROTLI_TRUE;
} else {
- return 0; /* Not enough bits for the first level. */
+ return BROTLI_FALSE; /* Not enough bits for the first level. */
}
}
if (available_bits <= HUFFMAN_TABLE_BITS) {
- return 0; /* Not enough bits to move to the second level. */
+ return BROTLI_FALSE; /* Not enough bits to move to the second level. */
}
/* Speculatively drop HUFFMAN_TABLE_BITS. */
@@ -357,26 +348,24 @@ static BROTLI_NOINLINE int SafeDecodeSymbol(const HuffmanCode* table,
available_bits -= HUFFMAN_TABLE_BITS;
table += table->value + val;
if (available_bits < table->bits) {
- return 0; /* Not enough bits for the second level. */
+ return BROTLI_FALSE; /* Not enough bits for the second level. */
}
BrotliDropBits(br, HUFFMAN_TABLE_BITS + table->bits);
*result = table->value;
- return 1;
+ return BROTLI_TRUE;
}
-static BROTLI_INLINE int SafeReadSymbol(const HuffmanCode* table,
- BrotliBitReader* br,
- uint32_t* result) {
+static BROTLI_INLINE BROTLI_BOOL SafeReadSymbol(
+ const HuffmanCode* table, BrotliBitReader* br, uint32_t* result) {
uint32_t val;
if (PREDICT_TRUE(BrotliSafeGetBits(br, 15, &val))) {
*result = DecodeSymbol(val, table, br);
- return 1;
+ return BROTLI_TRUE;
}
return SafeDecodeSymbol(table, br, result);
}
-
/* Makes a look-up in first level Huffman table. Peeks 8 bits. */
static BROTLI_INLINE void PreloadSymbol(int safe,
const HuffmanCode* table,
@@ -426,8 +415,8 @@ static BROTLI_INLINE uint32_t Log2Floor(uint32_t x) {
Totally 1..4 symbols are read, 1..10 bits each.
The list of symbols MUST NOT contain duplicates.
*/
-static BrotliResult ReadSimpleHuffmanSymbols(uint32_t alphabet_size,
- BrotliState* s) {
+static BrotliDecoderErrorCode ReadSimpleHuffmanSymbols(
+ uint32_t alphabet_size, BrotliDecoderState* s) {
/* max_bits == 1..10; symbol == 0..3; 1..40 bits will be read. */
BrotliBitReader* br = &s->br;
uint32_t max_bits = Log2Floor(alphabet_size - 1);
@@ -438,10 +427,11 @@ static BrotliResult ReadSimpleHuffmanSymbols(uint32_t alphabet_size,
if (PREDICT_FALSE(!BrotliSafeReadBits(br, max_bits, &v))) {
s->sub_loop_counter = i;
s->substate_huffman = BROTLI_STATE_HUFFMAN_SIMPLE_READ;
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
if (v >= alphabet_size) {
- return BROTLI_FAILURE();
+ return
+ BROTLI_FAILURE(BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET);
}
s->symbols_lists_array[i] = (uint16_t)v;
BROTLI_LOG_UINT(s->symbols_lists_array[i]);
@@ -452,12 +442,12 @@ static BrotliResult ReadSimpleHuffmanSymbols(uint32_t alphabet_size,
uint32_t k = i + 1;
for (; k <= num_symbols; ++k) {
if (s->symbols_lists_array[i] == s->symbols_lists_array[k]) {
- return BROTLI_FAILURE();
+ return BROTLI_FAILURE(BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME);
}
}
}
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
/* Process single decoded symbol code length:
@@ -485,12 +475,14 @@ static BROTLI_INLINE void ProcessSingleCodeLength(uint32_t code_len,
/* Process repeated symbol code length.
A) Check if it is the extension of previous repeat sequence; if the decoded
- value is not kCodeLengthRepeatCode, then it is a new symbol-skip
+ value is not BROTLI_REPEAT_PREVIOUS_CODE_LENGTH, then it is a new
+ symbol-skip
B) Update repeat variable
C) Check if operation is feasible (fits alphapet)
D) For each symbol do the same operations as in ProcessSingleCodeLength
- PRECONDITION: code_len == kCodeLengthRepeatCode or kCodeLengthRepeatCode + 1
+ PRECONDITION: code_len == BROTLI_REPEAT_PREVIOUS_CODE_LENGTH or
+ code_len == BROTLI_REPEAT_ZERO_CODE_LENGTH
*/
static BROTLI_INLINE void ProcessRepeatedCodeLength(uint32_t code_len,
uint32_t repeat_delta, uint32_t alphabet_size, uint32_t* symbol,
@@ -498,9 +490,11 @@ static BROTLI_INLINE void ProcessRepeatedCodeLength(uint32_t code_len,
uint32_t* repeat_code_len, uint16_t* symbol_lists,
uint16_t* code_length_histo, int* next_symbol) {
uint32_t old_repeat;
- uint32_t new_len = 0;
- if (code_len == kCodeLengthRepeatCode) {
+ uint32_t extra_bits = 3; /* for BROTLI_REPEAT_ZERO_CODE_LENGTH */
+ uint32_t new_len = 0; /* for BROTLI_REPEAT_ZERO_CODE_LENGTH */
+ if (code_len == BROTLI_REPEAT_PREVIOUS_CODE_LENGTH) {
new_len = *prev_code_len;
+ extra_bits = 2;
}
if (*repeat_code_len != new_len) {
*repeat = 0;
@@ -509,12 +503,12 @@ static BROTLI_INLINE void ProcessRepeatedCodeLength(uint32_t code_len,
old_repeat = *repeat;
if (*repeat > 0) {
*repeat -= 2;
- *repeat <<= code_len - 14U;
+ *repeat <<= extra_bits;
}
*repeat += repeat_delta + 3U;
repeat_delta = *repeat - old_repeat;
if (*symbol + repeat_delta > alphabet_size) {
- (void)BROTLI_FAILURE();
+ BROTLI_DUMP();
*symbol = alphabet_size;
*space = 0xFFFFF;
return;
@@ -538,8 +532,8 @@ static BROTLI_INLINE void ProcessRepeatedCodeLength(uint32_t code_len,
}
/* Reads and decodes symbol codelengths. */
-static BrotliResult ReadSymbolCodeLengths(
- uint32_t alphabet_size, BrotliState* s) {
+static BrotliDecoderErrorCode ReadSymbolCodeLengths(
+ uint32_t alphabet_size, BrotliDecoderState* s) {
BrotliBitReader* br = &s->br;
uint32_t symbol = s->symbol;
uint32_t repeat = s->repeat;
@@ -550,7 +544,7 @@ static BrotliResult ReadSymbolCodeLengths(
uint16_t* code_length_histo = s->code_length_histo;
int* next_symbol = s->next_symbol;
if (!BrotliWarmupBitReader(br)) {
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
while (symbol < alphabet_size && space > 0) {
const HuffmanCode* p = s->table;
@@ -561,31 +555,33 @@ static BrotliResult ReadSymbolCodeLengths(
s->prev_code_len = prev_code_len;
s->repeat_code_len = repeat_code_len;
s->space = space;
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
BrotliFillBitWindow16(br);
p += BrotliGetBitsUnmasked(br) &
BitMask(BROTLI_HUFFMAN_MAX_CODE_LENGTH_CODE_LENGTH);
BrotliDropBits(br, p->bits); /* Use 1..5 bits */
code_len = p->value; /* code_len == 0..17 */
- if (code_len < kCodeLengthRepeatCode) {
+ if (code_len < BROTLI_REPEAT_PREVIOUS_CODE_LENGTH) {
ProcessSingleCodeLength(code_len, &symbol, &repeat, &space,
&prev_code_len, symbol_lists, code_length_histo, next_symbol);
} else { /* code_len == 16..17, extra_bits == 2..3 */
+ uint32_t extra_bits =
+ (code_len == BROTLI_REPEAT_PREVIOUS_CODE_LENGTH) ? 2 : 3;
uint32_t repeat_delta =
- (uint32_t)BrotliGetBitsUnmasked(br) & BitMask(code_len - 14U);
- BrotliDropBits(br, code_len - 14U);
+ (uint32_t)BrotliGetBitsUnmasked(br) & BitMask(extra_bits);
+ BrotliDropBits(br, extra_bits);
ProcessRepeatedCodeLength(code_len, repeat_delta, alphabet_size,
&symbol, &repeat, &space, &prev_code_len, &repeat_code_len,
symbol_lists, code_length_histo, next_symbol);
}
}
s->space = space;
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
-static BrotliResult SafeReadSymbolCodeLengths(
- uint32_t alphabet_size, BrotliState* s) {
+static BrotliDecoderErrorCode SafeReadSymbolCodeLengths(
+ uint32_t alphabet_size, BrotliDecoderState* s) {
BrotliBitReader* br = &s->br;
while (s->symbol < alphabet_size && s->space > 0) {
const HuffmanCode* p = s->table;
@@ -598,7 +594,7 @@ static BrotliResult SafeReadSymbolCodeLengths(
p += bits & BitMask(BROTLI_HUFFMAN_MAX_CODE_LENGTH_CODE_LENGTH);
if (p->bits > available_bits) goto pullMoreInput;
code_len = p->value; /* code_len == 0..17 */
- if (code_len < kCodeLengthRepeatCode) {
+ if (code_len < BROTLI_REPEAT_PREVIOUS_CODE_LENGTH) {
BrotliDropBits(br, p->bits);
ProcessSingleCodeLength(code_len, &s->symbol, &s->repeat, &s->space,
&s->prev_code_len, s->symbol_lists, s->code_length_histo,
@@ -617,20 +613,20 @@ static BrotliResult SafeReadSymbolCodeLengths(
pullMoreInput:
if (!BrotliPullByte(br)) {
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
}
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
/* Reads and decodes 15..18 codes using static prefix code.
Each code is 2..4 bits long. In total 30..72 bits are used. */
-static BrotliResult ReadCodeLengthCodeLengths(BrotliState* s) {
+static BrotliDecoderErrorCode ReadCodeLengthCodeLengths(BrotliDecoderState* s) {
BrotliBitReader* br = &s->br;
uint32_t num_codes = s->repeat;
unsigned space = s->space;
uint32_t i = s->sub_loop_counter;
- for (; i < CODE_LENGTH_CODES; ++i) {
+ for (; i < BROTLI_CODE_LENGTH_CODES; ++i) {
const uint8_t code_len_idx = kCodeLengthCodeOrder[i];
uint32_t ix;
uint32_t v;
@@ -646,7 +642,7 @@ static BrotliResult ReadCodeLengthCodeLengths(BrotliState* s) {
s->repeat = num_codes;
s->space = space;
s->substate_huffman = BROTLI_STATE_HUFFMAN_COMPLEX;
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
}
v = kCodeLengthPrefixValue[ix];
@@ -664,9 +660,9 @@ static BrotliResult ReadCodeLengthCodeLengths(BrotliState* s) {
}
}
if (!(num_codes == 1 || space == 0)) {
- return BROTLI_FAILURE();
+ return BROTLI_FAILURE(BROTLI_DECODER_ERROR_FORMAT_CL_SPACE);
}
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
/* Decodes the Huffman tables.
@@ -681,10 +677,10 @@ static BrotliResult ReadCodeLengthCodeLengths(BrotliState* s) {
B.2) Decoded table is used to decode code lengths of symbols in resulting
Huffman table. In worst case 3520 bits are read.
*/
-static BrotliResult ReadHuffmanCode(uint32_t alphabet_size,
- HuffmanCode* table,
- uint32_t* opt_table_size,
- BrotliState* s) {
+static BrotliDecoderErrorCode ReadHuffmanCode(uint32_t alphabet_size,
+ HuffmanCode* table,
+ uint32_t* opt_table_size,
+ BrotliDecoderState* s) {
BrotliBitReader* br = &s->br;
/* Unnecessary masking, but might be good for safety. */
alphabet_size &= 0x3ff;
@@ -692,7 +688,7 @@ static BrotliResult ReadHuffmanCode(uint32_t alphabet_size,
switch (s->substate_huffman) {
case BROTLI_STATE_HUFFMAN_NONE:
if (!BrotliSafeReadBits(br, 2, &s->sub_loop_counter)) {
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
BROTLI_LOG_UINT(s->sub_loop_counter);
/* The value is used as follows:
@@ -714,13 +710,14 @@ static BrotliResult ReadHuffmanCode(uint32_t alphabet_size,
/* Read symbols, codes & code lengths directly. */
if (!BrotliSafeReadBits(br, 2, &s->symbol)) { /* num_symbols */
s->substate_huffman = BROTLI_STATE_HUFFMAN_SIMPLE_SIZE;
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
s->sub_loop_counter = 0;
/* No break, transit to the next state. */
case BROTLI_STATE_HUFFMAN_SIMPLE_READ: {
- BrotliResult result = ReadSimpleHuffmanSymbols(alphabet_size, s);
- if (result != BROTLI_RESULT_SUCCESS) {
+ BrotliDecoderErrorCode result =
+ ReadSimpleHuffmanSymbols(alphabet_size, s);
+ if (result != BROTLI_DECODER_SUCCESS) {
return result;
}
/* No break, transit to the next state. */
@@ -731,7 +728,7 @@ static BrotliResult ReadHuffmanCode(uint32_t alphabet_size,
uint32_t bits;
if (!BrotliSafeReadBits(br, 1, &bits)) {
s->substate_huffman = BROTLI_STATE_HUFFMAN_SIMPLE_BUILD;
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
s->symbol += bits;
}
@@ -742,14 +739,14 @@ static BrotliResult ReadHuffmanCode(uint32_t alphabet_size,
*opt_table_size = table_size;
}
s->substate_huffman = BROTLI_STATE_HUFFMAN_NONE;
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
Complex: /* Decode Huffman-coded code lengths. */
case BROTLI_STATE_HUFFMAN_COMPLEX: {
uint32_t i;
- BrotliResult result = ReadCodeLengthCodeLengths(s);
- if (result != BROTLI_RESULT_SUCCESS) {
+ BrotliDecoderErrorCode result = ReadCodeLengthCodeLengths(s);
+ if (result != BROTLI_DECODER_SUCCESS) {
return result;
}
BrotliBuildCodeLengthsHuffmanTable(s->table,
@@ -762,7 +759,7 @@ Complex: /* Decode Huffman-coded code lengths. */
}
s->symbol = 0;
- s->prev_code_len = kDefaultCodeLength;
+ s->prev_code_len = BROTLI_INITIAL_REPEATED_CODE_LENGTH;
s->repeat = 0;
s->repeat_code_len = 0;
s->space = 32768;
@@ -771,17 +768,17 @@ Complex: /* Decode Huffman-coded code lengths. */
}
case BROTLI_STATE_HUFFMAN_LENGTH_SYMBOLS: {
uint32_t table_size;
- BrotliResult result = ReadSymbolCodeLengths(alphabet_size, s);
- if (result == BROTLI_RESULT_NEEDS_MORE_INPUT) {
+ BrotliDecoderErrorCode result = ReadSymbolCodeLengths(alphabet_size, s);
+ if (result == BROTLI_DECODER_NEEDS_MORE_INPUT) {
result = SafeReadSymbolCodeLengths(alphabet_size, s);
}
- if (result != BROTLI_RESULT_SUCCESS) {
+ if (result != BROTLI_DECODER_SUCCESS) {
return result;
}
if (s->space != 0) {
BROTLI_LOG(("[ReadHuffmanCode] space = %d\n", s->space));
- return BROTLI_FAILURE();
+ return BROTLI_FAILURE(BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE);
}
table_size = BrotliBuildHuffmanTable(
table, HUFFMAN_TABLE_BITS, s->symbol_lists, s->code_length_histo);
@@ -789,11 +786,12 @@ Complex: /* Decode Huffman-coded code lengths. */
*opt_table_size = table_size;
}
s->substate_huffman = BROTLI_STATE_HUFFMAN_NONE;
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
default:
- return BROTLI_FAILURE();
+ return
+ BROTLI_FAILURE(BROTLI_DECODER_ERROR_UNREACHABLE);
}
}
@@ -809,14 +807,13 @@ static BROTLI_INLINE uint32_t ReadBlockLength(const HuffmanCode* table,
/* WARNING: if state is not BROTLI_STATE_READ_BLOCK_LENGTH_NONE, then
reading can't be continued with ReadBlockLength. */
-static BROTLI_INLINE int SafeReadBlockLength(BrotliState* s,
- uint32_t* result,
- const HuffmanCode* table,
- BrotliBitReader* br) {
+static BROTLI_INLINE BROTLI_BOOL SafeReadBlockLength(
+ BrotliDecoderState* s, uint32_t* result, const HuffmanCode* table,
+ BrotliBitReader* br) {
uint32_t index;
if (s->substate_read_block_length == BROTLI_STATE_READ_BLOCK_LENGTH_NONE) {
if (!SafeReadSymbol(table, br, &index)) {
- return 0;
+ return BROTLI_FALSE;
}
} else {
index = s->block_length_index;
@@ -827,11 +824,11 @@ static BROTLI_INLINE int SafeReadBlockLength(BrotliState* s,
if (!BrotliSafeReadBits(br, nbits, &bits)) {
s->block_length_index = index;
s->substate_read_block_length = BROTLI_STATE_READ_BLOCK_LENGTH_SUFFIX;
- return 0;
+ return BROTLI_FALSE;
}
*result = kBlockLengthPrefixCode[index].offset + bits;
s->substate_read_block_length = BROTLI_STATE_READ_BLOCK_LENGTH_NONE;
- return 1;
+ return BROTLI_TRUE;
}
}
@@ -850,12 +847,12 @@ static BROTLI_INLINE int SafeReadBlockLength(BrotliState* s,
Most of input values are 0 and 1. To reduce number of branches, we replace
inner for loop with do-while.
*/
-static BROTLI_NOINLINE void InverseMoveToFrontTransform(uint8_t* v,
- uint32_t v_len, BrotliState* state) {
+static BROTLI_NOINLINE void InverseMoveToFrontTransform(
+ uint8_t* v, uint32_t v_len, BrotliDecoderState* state) {
/* Reinitialize elements that could have been changed. */
uint32_t i = 4;
uint32_t upper_bound = state->mtf_upper_bound;
- uint8_t* mtf = state->mtf;
+ uint8_t* mtf = &state->mtf[4]; /* Make mtf[-1] addressable. */
/* Load endian-aware constant. */
const uint8_t b0123[4] = {0, 1, 2, 3};
uint32_t pattern;
@@ -876,20 +873,19 @@ static BROTLI_NOINLINE void InverseMoveToFrontTransform(uint8_t* v,
uint8_t value = mtf[index];
upper_bound |= v[i];
v[i] = value;
+ mtf[-1] = value;
do {
index--;
mtf[index + 1] = mtf[index];
- } while (index > 0);
- mtf[0] = value;
+ } while (index >= 0);
}
/* Remember amount of elements to be reinitialized. */
state->mtf_upper_bound = upper_bound;
}
-
/* Decodes a series of Huffman table using ReadHuffmanCode function. */
-static BrotliResult HuffmanTreeGroupDecode(HuffmanTreeGroup* group,
- BrotliState* s) {
+static BrotliDecoderErrorCode HuffmanTreeGroupDecode(
+ HuffmanTreeGroup* group, BrotliDecoderState* s) {
if (s->substate_tree_group != BROTLI_STATE_TREE_GROUP_LOOP) {
s->next = group->codes;
s->htree_index = 0;
@@ -897,15 +893,15 @@ static BrotliResult HuffmanTreeGroupDecode(HuffmanTreeGroup* group,
}
while (s->htree_index < group->num_htrees) {
uint32_t table_size;
- BrotliResult result =
+ BrotliDecoderErrorCode result =
ReadHuffmanCode(group->alphabet_size, s->next, &table_size, s);
- if (result != BROTLI_RESULT_SUCCESS) return result;
+ if (result != BROTLI_DECODER_SUCCESS) return result;
group->htrees[s->htree_index] = s->next;
s->next += table_size;
++s->htree_index;
}
s->substate_tree_group = BROTLI_STATE_TREE_GROUP_NONE;
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
/* Decodes a context map.
@@ -917,17 +913,17 @@ static BrotliResult HuffmanTreeGroupDecode(HuffmanTreeGroup* group,
3) Read context map items; "0" values could be run-length encoded.
4) Optionally, apply InverseMoveToFront transform to the resulting map.
*/
-static BrotliResult DecodeContextMap(uint32_t context_map_size,
- uint32_t* num_htrees,
- uint8_t** context_map_arg,
- BrotliState* s) {
+static BrotliDecoderErrorCode DecodeContextMap(uint32_t context_map_size,
+ uint32_t* num_htrees,
+ uint8_t** context_map_arg,
+ BrotliDecoderState* s) {
BrotliBitReader* br = &s->br;
- BrotliResult result = BROTLI_RESULT_SUCCESS;
+ BrotliDecoderErrorCode result = BROTLI_DECODER_SUCCESS;
switch ((int)s->substate_context_map) {
case BROTLI_STATE_CONTEXT_MAP_NONE:
result = DecodeVarLenUint8(s, br, num_htrees);
- if (result != BROTLI_RESULT_SUCCESS) {
+ if (result != BROTLI_DECODER_SUCCESS) {
return result;
}
(*num_htrees)++;
@@ -936,11 +932,11 @@ static BrotliResult DecodeContextMap(uint32_t context_map_size,
BROTLI_LOG_UINT(*num_htrees);
*context_map_arg = (uint8_t*)BROTLI_ALLOC(s, (size_t)context_map_size);
if (*context_map_arg == 0) {
- return BROTLI_FAILURE();
+ return BROTLI_FAILURE(BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP);
}
if (*num_htrees <= 1) {
memset(*context_map_arg, 0, (size_t)context_map_size);
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
s->substate_context_map = BROTLI_STATE_CONTEXT_MAP_READ_PREFIX;
/* No break, continue to next state. */
@@ -949,7 +945,7 @@ static BrotliResult DecodeContextMap(uint32_t context_map_size,
/* In next stage ReadHuffmanCode uses at least 4 bits, so it is safe
to peek 4 bits ahead. */
if (!BrotliSafeGetBits(br, 5, &bits)) {
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
if ((bits & 1) != 0) { /* Use RLE for zeroes. */
s->max_run_length_prefix = (bits >> 1) + 1;
@@ -965,7 +961,7 @@ static BrotliResult DecodeContextMap(uint32_t context_map_size,
case BROTLI_STATE_CONTEXT_MAP_HUFFMAN:
result = ReadHuffmanCode(*num_htrees + s->max_run_length_prefix,
s->context_map_table, NULL, s);
- if (result != BROTLI_RESULT_SUCCESS) return result;
+ if (result != BROTLI_DECODER_SUCCESS) return result;
s->code = 0xFFFF;
s->substate_context_map = BROTLI_STATE_CONTEXT_MAP_DECODE;
/* No break, continue to next state. */
@@ -981,7 +977,7 @@ static BrotliResult DecodeContextMap(uint32_t context_map_size,
if (!SafeReadSymbol(s->context_map_table, br, &code)) {
s->code = 0xFFFF;
s->context_index = context_index;
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
BROTLI_LOG_UINT(code);
@@ -1000,12 +996,13 @@ rleCode:
if (!BrotliSafeReadBits(br, code, &reps)) {
s->code = code;
s->context_index = context_index;
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
reps += 1U << code;
BROTLI_LOG_UINT(reps);
if (context_index + reps > context_map_size) {
- return BROTLI_FAILURE();
+ return
+ BROTLI_FAILURE(BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT);
}
do {
context_map[context_index++] = 0;
@@ -1018,23 +1015,24 @@ rleCode:
uint32_t bits;
if (!BrotliSafeReadBits(br, 1, &bits)) {
s->substate_context_map = BROTLI_STATE_CONTEXT_MAP_TRANSFORM;
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
if (bits != 0) {
InverseMoveToFrontTransform(*context_map_arg, context_map_size, s);
}
s->substate_context_map = BROTLI_STATE_CONTEXT_MAP_NONE;
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
default:
- return BROTLI_FAILURE();
+ return
+ BROTLI_FAILURE(BROTLI_DECODER_ERROR_UNREACHABLE);
}
}
/* Decodes a command or literal and updates block type ringbuffer.
Reads 3..54 bits. */
-static BROTLI_INLINE int DecodeBlockTypeAndLength(int safe,
- BrotliState* s, int tree_type) {
+static BROTLI_INLINE BROTLI_BOOL DecodeBlockTypeAndLength(
+ int safe, BrotliDecoderState* s, int tree_type) {
uint32_t max_block_type = s->num_block_types[tree_type];
const HuffmanCode* type_tree = &s->block_type_trees[
tree_type * BROTLI_HUFFMAN_MAX_SIZE_258];
@@ -1051,11 +1049,11 @@ static BROTLI_INLINE int DecodeBlockTypeAndLength(int safe,
} else {
BrotliBitReaderState memento;
BrotliBitReaderSaveState(br, &memento);
- if (!SafeReadSymbol(type_tree, br, &block_type)) return 0;
+ if (!SafeReadSymbol(type_tree, br, &block_type)) return BROTLI_FALSE;
if (!SafeReadBlockLength(s, &s->block_length[tree_type], len_tree, br)) {
s->substate_read_block_length = BROTLI_STATE_READ_BLOCK_LENGTH_NONE;
BrotliBitReaderRestoreState(br, &memento);
- return 0;
+ return BROTLI_FALSE;
}
}
@@ -1071,89 +1069,121 @@ static BROTLI_INLINE int DecodeBlockTypeAndLength(int safe,
}
ringbuffer[0] = ringbuffer[1];
ringbuffer[1] = block_type;
- return 1;
+ return BROTLI_TRUE;
}
-/* Decodes the block type and updates the state for literal context.
- Reads 3..54 bits. */
-static BROTLI_INLINE int DecodeLiteralBlockSwitchInternal(int safe,
- BrotliState* s) {
- uint8_t context_mode;
- uint32_t context_offset;
- if (!DecodeBlockTypeAndLength(safe, s, 0)) {
- return 0;
+static BROTLI_INLINE void DetectTrivialLiteralBlockTypes(
+ BrotliDecoderState* s) {
+ size_t i;
+ for (i = 0; i < 8; ++i) s->trivial_literal_contexts[i] = 0;
+ for (i = 0; i < s->num_block_types[0]; i++) {
+ size_t offset = i << BROTLI_LITERAL_CONTEXT_BITS;
+ size_t error = 0;
+ size_t sample = s->context_map[offset];
+ size_t j;
+ for (j = 0; j < (1u << BROTLI_LITERAL_CONTEXT_BITS);) {
+ BROTLI_REPEAT(4, error |= s->context_map[offset + j++] ^ sample;)
+ }
+ if (error == 0) {
+ s->trivial_literal_contexts[i >> 5] |= 1u << (i & 31);
+ }
}
- context_offset = s->block_type_rb[1] << kLiteralContextBits;
+}
+
+static BROTLI_INLINE void PrepareLiteralDecoding(BrotliDecoderState* s) {
+ uint8_t context_mode;
+ size_t trivial;
+ uint32_t block_type = s->block_type_rb[1];
+ uint32_t context_offset = block_type << BROTLI_LITERAL_CONTEXT_BITS;
s->context_map_slice = s->context_map + context_offset;
- s->literal_htree_index = s->context_map_slice[0];
- s->literal_htree = s->literal_hgroup.htrees[s->literal_htree_index];
- context_mode = s->context_modes[s->block_type_rb[1]];
+ trivial = s->trivial_literal_contexts[block_type >> 5];
+ s->trivial_literal_context = (trivial >> (block_type & 31)) & 1;
+ s->literal_htree = s->literal_hgroup.htrees[s->context_map_slice[0]];
+ context_mode = s->context_modes[block_type];
s->context_lookup1 = &kContextLookup[kContextLookupOffsets[context_mode]];
s->context_lookup2 = &kContextLookup[kContextLookupOffsets[context_mode + 1]];
- return 1;
}
-static void BROTLI_NOINLINE DecodeLiteralBlockSwitch(BrotliState* s) {
+/* Decodes the block type and updates the state for literal context.
+ Reads 3..54 bits. */
+static BROTLI_INLINE BROTLI_BOOL DecodeLiteralBlockSwitchInternal(
+ int safe, BrotliDecoderState* s) {
+ if (!DecodeBlockTypeAndLength(safe, s, 0)) {
+ return BROTLI_FALSE;
+ }
+ PrepareLiteralDecoding(s);
+ return BROTLI_TRUE;
+}
+
+static void BROTLI_NOINLINE DecodeLiteralBlockSwitch(BrotliDecoderState* s) {
DecodeLiteralBlockSwitchInternal(0, s);
}
-static int BROTLI_NOINLINE SafeDecodeLiteralBlockSwitch(BrotliState* s) {
+static BROTLI_BOOL BROTLI_NOINLINE SafeDecodeLiteralBlockSwitch(
+ BrotliDecoderState* s) {
return DecodeLiteralBlockSwitchInternal(1, s);
}
/* Block switch for insert/copy length.
Reads 3..54 bits. */
-static BROTLI_INLINE int DecodeCommandBlockSwitchInternal(int safe,
- BrotliState* s) {
+static BROTLI_INLINE BROTLI_BOOL DecodeCommandBlockSwitchInternal(
+ int safe, BrotliDecoderState* s) {
if (!DecodeBlockTypeAndLength(safe, s, 1)) {
- return 0;
+ return BROTLI_FALSE;
}
s->htree_command = s->insert_copy_hgroup.htrees[s->block_type_rb[3]];
- return 1;
+ return BROTLI_TRUE;
}
-static void BROTLI_NOINLINE DecodeCommandBlockSwitch(BrotliState* s) {
+static void BROTLI_NOINLINE DecodeCommandBlockSwitch(BrotliDecoderState* s) {
DecodeCommandBlockSwitchInternal(0, s);
}
-static int BROTLI_NOINLINE SafeDecodeCommandBlockSwitch(BrotliState* s) {
+static BROTLI_BOOL BROTLI_NOINLINE SafeDecodeCommandBlockSwitch(
+ BrotliDecoderState* s) {
return DecodeCommandBlockSwitchInternal(1, s);
}
/* Block switch for distance codes.
Reads 3..54 bits. */
-static BROTLI_INLINE int DecodeDistanceBlockSwitchInternal(int safe,
- BrotliState* s) {
+static BROTLI_INLINE BROTLI_BOOL DecodeDistanceBlockSwitchInternal(
+ int safe, BrotliDecoderState* s) {
if (!DecodeBlockTypeAndLength(safe, s, 2)) {
- return 0;
+ return BROTLI_FALSE;
}
- s->dist_context_map_slice =
- s->dist_context_map + (s->block_type_rb[5] << kDistanceContextBits);
+ s->dist_context_map_slice = s->dist_context_map +
+ (s->block_type_rb[5] << BROTLI_DISTANCE_CONTEXT_BITS);
s->dist_htree_index = s->dist_context_map_slice[s->distance_context];
- return 1;
+ return BROTLI_TRUE;
}
-static void BROTLI_NOINLINE DecodeDistanceBlockSwitch(BrotliState* s) {
+static void BROTLI_NOINLINE DecodeDistanceBlockSwitch(BrotliDecoderState* s) {
DecodeDistanceBlockSwitchInternal(0, s);
}
-static int BROTLI_NOINLINE SafeDecodeDistanceBlockSwitch(BrotliState* s) {
+static BROTLI_BOOL BROTLI_NOINLINE SafeDecodeDistanceBlockSwitch(
+ BrotliDecoderState* s) {
return DecodeDistanceBlockSwitchInternal(1, s);
}
-static BrotliResult WriteRingBuffer(size_t* available_out, uint8_t** next_out,
- size_t* total_out, BrotliState* s) {
- size_t pos = (s->pos > s->ringbuffer_size) ? (size_t)s->ringbuffer_size
- : (size_t)(s->pos);
+static size_t UnwrittenBytes(const BrotliDecoderState* s, BROTLI_BOOL wrap) {
+ size_t pos = wrap && s->pos > s->ringbuffer_size ?
+ (size_t)s->ringbuffer_size : (size_t)(s->pos);
+ size_t partial_pos_rb = (s->rb_roundtrips * (size_t)s->ringbuffer_size) + pos;
+ return partial_pos_rb - s->partial_pos_out;
+}
+
+static BrotliDecoderErrorCode BROTLI_NOINLINE WriteRingBuffer(
+ BrotliDecoderState* s, size_t* available_out, uint8_t** next_out,
+ size_t* total_out) {
uint8_t* start =
s->ringbuffer + (s->partial_pos_out & (size_t)s->ringbuffer_mask);
- size_t partial_pos_rb = (s->rb_roundtrips * (size_t)s->ringbuffer_size) + pos;
- size_t to_write = (partial_pos_rb - s->partial_pos_out);
+ size_t to_write = UnwrittenBytes(s, BROTLI_TRUE);
size_t num_written = *available_out;
if (num_written > to_write) {
num_written = to_write;
}
if (s->meta_block_remaining_len < 0) {
- return BROTLI_FAILURE();
+ return BROTLI_FAILURE(BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1);
}
memcpy(*next_out, start, num_written);
*next_out += num_written;
@@ -1161,11 +1191,16 @@ static BrotliResult WriteRingBuffer(size_t* available_out, uint8_t** next_out,
BROTLI_LOG_UINT(to_write);
BROTLI_LOG_UINT(num_written);
s->partial_pos_out += num_written;
- *total_out = s->partial_pos_out;
+ if (total_out) *total_out = s->partial_pos_out;
if (num_written < to_write) {
- return BROTLI_RESULT_NEEDS_MORE_OUTPUT;
+ return BROTLI_DECODER_NEEDS_MORE_OUTPUT;
+ }
+
+ if (s->pos >= s->ringbuffer_size) {
+ s->pos -= s->ringbuffer_size;
+ s->rb_roundtrips++;
}
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
/* Allocates ringbuffer.
@@ -1178,7 +1213,8 @@ static BrotliResult WriteRingBuffer(size_t* available_out, uint8_t** next_out,
Custom dictionary, if any, is copied to the end of ringbuffer.
*/
-static int BROTLI_NOINLINE BrotliAllocateRingBuffer(BrotliState* s) {
+static BROTLI_BOOL BROTLI_NOINLINE BrotliAllocateRingBuffer(
+ BrotliDecoderState* s) {
/* We need the slack region for the following reasons:
- doing up to two 16-byte copies for fast backward copying
- inserting transformed dictionary word (5 prefix + 24 base + 8 suffix) */
@@ -1186,7 +1222,7 @@ static int BROTLI_NOINLINE BrotliAllocateRingBuffer(BrotliState* s) {
s->ringbuffer = (uint8_t*)BROTLI_ALLOC(s, (size_t)(s->ringbuffer_size +
kRingBufferWriteAheadSlack));
if (s->ringbuffer == 0) {
- return 0;
+ return BROTLI_FALSE;
}
s->ringbuffer_end = s->ringbuffer + s->ringbuffer_size;
@@ -1199,15 +1235,15 @@ static int BROTLI_NOINLINE BrotliAllocateRingBuffer(BrotliState* s) {
s->custom_dict, (size_t)s->custom_dict_size);
}
- return 1;
+ return BROTLI_TRUE;
}
-static BrotliResult BROTLI_NOINLINE CopyUncompressedBlockToOutput(
+static BrotliDecoderErrorCode BROTLI_NOINLINE CopyUncompressedBlockToOutput(
size_t* available_out, uint8_t** next_out, size_t* total_out,
- BrotliState* s) {
+ BrotliDecoderState* s) {
/* TODO: avoid allocation for single uncompressed block. */
if (!s->ringbuffer && !BrotliAllocateRingBuffer(s)) {
- return BROTLI_FAILURE();
+ return BROTLI_FAILURE(BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1);
}
/* State machine */
@@ -1227,54 +1263,63 @@ static BrotliResult BROTLI_NOINLINE CopyUncompressedBlockToOutput(
s->meta_block_remaining_len -= nbytes;
if (s->pos < s->ringbuffer_size) {
if (s->meta_block_remaining_len == 0) {
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
s->substate_uncompressed = BROTLI_STATE_UNCOMPRESSED_WRITE;
/* No break, continue to next state */
}
case BROTLI_STATE_UNCOMPRESSED_WRITE: {
- BrotliResult result =
- WriteRingBuffer(available_out, next_out, total_out, s);
- if (result != BROTLI_RESULT_SUCCESS) {
+ BrotliDecoderErrorCode result =
+ WriteRingBuffer(s, available_out, next_out, total_out);
+ if (result != BROTLI_DECODER_SUCCESS) {
return result;
}
- s->pos = 0;
- s->rb_roundtrips++;
s->max_distance = s->max_backward_distance;
s->substate_uncompressed = BROTLI_STATE_UNCOMPRESSED_NONE;
break;
}
}
}
- return BROTLI_FAILURE();
+ BROTLI_DCHECK(0); /* Unreachable */
}
-int BrotliDecompressedSize(size_t encoded_size,
- const uint8_t* encoded_buffer,
- size_t* decoded_size) {
- BrotliState s;
- int next_block_header;
- BrotliStateInit(&s);
- s.br.next_in = encoded_buffer;
- s.br.avail_in = encoded_size;
- if (!BrotliWarmupBitReader(&s.br)) {
- return 0;
- }
- DecodeWindowBits(&s.br);
- if (DecodeMetaBlockLength(&s, &s.br) != BROTLI_RESULT_SUCCESS) {
- return 0;
- }
- *decoded_size = (size_t)s.meta_block_remaining_len;
- if (s.is_last_metablock) {
- return 1;
- }
- if (!s.is_uncompressed || !BrotliJumpToByteBoundary(&s.br)) {
- return 0;
+BROTLI_BOOL BrotliDecompressedSize(size_t encoded_size,
+ const uint8_t* encoded_buffer,
+ size_t* decoded_size) {
+ size_t total_size = 0;
+ BrotliDecoderState s;
+ BrotliBitReader* br;
+ BrotliDecoderStateInit(&s);
+ br = &s.br;
+ *decoded_size = 0;
+ br->next_in = encoded_buffer;
+ br->avail_in = encoded_size;
+ if (!BrotliWarmupBitReader(br)) return BROTLI_FALSE;
+ DecodeWindowBits(br);
+ while (1) {
+ size_t block_size;
+ if (DecodeMetaBlockLength(&s, br) != BROTLI_DECODER_SUCCESS) {
+ return BROTLI_FALSE;
+ }
+ block_size = (size_t)s.meta_block_remaining_len;
+ if (!s.is_metadata) {
+ if ((block_size + total_size) < total_size) return BROTLI_FALSE;
+ total_size += block_size;
+ }
+ if (s.is_last_metablock) {
+ *decoded_size = total_size;
+ return BROTLI_TRUE;
+ }
+ if (!s.is_uncompressed && !s.is_metadata) return BROTLI_FALSE;
+ if (!BrotliJumpToByteBoundary(br)) return BROTLI_FALSE;
+ BrotliBitReaderUnload(br);
+ if (br->avail_in < block_size) return BROTLI_FALSE;
+ br->avail_in -= block_size;
+ br->next_in += block_size;
+ if (!BrotliWarmupBitReader(br)) return BROTLI_FALSE;
}
- next_block_header = BrotliPeekByte(&s.br, (size_t)s.meta_block_remaining_len);
- return (next_block_header != -1) && ((next_block_header & 3) == 3);
}
/* Calculates the smallest feasible ring buffer.
@@ -1284,17 +1329,18 @@ int BrotliDecompressedSize(size_t encoded_size,
When this method is called, metablock size and flags MUST be decoded.
*/
-static void BROTLI_NOINLINE BrotliCalculateRingBufferSize(BrotliState* s,
- BrotliBitReader* br) {
- int is_last = s->is_last_metablock;
- s->ringbuffer_size = 1 << s->window_bits;
+static void BROTLI_NOINLINE BrotliCalculateRingBufferSize(
+ BrotliDecoderState* s, BrotliBitReader* br) {
+ BROTLI_BOOL is_last = TO_BROTLI_BOOL(s->is_last_metablock);
+ int window_size = 1 << s->window_bits;
+ s->ringbuffer_size = window_size;
if (s->is_uncompressed) {
int next_block_header =
BrotliPeekByte(br, (size_t)s->meta_block_remaining_len);
if (next_block_header != -1) { /* Peek succeeded */
if ((next_block_header & 3) == 3) { /* ISLAST and ISEMPTY */
- is_last = 1;
+ is_last = BROTLI_TRUE;
}
}
}
@@ -1302,22 +1348,17 @@ static void BROTLI_NOINLINE BrotliCalculateRingBufferSize(BrotliState* s,
/* We need at least 2 bytes of ring buffer size to get the last two
bytes for context from there */
if (is_last) {
- while (s->ringbuffer_size >= s->meta_block_remaining_len * 2 &&
- s->ringbuffer_size > 32) {
+ int min_size_x2 = (s->meta_block_remaining_len + s->custom_dict_size) * 2;
+ while (s->ringbuffer_size >= min_size_x2 && s->ringbuffer_size > 32) {
s->ringbuffer_size >>= 1;
}
}
- /* But make it fit the custom dictionary if there is one. */
- while (s->ringbuffer_size < s->custom_dict_size) {
- s->ringbuffer_size <<= 1;
- }
-
s->ringbuffer_mask = s->ringbuffer_size - 1;
}
/* Reads 1..256 2-bit context modes. */
-static BrotliResult ReadContextModes(BrotliState* s) {
+static BrotliDecoderErrorCode ReadContextModes(BrotliDecoderState* s) {
BrotliBitReader* br = &s->br;
int i = s->loop_counter;
@@ -1325,16 +1366,16 @@ static BrotliResult ReadContextModes(BrotliState* s) {
uint32_t bits;
if (!BrotliSafeReadBits(br, 2, &bits)) {
s->loop_counter = i;
- return BROTLI_RESULT_NEEDS_MORE_INPUT;
+ return BROTLI_DECODER_NEEDS_MORE_INPUT;
}
s->context_modes[i] = (uint8_t)(bits << 1);
BROTLI_LOG_ARRAY_INDEX(s->context_modes, i);
i++;
}
- return BROTLI_RESULT_SUCCESS;
+ return BROTLI_DECODER_SUCCESS;
}
-static BROTLI_INLINE void TakeDistanceFromRingBuffer(BrotliState* s) {
+static BROTLI_INLINE void TakeDistanceFromRingBuffer(BrotliDecoderState* s) {
if (s->distance_code == 0) {
--s->dist_rb_idx;
s->distance_code = s->dist_rb[s->dist_rb_idx & 3];
@@ -1363,19 +1404,19 @@ static BROTLI_INLINE void TakeDistanceFromRingBuffer(BrotliState* s) {
}
}
-static BROTLI_INLINE int SafeReadBits(
+static BROTLI_INLINE BROTLI_BOOL SafeReadBits(
BrotliBitReader* const br, uint32_t n_bits, uint32_t* val) {
if (n_bits != 0) {
return BrotliSafeReadBits(br, n_bits, val);
} else {
*val = 0;
- return 1;
+ return BROTLI_TRUE;
}
}
/* Precondition: s->distance_code < 0 */
-static BROTLI_INLINE int ReadDistanceInternal(int safe,
- BrotliState* s, BrotliBitReader* br) {
+static BROTLI_INLINE BROTLI_BOOL ReadDistanceInternal(
+ int safe, BrotliDecoderState* s, BrotliBitReader* br) {
int distval;
BrotliBitReaderState memento;
HuffmanCode* distance_tree = s->distance_hgroup.htrees[s->dist_htree_index];
@@ -1385,7 +1426,7 @@ static BROTLI_INLINE int ReadDistanceInternal(int safe,
uint32_t code;
BrotliBitReaderSaveState(br, &memento);
if (!SafeReadSymbol(distance_tree, br, &code)) {
- return 0;
+ return BROTLI_FALSE;
}
s->distance_code = (int)code;
}
@@ -1394,7 +1435,7 @@ static BROTLI_INLINE int ReadDistanceInternal(int safe,
if ((s->distance_code & ~0xf) == 0) {
TakeDistanceFromRingBuffer(s);
--s->block_length[2];
- return 1;
+ return BROTLI_TRUE;
}
distval = s->distance_code - (int)s->num_direct_distance_codes;
if (distval >= 0) {
@@ -1416,7 +1457,7 @@ static BROTLI_INLINE int ReadDistanceInternal(int safe,
if (!SafeReadBits(br, nbits, &bits)) {
s->distance_code = -1; /* Restore precondition. */
BrotliBitReaderRestoreState(br, &memento);
- return 0;
+ return BROTLI_FALSE;
}
} else {
bits = BrotliReadBits(br, nbits);
@@ -1426,21 +1467,23 @@ static BROTLI_INLINE int ReadDistanceInternal(int safe,
((offset + (int)bits) << s->distance_postfix_bits) + postfix;
}
}
- s->distance_code = s->distance_code - NUM_DISTANCE_SHORT_CODES + 1;
+ s->distance_code = s->distance_code - BROTLI_NUM_DISTANCE_SHORT_CODES + 1;
--s->block_length[2];
- return 1;
+ return BROTLI_TRUE;
}
-static BROTLI_INLINE void ReadDistance(BrotliState* s, BrotliBitReader* br) {
+static BROTLI_INLINE void ReadDistance(
+ BrotliDecoderState* s, BrotliBitReader* br) {
ReadDistanceInternal(0, s, br);
}
-static BROTLI_INLINE int SafeReadDistance(BrotliState* s, BrotliBitReader* br) {
+static BROTLI_INLINE BROTLI_BOOL SafeReadDistance(
+ BrotliDecoderState* s, BrotliBitReader* br) {
return ReadDistanceInternal(1, s, br);
}
-static BROTLI_INLINE int ReadCommandInternal(int safe,
- BrotliState* s, BrotliBitReader* br, int* insert_length) {
+static BROTLI_INLINE BROTLI_BOOL ReadCommandInternal(
+ int safe, BrotliDecoderState* s, BrotliBitReader* br, int* insert_length) {
uint32_t cmd_code;
uint32_t insert_len_extra = 0;
uint32_t copy_length;
@@ -1451,7 +1494,7 @@ static BROTLI_INLINE int ReadCommandInternal(int safe,
} else {
BrotliBitReaderSaveState(br, &memento);
if (!SafeReadSymbol(s->htree_command, br, &cmd_code)) {
- return 0;
+ return BROTLI_FALSE;
}
}
v = kCmdLut[cmd_code];
@@ -1468,54 +1511,54 @@ static BROTLI_INLINE int ReadCommandInternal(int safe,
if (!SafeReadBits(br, v.insert_len_extra_bits, &insert_len_extra) ||
!SafeReadBits(br, v.copy_len_extra_bits, &copy_length)) {
BrotliBitReaderRestoreState(br, &memento);
- return 0;
+ return BROTLI_FALSE;
}
}
s->copy_length = (int)copy_length + v.copy_len_offset;
--s->block_length[1];
*insert_length += (int)insert_len_extra;
- return 1;
+ return BROTLI_TRUE;
}
-static BROTLI_INLINE void ReadCommand(BrotliState* s, BrotliBitReader* br,
- int* insert_length) {
+static BROTLI_INLINE void ReadCommand(
+ BrotliDecoderState* s, BrotliBitReader* br, int* insert_length) {
ReadCommandInternal(0, s, br, insert_length);
}
-static BROTLI_INLINE int SafeReadCommand(BrotliState* s, BrotliBitReader* br,
- int* insert_length) {
+static BROTLI_INLINE BROTLI_BOOL SafeReadCommand(
+ BrotliDecoderState* s, BrotliBitReader* br, int* insert_length) {
return ReadCommandInternal(1, s, br, insert_length);
}
-static BROTLI_INLINE int CheckInputAmount(int safe,
- BrotliBitReader* const br, size_t num) {
+static BROTLI_INLINE BROTLI_BOOL CheckInputAmount(
+ int safe, BrotliBitReader* const br, size_t num) {
if (safe) {
- return 1;
+ return BROTLI_TRUE;
}
return BrotliCheckInputAmount(br, num);
}
-#define BROTLI_SAFE(METHOD) \
- { \
- if (safe) { \
- if (!Safe##METHOD) { \
- result = BROTLI_RESULT_NEEDS_MORE_INPUT; \
- goto saveStateAndReturn; \
- } \
- } else { \
- METHOD; \
- } \
+#define BROTLI_SAFE(METHOD) \
+ { \
+ if (safe) { \
+ if (!Safe##METHOD) { \
+ result = BROTLI_DECODER_NEEDS_MORE_INPUT; \
+ goto saveStateAndReturn; \
+ } \
+ } else { \
+ METHOD; \
+ } \
}
-static BROTLI_INLINE BrotliResult ProcessCommandsInternal(int safe,
- BrotliState* s) {
+static BROTLI_INLINE BrotliDecoderErrorCode ProcessCommandsInternal(
+ int safe, BrotliDecoderState* s) {
int pos = s->pos;
int i = s->loop_counter;
- BrotliResult result = BROTLI_RESULT_SUCCESS;
+ BrotliDecoderErrorCode result = BROTLI_DECODER_SUCCESS;
BrotliBitReader* br = &s->br;
if (!CheckInputAmount(safe, br, 28)) {
- result = BROTLI_RESULT_NEEDS_MORE_INPUT;
+ result = BROTLI_DECODER_NEEDS_MORE_INPUT;
goto saveStateAndReturn;
}
if (!safe) {
@@ -1532,7 +1575,7 @@ static BROTLI_INLINE BrotliResult ProcessCommandsInternal(int safe,
} else if (s->state == BROTLI_STATE_COMMAND_POST_WRAP_COPY) {
goto CommandPostWrapCopy;
} else {
- return BROTLI_FAILURE();
+ return BROTLI_FAILURE(BROTLI_DECODER_ERROR_UNREACHABLE);
}
CommandBegin:
@@ -1541,7 +1584,7 @@ CommandBegin:
}
if (!CheckInputAmount(safe, br, 28)) { /* 156 bits + 7 bytes */
s->state = BROTLI_STATE_COMMAND_BEGIN;
- result = BROTLI_RESULT_NEEDS_MORE_INPUT;
+ result = BROTLI_DECODER_NEEDS_MORE_INPUT;
goto saveStateAndReturn;
}
if (PREDICT_FALSE(s->block_length[1] == 0)) {
@@ -1569,12 +1612,13 @@ CommandInner:
do {
if (!CheckInputAmount(safe, br, 28)) { /* 162 bits + 7 bytes */
s->state = BROTLI_STATE_COMMAND_INNER;
- result = BROTLI_RESULT_NEEDS_MORE_INPUT;
+ result = BROTLI_DECODER_NEEDS_MORE_INPUT;
goto saveStateAndReturn;
}
if (PREDICT_FALSE(s->block_length[0] == 0)) {
BROTLI_SAFE(DecodeLiteralBlockSwitch(s));
PreloadSymbol(safe, s->literal_htree, br, &bits, &value);
+ if (!s->trivial_literal_context) goto CommandInner;
}
if (!safe) {
s->ringbuffer[pos] =
@@ -1582,13 +1626,12 @@ CommandInner:
} else {
uint32_t literal;
if (!SafeReadSymbol(s->literal_htree, br, &literal)) {
- result = BROTLI_RESULT_NEEDS_MORE_INPUT;
+ result = BROTLI_DECODER_NEEDS_MORE_INPUT;
goto saveStateAndReturn;
}
s->ringbuffer[pos] = (uint8_t)literal;
}
--s->block_length[0];
- BROTLI_LOG_UINT(s->literal_htree_index);
BROTLI_LOG_ARRAY_INDEX(s->ringbuffer, pos);
++pos;
if (PREDICT_FALSE(pos == s->ringbuffer_size)) {
@@ -1605,11 +1648,12 @@ CommandInner:
uint8_t context;
if (!CheckInputAmount(safe, br, 28)) { /* 162 bits + 7 bytes */
s->state = BROTLI_STATE_COMMAND_INNER;
- result = BROTLI_RESULT_NEEDS_MORE_INPUT;
+ result = BROTLI_DECODER_NEEDS_MORE_INPUT;
goto saveStateAndReturn;
}
if (PREDICT_FALSE(s->block_length[0] == 0)) {
BROTLI_SAFE(DecodeLiteralBlockSwitch(s));
+ if (s->trivial_literal_context) goto CommandInner;
}
context = s->context_lookup1[p1] | s->context_lookup2[p2];
BROTLI_LOG_UINT(context);
@@ -1620,7 +1664,7 @@ CommandInner:
} else {
uint32_t literal;
if (!SafeReadSymbol(hc, br, &literal)) {
- result = BROTLI_RESULT_NEEDS_MORE_INPUT;
+ result = BROTLI_DECODER_NEEDS_MORE_INPUT;
goto saveStateAndReturn;
}
p1 = (uint8_t)literal;
@@ -1638,7 +1682,7 @@ CommandInner:
} while (--i != 0);
}
BROTLI_LOG_UINT(s->meta_block_remaining_len);
- if (s->meta_block_remaining_len <= 0) {
+ if (PREDICT_FALSE(s->meta_block_remaining_len <= 0)) {
s->state = BROTLI_STATE_METABLOCK_DONE;
goto saveStateAndReturn;
}
@@ -1700,13 +1744,13 @@ postReadDistance:
BROTLI_LOG(("Invalid backward reference. pos: %d distance: %d "
"len: %d bytes left: %d\n",
pos, s->distance_code, i, s->meta_block_remaining_len));
- return BROTLI_FAILURE();
+ return BROTLI_FAILURE(BROTLI_DECODER_ERROR_FORMAT_TRANSFORM);
}
} else {
BROTLI_LOG(("Invalid backward reference. pos: %d distance: %d "
"len: %d bytes left: %d\n",
pos, s->distance_code, i, s->meta_block_remaining_len));
- return BROTLI_FAILURE();
+ return BROTLI_FAILURE(BROTLI_DECODER_ERROR_FORMAT_DICTIONARY);
}
} else {
int src_start = (pos - s->distance_code) & s->ringbuffer_mask;
@@ -1718,12 +1762,6 @@ postReadDistance:
s->dist_rb[s->dist_rb_idx & 3] = s->distance_code;
++s->dist_rb_idx;
s->meta_block_remaining_len -= i;
- if (PREDICT_FALSE(s->meta_block_remaining_len < 0)) {
- BROTLI_LOG(("Invalid backward reference. pos: %d distance: %d "
- "len: %d bytes left: %d\n",
- pos, s->distance_code, i, s->meta_block_remaining_len));
- return BROTLI_FAILURE();
- }
/* There are 32+ bytes of slack in the ringbuffer allocation.
Also, we have 16 short codes, that make these 16 bytes irrelevant
in the ringbuffer. Let's copy over them as a first guess.
@@ -1785,32 +1823,33 @@ saveStateAndReturn:
#undef BROTLI_SAFE
-static BROTLI_NOINLINE BrotliResult ProcessCommands(BrotliState* s) {
+static BROTLI_NOINLINE BrotliDecoderErrorCode ProcessCommands(
+ BrotliDecoderState* s) {
return ProcessCommandsInternal(0, s);
}
-static BROTLI_NOINLINE BrotliResult SafeProcessCommands(BrotliState* s) {
+static BROTLI_NOINLINE BrotliDecoderErrorCode SafeProcessCommands(
+ BrotliDecoderState* s) {
return ProcessCommandsInternal(1, s);
}
-BrotliResult BrotliDecompressBuffer(size_t encoded_size,
- const uint8_t* encoded_buffer,
- size_t* decoded_size,
- uint8_t* decoded_buffer) {
- BrotliState s;
- BrotliResult result;
+BrotliDecoderResult BrotliDecoderDecompress(
+ size_t encoded_size, const uint8_t* encoded_buffer, size_t* decoded_size,
+ uint8_t* decoded_buffer) {
+ BrotliDecoderState s;
+ BrotliDecoderResult result;
size_t total_out = 0;
size_t available_in = encoded_size;
const uint8_t* next_in = encoded_buffer;
size_t available_out = *decoded_size;
uint8_t* next_out = decoded_buffer;
- BrotliStateInit(&s);
- result = BrotliDecompressStream(&available_in, &next_in, &available_out,
- &next_out, &total_out, &s);
+ BrotliDecoderStateInit(&s);
+ result = BrotliDecoderDecompressStream(
+ &s, &available_in, &next_in, &available_out, &next_out, &total_out);
*decoded_size = total_out;
- BrotliStateCleanup(&s);
- if (result != BROTLI_RESULT_SUCCESS) {
- result = BROTLI_RESULT_ERROR;
+ BrotliDecoderStateCleanup(&s);
+ if (result != BROTLI_DECODER_RESULT_SUCCESS) {
+ result = BROTLI_DECODER_RESULT_ERROR;
}
return result;
}
@@ -1827,10 +1866,10 @@ BrotliResult BrotliDecompressBuffer(size_t encoded_size,
* when result is "success" decoder MUST return all unused data back to input
buffer; this is possible because the invariant is hold on enter
*/
-BrotliResult BrotliDecompressStream(size_t* available_in,
- const uint8_t** next_in, size_t* available_out, uint8_t** next_out,
- size_t* total_out, BrotliState* s) {
- BrotliResult result = BROTLI_RESULT_SUCCESS;
+BrotliDecoderResult BrotliDecoderDecompressStream(
+ BrotliDecoderState* s, size_t* available_in, const uint8_t** next_in,
+ size_t* available_out, uint8_t** next_out, size_t* total_out) {
+ BrotliDecoderErrorCode result = BROTLI_DECODER_SUCCESS;
BrotliBitReader* br = &s->br;
if (s->buffer_length == 0) { /* Just connect bit reader to input stream. */
br->avail_in = *available_in;
@@ -1839,15 +1878,15 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
/* At least one byte of input is required. More than one byte of input may
be required to complete the transaction -> reading more data must be
done in a loop -> do it in a main loop. */
- result = BROTLI_RESULT_NEEDS_MORE_INPUT;
+ result = BROTLI_DECODER_NEEDS_MORE_INPUT;
br->next_in = &s->buffer.u8[0];
}
/* State machine */
for (;;) {
- if (result != BROTLI_RESULT_SUCCESS) { /* Error | needs more input/output */
- if (result == BROTLI_RESULT_NEEDS_MORE_INPUT) {
+ if (result != BROTLI_DECODER_SUCCESS) { /* Error, needs more input/output */
+ if (result == BROTLI_DECODER_NEEDS_MORE_INPUT) {
if (s->ringbuffer != 0) { /* Proactively push output. */
- WriteRingBuffer(available_out, next_out, total_out, s);
+ WriteRingBuffer(s, available_out, next_out, total_out);
}
if (s->buffer_length != 0) { /* Used with internal buffer. */
if (br->avail_in == 0) { /* Successfully finished read transaction. */
@@ -1855,14 +1894,14 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
is expanded byte-by-byte until it is enough to complete read. */
s->buffer_length = 0;
/* Switch to input stream and restart. */
- result = BROTLI_RESULT_SUCCESS;
+ result = BROTLI_DECODER_SUCCESS;
br->avail_in = *available_in;
br->next_in = *next_in;
continue;
} else if (*available_in != 0) {
/* Not enough data in buffer, but can take one more byte from
input stream. */
- result = BROTLI_RESULT_SUCCESS;
+ result = BROTLI_DECODER_SUCCESS;
s->buffer.u8[s->buffer_length] = **next_in;
s->buffer_length++;
br->avail_in = s->buffer_length;
@@ -1908,7 +1947,7 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
case BROTLI_STATE_UNINITED:
/* Prepare to the first read. */
if (!BrotliWarmupBitReader(br)) {
- result = BROTLI_RESULT_NEEDS_MORE_INPUT;
+ result = BROTLI_DECODER_NEEDS_MORE_INPUT;
break;
}
/* Decode window size. */
@@ -1916,10 +1955,16 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
BROTLI_LOG_UINT(s->window_bits);
if (s->window_bits == 9) {
/* Value 9 is reserved for future use. */
- result = BROTLI_FAILURE();
+ result = BROTLI_FAILURE(BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS);
break;
}
+ /* Maximum distance, see section 9.1. of the spec. */
s->max_backward_distance = (1 << s->window_bits) - 16;
+ /* Limit custom dictionary size. */
+ if (s->custom_dict_size >= s->max_backward_distance) {
+ s->custom_dict += s->custom_dict_size - s->max_backward_distance;
+ s->custom_dict_size = s->max_backward_distance;
+ }
s->max_backward_distance_minus_custom_dict_size =
s->max_backward_distance - s->custom_dict_size;
@@ -1928,7 +1973,7 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
sizeof(HuffmanCode) * 3 *
(BROTLI_HUFFMAN_MAX_SIZE_258 + BROTLI_HUFFMAN_MAX_SIZE_26));
if (s->block_type_trees == 0) {
- result = BROTLI_FAILURE();
+ result = BROTLI_FAILURE(BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES);
break;
}
s->block_len_trees =
@@ -1937,13 +1982,13 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
s->state = BROTLI_STATE_METABLOCK_BEGIN;
/* No break, continue to next state */
case BROTLI_STATE_METABLOCK_BEGIN:
- BrotliStateMetablockBegin(s);
+ BrotliDecoderStateMetablockBegin(s);
BROTLI_LOG_UINT(s->pos);
s->state = BROTLI_STATE_METABLOCK_HEADER;
/* No break, continue to next state */
case BROTLI_STATE_METABLOCK_HEADER:
result = DecodeMetaBlockLength(s, br); /* Reads 2 - 31 bits. */
- if (result != BROTLI_RESULT_SUCCESS) {
+ if (result != BROTLI_DECODER_SUCCESS) {
break;
}
BROTLI_LOG_UINT(s->is_last_metablock);
@@ -1952,7 +1997,7 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
BROTLI_LOG_UINT(s->is_uncompressed);
if (s->is_metadata || s->is_uncompressed) {
if (!BrotliJumpToByteBoundary(br)) {
- result = BROTLI_FAILURE();
+ result = BROTLI_FAILURE(BROTLI_DECODER_ERROR_FORMAT_PADDING_1);
break;
}
}
@@ -1979,7 +2024,7 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
result = CopyUncompressedBlockToOutput(
available_out, next_out, total_out, s);
bytes_copied -= s->meta_block_remaining_len;
- if (result != BROTLI_RESULT_SUCCESS) {
+ if (result != BROTLI_DECODER_SUCCESS) {
break;
}
s->state = BROTLI_STATE_METABLOCK_DONE;
@@ -1990,11 +2035,11 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
uint32_t bits;
/* Read one byte and ignore it. */
if (!BrotliSafeReadBits(br, 8, &bits)) {
- result = BROTLI_RESULT_NEEDS_MORE_INPUT;
+ result = BROTLI_DECODER_NEEDS_MORE_INPUT;
break;
}
}
- if (result == BROTLI_RESULT_SUCCESS) {
+ if (result == BROTLI_DECODER_SUCCESS) {
s->state = BROTLI_STATE_METABLOCK_DONE;
}
break;
@@ -2005,7 +2050,7 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
}
/* Reads 1..11 bits. */
result = DecodeVarLenUint8(s, br, &s->num_block_types[s->loop_counter]);
- if (result != BROTLI_RESULT_SUCCESS) {
+ if (result != BROTLI_DECODER_SUCCESS) {
break;
}
s->num_block_types[s->loop_counter]++;
@@ -2020,15 +2065,15 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
int tree_offset = s->loop_counter * BROTLI_HUFFMAN_MAX_SIZE_258;
result = ReadHuffmanCode(s->num_block_types[s->loop_counter] + 2,
&s->block_type_trees[tree_offset], NULL, s);
- if (result != BROTLI_RESULT_SUCCESS) break;
+ if (result != BROTLI_DECODER_SUCCESS) break;
s->state = BROTLI_STATE_HUFFMAN_CODE_2;
/* No break, continue to next state */
}
case BROTLI_STATE_HUFFMAN_CODE_2: {
int tree_offset = s->loop_counter * BROTLI_HUFFMAN_MAX_SIZE_26;
- result = ReadHuffmanCode(kNumBlockLengthCodes,
+ result = ReadHuffmanCode(BROTLI_NUM_BLOCK_LEN_SYMBOLS,
&s->block_len_trees[tree_offset], NULL, s);
- if (result != BROTLI_RESULT_SUCCESS) break;
+ if (result != BROTLI_DECODER_SUCCESS) break;
s->state = BROTLI_STATE_HUFFMAN_CODE_3;
/* No break, continue to next state */
}
@@ -2036,7 +2081,7 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
int tree_offset = s->loop_counter * BROTLI_HUFFMAN_MAX_SIZE_26;
if (!SafeReadBlockLength(s, &s->block_length[s->loop_counter],
&s->block_len_trees[tree_offset], br)) {
- result = BROTLI_RESULT_NEEDS_MORE_INPUT;
+ result = BROTLI_DECODER_NEEDS_MORE_INPUT;
break;
}
BROTLI_LOG_UINT(s->block_length[s->loop_counter]);
@@ -2047,20 +2092,20 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
case BROTLI_STATE_METABLOCK_HEADER_2: {
uint32_t bits;
if (!BrotliSafeReadBits(br, 6, &bits)) {
- result = BROTLI_RESULT_NEEDS_MORE_INPUT;
+ result = BROTLI_DECODER_NEEDS_MORE_INPUT;
break;
}
s->distance_postfix_bits = bits & BitMask(2);
bits >>= 2;
- s->num_direct_distance_codes =
- NUM_DISTANCE_SHORT_CODES + (bits << s->distance_postfix_bits);
+ s->num_direct_distance_codes = BROTLI_NUM_DISTANCE_SHORT_CODES +
+ (bits << s->distance_postfix_bits);
BROTLI_LOG_UINT(s->num_direct_distance_codes);
BROTLI_LOG_UINT(s->distance_postfix_bits);
s->distance_postfix_mask = (int)BitMask(s->distance_postfix_bits);
s->context_modes =
(uint8_t*)BROTLI_ALLOC(s, (size_t)s->num_block_types[0]);
if (s->context_modes == 0) {
- result = BROTLI_FAILURE();
+ result = BROTLI_FAILURE(BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES);
break;
}
s->loop_counter = 0;
@@ -2069,49 +2114,45 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
}
case BROTLI_STATE_CONTEXT_MODES:
result = ReadContextModes(s);
- if (result != BROTLI_RESULT_SUCCESS) {
+ if (result != BROTLI_DECODER_SUCCESS) {
break;
}
s->state = BROTLI_STATE_CONTEXT_MAP_1;
/* No break, continue to next state */
- case BROTLI_STATE_CONTEXT_MAP_1: {
- uint32_t j;
- result = DecodeContextMap(s->num_block_types[0] << kLiteralContextBits,
- &s->num_literal_htrees, &s->context_map, s);
- if (result != BROTLI_RESULT_SUCCESS) {
+ case BROTLI_STATE_CONTEXT_MAP_1:
+ result = DecodeContextMap(
+ s->num_block_types[0] << BROTLI_LITERAL_CONTEXT_BITS,
+ &s->num_literal_htrees, &s->context_map, s);
+ if (result != BROTLI_DECODER_SUCCESS) {
break;
}
- s->trivial_literal_context = 1;
- for (j = 0; j < s->num_block_types[0] << kLiteralContextBits; j++) {
- if (s->context_map[j] != j >> kLiteralContextBits) {
- s->trivial_literal_context = 0;
- break;
- }
- }
+ DetectTrivialLiteralBlockTypes(s);
s->state = BROTLI_STATE_CONTEXT_MAP_2;
/* No break, continue to next state */
- }
case BROTLI_STATE_CONTEXT_MAP_2:
{
uint32_t num_distance_codes =
s->num_direct_distance_codes + (48U << s->distance_postfix_bits);
result = DecodeContextMap(
- s->num_block_types[2] << kDistanceContextBits,
+ s->num_block_types[2] << BROTLI_DISTANCE_CONTEXT_BITS,
&s->num_dist_htrees, &s->dist_context_map, s);
- if (result != BROTLI_RESULT_SUCCESS) {
+ if (result != BROTLI_DECODER_SUCCESS) {
break;
}
- BrotliHuffmanTreeGroupInit(s, &s->literal_hgroup, kNumLiteralCodes,
- s->num_literal_htrees);
- BrotliHuffmanTreeGroupInit(s, &s->insert_copy_hgroup,
- kNumInsertAndCopyCodes,
- s->num_block_types[1]);
- BrotliHuffmanTreeGroupInit(s, &s->distance_hgroup, num_distance_codes,
- s->num_dist_htrees);
+ BrotliDecoderHuffmanTreeGroupInit(
+ s, &s->literal_hgroup, BROTLI_NUM_LITERAL_SYMBOLS,
+ s->num_literal_htrees);
+ BrotliDecoderHuffmanTreeGroupInit(
+ s, &s->insert_copy_hgroup, BROTLI_NUM_COMMAND_SYMBOLS,
+ s->num_block_types[1]);
+ BrotliDecoderHuffmanTreeGroupInit(
+ s, &s->distance_hgroup, num_distance_codes,
+ s->num_dist_htrees);
if (s->literal_hgroup.codes == 0 ||
s->insert_copy_hgroup.codes == 0 ||
s->distance_hgroup.codes == 0) {
- return BROTLI_FAILURE();
+ return SaveErrorCode(s,
+ BROTLI_FAILURE(BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS));
}
}
s->loop_counter = 0;
@@ -2131,24 +2172,19 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
hgroup = &s->distance_hgroup;
break;
default:
- return BROTLI_FAILURE();
+ return SaveErrorCode(s, BROTLI_FAILURE(
+ BROTLI_DECODER_ERROR_UNREACHABLE));
}
result = HuffmanTreeGroupDecode(hgroup, s);
}
- if (result != BROTLI_RESULT_SUCCESS) break;
+ if (result != BROTLI_DECODER_SUCCESS) break;
s->loop_counter++;
if (s->loop_counter >= 3) {
- uint8_t context_mode = s->context_modes[s->block_type_rb[1]];
- s->context_map_slice = s->context_map;
+ PrepareLiteralDecoding(s);
s->dist_context_map_slice = s->dist_context_map;
- s->context_lookup1 =
- &kContextLookup[kContextLookupOffsets[context_mode]];
- s->context_lookup2 =
- &kContextLookup[kContextLookupOffsets[context_mode + 1]];
s->htree_command = s->insert_copy_hgroup.htrees[0];
- s->literal_htree = s->literal_hgroup.htrees[s->literal_htree_index];
if (!s->ringbuffer && !BrotliAllocateRingBuffer(s)) {
- result = BROTLI_FAILURE();
+ result = BROTLI_FAILURE(BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2);
break;
}
s->state = BROTLI_STATE_COMMAND_BEGIN;
@@ -2159,19 +2195,17 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
case BROTLI_STATE_COMMAND_POST_DECODE_LITERALS:
case BROTLI_STATE_COMMAND_POST_WRAP_COPY:
result = ProcessCommands(s);
- if (result == BROTLI_RESULT_NEEDS_MORE_INPUT) {
+ if (result == BROTLI_DECODER_NEEDS_MORE_INPUT) {
result = SafeProcessCommands(s);
}
break;
case BROTLI_STATE_COMMAND_INNER_WRITE:
case BROTLI_STATE_COMMAND_POST_WRITE_1:
case BROTLI_STATE_COMMAND_POST_WRITE_2:
- result = WriteRingBuffer(available_out, next_out, total_out, s);
- if (result != BROTLI_RESULT_SUCCESS) {
+ result = WriteRingBuffer(s, available_out, next_out, total_out);
+ if (result != BROTLI_DECODER_SUCCESS) {
break;
}
- s->pos -= s->ringbuffer_size;
- s->rb_roundtrips++;
s->max_distance = s->max_backward_distance;
if (s->state == BROTLI_STATE_COMMAND_POST_WRITE_1) {
memcpy(s->ringbuffer, s->ringbuffer_end, (size_t)s->pos);
@@ -2197,13 +2231,18 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
}
break;
case BROTLI_STATE_METABLOCK_DONE:
- BrotliStateCleanupAfterMetablock(s);
+ if (s->meta_block_remaining_len < 0) {
+ result = BROTLI_FAILURE(BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2);
+ break;
+ }
+ BrotliDecoderStateCleanupAfterMetablock(s);
if (!s->is_last_metablock) {
s->state = BROTLI_STATE_METABLOCK_BEGIN;
break;
}
if (!BrotliJumpToByteBoundary(br)) {
- result = BROTLI_FAILURE();
+ result = BROTLI_FAILURE(BROTLI_DECODER_ERROR_FORMAT_PADDING_2);
+ break;
}
if (s->buffer_length == 0) {
BrotliBitReaderUnload(br);
@@ -2214,23 +2253,94 @@ BrotliResult BrotliDecompressStream(size_t* available_in,
/* No break, continue to next state */
case BROTLI_STATE_DONE:
if (s->ringbuffer != 0) {
- result = WriteRingBuffer(available_out, next_out, total_out, s);
- if (result != BROTLI_RESULT_SUCCESS) {
+ result = WriteRingBuffer(s, available_out, next_out, total_out);
+ if (result != BROTLI_DECODER_SUCCESS) {
break;
}
}
- return result;
+ return SaveErrorCode(s, result);
}
}
- return result;
+ return SaveErrorCode(s, result);
}
-void BrotliSetCustomDictionary(
- size_t size, const uint8_t* dict, BrotliState* s) {
+void BrotliDecoderSetCustomDictionary(
+ BrotliDecoderState* s, size_t size, const uint8_t* dict) {
+ if (size > (1u << 24)) {
+ return;
+ }
s->custom_dict = dict;
s->custom_dict_size = (int)size;
}
+BROTLI_BOOL BrotliDecoderHasMoreOutput(const BrotliDecoderState* s) {
+ return TO_BROTLI_BOOL(
+ s->ringbuffer != 0 && UnwrittenBytes(s, BROTLI_FALSE) != 0);
+}
+
+BROTLI_BOOL BrotliDecoderIsUsed(const BrotliDecoderState* s) {
+ return TO_BROTLI_BOOL(s->state != BROTLI_STATE_UNINITED ||
+ BrotliGetAvailableBits(&s->br) != 0);
+}
+
+BROTLI_BOOL BrotliDecoderIsFinished(const BrotliDecoderState* s) {
+ return TO_BROTLI_BOOL(s->state == BROTLI_STATE_DONE);
+}
+
+BrotliDecoderErrorCode BrotliDecoderGetErrorCode(const BrotliDecoderState* s) {
+ return (BrotliDecoderErrorCode)s->error_code;
+}
+
+const char* BrotliDecoderErrorString(BrotliDecoderErrorCode c) {
+ switch (c) {
+#define _BROTLI_ERROR_CODE_CASE(PREFIX, NAME, CODE) \
+ case BROTLI_DECODER ## PREFIX ## NAME: return #NAME;
+#define _BROTLI_NOTHING
+ BROTLI_DECODER_ERROR_CODES_LIST(_BROTLI_ERROR_CODE_CASE, _BROTLI_NOTHING)
+#undef _BROTLI_ERROR_CODE_CASE
+#undef _BROTLI_NOTHING
+ default: return "INVALID";
+ }
+}
+
+/* DEPRECATED >>> */
+BrotliState* BrotliCreateState(
+ brotli_alloc_func alloc, brotli_free_func free, void* opaque) {
+ return (BrotliState*)BrotliDecoderCreateInstance(alloc, free, opaque);
+}
+void BrotliDestroyState(BrotliState* state) {
+ BrotliDecoderDestroyInstance((BrotliDecoderState*)state);
+}
+BrotliResult BrotliDecompressBuffer(
+ size_t encoded_size, const uint8_t* encoded_buffer, size_t* decoded_size,
+ uint8_t* decoded_buffer) {
+ return (BrotliResult)BrotliDecoderDecompress(
+ encoded_size, encoded_buffer, decoded_size, decoded_buffer);
+}
+BrotliResult BrotliDecompressStream(
+ size_t* available_in, const uint8_t** next_in, size_t* available_out,
+ uint8_t** next_out, size_t* total_out, BrotliState* s) {
+ return (BrotliResult)BrotliDecoderDecompressStream((BrotliDecoderState*)s,
+ available_in, next_in, available_out, next_out, total_out);
+}
+void BrotliSetCustomDictionary(
+ size_t size, const uint8_t* dict, BrotliState* s) {
+ BrotliDecoderSetCustomDictionary((BrotliDecoderState*)s, size, dict);
+}
+BROTLI_BOOL BrotliStateIsStreamStart(const BrotliState* s) {
+ return !BrotliDecoderIsUsed((const BrotliDecoderState*)s);
+}
+BROTLI_BOOL BrotliStateIsStreamEnd(const BrotliState* s) {
+ return BrotliDecoderIsFinished((const BrotliDecoderState*)s);
+}
+BrotliErrorCode BrotliGetErrorCode(const BrotliState* s) {
+ return (BrotliErrorCode)BrotliDecoderGetErrorCode(
+ (const BrotliDecoderState*)s);
+}
+const char* BrotliErrorString(BrotliErrorCode c) {
+ return BrotliDecoderErrorString((BrotliDecoderErrorCode)c);
+}
+/* <<< DEPRECATED */
#if defined(__cplusplus) || defined(c_plusplus)
} /* extern "C" */
diff --git a/thirdparty/brotli/dec/decode.h b/thirdparty/brotli/dec/decode.h
index 074b2f58..405c4631 100644
--- a/thirdparty/brotli/dec/decode.h
+++ b/thirdparty/brotli/dec/decode.h
@@ -9,49 +9,91 @@
#ifndef BROTLI_DEC_DECODE_H_
#define BROTLI_DEC_DECODE_H_
-#include "./state.h"
-#include "./types.h"
+#include "../common/types.h"
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
#endif
+typedef struct BrotliDecoderStateStruct BrotliDecoderState;
+
typedef enum {
/* Decoding error, e.g. corrupt input or memory allocation problem */
- BROTLI_RESULT_ERROR = 0,
+ BROTLI_DECODER_RESULT_ERROR = 0,
/* Decoding successfully completed */
- BROTLI_RESULT_SUCCESS = 1,
+ BROTLI_DECODER_RESULT_SUCCESS = 1,
/* Partially done; should be called again with more input */
- BROTLI_RESULT_NEEDS_MORE_INPUT = 2,
+ BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT = 2,
/* Partially done; should be called again with more output */
- BROTLI_RESULT_NEEDS_MORE_OUTPUT = 3
-} BrotliResult;
+ BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT = 3
+} BrotliDecoderResult;
+
+#define BROTLI_DECODER_ERROR_CODES_LIST(BROTLI_ERROR_CODE, SEPARATOR) \
+ BROTLI_ERROR_CODE(_, NO_ERROR, 0) SEPARATOR \
+ /* Same as BrotliDecoderResult values */ \
+ BROTLI_ERROR_CODE(_, SUCCESS, 1) SEPARATOR \
+ BROTLI_ERROR_CODE(_, NEEDS_MORE_INPUT, 2) SEPARATOR \
+ BROTLI_ERROR_CODE(_, NEEDS_MORE_OUTPUT, 3) SEPARATOR \
+ \
+ /* Errors caused by invalid input */ \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, EXUBERANT_NIBBLE, -1) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, RESERVED, -2) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, EXUBERANT_META_NIBBLE, -3) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, SIMPLE_HUFFMAN_ALPHABET, -4) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, SIMPLE_HUFFMAN_SAME, -5) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, CL_SPACE, -6) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, HUFFMAN_SPACE, -7) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, CONTEXT_MAP_REPEAT, -8) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, BLOCK_LENGTH_1, -9) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, BLOCK_LENGTH_2, -10) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, TRANSFORM, -11) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, DICTIONARY, -12) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, WINDOW_BITS, -13) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, PADDING_1, -14) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_FORMAT_, PADDING_2, -15) SEPARATOR \
+ \
+ /* -16..-20 codes are reserved */ \
+ \
+ /* Memory allocation problems */ \
+ BROTLI_ERROR_CODE(_ERROR_ALLOC_, CONTEXT_MODES, -21) SEPARATOR \
+ /* Literal, insert and distance trees together */ \
+ BROTLI_ERROR_CODE(_ERROR_ALLOC_, TREE_GROUPS, -22) SEPARATOR \
+ /* -23..-24 codes are reserved for distinct tree groups */ \
+ BROTLI_ERROR_CODE(_ERROR_ALLOC_, CONTEXT_MAP, -25) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_ALLOC_, RING_BUFFER_1, -26) SEPARATOR \
+ BROTLI_ERROR_CODE(_ERROR_ALLOC_, RING_BUFFER_2, -27) SEPARATOR \
+ /* -28..-29 codes are reserved for dynamic ringbuffer allocation */ \
+ BROTLI_ERROR_CODE(_ERROR_ALLOC_, BLOCK_TYPE_TREES, -30) SEPARATOR \
+ \
+ /* "Impossible" states */ \
+ BROTLI_ERROR_CODE(_ERROR_, UNREACHABLE, -31)
-/* Creates the instance of BrotliState and initializes it. |alloc_func| and
- |free_func| MUST be both zero or both non-zero. In the case they are both
+typedef enum {
+#define _BROTLI_COMMA ,
+#define _BROTLI_ERROR_CODE_ENUM_ITEM(PREFIX, NAME, CODE) \
+ BROTLI_DECODER ## PREFIX ## NAME = CODE
+ BROTLI_DECODER_ERROR_CODES_LIST(_BROTLI_ERROR_CODE_ENUM_ITEM, _BROTLI_COMMA)
+#undef _BROTLI_ERROR_CODE_ENUM_ITEM
+#undef _BROTLI_COMMA
+} BrotliDecoderErrorCode;
+
+#define BROTLI_LAST_ERROR_CODE BROTLI_DECODER_ERROR_UNREACHABLE
+
+/* Creates the instance of BrotliDecoderState and initializes it. |alloc_func|
+ and |free_func| MUST be both zero or both non-zero. In the case they are both
zero, default memory allocators are used. |opaque| is passed to |alloc_func|
and |free_func| when they are called. */
-BrotliState* BrotliCreateState(
+BrotliDecoderState* BrotliDecoderCreateInstance(
brotli_alloc_func alloc_func, brotli_free_func free_func, void* opaque);
-/* Deinitializes and frees BrotliState instance. */
-void BrotliDestroyState(BrotliState* state);
-
-/* Sets |*decoded_size| to the decompressed size of the given encoded stream.
- This function only works if the encoded buffer has a single meta block,
- or if it has two meta-blocks, where the first is uncompressed and the
- second is empty.
- Returns 1 on success, 0 on failure. */
-int BrotliDecompressedSize(size_t encoded_size,
- const uint8_t* encoded_buffer,
- size_t* decoded_size);
+/* Deinitializes and frees BrotliDecoderState instance. */
+void BrotliDecoderDestroyInstance(BrotliDecoderState* state);
/* Decompresses the data in |encoded_buffer| into |decoded_buffer|, and sets
|*decoded_size| to the decompressed length. */
-BrotliResult BrotliDecompressBuffer(size_t encoded_size,
- const uint8_t* encoded_buffer,
- size_t* decoded_size,
- uint8_t* decoded_buffer);
+BrotliDecoderResult BrotliDecoderDecompress(
+ size_t encoded_size, const uint8_t* encoded_buffer, size_t* decoded_size,
+ uint8_t* decoded_buffer);
/* Decompresses the data. Supports partial input and output.
@@ -63,31 +105,81 @@ BrotliResult BrotliDecompressBuffer(size_t encoded_size,
bytes consumed, and the |*next_in| pointer will be incremented by that
amount. Similarly, |*available_out| will be decremented by the amount of
output bytes written, and the |*next_out| pointer will be incremented by that
- amount. |total_out| will be set to the number of bytes decompressed since
- last state initialization.
+ amount. |total_out|, if it is not a null-pointer, will be set to the number
+ of bytes decompressed since the last state initialization.
Input is never overconsumed, so |next_in| and |available_in| could be passed
to the next consumer after decoding is complete. */
-BrotliResult BrotliDecompressStream(size_t* available_in,
- const uint8_t** next_in,
- size_t* available_out,
- uint8_t** next_out,
- size_t* total_out,
- BrotliState* s);
+BrotliDecoderResult BrotliDecoderDecompressStream(
+ BrotliDecoderState* s, size_t* available_in, const uint8_t** next_in,
+ size_t* available_out, uint8_t** next_out, size_t* total_out);
/* Fills the new state with a dictionary for LZ77, warming up the ringbuffer,
e.g. for custom static dictionaries for data formats.
Not to be confused with the built-in transformable dictionary of Brotli.
- The dictionary must exist in memory until decoding is done and is owned by
- the caller. To use:
- 1) initialize state with BrotliStateInit
- 2) use BrotliSetCustomDictionary
- 3) use BrotliDecompressStream
- 4) clean up with BrotliStateCleanup
+ |size| should be less or equal to 2^24 (16MiB), otherwise the dictionary will
+ be ignored. The dictionary must exist in memory until decoding is done and
+ is owned by the caller. To use:
+ 1) Allocate and initialize state with BrotliCreateInstance
+ 2) Use BrotliSetCustomDictionary
+ 3) Use BrotliDecompressStream
+ 4) Clean up and free state with BrotliDestroyState
*/
+void BrotliDecoderSetCustomDictionary(
+ BrotliDecoderState* s, size_t size, const uint8_t* dict);
+
+/* Returns true, if decoder has some unconsumed output.
+ Otherwise returns false. */
+BROTLI_BOOL BrotliDecoderHasMoreOutput(const BrotliDecoderState* s);
+
+/* Returns true, if decoder has already received some input bytes.
+ Otherwise returns false. */
+BROTLI_BOOL BrotliDecoderIsUsed(const BrotliDecoderState* s);
+
+/* Returns true, if decoder is in a state where we reached the end of the input
+ and produced all of the output; returns false otherwise. */
+BROTLI_BOOL BrotliDecoderIsFinished(const BrotliDecoderState* s);
+
+/* Returns detailed error code after BrotliDecompressStream returns
+ BROTLI_DECODER_RESULT_ERROR. */
+BrotliDecoderErrorCode BrotliDecoderGetErrorCode(const BrotliDecoderState* s);
+
+const char* BrotliDecoderErrorString(BrotliDecoderErrorCode c);
+
+/* DEPRECATED >>> */
+typedef enum {
+ BROTLI_RESULT_ERROR = 0,
+ BROTLI_RESULT_SUCCESS = 1,
+ BROTLI_RESULT_NEEDS_MORE_INPUT = 2,
+ BROTLI_RESULT_NEEDS_MORE_OUTPUT = 3
+} BrotliResult;
+typedef enum {
+#define _BROTLI_COMMA ,
+#define _BROTLI_ERROR_CODE_ENUM_ITEM(PREFIX, NAME, CODE) \
+ BROTLI ## PREFIX ## NAME = CODE
+ BROTLI_DECODER_ERROR_CODES_LIST(_BROTLI_ERROR_CODE_ENUM_ITEM, _BROTLI_COMMA)
+#undef _BROTLI_ERROR_CODE_ENUM_ITEM
+#undef _BROTLI_COMMA
+} BrotliErrorCode;
+typedef struct BrotliStateStruct BrotliState;
+BrotliState* BrotliCreateState(
+ brotli_alloc_func alloc, brotli_free_func free, void* opaque);
+void BrotliDestroyState(BrotliState* state);
+BROTLI_BOOL BrotliDecompressedSize(
+ size_t encoded_size, const uint8_t* encoded_buffer, size_t* decoded_size);
+BrotliResult BrotliDecompressBuffer(
+ size_t encoded_size, const uint8_t* encoded_buffer, size_t* decoded_size,
+ uint8_t* decoded_buffer);
+BrotliResult BrotliDecompressStream(
+ size_t* available_in, const uint8_t** next_in, size_t* available_out,
+ uint8_t** next_out, size_t* total_out, BrotliState* s);
void BrotliSetCustomDictionary(
size_t size, const uint8_t* dict, BrotliState* s);
-
+BROTLI_BOOL BrotliStateIsStreamStart(const BrotliState* s);
+BROTLI_BOOL BrotliStateIsStreamEnd(const BrotliState* s);
+BrotliErrorCode BrotliGetErrorCode(const BrotliState* s);
+const char* BrotliErrorString(BrotliErrorCode c);
+/* <<< DEPRECATED */
#if defined(__cplusplus) || defined(c_plusplus)
} /* extern "C" */
diff --git a/thirdparty/brotli/dec/dictionary.h b/thirdparty/brotli/dec/dictionary.h
deleted file mode 100644
index ae250c2d..00000000
--- a/thirdparty/brotli/dec/dictionary.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Copyright 2013 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-/* Collection of static dictionary words. */
-
-#ifndef BROTLI_DEC_DICTIONARY_H_
-#define BROTLI_DEC_DICTIONARY_H_
-
-#include "./types.h"
-
-#if defined(__cplusplus) || defined(c_plusplus)
-extern "C" {
-#endif
-
-extern const uint8_t kBrotliDictionary[122784];
-
-static const uint32_t kBrotliDictionaryOffsetsByLength[] = {
- 0, 0, 0, 0, 0, 4096, 9216, 21504, 35840, 44032, 53248, 63488, 74752, 87040,
- 93696, 100864, 104704, 106752, 108928, 113536, 115968, 118528, 119872, 121280,
- 122016
-};
-
-static const uint8_t kBrotliDictionarySizeBitsByLength[] = {
- 0, 0, 0, 0, 10, 10, 11, 11, 10, 10, 10, 10, 10,
- 9, 9, 8, 7, 7, 8, 7, 7, 6, 6, 5, 5,
-};
-
-static const int kBrotliMinDictionaryWordLength = 4;
-static const int kBrotliMaxDictionaryWordLength = 24;
-
-#if defined(__cplusplus) || defined(c_plusplus)
-} /* extern "C" */
-#endif
-
-#endif /* BROTLI_DEC_DICTIONARY_H_ */
diff --git a/thirdparty/brotli/dec/huffman.c b/thirdparty/brotli/dec/huffman.c
index 159ac1c7..e17ee275 100644
--- a/thirdparty/brotli/dec/huffman.c
+++ b/thirdparty/brotli/dec/huffman.c
@@ -10,8 +10,9 @@
#include <string.h> /* memcpy, memset */
+#include "../common/constants.h"
+#include "../common/types.h"
#include "./port.h"
-#include "./types.h"
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
@@ -99,7 +100,6 @@ static BROTLI_INLINE int NextTableBitSize(const uint16_t* const count,
return len - root_bits;
}
-
void BrotliBuildCodeLengthsHuffmanTable(HuffmanCode* table,
const uint8_t* const code_lengths,
uint16_t* count) {
@@ -109,7 +109,7 @@ void BrotliBuildCodeLengthsHuffmanTable(HuffmanCode* table,
uint32_t key_step; /* prefix code addend */
int step; /* step size to replicate values in current table */
int table_size; /* size of current table */
- int sorted[18]; /* symbols sorted by code length */
+ int sorted[BROTLI_CODE_LENGTH_CODES]; /* symbols sorted by code length */
/* offsets in sorted table for each length */
int offset[BROTLI_HUFFMAN_MAX_CODE_LENGTH_CODE_LENGTH + 1];
int bits;
@@ -126,10 +126,10 @@ void BrotliBuildCodeLengthsHuffmanTable(HuffmanCode* table,
bits++;
});
/* Symbols with code length 0 are placed after all other symbols. */
- offset[0] = 17;
+ offset[0] = BROTLI_CODE_LENGTH_CODES - 1;
/* sort symbols by length, by symbol order within each length */
- symbol = 18;
+ symbol = BROTLI_CODE_LENGTH_CODES;
do {
BROTLI_REPEAT(6, {
symbol--;
diff --git a/thirdparty/brotli/dec/huffman.h b/thirdparty/brotli/dec/huffman.h
index 7cbec80d..354f27d1 100644
--- a/thirdparty/brotli/dec/huffman.h
+++ b/thirdparty/brotli/dec/huffman.h
@@ -9,7 +9,8 @@
#ifndef BROTLI_DEC_HUFFMAN_H_
#define BROTLI_DEC_HUFFMAN_H_
-#include "./types.h"
+#include "../common/types.h"
+#include "./port.h"
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
@@ -17,16 +18,16 @@ extern "C" {
#define BROTLI_HUFFMAN_MAX_CODE_LENGTH 15
-/* For current format this constant equals to kNumInsertAndCopyCodes */
-#define BROTLI_HUFFMAN_MAX_CODE_LENGTHS_SIZE 704
-
/* Maximum possible Huffman table size for an alphabet size of (index * 32),
* max code length 15 and root table bits 8. */
static const uint16_t kMaxHuffmanTableSize[] = {
256, 402, 436, 468, 500, 534, 566, 598, 630, 662, 694, 726, 758, 790, 822,
854, 886, 920, 952, 984, 1016, 1048, 1080};
+/* BROTLI_NUM_BLOCK_LEN_SYMBOLS == 26 */
#define BROTLI_HUFFMAN_MAX_SIZE_26 396
+/* BROTLI_MAX_BLOCK_TYPE_SYMBOLS == 258 */
#define BROTLI_HUFFMAN_MAX_SIZE_258 632
+/* BROTLI_MAX_CONTEXT_MAP_SYMBOLS == 272 */
#define BROTLI_HUFFMAN_MAX_SIZE_272 646
#define BROTLI_HUFFMAN_MAX_CODE_LENGTH_CODE_LENGTH 5
@@ -36,27 +37,21 @@ typedef struct {
uint16_t value; /* symbol value or table offset */
} HuffmanCode;
-
/* Builds Huffman lookup table assuming code lengths are in symbol order. */
-void BrotliBuildCodeLengthsHuffmanTable(HuffmanCode* root_table,
- const uint8_t* const code_lengths,
- uint16_t* count);
+BROTLI_INTERNAL void BrotliBuildCodeLengthsHuffmanTable(HuffmanCode* root_table,
+ const uint8_t* const code_lengths, uint16_t* count);
/* Builds Huffman lookup table assuming code lengths are in symbol order. */
/* Returns size of resulting table. */
-uint32_t BrotliBuildHuffmanTable(HuffmanCode* root_table,
- int root_bits,
- const uint16_t* const symbol_lists,
- uint16_t* count_arg);
+BROTLI_INTERNAL uint32_t BrotliBuildHuffmanTable(HuffmanCode* root_table,
+ int root_bits, const uint16_t* const symbol_lists, uint16_t* count_arg);
/* Builds a simple Huffman table. The num_symbols parameter is to be */
/* interpreted as follows: 0 means 1 symbol, 1 means 2 symbols, 2 means 3 */
/* symbols, 3 means 4 symbols with lengths 2,2,2,2, 4 means 4 symbols with */
/* lengths 1,2,3,3. */
-uint32_t BrotliBuildSimpleHuffmanTable(HuffmanCode* table,
- int root_bits,
- uint16_t* symbols,
- uint32_t num_symbols);
+BROTLI_INTERNAL uint32_t BrotliBuildSimpleHuffmanTable(HuffmanCode* table,
+ int root_bits, uint16_t* symbols, uint32_t num_symbols);
/* Contains a collection of Huffman trees with the same alphabet size. */
typedef struct {
diff --git a/thirdparty/brotli/dec/port.h b/thirdparty/brotli/dec/port.h
index fe091227..31e0295c 100644
--- a/thirdparty/brotli/dec/port.h
+++ b/thirdparty/brotli/dec/port.h
@@ -18,26 +18,18 @@
read and overlapping memcpy; this reduces decompression speed by 5%
* BROTLI_DEBUG dumps file name and line number when decoder detects stream
or memory error
- * BROTLI_DECODE_DEBUG enables asserts and dumps various state information
+ * BROTLI_ENABLE_LOG enables asserts and dumps various state information
*/
#ifndef BROTLI_DEC_PORT_H_
#define BROTLI_DEC_PORT_H_
+#if defined(BROTLI_ENABLE_LOG) || defined(BROTLI_DEBUG)
#include <assert.h>
-
-/* Compatibility with non-clang compilers. */
-#ifndef __has_builtin
-#define __has_builtin(x) 0
+#include <stdio.h>
#endif
-#ifndef __has_attribute
-#define __has_attribute(x) 0
-#endif
-
-#ifndef __has_feature
-#define __has_feature(x) 0
-#endif
+#include "../common/port.h"
#if defined(__arm__) || defined(__thumb__) || \
defined(_M_ARM) || defined(_M_ARMT)
@@ -63,58 +55,14 @@
#define BROTLI_TARGET_POWERPC64
#endif
-#if defined(__GNUC__) && defined(__GNUC_MINOR__)
-#define BROTLI_GCC_VERSION (__GNUC__ * 100 + __GNUC_MINOR__)
-#else
-#define BROTLI_GCC_VERSION 0
-#endif
-
-#if defined(__ICC)
-#define BROTLI_ICC_VERSION __ICC
-#else
-#define BROTLI_ICC_VERSION 0
-#endif
-
-#if defined(BROTLI_BUILD_MODERN_COMPILER)
-#define BROTLI_MODERN_COMPILER 1
-#elif (BROTLI_GCC_VERSION > 300) || (BROTLI_ICC_VERSION >= 1600)
-#define BROTLI_MODERN_COMPILER 1
-#else
-#define BROTLI_MODERN_COMPILER 0
-#endif
-
#ifdef BROTLI_BUILD_PORTABLE
-#define BROTLI_ALIGNED_READ 1
+#define BROTLI_ALIGNED_READ (!!1)
#elif defined(BROTLI_TARGET_X86) || defined(BROTLI_TARGET_X64) || \
defined(BROTLI_TARGET_ARMV7) || defined(BROTLI_TARGET_ARMV8)
-#define BROTLI_ALIGNED_READ 0 /* Allow unaligned access on whitelisted CPUs. */
-#else
-#define BROTLI_ALIGNED_READ 1
-#endif
-
-/* Define "PREDICT_TRUE" and "PREDICT_FALSE" macros for capable compilers.
-
-To apply compiler hint, enclose the branching condition into macros, like this:
-
- if (PREDICT_TRUE(zero == 0)) {
- // main execution path
- } else {
- // compiler should place this code outside of main execution path
- }
-
-OR:
-
- if (PREDICT_FALSE(something_rare_or_unexpected_happens)) {
- // compiler should place this code outside of main execution path
- }
-
-*/
-#if BROTLI_MODERN_COMPILER || __has_builtin(__builtin_expect)
-#define PREDICT_TRUE(x) (__builtin_expect(!!(x), 1))
-#define PREDICT_FALSE(x) (__builtin_expect(x, 0))
+/* Allow unaligned read only for whitelisted CPUs. */
+#define BROTLI_ALIGNED_READ (!!0)
#else
-#define PREDICT_FALSE(x) (x)
-#define PREDICT_TRUE(x) (x)
+#define BROTLI_ALIGNED_READ (!!1)
#endif
/* IS_CONSTANT macros returns true for compile-time constant expressions. */
@@ -124,27 +72,22 @@ OR:
#define IS_CONSTANT(x) (!!0)
#endif
-#if BROTLI_MODERN_COMPILER || __has_attribute(always_inline)
-#define ATTRIBUTE_ALWAYS_INLINE __attribute__ ((always_inline))
-#else
-#define ATTRIBUTE_ALWAYS_INLINE
-#endif
-
-#ifndef _MSC_VER
-#if defined(__cplusplus) || !defined(__STRICT_ANSI__) || \
- __STDC_VERSION__ >= 199901L
-#define BROTLI_INLINE inline ATTRIBUTE_ALWAYS_INLINE
+#ifdef BROTLI_ENABLE_LOG
+#define BROTLI_DCHECK(x) assert(x)
+#define BROTLI_LOG(x) printf x
#else
-#define BROTLI_INLINE
+#define BROTLI_DCHECK(x)
+#define BROTLI_LOG(x)
#endif
-#else /* _MSC_VER */
-#define BROTLI_INLINE __forceinline
-#endif /* _MSC_VER */
-#ifdef BROTLI_DECODE_DEBUG
-#define BROTLI_DCHECK(x) assert(x)
+#if defined(BROTLI_DEBUG) || defined(BROTLI_ENABLE_LOG)
+static BROTLI_INLINE void BrotliDump(const char* f, int l, const char* fn) {
+ fprintf(stderr, "%s:%d (%s)\n", f, l, fn);
+ fflush(stderr);
+}
+#define BROTLI_DUMP() BrotliDump(__FILE__, __LINE__, __FUNCTION__)
#else
-#define BROTLI_DCHECK(x)
+#define BROTLI_DUMP() (void)(0)
#endif
#if defined(BROTLI_BUILD_64_BIT)
@@ -183,12 +126,6 @@ OR:
#define BROTLI_LITTLE_ENDIAN 0
#endif
-#if BROTLI_MODERN_COMPILER || __has_attribute(noinline)
-#define BROTLI_NOINLINE __attribute__((noinline))
-#else
-#define BROTLI_NOINLINE
-#endif
-
#define BROTLI_REPEAT(N, X) { \
if ((N & 1) != 0) {X;} \
if ((N & 2) != 0) {X; X;} \
@@ -219,6 +156,4 @@ static BROTLI_INLINE unsigned BrotliRBit(unsigned input) {
X = NULL; \
}
-#define BROTLI_UNUSED(X) (void)(X)
-
#endif /* BROTLI_DEC_PORT_H_ */
diff --git a/thirdparty/brotli/dec/prefix.h b/thirdparty/brotli/dec/prefix.h
index eaae37f0..8c5e1ec0 100644
--- a/thirdparty/brotli/dec/prefix.h
+++ b/thirdparty/brotli/dec/prefix.h
@@ -11,7 +11,8 @@
#ifndef BROTLI_DEC_PREFIX_H_
#define BROTLI_DEC_PREFIX_H_
-#include "./types.h"
+#include "../common/constants.h"
+#include "../common/types.h"
/* Represents the range of values belonging to a prefix code: */
/* [offset, offset + 2^nbits) */
@@ -20,7 +21,8 @@ struct PrefixCodeRange {
uint8_t nbits;
};
-static const struct PrefixCodeRange kBlockLengthPrefixCode[] = {
+static const struct PrefixCodeRange
+ kBlockLengthPrefixCode[BROTLI_NUM_BLOCK_LEN_SYMBOLS] = {
{ 1, 2}, { 5, 2}, { 9, 2}, { 13, 2},
{ 17, 3}, { 25, 3}, { 33, 3}, { 41, 3},
{ 49, 4}, { 65, 4}, { 81, 4}, { 97, 4},
@@ -39,7 +41,7 @@ typedef struct CmdLutElement {
uint16_t copy_len_offset;
} CmdLutElement;
-static const CmdLutElement kCmdLut[704] = {
+static const CmdLutElement kCmdLut[BROTLI_NUM_COMMAND_SYMBOLS] = {
{ 0x00, 0x00, 0, 0x00, 0x0000, 0x0002 },
{ 0x00, 0x00, 0, 0x01, 0x0000, 0x0003 },
{ 0x00, 0x00, 0, 0x02, 0x0000, 0x0004 },
diff --git a/thirdparty/brotli/dec/state.c b/thirdparty/brotli/dec/state.c
index 52c0e6c8..e6ff742b 100644
--- a/thirdparty/brotli/dec/state.c
+++ b/thirdparty/brotli/dec/state.c
@@ -8,8 +8,8 @@
#include <stdlib.h> /* free, malloc */
+#include "../common/types.h"
#include "./huffman.h"
-#include "./types.h"
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
@@ -25,11 +25,11 @@ static void DefaultFreeFunc(void* opaque, void* address) {
free(address);
}
-void BrotliStateInit(BrotliState* s) {
- BrotliStateInitWithCustomAllocators(s, 0, 0, 0);
+void BrotliDecoderStateInit(BrotliDecoderState* s) {
+ BrotliDecoderStateInitWithCustomAllocators(s, 0, 0, 0);
}
-void BrotliStateInitWithCustomAllocators(BrotliState* s,
+void BrotliDecoderStateInitWithCustomAllocators(BrotliDecoderState* s,
brotli_alloc_func alloc_func, brotli_free_func free_func, void* opaque) {
if (!alloc_func) {
s->alloc_func = DefaultAllocFunc;
@@ -76,7 +76,6 @@ void BrotliStateInitWithCustomAllocators(BrotliState* s,
s->distance_hgroup.codes = NULL;
s->distance_hgroup.htrees = NULL;
-
s->custom_dict = NULL;
s->custom_dict_size = 0;
@@ -97,7 +96,7 @@ void BrotliStateInitWithCustomAllocators(BrotliState* s,
s->mtf_upper_bound = 255;
}
-void BrotliStateMetablockBegin(BrotliState* s) {
+void BrotliDecoderStateMetablockBegin(BrotliDecoderState* s) {
s->meta_block_remaining_len = 0;
s->block_length[0] = 1U << 28;
s->block_length[1] = 1U << 28;
@@ -115,7 +114,6 @@ void BrotliStateMetablockBegin(BrotliState* s) {
s->context_modes = NULL;
s->dist_context_map = NULL;
s->context_map_slice = NULL;
- s->literal_htree_index = 0;
s->literal_htree = NULL;
s->dist_context_map_slice = NULL;
s->dist_htree_index = 0;
@@ -129,34 +127,25 @@ void BrotliStateMetablockBegin(BrotliState* s) {
s->distance_hgroup.htrees = NULL;
}
-void BrotliStateCleanupAfterMetablock(BrotliState* s) {
+void BrotliDecoderStateCleanupAfterMetablock(BrotliDecoderState* s) {
BROTLI_FREE(s, s->context_modes);
BROTLI_FREE(s, s->context_map);
BROTLI_FREE(s, s->dist_context_map);
- BrotliHuffmanTreeGroupRelease(s, &s->literal_hgroup);
- BrotliHuffmanTreeGroupRelease(s, &s->insert_copy_hgroup);
- BrotliHuffmanTreeGroupRelease(s, &s->distance_hgroup);
+ BrotliDecoderHuffmanTreeGroupRelease(s, &s->literal_hgroup);
+ BrotliDecoderHuffmanTreeGroupRelease(s, &s->insert_copy_hgroup);
+ BrotliDecoderHuffmanTreeGroupRelease(s, &s->distance_hgroup);
}
-void BrotliStateCleanup(BrotliState* s) {
- BrotliStateCleanupAfterMetablock(s);
+void BrotliDecoderStateCleanup(BrotliDecoderState* s) {
+ BrotliDecoderStateCleanupAfterMetablock(s);
BROTLI_FREE(s, s->ringbuffer);
BROTLI_FREE(s, s->block_type_trees);
}
-int BrotliStateIsStreamStart(const BrotliState* s) {
- return (s->state == BROTLI_STATE_UNINITED &&
- BrotliGetAvailableBits(&s->br) == 0);
-}
-
-int BrotliStateIsStreamEnd(const BrotliState* s) {
- return s->state == BROTLI_STATE_DONE;
-}
-
-void BrotliHuffmanTreeGroupInit(BrotliState* s, HuffmanTreeGroup* group,
- uint32_t alphabet_size, uint32_t ntrees) {
+void BrotliDecoderHuffmanTreeGroupInit(BrotliDecoderState* s,
+ HuffmanTreeGroup* group, uint32_t alphabet_size, uint32_t ntrees) {
/* Pack two allocations into one */
const size_t max_table_size = kMaxHuffmanTableSize[(alphabet_size + 31) >> 5];
const size_t code_size = sizeof(HuffmanCode) * ntrees * max_table_size;
@@ -168,7 +157,8 @@ void BrotliHuffmanTreeGroupInit(BrotliState* s, HuffmanTreeGroup* group,
group->htrees = (HuffmanCode**)(p + code_size);
}
-void BrotliHuffmanTreeGroupRelease(BrotliState* s, HuffmanTreeGroup* group) {
+void BrotliDecoderHuffmanTreeGroupRelease(
+ BrotliDecoderState* s, HuffmanTreeGroup* group) {
BROTLI_FREE(s, group->codes);
group->htrees = NULL;
}
diff --git a/thirdparty/brotli/dec/state.h b/thirdparty/brotli/dec/state.h
index 925fa149..70e76740 100644
--- a/thirdparty/brotli/dec/state.h
+++ b/thirdparty/brotli/dec/state.h
@@ -9,9 +9,11 @@
#ifndef BROTLI_DEC_STATE_H_
#define BROTLI_DEC_STATE_H_
+#include "../common/constants.h"
+#include "../common/types.h"
#include "./bit_reader.h"
#include "./huffman.h"
-#include "./types.h"
+#include "./port.h"
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
@@ -92,7 +94,7 @@ typedef enum {
BROTLI_STATE_READ_BLOCK_LENGTH_SUFFIX
} BrotliRunningReadBlockLengthState;
-struct BrotliStateStruct {
+struct BrotliDecoderStateStruct {
BrotliRunningState state;
/* This counter is reused for several disjoint loops. */
@@ -119,6 +121,8 @@ struct BrotliStateStruct {
int ringbuffer_mask;
int dist_rb_idx;
int dist_rb[4];
+ int error_code;
+ uint32_t sub_loop_counter;
uint8_t* ringbuffer;
uint8_t* ringbuffer_end;
HuffmanCode* htree_command;
@@ -127,8 +131,6 @@ struct BrotliStateStruct {
uint8_t* context_map_slice;
uint8_t* dist_context_map_slice;
- uint32_t sub_loop_counter;
-
/* This ring buffer holds a few past copy distances that will be used by */
/* some special distance codes. */
HuffmanTreeGroup literal_hgroup;
@@ -151,12 +153,10 @@ struct BrotliStateStruct {
uint32_t num_dist_htrees;
uint8_t* dist_context_map;
HuffmanCode* literal_htree;
- uint8_t literal_htree_index;
uint8_t dist_htree_index;
uint32_t repeat_code_len;
uint32_t prev_code_len;
-
int copy_length;
int distance_code;
@@ -174,10 +174,10 @@ struct BrotliStateStruct {
uint16_t* symbol_lists;
/* Storage from symbol_lists. */
uint16_t symbols_lists_array[BROTLI_HUFFMAN_MAX_CODE_LENGTH + 1 +
- BROTLI_HUFFMAN_MAX_CODE_LENGTHS_SIZE];
+ BROTLI_NUM_COMMAND_SYMBOLS];
/* Tails of symbol chains. */
int next_symbol[32];
- uint8_t code_length_code_lengths[18];
+ uint8_t code_length_code_lengths[BROTLI_CODE_LENGTH_CODES];
/* Population counts for the code lengths */
uint16_t code_length_histo[16];
@@ -193,7 +193,7 @@ struct BrotliStateStruct {
/* For InverseMoveToFrontTransform */
uint32_t mtf_upper_bound;
- uint8_t mtf[256];
+ uint8_t mtf[256 + 4];
/* For custom dictionaries */
const uint8_t* custom_dict;
@@ -218,29 +218,26 @@ struct BrotliStateStruct {
uint32_t num_literal_htrees;
uint8_t* context_map;
uint8_t* context_modes;
+
+ uint32_t trivial_literal_contexts[8]; /* 256 bits */
};
-typedef struct BrotliStateStruct BrotliState;
-
-void BrotliStateInit(BrotliState* s);
-void BrotliStateInitWithCustomAllocators(BrotliState* s,
- brotli_alloc_func alloc_func,
- brotli_free_func free_func,
- void* opaque);
-void BrotliStateCleanup(BrotliState* s);
-void BrotliStateMetablockBegin(BrotliState* s);
-void BrotliStateCleanupAfterMetablock(BrotliState* s);
-void BrotliHuffmanTreeGroupInit(BrotliState* s, HuffmanTreeGroup* group,
- uint32_t alphabet_size, uint32_t ntrees);
-void BrotliHuffmanTreeGroupRelease(BrotliState* s, HuffmanTreeGroup* group);
-
-/* Returns 1, if s is in a state where we have not read any input bytes yet,
- and 0 otherwise */
-int BrotliStateIsStreamStart(const BrotliState* s);
-
-/* Returns 1, if s is in a state where we reached the end of the input and
- produced all of the output, and 0 otherwise. */
-int BrotliStateIsStreamEnd(const BrotliState* s);
+typedef struct BrotliDecoderStateStruct BrotliDecoderStateInternal;
+#define BrotliDecoderState BrotliDecoderStateInternal
+
+BROTLI_INTERNAL void BrotliDecoderStateInit(BrotliDecoderState* s);
+BROTLI_INTERNAL void BrotliDecoderStateInitWithCustomAllocators(
+ BrotliDecoderState* s, brotli_alloc_func alloc_func,
+ brotli_free_func free_func, void* opaque);
+BROTLI_INTERNAL void BrotliDecoderStateCleanup(BrotliDecoderState* s);
+BROTLI_INTERNAL void BrotliDecoderStateMetablockBegin(BrotliDecoderState* s);
+BROTLI_INTERNAL void BrotliDecoderStateCleanupAfterMetablock(
+ BrotliDecoderState* s);
+BROTLI_INTERNAL void BrotliDecoderHuffmanTreeGroupInit(
+ BrotliDecoderState* s, HuffmanTreeGroup* group, uint32_t alphabet_size,
+ uint32_t ntrees);
+BROTLI_INTERNAL void BrotliDecoderHuffmanTreeGroupRelease(
+ BrotliDecoderState* s, HuffmanTreeGroup* group);
#if defined(__cplusplus) || defined(c_plusplus)
} /* extern "C" */
diff --git a/thirdparty/brotli/dec/transform.h b/thirdparty/brotli/dec/transform.h
index 8c08f3fc..4e676f10 100644
--- a/thirdparty/brotli/dec/transform.h
+++ b/thirdparty/brotli/dec/transform.h
@@ -9,8 +9,8 @@
#ifndef BROTLI_DEC_TRANSFORM_H_
#define BROTLI_DEC_TRANSFORM_H_
+#include "../common/types.h"
#include "./port.h"
-#include "./types.h"
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
diff --git a/thirdparty/brotli/enc/backward_references.c b/thirdparty/brotli/enc/backward_references.c
new file mode 100644
index 00000000..e877c8de
--- /dev/null
+++ b/thirdparty/brotli/enc/backward_references.c
@@ -0,0 +1,892 @@
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Function to find backward reference copies. */
+
+#include "./backward_references.h"
+
+#include <math.h> /* INFINITY */
+#include <string.h> /* memcpy, memset */
+
+#include "../common/constants.h"
+#include "../common/types.h"
+#include "./command.h"
+#include "./fast_log.h"
+#include "./find_match_length.h"
+#include "./literal_cost.h"
+#include "./memory.h"
+#include "./port.h"
+#include "./prefix.h"
+#include "./quality.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+#ifdef INFINITY
+static const float kInfinity = INFINITY;
+#else
+static const float kInfinity = 3.4028e38f;
+#endif
+
+void BrotliInitZopfliNodes(ZopfliNode* array, size_t length) {
+ ZopfliNode stub;
+ size_t i;
+ stub.length = 1;
+ stub.distance = 0;
+ stub.insert_length = 0;
+ stub.u.cost = kInfinity;
+ for (i = 0; i < length; ++i) array[i] = stub;
+}
+
+static BROTLI_INLINE uint32_t ZopfliNodeCopyLength(const ZopfliNode* self) {
+ return self->length & 0xffffff;
+}
+
+static BROTLI_INLINE uint32_t ZopfliNodeLengthCode(const ZopfliNode* self) {
+ const uint32_t modifier = self->length >> 24;
+ return ZopfliNodeCopyLength(self) + 9u - modifier;
+}
+
+static BROTLI_INLINE uint32_t ZopfliNodeCopyDistance(const ZopfliNode* self) {
+ return self->distance & 0x1ffffff;
+}
+
+static BROTLI_INLINE uint32_t ZopfliNodeDistanceCode(const ZopfliNode* self) {
+ const uint32_t short_code = self->distance >> 25;
+ return short_code == 0 ? ZopfliNodeCopyDistance(self) + 15 : short_code - 1;
+}
+
+static BROTLI_INLINE uint32_t ZopfliNodeCommandLength(const ZopfliNode* self) {
+ return ZopfliNodeCopyLength(self) + self->insert_length;
+}
+
+/* Histogram based cost model for zopflification. */
+typedef struct ZopfliCostModel {
+ /* The insert and copy length symbols. */
+ float cost_cmd_[BROTLI_NUM_COMMAND_SYMBOLS];
+ float cost_dist_[BROTLI_NUM_DISTANCE_SYMBOLS];
+ /* Cumulative costs of literals per position in the stream. */
+ float* literal_costs_;
+ float min_cost_cmd_;
+ size_t num_bytes_;
+} ZopfliCostModel;
+
+static void InitZopfliCostModel(
+ MemoryManager* m, ZopfliCostModel* self, size_t num_bytes) {
+ self->num_bytes_ = num_bytes;
+ self->literal_costs_ = BROTLI_ALLOC(m, float, num_bytes + 2);
+ if (BROTLI_IS_OOM(m)) return;
+}
+
+static void CleanupZopfliCostModel(MemoryManager* m, ZopfliCostModel* self) {
+ BROTLI_FREE(m, self->literal_costs_);
+}
+
+static void SetCost(const uint32_t* histogram, size_t histogram_size,
+ float* cost) {
+ size_t sum = 0;
+ float log2sum;
+ size_t i;
+ for (i = 0; i < histogram_size; i++) {
+ sum += histogram[i];
+ }
+ log2sum = (float)FastLog2(sum);
+ for (i = 0; i < histogram_size; i++) {
+ if (histogram[i] == 0) {
+ cost[i] = log2sum + 2;
+ continue;
+ }
+
+ /* Shannon bits for this symbol. */
+ cost[i] = log2sum - (float)FastLog2(histogram[i]);
+
+ /* Cannot be coded with less than 1 bit */
+ if (cost[i] < 1) cost[i] = 1;
+ }
+}
+
+static void ZopfliCostModelSetFromCommands(ZopfliCostModel* self,
+ size_t position,
+ const uint8_t* ringbuffer,
+ size_t ringbuffer_mask,
+ const Command* commands,
+ size_t num_commands,
+ size_t last_insert_len) {
+ uint32_t histogram_literal[BROTLI_NUM_LITERAL_SYMBOLS];
+ uint32_t histogram_cmd[BROTLI_NUM_COMMAND_SYMBOLS];
+ uint32_t histogram_dist[BROTLI_NUM_DISTANCE_SYMBOLS];
+ float cost_literal[BROTLI_NUM_LITERAL_SYMBOLS];
+ size_t pos = position - last_insert_len;
+ float min_cost_cmd = kInfinity;
+ size_t i;
+ float* cost_cmd = self->cost_cmd_;
+
+ memset(histogram_literal, 0, sizeof(histogram_literal));
+ memset(histogram_cmd, 0, sizeof(histogram_cmd));
+ memset(histogram_dist, 0, sizeof(histogram_dist));
+
+ for (i = 0; i < num_commands; i++) {
+ size_t inslength = commands[i].insert_len_;
+ size_t copylength = CommandCopyLen(&commands[i]);
+ size_t distcode = commands[i].dist_prefix_;
+ size_t cmdcode = commands[i].cmd_prefix_;
+ size_t j;
+
+ histogram_cmd[cmdcode]++;
+ if (cmdcode >= 128) histogram_dist[distcode]++;
+
+ for (j = 0; j < inslength; j++) {
+ histogram_literal[ringbuffer[(pos + j) & ringbuffer_mask]]++;
+ }
+
+ pos += inslength + copylength;
+ }
+
+ SetCost(histogram_literal, BROTLI_NUM_LITERAL_SYMBOLS, cost_literal);
+ SetCost(histogram_cmd, BROTLI_NUM_COMMAND_SYMBOLS, cost_cmd);
+ SetCost(histogram_dist, BROTLI_NUM_DISTANCE_SYMBOLS, self->cost_dist_);
+
+ for (i = 0; i < BROTLI_NUM_COMMAND_SYMBOLS; ++i) {
+ min_cost_cmd = BROTLI_MIN(float, min_cost_cmd, cost_cmd[i]);
+ }
+ self->min_cost_cmd_ = min_cost_cmd;
+
+ {
+ float* literal_costs = self->literal_costs_;
+ size_t num_bytes = self->num_bytes_;
+ literal_costs[0] = 0.0;
+ for (i = 0; i < num_bytes; ++i) {
+ literal_costs[i + 1] = literal_costs[i] +
+ cost_literal[ringbuffer[(position + i) & ringbuffer_mask]];
+ }
+ }
+}
+
+static void ZopfliCostModelSetFromLiteralCosts(ZopfliCostModel* self,
+ size_t position,
+ const uint8_t* ringbuffer,
+ size_t ringbuffer_mask) {
+ float* literal_costs = self->literal_costs_;
+ float* cost_dist = self->cost_dist_;
+ float* cost_cmd = self->cost_cmd_;
+ size_t num_bytes = self->num_bytes_;
+ size_t i;
+ BrotliEstimateBitCostsForLiterals(position, num_bytes, ringbuffer_mask,
+ ringbuffer, &literal_costs[1]);
+ literal_costs[0] = 0.0;
+ for (i = 0; i < num_bytes; ++i) {
+ literal_costs[i + 1] += literal_costs[i];
+ }
+ for (i = 0; i < BROTLI_NUM_COMMAND_SYMBOLS; ++i) {
+ cost_cmd[i] = (float)FastLog2(11 + (uint32_t)i);
+ }
+ for (i = 0; i < BROTLI_NUM_DISTANCE_SYMBOLS; ++i) {
+ cost_dist[i] = (float)FastLog2(20 + (uint32_t)i);
+ }
+ self->min_cost_cmd_ = (float)FastLog2(11);
+}
+
+static BROTLI_INLINE float ZopfliCostModelGetCommandCost(
+ const ZopfliCostModel* self, uint16_t cmdcode) {
+ return self->cost_cmd_[cmdcode];
+}
+
+static BROTLI_INLINE float ZopfliCostModelGetDistanceCost(
+ const ZopfliCostModel* self, size_t distcode) {
+ return self->cost_dist_[distcode];
+}
+
+static BROTLI_INLINE float ZopfliCostModelGetLiteralCosts(
+ const ZopfliCostModel* self, size_t from, size_t to) {
+ return self->literal_costs_[to] - self->literal_costs_[from];
+}
+
+static BROTLI_INLINE float ZopfliCostModelGetMinCostCmd(
+ const ZopfliCostModel* self) {
+ return self->min_cost_cmd_;
+}
+
+static BROTLI_INLINE size_t ComputeDistanceCode(size_t distance,
+ size_t max_distance,
+ const int* dist_cache) {
+ if (distance <= max_distance) {
+ size_t distance_plus_3 = distance + 3;
+ size_t offset0 = distance_plus_3 - (size_t)dist_cache[0];
+ size_t offset1 = distance_plus_3 - (size_t)dist_cache[1];
+ if (distance == (size_t)dist_cache[0]) {
+ return 0;
+ } else if (distance == (size_t)dist_cache[1]) {
+ return 1;
+ } else if (offset0 < 7) {
+ return (0x9750468 >> (4 * offset0)) & 0xF;
+ } else if (offset1 < 7) {
+ return (0xFDB1ACE >> (4 * offset1)) & 0xF;
+ } else if (distance == (size_t)dist_cache[2]) {
+ return 2;
+ } else if (distance == (size_t)dist_cache[3]) {
+ return 3;
+ }
+ }
+ return distance + 15;
+}
+
+/* REQUIRES: len >= 2, start_pos <= pos */
+/* REQUIRES: cost < kInfinity, nodes[start_pos].cost < kInfinity */
+/* Maintains the "ZopfliNode array invariant". */
+static BROTLI_INLINE void UpdateZopfliNode(ZopfliNode* nodes, size_t pos,
+ size_t start_pos, size_t len, size_t len_code, size_t dist,
+ size_t short_code, float cost) {
+ ZopfliNode* next = &nodes[pos + len];
+ next->length = (uint32_t)(len | ((len + 9u - len_code) << 24));
+ next->distance = (uint32_t)(dist | (short_code << 25));
+ next->insert_length = (uint32_t)(pos - start_pos);
+ next->u.cost = cost;
+}
+
+typedef struct PosData {
+ size_t pos;
+ int distance_cache[4];
+ float costdiff;
+ float cost;
+} PosData;
+
+/* Maintains the smallest 8 cost difference together with their positions */
+typedef struct StartPosQueue {
+ PosData q_[8];
+ size_t idx_;
+} StartPosQueue;
+
+static BROTLI_INLINE void InitStartPosQueue(StartPosQueue* self) {
+ self->idx_ = 0;
+}
+
+static size_t StartPosQueueSize(const StartPosQueue* self) {
+ return BROTLI_MIN(size_t, self->idx_, 8);
+}
+
+static void StartPosQueuePush(StartPosQueue* self, const PosData* posdata) {
+ size_t offset = ~(self->idx_++) & 7;
+ size_t len = StartPosQueueSize(self);
+ size_t i;
+ PosData* q = self->q_;
+ q[offset] = *posdata;
+ /* Restore the sorted order. In the list of |len| items at most |len - 1|
+ adjacent element comparisons / swaps are required. */
+ for (i = 1; i < len; ++i) {
+ if (q[offset & 7].costdiff > q[(offset + 1) & 7].costdiff) {
+ BROTLI_SWAP(PosData, q, offset & 7, (offset + 1) & 7);
+ }
+ ++offset;
+ }
+}
+
+static const PosData* StartPosQueueAt(const StartPosQueue* self, size_t k) {
+ return &self->q_[(k - self->idx_) & 7];
+}
+
+/* Returns the minimum possible copy length that can improve the cost of any */
+/* future position. */
+static size_t ComputeMinimumCopyLength(const float start_cost,
+ const ZopfliNode* nodes,
+ const size_t num_bytes,
+ const size_t pos) {
+ /* Compute the minimum possible cost of reaching any future position. */
+ float min_cost = start_cost;
+ size_t len = 2;
+ size_t next_len_bucket = 4;
+ size_t next_len_offset = 10;
+ while (pos + len <= num_bytes && nodes[pos + len].u.cost <= min_cost) {
+ /* We already reached (pos + len) with no more cost than the minimum
+ possible cost of reaching anything from this pos, so there is no point in
+ looking for lengths <= len. */
+ ++len;
+ if (len == next_len_offset) {
+ /* We reached the next copy length code bucket, so we add one more
+ extra bit to the minimum cost. */
+ min_cost += 1.0f;
+ next_len_offset += next_len_bucket;
+ next_len_bucket *= 2;
+ }
+ }
+ return len;
+}
+
+/* REQUIRES: nodes[pos].cost < kInfinity
+ REQUIRES: nodes[0..pos] satisfies that "ZopfliNode array invariant". */
+static uint32_t ComputeDistanceShortcut(const size_t block_start,
+ const size_t pos,
+ const size_t max_backward,
+ const ZopfliNode* nodes) {
+ const size_t clen = ZopfliNodeCopyLength(&nodes[pos]);
+ const size_t ilen = nodes[pos].insert_length;
+ const size_t dist = ZopfliNodeCopyDistance(&nodes[pos]);
+ /* Since |block_start + pos| is the end position of the command, the copy part
+ starts from |block_start + pos - clen|. Distances that are greater than
+ this or greater than |max_backward| are static dictionary references, and
+ do not update the last distances. Also distance code 0 (last distance)
+ does not update the last distances. */
+ if (pos == 0) {
+ return 0;
+ } else if (dist + clen <= block_start + pos &&
+ dist <= max_backward &&
+ ZopfliNodeDistanceCode(&nodes[pos]) > 0) {
+ return (uint32_t)pos;
+ } else {
+ return nodes[pos - clen - ilen].u.shortcut;
+ }
+}
+
+/* Fills in dist_cache[0..3] with the last four distances (as defined by
+ Section 4. of the Spec) that would be used at (block_start + pos) if we
+ used the shortest path of commands from block_start, computed from
+ nodes[0..pos]. The last four distances at block_start are in
+ starting_dist_cach[0..3].
+ REQUIRES: nodes[pos].cost < kInfinity
+ REQUIRES: nodes[0..pos] satisfies that "ZopfliNode array invariant". */
+static void ComputeDistanceCache(const size_t pos,
+ const int* starting_dist_cache,
+ const ZopfliNode* nodes,
+ int* dist_cache) {
+ int idx = 0;
+ size_t p = nodes[pos].u.shortcut;
+ while (idx < 4 && p > 0) {
+ const size_t ilen = nodes[p].insert_length;
+ const size_t clen = ZopfliNodeCopyLength(&nodes[p]);
+ const size_t dist = ZopfliNodeCopyDistance(&nodes[p]);
+ dist_cache[idx++] = (int)dist;
+ /* Because of prerequisite, p >= clen + ilen >= 2. */
+ p = nodes[p - clen - ilen].u.shortcut;
+ }
+ for (; idx < 4; ++idx) {
+ dist_cache[idx] = *starting_dist_cache++;
+ }
+}
+
+static void UpdateNodes(const size_t num_bytes,
+ const size_t block_start,
+ const size_t pos,
+ const uint8_t* ringbuffer,
+ const size_t ringbuffer_mask,
+ const BrotliEncoderParams* params,
+ const size_t max_backward_limit,
+ const int* starting_dist_cache,
+ const size_t num_matches,
+ const BackwardMatch* matches,
+ const ZopfliCostModel* model,
+ StartPosQueue* queue,
+ ZopfliNode* nodes) {
+ const size_t cur_ix = block_start + pos;
+ const size_t cur_ix_masked = cur_ix & ringbuffer_mask;
+ const size_t max_distance = BROTLI_MIN(size_t, cur_ix, max_backward_limit);
+ const size_t max_len = num_bytes - pos;
+ const size_t max_zopfli_len = MaxZopfliLen(params);
+ const size_t max_iters = MaxZopfliCandidates(params);
+ size_t min_len;
+ size_t k;
+
+ {
+ /* Save cost, because ComputeDistanceCache invalidates it. */
+ float node_cost = nodes[pos].u.cost;
+ nodes[pos].u.shortcut = ComputeDistanceShortcut(
+ block_start, pos, max_backward_limit, nodes);
+ if (node_cost <= ZopfliCostModelGetLiteralCosts(model, 0, pos)) {
+ PosData posdata;
+ posdata.pos = pos;
+ posdata.cost = node_cost;
+ posdata.costdiff = node_cost -
+ ZopfliCostModelGetLiteralCosts(model, 0, pos);
+ ComputeDistanceCache(
+ pos, starting_dist_cache, nodes, posdata.distance_cache);
+ StartPosQueuePush(queue, &posdata);
+ }
+ }
+
+ {
+ const PosData* posdata = StartPosQueueAt(queue, 0);
+ float min_cost = (posdata->cost + ZopfliCostModelGetMinCostCmd(model) +
+ ZopfliCostModelGetLiteralCosts(model, posdata->pos, pos));
+ min_len = ComputeMinimumCopyLength(min_cost, nodes, num_bytes, pos);
+ }
+
+ /* Go over the command starting positions in order of increasing cost
+ difference. */
+ for (k = 0; k < max_iters && k < StartPosQueueSize(queue); ++k) {
+ const PosData* posdata = StartPosQueueAt(queue, k);
+ const size_t start = posdata->pos;
+ const uint16_t inscode = GetInsertLengthCode(pos - start);
+ const float start_costdiff = posdata->costdiff;
+ const float base_cost = start_costdiff + (float)GetInsertExtra(inscode) +
+ ZopfliCostModelGetLiteralCosts(model, 0, pos);
+
+ /* Look for last distance matches using the distance cache from this
+ starting position. */
+ size_t best_len = min_len - 1;
+ size_t j = 0;
+ for (; j < BROTLI_NUM_DISTANCE_SHORT_CODES && best_len < max_len; ++j) {
+ const size_t idx = kDistanceCacheIndex[j];
+ const size_t backward =
+ (size_t)(posdata->distance_cache[idx] + kDistanceCacheOffset[j]);
+ size_t prev_ix = cur_ix - backward;
+ if (prev_ix >= cur_ix) {
+ continue;
+ }
+ if (PREDICT_FALSE(backward > max_distance)) {
+ continue;
+ }
+ prev_ix &= ringbuffer_mask;
+
+ if (cur_ix_masked + best_len > ringbuffer_mask ||
+ prev_ix + best_len > ringbuffer_mask ||
+ ringbuffer[cur_ix_masked + best_len] !=
+ ringbuffer[prev_ix + best_len]) {
+ continue;
+ }
+ {
+ const size_t len =
+ FindMatchLengthWithLimit(&ringbuffer[prev_ix],
+ &ringbuffer[cur_ix_masked],
+ max_len);
+ const float dist_cost = base_cost +
+ ZopfliCostModelGetDistanceCost(model, j);
+ size_t l;
+ for (l = best_len + 1; l <= len; ++l) {
+ const uint16_t copycode = GetCopyLengthCode(l);
+ const uint16_t cmdcode =
+ CombineLengthCodes(inscode, copycode, j == 0);
+ const float cost = (cmdcode < 128 ? base_cost : dist_cost) +
+ (float)GetCopyExtra(copycode) +
+ ZopfliCostModelGetCommandCost(model, cmdcode);
+ if (cost < nodes[pos + l].u.cost) {
+ UpdateZopfliNode(nodes, pos, start, l, l, backward, j + 1, cost);
+ }
+ best_len = l;
+ }
+ }
+ }
+
+ /* At higher iterations look only for new last distance matches, since
+ looking only for new command start positions with the same distances
+ does not help much. */
+ if (k >= 2) continue;
+
+ {
+ /* Loop through all possible copy lengths at this position. */
+ size_t len = min_len;
+ for (j = 0; j < num_matches; ++j) {
+ BackwardMatch match = matches[j];
+ size_t dist = match.distance;
+ BROTLI_BOOL is_dictionary_match = TO_BROTLI_BOOL(dist > max_distance);
+ /* We already tried all possible last distance matches, so we can use
+ normal distance code here. */
+ size_t dist_code = dist + 15;
+ uint16_t dist_symbol;
+ uint32_t distextra;
+ uint32_t distnumextra;
+ float dist_cost;
+ size_t max_match_len;
+ PrefixEncodeCopyDistance(dist_code, 0, 0, &dist_symbol, &distextra);
+ distnumextra = distextra >> 24;
+ dist_cost = base_cost + (float)distnumextra +
+ ZopfliCostModelGetDistanceCost(model, dist_symbol);
+
+ /* Try all copy lengths up until the maximum copy length corresponding
+ to this distance. If the distance refers to the static dictionary, or
+ the maximum length is long enough, try only one maximum length. */
+ max_match_len = BackwardMatchLength(&match);
+ if (len < max_match_len &&
+ (is_dictionary_match || max_match_len > max_zopfli_len)) {
+ len = max_match_len;
+ }
+ for (; len <= max_match_len; ++len) {
+ const size_t len_code =
+ is_dictionary_match ? BackwardMatchLengthCode(&match) : len;
+ const uint16_t copycode = GetCopyLengthCode(len_code);
+ const uint16_t cmdcode = CombineLengthCodes(inscode, copycode, 0);
+ const float cost = dist_cost + (float)GetCopyExtra(copycode) +
+ ZopfliCostModelGetCommandCost(model, cmdcode);
+ if (cost < nodes[pos + len].u.cost) {
+ UpdateZopfliNode(nodes, pos, start, len, len_code, dist, 0, cost);
+ }
+ }
+ }
+ }
+ }
+}
+
+static size_t ComputeShortestPathFromNodes(size_t num_bytes,
+ ZopfliNode* nodes) {
+ size_t index = num_bytes;
+ size_t num_commands = 0;
+ while (nodes[index].insert_length == 0 && nodes[index].length == 1) --index;
+ nodes[index].u.next = BROTLI_UINT32_MAX;
+ while (index != 0) {
+ size_t len = ZopfliNodeCommandLength(&nodes[index]);
+ index -= len;
+ nodes[index].u.next = (uint32_t)len;
+ num_commands++;
+ }
+ return num_commands;
+}
+
+void BrotliZopfliCreateCommands(const size_t num_bytes,
+ const size_t block_start,
+ const size_t max_backward_limit,
+ const ZopfliNode* nodes,
+ int* dist_cache,
+ size_t* last_insert_len,
+ Command* commands,
+ size_t* num_literals) {
+ size_t pos = 0;
+ uint32_t offset = nodes[0].u.next;
+ size_t i;
+ for (i = 0; offset != BROTLI_UINT32_MAX; i++) {
+ const ZopfliNode* next = &nodes[pos + offset];
+ size_t copy_length = ZopfliNodeCopyLength(next);
+ size_t insert_length = next->insert_length;
+ pos += insert_length;
+ offset = next->u.next;
+ if (i == 0) {
+ insert_length += *last_insert_len;
+ *last_insert_len = 0;
+ }
+ {
+ size_t distance = ZopfliNodeCopyDistance(next);
+ size_t len_code = ZopfliNodeLengthCode(next);
+ size_t max_distance =
+ BROTLI_MIN(size_t, block_start + pos, max_backward_limit);
+ BROTLI_BOOL is_dictionary = TO_BROTLI_BOOL(distance > max_distance);
+ size_t dist_code = ZopfliNodeDistanceCode(next);
+
+ InitCommand(
+ &commands[i], insert_length, copy_length, len_code, dist_code);
+
+ if (!is_dictionary && dist_code > 0) {
+ dist_cache[3] = dist_cache[2];
+ dist_cache[2] = dist_cache[1];
+ dist_cache[1] = dist_cache[0];
+ dist_cache[0] = (int)distance;
+ }
+ }
+
+ *num_literals += insert_length;
+ pos += copy_length;
+ }
+ *last_insert_len += num_bytes - pos;
+}
+
+static size_t ZopfliIterate(size_t num_bytes,
+ size_t position,
+ const uint8_t* ringbuffer,
+ size_t ringbuffer_mask,
+ const BrotliEncoderParams* params,
+ const size_t max_backward_limit,
+ const int* dist_cache,
+ const ZopfliCostModel* model,
+ const uint32_t* num_matches,
+ const BackwardMatch* matches,
+ ZopfliNode* nodes) {
+ const size_t max_zopfli_len = MaxZopfliLen(params);
+ StartPosQueue queue;
+ size_t cur_match_pos = 0;
+ size_t i;
+ nodes[0].length = 0;
+ nodes[0].u.cost = 0;
+ InitStartPosQueue(&queue);
+ for (i = 0; i + 3 < num_bytes; i++) {
+ UpdateNodes(num_bytes, position, i, ringbuffer, ringbuffer_mask,
+ params, max_backward_limit, dist_cache, num_matches[i],
+ &matches[cur_match_pos], model, &queue, nodes);
+ cur_match_pos += num_matches[i];
+ /* The zopflification can be too slow in case of very long lengths, so in
+ such case skip it all, it does not cost a lot of compression ratio. */
+ if (num_matches[i] == 1 &&
+ BackwardMatchLength(&matches[cur_match_pos - 1]) > max_zopfli_len) {
+ i += BackwardMatchLength(&matches[cur_match_pos - 1]) - 1;
+ InitStartPosQueue(&queue);
+ }
+ }
+ return ComputeShortestPathFromNodes(num_bytes, nodes);
+}
+
+
+size_t BrotliZopfliComputeShortestPath(MemoryManager* m,
+ size_t num_bytes,
+ size_t position,
+ const uint8_t* ringbuffer,
+ size_t ringbuffer_mask,
+ const BrotliEncoderParams* params,
+ const size_t max_backward_limit,
+ const int* dist_cache,
+ H10* hasher,
+ ZopfliNode* nodes) {
+ const size_t max_zopfli_len = MaxZopfliLen(params);
+ ZopfliCostModel model;
+ StartPosQueue queue;
+ BackwardMatch matches[MAX_NUM_MATCHES_H10];
+ const size_t store_end = num_bytes >= StoreLookaheadH10() ?
+ position + num_bytes - StoreLookaheadH10() + 1 : position;
+ size_t i;
+ nodes[0].length = 0;
+ nodes[0].u.cost = 0;
+ InitZopfliCostModel(m, &model, num_bytes);
+ if (BROTLI_IS_OOM(m)) return 0;
+ ZopfliCostModelSetFromLiteralCosts(
+ &model, position, ringbuffer, ringbuffer_mask);
+ InitStartPosQueue(&queue);
+ for (i = 0; i + HashTypeLengthH10() - 1 < num_bytes; i++) {
+ const size_t pos = position + i;
+ const size_t max_distance = BROTLI_MIN(size_t, pos, max_backward_limit);
+ size_t num_matches = FindAllMatchesH10(hasher, ringbuffer, ringbuffer_mask,
+ pos, num_bytes - i, max_distance, params, matches);
+ if (num_matches > 0 &&
+ BackwardMatchLength(&matches[num_matches - 1]) > max_zopfli_len) {
+ matches[0] = matches[num_matches - 1];
+ num_matches = 1;
+ }
+ UpdateNodes(num_bytes, position, i, ringbuffer, ringbuffer_mask,
+ params, max_backward_limit, dist_cache, num_matches, matches,
+ &model, &queue, nodes);
+ if (num_matches == 1 && BackwardMatchLength(&matches[0]) > max_zopfli_len) {
+ /* Add the tail of the copy to the hasher. */
+ StoreRangeH10(hasher, ringbuffer, ringbuffer_mask, pos + 1, BROTLI_MIN(
+ size_t, pos + BackwardMatchLength(&matches[0]), store_end));
+ i += BackwardMatchLength(&matches[0]) - 1;
+ InitStartPosQueue(&queue);
+ }
+ }
+ CleanupZopfliCostModel(m, &model);
+ return ComputeShortestPathFromNodes(num_bytes, nodes);
+}
+
+#define EXPAND_CAT(a, b) CAT(a, b)
+#define CAT(a, b) a ## b
+#define FN(X) EXPAND_CAT(X, HASHER())
+
+#define HASHER() H2
+/* NOLINTNEXTLINE(build/include) */
+#include "./backward_references_inc.h"
+#undef HASHER
+
+#define HASHER() H3
+/* NOLINTNEXTLINE(build/include) */
+#include "./backward_references_inc.h"
+#undef HASHER
+
+#define HASHER() H4
+/* NOLINTNEXTLINE(build/include) */
+#include "./backward_references_inc.h"
+#undef HASHER
+
+#define HASHER() H5
+/* NOLINTNEXTLINE(build/include) */
+#include "./backward_references_inc.h"
+#undef HASHER
+
+#define HASHER() H6
+/* NOLINTNEXTLINE(build/include) */
+#include "./backward_references_inc.h"
+#undef HASHER
+
+#define HASHER() H7
+/* NOLINTNEXTLINE(build/include) */
+#include "./backward_references_inc.h"
+#undef HASHER
+
+#define HASHER() H8
+/* NOLINTNEXTLINE(build/include) */
+#include "./backward_references_inc.h"
+#undef HASHER
+
+#define HASHER() H9
+/* NOLINTNEXTLINE(build/include) */
+#include "./backward_references_inc.h"
+#undef HASHER
+
+#define HASHER() H40
+/* NOLINTNEXTLINE(build/include) */
+#include "./backward_references_inc.h"
+#undef HASHER
+
+#define HASHER() H41
+/* NOLINTNEXTLINE(build/include) */
+#include "./backward_references_inc.h"
+#undef HASHER
+
+#define HASHER() H42
+/* NOLINTNEXTLINE(build/include) */
+#include "./backward_references_inc.h"
+#undef HASHER
+
+#undef FN
+#undef CAT
+#undef EXPAND_CAT
+
+static BROTLI_NOINLINE void CreateZopfliBackwardReferences(
+ MemoryManager* m, size_t num_bytes, size_t position, BROTLI_BOOL is_last,
+ const uint8_t* ringbuffer, size_t ringbuffer_mask,
+ const BrotliEncoderParams* params, H10* hasher, int* dist_cache,
+ size_t* last_insert_len, Command* commands, size_t* num_commands,
+ size_t* num_literals) {
+ const size_t max_backward_limit = MaxBackwardLimit(params->lgwin);
+ ZopfliNode* nodes;
+ InitH10(m, hasher, ringbuffer, params, position, num_bytes, is_last);
+ if (BROTLI_IS_OOM(m)) return;
+ StitchToPreviousBlockH10(hasher, num_bytes, position,
+ ringbuffer, ringbuffer_mask);
+ nodes = BROTLI_ALLOC(m, ZopfliNode, num_bytes + 1);
+ if (BROTLI_IS_OOM(m)) return;
+ BrotliInitZopfliNodes(nodes, num_bytes + 1);
+ *num_commands += BrotliZopfliComputeShortestPath(m, num_bytes, position,
+ ringbuffer, ringbuffer_mask, params, max_backward_limit,
+ dist_cache, hasher, nodes);
+ if (BROTLI_IS_OOM(m)) return;
+ BrotliZopfliCreateCommands(num_bytes, position, max_backward_limit, nodes,
+ dist_cache, last_insert_len, commands, num_literals);
+ BROTLI_FREE(m, nodes);
+}
+
+static BROTLI_NOINLINE void CreateHqZopfliBackwardReferences(
+ MemoryManager* m, size_t num_bytes, size_t position, BROTLI_BOOL is_last,
+ const uint8_t* ringbuffer, size_t ringbuffer_mask,
+ const BrotliEncoderParams* params, H10* hasher, int* dist_cache,
+ size_t* last_insert_len, Command* commands, size_t* num_commands,
+ size_t* num_literals) {
+ const size_t max_backward_limit = MaxBackwardLimit(params->lgwin);
+ uint32_t* num_matches = BROTLI_ALLOC(m, uint32_t, num_bytes);
+ size_t matches_size = 4 * num_bytes;
+ const size_t store_end = num_bytes >= StoreLookaheadH10() ?
+ position + num_bytes - StoreLookaheadH10() + 1 : position;
+ size_t cur_match_pos = 0;
+ size_t i;
+ size_t orig_num_literals;
+ size_t orig_last_insert_len;
+ int orig_dist_cache[4];
+ size_t orig_num_commands;
+ ZopfliCostModel model;
+ ZopfliNode* nodes;
+ BackwardMatch* matches = BROTLI_ALLOC(m, BackwardMatch, matches_size);
+ if (BROTLI_IS_OOM(m)) return;
+ InitH10(m, hasher, ringbuffer, params, position, num_bytes, is_last);
+ if (BROTLI_IS_OOM(m)) return;
+ StitchToPreviousBlockH10(hasher, num_bytes, position,
+ ringbuffer, ringbuffer_mask);
+ for (i = 0; i + HashTypeLengthH10() - 1 < num_bytes; ++i) {
+ const size_t pos = position + i;
+ size_t max_distance = BROTLI_MIN(size_t, pos, max_backward_limit);
+ size_t max_length = num_bytes - i;
+ size_t num_found_matches;
+ size_t cur_match_end;
+ size_t j;
+ /* Ensure that we have enough free slots. */
+ BROTLI_ENSURE_CAPACITY(m, BackwardMatch, matches, matches_size,
+ cur_match_pos + MAX_NUM_MATCHES_H10);
+ if (BROTLI_IS_OOM(m)) return;
+ num_found_matches = FindAllMatchesH10(hasher, ringbuffer, ringbuffer_mask,
+ pos, max_length, max_distance, params, &matches[cur_match_pos]);
+ cur_match_end = cur_match_pos + num_found_matches;
+ for (j = cur_match_pos; j + 1 < cur_match_end; ++j) {
+ assert(BackwardMatchLength(&matches[j]) <
+ BackwardMatchLength(&matches[j + 1]));
+ assert(matches[j].distance > max_distance ||
+ matches[j].distance <= matches[j + 1].distance);
+ }
+ num_matches[i] = (uint32_t)num_found_matches;
+ if (num_found_matches > 0) {
+ const size_t match_len = BackwardMatchLength(&matches[cur_match_end - 1]);
+ if (match_len > MAX_ZOPFLI_LEN_QUALITY_11) {
+ const size_t skip = match_len - 1;
+ matches[cur_match_pos++] = matches[cur_match_end - 1];
+ num_matches[i] = 1;
+ /* Add the tail of the copy to the hasher. */
+ StoreRangeH10(hasher, ringbuffer, ringbuffer_mask, pos + 1,
+ BROTLI_MIN(size_t, pos + match_len, store_end));
+ memset(&num_matches[i + 1], 0, skip * sizeof(num_matches[0]));
+ i += skip;
+ } else {
+ cur_match_pos = cur_match_end;
+ }
+ }
+ }
+ orig_num_literals = *num_literals;
+ orig_last_insert_len = *last_insert_len;
+ memcpy(orig_dist_cache, dist_cache, 4 * sizeof(dist_cache[0]));
+ orig_num_commands = *num_commands;
+ nodes = BROTLI_ALLOC(m, ZopfliNode, num_bytes + 1);
+ if (BROTLI_IS_OOM(m)) return;
+ InitZopfliCostModel(m, &model, num_bytes);
+ if (BROTLI_IS_OOM(m)) return;
+ for (i = 0; i < 2; i++) {
+ BrotliInitZopfliNodes(nodes, num_bytes + 1);
+ if (i == 0) {
+ ZopfliCostModelSetFromLiteralCosts(
+ &model, position, ringbuffer, ringbuffer_mask);
+ } else {
+ ZopfliCostModelSetFromCommands(&model, position, ringbuffer,
+ ringbuffer_mask, commands, *num_commands - orig_num_commands,
+ orig_last_insert_len);
+ }
+ *num_commands = orig_num_commands;
+ *num_literals = orig_num_literals;
+ *last_insert_len = orig_last_insert_len;
+ memcpy(dist_cache, orig_dist_cache, 4 * sizeof(dist_cache[0]));
+ *num_commands += ZopfliIterate(num_bytes, position, ringbuffer,
+ ringbuffer_mask, params, max_backward_limit, dist_cache,
+ &model, num_matches, matches, nodes);
+ BrotliZopfliCreateCommands(num_bytes, position, max_backward_limit,
+ nodes, dist_cache, last_insert_len, commands, num_literals);
+ }
+ CleanupZopfliCostModel(m, &model);
+ BROTLI_FREE(m, nodes);
+ BROTLI_FREE(m, matches);
+ BROTLI_FREE(m, num_matches);
+}
+
+void BrotliCreateBackwardReferences(MemoryManager* m,
+ size_t num_bytes,
+ size_t position,
+ BROTLI_BOOL is_last,
+ const uint8_t* ringbuffer,
+ size_t ringbuffer_mask,
+ const BrotliEncoderParams* params,
+ Hashers* hashers,
+ int* dist_cache,
+ size_t* last_insert_len,
+ Command* commands,
+ size_t* num_commands,
+ size_t* num_literals) {
+ if (params->quality == ZOPFLIFICATION_QUALITY) {
+ CreateZopfliBackwardReferences(
+ m, num_bytes, position, is_last, ringbuffer, ringbuffer_mask,
+ params, hashers->h10, dist_cache,
+ last_insert_len, commands, num_commands, num_literals);
+ return;
+ } else if (params->quality == HQ_ZOPFLIFICATION_QUALITY) {
+ CreateHqZopfliBackwardReferences(
+ m, num_bytes, position, is_last, ringbuffer, ringbuffer_mask,
+ params, hashers->h10, dist_cache,
+ last_insert_len, commands, num_commands, num_literals);
+ return;
+ }
+
+ switch (ChooseHasher(params)) {
+#define _CASE(N) \
+ case N: \
+ CreateBackwardReferencesH ## N(m, num_bytes, position, is_last, \
+ ringbuffer, ringbuffer_mask, params, hashers->h ## N, dist_cache, \
+ last_insert_len, commands, num_commands, num_literals); \
+ break;
+ FOR_GENERIC_HASHERS(_CASE)
+#undef _CASE
+ default:
+ break;
+ }
+ if (BROTLI_IS_OOM(m)) return;
+}
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/backward_references.cc b/thirdparty/brotli/enc/backward_references.cc
deleted file mode 100644
index 539c1e76..00000000
--- a/thirdparty/brotli/enc/backward_references.cc
+++ /dev/null
@@ -1,858 +0,0 @@
-/* Copyright 2013 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-// Function to find backward reference copies.
-
-#include "./backward_references.h"
-
-#include <algorithm>
-#include <limits>
-#include <vector>
-
-#include "./command.h"
-#include "./fast_log.h"
-#include "./literal_cost.h"
-
-namespace brotli {
-
-// The maximum length for which the zopflification uses distinct distances.
-static const uint16_t kMaxZopfliLen = 325;
-
-// Histogram based cost model for zopflification.
-class ZopfliCostModel {
- public:
- ZopfliCostModel(void) : min_cost_cmd_(kInfinity) {}
-
- void SetFromCommands(size_t num_bytes,
- size_t position,
- const uint8_t* ringbuffer,
- size_t ringbuffer_mask,
- const Command* commands,
- size_t num_commands,
- size_t last_insert_len) {
- std::vector<uint32_t> histogram_literal(256, 0);
- std::vector<uint32_t> histogram_cmd(kNumCommandPrefixes, 0);
- std::vector<uint32_t> histogram_dist(kNumDistancePrefixes, 0);
-
- size_t pos = position - last_insert_len;
- for (size_t i = 0; i < num_commands; i++) {
- size_t inslength = commands[i].insert_len_;
- size_t copylength = commands[i].copy_len();
- size_t distcode = commands[i].dist_prefix_;
- size_t cmdcode = commands[i].cmd_prefix_;
-
- histogram_cmd[cmdcode]++;
- if (cmdcode >= 128) histogram_dist[distcode]++;
-
- for (size_t j = 0; j < inslength; j++) {
- histogram_literal[ringbuffer[(pos + j) & ringbuffer_mask]]++;
- }
-
- pos += inslength + copylength;
- }
-
- std::vector<float> cost_literal;
- Set(histogram_literal, &cost_literal);
- Set(histogram_cmd, &cost_cmd_);
- Set(histogram_dist, &cost_dist_);
-
- for (uint32_t i = 0; i < kNumCommandPrefixes; ++i) {
- min_cost_cmd_ = std::min(min_cost_cmd_, cost_cmd_[i]);
- }
-
- literal_costs_.resize(num_bytes + 1);
- literal_costs_[0] = 0.0;
- for (size_t i = 0; i < num_bytes; ++i) {
- literal_costs_[i + 1] = literal_costs_[i] +
- cost_literal[ringbuffer[(position + i) & ringbuffer_mask]];
- }
- }
-
- void SetFromLiteralCosts(size_t num_bytes,
- size_t position,
- const uint8_t* ringbuffer,
- size_t ringbuffer_mask) {
- literal_costs_.resize(num_bytes + 2);
- EstimateBitCostsForLiterals(position, num_bytes, ringbuffer_mask,
- ringbuffer, &literal_costs_[1]);
- literal_costs_[0] = 0.0;
- for (size_t i = 0; i < num_bytes; ++i) {
- literal_costs_[i + 1] += literal_costs_[i];
- }
- cost_cmd_.resize(kNumCommandPrefixes);
- cost_dist_.resize(kNumDistancePrefixes);
- for (uint32_t i = 0; i < kNumCommandPrefixes; ++i) {
- cost_cmd_[i] = static_cast<float>(FastLog2(11 + i));
- }
- for (uint32_t i = 0; i < kNumDistancePrefixes; ++i) {
- cost_dist_[i] = static_cast<float>(FastLog2(20 + i));
- }
- min_cost_cmd_ = static_cast<float>(FastLog2(11));
- }
-
- float GetCommandCost(
- size_t dist_code, size_t length_code, size_t insert_length) const {
- uint16_t inscode = GetInsertLengthCode(insert_length);
- uint16_t copycode = GetCopyLengthCode(length_code);
- uint16_t cmdcode = CombineLengthCodes(inscode, copycode, dist_code == 0);
- uint16_t dist_symbol;
- uint32_t distextra;
- PrefixEncodeCopyDistance(dist_code, 0, 0, &dist_symbol, &distextra);
- uint32_t distnumextra = distextra >> 24;
-
- float result = static_cast<float>(
- GetInsertExtra(inscode) + GetCopyExtra(copycode) + distnumextra);
- result += cost_cmd_[cmdcode];
- if (cmdcode >= 128) result += cost_dist_[dist_symbol];
- return result;
- }
-
- float GetLiteralCosts(size_t from, size_t to) const {
- return literal_costs_[to] - literal_costs_[from];
- }
-
- float GetMinCostCmd(void) const {
- return min_cost_cmd_;
- }
-
- private:
- void Set(const std::vector<uint32_t>& histogram, std::vector<float>* cost) {
- cost->resize(histogram.size());
- size_t sum = 0;
- for (size_t i = 0; i < histogram.size(); i++) {
- sum += histogram[i];
- }
- float log2sum = static_cast<float>(FastLog2(sum));
- for (size_t i = 0; i < histogram.size(); i++) {
- if (histogram[i] == 0) {
- (*cost)[i] = log2sum + 2;
- continue;
- }
-
- // Shannon bits for this symbol.
- (*cost)[i] = log2sum - static_cast<float>(FastLog2(histogram[i]));
-
- // Cannot be coded with less than 1 bit
- if ((*cost)[i] < 1) (*cost)[i] = 1;
- }
- }
-
- std::vector<float> cost_cmd_; // The insert and copy length symbols.
- std::vector<float> cost_dist_;
- // Cumulative costs of literals per position in the stream.
- std::vector<float> literal_costs_;
- float min_cost_cmd_;
-};
-
-inline size_t ComputeDistanceCode(size_t distance,
- size_t max_distance,
- int quality,
- const int* dist_cache) {
- if (distance <= max_distance) {
- if (distance == static_cast<size_t>(dist_cache[0])) {
- return 0;
- } else if (distance == static_cast<size_t>(dist_cache[1])) {
- return 1;
- } else if (distance == static_cast<size_t>(dist_cache[2])) {
- return 2;
- } else if (distance == static_cast<size_t>(dist_cache[3])) {
- return 3;
- } else if (quality > 3 && distance >= 6) {
- for (size_t k = 4; k < kNumDistanceShortCodes; ++k) {
- size_t idx = kDistanceCacheIndex[k];
- size_t candidate =
- static_cast<size_t>(dist_cache[idx] + kDistanceCacheOffset[k]);
- static const size_t kLimits[16] = { 0, 0, 0, 0,
- 6, 6, 11, 11,
- 11, 11, 11, 11,
- 12, 12, 12, 12 };
- if (distance == candidate && distance >= kLimits[k]) {
- return k;
- }
- }
- }
- }
- return distance + 15;
-}
-
-// REQUIRES: len >= 2, start_pos <= pos
-// REQUIRES: cost < kInfinity, nodes[start_pos].cost < kInfinity
-// Maintains the "ZopfliNode array invariant".
-inline void UpdateZopfliNode(ZopfliNode* nodes, size_t pos, size_t start_pos,
- size_t len, size_t len_code, size_t dist,
- size_t short_code, float cost) {
- ZopfliNode& next = nodes[pos + len];
- next.length = static_cast<uint32_t>(len | ((len + 9u - len_code) << 24));
- next.distance = static_cast<uint32_t>(dist | (short_code << 25));
- next.insert_length = static_cast<uint32_t>(pos - start_pos);
- next.cost = cost;
-}
-
-// Maintains the smallest 2^k cost difference together with their positions
-class StartPosQueue {
- public:
- struct PosData {
- size_t pos;
- int distance_cache[4];
- float costdiff;
- };
-
- explicit StartPosQueue(int bits)
- : mask_((1u << bits) - 1), q_(1 << bits), idx_(0) {}
-
- void Clear(void) {
- idx_ = 0;
- }
-
- void Push(const StartPosQueue::PosData& posdata) {
- size_t offset = ~idx_ & mask_;
- ++idx_;
- size_t len = size();
- q_[offset] = posdata;
- /* Restore the sorted order. In the list of |len| items at most |len - 1|
- adjacent element comparisons / swaps are required. */
- for (size_t i = 1; i < len; ++i) {
- if (q_[offset & mask_].costdiff > q_[(offset + 1) & mask_].costdiff) {
- std::swap(q_[offset & mask_], q_[(offset + 1) & mask_]);
- }
- ++offset;
- }
- }
-
- size_t size(void) const { return std::min(idx_, mask_ + 1); }
-
- const StartPosQueue::PosData& GetStartPosData(size_t k) const {
- return q_[(k - idx_) & mask_];
- }
-
- private:
- const size_t mask_;
- std::vector<PosData> q_;
- size_t idx_;
-};
-
-// Returns the minimum possible copy length that can improve the cost of any
-// future position.
-static size_t ComputeMinimumCopyLength(const StartPosQueue& queue,
- const ZopfliNode* nodes,
- const ZopfliCostModel& model,
- const size_t num_bytes,
- const size_t pos) {
- // Compute the minimum possible cost of reaching any future position.
- const size_t start0 = queue.GetStartPosData(0).pos;
- float min_cost = (nodes[start0].cost +
- model.GetLiteralCosts(start0, pos) +
- model.GetMinCostCmd());
- size_t len = 2;
- size_t next_len_bucket = 4;
- size_t next_len_offset = 10;
- while (pos + len <= num_bytes && nodes[pos + len].cost <= min_cost) {
- // We already reached (pos + len) with no more cost than the minimum
- // possible cost of reaching anything from this pos, so there is no point in
- // looking for lengths <= len.
- ++len;
- if (len == next_len_offset) {
- // We reached the next copy length code bucket, so we add one more
- // extra bit to the minimum cost.
- min_cost += static_cast<float>(1.0);
- next_len_offset += next_len_bucket;
- next_len_bucket *= 2;
- }
- }
- return len;
-}
-
-// Fills in dist_cache[0..3] with the last four distances (as defined by
-// Section 4. of the Spec) that would be used at (block_start + pos) if we
-// used the shortest path of commands from block_start, computed from
-// nodes[0..pos]. The last four distances at block_start are in
-// starting_dist_cach[0..3].
-// REQUIRES: nodes[pos].cost < kInfinity
-// REQUIRES: nodes[0..pos] satisfies that "ZopfliNode array invariant".
-static void ComputeDistanceCache(const size_t block_start,
- const size_t pos,
- const size_t max_backward,
- const int* starting_dist_cache,
- const ZopfliNode* nodes,
- int* dist_cache) {
- int idx = 0;
- size_t p = pos;
- // Because of prerequisite, does at most (pos + 1) / 2 iterations.
- while (idx < 4 && p > 0) {
- const size_t clen = nodes[p].copy_length();
- const size_t ilen = nodes[p].insert_length;
- const size_t dist = nodes[p].copy_distance();
- // Since block_start + p is the end position of the command, the copy part
- // starts from block_start + p - clen. Distances that are greater than this
- // or greater than max_backward are static dictionary references, and do
- // not update the last distances. Also distance code 0 (last distance)
- // does not update the last distances.
- if (dist + clen <= block_start + p && dist <= max_backward &&
- nodes[p].distance_code() > 0) {
- dist_cache[idx++] = static_cast<int>(dist);
- }
- // Because of prerequisite, p >= clen + ilen >= 2.
- p -= clen + ilen;
- }
- for (; idx < 4; ++idx) {
- dist_cache[idx] = *starting_dist_cache++;
- }
-}
-
-static void UpdateNodes(const size_t num_bytes,
- const size_t block_start,
- const size_t pos,
- const uint8_t* ringbuffer,
- const size_t ringbuffer_mask,
- const size_t max_backward_limit,
- const int* starting_dist_cache,
- const size_t num_matches,
- const BackwardMatch* matches,
- const ZopfliCostModel* model,
- StartPosQueue* queue,
- ZopfliNode* nodes) {
- size_t cur_ix = block_start + pos;
- size_t cur_ix_masked = cur_ix & ringbuffer_mask;
- size_t max_distance = std::min(cur_ix, max_backward_limit);
-
- if (nodes[pos].cost <= model->GetLiteralCosts(0, pos)) {
- StartPosQueue::PosData posdata;
- posdata.pos = pos;
- posdata.costdiff = nodes[pos].cost - model->GetLiteralCosts(0, pos);
- ComputeDistanceCache(block_start, pos, max_backward_limit,
- starting_dist_cache, nodes, posdata.distance_cache);
- queue->Push(posdata);
- }
-
- const size_t min_len = ComputeMinimumCopyLength(
- *queue, nodes, *model, num_bytes, pos);
-
- // Go over the command starting positions in order of increasing cost
- // difference.
- for (size_t k = 0; k < 5 && k < queue->size(); ++k) {
- const StartPosQueue::PosData& posdata = queue->GetStartPosData(k);
- const size_t start = posdata.pos;
- const float start_costdiff = posdata.costdiff;
-
- // Look for last distance matches using the distance cache from this
- // starting position.
- size_t best_len = min_len - 1;
- for (size_t j = 0; j < kNumDistanceShortCodes; ++j) {
- const size_t idx = kDistanceCacheIndex[j];
- const size_t backward = static_cast<size_t>(posdata.distance_cache[idx] +
- kDistanceCacheOffset[j]);
- size_t prev_ix = cur_ix - backward;
- if (prev_ix >= cur_ix) {
- continue;
- }
- if (PREDICT_FALSE(backward > max_distance)) {
- continue;
- }
- prev_ix &= ringbuffer_mask;
-
- if (cur_ix_masked + best_len > ringbuffer_mask ||
- prev_ix + best_len > ringbuffer_mask ||
- ringbuffer[cur_ix_masked + best_len] !=
- ringbuffer[prev_ix + best_len]) {
- continue;
- }
- const size_t len =
- FindMatchLengthWithLimit(&ringbuffer[prev_ix],
- &ringbuffer[cur_ix_masked],
- num_bytes - pos);
- for (size_t l = best_len + 1; l <= len; ++l) {
- const size_t inslen = pos - start;
- float cmd_cost = model->GetCommandCost(j, l, inslen);
- float cost = start_costdiff + cmd_cost + model->GetLiteralCosts(0, pos);
- if (cost < nodes[pos + l].cost) {
- UpdateZopfliNode(&nodes[0], pos, start, l, l, backward, j + 1, cost);
- }
- best_len = l;
- }
- }
-
- // At higher iterations look only for new last distance matches, since
- // looking only for new command start positions with the same distances
- // does not help much.
- if (k >= 2) continue;
-
- // Loop through all possible copy lengths at this position.
- size_t len = min_len;
- for (size_t j = 0; j < num_matches; ++j) {
- BackwardMatch match = matches[j];
- size_t dist = match.distance;
- bool is_dictionary_match = dist > max_distance;
- // We already tried all possible last distance matches, so we can use
- // normal distance code here.
- size_t dist_code = dist + 15;
- // Try all copy lengths up until the maximum copy length corresponding
- // to this distance. If the distance refers to the static dictionary, or
- // the maximum length is long enough, try only one maximum length.
- size_t max_len = match.length();
- if (len < max_len && (is_dictionary_match || max_len > kMaxZopfliLen)) {
- len = max_len;
- }
- for (; len <= max_len; ++len) {
- size_t len_code = is_dictionary_match ? match.length_code() : len;
- const size_t inslen = pos - start;
- float cmd_cost = model->GetCommandCost(dist_code, len_code, inslen);
- float cost = start_costdiff + cmd_cost + model->GetLiteralCosts(0, pos);
- if (cost < nodes[pos + len].cost) {
- UpdateZopfliNode(&nodes[0], pos, start, len, len_code, dist, 0, cost);
- }
- }
- }
- }
-}
-
-static void ComputeShortestPathFromNodes(size_t num_bytes,
- const ZopfliNode* nodes,
- std::vector<uint32_t>* path) {
- std::vector<uint32_t> backwards(num_bytes / 2 + 1);
- size_t index = num_bytes;
- while (nodes[index].cost == kInfinity) --index;
- size_t num_commands = 0;
- while (index != 0) {
- size_t len = nodes[index].command_length();
- backwards[num_commands++] = static_cast<uint32_t>(len);
- index -= len;
- }
- path->resize(num_commands);
- for (size_t i = num_commands, j = 0; i > 0; --i, ++j) {
- (*path)[j] = backwards[i - 1];
- }
-}
-
-void ZopfliCreateCommands(const size_t num_bytes,
- const size_t block_start,
- const size_t max_backward_limit,
- const std::vector<uint32_t>& path,
- const ZopfliNode* nodes,
- int* dist_cache,
- size_t* last_insert_len,
- Command* commands,
- size_t* num_literals) {
- size_t pos = 0;
- for (size_t i = 0; i < path.size(); i++) {
- const ZopfliNode& next = nodes[pos + path[i]];
- size_t copy_length = next.copy_length();
- size_t insert_length = next.insert_length;
- pos += insert_length;
- if (i == 0) {
- insert_length += *last_insert_len;
- *last_insert_len = 0;
- }
- size_t distance = next.copy_distance();
- size_t len_code = next.length_code();
- size_t max_distance = std::min(block_start + pos, max_backward_limit);
- bool is_dictionary = (distance > max_distance);
- size_t dist_code = next.distance_code();
-
- Command cmd(insert_length, copy_length, len_code, dist_code);
- commands[i] = cmd;
-
- if (!is_dictionary && dist_code > 0) {
- dist_cache[3] = dist_cache[2];
- dist_cache[2] = dist_cache[1];
- dist_cache[1] = dist_cache[0];
- dist_cache[0] = static_cast<int>(distance);
- }
-
- *num_literals += insert_length;
- pos += copy_length;
- }
- *last_insert_len += num_bytes - pos;
-}
-
-static void ZopfliIterate(size_t num_bytes,
- size_t position,
- const uint8_t* ringbuffer,
- size_t ringbuffer_mask,
- const size_t max_backward_limit,
- const int* dist_cache,
- const ZopfliCostModel& model,
- const std::vector<uint32_t>& num_matches,
- const std::vector<BackwardMatch>& matches,
- ZopfliNode* nodes,
- std::vector<uint32_t>* path) {
- nodes[0].length = 0;
- nodes[0].cost = 0;
- StartPosQueue queue(3);
- size_t cur_match_pos = 0;
- for (size_t i = 0; i + 3 < num_bytes; i++) {
- UpdateNodes(num_bytes, position, i, ringbuffer, ringbuffer_mask,
- max_backward_limit, dist_cache, num_matches[i],
- &matches[cur_match_pos], &model, &queue, &nodes[0]);
- cur_match_pos += num_matches[i];
- // The zopflification can be too slow in case of very long lengths, so in
- // such case skip it all, it does not cost a lot of compression ratio.
- if (num_matches[i] == 1 &&
- matches[cur_match_pos - 1].length() > kMaxZopfliLen) {
- i += matches[cur_match_pos - 1].length() - 1;
- queue.Clear();
- }
- }
- ComputeShortestPathFromNodes(num_bytes, &nodes[0], path);
-}
-
-
-void ZopfliComputeShortestPath(size_t num_bytes,
- size_t position,
- const uint8_t* ringbuffer,
- size_t ringbuffer_mask,
- const size_t max_backward_limit,
- const int* dist_cache,
- Hashers::H10* hasher,
- ZopfliNode* nodes,
- std::vector<uint32_t>* path) {
- nodes[0].length = 0;
- nodes[0].cost = 0;
- ZopfliCostModel* model = new ZopfliCostModel;
- model->SetFromLiteralCosts(num_bytes, position,
- ringbuffer, ringbuffer_mask);
- StartPosQueue queue(3);
- BackwardMatch matches[Hashers::H10::kMaxNumMatches];
- for (size_t i = 0; i + 3 < num_bytes; i++) {
- const size_t max_distance = std::min(position + i, max_backward_limit);
- size_t num_matches = hasher->FindAllMatches(
- ringbuffer, ringbuffer_mask, position + i, num_bytes - i, max_distance,
- matches);
- if (num_matches > 0 &&
- matches[num_matches - 1].length() > kMaxZopfliLen) {
- matches[0] = matches[num_matches - 1];
- num_matches = 1;
- }
- UpdateNodes(num_bytes, position, i, ringbuffer, ringbuffer_mask,
- max_backward_limit, dist_cache, num_matches, matches,
- model, &queue, nodes);
- if (num_matches == 1 && matches[0].length() > kMaxZopfliLen) {
- for (size_t j = 1; j < matches[0].length() && i + 4 < num_bytes; ++j) {
- ++i;
- if (matches[0].length() - j < 64 &&
- num_bytes - i >= kMaxTreeCompLength) {
- hasher->Store(ringbuffer, ringbuffer_mask, position + i);
- }
- }
- queue.Clear();
- }
- }
- delete model;
- ComputeShortestPathFromNodes(num_bytes, nodes, path);
-}
-
-template<typename Hasher>
-void CreateBackwardReferences(size_t num_bytes,
- size_t position,
- bool is_last,
- const uint8_t* ringbuffer,
- size_t ringbuffer_mask,
- const int quality,
- const int lgwin,
- Hasher* hasher,
- int* dist_cache,
- size_t* last_insert_len,
- Command* commands,
- size_t* num_commands,
- size_t* num_literals) {
- // Set maximum distance, see section 9.1. of the spec.
- const size_t max_backward_limit = (1 << lgwin) - 16;
-
- // Choose which init method is faster.
- // memset is about 100 times faster than hasher->InitForData().
- const size_t kMaxBytesForPartialHashInit = Hasher::kHashMapSize >> 7;
- if (position == 0 && is_last && num_bytes <= kMaxBytesForPartialHashInit) {
- hasher->InitForData(ringbuffer, num_bytes);
- } else {
- hasher->Init();
- }
- if (num_bytes >= 3 && position >= 3) {
- // Prepare the hashes for three last bytes of the last write.
- // These could not be calculated before, since they require knowledge
- // of both the previous and the current block.
- hasher->Store(&ringbuffer[(position - 3) & ringbuffer_mask],
- static_cast<uint32_t>(position - 3));
- hasher->Store(&ringbuffer[(position - 2) & ringbuffer_mask],
- static_cast<uint32_t>(position - 2));
- hasher->Store(&ringbuffer[(position - 1) & ringbuffer_mask],
- static_cast<uint32_t>(position - 1));
- }
- const Command * const orig_commands = commands;
- size_t insert_length = *last_insert_len;
- size_t i = position & ringbuffer_mask;
- const size_t i_diff = position - i;
- const size_t i_end = i + num_bytes;
-
- // For speed up heuristics for random data.
- const size_t random_heuristics_window_size = quality < 9 ? 64 : 512;
- size_t apply_random_heuristics = i + random_heuristics_window_size;
-
- // Minimum score to accept a backward reference.
- const double kMinScore = 4.0;
-
- while (i + Hasher::kHashTypeLength - 1 < i_end) {
- size_t max_length = i_end - i;
- size_t max_distance = std::min(i + i_diff, max_backward_limit);
- size_t best_len = 0;
- size_t best_len_code = 0;
- size_t best_dist = 0;
- double best_score = kMinScore;
- bool match_found = hasher->FindLongestMatch(
- ringbuffer, ringbuffer_mask,
- dist_cache, static_cast<uint32_t>(i + i_diff), max_length, max_distance,
- &best_len, &best_len_code, &best_dist, &best_score);
- if (match_found) {
- // Found a match. Let's look for something even better ahead.
- int delayed_backward_references_in_row = 0;
- for (;;) {
- --max_length;
- size_t best_len_2 =
- quality < 5 ? std::min(best_len - 1, max_length) : 0;
- size_t best_len_code_2 = 0;
- size_t best_dist_2 = 0;
- double best_score_2 = kMinScore;
- max_distance = std::min(i + i_diff + 1, max_backward_limit);
- match_found = hasher->FindLongestMatch(
- ringbuffer, ringbuffer_mask,
- dist_cache, static_cast<uint32_t>(i + i_diff + 1),
- max_length, max_distance,
- &best_len_2, &best_len_code_2, &best_dist_2, &best_score_2);
- double cost_diff_lazy = 7.0;
- if (match_found && best_score_2 >= best_score + cost_diff_lazy) {
- // Ok, let's just write one byte for now and start a match from the
- // next byte.
- ++i;
- ++insert_length;
- best_len = best_len_2;
- best_len_code = best_len_code_2;
- best_dist = best_dist_2;
- best_score = best_score_2;
- if (++delayed_backward_references_in_row < 4) {
- continue;
- }
- }
- break;
- }
- apply_random_heuristics =
- i + 2 * best_len + random_heuristics_window_size;
- max_distance = std::min(i + i_diff, max_backward_limit);
- // The first 16 codes are special shortcodes, and the minimum offset is 1.
- size_t distance_code =
- ComputeDistanceCode(best_dist, max_distance, quality, dist_cache);
- if (best_dist <= max_distance && distance_code > 0) {
- dist_cache[3] = dist_cache[2];
- dist_cache[2] = dist_cache[1];
- dist_cache[1] = dist_cache[0];
- dist_cache[0] = static_cast<int>(best_dist);
- }
- Command cmd(insert_length, best_len, best_len_code, distance_code);
- *commands++ = cmd;
- *num_literals += insert_length;
- insert_length = 0;
- // Put the hash keys into the table, if there are enough
- // bytes left.
- for (size_t j = 2; j < best_len; ++j) {
- hasher->Store(&ringbuffer[i + j],
- static_cast<uint32_t>(i + i_diff + j));
- }
- i += best_len;
- } else {
- ++insert_length;
- ++i;
- // If we have not seen matches for a long time, we can skip some
- // match lookups. Unsuccessful match lookups are very very expensive
- // and this kind of a heuristic speeds up compression quite
- // a lot.
- if (i > apply_random_heuristics) {
- // Going through uncompressible data, jump.
- if (i > apply_random_heuristics + 4 * random_heuristics_window_size) {
- // It is quite a long time since we saw a copy, so we assume
- // that this data is not compressible, and store hashes less
- // often. Hashes of non compressible data are less likely to
- // turn out to be useful in the future, too, so we store less of
- // them to not to flood out the hash table of good compressible
- // data.
- size_t i_jump = std::min(i + 16, i_end - 4);
- for (; i < i_jump; i += 4) {
- hasher->Store(ringbuffer + i, static_cast<uint32_t>(i + i_diff));
- insert_length += 4;
- }
- } else {
- size_t i_jump = std::min(i + 8, i_end - 3);
- for (; i < i_jump; i += 2) {
- hasher->Store(ringbuffer + i, static_cast<uint32_t>(i + i_diff));
- insert_length += 2;
- }
- }
- }
- }
- }
- insert_length += i_end - i;
- *last_insert_len = insert_length;
- *num_commands += static_cast<size_t>(commands - orig_commands);
-}
-
-void CreateBackwardReferences(size_t num_bytes,
- size_t position,
- bool is_last,
- const uint8_t* ringbuffer,
- size_t ringbuffer_mask,
- const int quality,
- const int lgwin,
- Hashers* hashers,
- int hash_type,
- int* dist_cache,
- size_t* last_insert_len,
- Command* commands,
- size_t* num_commands,
- size_t* num_literals) {
- bool zopflify = quality > 9;
- if (zopflify) {
- Hashers::H10* hasher = hashers->hash_h10;
- hasher->Init(lgwin, position, num_bytes, is_last);
- hasher->StitchToPreviousBlock(num_bytes, position,
- ringbuffer, ringbuffer_mask);
- // Set maximum distance, see section 9.1. of the spec.
- const size_t max_backward_limit = (1 << lgwin) - 16;
- if (quality == 10) {
- std::vector<ZopfliNode> nodes(num_bytes + 1);
- std::vector<uint32_t> path;
- ZopfliComputeShortestPath(num_bytes, position,
- ringbuffer, ringbuffer_mask,
- max_backward_limit, dist_cache, hasher,
- &nodes[0], &path);
- ZopfliCreateCommands(num_bytes, position, max_backward_limit, path,
- &nodes[0], dist_cache, last_insert_len, commands,
- num_literals);
- *num_commands += path.size();
- return;
- }
- std::vector<uint32_t> num_matches(num_bytes);
- std::vector<BackwardMatch> matches(4 * num_bytes);
- size_t cur_match_pos = 0;
- for (size_t i = 0; i + 3 < num_bytes; ++i) {
- size_t max_distance = std::min(position + i, max_backward_limit);
- size_t max_length = num_bytes - i;
- // Ensure that we have enough free slots.
- if (matches.size() < cur_match_pos + Hashers::H10::kMaxNumMatches) {
- matches.resize(cur_match_pos + Hashers::H10::kMaxNumMatches);
- }
- size_t num_found_matches = hasher->FindAllMatches(
- ringbuffer, ringbuffer_mask, position + i, max_length, max_distance,
- &matches[cur_match_pos]);
- const size_t cur_match_end = cur_match_pos + num_found_matches;
- for (size_t j = cur_match_pos; j + 1 < cur_match_end; ++j) {
- assert(matches[j].length() < matches[j + 1].length());
- assert(matches[j].distance > max_distance ||
- matches[j].distance <= matches[j + 1].distance);
- }
- num_matches[i] = static_cast<uint32_t>(num_found_matches);
- if (num_found_matches > 0) {
- const size_t match_len = matches[cur_match_end - 1].length();
- if (match_len > kMaxZopfliLen) {
- matches[cur_match_pos++] = matches[cur_match_end - 1];
- num_matches[i] = 1;
- for (size_t j = 1; j < match_len; ++j) {
- ++i;
- if (match_len - j < 64 && num_bytes - i >= kMaxTreeCompLength) {
- hasher->Store(ringbuffer, ringbuffer_mask, position + i);
- }
- num_matches[i] = 0;
- }
- } else {
- cur_match_pos = cur_match_end;
- }
- }
- }
- size_t orig_num_literals = *num_literals;
- size_t orig_last_insert_len = *last_insert_len;
- int orig_dist_cache[4] = {
- dist_cache[0], dist_cache[1], dist_cache[2], dist_cache[3]
- };
- size_t orig_num_commands = *num_commands;
- static const size_t kIterations = 2;
- for (size_t i = 0; i < kIterations; i++) {
- ZopfliCostModel model;
- if (i == 0) {
- model.SetFromLiteralCosts(num_bytes, position,
- ringbuffer, ringbuffer_mask);
- } else {
- model.SetFromCommands(num_bytes, position,
- ringbuffer, ringbuffer_mask,
- commands, *num_commands - orig_num_commands,
- orig_last_insert_len);
- }
- *num_commands = orig_num_commands;
- *num_literals = orig_num_literals;
- *last_insert_len = orig_last_insert_len;
- memcpy(dist_cache, orig_dist_cache, 4 * sizeof(dist_cache[0]));
- std::vector<ZopfliNode> nodes(num_bytes + 1);
- std::vector<uint32_t> path;
- ZopfliIterate(num_bytes, position, ringbuffer, ringbuffer_mask,
- max_backward_limit, dist_cache, model, num_matches, matches,
- &nodes[0], &path);
- ZopfliCreateCommands(num_bytes, position, max_backward_limit, path,
- &nodes[0], dist_cache, last_insert_len, commands,
- num_literals);
- *num_commands += path.size();
- }
- return;
- }
-
- switch (hash_type) {
- case 2:
- CreateBackwardReferences<Hashers::H2>(
- num_bytes, position, is_last, ringbuffer, ringbuffer_mask,
- quality, lgwin, hashers->hash_h2, dist_cache,
- last_insert_len, commands, num_commands, num_literals);
- break;
- case 3:
- CreateBackwardReferences<Hashers::H3>(
- num_bytes, position, is_last, ringbuffer, ringbuffer_mask,
- quality, lgwin, hashers->hash_h3, dist_cache,
- last_insert_len, commands, num_commands, num_literals);
- break;
- case 4:
- CreateBackwardReferences<Hashers::H4>(
- num_bytes, position, is_last, ringbuffer, ringbuffer_mask,
- quality, lgwin, hashers->hash_h4, dist_cache,
- last_insert_len, commands, num_commands, num_literals);
- break;
- case 5:
- CreateBackwardReferences<Hashers::H5>(
- num_bytes, position, is_last, ringbuffer, ringbuffer_mask,
- quality, lgwin, hashers->hash_h5, dist_cache,
- last_insert_len, commands, num_commands, num_literals);
- break;
- case 6:
- CreateBackwardReferences<Hashers::H6>(
- num_bytes, position, is_last, ringbuffer, ringbuffer_mask,
- quality, lgwin, hashers->hash_h6, dist_cache,
- last_insert_len, commands, num_commands, num_literals);
- break;
- case 7:
- CreateBackwardReferences<Hashers::H7>(
- num_bytes, position, is_last, ringbuffer, ringbuffer_mask,
- quality, lgwin, hashers->hash_h7, dist_cache,
- last_insert_len, commands, num_commands, num_literals);
- break;
- case 8:
- CreateBackwardReferences<Hashers::H8>(
- num_bytes, position, is_last, ringbuffer, ringbuffer_mask,
- quality, lgwin, hashers->hash_h8, dist_cache,
- last_insert_len, commands, num_commands, num_literals);
- break;
- case 9:
- CreateBackwardReferences<Hashers::H9>(
- num_bytes, position, is_last, ringbuffer, ringbuffer_mask,
- quality, lgwin, hashers->hash_h9, dist_cache,
- last_insert_len, commands, num_commands, num_literals);
- break;
- default:
- break;
- }
-}
-
-} // namespace brotli
diff --git a/thirdparty/brotli/enc/backward_references.h b/thirdparty/brotli/enc/backward_references.h
index f60667f7..d84402bd 100644
--- a/thirdparty/brotli/enc/backward_references.h
+++ b/thirdparty/brotli/enc/backward_references.h
@@ -4,113 +4,96 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Function to find backward reference copies.
+/* Function to find backward reference copies. */
#ifndef BROTLI_ENC_BACKWARD_REFERENCES_H_
#define BROTLI_ENC_BACKWARD_REFERENCES_H_
-#include <vector>
-
-#include "./hash.h"
+#include "../common/types.h"
#include "./command.h"
-#include "./types.h"
-
-namespace brotli {
-
-// "commands" points to the next output command to write to, "*num_commands" is
-// initially the total amount of commands output by previous
-// CreateBackwardReferences calls, and must be incremented by the amount written
-// by this call.
-void CreateBackwardReferences(size_t num_bytes,
- size_t position,
- bool is_last,
- const uint8_t* ringbuffer,
- size_t ringbuffer_mask,
- const int quality,
- const int lgwin,
- Hashers* hashers,
- int hash_type,
- int* dist_cache,
- size_t* last_insert_len,
- Command* commands,
- size_t* num_commands,
- size_t* num_literals);
-
-static const float kInfinity = std::numeric_limits<float>::infinity();
-
-struct ZopfliNode {
- ZopfliNode(void) : length(1),
- distance(0),
- insert_length(0),
- cost(kInfinity) {}
-
- inline uint32_t copy_length() const {
- return length & 0xffffff;
- }
-
- inline uint32_t length_code() const {
- const uint32_t modifier = length >> 24;
- return copy_length() + 9u - modifier;
- }
-
- inline uint32_t copy_distance() const {
- return distance & 0x1ffffff;
- }
-
- inline uint32_t distance_code() const {
- const uint32_t short_code = distance >> 25;
- return short_code == 0 ? copy_distance() + 15 : short_code - 1;
- }
-
- inline uint32_t command_length() const {
- return copy_length() + insert_length;
- }
-
- // best length to get up to this byte (not including this byte itself)
- // highest 8 bit is used to reconstruct the length code
+#include "./hash.h"
+#include "./memory.h"
+#include "./port.h"
+#include "./quality.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+/* "commands" points to the next output command to write to, "*num_commands" is
+ initially the total amount of commands output by previous
+ CreateBackwardReferences calls, and must be incremented by the amount written
+ by this call. */
+BROTLI_INTERNAL void BrotliCreateBackwardReferences(
+ MemoryManager* m, size_t num_bytes, size_t position, BROTLI_BOOL is_last,
+ const uint8_t* ringbuffer, size_t ringbuffer_mask,
+ const BrotliEncoderParams* params, Hashers* hashers, int* dist_cache,
+ size_t* last_insert_len, Command* commands, size_t* num_commands,
+ size_t* num_literals);
+
+typedef struct ZopfliNode {
+ /* best length to get up to this byte (not including this byte itself)
+ highest 8 bit is used to reconstruct the length code */
uint32_t length;
- // distance associated with the length
- // highest 7 bit contains distance short code + 1 (or zero if no short code)
+ /* distance associated with the length
+ highest 7 bit contains distance short code + 1 (or zero if no short code)
+ */
uint32_t distance;
- // number of literal inserts before this copy
+ /* number of literal inserts before this copy */
uint32_t insert_length;
- // smallest cost to get to this byte from the beginning, as found so far
- float cost;
-};
-
-// Computes the shortest path of commands from position to at most
-// position + num_bytes.
-//
-// On return, path->size() is the number of commands found and path[i] is the
-// length of the ith command (copy length plus insert length).
-// Note that the sum of the lengths of all commands can be less than num_bytes.
-//
-// On return, the nodes[0..num_bytes] array will have the following
-// "ZopfliNode array invariant":
-// For each i in [1..num_bytes], if nodes[i].cost < kInfinity, then
-// (1) nodes[i].copy_length() >= 2
-// (2) nodes[i].command_length() <= i and
-// (3) nodes[i - nodes[i].command_length()].cost < kInfinity
-void ZopfliComputeShortestPath(size_t num_bytes,
- size_t position,
- const uint8_t* ringbuffer,
- size_t ringbuffer_mask,
- const size_t max_backward_limit,
- const int* dist_cache,
- Hashers::H10* hasher,
- ZopfliNode* nodes,
- std::vector<uint32_t>* path);
-
-void ZopfliCreateCommands(const size_t num_bytes,
- const size_t block_start,
- const size_t max_backward_limit,
- const std::vector<uint32_t>& path,
- const ZopfliNode* nodes,
- int* dist_cache,
- size_t* last_insert_len,
- Command* commands,
- size_t* num_literals);
-
-} // namespace brotli
-
-#endif // BROTLI_ENC_BACKWARD_REFERENCES_H_
+
+ /* This union holds information used by dynamic-programming. During forward
+ pass |cost| it used to store the goal function. When node is processed its
+ |cost| is invalidated in favor of |shortcut|. On path backtracing pass
+ |next| is assigned the offset to next node on the path. */
+ union {
+ /* Smallest cost to get to this byte from the beginning, as found so far. */
+ float cost;
+ /* Offset to the next node on the path. Equals to command_length() of the
+ next node on the path. For last node equals to BROTLI_UINT32_MAX */
+ uint32_t next;
+ /* Node position that provides next distance for distance cache. */
+ uint32_t shortcut;
+ } u;
+} ZopfliNode;
+
+BROTLI_INTERNAL void BrotliInitZopfliNodes(ZopfliNode* array, size_t length);
+
+/* Computes the shortest path of commands from position to at most
+ position + num_bytes.
+
+ On return, path->size() is the number of commands found and path[i] is the
+ length of the ith command (copy length plus insert length).
+ Note that the sum of the lengths of all commands can be less than num_bytes.
+
+ On return, the nodes[0..num_bytes] array will have the following
+ "ZopfliNode array invariant":
+ For each i in [1..num_bytes], if nodes[i].cost < kInfinity, then
+ (1) nodes[i].copy_length() >= 2
+ (2) nodes[i].command_length() <= i and
+ (3) nodes[i - nodes[i].command_length()].cost < kInfinity */
+BROTLI_INTERNAL size_t BrotliZopfliComputeShortestPath(
+ MemoryManager* m, size_t num_bytes, size_t position,
+ const uint8_t* ringbuffer, size_t ringbuffer_mask,
+ const BrotliEncoderParams* params, const size_t max_backward_limit,
+ const int* dist_cache, H10* hasher, ZopfliNode* nodes);
+
+BROTLI_INTERNAL void BrotliZopfliCreateCommands(const size_t num_bytes,
+ const size_t block_start,
+ const size_t max_backward_limit,
+ const ZopfliNode* nodes,
+ int* dist_cache,
+ size_t* last_insert_len,
+ Command* commands,
+ size_t* num_literals);
+
+/* Maximum distance, see section 9.1. of the spec. */
+static BROTLI_INLINE size_t MaxBackwardLimit(int lgwin) {
+ return (1u << lgwin) - 16;
+}
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
+
+#endif /* BROTLI_ENC_BACKWARD_REFERENCES_H_ */
diff --git a/thirdparty/brotli/enc/backward_references_inc.h b/thirdparty/brotli/enc/backward_references_inc.h
new file mode 100644
index 00000000..dbbd6341
--- /dev/null
+++ b/thirdparty/brotli/enc/backward_references_inc.h
@@ -0,0 +1,147 @@
+/* NOLINT(build/header_guard) */
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* template parameters: FN */
+
+#define Hasher HASHER()
+
+static BROTLI_NOINLINE void FN(CreateBackwardReferences)(
+ MemoryManager* m, size_t num_bytes, size_t position, BROTLI_BOOL is_last,
+ const uint8_t* ringbuffer, size_t ringbuffer_mask,
+ const BrotliEncoderParams* params, Hasher* hasher, int* dist_cache,
+ size_t* last_insert_len, Command* commands, size_t* num_commands,
+ size_t* num_literals) {
+ /* Set maximum distance, see section 9.1. of the spec. */
+ const size_t max_backward_limit = MaxBackwardLimit(params->lgwin);
+
+ const Command* const orig_commands = commands;
+ size_t insert_length = *last_insert_len;
+ const size_t pos_end = position + num_bytes;
+ const size_t store_end = num_bytes >= FN(StoreLookahead)() ?
+ position + num_bytes - FN(StoreLookahead)() + 1 : position;
+
+ /* For speed up heuristics for random data. */
+ const size_t random_heuristics_window_size =
+ LiteralSpreeLengthForSparseSearch(params);
+ size_t apply_random_heuristics = position + random_heuristics_window_size;
+
+ /* Minimum score to accept a backward reference. */
+ const score_t kMinScore = BROTLI_SCORE_BASE + 400;
+
+ FN(Init)(m, hasher, ringbuffer, params, position, num_bytes, is_last);
+ if (BROTLI_IS_OOM(m)) return;
+ FN(StitchToPreviousBlock)(hasher, num_bytes, position,
+ ringbuffer, ringbuffer_mask);
+
+ while (position + FN(HashTypeLength)() < pos_end) {
+ size_t max_length = pos_end - position;
+ size_t max_distance = BROTLI_MIN(size_t, position, max_backward_limit);
+ HasherSearchResult sr;
+ sr.len = 0;
+ sr.len_x_code = 0;
+ sr.distance = 0;
+ sr.score = kMinScore;
+ if (FN(FindLongestMatch)(hasher, ringbuffer, ringbuffer_mask, dist_cache,
+ position, max_length, max_distance, &sr)) {
+ /* Found a match. Let's look for something even better ahead. */
+ int delayed_backward_references_in_row = 0;
+ --max_length;
+ for (;; --max_length) {
+ const score_t cost_diff_lazy = 700;
+ BROTLI_BOOL is_match_found;
+ HasherSearchResult sr2;
+ sr2.len = params->quality < MIN_QUALITY_FOR_EXTENSIVE_REFERENCE_SEARCH ?
+ BROTLI_MIN(size_t, sr.len - 1, max_length) : 0;
+ sr2.len_x_code = 0;
+ sr2.distance = 0;
+ sr2.score = kMinScore;
+ max_distance = BROTLI_MIN(size_t, position + 1, max_backward_limit);
+ is_match_found = FN(FindLongestMatch)(hasher, ringbuffer,
+ ringbuffer_mask, dist_cache, position + 1, max_length, max_distance,
+ &sr2);
+ if (is_match_found && sr2.score >= sr.score + cost_diff_lazy) {
+ /* Ok, let's just write one byte for now and start a match from the
+ next byte. */
+ ++position;
+ ++insert_length;
+ sr = sr2;
+ if (++delayed_backward_references_in_row < 4 &&
+ position + FN(HashTypeLength)() < pos_end) {
+ continue;
+ }
+ }
+ break;
+ }
+ apply_random_heuristics =
+ position + 2 * sr.len + random_heuristics_window_size;
+ max_distance = BROTLI_MIN(size_t, position, max_backward_limit);
+ {
+ /* The first 16 codes are special shortcodes,
+ and the minimum offset is 1. */
+ size_t distance_code =
+ ComputeDistanceCode(sr.distance, max_distance, dist_cache);
+ if (sr.distance <= max_distance && distance_code > 0) {
+ dist_cache[3] = dist_cache[2];
+ dist_cache[2] = dist_cache[1];
+ dist_cache[1] = dist_cache[0];
+ dist_cache[0] = (int)sr.distance;
+ }
+ InitCommand(commands++, insert_length, sr.len, sr.len ^ sr.len_x_code,
+ distance_code);
+ }
+ *num_literals += insert_length;
+ insert_length = 0;
+ /* Put the hash keys into the table, if there are enough bytes left.
+ Depending on the hasher implementation, it can push all positions
+ in the given range or only a subset of them. */
+ FN(StoreRange)(hasher, ringbuffer, ringbuffer_mask, position + 2,
+ BROTLI_MIN(size_t, position + sr.len, store_end));
+ position += sr.len;
+ } else {
+ ++insert_length;
+ ++position;
+ /* If we have not seen matches for a long time, we can skip some
+ match lookups. Unsuccessful match lookups are very very expensive
+ and this kind of a heuristic speeds up compression quite
+ a lot. */
+ if (position > apply_random_heuristics) {
+ /* Going through uncompressible data, jump. */
+ if (position >
+ apply_random_heuristics + 4 * random_heuristics_window_size) {
+ /* It is quite a long time since we saw a copy, so we assume
+ that this data is not compressible, and store hashes less
+ often. Hashes of non compressible data are less likely to
+ turn out to be useful in the future, too, so we store less of
+ them to not to flood out the hash table of good compressible
+ data. */
+ const size_t kMargin =
+ BROTLI_MAX(size_t, FN(StoreLookahead)() - 1, 4);
+ size_t pos_jump =
+ BROTLI_MIN(size_t, position + 16, pos_end - kMargin);
+ for (; position < pos_jump; position += 4) {
+ FN(Store)(hasher, ringbuffer, ringbuffer_mask, position);
+ insert_length += 4;
+ }
+ } else {
+ const size_t kMargin =
+ BROTLI_MAX(size_t, FN(StoreLookahead)() - 1, 2);
+ size_t pos_jump =
+ BROTLI_MIN(size_t, position + 8, pos_end - kMargin);
+ for (; position < pos_jump; position += 2) {
+ FN(Store)(hasher, ringbuffer, ringbuffer_mask, position);
+ insert_length += 2;
+ }
+ }
+ }
+ }
+ }
+ insert_length += pos_end - position;
+ *last_insert_len = insert_length;
+ *num_commands += (size_t)(commands - orig_commands);
+}
+
+#undef Hasher
diff --git a/thirdparty/brotli/enc/bit_cost.c b/thirdparty/brotli/enc/bit_cost.c
new file mode 100644
index 00000000..4d80ead9
--- /dev/null
+++ b/thirdparty/brotli/enc/bit_cost.c
@@ -0,0 +1,35 @@
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Functions to estimate the bit cost of Huffman trees. */
+
+#include "./bit_cost.h"
+
+#include "../common/constants.h"
+#include "../common/types.h"
+#include "./fast_log.h"
+#include "./histogram.h"
+#include "./port.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+#define FN(X) X ## Literal
+#include "./bit_cost_inc.h" /* NOLINT(build/include) */
+#undef FN
+
+#define FN(X) X ## Command
+#include "./bit_cost_inc.h" /* NOLINT(build/include) */
+#undef FN
+
+#define FN(X) X ## Distance
+#include "./bit_cost_inc.h" /* NOLINT(build/include) */
+#undef FN
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/bit_cost.h b/thirdparty/brotli/enc/bit_cost.h
index 46520068..eeeedde6 100644
--- a/thirdparty/brotli/enc/bit_cost.h
+++ b/thirdparty/brotli/enc/bit_cost.h
@@ -4,19 +4,22 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Functions to estimate the bit cost of Huffman trees.
+/* Functions to estimate the bit cost of Huffman trees. */
#ifndef BROTLI_ENC_BIT_COST_H_
#define BROTLI_ENC_BIT_COST_H_
-#include "./entropy_encode.h"
+#include "../common/types.h"
#include "./fast_log.h"
-#include "./types.h"
+#include "./histogram.h"
+#include "./port.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
-static inline double ShannonEntropy(const uint32_t *population, size_t size,
- size_t *total) {
+static BROTLI_INLINE double ShannonEntropy(const uint32_t *population,
+ size_t size, size_t *total) {
size_t sum = 0;
double retval = 0;
const uint32_t *population_end = population + size;
@@ -27,135 +30,34 @@ static inline double ShannonEntropy(const uint32_t *population, size_t size,
while (population < population_end) {
p = *population++;
sum += p;
- retval -= static_cast<double>(p) * FastLog2(p);
+ retval -= (double)p * FastLog2(p);
odd_number_of_elements_left:
p = *population++;
sum += p;
- retval -= static_cast<double>(p) * FastLog2(p);
+ retval -= (double)p * FastLog2(p);
}
- if (sum) retval += static_cast<double>(sum) * FastLog2(sum);
+ if (sum) retval += (double)sum * FastLog2(sum);
*total = sum;
return retval;
}
-static inline double BitsEntropy(const uint32_t *population, size_t size) {
+static BROTLI_INLINE double BitsEntropy(
+ const uint32_t *population, size_t size) {
size_t sum;
double retval = ShannonEntropy(population, size, &sum);
if (retval < sum) {
- // At least one bit per literal is needed.
- retval = static_cast<double>(sum);
+ /* At least one bit per literal is needed. */
+ retval = (double)sum;
}
return retval;
}
-template<int kSize>
-double PopulationCost(const Histogram<kSize>& histogram) {
- static const double kOneSymbolHistogramCost = 12;
- static const double kTwoSymbolHistogramCost = 20;
- static const double kThreeSymbolHistogramCost = 28;
- static const double kFourSymbolHistogramCost = 37;
- if (histogram.total_count_ == 0) {
- return kOneSymbolHistogramCost;
- }
- int count = 0;
- int s[5];
- for (int i = 0; i < kSize; ++i) {
- if (histogram.data_[i] > 0) {
- s[count] = i;
- ++count;
- if (count > 4) break;
- }
- }
- if (count == 1) {
- return kOneSymbolHistogramCost;
- }
- if (count == 2) {
- return (kTwoSymbolHistogramCost +
- static_cast<double>(histogram.total_count_));
- }
- if (count == 3) {
- const uint32_t histo0 = histogram.data_[s[0]];
- const uint32_t histo1 = histogram.data_[s[1]];
- const uint32_t histo2 = histogram.data_[s[2]];
- const uint32_t histomax = std::max(histo0, std::max(histo1, histo2));
- return (kThreeSymbolHistogramCost +
- 2 * (histo0 + histo1 + histo2) - histomax);
- }
- if (count == 4) {
- uint32_t histo[4];
- for (int i = 0; i < 4; ++i) {
- histo[i] = histogram.data_[s[i]];
- }
- // Sort
- for (int i = 0; i < 4; ++i) {
- for (int j = i + 1; j < 4; ++j) {
- if (histo[j] > histo[i]) {
- std::swap(histo[j], histo[i]);
- }
- }
- }
- const uint32_t h23 = histo[2] + histo[3];
- const uint32_t histomax = std::max(h23, histo[0]);
- return (kFourSymbolHistogramCost +
- 3 * h23 + 2 * (histo[0] + histo[1]) - histomax);
- }
-
- // In this loop we compute the entropy of the histogram and simultaneously
- // build a simplified histogram of the code length codes where we use the
- // zero repeat code 17, but we don't use the non-zero repeat code 16.
- double bits = 0;
- size_t max_depth = 1;
- uint32_t depth_histo[kCodeLengthCodes] = { 0 };
- const double log2total = FastLog2(histogram.total_count_);
- for (size_t i = 0; i < kSize;) {
- if (histogram.data_[i] > 0) {
- // Compute -log2(P(symbol)) = -log2(count(symbol)/total_count) =
- // = log2(total_count) - log2(count(symbol))
- double log2p = log2total - FastLog2(histogram.data_[i]);
- // Approximate the bit depth by round(-log2(P(symbol)))
- size_t depth = static_cast<size_t>(log2p + 0.5);
- bits += histogram.data_[i] * log2p;
- if (depth > 15) {
- depth = 15;
- }
- if (depth > max_depth) {
- max_depth = depth;
- }
- ++depth_histo[depth];
- ++i;
- } else {
- // Compute the run length of zeros and add the appropriate number of 0 and
- // 17 code length codes to the code length code histogram.
- uint32_t reps = 1;
- for (size_t k = i + 1; k < kSize && histogram.data_[k] == 0; ++k) {
- ++reps;
- }
- i += reps;
- if (i == kSize) {
- // Don't add any cost for the last zero run, since these are encoded
- // only implicitly.
- break;
- }
- if (reps < 3) {
- depth_histo[0] += reps;
- } else {
- reps -= 2;
- while (reps > 0) {
- ++depth_histo[17];
- // Add the 3 extra bits for the 17 code length code.
- bits += 3;
- reps >>= 3;
- }
- }
- }
- }
- // Add the estimated encoding cost of the code length code histogram.
- bits += static_cast<double>(18 + 2 * max_depth);
- // Add the entropy of the code length code histogram.
- bits += BitsEntropy(depth_histo, kCodeLengthCodes);
- return bits;
-}
+BROTLI_INTERNAL double BrotliPopulationCostLiteral(const HistogramLiteral*);
+BROTLI_INTERNAL double BrotliPopulationCostCommand(const HistogramCommand*);
+BROTLI_INTERNAL double BrotliPopulationCostDistance(const HistogramDistance*);
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_BIT_COST_H_
+#endif /* BROTLI_ENC_BIT_COST_H_ */
diff --git a/thirdparty/brotli/enc/bit_cost_inc.h b/thirdparty/brotli/enc/bit_cost_inc.h
new file mode 100644
index 00000000..453c2260
--- /dev/null
+++ b/thirdparty/brotli/enc/bit_cost_inc.h
@@ -0,0 +1,127 @@
+/* NOLINT(build/header_guard) */
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* template parameters: FN */
+
+#define HistogramType FN(Histogram)
+
+double FN(BrotliPopulationCost)(const HistogramType* histogram) {
+ static const double kOneSymbolHistogramCost = 12;
+ static const double kTwoSymbolHistogramCost = 20;
+ static const double kThreeSymbolHistogramCost = 28;
+ static const double kFourSymbolHistogramCost = 37;
+ const size_t data_size = FN(HistogramDataSize)();
+ int count = 0;
+ size_t s[5];
+ double bits = 0.0;
+ size_t i;
+ if (histogram->total_count_ == 0) {
+ return kOneSymbolHistogramCost;
+ }
+ for (i = 0; i < data_size; ++i) {
+ if (histogram->data_[i] > 0) {
+ s[count] = i;
+ ++count;
+ if (count > 4) break;
+ }
+ }
+ if (count == 1) {
+ return kOneSymbolHistogramCost;
+ }
+ if (count == 2) {
+ return (kTwoSymbolHistogramCost + (double)histogram->total_count_);
+ }
+ if (count == 3) {
+ const uint32_t histo0 = histogram->data_[s[0]];
+ const uint32_t histo1 = histogram->data_[s[1]];
+ const uint32_t histo2 = histogram->data_[s[2]];
+ const uint32_t histomax =
+ BROTLI_MAX(uint32_t, histo0, BROTLI_MAX(uint32_t, histo1, histo2));
+ return (kThreeSymbolHistogramCost +
+ 2 * (histo0 + histo1 + histo2) - histomax);
+ }
+ if (count == 4) {
+ uint32_t histo[4];
+ uint32_t h23;
+ uint32_t histomax;
+ for (i = 0; i < 4; ++i) {
+ histo[i] = histogram->data_[s[i]];
+ }
+ /* Sort */
+ for (i = 0; i < 4; ++i) {
+ size_t j;
+ for (j = i + 1; j < 4; ++j) {
+ if (histo[j] > histo[i]) {
+ BROTLI_SWAP(uint32_t, histo, j, i);
+ }
+ }
+ }
+ h23 = histo[2] + histo[3];
+ histomax = BROTLI_MAX(uint32_t, h23, histo[0]);
+ return (kFourSymbolHistogramCost +
+ 3 * h23 + 2 * (histo[0] + histo[1]) - histomax);
+ }
+
+ {
+ /* In this loop we compute the entropy of the histogram and simultaneously
+ build a simplified histogram of the code length codes where we use the
+ zero repeat code 17, but we don't use the non-zero repeat code 16. */
+ size_t max_depth = 1;
+ uint32_t depth_histo[BROTLI_CODE_LENGTH_CODES] = { 0 };
+ const double log2total = FastLog2(histogram->total_count_);
+ for (i = 0; i < data_size;) {
+ if (histogram->data_[i] > 0) {
+ /* Compute -log2(P(symbol)) = -log2(count(symbol)/total_count) =
+ = log2(total_count) - log2(count(symbol)) */
+ double log2p = log2total - FastLog2(histogram->data_[i]);
+ /* Approximate the bit depth by round(-log2(P(symbol))) */
+ size_t depth = (size_t)(log2p + 0.5);
+ bits += histogram->data_[i] * log2p;
+ if (depth > 15) {
+ depth = 15;
+ }
+ if (depth > max_depth) {
+ max_depth = depth;
+ }
+ ++depth_histo[depth];
+ ++i;
+ } else {
+ /* Compute the run length of zeros and add the appropriate number of 0
+ and 17 code length codes to the code length code histogram. */
+ uint32_t reps = 1;
+ size_t k;
+ for (k = i + 1; k < data_size && histogram->data_[k] == 0; ++k) {
+ ++reps;
+ }
+ i += reps;
+ if (i == data_size) {
+ /* Don't add any cost for the last zero run, since these are encoded
+ only implicitly. */
+ break;
+ }
+ if (reps < 3) {
+ depth_histo[0] += reps;
+ } else {
+ reps -= 2;
+ while (reps > 0) {
+ ++depth_histo[BROTLI_REPEAT_ZERO_CODE_LENGTH];
+ /* Add the 3 extra bits for the 17 code length code. */
+ bits += 3;
+ reps >>= 3;
+ }
+ }
+ }
+ }
+ /* Add the estimated encoding cost of the code length code histogram. */
+ bits += (double)(18 + 2 * max_depth);
+ /* Add the entropy of the code length code histogram. */
+ bits += BitsEntropy(depth_histo, BROTLI_CODE_LENGTH_CODES);
+ }
+ return bits;
+}
+
+#undef HistogramType
diff --git a/thirdparty/brotli/enc/block_encoder_inc.h b/thirdparty/brotli/enc/block_encoder_inc.h
new file mode 100644
index 00000000..2a08f904
--- /dev/null
+++ b/thirdparty/brotli/enc/block_encoder_inc.h
@@ -0,0 +1,33 @@
+/* NOLINT(build/header_guard) */
+/* Copyright 2014 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* template parameters: FN */
+
+#define HistogramType FN(Histogram)
+
+/* Creates entropy codes for all block types and stores them to the bit
+ stream. */
+static void FN(BuildAndStoreEntropyCodes)(MemoryManager* m, BlockEncoder* self,
+ const HistogramType* histograms, const size_t histograms_size,
+ HuffmanTree* tree, size_t* storage_ix, uint8_t* storage) {
+ const size_t alphabet_size = self->alphabet_size_;
+ const size_t table_size = histograms_size * alphabet_size;
+ self->depths_ = BROTLI_ALLOC(m, uint8_t, table_size);
+ self->bits_ = BROTLI_ALLOC(m, uint16_t, table_size);
+ if (BROTLI_IS_OOM(m)) return;
+
+ {
+ size_t i;
+ for (i = 0; i < histograms_size; ++i) {
+ size_t ix = i * alphabet_size;
+ BuildAndStoreHuffmanTree(&histograms[i].data_[0], alphabet_size, tree,
+ &self->depths_[ix], &self->bits_[ix], storage_ix, storage);
+ }
+ }
+}
+
+#undef HistogramType
diff --git a/thirdparty/brotli/enc/block_splitter.c b/thirdparty/brotli/enc/block_splitter.c
new file mode 100644
index 00000000..a8708853
--- /dev/null
+++ b/thirdparty/brotli/enc/block_splitter.c
@@ -0,0 +1,197 @@
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Block split point selection utilities. */
+
+#include "./block_splitter.h"
+
+#include <assert.h>
+#include <string.h> /* memcpy, memset */
+
+#include "./bit_cost.h"
+#include "./cluster.h"
+#include "./command.h"
+#include "./fast_log.h"
+#include "./histogram.h"
+#include "./memory.h"
+#include "./port.h"
+#include "./quality.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+static const size_t kMaxLiteralHistograms = 100;
+static const size_t kMaxCommandHistograms = 50;
+static const double kLiteralBlockSwitchCost = 28.1;
+static const double kCommandBlockSwitchCost = 13.5;
+static const double kDistanceBlockSwitchCost = 14.6;
+static const size_t kLiteralStrideLength = 70;
+static const size_t kCommandStrideLength = 40;
+static const size_t kSymbolsPerLiteralHistogram = 544;
+static const size_t kSymbolsPerCommandHistogram = 530;
+static const size_t kSymbolsPerDistanceHistogram = 544;
+static const size_t kMinLengthForBlockSplitting = 128;
+static const size_t kIterMulForRefining = 2;
+static const size_t kMinItersForRefining = 100;
+
+static size_t CountLiterals(const Command* cmds, const size_t num_commands) {
+ /* Count how many we have. */
+ size_t total_length = 0;
+ size_t i;
+ for (i = 0; i < num_commands; ++i) {
+ total_length += cmds[i].insert_len_;
+ }
+ return total_length;
+}
+
+static void CopyLiteralsToByteArray(const Command* cmds,
+ const size_t num_commands,
+ const uint8_t* data,
+ const size_t offset,
+ const size_t mask,
+ uint8_t* literals) {
+ size_t pos = 0;
+ size_t from_pos = offset & mask;
+ size_t i;
+ for (i = 0; i < num_commands; ++i) {
+ size_t insert_len = cmds[i].insert_len_;
+ if (from_pos + insert_len > mask) {
+ size_t head_size = mask + 1 - from_pos;
+ memcpy(literals + pos, data + from_pos, head_size);
+ from_pos = 0;
+ pos += head_size;
+ insert_len -= head_size;
+ }
+ if (insert_len > 0) {
+ memcpy(literals + pos, data + from_pos, insert_len);
+ pos += insert_len;
+ }
+ from_pos = (from_pos + insert_len + CommandCopyLen(&cmds[i])) & mask;
+ }
+}
+
+static BROTLI_INLINE unsigned int MyRand(unsigned int* seed) {
+ *seed *= 16807U;
+ if (*seed == 0) {
+ *seed = 1;
+ }
+ return *seed;
+}
+
+static BROTLI_INLINE double BitCost(size_t count) {
+ return count == 0 ? -2.0 : FastLog2(count);
+}
+
+#define HISTOGRAMS_PER_BATCH 64
+#define CLUSTERS_PER_BATCH 16
+
+#define FN(X) X ## Literal
+#define DataType uint8_t
+/* NOLINTNEXTLINE(build/include) */
+#include "./block_splitter_inc.h"
+#undef DataType
+#undef FN
+
+#define FN(X) X ## Command
+#define DataType uint16_t
+/* NOLINTNEXTLINE(build/include) */
+#include "./block_splitter_inc.h"
+#undef FN
+
+#define FN(X) X ## Distance
+/* NOLINTNEXTLINE(build/include) */
+#include "./block_splitter_inc.h"
+#undef DataType
+#undef FN
+
+void BrotliInitBlockSplit(BlockSplit* self) {
+ self->num_types = 0;
+ self->num_blocks = 0;
+ self->types = 0;
+ self->lengths = 0;
+ self->types_alloc_size = 0;
+ self->lengths_alloc_size = 0;
+}
+
+void BrotliDestroyBlockSplit(MemoryManager* m, BlockSplit* self) {
+ BROTLI_FREE(m, self->types);
+ BROTLI_FREE(m, self->lengths);
+}
+
+void BrotliSplitBlock(MemoryManager* m,
+ const Command* cmds,
+ const size_t num_commands,
+ const uint8_t* data,
+ const size_t pos,
+ const size_t mask,
+ const BrotliEncoderParams* params,
+ BlockSplit* literal_split,
+ BlockSplit* insert_and_copy_split,
+ BlockSplit* dist_split) {
+ {
+ size_t literals_count = CountLiterals(cmds, num_commands);
+ uint8_t* literals = BROTLI_ALLOC(m, uint8_t, literals_count);
+ if (BROTLI_IS_OOM(m)) return;
+ /* Create a continuous array of literals. */
+ CopyLiteralsToByteArray(cmds, num_commands, data, pos, mask, literals);
+ /* Create the block split on the array of literals.
+ Literal histograms have alphabet size 256. */
+ SplitByteVectorLiteral(
+ m, literals, literals_count,
+ kSymbolsPerLiteralHistogram, kMaxLiteralHistograms,
+ kLiteralStrideLength, kLiteralBlockSwitchCost, params,
+ literal_split);
+ if (BROTLI_IS_OOM(m)) return;
+ BROTLI_FREE(m, literals);
+ }
+
+ {
+ /* Compute prefix codes for commands. */
+ uint16_t* insert_and_copy_codes = BROTLI_ALLOC(m, uint16_t, num_commands);
+ size_t i;
+ if (BROTLI_IS_OOM(m)) return;
+ for (i = 0; i < num_commands; ++i) {
+ insert_and_copy_codes[i] = cmds[i].cmd_prefix_;
+ }
+ /* Create the block split on the array of command prefixes. */
+ SplitByteVectorCommand(
+ m, insert_and_copy_codes, num_commands,
+ kSymbolsPerCommandHistogram, kMaxCommandHistograms,
+ kCommandStrideLength, kCommandBlockSwitchCost, params,
+ insert_and_copy_split);
+ if (BROTLI_IS_OOM(m)) return;
+ /* TODO: reuse for distances? */
+ BROTLI_FREE(m, insert_and_copy_codes);
+ }
+
+ {
+ /* Create a continuous array of distance prefixes. */
+ uint16_t* distance_prefixes = BROTLI_ALLOC(m, uint16_t, num_commands);
+ size_t j = 0;
+ size_t i;
+ if (BROTLI_IS_OOM(m)) return;
+ for (i = 0; i < num_commands; ++i) {
+ const Command* cmd = &cmds[i];
+ if (CommandCopyLen(cmd) && cmd->cmd_prefix_ >= 128) {
+ distance_prefixes[j++] = cmd->dist_prefix_;
+ }
+ }
+ /* Create the block split on the array of distance prefixes. */
+ SplitByteVectorDistance(
+ m, distance_prefixes, j,
+ kSymbolsPerDistanceHistogram, kMaxCommandHistograms,
+ kCommandStrideLength, kDistanceBlockSwitchCost, params,
+ dist_split);
+ if (BROTLI_IS_OOM(m)) return;
+ BROTLI_FREE(m, distance_prefixes);
+ }
+}
+
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/block_splitter.cc b/thirdparty/brotli/enc/block_splitter.cc
deleted file mode 100644
index db8d9c60..00000000
--- a/thirdparty/brotli/enc/block_splitter.cc
+++ /dev/null
@@ -1,505 +0,0 @@
-/* Copyright 2013 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-// Block split point selection utilities.
-
-#include "./block_splitter.h"
-
-#include <assert.h>
-#include <math.h>
-
-#include <algorithm>
-#include <cstring>
-#include <vector>
-
-#include "./cluster.h"
-#include "./command.h"
-#include "./fast_log.h"
-#include "./histogram.h"
-
-namespace brotli {
-
-static const size_t kMaxLiteralHistograms = 100;
-static const size_t kMaxCommandHistograms = 50;
-static const double kLiteralBlockSwitchCost = 28.1;
-static const double kCommandBlockSwitchCost = 13.5;
-static const double kDistanceBlockSwitchCost = 14.6;
-static const size_t kLiteralStrideLength = 70;
-static const size_t kCommandStrideLength = 40;
-static const size_t kSymbolsPerLiteralHistogram = 544;
-static const size_t kSymbolsPerCommandHistogram = 530;
-static const size_t kSymbolsPerDistanceHistogram = 544;
-static const size_t kMinLengthForBlockSplitting = 128;
-static const size_t kIterMulForRefining = 2;
-static const size_t kMinItersForRefining = 100;
-
-void CopyLiteralsToByteArray(const Command* cmds,
- const size_t num_commands,
- const uint8_t* data,
- const size_t offset,
- const size_t mask,
- std::vector<uint8_t>* literals) {
- // Count how many we have.
- size_t total_length = 0;
- for (size_t i = 0; i < num_commands; ++i) {
- total_length += cmds[i].insert_len_;
- }
- if (total_length == 0) {
- return;
- }
-
- // Allocate.
- literals->resize(total_length);
-
- // Loop again, and copy this time.
- size_t pos = 0;
- size_t from_pos = offset & mask;
- for (size_t i = 0; i < num_commands && pos < total_length; ++i) {
- size_t insert_len = cmds[i].insert_len_;
- if (from_pos + insert_len > mask) {
- size_t head_size = mask + 1 - from_pos;
- memcpy(&(*literals)[pos], data + from_pos, head_size);
- from_pos = 0;
- pos += head_size;
- insert_len -= head_size;
- }
- if (insert_len > 0) {
- memcpy(&(*literals)[pos], data + from_pos, insert_len);
- pos += insert_len;
- }
- from_pos = (from_pos + insert_len + cmds[i].copy_len()) & mask;
- }
-}
-
-inline static unsigned int MyRand(unsigned int* seed) {
- *seed *= 16807U;
- if (*seed == 0) {
- *seed = 1;
- }
- return *seed;
-}
-
-template<typename HistogramType, typename DataType>
-void InitialEntropyCodes(const DataType* data, size_t length,
- size_t stride,
- size_t num_histograms,
- HistogramType* histograms) {
- for (size_t i = 0; i < num_histograms; ++i) {
- histograms[i].Clear();
- }
- unsigned int seed = 7;
- size_t block_length = length / num_histograms;
- for (size_t i = 0; i < num_histograms; ++i) {
- size_t pos = length * i / num_histograms;
- if (i != 0) {
- pos += MyRand(&seed) % block_length;
- }
- if (pos + stride >= length) {
- pos = length - stride - 1;
- }
- histograms[i].Add(data + pos, stride);
- }
-}
-
-template<typename HistogramType, typename DataType>
-void RandomSample(unsigned int* seed,
- const DataType* data,
- size_t length,
- size_t stride,
- HistogramType* sample) {
- size_t pos = 0;
- if (stride >= length) {
- pos = 0;
- stride = length;
- } else {
- pos = MyRand(seed) % (length - stride + 1);
- }
- sample->Add(data + pos, stride);
-}
-
-template<typename HistogramType, typename DataType>
-void RefineEntropyCodes(const DataType* data, size_t length,
- size_t stride,
- size_t num_histograms,
- HistogramType* histograms) {
- size_t iters =
- kIterMulForRefining * length / stride + kMinItersForRefining;
- unsigned int seed = 7;
- iters = ((iters + num_histograms - 1) / num_histograms) * num_histograms;
- for (size_t iter = 0; iter < iters; ++iter) {
- HistogramType sample;
- RandomSample(&seed, data, length, stride, &sample);
- size_t ix = iter % num_histograms;
- histograms[ix].AddHistogram(sample);
- }
-}
-
-inline static double BitCost(size_t count) {
- return count == 0 ? -2.0 : FastLog2(count);
-}
-
-// Assigns a block id from the range [0, vec.size()) to each data element
-// in data[0..length) and fills in block_id[0..length) with the assigned values.
-// Returns the number of blocks, i.e. one plus the number of block switches.
-template<typename DataType, int kSize>
-size_t FindBlocks(const DataType* data, const size_t length,
- const double block_switch_bitcost,
- const size_t num_histograms,
- const Histogram<kSize>* histograms,
- double* insert_cost,
- double* cost,
- uint8_t* switch_signal,
- uint8_t *block_id) {
- if (num_histograms <= 1) {
- for (size_t i = 0; i < length; ++i) {
- block_id[i] = 0;
- }
- return 1;
- }
- const size_t bitmaplen = (num_histograms + 7) >> 3;
- assert(num_histograms <= 256);
- memset(insert_cost, 0, sizeof(insert_cost[0]) * kSize * num_histograms);
- for (size_t j = 0; j < num_histograms; ++j) {
- insert_cost[j] = FastLog2(static_cast<uint32_t>(
- histograms[j].total_count_));
- }
- for (size_t i = kSize; i != 0;) {
- --i;
- for (size_t j = 0; j < num_histograms; ++j) {
- insert_cost[i * num_histograms + j] =
- insert_cost[j] - BitCost(histograms[j].data_[i]);
- }
- }
- memset(cost, 0, sizeof(cost[0]) * num_histograms);
- memset(switch_signal, 0, sizeof(switch_signal[0]) * length * bitmaplen);
- // After each iteration of this loop, cost[k] will contain the difference
- // between the minimum cost of arriving at the current byte position using
- // entropy code k, and the minimum cost of arriving at the current byte
- // position. This difference is capped at the block switch cost, and if it
- // reaches block switch cost, it means that when we trace back from the last
- // position, we need to switch here.
- for (size_t byte_ix = 0; byte_ix < length; ++byte_ix) {
- size_t ix = byte_ix * bitmaplen;
- size_t insert_cost_ix = data[byte_ix] * num_histograms;
- double min_cost = 1e99;
- for (size_t k = 0; k < num_histograms; ++k) {
- // We are coding the symbol in data[byte_ix] with entropy code k.
- cost[k] += insert_cost[insert_cost_ix + k];
- if (cost[k] < min_cost) {
- min_cost = cost[k];
- block_id[byte_ix] = static_cast<uint8_t>(k);
- }
- }
- double block_switch_cost = block_switch_bitcost;
- // More blocks for the beginning.
- if (byte_ix < 2000) {
- block_switch_cost *= 0.77 + 0.07 * static_cast<double>(byte_ix) / 2000;
- }
- for (size_t k = 0; k < num_histograms; ++k) {
- cost[k] -= min_cost;
- if (cost[k] >= block_switch_cost) {
- cost[k] = block_switch_cost;
- const uint8_t mask = static_cast<uint8_t>(1u << (k & 7));
- assert((k >> 3) < bitmaplen);
- switch_signal[ix + (k >> 3)] |= mask;
- }
- }
- }
- // Now trace back from the last position and switch at the marked places.
- size_t byte_ix = length - 1;
- size_t ix = byte_ix * bitmaplen;
- uint8_t cur_id = block_id[byte_ix];
- size_t num_blocks = 1;
- while (byte_ix > 0) {
- --byte_ix;
- ix -= bitmaplen;
- const uint8_t mask = static_cast<uint8_t>(1u << (cur_id & 7));
- assert((static_cast<size_t>(cur_id) >> 3) < bitmaplen);
- if (switch_signal[ix + (cur_id >> 3)] & mask) {
- if (cur_id != block_id[byte_ix]) {
- cur_id = block_id[byte_ix];
- ++num_blocks;
- }
- }
- block_id[byte_ix] = cur_id;
- }
- return num_blocks;
-}
-
-static size_t RemapBlockIds(uint8_t* block_ids, const size_t length,
- uint16_t* new_id, const size_t num_histograms) {
- static const uint16_t kInvalidId = 256;
- for (size_t i = 0; i < num_histograms; ++i) {
- new_id[i] = kInvalidId;
- }
- uint16_t next_id = 0;
- for (size_t i = 0; i < length; ++i) {
- assert(block_ids[i] < num_histograms);
- if (new_id[block_ids[i]] == kInvalidId) {
- new_id[block_ids[i]] = next_id++;
- }
- }
- for (size_t i = 0; i < length; ++i) {
- block_ids[i] = static_cast<uint8_t>(new_id[block_ids[i]]);
- assert(block_ids[i] < num_histograms);
- }
- assert(next_id <= num_histograms);
- return next_id;
-}
-
-template<typename HistogramType, typename DataType>
-void BuildBlockHistograms(const DataType* data, const size_t length,
- const uint8_t* block_ids,
- const size_t num_histograms,
- HistogramType* histograms) {
- for (size_t i = 0; i < num_histograms; ++i) {
- histograms[i].Clear();
- }
- for (size_t i = 0; i < length; ++i) {
- histograms[block_ids[i]].Add(data[i]);
- }
-}
-
-template<typename HistogramType, typename DataType>
-void ClusterBlocks(const DataType* data, const size_t length,
- const size_t num_blocks,
- uint8_t* block_ids,
- BlockSplit* split) {
- static const size_t kMaxNumberOfBlockTypes = 256;
- static const size_t kHistogramsPerBatch = 64;
- static const size_t kClustersPerBatch = 16;
- std::vector<uint32_t> histogram_symbols(num_blocks);
- std::vector<uint32_t> block_lengths(num_blocks);
-
- size_t block_idx = 0;
- for (size_t i = 0; i < length; ++i) {
- assert(block_idx < num_blocks);
- ++block_lengths[block_idx];
- if (i + 1 == length || block_ids[i] != block_ids[i + 1]) {
- ++block_idx;
- }
- }
- assert(block_idx == num_blocks);
-
- const size_t expected_num_clusters =
- kClustersPerBatch *
- (num_blocks + kHistogramsPerBatch - 1) / kHistogramsPerBatch;
- std::vector<HistogramType> all_histograms;
- std::vector<uint32_t> cluster_size;
- all_histograms.reserve(expected_num_clusters);
- cluster_size.reserve(expected_num_clusters);
- size_t num_clusters = 0;
- std::vector<HistogramType> histograms(
- std::min(num_blocks, kHistogramsPerBatch));
- size_t max_num_pairs = kHistogramsPerBatch * kHistogramsPerBatch / 2;
- std::vector<HistogramPair> pairs(max_num_pairs + 1);
- size_t pos = 0;
- for (size_t i = 0; i < num_blocks; i += kHistogramsPerBatch) {
- const size_t num_to_combine = std::min(num_blocks - i, kHistogramsPerBatch);
- uint32_t sizes[kHistogramsPerBatch];
- uint32_t clusters[kHistogramsPerBatch];
- uint32_t symbols[kHistogramsPerBatch];
- uint32_t remap[kHistogramsPerBatch];
- for (size_t j = 0; j < num_to_combine; ++j) {
- histograms[j].Clear();
- for (size_t k = 0; k < block_lengths[i + j]; ++k) {
- histograms[j].Add(data[pos++]);
- }
- histograms[j].bit_cost_ = PopulationCost(histograms[j]);
- symbols[j] = clusters[j] = static_cast<uint32_t>(j);
- sizes[j] = 1;
- }
- size_t num_new_clusters = HistogramCombine(
- &histograms[0], sizes, symbols, clusters, &pairs[0], num_to_combine,
- num_to_combine, kHistogramsPerBatch, max_num_pairs);
- for (size_t j = 0; j < num_new_clusters; ++j) {
- all_histograms.push_back(histograms[clusters[j]]);
- cluster_size.push_back(sizes[clusters[j]]);
- remap[clusters[j]] = static_cast<uint32_t>(j);
- }
- for (size_t j = 0; j < num_to_combine; ++j) {
- histogram_symbols[i + j] =
- static_cast<uint32_t>(num_clusters) + remap[symbols[j]];
- }
- num_clusters += num_new_clusters;
- assert(num_clusters == cluster_size.size());
- assert(num_clusters == all_histograms.size());
- }
-
- max_num_pairs =
- std::min(64 * num_clusters, (num_clusters / 2) * num_clusters);
- pairs.resize(max_num_pairs + 1);
-
- std::vector<uint32_t> clusters(num_clusters);
- for (size_t i = 0; i < num_clusters; ++i) {
- clusters[i] = static_cast<uint32_t>(i);
- }
- size_t num_final_clusters =
- HistogramCombine(&all_histograms[0], &cluster_size[0],
- &histogram_symbols[0],
- &clusters[0], &pairs[0], num_clusters,
- num_blocks, kMaxNumberOfBlockTypes, max_num_pairs);
-
- static const uint32_t kInvalidIndex = std::numeric_limits<uint32_t>::max();
- std::vector<uint32_t> new_index(num_clusters, kInvalidIndex);
- uint32_t next_index = 0;
- pos = 0;
- for (size_t i = 0; i < num_blocks; ++i) {
- HistogramType histo;
- for (size_t j = 0; j < block_lengths[i]; ++j) {
- histo.Add(data[pos++]);
- }
- uint32_t best_out =
- i == 0 ? histogram_symbols[0] : histogram_symbols[i - 1];
- double best_bits = HistogramBitCostDistance(
- histo, all_histograms[best_out]);
- for (size_t j = 0; j < num_final_clusters; ++j) {
- const double cur_bits = HistogramBitCostDistance(
- histo, all_histograms[clusters[j]]);
- if (cur_bits < best_bits) {
- best_bits = cur_bits;
- best_out = clusters[j];
- }
- }
- histogram_symbols[i] = best_out;
- if (new_index[best_out] == kInvalidIndex) {
- new_index[best_out] = next_index++;
- }
- }
- uint8_t max_type = 0;
- uint32_t cur_length = 0;
- block_idx = 0;
- split->types.resize(num_blocks);
- split->lengths.resize(num_blocks);
- for (size_t i = 0; i < num_blocks; ++i) {
- cur_length += block_lengths[i];
- if (i + 1 == num_blocks ||
- histogram_symbols[i] != histogram_symbols[i + 1]) {
- const uint8_t id = static_cast<uint8_t>(new_index[histogram_symbols[i]]);
- split->types[block_idx] = id;
- split->lengths[block_idx] = cur_length;
- max_type = std::max(max_type, id);
- cur_length = 0;
- ++block_idx;
- }
- }
- split->types.resize(block_idx);
- split->lengths.resize(block_idx);
- split->num_types = static_cast<size_t>(max_type) + 1;
-}
-
-template<int kSize, typename DataType>
-void SplitByteVector(const std::vector<DataType>& data,
- const size_t literals_per_histogram,
- const size_t max_histograms,
- const size_t sampling_stride_length,
- const double block_switch_cost,
- BlockSplit* split) {
- if (data.empty()) {
- split->num_types = 1;
- return;
- } else if (data.size() < kMinLengthForBlockSplitting) {
- split->num_types = 1;
- split->types.push_back(0);
- split->lengths.push_back(static_cast<uint32_t>(data.size()));
- return;
- }
- size_t num_histograms = data.size() / literals_per_histogram + 1;
- if (num_histograms > max_histograms) {
- num_histograms = max_histograms;
- }
- Histogram<kSize>* histograms = new Histogram<kSize>[num_histograms];
- // Find good entropy codes.
- InitialEntropyCodes(&data[0], data.size(),
- sampling_stride_length,
- num_histograms, histograms);
- RefineEntropyCodes(&data[0], data.size(),
- sampling_stride_length,
- num_histograms, histograms);
- // Find a good path through literals with the good entropy codes.
- std::vector<uint8_t> block_ids(data.size());
- size_t num_blocks;
- const size_t bitmaplen = (num_histograms + 7) >> 3;
- double* insert_cost = new double[kSize * num_histograms];
- double *cost = new double[num_histograms];
- uint8_t* switch_signal = new uint8_t[data.size() * bitmaplen];
- uint16_t* new_id = new uint16_t[num_histograms];
- for (size_t i = 0; i < 10; ++i) {
- num_blocks = FindBlocks(&data[0], data.size(),
- block_switch_cost,
- num_histograms, histograms,
- insert_cost, cost, switch_signal,
- &block_ids[0]);
- num_histograms = RemapBlockIds(&block_ids[0], data.size(),
- new_id, num_histograms);
- BuildBlockHistograms(&data[0], data.size(), &block_ids[0],
- num_histograms, histograms);
- }
- delete[] insert_cost;
- delete[] cost;
- delete[] switch_signal;
- delete[] new_id;
- delete[] histograms;
- ClusterBlocks<Histogram<kSize> >(&data[0], data.size(), num_blocks,
- &block_ids[0], split);
-}
-
-void SplitBlock(const Command* cmds,
- const size_t num_commands,
- const uint8_t* data,
- const size_t pos,
- const size_t mask,
- BlockSplit* literal_split,
- BlockSplit* insert_and_copy_split,
- BlockSplit* dist_split) {
- {
- // Create a continuous array of literals.
- std::vector<uint8_t> literals;
- CopyLiteralsToByteArray(cmds, num_commands, data, pos, mask, &literals);
- // Create the block split on the array of literals.
- // Literal histograms have alphabet size 256.
- SplitByteVector<256>(
- literals,
- kSymbolsPerLiteralHistogram, kMaxLiteralHistograms,
- kLiteralStrideLength, kLiteralBlockSwitchCost,
- literal_split);
- }
-
- {
- // Compute prefix codes for commands.
- std::vector<uint16_t> insert_and_copy_codes(num_commands);
- for (size_t i = 0; i < num_commands; ++i) {
- insert_and_copy_codes[i] = cmds[i].cmd_prefix_;
- }
- // Create the block split on the array of command prefixes.
- SplitByteVector<kNumCommandPrefixes>(
- insert_and_copy_codes,
- kSymbolsPerCommandHistogram, kMaxCommandHistograms,
- kCommandStrideLength, kCommandBlockSwitchCost,
- insert_and_copy_split);
- }
-
- {
- // Create a continuous array of distance prefixes.
- std::vector<uint16_t> distance_prefixes(num_commands);
- size_t pos = 0;
- for (size_t i = 0; i < num_commands; ++i) {
- const Command& cmd = cmds[i];
- if (cmd.copy_len() && cmd.cmd_prefix_ >= 128) {
- distance_prefixes[pos++] = cmd.dist_prefix_;
- }
- }
- distance_prefixes.resize(pos);
- // Create the block split on the array of distance prefixes.
- SplitByteVector<kNumDistancePrefixes>(
- distance_prefixes,
- kSymbolsPerDistanceHistogram, kMaxCommandHistograms,
- kCommandStrideLength, kDistanceBlockSwitchCost,
- dist_split);
- }
-}
-
-} // namespace brotli
diff --git a/thirdparty/brotli/enc/block_splitter.h b/thirdparty/brotli/enc/block_splitter.h
index 4f692968..f96ae70c 100644
--- a/thirdparty/brotli/enc/block_splitter.h
+++ b/thirdparty/brotli/enc/block_splitter.h
@@ -4,58 +4,48 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Block split point selection utilities.
+/* Block split point selection utilities. */
#ifndef BROTLI_ENC_BLOCK_SPLITTER_H_
#define BROTLI_ENC_BLOCK_SPLITTER_H_
-#include <vector>
-
+#include "../common/types.h"
#include "./command.h"
-#include "./metablock.h"
-#include "./types.h"
-
-namespace brotli {
-
-struct BlockSplitIterator {
- explicit BlockSplitIterator(const BlockSplit& split)
- : split_(split), idx_(0), type_(0), length_(0) {
- if (!split.lengths.empty()) {
- length_ = split.lengths[0];
- }
- }
-
- void Next(void) {
- if (length_ == 0) {
- ++idx_;
- type_ = split_.types[idx_];
- length_ = split_.lengths[idx_];
- }
- --length_;
- }
-
- const BlockSplit& split_;
- size_t idx_;
- size_t type_;
- size_t length_;
-};
-
-void CopyLiteralsToByteArray(const Command* cmds,
- const size_t num_commands,
- const uint8_t* data,
- const size_t offset,
- const size_t mask,
- std::vector<uint8_t>* literals);
-
-void SplitBlock(const Command* cmds,
- const size_t num_commands,
- const uint8_t* data,
- const size_t offset,
- const size_t mask,
- BlockSplit* literal_split,
- BlockSplit* insert_and_copy_split,
- BlockSplit* dist_split);
-
-} // namespace brotli
-
-#endif // BROTLI_ENC_BLOCK_SPLITTER_H_
+#include "./memory.h"
+#include "./port.h"
+#include "./quality.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+typedef struct BlockSplit {
+ size_t num_types; /* Amount of distinct types */
+ size_t num_blocks; /* Amount of values in types and length */
+ uint8_t* types;
+ uint32_t* lengths;
+
+ size_t types_alloc_size;
+ size_t lengths_alloc_size;
+} BlockSplit;
+
+BROTLI_INTERNAL void BrotliInitBlockSplit(BlockSplit* self);
+BROTLI_INTERNAL void BrotliDestroyBlockSplit(MemoryManager* m,
+ BlockSplit* self);
+
+BROTLI_INTERNAL void BrotliSplitBlock(MemoryManager* m,
+ const Command* cmds,
+ const size_t num_commands,
+ const uint8_t* data,
+ const size_t offset,
+ const size_t mask,
+ const BrotliEncoderParams* params,
+ BlockSplit* literal_split,
+ BlockSplit* insert_and_copy_split,
+ BlockSplit* dist_split);
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
+
+#endif /* BROTLI_ENC_BLOCK_SPLITTER_H_ */
diff --git a/thirdparty/brotli/enc/block_splitter_inc.h b/thirdparty/brotli/enc/block_splitter_inc.h
new file mode 100644
index 00000000..9212d869
--- /dev/null
+++ b/thirdparty/brotli/enc/block_splitter_inc.h
@@ -0,0 +1,432 @@
+/* NOLINT(build/header_guard) */
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* template parameters: FN, DataType */
+
+#define HistogramType FN(Histogram)
+
+static void FN(InitialEntropyCodes)(const DataType* data, size_t length,
+ size_t stride,
+ size_t num_histograms,
+ HistogramType* histograms) {
+ unsigned int seed = 7;
+ size_t block_length = length / num_histograms;
+ size_t i;
+ FN(ClearHistograms)(histograms, num_histograms);
+ for (i = 0; i < num_histograms; ++i) {
+ size_t pos = length * i / num_histograms;
+ if (i != 0) {
+ pos += MyRand(&seed) % block_length;
+ }
+ if (pos + stride >= length) {
+ pos = length - stride - 1;
+ }
+ FN(HistogramAddVector)(&histograms[i], data + pos, stride);
+ }
+}
+
+static void FN(RandomSample)(unsigned int* seed,
+ const DataType* data,
+ size_t length,
+ size_t stride,
+ HistogramType* sample) {
+ size_t pos = 0;
+ if (stride >= length) {
+ pos = 0;
+ stride = length;
+ } else {
+ pos = MyRand(seed) % (length - stride + 1);
+ }
+ FN(HistogramAddVector)(sample, data + pos, stride);
+}
+
+static void FN(RefineEntropyCodes)(const DataType* data, size_t length,
+ size_t stride,
+ size_t num_histograms,
+ HistogramType* histograms) {
+ size_t iters =
+ kIterMulForRefining * length / stride + kMinItersForRefining;
+ unsigned int seed = 7;
+ size_t iter;
+ iters = ((iters + num_histograms - 1) / num_histograms) * num_histograms;
+ for (iter = 0; iter < iters; ++iter) {
+ HistogramType sample;
+ FN(HistogramClear)(&sample);
+ FN(RandomSample)(&seed, data, length, stride, &sample);
+ FN(HistogramAddHistogram)(&histograms[iter % num_histograms], &sample);
+ }
+}
+
+/* Assigns a block id from the range [0, vec.size()) to each data element
+ in data[0..length) and fills in block_id[0..length) with the assigned values.
+ Returns the number of blocks, i.e. one plus the number of block switches. */
+static size_t FN(FindBlocks)(const DataType* data, const size_t length,
+ const double block_switch_bitcost,
+ const size_t num_histograms,
+ const HistogramType* histograms,
+ double* insert_cost,
+ double* cost,
+ uint8_t* switch_signal,
+ uint8_t *block_id) {
+ const size_t data_size = FN(HistogramDataSize)();
+ const size_t bitmaplen = (num_histograms + 7) >> 3;
+ size_t num_blocks = 1;
+ size_t i;
+ size_t j;
+ assert(num_histograms <= 256);
+ if (num_histograms <= 1) {
+ for (i = 0; i < length; ++i) {
+ block_id[i] = 0;
+ }
+ return 1;
+ }
+ memset(insert_cost, 0, sizeof(insert_cost[0]) * data_size * num_histograms);
+ for (i = 0; i < num_histograms; ++i) {
+ insert_cost[i] = FastLog2((uint32_t)histograms[i].total_count_);
+ }
+ for (i = data_size; i != 0;) {
+ --i;
+ for (j = 0; j < num_histograms; ++j) {
+ insert_cost[i * num_histograms + j] =
+ insert_cost[j] - BitCost(histograms[j].data_[i]);
+ }
+ }
+ memset(cost, 0, sizeof(cost[0]) * num_histograms);
+ memset(switch_signal, 0, sizeof(switch_signal[0]) * length * bitmaplen);
+ /* After each iteration of this loop, cost[k] will contain the difference
+ between the minimum cost of arriving at the current byte position using
+ entropy code k, and the minimum cost of arriving at the current byte
+ position. This difference is capped at the block switch cost, and if it
+ reaches block switch cost, it means that when we trace back from the last
+ position, we need to switch here. */
+ for (i = 0; i < length; ++i) {
+ const size_t byte_ix = i;
+ size_t ix = byte_ix * bitmaplen;
+ size_t insert_cost_ix = data[byte_ix] * num_histograms;
+ double min_cost = 1e99;
+ double block_switch_cost = block_switch_bitcost;
+ size_t k;
+ for (k = 0; k < num_histograms; ++k) {
+ /* We are coding the symbol in data[byte_ix] with entropy code k. */
+ cost[k] += insert_cost[insert_cost_ix + k];
+ if (cost[k] < min_cost) {
+ min_cost = cost[k];
+ block_id[byte_ix] = (uint8_t)k;
+ }
+ }
+ /* More blocks for the beginning. */
+ if (byte_ix < 2000) {
+ block_switch_cost *= 0.77 + 0.07 * (double)byte_ix / 2000;
+ }
+ for (k = 0; k < num_histograms; ++k) {
+ cost[k] -= min_cost;
+ if (cost[k] >= block_switch_cost) {
+ const uint8_t mask = (uint8_t)(1u << (k & 7));
+ cost[k] = block_switch_cost;
+ assert((k >> 3) < bitmaplen);
+ switch_signal[ix + (k >> 3)] |= mask;
+ }
+ }
+ }
+ { /* Trace back from the last position and switch at the marked places. */
+ size_t byte_ix = length - 1;
+ size_t ix = byte_ix * bitmaplen;
+ uint8_t cur_id = block_id[byte_ix];
+ while (byte_ix > 0) {
+ const uint8_t mask = (uint8_t)(1u << (cur_id & 7));
+ assert(((size_t)cur_id >> 3) < bitmaplen);
+ --byte_ix;
+ ix -= bitmaplen;
+ if (switch_signal[ix + (cur_id >> 3)] & mask) {
+ if (cur_id != block_id[byte_ix]) {
+ cur_id = block_id[byte_ix];
+ ++num_blocks;
+ }
+ }
+ block_id[byte_ix] = cur_id;
+ }
+ }
+ return num_blocks;
+}
+
+static size_t FN(RemapBlockIds)(uint8_t* block_ids, const size_t length,
+ uint16_t* new_id, const size_t num_histograms) {
+ static const uint16_t kInvalidId = 256;
+ uint16_t next_id = 0;
+ size_t i;
+ for (i = 0; i < num_histograms; ++i) {
+ new_id[i] = kInvalidId;
+ }
+ for (i = 0; i < length; ++i) {
+ assert(block_ids[i] < num_histograms);
+ if (new_id[block_ids[i]] == kInvalidId) {
+ new_id[block_ids[i]] = next_id++;
+ }
+ }
+ for (i = 0; i < length; ++i) {
+ block_ids[i] = (uint8_t)new_id[block_ids[i]];
+ assert(block_ids[i] < num_histograms);
+ }
+ assert(next_id <= num_histograms);
+ return next_id;
+}
+
+static void FN(BuildBlockHistograms)(const DataType* data, const size_t length,
+ const uint8_t* block_ids,
+ const size_t num_histograms,
+ HistogramType* histograms) {
+ size_t i;
+ FN(ClearHistograms)(histograms, num_histograms);
+ for (i = 0; i < length; ++i) {
+ FN(HistogramAdd)(&histograms[block_ids[i]], data[i]);
+ }
+}
+
+static void FN(ClusterBlocks)(MemoryManager* m,
+ const DataType* data, const size_t length,
+ const size_t num_blocks,
+ uint8_t* block_ids,
+ BlockSplit* split) {
+ uint32_t* histogram_symbols = BROTLI_ALLOC(m, uint32_t, num_blocks);
+ uint32_t* block_lengths = BROTLI_ALLOC(m, uint32_t, num_blocks);
+ const size_t expected_num_clusters = CLUSTERS_PER_BATCH *
+ (num_blocks + HISTOGRAMS_PER_BATCH - 1) / HISTOGRAMS_PER_BATCH;
+ size_t all_histograms_size = 0;
+ size_t all_histograms_capacity = expected_num_clusters;
+ HistogramType* all_histograms =
+ BROTLI_ALLOC(m, HistogramType, all_histograms_capacity);
+ size_t cluster_size_size = 0;
+ size_t cluster_size_capacity = expected_num_clusters;
+ uint32_t* cluster_size = BROTLI_ALLOC(m, uint32_t, cluster_size_capacity);
+ size_t num_clusters = 0;
+ HistogramType* histograms = BROTLI_ALLOC(m, HistogramType,
+ BROTLI_MIN(size_t, num_blocks, HISTOGRAMS_PER_BATCH));
+ size_t max_num_pairs =
+ HISTOGRAMS_PER_BATCH * HISTOGRAMS_PER_BATCH / 2;
+ size_t pairs_capacity = max_num_pairs + 1;
+ HistogramPair* pairs = BROTLI_ALLOC(m, HistogramPair, pairs_capacity);
+ size_t pos = 0;
+ uint32_t* clusters;
+ size_t num_final_clusters;
+ static const uint32_t kInvalidIndex = BROTLI_UINT32_MAX;
+ uint32_t* new_index;
+ uint8_t max_type = 0;
+ size_t i;
+ uint32_t sizes[HISTOGRAMS_PER_BATCH] = { 0 };
+ uint32_t new_clusters[HISTOGRAMS_PER_BATCH] = { 0 };
+ uint32_t symbols[HISTOGRAMS_PER_BATCH] = { 0 };
+ uint32_t remap[HISTOGRAMS_PER_BATCH] = { 0 };
+
+ if (BROTLI_IS_OOM(m)) return;
+
+ memset(block_lengths, 0, num_blocks * sizeof(uint32_t));
+
+ {
+ size_t block_idx = 0;
+ for (i = 0; i < length; ++i) {
+ assert(block_idx < num_blocks);
+ ++block_lengths[block_idx];
+ if (i + 1 == length || block_ids[i] != block_ids[i + 1]) {
+ ++block_idx;
+ }
+ }
+ assert(block_idx == num_blocks);
+ }
+
+ for (i = 0; i < num_blocks; i += HISTOGRAMS_PER_BATCH) {
+ const size_t num_to_combine =
+ BROTLI_MIN(size_t, num_blocks - i, HISTOGRAMS_PER_BATCH);
+ size_t num_new_clusters;
+ size_t j;
+ for (j = 0; j < num_to_combine; ++j) {
+ size_t k;
+ FN(HistogramClear)(&histograms[j]);
+ for (k = 0; k < block_lengths[i + j]; ++k) {
+ FN(HistogramAdd)(&histograms[j], data[pos++]);
+ }
+ histograms[j].bit_cost_ = FN(BrotliPopulationCost)(&histograms[j]);
+ new_clusters[j] = (uint32_t)j;
+ symbols[j] = (uint32_t)j;
+ sizes[j] = 1;
+ }
+ num_new_clusters = FN(BrotliHistogramCombine)(
+ histograms, sizes, symbols, new_clusters, pairs, num_to_combine,
+ num_to_combine, HISTOGRAMS_PER_BATCH, max_num_pairs);
+ BROTLI_ENSURE_CAPACITY(m, HistogramType, all_histograms,
+ all_histograms_capacity, all_histograms_size + num_new_clusters);
+ BROTLI_ENSURE_CAPACITY(m, uint32_t, cluster_size,
+ cluster_size_capacity, cluster_size_size + num_new_clusters);
+ if (BROTLI_IS_OOM(m)) return;
+ for (j = 0; j < num_new_clusters; ++j) {
+ all_histograms[all_histograms_size++] = histograms[new_clusters[j]];
+ cluster_size[cluster_size_size++] = sizes[new_clusters[j]];
+ remap[new_clusters[j]] = (uint32_t)j;
+ }
+ for (j = 0; j < num_to_combine; ++j) {
+ histogram_symbols[i + j] = (uint32_t)num_clusters + remap[symbols[j]];
+ }
+ num_clusters += num_new_clusters;
+ assert(num_clusters == cluster_size_size);
+ assert(num_clusters == all_histograms_size);
+ }
+ BROTLI_FREE(m, histograms);
+
+ max_num_pairs =
+ BROTLI_MIN(size_t, 64 * num_clusters, (num_clusters / 2) * num_clusters);
+ if (pairs_capacity < max_num_pairs + 1) {
+ BROTLI_FREE(m, pairs);
+ pairs = BROTLI_ALLOC(m, HistogramPair, max_num_pairs + 1);
+ if (BROTLI_IS_OOM(m)) return;
+ }
+
+ clusters = BROTLI_ALLOC(m, uint32_t, num_clusters);
+ if (BROTLI_IS_OOM(m)) return;
+ for (i = 0; i < num_clusters; ++i) {
+ clusters[i] = (uint32_t)i;
+ }
+ num_final_clusters = FN(BrotliHistogramCombine)(
+ all_histograms, cluster_size, histogram_symbols, clusters, pairs,
+ num_clusters, num_blocks, BROTLI_MAX_NUMBER_OF_BLOCK_TYPES,
+ max_num_pairs);
+ BROTLI_FREE(m, pairs);
+ BROTLI_FREE(m, cluster_size);
+
+ new_index = BROTLI_ALLOC(m, uint32_t, num_clusters);
+ if (BROTLI_IS_OOM(m)) return;
+ for (i = 0; i < num_clusters; ++i) new_index[i] = kInvalidIndex;
+ pos = 0;
+ {
+ uint32_t next_index = 0;
+ for (i = 0; i < num_blocks; ++i) {
+ HistogramType histo;
+ size_t j;
+ uint32_t best_out;
+ double best_bits;
+ FN(HistogramClear)(&histo);
+ for (j = 0; j < block_lengths[i]; ++j) {
+ FN(HistogramAdd)(&histo, data[pos++]);
+ }
+ best_out = (i == 0) ? histogram_symbols[0] : histogram_symbols[i - 1];
+ best_bits =
+ FN(BrotliHistogramBitCostDistance)(&histo, &all_histograms[best_out]);
+ for (j = 0; j < num_final_clusters; ++j) {
+ const double cur_bits = FN(BrotliHistogramBitCostDistance)(
+ &histo, &all_histograms[clusters[j]]);
+ if (cur_bits < best_bits) {
+ best_bits = cur_bits;
+ best_out = clusters[j];
+ }
+ }
+ histogram_symbols[i] = best_out;
+ if (new_index[best_out] == kInvalidIndex) {
+ new_index[best_out] = next_index++;
+ }
+ }
+ }
+ BROTLI_FREE(m, clusters);
+ BROTLI_FREE(m, all_histograms);
+ BROTLI_ENSURE_CAPACITY(
+ m, uint8_t, split->types, split->types_alloc_size, num_blocks);
+ BROTLI_ENSURE_CAPACITY(
+ m, uint32_t, split->lengths, split->lengths_alloc_size, num_blocks);
+ if (BROTLI_IS_OOM(m)) return;
+ {
+ uint32_t cur_length = 0;
+ size_t block_idx = 0;
+ for (i = 0; i < num_blocks; ++i) {
+ cur_length += block_lengths[i];
+ if (i + 1 == num_blocks ||
+ histogram_symbols[i] != histogram_symbols[i + 1]) {
+ const uint8_t id = (uint8_t)new_index[histogram_symbols[i]];
+ split->types[block_idx] = id;
+ split->lengths[block_idx] = cur_length;
+ max_type = BROTLI_MAX(uint8_t, max_type, id);
+ cur_length = 0;
+ ++block_idx;
+ }
+ }
+ split->num_blocks = block_idx;
+ split->num_types = (size_t)max_type + 1;
+ }
+ BROTLI_FREE(m, new_index);
+ BROTLI_FREE(m, block_lengths);
+ BROTLI_FREE(m, histogram_symbols);
+}
+
+static void FN(SplitByteVector)(MemoryManager* m,
+ const DataType* data, const size_t length,
+ const size_t literals_per_histogram,
+ const size_t max_histograms,
+ const size_t sampling_stride_length,
+ const double block_switch_cost,
+ const BrotliEncoderParams* params,
+ BlockSplit* split) {
+ const size_t data_size = FN(HistogramDataSize)();
+ size_t num_histograms = length / literals_per_histogram + 1;
+ HistogramType* histograms;
+ if (num_histograms > max_histograms) {
+ num_histograms = max_histograms;
+ }
+ if (length == 0) {
+ split->num_types = 1;
+ return;
+ } else if (length < kMinLengthForBlockSplitting) {
+ BROTLI_ENSURE_CAPACITY(m, uint8_t,
+ split->types, split->types_alloc_size, split->num_blocks + 1);
+ BROTLI_ENSURE_CAPACITY(m, uint32_t,
+ split->lengths, split->lengths_alloc_size, split->num_blocks + 1);
+ if (BROTLI_IS_OOM(m)) return;
+ split->num_types = 1;
+ split->types[split->num_blocks] = 0;
+ split->lengths[split->num_blocks] = (uint32_t)length;
+ split->num_blocks++;
+ return;
+ }
+ histograms = BROTLI_ALLOC(m, HistogramType, num_histograms);
+ if (BROTLI_IS_OOM(m)) return;
+ /* Find good entropy codes. */
+ FN(InitialEntropyCodes)(data, length,
+ sampling_stride_length,
+ num_histograms, histograms);
+ FN(RefineEntropyCodes)(data, length,
+ sampling_stride_length,
+ num_histograms, histograms);
+ {
+ /* Find a good path through literals with the good entropy codes. */
+ uint8_t* block_ids = BROTLI_ALLOC(m, uint8_t, length);
+ size_t num_blocks;
+ const size_t bitmaplen = (num_histograms + 7) >> 3;
+ double* insert_cost = BROTLI_ALLOC(m, double, data_size * num_histograms);
+ double* cost = BROTLI_ALLOC(m, double, num_histograms);
+ uint8_t* switch_signal = BROTLI_ALLOC(m, uint8_t, length * bitmaplen);
+ uint16_t* new_id = BROTLI_ALLOC(m, uint16_t, num_histograms);
+ const size_t iters = params->quality < HQ_ZOPFLIFICATION_QUALITY ? 3 : 10;
+ size_t i;
+ if (BROTLI_IS_OOM(m)) return;
+ for (i = 0; i < iters; ++i) {
+ num_blocks = FN(FindBlocks)(data, length,
+ block_switch_cost,
+ num_histograms, histograms,
+ insert_cost, cost, switch_signal,
+ block_ids);
+ num_histograms = FN(RemapBlockIds)(block_ids, length,
+ new_id, num_histograms);
+ FN(BuildBlockHistograms)(data, length, block_ids,
+ num_histograms, histograms);
+ }
+ BROTLI_FREE(m, insert_cost);
+ BROTLI_FREE(m, cost);
+ BROTLI_FREE(m, switch_signal);
+ BROTLI_FREE(m, new_id);
+ BROTLI_FREE(m, histograms);
+ FN(ClusterBlocks)(m, data, length, num_blocks, block_ids, split);
+ if (BROTLI_IS_OOM(m)) return;
+ BROTLI_FREE(m, block_ids);
+ }
+}
+
+#undef HistogramType
diff --git a/thirdparty/brotli/enc/brotli_bit_stream.c b/thirdparty/brotli/enc/brotli_bit_stream.c
new file mode 100644
index 00000000..63897e57
--- /dev/null
+++ b/thirdparty/brotli/enc/brotli_bit_stream.c
@@ -0,0 +1,1334 @@
+/* Copyright 2014 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Brotli bit stream functions to support the low level format. There are no
+ compression algorithms here, just the right ordering of bits to match the
+ specs. */
+
+#include "./brotli_bit_stream.h"
+
+#include <string.h> /* memcpy, memset */
+
+#include "../common/constants.h"
+#include "../common/types.h"
+#include "./context.h"
+#include "./entropy_encode.h"
+#include "./entropy_encode_static.h"
+#include "./fast_log.h"
+#include "./memory.h"
+#include "./port.h"
+#include "./write_bits.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+#define MAX_HUFFMAN_TREE_SIZE (2 * BROTLI_NUM_COMMAND_SYMBOLS + 1)
+
+/* Represents the range of values belonging to a prefix code:
+ [offset, offset + 2^nbits) */
+typedef struct PrefixCodeRange {
+ uint32_t offset;
+ uint32_t nbits;
+} PrefixCodeRange;
+
+static const PrefixCodeRange
+ kBlockLengthPrefixCode[BROTLI_NUM_BLOCK_LEN_SYMBOLS] = {
+ { 1, 2}, { 5, 2}, { 9, 2}, {13, 2}, {17, 3}, { 25, 3}, { 33, 3},
+ {41, 3}, {49, 4}, {65, 4}, {81, 4}, {97, 4}, {113, 5}, {145, 5},
+ {177, 5}, { 209, 5}, { 241, 6}, { 305, 6}, { 369, 7}, { 497, 8},
+ {753, 9}, {1265, 10}, {2289, 11}, {4337, 12}, {8433, 13}, {16625, 24}
+};
+
+static BROTLI_INLINE uint32_t BlockLengthPrefixCode(uint32_t len) {
+ uint32_t code = (len >= 177) ? (len >= 753 ? 20 : 14) : (len >= 41 ? 7 : 0);
+ while (code < (BROTLI_NUM_BLOCK_LEN_SYMBOLS - 1) &&
+ len >= kBlockLengthPrefixCode[code + 1].offset) ++code;
+ return code;
+}
+
+static BROTLI_INLINE void GetBlockLengthPrefixCode(uint32_t len, size_t* code,
+ uint32_t* n_extra, uint32_t* extra) {
+ *code = BlockLengthPrefixCode(len);
+ *n_extra = kBlockLengthPrefixCode[*code].nbits;
+ *extra = len - kBlockLengthPrefixCode[*code].offset;
+}
+
+typedef struct BlockTypeCodeCalculator {
+ size_t last_type;
+ size_t second_last_type;
+} BlockTypeCodeCalculator;
+
+static void InitBlockTypeCodeCalculator(BlockTypeCodeCalculator* self) {
+ self->last_type = 1;
+ self->second_last_type = 0;
+}
+
+static BROTLI_INLINE size_t NextBlockTypeCode(
+ BlockTypeCodeCalculator* calculator, uint8_t type) {
+ size_t type_code = (type == calculator->last_type + 1) ? 1u :
+ (type == calculator->second_last_type) ? 0u : type + 2u;
+ calculator->second_last_type = calculator->last_type;
+ calculator->last_type = type;
+ return type_code;
+}
+
+/* nibblesbits represents the 2 bits to encode MNIBBLES (0-3)
+ REQUIRES: length > 0
+ REQUIRES: length <= (1 << 24) */
+static void BrotliEncodeMlen(size_t length, uint64_t* bits,
+ size_t* numbits, uint64_t* nibblesbits) {
+ size_t lg = (length == 1) ? 1 : Log2FloorNonZero((uint32_t)(length - 1)) + 1;
+ size_t mnibbles = (lg < 16 ? 16 : (lg + 3)) / 4;
+ assert(length > 0);
+ assert(length <= (1 << 24));
+ assert(lg <= 24);
+ *nibblesbits = mnibbles - 4;
+ *numbits = mnibbles * 4;
+ *bits = length - 1;
+}
+
+static BROTLI_INLINE void StoreCommandExtra(
+ const Command* cmd, size_t* storage_ix, uint8_t* storage) {
+ uint32_t copylen_code = CommandCopyLenCode(cmd);
+ uint16_t inscode = GetInsertLengthCode(cmd->insert_len_);
+ uint16_t copycode = GetCopyLengthCode(copylen_code);
+ uint32_t insnumextra = GetInsertExtra(inscode);
+ uint64_t insextraval = cmd->insert_len_ - GetInsertBase(inscode);
+ uint64_t copyextraval = copylen_code - GetCopyBase(copycode);
+ uint64_t bits = (copyextraval << insnumextra) | insextraval;
+ BrotliWriteBits(
+ insnumextra + GetCopyExtra(copycode), bits, storage_ix, storage);
+}
+
+/* Data structure that stores almost everything that is needed to encode each
+ block switch command. */
+typedef struct BlockSplitCode {
+ BlockTypeCodeCalculator type_code_calculator;
+ uint8_t type_depths[BROTLI_MAX_BLOCK_TYPE_SYMBOLS];
+ uint16_t type_bits[BROTLI_MAX_BLOCK_TYPE_SYMBOLS];
+ uint8_t length_depths[BROTLI_NUM_BLOCK_LEN_SYMBOLS];
+ uint16_t length_bits[BROTLI_NUM_BLOCK_LEN_SYMBOLS];
+} BlockSplitCode;
+
+/* Stores a number between 0 and 255. */
+static void StoreVarLenUint8(size_t n, size_t* storage_ix, uint8_t* storage) {
+ if (n == 0) {
+ BrotliWriteBits(1, 0, storage_ix, storage);
+ } else {
+ size_t nbits = Log2FloorNonZero(n);
+ BrotliWriteBits(1, 1, storage_ix, storage);
+ BrotliWriteBits(3, nbits, storage_ix, storage);
+ BrotliWriteBits(nbits, n - ((size_t)1 << nbits), storage_ix, storage);
+ }
+}
+
+/* Stores the compressed meta-block header.
+ REQUIRES: length > 0
+ REQUIRES: length <= (1 << 24) */
+static void StoreCompressedMetaBlockHeader(BROTLI_BOOL is_final_block,
+ size_t length,
+ size_t* storage_ix,
+ uint8_t* storage) {
+ uint64_t lenbits;
+ size_t nlenbits;
+ uint64_t nibblesbits;
+
+ /* Write ISLAST bit. */
+ BrotliWriteBits(1, (uint64_t)is_final_block, storage_ix, storage);
+ /* Write ISEMPTY bit. */
+ if (is_final_block) {
+ BrotliWriteBits(1, 0, storage_ix, storage);
+ }
+
+ BrotliEncodeMlen(length, &lenbits, &nlenbits, &nibblesbits);
+ BrotliWriteBits(2, nibblesbits, storage_ix, storage);
+ BrotliWriteBits(nlenbits, lenbits, storage_ix, storage);
+
+ if (!is_final_block) {
+ /* Write ISUNCOMPRESSED bit. */
+ BrotliWriteBits(1, 0, storage_ix, storage);
+ }
+}
+
+/* Stores the uncompressed meta-block header.
+ REQUIRES: length > 0
+ REQUIRES: length <= (1 << 24) */
+static void BrotliStoreUncompressedMetaBlockHeader(size_t length,
+ size_t* storage_ix,
+ uint8_t* storage) {
+ uint64_t lenbits;
+ size_t nlenbits;
+ uint64_t nibblesbits;
+
+ /* Write ISLAST bit.
+ Uncompressed block cannot be the last one, so set to 0. */
+ BrotliWriteBits(1, 0, storage_ix, storage);
+ BrotliEncodeMlen(length, &lenbits, &nlenbits, &nibblesbits);
+ BrotliWriteBits(2, nibblesbits, storage_ix, storage);
+ BrotliWriteBits(nlenbits, lenbits, storage_ix, storage);
+ /* Write ISUNCOMPRESSED bit. */
+ BrotliWriteBits(1, 1, storage_ix, storage);
+}
+
+static void BrotliStoreHuffmanTreeOfHuffmanTreeToBitMask(
+ const int num_codes, const uint8_t* code_length_bitdepth,
+ size_t* storage_ix, uint8_t* storage) {
+ static const uint8_t kStorageOrder[BROTLI_CODE_LENGTH_CODES] = {
+ 1, 2, 3, 4, 0, 5, 17, 6, 16, 7, 8, 9, 10, 11, 12, 13, 14, 15
+ };
+ /* The bit lengths of the Huffman code over the code length alphabet
+ are compressed with the following static Huffman code:
+ Symbol Code
+ ------ ----
+ 0 00
+ 1 1110
+ 2 110
+ 3 01
+ 4 10
+ 5 1111 */
+ static const uint8_t kHuffmanBitLengthHuffmanCodeSymbols[6] = {
+ 0, 7, 3, 2, 1, 15
+ };
+ static const uint8_t kHuffmanBitLengthHuffmanCodeBitLengths[6] = {
+ 2, 4, 3, 2, 2, 4
+ };
+
+ size_t skip_some = 0; /* skips none. */
+
+ /* Throw away trailing zeros: */
+ size_t codes_to_store = BROTLI_CODE_LENGTH_CODES;
+ if (num_codes > 1) {
+ for (; codes_to_store > 0; --codes_to_store) {
+ if (code_length_bitdepth[kStorageOrder[codes_to_store - 1]] != 0) {
+ break;
+ }
+ }
+ }
+ if (code_length_bitdepth[kStorageOrder[0]] == 0 &&
+ code_length_bitdepth[kStorageOrder[1]] == 0) {
+ skip_some = 2; /* skips two. */
+ if (code_length_bitdepth[kStorageOrder[2]] == 0) {
+ skip_some = 3; /* skips three. */
+ }
+ }
+ BrotliWriteBits(2, skip_some, storage_ix, storage);
+ {
+ size_t i;
+ for (i = skip_some; i < codes_to_store; ++i) {
+ size_t l = code_length_bitdepth[kStorageOrder[i]];
+ BrotliWriteBits(kHuffmanBitLengthHuffmanCodeBitLengths[l],
+ kHuffmanBitLengthHuffmanCodeSymbols[l], storage_ix, storage);
+ }
+ }
+}
+
+static void BrotliStoreHuffmanTreeToBitMask(
+ const size_t huffman_tree_size, const uint8_t* huffman_tree,
+ const uint8_t* huffman_tree_extra_bits, const uint8_t* code_length_bitdepth,
+ const uint16_t* code_length_bitdepth_symbols,
+ size_t* BROTLI_RESTRICT storage_ix, uint8_t* BROTLI_RESTRICT storage) {
+ size_t i;
+ for (i = 0; i < huffman_tree_size; ++i) {
+ size_t ix = huffman_tree[i];
+ BrotliWriteBits(code_length_bitdepth[ix], code_length_bitdepth_symbols[ix],
+ storage_ix, storage);
+ /* Extra bits */
+ switch (ix) {
+ case BROTLI_REPEAT_PREVIOUS_CODE_LENGTH:
+ BrotliWriteBits(2, huffman_tree_extra_bits[i], storage_ix, storage);
+ break;
+ case BROTLI_REPEAT_ZERO_CODE_LENGTH:
+ BrotliWriteBits(3, huffman_tree_extra_bits[i], storage_ix, storage);
+ break;
+ }
+ }
+}
+
+static void StoreSimpleHuffmanTree(const uint8_t* depths,
+ size_t symbols[4],
+ size_t num_symbols,
+ size_t max_bits,
+ size_t *storage_ix, uint8_t *storage) {
+ /* value of 1 indicates a simple Huffman code */
+ BrotliWriteBits(2, 1, storage_ix, storage);
+ BrotliWriteBits(2, num_symbols - 1, storage_ix, storage); /* NSYM - 1 */
+
+ {
+ /* Sort */
+ size_t i;
+ for (i = 0; i < num_symbols; i++) {
+ size_t j;
+ for (j = i + 1; j < num_symbols; j++) {
+ if (depths[symbols[j]] < depths[symbols[i]]) {
+ BROTLI_SWAP(size_t, symbols, j, i);
+ }
+ }
+ }
+ }
+
+ if (num_symbols == 2) {
+ BrotliWriteBits(max_bits, symbols[0], storage_ix, storage);
+ BrotliWriteBits(max_bits, symbols[1], storage_ix, storage);
+ } else if (num_symbols == 3) {
+ BrotliWriteBits(max_bits, symbols[0], storage_ix, storage);
+ BrotliWriteBits(max_bits, symbols[1], storage_ix, storage);
+ BrotliWriteBits(max_bits, symbols[2], storage_ix, storage);
+ } else {
+ BrotliWriteBits(max_bits, symbols[0], storage_ix, storage);
+ BrotliWriteBits(max_bits, symbols[1], storage_ix, storage);
+ BrotliWriteBits(max_bits, symbols[2], storage_ix, storage);
+ BrotliWriteBits(max_bits, symbols[3], storage_ix, storage);
+ /* tree-select */
+ BrotliWriteBits(1, depths[symbols[0]] == 1 ? 1 : 0, storage_ix, storage);
+ }
+}
+
+/* num = alphabet size
+ depths = symbol depths */
+void BrotliStoreHuffmanTree(const uint8_t* depths, size_t num,
+ HuffmanTree* tree,
+ size_t *storage_ix, uint8_t *storage) {
+ /* Write the Huffman tree into the brotli-representation.
+ The command alphabet is the largest, so this allocation will fit all
+ alphabets. */
+ uint8_t huffman_tree[BROTLI_NUM_COMMAND_SYMBOLS];
+ uint8_t huffman_tree_extra_bits[BROTLI_NUM_COMMAND_SYMBOLS];
+ size_t huffman_tree_size = 0;
+ uint8_t code_length_bitdepth[BROTLI_CODE_LENGTH_CODES] = { 0 };
+ uint16_t code_length_bitdepth_symbols[BROTLI_CODE_LENGTH_CODES];
+ uint32_t huffman_tree_histogram[BROTLI_CODE_LENGTH_CODES] = { 0 };
+ size_t i;
+ int num_codes = 0;
+ size_t code = 0;
+
+ assert(num <= BROTLI_NUM_COMMAND_SYMBOLS);
+
+ BrotliWriteHuffmanTree(depths, num, &huffman_tree_size, huffman_tree,
+ huffman_tree_extra_bits);
+
+ /* Calculate the statistics of the Huffman tree in brotli-representation. */
+ for (i = 0; i < huffman_tree_size; ++i) {
+ ++huffman_tree_histogram[huffman_tree[i]];
+ }
+
+ for (i = 0; i < BROTLI_CODE_LENGTH_CODES; ++i) {
+ if (huffman_tree_histogram[i]) {
+ if (num_codes == 0) {
+ code = i;
+ num_codes = 1;
+ } else if (num_codes == 1) {
+ num_codes = 2;
+ break;
+ }
+ }
+ }
+
+ /* Calculate another Huffman tree to use for compressing both the
+ earlier Huffman tree with. */
+ BrotliCreateHuffmanTree(huffman_tree_histogram, BROTLI_CODE_LENGTH_CODES,
+ 5, tree, code_length_bitdepth);
+ BrotliConvertBitDepthsToSymbols(code_length_bitdepth,
+ BROTLI_CODE_LENGTH_CODES,
+ code_length_bitdepth_symbols);
+
+ /* Now, we have all the data, let's start storing it */
+ BrotliStoreHuffmanTreeOfHuffmanTreeToBitMask(num_codes, code_length_bitdepth,
+ storage_ix, storage);
+
+ if (num_codes == 1) {
+ code_length_bitdepth[code] = 0;
+ }
+
+ /* Store the real huffman tree now. */
+ BrotliStoreHuffmanTreeToBitMask(huffman_tree_size,
+ huffman_tree,
+ huffman_tree_extra_bits,
+ code_length_bitdepth,
+ code_length_bitdepth_symbols,
+ storage_ix, storage);
+}
+
+/* Builds a Huffman tree from histogram[0:length] into depth[0:length] and
+ bits[0:length] and stores the encoded tree to the bit stream. */
+static void BuildAndStoreHuffmanTree(const uint32_t *histogram,
+ const size_t length,
+ HuffmanTree* tree,
+ uint8_t* depth,
+ uint16_t* bits,
+ size_t* storage_ix,
+ uint8_t* storage) {
+ size_t count = 0;
+ size_t s4[4] = { 0 };
+ size_t i;
+ size_t max_bits = 0;
+ for (i = 0; i < length; i++) {
+ if (histogram[i]) {
+ if (count < 4) {
+ s4[count] = i;
+ } else if (count > 4) {
+ break;
+ }
+ count++;
+ }
+ }
+
+ {
+ size_t max_bits_counter = length - 1;
+ while (max_bits_counter) {
+ max_bits_counter >>= 1;
+ ++max_bits;
+ }
+ }
+
+ if (count <= 1) {
+ BrotliWriteBits(4, 1, storage_ix, storage);
+ BrotliWriteBits(max_bits, s4[0], storage_ix, storage);
+ depth[s4[0]] = 0;
+ bits[s4[0]] = 0;
+ return;
+ }
+
+ memset(depth, 0, length * sizeof(depth[0]));
+ BrotliCreateHuffmanTree(histogram, length, 15, tree, depth);
+ BrotliConvertBitDepthsToSymbols(depth, length, bits);
+
+ if (count <= 4) {
+ StoreSimpleHuffmanTree(depth, s4, count, max_bits, storage_ix, storage);
+ } else {
+ BrotliStoreHuffmanTree(depth, length, tree, storage_ix, storage);
+ }
+}
+
+static BROTLI_INLINE BROTLI_BOOL SortHuffmanTree(
+ const HuffmanTree* v0, const HuffmanTree* v1) {
+ return TO_BROTLI_BOOL(v0->total_count_ < v1->total_count_);
+}
+
+void BrotliBuildAndStoreHuffmanTreeFast(MemoryManager* m,
+ const uint32_t* histogram,
+ const size_t histogram_total,
+ const size_t max_bits,
+ uint8_t* depth, uint16_t* bits,
+ size_t* storage_ix,
+ uint8_t* storage) {
+ size_t count = 0;
+ size_t symbols[4] = { 0 };
+ size_t length = 0;
+ size_t total = histogram_total;
+ while (total != 0) {
+ if (histogram[length]) {
+ if (count < 4) {
+ symbols[count] = length;
+ }
+ ++count;
+ total -= histogram[length];
+ }
+ ++length;
+ }
+
+ if (count <= 1) {
+ BrotliWriteBits(4, 1, storage_ix, storage);
+ BrotliWriteBits(max_bits, symbols[0], storage_ix, storage);
+ depth[symbols[0]] = 0;
+ bits[symbols[0]] = 0;
+ return;
+ }
+
+ memset(depth, 0, length * sizeof(depth[0]));
+ {
+ const size_t max_tree_size = 2 * length + 1;
+ HuffmanTree* tree = BROTLI_ALLOC(m, HuffmanTree, max_tree_size);
+ uint32_t count_limit;
+ if (BROTLI_IS_OOM(m)) return;
+ for (count_limit = 1; ; count_limit *= 2) {
+ HuffmanTree* node = tree;
+ size_t l;
+ for (l = length; l != 0;) {
+ --l;
+ if (histogram[l]) {
+ if (PREDICT_TRUE(histogram[l] >= count_limit)) {
+ InitHuffmanTree(node, histogram[l], -1, (int16_t)l);
+ } else {
+ InitHuffmanTree(node, count_limit, -1, (int16_t)l);
+ }
+ ++node;
+ }
+ }
+ {
+ const int n = (int)(node - tree);
+ HuffmanTree sentinel;
+ int i = 0; /* Points to the next leaf node. */
+ int j = n + 1; /* Points to the next non-leaf node. */
+ int k;
+
+ SortHuffmanTreeItems(tree, (size_t)n, SortHuffmanTree);
+ /* The nodes are:
+ [0, n): the sorted leaf nodes that we start with.
+ [n]: we add a sentinel here.
+ [n + 1, 2n): new parent nodes are added here, starting from
+ (n+1). These are naturally in ascending order.
+ [2n]: we add a sentinel at the end as well.
+ There will be (2n+1) elements at the end. */
+ InitHuffmanTree(&sentinel, BROTLI_UINT32_MAX, -1, -1);
+ *node++ = sentinel;
+ *node++ = sentinel;
+
+ for (k = n - 1; k > 0; --k) {
+ int left, right;
+ if (tree[i].total_count_ <= tree[j].total_count_) {
+ left = i;
+ ++i;
+ } else {
+ left = j;
+ ++j;
+ }
+ if (tree[i].total_count_ <= tree[j].total_count_) {
+ right = i;
+ ++i;
+ } else {
+ right = j;
+ ++j;
+ }
+ /* The sentinel node becomes the parent node. */
+ node[-1].total_count_ =
+ tree[left].total_count_ + tree[right].total_count_;
+ node[-1].index_left_ = (int16_t)left;
+ node[-1].index_right_or_value_ = (int16_t)right;
+ /* Add back the last sentinel node. */
+ *node++ = sentinel;
+ }
+ if (BrotliSetDepth(2 * n - 1, tree, depth, 14)) {
+ /* We need to pack the Huffman tree in 14 bits. If this was not
+ successful, add fake entities to the lowest values and retry. */
+ break;
+ }
+ }
+ }
+ BROTLI_FREE(m, tree);
+ }
+ BrotliConvertBitDepthsToSymbols(depth, length, bits);
+ if (count <= 4) {
+ size_t i;
+ /* value of 1 indicates a simple Huffman code */
+ BrotliWriteBits(2, 1, storage_ix, storage);
+ BrotliWriteBits(2, count - 1, storage_ix, storage); /* NSYM - 1 */
+
+ /* Sort */
+ for (i = 0; i < count; i++) {
+ size_t j;
+ for (j = i + 1; j < count; j++) {
+ if (depth[symbols[j]] < depth[symbols[i]]) {
+ BROTLI_SWAP(size_t, symbols, j, i);
+ }
+ }
+ }
+
+ if (count == 2) {
+ BrotliWriteBits(max_bits, symbols[0], storage_ix, storage);
+ BrotliWriteBits(max_bits, symbols[1], storage_ix, storage);
+ } else if (count == 3) {
+ BrotliWriteBits(max_bits, symbols[0], storage_ix, storage);
+ BrotliWriteBits(max_bits, symbols[1], storage_ix, storage);
+ BrotliWriteBits(max_bits, symbols[2], storage_ix, storage);
+ } else {
+ BrotliWriteBits(max_bits, symbols[0], storage_ix, storage);
+ BrotliWriteBits(max_bits, symbols[1], storage_ix, storage);
+ BrotliWriteBits(max_bits, symbols[2], storage_ix, storage);
+ BrotliWriteBits(max_bits, symbols[3], storage_ix, storage);
+ /* tree-select */
+ BrotliWriteBits(1, depth[symbols[0]] == 1 ? 1 : 0, storage_ix, storage);
+ }
+ } else {
+ uint8_t previous_value = 8;
+ size_t i;
+ /* Complex Huffman Tree */
+ StoreStaticCodeLengthCode(storage_ix, storage);
+
+ /* Actual rle coding. */
+ for (i = 0; i < length;) {
+ const uint8_t value = depth[i];
+ size_t reps = 1;
+ size_t k;
+ for (k = i + 1; k < length && depth[k] == value; ++k) {
+ ++reps;
+ }
+ i += reps;
+ if (value == 0) {
+ BrotliWriteBits(kZeroRepsDepth[reps], kZeroRepsBits[reps],
+ storage_ix, storage);
+ } else {
+ if (previous_value != value) {
+ BrotliWriteBits(kCodeLengthDepth[value], kCodeLengthBits[value],
+ storage_ix, storage);
+ --reps;
+ }
+ if (reps < 3) {
+ while (reps != 0) {
+ reps--;
+ BrotliWriteBits(kCodeLengthDepth[value], kCodeLengthBits[value],
+ storage_ix, storage);
+ }
+ } else {
+ reps -= 3;
+ BrotliWriteBits(kNonZeroRepsDepth[reps], kNonZeroRepsBits[reps],
+ storage_ix, storage);
+ }
+ previous_value = value;
+ }
+ }
+ }
+}
+
+static size_t IndexOf(const uint8_t* v, size_t v_size, uint8_t value) {
+ size_t i = 0;
+ for (; i < v_size; ++i) {
+ if (v[i] == value) return i;
+ }
+ return i;
+}
+
+static void MoveToFront(uint8_t* v, size_t index) {
+ uint8_t value = v[index];
+ size_t i;
+ for (i = index; i != 0; --i) {
+ v[i] = v[i - 1];
+ }
+ v[0] = value;
+}
+
+static void MoveToFrontTransform(const uint32_t* BROTLI_RESTRICT v_in,
+ const size_t v_size,
+ uint32_t* v_out) {
+ size_t i;
+ uint8_t mtf[256];
+ uint32_t max_value;
+ if (v_size == 0) {
+ return;
+ }
+ max_value = v_in[0];
+ for (i = 1; i < v_size; ++i) {
+ if (v_in[i] > max_value) max_value = v_in[i];
+ }
+ assert(max_value < 256u);
+ for (i = 0; i <= max_value; ++i) {
+ mtf[i] = (uint8_t)i;
+ }
+ {
+ size_t mtf_size = max_value + 1;
+ for (i = 0; i < v_size; ++i) {
+ size_t index = IndexOf(mtf, mtf_size, (uint8_t)v_in[i]);
+ assert(index < mtf_size);
+ v_out[i] = (uint32_t)index;
+ MoveToFront(mtf, index);
+ }
+ }
+}
+
+/* Finds runs of zeros in v[0..in_size) and replaces them with a prefix code of
+ the run length plus extra bits (lower 9 bits is the prefix code and the rest
+ are the extra bits). Non-zero values in v[] are shifted by
+ *max_length_prefix. Will not create prefix codes bigger than the initial
+ value of *max_run_length_prefix. The prefix code of run length L is simply
+ Log2Floor(L) and the number of extra bits is the same as the prefix code. */
+static void RunLengthCodeZeros(const size_t in_size,
+ uint32_t* BROTLI_RESTRICT v, size_t* BROTLI_RESTRICT out_size,
+ uint32_t* BROTLI_RESTRICT max_run_length_prefix) {
+ uint32_t max_reps = 0;
+ size_t i;
+ uint32_t max_prefix;
+ for (i = 0; i < in_size;) {
+ uint32_t reps = 0;
+ for (; i < in_size && v[i] != 0; ++i) ;
+ for (; i < in_size && v[i] == 0; ++i) {
+ ++reps;
+ }
+ max_reps = BROTLI_MAX(uint32_t, reps, max_reps);
+ }
+ max_prefix = max_reps > 0 ? Log2FloorNonZero(max_reps) : 0;
+ max_prefix = BROTLI_MIN(uint32_t, max_prefix, *max_run_length_prefix);
+ *max_run_length_prefix = max_prefix;
+ *out_size = 0;
+ for (i = 0; i < in_size;) {
+ assert(*out_size <= i);
+ if (v[i] != 0) {
+ v[*out_size] = v[i] + *max_run_length_prefix;
+ ++i;
+ ++(*out_size);
+ } else {
+ uint32_t reps = 1;
+ size_t k;
+ for (k = i + 1; k < in_size && v[k] == 0; ++k) {
+ ++reps;
+ }
+ i += reps;
+ while (reps != 0) {
+ if (reps < (2u << max_prefix)) {
+ uint32_t run_length_prefix = Log2FloorNonZero(reps);
+ const uint32_t extra_bits = reps - (1u << run_length_prefix);
+ v[*out_size] = run_length_prefix + (extra_bits << 9);
+ ++(*out_size);
+ break;
+ } else {
+ const uint32_t extra_bits = (1u << max_prefix) - 1u;
+ v[*out_size] = max_prefix + (extra_bits << 9);
+ reps -= (2u << max_prefix) - 1u;
+ ++(*out_size);
+ }
+ }
+ }
+ }
+}
+
+#define SYMBOL_BITS 9
+
+static void EncodeContextMap(MemoryManager* m,
+ const uint32_t* context_map,
+ size_t context_map_size,
+ size_t num_clusters,
+ HuffmanTree* tree,
+ size_t* storage_ix, uint8_t* storage) {
+ size_t i;
+ uint32_t* rle_symbols;
+ uint32_t max_run_length_prefix = 6;
+ size_t num_rle_symbols = 0;
+ uint32_t histogram[BROTLI_MAX_CONTEXT_MAP_SYMBOLS];
+ static const uint32_t kSymbolMask = (1u << SYMBOL_BITS) - 1u;
+ uint8_t depths[BROTLI_MAX_CONTEXT_MAP_SYMBOLS];
+ uint16_t bits[BROTLI_MAX_CONTEXT_MAP_SYMBOLS];
+
+ StoreVarLenUint8(num_clusters - 1, storage_ix, storage);
+
+ if (num_clusters == 1) {
+ return;
+ }
+
+ rle_symbols = BROTLI_ALLOC(m, uint32_t, context_map_size);
+ if (BROTLI_IS_OOM(m)) return;
+ MoveToFrontTransform(context_map, context_map_size, rle_symbols);
+ RunLengthCodeZeros(context_map_size, rle_symbols,
+ &num_rle_symbols, &max_run_length_prefix);
+ memset(histogram, 0, sizeof(histogram));
+ for (i = 0; i < num_rle_symbols; ++i) {
+ ++histogram[rle_symbols[i] & kSymbolMask];
+ }
+ {
+ BROTLI_BOOL use_rle = TO_BROTLI_BOOL(max_run_length_prefix > 0);
+ BrotliWriteBits(1, (uint64_t)use_rle, storage_ix, storage);
+ if (use_rle) {
+ BrotliWriteBits(4, max_run_length_prefix - 1, storage_ix, storage);
+ }
+ }
+ BuildAndStoreHuffmanTree(histogram, num_clusters + max_run_length_prefix,
+ tree, depths, bits, storage_ix, storage);
+ for (i = 0; i < num_rle_symbols; ++i) {
+ const uint32_t rle_symbol = rle_symbols[i] & kSymbolMask;
+ const uint32_t extra_bits_val = rle_symbols[i] >> SYMBOL_BITS;
+ BrotliWriteBits(depths[rle_symbol], bits[rle_symbol], storage_ix, storage);
+ if (rle_symbol > 0 && rle_symbol <= max_run_length_prefix) {
+ BrotliWriteBits(rle_symbol, extra_bits_val, storage_ix, storage);
+ }
+ }
+ BrotliWriteBits(1, 1, storage_ix, storage); /* use move-to-front */
+ BROTLI_FREE(m, rle_symbols);
+}
+
+/* Stores the block switch command with index block_ix to the bit stream. */
+static BROTLI_INLINE void StoreBlockSwitch(BlockSplitCode* code,
+ const uint32_t block_len,
+ const uint8_t block_type,
+ BROTLI_BOOL is_first_block,
+ size_t* storage_ix,
+ uint8_t* storage) {
+ size_t typecode = NextBlockTypeCode(&code->type_code_calculator, block_type);
+ size_t lencode;
+ uint32_t len_nextra;
+ uint32_t len_extra;
+ if (!is_first_block) {
+ BrotliWriteBits(code->type_depths[typecode], code->type_bits[typecode],
+ storage_ix, storage);
+ }
+ GetBlockLengthPrefixCode(block_len, &lencode, &len_nextra, &len_extra);
+
+ BrotliWriteBits(code->length_depths[lencode], code->length_bits[lencode],
+ storage_ix, storage);
+ BrotliWriteBits(len_nextra, len_extra, storage_ix, storage);
+}
+
+/* Builds a BlockSplitCode data structure from the block split given by the
+ vector of block types and block lengths and stores it to the bit stream. */
+static void BuildAndStoreBlockSplitCode(const uint8_t* types,
+ const uint32_t* lengths,
+ const size_t num_blocks,
+ const size_t num_types,
+ HuffmanTree* tree,
+ BlockSplitCode* code,
+ size_t* storage_ix,
+ uint8_t* storage) {
+ uint32_t type_histo[BROTLI_MAX_BLOCK_TYPE_SYMBOLS];
+ uint32_t length_histo[BROTLI_NUM_BLOCK_LEN_SYMBOLS];
+ size_t i;
+ BlockTypeCodeCalculator type_code_calculator;
+ memset(type_histo, 0, (num_types + 2) * sizeof(type_histo[0]));
+ memset(length_histo, 0, sizeof(length_histo));
+ InitBlockTypeCodeCalculator(&type_code_calculator);
+ for (i = 0; i < num_blocks; ++i) {
+ size_t type_code = NextBlockTypeCode(&type_code_calculator, types[i]);
+ if (i != 0) ++type_histo[type_code];
+ ++length_histo[BlockLengthPrefixCode(lengths[i])];
+ }
+ StoreVarLenUint8(num_types - 1, storage_ix, storage);
+ if (num_types > 1) { /* TODO: else? could StoreBlockSwitch occur? */
+ BuildAndStoreHuffmanTree(&type_histo[0], num_types + 2, tree,
+ &code->type_depths[0], &code->type_bits[0],
+ storage_ix, storage);
+ BuildAndStoreHuffmanTree(&length_histo[0], BROTLI_NUM_BLOCK_LEN_SYMBOLS,
+ tree, &code->length_depths[0],
+ &code->length_bits[0], storage_ix, storage);
+ StoreBlockSwitch(code, lengths[0], types[0], 1, storage_ix, storage);
+ }
+}
+
+/* Stores a context map where the histogram type is always the block type. */
+static void StoreTrivialContextMap(size_t num_types,
+ size_t context_bits,
+ HuffmanTree* tree,
+ size_t* storage_ix,
+ uint8_t* storage) {
+ StoreVarLenUint8(num_types - 1, storage_ix, storage);
+ if (num_types > 1) {
+ size_t repeat_code = context_bits - 1u;
+ size_t repeat_bits = (1u << repeat_code) - 1u;
+ size_t alphabet_size = num_types + repeat_code;
+ uint32_t histogram[BROTLI_MAX_CONTEXT_MAP_SYMBOLS];
+ uint8_t depths[BROTLI_MAX_CONTEXT_MAP_SYMBOLS];
+ uint16_t bits[BROTLI_MAX_CONTEXT_MAP_SYMBOLS];
+ size_t i;
+ memset(histogram, 0, alphabet_size * sizeof(histogram[0]));
+ /* Write RLEMAX. */
+ BrotliWriteBits(1, 1, storage_ix, storage);
+ BrotliWriteBits(4, repeat_code - 1, storage_ix, storage);
+ histogram[repeat_code] = (uint32_t)num_types;
+ histogram[0] = 1;
+ for (i = context_bits; i < alphabet_size; ++i) {
+ histogram[i] = 1;
+ }
+ BuildAndStoreHuffmanTree(histogram, alphabet_size, tree,
+ depths, bits, storage_ix, storage);
+ for (i = 0; i < num_types; ++i) {
+ size_t code = (i == 0 ? 0 : i + context_bits - 1);
+ BrotliWriteBits(depths[code], bits[code], storage_ix, storage);
+ BrotliWriteBits(
+ depths[repeat_code], bits[repeat_code], storage_ix, storage);
+ BrotliWriteBits(repeat_code, repeat_bits, storage_ix, storage);
+ }
+ /* Write IMTF (inverse-move-to-front) bit. */
+ BrotliWriteBits(1, 1, storage_ix, storage);
+ }
+}
+
+/* Manages the encoding of one block category (literal, command or distance). */
+typedef struct BlockEncoder {
+ size_t alphabet_size_;
+ size_t num_block_types_;
+ const uint8_t* block_types_; /* Not owned. */
+ const uint32_t* block_lengths_; /* Not owned. */
+ size_t num_blocks_;
+ BlockSplitCode block_split_code_;
+ size_t block_ix_;
+ size_t block_len_;
+ size_t entropy_ix_;
+ uint8_t* depths_;
+ uint16_t* bits_;
+} BlockEncoder;
+
+static void InitBlockEncoder(BlockEncoder* self, size_t alphabet_size,
+ size_t num_block_types, const uint8_t* block_types,
+ const uint32_t* block_lengths, const size_t num_blocks) {
+ self->alphabet_size_ = alphabet_size;
+ self->num_block_types_ = num_block_types;
+ self->block_types_ = block_types;
+ self->block_lengths_ = block_lengths;
+ self->num_blocks_ = num_blocks;
+ InitBlockTypeCodeCalculator(&self->block_split_code_.type_code_calculator);
+ self->block_ix_ = 0;
+ self->block_len_ = num_blocks == 0 ? 0 : block_lengths[0];
+ self->entropy_ix_ = 0;
+ self->depths_ = 0;
+ self->bits_ = 0;
+}
+
+static void CleanupBlockEncoder(MemoryManager* m, BlockEncoder* self) {
+ BROTLI_FREE(m, self->depths_);
+ BROTLI_FREE(m, self->bits_);
+}
+
+/* Creates entropy codes of block lengths and block types and stores them
+ to the bit stream. */
+static void BuildAndStoreBlockSwitchEntropyCodes(BlockEncoder* self,
+ HuffmanTree* tree, size_t* storage_ix, uint8_t* storage) {
+ BuildAndStoreBlockSplitCode(self->block_types_, self->block_lengths_,
+ self->num_blocks_, self->num_block_types_, tree, &self->block_split_code_,
+ storage_ix, storage);
+}
+
+/* Stores the next symbol with the entropy code of the current block type.
+ Updates the block type and block length at block boundaries. */
+static void StoreSymbol(BlockEncoder* self, size_t symbol, size_t* storage_ix,
+ uint8_t* storage) {
+ if (self->block_len_ == 0) {
+ size_t block_ix = ++self->block_ix_;
+ uint32_t block_len = self->block_lengths_[block_ix];
+ uint8_t block_type = self->block_types_[block_ix];
+ self->block_len_ = block_len;
+ self->entropy_ix_ = block_type * self->alphabet_size_;
+ StoreBlockSwitch(&self->block_split_code_, block_len, block_type, 0,
+ storage_ix, storage);
+ }
+ --self->block_len_;
+ {
+ size_t ix = self->entropy_ix_ + symbol;
+ BrotliWriteBits(self->depths_[ix], self->bits_[ix], storage_ix, storage);
+ }
+}
+
+/* Stores the next symbol with the entropy code of the current block type and
+ context value.
+ Updates the block type and block length at block boundaries. */
+static void StoreSymbolWithContext(BlockEncoder* self, size_t symbol,
+ size_t context, const uint32_t* context_map, size_t* storage_ix,
+ uint8_t* storage, const size_t context_bits) {
+ if (self->block_len_ == 0) {
+ size_t block_ix = ++self->block_ix_;
+ uint32_t block_len = self->block_lengths_[block_ix];
+ uint8_t block_type = self->block_types_[block_ix];
+ self->block_len_ = block_len;
+ self->entropy_ix_ = (size_t)block_type << context_bits;
+ StoreBlockSwitch(&self->block_split_code_, block_len, block_type, 0,
+ storage_ix, storage);
+ }
+ --self->block_len_;
+ {
+ size_t histo_ix = context_map[self->entropy_ix_ + context];
+ size_t ix = histo_ix * self->alphabet_size_ + symbol;
+ BrotliWriteBits(self->depths_[ix], self->bits_[ix], storage_ix, storage);
+ }
+}
+
+#define FN(X) X ## Literal
+/* NOLINTNEXTLINE(build/include) */
+#include "./block_encoder_inc.h"
+#undef FN
+
+#define FN(X) X ## Command
+/* NOLINTNEXTLINE(build/include) */
+#include "./block_encoder_inc.h"
+#undef FN
+
+#define FN(X) X ## Distance
+/* NOLINTNEXTLINE(build/include) */
+#include "./block_encoder_inc.h"
+#undef FN
+
+static void JumpToByteBoundary(size_t* storage_ix, uint8_t* storage) {
+ *storage_ix = (*storage_ix + 7u) & ~7u;
+ storage[*storage_ix >> 3] = 0;
+}
+
+void BrotliStoreMetaBlock(MemoryManager* m,
+ const uint8_t* input,
+ size_t start_pos,
+ size_t length,
+ size_t mask,
+ uint8_t prev_byte,
+ uint8_t prev_byte2,
+ BROTLI_BOOL is_last,
+ uint32_t num_direct_distance_codes,
+ uint32_t distance_postfix_bits,
+ ContextType literal_context_mode,
+ const Command *commands,
+ size_t n_commands,
+ const MetaBlockSplit* mb,
+ size_t *storage_ix,
+ uint8_t *storage) {
+ size_t pos = start_pos;
+ size_t i;
+ size_t num_distance_codes =
+ BROTLI_NUM_DISTANCE_SHORT_CODES + num_direct_distance_codes +
+ (48u << distance_postfix_bits);
+ HuffmanTree* tree;
+ BlockEncoder literal_enc;
+ BlockEncoder command_enc;
+ BlockEncoder distance_enc;
+
+ StoreCompressedMetaBlockHeader(is_last, length, storage_ix, storage);
+
+ tree = BROTLI_ALLOC(m, HuffmanTree, MAX_HUFFMAN_TREE_SIZE);
+ if (BROTLI_IS_OOM(m)) return;
+ InitBlockEncoder(&literal_enc, 256, mb->literal_split.num_types,
+ mb->literal_split.types, mb->literal_split.lengths,
+ mb->literal_split.num_blocks);
+ InitBlockEncoder(&command_enc, BROTLI_NUM_COMMAND_SYMBOLS,
+ mb->command_split.num_types, mb->command_split.types,
+ mb->command_split.lengths, mb->command_split.num_blocks);
+ InitBlockEncoder(&distance_enc, num_distance_codes,
+ mb->distance_split.num_types, mb->distance_split.types,
+ mb->distance_split.lengths, mb->distance_split.num_blocks);
+
+ BuildAndStoreBlockSwitchEntropyCodes(&literal_enc, tree, storage_ix, storage);
+ BuildAndStoreBlockSwitchEntropyCodes(&command_enc, tree, storage_ix, storage);
+ BuildAndStoreBlockSwitchEntropyCodes(
+ &distance_enc, tree, storage_ix, storage);
+
+ BrotliWriteBits(2, distance_postfix_bits, storage_ix, storage);
+ BrotliWriteBits(4, num_direct_distance_codes >> distance_postfix_bits,
+ storage_ix, storage);
+ for (i = 0; i < mb->literal_split.num_types; ++i) {
+ BrotliWriteBits(2, literal_context_mode, storage_ix, storage);
+ }
+
+ if (mb->literal_context_map_size == 0) {
+ StoreTrivialContextMap(mb->literal_histograms_size,
+ BROTLI_LITERAL_CONTEXT_BITS, tree, storage_ix, storage);
+ } else {
+ EncodeContextMap(m,
+ mb->literal_context_map, mb->literal_context_map_size,
+ mb->literal_histograms_size, tree, storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+ }
+
+ if (mb->distance_context_map_size == 0) {
+ StoreTrivialContextMap(mb->distance_histograms_size,
+ BROTLI_DISTANCE_CONTEXT_BITS, tree, storage_ix, storage);
+ } else {
+ EncodeContextMap(m,
+ mb->distance_context_map, mb->distance_context_map_size,
+ mb->distance_histograms_size, tree, storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+ }
+
+ BuildAndStoreEntropyCodesLiteral(m, &literal_enc, mb->literal_histograms,
+ mb->literal_histograms_size, tree, storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+ BuildAndStoreEntropyCodesCommand(m, &command_enc, mb->command_histograms,
+ mb->command_histograms_size, tree, storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+ BuildAndStoreEntropyCodesDistance(m, &distance_enc, mb->distance_histograms,
+ mb->distance_histograms_size, tree, storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+ BROTLI_FREE(m, tree);
+
+ for (i = 0; i < n_commands; ++i) {
+ const Command cmd = commands[i];
+ size_t cmd_code = cmd.cmd_prefix_;
+ StoreSymbol(&command_enc, cmd_code, storage_ix, storage);
+ StoreCommandExtra(&cmd, storage_ix, storage);
+ if (mb->literal_context_map_size == 0) {
+ size_t j;
+ for (j = cmd.insert_len_; j != 0; --j) {
+ StoreSymbol(&literal_enc, input[pos & mask], storage_ix, storage);
+ ++pos;
+ }
+ } else {
+ size_t j;
+ for (j = cmd.insert_len_; j != 0; --j) {
+ size_t context = Context(prev_byte, prev_byte2, literal_context_mode);
+ uint8_t literal = input[pos & mask];
+ StoreSymbolWithContext(&literal_enc, literal, context,
+ mb->literal_context_map, storage_ix, storage,
+ BROTLI_LITERAL_CONTEXT_BITS);
+ prev_byte2 = prev_byte;
+ prev_byte = literal;
+ ++pos;
+ }
+ }
+ pos += CommandCopyLen(&cmd);
+ if (CommandCopyLen(&cmd)) {
+ prev_byte2 = input[(pos - 2) & mask];
+ prev_byte = input[(pos - 1) & mask];
+ if (cmd.cmd_prefix_ >= 128) {
+ size_t dist_code = cmd.dist_prefix_;
+ uint32_t distnumextra = cmd.dist_extra_ >> 24;
+ uint64_t distextra = cmd.dist_extra_ & 0xffffff;
+ if (mb->distance_context_map_size == 0) {
+ StoreSymbol(&distance_enc, dist_code, storage_ix, storage);
+ } else {
+ size_t context = CommandDistanceContext(&cmd);
+ StoreSymbolWithContext(&distance_enc, dist_code, context,
+ mb->distance_context_map, storage_ix, storage,
+ BROTLI_DISTANCE_CONTEXT_BITS);
+ }
+ BrotliWriteBits(distnumextra, distextra, storage_ix, storage);
+ }
+ }
+ }
+ CleanupBlockEncoder(m, &distance_enc);
+ CleanupBlockEncoder(m, &command_enc);
+ CleanupBlockEncoder(m, &literal_enc);
+ if (is_last) {
+ JumpToByteBoundary(storage_ix, storage);
+ }
+}
+
+static void BuildHistograms(const uint8_t* input,
+ size_t start_pos,
+ size_t mask,
+ const Command *commands,
+ size_t n_commands,
+ HistogramLiteral* lit_histo,
+ HistogramCommand* cmd_histo,
+ HistogramDistance* dist_histo) {
+ size_t pos = start_pos;
+ size_t i;
+ for (i = 0; i < n_commands; ++i) {
+ const Command cmd = commands[i];
+ size_t j;
+ HistogramAddCommand(cmd_histo, cmd.cmd_prefix_);
+ for (j = cmd.insert_len_; j != 0; --j) {
+ HistogramAddLiteral(lit_histo, input[pos & mask]);
+ ++pos;
+ }
+ pos += CommandCopyLen(&cmd);
+ if (CommandCopyLen(&cmd) && cmd.cmd_prefix_ >= 128) {
+ HistogramAddDistance(dist_histo, cmd.dist_prefix_);
+ }
+ }
+}
+
+static void StoreDataWithHuffmanCodes(const uint8_t* input,
+ size_t start_pos,
+ size_t mask,
+ const Command *commands,
+ size_t n_commands,
+ const uint8_t* lit_depth,
+ const uint16_t* lit_bits,
+ const uint8_t* cmd_depth,
+ const uint16_t* cmd_bits,
+ const uint8_t* dist_depth,
+ const uint16_t* dist_bits,
+ size_t* storage_ix,
+ uint8_t* storage) {
+ size_t pos = start_pos;
+ size_t i;
+ for (i = 0; i < n_commands; ++i) {
+ const Command cmd = commands[i];
+ const size_t cmd_code = cmd.cmd_prefix_;
+ size_t j;
+ BrotliWriteBits(
+ cmd_depth[cmd_code], cmd_bits[cmd_code], storage_ix, storage);
+ StoreCommandExtra(&cmd, storage_ix, storage);
+ for (j = cmd.insert_len_; j != 0; --j) {
+ const uint8_t literal = input[pos & mask];
+ BrotliWriteBits(
+ lit_depth[literal], lit_bits[literal], storage_ix, storage);
+ ++pos;
+ }
+ pos += CommandCopyLen(&cmd);
+ if (CommandCopyLen(&cmd) && cmd.cmd_prefix_ >= 128) {
+ const size_t dist_code = cmd.dist_prefix_;
+ const uint32_t distnumextra = cmd.dist_extra_ >> 24;
+ const uint32_t distextra = cmd.dist_extra_ & 0xffffff;
+ BrotliWriteBits(dist_depth[dist_code], dist_bits[dist_code],
+ storage_ix, storage);
+ BrotliWriteBits(distnumextra, distextra, storage_ix, storage);
+ }
+ }
+}
+
+void BrotliStoreMetaBlockTrivial(MemoryManager* m,
+ const uint8_t* input,
+ size_t start_pos,
+ size_t length,
+ size_t mask,
+ BROTLI_BOOL is_last,
+ const Command *commands,
+ size_t n_commands,
+ size_t *storage_ix,
+ uint8_t *storage) {
+ HistogramLiteral lit_histo;
+ HistogramCommand cmd_histo;
+ HistogramDistance dist_histo;
+ uint8_t lit_depth[256];
+ uint16_t lit_bits[256];
+ uint8_t cmd_depth[BROTLI_NUM_COMMAND_SYMBOLS];
+ uint16_t cmd_bits[BROTLI_NUM_COMMAND_SYMBOLS];
+ uint8_t dist_depth[64];
+ uint16_t dist_bits[64];
+ HuffmanTree* tree;
+
+ StoreCompressedMetaBlockHeader(is_last, length, storage_ix, storage);
+
+ HistogramClearLiteral(&lit_histo);
+ HistogramClearCommand(&cmd_histo);
+ HistogramClearDistance(&dist_histo);
+
+ BuildHistograms(input, start_pos, mask, commands, n_commands,
+ &lit_histo, &cmd_histo, &dist_histo);
+
+ BrotliWriteBits(13, 0, storage_ix, storage);
+
+ tree = BROTLI_ALLOC(m, HuffmanTree, MAX_HUFFMAN_TREE_SIZE);
+ if (BROTLI_IS_OOM(m)) return;
+ BuildAndStoreHuffmanTree(lit_histo.data_, 256, tree,
+ lit_depth, lit_bits,
+ storage_ix, storage);
+ BuildAndStoreHuffmanTree(cmd_histo.data_, BROTLI_NUM_COMMAND_SYMBOLS, tree,
+ cmd_depth, cmd_bits,
+ storage_ix, storage);
+ BuildAndStoreHuffmanTree(dist_histo.data_, 64, tree,
+ dist_depth, dist_bits,
+ storage_ix, storage);
+ BROTLI_FREE(m, tree);
+ StoreDataWithHuffmanCodes(input, start_pos, mask, commands,
+ n_commands, lit_depth, lit_bits,
+ cmd_depth, cmd_bits,
+ dist_depth, dist_bits,
+ storage_ix, storage);
+ if (is_last) {
+ JumpToByteBoundary(storage_ix, storage);
+ }
+}
+
+void BrotliStoreMetaBlockFast(MemoryManager* m,
+ const uint8_t* input,
+ size_t start_pos,
+ size_t length,
+ size_t mask,
+ BROTLI_BOOL is_last,
+ const Command *commands,
+ size_t n_commands,
+ size_t *storage_ix,
+ uint8_t *storage) {
+ StoreCompressedMetaBlockHeader(is_last, length, storage_ix, storage);
+
+ BrotliWriteBits(13, 0, storage_ix, storage);
+
+ if (n_commands <= 128) {
+ uint32_t histogram[BROTLI_NUM_LITERAL_SYMBOLS] = { 0 };
+ size_t pos = start_pos;
+ size_t num_literals = 0;
+ size_t i;
+ uint8_t lit_depth[BROTLI_NUM_LITERAL_SYMBOLS];
+ uint16_t lit_bits[BROTLI_NUM_LITERAL_SYMBOLS];
+ for (i = 0; i < n_commands; ++i) {
+ const Command cmd = commands[i];
+ size_t j;
+ for (j = cmd.insert_len_; j != 0; --j) {
+ ++histogram[input[pos & mask]];
+ ++pos;
+ }
+ num_literals += cmd.insert_len_;
+ pos += CommandCopyLen(&cmd);
+ }
+ BrotliBuildAndStoreHuffmanTreeFast(m, histogram, num_literals,
+ /* max_bits = */ 8,
+ lit_depth, lit_bits,
+ storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+ StoreStaticCommandHuffmanTree(storage_ix, storage);
+ StoreStaticDistanceHuffmanTree(storage_ix, storage);
+ StoreDataWithHuffmanCodes(input, start_pos, mask, commands,
+ n_commands, lit_depth, lit_bits,
+ kStaticCommandCodeDepth,
+ kStaticCommandCodeBits,
+ kStaticDistanceCodeDepth,
+ kStaticDistanceCodeBits,
+ storage_ix, storage);
+ } else {
+ HistogramLiteral lit_histo;
+ HistogramCommand cmd_histo;
+ HistogramDistance dist_histo;
+ uint8_t lit_depth[BROTLI_NUM_LITERAL_SYMBOLS];
+ uint16_t lit_bits[BROTLI_NUM_LITERAL_SYMBOLS];
+ uint8_t cmd_depth[BROTLI_NUM_COMMAND_SYMBOLS];
+ uint16_t cmd_bits[BROTLI_NUM_COMMAND_SYMBOLS];
+ uint8_t dist_depth[64];
+ uint16_t dist_bits[64];
+ HistogramClearLiteral(&lit_histo);
+ HistogramClearCommand(&cmd_histo);
+ HistogramClearDistance(&dist_histo);
+ BuildHistograms(input, start_pos, mask, commands, n_commands,
+ &lit_histo, &cmd_histo, &dist_histo);
+ BrotliBuildAndStoreHuffmanTreeFast(m, lit_histo.data_,
+ lit_histo.total_count_,
+ /* max_bits = */ 8,
+ lit_depth, lit_bits,
+ storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+ BrotliBuildAndStoreHuffmanTreeFast(m, cmd_histo.data_,
+ cmd_histo.total_count_,
+ /* max_bits = */ 10,
+ cmd_depth, cmd_bits,
+ storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+ BrotliBuildAndStoreHuffmanTreeFast(m, dist_histo.data_,
+ dist_histo.total_count_,
+ /* max_bits = */ 6,
+ dist_depth, dist_bits,
+ storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+ StoreDataWithHuffmanCodes(input, start_pos, mask, commands,
+ n_commands, lit_depth, lit_bits,
+ cmd_depth, cmd_bits,
+ dist_depth, dist_bits,
+ storage_ix, storage);
+ }
+
+ if (is_last) {
+ JumpToByteBoundary(storage_ix, storage);
+ }
+}
+
+/* This is for storing uncompressed blocks (simple raw storage of
+ bytes-as-bytes). */
+void BrotliStoreUncompressedMetaBlock(BROTLI_BOOL is_final_block,
+ const uint8_t * BROTLI_RESTRICT input,
+ size_t position, size_t mask,
+ size_t len,
+ size_t * BROTLI_RESTRICT storage_ix,
+ uint8_t * BROTLI_RESTRICT storage) {
+ size_t masked_pos = position & mask;
+ BrotliStoreUncompressedMetaBlockHeader(len, storage_ix, storage);
+ JumpToByteBoundary(storage_ix, storage);
+
+ if (masked_pos + len > mask + 1) {
+ size_t len1 = mask + 1 - masked_pos;
+ memcpy(&storage[*storage_ix >> 3], &input[masked_pos], len1);
+ *storage_ix += len1 << 3;
+ len -= len1;
+ masked_pos = 0;
+ }
+ memcpy(&storage[*storage_ix >> 3], &input[masked_pos], len);
+ *storage_ix += len << 3;
+
+ /* We need to clear the next 4 bytes to continue to be
+ compatible with BrotliWriteBits. */
+ BrotliWriteBitsPrepareStorage(*storage_ix, storage);
+
+ /* Since the uncompressed block itself may not be the final block, add an
+ empty one after this. */
+ if (is_final_block) {
+ BrotliWriteBits(1, 1, storage_ix, storage); /* islast */
+ BrotliWriteBits(1, 1, storage_ix, storage); /* isempty */
+ JumpToByteBoundary(storage_ix, storage);
+ }
+}
+
+void BrotliStoreSyncMetaBlock(size_t* BROTLI_RESTRICT storage_ix,
+ uint8_t* BROTLI_RESTRICT storage) {
+ /* Empty metadata meta-block bit pattern:
+ 1 bit: is_last (0)
+ 2 bits: num nibbles (3)
+ 1 bit: reserved (0)
+ 2 bits: metadata length bytes (0) */
+ BrotliWriteBits(6, 6, storage_ix, storage);
+ JumpToByteBoundary(storage_ix, storage);
+}
+
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/brotli_bit_stream.cc b/thirdparty/brotli/enc/brotli_bit_stream.cc
deleted file mode 100644
index 43f12107..00000000
--- a/thirdparty/brotli/enc/brotli_bit_stream.cc
+++ /dev/null
@@ -1,1181 +0,0 @@
-/* Copyright 2014 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-// Brotli bit stream functions to support the low level format. There are no
-// compression algorithms here, just the right ordering of bits to match the
-// specs.
-
-#include "./brotli_bit_stream.h"
-
-#include <algorithm>
-#include <cstdlib> /* free, malloc */
-#include <cstring>
-#include <limits>
-#include <vector>
-
-#include "./bit_cost.h"
-#include "./context.h"
-#include "./entropy_encode.h"
-#include "./entropy_encode_static.h"
-#include "./fast_log.h"
-#include "./prefix.h"
-#include "./write_bits.h"
-
-namespace brotli {
-
-namespace {
-
-static const size_t kMaxHuffmanTreeSize = 2 * kNumCommandPrefixes + 1;
-// Context map alphabet has 256 context id symbols plus max 16 rle symbols.
-static const size_t kContextMapAlphabetSize = 256 + 16;
-// Block type alphabet has 256 block id symbols plus 2 special symbols.
-static const size_t kBlockTypeAlphabetSize = 256 + 2;
-
-// nibblesbits represents the 2 bits to encode MNIBBLES (0-3)
-// REQUIRES: length > 0
-// REQUIRES: length <= (1 << 24)
-void EncodeMlen(size_t length, uint64_t* bits,
- size_t* numbits, uint64_t* nibblesbits) {
- assert(length > 0);
- assert(length <= (1 << 24));
- length--; // MLEN - 1 is encoded
- size_t lg = length == 0 ? 1 : Log2FloorNonZero(
- static_cast<uint32_t>(length)) + 1;
- assert(lg <= 24);
- size_t mnibbles = (lg < 16 ? 16 : (lg + 3)) / 4;
- *nibblesbits = mnibbles - 4;
- *numbits = mnibbles * 4;
- *bits = length;
-}
-
-static inline void StoreCommandExtra(
- const Command& cmd, size_t* storage_ix, uint8_t* storage) {
- uint32_t copylen_code = cmd.copy_len_code();
- uint16_t inscode = GetInsertLengthCode(cmd.insert_len_);
- uint16_t copycode = GetCopyLengthCode(copylen_code);
- uint32_t insnumextra = GetInsertExtra(inscode);
- uint64_t insextraval = cmd.insert_len_ - GetInsertBase(inscode);
- uint64_t copyextraval = copylen_code - GetCopyBase(copycode);
- uint64_t bits = (copyextraval << insnumextra) | insextraval;
- WriteBits(insnumextra + GetCopyExtra(copycode), bits, storage_ix, storage);
-}
-
-} // namespace
-
-void StoreVarLenUint8(size_t n, size_t* storage_ix, uint8_t* storage) {
- if (n == 0) {
- WriteBits(1, 0, storage_ix, storage);
- } else {
- WriteBits(1, 1, storage_ix, storage);
- size_t nbits = Log2FloorNonZero(n);
- WriteBits(3, nbits, storage_ix, storage);
- WriteBits(nbits, n - (1 << nbits), storage_ix, storage);
- }
-}
-
-void StoreCompressedMetaBlockHeader(bool final_block,
- size_t length,
- size_t* storage_ix,
- uint8_t* storage) {
- // Write ISLAST bit.
- WriteBits(1, final_block, storage_ix, storage);
- // Write ISEMPTY bit.
- if (final_block) {
- WriteBits(1, 0, storage_ix, storage);
- }
-
- uint64_t lenbits;
- size_t nlenbits;
- uint64_t nibblesbits;
- EncodeMlen(length, &lenbits, &nlenbits, &nibblesbits);
- WriteBits(2, nibblesbits, storage_ix, storage);
- WriteBits(nlenbits, lenbits, storage_ix, storage);
-
- if (!final_block) {
- // Write ISUNCOMPRESSED bit.
- WriteBits(1, 0, storage_ix, storage);
- }
-}
-
-void StoreUncompressedMetaBlockHeader(size_t length,
- size_t* storage_ix,
- uint8_t* storage) {
- // Write ISLAST bit. Uncompressed block cannot be the last one, so set to 0.
- WriteBits(1, 0, storage_ix, storage);
- uint64_t lenbits;
- size_t nlenbits;
- uint64_t nibblesbits;
- EncodeMlen(length, &lenbits, &nlenbits, &nibblesbits);
- WriteBits(2, nibblesbits, storage_ix, storage);
- WriteBits(nlenbits, lenbits, storage_ix, storage);
- // Write ISUNCOMPRESSED bit.
- WriteBits(1, 1, storage_ix, storage);
-}
-
-void StoreHuffmanTreeOfHuffmanTreeToBitMask(
- const int num_codes,
- const uint8_t *code_length_bitdepth,
- size_t *storage_ix,
- uint8_t *storage) {
- static const uint8_t kStorageOrder[kCodeLengthCodes] = {
- 1, 2, 3, 4, 0, 5, 17, 6, 16, 7, 8, 9, 10, 11, 12, 13, 14, 15
- };
- // The bit lengths of the Huffman code over the code length alphabet
- // are compressed with the following static Huffman code:
- // Symbol Code
- // ------ ----
- // 0 00
- // 1 1110
- // 2 110
- // 3 01
- // 4 10
- // 5 1111
- static const uint8_t kHuffmanBitLengthHuffmanCodeSymbols[6] = {
- 0, 7, 3, 2, 1, 15
- };
- static const uint8_t kHuffmanBitLengthHuffmanCodeBitLengths[6] = {
- 2, 4, 3, 2, 2, 4
- };
-
- // Throw away trailing zeros:
- size_t codes_to_store = kCodeLengthCodes;
- if (num_codes > 1) {
- for (; codes_to_store > 0; --codes_to_store) {
- if (code_length_bitdepth[kStorageOrder[codes_to_store - 1]] != 0) {
- break;
- }
- }
- }
- size_t skip_some = 0; // skips none.
- if (code_length_bitdepth[kStorageOrder[0]] == 0 &&
- code_length_bitdepth[kStorageOrder[1]] == 0) {
- skip_some = 2; // skips two.
- if (code_length_bitdepth[kStorageOrder[2]] == 0) {
- skip_some = 3; // skips three.
- }
- }
- WriteBits(2, skip_some, storage_ix, storage);
- for (size_t i = skip_some; i < codes_to_store; ++i) {
- size_t l = code_length_bitdepth[kStorageOrder[i]];
- WriteBits(kHuffmanBitLengthHuffmanCodeBitLengths[l],
- kHuffmanBitLengthHuffmanCodeSymbols[l], storage_ix, storage);
- }
-}
-
-static void StoreHuffmanTreeToBitMask(
- const size_t huffman_tree_size,
- const uint8_t* huffman_tree,
- const uint8_t* huffman_tree_extra_bits,
- const uint8_t* code_length_bitdepth,
- const uint16_t* code_length_bitdepth_symbols,
- size_t * __restrict storage_ix,
- uint8_t * __restrict storage) {
- for (size_t i = 0; i < huffman_tree_size; ++i) {
- size_t ix = huffman_tree[i];
- WriteBits(code_length_bitdepth[ix], code_length_bitdepth_symbols[ix],
- storage_ix, storage);
- // Extra bits
- switch (ix) {
- case 16:
- WriteBits(2, huffman_tree_extra_bits[i], storage_ix, storage);
- break;
- case 17:
- WriteBits(3, huffman_tree_extra_bits[i], storage_ix, storage);
- break;
- }
- }
-}
-
-static void StoreSimpleHuffmanTree(const uint8_t* depths,
- size_t symbols[4],
- size_t num_symbols,
- size_t max_bits,
- size_t *storage_ix, uint8_t *storage) {
- // value of 1 indicates a simple Huffman code
- WriteBits(2, 1, storage_ix, storage);
- WriteBits(2, num_symbols - 1, storage_ix, storage); // NSYM - 1
-
- // Sort
- for (size_t i = 0; i < num_symbols; i++) {
- for (size_t j = i + 1; j < num_symbols; j++) {
- if (depths[symbols[j]] < depths[symbols[i]]) {
- std::swap(symbols[j], symbols[i]);
- }
- }
- }
-
- if (num_symbols == 2) {
- WriteBits(max_bits, symbols[0], storage_ix, storage);
- WriteBits(max_bits, symbols[1], storage_ix, storage);
- } else if (num_symbols == 3) {
- WriteBits(max_bits, symbols[0], storage_ix, storage);
- WriteBits(max_bits, symbols[1], storage_ix, storage);
- WriteBits(max_bits, symbols[2], storage_ix, storage);
- } else {
- WriteBits(max_bits, symbols[0], storage_ix, storage);
- WriteBits(max_bits, symbols[1], storage_ix, storage);
- WriteBits(max_bits, symbols[2], storage_ix, storage);
- WriteBits(max_bits, symbols[3], storage_ix, storage);
- // tree-select
- WriteBits(1, depths[symbols[0]] == 1 ? 1 : 0, storage_ix, storage);
- }
-}
-
-// num = alphabet size
-// depths = symbol depths
-void StoreHuffmanTree(const uint8_t* depths, size_t num,
- HuffmanTree* tree,
- size_t *storage_ix, uint8_t *storage) {
- // Write the Huffman tree into the brotli-representation.
- // The command alphabet is the largest, so this allocation will fit all
- // alphabets.
- assert(num <= kNumCommandPrefixes);
- uint8_t huffman_tree[kNumCommandPrefixes];
- uint8_t huffman_tree_extra_bits[kNumCommandPrefixes];
- size_t huffman_tree_size = 0;
- WriteHuffmanTree(depths, num, &huffman_tree_size, huffman_tree,
- huffman_tree_extra_bits);
-
- // Calculate the statistics of the Huffman tree in brotli-representation.
- uint32_t huffman_tree_histogram[kCodeLengthCodes] = { 0 };
- for (size_t i = 0; i < huffman_tree_size; ++i) {
- ++huffman_tree_histogram[huffman_tree[i]];
- }
-
- int num_codes = 0;
- int code = 0;
- for (int i = 0; i < kCodeLengthCodes; ++i) {
- if (huffman_tree_histogram[i]) {
- if (num_codes == 0) {
- code = i;
- num_codes = 1;
- } else if (num_codes == 1) {
- num_codes = 2;
- break;
- }
- }
- }
-
- // Calculate another Huffman tree to use for compressing both the
- // earlier Huffman tree with.
- uint8_t code_length_bitdepth[kCodeLengthCodes] = { 0 };
- uint16_t code_length_bitdepth_symbols[kCodeLengthCodes] = { 0 };
- CreateHuffmanTree(&huffman_tree_histogram[0], kCodeLengthCodes,
- 5, tree, &code_length_bitdepth[0]);
- ConvertBitDepthsToSymbols(code_length_bitdepth, kCodeLengthCodes,
- &code_length_bitdepth_symbols[0]);
-
- // Now, we have all the data, let's start storing it
- StoreHuffmanTreeOfHuffmanTreeToBitMask(num_codes, code_length_bitdepth,
- storage_ix, storage);
-
- if (num_codes == 1) {
- code_length_bitdepth[code] = 0;
- }
-
- // Store the real huffman tree now.
- StoreHuffmanTreeToBitMask(huffman_tree_size,
- huffman_tree,
- huffman_tree_extra_bits,
- &code_length_bitdepth[0],
- code_length_bitdepth_symbols,
- storage_ix, storage);
-}
-
-void BuildAndStoreHuffmanTree(const uint32_t *histogram,
- const size_t length,
- HuffmanTree* tree,
- uint8_t* depth,
- uint16_t* bits,
- size_t* storage_ix,
- uint8_t* storage) {
- size_t count = 0;
- size_t s4[4] = { 0 };
- for (size_t i = 0; i < length; i++) {
- if (histogram[i]) {
- if (count < 4) {
- s4[count] = i;
- } else if (count > 4) {
- break;
- }
- count++;
- }
- }
-
- size_t max_bits_counter = length - 1;
- size_t max_bits = 0;
- while (max_bits_counter) {
- max_bits_counter >>= 1;
- ++max_bits;
- }
-
- if (count <= 1) {
- WriteBits(4, 1, storage_ix, storage);
- WriteBits(max_bits, s4[0], storage_ix, storage);
- return;
- }
-
- CreateHuffmanTree(histogram, length, 15, tree, depth);
- ConvertBitDepthsToSymbols(depth, length, bits);
-
- if (count <= 4) {
- StoreSimpleHuffmanTree(depth, s4, count, max_bits, storage_ix, storage);
- } else {
- StoreHuffmanTree(depth, length, tree, storage_ix, storage);
- }
-}
-
-static inline bool SortHuffmanTree(const HuffmanTree& v0,
- const HuffmanTree& v1) {
- return v0.total_count_ < v1.total_count_;
-}
-
-void BuildAndStoreHuffmanTreeFast(const uint32_t *histogram,
- const size_t histogram_total,
- const size_t max_bits,
- uint8_t* depth,
- uint16_t* bits,
- size_t* storage_ix,
- uint8_t* storage) {
- size_t count = 0;
- size_t symbols[4] = { 0 };
- size_t length = 0;
- size_t total = histogram_total;
- while (total != 0) {
- if (histogram[length]) {
- if (count < 4) {
- symbols[count] = length;
- }
- ++count;
- total -= histogram[length];
- }
- ++length;
- }
-
- if (count <= 1) {
- WriteBits(4, 1, storage_ix, storage);
- WriteBits(max_bits, symbols[0], storage_ix, storage);
- return;
- }
-
- const size_t max_tree_size = 2 * length + 1;
- HuffmanTree* const tree =
- static_cast<HuffmanTree*>(malloc(max_tree_size * sizeof(HuffmanTree)));
- for (uint32_t count_limit = 1; ; count_limit *= 2) {
- HuffmanTree* node = tree;
- for (size_t i = length; i != 0;) {
- --i;
- if (histogram[i]) {
- if (PREDICT_TRUE(histogram[i] >= count_limit)) {
- *node = HuffmanTree(histogram[i], -1, static_cast<int16_t>(i));
- } else {
- *node = HuffmanTree(count_limit, -1, static_cast<int16_t>(i));
- }
- ++node;
- }
- }
- const int n = static_cast<int>(node - tree);
- std::sort(tree, node, SortHuffmanTree);
- // The nodes are:
- // [0, n): the sorted leaf nodes that we start with.
- // [n]: we add a sentinel here.
- // [n + 1, 2n): new parent nodes are added here, starting from
- // (n+1). These are naturally in ascending order.
- // [2n]: we add a sentinel at the end as well.
- // There will be (2n+1) elements at the end.
- const HuffmanTree sentinel(std::numeric_limits<int>::max(), -1, -1);
- *node++ = sentinel;
- *node++ = sentinel;
-
- int i = 0; // Points to the next leaf node.
- int j = n + 1; // Points to the next non-leaf node.
- for (int k = n - 1; k > 0; --k) {
- int left, right;
- if (tree[i].total_count_ <= tree[j].total_count_) {
- left = i;
- ++i;
- } else {
- left = j;
- ++j;
- }
- if (tree[i].total_count_ <= tree[j].total_count_) {
- right = i;
- ++i;
- } else {
- right = j;
- ++j;
- }
- // The sentinel node becomes the parent node.
- node[-1].total_count_ =
- tree[left].total_count_ + tree[right].total_count_;
- node[-1].index_left_ = static_cast<int16_t>(left);
- node[-1].index_right_or_value_ = static_cast<int16_t>(right);
- // Add back the last sentinel node.
- *node++ = sentinel;
- }
- SetDepth(tree[2 * n - 1], &tree[0], depth, 0);
- // We need to pack the Huffman tree in 14 bits.
- // If this was not successful, add fake entities to the lowest values
- // and retry.
- if (PREDICT_TRUE(*std::max_element(&depth[0], &depth[length]) <= 14)) {
- break;
- }
- }
- free(tree);
- ConvertBitDepthsToSymbols(depth, length, bits);
- if (count <= 4) {
- // value of 1 indicates a simple Huffman code
- WriteBits(2, 1, storage_ix, storage);
- WriteBits(2, count - 1, storage_ix, storage); // NSYM - 1
-
- // Sort
- for (size_t i = 0; i < count; i++) {
- for (size_t j = i + 1; j < count; j++) {
- if (depth[symbols[j]] < depth[symbols[i]]) {
- std::swap(symbols[j], symbols[i]);
- }
- }
- }
-
- if (count == 2) {
- WriteBits(max_bits, symbols[0], storage_ix, storage);
- WriteBits(max_bits, symbols[1], storage_ix, storage);
- } else if (count == 3) {
- WriteBits(max_bits, symbols[0], storage_ix, storage);
- WriteBits(max_bits, symbols[1], storage_ix, storage);
- WriteBits(max_bits, symbols[2], storage_ix, storage);
- } else {
- WriteBits(max_bits, symbols[0], storage_ix, storage);
- WriteBits(max_bits, symbols[1], storage_ix, storage);
- WriteBits(max_bits, symbols[2], storage_ix, storage);
- WriteBits(max_bits, symbols[3], storage_ix, storage);
- // tree-select
- WriteBits(1, depth[symbols[0]] == 1 ? 1 : 0, storage_ix, storage);
- }
- } else {
- // Complex Huffman Tree
- StoreStaticCodeLengthCode(storage_ix, storage);
-
- // Actual rle coding.
- uint8_t previous_value = 8;
- for (size_t i = 0; i < length;) {
- const uint8_t value = depth[i];
- size_t reps = 1;
- for (size_t k = i + 1; k < length && depth[k] == value; ++k) {
- ++reps;
- }
- i += reps;
- if (value == 0) {
- WriteBits(kZeroRepsDepth[reps], kZeroRepsBits[reps],
- storage_ix, storage);
- } else {
- if (previous_value != value) {
- WriteBits(kCodeLengthDepth[value], kCodeLengthBits[value],
- storage_ix, storage);
- --reps;
- }
- if (reps < 3) {
- while (reps != 0) {
- reps--;
- WriteBits(kCodeLengthDepth[value], kCodeLengthBits[value],
- storage_ix, storage);
- }
- } else {
- reps -= 3;
- WriteBits(kNonZeroRepsDepth[reps], kNonZeroRepsBits[reps],
- storage_ix, storage);
- }
- previous_value = value;
- }
- }
- }
-}
-
-static size_t IndexOf(const uint8_t* v, size_t v_size, uint8_t value) {
- size_t i = 0;
- for (; i < v_size; ++i) {
- if (v[i] == value) return i;
- }
- return i;
-}
-
-static void MoveToFront(uint8_t* v, size_t index) {
- uint8_t value = v[index];
- for (size_t i = index; i != 0; --i) {
- v[i] = v[i - 1];
- }
- v[0] = value;
-}
-
-static void MoveToFrontTransform(const uint32_t* __restrict v_in,
- const size_t v_size,
- uint32_t* v_out) {
- if (v_size == 0) {
- return;
- }
- uint32_t max_value = *std::max_element(v_in, v_in + v_size);
- assert(max_value < 256u);
- uint8_t mtf[256];
- size_t mtf_size = max_value + 1;
- for (uint32_t i = 0; i <= max_value; ++i) {
- mtf[i] = static_cast<uint8_t>(i);
- }
- for (size_t i = 0; i < v_size; ++i) {
- size_t index = IndexOf(mtf, mtf_size, static_cast<uint8_t>(v_in[i]));
- assert(index < mtf_size);
- v_out[i] = static_cast<uint32_t>(index);
- MoveToFront(mtf, index);
- }
-}
-
-// Finds runs of zeros in v[0..in_size) and replaces them with a prefix code of
-// the run length plus extra bits (lower 9 bits is the prefix code and the rest
-// are the extra bits). Non-zero values in v[] are shifted by
-// *max_length_prefix. Will not create prefix codes bigger than the initial
-// value of *max_run_length_prefix. The prefix code of run length L is simply
-// Log2Floor(L) and the number of extra bits is the same as the prefix code.
-static void RunLengthCodeZeros(const size_t in_size,
- uint32_t* __restrict v,
- size_t* __restrict out_size,
- uint32_t* __restrict max_run_length_prefix) {
- uint32_t max_reps = 0;
- for (size_t i = 0; i < in_size;) {
- for (; i < in_size && v[i] != 0; ++i) ;
- uint32_t reps = 0;
- for (; i < in_size && v[i] == 0; ++i) {
- ++reps;
- }
- max_reps = std::max(reps, max_reps);
- }
- uint32_t max_prefix = max_reps > 0 ? Log2FloorNonZero(max_reps) : 0;
- max_prefix = std::min(max_prefix, *max_run_length_prefix);
- *max_run_length_prefix = max_prefix;
- *out_size = 0;
- for (size_t i = 0; i < in_size;) {
- assert(*out_size <= i);
- if (v[i] != 0) {
- v[*out_size] = v[i] + *max_run_length_prefix;
- ++i;
- ++(*out_size);
- } else {
- uint32_t reps = 1;
- for (size_t k = i + 1; k < in_size && v[k] == 0; ++k) {
- ++reps;
- }
- i += reps;
- while (reps != 0) {
- if (reps < (2u << max_prefix)) {
- uint32_t run_length_prefix = Log2FloorNonZero(reps);
- const uint32_t extra_bits = reps - (1u << run_length_prefix);
- v[*out_size] = run_length_prefix + (extra_bits << 9);
- ++(*out_size);
- break;
- } else {
- const uint32_t extra_bits = (1u << max_prefix) - 1u;
- v[*out_size] = max_prefix + (extra_bits << 9);
- reps -= (2u << max_prefix) - 1u;
- ++(*out_size);
- }
- }
- }
- }
-}
-
-void EncodeContextMap(const std::vector<uint32_t>& context_map,
- size_t num_clusters,
- HuffmanTree* tree,
- size_t* storage_ix, uint8_t* storage) {
- StoreVarLenUint8(num_clusters - 1, storage_ix, storage);
-
- if (num_clusters == 1) {
- return;
- }
-
- uint32_t* rle_symbols = new uint32_t[context_map.size()];
- MoveToFrontTransform(&context_map[0], context_map.size(), rle_symbols);
- uint32_t max_run_length_prefix = 6;
- size_t num_rle_symbols = 0;
- RunLengthCodeZeros(context_map.size(), rle_symbols,
- &num_rle_symbols, &max_run_length_prefix);
- uint32_t histogram[kContextMapAlphabetSize];
- memset(histogram, 0, sizeof(histogram));
- static const int kSymbolBits = 9;
- static const uint32_t kSymbolMask = (1u << kSymbolBits) - 1u;
- for (size_t i = 0; i < num_rle_symbols; ++i) {
- ++histogram[rle_symbols[i] & kSymbolMask];
- }
- bool use_rle = max_run_length_prefix > 0;
- WriteBits(1, use_rle, storage_ix, storage);
- if (use_rle) {
- WriteBits(4, max_run_length_prefix - 1, storage_ix, storage);
- }
- uint8_t depths[kContextMapAlphabetSize];
- uint16_t bits[kContextMapAlphabetSize];
- memset(depths, 0, sizeof(depths));
- memset(bits, 0, sizeof(bits));
- BuildAndStoreHuffmanTree(histogram, num_clusters + max_run_length_prefix,
- tree, depths, bits, storage_ix, storage);
- for (size_t i = 0; i < num_rle_symbols; ++i) {
- const uint32_t rle_symbol = rle_symbols[i] & kSymbolMask;
- const uint32_t extra_bits_val = rle_symbols[i] >> kSymbolBits;
- WriteBits(depths[rle_symbol], bits[rle_symbol], storage_ix, storage);
- if (rle_symbol > 0 && rle_symbol <= max_run_length_prefix) {
- WriteBits(rle_symbol, extra_bits_val, storage_ix, storage);
- }
- }
- WriteBits(1, 1, storage_ix, storage); // use move-to-front
- delete[] rle_symbols;
-}
-
-void StoreBlockSwitch(const BlockSplitCode& code,
- const size_t block_ix,
- size_t* storage_ix,
- uint8_t* storage) {
- if (block_ix > 0) {
- size_t typecode = code.type_code[block_ix];
- WriteBits(code.type_depths[typecode], code.type_bits[typecode],
- storage_ix, storage);
- }
- size_t lencode = code.length_prefix[block_ix];
- WriteBits(code.length_depths[lencode], code.length_bits[lencode],
- storage_ix, storage);
- WriteBits(code.length_nextra[block_ix], code.length_extra[block_ix],
- storage_ix, storage);
-}
-
-static void BuildAndStoreBlockSplitCode(const std::vector<uint8_t>& types,
- const std::vector<uint32_t>& lengths,
- const size_t num_types,
- HuffmanTree* tree,
- BlockSplitCode* code,
- size_t* storage_ix,
- uint8_t* storage) {
- const size_t num_blocks = types.size();
- uint32_t type_histo[kBlockTypeAlphabetSize];
- uint32_t length_histo[kNumBlockLenPrefixes];
- memset(type_histo, 0, (num_types + 2) * sizeof(type_histo[0]));
- memset(length_histo, 0, sizeof(length_histo));
- size_t last_type = 1;
- size_t second_last_type = 0;
- code->type_code.resize(num_blocks);
- code->length_prefix.resize(num_blocks);
- code->length_nextra.resize(num_blocks);
- code->length_extra.resize(num_blocks);
- code->type_depths.resize(num_types + 2);
- code->type_bits.resize(num_types + 2);
- memset(code->length_depths, 0, sizeof(code->length_depths));
- memset(code->length_bits, 0, sizeof(code->length_bits));
- for (size_t i = 0; i < num_blocks; ++i) {
- size_t type = types[i];
- size_t type_code = (type == last_type + 1 ? 1 :
- type == second_last_type ? 0 :
- type + 2);
- second_last_type = last_type;
- last_type = type;
- code->type_code[i] = static_cast<uint32_t>(type_code);
- if (i != 0) ++type_histo[type_code];
- GetBlockLengthPrefixCode(lengths[i],
- &code->length_prefix[i],
- &code->length_nextra[i],
- &code->length_extra[i]);
- ++length_histo[code->length_prefix[i]];
- }
- StoreVarLenUint8(num_types - 1, storage_ix, storage);
- if (num_types > 1) {
- BuildAndStoreHuffmanTree(&type_histo[0], num_types + 2, tree,
- &code->type_depths[0], &code->type_bits[0],
- storage_ix, storage);
- BuildAndStoreHuffmanTree(&length_histo[0], kNumBlockLenPrefixes, tree,
- &code->length_depths[0], &code->length_bits[0],
- storage_ix, storage);
- StoreBlockSwitch(*code, 0, storage_ix, storage);
- }
-}
-
-void StoreTrivialContextMap(size_t num_types,
- size_t context_bits,
- HuffmanTree* tree,
- size_t* storage_ix,
- uint8_t* storage) {
- StoreVarLenUint8(num_types - 1, storage_ix, storage);
- if (num_types > 1) {
- size_t repeat_code = context_bits - 1u;
- size_t repeat_bits = (1u << repeat_code) - 1u;
- size_t alphabet_size = num_types + repeat_code;
- uint32_t histogram[kContextMapAlphabetSize];
- uint8_t depths[kContextMapAlphabetSize];
- uint16_t bits[kContextMapAlphabetSize];
- memset(histogram, 0, alphabet_size * sizeof(histogram[0]));
- memset(depths, 0, alphabet_size * sizeof(depths[0]));
- memset(bits, 0, alphabet_size * sizeof(bits[0]));
- // Write RLEMAX.
- WriteBits(1, 1, storage_ix, storage);
- WriteBits(4, repeat_code - 1, storage_ix, storage);
- histogram[repeat_code] = static_cast<uint32_t>(num_types);
- histogram[0] = 1;
- for (size_t i = context_bits; i < alphabet_size; ++i) {
- histogram[i] = 1;
- }
- BuildAndStoreHuffmanTree(&histogram[0], alphabet_size, tree,
- &depths[0], &bits[0],
- storage_ix, storage);
- for (size_t i = 0; i < num_types; ++i) {
- size_t code = (i == 0 ? 0 : i + context_bits - 1);
- WriteBits(depths[code], bits[code], storage_ix, storage);
- WriteBits(depths[repeat_code], bits[repeat_code], storage_ix, storage);
- WriteBits(repeat_code, repeat_bits, storage_ix, storage);
- }
- // Write IMTF (inverse-move-to-front) bit.
- WriteBits(1, 1, storage_ix, storage);
- }
-}
-
-// Manages the encoding of one block category (literal, command or distance).
-class BlockEncoder {
- public:
- BlockEncoder(size_t alphabet_size,
- size_t num_block_types,
- const std::vector<uint8_t>& block_types,
- const std::vector<uint32_t>& block_lengths)
- : alphabet_size_(alphabet_size),
- num_block_types_(num_block_types),
- block_types_(block_types),
- block_lengths_(block_lengths),
- block_ix_(0),
- block_len_(block_lengths.empty() ? 0 : block_lengths[0]),
- entropy_ix_(0) {}
-
- // Creates entropy codes of block lengths and block types and stores them
- // to the bit stream.
- void BuildAndStoreBlockSwitchEntropyCodes(HuffmanTree* tree,
- size_t* storage_ix,
- uint8_t* storage) {
- BuildAndStoreBlockSplitCode(
- block_types_, block_lengths_, num_block_types_,
- tree, &block_split_code_, storage_ix, storage);
- }
-
- // Creates entropy codes for all block types and stores them to the bit
- // stream.
- template<int kSize>
- void BuildAndStoreEntropyCodes(
- const std::vector<Histogram<kSize> >& histograms,
- HuffmanTree* tree,
- size_t* storage_ix, uint8_t* storage) {
- depths_.resize(histograms.size() * alphabet_size_);
- bits_.resize(histograms.size() * alphabet_size_);
- for (size_t i = 0; i < histograms.size(); ++i) {
- size_t ix = i * alphabet_size_;
- BuildAndStoreHuffmanTree(&histograms[i].data_[0], alphabet_size_,
- tree,
- &depths_[ix], &bits_[ix],
- storage_ix, storage);
- }
- }
-
- // Stores the next symbol with the entropy code of the current block type.
- // Updates the block type and block length at block boundaries.
- void StoreSymbol(size_t symbol, size_t* storage_ix, uint8_t* storage) {
- if (block_len_ == 0) {
- ++block_ix_;
- block_len_ = block_lengths_[block_ix_];
- entropy_ix_ = block_types_[block_ix_] * alphabet_size_;
- StoreBlockSwitch(block_split_code_, block_ix_, storage_ix, storage);
- }
- --block_len_;
- size_t ix = entropy_ix_ + symbol;
- WriteBits(depths_[ix], bits_[ix], storage_ix, storage);
- }
-
- // Stores the next symbol with the entropy code of the current block type and
- // context value.
- // Updates the block type and block length at block boundaries.
- template<int kContextBits>
- void StoreSymbolWithContext(size_t symbol, size_t context,
- const std::vector<uint32_t>& context_map,
- size_t* storage_ix, uint8_t* storage) {
- if (block_len_ == 0) {
- ++block_ix_;
- block_len_ = block_lengths_[block_ix_];
- size_t block_type = block_types_[block_ix_];
- entropy_ix_ = block_type << kContextBits;
- StoreBlockSwitch(block_split_code_, block_ix_, storage_ix, storage);
- }
- --block_len_;
- size_t histo_ix = context_map[entropy_ix_ + context];
- size_t ix = histo_ix * alphabet_size_ + symbol;
- WriteBits(depths_[ix], bits_[ix], storage_ix, storage);
- }
-
- private:
- const size_t alphabet_size_;
- const size_t num_block_types_;
- const std::vector<uint8_t>& block_types_;
- const std::vector<uint32_t>& block_lengths_;
- BlockSplitCode block_split_code_;
- size_t block_ix_;
- size_t block_len_;
- size_t entropy_ix_;
- std::vector<uint8_t> depths_;
- std::vector<uint16_t> bits_;
-};
-
-static void JumpToByteBoundary(size_t* storage_ix, uint8_t* storage) {
- *storage_ix = (*storage_ix + 7u) & ~7u;
- storage[*storage_ix >> 3] = 0;
-}
-
-void StoreMetaBlock(const uint8_t* input,
- size_t start_pos,
- size_t length,
- size_t mask,
- uint8_t prev_byte,
- uint8_t prev_byte2,
- bool is_last,
- uint32_t num_direct_distance_codes,
- uint32_t distance_postfix_bits,
- ContextType literal_context_mode,
- const brotli::Command *commands,
- size_t n_commands,
- const MetaBlockSplit& mb,
- size_t *storage_ix,
- uint8_t *storage) {
- StoreCompressedMetaBlockHeader(is_last, length, storage_ix, storage);
-
- size_t num_distance_codes =
- kNumDistanceShortCodes + num_direct_distance_codes +
- (48u << distance_postfix_bits);
-
- HuffmanTree* tree = static_cast<HuffmanTree*>(
- malloc(kMaxHuffmanTreeSize * sizeof(HuffmanTree)));
- BlockEncoder literal_enc(256,
- mb.literal_split.num_types,
- mb.literal_split.types,
- mb.literal_split.lengths);
- BlockEncoder command_enc(kNumCommandPrefixes,
- mb.command_split.num_types,
- mb.command_split.types,
- mb.command_split.lengths);
- BlockEncoder distance_enc(num_distance_codes,
- mb.distance_split.num_types,
- mb.distance_split.types,
- mb.distance_split.lengths);
-
- literal_enc.BuildAndStoreBlockSwitchEntropyCodes(tree, storage_ix, storage);
- command_enc.BuildAndStoreBlockSwitchEntropyCodes(tree, storage_ix, storage);
- distance_enc.BuildAndStoreBlockSwitchEntropyCodes(tree, storage_ix, storage);
-
- WriteBits(2, distance_postfix_bits, storage_ix, storage);
- WriteBits(4, num_direct_distance_codes >> distance_postfix_bits,
- storage_ix, storage);
- for (size_t i = 0; i < mb.literal_split.num_types; ++i) {
- WriteBits(2, literal_context_mode, storage_ix, storage);
- }
-
- size_t num_literal_histograms = mb.literal_histograms.size();
- if (mb.literal_context_map.empty()) {
- StoreTrivialContextMap(num_literal_histograms, kLiteralContextBits, tree,
- storage_ix, storage);
- } else {
- EncodeContextMap(mb.literal_context_map, num_literal_histograms, tree,
- storage_ix, storage);
- }
-
- size_t num_dist_histograms = mb.distance_histograms.size();
- if (mb.distance_context_map.empty()) {
- StoreTrivialContextMap(num_dist_histograms, kDistanceContextBits, tree,
- storage_ix, storage);
- } else {
- EncodeContextMap(mb.distance_context_map, num_dist_histograms, tree,
- storage_ix, storage);
- }
-
- literal_enc.BuildAndStoreEntropyCodes(mb.literal_histograms, tree,
- storage_ix, storage);
- command_enc.BuildAndStoreEntropyCodes(mb.command_histograms, tree,
- storage_ix, storage);
- distance_enc.BuildAndStoreEntropyCodes(mb.distance_histograms, tree,
- storage_ix, storage);
- free(tree);
-
- size_t pos = start_pos;
- for (size_t i = 0; i < n_commands; ++i) {
- const Command cmd = commands[i];
- size_t cmd_code = cmd.cmd_prefix_;
- command_enc.StoreSymbol(cmd_code, storage_ix, storage);
- StoreCommandExtra(cmd, storage_ix, storage);
- if (mb.literal_context_map.empty()) {
- for (size_t j = cmd.insert_len_; j != 0; --j) {
- literal_enc.StoreSymbol(input[pos & mask], storage_ix, storage);
- ++pos;
- }
- } else {
- for (size_t j = cmd.insert_len_; j != 0; --j) {
- size_t context = Context(prev_byte, prev_byte2, literal_context_mode);
- uint8_t literal = input[pos & mask];
- literal_enc.StoreSymbolWithContext<kLiteralContextBits>(
- literal, context, mb.literal_context_map, storage_ix, storage);
- prev_byte2 = prev_byte;
- prev_byte = literal;
- ++pos;
- }
- }
- pos += cmd.copy_len();
- if (cmd.copy_len()) {
- prev_byte2 = input[(pos - 2) & mask];
- prev_byte = input[(pos - 1) & mask];
- if (cmd.cmd_prefix_ >= 128) {
- size_t dist_code = cmd.dist_prefix_;
- uint32_t distnumextra = cmd.dist_extra_ >> 24;
- uint64_t distextra = cmd.dist_extra_ & 0xffffff;
- if (mb.distance_context_map.empty()) {
- distance_enc.StoreSymbol(dist_code, storage_ix, storage);
- } else {
- size_t context = cmd.DistanceContext();
- distance_enc.StoreSymbolWithContext<kDistanceContextBits>(
- dist_code, context, mb.distance_context_map, storage_ix, storage);
- }
- brotli::WriteBits(distnumextra, distextra, storage_ix, storage);
- }
- }
- }
- if (is_last) {
- JumpToByteBoundary(storage_ix, storage);
- }
-}
-
-static void BuildHistograms(const uint8_t* input,
- size_t start_pos,
- size_t mask,
- const brotli::Command *commands,
- size_t n_commands,
- HistogramLiteral* lit_histo,
- HistogramCommand* cmd_histo,
- HistogramDistance* dist_histo) {
- size_t pos = start_pos;
- for (size_t i = 0; i < n_commands; ++i) {
- const Command cmd = commands[i];
- cmd_histo->Add(cmd.cmd_prefix_);
- for (size_t j = cmd.insert_len_; j != 0; --j) {
- lit_histo->Add(input[pos & mask]);
- ++pos;
- }
- pos += cmd.copy_len();
- if (cmd.copy_len() && cmd.cmd_prefix_ >= 128) {
- dist_histo->Add(cmd.dist_prefix_);
- }
- }
-}
-
-static void StoreDataWithHuffmanCodes(const uint8_t* input,
- size_t start_pos,
- size_t mask,
- const brotli::Command *commands,
- size_t n_commands,
- const uint8_t* lit_depth,
- const uint16_t* lit_bits,
- const uint8_t* cmd_depth,
- const uint16_t* cmd_bits,
- const uint8_t* dist_depth,
- const uint16_t* dist_bits,
- size_t* storage_ix,
- uint8_t* storage) {
- size_t pos = start_pos;
- for (size_t i = 0; i < n_commands; ++i) {
- const Command cmd = commands[i];
- const size_t cmd_code = cmd.cmd_prefix_;
- WriteBits(cmd_depth[cmd_code], cmd_bits[cmd_code], storage_ix, storage);
- StoreCommandExtra(cmd, storage_ix, storage);
- for (size_t j = cmd.insert_len_; j != 0; --j) {
- const uint8_t literal = input[pos & mask];
- WriteBits(lit_depth[literal], lit_bits[literal], storage_ix, storage);
- ++pos;
- }
- pos += cmd.copy_len();
- if (cmd.copy_len() && cmd.cmd_prefix_ >= 128) {
- const size_t dist_code = cmd.dist_prefix_;
- const uint32_t distnumextra = cmd.dist_extra_ >> 24;
- const uint32_t distextra = cmd.dist_extra_ & 0xffffff;
- WriteBits(dist_depth[dist_code], dist_bits[dist_code],
- storage_ix, storage);
- WriteBits(distnumextra, distextra, storage_ix, storage);
- }
- }
-}
-
-void StoreMetaBlockTrivial(const uint8_t* input,
- size_t start_pos,
- size_t length,
- size_t mask,
- bool is_last,
- const brotli::Command *commands,
- size_t n_commands,
- size_t *storage_ix,
- uint8_t *storage) {
- StoreCompressedMetaBlockHeader(is_last, length, storage_ix, storage);
-
- HistogramLiteral lit_histo;
- HistogramCommand cmd_histo;
- HistogramDistance dist_histo;
-
- BuildHistograms(input, start_pos, mask, commands, n_commands,
- &lit_histo, &cmd_histo, &dist_histo);
-
- WriteBits(13, 0, storage_ix, storage);
-
- std::vector<uint8_t> lit_depth(256);
- std::vector<uint16_t> lit_bits(256);
- std::vector<uint8_t> cmd_depth(kNumCommandPrefixes);
- std::vector<uint16_t> cmd_bits(kNumCommandPrefixes);
- std::vector<uint8_t> dist_depth(64);
- std::vector<uint16_t> dist_bits(64);
-
- HuffmanTree* tree = static_cast<HuffmanTree*>(
- malloc(kMaxHuffmanTreeSize * sizeof(HuffmanTree)));
- BuildAndStoreHuffmanTree(&lit_histo.data_[0], 256, tree,
- &lit_depth[0], &lit_bits[0],
- storage_ix, storage);
- BuildAndStoreHuffmanTree(&cmd_histo.data_[0], kNumCommandPrefixes, tree,
- &cmd_depth[0], &cmd_bits[0],
- storage_ix, storage);
- BuildAndStoreHuffmanTree(&dist_histo.data_[0], 64, tree,
- &dist_depth[0], &dist_bits[0],
- storage_ix, storage);
- free(tree);
- StoreDataWithHuffmanCodes(input, start_pos, mask, commands,
- n_commands, &lit_depth[0], &lit_bits[0],
- &cmd_depth[0], &cmd_bits[0],
- &dist_depth[0], &dist_bits[0],
- storage_ix, storage);
- if (is_last) {
- JumpToByteBoundary(storage_ix, storage);
- }
-}
-
-void StoreMetaBlockFast(const uint8_t* input,
- size_t start_pos,
- size_t length,
- size_t mask,
- bool is_last,
- const brotli::Command *commands,
- size_t n_commands,
- size_t *storage_ix,
- uint8_t *storage) {
- StoreCompressedMetaBlockHeader(is_last, length, storage_ix, storage);
-
- WriteBits(13, 0, storage_ix, storage);
-
- if (n_commands <= 128) {
- uint32_t histogram[256] = { 0 };
- size_t pos = start_pos;
- size_t num_literals = 0;
- for (size_t i = 0; i < n_commands; ++i) {
- const Command cmd = commands[i];
- for (size_t j = cmd.insert_len_; j != 0; --j) {
- ++histogram[input[pos & mask]];
- ++pos;
- }
- num_literals += cmd.insert_len_;
- pos += cmd.copy_len();
- }
- uint8_t lit_depth[256] = { 0 };
- uint16_t lit_bits[256] = { 0 };
- BuildAndStoreHuffmanTreeFast(histogram, num_literals,
- /* max_bits = */ 8,
- lit_depth, lit_bits,
- storage_ix, storage);
- StoreStaticCommandHuffmanTree(storage_ix, storage);
- StoreStaticDistanceHuffmanTree(storage_ix, storage);
- StoreDataWithHuffmanCodes(input, start_pos, mask, commands,
- n_commands, &lit_depth[0], &lit_bits[0],
- kStaticCommandCodeDepth,
- kStaticCommandCodeBits,
- kStaticDistanceCodeDepth,
- kStaticDistanceCodeBits,
- storage_ix, storage);
- } else {
- HistogramLiteral lit_histo;
- HistogramCommand cmd_histo;
- HistogramDistance dist_histo;
- BuildHistograms(input, start_pos, mask, commands, n_commands,
- &lit_histo, &cmd_histo, &dist_histo);
- std::vector<uint8_t> lit_depth(256);
- std::vector<uint16_t> lit_bits(256);
- std::vector<uint8_t> cmd_depth(kNumCommandPrefixes);
- std::vector<uint16_t> cmd_bits(kNumCommandPrefixes);
- std::vector<uint8_t> dist_depth(64);
- std::vector<uint16_t> dist_bits(64);
- BuildAndStoreHuffmanTreeFast(&lit_histo.data_[0], lit_histo.total_count_,
- /* max_bits = */ 8,
- &lit_depth[0], &lit_bits[0],
- storage_ix, storage);
- BuildAndStoreHuffmanTreeFast(&cmd_histo.data_[0], cmd_histo.total_count_,
- /* max_bits = */ 10,
- &cmd_depth[0], &cmd_bits[0],
- storage_ix, storage);
- BuildAndStoreHuffmanTreeFast(&dist_histo.data_[0], dist_histo.total_count_,
- /* max_bits = */ 6,
- &dist_depth[0], &dist_bits[0],
- storage_ix, storage);
- StoreDataWithHuffmanCodes(input, start_pos, mask, commands,
- n_commands, &lit_depth[0], &lit_bits[0],
- &cmd_depth[0], &cmd_bits[0],
- &dist_depth[0], &dist_bits[0],
- storage_ix, storage);
- }
-
- if (is_last) {
- JumpToByteBoundary(storage_ix, storage);
- }
-}
-
-// This is for storing uncompressed blocks (simple raw storage of
-// bytes-as-bytes).
-void StoreUncompressedMetaBlock(bool final_block,
- const uint8_t * __restrict input,
- size_t position, size_t mask,
- size_t len,
- size_t * __restrict storage_ix,
- uint8_t * __restrict storage) {
- StoreUncompressedMetaBlockHeader(len, storage_ix, storage);
- JumpToByteBoundary(storage_ix, storage);
-
- size_t masked_pos = position & mask;
- if (masked_pos + len > mask + 1) {
- size_t len1 = mask + 1 - masked_pos;
- memcpy(&storage[*storage_ix >> 3], &input[masked_pos], len1);
- *storage_ix += len1 << 3;
- len -= len1;
- masked_pos = 0;
- }
- memcpy(&storage[*storage_ix >> 3], &input[masked_pos], len);
- *storage_ix += len << 3;
-
- // We need to clear the next 4 bytes to continue to be
- // compatible with WriteBits.
- brotli::WriteBitsPrepareStorage(*storage_ix, storage);
-
- // Since the uncompressed block itself may not be the final block, add an
- // empty one after this.
- if (final_block) {
- brotli::WriteBits(1, 1, storage_ix, storage); // islast
- brotli::WriteBits(1, 1, storage_ix, storage); // isempty
- JumpToByteBoundary(storage_ix, storage);
- }
-}
-
-void StoreSyncMetaBlock(size_t * __restrict storage_ix,
- uint8_t * __restrict storage) {
- // Empty metadata meta-block bit pattern:
- // 1 bit: is_last (0)
- // 2 bits: num nibbles (3)
- // 1 bit: reserved (0)
- // 2 bits: metadata length bytes (0)
- WriteBits(6, 6, storage_ix, storage);
- JumpToByteBoundary(storage_ix, storage);
-}
-
-} // namespace brotli
diff --git a/thirdparty/brotli/enc/brotli_bit_stream.h b/thirdparty/brotli/enc/brotli_bit_stream.h
index 6c706535..03a0d7b0 100644
--- a/thirdparty/brotli/enc/brotli_bit_stream.h
+++ b/thirdparty/brotli/enc/brotli_bit_stream.h
@@ -4,176 +4,104 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Functions to convert brotli-related data structures into the
-// brotli bit stream. The functions here operate under
-// assumption that there is enough space in the storage, i.e., there are
-// no out-of-range checks anywhere.
-//
-// These functions do bit addressing into a byte array. The byte array
-// is called "storage" and the index to the bit is called storage_ix
-// in function arguments.
+/* Functions to convert brotli-related data structures into the
+ brotli bit stream. The functions here operate under
+ assumption that there is enough space in the storage, i.e., there are
+ no out-of-range checks anywhere.
+
+ These functions do bit addressing into a byte array. The byte array
+ is called "storage" and the index to the bit is called storage_ix
+ in function arguments. */
#ifndef BROTLI_ENC_BROTLI_BIT_STREAM_H_
#define BROTLI_ENC_BROTLI_BIT_STREAM_H_
-#include <vector>
-
+#include "../common/types.h"
+#include "./command.h"
+#include "./context.h"
#include "./entropy_encode.h"
+#include "./memory.h"
#include "./metablock.h"
-#include "./types.h"
-
-namespace brotli {
-
-// All Store functions here will use a storage_ix, which is always the bit
-// position for the current storage.
-
-// Stores a number between 0 and 255.
-void StoreVarLenUint8(size_t n, size_t* storage_ix, uint8_t* storage);
-
-// Stores the compressed meta-block header.
-// REQUIRES: length > 0
-// REQUIRES: length <= (1 << 24)
-void StoreCompressedMetaBlockHeader(bool final_block,
- size_t length,
- size_t* storage_ix,
- uint8_t* storage);
-
-// Stores the uncompressed meta-block header.
-// REQUIRES: length > 0
-// REQUIRES: length <= (1 << 24)
-void StoreUncompressedMetaBlockHeader(size_t length,
- size_t* storage_ix,
- uint8_t* storage);
-
-// Stores a context map where the histogram type is always the block type.
-void StoreTrivialContextMap(size_t num_types,
- size_t context_bits,
- HuffmanTree* tree,
- size_t* storage_ix,
- uint8_t* storage);
-
-void StoreHuffmanTreeOfHuffmanTreeToBitMask(
- const int num_codes,
- const uint8_t *code_length_bitdepth,
- size_t *storage_ix,
- uint8_t *storage);
-
-void StoreHuffmanTree(const uint8_t* depths, size_t num, HuffmanTree* tree,
- size_t *storage_ix, uint8_t *storage);
-
-// Builds a Huffman tree from histogram[0:length] into depth[0:length] and
-// bits[0:length] and stores the encoded tree to the bit stream.
-void BuildAndStoreHuffmanTree(const uint32_t *histogram,
- const size_t length,
- HuffmanTree* tree,
- uint8_t* depth,
- uint16_t* bits,
- size_t* storage_ix,
- uint8_t* storage);
-
-void BuildAndStoreHuffmanTreeFast(const uint32_t *histogram,
- const size_t histogram_total,
- const size_t max_bits,
- uint8_t* depth,
- uint16_t* bits,
- size_t* storage_ix,
- uint8_t* storage);
-
-// Encodes the given context map to the bit stream. The number of different
-// histogram ids is given by num_clusters.
-void EncodeContextMap(const std::vector<uint32_t>& context_map,
- size_t num_clusters,
- HuffmanTree* tree,
- size_t* storage_ix, uint8_t* storage);
-
-// Data structure that stores everything that is needed to encode each block
-// switch command.
-struct BlockSplitCode {
- std::vector<uint32_t> type_code;
- std::vector<uint32_t> length_prefix;
- std::vector<uint32_t> length_nextra;
- std::vector<uint32_t> length_extra;
- std::vector<uint8_t> type_depths;
- std::vector<uint16_t> type_bits;
- uint8_t length_depths[kNumBlockLenPrefixes];
- uint16_t length_bits[kNumBlockLenPrefixes];
-};
-
-// Builds a BlockSplitCode data structure from the block split given by the
-// vector of block types and block lengths and stores it to the bit stream.
-void BuildAndStoreBlockSplitCode(const std::vector<uint8_t>& types,
- const std::vector<uint32_t>& lengths,
- const size_t num_types,
- BlockSplitCode* code,
- size_t* storage_ix,
- uint8_t* storage);
-
-// Stores the block switch command with index block_ix to the bit stream.
-void StoreBlockSwitch(const BlockSplitCode& code,
- const size_t block_ix,
- size_t* storage_ix,
- uint8_t* storage);
-
-// REQUIRES: length > 0
-// REQUIRES: length <= (1 << 24)
-void StoreMetaBlock(const uint8_t* input,
- size_t start_pos,
- size_t length,
- size_t mask,
- uint8_t prev_byte,
- uint8_t prev_byte2,
- bool final_block,
- uint32_t num_direct_distance_codes,
- uint32_t distance_postfix_bits,
- ContextType literal_context_mode,
- const brotli::Command *commands,
- size_t n_commands,
- const MetaBlockSplit& mb,
- size_t *storage_ix,
- uint8_t *storage);
-
-// Stores the meta-block without doing any block splitting, just collects
-// one histogram per block category and uses that for entropy coding.
-// REQUIRES: length > 0
-// REQUIRES: length <= (1 << 24)
-void StoreMetaBlockTrivial(const uint8_t* input,
- size_t start_pos,
- size_t length,
- size_t mask,
- bool is_last,
- const brotli::Command *commands,
- size_t n_commands,
- size_t *storage_ix,
- uint8_t *storage);
-
-// Same as above, but uses static prefix codes for histograms with a only a few
-// symbols, and uses static code length prefix codes for all other histograms.
-// REQUIRES: length > 0
-// REQUIRES: length <= (1 << 24)
-void StoreMetaBlockFast(const uint8_t* input,
- size_t start_pos,
- size_t length,
- size_t mask,
- bool is_last,
- const brotli::Command *commands,
- size_t n_commands,
- size_t *storage_ix,
- uint8_t *storage);
-
-// This is for storing uncompressed blocks (simple raw storage of
-// bytes-as-bytes).
-// REQUIRES: length > 0
-// REQUIRES: length <= (1 << 24)
-void StoreUncompressedMetaBlock(bool final_block,
- const uint8_t* input,
- size_t position, size_t mask,
- size_t len,
- size_t* storage_ix,
- uint8_t* storage);
-
-// Stores an empty metadata meta-block and syncs to a byte boundary.
-void StoreSyncMetaBlock(size_t* storage_ix, uint8_t* storage);
-
-} // namespace brotli
-
-#endif // BROTLI_ENC_BROTLI_BIT_STREAM_H_
+#include "./port.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+/* All Store functions here will use a storage_ix, which is always the bit
+ position for the current storage. */
+
+BROTLI_INTERNAL void BrotliStoreHuffmanTree(const uint8_t* depths, size_t num,
+ HuffmanTree* tree, size_t *storage_ix, uint8_t *storage);
+
+BROTLI_INTERNAL void BrotliBuildAndStoreHuffmanTreeFast(
+ MemoryManager* m, const uint32_t* histogram, const size_t histogram_total,
+ const size_t max_bits, uint8_t* depth, uint16_t* bits, size_t* storage_ix,
+ uint8_t* storage);
+
+/* REQUIRES: length > 0 */
+/* REQUIRES: length <= (1 << 24) */
+BROTLI_INTERNAL void BrotliStoreMetaBlock(MemoryManager* m,
+ const uint8_t* input,
+ size_t start_pos,
+ size_t length,
+ size_t mask,
+ uint8_t prev_byte,
+ uint8_t prev_byte2,
+ BROTLI_BOOL is_final_block,
+ uint32_t num_direct_distance_codes,
+ uint32_t distance_postfix_bits,
+ ContextType literal_context_mode,
+ const Command* commands,
+ size_t n_commands,
+ const MetaBlockSplit* mb,
+ size_t* storage_ix,
+ uint8_t* storage);
+
+/* Stores the meta-block without doing any block splitting, just collects
+ one histogram per block category and uses that for entropy coding.
+ REQUIRES: length > 0
+ REQUIRES: length <= (1 << 24) */
+BROTLI_INTERNAL void BrotliStoreMetaBlockTrivial(MemoryManager* m,
+ const uint8_t* input,
+ size_t start_pos,
+ size_t length,
+ size_t mask,
+ BROTLI_BOOL is_last,
+ const Command *commands,
+ size_t n_commands,
+ size_t* storage_ix,
+ uint8_t* storage);
+
+/* Same as above, but uses static prefix codes for histograms with a only a few
+ symbols, and uses static code length prefix codes for all other histograms.
+ REQUIRES: length > 0
+ REQUIRES: length <= (1 << 24) */
+BROTLI_INTERNAL void BrotliStoreMetaBlockFast(MemoryManager* m,
+ const uint8_t* input,
+ size_t start_pos,
+ size_t length,
+ size_t mask,
+ BROTLI_BOOL is_last,
+ const Command *commands,
+ size_t n_commands,
+ size_t* storage_ix,
+ uint8_t* storage);
+
+/* This is for storing uncompressed blocks (simple raw storage of
+ bytes-as-bytes).
+ REQUIRES: length > 0
+ REQUIRES: length <= (1 << 24) */
+BROTLI_INTERNAL void BrotliStoreUncompressedMetaBlock(
+ BROTLI_BOOL is_final_block, const uint8_t* input, size_t position,
+ size_t mask, size_t len, size_t* storage_ix, uint8_t* storage);
+
+/* Stores an empty metadata meta-block and syncs to a byte boundary. */
+BROTLI_INTERNAL void BrotliStoreSyncMetaBlock(size_t* storage_ix,
+ uint8_t* storage);
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
+
+#endif /* BROTLI_ENC_BROTLI_BIT_STREAM_H_ */
diff --git a/thirdparty/brotli/enc/cluster.c b/thirdparty/brotli/enc/cluster.c
new file mode 100644
index 00000000..d3370e3e
--- /dev/null
+++ b/thirdparty/brotli/enc/cluster.c
@@ -0,0 +1,56 @@
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Functions for clustering similar histograms together. */
+
+#include "./cluster.h"
+
+#include "../common/types.h"
+#include "./bit_cost.h" /* BrotliPopulationCost */
+#include "./fast_log.h"
+#include "./histogram.h"
+#include "./memory.h"
+#include "./port.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+static BROTLI_INLINE BROTLI_BOOL HistogramPairIsLess(
+ const HistogramPair* p1, const HistogramPair* p2) {
+ if (p1->cost_diff != p2->cost_diff) {
+ return TO_BROTLI_BOOL(p1->cost_diff > p2->cost_diff);
+ }
+ return TO_BROTLI_BOOL((p1->idx2 - p1->idx1) > (p2->idx2 - p2->idx1));
+}
+
+/* Returns entropy reduction of the context map when we combine two clusters. */
+static BROTLI_INLINE double ClusterCostDiff(size_t size_a, size_t size_b) {
+ size_t size_c = size_a + size_b;
+ return (double)size_a * FastLog2(size_a) +
+ (double)size_b * FastLog2(size_b) -
+ (double)size_c * FastLog2(size_c);
+}
+
+#define CODE(X) X
+
+#define FN(X) X ## Literal
+#include "./cluster_inc.h" /* NOLINT(build/include) */
+#undef FN
+
+#define FN(X) X ## Command
+#include "./cluster_inc.h" /* NOLINT(build/include) */
+#undef FN
+
+#define FN(X) X ## Distance
+#include "./cluster_inc.h" /* NOLINT(build/include) */
+#undef FN
+
+#undef CODE
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/cluster.h b/thirdparty/brotli/enc/cluster.h
index 5054faf7..241e3092 100644
--- a/thirdparty/brotli/enc/cluster.h
+++ b/thirdparty/brotli/enc/cluster.h
@@ -4,327 +4,45 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Functions for clustering similar histograms together.
+/* Functions for clustering similar histograms together. */
#ifndef BROTLI_ENC_CLUSTER_H_
#define BROTLI_ENC_CLUSTER_H_
-#include <math.h>
-#include <algorithm>
-#include <utility>
-#include <vector>
-
-#include "./bit_cost.h"
-#include "./entropy_encode.h"
-#include "./fast_log.h"
+#include "../common/types.h"
#include "./histogram.h"
+#include "./memory.h"
#include "./port.h"
-#include "./types.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
-struct HistogramPair {
+typedef struct HistogramPair {
uint32_t idx1;
uint32_t idx2;
double cost_combo;
double cost_diff;
-};
-
-inline bool operator<(const HistogramPair& p1, const HistogramPair& p2) {
- if (p1.cost_diff != p2.cost_diff) {
- return p1.cost_diff > p2.cost_diff;
- }
- return (p1.idx2 - p1.idx1) > (p2.idx2 - p2.idx1);
-}
-
-// Returns entropy reduction of the context map when we combine two clusters.
-inline double ClusterCostDiff(size_t size_a, size_t size_b) {
- size_t size_c = size_a + size_b;
- return static_cast<double>(size_a) * FastLog2(size_a) +
- static_cast<double>(size_b) * FastLog2(size_b) -
- static_cast<double>(size_c) * FastLog2(size_c);
-}
-
-// Computes the bit cost reduction by combining out[idx1] and out[idx2] and if
-// it is below a threshold, stores the pair (idx1, idx2) in the *pairs queue.
-template<typename HistogramType>
-void CompareAndPushToQueue(const HistogramType* out,
- const uint32_t* cluster_size,
- uint32_t idx1, uint32_t idx2,
- size_t max_num_pairs,
- HistogramPair* pairs,
- size_t* num_pairs) {
- if (idx1 == idx2) {
- return;
- }
- if (idx2 < idx1) {
- uint32_t t = idx2;
- idx2 = idx1;
- idx1 = t;
- }
- bool store_pair = false;
- HistogramPair p;
- p.idx1 = idx1;
- p.idx2 = idx2;
- p.cost_diff = 0.5 * ClusterCostDiff(cluster_size[idx1], cluster_size[idx2]);
- p.cost_diff -= out[idx1].bit_cost_;
- p.cost_diff -= out[idx2].bit_cost_;
-
- if (out[idx1].total_count_ == 0) {
- p.cost_combo = out[idx2].bit_cost_;
- store_pair = true;
- } else if (out[idx2].total_count_ == 0) {
- p.cost_combo = out[idx1].bit_cost_;
- store_pair = true;
- } else {
- double threshold = *num_pairs == 0 ? 1e99 :
- std::max(0.0, pairs[0].cost_diff);
- HistogramType combo = out[idx1];
- combo.AddHistogram(out[idx2]);
- double cost_combo = PopulationCost(combo);
- if (cost_combo < threshold - p.cost_diff) {
- p.cost_combo = cost_combo;
- store_pair = true;
- }
- }
- if (store_pair) {
- p.cost_diff += p.cost_combo;
- if (*num_pairs > 0 && pairs[0] < p) {
- // Replace the top of the queue if needed.
- if (*num_pairs < max_num_pairs) {
- pairs[*num_pairs] = pairs[0];
- ++(*num_pairs);
- }
- pairs[0] = p;
- } else if (*num_pairs < max_num_pairs) {
- pairs[*num_pairs] = p;
- ++(*num_pairs);
- }
- }
-}
-
-template<typename HistogramType>
-size_t HistogramCombine(HistogramType* out,
- uint32_t* cluster_size,
- uint32_t* symbols,
- uint32_t* clusters,
- HistogramPair* pairs,
- size_t num_clusters,
- size_t symbols_size,
- size_t max_clusters,
- size_t max_num_pairs) {
- double cost_diff_threshold = 0.0;
- size_t min_cluster_size = 1;
-
- // We maintain a vector of histogram pairs, with the property that the pair
- // with the maximum bit cost reduction is the first.
- size_t num_pairs = 0;
- for (size_t idx1 = 0; idx1 < num_clusters; ++idx1) {
- for (size_t idx2 = idx1 + 1; idx2 < num_clusters; ++idx2) {
- CompareAndPushToQueue(out, cluster_size, clusters[idx1], clusters[idx2],
- max_num_pairs, &pairs[0], &num_pairs);
- }
- }
-
- while (num_clusters > min_cluster_size) {
- if (pairs[0].cost_diff >= cost_diff_threshold) {
- cost_diff_threshold = 1e99;
- min_cluster_size = max_clusters;
- continue;
- }
- // Take the best pair from the top of heap.
- uint32_t best_idx1 = pairs[0].idx1;
- uint32_t best_idx2 = pairs[0].idx2;
- out[best_idx1].AddHistogram(out[best_idx2]);
- out[best_idx1].bit_cost_ = pairs[0].cost_combo;
- cluster_size[best_idx1] += cluster_size[best_idx2];
- for (size_t i = 0; i < symbols_size; ++i) {
- if (symbols[i] == best_idx2) {
- symbols[i] = best_idx1;
- }
- }
- for (size_t i = 0; i < num_clusters; ++i) {
- if (clusters[i] == best_idx2) {
- memmove(&clusters[i], &clusters[i + 1],
- (num_clusters - i - 1) * sizeof(clusters[0]));
- break;
- }
- }
- --num_clusters;
- // Remove pairs intersecting the just combined best pair.
- size_t copy_to_idx = 0;
- for (size_t i = 0; i < num_pairs; ++i) {
- HistogramPair& p = pairs[i];
- if (p.idx1 == best_idx1 || p.idx2 == best_idx1 ||
- p.idx1 == best_idx2 || p.idx2 == best_idx2) {
- // Remove invalid pair from the queue.
- continue;
- }
- if (pairs[0] < p) {
- // Replace the top of the queue if needed.
- HistogramPair front = pairs[0];
- pairs[0] = p;
- pairs[copy_to_idx] = front;
- } else {
- pairs[copy_to_idx] = p;
- }
- ++copy_to_idx;
- }
- num_pairs = copy_to_idx;
-
- // Push new pairs formed with the combined histogram to the heap.
- for (size_t i = 0; i < num_clusters; ++i) {
- CompareAndPushToQueue(out, cluster_size, best_idx1, clusters[i],
- max_num_pairs, &pairs[0], &num_pairs);
- }
- }
- return num_clusters;
-}
-
-// -----------------------------------------------------------------------------
-// Histogram refinement
-
-// What is the bit cost of moving histogram from cur_symbol to candidate.
-template<typename HistogramType>
-double HistogramBitCostDistance(const HistogramType& histogram,
- const HistogramType& candidate) {
- if (histogram.total_count_ == 0) {
- return 0.0;
- }
- HistogramType tmp = histogram;
- tmp.AddHistogram(candidate);
- return PopulationCost(tmp) - candidate.bit_cost_;
-}
-
-// Find the best 'out' histogram for each of the 'in' histograms.
-// When called, clusters[0..num_clusters) contains the unique values from
-// symbols[0..in_size), but this property is not preserved in this function.
-// Note: we assume that out[]->bit_cost_ is already up-to-date.
-template<typename HistogramType>
-void HistogramRemap(const HistogramType* in, size_t in_size,
- const uint32_t* clusters, size_t num_clusters,
- HistogramType* out, uint32_t* symbols) {
- for (size_t i = 0; i < in_size; ++i) {
- uint32_t best_out = i == 0 ? symbols[0] : symbols[i - 1];
- double best_bits = HistogramBitCostDistance(in[i], out[best_out]);
- for (size_t j = 0; j < num_clusters; ++j) {
- const double cur_bits = HistogramBitCostDistance(in[i], out[clusters[j]]);
- if (cur_bits < best_bits) {
- best_bits = cur_bits;
- best_out = clusters[j];
- }
- }
- symbols[i] = best_out;
- }
-
- // Recompute each out based on raw and symbols.
- for (size_t j = 0; j < num_clusters; ++j) {
- out[clusters[j]].Clear();
- }
- for (size_t i = 0; i < in_size; ++i) {
- out[symbols[i]].AddHistogram(in[i]);
- }
-}
-
-// Reorders elements of the out[0..length) array and changes values in
-// symbols[0..length) array in the following way:
-// * when called, symbols[] contains indexes into out[], and has N unique
-// values (possibly N < length)
-// * on return, symbols'[i] = f(symbols[i]) and
-// out'[symbols'[i]] = out[symbols[i]], for each 0 <= i < length,
-// where f is a bijection between the range of symbols[] and [0..N), and
-// the first occurrences of values in symbols'[i] come in consecutive
-// increasing order.
-// Returns N, the number of unique values in symbols[].
-template<typename HistogramType>
-size_t HistogramReindex(HistogramType* out, uint32_t* symbols, size_t length) {
- static const uint32_t kInvalidIndex = std::numeric_limits<uint32_t>::max();
- std::vector<uint32_t> new_index(length, kInvalidIndex);
- uint32_t next_index = 0;
- for (size_t i = 0; i < length; ++i) {
- if (new_index[symbols[i]] == kInvalidIndex) {
- new_index[symbols[i]] = next_index;
- ++next_index;
- }
- }
- std::vector<HistogramType> tmp(next_index);
- next_index = 0;
- for (size_t i = 0; i < length; ++i) {
- if (new_index[symbols[i]] == next_index) {
- tmp[next_index] = out[symbols[i]];
- ++next_index;
- }
- symbols[i] = new_index[symbols[i]];
- }
- for (size_t i = 0; i < next_index; ++i) {
- out[i] = tmp[i];
- }
- return next_index;
-}
-
-// Clusters similar histograms in 'in' together, the selected histograms are
-// placed in 'out', and for each index in 'in', *histogram_symbols will
-// indicate which of the 'out' histograms is the best approximation.
-template<typename HistogramType>
-void ClusterHistograms(const std::vector<HistogramType>& in,
- size_t num_contexts, size_t num_blocks,
- size_t max_histograms,
- std::vector<HistogramType>* out,
- std::vector<uint32_t>* histogram_symbols) {
- const size_t in_size = num_contexts * num_blocks;
- assert(in_size == in.size());
- std::vector<uint32_t> cluster_size(in_size, 1);
- std::vector<uint32_t> clusters(in_size);
- size_t num_clusters = 0;
- out->resize(in_size);
- histogram_symbols->resize(in_size);
- for (size_t i = 0; i < in_size; ++i) {
- (*out)[i] = in[i];
- (*out)[i].bit_cost_ = PopulationCost(in[i]);
- (*histogram_symbols)[i] = static_cast<uint32_t>(i);
- }
-
- const size_t max_input_histograms = 64;
- // For the first pass of clustering, we allow all pairs.
- size_t max_num_pairs = max_input_histograms * max_input_histograms / 2;
- std::vector<HistogramPair> pairs(max_num_pairs + 1);
+} HistogramPair;
- for (size_t i = 0; i < in_size; i += max_input_histograms) {
- size_t num_to_combine = std::min(in_size - i, max_input_histograms);
- for (size_t j = 0; j < num_to_combine; ++j) {
- clusters[num_clusters + j] = static_cast<uint32_t>(i + j);
- }
- size_t num_new_clusters =
- HistogramCombine(&(*out)[0], &cluster_size[0],
- &(*histogram_symbols)[i],
- &clusters[num_clusters], &pairs[0],
- num_to_combine, num_to_combine,
- max_histograms, max_num_pairs);
- num_clusters += num_new_clusters;
- }
+#define CODE(X) /* Declaration */;
- // For the second pass, we limit the total number of histogram pairs.
- // After this limit is reached, we only keep searching for the best pair.
- max_num_pairs =
- std::min(64 * num_clusters, (num_clusters / 2) * num_clusters);
- pairs.resize(max_num_pairs + 1);
+#define FN(X) X ## Literal
+#include "./cluster_inc.h" /* NOLINT(build/include) */
+#undef FN
- // Collapse similar histograms.
- num_clusters = HistogramCombine(&(*out)[0], &cluster_size[0],
- &(*histogram_symbols)[0], &clusters[0],
- &pairs[0], num_clusters, in_size,
- max_histograms, max_num_pairs);
+#define FN(X) X ## Command
+#include "./cluster_inc.h" /* NOLINT(build/include) */
+#undef FN
- // Find the optimal map from original histograms to the final ones.
- HistogramRemap(&in[0], in_size, &clusters[0], num_clusters,
- &(*out)[0], &(*histogram_symbols)[0]);
+#define FN(X) X ## Distance
+#include "./cluster_inc.h" /* NOLINT(build/include) */
+#undef FN
- // Convert the context map to a canonical form.
- size_t num_histograms =
- HistogramReindex(&(*out)[0], &(*histogram_symbols)[0], in_size);
- out->resize(num_histograms);
-}
+#undef CODE
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_CLUSTER_H_
+#endif /* BROTLI_ENC_CLUSTER_H_ */
diff --git a/thirdparty/brotli/enc/cluster_inc.h b/thirdparty/brotli/enc/cluster_inc.h
new file mode 100644
index 00000000..cf279bde
--- /dev/null
+++ b/thirdparty/brotli/enc/cluster_inc.h
@@ -0,0 +1,315 @@
+/* NOLINT(build/header_guard) */
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* template parameters: FN, CODE */
+
+#define HistogramType FN(Histogram)
+
+/* Computes the bit cost reduction by combining out[idx1] and out[idx2] and if
+ it is below a threshold, stores the pair (idx1, idx2) in the *pairs queue. */
+BROTLI_INTERNAL void FN(BrotliCompareAndPushToQueue)(
+ const HistogramType* out, const uint32_t* cluster_size, uint32_t idx1,
+ uint32_t idx2, size_t max_num_pairs, HistogramPair* pairs,
+ size_t* num_pairs) CODE({
+ BROTLI_BOOL is_good_pair = BROTLI_FALSE;
+ HistogramPair p;
+ if (idx1 == idx2) {
+ return;
+ }
+ if (idx2 < idx1) {
+ uint32_t t = idx2;
+ idx2 = idx1;
+ idx1 = t;
+ }
+ p.idx1 = idx1;
+ p.idx2 = idx2;
+ p.cost_diff = 0.5 * ClusterCostDiff(cluster_size[idx1], cluster_size[idx2]);
+ p.cost_diff -= out[idx1].bit_cost_;
+ p.cost_diff -= out[idx2].bit_cost_;
+
+ if (out[idx1].total_count_ == 0) {
+ p.cost_combo = out[idx2].bit_cost_;
+ is_good_pair = BROTLI_TRUE;
+ } else if (out[idx2].total_count_ == 0) {
+ p.cost_combo = out[idx1].bit_cost_;
+ is_good_pair = BROTLI_TRUE;
+ } else {
+ double threshold = *num_pairs == 0 ? 1e99 :
+ BROTLI_MAX(double, 0.0, pairs[0].cost_diff);
+ HistogramType combo = out[idx1];
+ double cost_combo;
+ FN(HistogramAddHistogram)(&combo, &out[idx2]);
+ cost_combo = FN(BrotliPopulationCost)(&combo);
+ if (cost_combo < threshold - p.cost_diff) {
+ p.cost_combo = cost_combo;
+ is_good_pair = BROTLI_TRUE;
+ }
+ }
+ if (is_good_pair) {
+ p.cost_diff += p.cost_combo;
+ if (*num_pairs > 0 && HistogramPairIsLess(&pairs[0], &p)) {
+ /* Replace the top of the queue if needed. */
+ if (*num_pairs < max_num_pairs) {
+ pairs[*num_pairs] = pairs[0];
+ ++(*num_pairs);
+ }
+ pairs[0] = p;
+ } else if (*num_pairs < max_num_pairs) {
+ pairs[*num_pairs] = p;
+ ++(*num_pairs);
+ }
+ }
+})
+
+BROTLI_INTERNAL size_t FN(BrotliHistogramCombine)(HistogramType* out,
+ uint32_t* cluster_size,
+ uint32_t* symbols,
+ uint32_t* clusters,
+ HistogramPair* pairs,
+ size_t num_clusters,
+ size_t symbols_size,
+ size_t max_clusters,
+ size_t max_num_pairs) CODE({
+ double cost_diff_threshold = 0.0;
+ size_t min_cluster_size = 1;
+ size_t num_pairs = 0;
+
+ {
+ /* We maintain a vector of histogram pairs, with the property that the pair
+ with the maximum bit cost reduction is the first. */
+ size_t idx1;
+ for (idx1 = 0; idx1 < num_clusters; ++idx1) {
+ size_t idx2;
+ for (idx2 = idx1 + 1; idx2 < num_clusters; ++idx2) {
+ FN(BrotliCompareAndPushToQueue)(out, cluster_size, clusters[idx1],
+ clusters[idx2], max_num_pairs, &pairs[0], &num_pairs);
+ }
+ }
+ }
+
+ while (num_clusters > min_cluster_size) {
+ uint32_t best_idx1;
+ uint32_t best_idx2;
+ size_t i;
+ if (pairs[0].cost_diff >= cost_diff_threshold) {
+ cost_diff_threshold = 1e99;
+ min_cluster_size = max_clusters;
+ continue;
+ }
+ /* Take the best pair from the top of heap. */
+ best_idx1 = pairs[0].idx1;
+ best_idx2 = pairs[0].idx2;
+ FN(HistogramAddHistogram)(&out[best_idx1], &out[best_idx2]);
+ out[best_idx1].bit_cost_ = pairs[0].cost_combo;
+ cluster_size[best_idx1] += cluster_size[best_idx2];
+ for (i = 0; i < symbols_size; ++i) {
+ if (symbols[i] == best_idx2) {
+ symbols[i] = best_idx1;
+ }
+ }
+ for (i = 0; i < num_clusters; ++i) {
+ if (clusters[i] == best_idx2) {
+ memmove(&clusters[i], &clusters[i + 1],
+ (num_clusters - i - 1) * sizeof(clusters[0]));
+ break;
+ }
+ }
+ --num_clusters;
+ {
+ /* Remove pairs intersecting the just combined best pair. */
+ size_t copy_to_idx = 0;
+ for (i = 0; i < num_pairs; ++i) {
+ HistogramPair* p = &pairs[i];
+ if (p->idx1 == best_idx1 || p->idx2 == best_idx1 ||
+ p->idx1 == best_idx2 || p->idx2 == best_idx2) {
+ /* Remove invalid pair from the queue. */
+ continue;
+ }
+ if (HistogramPairIsLess(&pairs[0], p)) {
+ /* Replace the top of the queue if needed. */
+ HistogramPair front = pairs[0];
+ pairs[0] = *p;
+ pairs[copy_to_idx] = front;
+ } else {
+ pairs[copy_to_idx] = *p;
+ }
+ ++copy_to_idx;
+ }
+ num_pairs = copy_to_idx;
+ }
+
+ /* Push new pairs formed with the combined histogram to the heap. */
+ for (i = 0; i < num_clusters; ++i) {
+ FN(BrotliCompareAndPushToQueue)(out, cluster_size, best_idx1, clusters[i],
+ max_num_pairs, &pairs[0], &num_pairs);
+ }
+ }
+ return num_clusters;
+})
+
+/* What is the bit cost of moving histogram from cur_symbol to candidate. */
+BROTLI_INTERNAL double FN(BrotliHistogramBitCostDistance)(
+ const HistogramType* histogram, const HistogramType* candidate) CODE({
+ if (histogram->total_count_ == 0) {
+ return 0.0;
+ } else {
+ HistogramType tmp = *histogram;
+ FN(HistogramAddHistogram)(&tmp, candidate);
+ return FN(BrotliPopulationCost)(&tmp) - candidate->bit_cost_;
+ }
+})
+
+/* Find the best 'out' histogram for each of the 'in' histograms.
+ When called, clusters[0..num_clusters) contains the unique values from
+ symbols[0..in_size), but this property is not preserved in this function.
+ Note: we assume that out[]->bit_cost_ is already up-to-date. */
+BROTLI_INTERNAL void FN(BrotliHistogramRemap)(const HistogramType* in,
+ size_t in_size, const uint32_t* clusters, size_t num_clusters,
+ HistogramType* out, uint32_t* symbols) CODE({
+ size_t i;
+ for (i = 0; i < in_size; ++i) {
+ uint32_t best_out = i == 0 ? symbols[0] : symbols[i - 1];
+ double best_bits =
+ FN(BrotliHistogramBitCostDistance)(&in[i], &out[best_out]);
+ size_t j;
+ for (j = 0; j < num_clusters; ++j) {
+ const double cur_bits =
+ FN(BrotliHistogramBitCostDistance)(&in[i], &out[clusters[j]]);
+ if (cur_bits < best_bits) {
+ best_bits = cur_bits;
+ best_out = clusters[j];
+ }
+ }
+ symbols[i] = best_out;
+ }
+
+ /* Recompute each out based on raw and symbols. */
+ for (i = 0; i < num_clusters; ++i) {
+ FN(HistogramClear)(&out[clusters[i]]);
+ }
+ for (i = 0; i < in_size; ++i) {
+ FN(HistogramAddHistogram)(&out[symbols[i]], &in[i]);
+ }
+})
+
+/* Reorders elements of the out[0..length) array and changes values in
+ symbols[0..length) array in the following way:
+ * when called, symbols[] contains indexes into out[], and has N unique
+ values (possibly N < length)
+ * on return, symbols'[i] = f(symbols[i]) and
+ out'[symbols'[i]] = out[symbols[i]], for each 0 <= i < length,
+ where f is a bijection between the range of symbols[] and [0..N), and
+ the first occurrences of values in symbols'[i] come in consecutive
+ increasing order.
+ Returns N, the number of unique values in symbols[]. */
+BROTLI_INTERNAL size_t FN(BrotliHistogramReindex)(MemoryManager* m,
+ HistogramType* out, uint32_t* symbols, size_t length) CODE({
+ static const uint32_t kInvalidIndex = BROTLI_UINT32_MAX;
+ uint32_t* new_index = BROTLI_ALLOC(m, uint32_t, length);
+ uint32_t next_index;
+ HistogramType* tmp;
+ size_t i;
+ if (BROTLI_IS_OOM(m)) return 0;
+ for (i = 0; i < length; ++i) {
+ new_index[i] = kInvalidIndex;
+ }
+ next_index = 0;
+ for (i = 0; i < length; ++i) {
+ if (new_index[symbols[i]] == kInvalidIndex) {
+ new_index[symbols[i]] = next_index;
+ ++next_index;
+ }
+ }
+ /* TODO: by using idea of "cycle-sort" we can avoid allocation of
+ tmp and reduce the number of copying by the factor of 2. */
+ tmp = BROTLI_ALLOC(m, HistogramType, next_index);
+ if (BROTLI_IS_OOM(m)) return 0;
+ next_index = 0;
+ for (i = 0; i < length; ++i) {
+ if (new_index[symbols[i]] == next_index) {
+ tmp[next_index] = out[symbols[i]];
+ ++next_index;
+ }
+ symbols[i] = new_index[symbols[i]];
+ }
+ BROTLI_FREE(m, new_index);
+ for (i = 0; i < next_index; ++i) {
+ out[i] = tmp[i];
+ }
+ BROTLI_FREE(m, tmp);
+ return next_index;
+})
+
+BROTLI_INTERNAL void FN(BrotliClusterHistograms)(
+ MemoryManager* m, const HistogramType* in, const size_t in_size,
+ size_t max_histograms, HistogramType* out, size_t* out_size,
+ uint32_t* histogram_symbols) CODE({
+ uint32_t* cluster_size = BROTLI_ALLOC(m, uint32_t, in_size);
+ uint32_t* clusters = BROTLI_ALLOC(m, uint32_t, in_size);
+ size_t num_clusters = 0;
+ const size_t max_input_histograms = 64;
+ size_t pairs_capacity = max_input_histograms * max_input_histograms / 2;
+ /* For the first pass of clustering, we allow all pairs. */
+ HistogramPair* pairs = BROTLI_ALLOC(m, HistogramPair, pairs_capacity + 1);
+ size_t i;
+
+ if (BROTLI_IS_OOM(m)) return;
+
+ for (i = 0; i < in_size; ++i) {
+ cluster_size[i] = 1;
+ }
+
+ for (i = 0; i < in_size; ++i) {
+ out[i] = in[i];
+ out[i].bit_cost_ = FN(BrotliPopulationCost)(&in[i]);
+ histogram_symbols[i] = (uint32_t)i;
+ }
+
+ for (i = 0; i < in_size; i += max_input_histograms) {
+ size_t num_to_combine =
+ BROTLI_MIN(size_t, in_size - i, max_input_histograms);
+ size_t num_new_clusters;
+ size_t j;
+ for (j = 0; j < num_to_combine; ++j) {
+ clusters[num_clusters + j] = (uint32_t)(i + j);
+ }
+ num_new_clusters =
+ FN(BrotliHistogramCombine)(out, cluster_size,
+ &histogram_symbols[i],
+ &clusters[num_clusters], pairs,
+ num_to_combine, num_to_combine,
+ max_histograms, pairs_capacity);
+ num_clusters += num_new_clusters;
+ }
+
+ {
+ /* For the second pass, we limit the total number of histogram pairs.
+ After this limit is reached, we only keep searching for the best pair. */
+ size_t max_num_pairs = BROTLI_MIN(size_t,
+ 64 * num_clusters, (num_clusters / 2) * num_clusters);
+ BROTLI_ENSURE_CAPACITY(
+ m, HistogramPair, pairs, pairs_capacity, max_num_pairs + 1);
+ if (BROTLI_IS_OOM(m)) return;
+
+ /* Collapse similar histograms. */
+ num_clusters = FN(BrotliHistogramCombine)(out, cluster_size,
+ histogram_symbols, clusters,
+ pairs, num_clusters, in_size,
+ max_histograms, max_num_pairs);
+ }
+ BROTLI_FREE(m, pairs);
+ BROTLI_FREE(m, cluster_size);
+ /* Find the optimal map from original histograms to the final ones. */
+ FN(BrotliHistogramRemap)(in, in_size, clusters, num_clusters,
+ out, histogram_symbols);
+ BROTLI_FREE(m, clusters);
+ /* Convert the context map to a canonical form. */
+ *out_size = FN(BrotliHistogramReindex)(m, out, histogram_symbols, in_size);
+ if (BROTLI_IS_OOM(m)) return;
+})
+
+#undef HistogramType
diff --git a/thirdparty/brotli/enc/command.h b/thirdparty/brotli/enc/command.h
index b5cc872b..a5fa6aeb 100644
--- a/thirdparty/brotli/enc/command.h
+++ b/thirdparty/brotli/enc/command.h
@@ -4,16 +4,19 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// This class models a sequence of literals and a backward reference copy.
+/* This class models a sequence of literals and a backward reference copy. */
#ifndef BROTLI_ENC_COMMAND_H_
#define BROTLI_ENC_COMMAND_H_
+#include "../common/types.h"
+#include "../common/port.h"
#include "./fast_log.h"
#include "./prefix.h"
-#include "./types.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
static uint32_t kInsBase[] = { 0, 1, 2, 3, 4, 5, 6, 8, 10, 14, 18, 26, 34, 50,
66, 98, 130, 194, 322, 578, 1090, 2114, 6210, 22594 };
@@ -24,15 +27,14 @@ static uint32_t kCopyBase[] = { 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 14, 18, 22, 30,
static uint32_t kCopyExtra[] = { 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 3, 3,
4, 4, 5, 5, 6, 7, 8, 9, 10, 24 };
-static inline uint16_t GetInsertLengthCode(size_t insertlen) {
+static BROTLI_INLINE uint16_t GetInsertLengthCode(size_t insertlen) {
if (insertlen < 6) {
- return static_cast<uint16_t>(insertlen);
+ return (uint16_t)insertlen;
} else if (insertlen < 130) {
- insertlen -= 2;
- uint32_t nbits = Log2FloorNonZero(insertlen) - 1u;
- return static_cast<uint16_t>((nbits << 1) + (insertlen >> nbits) + 2);
+ uint32_t nbits = Log2FloorNonZero(insertlen - 2) - 1u;
+ return (uint16_t)((nbits << 1) + ((insertlen - 2) >> nbits) + 2);
} else if (insertlen < 2114) {
- return static_cast<uint16_t>(Log2FloorNonZero(insertlen - 66) + 10);
+ return (uint16_t)(Log2FloorNonZero(insertlen - 66) + 10);
} else if (insertlen < 6210) {
return 21u;
} else if (insertlen < 22594) {
@@ -42,115 +44,120 @@ static inline uint16_t GetInsertLengthCode(size_t insertlen) {
}
}
-static inline uint16_t GetCopyLengthCode(size_t copylen) {
+static BROTLI_INLINE uint16_t GetCopyLengthCode(size_t copylen) {
if (copylen < 10) {
- return static_cast<uint16_t>(copylen - 2);
+ return (uint16_t)(copylen - 2);
} else if (copylen < 134) {
- copylen -= 6;
- uint32_t nbits = Log2FloorNonZero(copylen) - 1u;
- return static_cast<uint16_t>((nbits << 1) + (copylen >> nbits) + 4);
+ uint32_t nbits = Log2FloorNonZero(copylen - 6) - 1u;
+ return (uint16_t)((nbits << 1) + ((copylen - 6) >> nbits) + 4);
} else if (copylen < 2118) {
- return static_cast<uint16_t>(Log2FloorNonZero(copylen - 70) + 12);
+ return (uint16_t)(Log2FloorNonZero(copylen - 70) + 12);
} else {
return 23u;
}
}
-static inline uint16_t CombineLengthCodes(
- uint16_t inscode, uint16_t copycode, bool use_last_distance) {
+static BROTLI_INLINE uint16_t CombineLengthCodes(
+ uint16_t inscode, uint16_t copycode, BROTLI_BOOL use_last_distance) {
uint16_t bits64 =
- static_cast<uint16_t>((copycode & 0x7u) | ((inscode & 0x7u) << 3));
+ (uint16_t)((copycode & 0x7u) | ((inscode & 0x7u) << 3));
if (use_last_distance && inscode < 8 && copycode < 16) {
return (copycode < 8) ? bits64 : (bits64 | 64);
} else {
- // "To convert an insert-and-copy length code to an insert length code and
- // a copy length code, the following table can be used"
+ /* "To convert an insert-and-copy length code to an insert length code and
+ a copy length code, the following table can be used" */
static const uint16_t cells[9] = { 128u, 192u, 384u, 256u, 320u, 512u,
448u, 576u, 640u };
return cells[(copycode >> 3) + 3 * (inscode >> 3)] | bits64;
}
}
-static inline void GetLengthCode(size_t insertlen, size_t copylen,
- bool use_last_distance,
- uint16_t* code) {
+static BROTLI_INLINE void GetLengthCode(size_t insertlen, size_t copylen,
+ BROTLI_BOOL use_last_distance,
+ uint16_t* code) {
uint16_t inscode = GetInsertLengthCode(insertlen);
uint16_t copycode = GetCopyLengthCode(copylen);
*code = CombineLengthCodes(inscode, copycode, use_last_distance);
}
-static inline uint32_t GetInsertBase(uint16_t inscode) {
+static BROTLI_INLINE uint32_t GetInsertBase(uint16_t inscode) {
return kInsBase[inscode];
}
-static inline uint32_t GetInsertExtra(uint16_t inscode) {
+static BROTLI_INLINE uint32_t GetInsertExtra(uint16_t inscode) {
return kInsExtra[inscode];
}
-static inline uint32_t GetCopyBase(uint16_t copycode) {
+static BROTLI_INLINE uint32_t GetCopyBase(uint16_t copycode) {
return kCopyBase[copycode];
}
-static inline uint32_t GetCopyExtra(uint16_t copycode) {
+static BROTLI_INLINE uint32_t GetCopyExtra(uint16_t copycode) {
return kCopyExtra[copycode];
}
-struct Command {
- // distance_code is e.g. 0 for same-as-last short code, or 16 for offset 1.
- Command(size_t insertlen, size_t copylen, size_t copylen_code,
- size_t distance_code)
- : insert_len_(static_cast<uint32_t>(insertlen)) {
- copy_len_ = static_cast<uint32_t>(
- copylen | ((copylen_code ^ copylen) << 24));
- // The distance prefix and extra bits are stored in this Command as if
- // npostfix and ndirect were 0, they are only recomputed later after the
- // clustering if needed.
- PrefixEncodeCopyDistance(distance_code, 0, 0, &dist_prefix_, &dist_extra_);
- GetLengthCode(insertlen, copylen_code, dist_prefix_ == 0,
- &cmd_prefix_);
- }
+typedef struct Command {
+ uint32_t insert_len_;
+ /* Stores copy_len in low 24 bits and copy_len XOR copy_code in high 8 bit. */
+ uint32_t copy_len_;
+ uint32_t dist_extra_;
+ uint16_t cmd_prefix_;
+ uint16_t dist_prefix_;
+} Command;
+
+/* distance_code is e.g. 0 for same-as-last short code, or 16 for offset 1. */
+static BROTLI_INLINE void InitCommand(Command* self, size_t insertlen,
+ size_t copylen, size_t copylen_code, size_t distance_code) {
+ self->insert_len_ = (uint32_t)insertlen;
+ self->copy_len_ = (uint32_t)(copylen | ((copylen_code ^ copylen) << 24));
+ /* The distance prefix and extra bits are stored in this Command as if
+ npostfix and ndirect were 0, they are only recomputed later after the
+ clustering if needed. */
+ PrefixEncodeCopyDistance(
+ distance_code, 0, 0, &self->dist_prefix_, &self->dist_extra_);
+ GetLengthCode(
+ insertlen, copylen_code, TO_BROTLI_BOOL(self->dist_prefix_ == 0),
+ &self->cmd_prefix_);
+}
- explicit Command(size_t insertlen)
- : insert_len_(static_cast<uint32_t>(insertlen))
- , copy_len_(4 << 24), dist_extra_(0), dist_prefix_(16) {
- GetLengthCode(insertlen, 4, dist_prefix_ == 0, &cmd_prefix_);
- }
+static BROTLI_INLINE void InitInsertCommand(Command* self, size_t insertlen) {
+ self->insert_len_ = (uint32_t)insertlen;
+ self->copy_len_ = 4 << 24;
+ self->dist_extra_ = 0;
+ self->dist_prefix_ = 16;
+ GetLengthCode(insertlen, 4, BROTLI_FALSE, &self->cmd_prefix_);
+}
- uint32_t DistanceCode(void) const {
- if (dist_prefix_ < 16) {
- return dist_prefix_;
- }
- uint32_t nbits = dist_extra_ >> 24;
- uint32_t extra = dist_extra_ & 0xffffff;
- uint32_t prefix = dist_prefix_ - 12 - 2 * nbits;
+static BROTLI_INLINE uint32_t CommandDistanceCode(const Command* self) {
+ if (self->dist_prefix_ < 16) {
+ return self->dist_prefix_;
+ } else {
+ uint32_t nbits = self->dist_extra_ >> 24;
+ uint32_t extra = self->dist_extra_ & 0xffffff;
+ uint32_t prefix = self->dist_prefix_ - 12u - 2u * nbits;
return (prefix << nbits) + extra + 12;
}
+}
- uint32_t DistanceContext(void) const {
- uint32_t r = cmd_prefix_ >> 6;
- uint32_t c = cmd_prefix_ & 7;
- if ((r == 0 || r == 2 || r == 4 || r == 7) && (c <= 2)) {
- return c;
- }
- return 3;
- }
-
- inline uint32_t copy_len(void) const {
- return copy_len_ & 0xFFFFFF;
+static BROTLI_INLINE uint32_t CommandDistanceContext(const Command* self) {
+ uint32_t r = self->cmd_prefix_ >> 6;
+ uint32_t c = self->cmd_prefix_ & 7;
+ if ((r == 0 || r == 2 || r == 4 || r == 7) && (c <= 2)) {
+ return c;
}
+ return 3;
+}
- inline uint32_t copy_len_code(void) const {
- return (copy_len_ & 0xFFFFFF) ^ (copy_len_ >> 24);
- }
+static BROTLI_INLINE uint32_t CommandCopyLen(const Command* self) {
+ return self->copy_len_ & 0xFFFFFF;
+}
- uint32_t insert_len_;
- /* Stores copy_len in low 24 bits and copy_len XOR copy_code in high 8 bit. */
- uint32_t copy_len_;
- uint32_t dist_extra_;
- uint16_t cmd_prefix_;
- uint16_t dist_prefix_;
-};
+static BROTLI_INLINE uint32_t CommandCopyLenCode(const Command* self) {
+ return (self->copy_len_ & 0xFFFFFF) ^ (self->copy_len_ >> 24);
+}
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_COMMAND_H_
+#endif /* BROTLI_ENC_COMMAND_H_ */
diff --git a/thirdparty/brotli/enc/compress_fragment.c b/thirdparty/brotli/enc/compress_fragment.c
new file mode 100644
index 00000000..5b787eda
--- /dev/null
+++ b/thirdparty/brotli/enc/compress_fragment.c
@@ -0,0 +1,747 @@
+/* Copyright 2015 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Function for fast encoding of an input fragment, independently from the input
+ history. This function uses one-pass processing: when we find a backward
+ match, we immediately emit the corresponding command and literal codes to
+ the bit stream.
+
+ Adapted from the CompressFragment() function in
+ https://github.com/google/snappy/blob/master/snappy.cc */
+
+#include "./compress_fragment.h"
+
+#include <string.h> /* memcmp, memcpy, memset */
+
+#include "../common/types.h"
+#include "./brotli_bit_stream.h"
+#include "./entropy_encode.h"
+#include "./fast_log.h"
+#include "./find_match_length.h"
+#include "./memory.h"
+#include "./port.h"
+#include "./write_bits.h"
+
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+/* kHashMul32 multiplier has these properties:
+ * The multiplier must be odd. Otherwise we may lose the highest bit.
+ * No long streaks of 1s or 0s.
+ * There is no effort to ensure that it is a prime, the oddity is enough
+ for this use.
+ * The number has been tuned heuristically against compression benchmarks. */
+static const uint32_t kHashMul32 = 0x1e35a7bd;
+
+static BROTLI_INLINE uint32_t Hash(const uint8_t* p, size_t shift) {
+ const uint64_t h = (BROTLI_UNALIGNED_LOAD64(p) << 24) * kHashMul32;
+ return (uint32_t)(h >> shift);
+}
+
+static BROTLI_INLINE uint32_t HashBytesAtOffset(
+ uint64_t v, int offset, size_t shift) {
+ assert(offset >= 0);
+ assert(offset <= 3);
+ {
+ const uint64_t h = ((v >> (8 * offset)) << 24) * kHashMul32;
+ return (uint32_t)(h >> shift);
+ }
+}
+
+static BROTLI_INLINE BROTLI_BOOL IsMatch(const uint8_t* p1, const uint8_t* p2) {
+ return TO_BROTLI_BOOL(
+ BROTLI_UNALIGNED_LOAD32(p1) == BROTLI_UNALIGNED_LOAD32(p2) &&
+ p1[4] == p2[4]);
+}
+
+/* Builds a literal prefix code into "depths" and "bits" based on the statistics
+ of the "input" string and stores it into the bit stream.
+ Note that the prefix code here is built from the pre-LZ77 input, therefore
+ we can only approximate the statistics of the actual literal stream.
+ Moreover, for long inputs we build a histogram from a sample of the input
+ and thus have to assign a non-zero depth for each literal.
+ Returns estimated compression ratio millibytes/char for encoding given input
+ with generated code. */
+static size_t BuildAndStoreLiteralPrefixCode(MemoryManager* m,
+ const uint8_t* input,
+ const size_t input_size,
+ uint8_t depths[256],
+ uint16_t bits[256],
+ size_t* storage_ix,
+ uint8_t* storage) {
+ uint32_t histogram[256] = { 0 };
+ size_t histogram_total;
+ size_t i;
+ if (input_size < (1 << 15)) {
+ for (i = 0; i < input_size; ++i) {
+ ++histogram[input[i]];
+ }
+ histogram_total = input_size;
+ for (i = 0; i < 256; ++i) {
+ /* We weigh the first 11 samples with weight 3 to account for the
+ balancing effect of the LZ77 phase on the histogram. */
+ const uint32_t adjust = 2 * BROTLI_MIN(uint32_t, histogram[i], 11u);
+ histogram[i] += adjust;
+ histogram_total += adjust;
+ }
+ } else {
+ static const size_t kSampleRate = 29;
+ for (i = 0; i < input_size; i += kSampleRate) {
+ ++histogram[input[i]];
+ }
+ histogram_total = (input_size + kSampleRate - 1) / kSampleRate;
+ for (i = 0; i < 256; ++i) {
+ /* We add 1 to each population count to avoid 0 bit depths (since this is
+ only a sample and we don't know if the symbol appears or not), and we
+ weigh the first 11 samples with weight 3 to account for the balancing
+ effect of the LZ77 phase on the histogram (more frequent symbols are
+ more likely to be in backward references instead as literals). */
+ const uint32_t adjust = 1 + 2 * BROTLI_MIN(uint32_t, histogram[i], 11u);
+ histogram[i] += adjust;
+ histogram_total += adjust;
+ }
+ }
+ BrotliBuildAndStoreHuffmanTreeFast(m, histogram, histogram_total,
+ /* max_bits = */ 8,
+ depths, bits, storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return 0;
+ {
+ size_t literal_ratio = 0;
+ for (i = 0; i < 256; ++i) {
+ if (histogram[i]) literal_ratio += histogram[i] * depths[i];
+ }
+ /* Estimated encoding ratio, millibytes per symbol. */
+ return (literal_ratio * 125) / histogram_total;
+ }
+}
+
+/* Builds a command and distance prefix code (each 64 symbols) into "depth" and
+ "bits" based on "histogram" and stores it into the bit stream. */
+static void BuildAndStoreCommandPrefixCode(const uint32_t histogram[128],
+ uint8_t depth[128], uint16_t bits[128], size_t* storage_ix,
+ uint8_t* storage) {
+ /* Tree size for building a tree over 64 symbols is 2 * 64 + 1. */
+ HuffmanTree tree[129];
+ uint8_t cmd_depth[BROTLI_NUM_COMMAND_SYMBOLS] = { 0 };
+ uint16_t cmd_bits[64];
+
+ BrotliCreateHuffmanTree(histogram, 64, 15, tree, depth);
+ BrotliCreateHuffmanTree(&histogram[64], 64, 14, tree, &depth[64]);
+ /* We have to jump through a few hoopes here in order to compute
+ the command bits because the symbols are in a different order than in
+ the full alphabet. This looks complicated, but having the symbols
+ in this order in the command bits saves a few branches in the Emit*
+ functions. */
+ memcpy(cmd_depth, depth, 24);
+ memcpy(cmd_depth + 24, depth + 40, 8);
+ memcpy(cmd_depth + 32, depth + 24, 8);
+ memcpy(cmd_depth + 40, depth + 48, 8);
+ memcpy(cmd_depth + 48, depth + 32, 8);
+ memcpy(cmd_depth + 56, depth + 56, 8);
+ BrotliConvertBitDepthsToSymbols(cmd_depth, 64, cmd_bits);
+ memcpy(bits, cmd_bits, 48);
+ memcpy(bits + 24, cmd_bits + 32, 16);
+ memcpy(bits + 32, cmd_bits + 48, 16);
+ memcpy(bits + 40, cmd_bits + 24, 16);
+ memcpy(bits + 48, cmd_bits + 40, 16);
+ memcpy(bits + 56, cmd_bits + 56, 16);
+ BrotliConvertBitDepthsToSymbols(&depth[64], 64, &bits[64]);
+ {
+ /* Create the bit length array for the full command alphabet. */
+ size_t i;
+ memset(cmd_depth, 0, 64); /* only 64 first values were used */
+ memcpy(cmd_depth, depth, 8);
+ memcpy(cmd_depth + 64, depth + 8, 8);
+ memcpy(cmd_depth + 128, depth + 16, 8);
+ memcpy(cmd_depth + 192, depth + 24, 8);
+ memcpy(cmd_depth + 384, depth + 32, 8);
+ for (i = 0; i < 8; ++i) {
+ cmd_depth[128 + 8 * i] = depth[40 + i];
+ cmd_depth[256 + 8 * i] = depth[48 + i];
+ cmd_depth[448 + 8 * i] = depth[56 + i];
+ }
+ BrotliStoreHuffmanTree(
+ cmd_depth, BROTLI_NUM_COMMAND_SYMBOLS, tree, storage_ix, storage);
+ }
+ BrotliStoreHuffmanTree(&depth[64], 64, tree, storage_ix, storage);
+}
+
+/* REQUIRES: insertlen < 6210 */
+static BROTLI_INLINE void EmitInsertLen(size_t insertlen,
+ const uint8_t depth[128],
+ const uint16_t bits[128],
+ uint32_t histo[128],
+ size_t* storage_ix,
+ uint8_t* storage) {
+ if (insertlen < 6) {
+ const size_t code = insertlen + 40;
+ BrotliWriteBits(depth[code], bits[code], storage_ix, storage);
+ ++histo[code];
+ } else if (insertlen < 130) {
+ const size_t tail = insertlen - 2;
+ const uint32_t nbits = Log2FloorNonZero(tail) - 1u;
+ const size_t prefix = tail >> nbits;
+ const size_t inscode = (nbits << 1) + prefix + 42;
+ BrotliWriteBits(depth[inscode], bits[inscode], storage_ix, storage);
+ BrotliWriteBits(nbits, tail - (prefix << nbits), storage_ix, storage);
+ ++histo[inscode];
+ } else if (insertlen < 2114) {
+ const size_t tail = insertlen - 66;
+ const uint32_t nbits = Log2FloorNonZero(tail);
+ const size_t code = nbits + 50;
+ BrotliWriteBits(depth[code], bits[code], storage_ix, storage);
+ BrotliWriteBits(nbits, tail - ((size_t)1 << nbits), storage_ix, storage);
+ ++histo[code];
+ } else {
+ BrotliWriteBits(depth[61], bits[61], storage_ix, storage);
+ BrotliWriteBits(12, insertlen - 2114, storage_ix, storage);
+ ++histo[21];
+ }
+}
+
+static BROTLI_INLINE void EmitLongInsertLen(size_t insertlen,
+ const uint8_t depth[128],
+ const uint16_t bits[128],
+ uint32_t histo[128],
+ size_t* storage_ix,
+ uint8_t* storage) {
+ if (insertlen < 22594) {
+ BrotliWriteBits(depth[62], bits[62], storage_ix, storage);
+ BrotliWriteBits(14, insertlen - 6210, storage_ix, storage);
+ ++histo[22];
+ } else {
+ BrotliWriteBits(depth[63], bits[63], storage_ix, storage);
+ BrotliWriteBits(24, insertlen - 22594, storage_ix, storage);
+ ++histo[23];
+ }
+}
+
+static BROTLI_INLINE void EmitCopyLen(size_t copylen,
+ const uint8_t depth[128],
+ const uint16_t bits[128],
+ uint32_t histo[128],
+ size_t* storage_ix,
+ uint8_t* storage) {
+ if (copylen < 10) {
+ BrotliWriteBits(
+ depth[copylen + 14], bits[copylen + 14], storage_ix, storage);
+ ++histo[copylen + 14];
+ } else if (copylen < 134) {
+ const size_t tail = copylen - 6;
+ const uint32_t nbits = Log2FloorNonZero(tail) - 1u;
+ const size_t prefix = tail >> nbits;
+ const size_t code = (nbits << 1) + prefix + 20;
+ BrotliWriteBits(depth[code], bits[code], storage_ix, storage);
+ BrotliWriteBits(nbits, tail - (prefix << nbits), storage_ix, storage);
+ ++histo[code];
+ } else if (copylen < 2118) {
+ const size_t tail = copylen - 70;
+ const uint32_t nbits = Log2FloorNonZero(tail);
+ const size_t code = nbits + 28;
+ BrotliWriteBits(depth[code], bits[code], storage_ix, storage);
+ BrotliWriteBits(nbits, tail - ((size_t)1 << nbits), storage_ix, storage);
+ ++histo[code];
+ } else {
+ BrotliWriteBits(depth[39], bits[39], storage_ix, storage);
+ BrotliWriteBits(24, copylen - 2118, storage_ix, storage);
+ ++histo[47];
+ }
+}
+
+static BROTLI_INLINE void EmitCopyLenLastDistance(size_t copylen,
+ const uint8_t depth[128],
+ const uint16_t bits[128],
+ uint32_t histo[128],
+ size_t* storage_ix,
+ uint8_t* storage) {
+ if (copylen < 12) {
+ BrotliWriteBits(depth[copylen - 4], bits[copylen - 4], storage_ix, storage);
+ ++histo[copylen - 4];
+ } else if (copylen < 72) {
+ const size_t tail = copylen - 8;
+ const uint32_t nbits = Log2FloorNonZero(tail) - 1;
+ const size_t prefix = tail >> nbits;
+ const size_t code = (nbits << 1) + prefix + 4;
+ BrotliWriteBits(depth[code], bits[code], storage_ix, storage);
+ BrotliWriteBits(nbits, tail - (prefix << nbits), storage_ix, storage);
+ ++histo[code];
+ } else if (copylen < 136) {
+ const size_t tail = copylen - 8;
+ const size_t code = (tail >> 5) + 30;
+ BrotliWriteBits(depth[code], bits[code], storage_ix, storage);
+ BrotliWriteBits(5, tail & 31, storage_ix, storage);
+ BrotliWriteBits(depth[64], bits[64], storage_ix, storage);
+ ++histo[code];
+ ++histo[64];
+ } else if (copylen < 2120) {
+ const size_t tail = copylen - 72;
+ const uint32_t nbits = Log2FloorNonZero(tail);
+ const size_t code = nbits + 28;
+ BrotliWriteBits(depth[code], bits[code], storage_ix, storage);
+ BrotliWriteBits(nbits, tail - ((size_t)1 << nbits), storage_ix, storage);
+ BrotliWriteBits(depth[64], bits[64], storage_ix, storage);
+ ++histo[code];
+ ++histo[64];
+ } else {
+ BrotliWriteBits(depth[39], bits[39], storage_ix, storage);
+ BrotliWriteBits(24, copylen - 2120, storage_ix, storage);
+ BrotliWriteBits(depth[64], bits[64], storage_ix, storage);
+ ++histo[47];
+ ++histo[64];
+ }
+}
+
+static BROTLI_INLINE void EmitDistance(size_t distance,
+ const uint8_t depth[128],
+ const uint16_t bits[128],
+ uint32_t histo[128],
+ size_t* storage_ix, uint8_t* storage) {
+ const size_t d = distance + 3;
+ const uint32_t nbits = Log2FloorNonZero(d) - 1u;
+ const size_t prefix = (d >> nbits) & 1;
+ const size_t offset = (2 + prefix) << nbits;
+ const size_t distcode = 2 * (nbits - 1) + prefix + 80;
+ BrotliWriteBits(depth[distcode], bits[distcode], storage_ix, storage);
+ BrotliWriteBits(nbits, d - offset, storage_ix, storage);
+ ++histo[distcode];
+}
+
+static BROTLI_INLINE void EmitLiterals(const uint8_t* input, const size_t len,
+ const uint8_t depth[256],
+ const uint16_t bits[256],
+ size_t* storage_ix, uint8_t* storage) {
+ size_t j;
+ for (j = 0; j < len; j++) {
+ const uint8_t lit = input[j];
+ BrotliWriteBits(depth[lit], bits[lit], storage_ix, storage);
+ }
+}
+
+/* REQUIRES: len <= 1 << 20. */
+static void BrotliStoreMetaBlockHeader(
+ size_t len, BROTLI_BOOL is_uncompressed, size_t* storage_ix,
+ uint8_t* storage) {
+ /* ISLAST */
+ BrotliWriteBits(1, 0, storage_ix, storage);
+ if (len <= (1U << 16)) {
+ /* MNIBBLES is 4 */
+ BrotliWriteBits(2, 0, storage_ix, storage);
+ BrotliWriteBits(16, len - 1, storage_ix, storage);
+ } else {
+ /* MNIBBLES is 5 */
+ BrotliWriteBits(2, 1, storage_ix, storage);
+ BrotliWriteBits(20, len - 1, storage_ix, storage);
+ }
+ /* ISUNCOMPRESSED */
+ BrotliWriteBits(1, (uint64_t)is_uncompressed, storage_ix, storage);
+}
+
+static void UpdateBits(size_t n_bits, uint32_t bits, size_t pos,
+ uint8_t *array) {
+ while (n_bits > 0) {
+ size_t byte_pos = pos >> 3;
+ size_t n_unchanged_bits = pos & 7;
+ size_t n_changed_bits = BROTLI_MIN(size_t, n_bits, 8 - n_unchanged_bits);
+ size_t total_bits = n_unchanged_bits + n_changed_bits;
+ uint32_t mask =
+ (~((1u << total_bits) - 1u)) | ((1u << n_unchanged_bits) - 1u);
+ uint32_t unchanged_bits = array[byte_pos] & mask;
+ uint32_t changed_bits = bits & ((1u << n_changed_bits) - 1u);
+ array[byte_pos] =
+ (uint8_t)((changed_bits << n_unchanged_bits) | unchanged_bits);
+ n_bits -= n_changed_bits;
+ bits >>= n_changed_bits;
+ pos += n_changed_bits;
+ }
+}
+
+static void RewindBitPosition(const size_t new_storage_ix,
+ size_t* storage_ix, uint8_t* storage) {
+ const size_t bitpos = new_storage_ix & 7;
+ const size_t mask = (1u << bitpos) - 1;
+ storage[new_storage_ix >> 3] &= (uint8_t)mask;
+ *storage_ix = new_storage_ix;
+}
+
+static BROTLI_BOOL ShouldMergeBlock(
+ const uint8_t* data, size_t len, const uint8_t* depths) {
+ size_t histo[256] = { 0 };
+ static const size_t kSampleRate = 43;
+ size_t i;
+ for (i = 0; i < len; i += kSampleRate) {
+ ++histo[data[i]];
+ }
+ {
+ const size_t total = (len + kSampleRate - 1) / kSampleRate;
+ double r = (FastLog2(total) + 0.5) * (double)total + 200;
+ for (i = 0; i < 256; ++i) {
+ r -= (double)histo[i] * (depths[i] + FastLog2(histo[i]));
+ }
+ return TO_BROTLI_BOOL(r >= 0.0);
+ }
+}
+
+/* Acceptable loss for uncompressible speedup is 2% */
+#define MIN_RATIO 980
+
+static BROTLI_INLINE BROTLI_BOOL ShouldUseUncompressedMode(
+ const uint8_t* metablock_start, const uint8_t* next_emit,
+ const size_t insertlen, const size_t literal_ratio) {
+ const size_t compressed = (size_t)(next_emit - metablock_start);
+ if (compressed * 50 > insertlen) {
+ return BROTLI_FALSE;
+ } else {
+ return TO_BROTLI_BOOL(literal_ratio > MIN_RATIO);
+ }
+}
+
+static void EmitUncompressedMetaBlock(const uint8_t* begin, const uint8_t* end,
+ const size_t storage_ix_start,
+ size_t* storage_ix, uint8_t* storage) {
+ const size_t len = (size_t)(end - begin);
+ RewindBitPosition(storage_ix_start, storage_ix, storage);
+ BrotliStoreMetaBlockHeader(len, 1, storage_ix, storage);
+ *storage_ix = (*storage_ix + 7u) & ~7u;
+ memcpy(&storage[*storage_ix >> 3], begin, len);
+ *storage_ix += len << 3;
+ storage[*storage_ix >> 3] = 0;
+}
+
+static uint32_t kCmdHistoSeed[128] = {
+ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 0, 0, 0, 0,
+};
+
+void BrotliCompressFragmentFast(MemoryManager* m,
+ const uint8_t* input, size_t input_size,
+ BROTLI_BOOL is_last,
+ int* table, size_t table_size,
+ uint8_t cmd_depth[128], uint16_t cmd_bits[128],
+ size_t* cmd_code_numbits, uint8_t* cmd_code,
+ size_t* storage_ix, uint8_t* storage) {
+ uint32_t cmd_histo[128];
+ const uint8_t* ip_end;
+
+ /* "next_emit" is a pointer to the first byte that is not covered by a
+ previous copy. Bytes between "next_emit" and the start of the next copy or
+ the end of the input will be emitted as literal bytes. */
+ const uint8_t* next_emit = input;
+ /* Save the start of the first block for position and distance computations.
+ */
+ const uint8_t* base_ip = input;
+
+ static const size_t kFirstBlockSize = 3 << 15;
+ static const size_t kMergeBlockSize = 1 << 16;
+
+ const size_t kInputMarginBytes = 16;
+ const size_t kMinMatchLen = 5;
+
+ const uint8_t* metablock_start = input;
+ size_t block_size = BROTLI_MIN(size_t, input_size, kFirstBlockSize);
+ size_t total_block_size = block_size;
+ /* Save the bit position of the MLEN field of the meta-block header, so that
+ we can update it later if we decide to extend this meta-block. */
+ size_t mlen_storage_ix = *storage_ix + 3;
+
+ uint8_t lit_depth[256];
+ uint16_t lit_bits[256];
+
+ size_t literal_ratio;
+
+ const uint8_t* ip;
+ int last_distance;
+
+ const size_t shift = 64u - Log2FloorNonZero(table_size);
+ assert(table_size);
+ assert(table_size <= (1u << 31));
+ /* table must be power of two */
+ assert((table_size & (table_size - 1)) == 0);
+ assert(table_size - 1 ==
+ (size_t)(MAKE_UINT64_T(0xFFFFFFFF, 0xFFFFFF) >> shift));
+
+ if (input_size == 0) {
+ assert(is_last);
+ BrotliWriteBits(1, 1, storage_ix, storage); /* islast */
+ BrotliWriteBits(1, 1, storage_ix, storage); /* isempty */
+ *storage_ix = (*storage_ix + 7u) & ~7u;
+ return;
+ }
+
+ BrotliStoreMetaBlockHeader(block_size, 0, storage_ix, storage);
+ /* No block splits, no contexts. */
+ BrotliWriteBits(13, 0, storage_ix, storage);
+
+ literal_ratio = BuildAndStoreLiteralPrefixCode(
+ m, input, block_size, lit_depth, lit_bits, storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+
+ {
+ /* Store the pre-compressed command and distance prefix codes. */
+ size_t i;
+ for (i = 0; i + 7 < *cmd_code_numbits; i += 8) {
+ BrotliWriteBits(8, cmd_code[i >> 3], storage_ix, storage);
+ }
+ }
+ BrotliWriteBits(*cmd_code_numbits & 7, cmd_code[*cmd_code_numbits >> 3],
+ storage_ix, storage);
+
+ emit_commands:
+ /* Initialize the command and distance histograms. We will gather
+ statistics of command and distance codes during the processing
+ of this block and use it to update the command and distance
+ prefix codes for the next block. */
+ memcpy(cmd_histo, kCmdHistoSeed, sizeof(kCmdHistoSeed));
+
+ /* "ip" is the input pointer. */
+ ip = input;
+ last_distance = -1;
+ ip_end = input + block_size;
+
+ if (PREDICT_TRUE(block_size >= kInputMarginBytes)) {
+ /* For the last block, we need to keep a 16 bytes margin so that we can be
+ sure that all distances are at most window size - 16.
+ For all other blocks, we only need to keep a margin of 5 bytes so that
+ we don't go over the block size with a copy. */
+ const size_t len_limit = BROTLI_MIN(size_t, block_size - kMinMatchLen,
+ input_size - kInputMarginBytes);
+ const uint8_t* ip_limit = input + len_limit;
+
+ uint32_t next_hash;
+ for (next_hash = Hash(++ip, shift); ; ) {
+ /* Step 1: Scan forward in the input looking for a 5-byte-long match.
+ If we get close to exhausting the input then goto emit_remainder.
+
+ Heuristic match skipping: If 32 bytes are scanned with no matches
+ found, start looking only at every other byte. If 32 more bytes are
+ scanned, look at every third byte, etc.. When a match is found,
+ immediately go back to looking at every byte. This is a small loss
+ (~5% performance, ~0.1% density) for compressible data due to more
+ bookkeeping, but for non-compressible data (such as JPEG) it's a huge
+ win since the compressor quickly "realizes" the data is incompressible
+ and doesn't bother looking for matches everywhere.
+
+ The "skip" variable keeps track of how many bytes there are since the
+ last match; dividing it by 32 (ie. right-shifting by five) gives the
+ number of bytes to move ahead for each iteration. */
+ uint32_t skip = 32;
+
+ const uint8_t* next_ip = ip;
+ const uint8_t* candidate;
+ assert(next_emit < ip);
+
+ do {
+ uint32_t hash = next_hash;
+ uint32_t bytes_between_hash_lookups = skip++ >> 5;
+ assert(hash == Hash(next_ip, shift));
+ ip = next_ip;
+ next_ip = ip + bytes_between_hash_lookups;
+ if (PREDICT_FALSE(next_ip > ip_limit)) {
+ goto emit_remainder;
+ }
+ next_hash = Hash(next_ip, shift);
+ candidate = ip - last_distance;
+ if (IsMatch(ip, candidate)) {
+ if (PREDICT_TRUE(candidate < ip)) {
+ table[hash] = (int)(ip - base_ip);
+ break;
+ }
+ }
+ candidate = base_ip + table[hash];
+ assert(candidate >= base_ip);
+ assert(candidate < ip);
+
+ table[hash] = (int)(ip - base_ip);
+ } while (PREDICT_TRUE(!IsMatch(ip, candidate)));
+
+ /* Step 2: Emit the found match together with the literal bytes from
+ "next_emit" to the bit stream, and then see if we can find a next macth
+ immediately afterwards. Repeat until we find no match for the input
+ without emitting some literal bytes. */
+
+ {
+ /* We have a 5-byte match at ip, and we need to emit bytes in
+ [next_emit, ip). */
+ const uint8_t* base = ip;
+ size_t matched = 5 + FindMatchLengthWithLimit(
+ candidate + 5, ip + 5, (size_t)(ip_end - ip) - 5);
+ int distance = (int)(base - candidate); /* > 0 */
+ size_t insert = (size_t)(base - next_emit);
+ ip += matched;
+ assert(0 == memcmp(base, candidate, matched));
+ if (PREDICT_TRUE(insert < 6210)) {
+ EmitInsertLen(insert, cmd_depth, cmd_bits, cmd_histo,
+ storage_ix, storage);
+ } else if (ShouldUseUncompressedMode(metablock_start, next_emit, insert,
+ literal_ratio)) {
+ EmitUncompressedMetaBlock(metablock_start, base, mlen_storage_ix - 3,
+ storage_ix, storage);
+ input_size -= (size_t)(base - input);
+ input = base;
+ next_emit = input;
+ goto next_block;
+ } else {
+ EmitLongInsertLen(insert, cmd_depth, cmd_bits, cmd_histo,
+ storage_ix, storage);
+ }
+ EmitLiterals(next_emit, insert, lit_depth, lit_bits,
+ storage_ix, storage);
+ if (distance == last_distance) {
+ BrotliWriteBits(cmd_depth[64], cmd_bits[64], storage_ix, storage);
+ ++cmd_histo[64];
+ } else {
+ EmitDistance((size_t)distance, cmd_depth, cmd_bits,
+ cmd_histo, storage_ix, storage);
+ last_distance = distance;
+ }
+ EmitCopyLenLastDistance(matched, cmd_depth, cmd_bits, cmd_histo,
+ storage_ix, storage);
+
+ next_emit = ip;
+ if (PREDICT_FALSE(ip >= ip_limit)) {
+ goto emit_remainder;
+ }
+ /* We could immediately start working at ip now, but to improve
+ compression we first update "table" with the hashes of some positions
+ within the last copy. */
+ {
+ uint64_t input_bytes = BROTLI_UNALIGNED_LOAD64(ip - 3);
+ uint32_t prev_hash = HashBytesAtOffset(input_bytes, 0, shift);
+ uint32_t cur_hash = HashBytesAtOffset(input_bytes, 3, shift);
+ table[prev_hash] = (int)(ip - base_ip - 3);
+ prev_hash = HashBytesAtOffset(input_bytes, 1, shift);
+ table[prev_hash] = (int)(ip - base_ip - 2);
+ prev_hash = HashBytesAtOffset(input_bytes, 2, shift);
+ table[prev_hash] = (int)(ip - base_ip - 1);
+
+ candidate = base_ip + table[cur_hash];
+ table[cur_hash] = (int)(ip - base_ip);
+ }
+ }
+
+ while (IsMatch(ip, candidate)) {
+ /* We have a 5-byte match at ip, and no need to emit any literal bytes
+ prior to ip. */
+ const uint8_t* base = ip;
+ size_t matched = 5 + FindMatchLengthWithLimit(
+ candidate + 5, ip + 5, (size_t)(ip_end - ip) - 5);
+ ip += matched;
+ last_distance = (int)(base - candidate); /* > 0 */
+ assert(0 == memcmp(base, candidate, matched));
+ EmitCopyLen(matched, cmd_depth, cmd_bits, cmd_histo,
+ storage_ix, storage);
+ EmitDistance((size_t)last_distance, cmd_depth, cmd_bits,
+ cmd_histo, storage_ix, storage);
+
+ next_emit = ip;
+ if (PREDICT_FALSE(ip >= ip_limit)) {
+ goto emit_remainder;
+ }
+ /* We could immediately start working at ip now, but to improve
+ compression we first update "table" with the hashes of some positions
+ within the last copy. */
+ {
+ uint64_t input_bytes = BROTLI_UNALIGNED_LOAD64(ip - 3);
+ uint32_t prev_hash = HashBytesAtOffset(input_bytes, 0, shift);
+ uint32_t cur_hash = HashBytesAtOffset(input_bytes, 3, shift);
+ table[prev_hash] = (int)(ip - base_ip - 3);
+ prev_hash = HashBytesAtOffset(input_bytes, 1, shift);
+ table[prev_hash] = (int)(ip - base_ip - 2);
+ prev_hash = HashBytesAtOffset(input_bytes, 2, shift);
+ table[prev_hash] = (int)(ip - base_ip - 1);
+
+ candidate = base_ip + table[cur_hash];
+ table[cur_hash] = (int)(ip - base_ip);
+ }
+ }
+
+ next_hash = Hash(++ip, shift);
+ }
+ }
+
+ emit_remainder:
+ assert(next_emit <= ip_end);
+ input += block_size;
+ input_size -= block_size;
+ block_size = BROTLI_MIN(size_t, input_size, kMergeBlockSize);
+
+ /* Decide if we want to continue this meta-block instead of emitting the
+ last insert-only command. */
+ if (input_size > 0 &&
+ total_block_size + block_size <= (1 << 20) &&
+ ShouldMergeBlock(input, block_size, lit_depth)) {
+ assert(total_block_size > (1 << 16));
+ /* Update the size of the current meta-block and continue emitting commands.
+ We can do this because the current size and the new size both have 5
+ nibbles. */
+ total_block_size += block_size;
+ UpdateBits(20, (uint32_t)(total_block_size - 1), mlen_storage_ix, storage);
+ goto emit_commands;
+ }
+
+ /* Emit the remaining bytes as literals. */
+ if (next_emit < ip_end) {
+ const size_t insert = (size_t)(ip_end - next_emit);
+ if (PREDICT_TRUE(insert < 6210)) {
+ EmitInsertLen(insert, cmd_depth, cmd_bits, cmd_histo,
+ storage_ix, storage);
+ EmitLiterals(next_emit, insert, lit_depth, lit_bits, storage_ix, storage);
+ } else if (ShouldUseUncompressedMode(metablock_start, next_emit, insert,
+ literal_ratio)) {
+ EmitUncompressedMetaBlock(metablock_start, ip_end, mlen_storage_ix - 3,
+ storage_ix, storage);
+ } else {
+ EmitLongInsertLen(insert, cmd_depth, cmd_bits, cmd_histo,
+ storage_ix, storage);
+ EmitLiterals(next_emit, insert, lit_depth, lit_bits,
+ storage_ix, storage);
+ }
+ }
+ next_emit = ip_end;
+
+next_block:
+ /* If we have more data, write a new meta-block header and prefix codes and
+ then continue emitting commands. */
+ if (input_size > 0) {
+ metablock_start = input;
+ block_size = BROTLI_MIN(size_t, input_size, kFirstBlockSize);
+ total_block_size = block_size;
+ /* Save the bit position of the MLEN field of the meta-block header, so that
+ we can update it later if we decide to extend this meta-block. */
+ mlen_storage_ix = *storage_ix + 3;
+ BrotliStoreMetaBlockHeader(block_size, 0, storage_ix, storage);
+ /* No block splits, no contexts. */
+ BrotliWriteBits(13, 0, storage_ix, storage);
+ literal_ratio = BuildAndStoreLiteralPrefixCode(
+ m, input, block_size, lit_depth, lit_bits, storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+ BuildAndStoreCommandPrefixCode(cmd_histo, cmd_depth, cmd_bits,
+ storage_ix, storage);
+ goto emit_commands;
+ }
+
+ if (is_last) {
+ BrotliWriteBits(1, 1, storage_ix, storage); /* islast */
+ BrotliWriteBits(1, 1, storage_ix, storage); /* isempty */
+ *storage_ix = (*storage_ix + 7u) & ~7u;
+ } else {
+ /* If this is not the last block, update the command and distance prefix
+ codes for the next block and store the compressed forms. */
+ cmd_code[0] = 0;
+ *cmd_code_numbits = 0;
+ BuildAndStoreCommandPrefixCode(cmd_histo, cmd_depth, cmd_bits,
+ cmd_code_numbits, cmd_code);
+ }
+}
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/compress_fragment.cc b/thirdparty/brotli/enc/compress_fragment.cc
deleted file mode 100644
index 5620112a..00000000
--- a/thirdparty/brotli/enc/compress_fragment.cc
+++ /dev/null
@@ -1,701 +0,0 @@
-/* Copyright 2015 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-// Function for fast encoding of an input fragment, independently from the input
-// history. This function uses one-pass processing: when we find a backward
-// match, we immediately emit the corresponding command and literal codes to
-// the bit stream.
-//
-// Adapted from the CompressFragment() function in
-// https://github.com/google/snappy/blob/master/snappy.cc
-
-#include "./compress_fragment.h"
-
-#include <algorithm>
-#include <cstring>
-
-#include "./brotli_bit_stream.h"
-#include "./entropy_encode.h"
-#include "./fast_log.h"
-#include "./find_match_length.h"
-#include "./port.h"
-#include "./types.h"
-#include "./write_bits.h"
-
-namespace brotli {
-
-// kHashMul32 multiplier has these properties:
-// * The multiplier must be odd. Otherwise we may lose the highest bit.
-// * No long streaks of 1s or 0s.
-// * There is no effort to ensure that it is a prime, the oddity is enough
-// for this use.
-// * The number has been tuned heuristically against compression benchmarks.
-static const uint32_t kHashMul32 = 0x1e35a7bd;
-
-static inline uint32_t Hash(const uint8_t* p, size_t shift) {
- const uint64_t h = (BROTLI_UNALIGNED_LOAD64(p) << 24) * kHashMul32;
- return static_cast<uint32_t>(h >> shift);
-}
-
-static inline uint32_t HashBytesAtOffset(uint64_t v, int offset, size_t shift) {
- assert(offset >= 0);
- assert(offset <= 3);
- const uint64_t h = ((v >> (8 * offset)) << 24) * kHashMul32;
- return static_cast<uint32_t>(h >> shift);
-}
-
-static inline int IsMatch(const uint8_t* p1, const uint8_t* p2) {
- return (BROTLI_UNALIGNED_LOAD32(p1) == BROTLI_UNALIGNED_LOAD32(p2) &&
- p1[4] == p2[4]);
-}
-
-// Builds a literal prefix code into "depths" and "bits" based on the statistics
-// of the "input" string and stores it into the bit stream.
-// Note that the prefix code here is built from the pre-LZ77 input, therefore
-// we can only approximate the statistics of the actual literal stream.
-// Moreover, for long inputs we build a histogram from a sample of the input
-// and thus have to assign a non-zero depth for each literal.
-static void BuildAndStoreLiteralPrefixCode(const uint8_t* input,
- const size_t input_size,
- uint8_t depths[256],
- uint16_t bits[256],
- size_t* storage_ix,
- uint8_t* storage) {
- uint32_t histogram[256] = { 0 };
- size_t histogram_total;
- if (input_size < (1 << 15)) {
- for (size_t i = 0; i < input_size; ++i) {
- ++histogram[input[i]];
- }
- histogram_total = input_size;
- for (size_t i = 0; i < 256; ++i) {
- // We weigh the first 11 samples with weight 3 to account for the
- // balancing effect of the LZ77 phase on the histogram.
- const uint32_t adjust = 2 * std::min(histogram[i], 11u);
- histogram[i] += adjust;
- histogram_total += adjust;
- }
- } else {
- static const size_t kSampleRate = 29;
- for (size_t i = 0; i < input_size; i += kSampleRate) {
- ++histogram[input[i]];
- }
- histogram_total = (input_size + kSampleRate - 1) / kSampleRate;
- for (size_t i = 0; i < 256; ++i) {
- // We add 1 to each population count to avoid 0 bit depths (since this is
- // only a sample and we don't know if the symbol appears or not), and we
- // weigh the first 11 samples with weight 3 to account for the balancing
- // effect of the LZ77 phase on the histogram (more frequent symbols are
- // more likely to be in backward references instead as literals).
- const uint32_t adjust = 1 + 2 * std::min(histogram[i], 11u);
- histogram[i] += adjust;
- histogram_total += adjust;
- }
- }
- BuildAndStoreHuffmanTreeFast(histogram, histogram_total,
- /* max_bits = */ 8,
- depths, bits, storage_ix, storage);
-}
-
-// Builds a command and distance prefix code (each 64 symbols) into "depth" and
-// "bits" based on "histogram" and stores it into the bit stream.
-static void BuildAndStoreCommandPrefixCode(const uint32_t histogram[128],
- uint8_t depth[128],
- uint16_t bits[128],
- size_t* storage_ix,
- uint8_t* storage) {
- // Tree size for building a tree over 64 symbols is 2 * 64 + 1.
- static const size_t kTreeSize = 129;
- HuffmanTree tree[kTreeSize];
- CreateHuffmanTree(histogram, 64, 15, tree, depth);
- CreateHuffmanTree(&histogram[64], 64, 14, tree, &depth[64]);
- // We have to jump through a few hoopes here in order to compute
- // the command bits because the symbols are in a different order than in
- // the full alphabet. This looks complicated, but having the symbols
- // in this order in the command bits saves a few branches in the Emit*
- // functions.
- uint8_t cmd_depth[64];
- uint16_t cmd_bits[64];
- memcpy(cmd_depth, depth, 24);
- memcpy(cmd_depth + 24, depth + 40, 8);
- memcpy(cmd_depth + 32, depth + 24, 8);
- memcpy(cmd_depth + 40, depth + 48, 8);
- memcpy(cmd_depth + 48, depth + 32, 8);
- memcpy(cmd_depth + 56, depth + 56, 8);
- ConvertBitDepthsToSymbols(cmd_depth, 64, cmd_bits);
- memcpy(bits, cmd_bits, 48);
- memcpy(bits + 24, cmd_bits + 32, 16);
- memcpy(bits + 32, cmd_bits + 48, 16);
- memcpy(bits + 40, cmd_bits + 24, 16);
- memcpy(bits + 48, cmd_bits + 40, 16);
- memcpy(bits + 56, cmd_bits + 56, 16);
- ConvertBitDepthsToSymbols(&depth[64], 64, &bits[64]);
- {
- // Create the bit length array for the full command alphabet.
- uint8_t cmd_depth[704] = { 0 };
- memcpy(cmd_depth, depth, 8);
- memcpy(cmd_depth + 64, depth + 8, 8);
- memcpy(cmd_depth + 128, depth + 16, 8);
- memcpy(cmd_depth + 192, depth + 24, 8);
- memcpy(cmd_depth + 384, depth + 32, 8);
- for (size_t i = 0; i < 8; ++i) {
- cmd_depth[128 + 8 * i] = depth[40 + i];
- cmd_depth[256 + 8 * i] = depth[48 + i];
- cmd_depth[448 + 8 * i] = depth[56 + i];
- }
- StoreHuffmanTree(cmd_depth, 704, tree, storage_ix, storage);
- }
- StoreHuffmanTree(&depth[64], 64, tree, storage_ix, storage);
-}
-
-// REQUIRES: insertlen < 6210
-inline void EmitInsertLen(size_t insertlen,
- const uint8_t depth[128],
- const uint16_t bits[128],
- uint32_t histo[128],
- size_t* storage_ix,
- uint8_t* storage) {
- if (insertlen < 6) {
- const size_t code = insertlen + 40;
- WriteBits(depth[code], bits[code], storage_ix, storage);
- ++histo[code];
- } else if (insertlen < 130) {
- insertlen -= 2;
- const uint32_t nbits = Log2FloorNonZero(insertlen) - 1u;
- const size_t prefix = insertlen >> nbits;
- const size_t inscode = (nbits << 1) + prefix + 42;
- WriteBits(depth[inscode], bits[inscode], storage_ix, storage);
- WriteBits(nbits, insertlen - (prefix << nbits), storage_ix, storage);
- ++histo[inscode];
- } else if (insertlen < 2114) {
- insertlen -= 66;
- const uint32_t nbits = Log2FloorNonZero(insertlen);
- const size_t code = nbits + 50;
- WriteBits(depth[code], bits[code], storage_ix, storage);
- WriteBits(nbits, insertlen - (1 << nbits), storage_ix, storage);
- ++histo[code];
- } else {
- WriteBits(depth[61], bits[61], storage_ix, storage);
- WriteBits(12, insertlen - 2114, storage_ix, storage);
- ++histo[21];
- }
-}
-
-inline void EmitLongInsertLen(size_t insertlen,
- const uint8_t depth[128],
- const uint16_t bits[128],
- uint32_t histo[128],
- size_t* storage_ix,
- uint8_t* storage) {
- if (insertlen < 22594) {
- WriteBits(depth[62], bits[62], storage_ix, storage);
- WriteBits(14, insertlen - 6210, storage_ix, storage);
- ++histo[22];
- } else {
- WriteBits(depth[63], bits[63], storage_ix, storage);
- WriteBits(24, insertlen - 22594, storage_ix, storage);
- ++histo[23];
- }
-}
-
-inline void EmitCopyLen(size_t copylen,
- const uint8_t depth[128],
- const uint16_t bits[128],
- uint32_t histo[128],
- size_t* storage_ix,
- uint8_t* storage) {
- if (copylen < 10) {
- WriteBits(depth[copylen + 14], bits[copylen + 14], storage_ix, storage);
- ++histo[copylen + 14];
- } else if (copylen < 134) {
- copylen -= 6;
- const uint32_t nbits = Log2FloorNonZero(copylen) - 1u;
- const size_t prefix = copylen >> nbits;
- const size_t code = (nbits << 1) + prefix + 20;
- WriteBits(depth[code], bits[code], storage_ix, storage);
- WriteBits(nbits, copylen - (prefix << nbits), storage_ix, storage);
- ++histo[code];
- } else if (copylen < 2118) {
- copylen -= 70;
- const uint32_t nbits = Log2FloorNonZero(copylen);
- const size_t code = nbits + 28;
- WriteBits(depth[code], bits[code], storage_ix, storage);
- WriteBits(nbits, copylen - (1 << nbits), storage_ix, storage);
- ++histo[code];
- } else {
- WriteBits(depth[39], bits[39], storage_ix, storage);
- WriteBits(24, copylen - 2118, storage_ix, storage);
- ++histo[47];
- }
-}
-
-inline void EmitCopyLenLastDistance(size_t copylen,
- const uint8_t depth[128],
- const uint16_t bits[128],
- uint32_t histo[128],
- size_t* storage_ix,
- uint8_t* storage) {
- if (copylen < 12) {
- WriteBits(depth[copylen - 4], bits[copylen - 4], storage_ix, storage);
- ++histo[copylen - 4];
- } else if (copylen < 72) {
- copylen -= 8;
- const uint32_t nbits = Log2FloorNonZero(copylen) - 1;
- const size_t prefix = copylen >> nbits;
- const size_t code = (nbits << 1) + prefix + 4;
- WriteBits(depth[code], bits[code], storage_ix, storage);
- WriteBits(nbits, copylen - (prefix << nbits), storage_ix, storage);
- ++histo[code];
- } else if (copylen < 136) {
- copylen -= 8;
- const size_t code = (copylen >> 5) + 30;
- WriteBits(depth[code], bits[code], storage_ix, storage);
- WriteBits(5, copylen & 31, storage_ix, storage);
- WriteBits(depth[64], bits[64], storage_ix, storage);
- ++histo[code];
- ++histo[64];
- } else if (copylen < 2120) {
- copylen -= 72;
- const uint32_t nbits = Log2FloorNonZero(copylen);
- const size_t code = nbits + 28;
- WriteBits(depth[code], bits[code], storage_ix, storage);
- WriteBits(nbits, copylen - (1 << nbits), storage_ix, storage);
- WriteBits(depth[64], bits[64], storage_ix, storage);
- ++histo[code];
- ++histo[64];
- } else {
- WriteBits(depth[39], bits[39], storage_ix, storage);
- WriteBits(24, copylen - 2120, storage_ix, storage);
- WriteBits(depth[64], bits[64], storage_ix, storage);
- ++histo[47];
- ++histo[64];
- }
-}
-
-inline void EmitDistance(size_t distance,
- const uint8_t depth[128],
- const uint16_t bits[128],
- uint32_t histo[128],
- size_t* storage_ix, uint8_t* storage) {
- distance += 3;
- const uint32_t nbits = Log2FloorNonZero(distance) - 1u;
- const size_t prefix = (distance >> nbits) & 1;
- const size_t offset = (2 + prefix) << nbits;
- const size_t distcode = 2 * (nbits - 1) + prefix + 80;
- WriteBits(depth[distcode], bits[distcode], storage_ix, storage);
- WriteBits(nbits, distance - offset, storage_ix, storage);
- ++histo[distcode];
-}
-
-inline void EmitLiterals(const uint8_t* input, const size_t len,
- const uint8_t depth[256], const uint16_t bits[256],
- size_t* storage_ix, uint8_t* storage) {
- for (size_t j = 0; j < len; j++) {
- const uint8_t lit = input[j];
- WriteBits(depth[lit], bits[lit], storage_ix, storage);
- }
-}
-
-// REQUIRES: len <= 1 << 20.
-static void StoreMetaBlockHeader(
- size_t len, bool is_uncompressed, size_t* storage_ix, uint8_t* storage) {
- // ISLAST
- WriteBits(1, 0, storage_ix, storage);
- if (len <= (1U << 16)) {
- // MNIBBLES is 4
- WriteBits(2, 0, storage_ix, storage);
- WriteBits(16, len - 1, storage_ix, storage);
- } else {
- // MNIBBLES is 5
- WriteBits(2, 1, storage_ix, storage);
- WriteBits(20, len - 1, storage_ix, storage);
- }
- // ISUNCOMPRESSED
- WriteBits(1, is_uncompressed, storage_ix, storage);
-}
-
-static void UpdateBits(size_t n_bits,
- uint32_t bits,
- size_t pos,
- uint8_t *array) {
- while (n_bits > 0) {
- size_t byte_pos = pos >> 3;
- size_t n_unchanged_bits = pos & 7;
- size_t n_changed_bits = std::min(n_bits, 8 - n_unchanged_bits);
- size_t total_bits = n_unchanged_bits + n_changed_bits;
- uint32_t mask = (~((1 << total_bits) - 1)) | ((1 << n_unchanged_bits) - 1);
- uint32_t unchanged_bits = array[byte_pos] & mask;
- uint32_t changed_bits = bits & ((1 << n_changed_bits) - 1);
- array[byte_pos] =
- static_cast<uint8_t>((changed_bits << n_unchanged_bits) |
- unchanged_bits);
- n_bits -= n_changed_bits;
- bits >>= n_changed_bits;
- pos += n_changed_bits;
- }
-}
-
-static void RewindBitPosition(const size_t new_storage_ix,
- size_t* storage_ix, uint8_t* storage) {
- const size_t bitpos = new_storage_ix & 7;
- const size_t mask = (1u << bitpos) - 1;
- storage[new_storage_ix >> 3] &= static_cast<uint8_t>(mask);
- *storage_ix = new_storage_ix;
-}
-
-static bool ShouldMergeBlock(const uint8_t* data, size_t len,
- const uint8_t* depths) {
- size_t histo[256] = { 0 };
- static const size_t kSampleRate = 43;
- for (size_t i = 0; i < len; i += kSampleRate) {
- ++histo[data[i]];
- }
- const size_t total = (len + kSampleRate - 1) / kSampleRate;
- double r = (FastLog2(total) + 0.5) * static_cast<double>(total) + 200;
- for (size_t i = 0; i < 256; ++i) {
- r -= static_cast<double>(histo[i]) * (depths[i] + FastLog2(histo[i]));
- }
- return r >= 0.0;
-}
-
-inline bool ShouldUseUncompressedMode(const uint8_t* metablock_start,
- const uint8_t* next_emit,
- const size_t insertlen,
- const uint8_t literal_depths[256]) {
- const size_t compressed = static_cast<size_t>(next_emit - metablock_start);
- if (compressed * 50 > insertlen) {
- return false;
- }
- static const double kAcceptableLossForUncompressibleSpeedup = 0.02;
- static const double kMinEntropy =
- 8 * (1.0 - kAcceptableLossForUncompressibleSpeedup);
- uint32_t sum = 0;
- for (int i = 0; i < 256; ++i) {
- const uint32_t n = literal_depths[i];
- sum += n << (15 - n);
- }
- return sum > static_cast<uint32_t>((1 << 15) * kMinEntropy);
-}
-
-static void EmitUncompressedMetaBlock(const uint8_t* begin, const uint8_t* end,
- const size_t storage_ix_start,
- size_t* storage_ix, uint8_t* storage) {
- const size_t len = static_cast<size_t>(end - begin);
- RewindBitPosition(storage_ix_start, storage_ix, storage);
- StoreMetaBlockHeader(len, 1, storage_ix, storage);
- *storage_ix = (*storage_ix + 7u) & ~7u;
- memcpy(&storage[*storage_ix >> 3], begin, len);
- *storage_ix += len << 3;
- storage[*storage_ix >> 3] = 0;
-}
-
-void BrotliCompressFragmentFast(const uint8_t* input, size_t input_size,
- bool is_last,
- int* table, size_t table_size,
- uint8_t cmd_depth[128], uint16_t cmd_bits[128],
- size_t* cmd_code_numbits, uint8_t* cmd_code,
- size_t* storage_ix, uint8_t* storage) {
- if (input_size == 0) {
- assert(is_last);
- WriteBits(1, 1, storage_ix, storage); // islast
- WriteBits(1, 1, storage_ix, storage); // isempty
- *storage_ix = (*storage_ix + 7u) & ~7u;
- return;
- }
-
- // "next_emit" is a pointer to the first byte that is not covered by a
- // previous copy. Bytes between "next_emit" and the start of the next copy or
- // the end of the input will be emitted as literal bytes.
- const uint8_t* next_emit = input;
- // Save the start of the first block for position and distance computations.
- const uint8_t* base_ip = input;
-
- static const size_t kFirstBlockSize = 3 << 15;
- static const size_t kMergeBlockSize = 1 << 16;
-
- const uint8_t* metablock_start = input;
- size_t block_size = std::min(input_size, kFirstBlockSize);
- size_t total_block_size = block_size;
- // Save the bit position of the MLEN field of the meta-block header, so that
- // we can update it later if we decide to extend this meta-block.
- size_t mlen_storage_ix = *storage_ix + 3;
- StoreMetaBlockHeader(block_size, 0, storage_ix, storage);
- // No block splits, no contexts.
- WriteBits(13, 0, storage_ix, storage);
-
- uint8_t lit_depth[256] = { 0 };
- uint16_t lit_bits[256] = { 0 };
- BuildAndStoreLiteralPrefixCode(input, block_size, lit_depth, lit_bits,
- storage_ix, storage);
-
- // Store the pre-compressed command and distance prefix codes.
- for (size_t i = 0; i + 7 < *cmd_code_numbits; i += 8) {
- WriteBits(8, cmd_code[i >> 3], storage_ix, storage);
- }
- WriteBits(*cmd_code_numbits & 7, cmd_code[*cmd_code_numbits >> 3],
- storage_ix, storage);
-
- emit_commands:
- // Initialize the command and distance histograms. We will gather
- // statistics of command and distance codes during the processing
- // of this block and use it to update the command and distance
- // prefix codes for the next block.
- uint32_t cmd_histo[128] = {
- 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 0, 0, 0, 0,
- };
-
- // "ip" is the input pointer.
- const uint8_t* ip = input;
- assert(table_size);
- assert(table_size <= (1u << 31));
- assert((table_size & (table_size - 1)) == 0); // table must be power of two
- const size_t shift = 64u - Log2FloorNonZero(table_size);
- assert(table_size - 1 == static_cast<size_t>(
- MAKE_UINT64_T(0xFFFFFFFF, 0xFFFFFF) >> shift));
- const uint8_t* ip_end = input + block_size;
-
- int last_distance = -1;
- const size_t kInputMarginBytes = 16;
- const size_t kMinMatchLen = 5;
- if (PREDICT_TRUE(block_size >= kInputMarginBytes)) {
- // For the last block, we need to keep a 16 bytes margin so that we can be
- // sure that all distances are at most window size - 16.
- // For all other blocks, we only need to keep a margin of 5 bytes so that
- // we don't go over the block size with a copy.
- const size_t len_limit = std::min(block_size - kMinMatchLen,
- input_size - kInputMarginBytes);
- const uint8_t* ip_limit = input + len_limit;
-
- for (uint32_t next_hash = Hash(++ip, shift); ; ) {
- assert(next_emit < ip);
- // Step 1: Scan forward in the input looking for a 5-byte-long match.
- // If we get close to exhausting the input then goto emit_remainder.
- //
- // Heuristic match skipping: If 32 bytes are scanned with no matches
- // found, start looking only at every other byte. If 32 more bytes are
- // scanned, look at every third byte, etc.. When a match is found,
- // immediately go back to looking at every byte. This is a small loss
- // (~5% performance, ~0.1% density) for compressible data due to more
- // bookkeeping, but for non-compressible data (such as JPEG) it's a huge
- // win since the compressor quickly "realizes" the data is incompressible
- // and doesn't bother looking for matches everywhere.
- //
- // The "skip" variable keeps track of how many bytes there are since the
- // last match; dividing it by 32 (ie. right-shifting by five) gives the
- // number of bytes to move ahead for each iteration.
- uint32_t skip = 32;
-
- const uint8_t* next_ip = ip;
- const uint8_t* candidate;
- do {
- ip = next_ip;
- uint32_t hash = next_hash;
- assert(hash == Hash(ip, shift));
- uint32_t bytes_between_hash_lookups = skip++ >> 5;
- next_ip = ip + bytes_between_hash_lookups;
- if (PREDICT_FALSE(next_ip > ip_limit)) {
- goto emit_remainder;
- }
- next_hash = Hash(next_ip, shift);
- candidate = ip - last_distance;
- if (IsMatch(ip, candidate)) {
- if (PREDICT_TRUE(candidate < ip)) {
- table[hash] = static_cast<int>(ip - base_ip);
- break;
- }
- }
- candidate = base_ip + table[hash];
- assert(candidate >= base_ip);
- assert(candidate < ip);
-
- table[hash] = static_cast<int>(ip - base_ip);
- } while (PREDICT_TRUE(!IsMatch(ip, candidate)));
-
- // Step 2: Emit the found match together with the literal bytes from
- // "next_emit" to the bit stream, and then see if we can find a next macth
- // immediately afterwards. Repeat until we find no match for the input
- // without emitting some literal bytes.
- uint64_t input_bytes;
-
- {
- // We have a 5-byte match at ip, and we need to emit bytes in
- // [next_emit, ip).
- const uint8_t* base = ip;
- size_t matched = 5 + FindMatchLengthWithLimit(
- candidate + 5, ip + 5, static_cast<size_t>(ip_end - ip) - 5);
- ip += matched;
- int distance = static_cast<int>(base - candidate); /* > 0 */
- size_t insert = static_cast<size_t>(base - next_emit);
- assert(0 == memcmp(base, candidate, matched));
- if (PREDICT_TRUE(insert < 6210)) {
- EmitInsertLen(insert, cmd_depth, cmd_bits, cmd_histo,
- storage_ix, storage);
- } else if (ShouldUseUncompressedMode(metablock_start, next_emit, insert,
- lit_depth)) {
- EmitUncompressedMetaBlock(metablock_start, base, mlen_storage_ix - 3,
- storage_ix, storage);
- input_size -= static_cast<size_t>(base - input);
- input = base;
- next_emit = input;
- goto next_block;
- } else {
- EmitLongInsertLen(insert, cmd_depth, cmd_bits, cmd_histo,
- storage_ix, storage);
- }
- EmitLiterals(next_emit, insert, lit_depth, lit_bits,
- storage_ix, storage);
- if (distance == last_distance) {
- WriteBits(cmd_depth[64], cmd_bits[64], storage_ix, storage);
- ++cmd_histo[64];
- } else {
- EmitDistance(static_cast<size_t>(distance), cmd_depth, cmd_bits,
- cmd_histo, storage_ix, storage);
- last_distance = distance;
- }
- EmitCopyLenLastDistance(matched, cmd_depth, cmd_bits, cmd_histo,
- storage_ix, storage);
-
- next_emit = ip;
- if (PREDICT_FALSE(ip >= ip_limit)) {
- goto emit_remainder;
- }
- // We could immediately start working at ip now, but to improve
- // compression we first update "table" with the hashes of some positions
- // within the last copy.
- input_bytes = BROTLI_UNALIGNED_LOAD64(ip - 3);
- uint32_t prev_hash = HashBytesAtOffset(input_bytes, 0, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 3);
- prev_hash = HashBytesAtOffset(input_bytes, 1, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 2);
- prev_hash = HashBytesAtOffset(input_bytes, 2, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 1);
-
- uint32_t cur_hash = HashBytesAtOffset(input_bytes, 3, shift);
- candidate = base_ip + table[cur_hash];
- table[cur_hash] = static_cast<int>(ip - base_ip);
- }
-
- while (IsMatch(ip, candidate)) {
- // We have a 5-byte match at ip, and no need to emit any literal bytes
- // prior to ip.
- const uint8_t* base = ip;
- size_t matched = 5 + FindMatchLengthWithLimit(
- candidate + 5, ip + 5, static_cast<size_t>(ip_end - ip) - 5);
- ip += matched;
- last_distance = static_cast<int>(base - candidate); /* > 0 */
- assert(0 == memcmp(base, candidate, matched));
- EmitCopyLen(matched, cmd_depth, cmd_bits, cmd_histo,
- storage_ix, storage);
- EmitDistance(static_cast<size_t>(last_distance), cmd_depth, cmd_bits,
- cmd_histo, storage_ix, storage);
-
- next_emit = ip;
- if (PREDICT_FALSE(ip >= ip_limit)) {
- goto emit_remainder;
- }
- // We could immediately start working at ip now, but to improve
- // compression we first update "table" with the hashes of some positions
- // within the last copy.
- input_bytes = BROTLI_UNALIGNED_LOAD64(ip - 3);
- uint32_t prev_hash = HashBytesAtOffset(input_bytes, 0, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 3);
- prev_hash = HashBytesAtOffset(input_bytes, 1, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 2);
- prev_hash = HashBytesAtOffset(input_bytes, 2, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 1);
-
- uint32_t cur_hash = HashBytesAtOffset(input_bytes, 3, shift);
- candidate = base_ip + table[cur_hash];
- table[cur_hash] = static_cast<int>(ip - base_ip);
- }
-
- next_hash = Hash(++ip, shift);
- }
- }
-
- emit_remainder:
- assert(next_emit <= ip_end);
- input += block_size;
- input_size -= block_size;
- block_size = std::min(input_size, kMergeBlockSize);
-
- // Decide if we want to continue this meta-block instead of emitting the
- // last insert-only command.
- if (input_size > 0 &&
- total_block_size + block_size <= (1 << 20) &&
- ShouldMergeBlock(input, block_size, lit_depth)) {
- assert(total_block_size > (1 << 16));
- // Update the size of the current meta-block and continue emitting commands.
- // We can do this because the current size and the new size both have 5
- // nibbles.
- total_block_size += block_size;
- UpdateBits(20, static_cast<uint32_t>(total_block_size - 1),
- mlen_storage_ix, storage);
- goto emit_commands;
- }
-
- // Emit the remaining bytes as literals.
- if (next_emit < ip_end) {
- const size_t insert = static_cast<size_t>(ip_end - next_emit);
- if (PREDICT_TRUE(insert < 6210)) {
- EmitInsertLen(insert, cmd_depth, cmd_bits, cmd_histo,
- storage_ix, storage);
- EmitLiterals(next_emit, insert, lit_depth, lit_bits, storage_ix, storage);
- } else if (ShouldUseUncompressedMode(metablock_start, next_emit, insert,
- lit_depth)) {
- EmitUncompressedMetaBlock(metablock_start, ip_end, mlen_storage_ix - 3,
- storage_ix, storage);
- } else {
- EmitLongInsertLen(insert, cmd_depth, cmd_bits, cmd_histo,
- storage_ix, storage);
- EmitLiterals(next_emit, insert, lit_depth, lit_bits,
- storage_ix, storage);
- }
- }
- next_emit = ip_end;
-
-next_block:
- // If we have more data, write a new meta-block header and prefix codes and
- // then continue emitting commands.
- if (input_size > 0) {
- metablock_start = input;
- block_size = std::min(input_size, kFirstBlockSize);
- total_block_size = block_size;
- // Save the bit position of the MLEN field of the meta-block header, so that
- // we can update it later if we decide to extend this meta-block.
- mlen_storage_ix = *storage_ix + 3;
- StoreMetaBlockHeader(block_size, 0, storage_ix, storage);
- // No block splits, no contexts.
- WriteBits(13, 0, storage_ix, storage);
- memset(lit_depth, 0, sizeof(lit_depth));
- memset(lit_bits, 0, sizeof(lit_bits));
- BuildAndStoreLiteralPrefixCode(input, block_size, lit_depth, lit_bits,
- storage_ix, storage);
- BuildAndStoreCommandPrefixCode(cmd_histo, cmd_depth, cmd_bits,
- storage_ix, storage);
- goto emit_commands;
- }
-
- if (is_last) {
- WriteBits(1, 1, storage_ix, storage); // islast
- WriteBits(1, 1, storage_ix, storage); // isempty
- *storage_ix = (*storage_ix + 7u) & ~7u;
- } else {
- // If this is not the last block, update the command and distance prefix
- // codes for the next block and store the compressed forms.
- cmd_code[0] = 0;
- *cmd_code_numbits = 0;
- BuildAndStoreCommandPrefixCode(cmd_histo, cmd_depth, cmd_bits,
- cmd_code_numbits, cmd_code);
- }
-}
-
-} // namespace brotli
diff --git a/thirdparty/brotli/enc/compress_fragment.h b/thirdparty/brotli/enc/compress_fragment.h
index 7ce05fdf..a99e9395 100644
--- a/thirdparty/brotli/enc/compress_fragment.h
+++ b/thirdparty/brotli/enc/compress_fragment.h
@@ -4,44 +4,55 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Function for fast encoding of an input fragment, independently from the input
-// history. This function uses one-pass processing: when we find a backward
-// match, we immediately emit the corresponding command and literal codes to
-// the bit stream.
+/* Function for fast encoding of an input fragment, independently from the input
+ history. This function uses one-pass processing: when we find a backward
+ match, we immediately emit the corresponding command and literal codes to
+ the bit stream. */
#ifndef BROTLI_ENC_COMPRESS_FRAGMENT_H_
#define BROTLI_ENC_COMPRESS_FRAGMENT_H_
-#include "./types.h"
-
-namespace brotli {
-
-// Compresses "input" string to the "*storage" buffer as one or more complete
-// meta-blocks, and updates the "*storage_ix" bit position.
-//
-// If "is_last" is true, emits an additional empty last meta-block.
-//
-// "cmd_depth" and "cmd_bits" contain the command and distance prefix codes
-// (see comment in encode.h) used for the encoding of this input fragment.
-// If "is_last" is false, they are updated to reflect the statistics
-// of this input fragment, to be used for the encoding of the next fragment.
-//
-// "*cmd_code_numbits" is the number of bits of the compressed representation
-// of the command and distance prefix codes, and "cmd_code" is an array of
-// at least "(*cmd_code_numbits + 7) >> 3" size that contains the compressed
-// command and distance prefix codes. If "is_last" is false, these are also
-// updated to represent the updated "cmd_depth" and "cmd_bits".
-//
-// REQUIRES: "input_size" is greater than zero, or "is_last" is true.
-// REQUIRES: All elements in "table[0..table_size-1]" are initialized to zero.
-// REQUIRES: "table_size" is a power of two
-void BrotliCompressFragmentFast(const uint8_t* input, size_t input_size,
- bool is_last,
- int* table, size_t table_size,
- uint8_t cmd_depth[128], uint16_t cmd_bits[128],
- size_t* cmd_code_numbits, uint8_t* cmd_code,
- size_t* storage_ix, uint8_t* storage);
-
-} // namespace brotli
-
-#endif // BROTLI_ENC_COMPRESS_FRAGMENT_H_
+#include "../common/types.h"
+#include "./memory.h"
+#include "./port.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+/* Compresses "input" string to the "*storage" buffer as one or more complete
+ meta-blocks, and updates the "*storage_ix" bit position.
+
+ If "is_last" is 1, emits an additional empty last meta-block.
+
+ "cmd_depth" and "cmd_bits" contain the command and distance prefix codes
+ (see comment in encode.h) used for the encoding of this input fragment.
+ If "is_last" is 0, they are updated to reflect the statistics
+ of this input fragment, to be used for the encoding of the next fragment.
+
+ "*cmd_code_numbits" is the number of bits of the compressed representation
+ of the command and distance prefix codes, and "cmd_code" is an array of
+ at least "(*cmd_code_numbits + 7) >> 3" size that contains the compressed
+ command and distance prefix codes. If "is_last" is 0, these are also
+ updated to represent the updated "cmd_depth" and "cmd_bits".
+
+ REQUIRES: "input_size" is greater than zero, or "is_last" is 1.
+ REQUIRES: All elements in "table[0..table_size-1]" are initialized to zero.
+ REQUIRES: "table_size" is a power of two */
+BROTLI_INTERNAL void BrotliCompressFragmentFast(MemoryManager* m,
+ const uint8_t* input,
+ size_t input_size,
+ BROTLI_BOOL is_last,
+ int* table, size_t table_size,
+ uint8_t cmd_depth[128],
+ uint16_t cmd_bits[128],
+ size_t* cmd_code_numbits,
+ uint8_t* cmd_code,
+ size_t* storage_ix,
+ uint8_t* storage);
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
+
+#endif /* BROTLI_ENC_COMPRESS_FRAGMENT_H_ */
diff --git a/thirdparty/brotli/enc/compress_fragment_two_pass.c b/thirdparty/brotli/enc/compress_fragment_two_pass.c
new file mode 100644
index 00000000..93eac149
--- /dev/null
+++ b/thirdparty/brotli/enc/compress_fragment_two_pass.c
@@ -0,0 +1,557 @@
+/* Copyright 2015 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Function for fast encoding of an input fragment, independently from the input
+ history. This function uses two-pass processing: in the first pass we save
+ the found backward matches and literal bytes into a buffer, and in the
+ second pass we emit them into the bit stream using prefix codes built based
+ on the actual command and literal byte histograms. */
+
+#include "./compress_fragment_two_pass.h"
+
+#include <string.h> /* memcmp, memcpy, memset */
+
+#include "../common/types.h"
+#include "./bit_cost.h"
+#include "./brotli_bit_stream.h"
+#include "./entropy_encode.h"
+#include "./fast_log.h"
+#include "./find_match_length.h"
+#include "./memory.h"
+#include "./port.h"
+#include "./write_bits.h"
+
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+/* kHashMul32 multiplier has these properties:
+ * The multiplier must be odd. Otherwise we may lose the highest bit.
+ * No long streaks of 1s or 0s.
+ * There is no effort to ensure that it is a prime, the oddity is enough
+ for this use.
+ * The number has been tuned heuristically against compression benchmarks. */
+static const uint32_t kHashMul32 = 0x1e35a7bd;
+
+static BROTLI_INLINE uint32_t Hash(const uint8_t* p, size_t shift) {
+ const uint64_t h = (BROTLI_UNALIGNED_LOAD64(p) << 16) * kHashMul32;
+ return (uint32_t)(h >> shift);
+}
+
+static BROTLI_INLINE uint32_t HashBytesAtOffset(
+ uint64_t v, int offset, size_t shift) {
+ assert(offset >= 0);
+ assert(offset <= 2);
+ {
+ const uint64_t h = ((v >> (8 * offset)) << 16) * kHashMul32;
+ return (uint32_t)(h >> shift);
+ }
+}
+
+static BROTLI_INLINE BROTLI_BOOL IsMatch(const uint8_t* p1, const uint8_t* p2) {
+ return TO_BROTLI_BOOL(
+ BROTLI_UNALIGNED_LOAD32(p1) == BROTLI_UNALIGNED_LOAD32(p2) &&
+ p1[4] == p2[4] &&
+ p1[5] == p2[5]);
+}
+
+/* Builds a command and distance prefix code (each 64 symbols) into "depth" and
+ "bits" based on "histogram" and stores it into the bit stream. */
+static void BuildAndStoreCommandPrefixCode(
+ const uint32_t histogram[128],
+ uint8_t depth[128], uint16_t bits[128],
+ size_t* storage_ix, uint8_t* storage) {
+ /* Tree size for building a tree over 64 symbols is 2 * 64 + 1. */
+ HuffmanTree tree[129];
+ uint8_t cmd_depth[BROTLI_NUM_COMMAND_SYMBOLS] = { 0 };
+ uint16_t cmd_bits[64];
+ BrotliCreateHuffmanTree(histogram, 64, 15, tree, depth);
+ BrotliCreateHuffmanTree(&histogram[64], 64, 14, tree, &depth[64]);
+ /* We have to jump through a few hoopes here in order to compute
+ the command bits because the symbols are in a different order than in
+ the full alphabet. This looks complicated, but having the symbols
+ in this order in the command bits saves a few branches in the Emit*
+ functions. */
+ memcpy(cmd_depth, depth + 24, 24);
+ memcpy(cmd_depth + 24, depth, 8);
+ memcpy(cmd_depth + 32, depth + 48, 8);
+ memcpy(cmd_depth + 40, depth + 8, 8);
+ memcpy(cmd_depth + 48, depth + 56, 8);
+ memcpy(cmd_depth + 56, depth + 16, 8);
+ BrotliConvertBitDepthsToSymbols(cmd_depth, 64, cmd_bits);
+ memcpy(bits, cmd_bits + 24, 16);
+ memcpy(bits + 8, cmd_bits + 40, 16);
+ memcpy(bits + 16, cmd_bits + 56, 16);
+ memcpy(bits + 24, cmd_bits, 48);
+ memcpy(bits + 48, cmd_bits + 32, 16);
+ memcpy(bits + 56, cmd_bits + 48, 16);
+ BrotliConvertBitDepthsToSymbols(&depth[64], 64, &bits[64]);
+ {
+ /* Create the bit length array for the full command alphabet. */
+ size_t i;
+ memset(cmd_depth, 0, 64); /* only 64 first values were used */
+ memcpy(cmd_depth, depth + 24, 8);
+ memcpy(cmd_depth + 64, depth + 32, 8);
+ memcpy(cmd_depth + 128, depth + 40, 8);
+ memcpy(cmd_depth + 192, depth + 48, 8);
+ memcpy(cmd_depth + 384, depth + 56, 8);
+ for (i = 0; i < 8; ++i) {
+ cmd_depth[128 + 8 * i] = depth[i];
+ cmd_depth[256 + 8 * i] = depth[8 + i];
+ cmd_depth[448 + 8 * i] = depth[16 + i];
+ }
+ BrotliStoreHuffmanTree(
+ cmd_depth, BROTLI_NUM_COMMAND_SYMBOLS, tree, storage_ix, storage);
+ }
+ BrotliStoreHuffmanTree(&depth[64], 64, tree, storage_ix, storage);
+}
+
+static BROTLI_INLINE void EmitInsertLen(
+ uint32_t insertlen, uint32_t** commands) {
+ if (insertlen < 6) {
+ **commands = insertlen;
+ } else if (insertlen < 130) {
+ const uint32_t tail = insertlen - 2;
+ const uint32_t nbits = Log2FloorNonZero(tail) - 1u;
+ const uint32_t prefix = tail >> nbits;
+ const uint32_t inscode = (nbits << 1) + prefix + 2;
+ const uint32_t extra = tail - (prefix << nbits);
+ **commands = inscode | (extra << 8);
+ } else if (insertlen < 2114) {
+ const uint32_t tail = insertlen - 66;
+ const uint32_t nbits = Log2FloorNonZero(tail);
+ const uint32_t code = nbits + 10;
+ const uint32_t extra = tail - (1u << nbits);
+ **commands = code | (extra << 8);
+ } else if (insertlen < 6210) {
+ const uint32_t extra = insertlen - 2114;
+ **commands = 21 | (extra << 8);
+ } else if (insertlen < 22594) {
+ const uint32_t extra = insertlen - 6210;
+ **commands = 22 | (extra << 8);
+ } else {
+ const uint32_t extra = insertlen - 22594;
+ **commands = 23 | (extra << 8);
+ }
+ ++(*commands);
+}
+
+static BROTLI_INLINE void EmitCopyLen(size_t copylen, uint32_t** commands) {
+ if (copylen < 10) {
+ **commands = (uint32_t)(copylen + 38);
+ } else if (copylen < 134) {
+ const size_t tail = copylen - 6;
+ const size_t nbits = Log2FloorNonZero(tail) - 1;
+ const size_t prefix = tail >> nbits;
+ const size_t code = (nbits << 1) + prefix + 44;
+ const size_t extra = tail - (prefix << nbits);
+ **commands = (uint32_t)(code | (extra << 8));
+ } else if (copylen < 2118) {
+ const size_t tail = copylen - 70;
+ const size_t nbits = Log2FloorNonZero(tail);
+ const size_t code = nbits + 52;
+ const size_t extra = tail - ((size_t)1 << nbits);
+ **commands = (uint32_t)(code | (extra << 8));
+ } else {
+ const size_t extra = copylen - 2118;
+ **commands = (uint32_t)(63 | (extra << 8));
+ }
+ ++(*commands);
+}
+
+static BROTLI_INLINE void EmitCopyLenLastDistance(
+ size_t copylen, uint32_t** commands) {
+ if (copylen < 12) {
+ **commands = (uint32_t)(copylen + 20);
+ ++(*commands);
+ } else if (copylen < 72) {
+ const size_t tail = copylen - 8;
+ const size_t nbits = Log2FloorNonZero(tail) - 1;
+ const size_t prefix = tail >> nbits;
+ const size_t code = (nbits << 1) + prefix + 28;
+ const size_t extra = tail - (prefix << nbits);
+ **commands = (uint32_t)(code | (extra << 8));
+ ++(*commands);
+ } else if (copylen < 136) {
+ const size_t tail = copylen - 8;
+ const size_t code = (tail >> 5) + 54;
+ const size_t extra = tail & 31;
+ **commands = (uint32_t)(code | (extra << 8));
+ ++(*commands);
+ **commands = 64;
+ ++(*commands);
+ } else if (copylen < 2120) {
+ const size_t tail = copylen - 72;
+ const size_t nbits = Log2FloorNonZero(tail);
+ const size_t code = nbits + 52;
+ const size_t extra = tail - ((size_t)1 << nbits);
+ **commands = (uint32_t)(code | (extra << 8));
+ ++(*commands);
+ **commands = 64;
+ ++(*commands);
+ } else {
+ const size_t extra = copylen - 2120;
+ **commands = (uint32_t)(63 | (extra << 8));
+ ++(*commands);
+ **commands = 64;
+ ++(*commands);
+ }
+}
+
+static BROTLI_INLINE void EmitDistance(uint32_t distance, uint32_t** commands) {
+ uint32_t d = distance + 3;
+ uint32_t nbits = Log2FloorNonZero(d) - 1;
+ const uint32_t prefix = (d >> nbits) & 1;
+ const uint32_t offset = (2 + prefix) << nbits;
+ const uint32_t distcode = 2 * (nbits - 1) + prefix + 80;
+ uint32_t extra = d - offset;
+ **commands = distcode | (extra << 8);
+ ++(*commands);
+}
+
+/* REQUIRES: len <= 1 << 20. */
+static void BrotliStoreMetaBlockHeader(
+ size_t len, BROTLI_BOOL is_uncompressed, size_t* storage_ix,
+ uint8_t* storage) {
+ /* ISLAST */
+ BrotliWriteBits(1, 0, storage_ix, storage);
+ if (len <= (1U << 16)) {
+ /* MNIBBLES is 4 */
+ BrotliWriteBits(2, 0, storage_ix, storage);
+ BrotliWriteBits(16, len - 1, storage_ix, storage);
+ } else {
+ /* MNIBBLES is 5 */
+ BrotliWriteBits(2, 1, storage_ix, storage);
+ BrotliWriteBits(20, len - 1, storage_ix, storage);
+ }
+ /* ISUNCOMPRESSED */
+ BrotliWriteBits(1, (uint64_t)is_uncompressed, storage_ix, storage);
+}
+
+static void CreateCommands(const uint8_t* input, size_t block_size,
+ size_t input_size, const uint8_t* base_ip, int* table, size_t table_size,
+ uint8_t** literals, uint32_t** commands) {
+ /* "ip" is the input pointer. */
+ const uint8_t* ip = input;
+ const size_t shift = 64u - Log2FloorNonZero(table_size);
+ const uint8_t* ip_end = input + block_size;
+ /* "next_emit" is a pointer to the first byte that is not covered by a
+ previous copy. Bytes between "next_emit" and the start of the next copy or
+ the end of the input will be emitted as literal bytes. */
+ const uint8_t* next_emit = input;
+
+ int last_distance = -1;
+ const size_t kInputMarginBytes = 16;
+ const size_t kMinMatchLen = 6;
+
+ assert(table_size);
+ assert(table_size <= (1u << 31));
+ /* table must be power of two */
+ assert((table_size & (table_size - 1)) == 0);
+ assert(table_size - 1 ==
+ (size_t)(MAKE_UINT64_T(0xFFFFFFFF, 0xFFFFFF) >> shift));
+
+ if (PREDICT_TRUE(block_size >= kInputMarginBytes)) {
+ /* For the last block, we need to keep a 16 bytes margin so that we can be
+ sure that all distances are at most window size - 16.
+ For all other blocks, we only need to keep a margin of 5 bytes so that
+ we don't go over the block size with a copy. */
+ const size_t len_limit = BROTLI_MIN(size_t, block_size - kMinMatchLen,
+ input_size - kInputMarginBytes);
+ const uint8_t* ip_limit = input + len_limit;
+
+ uint32_t next_hash;
+ for (next_hash = Hash(++ip, shift); ; ) {
+ /* Step 1: Scan forward in the input looking for a 6-byte-long match.
+ If we get close to exhausting the input then goto emit_remainder.
+
+ Heuristic match skipping: If 32 bytes are scanned with no matches
+ found, start looking only at every other byte. If 32 more bytes are
+ scanned, look at every third byte, etc.. When a match is found,
+ immediately go back to looking at every byte. This is a small loss
+ (~5% performance, ~0.1% density) for compressible data due to more
+ bookkeeping, but for non-compressible data (such as JPEG) it's a huge
+ win since the compressor quickly "realizes" the data is incompressible
+ and doesn't bother looking for matches everywhere.
+
+ The "skip" variable keeps track of how many bytes there are since the
+ last match; dividing it by 32 (ie. right-shifting by five) gives the
+ number of bytes to move ahead for each iteration. */
+ uint32_t skip = 32;
+
+ const uint8_t* next_ip = ip;
+ const uint8_t* candidate;
+
+ assert(next_emit < ip);
+
+ do {
+ uint32_t hash = next_hash;
+ uint32_t bytes_between_hash_lookups = skip++ >> 5;
+ ip = next_ip;
+ assert(hash == Hash(ip, shift));
+ next_ip = ip + bytes_between_hash_lookups;
+ if (PREDICT_FALSE(next_ip > ip_limit)) {
+ goto emit_remainder;
+ }
+ next_hash = Hash(next_ip, shift);
+ candidate = ip - last_distance;
+ if (IsMatch(ip, candidate)) {
+ if (PREDICT_TRUE(candidate < ip)) {
+ table[hash] = (int)(ip - base_ip);
+ break;
+ }
+ }
+ candidate = base_ip + table[hash];
+ assert(candidate >= base_ip);
+ assert(candidate < ip);
+
+ table[hash] = (int)(ip - base_ip);
+ } while (PREDICT_TRUE(!IsMatch(ip, candidate)));
+
+ /* Step 2: Emit the found match together with the literal bytes from
+ "next_emit", and then see if we can find a next macth immediately
+ afterwards. Repeat until we find no match for the input
+ without emitting some literal bytes. */
+
+ {
+ /* We have a 6-byte match at ip, and we need to emit bytes in
+ [next_emit, ip). */
+ const uint8_t* base = ip;
+ size_t matched = 6 + FindMatchLengthWithLimit(
+ candidate + 6, ip + 6, (size_t)(ip_end - ip) - 6);
+ int distance = (int)(base - candidate); /* > 0 */
+ int insert = (int)(base - next_emit);
+ ip += matched;
+ assert(0 == memcmp(base, candidate, matched));
+ EmitInsertLen((uint32_t)insert, commands);
+ memcpy(*literals, next_emit, (size_t)insert);
+ *literals += insert;
+ if (distance == last_distance) {
+ **commands = 64;
+ ++(*commands);
+ } else {
+ EmitDistance((uint32_t)distance, commands);
+ last_distance = distance;
+ }
+ EmitCopyLenLastDistance(matched, commands);
+
+ next_emit = ip;
+ if (PREDICT_FALSE(ip >= ip_limit)) {
+ goto emit_remainder;
+ }
+ {
+ /* We could immediately start working at ip now, but to improve
+ compression we first update "table" with the hashes of some
+ positions within the last copy. */
+ uint64_t input_bytes = BROTLI_UNALIGNED_LOAD64(ip - 5);
+ uint32_t prev_hash = HashBytesAtOffset(input_bytes, 0, shift);
+ uint32_t cur_hash;
+ table[prev_hash] = (int)(ip - base_ip - 5);
+ prev_hash = HashBytesAtOffset(input_bytes, 1, shift);
+ table[prev_hash] = (int)(ip - base_ip - 4);
+ prev_hash = HashBytesAtOffset(input_bytes, 2, shift);
+ table[prev_hash] = (int)(ip - base_ip - 3);
+ input_bytes = BROTLI_UNALIGNED_LOAD64(ip - 2);
+ cur_hash = HashBytesAtOffset(input_bytes, 2, shift);
+ prev_hash = HashBytesAtOffset(input_bytes, 0, shift);
+ table[prev_hash] = (int)(ip - base_ip - 2);
+ prev_hash = HashBytesAtOffset(input_bytes, 1, shift);
+ table[prev_hash] = (int)(ip - base_ip - 1);
+
+ candidate = base_ip + table[cur_hash];
+ table[cur_hash] = (int)(ip - base_ip);
+ }
+ }
+
+ while (IsMatch(ip, candidate)) {
+ /* We have a 6-byte match at ip, and no need to emit any
+ literal bytes prior to ip. */
+ const uint8_t* base = ip;
+ size_t matched = 6 + FindMatchLengthWithLimit(
+ candidate + 6, ip + 6, (size_t)(ip_end - ip) - 6);
+ ip += matched;
+ last_distance = (int)(base - candidate); /* > 0 */
+ assert(0 == memcmp(base, candidate, matched));
+ EmitCopyLen(matched, commands);
+ EmitDistance((uint32_t)last_distance, commands);
+
+ next_emit = ip;
+ if (PREDICT_FALSE(ip >= ip_limit)) {
+ goto emit_remainder;
+ }
+ {
+ /* We could immediately start working at ip now, but to improve
+ compression we first update "table" with the hashes of some
+ positions within the last copy. */
+ uint64_t input_bytes = BROTLI_UNALIGNED_LOAD64(ip - 5);
+ uint32_t prev_hash = HashBytesAtOffset(input_bytes, 0, shift);
+ uint32_t cur_hash;
+ table[prev_hash] = (int)(ip - base_ip - 5);
+ prev_hash = HashBytesAtOffset(input_bytes, 1, shift);
+ table[prev_hash] = (int)(ip - base_ip - 4);
+ prev_hash = HashBytesAtOffset(input_bytes, 2, shift);
+ table[prev_hash] = (int)(ip - base_ip - 3);
+ input_bytes = BROTLI_UNALIGNED_LOAD64(ip - 2);
+ cur_hash = HashBytesAtOffset(input_bytes, 2, shift);
+ prev_hash = HashBytesAtOffset(input_bytes, 0, shift);
+ table[prev_hash] = (int)(ip - base_ip - 2);
+ prev_hash = HashBytesAtOffset(input_bytes, 1, shift);
+ table[prev_hash] = (int)(ip - base_ip - 1);
+
+ candidate = base_ip + table[cur_hash];
+ table[cur_hash] = (int)(ip - base_ip);
+ }
+ }
+
+ next_hash = Hash(++ip, shift);
+ }
+ }
+
+emit_remainder:
+ assert(next_emit <= ip_end);
+ /* Emit the remaining bytes as literals. */
+ if (next_emit < ip_end) {
+ const uint32_t insert = (uint32_t)(ip_end - next_emit);
+ EmitInsertLen(insert, commands);
+ memcpy(*literals, next_emit, insert);
+ *literals += insert;
+ }
+}
+
+static void StoreCommands(MemoryManager* m,
+ const uint8_t* literals, const size_t num_literals,
+ const uint32_t* commands, const size_t num_commands,
+ size_t* storage_ix, uint8_t* storage) {
+ static const uint32_t kNumExtraBits[128] = {
+ 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 7, 8, 9, 10, 12, 14, 24,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 7, 8, 9, 10, 24,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8,
+ 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, 14, 14, 15, 15, 16, 16,
+ 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24,
+ };
+ static const uint32_t kInsertOffset[24] = {
+ 0, 1, 2, 3, 4, 5, 6, 8, 10, 14, 18, 26, 34, 50, 66, 98, 130, 194, 322, 578,
+ 1090, 2114, 6210, 22594,
+ };
+
+ uint8_t lit_depths[256];
+ uint16_t lit_bits[256];
+ uint32_t lit_histo[256] = { 0 };
+ uint8_t cmd_depths[128] = { 0 };
+ uint16_t cmd_bits[128] = { 0 };
+ uint32_t cmd_histo[128] = { 0 };
+ size_t i;
+ for (i = 0; i < num_literals; ++i) {
+ ++lit_histo[literals[i]];
+ }
+ BrotliBuildAndStoreHuffmanTreeFast(m, lit_histo, num_literals,
+ /* max_bits = */ 8,
+ lit_depths, lit_bits,
+ storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+
+ for (i = 0; i < num_commands; ++i) {
+ ++cmd_histo[commands[i] & 0xff];
+ }
+ cmd_histo[1] += 1;
+ cmd_histo[2] += 1;
+ cmd_histo[64] += 1;
+ cmd_histo[84] += 1;
+ BuildAndStoreCommandPrefixCode(cmd_histo, cmd_depths, cmd_bits,
+ storage_ix, storage);
+
+ for (i = 0; i < num_commands; ++i) {
+ const uint32_t cmd = commands[i];
+ const uint32_t code = cmd & 0xff;
+ const uint32_t extra = cmd >> 8;
+ BrotliWriteBits(cmd_depths[code], cmd_bits[code], storage_ix, storage);
+ BrotliWriteBits(kNumExtraBits[code], extra, storage_ix, storage);
+ if (code < 24) {
+ const uint32_t insert = kInsertOffset[code] + extra;
+ uint32_t j;
+ for (j = 0; j < insert; ++j) {
+ const uint8_t lit = *literals;
+ BrotliWriteBits(lit_depths[lit], lit_bits[lit], storage_ix, storage);
+ ++literals;
+ }
+ }
+ }
+}
+
+/* Acceptable loss for uncompressible speedup is 2% */
+#define MIN_RATIO 0.98
+#define SAMPLE_RATE 43
+
+static BROTLI_BOOL ShouldCompress(
+ const uint8_t* input, size_t input_size, size_t num_literals) {
+ double corpus_size = (double)input_size;
+ if (num_literals < MIN_RATIO * corpus_size) {
+ return BROTLI_TRUE;
+ } else {
+ uint32_t literal_histo[256] = { 0 };
+ const double max_total_bit_cost = corpus_size * 8 * MIN_RATIO / SAMPLE_RATE;
+ size_t i;
+ for (i = 0; i < input_size; i += SAMPLE_RATE) {
+ ++literal_histo[input[i]];
+ }
+ return TO_BROTLI_BOOL(BitsEntropy(literal_histo, 256) < max_total_bit_cost);
+ }
+}
+
+void BrotliCompressFragmentTwoPass(MemoryManager* m,
+ const uint8_t* input, size_t input_size,
+ BROTLI_BOOL is_last,
+ uint32_t* command_buf, uint8_t* literal_buf,
+ int* table, size_t table_size,
+ size_t* storage_ix, uint8_t* storage) {
+ /* Save the start of the first block for position and distance computations.
+ */
+ const uint8_t* base_ip = input;
+
+ while (input_size > 0) {
+ size_t block_size =
+ BROTLI_MIN(size_t, input_size, kCompressFragmentTwoPassBlockSize);
+ uint32_t* commands = command_buf;
+ uint8_t* literals = literal_buf;
+ size_t num_literals;
+ CreateCommands(input, block_size, input_size, base_ip, table, table_size,
+ &literals, &commands);
+ num_literals = (size_t)(literals - literal_buf);
+ if (ShouldCompress(input, block_size, num_literals)) {
+ const size_t num_commands = (size_t)(commands - command_buf);
+ BrotliStoreMetaBlockHeader(block_size, 0, storage_ix, storage);
+ /* No block splits, no contexts. */
+ BrotliWriteBits(13, 0, storage_ix, storage);
+ StoreCommands(m, literal_buf, num_literals, command_buf, num_commands,
+ storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+ } else {
+ /* Since we did not find many backward references and the entropy of
+ the data is close to 8 bits, we can simply emit an uncompressed block.
+ This makes compression speed of uncompressible data about 3x faster. */
+ BrotliStoreMetaBlockHeader(block_size, 1, storage_ix, storage);
+ *storage_ix = (*storage_ix + 7u) & ~7u;
+ memcpy(&storage[*storage_ix >> 3], input, block_size);
+ *storage_ix += block_size << 3;
+ storage[*storage_ix >> 3] = 0;
+ }
+ input += block_size;
+ input_size -= block_size;
+ }
+
+ if (is_last) {
+ BrotliWriteBits(1, 1, storage_ix, storage); /* islast */
+ BrotliWriteBits(1, 1, storage_ix, storage); /* isempty */
+ *storage_ix = (*storage_ix + 7u) & ~7u;
+ }
+}
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/compress_fragment_two_pass.cc b/thirdparty/brotli/enc/compress_fragment_two_pass.cc
deleted file mode 100644
index a032740d..00000000
--- a/thirdparty/brotli/enc/compress_fragment_two_pass.cc
+++ /dev/null
@@ -1,524 +0,0 @@
-/* Copyright 2015 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-// Function for fast encoding of an input fragment, independently from the input
-// history. This function uses two-pass processing: in the first pass we save
-// the found backward matches and literal bytes into a buffer, and in the
-// second pass we emit them into the bit stream using prefix codes built based
-// on the actual command and literal byte histograms.
-
-#include "./compress_fragment_two_pass.h"
-
-#include <algorithm>
-
-#include "./brotli_bit_stream.h"
-#include "./bit_cost.h"
-#include "./entropy_encode.h"
-#include "./fast_log.h"
-#include "./find_match_length.h"
-#include "./port.h"
-#include "./types.h"
-#include "./write_bits.h"
-
-namespace brotli {
-
-// kHashMul32 multiplier has these properties:
-// * The multiplier must be odd. Otherwise we may lose the highest bit.
-// * No long streaks of 1s or 0s.
-// * There is no effort to ensure that it is a prime, the oddity is enough
-// for this use.
-// * The number has been tuned heuristically against compression benchmarks.
-static const uint32_t kHashMul32 = 0x1e35a7bd;
-
-static inline uint32_t Hash(const uint8_t* p, size_t shift) {
- const uint64_t h = (BROTLI_UNALIGNED_LOAD64(p) << 16) * kHashMul32;
- return static_cast<uint32_t>(h >> shift);
-}
-
-static inline uint32_t HashBytesAtOffset(uint64_t v, int offset, size_t shift) {
- assert(offset >= 0);
- assert(offset <= 2);
- const uint64_t h = ((v >> (8 * offset)) << 16) * kHashMul32;
- return static_cast<uint32_t>(h >> shift);
-}
-
-static inline int IsMatch(const uint8_t* p1, const uint8_t* p2) {
- return (BROTLI_UNALIGNED_LOAD32(p1) == BROTLI_UNALIGNED_LOAD32(p2) &&
- p1[4] == p2[4] &&
- p1[5] == p2[5]);
-}
-
-// Builds a command and distance prefix code (each 64 symbols) into "depth" and
-// "bits" based on "histogram" and stores it into the bit stream.
-static void BuildAndStoreCommandPrefixCode(
- const uint32_t histogram[128],
- uint8_t depth[128], uint16_t bits[128],
- size_t* storage_ix, uint8_t* storage) {
- // Tree size for building a tree over 64 symbols is 2 * 64 + 1.
- static const size_t kTreeSize = 129;
- HuffmanTree tree[kTreeSize];
- CreateHuffmanTree(histogram, 64, 15, tree, depth);
- CreateHuffmanTree(&histogram[64], 64, 14, tree, &depth[64]);
- // We have to jump through a few hoopes here in order to compute
- // the command bits because the symbols are in a different order than in
- // the full alphabet. This looks complicated, but having the symbols
- // in this order in the command bits saves a few branches in the Emit*
- // functions.
- uint8_t cmd_depth[64];
- uint16_t cmd_bits[64];
- memcpy(cmd_depth, depth + 24, 24);
- memcpy(cmd_depth + 24, depth, 8);
- memcpy(cmd_depth + 32, depth + 48, 8);
- memcpy(cmd_depth + 40, depth + 8, 8);
- memcpy(cmd_depth + 48, depth + 56, 8);
- memcpy(cmd_depth + 56, depth + 16, 8);
- ConvertBitDepthsToSymbols(cmd_depth, 64, cmd_bits);
- memcpy(bits, cmd_bits + 24, 16);
- memcpy(bits + 8, cmd_bits + 40, 16);
- memcpy(bits + 16, cmd_bits + 56, 16);
- memcpy(bits + 24, cmd_bits, 48);
- memcpy(bits + 48, cmd_bits + 32, 16);
- memcpy(bits + 56, cmd_bits + 48, 16);
- ConvertBitDepthsToSymbols(&depth[64], 64, &bits[64]);
- {
- // Create the bit length array for the full command alphabet.
- uint8_t cmd_depth[704] = { 0 };
- memcpy(cmd_depth, depth + 24, 8);
- memcpy(cmd_depth + 64, depth + 32, 8);
- memcpy(cmd_depth + 128, depth + 40, 8);
- memcpy(cmd_depth + 192, depth + 48, 8);
- memcpy(cmd_depth + 384, depth + 56, 8);
- for (size_t i = 0; i < 8; ++i) {
- cmd_depth[128 + 8 * i] = depth[i];
- cmd_depth[256 + 8 * i] = depth[8 + i];
- cmd_depth[448 + 8 * i] = depth[16 + i];
- }
- StoreHuffmanTree(cmd_depth, 704, tree, storage_ix, storage);
- }
- StoreHuffmanTree(&depth[64], 64, tree, storage_ix, storage);
-}
-
-inline void EmitInsertLen(uint32_t insertlen, uint32_t** commands) {
- if (insertlen < 6) {
- **commands = insertlen;
- } else if (insertlen < 130) {
- insertlen -= 2;
- const uint32_t nbits = Log2FloorNonZero(insertlen) - 1u;
- const uint32_t prefix = insertlen >> nbits;
- const uint32_t inscode = (nbits << 1) + prefix + 2;
- const uint32_t extra = insertlen - (prefix << nbits);
- **commands = inscode | (extra << 8);
- } else if (insertlen < 2114) {
- insertlen -= 66;
- const uint32_t nbits = Log2FloorNonZero(insertlen);
- const uint32_t code = nbits + 10;
- const uint32_t extra = insertlen - (1 << nbits);
- **commands = code | (extra << 8);
- } else if (insertlen < 6210) {
- const uint32_t extra = insertlen - 2114;
- **commands = 21 | (extra << 8);
- } else if (insertlen < 22594) {
- const uint32_t extra = insertlen - 6210;
- **commands = 22 | (extra << 8);
- } else {
- const uint32_t extra = insertlen - 22594;
- **commands = 23 | (extra << 8);
- }
- ++(*commands);
-}
-
-inline void EmitCopyLen(size_t copylen, uint32_t** commands) {
- if (copylen < 10) {
- **commands = static_cast<uint32_t>(copylen + 38);
- } else if (copylen < 134) {
- copylen -= 6;
- const size_t nbits = Log2FloorNonZero(copylen) - 1;
- const size_t prefix = copylen >> nbits;
- const size_t code = (nbits << 1) + prefix + 44;
- const size_t extra = copylen - (prefix << nbits);
- **commands = static_cast<uint32_t>(code | (extra << 8));
- } else if (copylen < 2118) {
- copylen -= 70;
- const size_t nbits = Log2FloorNonZero(copylen);
- const size_t code = nbits + 52;
- const size_t extra = copylen - (1 << nbits);
- **commands = static_cast<uint32_t>(code | (extra << 8));
- } else {
- const size_t extra = copylen - 2118;
- **commands = static_cast<uint32_t>(63 | (extra << 8));
- }
- ++(*commands);
-}
-
-inline void EmitCopyLenLastDistance(size_t copylen, uint32_t** commands) {
- if (copylen < 12) {
- **commands = static_cast<uint32_t>(copylen + 20);
- ++(*commands);
- } else if (copylen < 72) {
- copylen -= 8;
- const size_t nbits = Log2FloorNonZero(copylen) - 1;
- const size_t prefix = copylen >> nbits;
- const size_t code = (nbits << 1) + prefix + 28;
- const size_t extra = copylen - (prefix << nbits);
- **commands = static_cast<uint32_t>(code | (extra << 8));
- ++(*commands);
- } else if (copylen < 136) {
- copylen -= 8;
- const size_t code = (copylen >> 5) + 54;
- const size_t extra = copylen & 31;
- **commands = static_cast<uint32_t>(code | (extra << 8));
- ++(*commands);
- **commands = 64;
- ++(*commands);
- } else if (copylen < 2120) {
- copylen -= 72;
- const size_t nbits = Log2FloorNonZero(copylen);
- const size_t code = nbits + 52;
- const size_t extra = copylen - (1 << nbits);
- **commands = static_cast<uint32_t>(code | (extra << 8));
- ++(*commands);
- **commands = 64;
- ++(*commands);
- } else {
- const size_t extra = copylen - 2120;
- **commands = static_cast<uint32_t>(63 | (extra << 8));
- ++(*commands);
- **commands = 64;
- ++(*commands);
- }
-}
-
-inline void EmitDistance(uint32_t distance, uint32_t** commands) {
- distance += 3;
- uint32_t nbits = Log2FloorNonZero(distance) - 1;
- const uint32_t prefix = (distance >> nbits) & 1;
- const uint32_t offset = (2 + prefix) << nbits;
- const uint32_t distcode = 2 * (nbits - 1) + prefix + 80;
- uint32_t extra = distance - offset;
- **commands = distcode | (extra << 8);
- ++(*commands);
-}
-
-// REQUIRES: len <= 1 << 20.
-static void StoreMetaBlockHeader(
- size_t len, bool is_uncompressed, size_t* storage_ix, uint8_t* storage) {
- // ISLAST
- WriteBits(1, 0, storage_ix, storage);
- if (len <= (1U << 16)) {
- // MNIBBLES is 4
- WriteBits(2, 0, storage_ix, storage);
- WriteBits(16, len - 1, storage_ix, storage);
- } else {
- // MNIBBLES is 5
- WriteBits(2, 1, storage_ix, storage);
- WriteBits(20, len - 1, storage_ix, storage);
- }
- // ISUNCOMPRESSED
- WriteBits(1, is_uncompressed, storage_ix, storage);
-}
-
-static void CreateCommands(const uint8_t* input, size_t block_size,
- size_t input_size, const uint8_t* base_ip,
- int* table, size_t table_size,
- uint8_t** literals, uint32_t** commands) {
- // "ip" is the input pointer.
- const uint8_t* ip = input;
- assert(table_size);
- assert(table_size <= (1u << 31));
- assert((table_size & (table_size - 1)) == 0); // table must be power of two
- const size_t shift = 64u - Log2FloorNonZero(table_size);
- assert(table_size - 1 == static_cast<size_t>(
- MAKE_UINT64_T(0xFFFFFFFF, 0xFFFFFF) >> shift));
- const uint8_t* ip_end = input + block_size;
- // "next_emit" is a pointer to the first byte that is not covered by a
- // previous copy. Bytes between "next_emit" and the start of the next copy or
- // the end of the input will be emitted as literal bytes.
- const uint8_t* next_emit = input;
-
- int last_distance = -1;
- const size_t kInputMarginBytes = 16;
- const size_t kMinMatchLen = 6;
- if (PREDICT_TRUE(block_size >= kInputMarginBytes)) {
- // For the last block, we need to keep a 16 bytes margin so that we can be
- // sure that all distances are at most window size - 16.
- // For all other blocks, we only need to keep a margin of 5 bytes so that
- // we don't go over the block size with a copy.
- const size_t len_limit = std::min(block_size - kMinMatchLen,
- input_size - kInputMarginBytes);
- const uint8_t* ip_limit = input + len_limit;
-
- for (uint32_t next_hash = Hash(++ip, shift); ; ) {
- assert(next_emit < ip);
- // Step 1: Scan forward in the input looking for a 6-byte-long match.
- // If we get close to exhausting the input then goto emit_remainder.
- //
- // Heuristic match skipping: If 32 bytes are scanned with no matches
- // found, start looking only at every other byte. If 32 more bytes are
- // scanned, look at every third byte, etc.. When a match is found,
- // immediately go back to looking at every byte. This is a small loss
- // (~5% performance, ~0.1% density) for compressible data due to more
- // bookkeeping, but for non-compressible data (such as JPEG) it's a huge
- // win since the compressor quickly "realizes" the data is incompressible
- // and doesn't bother looking for matches everywhere.
- //
- // The "skip" variable keeps track of how many bytes there are since the
- // last match; dividing it by 32 (ie. right-shifting by five) gives the
- // number of bytes to move ahead for each iteration.
- uint32_t skip = 32;
-
- const uint8_t* next_ip = ip;
- const uint8_t* candidate;
- do {
- ip = next_ip;
- uint32_t hash = next_hash;
- assert(hash == Hash(ip, shift));
- uint32_t bytes_between_hash_lookups = skip++ >> 5;
- next_ip = ip + bytes_between_hash_lookups;
- if (PREDICT_FALSE(next_ip > ip_limit)) {
- goto emit_remainder;
- }
- next_hash = Hash(next_ip, shift);
- candidate = ip - last_distance;
- if (IsMatch(ip, candidate)) {
- if (PREDICT_TRUE(candidate < ip)) {
- table[hash] = static_cast<int>(ip - base_ip);
- break;
- }
- }
- candidate = base_ip + table[hash];
- assert(candidate >= base_ip);
- assert(candidate < ip);
-
- table[hash] = static_cast<int>(ip - base_ip);
- } while (PREDICT_TRUE(!IsMatch(ip, candidate)));
-
- // Step 2: Emit the found match together with the literal bytes from
- // "next_emit", and then see if we can find a next macth immediately
- // afterwards. Repeat until we find no match for the input
- // without emitting some literal bytes.
- uint64_t input_bytes;
-
- {
- // We have a 6-byte match at ip, and we need to emit bytes in
- // [next_emit, ip).
- const uint8_t* base = ip;
- size_t matched = 6 + FindMatchLengthWithLimit(
- candidate + 6, ip + 6, static_cast<size_t>(ip_end - ip) - 6);
- ip += matched;
- int distance = static_cast<int>(base - candidate); /* > 0 */
- int insert = static_cast<int>(base - next_emit);
- assert(0 == memcmp(base, candidate, matched));
- EmitInsertLen(static_cast<uint32_t>(insert), commands);
- memcpy(*literals, next_emit, static_cast<size_t>(insert));
- *literals += insert;
- if (distance == last_distance) {
- **commands = 64;
- ++(*commands);
- } else {
- EmitDistance(static_cast<uint32_t>(distance), commands);
- last_distance = distance;
- }
- EmitCopyLenLastDistance(matched, commands);
-
- next_emit = ip;
- if (PREDICT_FALSE(ip >= ip_limit)) {
- goto emit_remainder;
- }
- // We could immediately start working at ip now, but to improve
- // compression we first update "table" with the hashes of some positions
- // within the last copy.
- input_bytes = BROTLI_UNALIGNED_LOAD64(ip - 5);
- uint32_t prev_hash = HashBytesAtOffset(input_bytes, 0, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 5);
- prev_hash = HashBytesAtOffset(input_bytes, 1, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 4);
- prev_hash = HashBytesAtOffset(input_bytes, 2, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 3);
- input_bytes = BROTLI_UNALIGNED_LOAD64(ip - 2);
- prev_hash = HashBytesAtOffset(input_bytes, 0, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 2);
- prev_hash = HashBytesAtOffset(input_bytes, 1, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 1);
-
- uint32_t cur_hash = HashBytesAtOffset(input_bytes, 2, shift);
- candidate = base_ip + table[cur_hash];
- table[cur_hash] = static_cast<int>(ip - base_ip);
- }
-
- while (IsMatch(ip, candidate)) {
- // We have a 6-byte match at ip, and no need to emit any
- // literal bytes prior to ip.
- const uint8_t* base = ip;
- size_t matched = 6 + FindMatchLengthWithLimit(
- candidate + 6, ip + 6, static_cast<size_t>(ip_end - ip) - 6);
- ip += matched;
- last_distance = static_cast<int>(base - candidate); /* > 0 */
- assert(0 == memcmp(base, candidate, matched));
- EmitCopyLen(matched, commands);
- EmitDistance(static_cast<uint32_t>(last_distance), commands);
-
- next_emit = ip;
- if (PREDICT_FALSE(ip >= ip_limit)) {
- goto emit_remainder;
- }
- // We could immediately start working at ip now, but to improve
- // compression we first update "table" with the hashes of some positions
- // within the last copy.
- input_bytes = BROTLI_UNALIGNED_LOAD64(ip - 5);
- uint32_t prev_hash = HashBytesAtOffset(input_bytes, 0, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 5);
- prev_hash = HashBytesAtOffset(input_bytes, 1, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 4);
- prev_hash = HashBytesAtOffset(input_bytes, 2, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 3);
- input_bytes = BROTLI_UNALIGNED_LOAD64(ip - 2);
- prev_hash = HashBytesAtOffset(input_bytes, 0, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 2);
- prev_hash = HashBytesAtOffset(input_bytes, 1, shift);
- table[prev_hash] = static_cast<int>(ip - base_ip - 1);
-
- uint32_t cur_hash = HashBytesAtOffset(input_bytes, 2, shift);
- candidate = base_ip + table[cur_hash];
- table[cur_hash] = static_cast<int>(ip - base_ip);
- }
-
- next_hash = Hash(++ip, shift);
- }
- }
-
-emit_remainder:
- assert(next_emit <= ip_end);
- // Emit the remaining bytes as literals.
- if (next_emit < ip_end) {
- const uint32_t insert = static_cast<uint32_t>(ip_end - next_emit);
- EmitInsertLen(insert, commands);
- memcpy(*literals, next_emit, insert);
- *literals += insert;
- }
-}
-
-static void StoreCommands(const uint8_t* literals, const size_t num_literals,
- const uint32_t* commands, const size_t num_commands,
- size_t* storage_ix, uint8_t* storage) {
- uint8_t lit_depths[256] = { 0 };
- uint16_t lit_bits[256] = { 0 };
- uint32_t lit_histo[256] = { 0 };
- for (size_t i = 0; i < num_literals; ++i) {
- ++lit_histo[literals[i]];
- }
- BuildAndStoreHuffmanTreeFast(lit_histo, num_literals,
- /* max_bits = */ 8,
- lit_depths, lit_bits,
- storage_ix, storage);
-
- uint8_t cmd_depths[128] = { 0 };
- uint16_t cmd_bits[128] = { 0 };
- uint32_t cmd_histo[128] = { 0 };
- for (size_t i = 0; i < num_commands; ++i) {
- ++cmd_histo[commands[i] & 0xff];
- }
- cmd_histo[1] += 1;
- cmd_histo[2] += 1;
- cmd_histo[64] += 1;
- cmd_histo[84] += 1;
- BuildAndStoreCommandPrefixCode(cmd_histo, cmd_depths, cmd_bits,
- storage_ix, storage);
-
- static const uint32_t kNumExtraBits[128] = {
- 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 7, 8, 9, 10, 12, 14, 24,
- 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4,
- 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 7, 8, 9, 10, 24,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8,
- 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, 14, 14, 15, 15, 16, 16,
- 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24,
- };
- static const uint32_t kInsertOffset[24] = {
- 0, 1, 2, 3, 4, 5, 6, 8, 10, 14, 18, 26, 34, 50, 66, 98, 130, 194, 322, 578,
- 1090, 2114, 6210, 22594,
- };
-
- for (size_t i = 0; i < num_commands; ++i) {
- const uint32_t cmd = commands[i];
- const uint32_t code = cmd & 0xff;
- const uint32_t extra = cmd >> 8;
- WriteBits(cmd_depths[code], cmd_bits[code], storage_ix, storage);
- WriteBits(kNumExtraBits[code], extra, storage_ix, storage);
- if (code < 24) {
- const uint32_t insert = kInsertOffset[code] + extra;
- for (uint32_t j = 0; j < insert; ++j) {
- const uint8_t lit = *literals;
- WriteBits(lit_depths[lit], lit_bits[lit], storage_ix, storage);
- ++literals;
- }
- }
- }
-}
-
-static bool ShouldCompress(const uint8_t* input, size_t input_size,
- size_t num_literals) {
- static const double kAcceptableLossForUncompressibleSpeedup = 0.02;
- static const double kMaxRatioOfLiterals =
- 1.0 - kAcceptableLossForUncompressibleSpeedup;
- if (num_literals < kMaxRatioOfLiterals * static_cast<double>(input_size)) {
- return true;
- }
- uint32_t literal_histo[256] = { 0 };
- static const uint32_t kSampleRate = 43;
- static const double kMaxEntropy =
- 8 * (1.0 - kAcceptableLossForUncompressibleSpeedup);
- const double max_total_bit_cost =
- static_cast<double>(input_size) * kMaxEntropy / kSampleRate;
- for (size_t i = 0; i < input_size; i += kSampleRate) {
- ++literal_histo[input[i]];
- }
- return BitsEntropy(literal_histo, 256) < max_total_bit_cost;
-}
-
-void BrotliCompressFragmentTwoPass(const uint8_t* input, size_t input_size,
- bool is_last,
- uint32_t* command_buf, uint8_t* literal_buf,
- int* table, size_t table_size,
- size_t* storage_ix, uint8_t* storage) {
- // Save the start of the first block for position and distance computations.
- const uint8_t* base_ip = input;
-
- while (input_size > 0) {
- size_t block_size = std::min(input_size, kCompressFragmentTwoPassBlockSize);
- uint32_t* commands = command_buf;
- uint8_t* literals = literal_buf;
- CreateCommands(input, block_size, input_size, base_ip, table, table_size,
- &literals, &commands);
- const size_t num_literals = static_cast<size_t>(literals - literal_buf);
- const size_t num_commands = static_cast<size_t>(commands - command_buf);
- if (ShouldCompress(input, block_size, num_literals)) {
- StoreMetaBlockHeader(block_size, 0, storage_ix, storage);
- // No block splits, no contexts.
- WriteBits(13, 0, storage_ix, storage);
- StoreCommands(literal_buf, num_literals, command_buf, num_commands,
- storage_ix, storage);
- } else {
- // Since we did not find many backward references and the entropy of
- // the data is close to 8 bits, we can simply emit an uncompressed block.
- // This makes compression speed of uncompressible data about 3x faster.
- StoreMetaBlockHeader(block_size, 1, storage_ix, storage);
- *storage_ix = (*storage_ix + 7u) & ~7u;
- memcpy(&storage[*storage_ix >> 3], input, block_size);
- *storage_ix += block_size << 3;
- storage[*storage_ix >> 3] = 0;
- }
- input += block_size;
- input_size -= block_size;
- }
-
- if (is_last) {
- WriteBits(1, 1, storage_ix, storage); // islast
- WriteBits(1, 1, storage_ix, storage); // isempty
- *storage_ix = (*storage_ix + 7u) & ~7u;
- }
-}
-
-} // namespace brotli
diff --git a/thirdparty/brotli/enc/compress_fragment_two_pass.h b/thirdparty/brotli/enc/compress_fragment_two_pass.h
index 690ed081..49d2b993 100644
--- a/thirdparty/brotli/enc/compress_fragment_two_pass.h
+++ b/thirdparty/brotli/enc/compress_fragment_two_pass.h
@@ -4,37 +4,48 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Function for fast encoding of an input fragment, independently from the input
-// history. This function uses two-pass processing: in the first pass we save
-// the found backward matches and literal bytes into a buffer, and in the
-// second pass we emit them into the bit stream using prefix codes built based
-// on the actual command and literal byte histograms.
+/* Function for fast encoding of an input fragment, independently from the input
+ history. This function uses two-pass processing: in the first pass we save
+ the found backward matches and literal bytes into a buffer, and in the
+ second pass we emit them into the bit stream using prefix codes built based
+ on the actual command and literal byte histograms. */
#ifndef BROTLI_ENC_COMPRESS_FRAGMENT_TWO_PASS_H_
#define BROTLI_ENC_COMPRESS_FRAGMENT_TWO_PASS_H_
-#include "./types.h"
+#include "../common/types.h"
+#include "./memory.h"
+#include "./port.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
static const size_t kCompressFragmentTwoPassBlockSize = 1 << 17;
-// Compresses "input" string to the "*storage" buffer as one or more complete
-// meta-blocks, and updates the "*storage_ix" bit position.
-//
-// If "is_last" is true, emits an additional empty last meta-block.
-//
-// REQUIRES: "input_size" is greater than zero, or "is_last" is true.
-// REQUIRES: "command_buf" and "literal_buf" point to at least
-// kCompressFragmentTwoPassBlockSize long arrays.
-// REQUIRES: All elements in "table[0..table_size-1]" are initialized to zero.
-// REQUIRES: "table_size" is a power of two
-void BrotliCompressFragmentTwoPass(const uint8_t* input, size_t input_size,
- bool is_last,
- uint32_t* command_buf, uint8_t* literal_buf,
- int* table, size_t table_size,
- size_t* storage_ix, uint8_t* storage);
-
-} // namespace brotli
-
-#endif // BROTLI_ENC_COMPRESS_FRAGMENT_TWO_PASS_H_
+/* Compresses "input" string to the "*storage" buffer as one or more complete
+ meta-blocks, and updates the "*storage_ix" bit position.
+
+ If "is_last" is 1, emits an additional empty last meta-block.
+
+ REQUIRES: "input_size" is greater than zero, or "is_last" is 1.
+ REQUIRES: "command_buf" and "literal_buf" point to at least
+ kCompressFragmentTwoPassBlockSize long arrays.
+ REQUIRES: All elements in "table[0..table_size-1]" are initialized to zero.
+ REQUIRES: "table_size" is a power of two */
+BROTLI_INTERNAL void BrotliCompressFragmentTwoPass(MemoryManager* m,
+ const uint8_t* input,
+ size_t input_size,
+ BROTLI_BOOL is_last,
+ uint32_t* command_buf,
+ uint8_t* literal_buf,
+ int* table,
+ size_t table_size,
+ size_t* storage_ix,
+ uint8_t* storage);
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
+
+#endif /* BROTLI_ENC_COMPRESS_FRAGMENT_TWO_PASS_H_ */
diff --git a/thirdparty/brotli/enc/compressor.cc b/thirdparty/brotli/enc/compressor.cc
new file mode 100644
index 00000000..709b5439
--- /dev/null
+++ b/thirdparty/brotli/enc/compressor.cc
@@ -0,0 +1,139 @@
+/* Copyright 2016 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Brotli compressor API C++ wrapper and utilities. */
+
+#include "./compressor.h"
+
+#include <cstdlib> /* exit */
+
+namespace brotli {
+
+static void SetParams(const BrotliParams* from, BrotliEncoderState* to) {
+ BrotliEncoderMode mode = BROTLI_MODE_GENERIC;
+ if (from->mode == BrotliParams::MODE_TEXT) {
+ mode = BROTLI_MODE_TEXT;
+ } else if (from->mode == BrotliParams::MODE_FONT) {
+ mode = BROTLI_MODE_FONT;
+ }
+ BrotliEncoderSetParameter(to, BROTLI_PARAM_MODE, (uint32_t)mode);
+ BrotliEncoderSetParameter(to, BROTLI_PARAM_QUALITY, (uint32_t)from->quality);
+ BrotliEncoderSetParameter(to, BROTLI_PARAM_LGWIN, (uint32_t)from->lgwin);
+ BrotliEncoderSetParameter(to, BROTLI_PARAM_LGBLOCK, (uint32_t)from->lgblock);
+}
+
+BrotliCompressor::BrotliCompressor(BrotliParams params) {
+ state_ = BrotliEncoderCreateInstance(0, 0, 0);
+ if (state_ == 0) std::exit(EXIT_FAILURE); /* OOM */
+ SetParams(&params, state_);
+}
+
+BrotliCompressor::~BrotliCompressor(void) {
+ BrotliEncoderDestroyInstance(state_);
+}
+
+bool BrotliCompressor::WriteMetaBlock(const size_t input_size,
+ const uint8_t* input_buffer,
+ const bool is_last, size_t* encoded_size,
+ uint8_t* encoded_buffer) {
+ return !!BrotliEncoderWriteMetaBlock(state_, input_size, input_buffer,
+ TO_BROTLI_BOOL(is_last), encoded_size,
+ encoded_buffer);
+}
+
+bool BrotliCompressor::WriteMetadata(const size_t input_size,
+ const uint8_t* input_buffer,
+ const bool is_last, size_t* encoded_size,
+ uint8_t* encoded_buffer) {
+ return !!BrotliEncoderWriteMetadata(state_, input_size, input_buffer,
+ TO_BROTLI_BOOL(is_last), encoded_size,
+ encoded_buffer);
+}
+
+bool BrotliCompressor::FinishStream(size_t* encoded_size,
+ uint8_t* encoded_buffer) {
+ return !!BrotliEncoderFinishStream(state_, encoded_size, encoded_buffer);
+}
+
+void BrotliCompressor::CopyInputToRingBuffer(const size_t input_size,
+ const uint8_t* input_buffer) {
+ BrotliEncoderCopyInputToRingBuffer(state_, input_size, input_buffer);
+}
+
+bool BrotliCompressor::WriteBrotliData(const bool is_last,
+ const bool force_flush, size_t* out_size,
+ uint8_t** output) {
+ return !!BrotliEncoderWriteData(state_, TO_BROTLI_BOOL(is_last),
+ TO_BROTLI_BOOL(force_flush), out_size, output);
+}
+
+void BrotliCompressor::BrotliSetCustomDictionary(size_t size,
+ const uint8_t* dict) {
+ BrotliEncoderSetCustomDictionary(state_, size, dict);
+}
+
+int BrotliCompressBuffer(BrotliParams params, size_t input_size,
+ const uint8_t* input_buffer, size_t* encoded_size,
+ uint8_t* encoded_buffer) {
+ return BrotliEncoderCompress(params.quality, params.lgwin,
+ (BrotliEncoderMode)params.mode, input_size, input_buffer,
+ encoded_size, encoded_buffer);
+}
+
+int BrotliCompress(BrotliParams params, BrotliIn* in, BrotliOut* out) {
+ return BrotliCompressWithCustomDictionary(0, 0, params, in, out);
+}
+
+int BrotliCompressWithCustomDictionary(size_t dictsize, const uint8_t* dict,
+ BrotliParams params, BrotliIn* in,
+ BrotliOut* out) {
+ const size_t kOutputBufferSize = 65536;
+ uint8_t* output_buffer;
+ bool result = true;
+ size_t available_in = 0;
+ const uint8_t* next_in = NULL;
+ size_t total_out = 0;
+ bool end_of_input = false;
+ BrotliEncoderState* s;
+
+ s = BrotliEncoderCreateInstance(0, 0, 0);
+ if (!s) return 0;
+ SetParams(&params, s);
+ BrotliEncoderSetCustomDictionary(s, dictsize, dict);
+ output_buffer = new uint8_t[kOutputBufferSize];
+
+ while (true) {
+ if (available_in == 0 && !end_of_input) {
+ next_in = reinterpret_cast<const uint8_t*>(
+ in->Read(BrotliEncoderInputBlockSize(s), &available_in));
+ if (!next_in) {
+ end_of_input = true;
+ available_in = 0;
+ } else if (available_in == 0) {
+ continue;
+ }
+ }
+ size_t available_out = kOutputBufferSize;
+ uint8_t* next_out = output_buffer;
+ result = !!BrotliEncoderCompressStream(
+ s, end_of_input ? BROTLI_OPERATION_FINISH : BROTLI_OPERATION_PROCESS,
+ &available_in, &next_in, &available_out, &next_out, &total_out);
+ if (!result) break;
+ size_t used_output = kOutputBufferSize - available_out;
+ if (used_output != 0) {
+ result = out->Write(output_buffer, used_output);
+ if (!result) break;
+ }
+ if (BrotliEncoderIsFinished(s)) break;
+ }
+
+ delete[] output_buffer;
+ BrotliEncoderDestroyInstance(s);
+ return result ? 1 : 0;
+}
+
+
+} /* namespace brotli */
diff --git a/thirdparty/brotli/enc/compressor.h b/thirdparty/brotli/enc/compressor.h
new file mode 100644
index 00000000..a6995bc8
--- /dev/null
+++ b/thirdparty/brotli/enc/compressor.h
@@ -0,0 +1,161 @@
+/* Copyright 2016 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* C++ API for Brotli compression. */
+
+#ifndef BROTLI_ENC_COMPRESSOR_H_
+#define BROTLI_ENC_COMPRESSOR_H_
+
+#include "./encode.h"
+#include "./streams.h"
+
+namespace brotli {
+
+static const int kMinWindowBits = kBrotliMinWindowBits;
+static const int kMaxWindowBits = kBrotliMaxWindowBits;
+static const int kMinInputBlockBits = kBrotliMinInputBlockBits;
+static const int kMaxInputBlockBits = kBrotliMaxInputBlockBits;
+
+struct BrotliParams {
+ BrotliParams(void)
+ : mode(MODE_GENERIC),
+ quality(11),
+ lgwin(22),
+ lgblock(0),
+ enable_dictionary(true),
+ enable_transforms(false),
+ greedy_block_split(false),
+ enable_context_modeling(true) {}
+
+ enum Mode {
+ /* Default compression mode. The compressor does not know anything in
+ advance about the properties of the input. */
+ MODE_GENERIC = 0,
+ /* Compression mode for UTF-8 format text input. */
+ MODE_TEXT = 1,
+ /* Compression mode used in WOFF 2.0. */
+ MODE_FONT = 2
+ };
+ Mode mode;
+
+ /* Controls the compression-speed vs compression-density tradeoffs. The higher
+ the |quality|, the slower the compression. Range is 0 to 11. */
+ int quality;
+ /* Base 2 logarithm of the sliding window size. Range is 10 to 24. */
+ int lgwin;
+ /* Base 2 logarithm of the maximum input block size. Range is 16 to 24.
+ If set to 0, the value will be set based on the quality. */
+ int lgblock;
+
+ /* These settings are deprecated and will be ignored.
+ All speed vs. size compromises are controlled by the |quality| param. */
+ bool enable_dictionary;
+ bool enable_transforms;
+ bool greedy_block_split;
+ bool enable_context_modeling;
+};
+
+/* An instance can not be reused for multiple brotli streams. */
+class BrotliCompressor {
+ public:
+ explicit BrotliCompressor(BrotliParams params);
+ ~BrotliCompressor(void);
+
+ /* The maximum input size that can be processed at once. */
+ size_t input_block_size(void) const {
+ return BrotliEncoderInputBlockSize(state_);
+ }
+
+ /* Encodes the data in |input_buffer| as a meta-block and writes it to
+ |encoded_buffer| (|*encoded_size should| be set to the size of
+ |encoded_buffer|) and sets |*encoded_size| to the number of bytes that
+ was written. The |input_size| must not be greater than input_block_size().
+ Returns false if there was an error and true otherwise. */
+ bool WriteMetaBlock(const size_t input_size,
+ const uint8_t* input_buffer,
+ const bool is_last,
+ size_t* encoded_size,
+ uint8_t* encoded_buffer);
+
+ /* Writes a metadata meta-block containing the given input to encoded_buffer.
+ |*encoded_size| should be set to the size of the encoded_buffer.
+ Sets |*encoded_size| to the number of bytes that was written.
+ Note that the given input data will not be part of the sliding window and
+ thus no backward references can be made to this data from subsequent
+ metablocks. |input_size| must not be greater than 2^24 and provided
+ |*encoded_size| must not be less than |input_size| + 6.
+ Returns false if there was an error and true otherwise. */
+ bool WriteMetadata(const size_t input_size,
+ const uint8_t* input_buffer,
+ const bool is_last,
+ size_t* encoded_size,
+ uint8_t* encoded_buffer);
+
+ /* Writes a zero-length meta-block with end-of-input bit set to the
+ internal output buffer and copies the output buffer to |encoded_buffer|
+ (|*encoded_size| should be set to the size of |encoded_buffer|) and sets
+ |*encoded_size| to the number of bytes written.
+ Returns false if there was an error and true otherwise. */
+ bool FinishStream(size_t* encoded_size, uint8_t* encoded_buffer);
+
+ /* Copies the given input data to the internal ring buffer of the compressor.
+ No processing of the data occurs at this time and this function can be
+ called multiple times before calling WriteBrotliData() to process the
+ accumulated input. At most input_block_size() bytes of input data can be
+ copied to the ring buffer, otherwise the next WriteBrotliData() will fail.
+ */
+ void CopyInputToRingBuffer(const size_t input_size,
+ const uint8_t* input_buffer);
+
+ /* Processes the accumulated input data and sets |*out_size| to the length of
+ the new output meta-block, or to zero if no new output meta-block has been
+ created (in this case the processed input data is buffered internally).
+ If |*out_size| is positive, |*output| points to the start of the output
+ data. If |is_last| or |force_flush| is true, an output meta-block is always
+ created. However, until |is_last| is true encoder may retain up to 7 bits
+ of the last byte of output. To force encoder to dump the remaining bits
+ use WriteMetadata() to append an empty meta-data block.
+ Returns false if the size of the input data is larger than
+ input_block_size(). */
+ bool WriteBrotliData(const bool is_last, const bool force_flush,
+ size_t* out_size, uint8_t** output);
+
+ /* Fills the new state with a dictionary for LZ77, warming up the ringbuffer,
+ e.g. for custom static dictionaries for data formats.
+ Not to be confused with the built-in transformable dictionary of Brotli.
+ To decode, use BrotliSetCustomDictionary() of the decoder with the same
+ dictionary. */
+ void BrotliSetCustomDictionary(size_t size, const uint8_t* dict);
+
+ /* No-op, but we keep it here for API backward-compatibility. */
+ void WriteStreamHeader(void) {}
+
+ private:
+ BrotliEncoderState* state_;
+};
+
+/* Compresses the data in |input_buffer| into |encoded_buffer|, and sets
+ |*encoded_size| to the compressed length.
+ Returns 0 if there was an error and 1 otherwise. */
+int BrotliCompressBuffer(BrotliParams params,
+ size_t input_size,
+ const uint8_t* input_buffer,
+ size_t* encoded_size,
+ uint8_t* encoded_buffer);
+
+/* Same as above, but uses the specified input and output classes instead
+ of reading from and writing to pre-allocated memory buffers. */
+int BrotliCompress(BrotliParams params, BrotliIn* in, BrotliOut* out);
+
+/* Before compressing the data, sets a custom LZ77 dictionary with
+ BrotliCompressor::BrotliSetCustomDictionary. */
+int BrotliCompressWithCustomDictionary(size_t dictsize, const uint8_t* dict,
+ BrotliParams params,
+ BrotliIn* in, BrotliOut* out);
+
+} /* namespace brotli */
+
+#endif /* BROTLI_ENC_COMPRESSOR_H_ */
diff --git a/thirdparty/brotli/enc/context.h b/thirdparty/brotli/enc/context.h
index 00c065bc..c50f6be1 100644
--- a/thirdparty/brotli/enc/context.h
+++ b/thirdparty/brotli/enc/context.h
@@ -4,91 +4,95 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Functions to map previous bytes into a context id.
+/* Functions to map previous bytes into a context id. */
#ifndef BROTLI_ENC_CONTEXT_H_
#define BROTLI_ENC_CONTEXT_H_
-#include "./types.h"
-
-namespace brotli {
-
-// Second-order context lookup table for UTF8 byte streams.
-//
-// If p1 and p2 are the previous two bytes, we calculate the context as
-//
-// context = kUTF8ContextLookup[p1] | kUTF8ContextLookup[p2 + 256].
-//
-// If the previous two bytes are ASCII characters (i.e. < 128), this will be
-// equivalent to
-//
-// context = 4 * context1(p1) + context2(p2),
-//
-// where context1 is based on the previous byte in the following way:
-//
-// 0 : non-ASCII control
-// 1 : \t, \n, \r
-// 2 : space
-// 3 : other punctuation
-// 4 : " '
-// 5 : %
-// 6 : ( < [ {
-// 7 : ) > ] }
-// 8 : , ; :
-// 9 : .
-// 10 : =
-// 11 : number
-// 12 : upper-case vowel
-// 13 : upper-case consonant
-// 14 : lower-case vowel
-// 15 : lower-case consonant
-//
-// and context2 is based on the second last byte:
-//
-// 0 : control, space
-// 1 : punctuation
-// 2 : upper-case letter, number
-// 3 : lower-case letter
-//
-// If the last byte is ASCII, and the second last byte is not (in a valid UTF8
-// stream it will be a continuation byte, value between 128 and 191), the
-// context is the same as if the second last byte was an ASCII control or space.
-//
-// If the last byte is a UTF8 lead byte (value >= 192), then the next byte will
-// be a continuation byte and the context id is 2 or 3 depending on the LSB of
-// the last byte and to a lesser extent on the second last byte if it is ASCII.
-//
-// If the last byte is a UTF8 continuation byte, the second last byte can be:
-// - continuation byte: the next byte is probably ASCII or lead byte (assuming
-// 4-byte UTF8 characters are rare) and the context id is 0 or 1.
-// - lead byte (192 - 207): next byte is ASCII or lead byte, context is 0 or 1
-// - lead byte (208 - 255): next byte is continuation byte, context is 2 or 3
-//
-// The possible value combinations of the previous two bytes, the range of
-// context ids and the type of the next byte is summarized in the table below:
-//
-// |--------\-----------------------------------------------------------------|
-// | \ Last byte |
-// | Second \---------------------------------------------------------------|
-// | last byte \ ASCII | cont. byte | lead byte |
-// | \ (0-127) | (128-191) | (192-) |
-// |=============|===================|=====================|==================|
-// | ASCII | next: ASCII/lead | not valid | next: cont. |
-// | (0-127) | context: 4 - 63 | | context: 2 - 3 |
-// |-------------|-------------------|---------------------|------------------|
-// | cont. byte | next: ASCII/lead | next: ASCII/lead | next: cont. |
-// | (128-191) | context: 4 - 63 | context: 0 - 1 | context: 2 - 3 |
-// |-------------|-------------------|---------------------|------------------|
-// | lead byte | not valid | next: ASCII/lead | not valid |
-// | (192-207) | | context: 0 - 1 | |
-// |-------------|-------------------|---------------------|------------------|
-// | lead byte | not valid | next: cont. | not valid |
-// | (208-) | | context: 2 - 3 | |
-// |-------------|-------------------|---------------------|------------------|
+#include "../common/types.h"
+#include "../common/port.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+/* Second-order context lookup table for UTF8 byte streams.
+
+ If p1 and p2 are the previous two bytes, we calculate the context as
+
+ context = kUTF8ContextLookup[p1] | kUTF8ContextLookup[p2 + 256].
+
+ If the previous two bytes are ASCII characters (i.e. < 128), this will be
+ equivalent to
+
+ context = 4 * context1(p1) + context2(p2),
+
+ where context1 is based on the previous byte in the following way:
+
+ 0 : non-ASCII control
+ 1 : \t, \n, \r
+ 2 : space
+ 3 : other punctuation
+ 4 : " '
+ 5 : %
+ 6 : ( < [ {
+ 7 : ) > ] }
+ 8 : , ; :
+ 9 : .
+ 10 : =
+ 11 : number
+ 12 : upper-case vowel
+ 13 : upper-case consonant
+ 14 : lower-case vowel
+ 15 : lower-case consonant
+
+ and context2 is based on the second last byte:
+
+ 0 : control, space
+ 1 : punctuation
+ 2 : upper-case letter, number
+ 3 : lower-case letter
+
+ If the last byte is ASCII, and the second last byte is not (in a valid UTF8
+ stream it will be a continuation byte, value between 128 and 191), the
+ context is the same as if the second last byte was an ASCII control or space.
+
+ If the last byte is a UTF8 lead byte (value >= 192), then the next byte will
+ be a continuation byte and the context id is 2 or 3 depending on the LSB of
+ the last byte and to a lesser extent on the second last byte if it is ASCII.
+
+ If the last byte is a UTF8 continuation byte, the second last byte can be:
+ - continuation byte: the next byte is probably ASCII or lead byte (assuming
+ 4-byte UTF8 characters are rare) and the context id is 0 or 1.
+ - lead byte (192 - 207): next byte is ASCII or lead byte, context is 0 or 1
+ - lead byte (208 - 255): next byte is continuation byte, context is 2 or 3
+
+ The possible value combinations of the previous two bytes, the range of
+ context ids and the type of the next byte is summarized in the table below:
+
+ |--------\-----------------------------------------------------------------|
+ | \ Last byte |
+ | Second \---------------------------------------------------------------|
+ | last byte \ ASCII | cont. byte | lead byte |
+ | \ (0-127) | (128-191) | (192-) |
+ |=============|===================|=====================|==================|
+ | ASCII | next: ASCII/lead | not valid | next: cont. |
+ | (0-127) | context: 4 - 63 | | context: 2 - 3 |
+ |-------------|-------------------|---------------------|------------------|
+ | cont. byte | next: ASCII/lead | next: ASCII/lead | next: cont. |
+ | (128-191) | context: 4 - 63 | context: 0 - 1 | context: 2 - 3 |
+ |-------------|-------------------|---------------------|------------------|
+ | lead byte | not valid | next: ASCII/lead | not valid |
+ | (192-207) | | context: 0 - 1 | |
+ |-------------|-------------------|---------------------|------------------|
+ | lead byte | not valid | next: cont. | not valid |
+ | (208-) | | context: 2 - 3 | |
+ |-------------|-------------------|---------------------|------------------|
+*/
static const uint8_t kUTF8ContextLookup[512] = {
- // Last byte.
- //
- // ASCII range.
+ /* Last byte. */
+ /* */
+ /* ASCII range. */
0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 0, 0, 4, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
8, 12, 16, 12, 12, 20, 12, 16, 24, 28, 12, 12, 32, 12, 36, 12,
@@ -97,19 +101,19 @@ static const uint8_t kUTF8ContextLookup[512] = {
52, 52, 52, 52, 52, 48, 52, 52, 52, 52, 52, 24, 12, 28, 12, 12,
12, 56, 60, 60, 60, 56, 60, 60, 60, 56, 60, 60, 60, 60, 60, 56,
60, 60, 60, 60, 60, 56, 60, 60, 60, 60, 60, 24, 12, 28, 12, 0,
- // UTF8 continuation byte range.
+ /* UTF8 continuation byte range. */
0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1,
0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1,
0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1,
0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1,
- // UTF8 lead byte range.
+ /* UTF8 lead byte range. */
2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3,
2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3,
2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3,
2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3,
- // Second last byte.
- //
- // ASCII range.
+ /* Second last byte. */
+ /* */
+ /* ASCII range. */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@@ -118,19 +122,19 @@ static const uint8_t kUTF8ContextLookup[512] = {
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1,
1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 0,
- // UTF8 continuation byte range.
+ /* UTF8 continuation byte range. */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- // UTF8 lead byte range.
+ /* UTF8 lead byte range. */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
};
-// Context lookup table for small signed integers.
+/* Context lookup table for small signed integers. */
static const uint8_t kSigned3BitContextLookup[] = {
0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
@@ -150,29 +154,31 @@ static const uint8_t kSigned3BitContextLookup[] = {
6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7,
};
-enum ContextType {
+typedef enum ContextType {
CONTEXT_LSB6 = 0,
CONTEXT_MSB6 = 1,
CONTEXT_UTF8 = 2,
CONTEXT_SIGNED = 3
-};
+} ContextType;
-static inline uint8_t Context(uint8_t p1, uint8_t p2, ContextType mode) {
+static BROTLI_INLINE uint8_t Context(uint8_t p1, uint8_t p2, ContextType mode) {
switch (mode) {
case CONTEXT_LSB6:
return p1 & 0x3f;
case CONTEXT_MSB6:
- return static_cast<uint8_t>(p1 >> 2);
+ return (uint8_t)(p1 >> 2);
case CONTEXT_UTF8:
return kUTF8ContextLookup[p1] | kUTF8ContextLookup[p2 + 256];
case CONTEXT_SIGNED:
- return static_cast<uint8_t>((kSigned3BitContextLookup[p1] << 3) +
- kSigned3BitContextLookup[p2]);
+ return (uint8_t)((kSigned3BitContextLookup[p1] << 3) +
+ kSigned3BitContextLookup[p2]);
default:
return 0;
}
}
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_CONTEXT_H_
+#endif /* BROTLI_ENC_CONTEXT_H_ */
diff --git a/thirdparty/brotli/enc/dictionary.cc b/thirdparty/brotli/enc/dictionary.cc
deleted file mode 100644
index 0564bab6..00000000
--- a/thirdparty/brotli/enc/dictionary.cc
+++ /dev/null
@@ -1,9466 +0,0 @@
-/* Copyright 2013 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-#include "./dictionary.h"
-
-#if defined(__cplusplus) || defined(c_plusplus)
-extern "C" {
-#endif
-
-// In case of multiple definition linker error with dictionary.c from the
-// decoder: include only one of enc/dictionary.cc or dec/dictionary.c in a
-// target using both enc and dec.
-const uint8_t kBrotliDictionary[122784] = {
- 0x74, 0x69, 0x6d, 0x65, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x69, 0x66, 0x65, 0x6c,
- 0x65, 0x66, 0x74, 0x62, 0x61, 0x63, 0x6b, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x61,
- 0x74, 0x61, 0x73, 0x68, 0x6f, 0x77, 0x6f, 0x6e, 0x6c, 0x79, 0x73, 0x69, 0x74,
- 0x65, 0x63, 0x69, 0x74, 0x79, 0x6f, 0x70, 0x65, 0x6e, 0x6a, 0x75, 0x73, 0x74,
- 0x6c, 0x69, 0x6b, 0x65, 0x66, 0x72, 0x65, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x74,
- 0x65, 0x78, 0x74, 0x79, 0x65, 0x61, 0x72, 0x6f, 0x76, 0x65, 0x72, 0x62, 0x6f,
- 0x64, 0x79, 0x6c, 0x6f, 0x76, 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x62, 0x6f, 0x6f,
- 0x6b, 0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69, 0x76, 0x65, 0x6c, 0x69, 0x6e, 0x65,
- 0x68, 0x65, 0x6c, 0x70, 0x68, 0x6f, 0x6d, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6d,
- 0x6f, 0x72, 0x65, 0x77, 0x6f, 0x72, 0x64, 0x6c, 0x6f, 0x6e, 0x67, 0x74, 0x68,
- 0x65, 0x6d, 0x76, 0x69, 0x65, 0x77, 0x66, 0x69, 0x6e, 0x64, 0x70, 0x61, 0x67,
- 0x65, 0x64, 0x61, 0x79, 0x73, 0x66, 0x75, 0x6c, 0x6c, 0x68, 0x65, 0x61, 0x64,
- 0x74, 0x65, 0x72, 0x6d, 0x65, 0x61, 0x63, 0x68, 0x61, 0x72, 0x65, 0x61, 0x66,
- 0x72, 0x6f, 0x6d, 0x74, 0x72, 0x75, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x61, 0x62,
- 0x6c, 0x65, 0x75, 0x70, 0x6f, 0x6e, 0x68, 0x69, 0x67, 0x68, 0x64, 0x61, 0x74,
- 0x65, 0x6c, 0x61, 0x6e, 0x64, 0x6e, 0x65, 0x77, 0x73, 0x65, 0x76, 0x65, 0x6e,
- 0x6e, 0x65, 0x78, 0x74, 0x63, 0x61, 0x73, 0x65, 0x62, 0x6f, 0x74, 0x68, 0x70,
- 0x6f, 0x73, 0x74, 0x75, 0x73, 0x65, 0x64, 0x6d, 0x61, 0x64, 0x65, 0x68, 0x61,
- 0x6e, 0x64, 0x68, 0x65, 0x72, 0x65, 0x77, 0x68, 0x61, 0x74, 0x6e, 0x61, 0x6d,
- 0x65, 0x4c, 0x69, 0x6e, 0x6b, 0x62, 0x6c, 0x6f, 0x67, 0x73, 0x69, 0x7a, 0x65,
- 0x62, 0x61, 0x73, 0x65, 0x68, 0x65, 0x6c, 0x64, 0x6d, 0x61, 0x6b, 0x65, 0x6d,
- 0x61, 0x69, 0x6e, 0x75, 0x73, 0x65, 0x72, 0x27, 0x29, 0x20, 0x2b, 0x68, 0x6f,
- 0x6c, 0x64, 0x65, 0x6e, 0x64, 0x73, 0x77, 0x69, 0x74, 0x68, 0x4e, 0x65, 0x77,
- 0x73, 0x72, 0x65, 0x61, 0x64, 0x77, 0x65, 0x72, 0x65, 0x73, 0x69, 0x67, 0x6e,
- 0x74, 0x61, 0x6b, 0x65, 0x68, 0x61, 0x76, 0x65, 0x67, 0x61, 0x6d, 0x65, 0x73,
- 0x65, 0x65, 0x6e, 0x63, 0x61, 0x6c, 0x6c, 0x70, 0x61, 0x74, 0x68, 0x77, 0x65,
- 0x6c, 0x6c, 0x70, 0x6c, 0x75, 0x73, 0x6d, 0x65, 0x6e, 0x75, 0x66, 0x69, 0x6c,
- 0x6d, 0x70, 0x61, 0x72, 0x74, 0x6a, 0x6f, 0x69, 0x6e, 0x74, 0x68, 0x69, 0x73,
- 0x6c, 0x69, 0x73, 0x74, 0x67, 0x6f, 0x6f, 0x64, 0x6e, 0x65, 0x65, 0x64, 0x77,
- 0x61, 0x79, 0x73, 0x77, 0x65, 0x73, 0x74, 0x6a, 0x6f, 0x62, 0x73, 0x6d, 0x69,
- 0x6e, 0x64, 0x61, 0x6c, 0x73, 0x6f, 0x6c, 0x6f, 0x67, 0x6f, 0x72, 0x69, 0x63,
- 0x68, 0x75, 0x73, 0x65, 0x73, 0x6c, 0x61, 0x73, 0x74, 0x74, 0x65, 0x61, 0x6d,
- 0x61, 0x72, 0x6d, 0x79, 0x66, 0x6f, 0x6f, 0x64, 0x6b, 0x69, 0x6e, 0x67, 0x77,
- 0x69, 0x6c, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x77, 0x61, 0x72, 0x64, 0x62, 0x65,
- 0x73, 0x74, 0x66, 0x69, 0x72, 0x65, 0x50, 0x61, 0x67, 0x65, 0x6b, 0x6e, 0x6f,
- 0x77, 0x61, 0x77, 0x61, 0x79, 0x2e, 0x70, 0x6e, 0x67, 0x6d, 0x6f, 0x76, 0x65,
- 0x74, 0x68, 0x61, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x67, 0x69, 0x76, 0x65, 0x73,
- 0x65, 0x6c, 0x66, 0x6e, 0x6f, 0x74, 0x65, 0x6d, 0x75, 0x63, 0x68, 0x66, 0x65,
- 0x65, 0x64, 0x6d, 0x61, 0x6e, 0x79, 0x72, 0x6f, 0x63, 0x6b, 0x69, 0x63, 0x6f,
- 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x6c, 0x6f, 0x6f, 0x6b, 0x68, 0x69, 0x64, 0x65,
- 0x64, 0x69, 0x65, 0x64, 0x48, 0x6f, 0x6d, 0x65, 0x72, 0x75, 0x6c, 0x65, 0x68,
- 0x6f, 0x73, 0x74, 0x61, 0x6a, 0x61, 0x78, 0x69, 0x6e, 0x66, 0x6f, 0x63, 0x6c,
- 0x75, 0x62, 0x6c, 0x61, 0x77, 0x73, 0x6c, 0x65, 0x73, 0x73, 0x68, 0x61, 0x6c,
- 0x66, 0x73, 0x6f, 0x6d, 0x65, 0x73, 0x75, 0x63, 0x68, 0x7a, 0x6f, 0x6e, 0x65,
- 0x31, 0x30, 0x30, 0x25, 0x6f, 0x6e, 0x65, 0x73, 0x63, 0x61, 0x72, 0x65, 0x54,
- 0x69, 0x6d, 0x65, 0x72, 0x61, 0x63, 0x65, 0x62, 0x6c, 0x75, 0x65, 0x66, 0x6f,
- 0x75, 0x72, 0x77, 0x65, 0x65, 0x6b, 0x66, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x70,
- 0x65, 0x67, 0x61, 0x76, 0x65, 0x68, 0x61, 0x72, 0x64, 0x6c, 0x6f, 0x73, 0x74,
- 0x77, 0x68, 0x65, 0x6e, 0x70, 0x61, 0x72, 0x6b, 0x6b, 0x65, 0x70, 0x74, 0x70,
- 0x61, 0x73, 0x73, 0x73, 0x68, 0x69, 0x70, 0x72, 0x6f, 0x6f, 0x6d, 0x48, 0x54,
- 0x4d, 0x4c, 0x70, 0x6c, 0x61, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x64, 0x6f, 0x6e,
- 0x65, 0x73, 0x61, 0x76, 0x65, 0x6b, 0x65, 0x65, 0x70, 0x66, 0x6c, 0x61, 0x67,
- 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x6f, 0x6c, 0x64, 0x66, 0x69, 0x76, 0x65, 0x74,
- 0x6f, 0x6f, 0x6b, 0x72, 0x61, 0x74, 0x65, 0x74, 0x6f, 0x77, 0x6e, 0x6a, 0x75,
- 0x6d, 0x70, 0x74, 0x68, 0x75, 0x73, 0x64, 0x61, 0x72, 0x6b, 0x63, 0x61, 0x72,
- 0x64, 0x66, 0x69, 0x6c, 0x65, 0x66, 0x65, 0x61, 0x72, 0x73, 0x74, 0x61, 0x79,
- 0x6b, 0x69, 0x6c, 0x6c, 0x74, 0x68, 0x61, 0x74, 0x66, 0x61, 0x6c, 0x6c, 0x61,
- 0x75, 0x74, 0x6f, 0x65, 0x76, 0x65, 0x72, 0x2e, 0x63, 0x6f, 0x6d, 0x74, 0x61,
- 0x6c, 0x6b, 0x73, 0x68, 0x6f, 0x70, 0x76, 0x6f, 0x74, 0x65, 0x64, 0x65, 0x65,
- 0x70, 0x6d, 0x6f, 0x64, 0x65, 0x72, 0x65, 0x73, 0x74, 0x74, 0x75, 0x72, 0x6e,
- 0x62, 0x6f, 0x72, 0x6e, 0x62, 0x61, 0x6e, 0x64, 0x66, 0x65, 0x6c, 0x6c, 0x72,
- 0x6f, 0x73, 0x65, 0x75, 0x72, 0x6c, 0x28, 0x73, 0x6b, 0x69, 0x6e, 0x72, 0x6f,
- 0x6c, 0x65, 0x63, 0x6f, 0x6d, 0x65, 0x61, 0x63, 0x74, 0x73, 0x61, 0x67, 0x65,
- 0x73, 0x6d, 0x65, 0x65, 0x74, 0x67, 0x6f, 0x6c, 0x64, 0x2e, 0x6a, 0x70, 0x67,
- 0x69, 0x74, 0x65, 0x6d, 0x76, 0x61, 0x72, 0x79, 0x66, 0x65, 0x6c, 0x74, 0x74,
- 0x68, 0x65, 0x6e, 0x73, 0x65, 0x6e, 0x64, 0x64, 0x72, 0x6f, 0x70, 0x56, 0x69,
- 0x65, 0x77, 0x63, 0x6f, 0x70, 0x79, 0x31, 0x2e, 0x30, 0x22, 0x3c, 0x2f, 0x61,
- 0x3e, 0x73, 0x74, 0x6f, 0x70, 0x65, 0x6c, 0x73, 0x65, 0x6c, 0x69, 0x65, 0x73,
- 0x74, 0x6f, 0x75, 0x72, 0x70, 0x61, 0x63, 0x6b, 0x2e, 0x67, 0x69, 0x66, 0x70,
- 0x61, 0x73, 0x74, 0x63, 0x73, 0x73, 0x3f, 0x67, 0x72, 0x61, 0x79, 0x6d, 0x65,
- 0x61, 0x6e, 0x26, 0x67, 0x74, 0x3b, 0x72, 0x69, 0x64, 0x65, 0x73, 0x68, 0x6f,
- 0x74, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x61, 0x69, 0x64, 0x72, 0x6f, 0x61, 0x64,
- 0x76, 0x61, 0x72, 0x20, 0x66, 0x65, 0x65, 0x6c, 0x6a, 0x6f, 0x68, 0x6e, 0x72,
- 0x69, 0x63, 0x6b, 0x70, 0x6f, 0x72, 0x74, 0x66, 0x61, 0x73, 0x74, 0x27, 0x55,
- 0x41, 0x2d, 0x64, 0x65, 0x61, 0x64, 0x3c, 0x2f, 0x62, 0x3e, 0x70, 0x6f, 0x6f,
- 0x72, 0x62, 0x69, 0x6c, 0x6c, 0x74, 0x79, 0x70, 0x65, 0x55, 0x2e, 0x53, 0x2e,
- 0x77, 0x6f, 0x6f, 0x64, 0x6d, 0x75, 0x73, 0x74, 0x32, 0x70, 0x78, 0x3b, 0x49,
- 0x6e, 0x66, 0x6f, 0x72, 0x61, 0x6e, 0x6b, 0x77, 0x69, 0x64, 0x65, 0x77, 0x61,
- 0x6e, 0x74, 0x77, 0x61, 0x6c, 0x6c, 0x6c, 0x65, 0x61, 0x64, 0x5b, 0x30, 0x5d,
- 0x3b, 0x70, 0x61, 0x75, 0x6c, 0x77, 0x61, 0x76, 0x65, 0x73, 0x75, 0x72, 0x65,
- 0x24, 0x28, 0x27, 0x23, 0x77, 0x61, 0x69, 0x74, 0x6d, 0x61, 0x73, 0x73, 0x61,
- 0x72, 0x6d, 0x73, 0x67, 0x6f, 0x65, 0x73, 0x67, 0x61, 0x69, 0x6e, 0x6c, 0x61,
- 0x6e, 0x67, 0x70, 0x61, 0x69, 0x64, 0x21, 0x2d, 0x2d, 0x20, 0x6c, 0x6f, 0x63,
- 0x6b, 0x75, 0x6e, 0x69, 0x74, 0x72, 0x6f, 0x6f, 0x74, 0x77, 0x61, 0x6c, 0x6b,
- 0x66, 0x69, 0x72, 0x6d, 0x77, 0x69, 0x66, 0x65, 0x78, 0x6d, 0x6c, 0x22, 0x73,
- 0x6f, 0x6e, 0x67, 0x74, 0x65, 0x73, 0x74, 0x32, 0x30, 0x70, 0x78, 0x6b, 0x69,
- 0x6e, 0x64, 0x72, 0x6f, 0x77, 0x73, 0x74, 0x6f, 0x6f, 0x6c, 0x66, 0x6f, 0x6e,
- 0x74, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x61, 0x66, 0x65, 0x73, 0x74, 0x61, 0x72,
- 0x6d, 0x61, 0x70, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x72, 0x61, 0x69, 0x6e, 0x66,
- 0x6c, 0x6f, 0x77, 0x62, 0x61, 0x62, 0x79, 0x73, 0x70, 0x61, 0x6e, 0x73, 0x61,
- 0x79, 0x73, 0x34, 0x70, 0x78, 0x3b, 0x36, 0x70, 0x78, 0x3b, 0x61, 0x72, 0x74,
- 0x73, 0x66, 0x6f, 0x6f, 0x74, 0x72, 0x65, 0x61, 0x6c, 0x77, 0x69, 0x6b, 0x69,
- 0x68, 0x65, 0x61, 0x74, 0x73, 0x74, 0x65, 0x70, 0x74, 0x72, 0x69, 0x70, 0x6f,
- 0x72, 0x67, 0x2f, 0x6c, 0x61, 0x6b, 0x65, 0x77, 0x65, 0x61, 0x6b, 0x74, 0x6f,
- 0x6c, 0x64, 0x46, 0x6f, 0x72, 0x6d, 0x63, 0x61, 0x73, 0x74, 0x66, 0x61, 0x6e,
- 0x73, 0x62, 0x61, 0x6e, 0x6b, 0x76, 0x65, 0x72, 0x79, 0x72, 0x75, 0x6e, 0x73,
- 0x6a, 0x75, 0x6c, 0x79, 0x74, 0x61, 0x73, 0x6b, 0x31, 0x70, 0x78, 0x3b, 0x67,
- 0x6f, 0x61, 0x6c, 0x67, 0x72, 0x65, 0x77, 0x73, 0x6c, 0x6f, 0x77, 0x65, 0x64,
- 0x67, 0x65, 0x69, 0x64, 0x3d, 0x22, 0x73, 0x65, 0x74, 0x73, 0x35, 0x70, 0x78,
- 0x3b, 0x2e, 0x6a, 0x73, 0x3f, 0x34, 0x30, 0x70, 0x78, 0x69, 0x66, 0x20, 0x28,
- 0x73, 0x6f, 0x6f, 0x6e, 0x73, 0x65, 0x61, 0x74, 0x6e, 0x6f, 0x6e, 0x65, 0x74,
- 0x75, 0x62, 0x65, 0x7a, 0x65, 0x72, 0x6f, 0x73, 0x65, 0x6e, 0x74, 0x72, 0x65,
- 0x65, 0x64, 0x66, 0x61, 0x63, 0x74, 0x69, 0x6e, 0x74, 0x6f, 0x67, 0x69, 0x66,
- 0x74, 0x68, 0x61, 0x72, 0x6d, 0x31, 0x38, 0x70, 0x78, 0x63, 0x61, 0x6d, 0x65,
- 0x68, 0x69, 0x6c, 0x6c, 0x62, 0x6f, 0x6c, 0x64, 0x7a, 0x6f, 0x6f, 0x6d, 0x76,
- 0x6f, 0x69, 0x64, 0x65, 0x61, 0x73, 0x79, 0x72, 0x69, 0x6e, 0x67, 0x66, 0x69,
- 0x6c, 0x6c, 0x70, 0x65, 0x61, 0x6b, 0x69, 0x6e, 0x69, 0x74, 0x63, 0x6f, 0x73,
- 0x74, 0x33, 0x70, 0x78, 0x3b, 0x6a, 0x61, 0x63, 0x6b, 0x74, 0x61, 0x67, 0x73,
- 0x62, 0x69, 0x74, 0x73, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x64, 0x69, 0x74, 0x6b,
- 0x6e, 0x65, 0x77, 0x6e, 0x65, 0x61, 0x72, 0x3c, 0x21, 0x2d, 0x2d, 0x67, 0x72,
- 0x6f, 0x77, 0x4a, 0x53, 0x4f, 0x4e, 0x64, 0x75, 0x74, 0x79, 0x4e, 0x61, 0x6d,
- 0x65, 0x73, 0x61, 0x6c, 0x65, 0x79, 0x6f, 0x75, 0x20, 0x6c, 0x6f, 0x74, 0x73,
- 0x70, 0x61, 0x69, 0x6e, 0x6a, 0x61, 0x7a, 0x7a, 0x63, 0x6f, 0x6c, 0x64, 0x65,
- 0x79, 0x65, 0x73, 0x66, 0x69, 0x73, 0x68, 0x77, 0x77, 0x77, 0x2e, 0x72, 0x69,
- 0x73, 0x6b, 0x74, 0x61, 0x62, 0x73, 0x70, 0x72, 0x65, 0x76, 0x31, 0x30, 0x70,
- 0x78, 0x72, 0x69, 0x73, 0x65, 0x32, 0x35, 0x70, 0x78, 0x42, 0x6c, 0x75, 0x65,
- 0x64, 0x69, 0x6e, 0x67, 0x33, 0x30, 0x30, 0x2c, 0x62, 0x61, 0x6c, 0x6c, 0x66,
- 0x6f, 0x72, 0x64, 0x65, 0x61, 0x72, 0x6e, 0x77, 0x69, 0x6c, 0x64, 0x62, 0x6f,
- 0x78, 0x2e, 0x66, 0x61, 0x69, 0x72, 0x6c, 0x61, 0x63, 0x6b, 0x76, 0x65, 0x72,
- 0x73, 0x70, 0x61, 0x69, 0x72, 0x6a, 0x75, 0x6e, 0x65, 0x74, 0x65, 0x63, 0x68,
- 0x69, 0x66, 0x28, 0x21, 0x70, 0x69, 0x63, 0x6b, 0x65, 0x76, 0x69, 0x6c, 0x24,
- 0x28, 0x22, 0x23, 0x77, 0x61, 0x72, 0x6d, 0x6c, 0x6f, 0x72, 0x64, 0x64, 0x6f,
- 0x65, 0x73, 0x70, 0x75, 0x6c, 0x6c, 0x2c, 0x30, 0x30, 0x30, 0x69, 0x64, 0x65,
- 0x61, 0x64, 0x72, 0x61, 0x77, 0x68, 0x75, 0x67, 0x65, 0x73, 0x70, 0x6f, 0x74,
- 0x66, 0x75, 0x6e, 0x64, 0x62, 0x75, 0x72, 0x6e, 0x68, 0x72, 0x65, 0x66, 0x63,
- 0x65, 0x6c, 0x6c, 0x6b, 0x65, 0x79, 0x73, 0x74, 0x69, 0x63, 0x6b, 0x68, 0x6f,
- 0x75, 0x72, 0x6c, 0x6f, 0x73, 0x73, 0x66, 0x75, 0x65, 0x6c, 0x31, 0x32, 0x70,
- 0x78, 0x73, 0x75, 0x69, 0x74, 0x64, 0x65, 0x61, 0x6c, 0x52, 0x53, 0x53, 0x22,
- 0x61, 0x67, 0x65, 0x64, 0x67, 0x72, 0x65, 0x79, 0x47, 0x45, 0x54, 0x22, 0x65,
- 0x61, 0x73, 0x65, 0x61, 0x69, 0x6d, 0x73, 0x67, 0x69, 0x72, 0x6c, 0x61, 0x69,
- 0x64, 0x73, 0x38, 0x70, 0x78, 0x3b, 0x6e, 0x61, 0x76, 0x79, 0x67, 0x72, 0x69,
- 0x64, 0x74, 0x69, 0x70, 0x73, 0x23, 0x39, 0x39, 0x39, 0x77, 0x61, 0x72, 0x73,
- 0x6c, 0x61, 0x64, 0x79, 0x63, 0x61, 0x72, 0x73, 0x29, 0x3b, 0x20, 0x7d, 0x70,
- 0x68, 0x70, 0x3f, 0x68, 0x65, 0x6c, 0x6c, 0x74, 0x61, 0x6c, 0x6c, 0x77, 0x68,
- 0x6f, 0x6d, 0x7a, 0x68, 0x3a, 0xe5, 0x2a, 0x2f, 0x0d, 0x0a, 0x20, 0x31, 0x30,
- 0x30, 0x68, 0x61, 0x6c, 0x6c, 0x2e, 0x0a, 0x0a, 0x41, 0x37, 0x70, 0x78, 0x3b,
- 0x70, 0x75, 0x73, 0x68, 0x63, 0x68, 0x61, 0x74, 0x30, 0x70, 0x78, 0x3b, 0x63,
- 0x72, 0x65, 0x77, 0x2a, 0x2f, 0x3c, 0x2f, 0x68, 0x61, 0x73, 0x68, 0x37, 0x35,
- 0x70, 0x78, 0x66, 0x6c, 0x61, 0x74, 0x72, 0x61, 0x72, 0x65, 0x20, 0x26, 0x26,
- 0x20, 0x74, 0x65, 0x6c, 0x6c, 0x63, 0x61, 0x6d, 0x70, 0x6f, 0x6e, 0x74, 0x6f,
- 0x6c, 0x61, 0x69, 0x64, 0x6d, 0x69, 0x73, 0x73, 0x73, 0x6b, 0x69, 0x70, 0x74,
- 0x65, 0x6e, 0x74, 0x66, 0x69, 0x6e, 0x65, 0x6d, 0x61, 0x6c, 0x65, 0x67, 0x65,
- 0x74, 0x73, 0x70, 0x6c, 0x6f, 0x74, 0x34, 0x30, 0x30, 0x2c, 0x0d, 0x0a, 0x0d,
- 0x0a, 0x63, 0x6f, 0x6f, 0x6c, 0x66, 0x65, 0x65, 0x74, 0x2e, 0x70, 0x68, 0x70,
- 0x3c, 0x62, 0x72, 0x3e, 0x65, 0x72, 0x69, 0x63, 0x6d, 0x6f, 0x73, 0x74, 0x67,
- 0x75, 0x69, 0x64, 0x62, 0x65, 0x6c, 0x6c, 0x64, 0x65, 0x73, 0x63, 0x68, 0x61,
- 0x69, 0x72, 0x6d, 0x61, 0x74, 0x68, 0x61, 0x74, 0x6f, 0x6d, 0x2f, 0x69, 0x6d,
- 0x67, 0x26, 0x23, 0x38, 0x32, 0x6c, 0x75, 0x63, 0x6b, 0x63, 0x65, 0x6e, 0x74,
- 0x30, 0x30, 0x30, 0x3b, 0x74, 0x69, 0x6e, 0x79, 0x67, 0x6f, 0x6e, 0x65, 0x68,
- 0x74, 0x6d, 0x6c, 0x73, 0x65, 0x6c, 0x6c, 0x64, 0x72, 0x75, 0x67, 0x46, 0x52,
- 0x45, 0x45, 0x6e, 0x6f, 0x64, 0x65, 0x6e, 0x69, 0x63, 0x6b, 0x3f, 0x69, 0x64,
- 0x3d, 0x6c, 0x6f, 0x73, 0x65, 0x6e, 0x75, 0x6c, 0x6c, 0x76, 0x61, 0x73, 0x74,
- 0x77, 0x69, 0x6e, 0x64, 0x52, 0x53, 0x53, 0x20, 0x77, 0x65, 0x61, 0x72, 0x72,
- 0x65, 0x6c, 0x79, 0x62, 0x65, 0x65, 0x6e, 0x73, 0x61, 0x6d, 0x65, 0x64, 0x75,
- 0x6b, 0x65, 0x6e, 0x61, 0x73, 0x61, 0x63, 0x61, 0x70, 0x65, 0x77, 0x69, 0x73,
- 0x68, 0x67, 0x75, 0x6c, 0x66, 0x54, 0x32, 0x33, 0x3a, 0x68, 0x69, 0x74, 0x73,
- 0x73, 0x6c, 0x6f, 0x74, 0x67, 0x61, 0x74, 0x65, 0x6b, 0x69, 0x63, 0x6b, 0x62,
- 0x6c, 0x75, 0x72, 0x74, 0x68, 0x65, 0x79, 0x31, 0x35, 0x70, 0x78, 0x27, 0x27,
- 0x29, 0x3b, 0x29, 0x3b, 0x22, 0x3e, 0x6d, 0x73, 0x69, 0x65, 0x77, 0x69, 0x6e,
- 0x73, 0x62, 0x69, 0x72, 0x64, 0x73, 0x6f, 0x72, 0x74, 0x62, 0x65, 0x74, 0x61,
- 0x73, 0x65, 0x65, 0x6b, 0x54, 0x31, 0x38, 0x3a, 0x6f, 0x72, 0x64, 0x73, 0x74,
- 0x72, 0x65, 0x65, 0x6d, 0x61, 0x6c, 0x6c, 0x36, 0x30, 0x70, 0x78, 0x66, 0x61,
- 0x72, 0x6d, 0xe2, 0x80, 0x99, 0x73, 0x62, 0x6f, 0x79, 0x73, 0x5b, 0x30, 0x5d,
- 0x2e, 0x27, 0x29, 0x3b, 0x22, 0x50, 0x4f, 0x53, 0x54, 0x62, 0x65, 0x61, 0x72,
- 0x6b, 0x69, 0x64, 0x73, 0x29, 0x3b, 0x7d, 0x7d, 0x6d, 0x61, 0x72, 0x79, 0x74,
- 0x65, 0x6e, 0x64, 0x28, 0x55, 0x4b, 0x29, 0x71, 0x75, 0x61, 0x64, 0x7a, 0x68,
- 0x3a, 0xe6, 0x2d, 0x73, 0x69, 0x7a, 0x2d, 0x2d, 0x2d, 0x2d, 0x70, 0x72, 0x6f,
- 0x70, 0x27, 0x29, 0x3b, 0x0d, 0x6c, 0x69, 0x66, 0x74, 0x54, 0x31, 0x39, 0x3a,
- 0x76, 0x69, 0x63, 0x65, 0x61, 0x6e, 0x64, 0x79, 0x64, 0x65, 0x62, 0x74, 0x3e,
- 0x52, 0x53, 0x53, 0x70, 0x6f, 0x6f, 0x6c, 0x6e, 0x65, 0x63, 0x6b, 0x62, 0x6c,
- 0x6f, 0x77, 0x54, 0x31, 0x36, 0x3a, 0x64, 0x6f, 0x6f, 0x72, 0x65, 0x76, 0x61,
- 0x6c, 0x54, 0x31, 0x37, 0x3a, 0x6c, 0x65, 0x74, 0x73, 0x66, 0x61, 0x69, 0x6c,
- 0x6f, 0x72, 0x61, 0x6c, 0x70, 0x6f, 0x6c, 0x6c, 0x6e, 0x6f, 0x76, 0x61, 0x63,
- 0x6f, 0x6c, 0x73, 0x67, 0x65, 0x6e, 0x65, 0x20, 0xe2, 0x80, 0x94, 0x73, 0x6f,
- 0x66, 0x74, 0x72, 0x6f, 0x6d, 0x65, 0x74, 0x69, 0x6c, 0x6c, 0x72, 0x6f, 0x73,
- 0x73, 0x3c, 0x68, 0x33, 0x3e, 0x70, 0x6f, 0x75, 0x72, 0x66, 0x61, 0x64, 0x65,
- 0x70, 0x69, 0x6e, 0x6b, 0x3c, 0x74, 0x72, 0x3e, 0x6d, 0x69, 0x6e, 0x69, 0x29,
- 0x7c, 0x21, 0x28, 0x6d, 0x69, 0x6e, 0x65, 0x7a, 0x68, 0x3a, 0xe8, 0x62, 0x61,
- 0x72, 0x73, 0x68, 0x65, 0x61, 0x72, 0x30, 0x30, 0x29, 0x3b, 0x6d, 0x69, 0x6c,
- 0x6b, 0x20, 0x2d, 0x2d, 0x3e, 0x69, 0x72, 0x6f, 0x6e, 0x66, 0x72, 0x65, 0x64,
- 0x64, 0x69, 0x73, 0x6b, 0x77, 0x65, 0x6e, 0x74, 0x73, 0x6f, 0x69, 0x6c, 0x70,
- 0x75, 0x74, 0x73, 0x2f, 0x6a, 0x73, 0x2f, 0x68, 0x6f, 0x6c, 0x79, 0x54, 0x32,
- 0x32, 0x3a, 0x49, 0x53, 0x42, 0x4e, 0x54, 0x32, 0x30, 0x3a, 0x61, 0x64, 0x61,
- 0x6d, 0x73, 0x65, 0x65, 0x73, 0x3c, 0x68, 0x32, 0x3e, 0x6a, 0x73, 0x6f, 0x6e,
- 0x27, 0x2c, 0x20, 0x27, 0x63, 0x6f, 0x6e, 0x74, 0x54, 0x32, 0x31, 0x3a, 0x20,
- 0x52, 0x53, 0x53, 0x6c, 0x6f, 0x6f, 0x70, 0x61, 0x73, 0x69, 0x61, 0x6d, 0x6f,
- 0x6f, 0x6e, 0x3c, 0x2f, 0x70, 0x3e, 0x73, 0x6f, 0x75, 0x6c, 0x4c, 0x49, 0x4e,
- 0x45, 0x66, 0x6f, 0x72, 0x74, 0x63, 0x61, 0x72, 0x74, 0x54, 0x31, 0x34, 0x3a,
- 0x3c, 0x68, 0x31, 0x3e, 0x38, 0x30, 0x70, 0x78, 0x21, 0x2d, 0x2d, 0x3c, 0x39,
- 0x70, 0x78, 0x3b, 0x54, 0x30, 0x34, 0x3a, 0x6d, 0x69, 0x6b, 0x65, 0x3a, 0x34,
- 0x36, 0x5a, 0x6e, 0x69, 0x63, 0x65, 0x69, 0x6e, 0x63, 0x68, 0x59, 0x6f, 0x72,
- 0x6b, 0x72, 0x69, 0x63, 0x65, 0x7a, 0x68, 0x3a, 0xe4, 0x27, 0x29, 0x29, 0x3b,
- 0x70, 0x75, 0x72, 0x65, 0x6d, 0x61, 0x67, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74,
- 0x6f, 0x6e, 0x65, 0x62, 0x6f, 0x6e, 0x64, 0x3a, 0x33, 0x37, 0x5a, 0x5f, 0x6f,
- 0x66, 0x5f, 0x27, 0x5d, 0x29, 0x3b, 0x30, 0x30, 0x30, 0x2c, 0x7a, 0x68, 0x3a,
- 0xe7, 0x74, 0x61, 0x6e, 0x6b, 0x79, 0x61, 0x72, 0x64, 0x62, 0x6f, 0x77, 0x6c,
- 0x62, 0x75, 0x73, 0x68, 0x3a, 0x35, 0x36, 0x5a, 0x4a, 0x61, 0x76, 0x61, 0x33,
- 0x30, 0x70, 0x78, 0x0a, 0x7c, 0x7d, 0x0a, 0x25, 0x43, 0x33, 0x25, 0x3a, 0x33,
- 0x34, 0x5a, 0x6a, 0x65, 0x66, 0x66, 0x45, 0x58, 0x50, 0x49, 0x63, 0x61, 0x73,
- 0x68, 0x76, 0x69, 0x73, 0x61, 0x67, 0x6f, 0x6c, 0x66, 0x73, 0x6e, 0x6f, 0x77,
- 0x7a, 0x68, 0x3a, 0xe9, 0x71, 0x75, 0x65, 0x72, 0x2e, 0x63, 0x73, 0x73, 0x73,
- 0x69, 0x63, 0x6b, 0x6d, 0x65, 0x61, 0x74, 0x6d, 0x69, 0x6e, 0x2e, 0x62, 0x69,
- 0x6e, 0x64, 0x64, 0x65, 0x6c, 0x6c, 0x68, 0x69, 0x72, 0x65, 0x70, 0x69, 0x63,
- 0x73, 0x72, 0x65, 0x6e, 0x74, 0x3a, 0x33, 0x36, 0x5a, 0x48, 0x54, 0x54, 0x50,
- 0x2d, 0x32, 0x30, 0x31, 0x66, 0x6f, 0x74, 0x6f, 0x77, 0x6f, 0x6c, 0x66, 0x45,
- 0x4e, 0x44, 0x20, 0x78, 0x62, 0x6f, 0x78, 0x3a, 0x35, 0x34, 0x5a, 0x42, 0x4f,
- 0x44, 0x59, 0x64, 0x69, 0x63, 0x6b, 0x3b, 0x0a, 0x7d, 0x0a, 0x65, 0x78, 0x69,
- 0x74, 0x3a, 0x33, 0x35, 0x5a, 0x76, 0x61, 0x72, 0x73, 0x62, 0x65, 0x61, 0x74,
- 0x27, 0x7d, 0x29, 0x3b, 0x64, 0x69, 0x65, 0x74, 0x39, 0x39, 0x39, 0x3b, 0x61,
- 0x6e, 0x6e, 0x65, 0x7d, 0x7d, 0x3c, 0x2f, 0x5b, 0x69, 0x5d, 0x2e, 0x4c, 0x61,
- 0x6e, 0x67, 0x6b, 0x6d, 0xc2, 0xb2, 0x77, 0x69, 0x72, 0x65, 0x74, 0x6f, 0x79,
- 0x73, 0x61, 0x64, 0x64, 0x73, 0x73, 0x65, 0x61, 0x6c, 0x61, 0x6c, 0x65, 0x78,
- 0x3b, 0x0a, 0x09, 0x7d, 0x65, 0x63, 0x68, 0x6f, 0x6e, 0x69, 0x6e, 0x65, 0x2e,
- 0x6f, 0x72, 0x67, 0x30, 0x30, 0x35, 0x29, 0x74, 0x6f, 0x6e, 0x79, 0x6a, 0x65,
- 0x77, 0x73, 0x73, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x67, 0x73, 0x72, 0x6f, 0x6f,
- 0x66, 0x30, 0x30, 0x30, 0x29, 0x20, 0x32, 0x30, 0x30, 0x77, 0x69, 0x6e, 0x65,
- 0x67, 0x65, 0x61, 0x72, 0x64, 0x6f, 0x67, 0x73, 0x62, 0x6f, 0x6f, 0x74, 0x67,
- 0x61, 0x72, 0x79, 0x63, 0x75, 0x74, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x74, 0x65,
- 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x78, 0x6d, 0x6c, 0x63, 0x6f, 0x63,
- 0x6b, 0x67, 0x61, 0x6e, 0x67, 0x24, 0x28, 0x27, 0x2e, 0x35, 0x30, 0x70, 0x78,
- 0x50, 0x68, 0x2e, 0x44, 0x6d, 0x69, 0x73, 0x63, 0x61, 0x6c, 0x61, 0x6e, 0x6c,
- 0x6f, 0x61, 0x6e, 0x64, 0x65, 0x73, 0x6b, 0x6d, 0x69, 0x6c, 0x65, 0x72, 0x79,
- 0x61, 0x6e, 0x75, 0x6e, 0x69, 0x78, 0x64, 0x69, 0x73, 0x63, 0x29, 0x3b, 0x7d,
- 0x0a, 0x64, 0x75, 0x73, 0x74, 0x63, 0x6c, 0x69, 0x70, 0x29, 0x2e, 0x0a, 0x0a,
- 0x37, 0x30, 0x70, 0x78, 0x2d, 0x32, 0x30, 0x30, 0x44, 0x56, 0x44, 0x73, 0x37,
- 0x5d, 0x3e, 0x3c, 0x74, 0x61, 0x70, 0x65, 0x64, 0x65, 0x6d, 0x6f, 0x69, 0x2b,
- 0x2b, 0x29, 0x77, 0x61, 0x67, 0x65, 0x65, 0x75, 0x72, 0x6f, 0x70, 0x68, 0x69,
- 0x6c, 0x6f, 0x70, 0x74, 0x73, 0x68, 0x6f, 0x6c, 0x65, 0x46, 0x41, 0x51, 0x73,
- 0x61, 0x73, 0x69, 0x6e, 0x2d, 0x32, 0x36, 0x54, 0x6c, 0x61, 0x62, 0x73, 0x70,
- 0x65, 0x74, 0x73, 0x55, 0x52, 0x4c, 0x20, 0x62, 0x75, 0x6c, 0x6b, 0x63, 0x6f,
- 0x6f, 0x6b, 0x3b, 0x7d, 0x0d, 0x0a, 0x48, 0x45, 0x41, 0x44, 0x5b, 0x30, 0x5d,
- 0x29, 0x61, 0x62, 0x62, 0x72, 0x6a, 0x75, 0x61, 0x6e, 0x28, 0x31, 0x39, 0x38,
- 0x6c, 0x65, 0x73, 0x68, 0x74, 0x77, 0x69, 0x6e, 0x3c, 0x2f, 0x69, 0x3e, 0x73,
- 0x6f, 0x6e, 0x79, 0x67, 0x75, 0x79, 0x73, 0x66, 0x75, 0x63, 0x6b, 0x70, 0x69,
- 0x70, 0x65, 0x7c, 0x2d, 0x0a, 0x21, 0x30, 0x30, 0x32, 0x29, 0x6e, 0x64, 0x6f,
- 0x77, 0x5b, 0x31, 0x5d, 0x3b, 0x5b, 0x5d, 0x3b, 0x0a, 0x4c, 0x6f, 0x67, 0x20,
- 0x73, 0x61, 0x6c, 0x74, 0x0d, 0x0a, 0x09, 0x09, 0x62, 0x61, 0x6e, 0x67, 0x74,
- 0x72, 0x69, 0x6d, 0x62, 0x61, 0x74, 0x68, 0x29, 0x7b, 0x0d, 0x0a, 0x30, 0x30,
- 0x70, 0x78, 0x0a, 0x7d, 0x29, 0x3b, 0x6b, 0x6f, 0x3a, 0xec, 0x66, 0x65, 0x65,
- 0x73, 0x61, 0x64, 0x3e, 0x0d, 0x73, 0x3a, 0x2f, 0x2f, 0x20, 0x5b, 0x5d, 0x3b,
- 0x74, 0x6f, 0x6c, 0x6c, 0x70, 0x6c, 0x75, 0x67, 0x28, 0x29, 0x7b, 0x0a, 0x7b,
- 0x0d, 0x0a, 0x20, 0x2e, 0x6a, 0x73, 0x27, 0x32, 0x30, 0x30, 0x70, 0x64, 0x75,
- 0x61, 0x6c, 0x62, 0x6f, 0x61, 0x74, 0x2e, 0x4a, 0x50, 0x47, 0x29, 0x3b, 0x0a,
- 0x7d, 0x71, 0x75, 0x6f, 0x74, 0x29, 0x3b, 0x0a, 0x0a, 0x27, 0x29, 0x3b, 0x0a,
- 0x0d, 0x0a, 0x7d, 0x0d, 0x32, 0x30, 0x31, 0x34, 0x32, 0x30, 0x31, 0x35, 0x32,
- 0x30, 0x31, 0x36, 0x32, 0x30, 0x31, 0x37, 0x32, 0x30, 0x31, 0x38, 0x32, 0x30,
- 0x31, 0x39, 0x32, 0x30, 0x32, 0x30, 0x32, 0x30, 0x32, 0x31, 0x32, 0x30, 0x32,
- 0x32, 0x32, 0x30, 0x32, 0x33, 0x32, 0x30, 0x32, 0x34, 0x32, 0x30, 0x32, 0x35,
- 0x32, 0x30, 0x32, 0x36, 0x32, 0x30, 0x32, 0x37, 0x32, 0x30, 0x32, 0x38, 0x32,
- 0x30, 0x32, 0x39, 0x32, 0x30, 0x33, 0x30, 0x32, 0x30, 0x33, 0x31, 0x32, 0x30,
- 0x33, 0x32, 0x32, 0x30, 0x33, 0x33, 0x32, 0x30, 0x33, 0x34, 0x32, 0x30, 0x33,
- 0x35, 0x32, 0x30, 0x33, 0x36, 0x32, 0x30, 0x33, 0x37, 0x32, 0x30, 0x31, 0x33,
- 0x32, 0x30, 0x31, 0x32, 0x32, 0x30, 0x31, 0x31, 0x32, 0x30, 0x31, 0x30, 0x32,
- 0x30, 0x30, 0x39, 0x32, 0x30, 0x30, 0x38, 0x32, 0x30, 0x30, 0x37, 0x32, 0x30,
- 0x30, 0x36, 0x32, 0x30, 0x30, 0x35, 0x32, 0x30, 0x30, 0x34, 0x32, 0x30, 0x30,
- 0x33, 0x32, 0x30, 0x30, 0x32, 0x32, 0x30, 0x30, 0x31, 0x32, 0x30, 0x30, 0x30,
- 0x31, 0x39, 0x39, 0x39, 0x31, 0x39, 0x39, 0x38, 0x31, 0x39, 0x39, 0x37, 0x31,
- 0x39, 0x39, 0x36, 0x31, 0x39, 0x39, 0x35, 0x31, 0x39, 0x39, 0x34, 0x31, 0x39,
- 0x39, 0x33, 0x31, 0x39, 0x39, 0x32, 0x31, 0x39, 0x39, 0x31, 0x31, 0x39, 0x39,
- 0x30, 0x31, 0x39, 0x38, 0x39, 0x31, 0x39, 0x38, 0x38, 0x31, 0x39, 0x38, 0x37,
- 0x31, 0x39, 0x38, 0x36, 0x31, 0x39, 0x38, 0x35, 0x31, 0x39, 0x38, 0x34, 0x31,
- 0x39, 0x38, 0x33, 0x31, 0x39, 0x38, 0x32, 0x31, 0x39, 0x38, 0x31, 0x31, 0x39,
- 0x38, 0x30, 0x31, 0x39, 0x37, 0x39, 0x31, 0x39, 0x37, 0x38, 0x31, 0x39, 0x37,
- 0x37, 0x31, 0x39, 0x37, 0x36, 0x31, 0x39, 0x37, 0x35, 0x31, 0x39, 0x37, 0x34,
- 0x31, 0x39, 0x37, 0x33, 0x31, 0x39, 0x37, 0x32, 0x31, 0x39, 0x37, 0x31, 0x31,
- 0x39, 0x37, 0x30, 0x31, 0x39, 0x36, 0x39, 0x31, 0x39, 0x36, 0x38, 0x31, 0x39,
- 0x36, 0x37, 0x31, 0x39, 0x36, 0x36, 0x31, 0x39, 0x36, 0x35, 0x31, 0x39, 0x36,
- 0x34, 0x31, 0x39, 0x36, 0x33, 0x31, 0x39, 0x36, 0x32, 0x31, 0x39, 0x36, 0x31,
- 0x31, 0x39, 0x36, 0x30, 0x31, 0x39, 0x35, 0x39, 0x31, 0x39, 0x35, 0x38, 0x31,
- 0x39, 0x35, 0x37, 0x31, 0x39, 0x35, 0x36, 0x31, 0x39, 0x35, 0x35, 0x31, 0x39,
- 0x35, 0x34, 0x31, 0x39, 0x35, 0x33, 0x31, 0x39, 0x35, 0x32, 0x31, 0x39, 0x35,
- 0x31, 0x31, 0x39, 0x35, 0x30, 0x31, 0x30, 0x30, 0x30, 0x31, 0x30, 0x32, 0x34,
- 0x31, 0x33, 0x39, 0x34, 0x30, 0x30, 0x30, 0x30, 0x39, 0x39, 0x39, 0x39, 0x63,
- 0x6f, 0x6d, 0x6f, 0x6d, 0xc3, 0xa1, 0x73, 0x65, 0x73, 0x74, 0x65, 0x65, 0x73,
- 0x74, 0x61, 0x70, 0x65, 0x72, 0x6f, 0x74, 0x6f, 0x64, 0x6f, 0x68, 0x61, 0x63,
- 0x65, 0x63, 0x61, 0x64, 0x61, 0x61, 0xc3, 0xb1, 0x6f, 0x62, 0x69, 0x65, 0x6e,
- 0x64, 0xc3, 0xad, 0x61, 0x61, 0x73, 0xc3, 0xad, 0x76, 0x69, 0x64, 0x61, 0x63,
- 0x61, 0x73, 0x6f, 0x6f, 0x74, 0x72, 0x6f, 0x66, 0x6f, 0x72, 0x6f, 0x73, 0x6f,
- 0x6c, 0x6f, 0x6f, 0x74, 0x72, 0x61, 0x63, 0x75, 0x61, 0x6c, 0x64, 0x69, 0x6a,
- 0x6f, 0x73, 0x69, 0x64, 0x6f, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x69, 0x70, 0x6f,
- 0x74, 0x65, 0x6d, 0x61, 0x64, 0x65, 0x62, 0x65, 0x61, 0x6c, 0x67, 0x6f, 0x71,
- 0x75, 0xc3, 0xa9, 0x65, 0x73, 0x74, 0x6f, 0x6e, 0x61, 0x64, 0x61, 0x74, 0x72,
- 0x65, 0x73, 0x70, 0x6f, 0x63, 0x6f, 0x63, 0x61, 0x73, 0x61, 0x62, 0x61, 0x6a,
- 0x6f, 0x74, 0x6f, 0x64, 0x61, 0x73, 0x69, 0x6e, 0x6f, 0x61, 0x67, 0x75, 0x61,
- 0x70, 0x75, 0x65, 0x73, 0x75, 0x6e, 0x6f, 0x73, 0x61, 0x6e, 0x74, 0x65, 0x64,
- 0x69, 0x63, 0x65, 0x6c, 0x75, 0x69, 0x73, 0x65, 0x6c, 0x6c, 0x61, 0x6d, 0x61,
- 0x79, 0x6f, 0x7a, 0x6f, 0x6e, 0x61, 0x61, 0x6d, 0x6f, 0x72, 0x70, 0x69, 0x73,
- 0x6f, 0x6f, 0x62, 0x72, 0x61, 0x63, 0x6c, 0x69, 0x63, 0x65, 0x6c, 0x6c, 0x6f,
- 0x64, 0x69, 0x6f, 0x73, 0x68, 0x6f, 0x72, 0x61, 0x63, 0x61, 0x73, 0x69, 0xd0,
- 0xb7, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xb0, 0xd0, 0xbe, 0xd0, 0xbc, 0xd1, 0x80,
- 0xd0, 0xb0, 0xd1, 0x80, 0xd1, 0x83, 0xd1, 0x82, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0,
- 0xb5, 0xd0, 0xbf, 0xd0, 0xbe, 0xd0, 0xbe, 0xd1, 0x82, 0xd0, 0xb8, 0xd0, 0xb7,
- 0xd0, 0xbd, 0xd0, 0xbe, 0xd0, 0xb4, 0xd0, 0xbe, 0xd1, 0x82, 0xd0, 0xbe, 0xd0,
- 0xb6, 0xd0, 0xb5, 0xd0, 0xbe, 0xd0, 0xbd, 0xd0, 0xb8, 0xd1, 0x85, 0xd0, 0x9d,
- 0xd0, 0xb0, 0xd0, 0xb5, 0xd0, 0xb5, 0xd0, 0xb1, 0xd1, 0x8b, 0xd0, 0xbc, 0xd1,
- 0x8b, 0xd0, 0x92, 0xd1, 0x8b, 0xd1, 0x81, 0xd0, 0xbe, 0xd0, 0xb2, 0xd1, 0x8b,
- 0xd0, 0xb2, 0xd0, 0xbe, 0xd0, 0x9d, 0xd0, 0xbe, 0xd0, 0xbe, 0xd0, 0xb1, 0xd0,
- 0x9f, 0xd0, 0xbe, 0xd0, 0xbb, 0xd0, 0xb8, 0xd0, 0xbd, 0xd0, 0xb8, 0xd0, 0xa0,
- 0xd0, 0xa4, 0xd0, 0x9d, 0xd0, 0xb5, 0xd0, 0x9c, 0xd1, 0x8b, 0xd1, 0x82, 0xd1,
- 0x8b, 0xd0, 0x9e, 0xd0, 0xbd, 0xd0, 0xb8, 0xd0, 0xbc, 0xd0, 0xb4, 0xd0, 0xb0,
- 0xd0, 0x97, 0xd0, 0xb0, 0xd0, 0x94, 0xd0, 0xb0, 0xd0, 0x9d, 0xd1, 0x83, 0xd0,
- 0x9e, 0xd0, 0xb1, 0xd1, 0x82, 0xd0, 0xb5, 0xd0, 0x98, 0xd0, 0xb7, 0xd0, 0xb5,
- 0xd0, 0xb9, 0xd0, 0xbd, 0xd1, 0x83, 0xd0, 0xbc, 0xd0, 0xbc, 0xd0, 0xa2, 0xd1,
- 0x8b, 0xd1, 0x83, 0xd0, 0xb6, 0xd9, 0x81, 0xd9, 0x8a, 0xd8, 0xa3, 0xd9, 0x86,
- 0xd9, 0x85, 0xd8, 0xa7, 0xd9, 0x85, 0xd8, 0xb9, 0xd9, 0x83, 0xd9, 0x84, 0xd8,
- 0xa3, 0xd9, 0x88, 0xd8, 0xb1, 0xd8, 0xaf, 0xd9, 0x8a, 0xd8, 0xa7, 0xd9, 0x81,
- 0xd9, 0x89, 0xd9, 0x87, 0xd9, 0x88, 0xd9, 0x84, 0xd9, 0x85, 0xd9, 0x84, 0xd9,
- 0x83, 0xd8, 0xa7, 0xd9, 0x88, 0xd9, 0x84, 0xd9, 0x87, 0xd8, 0xa8, 0xd8, 0xb3,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa5, 0xd9, 0x86, 0xd9, 0x87, 0xd9, 0x8a, 0xd8,
- 0xa3, 0xd9, 0x8a, 0xd9, 0x82, 0xd8, 0xaf, 0xd9, 0x87, 0xd9, 0x84, 0xd8, 0xab,
- 0xd9, 0x85, 0xd8, 0xa8, 0xd9, 0x87, 0xd9, 0x84, 0xd9, 0x88, 0xd9, 0x84, 0xd9,
- 0x8a, 0xd8, 0xa8, 0xd9, 0x84, 0xd8, 0xa7, 0xd9, 0x8a, 0xd8, 0xa8, 0xd9, 0x83,
- 0xd8, 0xb4, 0xd9, 0x8a, 0xd8, 0xa7, 0xd9, 0x85, 0xd8, 0xa3, 0xd9, 0x85, 0xd9,
- 0x86, 0xd8, 0xaa, 0xd8, 0xa8, 0xd9, 0x8a, 0xd9, 0x84, 0xd9, 0x86, 0xd8, 0xad,
- 0xd8, 0xa8, 0xd9, 0x87, 0xd9, 0x85, 0xd9, 0x85, 0xd8, 0xb4, 0xd9, 0x88, 0xd8,
- 0xb4, 0x66, 0x69, 0x72, 0x73, 0x74, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x6c, 0x69,
- 0x67, 0x68, 0x74, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x6d, 0x65, 0x64, 0x69, 0x61,
- 0x77, 0x68, 0x69, 0x74, 0x65, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x62, 0x6c, 0x61,
- 0x63, 0x6b, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x62,
- 0x6f, 0x6f, 0x6b, 0x73, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x75, 0x73, 0x69,
- 0x63, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x70, 0x6f,
- 0x69, 0x6e, 0x74, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x6c, 0x65, 0x76, 0x65, 0x6c,
- 0x74, 0x61, 0x62, 0x6c, 0x65, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x68, 0x6f, 0x75,
- 0x73, 0x65, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x79,
- 0x65, 0x61, 0x72, 0x73, 0x73, 0x74, 0x61, 0x74, 0x65, 0x74, 0x6f, 0x64, 0x61,
- 0x79, 0x77, 0x61, 0x74, 0x65, 0x72, 0x73, 0x74, 0x61, 0x72, 0x74, 0x73, 0x74,
- 0x79, 0x6c, 0x65, 0x64, 0x65, 0x61, 0x74, 0x68, 0x70, 0x6f, 0x77, 0x65, 0x72,
- 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x6e, 0x69, 0x67, 0x68, 0x74, 0x65, 0x72, 0x72,
- 0x6f, 0x72, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x74,
- 0x65, 0x72, 0x6d, 0x73, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x74, 0x6f, 0x6f, 0x6c,
- 0x73, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x74, 0x69,
- 0x6d, 0x65, 0x73, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x77, 0x6f, 0x72, 0x64, 0x73,
- 0x67, 0x61, 0x6d, 0x65, 0x73, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x73, 0x70, 0x61,
- 0x63, 0x65, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x6d,
- 0x6f, 0x64, 0x65, 0x6c, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x67, 0x75, 0x69, 0x64,
- 0x65, 0x72, 0x61, 0x64, 0x69, 0x6f, 0x73, 0x68, 0x61, 0x72, 0x65, 0x77, 0x6f,
- 0x6d, 0x65, 0x6e, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x6d, 0x6f, 0x6e, 0x65, 0x79,
- 0x69, 0x6d, 0x61, 0x67, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x79, 0x6f, 0x75,
- 0x6e, 0x67, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x63,
- 0x6f, 0x6c, 0x6f, 0x72, 0x67, 0x72, 0x65, 0x65, 0x6e, 0x66, 0x72, 0x6f, 0x6e,
- 0x74, 0x26, 0x61, 0x6d, 0x70, 0x3b, 0x77, 0x61, 0x74, 0x63, 0x68, 0x66, 0x6f,
- 0x72, 0x63, 0x65, 0x70, 0x72, 0x69, 0x63, 0x65, 0x72, 0x75, 0x6c, 0x65, 0x73,
- 0x62, 0x65, 0x67, 0x69, 0x6e, 0x61, 0x66, 0x74, 0x65, 0x72, 0x76, 0x69, 0x73,
- 0x69, 0x74, 0x69, 0x73, 0x73, 0x75, 0x65, 0x61, 0x72, 0x65, 0x61, 0x73, 0x62,
- 0x65, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x74, 0x6f, 0x74, 0x61,
- 0x6c, 0x68, 0x6f, 0x75, 0x72, 0x73, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x70, 0x72,
- 0x69, 0x6e, 0x74, 0x70, 0x72, 0x65, 0x73, 0x73, 0x62, 0x75, 0x69, 0x6c, 0x74,
- 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x73, 0x70, 0x65, 0x65, 0x64, 0x73, 0x74, 0x75,
- 0x64, 0x79, 0x74, 0x72, 0x61, 0x64, 0x65, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x73,
- 0x65, 0x6e, 0x73, 0x65, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x68, 0x6f, 0x77,
- 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x61, 0x64,
- 0x64, 0x65, 0x64, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x6d, 0x6f, 0x76, 0x65, 0x64,
- 0x74, 0x61, 0x6b, 0x65, 0x6e, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x66, 0x6c, 0x61,
- 0x73, 0x68, 0x66, 0x69, 0x78, 0x65, 0x64, 0x6f, 0x66, 0x74, 0x65, 0x6e, 0x6f,
- 0x74, 0x68, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x73, 0x63, 0x68, 0x65, 0x63,
- 0x6b, 0x6c, 0x65, 0x67, 0x61, 0x6c, 0x72, 0x69, 0x76, 0x65, 0x72, 0x69, 0x74,
- 0x65, 0x6d, 0x73, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x73, 0x68, 0x61, 0x70, 0x65,
- 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x65, 0x78, 0x69, 0x73, 0x74, 0x67, 0x6f, 0x69,
- 0x6e, 0x67, 0x6d, 0x6f, 0x76, 0x69, 0x65, 0x74, 0x68, 0x69, 0x72, 0x64, 0x62,
- 0x61, 0x73, 0x69, 0x63, 0x70, 0x65, 0x61, 0x63, 0x65, 0x73, 0x74, 0x61, 0x67,
- 0x65, 0x77, 0x69, 0x64, 0x74, 0x68, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x69, 0x64,
- 0x65, 0x61, 0x73, 0x77, 0x72, 0x6f, 0x74, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73,
- 0x75, 0x73, 0x65, 0x72, 0x73, 0x64, 0x72, 0x69, 0x76, 0x65, 0x73, 0x74, 0x6f,
- 0x72, 0x65, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x73, 0x6f, 0x75, 0x74, 0x68, 0x76,
- 0x6f, 0x69, 0x63, 0x65, 0x73, 0x69, 0x74, 0x65, 0x73, 0x6d, 0x6f, 0x6e, 0x74,
- 0x68, 0x77, 0x68, 0x65, 0x72, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x77, 0x68,
- 0x69, 0x63, 0x68, 0x65, 0x61, 0x72, 0x74, 0x68, 0x66, 0x6f, 0x72, 0x75, 0x6d,
- 0x74, 0x68, 0x72, 0x65, 0x65, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x70, 0x61, 0x72,
- 0x74, 0x79, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x6c,
- 0x69, 0x76, 0x65, 0x73, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6c, 0x61, 0x79, 0x65,
- 0x72, 0x65, 0x6e, 0x74, 0x72, 0x79, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x75, 0x73,
- 0x61, 0x67, 0x65, 0x73, 0x6f, 0x75, 0x6e, 0x64, 0x63, 0x6f, 0x75, 0x72, 0x74,
- 0x79, 0x6f, 0x75, 0x72, 0x20, 0x62, 0x69, 0x72, 0x74, 0x68, 0x70, 0x6f, 0x70,
- 0x75, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x49,
- 0x6d, 0x61, 0x67, 0x65, 0x62, 0x65, 0x69, 0x6e, 0x67, 0x75, 0x70, 0x70, 0x65,
- 0x72, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x65, 0x76, 0x65, 0x72, 0x79, 0x73, 0x68,
- 0x6f, 0x77, 0x73, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x65, 0x78, 0x74, 0x72, 0x61,
- 0x6d, 0x61, 0x74, 0x63, 0x68, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x6b, 0x6e, 0x6f,
- 0x77, 0x6e, 0x65, 0x61, 0x72, 0x6c, 0x79, 0x62, 0x65, 0x67, 0x61, 0x6e, 0x73,
- 0x75, 0x70, 0x65, 0x72, 0x70, 0x61, 0x70, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x74,
- 0x68, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x6e, 0x61,
- 0x6d, 0x65, 0x64, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x54, 0x65, 0x72, 0x6d, 0x73,
- 0x70, 0x61, 0x72, 0x74, 0x73, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x62, 0x72, 0x61,
- 0x6e, 0x64, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x77, 0x6f, 0x6d, 0x61, 0x6e, 0x66,
- 0x61, 0x6c, 0x73, 0x65, 0x72, 0x65, 0x61, 0x64, 0x79, 0x61, 0x75, 0x64, 0x69,
- 0x6f, 0x74, 0x61, 0x6b, 0x65, 0x73, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x2e, 0x63,
- 0x6f, 0x6d, 0x2f, 0x6c, 0x69, 0x76, 0x65, 0x64, 0x63, 0x61, 0x73, 0x65, 0x73,
- 0x64, 0x61, 0x69, 0x6c, 0x79, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x67, 0x72, 0x65,
- 0x61, 0x74, 0x6a, 0x75, 0x64, 0x67, 0x65, 0x74, 0x68, 0x6f, 0x73, 0x65, 0x75,
- 0x6e, 0x69, 0x74, 0x73, 0x6e, 0x65, 0x76, 0x65, 0x72, 0x62, 0x72, 0x6f, 0x61,
- 0x64, 0x63, 0x6f, 0x61, 0x73, 0x74, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x70,
- 0x70, 0x6c, 0x65, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x63, 0x79, 0x63, 0x6c, 0x65,
- 0x73, 0x63, 0x65, 0x6e, 0x65, 0x70, 0x6c, 0x61, 0x6e, 0x73, 0x63, 0x6c, 0x69,
- 0x63, 0x6b, 0x77, 0x72, 0x69, 0x74, 0x65, 0x71, 0x75, 0x65, 0x65, 0x6e, 0x70,
- 0x69, 0x65, 0x63, 0x65, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x66, 0x72, 0x61, 0x6d,
- 0x65, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x70, 0x68, 0x6f, 0x74, 0x6f, 0x6c, 0x69,
- 0x6d, 0x69, 0x74, 0x63, 0x61, 0x63, 0x68, 0x65, 0x63, 0x69, 0x76, 0x69, 0x6c,
- 0x73, 0x63, 0x61, 0x6c, 0x65, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x68, 0x65,
- 0x6d, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x62,
- 0x6f, 0x75, 0x6e, 0x64, 0x72, 0x6f, 0x79, 0x61, 0x6c, 0x61, 0x73, 0x6b, 0x65,
- 0x64, 0x77, 0x68, 0x6f, 0x6c, 0x65, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x73, 0x74,
- 0x6f, 0x63, 0x6b, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x66, 0x61, 0x69, 0x74, 0x68,
- 0x68, 0x65, 0x61, 0x72, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x6f, 0x66, 0x66,
- 0x65, 0x72, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x6f, 0x77, 0x6e, 0x65, 0x64, 0x6d,
- 0x69, 0x67, 0x68, 0x74, 0x61, 0x6c, 0x62, 0x75, 0x6d, 0x74, 0x68, 0x69, 0x6e,
- 0x6b, 0x62, 0x6c, 0x6f, 0x6f, 0x64, 0x61, 0x72, 0x72, 0x61, 0x79, 0x6d, 0x61,
- 0x6a, 0x6f, 0x72, 0x74, 0x72, 0x75, 0x73, 0x74, 0x63, 0x61, 0x6e, 0x6f, 0x6e,
- 0x75, 0x6e, 0x69, 0x6f, 0x6e, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x76, 0x61, 0x6c,
- 0x69, 0x64, 0x73, 0x74, 0x6f, 0x6e, 0x65, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x4c,
- 0x6f, 0x67, 0x69, 0x6e, 0x68, 0x61, 0x70, 0x70, 0x79, 0x6f, 0x63, 0x63, 0x75,
- 0x72, 0x6c, 0x65, 0x66, 0x74, 0x3a, 0x66, 0x72, 0x65, 0x73, 0x68, 0x71, 0x75,
- 0x69, 0x74, 0x65, 0x66, 0x69, 0x6c, 0x6d, 0x73, 0x67, 0x72, 0x61, 0x64, 0x65,
- 0x6e, 0x65, 0x65, 0x64, 0x73, 0x75, 0x72, 0x62, 0x61, 0x6e, 0x66, 0x69, 0x67,
- 0x68, 0x74, 0x62, 0x61, 0x73, 0x69, 0x73, 0x68, 0x6f, 0x76, 0x65, 0x72, 0x61,
- 0x75, 0x74, 0x6f, 0x3b, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x68, 0x74, 0x6d,
- 0x6c, 0x6d, 0x69, 0x78, 0x65, 0x64, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x59, 0x6f,
- 0x75, 0x72, 0x20, 0x73, 0x6c, 0x69, 0x64, 0x65, 0x74, 0x6f, 0x70, 0x69, 0x63,
- 0x62, 0x72, 0x6f, 0x77, 0x6e, 0x61, 0x6c, 0x6f, 0x6e, 0x65, 0x64, 0x72, 0x61,
- 0x77, 0x6e, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x72, 0x65, 0x61, 0x63, 0x68, 0x52,
- 0x69, 0x67, 0x68, 0x74, 0x64, 0x61, 0x74, 0x65, 0x73, 0x6d, 0x61, 0x72, 0x63,
- 0x68, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x67, 0x6f, 0x6f, 0x64, 0x73, 0x4c, 0x69,
- 0x6e, 0x6b, 0x73, 0x64, 0x6f, 0x75, 0x62, 0x74, 0x61, 0x73, 0x79, 0x6e, 0x63,
- 0x74, 0x68, 0x75, 0x6d, 0x62, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x63, 0x68, 0x69,
- 0x65, 0x66, 0x79, 0x6f, 0x75, 0x74, 0x68, 0x6e, 0x6f, 0x76, 0x65, 0x6c, 0x31,
- 0x30, 0x70, 0x78, 0x3b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x75, 0x6e, 0x74, 0x69,
- 0x6c, 0x68, 0x61, 0x6e, 0x64, 0x73, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x53, 0x70,
- 0x61, 0x63, 0x65, 0x71, 0x75, 0x65, 0x72, 0x79, 0x6a, 0x61, 0x6d, 0x65, 0x73,
- 0x65, 0x71, 0x75, 0x61, 0x6c, 0x74, 0x77, 0x69, 0x63, 0x65, 0x30, 0x2c, 0x30,
- 0x30, 0x30, 0x53, 0x74, 0x61, 0x72, 0x74, 0x70, 0x61, 0x6e, 0x65, 0x6c, 0x73,
- 0x6f, 0x6e, 0x67, 0x73, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x69, 0x67, 0x68,
- 0x74, 0x73, 0x68, 0x69, 0x66, 0x74, 0x77, 0x6f, 0x72, 0x74, 0x68, 0x70, 0x6f,
- 0x73, 0x74, 0x73, 0x6c, 0x65, 0x61, 0x64, 0x73, 0x77, 0x65, 0x65, 0x6b, 0x73,
- 0x61, 0x76, 0x6f, 0x69, 0x64, 0x74, 0x68, 0x65, 0x73, 0x65, 0x6d, 0x69, 0x6c,
- 0x65, 0x73, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x73, 0x6d, 0x61, 0x72, 0x74, 0x61,
- 0x6c, 0x70, 0x68, 0x61, 0x70, 0x6c, 0x61, 0x6e, 0x74, 0x6d, 0x61, 0x72, 0x6b,
- 0x73, 0x72, 0x61, 0x74, 0x65, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x73, 0x63, 0x6c,
- 0x61, 0x69, 0x6d, 0x73, 0x61, 0x6c, 0x65, 0x73, 0x74, 0x65, 0x78, 0x74, 0x73,
- 0x73, 0x74, 0x61, 0x72, 0x73, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x3c, 0x2f, 0x68,
- 0x33, 0x3e, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6d,
- 0x75, 0x6c, 0x74, 0x69, 0x68, 0x65, 0x61, 0x72, 0x64, 0x50, 0x6f, 0x77, 0x65,
- 0x72, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x73, 0x6f,
- 0x6c, 0x69, 0x64, 0x28, 0x74, 0x68, 0x69, 0x73, 0x62, 0x72, 0x69, 0x6e, 0x67,
- 0x73, 0x68, 0x69, 0x70, 0x73, 0x73, 0x74, 0x61, 0x66, 0x66, 0x74, 0x72, 0x69,
- 0x65, 0x64, 0x63, 0x61, 0x6c, 0x6c, 0x73, 0x66, 0x75, 0x6c, 0x6c, 0x79, 0x66,
- 0x61, 0x63, 0x74, 0x73, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x54, 0x68, 0x69, 0x73,
- 0x20, 0x2f, 0x2f, 0x2d, 0x2d, 0x3e, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x65, 0x67,
- 0x79, 0x70, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x31, 0x35, 0x70, 0x78, 0x3b,
- 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x74, 0x72, 0x75, 0x65, 0x22, 0x63, 0x72, 0x6f,
- 0x73, 0x73, 0x73, 0x70, 0x65, 0x6e, 0x74, 0x62, 0x6c, 0x6f, 0x67, 0x73, 0x62,
- 0x6f, 0x78, 0x22, 0x3e, 0x6e, 0x6f, 0x74, 0x65, 0x64, 0x6c, 0x65, 0x61, 0x76,
- 0x65, 0x63, 0x68, 0x69, 0x6e, 0x61, 0x73, 0x69, 0x7a, 0x65, 0x73, 0x67, 0x75,
- 0x65, 0x73, 0x74, 0x3c, 0x2f, 0x68, 0x34, 0x3e, 0x72, 0x6f, 0x62, 0x6f, 0x74,
- 0x68, 0x65, 0x61, 0x76, 0x79, 0x74, 0x72, 0x75, 0x65, 0x2c, 0x73, 0x65, 0x76,
- 0x65, 0x6e, 0x67, 0x72, 0x61, 0x6e, 0x64, 0x63, 0x72, 0x69, 0x6d, 0x65, 0x73,
- 0x69, 0x67, 0x6e, 0x73, 0x61, 0x77, 0x61, 0x72, 0x65, 0x64, 0x61, 0x6e, 0x63,
- 0x65, 0x70, 0x68, 0x61, 0x73, 0x65, 0x3e, 0x3c, 0x21, 0x2d, 0x2d, 0x65, 0x6e,
- 0x5f, 0x55, 0x53, 0x26, 0x23, 0x33, 0x39, 0x3b, 0x32, 0x30, 0x30, 0x70, 0x78,
- 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x65, 0x6e, 0x6a,
- 0x6f, 0x79, 0x61, 0x6a, 0x61, 0x78, 0x2e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
- 0x6d, 0x69, 0x74, 0x68, 0x55, 0x2e, 0x53, 0x2e, 0x20, 0x68, 0x6f, 0x6c, 0x64,
- 0x73, 0x70, 0x65, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x64, 0x69, 0x61, 0x6e, 0x61,
- 0x76, 0x22, 0x3e, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x73, 0x63, 0x6f, 0x72, 0x65,
- 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x64, 0x6f, 0x69, 0x6e, 0x67, 0x70, 0x72, 0x69,
- 0x6f, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x31, 0x39, 0x39, 0x30, 0x73, 0x72,
- 0x6f, 0x6d, 0x61, 0x6e, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x6a, 0x61, 0x70, 0x61,
- 0x6e, 0x66, 0x61, 0x6c, 0x6c, 0x73, 0x74, 0x72, 0x69, 0x61, 0x6c, 0x6f, 0x77,
- 0x6e, 0x65, 0x72, 0x61, 0x67, 0x72, 0x65, 0x65, 0x3c, 0x2f, 0x68, 0x32, 0x3e,
- 0x61, 0x62, 0x75, 0x73, 0x65, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x6f, 0x70, 0x65,
- 0x72, 0x61, 0x22, 0x2d, 0x2f, 0x2f, 0x57, 0x63, 0x61, 0x72, 0x64, 0x73, 0x68,
- 0x69, 0x6c, 0x6c, 0x73, 0x74, 0x65, 0x61, 0x6d, 0x73, 0x50, 0x68, 0x6f, 0x74,
- 0x6f, 0x74, 0x72, 0x75, 0x74, 0x68, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x2e, 0x70,
- 0x68, 0x70, 0x3f, 0x73, 0x61, 0x69, 0x6e, 0x74, 0x6d, 0x65, 0x74, 0x61, 0x6c,
- 0x6c, 0x6f, 0x75, 0x69, 0x73, 0x6d, 0x65, 0x61, 0x6e, 0x74, 0x70, 0x72, 0x6f,
- 0x6f, 0x66, 0x62, 0x72, 0x69, 0x65, 0x66, 0x72, 0x6f, 0x77, 0x22, 0x3e, 0x67,
- 0x65, 0x6e, 0x72, 0x65, 0x74, 0x72, 0x75, 0x63, 0x6b, 0x6c, 0x6f, 0x6f, 0x6b,
- 0x73, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x2e, 0x6e,
- 0x65, 0x74, 0x2f, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x74, 0x72, 0x79, 0x20, 0x7b,
- 0x0a, 0x76, 0x61, 0x72, 0x20, 0x6d, 0x61, 0x6b, 0x65, 0x73, 0x63, 0x6f, 0x73,
- 0x74, 0x73, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x61, 0x64, 0x75, 0x6c, 0x74, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x6c, 0x61, 0x62, 0x6f,
- 0x72, 0x68, 0x65, 0x6c, 0x70, 0x73, 0x63, 0x61, 0x75, 0x73, 0x65, 0x6d, 0x61,
- 0x67, 0x69, 0x63, 0x6d, 0x6f, 0x74, 0x6f, 0x72, 0x74, 0x68, 0x65, 0x69, 0x72,
- 0x32, 0x35, 0x30, 0x70, 0x78, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x73, 0x74, 0x65,
- 0x70, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x63, 0x6f, 0x75, 0x6c, 0x64, 0x67,
- 0x6c, 0x61, 0x73, 0x73, 0x73, 0x69, 0x64, 0x65, 0x73, 0x66, 0x75, 0x6e, 0x64,
- 0x73, 0x68, 0x6f, 0x74, 0x65, 0x6c, 0x61, 0x77, 0x61, 0x72, 0x64, 0x6d, 0x6f,
- 0x75, 0x74, 0x68, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x70, 0x61, 0x72, 0x69, 0x73,
- 0x67, 0x69, 0x76, 0x65, 0x73, 0x64, 0x75, 0x74, 0x63, 0x68, 0x74, 0x65, 0x78,
- 0x61, 0x73, 0x66, 0x72, 0x75, 0x69, 0x74, 0x6e, 0x75, 0x6c, 0x6c, 0x2c, 0x7c,
- 0x7c, 0x5b, 0x5d, 0x3b, 0x74, 0x6f, 0x70, 0x22, 0x3e, 0x0a, 0x3c, 0x21, 0x2d,
- 0x2d, 0x50, 0x4f, 0x53, 0x54, 0x22, 0x6f, 0x63, 0x65, 0x61, 0x6e, 0x3c, 0x62,
- 0x72, 0x2f, 0x3e, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x73, 0x70, 0x65, 0x61, 0x6b,
- 0x64, 0x65, 0x70, 0x74, 0x68, 0x20, 0x73, 0x69, 0x7a, 0x65, 0x62, 0x61, 0x6e,
- 0x6b, 0x73, 0x63, 0x61, 0x74, 0x63, 0x68, 0x63, 0x68, 0x61, 0x72, 0x74, 0x32,
- 0x30, 0x70, 0x78, 0x3b, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x64, 0x65, 0x61, 0x6c,
- 0x73, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x35, 0x30, 0x70, 0x78, 0x3b, 0x75, 0x72,
- 0x6c, 0x3d, 0x22, 0x70, 0x61, 0x72, 0x6b, 0x73, 0x6d, 0x6f, 0x75, 0x73, 0x65,
- 0x4d, 0x6f, 0x73, 0x74, 0x20, 0x2e, 0x2e, 0x2e, 0x3c, 0x2f, 0x61, 0x6d, 0x6f,
- 0x6e, 0x67, 0x62, 0x72, 0x61, 0x69, 0x6e, 0x62, 0x6f, 0x64, 0x79, 0x20, 0x6e,
- 0x6f, 0x6e, 0x65, 0x3b, 0x62, 0x61, 0x73, 0x65, 0x64, 0x63, 0x61, 0x72, 0x72,
- 0x79, 0x64, 0x72, 0x61, 0x66, 0x74, 0x72, 0x65, 0x66, 0x65, 0x72, 0x70, 0x61,
- 0x67, 0x65, 0x5f, 0x68, 0x6f, 0x6d, 0x65, 0x2e, 0x6d, 0x65, 0x74, 0x65, 0x72,
- 0x64, 0x65, 0x6c, 0x61, 0x79, 0x64, 0x72, 0x65, 0x61, 0x6d, 0x70, 0x72, 0x6f,
- 0x76, 0x65, 0x6a, 0x6f, 0x69, 0x6e, 0x74, 0x3c, 0x2f, 0x74, 0x72, 0x3e, 0x64,
- 0x72, 0x75, 0x67, 0x73, 0x3c, 0x21, 0x2d, 0x2d, 0x20, 0x61, 0x70, 0x72, 0x69,
- 0x6c, 0x69, 0x64, 0x65, 0x61, 0x6c, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x65, 0x78,
- 0x61, 0x63, 0x74, 0x66, 0x6f, 0x72, 0x74, 0x68, 0x63, 0x6f, 0x64, 0x65, 0x73,
- 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x56, 0x69, 0x65, 0x77, 0x20, 0x73, 0x65, 0x65,
- 0x6d, 0x73, 0x62, 0x6c, 0x61, 0x6e, 0x6b, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x20,
- 0x28, 0x32, 0x30, 0x30, 0x73, 0x61, 0x76, 0x65, 0x64, 0x5f, 0x6c, 0x69, 0x6e,
- 0x6b, 0x67, 0x6f, 0x61, 0x6c, 0x73, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x67, 0x72,
- 0x65, 0x65, 0x6b, 0x68, 0x6f, 0x6d, 0x65, 0x73, 0x72, 0x69, 0x6e, 0x67, 0x73,
- 0x72, 0x61, 0x74, 0x65, 0x64, 0x33, 0x30, 0x70, 0x78, 0x3b, 0x77, 0x68, 0x6f,
- 0x73, 0x65, 0x70, 0x61, 0x72, 0x73, 0x65, 0x28, 0x29, 0x3b, 0x22, 0x20, 0x42,
- 0x6c, 0x6f, 0x63, 0x6b, 0x6c, 0x69, 0x6e, 0x75, 0x78, 0x6a, 0x6f, 0x6e, 0x65,
- 0x73, 0x70, 0x69, 0x78, 0x65, 0x6c, 0x27, 0x29, 0x3b, 0x22, 0x3e, 0x29, 0x3b,
- 0x69, 0x66, 0x28, 0x2d, 0x6c, 0x65, 0x66, 0x74, 0x64, 0x61, 0x76, 0x69, 0x64,
- 0x68, 0x6f, 0x72, 0x73, 0x65, 0x46, 0x6f, 0x63, 0x75, 0x73, 0x72, 0x61, 0x69,
- 0x73, 0x65, 0x62, 0x6f, 0x78, 0x65, 0x73, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x65,
- 0x6d, 0x65, 0x6e, 0x74, 0x3c, 0x2f, 0x65, 0x6d, 0x3e, 0x62, 0x61, 0x72, 0x22,
- 0x3e, 0x2e, 0x73, 0x72, 0x63, 0x3d, 0x74, 0x6f, 0x77, 0x65, 0x72, 0x61, 0x6c,
- 0x74, 0x3d, 0x22, 0x63, 0x61, 0x62, 0x6c, 0x65, 0x68, 0x65, 0x6e, 0x72, 0x79,
- 0x32, 0x34, 0x70, 0x78, 0x3b, 0x73, 0x65, 0x74, 0x75, 0x70, 0x69, 0x74, 0x61,
- 0x6c, 0x79, 0x73, 0x68, 0x61, 0x72, 0x70, 0x6d, 0x69, 0x6e, 0x6f, 0x72, 0x74,
- 0x61, 0x73, 0x74, 0x65, 0x77, 0x61, 0x6e, 0x74, 0x73, 0x74, 0x68, 0x69, 0x73,
- 0x2e, 0x72, 0x65, 0x73, 0x65, 0x74, 0x77, 0x68, 0x65, 0x65, 0x6c, 0x67, 0x69,
- 0x72, 0x6c, 0x73, 0x2f, 0x63, 0x73, 0x73, 0x2f, 0x31, 0x30, 0x30, 0x25, 0x3b,
- 0x63, 0x6c, 0x75, 0x62, 0x73, 0x73, 0x74, 0x75, 0x66, 0x66, 0x62, 0x69, 0x62,
- 0x6c, 0x65, 0x76, 0x6f, 0x74, 0x65, 0x73, 0x20, 0x31, 0x30, 0x30, 0x30, 0x6b,
- 0x6f, 0x72, 0x65, 0x61, 0x7d, 0x29, 0x3b, 0x0d, 0x0a, 0x62, 0x61, 0x6e, 0x64,
- 0x73, 0x71, 0x75, 0x65, 0x75, 0x65, 0x3d, 0x20, 0x7b, 0x7d, 0x3b, 0x38, 0x30,
- 0x70, 0x78, 0x3b, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x7b, 0x0d, 0x0a, 0x09, 0x09,
- 0x61, 0x68, 0x65, 0x61, 0x64, 0x63, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x72, 0x69,
- 0x73, 0x68, 0x6c, 0x69, 0x6b, 0x65, 0x20, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x73,
- 0x74, 0x61, 0x74, 0x73, 0x46, 0x6f, 0x72, 0x6d, 0x22, 0x79, 0x61, 0x68, 0x6f,
- 0x6f, 0x29, 0x5b, 0x30, 0x5d, 0x3b, 0x41, 0x62, 0x6f, 0x75, 0x74, 0x66, 0x69,
- 0x6e, 0x64, 0x73, 0x3c, 0x2f, 0x68, 0x31, 0x3e, 0x64, 0x65, 0x62, 0x75, 0x67,
- 0x74, 0x61, 0x73, 0x6b, 0x73, 0x55, 0x52, 0x4c, 0x20, 0x3d, 0x63, 0x65, 0x6c,
- 0x6c, 0x73, 0x7d, 0x29, 0x28, 0x29, 0x3b, 0x31, 0x32, 0x70, 0x78, 0x3b, 0x70,
- 0x72, 0x69, 0x6d, 0x65, 0x74, 0x65, 0x6c, 0x6c, 0x73, 0x74, 0x75, 0x72, 0x6e,
- 0x73, 0x30, 0x78, 0x36, 0x30, 0x30, 0x2e, 0x6a, 0x70, 0x67, 0x22, 0x73, 0x70,
- 0x61, 0x69, 0x6e, 0x62, 0x65, 0x61, 0x63, 0x68, 0x74, 0x61, 0x78, 0x65, 0x73,
- 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x61, 0x6e, 0x67, 0x65, 0x6c, 0x2d, 0x2d, 0x3e,
- 0x3c, 0x2f, 0x67, 0x69, 0x66, 0x74, 0x73, 0x73, 0x74, 0x65, 0x76, 0x65, 0x2d,
- 0x6c, 0x69, 0x6e, 0x6b, 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x7d, 0x29, 0x3b, 0x0a,
- 0x09, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x28, 0x31, 0x39, 0x39, 0x46, 0x41,
- 0x51, 0x3c, 0x2f, 0x72, 0x6f, 0x67, 0x65, 0x72, 0x66, 0x72, 0x61, 0x6e, 0x6b,
- 0x43, 0x6c, 0x61, 0x73, 0x73, 0x32, 0x38, 0x70, 0x78, 0x3b, 0x66, 0x65, 0x65,
- 0x64, 0x73, 0x3c, 0x68, 0x31, 0x3e, 0x3c, 0x73, 0x63, 0x6f, 0x74, 0x74, 0x74,
- 0x65, 0x73, 0x74, 0x73, 0x32, 0x32, 0x70, 0x78, 0x3b, 0x64, 0x72, 0x69, 0x6e,
- 0x6b, 0x29, 0x20, 0x7c, 0x7c, 0x20, 0x6c, 0x65, 0x77, 0x69, 0x73, 0x73, 0x68,
- 0x61, 0x6c, 0x6c, 0x23, 0x30, 0x33, 0x39, 0x3b, 0x20, 0x66, 0x6f, 0x72, 0x20,
- 0x6c, 0x6f, 0x76, 0x65, 0x64, 0x77, 0x61, 0x73, 0x74, 0x65, 0x30, 0x30, 0x70,
- 0x78, 0x3b, 0x6a, 0x61, 0x3a, 0xe3, 0x82, 0x73, 0x69, 0x6d, 0x6f, 0x6e, 0x3c,
- 0x66, 0x6f, 0x6e, 0x74, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x6d, 0x65, 0x65, 0x74,
- 0x73, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x68, 0x65, 0x61, 0x70, 0x74, 0x69,
- 0x67, 0x68, 0x74, 0x42, 0x72, 0x61, 0x6e, 0x64, 0x29, 0x20, 0x21, 0x3d, 0x20,
- 0x64, 0x72, 0x65, 0x73, 0x73, 0x63, 0x6c, 0x69, 0x70, 0x73, 0x72, 0x6f, 0x6f,
- 0x6d, 0x73, 0x6f, 0x6e, 0x6b, 0x65, 0x79, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x6d,
- 0x61, 0x69, 0x6e, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x20, 0x70, 0x6c, 0x61, 0x74,
- 0x65, 0x66, 0x75, 0x6e, 0x6e, 0x79, 0x74, 0x72, 0x65, 0x65, 0x73, 0x63, 0x6f,
- 0x6d, 0x2f, 0x22, 0x31, 0x2e, 0x6a, 0x70, 0x67, 0x77, 0x6d, 0x6f, 0x64, 0x65,
- 0x70, 0x61, 0x72, 0x61, 0x6d, 0x53, 0x54, 0x41, 0x52, 0x54, 0x6c, 0x65, 0x66,
- 0x74, 0x20, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x2c, 0x20, 0x32, 0x30, 0x31, 0x29,
- 0x3b, 0x0a, 0x7d, 0x0a, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x76, 0x69, 0x72, 0x75,
- 0x73, 0x63, 0x68, 0x61, 0x69, 0x72, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x77, 0x6f,
- 0x72, 0x73, 0x74, 0x50, 0x61, 0x67, 0x65, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e,
- 0x70, 0x61, 0x74, 0x63, 0x68, 0x3c, 0x21, 0x2d, 0x2d, 0x0a, 0x6f, 0x2d, 0x63,
- 0x61, 0x63, 0x66, 0x69, 0x72, 0x6d, 0x73, 0x74, 0x6f, 0x75, 0x72, 0x73, 0x2c,
- 0x30, 0x30, 0x30, 0x20, 0x61, 0x73, 0x69, 0x61, 0x6e, 0x69, 0x2b, 0x2b, 0x29,
- 0x7b, 0x61, 0x64, 0x6f, 0x62, 0x65, 0x27, 0x29, 0x5b, 0x30, 0x5d, 0x69, 0x64,
- 0x3d, 0x31, 0x30, 0x62, 0x6f, 0x74, 0x68, 0x3b, 0x6d, 0x65, 0x6e, 0x75, 0x20,
- 0x2e, 0x32, 0x2e, 0x6d, 0x69, 0x2e, 0x70, 0x6e, 0x67, 0x22, 0x6b, 0x65, 0x76,
- 0x69, 0x6e, 0x63, 0x6f, 0x61, 0x63, 0x68, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x62,
- 0x72, 0x75, 0x63, 0x65, 0x32, 0x2e, 0x6a, 0x70, 0x67, 0x55, 0x52, 0x4c, 0x29,
- 0x2b, 0x2e, 0x6a, 0x70, 0x67, 0x7c, 0x73, 0x75, 0x69, 0x74, 0x65, 0x73, 0x6c,
- 0x69, 0x63, 0x65, 0x68, 0x61, 0x72, 0x72, 0x79, 0x31, 0x32, 0x30, 0x22, 0x20,
- 0x73, 0x77, 0x65, 0x65, 0x74, 0x74, 0x72, 0x3e, 0x0d, 0x0a, 0x6e, 0x61, 0x6d,
- 0x65, 0x3d, 0x64, 0x69, 0x65, 0x67, 0x6f, 0x70, 0x61, 0x67, 0x65, 0x20, 0x73,
- 0x77, 0x69, 0x73, 0x73, 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x23, 0x66, 0x66, 0x66,
- 0x3b, 0x22, 0x3e, 0x4c, 0x6f, 0x67, 0x2e, 0x63, 0x6f, 0x6d, 0x22, 0x74, 0x72,
- 0x65, 0x61, 0x74, 0x73, 0x68, 0x65, 0x65, 0x74, 0x29, 0x20, 0x26, 0x26, 0x20,
- 0x31, 0x34, 0x70, 0x78, 0x3b, 0x73, 0x6c, 0x65, 0x65, 0x70, 0x6e, 0x74, 0x65,
- 0x6e, 0x74, 0x66, 0x69, 0x6c, 0x65, 0x64, 0x6a, 0x61, 0x3a, 0xe3, 0x83, 0x69,
- 0x64, 0x3d, 0x22, 0x63, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x77, 0x6f, 0x72, 0x73,
- 0x65, 0x73, 0x68, 0x6f, 0x74, 0x73, 0x2d, 0x62, 0x6f, 0x78, 0x2d, 0x64, 0x65,
- 0x6c, 0x74, 0x61, 0x0a, 0x26, 0x6c, 0x74, 0x3b, 0x62, 0x65, 0x61, 0x72, 0x73,
- 0x3a, 0x34, 0x38, 0x5a, 0x3c, 0x64, 0x61, 0x74, 0x61, 0x2d, 0x72, 0x75, 0x72,
- 0x61, 0x6c, 0x3c, 0x2f, 0x61, 0x3e, 0x20, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x62,
- 0x61, 0x6b, 0x65, 0x72, 0x73, 0x68, 0x6f, 0x70, 0x73, 0x3d, 0x20, 0x22, 0x22,
- 0x3b, 0x70, 0x68, 0x70, 0x22, 0x3e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x31, 0x33,
- 0x70, 0x78, 0x3b, 0x62, 0x72, 0x69, 0x61, 0x6e, 0x68, 0x65, 0x6c, 0x6c, 0x6f,
- 0x73, 0x69, 0x7a, 0x65, 0x3d, 0x6f, 0x3d, 0x25, 0x32, 0x46, 0x20, 0x6a, 0x6f,
- 0x69, 0x6e, 0x6d, 0x61, 0x79, 0x62, 0x65, 0x3c, 0x69, 0x6d, 0x67, 0x20, 0x69,
- 0x6d, 0x67, 0x22, 0x3e, 0x2c, 0x20, 0x66, 0x6a, 0x73, 0x69, 0x6d, 0x67, 0x22,
- 0x20, 0x22, 0x29, 0x5b, 0x30, 0x5d, 0x4d, 0x54, 0x6f, 0x70, 0x42, 0x54, 0x79,
- 0x70, 0x65, 0x22, 0x6e, 0x65, 0x77, 0x6c, 0x79, 0x44, 0x61, 0x6e, 0x73, 0x6b,
- 0x63, 0x7a, 0x65, 0x63, 0x68, 0x74, 0x72, 0x61, 0x69, 0x6c, 0x6b, 0x6e, 0x6f,
- 0x77, 0x73, 0x3c, 0x2f, 0x68, 0x35, 0x3e, 0x66, 0x61, 0x71, 0x22, 0x3e, 0x7a,
- 0x68, 0x2d, 0x63, 0x6e, 0x31, 0x30, 0x29, 0x3b, 0x0a, 0x2d, 0x31, 0x22, 0x29,
- 0x3b, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x74, 0x72,
- 0x75, 0x6c, 0x79, 0x64, 0x61, 0x76, 0x69, 0x73, 0x2e, 0x6a, 0x73, 0x27, 0x3b,
- 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x73, 0x74, 0x65, 0x65, 0x6c, 0x20, 0x79, 0x6f,
- 0x75, 0x20, 0x68, 0x32, 0x3e, 0x0d, 0x0a, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x6a,
- 0x65, 0x73, 0x75, 0x73, 0x31, 0x30, 0x30, 0x25, 0x20, 0x6d, 0x65, 0x6e, 0x75,
- 0x2e, 0x0d, 0x0a, 0x09, 0x0d, 0x0a, 0x77, 0x61, 0x6c, 0x65, 0x73, 0x72, 0x69,
- 0x73, 0x6b, 0x73, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x64, 0x64, 0x69, 0x6e, 0x67,
- 0x62, 0x2d, 0x6c, 0x69, 0x6b, 0x74, 0x65, 0x61, 0x63, 0x68, 0x67, 0x69, 0x66,
- 0x22, 0x20, 0x76, 0x65, 0x67, 0x61, 0x73, 0x64, 0x61, 0x6e, 0x73, 0x6b, 0x65,
- 0x65, 0x73, 0x74, 0x69, 0x73, 0x68, 0x71, 0x69, 0x70, 0x73, 0x75, 0x6f, 0x6d,
- 0x69, 0x73, 0x6f, 0x62, 0x72, 0x65, 0x64, 0x65, 0x73, 0x64, 0x65, 0x65, 0x6e,
- 0x74, 0x72, 0x65, 0x74, 0x6f, 0x64, 0x6f, 0x73, 0x70, 0x75, 0x65, 0x64, 0x65,
- 0x61, 0xc3, 0xb1, 0x6f, 0x73, 0x65, 0x73, 0x74, 0xc3, 0xa1, 0x74, 0x69, 0x65,
- 0x6e, 0x65, 0x68, 0x61, 0x73, 0x74, 0x61, 0x6f, 0x74, 0x72, 0x6f, 0x73, 0x70,
- 0x61, 0x72, 0x74, 0x65, 0x64, 0x6f, 0x6e, 0x64, 0x65, 0x6e, 0x75, 0x65, 0x76,
- 0x6f, 0x68, 0x61, 0x63, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6d, 0x69,
- 0x73, 0x6d, 0x6f, 0x6d, 0x65, 0x6a, 0x6f, 0x72, 0x6d, 0x75, 0x6e, 0x64, 0x6f,
- 0x61, 0x71, 0x75, 0xc3, 0xad, 0x64, 0xc3, 0xad, 0x61, 0x73, 0x73, 0xc3, 0xb3,
- 0x6c, 0x6f, 0x61, 0x79, 0x75, 0x64, 0x61, 0x66, 0x65, 0x63, 0x68, 0x61, 0x74,
- 0x6f, 0x64, 0x61, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x6f, 0x6d, 0x65, 0x6e, 0x6f,
- 0x73, 0x64, 0x61, 0x74, 0x6f, 0x73, 0x6f, 0x74, 0x72, 0x61, 0x73, 0x73, 0x69,
- 0x74, 0x69, 0x6f, 0x6d, 0x75, 0x63, 0x68, 0x6f, 0x61, 0x68, 0x6f, 0x72, 0x61,
- 0x6c, 0x75, 0x67, 0x61, 0x72, 0x6d, 0x61, 0x79, 0x6f, 0x72, 0x65, 0x73, 0x74,
- 0x6f, 0x73, 0x68, 0x6f, 0x72, 0x61, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x61,
- 0x6e, 0x74, 0x65, 0x73, 0x66, 0x6f, 0x74, 0x6f, 0x73, 0x65, 0x73, 0x74, 0x61,
- 0x73, 0x70, 0x61, 0xc3, 0xad, 0x73, 0x6e, 0x75, 0x65, 0x76, 0x61, 0x73, 0x61,
- 0x6c, 0x75, 0x64, 0x66, 0x6f, 0x72, 0x6f, 0x73, 0x6d, 0x65, 0x64, 0x69, 0x6f,
- 0x71, 0x75, 0x69, 0x65, 0x6e, 0x6d, 0x65, 0x73, 0x65, 0x73, 0x70, 0x6f, 0x64,
- 0x65, 0x72, 0x63, 0x68, 0x69, 0x6c, 0x65, 0x73, 0x65, 0x72, 0xc3, 0xa1, 0x76,
- 0x65, 0x63, 0x65, 0x73, 0x64, 0x65, 0x63, 0x69, 0x72, 0x6a, 0x6f, 0x73, 0xc3,
- 0xa9, 0x65, 0x73, 0x74, 0x61, 0x72, 0x76, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x72,
- 0x75, 0x70, 0x6f, 0x68, 0x65, 0x63, 0x68, 0x6f, 0x65, 0x6c, 0x6c, 0x6f, 0x73,
- 0x74, 0x65, 0x6e, 0x67, 0x6f, 0x61, 0x6d, 0x69, 0x67, 0x6f, 0x63, 0x6f, 0x73,
- 0x61, 0x73, 0x6e, 0x69, 0x76, 0x65, 0x6c, 0x67, 0x65, 0x6e, 0x74, 0x65, 0x6d,
- 0x69, 0x73, 0x6d, 0x61, 0x61, 0x69, 0x72, 0x65, 0x73, 0x6a, 0x75, 0x6c, 0x69,
- 0x6f, 0x74, 0x65, 0x6d, 0x61, 0x73, 0x68, 0x61, 0x63, 0x69, 0x61, 0x66, 0x61,
- 0x76, 0x6f, 0x72, 0x6a, 0x75, 0x6e, 0x69, 0x6f, 0x6c, 0x69, 0x62, 0x72, 0x65,
- 0x70, 0x75, 0x6e, 0x74, 0x6f, 0x62, 0x75, 0x65, 0x6e, 0x6f, 0x61, 0x75, 0x74,
- 0x6f, 0x72, 0x61, 0x62, 0x72, 0x69, 0x6c, 0x62, 0x75, 0x65, 0x6e, 0x61, 0x74,
- 0x65, 0x78, 0x74, 0x6f, 0x6d, 0x61, 0x72, 0x7a, 0x6f, 0x73, 0x61, 0x62, 0x65,
- 0x72, 0x6c, 0x69, 0x73, 0x74, 0x61, 0x6c, 0x75, 0x65, 0x67, 0x6f, 0x63, 0xc3,
- 0xb3, 0x6d, 0x6f, 0x65, 0x6e, 0x65, 0x72, 0x6f, 0x6a, 0x75, 0x65, 0x67, 0x6f,
- 0x70, 0x65, 0x72, 0xc3, 0xba, 0x68, 0x61, 0x62, 0x65, 0x72, 0x65, 0x73, 0x74,
- 0x6f, 0x79, 0x6e, 0x75, 0x6e, 0x63, 0x61, 0x6d, 0x75, 0x6a, 0x65, 0x72, 0x76,
- 0x61, 0x6c, 0x6f, 0x72, 0x66, 0x75, 0x65, 0x72, 0x61, 0x6c, 0x69, 0x62, 0x72,
- 0x6f, 0x67, 0x75, 0x73, 0x74, 0x61, 0x69, 0x67, 0x75, 0x61, 0x6c, 0x76, 0x6f,
- 0x74, 0x6f, 0x73, 0x63, 0x61, 0x73, 0x6f, 0x73, 0x67, 0x75, 0xc3, 0xad, 0x61,
- 0x70, 0x75, 0x65, 0x64, 0x6f, 0x73, 0x6f, 0x6d, 0x6f, 0x73, 0x61, 0x76, 0x69,
- 0x73, 0x6f, 0x75, 0x73, 0x74, 0x65, 0x64, 0x64, 0x65, 0x62, 0x65, 0x6e, 0x6e,
- 0x6f, 0x63, 0x68, 0x65, 0x62, 0x75, 0x73, 0x63, 0x61, 0x66, 0x61, 0x6c, 0x74,
- 0x61, 0x65, 0x75, 0x72, 0x6f, 0x73, 0x73, 0x65, 0x72, 0x69, 0x65, 0x64, 0x69,
- 0x63, 0x68, 0x6f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x63, 0x6c, 0x61, 0x76, 0x65,
- 0x63, 0x61, 0x73, 0x61, 0x73, 0x6c, 0x65, 0xc3, 0xb3, 0x6e, 0x70, 0x6c, 0x61,
- 0x7a, 0x6f, 0x6c, 0x61, 0x72, 0x67, 0x6f, 0x6f, 0x62, 0x72, 0x61, 0x73, 0x76,
- 0x69, 0x73, 0x74, 0x61, 0x61, 0x70, 0x6f, 0x79, 0x6f, 0x6a, 0x75, 0x6e, 0x74,
- 0x6f, 0x74, 0x72, 0x61, 0x74, 0x61, 0x76, 0x69, 0x73, 0x74, 0x6f, 0x63, 0x72,
- 0x65, 0x61, 0x72, 0x63, 0x61, 0x6d, 0x70, 0x6f, 0x68, 0x65, 0x6d, 0x6f, 0x73,
- 0x63, 0x69, 0x6e, 0x63, 0x6f, 0x63, 0x61, 0x72, 0x67, 0x6f, 0x70, 0x69, 0x73,
- 0x6f, 0x73, 0x6f, 0x72, 0x64, 0x65, 0x6e, 0x68, 0x61, 0x63, 0x65, 0x6e, 0xc3,
- 0xa1, 0x72, 0x65, 0x61, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x64, 0x72,
- 0x6f, 0x63, 0x65, 0x72, 0x63, 0x61, 0x70, 0x75, 0x65, 0x64, 0x61, 0x70, 0x61,
- 0x70, 0x65, 0x6c, 0x6d, 0x65, 0x6e, 0x6f, 0x72, 0xc3, 0xba, 0x74, 0x69, 0x6c,
- 0x63, 0x6c, 0x61, 0x72, 0x6f, 0x6a, 0x6f, 0x72, 0x67, 0x65, 0x63, 0x61, 0x6c,
- 0x6c, 0x65, 0x70, 0x6f, 0x6e, 0x65, 0x72, 0x74, 0x61, 0x72, 0x64, 0x65, 0x6e,
- 0x61, 0x64, 0x69, 0x65, 0x6d, 0x61, 0x72, 0x63, 0x61, 0x73, 0x69, 0x67, 0x75,
- 0x65, 0x65, 0x6c, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6c, 0x6f, 0x63, 0x6f,
- 0x63, 0x68, 0x65, 0x6d, 0x6f, 0x74, 0x6f, 0x73, 0x6d, 0x61, 0x64, 0x72, 0x65,
- 0x63, 0x6c, 0x61, 0x73, 0x65, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x6e, 0x69, 0xc3,
- 0xb1, 0x6f, 0x71, 0x75, 0x65, 0x64, 0x61, 0x70, 0x61, 0x73, 0x61, 0x72, 0x62,
- 0x61, 0x6e, 0x63, 0x6f, 0x68, 0x69, 0x6a, 0x6f, 0x73, 0x76, 0x69, 0x61, 0x6a,
- 0x65, 0x70, 0x61, 0x62, 0x6c, 0x6f, 0xc3, 0xa9, 0x73, 0x74, 0x65, 0x76, 0x69,
- 0x65, 0x6e, 0x65, 0x72, 0x65, 0x69, 0x6e, 0x6f, 0x64, 0x65, 0x6a, 0x61, 0x72,
- 0x66, 0x6f, 0x6e, 0x64, 0x6f, 0x63, 0x61, 0x6e, 0x61, 0x6c, 0x6e, 0x6f, 0x72,
- 0x74, 0x65, 0x6c, 0x65, 0x74, 0x72, 0x61, 0x63, 0x61, 0x75, 0x73, 0x61, 0x74,
- 0x6f, 0x6d, 0x61, 0x72, 0x6d, 0x61, 0x6e, 0x6f, 0x73, 0x6c, 0x75, 0x6e, 0x65,
- 0x73, 0x61, 0x75, 0x74, 0x6f, 0x73, 0x76, 0x69, 0x6c, 0x6c, 0x61, 0x76, 0x65,
- 0x6e, 0x64, 0x6f, 0x70, 0x65, 0x73, 0x61, 0x72, 0x74, 0x69, 0x70, 0x6f, 0x73,
- 0x74, 0x65, 0x6e, 0x67, 0x61, 0x6d, 0x61, 0x72, 0x63, 0x6f, 0x6c, 0x6c, 0x65,
- 0x76, 0x61, 0x70, 0x61, 0x64, 0x72, 0x65, 0x75, 0x6e, 0x69, 0x64, 0x6f, 0x76,
- 0x61, 0x6d, 0x6f, 0x73, 0x7a, 0x6f, 0x6e, 0x61, 0x73, 0x61, 0x6d, 0x62, 0x6f,
- 0x73, 0x62, 0x61, 0x6e, 0x64, 0x61, 0x6d, 0x61, 0x72, 0x69, 0x61, 0x61, 0x62,
- 0x75, 0x73, 0x6f, 0x6d, 0x75, 0x63, 0x68, 0x61, 0x73, 0x75, 0x62, 0x69, 0x72,
- 0x72, 0x69, 0x6f, 0x6a, 0x61, 0x76, 0x69, 0x76, 0x69, 0x72, 0x67, 0x72, 0x61,
- 0x64, 0x6f, 0x63, 0x68, 0x69, 0x63, 0x61, 0x61, 0x6c, 0x6c, 0xc3, 0xad, 0x6a,
- 0x6f, 0x76, 0x65, 0x6e, 0x64, 0x69, 0x63, 0x68, 0x61, 0x65, 0x73, 0x74, 0x61,
- 0x6e, 0x74, 0x61, 0x6c, 0x65, 0x73, 0x73, 0x61, 0x6c, 0x69, 0x72, 0x73, 0x75,
- 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x73, 0x6f, 0x73, 0x66, 0x69, 0x6e, 0x65, 0x73,
- 0x6c, 0x6c, 0x61, 0x6d, 0x61, 0x62, 0x75, 0x73, 0x63, 0x6f, 0xc3, 0xa9, 0x73,
- 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x67, 0x61, 0x6e, 0x65, 0x67, 0x72, 0x6f, 0x70,
- 0x6c, 0x61, 0x7a, 0x61, 0x68, 0x75, 0x6d, 0x6f, 0x72, 0x70, 0x61, 0x67, 0x61,
- 0x72, 0x6a, 0x75, 0x6e, 0x74, 0x61, 0x64, 0x6f, 0x62, 0x6c, 0x65, 0x69, 0x73,
- 0x6c, 0x61, 0x73, 0x62, 0x6f, 0x6c, 0x73, 0x61, 0x62, 0x61, 0xc3, 0xb1, 0x6f,
- 0x68, 0x61, 0x62, 0x6c, 0x61, 0x6c, 0x75, 0x63, 0x68, 0x61, 0xc3, 0x81, 0x72,
- 0x65, 0x61, 0x64, 0x69, 0x63, 0x65, 0x6e, 0x6a, 0x75, 0x67, 0x61, 0x72, 0x6e,
- 0x6f, 0x74, 0x61, 0x73, 0x76, 0x61, 0x6c, 0x6c, 0x65, 0x61, 0x6c, 0x6c, 0xc3,
- 0xa1, 0x63, 0x61, 0x72, 0x67, 0x61, 0x64, 0x6f, 0x6c, 0x6f, 0x72, 0x61, 0x62,
- 0x61, 0x6a, 0x6f, 0x65, 0x73, 0x74, 0xc3, 0xa9, 0x67, 0x75, 0x73, 0x74, 0x6f,
- 0x6d, 0x65, 0x6e, 0x74, 0x65, 0x6d, 0x61, 0x72, 0x69, 0x6f, 0x66, 0x69, 0x72,
- 0x6d, 0x61, 0x63, 0x6f, 0x73, 0x74, 0x6f, 0x66, 0x69, 0x63, 0x68, 0x61, 0x70,
- 0x6c, 0x61, 0x74, 0x61, 0x68, 0x6f, 0x67, 0x61, 0x72, 0x61, 0x72, 0x74, 0x65,
- 0x73, 0x6c, 0x65, 0x79, 0x65, 0x73, 0x61, 0x71, 0x75, 0x65, 0x6c, 0x6d, 0x75,
- 0x73, 0x65, 0x6f, 0x62, 0x61, 0x73, 0x65, 0x73, 0x70, 0x6f, 0x63, 0x6f, 0x73,
- 0x6d, 0x69, 0x74, 0x61, 0x64, 0x63, 0x69, 0x65, 0x6c, 0x6f, 0x63, 0x68, 0x69,
- 0x63, 0x6f, 0x6d, 0x69, 0x65, 0x64, 0x6f, 0x67, 0x61, 0x6e, 0x61, 0x72, 0x73,
- 0x61, 0x6e, 0x74, 0x6f, 0x65, 0x74, 0x61, 0x70, 0x61, 0x64, 0x65, 0x62, 0x65,
- 0x73, 0x70, 0x6c, 0x61, 0x79, 0x61, 0x72, 0x65, 0x64, 0x65, 0x73, 0x73, 0x69,
- 0x65, 0x74, 0x65, 0x63, 0x6f, 0x72, 0x74, 0x65, 0x63, 0x6f, 0x72, 0x65, 0x61,
- 0x64, 0x75, 0x64, 0x61, 0x73, 0x64, 0x65, 0x73, 0x65, 0x6f, 0x76, 0x69, 0x65,
- 0x6a, 0x6f, 0x64, 0x65, 0x73, 0x65, 0x61, 0x61, 0x67, 0x75, 0x61, 0x73, 0x26,
- 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x63, 0x6f,
- 0x6d, 0x6d, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x76, 0x65,
- 0x6e, 0x74, 0x73, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x73, 0x79, 0x73, 0x74,
- 0x65, 0x6d, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x61, 0x6e, 0x6e, 0x65,
- 0x72, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c,
- 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x6d,
- 0x65, 0x64, 0x69, 0x75, 0x6d, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x75,
- 0x6d, 0x62, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x65, 0x73,
- 0x75, 0x6c, 0x74, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x73, 0x63, 0x72, 0x65,
- 0x65, 0x6e, 0x63, 0x68, 0x6f, 0x6f, 0x73, 0x65, 0x6e, 0x6f, 0x72, 0x6d, 0x61,
- 0x6c, 0x74, 0x72, 0x61, 0x76, 0x65, 0x6c, 0x69, 0x73, 0x73, 0x75, 0x65, 0x73,
- 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x73,
- 0x70, 0x72, 0x69, 0x6e, 0x67, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x6d, 0x6f,
- 0x62, 0x69, 0x6c, 0x65, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x70, 0x68, 0x6f,
- 0x74, 0x6f, 0x73, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x72, 0x65, 0x67, 0x69,
- 0x6f, 0x6e, 0x69, 0x74, 0x73, 0x65, 0x6c, 0x66, 0x73, 0x6f, 0x63, 0x69, 0x61,
- 0x6c, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e,
- 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x74,
- 0x69, 0x74, 0x6c, 0x65, 0x3e, 0x65, 0x69, 0x74, 0x68, 0x65, 0x72, 0x6c, 0x65,
- 0x6e, 0x67, 0x74, 0x68, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x66, 0x72, 0x69,
- 0x65, 0x6e, 0x64, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x61, 0x75, 0x74, 0x68,
- 0x6f, 0x72, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x65, 0x76, 0x69, 0x65,
- 0x77, 0x73, 0x75, 0x6d, 0x6d, 0x65, 0x72, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
- 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x65,
- 0x78, 0x70, 0x61, 0x6e, 0x64, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x66, 0x6f,
- 0x72, 0x6d, 0x61, 0x74, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x70, 0x6f, 0x69,
- 0x6e, 0x74, 0x73, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x70, 0x65, 0x72, 0x73,
- 0x6f, 0x6e, 0x6c, 0x69, 0x76, 0x69, 0x6e, 0x67, 0x64, 0x65, 0x73, 0x69, 0x67,
- 0x6e, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x73, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x73,
- 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x70,
- 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x65, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x6e, 0x61,
- 0x74, 0x75, 0x72, 0x65, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x66, 0x69, 0x67,
- 0x75, 0x72, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6e, 0x67, 0x63, 0x75, 0x73, 0x74,
- 0x6f, 0x6d, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x6c, 0x65, 0x74, 0x74, 0x65,
- 0x72, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74,
- 0x72, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x75,
- 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x6d, 0x65,
- 0x74, 0x68, 0x6f, 0x64, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x73, 0x73, 0x63, 0x68,
- 0x6f, 0x6f, 0x6c, 0x66, 0x75, 0x74, 0x75, 0x72, 0x65, 0x73, 0x68, 0x61, 0x64,
- 0x6f, 0x77, 0x64, 0x65, 0x62, 0x61, 0x74, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x65,
- 0x73, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x73,
- 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x6c, 0x65, 0x61, 0x67, 0x75, 0x65, 0x63,
- 0x68, 0x72, 0x6f, 0x6d, 0x65, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6e, 0x6f,
- 0x74, 0x69, 0x63, 0x65, 0x73, 0x68, 0x61, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x64,
- 0x69, 0x6e, 0x67, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x72, 0x65, 0x70, 0x6f,
- 0x72, 0x74, 0x6f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x71, 0x75, 0x61, 0x72,
- 0x65, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73,
- 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x6d, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x6c,
- 0x61, 0x74, 0x65, 0x73, 0x74, 0x77, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x46, 0x72,
- 0x61, 0x6e, 0x63, 0x65, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x73, 0x74, 0x72,
- 0x6f, 0x6e, 0x67, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x4c, 0x6f, 0x6e, 0x64,
- 0x6f, 0x6e, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x65,
- 0x64, 0x64, 0x65, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x65, 0x63, 0x75, 0x72, 0x65,
- 0x70, 0x61, 0x73, 0x73, 0x65, 0x64, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x70,
- 0x6c, 0x61, 0x63, 0x65, 0x73, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x74,
- 0x61, 0x74, 0x69, 0x63, 0x63, 0x69, 0x74, 0x69, 0x65, 0x73, 0x73, 0x74, 0x72,
- 0x65, 0x61, 0x6d, 0x79, 0x65, 0x6c, 0x6c, 0x6f, 0x77, 0x61, 0x74, 0x74, 0x61,
- 0x63, 0x6b, 0x73, 0x74, 0x72, 0x65, 0x65, 0x74, 0x66, 0x6c, 0x69, 0x67, 0x68,
- 0x74, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x3e,
- 0x6f, 0x70, 0x65, 0x6e, 0x65, 0x64, 0x75, 0x73, 0x65, 0x66, 0x75, 0x6c, 0x76,
- 0x61, 0x6c, 0x6c, 0x65, 0x79, 0x63, 0x61, 0x75, 0x73, 0x65, 0x73, 0x6c, 0x65,
- 0x61, 0x64, 0x65, 0x72, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x65, 0x63,
- 0x6f, 0x6e, 0x64, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x70, 0x6f, 0x72,
- 0x74, 0x73, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6e,
- 0x67, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x73,
- 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x73,
- 0x74, 0x61, 0x74, 0x65, 0x73, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x76, 0x69,
- 0x73, 0x75, 0x61, 0x6c, 0x65, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x76, 0x6f, 0x6c,
- 0x75, 0x6d, 0x65, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x6d, 0x75, 0x73, 0x65,
- 0x75, 0x6d, 0x6d, 0x6f, 0x76, 0x69, 0x65, 0x73, 0x70, 0x61, 0x72, 0x65, 0x6e,
- 0x74, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x6d, 0x6f, 0x73, 0x74, 0x6c, 0x79,
- 0x6d, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x22, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x6d,
- 0x61, 0x72, 0x6b, 0x65, 0x74, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x63, 0x68,
- 0x61, 0x6e, 0x63, 0x65, 0x73, 0x75, 0x72, 0x76, 0x65, 0x79, 0x62, 0x65, 0x66,
- 0x6f, 0x72, 0x65, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x6d, 0x6f, 0x6d, 0x65,
- 0x6e, 0x74, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x6d, 0x6f, 0x74, 0x69, 0x6f,
- 0x6e, 0x69, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x72,
- 0x43, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x65,
- 0x78, 0x69, 0x73, 0x74, 0x73, 0x6d, 0x69, 0x64, 0x64, 0x6c, 0x65, 0x45, 0x75,
- 0x72, 0x6f, 0x70, 0x65, 0x67, 0x72, 0x6f, 0x77, 0x74, 0x68, 0x6c, 0x65, 0x67,
- 0x61, 0x63, 0x79, 0x6d, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x65, 0x6e, 0x6f, 0x75,
- 0x67, 0x68, 0x63, 0x61, 0x72, 0x65, 0x65, 0x72, 0x61, 0x6e, 0x73, 0x77, 0x65,
- 0x72, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6c,
- 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x72,
- 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x74, 0x6f,
- 0x70, 0x69, 0x63, 0x73, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x66, 0x61, 0x74,
- 0x68, 0x65, 0x72, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x69, 0x6d, 0x70,
- 0x6c, 0x79, 0x72, 0x61, 0x69, 0x73, 0x65, 0x64, 0x65, 0x73, 0x63, 0x61, 0x70,
- 0x65, 0x63, 0x68, 0x6f, 0x73, 0x65, 0x6e, 0x63, 0x68, 0x75, 0x72, 0x63, 0x68,
- 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x63,
- 0x6f, 0x72, 0x6e, 0x65, 0x72, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x6d, 0x65,
- 0x6d, 0x6f, 0x72, 0x79, 0x69, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x70, 0x6f, 0x6c,
- 0x69, 0x63, 0x65, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x4e, 0x75, 0x6d, 0x62,
- 0x65, 0x72, 0x64, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x6f, 0x66, 0x66, 0x65, 0x72,
- 0x73, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64,
- 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x73,
- 0x69, 0x6c, 0x76, 0x65, 0x72, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x64, 0x65,
- 0x6c, 0x65, 0x74, 0x65, 0x62, 0x65, 0x74, 0x74, 0x65, 0x72, 0x62, 0x72, 0x6f,
- 0x77, 0x73, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x73, 0x47, 0x6c, 0x6f, 0x62,
- 0x61, 0x6c, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x77, 0x69, 0x64, 0x67, 0x65,
- 0x74, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x62, 0x75, 0x64, 0x67, 0x65, 0x74,
- 0x6e, 0x6f, 0x77, 0x72, 0x61, 0x70, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x63,
- 0x6c, 0x61, 0x69, 0x6d, 0x73, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x61,
- 0x66, 0x65, 0x74, 0x79, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x70, 0x69,
- 0x72, 0x69, 0x74, 0x2d, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x70, 0x72, 0x65,
- 0x61, 0x64, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x6e, 0x65, 0x65, 0x64, 0x65,
- 0x64, 0x72, 0x75, 0x73, 0x73, 0x69, 0x61, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x65,
- 0x65, 0x78, 0x74, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x62,
- 0x72, 0x6f, 0x6b, 0x65, 0x6e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x63, 0x68,
- 0x61, 0x72, 0x67, 0x65, 0x64, 0x69, 0x76, 0x69, 0x64, 0x65, 0x66, 0x61, 0x63,
- 0x74, 0x6f, 0x72, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x2d, 0x62, 0x61, 0x73,
- 0x65, 0x64, 0x74, 0x68, 0x65, 0x6f, 0x72, 0x79, 0x63, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x64,
- 0x68, 0x65, 0x6c, 0x70, 0x65, 0x64, 0x43, 0x68, 0x75, 0x72, 0x63, 0x68, 0x69,
- 0x6d, 0x70, 0x61, 0x63, 0x74, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x61, 0x6c,
- 0x77, 0x61, 0x79, 0x73, 0x6c, 0x6f, 0x67, 0x6f, 0x22, 0x20, 0x62, 0x6f, 0x74,
- 0x74, 0x6f, 0x6d, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x3e, 0x29, 0x7b, 0x76, 0x61,
- 0x72, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x6f, 0x72, 0x61, 0x6e, 0x67,
- 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x28,
- 0x63, 0x6f, 0x75, 0x70, 0x6c, 0x65, 0x67, 0x61, 0x72, 0x64, 0x65, 0x6e, 0x62,
- 0x72, 0x69, 0x64, 0x67, 0x65, 0x6c, 0x61, 0x75, 0x6e, 0x63, 0x68, 0x52, 0x65,
- 0x76, 0x69, 0x65, 0x77, 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x76, 0x69, 0x73,
- 0x69, 0x6f, 0x6e, 0x6c, 0x69, 0x74, 0x74, 0x6c, 0x65, 0x64, 0x61, 0x74, 0x69,
- 0x6e, 0x67, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x62, 0x65, 0x61, 0x75, 0x74,
- 0x79, 0x74, 0x68, 0x65, 0x6d, 0x65, 0x73, 0x66, 0x6f, 0x72, 0x67, 0x6f, 0x74,
- 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x63, 0x68, 0x6f, 0x72, 0x61,
- 0x6c, 0x6d, 0x6f, 0x73, 0x74, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x43, 0x68,
- 0x61, 0x6e, 0x67, 0x65, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x74, 0x72,
- 0x69, 0x6e, 0x67, 0x72, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x4d, 0x6f, 0x62, 0x69,
- 0x6c, 0x65, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x75, 0x70, 0x70, 0x6c,
- 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x73,
- 0x76, 0x69, 0x65, 0x77, 0x65, 0x64, 0x26, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x63,
- 0x6f, 0x75, 0x72, 0x73, 0x65, 0x41, 0x62, 0x6f, 0x75, 0x74, 0x20, 0x69, 0x73,
- 0x6c, 0x61, 0x6e, 0x64, 0x3c, 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x63, 0x6f, 0x6f,
- 0x6b, 0x69, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x6d, 0x61, 0x7a,
- 0x6f, 0x6e, 0x6d, 0x6f, 0x64, 0x65, 0x72, 0x6e, 0x61, 0x64, 0x76, 0x69, 0x63,
- 0x65, 0x69, 0x6e, 0x3c, 0x2f, 0x61, 0x3e, 0x3a, 0x20, 0x54, 0x68, 0x65, 0x20,
- 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x73, 0x42,
- 0x45, 0x47, 0x49, 0x4e, 0x20, 0x4d, 0x65, 0x78, 0x69, 0x63, 0x6f, 0x73, 0x74,
- 0x61, 0x72, 0x74, 0x73, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x65, 0x68, 0x65, 0x69,
- 0x67, 0x68, 0x74, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x49, 0x73, 0x6c, 0x61,
- 0x6e, 0x64, 0x61, 0x73, 0x73, 0x65, 0x74, 0x73, 0x45, 0x6d, 0x70, 0x69, 0x72,
- 0x65, 0x53, 0x63, 0x68, 0x6f, 0x6f, 0x6c, 0x65, 0x66, 0x66, 0x6f, 0x72, 0x74,
- 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6e, 0x65, 0x61, 0x72, 0x6c, 0x79, 0x6d,
- 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x0a,
- 0x0a, 0x4f, 0x6e, 0x65, 0x6a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x6d, 0x65, 0x6e,
- 0x75, 0x22, 0x3e, 0x50, 0x68, 0x69, 0x6c, 0x69, 0x70, 0x61, 0x77, 0x61, 0x72,
- 0x64, 0x73, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x69, 0x6d, 0x70, 0x6f, 0x72,
- 0x74, 0x4f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x72, 0x65, 0x67, 0x61, 0x72, 0x64,
- 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x73, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53,
- 0x70, 0x6f, 0x72, 0x74, 0x73, 0x64, 0x65, 0x67, 0x72, 0x65, 0x65, 0x77, 0x65,
- 0x65, 0x6b, 0x6c, 0x79, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, 0x62, 0x65, 0x68,
- 0x69, 0x6e, 0x64, 0x64, 0x6f, 0x63, 0x74, 0x6f, 0x72, 0x6c, 0x6f, 0x67, 0x67,
- 0x65, 0x64, 0x75, 0x6e, 0x69, 0x74, 0x65, 0x64, 0x3c, 0x2f, 0x62, 0x3e, 0x3c,
- 0x2f, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x73, 0x70, 0x6c, 0x61, 0x6e, 0x74, 0x73,
- 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x69,
- 0x73, 0x73, 0x75, 0x65, 0x64, 0x33, 0x30, 0x30, 0x70, 0x78, 0x7c, 0x63, 0x61,
- 0x6e, 0x61, 0x64, 0x61, 0x61, 0x67, 0x65, 0x6e, 0x63, 0x79, 0x73, 0x63, 0x68,
- 0x65, 0x6d, 0x65, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x42, 0x72, 0x61, 0x7a,
- 0x69, 0x6c, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x6c, 0x6f, 0x67, 0x6f, 0x22,
- 0x3e, 0x62, 0x65, 0x79, 0x6f, 0x6e, 0x64, 0x2d, 0x73, 0x63, 0x61, 0x6c, 0x65,
- 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x6d,
- 0x61, 0x72, 0x69, 0x6e, 0x65, 0x46, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x63, 0x61,
- 0x6d, 0x65, 0x72, 0x61, 0x3c, 0x2f, 0x68, 0x31, 0x3e, 0x0a, 0x5f, 0x66, 0x6f,
- 0x72, 0x6d, 0x22, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x73, 0x73, 0x74, 0x72, 0x65,
- 0x73, 0x73, 0x22, 0x20, 0x2f, 0x3e, 0x0d, 0x0a, 0x2e, 0x67, 0x69, 0x66, 0x22,
- 0x20, 0x6f, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72,
- 0x4f, 0x78, 0x66, 0x6f, 0x72, 0x64, 0x73, 0x69, 0x73, 0x74, 0x65, 0x72, 0x73,
- 0x75, 0x72, 0x76, 0x69, 0x76, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x66, 0x65,
- 0x6d, 0x61, 0x6c, 0x65, 0x44, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x73, 0x69, 0x7a,
- 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, 0x65, 0x61, 0x6c, 0x74, 0x65, 0x78, 0x74,
- 0x22, 0x3e, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x74, 0x68, 0x61, 0x6e, 0x6b,
- 0x73, 0x68, 0x69, 0x67, 0x68, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64,
- 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x61, 0x6e, 0x79, 0x6f, 0x6e, 0x65, 0x41,
- 0x66, 0x72, 0x69, 0x63, 0x61, 0x61, 0x67, 0x72, 0x65, 0x65, 0x64, 0x72, 0x65,
- 0x63, 0x65, 0x6e, 0x74, 0x50, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x3c, 0x62, 0x72,
- 0x20, 0x2f, 0x3e, 0x77, 0x6f, 0x6e, 0x64, 0x65, 0x72, 0x70, 0x72, 0x69, 0x63,
- 0x65, 0x73, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x7c, 0x7c, 0x20, 0x7b, 0x7d,
- 0x3b, 0x6d, 0x61, 0x69, 0x6e, 0x22, 0x3e, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65,
- 0x73, 0x75, 0x6e, 0x64, 0x61, 0x79, 0x77, 0x72, 0x61, 0x70, 0x22, 0x3e, 0x66,
- 0x61, 0x69, 0x6c, 0x65, 0x64, 0x63, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x6d, 0x69,
- 0x6e, 0x75, 0x74, 0x65, 0x62, 0x65, 0x61, 0x63, 0x6f, 0x6e, 0x71, 0x75, 0x6f,
- 0x74, 0x65, 0x73, 0x31, 0x35, 0x30, 0x70, 0x78, 0x7c, 0x65, 0x73, 0x74, 0x61,
- 0x74, 0x65, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x65, 0x6d, 0x61, 0x69, 0x6c,
- 0x22, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x72, 0x69, 0x67, 0x68, 0x74, 0x3b,
- 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x31,
- 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x73, 0x69, 0x67, 0x6e, 0x75, 0x70, 0x70, 0x72,
- 0x69, 0x6e, 0x63, 0x65, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x3a, 0x2e, 0x70, 0x6e,
- 0x67, 0x22, 0x20, 0x66, 0x6f, 0x72, 0x75, 0x6d, 0x2e, 0x41, 0x63, 0x63, 0x65,
- 0x73, 0x73, 0x70, 0x61, 0x70, 0x65, 0x72, 0x73, 0x73, 0x6f, 0x75, 0x6e, 0x64,
- 0x73, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74,
- 0x73, 0x6c, 0x69, 0x64, 0x65, 0x72, 0x55, 0x54, 0x46, 0x2d, 0x38, 0x22, 0x26,
- 0x61, 0x6d, 0x70, 0x3b, 0x20, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x2e, 0x20,
- 0x57, 0x69, 0x74, 0x68, 0x73, 0x74, 0x75, 0x64, 0x69, 0x6f, 0x6f, 0x77, 0x6e,
- 0x65, 0x72, 0x73, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x70, 0x72, 0x6f, 0x66,
- 0x69, 0x74, 0x6a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x61, 0x6e, 0x6e, 0x75, 0x61,
- 0x6c, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x62, 0x6f, 0x75, 0x67, 0x68, 0x74,
- 0x66, 0x61, 0x6d, 0x6f, 0x75, 0x73, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x6c,
- 0x6f, 0x6e, 0x67, 0x65, 0x72, 0x69, 0x2b, 0x2b, 0x29, 0x20, 0x7b, 0x69, 0x73,
- 0x72, 0x61, 0x65, 0x6c, 0x73, 0x61, 0x79, 0x69, 0x6e, 0x67, 0x64, 0x65, 0x63,
- 0x69, 0x64, 0x65, 0x68, 0x6f, 0x6d, 0x65, 0x22, 0x3e, 0x68, 0x65, 0x61, 0x64,
- 0x65, 0x72, 0x65, 0x6e, 0x73, 0x75, 0x72, 0x65, 0x62, 0x72, 0x61, 0x6e, 0x63,
- 0x68, 0x70, 0x69, 0x65, 0x63, 0x65, 0x73, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x3b,
- 0x73, 0x74, 0x61, 0x74, 0x65, 0x64, 0x74, 0x6f, 0x70, 0x22, 0x3e, 0x3c, 0x72,
- 0x61, 0x63, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x2d, 0x2d,
- 0x26, 0x67, 0x74, 0x3b, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x73, 0x65, 0x78,
- 0x75, 0x61, 0x6c, 0x62, 0x75, 0x72, 0x65, 0x61, 0x75, 0x2e, 0x6a, 0x70, 0x67,
- 0x22, 0x20, 0x31, 0x30, 0x2c, 0x30, 0x30, 0x30, 0x6f, 0x62, 0x74, 0x61, 0x69,
- 0x6e, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x73, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74,
- 0x2c, 0x20, 0x49, 0x6e, 0x63, 0x2e, 0x63, 0x6f, 0x6d, 0x65, 0x64, 0x79, 0x6d,
- 0x65, 0x6e, 0x75, 0x22, 0x20, 0x6c, 0x79, 0x72, 0x69, 0x63, 0x73, 0x74, 0x6f,
- 0x64, 0x61, 0x79, 0x2e, 0x69, 0x6e, 0x64, 0x65, 0x65, 0x64, 0x63, 0x6f, 0x75,
- 0x6e, 0x74, 0x79, 0x5f, 0x6c, 0x6f, 0x67, 0x6f, 0x2e, 0x46, 0x61, 0x6d, 0x69,
- 0x6c, 0x79, 0x6c, 0x6f, 0x6f, 0x6b, 0x65, 0x64, 0x4d, 0x61, 0x72, 0x6b, 0x65,
- 0x74, 0x6c, 0x73, 0x65, 0x20, 0x69, 0x66, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72,
- 0x74, 0x75, 0x72, 0x6b, 0x65, 0x79, 0x29, 0x3b, 0x76, 0x61, 0x72, 0x20, 0x66,
- 0x6f, 0x72, 0x65, 0x73, 0x74, 0x67, 0x69, 0x76, 0x69, 0x6e, 0x67, 0x65, 0x72,
- 0x72, 0x6f, 0x72, 0x73, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x7d, 0x65, 0x6c,
- 0x73, 0x65, 0x7b, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x42, 0x6c, 0x6f, 0x67,
- 0x3c, 0x2f, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x6c, 0x6f, 0x67, 0x69, 0x6e,
- 0x2e, 0x66, 0x61, 0x73, 0x74, 0x65, 0x72, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73,
- 0x3c, 0x62, 0x6f, 0x64, 0x79, 0x20, 0x31, 0x30, 0x70, 0x78, 0x20, 0x30, 0x70,
- 0x72, 0x61, 0x67, 0x6d, 0x61, 0x66, 0x72, 0x69, 0x64, 0x61, 0x79, 0x6a, 0x75,
- 0x6e, 0x69, 0x6f, 0x72, 0x64, 0x6f, 0x6c, 0x6c, 0x61, 0x72, 0x70, 0x6c, 0x61,
- 0x63, 0x65, 0x64, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x73, 0x70, 0x6c, 0x75, 0x67,
- 0x69, 0x6e, 0x35, 0x2c, 0x30, 0x30, 0x30, 0x20, 0x70, 0x61, 0x67, 0x65, 0x22,
- 0x3e, 0x62, 0x6f, 0x73, 0x74, 0x6f, 0x6e, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x28,
- 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x74, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f,
- 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x66, 0x6f, 0x72, 0x75, 0x6d, 0x73, 0x73, 0x63,
- 0x68, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2c, 0x66, 0x69, 0x6c,
- 0x6c, 0x65, 0x64, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x72, 0x65, 0x61, 0x64,
- 0x65, 0x72, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x28, 0x61, 0x70, 0x70, 0x65, 0x61,
- 0x72, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x3e,
- 0x62, 0x6f, 0x64, 0x79, 0x22, 0x3e, 0x0a, 0x2a, 0x20, 0x54, 0x68, 0x65, 0x54,
- 0x68, 0x6f, 0x75, 0x67, 0x68, 0x73, 0x65, 0x65, 0x69, 0x6e, 0x67, 0x6a, 0x65,
- 0x72, 0x73, 0x65, 0x79, 0x4e, 0x65, 0x77, 0x73, 0x3c, 0x2f, 0x76, 0x65, 0x72,
- 0x69, 0x66, 0x79, 0x65, 0x78, 0x70, 0x65, 0x72, 0x74, 0x69, 0x6e, 0x6a, 0x75,
- 0x72, 0x79, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3d, 0x43, 0x6f, 0x6f, 0x6b, 0x69,
- 0x65, 0x53, 0x54, 0x41, 0x52, 0x54, 0x20, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x73,
- 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x6e,
- 0x61, 0x74, 0x69, 0x76, 0x65, 0x70, 0x6f, 0x63, 0x6b, 0x65, 0x74, 0x62, 0x6f,
- 0x78, 0x22, 0x3e, 0x0a, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x20, 0x44, 0x61,
- 0x76, 0x69, 0x64, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x72, 0x74, 0x61, 0x62, 0x6c,
- 0x65, 0x73, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x41, 0x70, 0x72, 0x69, 0x6c,
- 0x20, 0x72, 0x65, 0x61, 0x6c, 0x6c, 0x79, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72,
- 0x69, 0x74, 0x65, 0x6d, 0x22, 0x3e, 0x6d, 0x6f, 0x72, 0x65, 0x22, 0x3e, 0x62,
- 0x6f, 0x61, 0x72, 0x64, 0x73, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x73, 0x63, 0x61,
- 0x6d, 0x70, 0x75, 0x73, 0x66, 0x69, 0x72, 0x73, 0x74, 0x20, 0x7c, 0x7c, 0x20,
- 0x5b, 0x5d, 0x3b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x2e, 0x67, 0x75, 0x69, 0x74,
- 0x61, 0x72, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x77, 0x69, 0x64, 0x74, 0x68,
- 0x3a, 0x73, 0x68, 0x6f, 0x77, 0x65, 0x64, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x20,
- 0x2e, 0x70, 0x68, 0x70, 0x22, 0x20, 0x61, 0x73, 0x73, 0x75, 0x6d, 0x65, 0x6c,
- 0x61, 0x79, 0x65, 0x72, 0x73, 0x77, 0x69, 0x6c, 0x73, 0x6f, 0x6e, 0x73, 0x74,
- 0x6f, 0x72, 0x65, 0x73, 0x72, 0x65, 0x6c, 0x69, 0x65, 0x66, 0x73, 0x77, 0x65,
- 0x64, 0x65, 0x6e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x61, 0x73, 0x69,
- 0x6c, 0x79, 0x20, 0x79, 0x6f, 0x75, 0x72, 0x20, 0x53, 0x74, 0x72, 0x69, 0x6e,
- 0x67, 0x0a, 0x0a, 0x57, 0x68, 0x69, 0x6c, 0x74, 0x61, 0x79, 0x6c, 0x6f, 0x72,
- 0x63, 0x6c, 0x65, 0x61, 0x72, 0x3a, 0x72, 0x65, 0x73, 0x6f, 0x72, 0x74, 0x66,
- 0x72, 0x65, 0x6e, 0x63, 0x68, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x22, 0x29,
- 0x20, 0x2b, 0x20, 0x22, 0x3c, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x62, 0x75, 0x79,
- 0x69, 0x6e, 0x67, 0x62, 0x72, 0x61, 0x6e, 0x64, 0x73, 0x4d, 0x65, 0x6d, 0x62,
- 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x3e, 0x6f, 0x70, 0x70, 0x69, 0x6e,
- 0x67, 0x73, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x35, 0x70, 0x78, 0x3b, 0x22, 0x3e,
- 0x76, 0x73, 0x70, 0x61, 0x63, 0x65, 0x70, 0x6f, 0x73, 0x74, 0x65, 0x72, 0x6d,
- 0x61, 0x6a, 0x6f, 0x72, 0x20, 0x63, 0x6f, 0x66, 0x66, 0x65, 0x65, 0x6d, 0x61,
- 0x72, 0x74, 0x69, 0x6e, 0x6d, 0x61, 0x74, 0x75, 0x72, 0x65, 0x68, 0x61, 0x70,
- 0x70, 0x65, 0x6e, 0x3c, 0x2f, 0x6e, 0x61, 0x76, 0x3e, 0x6b, 0x61, 0x6e, 0x73,
- 0x61, 0x73, 0x6c, 0x69, 0x6e, 0x6b, 0x22, 0x3e, 0x49, 0x6d, 0x61, 0x67, 0x65,
- 0x73, 0x3d, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x20,
- 0x68, 0x73, 0x70, 0x61, 0x63, 0x65, 0x30, 0x26, 0x61, 0x6d, 0x70, 0x3b, 0x20,
- 0x0a, 0x0a, 0x49, 0x6e, 0x20, 0x20, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x50, 0x6f,
- 0x6c, 0x73, 0x6b, 0x69, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x6a, 0x6f, 0x72,
- 0x64, 0x61, 0x6e, 0x42, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x72,
- 0x74, 0x20, 0x2d, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x32, 0x2e, 0x68, 0x74, 0x6d,
- 0x6c, 0x6e, 0x65, 0x77, 0x73, 0x22, 0x3e, 0x30, 0x31, 0x2e, 0x6a, 0x70, 0x67,
- 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x72, 0x69, 0x67, 0x68, 0x74, 0x6d,
- 0x69, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x65, 0x6e, 0x69, 0x6f, 0x72, 0x49, 0x53,
- 0x42, 0x4e, 0x20, 0x30, 0x30, 0x2c, 0x30, 0x30, 0x30, 0x20, 0x67, 0x75, 0x69,
- 0x64, 0x65, 0x73, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x29, 0x65, 0x63, 0x74, 0x69,
- 0x6f, 0x6e, 0x72, 0x65, 0x70, 0x61, 0x69, 0x72, 0x2e, 0x78, 0x6d, 0x6c, 0x22,
- 0x20, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x73, 0x2e, 0x68, 0x74, 0x6d, 0x6c,
- 0x2d, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x72, 0x65, 0x67, 0x45, 0x78, 0x70, 0x3a,
- 0x68, 0x6f, 0x76, 0x65, 0x72, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x76, 0x69,
- 0x72, 0x67, 0x69, 0x6e, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x73, 0x3c, 0x2f, 0x74,
- 0x72, 0x3e, 0x0d, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x0a, 0x09, 0x76, 0x61,
- 0x72, 0x20, 0x3e, 0x27, 0x29, 0x3b, 0x0a, 0x09, 0x3c, 0x2f, 0x74, 0x64, 0x3e,
- 0x0a, 0x3c, 0x2f, 0x74, 0x72, 0x3e, 0x0a, 0x62, 0x61, 0x68, 0x61, 0x73, 0x61,
- 0x62, 0x72, 0x61, 0x73, 0x69, 0x6c, 0x67, 0x61, 0x6c, 0x65, 0x67, 0x6f, 0x6d,
- 0x61, 0x67, 0x79, 0x61, 0x72, 0x70, 0x6f, 0x6c, 0x73, 0x6b, 0x69, 0x73, 0x72,
- 0x70, 0x73, 0x6b, 0x69, 0xd8, 0xb1, 0xd8, 0xaf, 0xd9, 0x88, 0xe4, 0xb8, 0xad,
- 0xe6, 0x96, 0x87, 0xe7, 0xae, 0x80, 0xe4, 0xbd, 0x93, 0xe7, 0xb9, 0x81, 0xe9,
- 0xab, 0x94, 0xe4, 0xbf, 0xa1, 0xe6, 0x81, 0xaf, 0xe4, 0xb8, 0xad, 0xe5, 0x9b,
- 0xbd, 0xe6, 0x88, 0x91, 0xe4, 0xbb, 0xac, 0xe4, 0xb8, 0x80, 0xe4, 0xb8, 0xaa,
- 0xe5, 0x85, 0xac, 0xe5, 0x8f, 0xb8, 0xe7, 0xae, 0xa1, 0xe7, 0x90, 0x86, 0xe8,
- 0xae, 0xba, 0xe5, 0x9d, 0x9b, 0xe5, 0x8f, 0xaf, 0xe4, 0xbb, 0xa5, 0xe6, 0x9c,
- 0x8d, 0xe5, 0x8a, 0xa1, 0xe6, 0x97, 0xb6, 0xe9, 0x97, 0xb4, 0xe4, 0xb8, 0xaa,
- 0xe4, 0xba, 0xba, 0xe4, 0xba, 0xa7, 0xe5, 0x93, 0x81, 0xe8, 0x87, 0xaa, 0xe5,
- 0xb7, 0xb1, 0xe4, 0xbc, 0x81, 0xe4, 0xb8, 0x9a, 0xe6, 0x9f, 0xa5, 0xe7, 0x9c,
- 0x8b, 0xe5, 0xb7, 0xa5, 0xe4, 0xbd, 0x9c, 0xe8, 0x81, 0x94, 0xe7, 0xb3, 0xbb,
- 0xe6, 0xb2, 0xa1, 0xe6, 0x9c, 0x89, 0xe7, 0xbd, 0x91, 0xe7, 0xab, 0x99, 0xe6,
- 0x89, 0x80, 0xe6, 0x9c, 0x89, 0xe8, 0xaf, 0x84, 0xe8, 0xae, 0xba, 0xe4, 0xb8,
- 0xad, 0xe5, 0xbf, 0x83, 0xe6, 0x96, 0x87, 0xe7, 0xab, 0xa0, 0xe7, 0x94, 0xa8,
- 0xe6, 0x88, 0xb7, 0xe9, 0xa6, 0x96, 0xe9, 0xa1, 0xb5, 0xe4, 0xbd, 0x9c, 0xe8,
- 0x80, 0x85, 0xe6, 0x8a, 0x80, 0xe6, 0x9c, 0xaf, 0xe9, 0x97, 0xae, 0xe9, 0xa2,
- 0x98, 0xe7, 0x9b, 0xb8, 0xe5, 0x85, 0xb3, 0xe4, 0xb8, 0x8b, 0xe8, 0xbd, 0xbd,
- 0xe6, 0x90, 0x9c, 0xe7, 0xb4, 0xa2, 0xe4, 0xbd, 0xbf, 0xe7, 0x94, 0xa8, 0xe8,
- 0xbd, 0xaf, 0xe4, 0xbb, 0xb6, 0xe5, 0x9c, 0xa8, 0xe7, 0xba, 0xbf, 0xe4, 0xb8,
- 0xbb, 0xe9, 0xa2, 0x98, 0xe8, 0xb5, 0x84, 0xe6, 0x96, 0x99, 0xe8, 0xa7, 0x86,
- 0xe9, 0xa2, 0x91, 0xe5, 0x9b, 0x9e, 0xe5, 0xa4, 0x8d, 0xe6, 0xb3, 0xa8, 0xe5,
- 0x86, 0x8c, 0xe7, 0xbd, 0x91, 0xe7, 0xbb, 0x9c, 0xe6, 0x94, 0xb6, 0xe8, 0x97,
- 0x8f, 0xe5, 0x86, 0x85, 0xe5, 0xae, 0xb9, 0xe6, 0x8e, 0xa8, 0xe8, 0x8d, 0x90,
- 0xe5, 0xb8, 0x82, 0xe5, 0x9c, 0xba, 0xe6, 0xb6, 0x88, 0xe6, 0x81, 0xaf, 0xe7,
- 0xa9, 0xba, 0xe9, 0x97, 0xb4, 0xe5, 0x8f, 0x91, 0xe5, 0xb8, 0x83, 0xe4, 0xbb,
- 0x80, 0xe4, 0xb9, 0x88, 0xe5, 0xa5, 0xbd, 0xe5, 0x8f, 0x8b, 0xe7, 0x94, 0x9f,
- 0xe6, 0xb4, 0xbb, 0xe5, 0x9b, 0xbe, 0xe7, 0x89, 0x87, 0xe5, 0x8f, 0x91, 0xe5,
- 0xb1, 0x95, 0xe5, 0xa6, 0x82, 0xe6, 0x9e, 0x9c, 0xe6, 0x89, 0x8b, 0xe6, 0x9c,
- 0xba, 0xe6, 0x96, 0xb0, 0xe9, 0x97, 0xbb, 0xe6, 0x9c, 0x80, 0xe6, 0x96, 0xb0,
- 0xe6, 0x96, 0xb9, 0xe5, 0xbc, 0x8f, 0xe5, 0x8c, 0x97, 0xe4, 0xba, 0xac, 0xe6,
- 0x8f, 0x90, 0xe4, 0xbe, 0x9b, 0xe5, 0x85, 0xb3, 0xe4, 0xba, 0x8e, 0xe6, 0x9b,
- 0xb4, 0xe5, 0xa4, 0x9a, 0xe8, 0xbf, 0x99, 0xe4, 0xb8, 0xaa, 0xe7, 0xb3, 0xbb,
- 0xe7, 0xbb, 0x9f, 0xe7, 0x9f, 0xa5, 0xe9, 0x81, 0x93, 0xe6, 0xb8, 0xb8, 0xe6,
- 0x88, 0x8f, 0xe5, 0xb9, 0xbf, 0xe5, 0x91, 0x8a, 0xe5, 0x85, 0xb6, 0xe4, 0xbb,
- 0x96, 0xe5, 0x8f, 0x91, 0xe8, 0xa1, 0xa8, 0xe5, 0xae, 0x89, 0xe5, 0x85, 0xa8,
- 0xe7, 0xac, 0xac, 0xe4, 0xb8, 0x80, 0xe4, 0xbc, 0x9a, 0xe5, 0x91, 0x98, 0xe8,
- 0xbf, 0x9b, 0xe8, 0xa1, 0x8c, 0xe7, 0x82, 0xb9, 0xe5, 0x87, 0xbb, 0xe7, 0x89,
- 0x88, 0xe6, 0x9d, 0x83, 0xe7, 0x94, 0xb5, 0xe5, 0xad, 0x90, 0xe4, 0xb8, 0x96,
- 0xe7, 0x95, 0x8c, 0xe8, 0xae, 0xbe, 0xe8, 0xae, 0xa1, 0xe5, 0x85, 0x8d, 0xe8,
- 0xb4, 0xb9, 0xe6, 0x95, 0x99, 0xe8, 0x82, 0xb2, 0xe5, 0x8a, 0xa0, 0xe5, 0x85,
- 0xa5, 0xe6, 0xb4, 0xbb, 0xe5, 0x8a, 0xa8, 0xe4, 0xbb, 0x96, 0xe4, 0xbb, 0xac,
- 0xe5, 0x95, 0x86, 0xe5, 0x93, 0x81, 0xe5, 0x8d, 0x9a, 0xe5, 0xae, 0xa2, 0xe7,
- 0x8e, 0xb0, 0xe5, 0x9c, 0xa8, 0xe4, 0xb8, 0x8a, 0xe6, 0xb5, 0xb7, 0xe5, 0xa6,
- 0x82, 0xe4, 0xbd, 0x95, 0xe5, 0xb7, 0xb2, 0xe7, 0xbb, 0x8f, 0xe7, 0x95, 0x99,
- 0xe8, 0xa8, 0x80, 0xe8, 0xaf, 0xa6, 0xe7, 0xbb, 0x86, 0xe7, 0xa4, 0xbe, 0xe5,
- 0x8c, 0xba, 0xe7, 0x99, 0xbb, 0xe5, 0xbd, 0x95, 0xe6, 0x9c, 0xac, 0xe7, 0xab,
- 0x99, 0xe9, 0x9c, 0x80, 0xe8, 0xa6, 0x81, 0xe4, 0xbb, 0xb7, 0xe6, 0xa0, 0xbc,
- 0xe6, 0x94, 0xaf, 0xe6, 0x8c, 0x81, 0xe5, 0x9b, 0xbd, 0xe9, 0x99, 0x85, 0xe9,
- 0x93, 0xbe, 0xe6, 0x8e, 0xa5, 0xe5, 0x9b, 0xbd, 0xe5, 0xae, 0xb6, 0xe5, 0xbb,
- 0xba, 0xe8, 0xae, 0xbe, 0xe6, 0x9c, 0x8b, 0xe5, 0x8f, 0x8b, 0xe9, 0x98, 0x85,
- 0xe8, 0xaf, 0xbb, 0xe6, 0xb3, 0x95, 0xe5, 0xbe, 0x8b, 0xe4, 0xbd, 0x8d, 0xe7,
- 0xbd, 0xae, 0xe7, 0xbb, 0x8f, 0xe6, 0xb5, 0x8e, 0xe9, 0x80, 0x89, 0xe6, 0x8b,
- 0xa9, 0xe8, 0xbf, 0x99, 0xe6, 0xa0, 0xb7, 0xe5, 0xbd, 0x93, 0xe5, 0x89, 0x8d,
- 0xe5, 0x88, 0x86, 0xe7, 0xb1, 0xbb, 0xe6, 0x8e, 0x92, 0xe8, 0xa1, 0x8c, 0xe5,
- 0x9b, 0xa0, 0xe4, 0xb8, 0xba, 0xe4, 0xba, 0xa4, 0xe6, 0x98, 0x93, 0xe6, 0x9c,
- 0x80, 0xe5, 0x90, 0x8e, 0xe9, 0x9f, 0xb3, 0xe4, 0xb9, 0x90, 0xe4, 0xb8, 0x8d,
- 0xe8, 0x83, 0xbd, 0xe9, 0x80, 0x9a, 0xe8, 0xbf, 0x87, 0xe8, 0xa1, 0x8c, 0xe4,
- 0xb8, 0x9a, 0xe7, 0xa7, 0x91, 0xe6, 0x8a, 0x80, 0xe5, 0x8f, 0xaf, 0xe8, 0x83,
- 0xbd, 0xe8, 0xae, 0xbe, 0xe5, 0xa4, 0x87, 0xe5, 0x90, 0x88, 0xe4, 0xbd, 0x9c,
- 0xe5, 0xa4, 0xa7, 0xe5, 0xae, 0xb6, 0xe7, 0xa4, 0xbe, 0xe4, 0xbc, 0x9a, 0xe7,
- 0xa0, 0x94, 0xe7, 0xa9, 0xb6, 0xe4, 0xb8, 0x93, 0xe4, 0xb8, 0x9a, 0xe5, 0x85,
- 0xa8, 0xe9, 0x83, 0xa8, 0xe9, 0xa1, 0xb9, 0xe7, 0x9b, 0xae, 0xe8, 0xbf, 0x99,
- 0xe9, 0x87, 0x8c, 0xe8, 0xbf, 0x98, 0xe6, 0x98, 0xaf, 0xe5, 0xbc, 0x80, 0xe5,
- 0xa7, 0x8b, 0xe6, 0x83, 0x85, 0xe5, 0x86, 0xb5, 0xe7, 0x94, 0xb5, 0xe8, 0x84,
- 0x91, 0xe6, 0x96, 0x87, 0xe4, 0xbb, 0xb6, 0xe5, 0x93, 0x81, 0xe7, 0x89, 0x8c,
- 0xe5, 0xb8, 0xae, 0xe5, 0x8a, 0xa9, 0xe6, 0x96, 0x87, 0xe5, 0x8c, 0x96, 0xe8,
- 0xb5, 0x84, 0xe6, 0xba, 0x90, 0xe5, 0xa4, 0xa7, 0xe5, 0xad, 0xa6, 0xe5, 0xad,
- 0xa6, 0xe4, 0xb9, 0xa0, 0xe5, 0x9c, 0xb0, 0xe5, 0x9d, 0x80, 0xe6, 0xb5, 0x8f,
- 0xe8, 0xa7, 0x88, 0xe6, 0x8a, 0x95, 0xe8, 0xb5, 0x84, 0xe5, 0xb7, 0xa5, 0xe7,
- 0xa8, 0x8b, 0xe8, 0xa6, 0x81, 0xe6, 0xb1, 0x82, 0xe6, 0x80, 0x8e, 0xe4, 0xb9,
- 0x88, 0xe6, 0x97, 0xb6, 0xe5, 0x80, 0x99, 0xe5, 0x8a, 0x9f, 0xe8, 0x83, 0xbd,
- 0xe4, 0xb8, 0xbb, 0xe8, 0xa6, 0x81, 0xe7, 0x9b, 0xae, 0xe5, 0x89, 0x8d, 0xe8,
- 0xb5, 0x84, 0xe8, 0xae, 0xaf, 0xe5, 0x9f, 0x8e, 0xe5, 0xb8, 0x82, 0xe6, 0x96,
- 0xb9, 0xe6, 0xb3, 0x95, 0xe7, 0x94, 0xb5, 0xe5, 0xbd, 0xb1, 0xe6, 0x8b, 0x9b,
- 0xe8, 0x81, 0x98, 0xe5, 0xa3, 0xb0, 0xe6, 0x98, 0x8e, 0xe4, 0xbb, 0xbb, 0xe4,
- 0xbd, 0x95, 0xe5, 0x81, 0xa5, 0xe5, 0xba, 0xb7, 0xe6, 0x95, 0xb0, 0xe6, 0x8d,
- 0xae, 0xe7, 0xbe, 0x8e, 0xe5, 0x9b, 0xbd, 0xe6, 0xb1, 0xbd, 0xe8, 0xbd, 0xa6,
- 0xe4, 0xbb, 0x8b, 0xe7, 0xbb, 0x8d, 0xe4, 0xbd, 0x86, 0xe6, 0x98, 0xaf, 0xe4,
- 0xba, 0xa4, 0xe6, 0xb5, 0x81, 0xe7, 0x94, 0x9f, 0xe4, 0xba, 0xa7, 0xe6, 0x89,
- 0x80, 0xe4, 0xbb, 0xa5, 0xe7, 0x94, 0xb5, 0xe8, 0xaf, 0x9d, 0xe6, 0x98, 0xbe,
- 0xe7, 0xa4, 0xba, 0xe4, 0xb8, 0x80, 0xe4, 0xba, 0x9b, 0xe5, 0x8d, 0x95, 0xe4,
- 0xbd, 0x8d, 0xe4, 0xba, 0xba, 0xe5, 0x91, 0x98, 0xe5, 0x88, 0x86, 0xe6, 0x9e,
- 0x90, 0xe5, 0x9c, 0xb0, 0xe5, 0x9b, 0xbe, 0xe6, 0x97, 0x85, 0xe6, 0xb8, 0xb8,
- 0xe5, 0xb7, 0xa5, 0xe5, 0x85, 0xb7, 0xe5, 0xad, 0xa6, 0xe7, 0x94, 0x9f, 0xe7,
- 0xb3, 0xbb, 0xe5, 0x88, 0x97, 0xe7, 0xbd, 0x91, 0xe5, 0x8f, 0x8b, 0xe5, 0xb8,
- 0x96, 0xe5, 0xad, 0x90, 0xe5, 0xaf, 0x86, 0xe7, 0xa0, 0x81, 0xe9, 0xa2, 0x91,
- 0xe9, 0x81, 0x93, 0xe6, 0x8e, 0xa7, 0xe5, 0x88, 0xb6, 0xe5, 0x9c, 0xb0, 0xe5,
- 0x8c, 0xba, 0xe5, 0x9f, 0xba, 0xe6, 0x9c, 0xac, 0xe5, 0x85, 0xa8, 0xe5, 0x9b,
- 0xbd, 0xe7, 0xbd, 0x91, 0xe4, 0xb8, 0x8a, 0xe9, 0x87, 0x8d, 0xe8, 0xa6, 0x81,
- 0xe7, 0xac, 0xac, 0xe4, 0xba, 0x8c, 0xe5, 0x96, 0x9c, 0xe6, 0xac, 0xa2, 0xe8,
- 0xbf, 0x9b, 0xe5, 0x85, 0xa5, 0xe5, 0x8f, 0x8b, 0xe6, 0x83, 0x85, 0xe8, 0xbf,
- 0x99, 0xe4, 0xba, 0x9b, 0xe8, 0x80, 0x83, 0xe8, 0xaf, 0x95, 0xe5, 0x8f, 0x91,
- 0xe7, 0x8e, 0xb0, 0xe5, 0x9f, 0xb9, 0xe8, 0xae, 0xad, 0xe4, 0xbb, 0xa5, 0xe4,
- 0xb8, 0x8a, 0xe6, 0x94, 0xbf, 0xe5, 0xba, 0x9c, 0xe6, 0x88, 0x90, 0xe4, 0xb8,
- 0xba, 0xe7, 0x8e, 0xaf, 0xe5, 0xa2, 0x83, 0xe9, 0xa6, 0x99, 0xe6, 0xb8, 0xaf,
- 0xe5, 0x90, 0x8c, 0xe6, 0x97, 0xb6, 0xe5, 0xa8, 0xb1, 0xe4, 0xb9, 0x90, 0xe5,
- 0x8f, 0x91, 0xe9, 0x80, 0x81, 0xe4, 0xb8, 0x80, 0xe5, 0xae, 0x9a, 0xe5, 0xbc,
- 0x80, 0xe5, 0x8f, 0x91, 0xe4, 0xbd, 0x9c, 0xe5, 0x93, 0x81, 0xe6, 0xa0, 0x87,
- 0xe5, 0x87, 0x86, 0xe6, 0xac, 0xa2, 0xe8, 0xbf, 0x8e, 0xe8, 0xa7, 0xa3, 0xe5,
- 0x86, 0xb3, 0xe5, 0x9c, 0xb0, 0xe6, 0x96, 0xb9, 0xe4, 0xb8, 0x80, 0xe4, 0xb8,
- 0x8b, 0xe4, 0xbb, 0xa5, 0xe5, 0x8f, 0x8a, 0xe8, 0xb4, 0xa3, 0xe4, 0xbb, 0xbb,
- 0xe6, 0x88, 0x96, 0xe8, 0x80, 0x85, 0xe5, 0xae, 0xa2, 0xe6, 0x88, 0xb7, 0xe4,
- 0xbb, 0xa3, 0xe8, 0xa1, 0xa8, 0xe7, 0xa7, 0xaf, 0xe5, 0x88, 0x86, 0xe5, 0xa5,
- 0xb3, 0xe4, 0xba, 0xba, 0xe6, 0x95, 0xb0, 0xe7, 0xa0, 0x81, 0xe9, 0x94, 0x80,
- 0xe5, 0x94, 0xae, 0xe5, 0x87, 0xba, 0xe7, 0x8e, 0xb0, 0xe7, 0xa6, 0xbb, 0xe7,
- 0xba, 0xbf, 0xe5, 0xba, 0x94, 0xe7, 0x94, 0xa8, 0xe5, 0x88, 0x97, 0xe8, 0xa1,
- 0xa8, 0xe4, 0xb8, 0x8d, 0xe5, 0x90, 0x8c, 0xe7, 0xbc, 0x96, 0xe8, 0xbe, 0x91,
- 0xe7, 0xbb, 0x9f, 0xe8, 0xae, 0xa1, 0xe6, 0x9f, 0xa5, 0xe8, 0xaf, 0xa2, 0xe4,
- 0xb8, 0x8d, 0xe8, 0xa6, 0x81, 0xe6, 0x9c, 0x89, 0xe5, 0x85, 0xb3, 0xe6, 0x9c,
- 0xba, 0xe6, 0x9e, 0x84, 0xe5, 0xbe, 0x88, 0xe5, 0xa4, 0x9a, 0xe6, 0x92, 0xad,
- 0xe6, 0x94, 0xbe, 0xe7, 0xbb, 0x84, 0xe7, 0xbb, 0x87, 0xe6, 0x94, 0xbf, 0xe7,
- 0xad, 0x96, 0xe7, 0x9b, 0xb4, 0xe6, 0x8e, 0xa5, 0xe8, 0x83, 0xbd, 0xe5, 0x8a,
- 0x9b, 0xe6, 0x9d, 0xa5, 0xe6, 0xba, 0x90, 0xe6, 0x99, 0x82, 0xe9, 0x96, 0x93,
- 0xe7, 0x9c, 0x8b, 0xe5, 0x88, 0xb0, 0xe7, 0x83, 0xad, 0xe9, 0x97, 0xa8, 0xe5,
- 0x85, 0xb3, 0xe9, 0x94, 0xae, 0xe4, 0xb8, 0x93, 0xe5, 0x8c, 0xba, 0xe9, 0x9d,
- 0x9e, 0xe5, 0xb8, 0xb8, 0xe8, 0x8b, 0xb1, 0xe8, 0xaf, 0xad, 0xe7, 0x99, 0xbe,
- 0xe5, 0xba, 0xa6, 0xe5, 0xb8, 0x8c, 0xe6, 0x9c, 0x9b, 0xe7, 0xbe, 0x8e, 0xe5,
- 0xa5, 0xb3, 0xe6, 0xaf, 0x94, 0xe8, 0xbe, 0x83, 0xe7, 0x9f, 0xa5, 0xe8, 0xaf,
- 0x86, 0xe8, 0xa7, 0x84, 0xe5, 0xae, 0x9a, 0xe5, 0xbb, 0xba, 0xe8, 0xae, 0xae,
- 0xe9, 0x83, 0xa8, 0xe9, 0x97, 0xa8, 0xe6, 0x84, 0x8f, 0xe8, 0xa7, 0x81, 0xe7,
- 0xb2, 0xbe, 0xe5, 0xbd, 0xa9, 0xe6, 0x97, 0xa5, 0xe6, 0x9c, 0xac, 0xe6, 0x8f,
- 0x90, 0xe9, 0xab, 0x98, 0xe5, 0x8f, 0x91, 0xe8, 0xa8, 0x80, 0xe6, 0x96, 0xb9,
- 0xe9, 0x9d, 0xa2, 0xe5, 0x9f, 0xba, 0xe9, 0x87, 0x91, 0xe5, 0xa4, 0x84, 0xe7,
- 0x90, 0x86, 0xe6, 0x9d, 0x83, 0xe9, 0x99, 0x90, 0xe5, 0xbd, 0xb1, 0xe7, 0x89,
- 0x87, 0xe9, 0x93, 0xb6, 0xe8, 0xa1, 0x8c, 0xe8, 0xbf, 0x98, 0xe6, 0x9c, 0x89,
- 0xe5, 0x88, 0x86, 0xe4, 0xba, 0xab, 0xe7, 0x89, 0xa9, 0xe5, 0x93, 0x81, 0xe7,
- 0xbb, 0x8f, 0xe8, 0x90, 0xa5, 0xe6, 0xb7, 0xbb, 0xe5, 0x8a, 0xa0, 0xe4, 0xb8,
- 0x93, 0xe5, 0xae, 0xb6, 0xe8, 0xbf, 0x99, 0xe7, 0xa7, 0x8d, 0xe8, 0xaf, 0x9d,
- 0xe9, 0xa2, 0x98, 0xe8, 0xb5, 0xb7, 0xe6, 0x9d, 0xa5, 0xe4, 0xb8, 0x9a, 0xe5,
- 0x8a, 0xa1, 0xe5, 0x85, 0xac, 0xe5, 0x91, 0x8a, 0xe8, 0xae, 0xb0, 0xe5, 0xbd,
- 0x95, 0xe7, 0xae, 0x80, 0xe4, 0xbb, 0x8b, 0xe8, 0xb4, 0xa8, 0xe9, 0x87, 0x8f,
- 0xe7, 0x94, 0xb7, 0xe4, 0xba, 0xba, 0xe5, 0xbd, 0xb1, 0xe5, 0x93, 0x8d, 0xe5,
- 0xbc, 0x95, 0xe7, 0x94, 0xa8, 0xe6, 0x8a, 0xa5, 0xe5, 0x91, 0x8a, 0xe9, 0x83,
- 0xa8, 0xe5, 0x88, 0x86, 0xe5, 0xbf, 0xab, 0xe9, 0x80, 0x9f, 0xe5, 0x92, 0xa8,
- 0xe8, 0xaf, 0xa2, 0xe6, 0x97, 0xb6, 0xe5, 0xb0, 0x9a, 0xe6, 0xb3, 0xa8, 0xe6,
- 0x84, 0x8f, 0xe7, 0x94, 0xb3, 0xe8, 0xaf, 0xb7, 0xe5, 0xad, 0xa6, 0xe6, 0xa0,
- 0xa1, 0xe5, 0xba, 0x94, 0xe8, 0xaf, 0xa5, 0xe5, 0x8e, 0x86, 0xe5, 0x8f, 0xb2,
- 0xe5, 0x8f, 0xaa, 0xe6, 0x98, 0xaf, 0xe8, 0xbf, 0x94, 0xe5, 0x9b, 0x9e, 0xe8,
- 0xb4, 0xad, 0xe4, 0xb9, 0xb0, 0xe5, 0x90, 0x8d, 0xe7, 0xa7, 0xb0, 0xe4, 0xb8,
- 0xba, 0xe4, 0xba, 0x86, 0xe6, 0x88, 0x90, 0xe5, 0x8a, 0x9f, 0xe8, 0xaf, 0xb4,
- 0xe6, 0x98, 0x8e, 0xe4, 0xbe, 0x9b, 0xe5, 0xba, 0x94, 0xe5, 0xad, 0xa9, 0xe5,
- 0xad, 0x90, 0xe4, 0xb8, 0x93, 0xe9, 0xa2, 0x98, 0xe7, 0xa8, 0x8b, 0xe5, 0xba,
- 0x8f, 0xe4, 0xb8, 0x80, 0xe8, 0x88, 0xac, 0xe6, 0x9c, 0x83, 0xe5, 0x93, 0xa1,
- 0xe5, 0x8f, 0xaa, 0xe6, 0x9c, 0x89, 0xe5, 0x85, 0xb6, 0xe5, 0xae, 0x83, 0xe4,
- 0xbf, 0x9d, 0xe6, 0x8a, 0xa4, 0xe8, 0x80, 0x8c, 0xe4, 0xb8, 0x94, 0xe4, 0xbb,
- 0x8a, 0xe5, 0xa4, 0xa9, 0xe7, 0xaa, 0x97, 0xe5, 0x8f, 0xa3, 0xe5, 0x8a, 0xa8,
- 0xe6, 0x80, 0x81, 0xe7, 0x8a, 0xb6, 0xe6, 0x80, 0x81, 0xe7, 0x89, 0xb9, 0xe5,
- 0x88, 0xab, 0xe8, 0xae, 0xa4, 0xe4, 0xb8, 0xba, 0xe5, 0xbf, 0x85, 0xe9, 0xa1,
- 0xbb, 0xe6, 0x9b, 0xb4, 0xe6, 0x96, 0xb0, 0xe5, 0xb0, 0x8f, 0xe8, 0xaf, 0xb4,
- 0xe6, 0x88, 0x91, 0xe5, 0x80, 0x91, 0xe4, 0xbd, 0x9c, 0xe4, 0xb8, 0xba, 0xe5,
- 0xaa, 0x92, 0xe4, 0xbd, 0x93, 0xe5, 0x8c, 0x85, 0xe6, 0x8b, 0xac, 0xe9, 0x82,
- 0xa3, 0xe4, 0xb9, 0x88, 0xe4, 0xb8, 0x80, 0xe6, 0xa0, 0xb7, 0xe5, 0x9b, 0xbd,
- 0xe5, 0x86, 0x85, 0xe6, 0x98, 0xaf, 0xe5, 0x90, 0xa6, 0xe6, 0xa0, 0xb9, 0xe6,
- 0x8d, 0xae, 0xe7, 0x94, 0xb5, 0xe8, 0xa7, 0x86, 0xe5, 0xad, 0xa6, 0xe9, 0x99,
- 0xa2, 0xe5, 0x85, 0xb7, 0xe6, 0x9c, 0x89, 0xe8, 0xbf, 0x87, 0xe7, 0xa8, 0x8b,
- 0xe7, 0x94, 0xb1, 0xe4, 0xba, 0x8e, 0xe4, 0xba, 0xba, 0xe6, 0x89, 0x8d, 0xe5,
- 0x87, 0xba, 0xe6, 0x9d, 0xa5, 0xe4, 0xb8, 0x8d, 0xe8, 0xbf, 0x87, 0xe6, 0xad,
- 0xa3, 0xe5, 0x9c, 0xa8, 0xe6, 0x98, 0x8e, 0xe6, 0x98, 0x9f, 0xe6, 0x95, 0x85,
- 0xe4, 0xba, 0x8b, 0xe5, 0x85, 0xb3, 0xe7, 0xb3, 0xbb, 0xe6, 0xa0, 0x87, 0xe9,
- 0xa2, 0x98, 0xe5, 0x95, 0x86, 0xe5, 0x8a, 0xa1, 0xe8, 0xbe, 0x93, 0xe5, 0x85,
- 0xa5, 0xe4, 0xb8, 0x80, 0xe7, 0x9b, 0xb4, 0xe5, 0x9f, 0xba, 0xe7, 0xa1, 0x80,
- 0xe6, 0x95, 0x99, 0xe5, 0xad, 0xa6, 0xe4, 0xba, 0x86, 0xe8, 0xa7, 0xa3, 0xe5,
- 0xbb, 0xba, 0xe7, 0xad, 0x91, 0xe7, 0xbb, 0x93, 0xe6, 0x9e, 0x9c, 0xe5, 0x85,
- 0xa8, 0xe7, 0x90, 0x83, 0xe9, 0x80, 0x9a, 0xe7, 0x9f, 0xa5, 0xe8, 0xae, 0xa1,
- 0xe5, 0x88, 0x92, 0xe5, 0xaf, 0xb9, 0xe4, 0xba, 0x8e, 0xe8, 0x89, 0xba, 0xe6,
- 0x9c, 0xaf, 0xe7, 0x9b, 0xb8, 0xe5, 0x86, 0x8c, 0xe5, 0x8f, 0x91, 0xe7, 0x94,
- 0x9f, 0xe7, 0x9c, 0x9f, 0xe7, 0x9a, 0x84, 0xe5, 0xbb, 0xba, 0xe7, 0xab, 0x8b,
- 0xe7, 0xad, 0x89, 0xe7, 0xba, 0xa7, 0xe7, 0xb1, 0xbb, 0xe5, 0x9e, 0x8b, 0xe7,
- 0xbb, 0x8f, 0xe9, 0xaa, 0x8c, 0xe5, 0xae, 0x9e, 0xe7, 0x8e, 0xb0, 0xe5, 0x88,
- 0xb6, 0xe4, 0xbd, 0x9c, 0xe6, 0x9d, 0xa5, 0xe8, 0x87, 0xaa, 0xe6, 0xa0, 0x87,
- 0xe7, 0xad, 0xbe, 0xe4, 0xbb, 0xa5, 0xe4, 0xb8, 0x8b, 0xe5, 0x8e, 0x9f, 0xe5,
- 0x88, 0x9b, 0xe6, 0x97, 0xa0, 0xe6, 0xb3, 0x95, 0xe5, 0x85, 0xb6, 0xe4, 0xb8,
- 0xad, 0xe5, 0x80, 0x8b, 0xe4, 0xba, 0xba, 0xe4, 0xb8, 0x80, 0xe5, 0x88, 0x87,
- 0xe6, 0x8c, 0x87, 0xe5, 0x8d, 0x97, 0xe5, 0x85, 0xb3, 0xe9, 0x97, 0xad, 0xe9,
- 0x9b, 0x86, 0xe5, 0x9b, 0xa2, 0xe7, 0xac, 0xac, 0xe4, 0xb8, 0x89, 0xe5, 0x85,
- 0xb3, 0xe6, 0xb3, 0xa8, 0xe5, 0x9b, 0xa0, 0xe6, 0xad, 0xa4, 0xe7, 0x85, 0xa7,
- 0xe7, 0x89, 0x87, 0xe6, 0xb7, 0xb1, 0xe5, 0x9c, 0xb3, 0xe5, 0x95, 0x86, 0xe4,
- 0xb8, 0x9a, 0xe5, 0xb9, 0xbf, 0xe5, 0xb7, 0x9e, 0xe6, 0x97, 0xa5, 0xe6, 0x9c,
- 0x9f, 0xe9, 0xab, 0x98, 0xe7, 0xba, 0xa7, 0xe6, 0x9c, 0x80, 0xe8, 0xbf, 0x91,
- 0xe7, 0xbb, 0xbc, 0xe5, 0x90, 0x88, 0xe8, 0xa1, 0xa8, 0xe7, 0xa4, 0xba, 0xe4,
- 0xb8, 0x93, 0xe8, 0xbe, 0x91, 0xe8, 0xa1, 0x8c, 0xe4, 0xb8, 0xba, 0xe4, 0xba,
- 0xa4, 0xe9, 0x80, 0x9a, 0xe8, 0xaf, 0x84, 0xe4, 0xbb, 0xb7, 0xe8, 0xa7, 0x89,
- 0xe5, 0xbe, 0x97, 0xe7, 0xb2, 0xbe, 0xe5, 0x8d, 0x8e, 0xe5, 0xae, 0xb6, 0xe5,
- 0xba, 0xad, 0xe5, 0xae, 0x8c, 0xe6, 0x88, 0x90, 0xe6, 0x84, 0x9f, 0xe8, 0xa7,
- 0x89, 0xe5, 0xae, 0x89, 0xe8, 0xa3, 0x85, 0xe5, 0xbe, 0x97, 0xe5, 0x88, 0xb0,
- 0xe9, 0x82, 0xae, 0xe4, 0xbb, 0xb6, 0xe5, 0x88, 0xb6, 0xe5, 0xba, 0xa6, 0xe9,
- 0xa3, 0x9f, 0xe5, 0x93, 0x81, 0xe8, 0x99, 0xbd, 0xe7, 0x84, 0xb6, 0xe8, 0xbd,
- 0xac, 0xe8, 0xbd, 0xbd, 0xe6, 0x8a, 0xa5, 0xe4, 0xbb, 0xb7, 0xe8, 0xae, 0xb0,
- 0xe8, 0x80, 0x85, 0xe6, 0x96, 0xb9, 0xe6, 0xa1, 0x88, 0xe8, 0xa1, 0x8c, 0xe6,
- 0x94, 0xbf, 0xe4, 0xba, 0xba, 0xe6, 0xb0, 0x91, 0xe7, 0x94, 0xa8, 0xe5, 0x93,
- 0x81, 0xe4, 0xb8, 0x9c, 0xe8, 0xa5, 0xbf, 0xe6, 0x8f, 0x90, 0xe5, 0x87, 0xba,
- 0xe9, 0x85, 0x92, 0xe5, 0xba, 0x97, 0xe7, 0x84, 0xb6, 0xe5, 0x90, 0x8e, 0xe4,
- 0xbb, 0x98, 0xe6, 0xac, 0xbe, 0xe7, 0x83, 0xad, 0xe7, 0x82, 0xb9, 0xe4, 0xbb,
- 0xa5, 0xe5, 0x89, 0x8d, 0xe5, 0xae, 0x8c, 0xe5, 0x85, 0xa8, 0xe5, 0x8f, 0x91,
- 0xe5, 0xb8, 0x96, 0xe8, 0xae, 0xbe, 0xe7, 0xbd, 0xae, 0xe9, 0xa2, 0x86, 0xe5,
- 0xaf, 0xbc, 0xe5, 0xb7, 0xa5, 0xe4, 0xb8, 0x9a, 0xe5, 0x8c, 0xbb, 0xe9, 0x99,
- 0xa2, 0xe7, 0x9c, 0x8b, 0xe7, 0x9c, 0x8b, 0xe7, 0xbb, 0x8f, 0xe5, 0x85, 0xb8,
- 0xe5, 0x8e, 0x9f, 0xe5, 0x9b, 0xa0, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5,
- 0x90, 0x84, 0xe7, 0xa7, 0x8d, 0xe5, 0xa2, 0x9e, 0xe5, 0x8a, 0xa0, 0xe6, 0x9d,
- 0x90, 0xe6, 0x96, 0x99, 0xe6, 0x96, 0xb0, 0xe5, 0xa2, 0x9e, 0xe4, 0xb9, 0x8b,
- 0xe5, 0x90, 0x8e, 0xe8, 0x81, 0x8c, 0xe4, 0xb8, 0x9a, 0xe6, 0x95, 0x88, 0xe6,
- 0x9e, 0x9c, 0xe4, 0xbb, 0x8a, 0xe5, 0xb9, 0xb4, 0xe8, 0xae, 0xba, 0xe6, 0x96,
- 0x87, 0xe6, 0x88, 0x91, 0xe5, 0x9b, 0xbd, 0xe5, 0x91, 0x8a, 0xe8, 0xaf, 0x89,
- 0xe7, 0x89, 0x88, 0xe4, 0xb8, 0xbb, 0xe4, 0xbf, 0xae, 0xe6, 0x94, 0xb9, 0xe5,
- 0x8f, 0x82, 0xe4, 0xb8, 0x8e, 0xe6, 0x89, 0x93, 0xe5, 0x8d, 0xb0, 0xe5, 0xbf,
- 0xab, 0xe4, 0xb9, 0x90, 0xe6, 0x9c, 0xba, 0xe6, 0xa2, 0xb0, 0xe8, 0xa7, 0x82,
- 0xe7, 0x82, 0xb9, 0xe5, 0xad, 0x98, 0xe5, 0x9c, 0xa8, 0xe7, 0xb2, 0xbe, 0xe7,
- 0xa5, 0x9e, 0xe8, 0x8e, 0xb7, 0xe5, 0xbe, 0x97, 0xe5, 0x88, 0xa9, 0xe7, 0x94,
- 0xa8, 0xe7, 0xbb, 0xa7, 0xe7, 0xbb, 0xad, 0xe4, 0xbd, 0xa0, 0xe4, 0xbb, 0xac,
- 0xe8, 0xbf, 0x99, 0xe4, 0xb9, 0x88, 0xe6, 0xa8, 0xa1, 0xe5, 0xbc, 0x8f, 0xe8,
- 0xaf, 0xad, 0xe8, 0xa8, 0x80, 0xe8, 0x83, 0xbd, 0xe5, 0xa4, 0x9f, 0xe9, 0x9b,
- 0x85, 0xe8, 0x99, 0x8e, 0xe6, 0x93, 0x8d, 0xe4, 0xbd, 0x9c, 0xe9, 0xa3, 0x8e,
- 0xe6, 0xa0, 0xbc, 0xe4, 0xb8, 0x80, 0xe8, 0xb5, 0xb7, 0xe7, 0xa7, 0x91, 0xe5,
- 0xad, 0xa6, 0xe4, 0xbd, 0x93, 0xe8, 0x82, 0xb2, 0xe7, 0x9f, 0xad, 0xe4, 0xbf,
- 0xa1, 0xe6, 0x9d, 0xa1, 0xe4, 0xbb, 0xb6, 0xe6, 0xb2, 0xbb, 0xe7, 0x96, 0x97,
- 0xe8, 0xbf, 0x90, 0xe5, 0x8a, 0xa8, 0xe4, 0xba, 0xa7, 0xe4, 0xb8, 0x9a, 0xe4,
- 0xbc, 0x9a, 0xe8, 0xae, 0xae, 0xe5, 0xaf, 0xbc, 0xe8, 0x88, 0xaa, 0xe5, 0x85,
- 0x88, 0xe7, 0x94, 0x9f, 0xe8, 0x81, 0x94, 0xe7, 0x9b, 0x9f, 0xe5, 0x8f, 0xaf,
- 0xe6, 0x98, 0xaf, 0xe5, 0x95, 0x8f, 0xe9, 0xa1, 0x8c, 0xe7, 0xbb, 0x93, 0xe6,
- 0x9e, 0x84, 0xe4, 0xbd, 0x9c, 0xe7, 0x94, 0xa8, 0xe8, 0xb0, 0x83, 0xe6, 0x9f,
- 0xa5, 0xe8, 0xb3, 0x87, 0xe6, 0x96, 0x99, 0xe8, 0x87, 0xaa, 0xe5, 0x8a, 0xa8,
- 0xe8, 0xb4, 0x9f, 0xe8, 0xb4, 0xa3, 0xe5, 0x86, 0x9c, 0xe4, 0xb8, 0x9a, 0xe8,
- 0xae, 0xbf, 0xe9, 0x97, 0xae, 0xe5, 0xae, 0x9e, 0xe6, 0x96, 0xbd, 0xe6, 0x8e,
- 0xa5, 0xe5, 0x8f, 0x97, 0xe8, 0xae, 0xa8, 0xe8, 0xae, 0xba, 0xe9, 0x82, 0xa3,
- 0xe4, 0xb8, 0xaa, 0xe5, 0x8f, 0x8d, 0xe9, 0xa6, 0x88, 0xe5, 0x8a, 0xa0, 0xe5,
- 0xbc, 0xba, 0xe5, 0xa5, 0xb3, 0xe6, 0x80, 0xa7, 0xe8, 0x8c, 0x83, 0xe5, 0x9b,
- 0xb4, 0xe6, 0x9c, 0x8d, 0xe5, 0x8b, 0x99, 0xe4, 0xbc, 0x91, 0xe9, 0x97, 0xb2,
- 0xe4, 0xbb, 0x8a, 0xe6, 0x97, 0xa5, 0xe5, 0xae, 0xa2, 0xe6, 0x9c, 0x8d, 0xe8,
- 0xa7, 0x80, 0xe7, 0x9c, 0x8b, 0xe5, 0x8f, 0x82, 0xe5, 0x8a, 0xa0, 0xe7, 0x9a,
- 0x84, 0xe8, 0xaf, 0x9d, 0xe4, 0xb8, 0x80, 0xe7, 0x82, 0xb9, 0xe4, 0xbf, 0x9d,
- 0xe8, 0xaf, 0x81, 0xe5, 0x9b, 0xbe, 0xe4, 0xb9, 0xa6, 0xe6, 0x9c, 0x89, 0xe6,
- 0x95, 0x88, 0xe6, 0xb5, 0x8b, 0xe8, 0xaf, 0x95, 0xe7, 0xa7, 0xbb, 0xe5, 0x8a,
- 0xa8, 0xe6, 0x89, 0x8d, 0xe8, 0x83, 0xbd, 0xe5, 0x86, 0xb3, 0xe5, 0xae, 0x9a,
- 0xe8, 0x82, 0xa1, 0xe7, 0xa5, 0xa8, 0xe4, 0xb8, 0x8d, 0xe6, 0x96, 0xad, 0xe9,
- 0x9c, 0x80, 0xe6, 0xb1, 0x82, 0xe4, 0xb8, 0x8d, 0xe5, 0xbe, 0x97, 0xe5, 0x8a,
- 0x9e, 0xe6, 0xb3, 0x95, 0xe4, 0xb9, 0x8b, 0xe9, 0x97, 0xb4, 0xe9, 0x87, 0x87,
- 0xe7, 0x94, 0xa8, 0xe8, 0x90, 0xa5, 0xe9, 0x94, 0x80, 0xe6, 0x8a, 0x95, 0xe8,
- 0xaf, 0x89, 0xe7, 0x9b, 0xae, 0xe6, 0xa0, 0x87, 0xe7, 0x88, 0xb1, 0xe6, 0x83,
- 0x85, 0xe6, 0x91, 0x84, 0xe5, 0xbd, 0xb1, 0xe6, 0x9c, 0x89, 0xe4, 0xba, 0x9b,
- 0xe8, 0xa4, 0x87, 0xe8, 0xa3, 0xbd, 0xe6, 0x96, 0x87, 0xe5, 0xad, 0xa6, 0xe6,
- 0x9c, 0xba, 0xe4, 0xbc, 0x9a, 0xe6, 0x95, 0xb0, 0xe5, 0xad, 0x97, 0xe8, 0xa3,
- 0x85, 0xe4, 0xbf, 0xae, 0xe8, 0xb4, 0xad, 0xe7, 0x89, 0xa9, 0xe5, 0x86, 0x9c,
- 0xe6, 0x9d, 0x91, 0xe5, 0x85, 0xa8, 0xe9, 0x9d, 0xa2, 0xe7, 0xb2, 0xbe, 0xe5,
- 0x93, 0x81, 0xe5, 0x85, 0xb6, 0xe5, 0xae, 0x9e, 0xe4, 0xba, 0x8b, 0xe6, 0x83,
- 0x85, 0xe6, 0xb0, 0xb4, 0xe5, 0xb9, 0xb3, 0xe6, 0x8f, 0x90, 0xe7, 0xa4, 0xba,
- 0xe4, 0xb8, 0x8a, 0xe5, 0xb8, 0x82, 0xe8, 0xb0, 0xa2, 0xe8, 0xb0, 0xa2, 0xe6,
- 0x99, 0xae, 0xe9, 0x80, 0x9a, 0xe6, 0x95, 0x99, 0xe5, 0xb8, 0x88, 0xe4, 0xb8,
- 0x8a, 0xe4, 0xbc, 0xa0, 0xe7, 0xb1, 0xbb, 0xe5, 0x88, 0xab, 0xe6, 0xad, 0x8c,
- 0xe6, 0x9b, 0xb2, 0xe6, 0x8b, 0xa5, 0xe6, 0x9c, 0x89, 0xe5, 0x88, 0x9b, 0xe6,
- 0x96, 0xb0, 0xe9, 0x85, 0x8d, 0xe4, 0xbb, 0xb6, 0xe5, 0x8f, 0xaa, 0xe8, 0xa6,
- 0x81, 0xe6, 0x97, 0xb6, 0xe4, 0xbb, 0xa3, 0xe8, 0xb3, 0x87, 0xe8, 0xa8, 0x8a,
- 0xe8, 0xbe, 0xbe, 0xe5, 0x88, 0xb0, 0xe4, 0xba, 0xba, 0xe7, 0x94, 0x9f, 0xe8,
- 0xae, 0xa2, 0xe9, 0x98, 0x85, 0xe8, 0x80, 0x81, 0xe5, 0xb8, 0x88, 0xe5, 0xb1,
- 0x95, 0xe7, 0xa4, 0xba, 0xe5, 0xbf, 0x83, 0xe7, 0x90, 0x86, 0xe8, 0xb4, 0xb4,
- 0xe5, 0xad, 0x90, 0xe7, 0xb6, 0xb2, 0xe7, 0xab, 0x99, 0xe4, 0xb8, 0xbb, 0xe9,
- 0xa1, 0x8c, 0xe8, 0x87, 0xaa, 0xe7, 0x84, 0xb6, 0xe7, 0xba, 0xa7, 0xe5, 0x88,
- 0xab, 0xe7, 0xae, 0x80, 0xe5, 0x8d, 0x95, 0xe6, 0x94, 0xb9, 0xe9, 0x9d, 0xa9,
- 0xe9, 0x82, 0xa3, 0xe4, 0xba, 0x9b, 0xe6, 0x9d, 0xa5, 0xe8, 0xaf, 0xb4, 0xe6,
- 0x89, 0x93, 0xe5, 0xbc, 0x80, 0xe4, 0xbb, 0xa3, 0xe7, 0xa0, 0x81, 0xe5, 0x88,
- 0xa0, 0xe9, 0x99, 0xa4, 0xe8, 0xaf, 0x81, 0xe5, 0x88, 0xb8, 0xe8, 0x8a, 0x82,
- 0xe7, 0x9b, 0xae, 0xe9, 0x87, 0x8d, 0xe7, 0x82, 0xb9, 0xe6, 0xac, 0xa1, 0xe6,
- 0x95, 0xb8, 0xe5, 0xa4, 0x9a, 0xe5, 0xb0, 0x91, 0xe8, 0xa7, 0x84, 0xe5, 0x88,
- 0x92, 0xe8, 0xb5, 0x84, 0xe9, 0x87, 0x91, 0xe6, 0x89, 0xbe, 0xe5, 0x88, 0xb0,
- 0xe4, 0xbb, 0xa5, 0xe5, 0x90, 0x8e, 0xe5, 0xa4, 0xa7, 0xe5, 0x85, 0xa8, 0xe4,
- 0xb8, 0xbb, 0xe9, 0xa1, 0xb5, 0xe6, 0x9c, 0x80, 0xe4, 0xbd, 0xb3, 0xe5, 0x9b,
- 0x9e, 0xe7, 0xad, 0x94, 0xe5, 0xa4, 0xa9, 0xe4, 0xb8, 0x8b, 0xe4, 0xbf, 0x9d,
- 0xe9, 0x9a, 0x9c, 0xe7, 0x8e, 0xb0, 0xe4, 0xbb, 0xa3, 0xe6, 0xa3, 0x80, 0xe6,
- 0x9f, 0xa5, 0xe6, 0x8a, 0x95, 0xe7, 0xa5, 0xa8, 0xe5, 0xb0, 0x8f, 0xe6, 0x97,
- 0xb6, 0xe6, 0xb2, 0x92, 0xe6, 0x9c, 0x89, 0xe6, 0xad, 0xa3, 0xe5, 0xb8, 0xb8,
- 0xe7, 0x94, 0x9a, 0xe8, 0x87, 0xb3, 0xe4, 0xbb, 0xa3, 0xe7, 0x90, 0x86, 0xe7,
- 0x9b, 0xae, 0xe5, 0xbd, 0x95, 0xe5, 0x85, 0xac, 0xe5, 0xbc, 0x80, 0xe5, 0xa4,
- 0x8d, 0xe5, 0x88, 0xb6, 0xe9, 0x87, 0x91, 0xe8, 0x9e, 0x8d, 0xe5, 0xb9, 0xb8,
- 0xe7, 0xa6, 0x8f, 0xe7, 0x89, 0x88, 0xe6, 0x9c, 0xac, 0xe5, 0xbd, 0xa2, 0xe6,
- 0x88, 0x90, 0xe5, 0x87, 0x86, 0xe5, 0xa4, 0x87, 0xe8, 0xa1, 0x8c, 0xe6, 0x83,
- 0x85, 0xe5, 0x9b, 0x9e, 0xe5, 0x88, 0xb0, 0xe6, 0x80, 0x9d, 0xe6, 0x83, 0xb3,
- 0xe6, 0x80, 0x8e, 0xe6, 0xa0, 0xb7, 0xe5, 0x8d, 0x8f, 0xe8, 0xae, 0xae, 0xe8,
- 0xae, 0xa4, 0xe8, 0xaf, 0x81, 0xe6, 0x9c, 0x80, 0xe5, 0xa5, 0xbd, 0xe4, 0xba,
- 0xa7, 0xe7, 0x94, 0x9f, 0xe6, 0x8c, 0x89, 0xe7, 0x85, 0xa7, 0xe6, 0x9c, 0x8d,
- 0xe8, 0xa3, 0x85, 0xe5, 0xb9, 0xbf, 0xe4, 0xb8, 0x9c, 0xe5, 0x8a, 0xa8, 0xe6,
- 0xbc, 0xab, 0xe9, 0x87, 0x87, 0xe8, 0xb4, 0xad, 0xe6, 0x96, 0xb0, 0xe6, 0x89,
- 0x8b, 0xe7, 0xbb, 0x84, 0xe5, 0x9b, 0xbe, 0xe9, 0x9d, 0xa2, 0xe6, 0x9d, 0xbf,
- 0xe5, 0x8f, 0x82, 0xe8, 0x80, 0x83, 0xe6, 0x94, 0xbf, 0xe6, 0xb2, 0xbb, 0xe5,
- 0xae, 0xb9, 0xe6, 0x98, 0x93, 0xe5, 0xa4, 0xa9, 0xe5, 0x9c, 0xb0, 0xe5, 0x8a,
- 0xaa, 0xe5, 0x8a, 0x9b, 0xe4, 0xba, 0xba, 0xe4, 0xbb, 0xac, 0xe5, 0x8d, 0x87,
- 0xe7, 0xba, 0xa7, 0xe9, 0x80, 0x9f, 0xe5, 0xba, 0xa6, 0xe4, 0xba, 0xba, 0xe7,
- 0x89, 0xa9, 0xe8, 0xb0, 0x83, 0xe6, 0x95, 0xb4, 0xe6, 0xb5, 0x81, 0xe8, 0xa1,
- 0x8c, 0xe9, 0x80, 0xa0, 0xe6, 0x88, 0x90, 0xe6, 0x96, 0x87, 0xe5, 0xad, 0x97,
- 0xe9, 0x9f, 0xa9, 0xe5, 0x9b, 0xbd, 0xe8, 0xb4, 0xb8, 0xe6, 0x98, 0x93, 0xe5,
- 0xbc, 0x80, 0xe5, 0xb1, 0x95, 0xe7, 0x9b, 0xb8, 0xe9, 0x97, 0x9c, 0xe8, 0xa1,
- 0xa8, 0xe7, 0x8e, 0xb0, 0xe5, 0xbd, 0xb1, 0xe8, 0xa7, 0x86, 0xe5, 0xa6, 0x82,
- 0xe6, 0xad, 0xa4, 0xe7, 0xbe, 0x8e, 0xe5, 0xae, 0xb9, 0xe5, 0xa4, 0xa7, 0xe5,
- 0xb0, 0x8f, 0xe6, 0x8a, 0xa5, 0xe9, 0x81, 0x93, 0xe6, 0x9d, 0xa1, 0xe6, 0xac,
- 0xbe, 0xe5, 0xbf, 0x83, 0xe6, 0x83, 0x85, 0xe8, 0xae, 0xb8, 0xe5, 0xa4, 0x9a,
- 0xe6, 0xb3, 0x95, 0xe8, 0xa7, 0x84, 0xe5, 0xae, 0xb6, 0xe5, 0xb1, 0x85, 0xe4,
- 0xb9, 0xa6, 0xe5, 0xba, 0x97, 0xe8, 0xbf, 0x9e, 0xe6, 0x8e, 0xa5, 0xe7, 0xab,
- 0x8b, 0xe5, 0x8d, 0xb3, 0xe4, 0xb8, 0xbe, 0xe6, 0x8a, 0xa5, 0xe6, 0x8a, 0x80,
- 0xe5, 0xb7, 0xa7, 0xe5, 0xa5, 0xa5, 0xe8, 0xbf, 0x90, 0xe7, 0x99, 0xbb, 0xe5,
- 0x85, 0xa5, 0xe4, 0xbb, 0xa5, 0xe6, 0x9d, 0xa5, 0xe7, 0x90, 0x86, 0xe8, 0xae,
- 0xba, 0xe4, 0xba, 0x8b, 0xe4, 0xbb, 0xb6, 0xe8, 0x87, 0xaa, 0xe7, 0x94, 0xb1,
- 0xe4, 0xb8, 0xad, 0xe5, 0x8d, 0x8e, 0xe5, 0x8a, 0x9e, 0xe5, 0x85, 0xac, 0xe5,
- 0xa6, 0x88, 0xe5, 0xa6, 0x88, 0xe7, 0x9c, 0x9f, 0xe6, 0xad, 0xa3, 0xe4, 0xb8,
- 0x8d, 0xe9, 0x94, 0x99, 0xe5, 0x85, 0xa8, 0xe6, 0x96, 0x87, 0xe5, 0x90, 0x88,
- 0xe5, 0x90, 0x8c, 0xe4, 0xbb, 0xb7, 0xe5, 0x80, 0xbc, 0xe5, 0x88, 0xab, 0xe4,
- 0xba, 0xba, 0xe7, 0x9b, 0x91, 0xe7, 0x9d, 0xa3, 0xe5, 0x85, 0xb7, 0xe4, 0xbd,
- 0x93, 0xe4, 0xb8, 0x96, 0xe7, 0xba, 0xaa, 0xe5, 0x9b, 0xa2, 0xe9, 0x98, 0x9f,
- 0xe5, 0x88, 0x9b, 0xe4, 0xb8, 0x9a, 0xe6, 0x89, 0xbf, 0xe6, 0x8b, 0x85, 0xe5,
- 0xa2, 0x9e, 0xe9, 0x95, 0xbf, 0xe6, 0x9c, 0x89, 0xe4, 0xba, 0xba, 0xe4, 0xbf,
- 0x9d, 0xe6, 0x8c, 0x81, 0xe5, 0x95, 0x86, 0xe5, 0xae, 0xb6, 0xe7, 0xbb, 0xb4,
- 0xe4, 0xbf, 0xae, 0xe5, 0x8f, 0xb0, 0xe6, 0xb9, 0xbe, 0xe5, 0xb7, 0xa6, 0xe5,
- 0x8f, 0xb3, 0xe8, 0x82, 0xa1, 0xe4, 0xbb, 0xbd, 0xe7, 0xad, 0x94, 0xe6, 0xa1,
- 0x88, 0xe5, 0xae, 0x9e, 0xe9, 0x99, 0x85, 0xe7, 0x94, 0xb5, 0xe4, 0xbf, 0xa1,
- 0xe7, 0xbb, 0x8f, 0xe7, 0x90, 0x86, 0xe7, 0x94, 0x9f, 0xe5, 0x91, 0xbd, 0xe5,
- 0xae, 0xa3, 0xe4, 0xbc, 0xa0, 0xe4, 0xbb, 0xbb, 0xe5, 0x8a, 0xa1, 0xe6, 0xad,
- 0xa3, 0xe5, 0xbc, 0x8f, 0xe7, 0x89, 0xb9, 0xe8, 0x89, 0xb2, 0xe4, 0xb8, 0x8b,
- 0xe6, 0x9d, 0xa5, 0xe5, 0x8d, 0x8f, 0xe4, 0xbc, 0x9a, 0xe5, 0x8f, 0xaa, 0xe8,
- 0x83, 0xbd, 0xe5, 0xbd, 0x93, 0xe7, 0x84, 0xb6, 0xe9, 0x87, 0x8d, 0xe6, 0x96,
- 0xb0, 0xe5, 0x85, 0xa7, 0xe5, 0xae, 0xb9, 0xe6, 0x8c, 0x87, 0xe5, 0xaf, 0xbc,
- 0xe8, 0xbf, 0x90, 0xe8, 0xa1, 0x8c, 0xe6, 0x97, 0xa5, 0xe5, 0xbf, 0x97, 0xe8,
- 0xb3, 0xa3, 0xe5, 0xae, 0xb6, 0xe8, 0xb6, 0x85, 0xe8, 0xbf, 0x87, 0xe5, 0x9c,
- 0x9f, 0xe5, 0x9c, 0xb0, 0xe6, 0xb5, 0x99, 0xe6, 0xb1, 0x9f, 0xe6, 0x94, 0xaf,
- 0xe4, 0xbb, 0x98, 0xe6, 0x8e, 0xa8, 0xe5, 0x87, 0xba, 0xe7, 0xab, 0x99, 0xe9,
- 0x95, 0xbf, 0xe6, 0x9d, 0xad, 0xe5, 0xb7, 0x9e, 0xe6, 0x89, 0xa7, 0xe8, 0xa1,
- 0x8c, 0xe5, 0x88, 0xb6, 0xe9, 0x80, 0xa0, 0xe4, 0xb9, 0x8b, 0xe4, 0xb8, 0x80,
- 0xe6, 0x8e, 0xa8, 0xe5, 0xb9, 0xbf, 0xe7, 0x8e, 0xb0, 0xe5, 0x9c, 0xba, 0xe6,
- 0x8f, 0x8f, 0xe8, 0xbf, 0xb0, 0xe5, 0x8f, 0x98, 0xe5, 0x8c, 0x96, 0xe4, 0xbc,
- 0xa0, 0xe7, 0xbb, 0x9f, 0xe6, 0xad, 0x8c, 0xe6, 0x89, 0x8b, 0xe4, 0xbf, 0x9d,
- 0xe9, 0x99, 0xa9, 0xe8, 0xaf, 0xbe, 0xe7, 0xa8, 0x8b, 0xe5, 0x8c, 0xbb, 0xe7,
- 0x96, 0x97, 0xe7, 0xbb, 0x8f, 0xe8, 0xbf, 0x87, 0xe8, 0xbf, 0x87, 0xe5, 0x8e,
- 0xbb, 0xe4, 0xb9, 0x8b, 0xe5, 0x89, 0x8d, 0xe6, 0x94, 0xb6, 0xe5, 0x85, 0xa5,
- 0xe5, 0xb9, 0xb4, 0xe5, 0xba, 0xa6, 0xe6, 0x9d, 0x82, 0xe5, 0xbf, 0x97, 0xe7,
- 0xbe, 0x8e, 0xe4, 0xb8, 0xbd, 0xe6, 0x9c, 0x80, 0xe9, 0xab, 0x98, 0xe7, 0x99,
- 0xbb, 0xe9, 0x99, 0x86, 0xe6, 0x9c, 0xaa, 0xe6, 0x9d, 0xa5, 0xe5, 0x8a, 0xa0,
- 0xe5, 0xb7, 0xa5, 0xe5, 0x85, 0x8d, 0xe8, 0xb4, 0xa3, 0xe6, 0x95, 0x99, 0xe7,
- 0xa8, 0x8b, 0xe7, 0x89, 0x88, 0xe5, 0x9d, 0x97, 0xe8, 0xba, 0xab, 0xe4, 0xbd,
- 0x93, 0xe9, 0x87, 0x8d, 0xe5, 0xba, 0x86, 0xe5, 0x87, 0xba, 0xe5, 0x94, 0xae,
- 0xe6, 0x88, 0x90, 0xe6, 0x9c, 0xac, 0xe5, 0xbd, 0xa2, 0xe5, 0xbc, 0x8f, 0xe5,
- 0x9c, 0x9f, 0xe8, 0xb1, 0x86, 0xe5, 0x87, 0xba, 0xe5, 0x83, 0xb9, 0xe4, 0xb8,
- 0x9c, 0xe6, 0x96, 0xb9, 0xe9, 0x82, 0xae, 0xe7, 0xae, 0xb1, 0xe5, 0x8d, 0x97,
- 0xe4, 0xba, 0xac, 0xe6, 0xb1, 0x82, 0xe8, 0x81, 0x8c, 0xe5, 0x8f, 0x96, 0xe5,
- 0xbe, 0x97, 0xe8, 0x81, 0x8c, 0xe4, 0xbd, 0x8d, 0xe7, 0x9b, 0xb8, 0xe4, 0xbf,
- 0xa1, 0xe9, 0xa1, 0xb5, 0xe9, 0x9d, 0xa2, 0xe5, 0x88, 0x86, 0xe9, 0x92, 0x9f,
- 0xe7, 0xbd, 0x91, 0xe9, 0xa1, 0xb5, 0xe7, 0xa1, 0xae, 0xe5, 0xae, 0x9a, 0xe5,
- 0x9b, 0xbe, 0xe4, 0xbe, 0x8b, 0xe7, 0xbd, 0x91, 0xe5, 0x9d, 0x80, 0xe7, 0xa7,
- 0xaf, 0xe6, 0x9e, 0x81, 0xe9, 0x94, 0x99, 0xe8, 0xaf, 0xaf, 0xe7, 0x9b, 0xae,
- 0xe7, 0x9a, 0x84, 0xe5, 0xae, 0x9d, 0xe8, 0xb4, 0x9d, 0xe6, 0x9c, 0xba, 0xe5,
- 0x85, 0xb3, 0xe9, 0xa3, 0x8e, 0xe9, 0x99, 0xa9, 0xe6, 0x8e, 0x88, 0xe6, 0x9d,
- 0x83, 0xe7, 0x97, 0x85, 0xe6, 0xaf, 0x92, 0xe5, 0xae, 0xa0, 0xe7, 0x89, 0xa9,
- 0xe9, 0x99, 0xa4, 0xe4, 0xba, 0x86, 0xe8, 0xa9, 0x95, 0xe8, 0xab, 0x96, 0xe7,
- 0x96, 0xbe, 0xe7, 0x97, 0x85, 0xe5, 0x8f, 0x8a, 0xe6, 0x97, 0xb6, 0xe6, 0xb1,
- 0x82, 0xe8, 0xb4, 0xad, 0xe7, 0xab, 0x99, 0xe7, 0x82, 0xb9, 0xe5, 0x84, 0xbf,
- 0xe7, 0xab, 0xa5, 0xe6, 0xaf, 0x8f, 0xe5, 0xa4, 0xa9, 0xe4, 0xb8, 0xad, 0xe5,
- 0xa4, 0xae, 0xe8, 0xae, 0xa4, 0xe8, 0xaf, 0x86, 0xe6, 0xaf, 0x8f, 0xe4, 0xb8,
- 0xaa, 0xe5, 0xa4, 0xa9, 0xe6, 0xb4, 0xa5, 0xe5, 0xad, 0x97, 0xe4, 0xbd, 0x93,
- 0xe5, 0x8f, 0xb0, 0xe7, 0x81, 0xa3, 0xe7, 0xbb, 0xb4, 0xe6, 0x8a, 0xa4, 0xe6,
- 0x9c, 0xac, 0xe9, 0xa1, 0xb5, 0xe4, 0xb8, 0xaa, 0xe6, 0x80, 0xa7, 0xe5, 0xae,
- 0x98, 0xe6, 0x96, 0xb9, 0xe5, 0xb8, 0xb8, 0xe8, 0xa7, 0x81, 0xe7, 0x9b, 0xb8,
- 0xe6, 0x9c, 0xba, 0xe6, 0x88, 0x98, 0xe7, 0x95, 0xa5, 0xe5, 0xba, 0x94, 0xe5,
- 0xbd, 0x93, 0xe5, 0xbe, 0x8b, 0xe5, 0xb8, 0x88, 0xe6, 0x96, 0xb9, 0xe4, 0xbe,
- 0xbf, 0xe6, 0xa0, 0xa1, 0xe5, 0x9b, 0xad, 0xe8, 0x82, 0xa1, 0xe5, 0xb8, 0x82,
- 0xe6, 0x88, 0xbf, 0xe5, 0xb1, 0x8b, 0xe6, 0xa0, 0x8f, 0xe7, 0x9b, 0xae, 0xe5,
- 0x91, 0x98, 0xe5, 0xb7, 0xa5, 0xe5, 0xaf, 0xbc, 0xe8, 0x87, 0xb4, 0xe7, 0xaa,
- 0x81, 0xe7, 0x84, 0xb6, 0xe9, 0x81, 0x93, 0xe5, 0x85, 0xb7, 0xe6, 0x9c, 0xac,
- 0xe7, 0xbd, 0x91, 0xe7, 0xbb, 0x93, 0xe5, 0x90, 0x88, 0xe6, 0xa1, 0xa3, 0xe6,
- 0xa1, 0x88, 0xe5, 0x8a, 0xb3, 0xe5, 0x8a, 0xa8, 0xe5, 0x8f, 0xa6, 0xe5, 0xa4,
- 0x96, 0xe7, 0xbe, 0x8e, 0xe5, 0x85, 0x83, 0xe5, 0xbc, 0x95, 0xe8, 0xb5, 0xb7,
- 0xe6, 0x94, 0xb9, 0xe5, 0x8f, 0x98, 0xe7, 0xac, 0xac, 0xe5, 0x9b, 0x9b, 0xe4,
- 0xbc, 0x9a, 0xe8, 0xae, 0xa1, 0xe8, 0xaa, 0xaa, 0xe6, 0x98, 0x8e, 0xe9, 0x9a,
- 0x90, 0xe7, 0xa7, 0x81, 0xe5, 0xae, 0x9d, 0xe5, 0xae, 0x9d, 0xe8, 0xa7, 0x84,
- 0xe8, 0x8c, 0x83, 0xe6, 0xb6, 0x88, 0xe8, 0xb4, 0xb9, 0xe5, 0x85, 0xb1, 0xe5,
- 0x90, 0x8c, 0xe5, 0xbf, 0x98, 0xe8, 0xae, 0xb0, 0xe4, 0xbd, 0x93, 0xe7, 0xb3,
- 0xbb, 0xe5, 0xb8, 0xa6, 0xe6, 0x9d, 0xa5, 0xe5, 0x90, 0x8d, 0xe5, 0xad, 0x97,
- 0xe7, 0x99, 0xbc, 0xe8, 0xa1, 0xa8, 0xe5, 0xbc, 0x80, 0xe6, 0x94, 0xbe, 0xe5,
- 0x8a, 0xa0, 0xe7, 0x9b, 0x9f, 0xe5, 0x8f, 0x97, 0xe5, 0x88, 0xb0, 0xe4, 0xba,
- 0x8c, 0xe6, 0x89, 0x8b, 0xe5, 0xa4, 0xa7, 0xe9, 0x87, 0x8f, 0xe6, 0x88, 0x90,
- 0xe4, 0xba, 0xba, 0xe6, 0x95, 0xb0, 0xe9, 0x87, 0x8f, 0xe5, 0x85, 0xb1, 0xe4,
- 0xba, 0xab, 0xe5, 0x8c, 0xba, 0xe5, 0x9f, 0x9f, 0xe5, 0xa5, 0xb3, 0xe5, 0xad,
- 0xa9, 0xe5, 0x8e, 0x9f, 0xe5, 0x88, 0x99, 0xe6, 0x89, 0x80, 0xe5, 0x9c, 0xa8,
- 0xe7, 0xbb, 0x93, 0xe6, 0x9d, 0x9f, 0xe9, 0x80, 0x9a, 0xe4, 0xbf, 0xa1, 0xe8,
- 0xb6, 0x85, 0xe7, 0xba, 0xa7, 0xe9, 0x85, 0x8d, 0xe7, 0xbd, 0xae, 0xe5, 0xbd,
- 0x93, 0xe6, 0x97, 0xb6, 0xe4, 0xbc, 0x98, 0xe7, 0xa7, 0x80, 0xe6, 0x80, 0xa7,
- 0xe6, 0x84, 0x9f, 0xe6, 0x88, 0xbf, 0xe4, 0xba, 0xa7, 0xe9, 0x81, 0x8a, 0xe6,
- 0x88, 0xb2, 0xe5, 0x87, 0xba, 0xe5, 0x8f, 0xa3, 0xe6, 0x8f, 0x90, 0xe4, 0xba,
- 0xa4, 0xe5, 0xb0, 0xb1, 0xe4, 0xb8, 0x9a, 0xe4, 0xbf, 0x9d, 0xe5, 0x81, 0xa5,
- 0xe7, 0xa8, 0x8b, 0xe5, 0xba, 0xa6, 0xe5, 0x8f, 0x82, 0xe6, 0x95, 0xb0, 0xe4,
- 0xba, 0x8b, 0xe4, 0xb8, 0x9a, 0xe6, 0x95, 0xb4, 0xe4, 0xb8, 0xaa, 0xe5, 0xb1,
- 0xb1, 0xe4, 0xb8, 0x9c, 0xe6, 0x83, 0x85, 0xe6, 0x84, 0x9f, 0xe7, 0x89, 0xb9,
- 0xe6, 0xae, 0x8a, 0xe5, 0x88, 0x86, 0xe9, 0xa1, 0x9e, 0xe6, 0x90, 0x9c, 0xe5,
- 0xb0, 0x8b, 0xe5, 0xb1, 0x9e, 0xe4, 0xba, 0x8e, 0xe9, 0x97, 0xa8, 0xe6, 0x88,
- 0xb7, 0xe8, 0xb4, 0xa2, 0xe5, 0x8a, 0xa1, 0xe5, 0xa3, 0xb0, 0xe9, 0x9f, 0xb3,
- 0xe5, 0x8f, 0x8a, 0xe5, 0x85, 0xb6, 0xe8, 0xb4, 0xa2, 0xe7, 0xbb, 0x8f, 0xe5,
- 0x9d, 0x9a, 0xe6, 0x8c, 0x81, 0xe5, 0xb9, 0xb2, 0xe9, 0x83, 0xa8, 0xe6, 0x88,
- 0x90, 0xe7, 0xab, 0x8b, 0xe5, 0x88, 0xa9, 0xe7, 0x9b, 0x8a, 0xe8, 0x80, 0x83,
- 0xe8, 0x99, 0x91, 0xe6, 0x88, 0x90, 0xe9, 0x83, 0xbd, 0xe5, 0x8c, 0x85, 0xe8,
- 0xa3, 0x85, 0xe7, 0x94, 0xa8, 0xe6, 0x88, 0xb6, 0xe6, 0xaf, 0x94, 0xe8, 0xb5,
- 0x9b, 0xe6, 0x96, 0x87, 0xe6, 0x98, 0x8e, 0xe6, 0x8b, 0x9b, 0xe5, 0x95, 0x86,
- 0xe5, 0xae, 0x8c, 0xe6, 0x95, 0xb4, 0xe7, 0x9c, 0x9f, 0xe6, 0x98, 0xaf, 0xe7,
- 0x9c, 0xbc, 0xe7, 0x9d, 0x9b, 0xe4, 0xbc, 0x99, 0xe4, 0xbc, 0xb4, 0xe5, 0xa8,
- 0x81, 0xe6, 0x9c, 0x9b, 0xe9, 0xa2, 0x86, 0xe5, 0x9f, 0x9f, 0xe5, 0x8d, 0xab,
- 0xe7, 0x94, 0x9f, 0xe4, 0xbc, 0x98, 0xe6, 0x83, 0xa0, 0xe8, 0xab, 0x96, 0xe5,
- 0xa3, 0x87, 0xe5, 0x85, 0xac, 0xe5, 0x85, 0xb1, 0xe8, 0x89, 0xaf, 0xe5, 0xa5,
- 0xbd, 0xe5, 0x85, 0x85, 0xe5, 0x88, 0x86, 0xe7, 0xac, 0xa6, 0xe5, 0x90, 0x88,
- 0xe9, 0x99, 0x84, 0xe4, 0xbb, 0xb6, 0xe7, 0x89, 0xb9, 0xe7, 0x82, 0xb9, 0xe4,
- 0xb8, 0x8d, 0xe5, 0x8f, 0xaf, 0xe8, 0x8b, 0xb1, 0xe6, 0x96, 0x87, 0xe8, 0xb5,
- 0x84, 0xe4, 0xba, 0xa7, 0xe6, 0xa0, 0xb9, 0xe6, 0x9c, 0xac, 0xe6, 0x98, 0x8e,
- 0xe6, 0x98, 0xbe, 0xe5, 0xaf, 0x86, 0xe7, 0xa2, 0xbc, 0xe5, 0x85, 0xac, 0xe4,
- 0xbc, 0x97, 0xe6, 0xb0, 0x91, 0xe6, 0x97, 0x8f, 0xe6, 0x9b, 0xb4, 0xe5, 0x8a,
- 0xa0, 0xe4, 0xba, 0xab, 0xe5, 0x8f, 0x97, 0xe5, 0x90, 0x8c, 0xe5, 0xad, 0xa6,
- 0xe5, 0x90, 0xaf, 0xe5, 0x8a, 0xa8, 0xe9, 0x80, 0x82, 0xe5, 0x90, 0x88, 0xe5,
- 0x8e, 0x9f, 0xe6, 0x9d, 0xa5, 0xe9, 0x97, 0xae, 0xe7, 0xad, 0x94, 0xe6, 0x9c,
- 0xac, 0xe6, 0x96, 0x87, 0xe7, 0xbe, 0x8e, 0xe9, 0xa3, 0x9f, 0xe7, 0xbb, 0xbf,
- 0xe8, 0x89, 0xb2, 0xe7, 0xa8, 0xb3, 0xe5, 0xae, 0x9a, 0xe7, 0xbb, 0x88, 0xe4,
- 0xba, 0x8e, 0xe7, 0x94, 0x9f, 0xe7, 0x89, 0xa9, 0xe4, 0xbe, 0x9b, 0xe6, 0xb1,
- 0x82, 0xe6, 0x90, 0x9c, 0xe7, 0x8b, 0x90, 0xe5, 0x8a, 0x9b, 0xe9, 0x87, 0x8f,
- 0xe4, 0xb8, 0xa5, 0xe9, 0x87, 0x8d, 0xe6, 0xb0, 0xb8, 0xe8, 0xbf, 0x9c, 0xe5,
- 0x86, 0x99, 0xe7, 0x9c, 0x9f, 0xe6, 0x9c, 0x89, 0xe9, 0x99, 0x90, 0xe7, 0xab,
- 0x9e, 0xe4, 0xba, 0x89, 0xe5, 0xaf, 0xb9, 0xe8, 0xb1, 0xa1, 0xe8, 0xb4, 0xb9,
- 0xe7, 0x94, 0xa8, 0xe4, 0xb8, 0x8d, 0xe5, 0xa5, 0xbd, 0xe7, 0xbb, 0x9d, 0xe5,
- 0xaf, 0xb9, 0xe5, 0x8d, 0x81, 0xe5, 0x88, 0x86, 0xe4, 0xbf, 0x83, 0xe8, 0xbf,
- 0x9b, 0xe7, 0x82, 0xb9, 0xe8, 0xaf, 0x84, 0xe5, 0xbd, 0xb1, 0xe9, 0x9f, 0xb3,
- 0xe4, 0xbc, 0x98, 0xe5, 0x8a, 0xbf, 0xe4, 0xb8, 0x8d, 0xe5, 0xb0, 0x91, 0xe6,
- 0xac, 0xa3, 0xe8, 0xb5, 0x8f, 0xe5, 0xb9, 0xb6, 0xe4, 0xb8, 0x94, 0xe6, 0x9c,
- 0x89, 0xe7, 0x82, 0xb9, 0xe6, 0x96, 0xb9, 0xe5, 0x90, 0x91, 0xe5, 0x85, 0xa8,
- 0xe6, 0x96, 0xb0, 0xe4, 0xbf, 0xa1, 0xe7, 0x94, 0xa8, 0xe8, 0xae, 0xbe, 0xe6,
- 0x96, 0xbd, 0xe5, 0xbd, 0xa2, 0xe8, 0xb1, 0xa1, 0xe8, 0xb5, 0x84, 0xe6, 0xa0,
- 0xbc, 0xe7, 0xaa, 0x81, 0xe7, 0xa0, 0xb4, 0xe9, 0x9a, 0x8f, 0xe7, 0x9d, 0x80,
- 0xe9, 0x87, 0x8d, 0xe5, 0xa4, 0xa7, 0xe4, 0xba, 0x8e, 0xe6, 0x98, 0xaf, 0xe6,
- 0xaf, 0x95, 0xe4, 0xb8, 0x9a, 0xe6, 0x99, 0xba, 0xe8, 0x83, 0xbd, 0xe5, 0x8c,
- 0x96, 0xe5, 0xb7, 0xa5, 0xe5, 0xae, 0x8c, 0xe7, 0xbe, 0x8e, 0xe5, 0x95, 0x86,
- 0xe5, 0x9f, 0x8e, 0xe7, 0xbb, 0x9f, 0xe4, 0xb8, 0x80, 0xe5, 0x87, 0xba, 0xe7,
- 0x89, 0x88, 0xe6, 0x89, 0x93, 0xe9, 0x80, 0xa0, 0xe7, 0x94, 0xa2, 0xe5, 0x93,
- 0x81, 0xe6, 0xa6, 0x82, 0xe5, 0x86, 0xb5, 0xe7, 0x94, 0xa8, 0xe4, 0xba, 0x8e,
- 0xe4, 0xbf, 0x9d, 0xe7, 0x95, 0x99, 0xe5, 0x9b, 0xa0, 0xe7, 0xb4, 0xa0, 0xe4,
- 0xb8, 0xad, 0xe5, 0x9c, 0x8b, 0xe5, 0xad, 0x98, 0xe5, 0x82, 0xa8, 0xe8, 0xb4,
- 0xb4, 0xe5, 0x9b, 0xbe, 0xe6, 0x9c, 0x80, 0xe6, 0x84, 0x9b, 0xe9, 0x95, 0xbf,
- 0xe6, 0x9c, 0x9f, 0xe5, 0x8f, 0xa3, 0xe4, 0xbb, 0xb7, 0xe7, 0x90, 0x86, 0xe8,
- 0xb4, 0xa2, 0xe5, 0x9f, 0xba, 0xe5, 0x9c, 0xb0, 0xe5, 0xae, 0x89, 0xe6, 0x8e,
- 0x92, 0xe6, 0xad, 0xa6, 0xe6, 0xb1, 0x89, 0xe9, 0x87, 0x8c, 0xe9, 0x9d, 0xa2,
- 0xe5, 0x88, 0x9b, 0xe5, 0xbb, 0xba, 0xe5, 0xa4, 0xa9, 0xe7, 0xa9, 0xba, 0xe9,
- 0xa6, 0x96, 0xe5, 0x85, 0x88, 0xe5, 0xae, 0x8c, 0xe5, 0x96, 0x84, 0xe9, 0xa9,
- 0xb1, 0xe5, 0x8a, 0xa8, 0xe4, 0xb8, 0x8b, 0xe9, 0x9d, 0xa2, 0xe4, 0xb8, 0x8d,
- 0xe5, 0x86, 0x8d, 0xe8, 0xaf, 0x9a, 0xe4, 0xbf, 0xa1, 0xe6, 0x84, 0x8f, 0xe4,
- 0xb9, 0x89, 0xe9, 0x98, 0xb3, 0xe5, 0x85, 0x89, 0xe8, 0x8b, 0xb1, 0xe5, 0x9b,
- 0xbd, 0xe6, 0xbc, 0x82, 0xe4, 0xba, 0xae, 0xe5, 0x86, 0x9b, 0xe4, 0xba, 0x8b,
- 0xe7, 0x8e, 0xa9, 0xe5, 0xae, 0xb6, 0xe7, 0xbe, 0xa4, 0xe4, 0xbc, 0x97, 0xe5,
- 0x86, 0x9c, 0xe6, 0xb0, 0x91, 0xe5, 0x8d, 0xb3, 0xe5, 0x8f, 0xaf, 0xe5, 0x90,
- 0x8d, 0xe7, 0xa8, 0xb1, 0xe5, 0xae, 0xb6, 0xe5, 0x85, 0xb7, 0xe5, 0x8a, 0xa8,
- 0xe7, 0x94, 0xbb, 0xe6, 0x83, 0xb3, 0xe5, 0x88, 0xb0, 0xe6, 0xb3, 0xa8, 0xe6,
- 0x98, 0x8e, 0xe5, 0xb0, 0x8f, 0xe5, 0xad, 0xa6, 0xe6, 0x80, 0xa7, 0xe8, 0x83,
- 0xbd, 0xe8, 0x80, 0x83, 0xe7, 0xa0, 0x94, 0xe7, 0xa1, 0xac, 0xe4, 0xbb, 0xb6,
- 0xe8, 0xa7, 0x82, 0xe7, 0x9c, 0x8b, 0xe6, 0xb8, 0x85, 0xe6, 0xa5, 0x9a, 0xe6,
- 0x90, 0x9e, 0xe7, 0xac, 0x91, 0xe9, 0xa6, 0x96, 0xe9, 0xa0, 0x81, 0xe9, 0xbb,
- 0x84, 0xe9, 0x87, 0x91, 0xe9, 0x80, 0x82, 0xe7, 0x94, 0xa8, 0xe6, 0xb1, 0x9f,
- 0xe8, 0x8b, 0x8f, 0xe7, 0x9c, 0x9f, 0xe5, 0xae, 0x9e, 0xe4, 0xb8, 0xbb, 0xe7,
- 0xae, 0xa1, 0xe9, 0x98, 0xb6, 0xe6, 0xae, 0xb5, 0xe8, 0xa8, 0xbb, 0xe5, 0x86,
- 0x8a, 0xe7, 0xbf, 0xbb, 0xe8, 0xaf, 0x91, 0xe6, 0x9d, 0x83, 0xe5, 0x88, 0xa9,
- 0xe5, 0x81, 0x9a, 0xe5, 0xa5, 0xbd, 0xe4, 0xbc, 0xbc, 0xe4, 0xb9, 0x8e, 0xe9,
- 0x80, 0x9a, 0xe8, 0xae, 0xaf, 0xe6, 0x96, 0xbd, 0xe5, 0xb7, 0xa5, 0xe7, 0x8b,
- 0x80, 0xe6, 0x85, 0x8b, 0xe4, 0xb9, 0x9f, 0xe8, 0xae, 0xb8, 0xe7, 0x8e, 0xaf,
- 0xe4, 0xbf, 0x9d, 0xe5, 0x9f, 0xb9, 0xe5, 0x85, 0xbb, 0xe6, 0xa6, 0x82, 0xe5,
- 0xbf, 0xb5, 0xe5, 0xa4, 0xa7, 0xe5, 0x9e, 0x8b, 0xe6, 0x9c, 0xba, 0xe7, 0xa5,
- 0xa8, 0xe7, 0x90, 0x86, 0xe8, 0xa7, 0xa3, 0xe5, 0x8c, 0xbf, 0xe5, 0x90, 0x8d,
- 0x63, 0x75, 0x61, 0x6e, 0x64, 0x6f, 0x65, 0x6e, 0x76, 0x69, 0x61, 0x72, 0x6d,
- 0x61, 0x64, 0x72, 0x69, 0x64, 0x62, 0x75, 0x73, 0x63, 0x61, 0x72, 0x69, 0x6e,
- 0x69, 0x63, 0x69, 0x6f, 0x74, 0x69, 0x65, 0x6d, 0x70, 0x6f, 0x70, 0x6f, 0x72,
- 0x71, 0x75, 0x65, 0x63, 0x75, 0x65, 0x6e, 0x74, 0x61, 0x65, 0x73, 0x74, 0x61,
- 0x64, 0x6f, 0x70, 0x75, 0x65, 0x64, 0x65, 0x6e, 0x6a, 0x75, 0x65, 0x67, 0x6f,
- 0x73, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x65, 0x73, 0x74, 0xc3, 0xa1, 0x6e,
- 0x6e, 0x6f, 0x6d, 0x62, 0x72, 0x65, 0x74, 0x69, 0x65, 0x6e, 0x65, 0x6e, 0x70,
- 0x65, 0x72, 0x66, 0x69, 0x6c, 0x6d, 0x61, 0x6e, 0x65, 0x72, 0x61, 0x61, 0x6d,
- 0x69, 0x67, 0x6f, 0x73, 0x63, 0x69, 0x75, 0x64, 0x61, 0x64, 0x63, 0x65, 0x6e,
- 0x74, 0x72, 0x6f, 0x61, 0x75, 0x6e, 0x71, 0x75, 0x65, 0x70, 0x75, 0x65, 0x64,
- 0x65, 0x73, 0x64, 0x65, 0x6e, 0x74, 0x72, 0x6f, 0x70, 0x72, 0x69, 0x6d, 0x65,
- 0x72, 0x70, 0x72, 0x65, 0x63, 0x69, 0x6f, 0x73, 0x65, 0x67, 0xc3, 0xba, 0x6e,
- 0x62, 0x75, 0x65, 0x6e, 0x6f, 0x73, 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x72, 0x70,
- 0x75, 0x6e, 0x74, 0x6f, 0x73, 0x73, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x68, 0x61,
- 0x62, 0xc3, 0xad, 0x61, 0x61, 0x67, 0x6f, 0x73, 0x74, 0x6f, 0x6e, 0x75, 0x65,
- 0x76, 0x6f, 0x73, 0x75, 0x6e, 0x69, 0x64, 0x6f, 0x73, 0x63, 0x61, 0x72, 0x6c,
- 0x6f, 0x73, 0x65, 0x71, 0x75, 0x69, 0x70, 0x6f, 0x6e, 0x69, 0xc3, 0xb1, 0x6f,
- 0x73, 0x6d, 0x75, 0x63, 0x68, 0x6f, 0x73, 0x61, 0x6c, 0x67, 0x75, 0x6e, 0x61,
- 0x63, 0x6f, 0x72, 0x72, 0x65, 0x6f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x6e, 0x70,
- 0x61, 0x72, 0x74, 0x69, 0x72, 0x61, 0x72, 0x72, 0x69, 0x62, 0x61, 0x6d, 0x61,
- 0x72, 0xc3, 0xad, 0x61, 0x68, 0x6f, 0x6d, 0x62, 0x72, 0x65, 0x65, 0x6d, 0x70,
- 0x6c, 0x65, 0x6f, 0x76, 0x65, 0x72, 0x64, 0x61, 0x64, 0x63, 0x61, 0x6d, 0x62,
- 0x69, 0x6f, 0x6d, 0x75, 0x63, 0x68, 0x61, 0x73, 0x66, 0x75, 0x65, 0x72, 0x6f,
- 0x6e, 0x70, 0x61, 0x73, 0x61, 0x64, 0x6f, 0x6c, 0xc3, 0xad, 0x6e, 0x65, 0x61,
- 0x70, 0x61, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x75, 0x65, 0x76, 0x61, 0x73, 0x63,
- 0x75, 0x72, 0x73, 0x6f, 0x73, 0x65, 0x73, 0x74, 0x61, 0x62, 0x61, 0x71, 0x75,
- 0x69, 0x65, 0x72, 0x6f, 0x6c, 0x69, 0x62, 0x72, 0x6f, 0x73, 0x63, 0x75, 0x61,
- 0x6e, 0x74, 0x6f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x6f, 0x6d, 0x69, 0x67, 0x75,
- 0x65, 0x6c, 0x76, 0x61, 0x72, 0x69, 0x6f, 0x73, 0x63, 0x75, 0x61, 0x74, 0x72,
- 0x6f, 0x74, 0x69, 0x65, 0x6e, 0x65, 0x73, 0x67, 0x72, 0x75, 0x70, 0x6f, 0x73,
- 0x73, 0x65, 0x72, 0xc3, 0xa1, 0x6e, 0x65, 0x75, 0x72, 0x6f, 0x70, 0x61, 0x6d,
- 0x65, 0x64, 0x69, 0x6f, 0x73, 0x66, 0x72, 0x65, 0x6e, 0x74, 0x65, 0x61, 0x63,
- 0x65, 0x72, 0x63, 0x61, 0x64, 0x65, 0x6d, 0xc3, 0xa1, 0x73, 0x6f, 0x66, 0x65,
- 0x72, 0x74, 0x61, 0x63, 0x6f, 0x63, 0x68, 0x65, 0x73, 0x6d, 0x6f, 0x64, 0x65,
- 0x6c, 0x6f, 0x69, 0x74, 0x61, 0x6c, 0x69, 0x61, 0x6c, 0x65, 0x74, 0x72, 0x61,
- 0x73, 0x61, 0x6c, 0x67, 0xc3, 0xba, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x61,
- 0x63, 0x75, 0x61, 0x6c, 0x65, 0x73, 0x65, 0x78, 0x69, 0x73, 0x74, 0x65, 0x63,
- 0x75, 0x65, 0x72, 0x70, 0x6f, 0x73, 0x69, 0x65, 0x6e, 0x64, 0x6f, 0x70, 0x72,
- 0x65, 0x6e, 0x73, 0x61, 0x6c, 0x6c, 0x65, 0x67, 0x61, 0x72, 0x76, 0x69, 0x61,
- 0x6a, 0x65, 0x73, 0x64, 0x69, 0x6e, 0x65, 0x72, 0x6f, 0x6d, 0x75, 0x72, 0x63,
- 0x69, 0x61, 0x70, 0x6f, 0x64, 0x72, 0xc3, 0xa1, 0x70, 0x75, 0x65, 0x73, 0x74,
- 0x6f, 0x64, 0x69, 0x61, 0x72, 0x69, 0x6f, 0x70, 0x75, 0x65, 0x62, 0x6c, 0x6f,
- 0x71, 0x75, 0x69, 0x65, 0x72, 0x65, 0x6d, 0x61, 0x6e, 0x75, 0x65, 0x6c, 0x70,
- 0x72, 0x6f, 0x70, 0x69, 0x6f, 0x63, 0x72, 0x69, 0x73, 0x69, 0x73, 0x63, 0x69,
- 0x65, 0x72, 0x74, 0x6f, 0x73, 0x65, 0x67, 0x75, 0x72, 0x6f, 0x6d, 0x75, 0x65,
- 0x72, 0x74, 0x65, 0x66, 0x75, 0x65, 0x6e, 0x74, 0x65, 0x63, 0x65, 0x72, 0x72,
- 0x61, 0x72, 0x67, 0x72, 0x61, 0x6e, 0x64, 0x65, 0x65, 0x66, 0x65, 0x63, 0x74,
- 0x6f, 0x70, 0x61, 0x72, 0x74, 0x65, 0x73, 0x6d, 0x65, 0x64, 0x69, 0x64, 0x61,
- 0x70, 0x72, 0x6f, 0x70, 0x69, 0x61, 0x6f, 0x66, 0x72, 0x65, 0x63, 0x65, 0x74,
- 0x69, 0x65, 0x72, 0x72, 0x61, 0x65, 0x2d, 0x6d, 0x61, 0x69, 0x6c, 0x76, 0x61,
- 0x72, 0x69, 0x61, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x73, 0x66, 0x75, 0x74,
- 0x75, 0x72, 0x6f, 0x6f, 0x62, 0x6a, 0x65, 0x74, 0x6f, 0x73, 0x65, 0x67, 0x75,
- 0x69, 0x72, 0x72, 0x69, 0x65, 0x73, 0x67, 0x6f, 0x6e, 0x6f, 0x72, 0x6d, 0x61,
- 0x73, 0x6d, 0x69, 0x73, 0x6d, 0x6f, 0x73, 0xc3, 0xba, 0x6e, 0x69, 0x63, 0x6f,
- 0x63, 0x61, 0x6d, 0x69, 0x6e, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x73, 0x72,
- 0x61, 0x7a, 0xc3, 0xb3, 0x6e, 0x64, 0x65, 0x62, 0x69, 0x64, 0x6f, 0x70, 0x72,
- 0x75, 0x65, 0x62, 0x61, 0x74, 0x6f, 0x6c, 0x65, 0x64, 0x6f, 0x74, 0x65, 0x6e,
- 0xc3, 0xad, 0x61, 0x6a, 0x65, 0x73, 0xc3, 0xba, 0x73, 0x65, 0x73, 0x70, 0x65,
- 0x72, 0x6f, 0x63, 0x6f, 0x63, 0x69, 0x6e, 0x61, 0x6f, 0x72, 0x69, 0x67, 0x65,
- 0x6e, 0x74, 0x69, 0x65, 0x6e, 0x64, 0x61, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x6f,
- 0x63, 0xc3, 0xa1, 0x64, 0x69, 0x7a, 0x68, 0x61, 0x62, 0x6c, 0x61, 0x72, 0x73,
- 0x65, 0x72, 0xc3, 0xad, 0x61, 0x6c, 0x61, 0x74, 0x69, 0x6e, 0x61, 0x66, 0x75,
- 0x65, 0x72, 0x7a, 0x61, 0x65, 0x73, 0x74, 0x69, 0x6c, 0x6f, 0x67, 0x75, 0x65,
- 0x72, 0x72, 0x61, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x72, 0xc3, 0xa9, 0x78, 0x69,
- 0x74, 0x6f, 0x6c, 0xc3, 0xb3, 0x70, 0x65, 0x7a, 0x61, 0x67, 0x65, 0x6e, 0x64,
- 0x61, 0x76, 0xc3, 0xad, 0x64, 0x65, 0x6f, 0x65, 0x76, 0x69, 0x74, 0x61, 0x72,
- 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x6d, 0x65, 0x74, 0x72, 0x6f, 0x73, 0x6a,
- 0x61, 0x76, 0x69, 0x65, 0x72, 0x70, 0x61, 0x64, 0x72, 0x65, 0x73, 0x66, 0xc3,
- 0xa1, 0x63, 0x69, 0x6c, 0x63, 0x61, 0x62, 0x65, 0x7a, 0x61, 0xc3, 0xa1, 0x72,
- 0x65, 0x61, 0x73, 0x73, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x65, 0x6e, 0x76, 0xc3,
- 0xad, 0x6f, 0x6a, 0x61, 0x70, 0xc3, 0xb3, 0x6e, 0x61, 0x62, 0x75, 0x73, 0x6f,
- 0x73, 0x62, 0x69, 0x65, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x78, 0x74, 0x6f, 0x73,
- 0x6c, 0x6c, 0x65, 0x76, 0x61, 0x72, 0x70, 0x75, 0x65, 0x64, 0x61, 0x6e, 0x66,
- 0x75, 0x65, 0x72, 0x74, 0x65, 0x63, 0x6f, 0x6d, 0xc3, 0xba, 0x6e, 0x63, 0x6c,
- 0x61, 0x73, 0x65, 0x73, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x6f, 0x74, 0x65, 0x6e,
- 0x69, 0x64, 0x6f, 0x62, 0x69, 0x6c, 0x62, 0x61, 0x6f, 0x75, 0x6e, 0x69, 0x64,
- 0x61, 0x64, 0x65, 0x73, 0x74, 0xc3, 0xa1, 0x73, 0x65, 0x64, 0x69, 0x74, 0x61,
- 0x72, 0x63, 0x72, 0x65, 0x61, 0x64, 0x6f, 0xd0, 0xb4, 0xd0, 0xbb, 0xd1, 0x8f,
- 0xd1, 0x87, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xba, 0xd0, 0xb0, 0xd0, 0xba, 0xd0,
- 0xb8, 0xd0, 0xbb, 0xd0, 0xb8, 0xd1, 0x8d, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xb2,
- 0xd1, 0x81, 0xd0, 0xb5, 0xd0, 0xb5, 0xd0, 0xb3, 0xd0, 0xbe, 0xd0, 0xbf, 0xd1,
- 0x80, 0xd0, 0xb8, 0xd1, 0x82, 0xd0, 0xb0, 0xd0, 0xba, 0xd0, 0xb5, 0xd1, 0x89,
- 0xd0, 0xb5, 0xd1, 0x83, 0xd0, 0xb6, 0xd0, 0xb5, 0xd0, 0x9a, 0xd0, 0xb0, 0xd0,
- 0xba, 0xd0, 0xb1, 0xd0, 0xb5, 0xd0, 0xb7, 0xd0, 0xb1, 0xd1, 0x8b, 0xd0, 0xbb,
- 0xd0, 0xbe, 0xd0, 0xbd, 0xd0, 0xb8, 0xd0, 0x92, 0xd1, 0x81, 0xd0, 0xb5, 0xd0,
- 0xbf, 0xd0, 0xbe, 0xd0, 0xb4, 0xd0, 0xad, 0xd1, 0x82, 0xd0, 0xbe, 0xd1, 0x82,
- 0xd0, 0xbe, 0xd0, 0xbc, 0xd1, 0x87, 0xd0, 0xb5, 0xd0, 0xbc, 0xd0, 0xbd, 0xd0,
- 0xb5, 0xd1, 0x82, 0xd0, 0xbb, 0xd0, 0xb5, 0xd1, 0x82, 0xd1, 0x80, 0xd0, 0xb0,
- 0xd0, 0xb7, 0xd0, 0xbe, 0xd0, 0xbd, 0xd0, 0xb0, 0xd0, 0xb3, 0xd0, 0xb4, 0xd0,
- 0xb5, 0xd0, 0xbc, 0xd0, 0xbd, 0xd0, 0xb5, 0xd0, 0x94, 0xd0, 0xbb, 0xd1, 0x8f,
- 0xd0, 0x9f, 0xd1, 0x80, 0xd0, 0xb8, 0xd0, 0xbd, 0xd0, 0xb0, 0xd1, 0x81, 0xd0,
- 0xbd, 0xd0, 0xb8, 0xd1, 0x85, 0xd1, 0x82, 0xd0, 0xb5, 0xd0, 0xbc, 0xd0, 0xba,
- 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xb3, 0xd0, 0xbe, 0xd0, 0xb4, 0xd0, 0xb2, 0xd0,
- 0xbe, 0xd1, 0x82, 0xd1, 0x82, 0xd0, 0xb0, 0xd0, 0xbc, 0xd0, 0xa1, 0xd0, 0xa8,
- 0xd0, 0x90, 0xd0, 0xbc, 0xd0, 0xb0, 0xd1, 0x8f, 0xd0, 0xa7, 0xd1, 0x82, 0xd0,
- 0xbe, 0xd0, 0xb2, 0xd0, 0xb0, 0xd1, 0x81, 0xd0, 0xb2, 0xd0, 0xb0, 0xd0, 0xbc,
- 0xd0, 0xb5, 0xd0, 0xbc, 0xd1, 0x83, 0xd0, 0xa2, 0xd0, 0xb0, 0xd0, 0xba, 0xd0,
- 0xb4, 0xd0, 0xb2, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xb0, 0xd0, 0xbc, 0xd1, 0x8d,
- 0xd1, 0x82, 0xd0, 0xb8, 0xd1, 0x8d, 0xd1, 0x82, 0xd1, 0x83, 0xd0, 0x92, 0xd0,
- 0xb0, 0xd0, 0xbc, 0xd1, 0x82, 0xd0, 0xb5, 0xd1, 0x85, 0xd0, 0xbf, 0xd1, 0x80,
- 0xd0, 0xbe, 0xd1, 0x82, 0xd1, 0x83, 0xd1, 0x82, 0xd0, 0xbd, 0xd0, 0xb0, 0xd0,
- 0xb4, 0xd0, 0xb4, 0xd0, 0xbd, 0xd1, 0x8f, 0xd0, 0x92, 0xd0, 0xbe, 0xd1, 0x82,
- 0xd1, 0x82, 0xd1, 0x80, 0xd0, 0xb8, 0xd0, 0xbd, 0xd0, 0xb5, 0xd0, 0xb9, 0xd0,
- 0x92, 0xd0, 0xb0, 0xd1, 0x81, 0xd0, 0xbd, 0xd0, 0xb8, 0xd0, 0xbc, 0xd1, 0x81,
- 0xd0, 0xb0, 0xd0, 0xbc, 0xd1, 0x82, 0xd0, 0xbe, 0xd1, 0x82, 0xd1, 0x80, 0xd1,
- 0x83, 0xd0, 0xb1, 0xd0, 0x9e, 0xd0, 0xbd, 0xd0, 0xb8, 0xd0, 0xbc, 0xd0, 0xb8,
- 0xd1, 0x80, 0xd0, 0xbd, 0xd0, 0xb5, 0xd0, 0xb5, 0xd0, 0x9e, 0xd0, 0x9e, 0xd0,
- 0x9e, 0xd0, 0xbb, 0xd0, 0xb8, 0xd1, 0x86, 0xd1, 0x8d, 0xd1, 0x82, 0xd0, 0xb0,
- 0xd0, 0x9e, 0xd0, 0xbd, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xb5, 0xd0, 0xbc, 0xd0,
- 0xb4, 0xd0, 0xbe, 0xd0, 0xbc, 0xd0, 0xbc, 0xd0, 0xbe, 0xd0, 0xb9, 0xd0, 0xb4,
- 0xd0, 0xb2, 0xd0, 0xb5, 0xd0, 0xbe, 0xd0, 0xbd, 0xd0, 0xbe, 0xd1, 0x81, 0xd1,
- 0x83, 0xd0, 0xb4, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb9, 0xe0,
- 0xa5, 0x88, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5,
- 0x87, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8b,
- 0xe0, 0xa4, 0x94, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xb0, 0xe0,
- 0xa4, 0xa8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x8f, 0xe0, 0xa4, 0x95, 0xe0, 0xa4,
- 0x95, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xad, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x87,
- 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa4, 0xe0,
- 0xa5, 0x8b, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x86, 0xe0, 0xa4,
- 0xaa, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xb9,
- 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0x95, 0xe0,
- 0xa4, 0xa5, 0xe0, 0xa4, 0xbe, 0x6a, 0x61, 0x67, 0x72, 0x61, 0x6e, 0xe0, 0xa4,
- 0x86, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0x9c, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x85,
- 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xa6, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x97, 0xe0,
- 0xa4, 0x88, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x97, 0xe0, 0xa4,
- 0x8f, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0x87, 0xe0, 0xa4, 0xa8,
- 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xaf, 0xe0, 0xa5, 0x87, 0xe0,
- 0xa4, 0xa5, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xa5, 0xe0, 0xa5, 0x80, 0xe0, 0xa4,
- 0x98, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xa6,
- 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0x88, 0xe0, 0xa4, 0x9c, 0xe0,
- 0xa5, 0x80, 0xe0, 0xa4, 0xb5, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4,
- 0x88, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0x8f, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xb0,
- 0xe0, 0xa4, 0x89, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xae, 0xe0, 0xa5, 0x87, 0xe0,
- 0xa4, 0x95, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xb5, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4,
- 0xb2, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xae,
- 0xe0, 0xa4, 0x88, 0xe0, 0xa4, 0xa6, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x93, 0xe0,
- 0xa4, 0xb0, 0xe0, 0xa4, 0x86, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xac, 0xe0, 0xa4,
- 0xb8, 0xe0, 0xa4, 0xad, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xa8,
- 0xe0, 0xa4, 0x9a, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xa8, 0xe0,
- 0xa4, 0x86, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x80, 0xe0, 0xa4,
- 0xb2, 0xe0, 0xa5, 0x80, 0xd8, 0xb9, 0xd9, 0x84, 0xd9, 0x89, 0xd8, 0xa5, 0xd9,
- 0x84, 0xd9, 0x89, 0xd9, 0x87, 0xd8, 0xb0, 0xd8, 0xa7, 0xd8, 0xa2, 0xd8, 0xae,
- 0xd8, 0xb1, 0xd8, 0xb9, 0xd8, 0xaf, 0xd8, 0xaf, 0xd8, 0xa7, 0xd9, 0x84, 0xd9,
- 0x89, 0xd9, 0x87, 0xd8, 0xb0, 0xd9, 0x87, 0xd8, 0xb5, 0xd9, 0x88, 0xd8, 0xb1,
- 0xd8, 0xba, 0xd9, 0x8a, 0xd8, 0xb1, 0xd9, 0x83, 0xd8, 0xa7, 0xd9, 0x86, 0xd9,
- 0x88, 0xd9, 0x84, 0xd8, 0xa7, 0xd8, 0xa8, 0xd9, 0x8a, 0xd9, 0x86, 0xd8, 0xb9,
- 0xd8, 0xb1, 0xd8, 0xb6, 0xd8, 0xb0, 0xd9, 0x84, 0xd9, 0x83, 0xd9, 0x87, 0xd9,
- 0x86, 0xd8, 0xa7, 0xd9, 0x8a, 0xd9, 0x88, 0xd9, 0x85, 0xd9, 0x82, 0xd8, 0xa7,
- 0xd9, 0x84, 0xd8, 0xb9, 0xd9, 0x84, 0xd9, 0x8a, 0xd8, 0xa7, 0xd9, 0x86, 0xd8,
- 0xa7, 0xd9, 0x84, 0xd9, 0x83, 0xd9, 0x86, 0xd8, 0xad, 0xd8, 0xaa, 0xd9, 0x89,
- 0xd9, 0x82, 0xd8, 0xa8, 0xd9, 0x84, 0xd9, 0x88, 0xd8, 0xad, 0xd8, 0xa9, 0xd8,
- 0xa7, 0xd8, 0xae, 0xd8, 0xb1, 0xd9, 0x81, 0xd9, 0x82, 0xd8, 0xb7, 0xd8, 0xb9,
- 0xd8, 0xa8, 0xd8, 0xaf, 0xd8, 0xb1, 0xd9, 0x83, 0xd9, 0x86, 0xd8, 0xa5, 0xd8,
- 0xb0, 0xd8, 0xa7, 0xd9, 0x83, 0xd9, 0x85, 0xd8, 0xa7, 0xd8, 0xa7, 0xd8, 0xad,
- 0xd8, 0xaf, 0xd8, 0xa5, 0xd9, 0x84, 0xd8, 0xa7, 0xd9, 0x81, 0xd9, 0x8a, 0xd9,
- 0x87, 0xd8, 0xa8, 0xd8, 0xb9, 0xd8, 0xb6, 0xd9, 0x83, 0xd9, 0x8a, 0xd9, 0x81,
- 0xd8, 0xa8, 0xd8, 0xad, 0xd8, 0xab, 0xd9, 0x88, 0xd9, 0x85, 0xd9, 0x86, 0xd9,
- 0x88, 0xd9, 0x87, 0xd9, 0x88, 0xd8, 0xa3, 0xd9, 0x86, 0xd8, 0xa7, 0xd8, 0xac,
- 0xd8, 0xaf, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x87, 0xd8, 0xa7, 0xd8, 0xb3, 0xd9,
- 0x84, 0xd9, 0x85, 0xd8, 0xb9, 0xd9, 0x86, 0xd8, 0xaf, 0xd9, 0x84, 0xd9, 0x8a,
- 0xd8, 0xb3, 0xd8, 0xb9, 0xd8, 0xa8, 0xd8, 0xb1, 0xd8, 0xb5, 0xd9, 0x84, 0xd9,
- 0x89, 0xd9, 0x85, 0xd9, 0x86, 0xd8, 0xb0, 0xd8, 0xa8, 0xd9, 0x87, 0xd8, 0xa7,
- 0xd8, 0xa3, 0xd9, 0x86, 0xd9, 0x87, 0xd9, 0x85, 0xd8, 0xab, 0xd9, 0x84, 0xd9,
- 0x83, 0xd9, 0x86, 0xd8, 0xaa, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa7, 0xd8, 0xad,
- 0xd9, 0x8a, 0xd8, 0xab, 0xd9, 0x85, 0xd8, 0xb5, 0xd8, 0xb1, 0xd8, 0xb4, 0xd8,
- 0xb1, 0xd8, 0xad, 0xd8, 0xad, 0xd9, 0x88, 0xd9, 0x84, 0xd9, 0x88, 0xd9, 0x81,
- 0xd9, 0x8a, 0xd8, 0xa7, 0xd8, 0xb0, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x83, 0xd9,
- 0x84, 0xd9, 0x85, 0xd8, 0xb1, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x86, 0xd8, 0xaa,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x81, 0xd8, 0xa3, 0xd8, 0xa8, 0xd9, 0x88, 0xd8,
- 0xae, 0xd8, 0xa7, 0xd8, 0xb5, 0xd8, 0xa3, 0xd9, 0x86, 0xd8, 0xaa, 0xd8, 0xa7,
- 0xd9, 0x86, 0xd9, 0x87, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x8a, 0xd8, 0xb9, 0xd8,
- 0xb6, 0xd9, 0x88, 0xd9, 0x88, 0xd9, 0x82, 0xd8, 0xaf, 0xd8, 0xa7, 0xd8, 0xa8,
- 0xd9, 0x86, 0xd8, 0xae, 0xd9, 0x8a, 0xd8, 0xb1, 0xd8, 0xa8, 0xd9, 0x86, 0xd8,
- 0xaa, 0xd9, 0x84, 0xd9, 0x83, 0xd9, 0x85, 0xd8, 0xb4, 0xd8, 0xa7, 0xd8, 0xa1,
- 0xd9, 0x88, 0xd9, 0x87, 0xd9, 0x8a, 0xd8, 0xa7, 0xd8, 0xa8, 0xd9, 0x88, 0xd9,
- 0x82, 0xd8, 0xb5, 0xd8, 0xb5, 0xd9, 0x88, 0xd9, 0x85, 0xd8, 0xa7, 0xd8, 0xb1,
- 0xd9, 0x82, 0xd9, 0x85, 0xd8, 0xa3, 0xd8, 0xad, 0xd8, 0xaf, 0xd9, 0x86, 0xd8,
- 0xad, 0xd9, 0x86, 0xd8, 0xb9, 0xd8, 0xaf, 0xd9, 0x85, 0xd8, 0xb1, 0xd8, 0xa3,
- 0xd9, 0x8a, 0xd8, 0xa7, 0xd8, 0xad, 0xd8, 0xa9, 0xd9, 0x83, 0xd8, 0xaa, 0xd8,
- 0xa8, 0xd8, 0xaf, 0xd9, 0x88, 0xd9, 0x86, 0xd9, 0x8a, 0xd8, 0xac, 0xd8, 0xa8,
- 0xd9, 0x85, 0xd9, 0x86, 0xd9, 0x87, 0xd8, 0xaa, 0xd8, 0xad, 0xd8, 0xaa, 0xd8,
- 0xac, 0xd9, 0x87, 0xd8, 0xa9, 0xd8, 0xb3, 0xd9, 0x86, 0xd8, 0xa9, 0xd9, 0x8a,
- 0xd8, 0xaa, 0xd9, 0x85, 0xd9, 0x83, 0xd8, 0xb1, 0xd8, 0xa9, 0xd8, 0xba, 0xd8,
- 0xb2, 0xd8, 0xa9, 0xd9, 0x86, 0xd9, 0x81, 0xd8, 0xb3, 0xd8, 0xa8, 0xd9, 0x8a,
- 0xd8, 0xaa, 0xd9, 0x84, 0xd9, 0x84, 0xd9, 0x87, 0xd9, 0x84, 0xd9, 0x86, 0xd8,
- 0xa7, 0xd8, 0xaa, 0xd9, 0x84, 0xd9, 0x83, 0xd9, 0x82, 0xd9, 0x84, 0xd8, 0xa8,
- 0xd9, 0x84, 0xd9, 0x85, 0xd8, 0xa7, 0xd8, 0xb9, 0xd9, 0x86, 0xd9, 0x87, 0xd8,
- 0xa3, 0xd9, 0x88, 0xd9, 0x84, 0xd8, 0xb4, 0xd9, 0x8a, 0xd8, 0xa1, 0xd9, 0x86,
- 0xd9, 0x88, 0xd8, 0xb1, 0xd8, 0xa3, 0xd9, 0x85, 0xd8, 0xa7, 0xd9, 0x81, 0xd9,
- 0x8a, 0xd9, 0x83, 0xd8, 0xa8, 0xd9, 0x83, 0xd9, 0x84, 0xd8, 0xb0, 0xd8, 0xa7,
- 0xd8, 0xaa, 0xd8, 0xb1, 0xd8, 0xaa, 0xd8, 0xa8, 0xd8, 0xa8, 0xd8, 0xa3, 0xd9,
- 0x86, 0xd9, 0x87, 0xd9, 0x85, 0xd8, 0xb3, 0xd8, 0xa7, 0xd9, 0x86, 0xd9, 0x83,
- 0xd8, 0xa8, 0xd9, 0x8a, 0xd8, 0xb9, 0xd9, 0x81, 0xd9, 0x82, 0xd8, 0xaf, 0xd8,
- 0xad, 0xd8, 0xb3, 0xd9, 0x86, 0xd9, 0x84, 0xd9, 0x87, 0xd9, 0x85, 0xd8, 0xb4,
- 0xd8, 0xb9, 0xd8, 0xb1, 0xd8, 0xa3, 0xd9, 0x87, 0xd9, 0x84, 0xd8, 0xb4, 0xd9,
- 0x87, 0xd8, 0xb1, 0xd9, 0x82, 0xd8, 0xb7, 0xd8, 0xb1, 0xd8, 0xb7, 0xd9, 0x84,
- 0xd8, 0xa8, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x65, 0x72, 0x76,
- 0x69, 0x63, 0x65, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x68, 0x69, 0x6d,
- 0x73, 0x65, 0x6c, 0x66, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x63, 0x6f,
- 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73,
- 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
- 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x66, 0x61, 0x73, 0x68, 0x69, 0x6f,
- 0x6e, 0x3c, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3e, 0x63, 0x6f, 0x75, 0x6e, 0x74,
- 0x72, 0x79, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x63, 0x72, 0x65, 0x61,
- 0x74, 0x65, 0x64, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x72, 0x65, 0x73,
- 0x75, 0x6c, 0x74, 0x73, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x70, 0x72,
- 0x6f, 0x63, 0x65, 0x73, 0x73, 0x77, 0x72, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x6f,
- 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65,
- 0x77, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c,
- 0x65, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x6e, 0x65, 0x74, 0x77, 0x6f,
- 0x72, 0x6b, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x64, 0x79, 0x6e, 0x61,
- 0x6d, 0x69, 0x63, 0x62, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x72, 0x70, 0x72, 0x69,
- 0x76, 0x61, 0x63, 0x79, 0x70, 0x72, 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x53, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x72, 0x65, 0x73, 0x70, 0x65, 0x63, 0x74, 0x64,
- 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x72, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x77, 0x65, 0x62, 0x73, 0x69, 0x74,
- 0x65, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x66, 0x72, 0x69, 0x65, 0x6e,
- 0x64, 0x73, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x77, 0x6f, 0x72, 0x6b,
- 0x69, 0x6e, 0x67, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x6d, 0x69, 0x6c,
- 0x6c, 0x69, 0x6f, 0x6e, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x77, 0x69,
- 0x6e, 0x64, 0x6f, 0x77, 0x2e, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x76,
- 0x69, 0x73, 0x69, 0x74, 0x65, 0x64, 0x77, 0x65, 0x61, 0x74, 0x68, 0x65, 0x72,
- 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63,
- 0x74, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x66, 0x6f, 0x72, 0x77, 0x61,
- 0x72, 0x64, 0x79, 0x6f, 0x75, 0x20, 0x63, 0x61, 0x6e, 0x72, 0x65, 0x6d, 0x6f,
- 0x76, 0x65, 0x64, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x63, 0x6f, 0x6e,
- 0x74, 0x72, 0x6f, 0x6c, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x63, 0x75,
- 0x72, 0x72, 0x65, 0x6e, 0x74, 0x72, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x6c,
- 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64,
- 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x66, 0x75, 0x72, 0x74, 0x68, 0x65,
- 0x72, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x6d, 0x61, 0x63, 0x68, 0x69,
- 0x6e, 0x65, 0x6d, 0x69, 0x6e, 0x75, 0x74, 0x65, 0x73, 0x70, 0x72, 0x69, 0x76,
- 0x61, 0x74, 0x65, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x70, 0x72, 0x6f,
- 0x67, 0x72, 0x61, 0x6d, 0x73, 0x6f, 0x63, 0x69, 0x65, 0x74, 0x79, 0x6e, 0x75,
- 0x6d, 0x62, 0x65, 0x72, 0x73, 0x77, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x65,
- 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72,
- 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x6c, 0x6f, 0x61, 0x64, 0x69, 0x6e,
- 0x67, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x70, 0x61, 0x72, 0x74, 0x6e,
- 0x65, 0x72, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x70, 0x65, 0x72, 0x66,
- 0x65, 0x63, 0x74, 0x6d, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x79, 0x73,
- 0x74, 0x65, 0x6d, 0x73, 0x6b, 0x65, 0x65, 0x70, 0x69, 0x6e, 0x67, 0x63, 0x75,
- 0x6c, 0x74, 0x75, 0x72, 0x65, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x2c, 0x6a,
- 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6c, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
- 0x73, 0x75, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x26, 0x71, 0x75, 0x6f, 0x74,
- 0x3b, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x72, 0x65, 0x76, 0x69, 0x65,
- 0x77, 0x73, 0x62, 0x61, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x45, 0x6e, 0x67, 0x6c,
- 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x74, 0x68, 0x72,
- 0x6f, 0x75, 0x67, 0x68, 0x50, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x20, 0x6f, 0x70,
- 0x69, 0x6e, 0x69, 0x6f, 0x6e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x61,
- 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79,
- 0x76, 0x69, 0x6c, 0x6c, 0x61, 0x67, 0x65, 0x53, 0x70, 0x61, 0x6e, 0x69, 0x73,
- 0x68, 0x67, 0x61, 0x6c, 0x6c, 0x65, 0x72, 0x79, 0x64, 0x65, 0x63, 0x6c, 0x69,
- 0x6e, 0x65, 0x6d, 0x65, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x6d, 0x69, 0x73, 0x73,
- 0x69, 0x6f, 0x6e, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x71, 0x75, 0x61,
- 0x6c, 0x69, 0x74, 0x79, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x67, 0x65,
- 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x73, 0x70, 0x65, 0x63, 0x69, 0x65, 0x73, 0x73,
- 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x77, 0x72, 0x69, 0x74, 0x65, 0x72, 0x73, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65,
- 0x72, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x72, 0x65, 0x70, 0x6f, 0x72,
- 0x74, 0x73, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x73, 0x6d, 0x65, 0x6d, 0x62,
- 0x65, 0x72, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x64, 0x69, 0x73,
- 0x70, 0x75, 0x74, 0x65, 0x65, 0x61, 0x72, 0x6c, 0x69, 0x65, 0x72, 0x65, 0x78,
- 0x70, 0x72, 0x65, 0x73, 0x73, 0x64, 0x69, 0x67, 0x69, 0x74, 0x61, 0x6c, 0x70,
- 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x41, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72,
- 0x6d, 0x61, 0x72, 0x72, 0x69, 0x65, 0x64, 0x74, 0x72, 0x61, 0x66, 0x66, 0x69,
- 0x63, 0x6c, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x63, 0x68, 0x61, 0x6e, 0x67,
- 0x65, 0x64, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x6c, 0x76, 0x69, 0x63, 0x74,
- 0x6f, 0x72, 0x79, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x2f, 0x72, 0x65, 0x61,
- 0x73, 0x6f, 0x6e, 0x73, 0x73, 0x74, 0x75, 0x64, 0x69, 0x65, 0x73, 0x66, 0x65,
- 0x61, 0x74, 0x75, 0x72, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x6d,
- 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x73, 0x63, 0x68, 0x6f, 0x6f, 0x6c, 0x73,
- 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x75, 0x73, 0x75, 0x61, 0x6c, 0x6c,
- 0x79, 0x65, 0x70, 0x69, 0x73, 0x6f, 0x64, 0x65, 0x70, 0x6c, 0x61, 0x79, 0x69,
- 0x6e, 0x67, 0x67, 0x72, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x6f, 0x62, 0x76, 0x69,
- 0x6f, 0x75, 0x73, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x70, 0x72, 0x65,
- 0x73, 0x65, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3c, 0x2f,
- 0x75, 0x6c, 0x3e, 0x0d, 0x0a, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x61,
- 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x63, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e,
- 0x72, 0x65, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67,
- 0x65, 0x61, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x64, 0x65, 0x73, 0x6b, 0x74,
- 0x6f, 0x70, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64, 0x70, 0x61, 0x74, 0x74,
- 0x65, 0x72, 0x6e, 0x75, 0x6e, 0x75, 0x73, 0x75, 0x61, 0x6c, 0x44, 0x69, 0x67,
- 0x69, 0x74, 0x61, 0x6c, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x57, 0x65,
- 0x62, 0x73, 0x69, 0x74, 0x65, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x63,
- 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x72, 0x65, 0x64, 0x75, 0x63, 0x65, 0x64,
- 0x41, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x64, 0x65, 0x63, 0x61, 0x64, 0x65,
- 0x73, 0x72, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x26, 0x61, 0x6d, 0x70,
- 0x3b, 0x20, 0x61, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x73, 0x72, 0x65, 0x6c, 0x65,
- 0x61, 0x73, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x67, 0x65, 0x74,
- 0x74, 0x69, 0x6e, 0x67, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x6e, 0x6f,
- 0x74, 0x68, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x63,
- 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x73,
- 0x63, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x73, 0x63, 0x69, 0x65, 0x6e, 0x63,
- 0x65, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x67,
- 0x65, 0x73, 0x45, 0x6e, 0x67, 0x6c, 0x61, 0x6e, 0x64, 0x3d, 0x31, 0x26, 0x61,
- 0x6d, 0x70, 0x3b, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x20, 0x3d, 0x20,
- 0x6e, 0x65, 0x77, 0x20, 0x43, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x6c, 0x75, 0x70,
- 0x64, 0x61, 0x74, 0x65, 0x64, 0x53, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x4e,
- 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65,
- 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e,
- 0x67, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x67, 0x65, 0x74, 0x6f, 0x6f, 0x6c, 0x62,
- 0x61, 0x72, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x62, 0x65, 0x63, 0x61,
- 0x75, 0x73, 0x65, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x44, 0x65, 0x75,
- 0x74, 0x73, 0x63, 0x68, 0x66, 0x69, 0x6e, 0x61, 0x6e, 0x63, 0x65, 0x77, 0x6f,
- 0x72, 0x6b, 0x65, 0x72, 0x73, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x6c, 0x79, 0x62,
- 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x65, 0x78, 0x61, 0x63, 0x74, 0x6c, 0x79,
- 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x64, 0x69, 0x73, 0x65, 0x61, 0x73,
- 0x65, 0x53, 0x6f, 0x63, 0x69, 0x65, 0x74, 0x79, 0x77, 0x65, 0x61, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x78, 0x68, 0x69, 0x62, 0x69, 0x74, 0x26, 0x6c, 0x74, 0x3b,
- 0x21, 0x2d, 0x2d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x63, 0x6c, 0x61,
- 0x73, 0x73, 0x65, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x6f, 0x75,
- 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x73, 0x64,
- 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x28, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77,
- 0x70, 0x75, 0x72, 0x70, 0x6f, 0x73, 0x65, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3d,
- 0x22, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x65, 0x20, 0x6b, 0x69, 0x6c, 0x6c, 0x69,
- 0x6e, 0x67, 0x73, 0x68, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x49, 0x74, 0x61, 0x6c,
- 0x69, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x68, 0x65, 0x61,
- 0x76, 0x69, 0x6c, 0x79, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x73, 0x2d, 0x31,
- 0x27, 0x5d, 0x29, 0x3b, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x43,
- 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65,
- 0x73, 0x68, 0x61, 0x72, 0x69, 0x6e, 0x67, 0x6f, 0x70, 0x65, 0x6e, 0x69, 0x6e,
- 0x67, 0x64, 0x72, 0x61, 0x77, 0x69, 0x6e, 0x67, 0x62, 0x69, 0x6c, 0x6c, 0x69,
- 0x6f, 0x6e, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x65, 0x64, 0x47, 0x65, 0x72, 0x6d,
- 0x61, 0x6e, 0x79, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x3c, 0x2f, 0x66,
- 0x6f, 0x72, 0x6d, 0x3e, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x77, 0x68,
- 0x65, 0x74, 0x68, 0x65, 0x72, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x53,
- 0x63, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67,
- 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e,
- 0x73, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x73, 0x74, 0x75, 0x6e, 0x69, 0x66, 0x6f,
- 0x72, 0x6d, 0x6a, 0x6f, 0x75, 0x72, 0x6e, 0x65, 0x79, 0x73, 0x69, 0x64, 0x65,
- 0x62, 0x61, 0x72, 0x43, 0x68, 0x69, 0x63, 0x61, 0x67, 0x6f, 0x68, 0x6f, 0x6c,
- 0x69, 0x64, 0x61, 0x79, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x70, 0x61,
- 0x73, 0x73, 0x61, 0x67, 0x65, 0x2c, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x61,
- 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x66, 0x65, 0x65, 0x6c, 0x69, 0x6e, 0x67,
- 0x61, 0x72, 0x72, 0x69, 0x76, 0x65, 0x64, 0x70, 0x61, 0x73, 0x73, 0x69, 0x6e,
- 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x72, 0x6f, 0x75, 0x67, 0x68,
- 0x6c, 0x79, 0x2e, 0x0a, 0x0a, 0x54, 0x68, 0x65, 0x20, 0x62, 0x75, 0x74, 0x20,
- 0x6e, 0x6f, 0x74, 0x64, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x79, 0x42, 0x72, 0x69,
- 0x74, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x69, 0x6e, 0x65, 0x73, 0x65, 0x6c, 0x61,
- 0x63, 0x6b, 0x20, 0x6f, 0x66, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x49,
- 0x72, 0x65, 0x6c, 0x61, 0x6e, 0x64, 0x22, 0x20, 0x64, 0x61, 0x74, 0x61, 0x2d,
- 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76,
- 0x65, 0x74, 0x68, 0x61, 0x74, 0x20, 0x69, 0x73, 0x4c, 0x69, 0x62, 0x72, 0x61,
- 0x72, 0x79, 0x68, 0x75, 0x73, 0x62, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x20, 0x66,
- 0x61, 0x63, 0x74, 0x61, 0x66, 0x66, 0x61, 0x69, 0x72, 0x73, 0x43, 0x68, 0x61,
- 0x72, 0x6c, 0x65, 0x73, 0x72, 0x61, 0x64, 0x69, 0x63, 0x61, 0x6c, 0x62, 0x72,
- 0x6f, 0x75, 0x67, 0x68, 0x74, 0x66, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x6c,
- 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x3d, 0x22,
- 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72,
- 0x73, 0x70, 0x6c, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x70, 0x72, 0x65, 0x6d, 0x69,
- 0x75, 0x6d, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x41, 0x6d, 0x65, 0x72,
- 0x69, 0x63, 0x61, 0x45, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5d, 0x26, 0x71,
- 0x75, 0x6f, 0x74, 0x3b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x6e, 0x65,
- 0x65, 0x64, 0x20, 0x74, 0x6f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x63,
- 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x6c, 0x6f, 0x6f, 0x6b, 0x69, 0x6e, 0x67,
- 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x65, 0x6c, 0x69, 0x65, 0x76,
- 0x65, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x65, 0x72, 0x2d, 0x6d, 0x6f, 0x62, 0x69,
- 0x6c, 0x65, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x77, 0x61, 0x6e, 0x74,
- 0x20, 0x74, 0x6f, 0x6b, 0x69, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x46, 0x69, 0x72,
- 0x65, 0x66, 0x6f, 0x78, 0x79, 0x6f, 0x75, 0x20, 0x61, 0x72, 0x65, 0x73, 0x69,
- 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x73, 0x74, 0x75, 0x64, 0x69, 0x65, 0x64, 0x6d,
- 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67,
- 0x72, 0x61, 0x70, 0x69, 0x64, 0x6c, 0x79, 0x63, 0x6c, 0x69, 0x6d, 0x61, 0x74,
- 0x65, 0x6b, 0x69, 0x6e, 0x67, 0x64, 0x6f, 0x6d, 0x65, 0x6d, 0x65, 0x72, 0x67,
- 0x65, 0x64, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x66, 0x6f, 0x75, 0x6e,
- 0x64, 0x65, 0x64, 0x70, 0x69, 0x6f, 0x6e, 0x65, 0x65, 0x72, 0x66, 0x6f, 0x72,
- 0x6d, 0x75, 0x6c, 0x61, 0x64, 0x79, 0x6e, 0x61, 0x73, 0x74, 0x79, 0x68, 0x6f,
- 0x77, 0x20, 0x74, 0x6f, 0x20, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x72,
- 0x65, 0x76, 0x65, 0x6e, 0x75, 0x65, 0x65, 0x63, 0x6f, 0x6e, 0x6f, 0x6d, 0x79,
- 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x62, 0x72, 0x6f, 0x74, 0x68, 0x65,
- 0x72, 0x73, 0x6f, 0x6c, 0x64, 0x69, 0x65, 0x72, 0x6c, 0x61, 0x72, 0x67, 0x65,
- 0x6c, 0x79, 0x63, 0x61, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x2e, 0x26, 0x71, 0x75,
- 0x6f, 0x74, 0x3b, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x64, 0x77,
- 0x61, 0x72, 0x64, 0x20, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x6f,
- 0x62, 0x65, 0x72, 0x74, 0x20, 0x65, 0x66, 0x66, 0x6f, 0x72, 0x74, 0x73, 0x50,
- 0x61, 0x63, 0x69, 0x66, 0x69, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x6e, 0x65, 0x64,
- 0x75, 0x70, 0x20, 0x77, 0x69, 0x74, 0x68, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74,
- 0x3a, 0x77, 0x65, 0x20, 0x68, 0x61, 0x76, 0x65, 0x41, 0x6e, 0x67, 0x65, 0x6c,
- 0x65, 0x73, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x5f, 0x73, 0x65, 0x61,
- 0x72, 0x63, 0x68, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x61, 0x63, 0x71,
- 0x75, 0x69, 0x72, 0x65, 0x6d, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x67, 0x72,
- 0x61, 0x6e, 0x74, 0x65, 0x64, 0x3a, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x74,
- 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x62, 0x69, 0x67, 0x67, 0x65, 0x73, 0x74,
- 0x62, 0x65, 0x6e, 0x65, 0x66, 0x69, 0x74, 0x64, 0x72, 0x69, 0x76, 0x69, 0x6e,
- 0x67, 0x53, 0x74, 0x75, 0x64, 0x69, 0x65, 0x73, 0x6d, 0x69, 0x6e, 0x69, 0x6d,
- 0x75, 0x6d, 0x70, 0x65, 0x72, 0x68, 0x61, 0x70, 0x73, 0x6d, 0x6f, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x73, 0x65, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x69, 0x73, 0x20,
- 0x75, 0x73, 0x65, 0x64, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x76, 0x61,
- 0x72, 0x69, 0x61, 0x6e, 0x74, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x3d, 0x22, 0x6d,
- 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65,
- 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74, 0x65, 0x73, 0x74, 0x75, 0x64, 0x65, 0x6e,
- 0x74, 0x73, 0x6f, 0x6d, 0x65, 0x6f, 0x6e, 0x65, 0x65, 0x78, 0x74, 0x72, 0x65,
- 0x6d, 0x65, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x62, 0x6f, 0x74, 0x74,
- 0x6f, 0x6d, 0x3a, 0x65, 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x61, 0x6c, 0x6c,
- 0x20, 0x74, 0x68, 0x65, 0x73, 0x69, 0x74, 0x65, 0x6d, 0x61, 0x70, 0x65, 0x6e,
- 0x67, 0x6c, 0x69, 0x73, 0x68, 0x77, 0x61, 0x79, 0x20, 0x74, 0x6f, 0x20, 0x20,
- 0x41, 0x75, 0x67, 0x75, 0x73, 0x74, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x73,
- 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x72,
- 0x73, 0x6d, 0x75, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x61, 0x67, 0x61, 0x69, 0x6e,
- 0x73, 0x74, 0x73, 0x65, 0x72, 0x76, 0x69, 0x6e, 0x67, 0x7d, 0x29, 0x28, 0x29,
- 0x3b, 0x0d, 0x0a, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x74, 0x72, 0x6f,
- 0x75, 0x62, 0x6c, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x63, 0x6f,
- 0x6d, 0x70, 0x61, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x73, 0x70,
- 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73,
- 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x20, 0x27, 0x27, 0x54, 0x68, 0x65,
- 0x20, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x65, 0x78, 0x70, 0x6c, 0x6f,
- 0x72, 0x65, 0x61, 0x64, 0x61, 0x70, 0x74, 0x65, 0x64, 0x47, 0x61, 0x6c, 0x6c,
- 0x65, 0x72, 0x79, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x61, 0x62, 0x69,
- 0x6c, 0x69, 0x74, 0x79, 0x65, 0x6e, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x63, 0x61,
- 0x72, 0x65, 0x65, 0x72, 0x73, 0x29, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x20, 0x63,
- 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x20,
- 0x61, 0x6e, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x65, 0x78, 0x69, 0x73, 0x74, 0x65,
- 0x64, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x20, 0x68, 0x61, 0x6e, 0x64, 0x6c,
- 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x65, 0x64, 0x63, 0x6f, 0x6e, 0x73,
- 0x6f, 0x6c, 0x65, 0x45, 0x61, 0x73, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x78, 0x70,
- 0x6f, 0x72, 0x74, 0x73, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x43, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x69, 0x6c, 0x6c, 0x65, 0x67, 0x61, 0x6c, 0x6e,
- 0x65, 0x75, 0x74, 0x72, 0x61, 0x6c, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74,
- 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x69, 0x67, 0x6e, 0x69, 0x6e,
- 0x67, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x3e, 0x73, 0x65, 0x74, 0x74, 0x6c,
- 0x65, 0x64, 0x77, 0x65, 0x73, 0x74, 0x65, 0x72, 0x6e, 0x63, 0x61, 0x75, 0x73,
- 0x69, 0x6e, 0x67, 0x2d, 0x77, 0x65, 0x62, 0x6b, 0x69, 0x74, 0x63, 0x6c, 0x61,
- 0x69, 0x6d, 0x65, 0x64, 0x4a, 0x75, 0x73, 0x74, 0x69, 0x63, 0x65, 0x63, 0x68,
- 0x61, 0x70, 0x74, 0x65, 0x72, 0x76, 0x69, 0x63, 0x74, 0x69, 0x6d, 0x73, 0x54,
- 0x68, 0x6f, 0x6d, 0x61, 0x73, 0x20, 0x6d, 0x6f, 0x7a, 0x69, 0x6c, 0x6c, 0x61,
- 0x70, 0x72, 0x6f, 0x6d, 0x69, 0x73, 0x65, 0x70, 0x61, 0x72, 0x74, 0x69, 0x65,
- 0x73, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x6f, 0x75, 0x74, 0x73, 0x69,
- 0x64, 0x65, 0x3a, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x2c, 0x68, 0x75, 0x6e, 0x64,
- 0x72, 0x65, 0x64, 0x4f, 0x6c, 0x79, 0x6d, 0x70, 0x69, 0x63, 0x5f, 0x62, 0x75,
- 0x74, 0x74, 0x6f, 0x6e, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x73, 0x72, 0x65,
- 0x61, 0x63, 0x68, 0x65, 0x64, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x69, 0x63, 0x64,
- 0x65, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73,
- 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x61, 0x64, 0x6f, 0x70, 0x74, 0x65,
- 0x64, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x65, 0x69, 0x74, 0x68,
- 0x65, 0x72, 0x67, 0x72, 0x65, 0x61, 0x74, 0x6c, 0x79, 0x67, 0x72, 0x65, 0x61,
- 0x74, 0x65, 0x72, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x6c, 0x69, 0x6d, 0x70,
- 0x72, 0x6f, 0x76, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x73, 0x70,
- 0x65, 0x63, 0x69, 0x61, 0x6c, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x2e, 0x77,
- 0x6f, 0x72, 0x73, 0x68, 0x69, 0x70, 0x66, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67,
- 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x74, 0x68, 0x69, 0x67, 0x68, 0x65, 0x73,
- 0x74, 0x69, 0x6e, 0x73, 0x74, 0x65, 0x61, 0x64, 0x75, 0x74, 0x69, 0x6c, 0x69,
- 0x74, 0x79, 0x71, 0x75, 0x61, 0x72, 0x74, 0x65, 0x72, 0x43, 0x75, 0x6c, 0x74,
- 0x75, 0x72, 0x65, 0x74, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x63, 0x6c, 0x65,
- 0x61, 0x72, 0x6c, 0x79, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x42, 0x72,
- 0x6f, 0x77, 0x73, 0x65, 0x72, 0x6c, 0x69, 0x62, 0x65, 0x72, 0x61, 0x6c, 0x7d,
- 0x20, 0x63, 0x61, 0x74, 0x63, 0x68, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
- 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x68, 0x69, 0x64, 0x65, 0x28, 0x29,
- 0x3b, 0x46, 0x6c, 0x6f, 0x72, 0x69, 0x64, 0x61, 0x61, 0x6e, 0x73, 0x77, 0x65,
- 0x72, 0x73, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x45, 0x6d, 0x70, 0x65,
- 0x72, 0x6f, 0x72, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x73, 0x65, 0x72,
- 0x69, 0x6f, 0x75, 0x73, 0x66, 0x72, 0x65, 0x65, 0x64, 0x6f, 0x6d, 0x53, 0x65,
- 0x76, 0x65, 0x72, 0x61, 0x6c, 0x2d, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x46,
- 0x75, 0x72, 0x74, 0x68, 0x65, 0x72, 0x6f, 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20,
- 0x21, 0x3d, 0x20, 0x6e, 0x75, 0x6c, 0x6c, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x65,
- 0x64, 0x44, 0x65, 0x6e, 0x6d, 0x61, 0x72, 0x6b, 0x76, 0x6f, 0x69, 0x64, 0x28,
- 0x30, 0x29, 0x2f, 0x61, 0x6c, 0x6c, 0x2e, 0x6a, 0x73, 0x70, 0x72, 0x65, 0x76,
- 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x74, 0x65,
- 0x70, 0x68, 0x65, 0x6e, 0x0a, 0x0a, 0x57, 0x68, 0x65, 0x6e, 0x20, 0x6f, 0x62,
- 0x73, 0x65, 0x72, 0x76, 0x65, 0x3c, 0x2f, 0x68, 0x32, 0x3e, 0x0d, 0x0a, 0x4d,
- 0x6f, 0x64, 0x65, 0x72, 0x6e, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
- 0x22, 0x20, 0x61, 0x6c, 0x74, 0x3d, 0x22, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72,
- 0x73, 0x2e, 0x0a, 0x0a, 0x46, 0x6f, 0x72, 0x20, 0x0a, 0x0a, 0x4d, 0x61, 0x6e,
- 0x79, 0x20, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x73, 0x70, 0x6f, 0x77, 0x65,
- 0x72, 0x65, 0x64, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x66, 0x69, 0x63,
- 0x74, 0x69, 0x6f, 0x6e, 0x74, 0x79, 0x70, 0x65, 0x20, 0x6f, 0x66, 0x6d, 0x65,
- 0x64, 0x69, 0x63, 0x61, 0x6c, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x6f,
- 0x70, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x63, 0x69, 0x6c,
- 0x77, 0x69, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x6a, 0x75, 0x73, 0x74, 0x69, 0x63,
- 0x65, 0x47, 0x65, 0x6f, 0x72, 0x67, 0x65, 0x20, 0x42, 0x65, 0x6c, 0x67, 0x69,
- 0x75, 0x6d, 0x2e, 0x2e, 0x2e, 0x3c, 0x2f, 0x61, 0x3e, 0x74, 0x77, 0x69, 0x74,
- 0x74, 0x65, 0x72, 0x6e, 0x6f, 0x74, 0x61, 0x62, 0x6c, 0x79, 0x77, 0x61, 0x69,
- 0x74, 0x69, 0x6e, 0x67, 0x77, 0x61, 0x72, 0x66, 0x61, 0x72, 0x65, 0x20, 0x4f,
- 0x74, 0x68, 0x65, 0x72, 0x20, 0x72, 0x61, 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x70,
- 0x68, 0x72, 0x61, 0x73, 0x65, 0x73, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x75, 0x72, 0x76, 0x69, 0x76, 0x65, 0x73, 0x63, 0x68, 0x6f, 0x6c, 0x61,
- 0x72, 0x3c, 0x2f, 0x70, 0x3e, 0x0d, 0x0a, 0x20, 0x43, 0x6f, 0x75, 0x6e, 0x74,
- 0x72, 0x79, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x64, 0x6c, 0x6f, 0x73, 0x73,
- 0x20, 0x6f, 0x66, 0x6a, 0x75, 0x73, 0x74, 0x20, 0x61, 0x73, 0x47, 0x65, 0x6f,
- 0x72, 0x67, 0x69, 0x61, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x3c, 0x68,
- 0x65, 0x61, 0x64, 0x3e, 0x3c, 0x73, 0x74, 0x6f, 0x70, 0x70, 0x65, 0x64, 0x31,
- 0x27, 0x5d, 0x29, 0x3b, 0x0d, 0x0a, 0x69, 0x73, 0x6c, 0x61, 0x6e, 0x64, 0x73,
- 0x6e, 0x6f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72,
- 0x3a, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x63, 0x61, 0x72, 0x72, 0x69,
- 0x65, 0x64, 0x31, 0x30, 0x30, 0x2c, 0x30, 0x30, 0x30, 0x3c, 0x2f, 0x68, 0x33,
- 0x3e, 0x0a, 0x20, 0x73, 0x65, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x62, 0x65, 0x63,
- 0x6f, 0x6d, 0x65, 0x73, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x20, 0x77, 0x65,
- 0x64, 0x64, 0x69, 0x6e, 0x67, 0x30, 0x30, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x6d,
- 0x6f, 0x6e, 0x61, 0x72, 0x63, 0x68, 0x6f, 0x66, 0x66, 0x20, 0x74, 0x68, 0x65,
- 0x74, 0x65, 0x61, 0x63, 0x68, 0x65, 0x72, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x79,
- 0x20, 0x62, 0x69, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x6c, 0x69, 0x66, 0x65, 0x20,
- 0x6f, 0x66, 0x6f, 0x72, 0x20, 0x65, 0x76, 0x65, 0x6e, 0x72, 0x69, 0x73, 0x65,
- 0x20, 0x6f, 0x66, 0x26, 0x72, 0x61, 0x71, 0x75, 0x6f, 0x3b, 0x70, 0x6c, 0x75,
- 0x73, 0x6f, 0x6e, 0x65, 0x68, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x28, 0x74,
- 0x68, 0x6f, 0x75, 0x67, 0x68, 0x44, 0x6f, 0x75, 0x67, 0x6c, 0x61, 0x73, 0x6a,
- 0x6f, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x73,
- 0x46, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x41, 0x6e, 0x63, 0x69, 0x65, 0x6e,
- 0x74, 0x56, 0x69, 0x65, 0x74, 0x6e, 0x61, 0x6d, 0x76, 0x65, 0x68, 0x69, 0x63,
- 0x6c, 0x65, 0x73, 0x75, 0x63, 0x68, 0x20, 0x61, 0x73, 0x63, 0x72, 0x79, 0x73,
- 0x74, 0x61, 0x6c, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x3d, 0x57, 0x69, 0x6e,
- 0x64, 0x6f, 0x77, 0x73, 0x65, 0x6e, 0x6a, 0x6f, 0x79, 0x65, 0x64, 0x61, 0x20,
- 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x61, 0x73, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x3c,
- 0x61, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x66, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e,
- 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x72, 0x69, 0x68, 0x6f, 0x77, 0x20, 0x74, 0x68,
- 0x65, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x72, 0x65, 0x74, 0x69, 0x72,
- 0x65, 0x64, 0x68, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x68, 0x69, 0x64, 0x64,
- 0x65, 0x6e, 0x3b, 0x62, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x73, 0x73, 0x65, 0x65,
- 0x6b, 0x69, 0x6e, 0x67, 0x63, 0x61, 0x62, 0x69, 0x6e, 0x65, 0x74, 0x77, 0x61,
- 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x6c, 0x6f, 0x6f, 0x6b, 0x20, 0x61, 0x74, 0x63,
- 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x67, 0x65, 0x74, 0x20, 0x74, 0x68, 0x65,
- 0x4a, 0x61, 0x6e, 0x75, 0x61, 0x72, 0x79, 0x68, 0x61, 0x70, 0x70, 0x65, 0x6e,
- 0x73, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x61, 0x3a, 0x68, 0x6f, 0x76,
- 0x65, 0x72, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x46, 0x72, 0x65, 0x6e,
- 0x63, 0x68, 0x20, 0x6c, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x74, 0x79, 0x70,
- 0x69, 0x63, 0x61, 0x6c, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x65, 0x6e,
- 0x65, 0x6d, 0x69, 0x65, 0x73, 0x65, 0x76, 0x65, 0x6e, 0x20, 0x69, 0x66, 0x67,
- 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x64, 0x65, 0x63, 0x69, 0x64, 0x65, 0x64,
- 0x61, 0x72, 0x65, 0x20, 0x6e, 0x6f, 0x74, 0x2f, 0x73, 0x65, 0x61, 0x72, 0x63,
- 0x68, 0x62, 0x65, 0x6c, 0x69, 0x65, 0x66, 0x73, 0x2d, 0x69, 0x6d, 0x61, 0x67,
- 0x65, 0x3a, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x64, 0x73, 0x74, 0x61, 0x74,
- 0x69, 0x63, 0x2e, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x22, 0x3e, 0x63, 0x6f, 0x6e,
- 0x76, 0x65, 0x72, 0x74, 0x76, 0x69, 0x6f, 0x6c, 0x65, 0x6e, 0x74, 0x65, 0x6e,
- 0x74, 0x65, 0x72, 0x65, 0x64, 0x66, 0x69, 0x72, 0x73, 0x74, 0x22, 0x3e, 0x63,
- 0x69, 0x72, 0x63, 0x75, 0x69, 0x74, 0x46, 0x69, 0x6e, 0x6c, 0x61, 0x6e, 0x64,
- 0x63, 0x68, 0x65, 0x6d, 0x69, 0x73, 0x74, 0x73, 0x68, 0x65, 0x20, 0x77, 0x61,
- 0x73, 0x31, 0x30, 0x70, 0x78, 0x3b, 0x22, 0x3e, 0x61, 0x73, 0x20, 0x73, 0x75,
- 0x63, 0x68, 0x64, 0x69, 0x76, 0x69, 0x64, 0x65, 0x64, 0x3c, 0x2f, 0x73, 0x70,
- 0x61, 0x6e, 0x3e, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x6c, 0x69, 0x6e,
- 0x65, 0x20, 0x6f, 0x66, 0x61, 0x20, 0x67, 0x72, 0x65, 0x61, 0x74, 0x6d, 0x79,
- 0x73, 0x74, 0x65, 0x72, 0x79, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x66,
- 0x61, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x64, 0x75, 0x65, 0x20, 0x74, 0x6f, 0x20,
- 0x72, 0x61, 0x69, 0x6c, 0x77, 0x61, 0x79, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x67,
- 0x65, 0x6d, 0x6f, 0x6e, 0x73, 0x74, 0x65, 0x72, 0x64, 0x65, 0x73, 0x63, 0x65,
- 0x6e, 0x74, 0x69, 0x74, 0x20, 0x77, 0x69, 0x74, 0x68, 0x6e, 0x75, 0x63, 0x6c,
- 0x65, 0x61, 0x72, 0x4a, 0x65, 0x77, 0x69, 0x73, 0x68, 0x20, 0x70, 0x72, 0x6f,
- 0x74, 0x65, 0x73, 0x74, 0x42, 0x72, 0x69, 0x74, 0x69, 0x73, 0x68, 0x66, 0x6c,
- 0x6f, 0x77, 0x65, 0x72, 0x73, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x74, 0x72,
- 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20,
- 0x77, 0x68, 0x6f, 0x20, 0x77, 0x61, 0x73, 0x6c, 0x65, 0x63, 0x74, 0x75, 0x72,
- 0x65, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x73, 0x75, 0x69, 0x63, 0x69,
- 0x64, 0x65, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x70, 0x65, 0x72, 0x69,
- 0x6f, 0x64, 0x73, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x73, 0x53, 0x6f, 0x63,
- 0x69, 0x61, 0x6c, 0x20, 0x66, 0x69, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x63, 0x6f,
- 0x6d, 0x62, 0x69, 0x6e, 0x65, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x77,
- 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x73, 0x3c, 0x62, 0x72, 0x20, 0x2f, 0x3e, 0x3c,
- 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4e, 0x61, 0x74, 0x75, 0x72, 0x61,
- 0x6c, 0x50, 0x72, 0x69, 0x76, 0x61, 0x63, 0x79, 0x63, 0x6f, 0x6f, 0x6b, 0x69,
- 0x65, 0x73, 0x6f, 0x75, 0x74, 0x63, 0x6f, 0x6d, 0x65, 0x72, 0x65, 0x73, 0x6f,
- 0x6c, 0x76, 0x65, 0x53, 0x77, 0x65, 0x64, 0x69, 0x73, 0x68, 0x62, 0x72, 0x69,
- 0x65, 0x66, 0x6c, 0x79, 0x50, 0x65, 0x72, 0x73, 0x69, 0x61, 0x6e, 0x73, 0x6f,
- 0x20, 0x6d, 0x75, 0x63, 0x68, 0x43, 0x65, 0x6e, 0x74, 0x75, 0x72, 0x79, 0x64,
- 0x65, 0x70, 0x69, 0x63, 0x74, 0x73, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73,
- 0x68, 0x6f, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x73, 0x6e, 0x65, 0x78, 0x74, 0x20, 0x74, 0x6f, 0x62, 0x65, 0x61, 0x72, 0x69,
- 0x6e, 0x67, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x76, 0x69,
- 0x73, 0x65, 0x64, 0x6a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x28, 0x2d, 0x77, 0x69,
- 0x64, 0x74, 0x68, 0x3a, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x3e, 0x74, 0x6f,
- 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x64,
- 0x65, 0x73, 0x69, 0x67, 0x6e, 0x73, 0x54, 0x75, 0x72, 0x6b, 0x69, 0x73, 0x68,
- 0x79, 0x6f, 0x75, 0x6e, 0x67, 0x65, 0x72, 0x2e, 0x6d, 0x61, 0x74, 0x63, 0x68,
- 0x28, 0x7d, 0x29, 0x28, 0x29, 0x3b, 0x0a, 0x0a, 0x62, 0x75, 0x72, 0x6e, 0x69,
- 0x6e, 0x67, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x65, 0x67, 0x72,
- 0x65, 0x65, 0x73, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x3d, 0x52, 0x69, 0x63,
- 0x68, 0x61, 0x72, 0x64, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x6c, 0x79, 0x70, 0x6c,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x3c,
- 0x2f, 0x74, 0x72, 0x3e, 0x0d, 0x0a, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x23,
- 0x75, 0x6c, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x70, 0x6f, 0x73, 0x73, 0x65, 0x73,
- 0x73, 0x72, 0x6f, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x70, 0x68, 0x79, 0x73, 0x69,
- 0x63, 0x73, 0x66, 0x61, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x65, 0x78, 0x65, 0x63,
- 0x75, 0x74, 0x65, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x73, 0x74, 0x6c, 0x69, 0x6e,
- 0x6b, 0x20, 0x74, 0x6f, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x3c, 0x62,
- 0x72, 0x20, 0x2f, 0x3e, 0x0a, 0x3a, 0x20, 0x74, 0x72, 0x75, 0x65, 0x2c, 0x63,
- 0x68, 0x61, 0x72, 0x74, 0x65, 0x72, 0x74, 0x6f, 0x75, 0x72, 0x69, 0x73, 0x6d,
- 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x63, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x65,
- 0x64, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x3c, 0x2f, 0x68, 0x31, 0x3e,
- 0x0d, 0x0a, 0x6f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2e, 0x3f, 0x78, 0x6d, 0x6c,
- 0x20, 0x76, 0x65, 0x68, 0x65, 0x6c, 0x70, 0x69, 0x6e, 0x67, 0x64, 0x69, 0x61,
- 0x6d, 0x6f, 0x6e, 0x64, 0x75, 0x73, 0x65, 0x20, 0x74, 0x68, 0x65, 0x61, 0x69,
- 0x72, 0x6c, 0x69, 0x6e, 0x65, 0x65, 0x6e, 0x64, 0x20, 0x2d, 0x2d, 0x3e, 0x29,
- 0x2e, 0x61, 0x74, 0x74, 0x72, 0x28, 0x72, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73,
- 0x68, 0x6f, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x23, 0x66, 0x66, 0x66, 0x66, 0x66,
- 0x66, 0x72, 0x65, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x56, 0x69, 0x6e, 0x63, 0x65,
- 0x6e, 0x74, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x73, 0x20, 0x73, 0x72, 0x63,
- 0x3d, 0x22, 0x2f, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x64, 0x65, 0x73,
- 0x70, 0x69, 0x74, 0x65, 0x64, 0x69, 0x76, 0x65, 0x72, 0x73, 0x65, 0x74, 0x65,
- 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20, 0x68,
- 0x65, 0x6c, 0x64, 0x20, 0x69, 0x6e, 0x4a, 0x6f, 0x73, 0x65, 0x70, 0x68, 0x20,
- 0x74, 0x68, 0x65, 0x61, 0x74, 0x72, 0x65, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74,
- 0x73, 0x3c, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3e, 0x61, 0x20, 0x6c, 0x61, 0x72,
- 0x67, 0x65, 0x64, 0x6f, 0x65, 0x73, 0x6e, 0x27, 0x74, 0x6c, 0x61, 0x74, 0x65,
- 0x72, 0x2c, 0x20, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x66, 0x61, 0x76,
- 0x69, 0x63, 0x6f, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x48, 0x75,
- 0x6e, 0x67, 0x61, 0x72, 0x79, 0x41, 0x69, 0x72, 0x70, 0x6f, 0x72, 0x74, 0x73,
- 0x65, 0x65, 0x20, 0x74, 0x68, 0x65, 0x73, 0x6f, 0x20, 0x74, 0x68, 0x61, 0x74,
- 0x4d, 0x69, 0x63, 0x68, 0x61, 0x65, 0x6c, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d,
- 0x73, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x73, 0x2c, 0x20, 0x61, 0x6e,
- 0x64, 0x20, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3d, 0x65, 0x26, 0x71, 0x75,
- 0x6f, 0x74, 0x3b, 0x74, 0x72, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x66,
- 0x74, 0x22, 0x3e, 0x0a, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x73, 0x47, 0x6f,
- 0x6c, 0x64, 0x65, 0x6e, 0x20, 0x41, 0x66, 0x66, 0x61, 0x69, 0x72, 0x73, 0x67,
- 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x69, 0x6e, 0x67,
- 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x69, 0x64, 0x65, 0x61, 0x20, 0x6f,
- 0x66, 0x63, 0x61, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x6f, 0x6c, 0x64, 0x65, 0x73,
- 0x74, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x2e, 0x73, 0x72, 0x63,
- 0x20, 0x3d, 0x20, 0x63, 0x61, 0x72, 0x74, 0x6f, 0x6f, 0x6e, 0x72, 0x65, 0x67,
- 0x69, 0x73, 0x74, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x73, 0x4d, 0x75,
- 0x73, 0x6c, 0x69, 0x6d, 0x73, 0x57, 0x68, 0x61, 0x74, 0x20, 0x69, 0x73, 0x69,
- 0x6e, 0x20, 0x6d, 0x61, 0x6e, 0x79, 0x6d, 0x61, 0x72, 0x6b, 0x69, 0x6e, 0x67,
- 0x72, 0x65, 0x76, 0x65, 0x61, 0x6c, 0x73, 0x49, 0x6e, 0x64, 0x65, 0x65, 0x64,
- 0x2c, 0x65, 0x71, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x2f, 0x73, 0x68, 0x6f, 0x77,
- 0x5f, 0x61, 0x6f, 0x75, 0x74, 0x64, 0x6f, 0x6f, 0x72, 0x65, 0x73, 0x63, 0x61,
- 0x70, 0x65, 0x28, 0x41, 0x75, 0x73, 0x74, 0x72, 0x69, 0x61, 0x67, 0x65, 0x6e,
- 0x65, 0x74, 0x69, 0x63, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x2c, 0x49, 0x6e,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x69, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x48,
- 0x65, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x49, 0x73, 0x6c, 0x61, 0x6e, 0x64, 0x73,
- 0x41, 0x63, 0x61, 0x64, 0x65, 0x6d, 0x79, 0x0a, 0x09, 0x09, 0x3c, 0x21, 0x2d,
- 0x2d, 0x44, 0x61, 0x6e, 0x69, 0x65, 0x6c, 0x20, 0x62, 0x69, 0x6e, 0x64, 0x69,
- 0x6e, 0x67, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x3e, 0x69, 0x6d, 0x70, 0x6f,
- 0x73, 0x65, 0x64, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x65, 0x41, 0x62, 0x72,
- 0x61, 0x68, 0x61, 0x6d, 0x28, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x7b, 0x77,
- 0x69, 0x64, 0x74, 0x68, 0x3a, 0x70, 0x75, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x29,
- 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x28, 0x7c, 0x7c, 0x20, 0x5b, 0x5d, 0x3b, 0x0a,
- 0x44, 0x41, 0x54, 0x41, 0x5b, 0x20, 0x2a, 0x6b, 0x69, 0x74, 0x63, 0x68, 0x65,
- 0x6e, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x64, 0x61, 0x63, 0x74, 0x75, 0x61,
- 0x6c, 0x20, 0x64, 0x69, 0x61, 0x6c, 0x65, 0x63, 0x74, 0x6d, 0x61, 0x69, 0x6e,
- 0x6c, 0x79, 0x20, 0x5f, 0x62, 0x6c, 0x61, 0x6e, 0x6b, 0x27, 0x69, 0x6e, 0x73,
- 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x78, 0x70, 0x65, 0x72, 0x74, 0x73, 0x69, 0x66,
- 0x28, 0x74, 0x79, 0x70, 0x65, 0x49, 0x74, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x26,
- 0x63, 0x6f, 0x70, 0x79, 0x3b, 0x20, 0x22, 0x3e, 0x54, 0x65, 0x72, 0x6d, 0x73,
- 0x62, 0x6f, 0x72, 0x6e, 0x20, 0x69, 0x6e, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x65, 0x61, 0x73, 0x74, 0x65, 0x72, 0x6e, 0x74, 0x61, 0x6c, 0x6b, 0x69,
- 0x6e, 0x67, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x72, 0x6e, 0x67, 0x61, 0x69, 0x6e,
- 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x6a, 0x75, 0x73,
- 0x74, 0x69, 0x66, 0x79, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x73, 0x66, 0x61,
- 0x63, 0x74, 0x6f, 0x72, 0x79, 0x69, 0x74, 0x73, 0x20, 0x6f, 0x77, 0x6e, 0x61,
- 0x73, 0x73, 0x61, 0x75, 0x6c, 0x74, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x64,
- 0x6c, 0x61, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x68, 0x69, 0x73, 0x20, 0x6f, 0x77,
- 0x6e, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x2f, 0x22, 0x20, 0x72, 0x65, 0x6c,
- 0x3d, 0x22, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x63, 0x6f, 0x6e, 0x63,
- 0x65, 0x72, 0x74, 0x64, 0x69, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x64, 0x6f, 0x6c,
- 0x6c, 0x61, 0x72, 0x73, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x70, 0x68,
- 0x70, 0x3f, 0x69, 0x64, 0x3d, 0x61, 0x6c, 0x63, 0x6f, 0x68, 0x6f, 0x6c, 0x29,
- 0x3b, 0x7d, 0x29, 0x28, 0x29, 0x3b, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x61,
- 0x3e, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x76, 0x65, 0x73, 0x73, 0x65, 0x6c,
- 0x73, 0x72, 0x65, 0x76, 0x69, 0x76, 0x61, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65,
- 0x73, 0x73, 0x61, 0x6d, 0x61, 0x74, 0x65, 0x75, 0x72, 0x61, 0x6e, 0x64, 0x72,
- 0x6f, 0x69, 0x64, 0x61, 0x6c, 0x6c, 0x65, 0x67, 0x65, 0x64, 0x69, 0x6c, 0x6c,
- 0x6e, 0x65, 0x73, 0x73, 0x77, 0x61, 0x6c, 0x6b, 0x69, 0x6e, 0x67, 0x63, 0x65,
- 0x6e, 0x74, 0x65, 0x72, 0x73, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x66, 0x79, 0x6d,
- 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x75, 0x6e, 0x69, 0x66, 0x69, 0x65, 0x64,
- 0x65, 0x78, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x73,
- 0x65, 0x64, 0x69, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x0a, 0x09, 0x3c, 0x21, 0x2d,
- 0x2d, 0x20, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x73, 0x6c, 0x69, 0x6e, 0x6b,
- 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x74, 0x74, 0x6c, 0x65, 0x20, 0x42, 0x6f, 0x6f,
- 0x6b, 0x20, 0x6f, 0x66, 0x65, 0x76, 0x65, 0x6e, 0x69, 0x6e, 0x67, 0x6d, 0x69,
- 0x6e, 0x2e, 0x6a, 0x73, 0x3f, 0x61, 0x72, 0x65, 0x20, 0x74, 0x68, 0x65, 0x6b,
- 0x6f, 0x6e, 0x74, 0x61, 0x6b, 0x74, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x27, 0x73,
- 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74,
- 0x3d, 0x77, 0x65, 0x61, 0x72, 0x69, 0x6e, 0x67, 0x41, 0x6c, 0x6c, 0x20, 0x52,
- 0x69, 0x67, 0x3b, 0x0a, 0x7d, 0x29, 0x28, 0x29, 0x3b, 0x72, 0x61, 0x69, 0x73,
- 0x69, 0x6e, 0x67, 0x20, 0x41, 0x6c, 0x73, 0x6f, 0x2c, 0x20, 0x63, 0x72, 0x75,
- 0x63, 0x69, 0x61, 0x6c, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x22, 0x3e, 0x64, 0x65,
- 0x63, 0x6c, 0x61, 0x72, 0x65, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x73, 0x63, 0x66,
- 0x69, 0x72, 0x65, 0x66, 0x6f, 0x78, 0x61, 0x73, 0x20, 0x6d, 0x75, 0x63, 0x68,
- 0x61, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2c,
- 0x20, 0x73, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20,
- 0x3d, 0x20, 0x0a, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x74, 0x6f, 0x77, 0x61,
- 0x72, 0x64, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x50, 0x72, 0x69,
- 0x76, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x65, 0x69, 0x67, 0x6e, 0x50, 0x72,
- 0x65, 0x6d, 0x69, 0x65, 0x72, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x56,
- 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73,
- 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x65,
- 0x64, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x3b, 0x70, 0x6f, 0x76, 0x65, 0x72,
- 0x74, 0x79, 0x63, 0x68, 0x61, 0x6d, 0x62, 0x65, 0x72, 0x4c, 0x69, 0x76, 0x69,
- 0x6e, 0x67, 0x20, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x73, 0x41, 0x6e, 0x74,
- 0x68, 0x6f, 0x6e, 0x79, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x22, 0x20, 0x52, 0x65,
- 0x6c, 0x61, 0x74, 0x65, 0x64, 0x45, 0x63, 0x6f, 0x6e, 0x6f, 0x6d, 0x79, 0x72,
- 0x65, 0x61, 0x63, 0x68, 0x65, 0x73, 0x63, 0x75, 0x74, 0x74, 0x69, 0x6e, 0x67,
- 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x6c, 0x69, 0x66, 0x65, 0x20, 0x69,
- 0x6e, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, 0x2d, 0x73, 0x68, 0x61, 0x64,
- 0x6f, 0x77, 0x4e, 0x6f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x3c, 0x2f, 0x74, 0x64,
- 0x3e, 0x0d, 0x0a, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x74, 0x61,
- 0x64, 0x69, 0x75, 0x6d, 0x77, 0x69, 0x64, 0x67, 0x65, 0x74, 0x73, 0x76, 0x61,
- 0x72, 0x79, 0x69, 0x6e, 0x67, 0x74, 0x72, 0x61, 0x76, 0x65, 0x6c, 0x73, 0x68,
- 0x65, 0x6c, 0x64, 0x20, 0x62, 0x79, 0x77, 0x68, 0x6f, 0x20, 0x61, 0x72, 0x65,
- 0x77, 0x6f, 0x72, 0x6b, 0x20, 0x69, 0x6e, 0x66, 0x61, 0x63, 0x75, 0x6c, 0x74,
- 0x79, 0x61, 0x6e, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x77, 0x68, 0x6f, 0x20, 0x68,
- 0x61, 0x64, 0x61, 0x69, 0x72, 0x70, 0x6f, 0x72, 0x74, 0x74, 0x6f, 0x77, 0x6e,
- 0x20, 0x6f, 0x66, 0x0a, 0x0a, 0x53, 0x6f, 0x6d, 0x65, 0x20, 0x27, 0x63, 0x6c,
- 0x69, 0x63, 0x6b, 0x27, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x73, 0x6b, 0x65,
- 0x79, 0x77, 0x6f, 0x72, 0x64, 0x69, 0x74, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x63,
- 0x69, 0x74, 0x79, 0x20, 0x6f, 0x66, 0x28, 0x74, 0x68, 0x69, 0x73, 0x29, 0x3b,
- 0x41, 0x6e, 0x64, 0x72, 0x65, 0x77, 0x20, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65,
- 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, 0x6f, 0x72, 0x20, 0x6d, 0x6f,
- 0x72, 0x65, 0x33, 0x30, 0x30, 0x70, 0x78, 0x3b, 0x20, 0x72, 0x65, 0x74, 0x75,
- 0x72, 0x6e, 0x3b, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x70, 0x6c, 0x75,
- 0x67, 0x69, 0x6e, 0x73, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x20, 0x68, 0x65,
- 0x72, 0x73, 0x65, 0x6c, 0x66, 0x53, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46,
- 0x65, 0x64, 0x65, 0x72, 0x61, 0x6c, 0x76, 0x65, 0x6e, 0x74, 0x75, 0x72, 0x65,
- 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x73, 0x65, 0x6e, 0x74, 0x20, 0x74,
- 0x6f, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x63, 0x74, 0x72, 0x65,
- 0x73, 0x73, 0x63, 0x6f, 0x6d, 0x65, 0x20, 0x74, 0x6f, 0x66, 0x69, 0x6e, 0x67,
- 0x65, 0x72, 0x73, 0x44, 0x75, 0x6b, 0x65, 0x20, 0x6f, 0x66, 0x70, 0x65, 0x6f,
- 0x70, 0x6c, 0x65, 0x2c, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x69, 0x74, 0x77, 0x68,
- 0x61, 0x74, 0x20, 0x69, 0x73, 0x68, 0x61, 0x72, 0x6d, 0x6f, 0x6e, 0x79, 0x61,
- 0x20, 0x6d, 0x61, 0x6a, 0x6f, 0x72, 0x22, 0x3a, 0x22, 0x68, 0x74, 0x74, 0x70,
- 0x69, 0x6e, 0x20, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x22, 0x3e,
- 0x0a, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x6f, 0x66, 0x66, 0x69, 0x63,
- 0x65, 0x72, 0x63, 0x6f, 0x75, 0x6e, 0x63, 0x69, 0x6c, 0x67, 0x61, 0x69, 0x6e,
- 0x69, 0x6e, 0x67, 0x65, 0x76, 0x65, 0x6e, 0x20, 0x69, 0x6e, 0x53, 0x75, 0x6d,
- 0x6d, 0x61, 0x72, 0x79, 0x64, 0x61, 0x74, 0x65, 0x20, 0x6f, 0x66, 0x6c, 0x6f,
- 0x79, 0x61, 0x6c, 0x74, 0x79, 0x66, 0x69, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x61,
- 0x6e, 0x64, 0x20, 0x77, 0x61, 0x73, 0x65, 0x6d, 0x70, 0x65, 0x72, 0x6f, 0x72,
- 0x73, 0x75, 0x70, 0x72, 0x65, 0x6d, 0x65, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64,
- 0x20, 0x68, 0x65, 0x61, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x73, 0x73, 0x69,
- 0x61, 0x6e, 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x73, 0x74, 0x41, 0x6c, 0x62, 0x65,
- 0x72, 0x74, 0x61, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x73, 0x65, 0x74,
- 0x20, 0x6f, 0x66, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x22, 0x3e, 0x2e, 0x61,
- 0x70, 0x70, 0x65, 0x6e, 0x64, 0x64, 0x6f, 0x20, 0x77, 0x69, 0x74, 0x68, 0x66,
- 0x65, 0x64, 0x65, 0x72, 0x61, 0x6c, 0x62, 0x61, 0x6e, 0x6b, 0x20, 0x6f, 0x66,
- 0x62, 0x65, 0x6e, 0x65, 0x61, 0x74, 0x68, 0x44, 0x65, 0x73, 0x70, 0x69, 0x74,
- 0x65, 0x43, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x67, 0x72, 0x6f, 0x75, 0x6e,
- 0x64, 0x73, 0x29, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x65, 0x72, 0x63,
- 0x65, 0x6e, 0x74, 0x69, 0x74, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x63, 0x6c, 0x6f,
- 0x73, 0x69, 0x6e, 0x67, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x49, 0x6e,
- 0x73, 0x74, 0x65, 0x61, 0x64, 0x66, 0x69, 0x66, 0x74, 0x65, 0x65, 0x6e, 0x61,
- 0x73, 0x20, 0x77, 0x65, 0x6c, 0x6c, 0x2e, 0x79, 0x61, 0x68, 0x6f, 0x6f, 0x2e,
- 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x66, 0x69, 0x67, 0x68, 0x74, 0x65,
- 0x72, 0x6f, 0x62, 0x73, 0x63, 0x75, 0x72, 0x65, 0x72, 0x65, 0x66, 0x6c, 0x65,
- 0x63, 0x74, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x63, 0x3d, 0x20, 0x4d, 0x61,
- 0x74, 0x68, 0x2e, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6e, 0x67, 0x6f, 0x6e, 0x6c,
- 0x69, 0x6e, 0x65, 0x20, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x61, 0x20,
- 0x77, 0x68, 0x6f, 0x6c, 0x65, 0x6f, 0x6e, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x79,
- 0x65, 0x61, 0x72, 0x20, 0x6f, 0x66, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20,
- 0x62, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x69,
- 0x74, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x20, 0x68, 0x6f, 0x6d, 0x65, 0x20,
- 0x6f, 0x66, 0x72, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x72, 0x65, 0x6e, 0x61,
- 0x6d, 0x65, 0x64, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x3e, 0x68, 0x65, 0x61,
- 0x74, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x63, 0x6c,
- 0x6f, 0x75, 0x64, 0x66, 0x72, 0x77, 0x61, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x4d,
- 0x61, 0x72, 0x63, 0x68, 0x20, 0x31, 0x6b, 0x6e, 0x6f, 0x77, 0x69, 0x6e, 0x67,
- 0x69, 0x6e, 0x20, 0x70, 0x61, 0x72, 0x74, 0x42, 0x65, 0x74, 0x77, 0x65, 0x65,
- 0x6e, 0x6c, 0x65, 0x73, 0x73, 0x6f, 0x6e, 0x73, 0x63, 0x6c, 0x6f, 0x73, 0x65,
- 0x73, 0x74, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x6c, 0x69, 0x6e, 0x6b,
- 0x73, 0x22, 0x3e, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x65, 0x64, 0x45, 0x4e, 0x44,
- 0x20, 0x2d, 0x2d, 0x3e, 0x66, 0x61, 0x6d, 0x6f, 0x75, 0x73, 0x20, 0x61, 0x77,
- 0x61, 0x72, 0x64, 0x65, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x48,
- 0x65, 0x61, 0x6c, 0x74, 0x68, 0x20, 0x66, 0x61, 0x69, 0x72, 0x6c, 0x79, 0x20,
- 0x77, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x79, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x61,
- 0x6c, 0x41, 0x66, 0x72, 0x69, 0x63, 0x61, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x65,
- 0x74, 0x65, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x22, 0x3e, 0x73, 0x69, 0x6e, 0x67,
- 0x69, 0x6e, 0x67, 0x66, 0x61, 0x72, 0x6d, 0x65, 0x72, 0x73, 0x42, 0x72, 0x61,
- 0x73, 0x69, 0x6c, 0x29, 0x64, 0x69, 0x73, 0x63, 0x75, 0x73, 0x73, 0x72, 0x65,
- 0x70, 0x6c, 0x61, 0x63, 0x65, 0x47, 0x72, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x66,
- 0x6f, 0x6e, 0x74, 0x20, 0x63, 0x6f, 0x70, 0x75, 0x72, 0x73, 0x75, 0x65, 0x64,
- 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x73, 0x6d, 0x61, 0x6b, 0x65, 0x20, 0x75,
- 0x70, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x62, 0x6f, 0x74, 0x68, 0x20,
- 0x6f, 0x66, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x73, 0x61, 0x77, 0x20,
- 0x74, 0x68, 0x65, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x73, 0x63, 0x6f, 0x6c,
- 0x6f, 0x75, 0x72, 0x73, 0x69, 0x66, 0x28, 0x64, 0x6f, 0x63, 0x75, 0x77, 0x68,
- 0x65, 0x6e, 0x20, 0x68, 0x65, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x70,
- 0x75, 0x73, 0x68, 0x28, 0x66, 0x75, 0x41, 0x75, 0x67, 0x75, 0x73, 0x74, 0x20,
- 0x55, 0x54, 0x46, 0x2d, 0x38, 0x22, 0x3e, 0x46, 0x61, 0x6e, 0x74, 0x61, 0x73,
- 0x79, 0x69, 0x6e, 0x20, 0x6d, 0x6f, 0x73, 0x74, 0x69, 0x6e, 0x6a, 0x75, 0x72,
- 0x65, 0x64, 0x55, 0x73, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x66, 0x61, 0x72, 0x6d,
- 0x69, 0x6e, 0x67, 0x63, 0x6c, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x6f, 0x62, 0x6a,
- 0x65, 0x63, 0x74, 0x20, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x63, 0x65, 0x75, 0x73,
- 0x65, 0x20, 0x6f, 0x66, 0x20, 0x4d, 0x65, 0x64, 0x69, 0x63, 0x61, 0x6c, 0x3c,
- 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x0a, 0x65, 0x76, 0x69, 0x64, 0x65, 0x6e, 0x74,
- 0x62, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x6b, 0x65, 0x79, 0x43, 0x6f, 0x64,
- 0x65, 0x73, 0x69, 0x78, 0x74, 0x65, 0x65, 0x6e, 0x49, 0x73, 0x6c, 0x61, 0x6d,
- 0x69, 0x63, 0x23, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x65, 0x6e, 0x74, 0x69,
- 0x72, 0x65, 0x20, 0x77, 0x69, 0x64, 0x65, 0x6c, 0x79, 0x20, 0x61, 0x63, 0x74,
- 0x69, 0x76, 0x65, 0x20, 0x28, 0x74, 0x79, 0x70, 0x65, 0x6f, 0x66, 0x6f, 0x6e,
- 0x65, 0x20, 0x63, 0x61, 0x6e, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x20, 0x3d, 0x73,
- 0x70, 0x65, 0x61, 0x6b, 0x65, 0x72, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x73,
- 0x50, 0x68, 0x79, 0x73, 0x69, 0x63, 0x73, 0x74, 0x65, 0x72, 0x72, 0x61, 0x69,
- 0x6e, 0x3c, 0x74, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x66, 0x75, 0x6e, 0x65, 0x72,
- 0x61, 0x6c, 0x76, 0x69, 0x65, 0x77, 0x69, 0x6e, 0x67, 0x6d, 0x69, 0x64, 0x64,
- 0x6c, 0x65, 0x20, 0x63, 0x72, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x70, 0x72, 0x6f,
- 0x70, 0x68, 0x65, 0x74, 0x73, 0x68, 0x69, 0x66, 0x74, 0x65, 0x64, 0x64, 0x6f,
- 0x63, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x75, 0x73, 0x73, 0x65, 0x6c, 0x6c, 0x20,
- 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74,
- 0x61, 0x6c, 0x67, 0x65, 0x62, 0x72, 0x61, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x6c,
- 0x2d, 0x62, 0x75, 0x6c, 0x6b, 0x20, 0x6f, 0x66, 0x6d, 0x61, 0x6e, 0x20, 0x61,
- 0x6e, 0x64, 0x3c, 0x2f, 0x74, 0x64, 0x3e, 0x0a, 0x20, 0x68, 0x65, 0x20, 0x6c,
- 0x65, 0x66, 0x74, 0x29, 0x2e, 0x76, 0x61, 0x6c, 0x28, 0x29, 0x66, 0x61, 0x6c,
- 0x73, 0x65, 0x29, 0x3b, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x62, 0x61,
- 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x68, 0x6f, 0x6d, 0x65, 0x20, 0x74, 0x6f, 0x6e,
- 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x20, 0x41, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x61,
- 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x73, 0x29, 0x3b, 0x0a, 0x7d, 0x29, 0x3b,
- 0x0a, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x20, 0x74, 0x75,
- 0x72, 0x6e, 0x43, 0x6f, 0x6c, 0x6c, 0x69, 0x6e, 0x73, 0x62, 0x65, 0x66, 0x6f,
- 0x72, 0x65, 0x20, 0x42, 0x75, 0x74, 0x20, 0x74, 0x68, 0x65, 0x63, 0x68, 0x61,
- 0x72, 0x67, 0x65, 0x64, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x3e, 0x43, 0x61,
- 0x70, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x70, 0x65, 0x6c, 0x6c, 0x65, 0x64, 0x67,
- 0x6f, 0x64, 0x64, 0x65, 0x73, 0x73, 0x54, 0x61, 0x67, 0x20, 0x2d, 0x2d, 0x3e,
- 0x41, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x62, 0x75, 0x74, 0x20, 0x77, 0x61,
- 0x73, 0x52, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x20, 0x70, 0x61, 0x74, 0x69, 0x65,
- 0x6e, 0x74, 0x62, 0x61, 0x63, 0x6b, 0x20, 0x69, 0x6e, 0x3d, 0x66, 0x61, 0x6c,
- 0x73, 0x65, 0x26, 0x4c, 0x69, 0x6e, 0x63, 0x6f, 0x6c, 0x6e, 0x77, 0x65, 0x20,
- 0x6b, 0x6e, 0x6f, 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x4a, 0x75,
- 0x64, 0x61, 0x69, 0x73, 0x6d, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x61,
- 0x6c, 0x74, 0x65, 0x72, 0x65, 0x64, 0x27, 0x5d, 0x29, 0x3b, 0x0a, 0x20, 0x20,
- 0x68, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x75, 0x6e, 0x63, 0x6c, 0x65, 0x61,
- 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x27, 0x2c, 0x62, 0x6f, 0x74, 0x68, 0x20,
- 0x69, 0x6e, 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x0a, 0x0a, 0x3c, 0x21,
- 0x2d, 0x2d, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x68, 0x61, 0x72,
- 0x64, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x6f,
- 0x72, 0x74, 0x20, 0x6f, 0x66, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x73, 0x73,
- 0x74, 0x72, 0x65, 0x65, 0x74, 0x73, 0x42, 0x65, 0x72, 0x6e, 0x61, 0x72, 0x64,
- 0x61, 0x73, 0x73, 0x65, 0x72, 0x74, 0x73, 0x74, 0x65, 0x6e, 0x64, 0x20, 0x74,
- 0x6f, 0x66, 0x61, 0x6e, 0x74, 0x61, 0x73, 0x79, 0x64, 0x6f, 0x77, 0x6e, 0x20,
- 0x69, 0x6e, 0x68, 0x61, 0x72, 0x62, 0x6f, 0x75, 0x72, 0x46, 0x72, 0x65, 0x65,
- 0x64, 0x6f, 0x6d, 0x6a, 0x65, 0x77, 0x65, 0x6c, 0x72, 0x79, 0x2f, 0x61, 0x62,
- 0x6f, 0x75, 0x74, 0x2e, 0x2e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x6c, 0x65,
- 0x67, 0x65, 0x6e, 0x64, 0x73, 0x69, 0x73, 0x20, 0x6d, 0x61, 0x64, 0x65, 0x6d,
- 0x6f, 0x64, 0x65, 0x72, 0x6e, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x6f, 0x6e,
- 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x74, 0x6f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x22,
- 0x20, 0x6c, 0x69, 0x6e, 0x65, 0x61, 0x72, 0x20, 0x70, 0x61, 0x69, 0x6e, 0x74,
- 0x65, 0x72, 0x61, 0x6e, 0x64, 0x20, 0x6e, 0x6f, 0x74, 0x72, 0x61, 0x72, 0x65,
- 0x6c, 0x79, 0x20, 0x61, 0x63, 0x72, 0x6f, 0x6e, 0x79, 0x6d, 0x64, 0x65, 0x6c,
- 0x69, 0x76, 0x65, 0x72, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x30, 0x30,
- 0x26, 0x61, 0x6d, 0x70, 0x3b, 0x61, 0x73, 0x20, 0x6d, 0x61, 0x6e, 0x79, 0x77,
- 0x69, 0x64, 0x74, 0x68, 0x3d, 0x22, 0x2f, 0x2a, 0x20, 0x3c, 0x21, 0x5b, 0x43,
- 0x74, 0x69, 0x74, 0x6c, 0x65, 0x20, 0x3d, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x6c, 0x6f, 0x77, 0x65, 0x73, 0x74, 0x20, 0x70, 0x69, 0x63, 0x6b, 0x65,
- 0x64, 0x20, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x64, 0x75, 0x73, 0x65, 0x73,
- 0x20, 0x6f, 0x66, 0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x73, 0x20, 0x50, 0x75,
- 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x61, 0x74, 0x74, 0x68, 0x65, 0x77, 0x74, 0x61,
- 0x63, 0x74, 0x69, 0x63, 0x73, 0x64, 0x61, 0x6d, 0x61, 0x67, 0x65, 0x64, 0x77,
- 0x61, 0x79, 0x20, 0x66, 0x6f, 0x72, 0x6c, 0x61, 0x77, 0x73, 0x20, 0x6f, 0x66,
- 0x65, 0x61, 0x73, 0x79, 0x20, 0x74, 0x6f, 0x20, 0x77, 0x69, 0x6e, 0x64, 0x6f,
- 0x77, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x20, 0x20, 0x73, 0x69, 0x6d, 0x70,
- 0x6c, 0x65, 0x7d, 0x63, 0x61, 0x74, 0x63, 0x68, 0x28, 0x73, 0x65, 0x76, 0x65,
- 0x6e, 0x74, 0x68, 0x69, 0x6e, 0x66, 0x6f, 0x62, 0x6f, 0x78, 0x77, 0x65, 0x6e,
- 0x74, 0x20, 0x74, 0x6f, 0x70, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x64, 0x63, 0x69,
- 0x74, 0x69, 0x7a, 0x65, 0x6e, 0x49, 0x20, 0x64, 0x6f, 0x6e, 0x27, 0x74, 0x72,
- 0x65, 0x74, 0x72, 0x65, 0x61, 0x74, 0x2e, 0x20, 0x53, 0x6f, 0x6d, 0x65, 0x20,
- 0x77, 0x77, 0x2e, 0x22, 0x29, 0x3b, 0x0a, 0x62, 0x6f, 0x6d, 0x62, 0x69, 0x6e,
- 0x67, 0x6d, 0x61, 0x69, 0x6c, 0x74, 0x6f, 0x3a, 0x6d, 0x61, 0x64, 0x65, 0x20,
- 0x69, 0x6e, 0x2e, 0x20, 0x4d, 0x61, 0x6e, 0x79, 0x20, 0x63, 0x61, 0x72, 0x72,
- 0x69, 0x65, 0x73, 0x7c, 0x7c, 0x7b, 0x7d, 0x3b, 0x77, 0x69, 0x77, 0x6f, 0x72,
- 0x6b, 0x20, 0x6f, 0x66, 0x73, 0x79, 0x6e, 0x6f, 0x6e, 0x79, 0x6d, 0x64, 0x65,
- 0x66, 0x65, 0x61, 0x74, 0x73, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x65, 0x64, 0x6f,
- 0x70, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x70, 0x61, 0x67, 0x65, 0x54, 0x72, 0x61,
- 0x75, 0x6e, 0x6c, 0x65, 0x73, 0x73, 0x20, 0x73, 0x65, 0x6e, 0x64, 0x69, 0x6e,
- 0x67, 0x6c, 0x65, 0x66, 0x74, 0x22, 0x3e, 0x3c, 0x63, 0x6f, 0x6d, 0x53, 0x63,
- 0x6f, 0x72, 0x41, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x6a, 0x51, 0x75, 0x65,
- 0x72, 0x79, 0x2e, 0x74, 0x6f, 0x75, 0x72, 0x69, 0x73, 0x74, 0x43, 0x6c, 0x61,
- 0x73, 0x73, 0x69, 0x63, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x22, 0x20, 0x57, 0x69,
- 0x6c, 0x68, 0x65, 0x6c, 0x6d, 0x73, 0x75, 0x62, 0x75, 0x72, 0x62, 0x73, 0x67,
- 0x65, 0x6e, 0x75, 0x69, 0x6e, 0x65, 0x62, 0x69, 0x73, 0x68, 0x6f, 0x70, 0x73,
- 0x2e, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x28, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c,
- 0x20, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x62, 0x6f, 0x64, 0x79, 0x20,
- 0x6f, 0x66, 0x6e, 0x6f, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x74,
- 0x61, 0x63, 0x74, 0x73, 0x65, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x6c, 0x65, 0x66,
- 0x74, 0x20, 0x74, 0x6f, 0x63, 0x68, 0x69, 0x65, 0x66, 0x6c, 0x79, 0x2d, 0x68,
- 0x69, 0x64, 0x64, 0x65, 0x6e, 0x2d, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x3c,
- 0x2f, 0x6c, 0x69, 0x3e, 0x0a, 0x0a, 0x2e, 0x20, 0x57, 0x68, 0x65, 0x6e, 0x20,
- 0x69, 0x6e, 0x20, 0x62, 0x6f, 0x74, 0x68, 0x64, 0x69, 0x73, 0x6d, 0x69, 0x73,
- 0x73, 0x45, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x61, 0x6c, 0x77, 0x61, 0x79,
- 0x73, 0x20, 0x76, 0x69, 0x61, 0x20, 0x74, 0x68, 0x65, 0x73, 0x70, 0x61, 0xc3,
- 0xb1, 0x6f, 0x6c, 0x77, 0x65, 0x6c, 0x66, 0x61, 0x72, 0x65, 0x72, 0x75, 0x6c,
- 0x69, 0x6e, 0x67, 0x20, 0x61, 0x72, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x63, 0x61,
- 0x70, 0x74, 0x61, 0x69, 0x6e, 0x68, 0x69, 0x73, 0x20, 0x73, 0x6f, 0x6e, 0x72,
- 0x75, 0x6c, 0x65, 0x20, 0x6f, 0x66, 0x68, 0x65, 0x20, 0x74, 0x6f, 0x6f, 0x6b,
- 0x69, 0x74, 0x73, 0x65, 0x6c, 0x66, 0x2c, 0x3d, 0x30, 0x26, 0x61, 0x6d, 0x70,
- 0x3b, 0x28, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x73, 0x61, 0x6d, 0x70, 0x6c,
- 0x65, 0x73, 0x74, 0x6f, 0x20, 0x6d, 0x61, 0x6b, 0x65, 0x63, 0x6f, 0x6d, 0x2f,
- 0x70, 0x61, 0x67, 0x4d, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x20, 0x4b, 0x65, 0x6e,
- 0x6e, 0x65, 0x64, 0x79, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x73, 0x66, 0x75,
- 0x6c, 0x6c, 0x20, 0x6f, 0x66, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x64, 0x42,
- 0x65, 0x73, 0x69, 0x64, 0x65, 0x73, 0x2f, 0x2f, 0x2d, 0x2d, 0x3e, 0x3c, 0x2f,
- 0x61, 0x62, 0x6c, 0x65, 0x20, 0x74, 0x6f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74,
- 0x73, 0x65, 0x73, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x68, 0x69, 0x6d, 0x20, 0x74,
- 0x6f, 0x20, 0x69, 0x74, 0x73, 0x20, 0x62, 0x79, 0x20, 0x63, 0x6f, 0x6d, 0x6d,
- 0x6f, 0x6e, 0x2e, 0x6d, 0x69, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x74, 0x6f, 0x20,
- 0x74, 0x61, 0x6b, 0x65, 0x77, 0x61, 0x79, 0x73, 0x20, 0x74, 0x6f, 0x73, 0x2e,
- 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x61, 0x64, 0x76, 0x69, 0x73, 0x65, 0x64, 0x70,
- 0x65, 0x6e, 0x61, 0x6c, 0x74, 0x79, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x3a,
- 0x69, 0x66, 0x20, 0x74, 0x68, 0x65, 0x79, 0x4c, 0x65, 0x74, 0x74, 0x65, 0x72,
- 0x73, 0x61, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x48, 0x65, 0x72, 0x62, 0x65,
- 0x72, 0x74, 0x73, 0x74, 0x72, 0x69, 0x6b, 0x65, 0x73, 0x20, 0x67, 0x72, 0x6f,
- 0x75, 0x70, 0x73, 0x2e, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x66, 0x6c, 0x69,
- 0x67, 0x68, 0x74, 0x73, 0x6f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x70, 0x73, 0x6c,
- 0x6f, 0x77, 0x6c, 0x79, 0x20, 0x6c, 0x65, 0x73, 0x73, 0x65, 0x72, 0x20, 0x73,
- 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x09, 0x09,
- 0x69, 0x74, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x72, 0x61, 0x6e, 0x6b, 0x65, 0x64,
- 0x20, 0x72, 0x61, 0x74, 0x65, 0x20, 0x6f, 0x66, 0x75, 0x6c, 0x3e, 0x0d, 0x0a,
- 0x20, 0x20, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x70, 0x61, 0x69, 0x72,
- 0x20, 0x6f, 0x66, 0x6d, 0x61, 0x6b, 0x65, 0x20, 0x69, 0x74, 0x4b, 0x6f, 0x6e,
- 0x74, 0x61, 0x6b, 0x74, 0x41, 0x6e, 0x74, 0x6f, 0x6e, 0x69, 0x6f, 0x68, 0x61,
- 0x76, 0x69, 0x6e, 0x67, 0x20, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x20,
- 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73,
- 0x74, 0x72, 0x61, 0x70, 0x70, 0x65, 0x64, 0x22, 0x29, 0x2e, 0x63, 0x73, 0x73,
- 0x28, 0x68, 0x6f, 0x73, 0x74, 0x69, 0x6c, 0x65, 0x6c, 0x65, 0x61, 0x64, 0x20,
- 0x74, 0x6f, 0x6c, 0x69, 0x74, 0x74, 0x6c, 0x65, 0x20, 0x67, 0x72, 0x6f, 0x75,
- 0x70, 0x73, 0x2c, 0x50, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x2d, 0x2d, 0x3e,
- 0x0d, 0x0a, 0x0d, 0x0a, 0x20, 0x72, 0x6f, 0x77, 0x73, 0x3d, 0x22, 0x20, 0x6f,
- 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x65, 0x3c,
- 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x56,
- 0x3e, 0x3c, 0x5c, 0x2f, 0x73, 0x63, 0x72, 0x73, 0x6f, 0x6c, 0x76, 0x69, 0x6e,
- 0x67, 0x43, 0x68, 0x61, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x6c, 0x61, 0x76, 0x65,
- 0x72, 0x79, 0x77, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x77, 0x68, 0x65, 0x72,
- 0x65, 0x61, 0x73, 0x21, 0x3d, 0x20, 0x27, 0x75, 0x6e, 0x64, 0x66, 0x6f, 0x72,
- 0x20, 0x61, 0x6c, 0x6c, 0x70, 0x61, 0x72, 0x74, 0x6c, 0x79, 0x20, 0x2d, 0x72,
- 0x69, 0x67, 0x68, 0x74, 0x3a, 0x41, 0x72, 0x61, 0x62, 0x69, 0x61, 0x6e, 0x62,
- 0x61, 0x63, 0x6b, 0x65, 0x64, 0x20, 0x63, 0x65, 0x6e, 0x74, 0x75, 0x72, 0x79,
- 0x75, 0x6e, 0x69, 0x74, 0x20, 0x6f, 0x66, 0x6d, 0x6f, 0x62, 0x69, 0x6c, 0x65,
- 0x2d, 0x45, 0x75, 0x72, 0x6f, 0x70, 0x65, 0x2c, 0x69, 0x73, 0x20, 0x68, 0x6f,
- 0x6d, 0x65, 0x72, 0x69, 0x73, 0x6b, 0x20, 0x6f, 0x66, 0x64, 0x65, 0x73, 0x69,
- 0x72, 0x65, 0x64, 0x43, 0x6c, 0x69, 0x6e, 0x74, 0x6f, 0x6e, 0x63, 0x6f, 0x73,
- 0x74, 0x20, 0x6f, 0x66, 0x61, 0x67, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x62, 0x65,
- 0x63, 0x6f, 0x6d, 0x65, 0x20, 0x6e, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x66, 0x70,
- 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x4d, 0x69, 0x64, 0x64, 0x6c, 0x65, 0x20,
- 0x65, 0x61, 0x64, 0x27, 0x29, 0x5b, 0x30, 0x43, 0x72, 0x69, 0x74, 0x69, 0x63,
- 0x73, 0x73, 0x74, 0x75, 0x64, 0x69, 0x6f, 0x73, 0x3e, 0x26, 0x63, 0x6f, 0x70,
- 0x79, 0x3b, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x3e, 0x61, 0x73, 0x73, 0x65,
- 0x6d, 0x62, 0x6c, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x70, 0x72, 0x65,
- 0x73, 0x73, 0x65, 0x64, 0x77, 0x69, 0x64, 0x67, 0x65, 0x74, 0x2e, 0x70, 0x73,
- 0x3a, 0x22, 0x20, 0x3f, 0x20, 0x72, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x62,
- 0x79, 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x65, 0x72, 0x20,
- 0x65, 0x64, 0x69, 0x74, 0x6f, 0x72, 0x73, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65,
- 0x64, 0x43, 0x61, 0x6e, 0x6f, 0x6e, 0x69, 0x63, 0x68, 0x61, 0x64, 0x20, 0x74,
- 0x68, 0x65, 0x70, 0x75, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x63, 0x6c, 0x61, 0x73,
- 0x73, 0x3d, 0x22, 0x62, 0x75, 0x74, 0x20, 0x61, 0x72, 0x65, 0x70, 0x61, 0x72,
- 0x74, 0x69, 0x61, 0x6c, 0x42, 0x61, 0x62, 0x79, 0x6c, 0x6f, 0x6e, 0x62, 0x6f,
- 0x74, 0x74, 0x6f, 0x6d, 0x20, 0x63, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x43,
- 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x69, 0x74, 0x73, 0x20, 0x75, 0x73, 0x65,
- 0x41, 0x73, 0x20, 0x77, 0x69, 0x74, 0x68, 0x63, 0x6f, 0x75, 0x72, 0x73, 0x65,
- 0x73, 0x61, 0x20, 0x74, 0x68, 0x69, 0x72, 0x64, 0x64, 0x65, 0x6e, 0x6f, 0x74,
- 0x65, 0x73, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x69, 0x6e, 0x48, 0x6f, 0x75, 0x73,
- 0x74, 0x6f, 0x6e, 0x32, 0x30, 0x70, 0x78, 0x3b, 0x22, 0x3e, 0x61, 0x63, 0x63,
- 0x75, 0x73, 0x65, 0x64, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x20, 0x67, 0x6f,
- 0x61, 0x6c, 0x20, 0x6f, 0x66, 0x46, 0x61, 0x6d, 0x6f, 0x75, 0x73, 0x20, 0x29,
- 0x2e, 0x62, 0x69, 0x6e, 0x64, 0x28, 0x70, 0x72, 0x69, 0x65, 0x73, 0x74, 0x73,
- 0x20, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x69, 0x6e, 0x20, 0x4a, 0x75, 0x6c,
- 0x79, 0x73, 0x74, 0x20, 0x2b, 0x20, 0x22, 0x67, 0x63, 0x6f, 0x6e, 0x73, 0x75,
- 0x6c, 0x74, 0x64, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x68, 0x65, 0x6c, 0x70,
- 0x66, 0x75, 0x6c, 0x72, 0x65, 0x76, 0x69, 0x76, 0x65, 0x64, 0x69, 0x73, 0x20,
- 0x76, 0x65, 0x72, 0x79, 0x72, 0x27, 0x2b, 0x27, 0x69, 0x70, 0x74, 0x6c, 0x6f,
- 0x73, 0x69, 0x6e, 0x67, 0x20, 0x66, 0x65, 0x6d, 0x61, 0x6c, 0x65, 0x73, 0x69,
- 0x73, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x73,
- 0x64, 0x61, 0x79, 0x73, 0x20, 0x6f, 0x66, 0x61, 0x72, 0x72, 0x69, 0x76, 0x61,
- 0x6c, 0x66, 0x75, 0x74, 0x75, 0x72, 0x65, 0x20, 0x3c, 0x6f, 0x62, 0x6a, 0x65,
- 0x63, 0x74, 0x66, 0x6f, 0x72, 0x63, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x72, 0x69,
- 0x6e, 0x67, 0x28, 0x22, 0x20, 0x2f, 0x3e, 0x0a, 0x09, 0x09, 0x68, 0x65, 0x72,
- 0x65, 0x20, 0x69, 0x73, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x2e, 0x20,
- 0x20, 0x54, 0x68, 0x65, 0x20, 0x62, 0x61, 0x6c, 0x6c, 0x6f, 0x6f, 0x6e, 0x64,
- 0x6f, 0x6e, 0x65, 0x20, 0x62, 0x79, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
- 0x62, 0x67, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x6c, 0x61, 0x77, 0x20, 0x6f, 0x66,
- 0x20, 0x49, 0x6e, 0x64, 0x69, 0x61, 0x6e, 0x61, 0x61, 0x76, 0x6f, 0x69, 0x64,
- 0x65, 0x64, 0x62, 0x75, 0x74, 0x20, 0x74, 0x68, 0x65, 0x32, 0x70, 0x78, 0x20,
- 0x33, 0x70, 0x78, 0x6a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x61, 0x66, 0x74,
- 0x65, 0x72, 0x20, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x6d, 0x65,
- 0x6e, 0x20, 0x61, 0x6e, 0x64, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x2d, 0x3d,
- 0x20, 0x74, 0x72, 0x75, 0x65, 0x3b, 0x66, 0x6f, 0x72, 0x20, 0x75, 0x73, 0x65,
- 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x2e, 0x49, 0x6e, 0x64, 0x69, 0x61, 0x6e,
- 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x3d, 0x66, 0x61, 0x6d, 0x69, 0x6c,
- 0x79, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x20, 0x26, 0x6e, 0x62,
- 0x73, 0x70, 0x3b, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x73, 0x65, 0x74, 0x65,
- 0x72, 0x6e, 0x61, 0x6c, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x61, 0x73, 0x6e, 0x6f,
- 0x74, 0x69, 0x63, 0x65, 0x64, 0x76, 0x69, 0x65, 0x77, 0x65, 0x72, 0x73, 0x7d,
- 0x29, 0x28, 0x29, 0x3b, 0x0a, 0x20, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x72, 0x65,
- 0x73, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x72,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x65, 0x77, 0x69, 0x73, 0x20, 0x6a, 0x75,
- 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x74, 0x20, 0x53, 0x65, 0x61,
- 0x72, 0x63, 0x68, 0x77, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x77, 0x68, 0x79,
- 0x20, 0x74, 0x68, 0x65, 0x73, 0x68, 0x69, 0x70, 0x70, 0x65, 0x64, 0x62, 0x72,
- 0x3e, 0x3c, 0x62, 0x72, 0x3e, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x20, 0x68,
- 0x65, 0x69, 0x67, 0x68, 0x74, 0x3d, 0x6d, 0x61, 0x64, 0x65, 0x20, 0x6f, 0x66,
- 0x63, 0x75, 0x69, 0x73, 0x69, 0x6e, 0x65, 0x69, 0x73, 0x20, 0x74, 0x68, 0x61,
- 0x74, 0x61, 0x20, 0x76, 0x65, 0x72, 0x79, 0x20, 0x41, 0x64, 0x6d, 0x69, 0x72,
- 0x61, 0x6c, 0x20, 0x66, 0x69, 0x78, 0x65, 0x64, 0x3b, 0x6e, 0x6f, 0x72, 0x6d,
- 0x61, 0x6c, 0x20, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65,
- 0x73, 0x73, 0x2c, 0x20, 0x6f, 0x6e, 0x74, 0x61, 0x72, 0x69, 0x6f, 0x63, 0x68,
- 0x61, 0x72, 0x73, 0x65, 0x74, 0x74, 0x72, 0x79, 0x20, 0x74, 0x6f, 0x20, 0x69,
- 0x6e, 0x76, 0x61, 0x64, 0x65, 0x64, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22,
- 0x73, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x73,
- 0x74, 0x61, 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x74, 0x6f, 0x74, 0x61, 0x6c,
- 0x6c, 0x79, 0x66, 0x61, 0x6c, 0x6c, 0x20, 0x6f, 0x66, 0x7d, 0x29, 0x3b, 0x0d,
- 0x0a, 0x20, 0x20, 0x69, 0x6d, 0x6d, 0x65, 0x6e, 0x73, 0x65, 0x74, 0x69, 0x6d,
- 0x65, 0x20, 0x69, 0x6e, 0x73, 0x65, 0x74, 0x20, 0x6f, 0x75, 0x74, 0x73, 0x61,
- 0x74, 0x69, 0x73, 0x66, 0x79, 0x74, 0x6f, 0x20, 0x66, 0x69, 0x6e, 0x64, 0x64,
- 0x6f, 0x77, 0x6e, 0x20, 0x74, 0x6f, 0x6c, 0x6f, 0x74, 0x20, 0x6f, 0x66, 0x20,
- 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x69, 0x6e, 0x20, 0x4a, 0x75, 0x6e,
- 0x65, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x75, 0x6d, 0x6e, 0x6f, 0x74, 0x20, 0x74,
- 0x68, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x20, 0x74, 0x6f, 0x64, 0x69, 0x73, 0x74,
- 0x61, 0x6e, 0x74, 0x46, 0x69, 0x6e, 0x6e, 0x69, 0x73, 0x68, 0x73, 0x72, 0x63,
- 0x20, 0x3d, 0x20, 0x28, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x68, 0x65,
- 0x6c, 0x70, 0x20, 0x6f, 0x66, 0x47, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x20, 0x6c,
- 0x61, 0x77, 0x20, 0x61, 0x6e, 0x64, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x65, 0x64,
- 0x66, 0x6f, 0x72, 0x65, 0x73, 0x74, 0x73, 0x63, 0x6f, 0x6f, 0x6b, 0x69, 0x6e,
- 0x67, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0x3e, 0x68, 0x65, 0x61, 0x64, 0x65,
- 0x72, 0x2d, 0x77, 0x65, 0x6c, 0x6c, 0x20, 0x61, 0x73, 0x53, 0x74, 0x61, 0x6e,
- 0x6c, 0x65, 0x79, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x73, 0x2f, 0x67, 0x6c,
- 0x6f, 0x62, 0x61, 0x6c, 0x43, 0x72, 0x6f, 0x61, 0x74, 0x69, 0x61, 0x20, 0x41,
- 0x62, 0x6f, 0x75, 0x74, 0x20, 0x5b, 0x30, 0x5d, 0x3b, 0x0a, 0x20, 0x20, 0x69,
- 0x74, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x65, 0x64,
- 0x62, 0x65, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x29, 0x7b, 0x74, 0x68, 0x72, 0x6f,
- 0x77, 0x68, 0x65, 0x20, 0x6d, 0x61, 0x64, 0x65, 0x6c, 0x69, 0x67, 0x68, 0x74,
- 0x65, 0x72, 0x65, 0x74, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x46, 0x46, 0x46, 0x46,
- 0x46, 0x46, 0x22, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x22, 0x6c, 0x69, 0x6b,
- 0x65, 0x20, 0x61, 0x20, 0x65, 0x6d, 0x70, 0x6c, 0x6f, 0x79, 0x73, 0x6c, 0x69,
- 0x76, 0x65, 0x20, 0x69, 0x6e, 0x61, 0x73, 0x20, 0x73, 0x65, 0x65, 0x6e, 0x70,
- 0x72, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x6f, 0x66,
- 0x75, 0x62, 0x2d, 0x6c, 0x69, 0x6e, 0x6b, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74,
- 0x73, 0x61, 0x6e, 0x64, 0x20, 0x75, 0x73, 0x65, 0x69, 0x6d, 0x61, 0x67, 0x65,
- 0x22, 0x3e, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x66, 0x65, 0x65, 0x64,
- 0x69, 0x6e, 0x67, 0x4e, 0x75, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x69, 0x6e, 0x66,
- 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x6f, 0x20, 0x68, 0x65, 0x6c, 0x70, 0x57, 0x6f,
- 0x6d, 0x65, 0x6e, 0x27, 0x73, 0x4e, 0x65, 0x69, 0x74, 0x68, 0x65, 0x72, 0x4d,
- 0x65, 0x78, 0x69, 0x63, 0x61, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x69, 0x6e,
- 0x3c, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x62, 0x79, 0x20, 0x6d, 0x61, 0x6e,
- 0x79, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x79, 0x6c, 0x61, 0x77, 0x73, 0x75,
- 0x69, 0x74, 0x64, 0x65, 0x76, 0x69, 0x73, 0x65, 0x64, 0x2e, 0x70, 0x75, 0x73,
- 0x68, 0x28, 0x7b, 0x73, 0x65, 0x6c, 0x6c, 0x65, 0x72, 0x73, 0x73, 0x69, 0x6d,
- 0x70, 0x6c, 0x79, 0x20, 0x54, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x2e, 0x63,
- 0x6f, 0x6f, 0x6b, 0x69, 0x65, 0x20, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x28, 0x6f,
- 0x6c, 0x64, 0x65, 0x72, 0x22, 0x3e, 0x75, 0x73, 0x2e, 0x6a, 0x73, 0x22, 0x3e,
- 0x20, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x20, 0x75, 0x6e, 0x69, 0x76, 0x65, 0x72,
- 0x73, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x72, 0x20, 0x6f, 0x70, 0x65, 0x6e, 0x20,
- 0x74, 0x6f, 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x6e, 0x64, 0x6c, 0x69, 0x65, 0x73,
- 0x20, 0x69, 0x6e, 0x27, 0x5d, 0x29, 0x3b, 0x0d, 0x0a, 0x20, 0x20, 0x6d, 0x61,
- 0x72, 0x6b, 0x65, 0x74, 0x77, 0x68, 0x6f, 0x20, 0x69, 0x73, 0x20, 0x28, 0x22,
- 0x44, 0x4f, 0x4d, 0x43, 0x6f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x64, 0x6f,
- 0x6e, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x74, 0x79, 0x70, 0x65, 0x6f, 0x66, 0x20,
- 0x4b, 0x69, 0x6e, 0x67, 0x64, 0x6f, 0x6d, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x74,
- 0x73, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x74, 0x6f, 0x20, 0x73, 0x68,
- 0x6f, 0x77, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x3b, 0x6d, 0x61, 0x64, 0x65,
- 0x20, 0x69, 0x74, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x77, 0x65, 0x72,
- 0x65, 0x20, 0x69, 0x6e, 0x6d, 0x69, 0x78, 0x74, 0x75, 0x72, 0x65, 0x70, 0x72,
- 0x65, 0x63, 0x69, 0x73, 0x65, 0x61, 0x72, 0x69, 0x73, 0x69, 0x6e, 0x67, 0x73,
- 0x72, 0x63, 0x20, 0x3d, 0x20, 0x27, 0x6d, 0x61, 0x6b, 0x65, 0x20, 0x61, 0x20,
- 0x73, 0x65, 0x63, 0x75, 0x72, 0x65, 0x64, 0x42, 0x61, 0x70, 0x74, 0x69, 0x73,
- 0x74, 0x76, 0x6f, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x0a, 0x09, 0x09, 0x76, 0x61,
- 0x72, 0x20, 0x4d, 0x61, 0x72, 0x63, 0x68, 0x20, 0x32, 0x67, 0x72, 0x65, 0x77,
- 0x20, 0x75, 0x70, 0x43, 0x6c, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x2e, 0x72, 0x65,
- 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x77, 0x61,
- 0x79, 0x20, 0x74, 0x68, 0x65, 0x3c, 0x2f, 0x68, 0x65, 0x61, 0x64, 0x3e, 0x66,
- 0x61, 0x63, 0x65, 0x20, 0x6f, 0x66, 0x61, 0x63, 0x74, 0x69, 0x6e, 0x67, 0x20,
- 0x72, 0x69, 0x67, 0x68, 0x74, 0x22, 0x3e, 0x74, 0x6f, 0x20, 0x77, 0x6f, 0x72,
- 0x6b, 0x72, 0x65, 0x64, 0x75, 0x63, 0x65, 0x73, 0x68, 0x61, 0x73, 0x20, 0x68,
- 0x61, 0x64, 0x65, 0x72, 0x65, 0x63, 0x74, 0x65, 0x64, 0x73, 0x68, 0x6f, 0x77,
- 0x28, 0x29, 0x3b, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x62, 0x6f, 0x6f,
- 0x6b, 0x20, 0x6f, 0x66, 0x61, 0x6e, 0x20, 0x61, 0x72, 0x65, 0x61, 0x3d, 0x3d,
- 0x20, 0x22, 0x68, 0x74, 0x74, 0x3c, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x0a,
- 0x3c, 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d,
- 0x66, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x20, 0x63, 0x6f, 0x6f, 0x6b, 0x69, 0x65,
- 0x2e, 0x72, 0x65, 0x6c, 0x79, 0x20, 0x6f, 0x6e, 0x68, 0x6f, 0x73, 0x74, 0x65,
- 0x64, 0x20, 0x2e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x68, 0x65, 0x20, 0x77,
- 0x65, 0x6e, 0x74, 0x62, 0x75, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x73, 0x70, 0x72,
- 0x65, 0x61, 0x64, 0x20, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x20, 0x61, 0x20,
- 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x6f, 0x75, 0x74, 0x20, 0x74, 0x68, 0x65, 0x66,
- 0x6f, 0x72, 0x75, 0x6d, 0x73, 0x2e, 0x66, 0x6f, 0x6f, 0x74, 0x61, 0x67, 0x65,
- 0x22, 0x3e, 0x4d, 0x6f, 0x62, 0x69, 0x6c, 0x43, 0x6c, 0x65, 0x6d, 0x65, 0x6e,
- 0x74, 0x73, 0x22, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x61, 0x73, 0x20, 0x68, 0x69,
- 0x67, 0x68, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x73, 0x65, 0x2d, 0x2d, 0x3e, 0x3c,
- 0x21, 0x2d, 0x2d, 0x66, 0x65, 0x6d, 0x61, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20,
- 0x73, 0x65, 0x65, 0x6e, 0x69, 0x6d, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x73, 0x65,
- 0x74, 0x20, 0x74, 0x68, 0x65, 0x61, 0x20, 0x73, 0x74, 0x61, 0x74, 0x65, 0x61,
- 0x6e, 0x64, 0x20, 0x68, 0x69, 0x73, 0x66, 0x61, 0x73, 0x74, 0x65, 0x73, 0x74,
- 0x62, 0x65, 0x73, 0x69, 0x64, 0x65, 0x73, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e,
- 0x5f, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x3e, 0x3c, 0x69, 0x6d,
- 0x67, 0x20, 0x49, 0x6e, 0x66, 0x6f, 0x62, 0x6f, 0x78, 0x65, 0x76, 0x65, 0x6e,
- 0x74, 0x73, 0x2c, 0x61, 0x20, 0x79, 0x6f, 0x75, 0x6e, 0x67, 0x61, 0x6e, 0x64,
- 0x20, 0x61, 0x72, 0x65, 0x4e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x20, 0x63, 0x68,
- 0x65, 0x61, 0x70, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x61,
- 0x6e, 0x64, 0x20, 0x68, 0x61, 0x73, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73,
- 0x77, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x28, 0x6d, 0x6f, 0x73, 0x74, 0x6c,
- 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x20, 0x66, 0x69, 0x6e, 0x64, 0x20,
- 0x61, 0x20, 0x2d, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x50, 0x72, 0x69, 0x6e,
- 0x63, 0x65, 0x20, 0x61, 0x72, 0x65, 0x61, 0x20, 0x6f, 0x66, 0x6d, 0x6f, 0x72,
- 0x65, 0x20, 0x6f, 0x66, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f, 0x6e, 0x61,
- 0x74, 0x75, 0x72, 0x65, 0x2c, 0x6c, 0x65, 0x67, 0x61, 0x6c, 0x6c, 0x79, 0x70,
- 0x65, 0x72, 0x69, 0x6f, 0x64, 0x2c, 0x6c, 0x61, 0x6e, 0x64, 0x20, 0x6f, 0x66,
- 0x6f, 0x72, 0x20, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x64, 0x75, 0x63, 0x65,
- 0x64, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x6d, 0x69, 0x73, 0x73, 0x69,
- 0x6c, 0x65, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x41, 0x67, 0x61, 0x69,
- 0x6e, 0x73, 0x74, 0x74, 0x68, 0x65, 0x20, 0x77, 0x61, 0x79, 0x6b, 0x26, 0x71,
- 0x75, 0x6f, 0x74, 0x3b, 0x70, 0x78, 0x3b, 0x22, 0x3e, 0x0d, 0x0a, 0x70, 0x75,
- 0x73, 0x68, 0x65, 0x64, 0x20, 0x61, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x6e,
- 0x75, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x43, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e,
- 0x49, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x69,
- 0x6e, 0x6f, 0x72, 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x20,
- 0x69, 0x73, 0x61, 0x6e, 0x64, 0x2c, 0x20, 0x69, 0x6e, 0x63, 0x72, 0x6f, 0x77,
- 0x6e, 0x65, 0x64, 0x49, 0x53, 0x42, 0x4e, 0x20, 0x30, 0x2d, 0x63, 0x72, 0x65,
- 0x61, 0x74, 0x65, 0x73, 0x4f, 0x63, 0x74, 0x6f, 0x62, 0x65, 0x72, 0x6d, 0x61,
- 0x79, 0x20, 0x6e, 0x6f, 0x74, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x20, 0x6c,
- 0x61, 0x74, 0x65, 0x20, 0x69, 0x6e, 0x44, 0x65, 0x66, 0x65, 0x6e, 0x63, 0x65,
- 0x65, 0x6e, 0x61, 0x63, 0x74, 0x65, 0x64, 0x77, 0x69, 0x73, 0x68, 0x20, 0x74,
- 0x6f, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x6c, 0x79, 0x63, 0x6f, 0x6f, 0x6c, 0x69,
- 0x6e, 0x67, 0x6f, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x3d, 0x69, 0x74, 0x2e, 0x20,
- 0x54, 0x68, 0x65, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x6d,
- 0x62, 0x65, 0x72, 0x73, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x61, 0x73,
- 0x73, 0x75, 0x6d, 0x65, 0x73, 0x3c, 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x0a, 0x70,
- 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x2e, 0x69, 0x6e, 0x20, 0x6f, 0x6e, 0x65, 0x20,
- 0x3d, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72,
- 0x5f, 0x61, 0x20, 0x67, 0x6f, 0x6f, 0x64, 0x20, 0x72, 0x65, 0x6b, 0x6c, 0x61,
- 0x6d, 0x61, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x73, 0x2c, 0x74, 0x6f, 0x20, 0x74,
- 0x68, 0x69, 0x73, 0x5f, 0x63, 0x6f, 0x6f, 0x6b, 0x69, 0x65, 0x70, 0x61, 0x6e,
- 0x65, 0x6c, 0x22, 0x3e, 0x4c, 0x6f, 0x6e, 0x64, 0x6f, 0x6e, 0x2c, 0x64, 0x65,
- 0x66, 0x69, 0x6e, 0x65, 0x73, 0x63, 0x72, 0x75, 0x73, 0x68, 0x65, 0x64, 0x62,
- 0x61, 0x70, 0x74, 0x69, 0x73, 0x6d, 0x63, 0x6f, 0x61, 0x73, 0x74, 0x61, 0x6c,
- 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22,
- 0x20, 0x6d, 0x6f, 0x76, 0x65, 0x20, 0x74, 0x6f, 0x6c, 0x6f, 0x73, 0x74, 0x20,
- 0x69, 0x6e, 0x62, 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x69, 0x6d, 0x70, 0x6c,
- 0x69, 0x65, 0x73, 0x72, 0x69, 0x76, 0x61, 0x6c, 0x72, 0x79, 0x73, 0x65, 0x72,
- 0x76, 0x65, 0x72, 0x73, 0x20, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x50, 0x65,
- 0x72, 0x68, 0x61, 0x70, 0x73, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x63,
- 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x64, 0x66, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67,
- 0x6c, 0x61, 0x73, 0x74, 0x65, 0x64, 0x20, 0x72, 0x69, 0x73, 0x65, 0x20, 0x69,
- 0x6e, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x76, 0x69, 0x65, 0x77, 0x20,
- 0x6f, 0x66, 0x72, 0x69, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x73, 0x65, 0x65, 0x6d,
- 0x20, 0x74, 0x6f, 0x62, 0x75, 0x74, 0x20, 0x69, 0x6e, 0x20, 0x62, 0x61, 0x63,
- 0x6b, 0x69, 0x6e, 0x67, 0x68, 0x65, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x67, 0x69,
- 0x76, 0x65, 0x6e, 0x20, 0x61, 0x67, 0x69, 0x76, 0x69, 0x6e, 0x67, 0x20, 0x63,
- 0x69, 0x74, 0x69, 0x65, 0x73, 0x2e, 0x66, 0x6c, 0x6f, 0x77, 0x20, 0x6f, 0x66,
- 0x20, 0x4c, 0x61, 0x74, 0x65, 0x72, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x62, 0x75,
- 0x74, 0x48, 0x69, 0x67, 0x68, 0x77, 0x61, 0x79, 0x6f, 0x6e, 0x6c, 0x79, 0x20,
- 0x62, 0x79, 0x73, 0x69, 0x67, 0x6e, 0x20, 0x6f, 0x66, 0x68, 0x65, 0x20, 0x64,
- 0x6f, 0x65, 0x73, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x73, 0x62, 0x61, 0x74,
- 0x74, 0x65, 0x72, 0x79, 0x26, 0x61, 0x6d, 0x70, 0x3b, 0x6c, 0x61, 0x73, 0x69,
- 0x6e, 0x67, 0x6c, 0x65, 0x73, 0x74, 0x68, 0x72, 0x65, 0x61, 0x74, 0x73, 0x69,
- 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x74, 0x61, 0x6b, 0x65, 0x20, 0x6f, 0x6e,
- 0x72, 0x65, 0x66, 0x75, 0x73, 0x65, 0x64, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x64,
- 0x20, 0x3d, 0x55, 0x53, 0x26, 0x61, 0x6d, 0x70, 0x53, 0x65, 0x65, 0x20, 0x74,
- 0x68, 0x65, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x62, 0x79, 0x20, 0x74,
- 0x68, 0x69, 0x73, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x2e, 0x68, 0x65, 0x61,
- 0x64, 0x20, 0x6f, 0x66, 0x3a, 0x68, 0x6f, 0x76, 0x65, 0x72, 0x2c, 0x6c, 0x65,
- 0x73, 0x62, 0x69, 0x61, 0x6e, 0x73, 0x75, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x61,
- 0x6e, 0x64, 0x20, 0x61, 0x6c, 0x6c, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f,
- 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d,
- 0x73, 0x48, 0x61, 0x72, 0x76, 0x61, 0x72, 0x64, 0x2f, 0x70, 0x69, 0x78, 0x65,
- 0x6c, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x6c,
- 0x6f, 0x6e, 0x67, 0x72, 0x6f, 0x6c, 0x65, 0x20, 0x6f, 0x66, 0x6a, 0x6f, 0x69,
- 0x6e, 0x74, 0x6c, 0x79, 0x73, 0x6b, 0x79, 0x73, 0x63, 0x72, 0x61, 0x55, 0x6e,
- 0x69, 0x63, 0x6f, 0x64, 0x65, 0x62, 0x72, 0x20, 0x2f, 0x3e, 0x0d, 0x0a, 0x41,
- 0x74, 0x6c, 0x61, 0x6e, 0x74, 0x61, 0x6e, 0x75, 0x63, 0x6c, 0x65, 0x75, 0x73,
- 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x79, 0x2c, 0x70, 0x75, 0x72, 0x65, 0x6c, 0x79,
- 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x3e, 0x65, 0x61, 0x73, 0x69, 0x6c,
- 0x79, 0x20, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x20, 0x61, 0x6f, 0x6e, 0x63, 0x6c,
- 0x69, 0x63, 0x6b, 0x61, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x70, 0x6f, 0x69,
- 0x6e, 0x74, 0x65, 0x72, 0x68, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x65, 0x76,
- 0x65, 0x6e, 0x74, 0x73, 0x20, 0x65, 0x6c, 0x73, 0x65, 0x20, 0x7b, 0x0a, 0x64,
- 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x6e, 0x6f, 0x77, 0x20, 0x74, 0x68, 0x65,
- 0x2c, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x6d, 0x61, 0x6e, 0x20, 0x77, 0x68,
- 0x6f, 0x6f, 0x72, 0x67, 0x2f, 0x57, 0x65, 0x62, 0x6f, 0x6e, 0x65, 0x20, 0x61,
- 0x6e, 0x64, 0x63, 0x61, 0x76, 0x61, 0x6c, 0x72, 0x79, 0x48, 0x65, 0x20, 0x64,
- 0x69, 0x65, 0x64, 0x73, 0x65, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x30, 0x30, 0x2c,
- 0x30, 0x30, 0x30, 0x20, 0x7b, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x68, 0x61,
- 0x76, 0x65, 0x20, 0x74, 0x6f, 0x69, 0x66, 0x28, 0x77, 0x69, 0x6e, 0x64, 0x61,
- 0x6e, 0x64, 0x20, 0x69, 0x74, 0x73, 0x73, 0x6f, 0x6c, 0x65, 0x6c, 0x79, 0x20,
- 0x6d, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x72, 0x65, 0x6e, 0x65, 0x77, 0x65,
- 0x64, 0x44, 0x65, 0x74, 0x72, 0x6f, 0x69, 0x74, 0x61, 0x6d, 0x6f, 0x6e, 0x67,
- 0x73, 0x74, 0x65, 0x69, 0x74, 0x68, 0x65, 0x72, 0x20, 0x74, 0x68, 0x65, 0x6d,
- 0x20, 0x69, 0x6e, 0x53, 0x65, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x73, 0x3c,
- 0x2f, 0x61, 0x3e, 0x3c, 0x4b, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x66, 0x46, 0x72,
- 0x61, 0x6e, 0x63, 0x69, 0x73, 0x2d, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x68,
- 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x61, 0x72, 0x74, 0x20, 0x61, 0x6e, 0x64,
- 0x68, 0x69, 0x6d, 0x20, 0x61, 0x6e, 0x64, 0x75, 0x73, 0x65, 0x64, 0x20, 0x62,
- 0x79, 0x73, 0x63, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x61, 0x74, 0x20, 0x68, 0x6f,
- 0x6d, 0x65, 0x74, 0x6f, 0x20, 0x68, 0x61, 0x76, 0x65, 0x72, 0x65, 0x6c, 0x61,
- 0x74, 0x65, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x66, 0x61, 0x63,
- 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x75, 0x66, 0x66, 0x61, 0x6c, 0x6f, 0x6c, 0x69,
- 0x6e, 0x6b, 0x22, 0x3e, 0x3c, 0x77, 0x68, 0x61, 0x74, 0x20, 0x68, 0x65, 0x66,
- 0x72, 0x65, 0x65, 0x20, 0x74, 0x6f, 0x43, 0x69, 0x74, 0x79, 0x20, 0x6f, 0x66,
- 0x63, 0x6f, 0x6d, 0x65, 0x20, 0x69, 0x6e, 0x73, 0x65, 0x63, 0x74, 0x6f, 0x72,
- 0x73, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x64, 0x6f, 0x6e, 0x65, 0x20, 0x64,
- 0x61, 0x79, 0x6e, 0x65, 0x72, 0x76, 0x6f, 0x75, 0x73, 0x73, 0x71, 0x75, 0x61,
- 0x72, 0x65, 0x20, 0x7d, 0x3b, 0x69, 0x66, 0x28, 0x67, 0x6f, 0x69, 0x6e, 0x20,
- 0x77, 0x68, 0x61, 0x74, 0x69, 0x6d, 0x67, 0x22, 0x20, 0x61, 0x6c, 0x69, 0x73,
- 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x2f, 0x74,
- 0x75, 0x65, 0x73, 0x64, 0x61, 0x79, 0x6c, 0x6f, 0x6f, 0x73, 0x65, 0x6c, 0x79,
- 0x53, 0x6f, 0x6c, 0x6f, 0x6d, 0x6f, 0x6e, 0x73, 0x65, 0x78, 0x75, 0x61, 0x6c,
- 0x20, 0x2d, 0x20, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x6d, 0x65, 0x64, 0x69, 0x75,
- 0x6d, 0x22, 0x44, 0x4f, 0x20, 0x4e, 0x4f, 0x54, 0x20, 0x46, 0x72, 0x61, 0x6e,
- 0x63, 0x65, 0x2c, 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x20, 0x77, 0x61, 0x72,
- 0x20, 0x61, 0x6e, 0x64, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x20, 0x74, 0x61,
- 0x6b, 0x65, 0x20, 0x61, 0x20, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a, 0x0d, 0x0a, 0x6d,
- 0x61, 0x72, 0x6b, 0x65, 0x74, 0x2e, 0x68, 0x69, 0x67, 0x68, 0x77, 0x61, 0x79,
- 0x64, 0x6f, 0x6e, 0x65, 0x20, 0x69, 0x6e, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74,
- 0x79, 0x22, 0x6c, 0x61, 0x73, 0x74, 0x22, 0x3e, 0x6f, 0x62, 0x6c, 0x69, 0x67,
- 0x65, 0x64, 0x72, 0x69, 0x73, 0x65, 0x20, 0x74, 0x6f, 0x22, 0x75, 0x6e, 0x64,
- 0x65, 0x66, 0x69, 0x6d, 0x61, 0x64, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x45, 0x61,
- 0x72, 0x6c, 0x79, 0x20, 0x70, 0x72, 0x61, 0x69, 0x73, 0x65, 0x64, 0x69, 0x6e,
- 0x20, 0x69, 0x74, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x68, 0x69, 0x73, 0x61,
- 0x74, 0x68, 0x6c, 0x65, 0x74, 0x65, 0x4a, 0x75, 0x70, 0x69, 0x74, 0x65, 0x72,
- 0x59, 0x61, 0x68, 0x6f, 0x6f, 0x21, 0x20, 0x74, 0x65, 0x72, 0x6d, 0x65, 0x64,
- 0x20, 0x73, 0x6f, 0x20, 0x6d, 0x61, 0x6e, 0x79, 0x72, 0x65, 0x61, 0x6c, 0x6c,
- 0x79, 0x20, 0x73, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x20, 0x61, 0x20, 0x77, 0x6f,
- 0x6d, 0x61, 0x6e, 0x3f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x64, 0x69, 0x72,
- 0x65, 0x63, 0x74, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x22, 0x20, 0x62, 0x69,
- 0x63, 0x79, 0x63, 0x6c, 0x65, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x64,
- 0x61, 0x79, 0x20, 0x61, 0x6e, 0x64, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6e, 0x67,
- 0x52, 0x61, 0x74, 0x68, 0x65, 0x72, 0x2c, 0x68, 0x69, 0x67, 0x68, 0x65, 0x72,
- 0x20, 0x4f, 0x66, 0x66, 0x69, 0x63, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x6e,
- 0x6f, 0x77, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x2c, 0x20, 0x77, 0x68, 0x65, 0x6e,
- 0x20, 0x61, 0x20, 0x70, 0x61, 0x79, 0x20, 0x66, 0x6f, 0x72, 0x6f, 0x6e, 0x20,
- 0x74, 0x68, 0x69, 0x73, 0x2d, 0x6c, 0x69, 0x6e, 0x6b, 0x22, 0x3e, 0x3b, 0x62,
- 0x6f, 0x72, 0x64, 0x65, 0x72, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x61,
- 0x6e, 0x6e, 0x75, 0x61, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x4e, 0x65, 0x77,
- 0x70, 0x75, 0x74, 0x20, 0x74, 0x68, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x22, 0x20,
- 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x20, 0x74, 0x6f, 0x61, 0x20, 0x62, 0x72, 0x69,
- 0x65, 0x66, 0x28, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x67, 0x72, 0x6f, 0x75,
- 0x70, 0x73, 0x2e, 0x3b, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x65, 0x6e, 0x7a,
- 0x79, 0x6d, 0x65, 0x73, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x69, 0x6e,
- 0x20, 0x6c, 0x61, 0x74, 0x65, 0x7b, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x74,
- 0x68, 0x65, 0x72, 0x61, 0x70, 0x79, 0x61, 0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74,
- 0x62, 0x61, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x6b, 0x73, 0x22, 0x3e,
- 0x0a, 0x28, 0x29, 0x3b, 0x22, 0x20, 0x72, 0x65, 0x61, 0x20, 0x70, 0x6c, 0x61,
- 0x63, 0x65, 0x5c, 0x75, 0x30, 0x30, 0x33, 0x43, 0x61, 0x61, 0x62, 0x6f, 0x75,
- 0x74, 0x20, 0x61, 0x74, 0x72, 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x63, 0x63, 0x6f,
- 0x75, 0x6e, 0x74, 0x20, 0x67, 0x69, 0x76, 0x65, 0x73, 0x20, 0x61, 0x3c, 0x53,
- 0x43, 0x52, 0x49, 0x50, 0x54, 0x52, 0x61, 0x69, 0x6c, 0x77, 0x61, 0x79, 0x74,
- 0x68, 0x65, 0x6d, 0x65, 0x73, 0x2f, 0x74, 0x6f, 0x6f, 0x6c, 0x62, 0x6f, 0x78,
- 0x42, 0x79, 0x49, 0x64, 0x28, 0x22, 0x78, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x73,
- 0x2c, 0x77, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x69, 0x6e, 0x20, 0x73, 0x6f,
- 0x6d, 0x65, 0x20, 0x69, 0x66, 0x20, 0x28, 0x77, 0x69, 0x63, 0x6f, 0x6d, 0x69,
- 0x6e, 0x67, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x73, 0x20, 0x55, 0x6e,
- 0x64, 0x65, 0x72, 0x20, 0x62, 0x75, 0x74, 0x20, 0x68, 0x61, 0x73, 0x68, 0x61,
- 0x6e, 0x64, 0x65, 0x64, 0x20, 0x6d, 0x61, 0x64, 0x65, 0x20, 0x62, 0x79, 0x74,
- 0x68, 0x61, 0x6e, 0x20, 0x69, 0x6e, 0x66, 0x65, 0x61, 0x72, 0x20, 0x6f, 0x66,
- 0x64, 0x65, 0x6e, 0x6f, 0x74, 0x65, 0x64, 0x2f, 0x69, 0x66, 0x72, 0x61, 0x6d,
- 0x65, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x69, 0x6e, 0x76, 0x6f, 0x6c, 0x74, 0x61,
- 0x67, 0x65, 0x69, 0x6e, 0x20, 0x65, 0x61, 0x63, 0x68, 0x61, 0x26, 0x71, 0x75,
- 0x6f, 0x74, 0x3b, 0x62, 0x61, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x49, 0x6e, 0x20,
- 0x6d, 0x61, 0x6e, 0x79, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x67, 0x6f, 0x72, 0x65,
- 0x67, 0x69, 0x6d, 0x65, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x3c,
- 0x2f, 0x70, 0x3e, 0x0d, 0x0a, 0x3c, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x56, 0x61,
- 0x3b, 0x26, 0x67, 0x74, 0x3b, 0x3c, 0x2f, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74,
- 0x73, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x61, 0x74, 0x6d, 0x6f, 0x73, 0x74, 0x6c,
- 0x79, 0x20, 0x26, 0x61, 0x6d, 0x70, 0x3b, 0x72, 0x65, 0x20, 0x73, 0x69, 0x7a,
- 0x65, 0x3d, 0x22, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x68, 0x61, 0x20, 0x63,
- 0x6c, 0x61, 0x73, 0x73, 0x70, 0x61, 0x73, 0x73, 0x69, 0x76, 0x65, 0x48, 0x6f,
- 0x73, 0x74, 0x20, 0x3d, 0x20, 0x57, 0x68, 0x65, 0x74, 0x68, 0x65, 0x72, 0x66,
- 0x65, 0x72, 0x74, 0x69, 0x6c, 0x65, 0x56, 0x61, 0x72, 0x69, 0x6f, 0x75, 0x73,
- 0x3d, 0x5b, 0x5d, 0x3b, 0x28, 0x66, 0x75, 0x63, 0x61, 0x6d, 0x65, 0x72, 0x61,
- 0x73, 0x2f, 0x3e, 0x3c, 0x2f, 0x74, 0x64, 0x3e, 0x61, 0x63, 0x74, 0x73, 0x20,
- 0x61, 0x73, 0x49, 0x6e, 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x3e, 0x0d, 0x0a, 0x0d,
- 0x0a, 0x3c, 0x21, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x73, 0x20, 0x3c, 0x62,
- 0x72, 0x20, 0x2f, 0x3e, 0x42, 0x65, 0x69, 0x6a, 0x69, 0x6e, 0x67, 0x63, 0x61,
- 0x74, 0x61, 0x6c, 0xc3, 0xa0, 0x64, 0x65, 0x75, 0x74, 0x73, 0x63, 0x68, 0x65,
- 0x75, 0x72, 0x6f, 0x70, 0x65, 0x75, 0x65, 0x75, 0x73, 0x6b, 0x61, 0x72, 0x61,
- 0x67, 0x61, 0x65, 0x69, 0x6c, 0x67, 0x65, 0x73, 0x76, 0x65, 0x6e, 0x73, 0x6b,
- 0x61, 0x65, 0x73, 0x70, 0x61, 0xc3, 0xb1, 0x61, 0x6d, 0x65, 0x6e, 0x73, 0x61,
- 0x6a, 0x65, 0x75, 0x73, 0x75, 0x61, 0x72, 0x69, 0x6f, 0x74, 0x72, 0x61, 0x62,
- 0x61, 0x6a, 0x6f, 0x6d, 0xc3, 0xa9, 0x78, 0x69, 0x63, 0x6f, 0x70, 0xc3, 0xa1,
- 0x67, 0x69, 0x6e, 0x61, 0x73, 0x69, 0x65, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x69,
- 0x73, 0x74, 0x65, 0x6d, 0x61, 0x6f, 0x63, 0x74, 0x75, 0x62, 0x72, 0x65, 0x64,
- 0x75, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x61, 0xc3, 0xb1, 0x61, 0x64, 0x69, 0x72,
- 0x65, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x61, 0x6d, 0x6f, 0x6d, 0x65, 0x6e, 0x74,
- 0x6f, 0x6e, 0x75, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x70, 0x72, 0x69, 0x6d, 0x65,
- 0x72, 0x61, 0x74, 0x72, 0x61, 0x76, 0xc3, 0xa9, 0x73, 0x67, 0x72, 0x61, 0x63,
- 0x69, 0x61, 0x73, 0x6e, 0x75, 0x65, 0x73, 0x74, 0x72, 0x61, 0x70, 0x72, 0x6f,
- 0x63, 0x65, 0x73, 0x6f, 0x65, 0x73, 0x74, 0x61, 0x64, 0x6f, 0x73, 0x63, 0x61,
- 0x6c, 0x69, 0x64, 0x61, 0x64, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6e,
- 0xc3, 0xba, 0x6d, 0x65, 0x72, 0x6f, 0x61, 0x63, 0x75, 0x65, 0x72, 0x64, 0x6f,
- 0x6d, 0xc3, 0xba, 0x73, 0x69, 0x63, 0x61, 0x6d, 0x69, 0x65, 0x6d, 0x62, 0x72,
- 0x6f, 0x6f, 0x66, 0x65, 0x72, 0x74, 0x61, 0x73, 0x61, 0x6c, 0x67, 0x75, 0x6e,
- 0x6f, 0x73, 0x70, 0x61, 0xc3, 0xad, 0x73, 0x65, 0x73, 0x65, 0x6a, 0x65, 0x6d,
- 0x70, 0x6c, 0x6f, 0x64, 0x65, 0x72, 0x65, 0x63, 0x68, 0x6f, 0x61, 0x64, 0x65,
- 0x6d, 0xc3, 0xa1, 0x73, 0x70, 0x72, 0x69, 0x76, 0x61, 0x64, 0x6f, 0x61, 0x67,
- 0x72, 0x65, 0x67, 0x61, 0x72, 0x65, 0x6e, 0x6c, 0x61, 0x63, 0x65, 0x73, 0x70,
- 0x6f, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x68, 0x6f, 0x74, 0x65, 0x6c, 0x65, 0x73,
- 0x73, 0x65, 0x76, 0x69, 0x6c, 0x6c, 0x61, 0x70, 0x72, 0x69, 0x6d, 0x65, 0x72,
- 0x6f, 0xc3, 0xba, 0x6c, 0x74, 0x69, 0x6d, 0x6f, 0x65, 0x76, 0x65, 0x6e, 0x74,
- 0x6f, 0x73, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x6f, 0x63, 0x75, 0x6c, 0x74,
- 0x75, 0x72, 0x61, 0x6d, 0x75, 0x6a, 0x65, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74,
- 0x72, 0x61, 0x64, 0x61, 0x61, 0x6e, 0x75, 0x6e, 0x63, 0x69, 0x6f, 0x65, 0x6d,
- 0x62, 0x61, 0x72, 0x67, 0x6f, 0x6d, 0x65, 0x72, 0x63, 0x61, 0x64, 0x6f, 0x67,
- 0x72, 0x61, 0x6e, 0x64, 0x65, 0x73, 0x65, 0x73, 0x74, 0x75, 0x64, 0x69, 0x6f,
- 0x6d, 0x65, 0x6a, 0x6f, 0x72, 0x65, 0x73, 0x66, 0x65, 0x62, 0x72, 0x65, 0x72,
- 0x6f, 0x64, 0x69, 0x73, 0x65, 0xc3, 0xb1, 0x6f, 0x74, 0x75, 0x72, 0x69, 0x73,
- 0x6d, 0x6f, 0x63, 0xc3, 0xb3, 0x64, 0x69, 0x67, 0x6f, 0x70, 0x6f, 0x72, 0x74,
- 0x61, 0x64, 0x61, 0x65, 0x73, 0x70, 0x61, 0x63, 0x69, 0x6f, 0x66, 0x61, 0x6d,
- 0x69, 0x6c, 0x69, 0x61, 0x61, 0x6e, 0x74, 0x6f, 0x6e, 0x69, 0x6f, 0x70, 0x65,
- 0x72, 0x6d, 0x69, 0x74, 0x65, 0x67, 0x75, 0x61, 0x72, 0x64, 0x61, 0x72, 0x61,
- 0x6c, 0x67, 0x75, 0x6e, 0x61, 0x73, 0x70, 0x72, 0x65, 0x63, 0x69, 0x6f, 0x73,
- 0x61, 0x6c, 0x67, 0x75, 0x69, 0x65, 0x6e, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x64,
- 0x6f, 0x76, 0x69, 0x73, 0x69, 0x74, 0x61, 0x73, 0x74, 0xc3, 0xad, 0x74, 0x75,
- 0x6c, 0x6f, 0x63, 0x6f, 0x6e, 0x6f, 0x63, 0x65, 0x72, 0x73, 0x65, 0x67, 0x75,
- 0x6e, 0x64, 0x6f, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6a, 0x6f, 0x66, 0x72, 0x61,
- 0x6e, 0x63, 0x69, 0x61, 0x6d, 0x69, 0x6e, 0x75, 0x74, 0x6f, 0x73, 0x73, 0x65,
- 0x67, 0x75, 0x6e, 0x64, 0x61, 0x74, 0x65, 0x6e, 0x65, 0x6d, 0x6f, 0x73, 0x65,
- 0x66, 0x65, 0x63, 0x74, 0x6f, 0x73, 0x6d, 0xc3, 0xa1, 0x6c, 0x61, 0x67, 0x61,
- 0x73, 0x65, 0x73, 0x69, 0xc3, 0xb3, 0x6e, 0x72, 0x65, 0x76, 0x69, 0x73, 0x74,
- 0x61, 0x67, 0x72, 0x61, 0x6e, 0x61, 0x64, 0x61, 0x63, 0x6f, 0x6d, 0x70, 0x72,
- 0x61, 0x72, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x6f, 0x67, 0x61, 0x72, 0x63,
- 0xc3, 0xad, 0x61, 0x61, 0x63, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x65, 0x63, 0x75,
- 0x61, 0x64, 0x6f, 0x72, 0x71, 0x75, 0x69, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x6e,
- 0x63, 0x6c, 0x75, 0x73, 0x6f, 0x64, 0x65, 0x62, 0x65, 0x72, 0xc3, 0xa1, 0x6d,
- 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x68, 0x6f, 0x6d, 0x62, 0x72, 0x65, 0x73,
- 0x6d, 0x75, 0x65, 0x73, 0x74, 0x72, 0x61, 0x70, 0x6f, 0x64, 0x72, 0xc3, 0xad,
- 0x61, 0x6d, 0x61, 0xc3, 0xb1, 0x61, 0x6e, 0x61, 0xc3, 0xba, 0x6c, 0x74, 0x69,
- 0x6d, 0x61, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x6f, 0x73, 0x6f, 0x66, 0x69, 0x63,
- 0x69, 0x61, 0x6c, 0x74, 0x61, 0x6d, 0x62, 0x69, 0x65, 0x6e, 0x6e, 0x69, 0x6e,
- 0x67, 0xc3, 0xba, 0x6e, 0x73, 0x61, 0x6c, 0x75, 0x64, 0x6f, 0x73, 0x70, 0x6f,
- 0x64, 0x65, 0x6d, 0x6f, 0x73, 0x6d, 0x65, 0x6a, 0x6f, 0x72, 0x61, 0x72, 0x70,
- 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x75, 0x73, 0x69, 0x6e, 0x65,
- 0x73, 0x73, 0x68, 0x6f, 0x6d, 0x65, 0x70, 0x61, 0x67, 0x65, 0x73, 0x65, 0x63,
- 0x75, 0x72, 0x69, 0x74, 0x79, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65,
- 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x63, 0x61, 0x6d, 0x70, 0x61,
- 0x69, 0x67, 0x6e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x63, 0x61,
- 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61,
- 0x6c, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x72, 0x65, 0x73, 0x65,
- 0x72, 0x76, 0x65, 0x64, 0x72, 0x65, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x65,
- 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69,
- 0x74, 0x65, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x6d, 0x69, 0x6c,
- 0x69, 0x74, 0x61, 0x72, 0x79, 0x69, 0x6e, 0x64, 0x75, 0x73, 0x74, 0x72, 0x79,
- 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x6d, 0x61, 0x74, 0x65, 0x72,
- 0x69, 0x61, 0x6c, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x73, 0x7a, 0x2d,
- 0x69, 0x6e, 0x64, 0x65, 0x78, 0x3a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74,
- 0x73, 0x73, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x70,
- 0x6c, 0x65, 0x74, 0x65, 0x63, 0x61, 0x6c, 0x65, 0x6e, 0x64, 0x61, 0x72, 0x70,
- 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c,
- 0x65, 0x73, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x6d, 0x6f, 0x76,
- 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e,
- 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x70, 0x6f, 0x6c, 0x69, 0x74,
- 0x69, 0x63, 0x73, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x72, 0x65,
- 0x6c, 0x69, 0x67, 0x69, 0x6f, 0x6e, 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61,
- 0x6c, 0x66, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x72, 0x65, 0x67, 0x69,
- 0x73, 0x74, 0x65, 0x72, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x73, 0x64,
- 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
- 0x6f, 0x6c, 0x61, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x65, 0x74,
- 0x74, 0x69, 0x6e, 0x67, 0x73, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79,
- 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x6c, 0x65, 0x61, 0x72, 0x6e,
- 0x69, 0x6e, 0x67, 0x61, 0x6e, 0x79, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x61, 0x62,
- 0x73, 0x74, 0x72, 0x61, 0x63, 0x74, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73,
- 0x73, 0x6f, 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x6d, 0x61, 0x67, 0x61,
- 0x7a, 0x69, 0x6e, 0x65, 0x65, 0x63, 0x6f, 0x6e, 0x6f, 0x6d, 0x69, 0x63, 0x74,
- 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x70, 0x72, 0x65, 0x73, 0x73, 0x75,
- 0x72, 0x65, 0x76, 0x61, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x20, 0x3c, 0x73, 0x74,
- 0x72, 0x6f, 0x6e, 0x67, 0x3e, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79,
- 0x73, 0x68, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x74, 0x6f, 0x67, 0x65, 0x74,
- 0x68, 0x65, 0x72, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x62, 0x65,
- 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61,
- 0x64, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x66, 0x6f, 0x6f, 0x74,
- 0x62, 0x61, 0x6c, 0x6c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x4c,
- 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e,
- 0x63, 0x65, 0x72, 0x65, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x74, 0x72, 0x61,
- 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64,
- 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x73, 0x74, 0x75, 0x64, 0x65,
- 0x6e, 0x74, 0x73, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, 0x66, 0x69,
- 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x6e, 0x6f, 0x72, 0x74, 0x68, 0x65, 0x72,
- 0x6e, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x66, 0x65, 0x73, 0x74,
- 0x69, 0x76, 0x61, 0x6c, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x6c,
- 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
- 0x65, 0x74, 0x64, 0x72, 0x6f, 0x70, 0x64, 0x6f, 0x77, 0x6e, 0x70, 0x72, 0x61,
- 0x63, 0x74, 0x69, 0x63, 0x65, 0x65, 0x76, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65,
- 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x61, 0x72, 0x72, 0x69,
- 0x61, 0x67, 0x65, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x70, 0x72,
- 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x73, 0x6e, 0x65, 0x67, 0x61, 0x74, 0x69, 0x76,
- 0x65, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x73, 0x61, 0x6e, 0x61, 0x6c,
- 0x79, 0x73, 0x69, 0x73, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x62,
- 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x22, 0x3e, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61,
- 0x73, 0x65, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x72, 0x65, 0x67,
- 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x76, 0x65,
- 0x61, 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x62, 0x6f, 0x6f, 0x6b, 0x6d,
- 0x61, 0x72, 0x6b, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x72, 0x63, 0x68,
- 0x65, 0x6d, 0x69, 0x63, 0x61, 0x6c, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f,
- 0x6e, 0x63, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x73, 0x65, 0x70, 0x61,
- 0x72, 0x61, 0x74, 0x65, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x63,
- 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61,
- 0x72, 0x65, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, 0x64, 0x65, 0x6c,
- 0x69, 0x76, 0x65, 0x72, 0x79, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x61, 0x69, 0x6e,
- 0x6f, 0x62, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x3d, 0x20, 0x66, 0x61, 0x6c,
- 0x73, 0x65, 0x3b, 0x66, 0x6f, 0x72, 0x28, 0x76, 0x61, 0x72, 0x20, 0x61, 0x63,
- 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74,
- 0x79, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x69, 0x64, 0x65, 0x6e,
- 0x74, 0x69, 0x74, 0x79, 0x61, 0x69, 0x72, 0x63, 0x72, 0x61, 0x66, 0x74, 0x65,
- 0x6d, 0x70, 0x6c, 0x6f, 0x79, 0x65, 0x64, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73,
- 0x65, 0x64, 0x64, 0x6f, 0x6d, 0x65, 0x73, 0x74, 0x69, 0x63, 0x69, 0x6e, 0x63,
- 0x6c, 0x75, 0x64, 0x65, 0x73, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64,
- 0x68, 0x6f, 0x73, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x76, 0x65, 0x72, 0x74, 0x69,
- 0x63, 0x61, 0x6c, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x70, 0x73, 0x65, 0x61, 0x70,
- 0x70, 0x72, 0x6f, 0x61, 0x63, 0x68, 0x70, 0x61, 0x72, 0x74, 0x6e, 0x65, 0x72,
- 0x73, 0x6c, 0x6f, 0x67, 0x6f, 0x22, 0x3e, 0x3c, 0x61, 0x64, 0x61, 0x75, 0x67,
- 0x68, 0x74, 0x65, 0x72, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x22, 0x20, 0x63,
- 0x75, 0x6c, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x69,
- 0x65, 0x73, 0x2f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x2f, 0x61, 0x73, 0x73,
- 0x65, 0x6d, 0x62, 0x6c, 0x79, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x66, 0x75, 0x6c,
- 0x74, 0x65, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x66, 0x69, 0x6e, 0x69, 0x73,
- 0x68, 0x65, 0x64, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x63, 0x72,
- 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x63, 0x67, 0x69, 0x2d, 0x62, 0x69, 0x6e,
- 0x2f, 0x70, 0x75, 0x72, 0x70, 0x6f, 0x73, 0x65, 0x73, 0x72, 0x65, 0x71, 0x75,
- 0x69, 0x72, 0x65, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x62,
- 0x65, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64,
- 0x65, 0x73, 0x61, 0x63, 0x61, 0x64, 0x65, 0x6d, 0x69, 0x63, 0x65, 0x78, 0x65,
- 0x72, 0x63, 0x69, 0x73, 0x65, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x6c, 0x79,
- 0x6d, 0x65, 0x64, 0x69, 0x63, 0x69, 0x6e, 0x65, 0x63, 0x6f, 0x6e, 0x73, 0x74,
- 0x61, 0x6e, 0x74, 0x61, 0x63, 0x63, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x4d, 0x61,
- 0x67, 0x61, 0x7a, 0x69, 0x6e, 0x65, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
- 0x74, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x62, 0x6f, 0x74, 0x74,
- 0x6f, 0x6d, 0x22, 0x3e, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x3a,
- 0x20, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64,
- 0x65, 0x64, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x53, 0x6f, 0x66,
- 0x74, 0x77, 0x61, 0x72, 0x65, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72,
- 0x64, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x65, 0x6e,
- 0x67, 0x74, 0x68, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x73, 0x6c,
- 0x69, 0x67, 0x68, 0x74, 0x6c, 0x79, 0x70, 0x6c, 0x61, 0x6e, 0x6e, 0x69, 0x6e,
- 0x67, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72, 0x65, 0x61, 0x63, 0x75, 0x72, 0x72,
- 0x65, 0x6e, 0x63, 0x79, 0x65, 0x76, 0x65, 0x72, 0x79, 0x6f, 0x6e, 0x65, 0x73,
- 0x74, 0x72, 0x61, 0x69, 0x67, 0x68, 0x74, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66,
- 0x65, 0x72, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x70, 0x72, 0x6f,
- 0x64, 0x75, 0x63, 0x65, 0x64, 0x68, 0x65, 0x72, 0x69, 0x74, 0x61, 0x67, 0x65,
- 0x73, 0x68, 0x69, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x61, 0x62, 0x73, 0x6f, 0x6c,
- 0x75, 0x74, 0x65, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x72, 0x65,
- 0x6c, 0x65, 0x76, 0x61, 0x6e, 0x74, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x22,
- 0x20, 0x76, 0x69, 0x6f, 0x6c, 0x65, 0x6e, 0x63, 0x65, 0x61, 0x6e, 0x79, 0x77,
- 0x68, 0x65, 0x72, 0x65, 0x62, 0x65, 0x6e, 0x65, 0x66, 0x69, 0x74, 0x73, 0x6c,
- 0x61, 0x75, 0x6e, 0x63, 0x68, 0x65, 0x64, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74,
- 0x6c, 0x79, 0x61, 0x6c, 0x6c, 0x69, 0x61, 0x6e, 0x63, 0x65, 0x66, 0x6f, 0x6c,
- 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65,
- 0x62, 0x75, 0x6c, 0x6c, 0x65, 0x74, 0x69, 0x6e, 0x69, 0x6e, 0x63, 0x6c, 0x75,
- 0x64, 0x65, 0x64, 0x6f, 0x63, 0x63, 0x75, 0x72, 0x72, 0x65, 0x64, 0x69, 0x6e,
- 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x24, 0x28, 0x74, 0x68, 0x69, 0x73, 0x29,
- 0x2e, 0x72, 0x65, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x3e, 0x3c, 0x74, 0x72,
- 0x3e, 0x3c, 0x74, 0x64, 0x63, 0x6f, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x72,
- 0x65, 0x63, 0x6f, 0x72, 0x64, 0x65, 0x64, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61,
- 0x74, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x3c, 0x75, 0x6c,
- 0x20, 0x69, 0x64, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72,
- 0x48, 0x6f, 0x6d, 0x65, 0x3c, 0x2f, 0x61, 0x3e, 0x77, 0x65, 0x62, 0x73, 0x69,
- 0x74, 0x65, 0x73, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x61, 0x6c,
- 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x72, 0x65, 0x6c,
- 0x79, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x6d, 0x65, 0x73, 0x73,
- 0x61, 0x67, 0x65, 0x73, 0x63, 0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75, 0x65, 0x61,
- 0x63, 0x74, 0x69, 0x76, 0x65, 0x22, 0x3e, 0x73, 0x6f, 0x6d, 0x65, 0x77, 0x68,
- 0x61, 0x74, 0x76, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x57, 0x65, 0x73,
- 0x74, 0x65, 0x72, 0x6e, 0x20, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3d, 0x22,
- 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x63, 0x6f, 0x6e, 0x74, 0x72,
- 0x61, 0x63, 0x74, 0x76, 0x69, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x73, 0x44, 0x6f,
- 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x77, 0x69, 0x74, 0x68, 0x6f, 0x75, 0x74,
- 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x22, 0x3e, 0x0a, 0x6d, 0x65, 0x61, 0x73,
- 0x75, 0x72, 0x65, 0x73, 0x77, 0x69, 0x64, 0x74, 0x68, 0x20, 0x3d, 0x20, 0x76,
- 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x69, 0x6e, 0x76, 0x6f, 0x6c, 0x76,
- 0x65, 0x64, 0x76, 0x69, 0x72, 0x67, 0x69, 0x6e, 0x69, 0x61, 0x6e, 0x6f, 0x72,
- 0x6d, 0x61, 0x6c, 0x6c, 0x79, 0x68, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x65, 0x64,
- 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x73, 0x74, 0x61, 0x6e, 0x64,
- 0x69, 0x6e, 0x67, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x52, 0x65,
- 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65,
- 0x64, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x61, 0x63, 0x63, 0x75,
- 0x72, 0x61, 0x74, 0x65, 0x62, 0x69, 0x72, 0x74, 0x68, 0x64, 0x61, 0x79, 0x73,
- 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x79, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x69,
- 0x61, 0x6c, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x73, 0x63, 0x72, 0x69,
- 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x79,
- 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x72, 0x50, 0x65, 0x72, 0x73, 0x6f,
- 0x6e, 0x61, 0x6c, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x76, 0x61,
- 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x61, 0x63, 0x68, 0x69, 0x65, 0x76, 0x65,
- 0x64, 0x2e, 0x6a, 0x70, 0x67, 0x22, 0x20, 0x2f, 0x3e, 0x6d, 0x61, 0x63, 0x68,
- 0x69, 0x6e, 0x65, 0x73, 0x3c, 0x2f, 0x68, 0x32, 0x3e, 0x0a, 0x20, 0x20, 0x6b,
- 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64,
- 0x6c, 0x79, 0x62, 0x72, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x73, 0x63, 0x6f, 0x6d,
- 0x62, 0x69, 0x6e, 0x65, 0x64, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c,
- 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x65, 0x78, 0x70, 0x65, 0x63,
- 0x74, 0x65, 0x64, 0x61, 0x64, 0x65, 0x71, 0x75, 0x61, 0x74, 0x65, 0x70, 0x61,
- 0x6b, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x22,
- 0x20, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x62, 0x6c, 0x65, 0x3c, 0x2f, 0x6c, 0x61,
- 0x62, 0x65, 0x6c, 0x3e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x62,
- 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x61,
- 0x73, 0x65, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x70, 0x6c, 0x75,
- 0x67, 0x69, 0x6e, 0x73, 0x2f, 0x4c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20,
- 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x22, 0x3e, 0x22, 0x20, 0x6e, 0x61, 0x6d,
- 0x65, 0x3d, 0x22, 0x20, 0x28, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x67, 0x72,
- 0x61, 0x64, 0x75, 0x61, 0x74, 0x65, 0x3c, 0x2f, 0x68, 0x65, 0x61, 0x64, 0x3e,
- 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x72, 0x63, 0x65, 0x6d, 0x61, 0x6c, 0x61,
- 0x79, 0x73, 0x69, 0x61, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x6d,
- 0x61, 0x69, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x3b, 0x68, 0x65, 0x69, 0x67, 0x68,
- 0x74, 0x3a, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x63, 0x68, 0x61,
- 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x62, 0x61, 0x63, 0x6b, 0x20, 0x74, 0x6f, 0x20,
- 0x63, 0x61, 0x74, 0x68, 0x6f, 0x6c, 0x69, 0x63, 0x70, 0x61, 0x74, 0x74, 0x65,
- 0x72, 0x6e, 0x73, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x20, 0x23, 0x67, 0x72,
- 0x65, 0x61, 0x74, 0x65, 0x73, 0x74, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x69, 0x65,
- 0x73, 0x72, 0x65, 0x6c, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x3c, 0x2f, 0x75, 0x6c,
- 0x3e, 0x0a, 0x09, 0x09, 0x3c, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x20, 0x63,
- 0x69, 0x74, 0x69, 0x7a, 0x65, 0x6e, 0x73, 0x63, 0x6c, 0x6f, 0x74, 0x68, 0x69,
- 0x6e, 0x67, 0x77, 0x61, 0x74, 0x63, 0x68, 0x69, 0x6e, 0x67, 0x3c, 0x6c, 0x69,
- 0x20, 0x69, 0x64, 0x3d, 0x22, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63,
- 0x63, 0x61, 0x72, 0x72, 0x79, 0x69, 0x6e, 0x67, 0x73, 0x65, 0x6e, 0x74, 0x65,
- 0x6e, 0x63, 0x65, 0x3c, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x3e, 0x63, 0x6f,
- 0x6e, 0x74, 0x72, 0x61, 0x73, 0x74, 0x74, 0x68, 0x69, 0x6e, 0x6b, 0x69, 0x6e,
- 0x67, 0x63, 0x61, 0x74, 0x63, 0x68, 0x28, 0x65, 0x29, 0x73, 0x6f, 0x75, 0x74,
- 0x68, 0x65, 0x72, 0x6e, 0x4d, 0x69, 0x63, 0x68, 0x61, 0x65, 0x6c, 0x20, 0x6d,
- 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x74, 0x63, 0x61, 0x72, 0x6f, 0x75, 0x73,
- 0x65, 0x6c, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x69, 0x6e, 0x74,
- 0x65, 0x72, 0x69, 0x6f, 0x72, 0x2e, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x28, 0x22,
- 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x63, 0x74, 0x6f, 0x62,
- 0x65, 0x72, 0x20, 0x29, 0x7b, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6d,
- 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x2d, 0x2d, 0x26, 0x67, 0x74, 0x3b, 0x0a,
- 0x0a, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x61, 0x67, 0x65, 0x63, 0x68, 0x61, 0x69,
- 0x72, 0x6d, 0x61, 0x6e, 0x2e, 0x70, 0x6e, 0x67, 0x22, 0x20, 0x2f, 0x3e, 0x73,
- 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x69, 0x63, 0x68, 0x61, 0x72,
- 0x64, 0x20, 0x77, 0x68, 0x61, 0x74, 0x65, 0x76, 0x65, 0x72, 0x70, 0x72, 0x6f,
- 0x62, 0x61, 0x62, 0x6c, 0x79, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79,
- 0x62, 0x61, 0x73, 0x65, 0x62, 0x61, 0x6c, 0x6c, 0x6a, 0x75, 0x64, 0x67, 0x6d,
- 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x2e, 0x2e, 0x63,
- 0x73, 0x73, 0x22, 0x20, 0x2f, 0x3e, 0x20, 0x77, 0x65, 0x62, 0x73, 0x69, 0x74,
- 0x65, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x64, 0x65, 0x66, 0x61,
- 0x75, 0x6c, 0x74, 0x22, 0x2f, 0x3e, 0x3c, 0x2f, 0x61, 0x3e, 0x0d, 0x0a, 0x65,
- 0x6c, 0x65, 0x63, 0x74, 0x72, 0x69, 0x63, 0x73, 0x63, 0x6f, 0x74, 0x6c, 0x61,
- 0x6e, 0x64, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x71, 0x75, 0x61,
- 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e, 0x20, 0x49, 0x53, 0x42, 0x4e, 0x20, 0x30,
- 0x64, 0x69, 0x64, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61,
- 0x6e, 0x63, 0x65, 0x2d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x2d, 0x22, 0x20,
- 0x6c, 0x61, 0x6e, 0x67, 0x3d, 0x22, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x65, 0x72,
- 0x73, 0x43, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x63, 0x6f, 0x6e, 0x74,
- 0x61, 0x69, 0x6e, 0x73, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x73, 0x6d,
- 0x69, 0x6e, 0x69, 0x73, 0x74, 0x65, 0x72, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69,
- 0x6f, 0x6e, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x74, 0x61,
- 0x6c, 0x69, 0x61, 0x6e, 0x6f, 0x63, 0x72, 0x69, 0x74, 0x65, 0x72, 0x69, 0x61,
- 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x6c, 0x79, 0x3a, 0x20, 0x27, 0x68, 0x74,
- 0x74, 0x70, 0x3a, 0x27, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x27, 0x63, 0x6f,
- 0x76, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x6f, 0x66, 0x66, 0x65, 0x72, 0x69, 0x6e,
- 0x67, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x65, 0x64, 0x42, 0x72, 0x69, 0x74,
- 0x69, 0x73, 0x68, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x79, 0x46,
- 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x6f,
- 0x75, 0x73, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x63, 0x6f, 0x6e,
- 0x63, 0x65, 0x72, 0x6e, 0x73, 0x41, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x61, 0x6e,
- 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x69, 0x6e, 0x67, 0x64, 0x69, 0x76, 0x20, 0x69,
- 0x64, 0x3d, 0x22, 0x57, 0x69, 0x6c, 0x6c, 0x69, 0x61, 0x6d, 0x20, 0x70, 0x72,
- 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
- 0x74, 0x61, 0x63, 0x63, 0x75, 0x72, 0x61, 0x63, 0x79, 0x73, 0x65, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x66,
- 0x6c, 0x65, 0x78, 0x69, 0x62, 0x6c, 0x65, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f,
- 0x72, 0x79, 0x6c, 0x61, 0x77, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x3c, 0x73, 0x63,
- 0x72, 0x69, 0x70, 0x74, 0x3e, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x3d, 0x22,
- 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x20, 0x6d, 0x61, 0x78, 0x69,
- 0x6d, 0x75, 0x6d, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x22, 0x3e, 0x3c, 0x2f,
- 0x74, 0x61, 0x62, 0x6c, 0x65, 0x3e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
- 0x73, 0x68, 0x61, 0x6d, 0x69, 0x6c, 0x74, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72,
- 0x65, 0x6e, 0x74, 0x20, 0x63, 0x61, 0x6e, 0x61, 0x64, 0x69, 0x61, 0x6e, 0x63,
- 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x2f, 0x74, 0x68, 0x65, 0x6d, 0x65,
- 0x73, 0x2f, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x6f, 0x70, 0x74,
- 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x70, 0x6f, 0x72, 0x74, 0x75, 0x67, 0x61, 0x6c,
- 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x22, 0x69, 0x6e, 0x74, 0x65, 0x72,
- 0x76, 0x61, 0x6c, 0x77, 0x69, 0x72, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x65, 0x6e,
- 0x74, 0x69, 0x74, 0x6c, 0x65, 0x64, 0x61, 0x67, 0x65, 0x6e, 0x63, 0x69, 0x65,
- 0x73, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x22, 0x20, 0x6d, 0x65, 0x61, 0x73,
- 0x75, 0x72, 0x65, 0x64, 0x74, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x73,
- 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x26, 0x68, 0x65, 0x6c, 0x6c, 0x69,
- 0x70, 0x3b, 0x6e, 0x65, 0x77, 0x20, 0x44, 0x61, 0x74, 0x65, 0x22, 0x20, 0x73,
- 0x69, 0x7a, 0x65, 0x3d, 0x22, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65,
- 0x6d, 0x69, 0x64, 0x64, 0x6c, 0x65, 0x22, 0x20, 0x22, 0x20, 0x2f, 0x3e, 0x3c,
- 0x2f, 0x61, 0x3e, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x22, 0x3e, 0x73, 0x65,
- 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61,
- 0x6c, 0x6f, 0x76, 0x65, 0x72, 0x66, 0x6c, 0x6f, 0x77, 0x6f, 0x70, 0x69, 0x6e,
- 0x69, 0x6f, 0x6e, 0x73, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x6f, 0x69, 0x73, 0x6c,
- 0x69, 0x6e, 0x6b, 0x73, 0x22, 0x3e, 0x0a, 0x09, 0x3c, 0x74, 0x69, 0x74, 0x6c,
- 0x65, 0x3e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x73, 0x61, 0x74,
- 0x75, 0x72, 0x64, 0x61, 0x79, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c,
- 0x69, 0x74, 0x65, 0x6d, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e,
- 0x65, 0x65, 0x72, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x64, 0x65,
- 0x73, 0x69, 0x67, 0x6e, 0x65, 0x72, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x61,
- 0x6c, 0x3d, 0x22, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x22, 0x45, 0x73, 0x70, 0x61,
- 0xc3, 0xb1, 0x6f, 0x6c, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x73,
- 0x75, 0x62, 0x6d, 0x69, 0x74, 0x22, 0x20, 0x65, 0x72, 0x26, 0x71, 0x75, 0x6f,
- 0x74, 0x3b, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x79, 0x6d,
- 0x70, 0x74, 0x6f, 0x6d, 0x73, 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x65, 0x64,
- 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x72, 0x69, 0x67, 0x68, 0x74,
- 0x22, 0x3e, 0x3c, 0x70, 0x6c, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x73, 0x74,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79,
- 0x2e, 0x6c, 0x65, 0x61, 0x76, 0x69, 0x6e, 0x67, 0x20, 0x20, 0x62, 0x6f, 0x72,
- 0x64, 0x65, 0x72, 0x3d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x63,
- 0x65, 0x6e, 0x74, 0x65, 0x72, 0x22, 0x3e, 0x2e, 0x0a, 0x0a, 0x53, 0x6f, 0x6d,
- 0x65, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x65, 0x64, 0x73, 0x75, 0x69,
- 0x74, 0x61, 0x62, 0x6c, 0x65, 0x62, 0x75, 0x6c, 0x67, 0x61, 0x72, 0x69, 0x61,
- 0x2e, 0x73, 0x68, 0x6f, 0x77, 0x28, 0x29, 0x3b, 0x64, 0x65, 0x73, 0x69, 0x67,
- 0x6e, 0x65, 0x64, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x20, 0x63, 0x6f,
- 0x6e, 0x63, 0x65, 0x70, 0x74, 0x73, 0x45, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65,
- 0x73, 0x77, 0x69, 0x6c, 0x6c, 0x69, 0x61, 0x6d, 0x73, 0x4f, 0x72, 0x69, 0x67,
- 0x69, 0x6e, 0x61, 0x6c, 0x22, 0x3e, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x73,
- 0x65, 0x61, 0x72, 0x63, 0x68, 0x22, 0x3e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74,
- 0x6f, 0x72, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x61, 0x20, 0x26,
- 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67,
- 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x72, 0x65, 0x76, 0x69, 0x73,
- 0x69, 0x6f, 0x6e, 0x2e, 0x20, 0x0a, 0x0a, 0x54, 0x68, 0x65, 0x20, 0x79, 0x6f,
- 0x75, 0x72, 0x73, 0x65, 0x6c, 0x66, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74,
- 0x20, 0x6d, 0x69, 0x63, 0x68, 0x69, 0x67, 0x61, 0x6e, 0x45, 0x6e, 0x67, 0x6c,
- 0x69, 0x73, 0x68, 0x20, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x62, 0x69, 0x61, 0x70,
- 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x69,
- 0x6e, 0x67, 0x64, 0x72, 0x69, 0x6e, 0x6b, 0x69, 0x6e, 0x67, 0x66, 0x61, 0x63,
- 0x69, 0x6c, 0x69, 0x74, 0x79, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64,
- 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x66, 0x69, 0x63,
- 0x65, 0x72, 0x73, 0x52, 0x75, 0x73, 0x73, 0x69, 0x61, 0x6e, 0x20, 0x67, 0x65,
- 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x2d, 0x38, 0x38, 0x35, 0x39, 0x2d, 0x31,
- 0x22, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x66, 0x61, 0x6d, 0x69,
- 0x6c, 0x69, 0x61, 0x72, 0x20, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x6d,
- 0x61, 0x72, 0x67, 0x69, 0x6e, 0x3a, 0x30, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65,
- 0x6e, 0x74, 0x76, 0x69, 0x65, 0x77, 0x70, 0x6f, 0x72, 0x74, 0x63, 0x6f, 0x6e,
- 0x74, 0x61, 0x63, 0x74, 0x73, 0x2d, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x3e,
- 0x70, 0x6f, 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x6c, 0x65, 0x6e, 0x67,
- 0x74, 0x68, 0x20, 0x65, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x69, 0x6e,
- 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x73, 0x61, 0x74, 0x6c, 0x61, 0x6e, 0x74, 0x69,
- 0x63, 0x6f, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x3d, 0x22, 0x64, 0x65, 0x66, 0x61,
- 0x75, 0x6c, 0x74, 0x2e, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x70,
- 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x67, 0x6c, 0x6f, 0x73, 0x73, 0x61,
- 0x72, 0x79, 0x0a, 0x0a, 0x41, 0x66, 0x74, 0x65, 0x72, 0x20, 0x67, 0x75, 0x69,
- 0x64, 0x61, 0x6e, 0x63, 0x65, 0x3c, 0x2f, 0x74, 0x64, 0x3e, 0x3c, 0x74, 0x64,
- 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x6d, 0x69, 0x64, 0x64, 0x6c,
- 0x65, 0x22, 0x3e, 0x63, 0x61, 0x6d, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x69,
- 0x73, 0x70, 0x6c, 0x61, 0x79, 0x73, 0x73, 0x63, 0x6f, 0x74, 0x74, 0x69, 0x73,
- 0x68, 0x6a, 0x6f, 0x6e, 0x61, 0x74, 0x68, 0x61, 0x6e, 0x6d, 0x61, 0x6a, 0x6f,
- 0x72, 0x69, 0x74, 0x79, 0x77, 0x69, 0x64, 0x67, 0x65, 0x74, 0x73, 0x2e, 0x63,
- 0x6c, 0x69, 0x6e, 0x69, 0x63, 0x61, 0x6c, 0x74, 0x68, 0x61, 0x69, 0x6c, 0x61,
- 0x6e, 0x64, 0x74, 0x65, 0x61, 0x63, 0x68, 0x65, 0x72, 0x73, 0x3c, 0x68, 0x65,
- 0x61, 0x64, 0x3e, 0x0a, 0x09, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64,
- 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x70, 0x6f, 0x69, 0x6e, 0x74,
- 0x65, 0x72, 0x3b, 0x74, 0x6f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x3c, 0x2f,
- 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x3e, 0x6f, 0x6b, 0x6c, 0x61, 0x68, 0x6f, 0x6d,
- 0x61, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, 0x69, 0x6e, 0x76, 0x65,
- 0x73, 0x74, 0x6f, 0x72, 0x30, 0x22, 0x20, 0x61, 0x6c, 0x74, 0x3d, 0x22, 0x68,
- 0x6f, 0x6c, 0x69, 0x64, 0x61, 0x79, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
- 0x63, 0x65, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x64, 0x20, 0x28, 0x77,
- 0x68, 0x69, 0x63, 0x68, 0x20, 0x2e, 0x20, 0x41, 0x66, 0x74, 0x65, 0x72, 0x20,
- 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x76, 0x69, 0x73, 0x69, 0x74,
- 0x69, 0x6e, 0x67, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x70, 0x72,
- 0x69, 0x6d, 0x61, 0x72, 0x79, 0x20, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x22,
- 0x20, 0x61, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x22, 0x71, 0x75, 0x69, 0x63,
- 0x6b, 0x6c, 0x79, 0x20, 0x6d, 0x65, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x65,
- 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x3b, 0x72, 0x65, 0x74, 0x75, 0x72,
- 0x6e, 0x20, 0x3b, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x23, 0x20, 0x68, 0x65,
- 0x69, 0x67, 0x68, 0x74, 0x3d, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c,
- 0x2c, 0x20, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x20, 0x63, 0x68, 0x65, 0x63,
- 0x6b, 0x65, 0x64, 0x2e, 0x6d, 0x69, 0x6e, 0x2e, 0x6a, 0x73, 0x22, 0x6d, 0x61,
- 0x67, 0x6e, 0x65, 0x74, 0x69, 0x63, 0x3e, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f,
- 0x68, 0x66, 0x6f, 0x72, 0x65, 0x63, 0x61, 0x73, 0x74, 0x2e, 0x20, 0x57, 0x68,
- 0x69, 0x6c, 0x65, 0x20, 0x74, 0x68, 0x75, 0x72, 0x73, 0x64, 0x61, 0x79, 0x64,
- 0x76, 0x65, 0x72, 0x74, 0x69, 0x73, 0x65, 0x26, 0x65, 0x61, 0x63, 0x75, 0x74,
- 0x65, 0x3b, 0x68, 0x61, 0x73, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x76, 0x61,
- 0x6c, 0x75, 0x61, 0x74, 0x65, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67,
- 0x65, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x70, 0x61, 0x74, 0x69, 0x65,
- 0x6e, 0x74, 0x73, 0x20, 0x4f, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x63, 0x6f,
- 0x6c, 0x6f, 0x72, 0x61, 0x64, 0x6f, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
- 0x22, 0x63, 0x61, 0x6d, 0x70, 0x62, 0x65, 0x6c, 0x6c, 0x3c, 0x21, 0x2d, 0x2d,
- 0x20, 0x65, 0x6e, 0x64, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x3c, 0x3c,
- 0x62, 0x72, 0x20, 0x2f, 0x3e, 0x0d, 0x0a, 0x5f, 0x70, 0x6f, 0x70, 0x75, 0x70,
- 0x73, 0x7c, 0x73, 0x63, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x2c, 0x26, 0x71,
- 0x75, 0x6f, 0x74, 0x3b, 0x20, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x20,
- 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x20, 0x61, 0x73, 0x73, 0x69, 0x67,
- 0x6e, 0x65, 0x64, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x20, 0x3c, 0x62,
- 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6c, 0x65, 0x26, 0x71, 0x75, 0x6f, 0x74,
- 0x3b, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x20, 0x43, 0x6f, 0x6d,
- 0x70, 0x61, 0x6e, 0x79, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x3c,
- 0x69, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x20, 0x62, 0x65, 0x6c, 0x69, 0x65, 0x76,
- 0x65, 0x73, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x73, 0x6d, 0x61, 0x72,
- 0x73, 0x68, 0x61, 0x6c, 0x6c, 0x70, 0x61, 0x72, 0x74, 0x20, 0x6f, 0x66, 0x20,
- 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x6c, 0x79, 0x29, 0x2e, 0x0a, 0x0a, 0x54,
- 0x68, 0x65, 0x20, 0x74, 0x61, 0x78, 0x6f, 0x6e, 0x6f, 0x6d, 0x79, 0x6d, 0x75,
- 0x63, 0x68, 0x20, 0x6f, 0x66, 0x20, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e,
- 0x0a, 0x22, 0x20, 0x64, 0x61, 0x74, 0x61, 0x2d, 0x73, 0x72, 0x74, 0x75, 0x67,
- 0x75, 0xc3, 0xaa, 0x73, 0x73, 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x54, 0x6f, 0x20,
- 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x3c, 0x68, 0x65, 0x61, 0x64, 0x3e,
- 0x0d, 0x0a, 0x61, 0x74, 0x74, 0x6f, 0x72, 0x6e, 0x65, 0x79, 0x65, 0x6d, 0x70,
- 0x68, 0x61, 0x73, 0x69, 0x73, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x6f, 0x72, 0x73,
- 0x66, 0x61, 0x6e, 0x63, 0x79, 0x62, 0x6f, 0x78, 0x77, 0x6f, 0x72, 0x6c, 0x64,
- 0x27, 0x73, 0x20, 0x77, 0x69, 0x6c, 0x64, 0x6c, 0x69, 0x66, 0x65, 0x63, 0x68,
- 0x65, 0x63, 0x6b, 0x65, 0x64, 0x3d, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
- 0x73, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x70, 0x78, 0x3b, 0x66,
- 0x6f, 0x6e, 0x74, 0x2d, 0x20, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x6a,
- 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6c, 0x73, 0x62, 0x65, 0x6c, 0x69, 0x65, 0x76,
- 0x65, 0x64, 0x76, 0x61, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x6f,
- 0x6d, 0x70, 0x73, 0x6f, 0x6e, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67,
- 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69,
- 0x61, 0x6c, 0x20, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x3d, 0x30, 0x63, 0x68,
- 0x65, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x3c, 0x2f, 0x74, 0x62, 0x6f, 0x64, 0x79,
- 0x3e, 0x3c, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x43, 0x6f, 0x6d, 0x70,
- 0x6c, 0x65, 0x74, 0x65, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x66, 0x69, 0x78, 0x0a,
- 0x3c, 0x68, 0x65, 0x61, 0x64, 0x3e, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c,
- 0x65, 0x20, 0x3c, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x66, 0x69, 0x6e,
- 0x64, 0x69, 0x6e, 0x67, 0x73, 0x72, 0x6f, 0x6c, 0x65, 0x20, 0x69, 0x6e, 0x20,
- 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x20, 0x4f, 0x63, 0x74, 0x6f,
- 0x62, 0x65, 0x72, 0x77, 0x65, 0x62, 0x73, 0x69, 0x74, 0x65, 0x20, 0x65, 0x78,
- 0x70, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f,
- 0x20, 0x20, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x6f, 0x70, 0x65, 0x72,
- 0x61, 0x74, 0x65, 0x64, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x65,
- 0x6e, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e,
- 0x64, 0x73, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, 0x20, 0x6e, 0x75,
- 0x6d, 0x62, 0x65, 0x72, 0x73, 0x20, 0x20, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e,
- 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x6f, 0x6e, 0x53, 0x75, 0x62,
- 0x6d, 0x69, 0x74, 0x6d, 0x61, 0x72, 0x79, 0x6c, 0x61, 0x6e, 0x64, 0x63, 0x6f,
- 0x6c, 0x6c, 0x65, 0x67, 0x65, 0x73, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69,
- 0x63, 0x6c, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x63, 0x6f, 0x6e, 0x74,
- 0x61, 0x63, 0x74, 0x2e, 0x6c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x61,
- 0x64, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x79, 0x73, 0x69, 0x62, 0x6c, 0x69, 0x6e,
- 0x67, 0x73, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x73, 0x26, 0x71,
- 0x75, 0x6f, 0x74, 0x3b, 0x29, 0x73, 0x2e, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20,
- 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x73, 0x63, 0x68, 0x65, 0x63, 0x6b,
- 0x62, 0x6f, 0x78, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x73, 0x70, 0x72,
- 0x65, 0x67, 0x6e, 0x61, 0x6e, 0x74, 0x74, 0x6f, 0x6d, 0x6f, 0x72, 0x72, 0x6f,
- 0x77, 0x73, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x3d, 0x69, 0x63, 0x6f, 0x6e,
- 0x2e, 0x70, 0x6e, 0x67, 0x6a, 0x61, 0x70, 0x61, 0x6e, 0x65, 0x73, 0x65, 0x63,
- 0x6f, 0x64, 0x65, 0x62, 0x61, 0x73, 0x65, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e,
- 0x22, 0x3e, 0x67, 0x61, 0x6d, 0x62, 0x6c, 0x69, 0x6e, 0x67, 0x73, 0x75, 0x63,
- 0x68, 0x20, 0x61, 0x73, 0x20, 0x2c, 0x20, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x20,
- 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x20, 0x6d, 0x69, 0x73, 0x73, 0x6f,
- 0x75, 0x72, 0x69, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x74, 0x6f,
- 0x70, 0x3a, 0x31, 0x70, 0x78, 0x20, 0x2e, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e,
- 0x3e, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x77, 0x69, 0x64, 0x74,
- 0x68, 0x3d, 0x22, 0x32, 0x6c, 0x61, 0x7a, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x6e,
- 0x6f, 0x76, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x75, 0x73, 0x65, 0x64, 0x20, 0x69,
- 0x6e, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3d, 0x22, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x22, 0x3e, 0x0a, 0x26, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x3c, 0x2f,
- 0x3c, 0x74, 0x72, 0x3e, 0x3c, 0x74, 0x64, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68,
- 0x74, 0x3a, 0x32, 0x2f, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x63, 0x6f,
- 0x75, 0x6e, 0x74, 0x72, 0x79, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65,
- 0x20, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x22, 0x20, 0x26, 0x6c, 0x74, 0x3b,
- 0x21, 0x2d, 0x2d, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x3e, 0x3c, 0x2f,
- 0x6a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x3c, 0x2f, 0x66, 0x6f, 0x72, 0x6d,
- 0x3e, 0x0a, 0x28, 0xe7, 0xae, 0x80, 0xe4, 0xbd, 0x93, 0x29, 0x28, 0xe7, 0xb9,
- 0x81, 0xe9, 0xab, 0x94, 0x29, 0x68, 0x72, 0x76, 0x61, 0x74, 0x73, 0x6b, 0x69,
- 0x69, 0x74, 0x61, 0x6c, 0x69, 0x61, 0x6e, 0x6f, 0x72, 0x6f, 0x6d, 0xc3, 0xa2,
- 0x6e, 0xc4, 0x83, 0x74, 0xc3, 0xbc, 0x72, 0x6b, 0xc3, 0xa7, 0x65, 0xd8, 0xa7,
- 0xd8, 0xb1, 0xd8, 0xaf, 0xd9, 0x88, 0x74, 0x61, 0x6d, 0x62, 0x69, 0xc3, 0xa9,
- 0x6e, 0x6e, 0x6f, 0x74, 0x69, 0x63, 0x69, 0x61, 0x73, 0x6d, 0x65, 0x6e, 0x73,
- 0x61, 0x6a, 0x65, 0x73, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x73, 0x64,
- 0x65, 0x72, 0x65, 0x63, 0x68, 0x6f, 0x73, 0x6e, 0x61, 0x63, 0x69, 0x6f, 0x6e,
- 0x61, 0x6c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x69, 0x6f, 0x63, 0x6f, 0x6e,
- 0x74, 0x61, 0x63, 0x74, 0x6f, 0x75, 0x73, 0x75, 0x61, 0x72, 0x69, 0x6f, 0x73,
- 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x61, 0x67, 0x6f, 0x62, 0x69, 0x65,
- 0x72, 0x6e, 0x6f, 0x65, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x61, 0x73, 0x61, 0x6e,
- 0x75, 0x6e, 0x63, 0x69, 0x6f, 0x73, 0x76, 0x61, 0x6c, 0x65, 0x6e, 0x63, 0x69,
- 0x61, 0x63, 0x6f, 0x6c, 0x6f, 0x6d, 0x62, 0x69, 0x61, 0x64, 0x65, 0x73, 0x70,
- 0x75, 0xc3, 0xa9, 0x73, 0x64, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x73, 0x70,
- 0x72, 0x6f, 0x79, 0x65, 0x63, 0x74, 0x6f, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63,
- 0x74, 0x6f, 0x70, 0xc3, 0xba, 0x62, 0x6c, 0x69, 0x63, 0x6f, 0x6e, 0x6f, 0x73,
- 0x6f, 0x74, 0x72, 0x6f, 0x73, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x61,
- 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x65, 0x6d, 0x69, 0x6c, 0x6c, 0x6f,
- 0x6e, 0x65, 0x73, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x65, 0x70, 0x72,
- 0x65, 0x67, 0x75, 0x6e, 0x74, 0x61, 0x61, 0x6e, 0x74, 0x65, 0x72, 0x69, 0x6f,
- 0x72, 0x72, 0x65, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x73, 0x70, 0x72, 0x6f, 0x62,
- 0x6c, 0x65, 0x6d, 0x61, 0x73, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x67, 0x6f, 0x6e,
- 0x75, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x73, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0xc3,
- 0xb3, 0x6e, 0x69, 0x6d, 0x70, 0x72, 0x69, 0x6d, 0x69, 0x72, 0x6d, 0x69, 0x65,
- 0x6e, 0x74, 0x72, 0x61, 0x73, 0x61, 0x6d, 0xc3, 0xa9, 0x72, 0x69, 0x63, 0x61,
- 0x76, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x6f, 0x72, 0x73, 0x6f, 0x63, 0x69, 0x65,
- 0x64, 0x61, 0x64, 0x72, 0x65, 0x73, 0x70, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x65,
- 0x61, 0x6c, 0x69, 0x7a, 0x61, 0x72, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
- 0x6f, 0x70, 0x61, 0x6c, 0x61, 0x62, 0x72, 0x61, 0x73, 0x69, 0x6e, 0x74, 0x65,
- 0x72, 0xc3, 0xa9, 0x73, 0x65, 0x6e, 0x74, 0x6f, 0x6e, 0x63, 0x65, 0x73, 0x65,
- 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x6d, 0x69, 0x65, 0x6d, 0x62, 0x72,
- 0x6f, 0x73, 0x72, 0x65, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x64, 0x63, 0xc3, 0xb3,
- 0x72, 0x64, 0x6f, 0x62, 0x61, 0x7a, 0x61, 0x72, 0x61, 0x67, 0x6f, 0x7a, 0x61,
- 0x70, 0xc3, 0xa1, 0x67, 0x69, 0x6e, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61,
- 0x6c, 0x65, 0x73, 0x62, 0x6c, 0x6f, 0x71, 0x75, 0x65, 0x61, 0x72, 0x67, 0x65,
- 0x73, 0x74, 0x69, 0xc3, 0xb3, 0x6e, 0x61, 0x6c, 0x71, 0x75, 0x69, 0x6c, 0x65,
- 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6d, 0x61, 0x73, 0x63, 0x69, 0x65, 0x6e,
- 0x63, 0x69, 0x61, 0x73, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x6f, 0x76,
- 0x65, 0x72, 0x73, 0x69, 0xc3, 0xb3, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65,
- 0x74, 0x61, 0x65, 0x73, 0x74, 0x75, 0x64, 0x69, 0x6f, 0x73, 0x70, 0xc3, 0xba,
- 0x62, 0x6c, 0x69, 0x63, 0x61, 0x6f, 0x62, 0x6a, 0x65, 0x74, 0x69, 0x76, 0x6f,
- 0x61, 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x65, 0x62, 0x75, 0x73, 0x63, 0x61,
- 0x64, 0x6f, 0x72, 0x63, 0x61, 0x6e, 0x74, 0x69, 0x64, 0x61, 0x64, 0x65, 0x6e,
- 0x74, 0x72, 0x61, 0x64, 0x61, 0x73, 0x61, 0x63, 0x63, 0x69, 0x6f, 0x6e, 0x65,
- 0x73, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x6f, 0x73, 0x73, 0x75, 0x70, 0x65,
- 0x72, 0x69, 0x6f, 0x72, 0x6d, 0x61, 0x79, 0x6f, 0x72, 0xc3, 0xad, 0x61, 0x61,
- 0x6c, 0x65, 0x6d, 0x61, 0x6e, 0x69, 0x61, 0x66, 0x75, 0x6e, 0x63, 0x69, 0xc3,
- 0xb3, 0x6e, 0xc3, 0xba, 0x6c, 0x74, 0x69, 0x6d, 0x6f, 0x73, 0x68, 0x61, 0x63,
- 0x69, 0x65, 0x6e, 0x64, 0x6f, 0x61, 0x71, 0x75, 0x65, 0x6c, 0x6c, 0x6f, 0x73,
- 0x65, 0x64, 0x69, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x66, 0x65, 0x72, 0x6e, 0x61,
- 0x6e, 0x64, 0x6f, 0x61, 0x6d, 0x62, 0x69, 0x65, 0x6e, 0x74, 0x65, 0x66, 0x61,
- 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x6e, 0x75, 0x65, 0x73, 0x74, 0x72, 0x61,
- 0x73, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x65, 0x73, 0x70, 0x72, 0x6f, 0x63,
- 0x65, 0x73, 0x6f, 0x73, 0x62, 0x61, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x65, 0x70,
- 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74,
- 0x61, 0x72, 0x63, 0x6f, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x6f, 0x70, 0x75, 0x62,
- 0x6c, 0x69, 0x63, 0x61, 0x72, 0x63, 0x6f, 0x6d, 0x65, 0x72, 0x63, 0x69, 0x6f,
- 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x6a, 0xc3, 0xb3, 0x76, 0x65,
- 0x6e, 0x65, 0x73, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x74, 0x6f, 0x74, 0xc3,
- 0xa9, 0x63, 0x6e, 0x69, 0x63, 0x61, 0x63, 0x6f, 0x6e, 0x6a, 0x75, 0x6e, 0x74,
- 0x6f, 0x65, 0x6e, 0x65, 0x72, 0x67, 0xc3, 0xad, 0x61, 0x74, 0x72, 0x61, 0x62,
- 0x61, 0x6a, 0x61, 0x72, 0x61, 0x73, 0x74, 0x75, 0x72, 0x69, 0x61, 0x73, 0x72,
- 0x65, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x65, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a,
- 0x61, 0x72, 0x62, 0x6f, 0x6c, 0x65, 0x74, 0xc3, 0xad, 0x6e, 0x73, 0x61, 0x6c,
- 0x76, 0x61, 0x64, 0x6f, 0x72, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x61,
- 0x74, 0x72, 0x61, 0x62, 0x61, 0x6a, 0x6f, 0x73, 0x70, 0x72, 0x69, 0x6d, 0x65,
- 0x72, 0x6f, 0x73, 0x6e, 0x65, 0x67, 0x6f, 0x63, 0x69, 0x6f, 0x73, 0x6c, 0x69,
- 0x62, 0x65, 0x72, 0x74, 0x61, 0x64, 0x64, 0x65, 0x74, 0x61, 0x6c, 0x6c, 0x65,
- 0x73, 0x70, 0x61, 0x6e, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x70, 0x72, 0xc3, 0xb3,
- 0x78, 0x69, 0x6d, 0x6f, 0x61, 0x6c, 0x6d, 0x65, 0x72, 0xc3, 0xad, 0x61, 0x61,
- 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x65, 0x73, 0x71, 0x75, 0x69, 0xc3, 0xa9, 0x6e,
- 0x65, 0x73, 0x63, 0x6f, 0x72, 0x61, 0x7a, 0xc3, 0xb3, 0x6e, 0x73, 0x65, 0x63,
- 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x62, 0x75, 0x73, 0x63, 0x61, 0x6e, 0x64, 0x6f,
- 0x6f, 0x70, 0x63, 0x69, 0x6f, 0x6e, 0x65, 0x73, 0x65, 0x78, 0x74, 0x65, 0x72,
- 0x69, 0x6f, 0x72, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x74, 0x6f,
- 0x64, 0x61, 0x76, 0xc3, 0xad, 0x61, 0x67, 0x61, 0x6c, 0x65, 0x72, 0xc3, 0xad,
- 0x61, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x69,
- 0x63, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x63, 0x69, 0x61, 0x63,
- 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x74, 0x61, 0x61, 0x73, 0x70, 0x65, 0x63, 0x74,
- 0x6f, 0x73, 0x63, 0x72, 0xc3, 0xad, 0x74, 0x69, 0x63, 0x61, 0x64, 0xc3, 0xb3,
- 0x6c, 0x61, 0x72, 0x65, 0x73, 0x6a, 0x75, 0x73, 0x74, 0x69, 0x63, 0x69, 0x61,
- 0x64, 0x65, 0x62, 0x65, 0x72, 0xc3, 0xa1, 0x6e, 0x70, 0x65, 0x72, 0xc3, 0xad,
- 0x6f, 0x64, 0x6f, 0x6e, 0x65, 0x63, 0x65, 0x73, 0x69, 0x74, 0x61, 0x6d, 0x61,
- 0x6e, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x70, 0x65, 0x71, 0x75, 0x65, 0xc3, 0xb1,
- 0x6f, 0x72, 0x65, 0x63, 0x69, 0x62, 0x69, 0x64, 0x61, 0x74, 0x72, 0x69, 0x62,
- 0x75, 0x6e, 0x61, 0x6c, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x66, 0x65, 0x63,
- 0x61, 0x6e, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x63, 0x61, 0x6e, 0x61, 0x72, 0x69,
- 0x61, 0x73, 0x64, 0x65, 0x73, 0x63, 0x61, 0x72, 0x67, 0x61, 0x64, 0x69, 0x76,
- 0x65, 0x72, 0x73, 0x6f, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x6f, 0x72, 0x63, 0x61,
- 0x72, 0x65, 0x71, 0x75, 0x69, 0x65, 0x72, 0x65, 0x74, 0xc3, 0xa9, 0x63, 0x6e,
- 0x69, 0x63, 0x6f, 0x64, 0x65, 0x62, 0x65, 0x72, 0xc3, 0xad, 0x61, 0x76, 0x69,
- 0x76, 0x69, 0x65, 0x6e, 0x64, 0x61, 0x66, 0x69, 0x6e, 0x61, 0x6e, 0x7a, 0x61,
- 0x73, 0x61, 0x64, 0x65, 0x6c, 0x61, 0x6e, 0x74, 0x65, 0x66, 0x75, 0x6e, 0x63,
- 0x69, 0x6f, 0x6e, 0x61, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6a, 0x6f, 0x73, 0x64,
- 0x69, 0x66, 0xc3, 0xad, 0x63, 0x69, 0x6c, 0x63, 0x69, 0x75, 0x64, 0x61, 0x64,
- 0x65, 0x73, 0x61, 0x6e, 0x74, 0x69, 0x67, 0x75, 0x61, 0x73, 0x61, 0x76, 0x61,
- 0x6e, 0x7a, 0x61, 0x64, 0x61, 0x74, 0xc3, 0xa9, 0x72, 0x6d, 0x69, 0x6e, 0x6f,
- 0x75, 0x6e, 0x69, 0x64, 0x61, 0x64, 0x65, 0x73, 0x73, 0xc3, 0xa1, 0x6e, 0x63,
- 0x68, 0x65, 0x7a, 0x63, 0x61, 0x6d, 0x70, 0x61, 0xc3, 0xb1, 0x61, 0x73, 0x6f,
- 0x66, 0x74, 0x6f, 0x6e, 0x69, 0x63, 0x72, 0x65, 0x76, 0x69, 0x73, 0x74, 0x61,
- 0x73, 0x63, 0x6f, 0x6e, 0x74, 0x69, 0x65, 0x6e, 0x65, 0x73, 0x65, 0x63, 0x74,
- 0x6f, 0x72, 0x65, 0x73, 0x6d, 0x6f, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x73, 0x66,
- 0x61, 0x63, 0x75, 0x6c, 0x74, 0x61, 0x64, 0x63, 0x72, 0xc3, 0xa9, 0x64, 0x69,
- 0x74, 0x6f, 0x64, 0x69, 0x76, 0x65, 0x72, 0x73, 0x61, 0x73, 0x73, 0x75, 0x70,
- 0x75, 0x65, 0x73, 0x74, 0x6f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x65, 0x73,
- 0x73, 0x65, 0x67, 0x75, 0x6e, 0x64, 0x6f, 0x73, 0x70, 0x65, 0x71, 0x75, 0x65,
- 0xc3, 0xb1, 0x61, 0xd0, 0xb3, 0xd0, 0xbe, 0xd0, 0xb4, 0xd0, 0xb0, 0xd0, 0xb5,
- 0xd1, 0x81, 0xd0, 0xbb, 0xd0, 0xb8, 0xd0, 0xb5, 0xd1, 0x81, 0xd1, 0x82, 0xd1,
- 0x8c, 0xd0, 0xb1, 0xd1, 0x8b, 0xd0, 0xbb, 0xd0, 0xbe, 0xd0, 0xb1, 0xd1, 0x8b,
- 0xd1, 0x82, 0xd1, 0x8c, 0xd1, 0x8d, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xbc, 0xd0,
- 0x95, 0xd1, 0x81, 0xd0, 0xbb, 0xd0, 0xb8, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xb3,
- 0xd0, 0xbe, 0xd0, 0xbc, 0xd0, 0xb5, 0xd0, 0xbd, 0xd1, 0x8f, 0xd0, 0xb2, 0xd1,
- 0x81, 0xd0, 0xb5, 0xd1, 0x85, 0xd1, 0x8d, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xb9,
- 0xd0, 0xb4, 0xd0, 0xb0, 0xd0, 0xb6, 0xd0, 0xb5, 0xd0, 0xb1, 0xd1, 0x8b, 0xd0,
- 0xbb, 0xd0, 0xb8, 0xd0, 0xb3, 0xd0, 0xbe, 0xd0, 0xb4, 0xd1, 0x83, 0xd0, 0xb4,
- 0xd0, 0xb5, 0xd0, 0xbd, 0xd1, 0x8c, 0xd1, 0x8d, 0xd1, 0x82, 0xd0, 0xbe, 0xd1,
- 0x82, 0xd0, 0xb1, 0xd1, 0x8b, 0xd0, 0xbb, 0xd0, 0xb0, 0xd1, 0x81, 0xd0, 0xb5,
- 0xd0, 0xb1, 0xd1, 0x8f, 0xd0, 0xbe, 0xd0, 0xb4, 0xd0, 0xb8, 0xd0, 0xbd, 0xd1,
- 0x81, 0xd0, 0xb5, 0xd0, 0xb1, 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xb0, 0xd0, 0xb4,
- 0xd0, 0xbe, 0xd1, 0x81, 0xd0, 0xb0, 0xd0, 0xb9, 0xd1, 0x82, 0xd1, 0x84, 0xd0,
- 0xbe, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xbd, 0xd0, 0xb5, 0xd0, 0xb3, 0xd0, 0xbe,
- 0xd1, 0x81, 0xd0, 0xb2, 0xd0, 0xbe, 0xd0, 0xb8, 0xd1, 0x81, 0xd0, 0xb2, 0xd0,
- 0xbe, 0xd0, 0xb9, 0xd0, 0xb8, 0xd0, 0xb3, 0xd1, 0x80, 0xd1, 0x8b, 0xd1, 0x82,
- 0xd0, 0xbe, 0xd0, 0xb6, 0xd0, 0xb5, 0xd0, 0xb2, 0xd1, 0x81, 0xd0, 0xb5, 0xd0,
- 0xbc, 0xd1, 0x81, 0xd0, 0xb2, 0xd0, 0xbe, 0xd1, 0x8e, 0xd0, 0xbb, 0xd0, 0xb8,
- 0xd1, 0x88, 0xd1, 0x8c, 0xd1, 0x8d, 0xd1, 0x82, 0xd0, 0xb8, 0xd1, 0x85, 0xd0,
- 0xbf, 0xd0, 0xbe, 0xd0, 0xba, 0xd0, 0xb0, 0xd0, 0xb4, 0xd0, 0xbd, 0xd0, 0xb5,
- 0xd0, 0xb9, 0xd0, 0xb4, 0xd0, 0xbe, 0xd0, 0xbc, 0xd0, 0xb0, 0xd0, 0xbc, 0xd0,
- 0xb8, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xbb, 0xd0, 0xb8, 0xd0, 0xb1, 0xd0, 0xbe,
- 0xd1, 0x82, 0xd0, 0xb5, 0xd0, 0xbc, 0xd1, 0x83, 0xd1, 0x85, 0xd0, 0xbe, 0xd1,
- 0x82, 0xd1, 0x8f, 0xd0, 0xb4, 0xd0, 0xb2, 0xd1, 0x83, 0xd1, 0x85, 0xd1, 0x81,
- 0xd0, 0xb5, 0xd1, 0x82, 0xd0, 0xb8, 0xd0, 0xbb, 0xd1, 0x8e, 0xd0, 0xb4, 0xd0,
- 0xb8, 0xd0, 0xb4, 0xd0, 0xb5, 0xd0, 0xbb, 0xd0, 0xbe, 0xd0, 0xbc, 0xd0, 0xb8,
- 0xd1, 0x80, 0xd0, 0xb5, 0xd1, 0x82, 0xd0, 0xb5, 0xd0, 0xb1, 0xd1, 0x8f, 0xd1,
- 0x81, 0xd0, 0xb2, 0xd0, 0xbe, 0xd0, 0xb5, 0xd0, 0xb2, 0xd0, 0xb8, 0xd0, 0xb4,
- 0xd0, 0xb5, 0xd1, 0x87, 0xd0, 0xb5, 0xd0, 0xb3, 0xd0, 0xbe, 0xd1, 0x8d, 0xd1,
- 0x82, 0xd0, 0xb8, 0xd0, 0xbc, 0xd1, 0x81, 0xd1, 0x87, 0xd0, 0xb5, 0xd1, 0x82,
- 0xd1, 0x82, 0xd0, 0xb5, 0xd0, 0xbc, 0xd1, 0x8b, 0xd1, 0x86, 0xd0, 0xb5, 0xd0,
- 0xbd, 0xd1, 0x8b, 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb0, 0xd0, 0xbb, 0xd0, 0xb2,
- 0xd0, 0xb5, 0xd0, 0xb4, 0xd1, 0x8c, 0xd1, 0x82, 0xd0, 0xb5, 0xd0, 0xbc, 0xd0,
- 0xb5, 0xd0, 0xb2, 0xd0, 0xbe, 0xd0, 0xb4, 0xd1, 0x8b, 0xd1, 0x82, 0xd0, 0xb5,
- 0xd0, 0xb1, 0xd0, 0xb5, 0xd0, 0xb2, 0xd1, 0x8b, 0xd1, 0x88, 0xd0, 0xb5, 0xd0,
- 0xbd, 0xd0, 0xb0, 0xd0, 0xbc, 0xd0, 0xb8, 0xd1, 0x82, 0xd0, 0xb8, 0xd0, 0xbf,
- 0xd0, 0xb0, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xbc, 0xd1, 0x83, 0xd0, 0xbf, 0xd1,
- 0x80, 0xd0, 0xb0, 0xd0, 0xb2, 0xd0, 0xbb, 0xd0, 0xb8, 0xd1, 0x86, 0xd0, 0xb0,
- 0xd0, 0xbe, 0xd0, 0xb4, 0xd0, 0xbd, 0xd0, 0xb0, 0xd0, 0xb3, 0xd0, 0xbe, 0xd0,
- 0xb4, 0xd1, 0x8b, 0xd0, 0xb7, 0xd0, 0xbd, 0xd0, 0xb0, 0xd1, 0x8e, 0xd0, 0xbc,
- 0xd0, 0xbe, 0xd0, 0xb3, 0xd1, 0x83, 0xd0, 0xb4, 0xd1, 0x80, 0xd1, 0x83, 0xd0,
- 0xb3, 0xd0, 0xb2, 0xd1, 0x81, 0xd0, 0xb5, 0xd0, 0xb9, 0xd0, 0xb8, 0xd0, 0xb4,
- 0xd0, 0xb5, 0xd1, 0x82, 0xd0, 0xba, 0xd0, 0xb8, 0xd0, 0xbd, 0xd0, 0xbe, 0xd0,
- 0xbe, 0xd0, 0xb4, 0xd0, 0xbd, 0xd0, 0xbe, 0xd0, 0xb4, 0xd0, 0xb5, 0xd0, 0xbb,
- 0xd0, 0xb0, 0xd0, 0xb4, 0xd0, 0xb5, 0xd0, 0xbb, 0xd0, 0xb5, 0xd1, 0x81, 0xd1,
- 0x80, 0xd0, 0xbe, 0xd0, 0xba, 0xd0, 0xb8, 0xd1, 0x8e, 0xd0, 0xbd, 0xd1, 0x8f,
- 0xd0, 0xb2, 0xd0, 0xb5, 0xd1, 0x81, 0xd1, 0x8c, 0xd0, 0x95, 0xd1, 0x81, 0xd1,
- 0x82, 0xd1, 0x8c, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xb7, 0xd0, 0xb0, 0xd0, 0xbd,
- 0xd0, 0xb0, 0xd1, 0x88, 0xd0, 0xb8, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x84, 0xd9,
- 0x87, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xaa, 0xd9, 0x8a, 0xd8, 0xac, 0xd9, 0x85,
- 0xd9, 0x8a, 0xd8, 0xb9, 0xd8, 0xae, 0xd8, 0xa7, 0xd8, 0xb5, 0xd8, 0xa9, 0xd8,
- 0xa7, 0xd9, 0x84, 0xd8, 0xb0, 0xd9, 0x8a, 0xd8, 0xb9, 0xd9, 0x84, 0xd9, 0x8a,
- 0xd9, 0x87, 0xd8, 0xac, 0xd8, 0xaf, 0xd9, 0x8a, 0xd8, 0xaf, 0xd8, 0xa7, 0xd9,
- 0x84, 0xd8, 0xa2, 0xd9, 0x86, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb1, 0xd8, 0xaf,
- 0xd8, 0xaa, 0xd8, 0xad, 0xd9, 0x83, 0xd9, 0x85, 0xd8, 0xb5, 0xd9, 0x81, 0xd8,
- 0xad, 0xd8, 0xa9, 0xd9, 0x83, 0xd8, 0xa7, 0xd9, 0x86, 0xd8, 0xaa, 0xd8, 0xa7,
- 0xd9, 0x84, 0xd9, 0x84, 0xd9, 0x8a, 0xd9, 0x8a, 0xd9, 0x83, 0xd9, 0x88, 0xd9,
- 0x86, 0xd8, 0xb4, 0xd8, 0xa8, 0xd9, 0x83, 0xd8, 0xa9, 0xd9, 0x81, 0xd9, 0x8a,
- 0xd9, 0x87, 0xd8, 0xa7, 0xd8, 0xa8, 0xd9, 0x86, 0xd8, 0xa7, 0xd8, 0xaa, 0xd8,
- 0xad, 0xd9, 0x88, 0xd8, 0xa7, 0xd8, 0xa1, 0xd8, 0xa3, 0xd9, 0x83, 0xd8, 0xab,
- 0xd8, 0xb1, 0xd8, 0xae, 0xd9, 0x84, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa7, 0xd9,
- 0x84, 0xd8, 0xad, 0xd8, 0xa8, 0xd8, 0xaf, 0xd9, 0x84, 0xd9, 0x8a, 0xd9, 0x84,
- 0xd8, 0xaf, 0xd8, 0xb1, 0xd9, 0x88, 0xd8, 0xb3, 0xd8, 0xa7, 0xd8, 0xb6, 0xd8,
- 0xba, 0xd8, 0xb7, 0xd8, 0xaa, 0xd9, 0x83, 0xd9, 0x88, 0xd9, 0x86, 0xd9, 0x87,
- 0xd9, 0x86, 0xd8, 0xa7, 0xd9, 0x83, 0xd8, 0xb3, 0xd8, 0xa7, 0xd8, 0xad, 0xd8,
- 0xa9, 0xd9, 0x86, 0xd8, 0xa7, 0xd8, 0xaf, 0xd9, 0x8a, 0xd8, 0xa7, 0xd9, 0x84,
- 0xd8, 0xb7, 0xd8, 0xa8, 0xd8, 0xb9, 0xd9, 0x84, 0xd9, 0x8a, 0xd9, 0x83, 0xd8,
- 0xb4, 0xd9, 0x83, 0xd8, 0xb1, 0xd8, 0xa7, 0xd9, 0x8a, 0xd9, 0x85, 0xd9, 0x83,
- 0xd9, 0x86, 0xd9, 0x85, 0xd9, 0x86, 0xd9, 0x87, 0xd8, 0xa7, 0xd8, 0xb4, 0xd8,
- 0xb1, 0xd9, 0x83, 0xd8, 0xa9, 0xd8, 0xb1, 0xd8, 0xa6, 0xd9, 0x8a, 0xd8, 0xb3,
- 0xd9, 0x86, 0xd8, 0xb4, 0xd9, 0x8a, 0xd8, 0xb7, 0xd9, 0x85, 0xd8, 0xa7, 0xd8,
- 0xb0, 0xd8, 0xa7, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x81, 0xd9, 0x86, 0xd8, 0xb4,
- 0xd8, 0xa8, 0xd8, 0xa7, 0xd8, 0xa8, 0xd8, 0xaa, 0xd8, 0xb9, 0xd8, 0xa8, 0xd8,
- 0xb1, 0xd8, 0xb1, 0xd8, 0xad, 0xd9, 0x85, 0xd8, 0xa9, 0xd9, 0x83, 0xd8, 0xa7,
- 0xd9, 0x81, 0xd8, 0xa9, 0xd9, 0x8a, 0xd9, 0x82, 0xd9, 0x88, 0xd9, 0x84, 0xd9,
- 0x85, 0xd8, 0xb1, 0xd9, 0x83, 0xd8, 0xb2, 0xd9, 0x83, 0xd9, 0x84, 0xd9, 0x85,
- 0xd8, 0xa9, 0xd8, 0xa3, 0xd8, 0xad, 0xd9, 0x85, 0xd8, 0xaf, 0xd9, 0x82, 0xd9,
- 0x84, 0xd8, 0xa8, 0xd9, 0x8a, 0xd9, 0x8a, 0xd8, 0xb9, 0xd9, 0x86, 0xd9, 0x8a,
- 0xd8, 0xb5, 0xd9, 0x88, 0xd8, 0xb1, 0xd8, 0xa9, 0xd8, 0xb7, 0xd8, 0xb1, 0xd9,
- 0x8a, 0xd9, 0x82, 0xd8, 0xb4, 0xd8, 0xa7, 0xd8, 0xb1, 0xd9, 0x83, 0xd8, 0xac,
- 0xd9, 0x88, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa3, 0xd8, 0xae, 0xd8, 0xb1, 0xd9,
- 0x89, 0xd9, 0x85, 0xd8, 0xb9, 0xd9, 0x86, 0xd8, 0xa7, 0xd8, 0xa7, 0xd8, 0xa8,
- 0xd8, 0xad, 0xd8, 0xab, 0xd8, 0xb9, 0xd8, 0xb1, 0xd9, 0x88, 0xd8, 0xb6, 0xd8,
- 0xa8, 0xd8, 0xb4, 0xd9, 0x83, 0xd9, 0x84, 0xd9, 0x85, 0xd8, 0xb3, 0xd8, 0xac,
- 0xd9, 0x84, 0xd8, 0xa8, 0xd9, 0x86, 0xd8, 0xa7, 0xd9, 0x86, 0xd8, 0xae, 0xd8,
- 0xa7, 0xd9, 0x84, 0xd8, 0xaf, 0xd9, 0x83, 0xd8, 0xaa, 0xd8, 0xa7, 0xd8, 0xa8,
- 0xd9, 0x83, 0xd9, 0x84, 0xd9, 0x8a, 0xd8, 0xa9, 0xd8, 0xa8, 0xd8, 0xaf, 0xd9,
- 0x88, 0xd9, 0x86, 0xd8, 0xa3, 0xd9, 0x8a, 0xd8, 0xb6, 0xd8, 0xa7, 0xd9, 0x8a,
- 0xd9, 0x88, 0xd8, 0xac, 0xd8, 0xaf, 0xd9, 0x81, 0xd8, 0xb1, 0xd9, 0x8a, 0xd9,
- 0x82, 0xd9, 0x83, 0xd8, 0xaa, 0xd8, 0xa8, 0xd8, 0xaa, 0xd8, 0xa3, 0xd9, 0x81,
- 0xd8, 0xb6, 0xd9, 0x84, 0xd9, 0x85, 0xd8, 0xb7, 0xd8, 0xa8, 0xd8, 0xae, 0xd8,
- 0xa7, 0xd9, 0x83, 0xd8, 0xab, 0xd8, 0xb1, 0xd8, 0xa8, 0xd8, 0xa7, 0xd8, 0xb1,
- 0xd9, 0x83, 0xd8, 0xa7, 0xd9, 0x81, 0xd8, 0xb6, 0xd9, 0x84, 0xd8, 0xa7, 0xd8,
- 0xad, 0xd9, 0x84, 0xd9, 0x89, 0xd9, 0x86, 0xd9, 0x81, 0xd8, 0xb3, 0xd9, 0x87,
- 0xd8, 0xa3, 0xd9, 0x8a, 0xd8, 0xa7, 0xd9, 0x85, 0xd8, 0xb1, 0xd8, 0xaf, 0xd9,
- 0x88, 0xd8, 0xaf, 0xd8, 0xa3, 0xd9, 0x86, 0xd9, 0x87, 0xd8, 0xa7, 0xd8, 0xaf,
- 0xd9, 0x8a, 0xd9, 0x86, 0xd8, 0xa7, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa7, 0xd9,
- 0x86, 0xd9, 0x85, 0xd8, 0xb9, 0xd8, 0xb1, 0xd8, 0xb6, 0xd8, 0xaa, 0xd8, 0xb9,
- 0xd9, 0x84, 0xd9, 0x85, 0xd8, 0xaf, 0xd8, 0xa7, 0xd8, 0xae, 0xd9, 0x84, 0xd9,
- 0x85, 0xd9, 0x85, 0xd9, 0x83, 0xd9, 0x86, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x02, 0x00, 0x02,
- 0x00, 0x02, 0x00, 0x02, 0x00, 0x04, 0x00, 0x04, 0x00, 0x04, 0x00, 0x04, 0x00,
- 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x07, 0x06, 0x05, 0x04, 0x03,
- 0x02, 0x01, 0x00, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x0f, 0x0e,
- 0x0d, 0x0c, 0x0b, 0x0a, 0x09, 0x08, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16,
- 0x17, 0x17, 0x16, 0x15, 0x14, 0x13, 0x12, 0x11, 0x10, 0x18, 0x19, 0x1a, 0x1b,
- 0x1c, 0x1d, 0x1e, 0x1f, 0x1f, 0x1e, 0x1d, 0x1c, 0x1b, 0x1a, 0x19, 0x18, 0xff,
- 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff,
- 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
- 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
- 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0xff, 0xff, 0x00,
- 0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x00,
- 0x00, 0x01, 0x00, 0x02, 0x00, 0x03, 0x00, 0x04, 0x00, 0x05, 0x00, 0x06, 0x00,
- 0x07, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x63, 0x6f, 0x75,
- 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f,
- 0x6e, 0x73, 0x65, 0x71, 0x75, 0x69, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x63, 0x6f,
- 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
- 0x62, 0x6c, 0x65, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x44,
- 0x54, 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x6d, 0x61, 0x72, 0x6b, 0x65,
- 0x74, 0x69, 0x6e, 0x67, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65,
- 0x73, 0x6f, 0x6d, 0x65, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x63, 0x6f, 0x6e, 0x74,
- 0x61, 0x69, 0x6e, 0x65, 0x72, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x61, 0x64, 0x76,
- 0x65, 0x72, 0x74, 0x69, 0x73, 0x65, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74,
- 0x65, 0x72, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x3c, 0x2f,
- 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x3e, 0x41, 0x75, 0x73, 0x74, 0x72, 0x61,
- 0x6c, 0x69, 0x61, 0x22, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x73,
- 0x69, 0x74, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x75, 0x74, 0x68, 0x6f,
- 0x72, 0x69, 0x74, 0x79, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67,
- 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x69, 0x6c, 0x79, 0x6f, 0x70, 0x65, 0x72,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67,
- 0x65, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x64, 0x61, 0x6e, 0x6f,
- 0x6e, 0x79, 0x6d, 0x6f, 0x75, 0x73, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x63, 0x6f,
- 0x6d, 0x70, 0x61, 0x6e, 0x69, 0x65, 0x73, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
- 0x75, 0x72, 0x65, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x22,
- 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3d, 0x22, 0x70, 0x6f, 0x74, 0x65, 0x6e,
- 0x74, 0x69, 0x61, 0x6c, 0x65, 0x64, 0x75, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x61, 0x72, 0x67, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x73, 0x65, 0x63, 0x6f,
- 0x6e, 0x64, 0x61, 0x72, 0x79, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68,
- 0x74, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x73, 0x65, 0x78, 0x63,
- 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69,
- 0x6f, 0x6e, 0x3c, 0x2f, 0x66, 0x6f, 0x72, 0x6d, 0x3e, 0x0d, 0x0a, 0x73, 0x74,
- 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x74, 0x65, 0x6e, 0x74,
- 0x69, 0x6f, 0x6e, 0x42, 0x69, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x79, 0x7d,
- 0x20, 0x65, 0x6c, 0x73, 0x65, 0x20, 0x7b, 0x0a, 0x73, 0x6f, 0x6c, 0x75, 0x74,
- 0x69, 0x6f, 0x6e, 0x73, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x74, 0x65, 0x6d, 0x70,
- 0x6c, 0x61, 0x74, 0x65, 0x73, 0x64, 0x61, 0x6e, 0x67, 0x65, 0x72, 0x6f, 0x75,
- 0x73, 0x73, 0x61, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x74, 0x65, 0x64, 0x6f, 0x63,
- 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68,
- 0x65, 0x72, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x70, 0x72,
- 0x6f, 0x74, 0x6f, 0x74, 0x79, 0x70, 0x65, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x65,
- 0x6e, 0x63, 0x65, 0x26, 0x72, 0x61, 0x71, 0x75, 0x6f, 0x3b, 0x3c, 0x2f, 0x65,
- 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x67, 0x65, 0x6e, 0x65, 0x72,
- 0x61, 0x6c, 0x6c, 0x79, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d,
- 0x62, 0x65, 0x61, 0x75, 0x74, 0x69, 0x66, 0x75, 0x6c, 0x74, 0x72, 0x61, 0x6e,
- 0x73, 0x70, 0x6f, 0x72, 0x74, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x65,
- 0x64, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x70, 0x72, 0x6f,
- 0x6d, 0x69, 0x6e, 0x65, 0x6e, 0x74, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x20, 0x74,
- 0x68, 0x65, 0x74, 0x68, 0x75, 0x6d, 0x62, 0x6e, 0x61, 0x69, 0x6c, 0x4e, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x2e, 0x66, 0x6f, 0x63, 0x75, 0x73,
- 0x28, 0x29, 0x3b, 0x6f, 0x76, 0x65, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d,
- 0x69, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6e, 0x6e, 0x6f, 0x75,
- 0x6e, 0x63, 0x65, 0x64, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x22, 0x3e, 0x0a,
- 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x6c, 0x65, 0x73, 0x73,
- 0x20, 0x74, 0x68, 0x61, 0x6e, 0x65, 0x78, 0x70, 0x65, 0x6e, 0x73, 0x69, 0x76,
- 0x65, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x66, 0x72, 0x61,
- 0x6d, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x74, 0x65, 0x72, 0x72, 0x69, 0x74, 0x6f,
- 0x72, 0x79, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x63, 0x75,
- 0x72, 0x72, 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x4e,
- 0x61, 0x6d, 0x65, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x69, 0x73, 0x6d, 0x74,
- 0x72, 0x61, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x6c, 0x73, 0x65, 0x77,
- 0x68, 0x65, 0x72, 0x65, 0x41, 0x6c, 0x65, 0x78, 0x61, 0x6e, 0x64, 0x65, 0x72,
- 0x61, 0x70, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x64, 0x6d, 0x61, 0x74, 0x65,
- 0x72, 0x69, 0x61, 0x6c, 0x73, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73,
- 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x64, 0x61, 0x66, 0x66,
- 0x69, 0x6c, 0x69, 0x61, 0x74, 0x65, 0x3c, 0x2f, 0x6f, 0x70, 0x74, 0x69, 0x6f,
- 0x6e, 0x3e, 0x74, 0x72, 0x65, 0x61, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x64, 0x69,
- 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x2f, 0x64, 0x65, 0x66, 0x61, 0x75,
- 0x6c, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x6f,
- 0x6e, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x3d, 0x22, 0x62, 0x69, 0x6f, 0x67, 0x72,
- 0x61, 0x70, 0x68, 0x79, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x77, 0x69, 0x73, 0x65,
- 0x70, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x46, 0x72, 0x61, 0x6e,
- 0xc3, 0xa7, 0x61, 0x69, 0x73, 0x48, 0x6f, 0x6c, 0x6c, 0x79, 0x77, 0x6f, 0x6f,
- 0x64, 0x65, 0x78, 0x70, 0x61, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x74, 0x61,
- 0x6e, 0x64, 0x61, 0x72, 0x64, 0x73, 0x3c, 0x2f, 0x73, 0x74, 0x79, 0x6c, 0x65,
- 0x3e, 0x0a, 0x72, 0x65, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65,
- 0x63, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72,
- 0x72, 0x65, 0x64, 0x43, 0x61, 0x6d, 0x62, 0x72, 0x69, 0x64, 0x67, 0x65, 0x6f,
- 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x75, 0x73, 0x69, 0x6e,
- 0x65, 0x73, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x75, 0x73, 0x69, 0x6f, 0x6e,
- 0x3e, 0x0a, 0x3c, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3e, 0x70, 0x72, 0x65, 0x73,
- 0x65, 0x6e, 0x74, 0x65, 0x64, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x65,
- 0x64, 0x64, 0x6f, 0x65, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x77, 0x6f, 0x72,
- 0x6c, 0x64, 0x77, 0x69, 0x64, 0x65, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61,
- 0x63, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x6e, 0x65,
- 0x77, 0x73, 0x70, 0x61, 0x70, 0x65, 0x72, 0x3c, 0x2f, 0x74, 0x61, 0x62, 0x6c,
- 0x65, 0x3e, 0x0a, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x6c,
- 0x69, 0x6b, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x73, 0x73, 0x65, 0x6e,
- 0x74, 0x69, 0x61, 0x6c, 0x66, 0x69, 0x6e, 0x61, 0x6e, 0x63, 0x69, 0x61, 0x6c,
- 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x63, 0x74, 0x69,
- 0x6f, 0x6e, 0x3d, 0x22, 0x2f, 0x61, 0x62, 0x61, 0x6e, 0x64, 0x6f, 0x6e, 0x65,
- 0x64, 0x45, 0x64, 0x75, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x70, 0x61, 0x72,
- 0x73, 0x65, 0x49, 0x6e, 0x74, 0x28, 0x73, 0x74, 0x61, 0x62, 0x69, 0x6c, 0x69,
- 0x74, 0x79, 0x75, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x74, 0x6f, 0x3c, 0x2f,
- 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3e, 0x0a, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x73, 0x4e, 0x6f, 0x74, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x65,
- 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x70, 0x65, 0x72, 0x66, 0x6f,
- 0x72, 0x6d, 0x65, 0x64, 0x74, 0x77, 0x6f, 0x20, 0x79, 0x65, 0x61, 0x72, 0x73,
- 0x53, 0x69, 0x6e, 0x63, 0x65, 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x72,
- 0x65, 0x66, 0x6f, 0x72, 0x65, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x22,
- 0x3e, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x69, 0x6e, 0x63,
- 0x72, 0x65, 0x61, 0x73, 0x65, 0x64, 0x42, 0x61, 0x74, 0x74, 0x6c, 0x65, 0x20,
- 0x6f, 0x66, 0x70, 0x65, 0x72, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x74, 0x72,
- 0x79, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x6e, 0x65, 0x63, 0x65, 0x73, 0x73,
- 0x61, 0x72, 0x79, 0x70, 0x6f, 0x72, 0x74, 0x72, 0x61, 0x79, 0x65, 0x64, 0x65,
- 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6c, 0x69, 0x7a, 0x61,
- 0x62, 0x65, 0x74, 0x68, 0x3c, 0x2f, 0x69, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x3e,
- 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x69, 0x6e, 0x73, 0x75,
- 0x72, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2e, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68,
- 0x3b, 0x6c, 0x65, 0x67, 0x65, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x47, 0x65, 0x6f,
- 0x67, 0x72, 0x61, 0x70, 0x68, 0x79, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61,
- 0x74, 0x65, 0x63, 0x6f, 0x72, 0x70, 0x6f, 0x72, 0x61, 0x74, 0x65, 0x73, 0x6f,
- 0x6d, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
- 0x65, 0x73, 0x2e, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69, 0x74, 0x65, 0x64, 0x3c,
- 0x2f, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x3e, 0x43, 0x6f, 0x6d, 0x6d, 0x75,
- 0x6e, 0x69, 0x74, 0x79, 0x72, 0x65, 0x6c, 0x69, 0x67, 0x69, 0x6f, 0x75, 0x73,
- 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x6d, 0x6d,
- 0x69, 0x74, 0x74, 0x65, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67,
- 0x73, 0x74, 0x68, 0x65, 0x20, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x6e, 0x6f, 0x20,
- 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x72, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x6e, 0x69,
- 0x6e, 0x67, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x63, 0x61,
- 0x6e, 0x6e, 0x6f, 0x74, 0x20, 0x62, 0x65, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65,
- 0x6e, 0x63, 0x79, 0x74, 0x79, 0x70, 0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x69,
- 0x6e, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x6c, 0x61, 0x74,
- 0x69, 0x76, 0x65, 0x3b, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67,
- 0x70, 0x72, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x69, 0x74,
- 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x74, 0x65, 0x63, 0x68, 0x6e, 0x69, 0x71, 0x75,
- 0x65, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x69, 0x74, 0x20,
- 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x65, 0x78, 0x69, 0x73, 0x74, 0x65, 0x6e,
- 0x63, 0x65, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x6c, 0x69, 0x6e, 0x65, 0x74, 0x68,
- 0x69, 0x73, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x68,
- 0x6f, 0x6e, 0x65, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x70,
- 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x73, 0x61, 0x64, 0x76, 0x61, 0x6e,
- 0x74, 0x61, 0x67, 0x65, 0x29, 0x3b, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20,
- 0x46, 0x6f, 0x72, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x70, 0x72, 0x6f, 0x76,
- 0x69, 0x64, 0x69, 0x6e, 0x67, 0x64, 0x65, 0x6d, 0x6f, 0x63, 0x72, 0x61, 0x63,
- 0x79, 0x62, 0x6f, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x78, 0x74,
- 0x65, 0x6e, 0x73, 0x69, 0x76, 0x65, 0x73, 0x75, 0x66, 0x66, 0x65, 0x72, 0x69,
- 0x6e, 0x67, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x63, 0x6f,
- 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x73, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x70, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x73,
- 0x61, 0x69, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x69, 0x74, 0x20, 0x6d, 0x61,
- 0x79, 0x20, 0x62, 0x65, 0x45, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x3c, 0x2f,
- 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x63, 0x68, 0x65,
- 0x64, 0x75, 0x6c, 0x65, 0x64, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64,
- 0x73, 0x3c, 0x2f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x3e, 0x0a, 0x73, 0x75, 0x73,
- 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x3a,
- 0x20, 0x30, 0x73, 0x70, 0x69, 0x72, 0x69, 0x74, 0x75, 0x61, 0x6c, 0x3c, 0x2f,
- 0x68, 0x65, 0x61, 0x64, 0x3e, 0x0a, 0x0a, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x73,
- 0x6f, 0x66, 0x74, 0x67, 0x72, 0x61, 0x64, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x64,
- 0x69, 0x73, 0x63, 0x75, 0x73, 0x73, 0x65, 0x64, 0x68, 0x65, 0x20, 0x62, 0x65,
- 0x63, 0x61, 0x6d, 0x65, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65,
- 0x6a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x6a, 0x73, 0x68, 0x6f, 0x75, 0x73,
- 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65,
- 0x64, 0x70, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x64, 0x6c, 0x69, 0x74,
- 0x65, 0x72, 0x61, 0x6c, 0x6c, 0x79, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79,
- 0x65, 0x64, 0x75, 0x70, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x76, 0x61,
- 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e,
- 0x69, 0x6e, 0x67, 0x69, 0x74, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x63,
- 0x65, 0x6e, 0x74, 0x75, 0x72, 0x69, 0x65, 0x73, 0x4a, 0x61, 0x70, 0x61, 0x6e,
- 0x65, 0x73, 0x65, 0x20, 0x61, 0x6d, 0x6f, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65,
- 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x61, 0x6c, 0x67, 0x6f,
- 0x72, 0x69, 0x74, 0x68, 0x6d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74,
- 0x73, 0x72, 0x65, 0x62, 0x65, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x75, 0x6e, 0x64,
- 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x65, 0x6e, 0x63, 0x6f, 0x75, 0x72, 0x61,
- 0x67, 0x65, 0x72, 0x65, 0x73, 0x69, 0x7a, 0x61, 0x62, 0x6c, 0x65, 0x69, 0x6e,
- 0x76, 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x73, 0x65, 0x6e, 0x73, 0x69, 0x74,
- 0x69, 0x76, 0x65, 0x75, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x61, 0x6c, 0x70,
- 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x28, 0x61, 0x6c, 0x74, 0x68,
- 0x6f, 0x75, 0x67, 0x68, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x69, 0x6e, 0x67,
- 0x63, 0x6f, 0x6e, 0x64, 0x75, 0x63, 0x74, 0x65, 0x64, 0x29, 0x2c, 0x20, 0x77,
- 0x68, 0x69, 0x63, 0x68, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75, 0x65,
- 0x64, 0x2d, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x22, 0x3e, 0x46, 0x65, 0x62,
- 0x72, 0x75, 0x61, 0x72, 0x79, 0x20, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x6f, 0x75,
- 0x73, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x66, 0x6c, 0x6f, 0x77, 0x3a, 0x63, 0x6f,
- 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65,
- 0x6e, 0x74, 0x73, 0x65, 0x78, 0x63, 0x65, 0x6c, 0x6c, 0x65, 0x6e, 0x74, 0x63,
- 0x6f, 0x6c, 0x73, 0x70, 0x61, 0x6e, 0x3d, 0x22, 0x74, 0x65, 0x63, 0x68, 0x6e,
- 0x69, 0x63, 0x61, 0x6c, 0x6e, 0x65, 0x61, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x41, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x20, 0x73, 0x6f, 0x75, 0x72,
- 0x63, 0x65, 0x20, 0x6f, 0x66, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65,
- 0x64, 0x48, 0x6f, 0x6e, 0x67, 0x20, 0x4b, 0x6f, 0x6e, 0x67, 0x20, 0x46, 0x61,
- 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c,
- 0x65, 0x20, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x65, 0x6c,
- 0x65, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6f, 0x66, 0x66, 0x65, 0x6e, 0x73,
- 0x69, 0x76, 0x65, 0x3c, 0x2f, 0x66, 0x6f, 0x72, 0x6d, 0x3e, 0x0a, 0x09, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x6f, 0x72, 0x65, 0x64, 0x64, 0x6f, 0x63, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x2e, 0x6f, 0x72, 0x20, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b,
- 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x61, 0x72, 0x65, 0x74, 0x68, 0x6f, 0x73,
- 0x65, 0x20, 0x77, 0x68, 0x6f, 0x6d, 0x6f, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74,
- 0x73, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x73, 0x64, 0x69, 0x66,
- 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74,
- 0x65, 0x64, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x63, 0x6f,
- 0x6e, 0x76, 0x69, 0x6e, 0x63, 0x65, 0x64, 0x70, 0x72, 0x6f, 0x6d, 0x6f, 0x74,
- 0x69, 0x6e, 0x67, 0x22, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3d, 0x22, 0x2e,
- 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x28, 0x63, 0x6c, 0x61, 0x73, 0x73,
- 0x69, 0x63, 0x61, 0x6c, 0x63, 0x6f, 0x61, 0x6c, 0x69, 0x74, 0x69, 0x6f, 0x6e,
- 0x68, 0x69, 0x73, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x64, 0x65, 0x63, 0x69,
- 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e,
- 0x74, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x65, 0x76, 0x6f,
- 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2d, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65,
- 0x72, 0x22, 0x65, 0x6e, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x74, 0x6f, 0x61, 0x6c,
- 0x6f, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x64, 0x65, 0x6c, 0x69, 0x76, 0x65,
- 0x72, 0x65, 0x64, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x21, 0x2d, 0x2d, 0x41,
- 0x6d, 0x65, 0x72, 0x69, 0x63, 0x61, 0x6e, 0x20, 0x70, 0x72, 0x6f, 0x74, 0x65,
- 0x63, 0x74, 0x65, 0x64, 0x4e, 0x6f, 0x76, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x20,
- 0x3c, 0x2f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3e, 0x3c, 0x66, 0x75, 0x72, 0x6e,
- 0x69, 0x74, 0x75, 0x72, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74,
- 0x20, 0x20, 0x6f, 0x6e, 0x62, 0x6c, 0x75, 0x72, 0x3d, 0x22, 0x73, 0x75, 0x73,
- 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65,
- 0x6e, 0x74, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x4d, 0x6f,
- 0x72, 0x65, 0x6f, 0x76, 0x65, 0x72, 0x2c, 0x61, 0x62, 0x6f, 0x6c, 0x69, 0x73,
- 0x68, 0x65, 0x64, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x77,
- 0x65, 0x72, 0x65, 0x20, 0x6d, 0x61, 0x64, 0x65, 0x65, 0x6d, 0x6f, 0x74, 0x69,
- 0x6f, 0x6e, 0x61, 0x6c, 0x65, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x6e, 0x63, 0x79,
- 0x6e, 0x61, 0x72, 0x72, 0x61, 0x74, 0x69, 0x76, 0x65, 0x61, 0x64, 0x76, 0x6f,
- 0x63, 0x61, 0x74, 0x65, 0x73, 0x70, 0x78, 0x3b, 0x62, 0x6f, 0x72, 0x64, 0x65,
- 0x72, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x64, 0x69, 0x72,
- 0x3d, 0x22, 0x6c, 0x74, 0x72, 0x22, 0x65, 0x6d, 0x70, 0x6c, 0x6f, 0x79, 0x65,
- 0x65, 0x73, 0x72, 0x65, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x2e, 0x20, 0x73,
- 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73,
- 0x73, 0x6f, 0x72, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x73, 0x64,
- 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x53, 0x65, 0x70, 0x74, 0x65,
- 0x6d, 0x62, 0x65, 0x72, 0x61, 0x64, 0x64, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x28,
- 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x20, 0x73, 0x75, 0x67, 0x67,
- 0x65, 0x73, 0x74, 0x65, 0x64, 0x61, 0x6e, 0x64, 0x20, 0x6c, 0x61, 0x74, 0x65,
- 0x72, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x65, 0x6c, 0x61,
- 0x62, 0x6f, 0x72, 0x61, 0x74, 0x65, 0x53, 0x6f, 0x6d, 0x65, 0x74, 0x69, 0x6d,
- 0x65, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x65, 0x63, 0x65,
- 0x72, 0x74, 0x61, 0x69, 0x6e, 0x6c, 0x79, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c,
- 0x6c, 0x65, 0x64, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x73, 0x4a,
- 0x65, 0x72, 0x75, 0x73, 0x61, 0x6c, 0x65, 0x6d, 0x74, 0x68, 0x65, 0x79, 0x20,
- 0x68, 0x61, 0x76, 0x65, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x69, 0x6e, 0x67,
- 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x70, 0x72, 0x6f, 0x76,
- 0x69, 0x6e, 0x63, 0x65, 0x73, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, 0x74, 0x65,
- 0x65, 0x61, 0x72, 0x62, 0x69, 0x74, 0x72, 0x61, 0x72, 0x79, 0x72, 0x65, 0x63,
- 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x77, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x20,
- 0x74, 0x6f, 0x70, 0x78, 0x3b, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x74, 0x68,
- 0x65, 0x6f, 0x72, 0x79, 0x20, 0x6f, 0x66, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69,
- 0x6f, 0x75, 0x72, 0x57, 0x68, 0x69, 0x6c, 0x65, 0x20, 0x74, 0x68, 0x65, 0x65,
- 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x62, 0x65, 0x67, 0x61, 0x6e,
- 0x20, 0x74, 0x6f, 0x20, 0x69, 0x74, 0x20, 0x62, 0x65, 0x63, 0x61, 0x6d, 0x65,
- 0x6d, 0x61, 0x67, 0x6e, 0x69, 0x74, 0x75, 0x64, 0x65, 0x6d, 0x75, 0x73, 0x74,
- 0x20, 0x68, 0x61, 0x76, 0x65, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x74, 0x68, 0x61,
- 0x6e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x65, 0x78, 0x74,
- 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x61,
- 0x72, 0x79, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x6c, 0x79, 0x6f, 0x63,
- 0x63, 0x75, 0x72, 0x72, 0x69, 0x6e, 0x67, 0x76, 0x61, 0x72, 0x69, 0x61, 0x62,
- 0x6c, 0x65, 0x73, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x70,
- 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x3c, 0x2f, 0x6c, 0x61, 0x62,
- 0x65, 0x6c, 0x3e, 0x3c, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x20, 0x74, 0x6f,
- 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x6b, 0x69, 0x6e, 0x64,
- 0x73, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x6f, 0x63, 0x69, 0x65, 0x74, 0x69, 0x65,
- 0x73, 0x61, 0x6c, 0x6f, 0x6e, 0x67, 0x73, 0x69, 0x64, 0x65, 0x20, 0x2d, 0x2d,
- 0x26, 0x67, 0x74, 0x3b, 0x0a, 0x0a, 0x73, 0x6f, 0x75, 0x74, 0x68, 0x77, 0x65,
- 0x73, 0x74, 0x74, 0x68, 0x65, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x72, 0x61,
- 0x64, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x61, 0x79, 0x20, 0x68, 0x61,
- 0x76, 0x65, 0x20, 0x75, 0x6e, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x28, 0x73,
- 0x70, 0x6f, 0x6b, 0x65, 0x6e, 0x20, 0x69, 0x6e, 0x22, 0x20, 0x68, 0x72, 0x65,
- 0x66, 0x3d, 0x22, 0x2f, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x65,
- 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x65,
- 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72,
- 0x79, 0x62, 0x75, 0x72, 0x69, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x61, 0x20, 0x73,
- 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x74, 0x68, 0x65, 0x79, 0x20, 0x77, 0x65,
- 0x72, 0x65, 0x3c, 0x2f, 0x66, 0x6f, 0x6e, 0x74, 0x3e, 0x3c, 0x2f, 0x4e, 0x6f,
- 0x72, 0x77, 0x65, 0x67, 0x69, 0x61, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66,
- 0x69, 0x65, 0x64, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x69, 0x6e, 0x67, 0x70,
- 0x61, 0x73, 0x73, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x28, 0x6e, 0x65, 0x77, 0x20,
- 0x44, 0x61, 0x74, 0x65, 0x74, 0x65, 0x6d, 0x70, 0x6f, 0x72, 0x61, 0x72, 0x79,
- 0x66, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x66, 0x74, 0x65,
- 0x72, 0x20, 0x74, 0x68, 0x65, 0x65, 0x71, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x2e, 0x72, 0x65, 0x67,
- 0x75, 0x6c, 0x61, 0x72, 0x6c, 0x79, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70,
- 0x65, 0x72, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, 0x6c, 0x69,
- 0x6e, 0x6b, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x70, 0x68, 0x65, 0x6e, 0x6f, 0x6d,
- 0x65, 0x6e, 0x61, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x20, 0x6f, 0x66, 0x74,
- 0x6f, 0x6f, 0x6c, 0x74, 0x69, 0x70, 0x22, 0x3e, 0x73, 0x75, 0x62, 0x73, 0x74,
- 0x61, 0x6e, 0x63, 0x65, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63,
- 0x61, 0x73, 0x70, 0x65, 0x63, 0x74, 0x20, 0x6f, 0x66, 0x41, 0x6d, 0x6f, 0x6e,
- 0x67, 0x20, 0x74, 0x68, 0x65, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65,
- 0x64, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73, 0x41, 0x69, 0x72,
- 0x20, 0x46, 0x6f, 0x72, 0x63, 0x65, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x20,
- 0x6f, 0x66, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x69, 0x6d,
- 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6d, 0x61, 0x6b, 0x69, 0x6e, 0x67,
- 0x20, 0x69, 0x74, 0x70, 0x61, 0x69, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x63,
- 0x6f, 0x6e, 0x71, 0x75, 0x65, 0x72, 0x65, 0x64, 0x61, 0x72, 0x65, 0x20, 0x73,
- 0x74, 0x69, 0x6c, 0x6c, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x64, 0x75, 0x72, 0x65,
- 0x67, 0x72, 0x6f, 0x77, 0x74, 0x68, 0x20, 0x6f, 0x66, 0x68, 0x65, 0x61, 0x64,
- 0x65, 0x64, 0x20, 0x62, 0x79, 0x45, 0x75, 0x72, 0x6f, 0x70, 0x65, 0x61, 0x6e,
- 0x20, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x6d, 0x6f, 0x6c,
- 0x65, 0x63, 0x75, 0x6c, 0x65, 0x73, 0x66, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x69,
- 0x73, 0x65, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x74,
- 0x74, 0x72, 0x61, 0x63, 0x74, 0x65, 0x64, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x68,
- 0x6f, 0x6f, 0x64, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x75, 0x73, 0x65, 0x64, 0x64,
- 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x73, 0x69, 0x6e, 0x67, 0x61,
- 0x70, 0x6f, 0x72, 0x65, 0x64, 0x65, 0x67, 0x72, 0x65, 0x65, 0x20, 0x6f, 0x66,
- 0x66, 0x61, 0x74, 0x68, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x63, 0x6f, 0x6e, 0x66,
- 0x6c, 0x69, 0x63, 0x74, 0x73, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x70, 0x3e,
- 0x0a, 0x63, 0x61, 0x6d, 0x65, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x77, 0x65, 0x72,
- 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x6e, 0x6f, 0x74, 0x65, 0x20, 0x74, 0x68,
- 0x61, 0x74, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x69, 0x6e, 0x67, 0x45, 0x78,
- 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x65, 0x76, 0x65, 0x6e, 0x20, 0x6d,
- 0x6f, 0x72, 0x65, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x20, 0x74, 0x6f, 0x63,
- 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x65, 0x72, 0x50, 0x6f, 0x6c, 0x69, 0x74,
- 0x69, 0x63, 0x61, 0x6c, 0x6d, 0x75, 0x73, 0x69, 0x63, 0x69, 0x61, 0x6e, 0x73,
- 0x64, 0x65, 0x6c, 0x69, 0x63, 0x69, 0x6f, 0x75, 0x73, 0x70, 0x72, 0x69, 0x73,
- 0x6f, 0x6e, 0x65, 0x72, 0x73, 0x61, 0x64, 0x76, 0x65, 0x6e, 0x74, 0x20, 0x6f,
- 0x66, 0x55, 0x54, 0x46, 0x2d, 0x38, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x21, 0x5b,
- 0x43, 0x44, 0x41, 0x54, 0x41, 0x5b, 0x22, 0x3e, 0x43, 0x6f, 0x6e, 0x74, 0x61,
- 0x63, 0x74, 0x53, 0x6f, 0x75, 0x74, 0x68, 0x65, 0x72, 0x6e, 0x20, 0x62, 0x67,
- 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3d, 0x22, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73,
- 0x20, 0x6f, 0x66, 0x2e, 0x20, 0x49, 0x74, 0x20, 0x77, 0x61, 0x73, 0x20, 0x69,
- 0x6e, 0x20, 0x45, 0x75, 0x72, 0x6f, 0x70, 0x65, 0x70, 0x65, 0x72, 0x6d, 0x69,
- 0x74, 0x74, 0x65, 0x64, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e,
- 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x69, 0x6e, 0x67, 0x6f, 0x66, 0x66, 0x69,
- 0x63, 0x69, 0x61, 0x6c, 0x73, 0x73, 0x65, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x6c,
- 0x79, 0x2d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x69, 0x6e, 0x69,
- 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x69,
- 0x6e, 0x67, 0x6c, 0x6f, 0x6e, 0x67, 0x2d, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e,
- 0x66, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x75, 0x63, 0x68, 0x20, 0x74,
- 0x68, 0x61, 0x74, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6f, 0x6b, 0x69, 0x65, 0x6d,
- 0x61, 0x72, 0x6b, 0x65, 0x64, 0x20, 0x62, 0x79, 0x3c, 0x2f, 0x62, 0x75, 0x74,
- 0x74, 0x6f, 0x6e, 0x3e, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74,
- 0x62, 0x75, 0x74, 0x20, 0x69, 0x74, 0x20, 0x69, 0x73, 0x69, 0x6e, 0x63, 0x72,
- 0x65, 0x61, 0x73, 0x65, 0x73, 0x64, 0x6f, 0x77, 0x6e, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x69, 0x6e, 0x67, 0x64, 0x65, 0x70,
- 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x2d, 0x2d, 0x3e, 0x0a, 0x3c, 0x21, 0x2d,
- 0x2d, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x57, 0x69,
- 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x70, 0x69, 0x65, 0x73,
- 0x20, 0x6f, 0x66, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x73, 0x75, 0x73, 0x77,
- 0x61, 0x73, 0x20, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x56, 0x65, 0x6e, 0x65, 0x7a,
- 0x75, 0x65, 0x6c, 0x61, 0x28, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x72, 0x6c, 0x79,
- 0x74, 0x68, 0x65, 0x20, 0x73, 0x74, 0x61, 0x74, 0x65, 0x70, 0x65, 0x72, 0x73,
- 0x6f, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x69,
- 0x63, 0x66, 0x61, 0x76, 0x6f, 0x75, 0x72, 0x20, 0x6f, 0x66, 0x69, 0x6e, 0x76,
- 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x69, 0x6b, 0x69, 0x70, 0x65, 0x64,
- 0x69, 0x61, 0x63, 0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x65, 0x6e, 0x74, 0x76, 0x69,
- 0x72, 0x74, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20,
- 0x77, 0x61, 0x73, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x6c, 0x65, 0x43,
- 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x69, 0x64, 0x65, 0x6e, 0x74,
- 0x69, 0x63, 0x61, 0x6c, 0x73, 0x68, 0x6f, 0x77, 0x20, 0x74, 0x68, 0x61, 0x74,
- 0x70, 0x72, 0x69, 0x6d, 0x69, 0x74, 0x69, 0x76, 0x65, 0x61, 0x77, 0x61, 0x79,
- 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x6d, 0x6f, 0x6c, 0x65, 0x63, 0x75, 0x6c, 0x61,
- 0x72, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x65, 0x6c, 0x79, 0x64, 0x69, 0x73,
- 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x55, 0x6e, 0x64, 0x65, 0x72, 0x20, 0x74,
- 0x68, 0x65, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x3e, 0x26,
- 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x3c, 0x2f, 0x49, 0x74, 0x20, 0x69, 0x73, 0x20,
- 0x74, 0x68, 0x65, 0x20, 0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x77,
- 0x69, 0x6c, 0x6c, 0x20, 0x68, 0x61, 0x76, 0x65, 0x6f, 0x72, 0x67, 0x61, 0x6e,
- 0x69, 0x73, 0x6d, 0x73, 0x73, 0x6f, 0x6d, 0x65, 0x20, 0x74, 0x69, 0x6d, 0x65,
- 0x46, 0x72, 0x69, 0x65, 0x64, 0x72, 0x69, 0x63, 0x68, 0x77, 0x61, 0x73, 0x20,
- 0x66, 0x69, 0x72, 0x73, 0x74, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x6e, 0x6c, 0x79,
- 0x20, 0x66, 0x61, 0x63, 0x74, 0x20, 0x74, 0x68, 0x61, 0x74, 0x66, 0x6f, 0x72,
- 0x6d, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x70, 0x72, 0x65, 0x63, 0x65, 0x64, 0x69,
- 0x6e, 0x67, 0x54, 0x65, 0x63, 0x68, 0x6e, 0x69, 0x63, 0x61, 0x6c, 0x70, 0x68,
- 0x79, 0x73, 0x69, 0x63, 0x69, 0x73, 0x74, 0x6f, 0x63, 0x63, 0x75, 0x72, 0x73,
- 0x20, 0x69, 0x6e, 0x6e, 0x61, 0x76, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x72, 0x73,
- 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, 0x73, 0x70, 0x61, 0x6e, 0x20,
- 0x69, 0x64, 0x3d, 0x22, 0x73, 0x6f, 0x75, 0x67, 0x68, 0x74, 0x20, 0x74, 0x6f,
- 0x62, 0x65, 0x6c, 0x6f, 0x77, 0x20, 0x74, 0x68, 0x65, 0x73, 0x75, 0x72, 0x76,
- 0x69, 0x76, 0x69, 0x6e, 0x67, 0x7d, 0x3c, 0x2f, 0x73, 0x74, 0x79, 0x6c, 0x65,
- 0x3e, 0x68, 0x69, 0x73, 0x20, 0x64, 0x65, 0x61, 0x74, 0x68, 0x61, 0x73, 0x20,
- 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x64, 0x20,
- 0x62, 0x79, 0x70, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x65, 0x78,
- 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x20,
- 0x74, 0x68, 0x65, 0x77, 0x61, 0x73, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x61,
- 0x20, 0x6c, 0x69, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x6c, 0x65, 0x76, 0x65, 0x6c,
- 0x73, 0x20, 0x6f, 0x66, 0x6e, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66,
- 0x4f, 0x66, 0x66, 0x69, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x64, 0x69, 0x73, 0x6d,
- 0x69, 0x73, 0x73, 0x65, 0x64, 0x73, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x69, 0x73,
- 0x74, 0x72, 0x65, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x65, 0x73, 0x64, 0x75, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x65, 0x78, 0x70, 0x6c, 0x6f, 0x73, 0x69,
- 0x76, 0x65, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x61, 0x6c,
- 0x6c, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x67, 0x61, 0x6c, 0x6c, 0x65, 0x72,
- 0x69, 0x65, 0x73, 0x7b, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x70,
- 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x20, 0x6f, 0x66, 0x72, 0x65, 0x67, 0x69, 0x6f,
- 0x6e, 0x20, 0x6f, 0x66, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73,
- 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x69, 0x6d, 0x67, 0x20,
- 0x61, 0x6c, 0x74, 0x3d, 0x22, 0x69, 0x6e, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x72,
- 0x6e, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x6d, 0x65, 0x74,
- 0x68, 0x6f, 0x64, 0x20, 0x6f, 0x66, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x69,
- 0x6e, 0x67, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x6e, 0x65,
- 0x65, 0x64, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x74, 0x68, 0x65, 0x20, 0x47, 0x72,
- 0x65, 0x61, 0x74, 0x72, 0x65, 0x67, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x73,
- 0x65, 0x65, 0x6d, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x76, 0x69, 0x65, 0x77, 0x65,
- 0x64, 0x20, 0x61, 0x73, 0x69, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x20, 0x6f, 0x6e,
- 0x69, 0x64, 0x65, 0x61, 0x20, 0x74, 0x68, 0x61, 0x74, 0x74, 0x68, 0x65, 0x20,
- 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x6f,
- 0x66, 0x65, 0x78, 0x70, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x54, 0x68, 0x65,
- 0x73, 0x65, 0x20, 0x61, 0x72, 0x65, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74,
- 0x22, 0x3e, 0x63, 0x61, 0x72, 0x65, 0x66, 0x75, 0x6c, 0x6c, 0x79, 0x6d, 0x61,
- 0x69, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65,
- 0x20, 0x6f, 0x66, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x61,
- 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x70, 0x72, 0x65, 0x64, 0x69,
- 0x63, 0x74, 0x65, 0x64, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70,
- 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x72, 0x69, 0x67, 0x68,
- 0x74, 0x22, 0x3e, 0x0d, 0x0a, 0x72, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x63,
- 0x65, 0x6c, 0x65, 0x61, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, 0x63, 0x6f, 0x6e,
- 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x61, 0x72, 0x65, 0x20, 0x6f, 0x66, 0x74,
- 0x65, 0x6e, 0x20, 0x20, 0x7d, 0x29, 0x28, 0x29, 0x3b, 0x0d, 0x0a, 0x70, 0x72,
- 0x6f, 0x62, 0x61, 0x62, 0x6c, 0x79, 0x20, 0x50, 0x72, 0x6f, 0x66, 0x65, 0x73,
- 0x73, 0x6f, 0x72, 0x2d, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x22, 0x20, 0x72,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x65, 0x64, 0x73, 0x61, 0x79, 0x73, 0x20,
- 0x74, 0x68, 0x61, 0x74, 0x68, 0x61, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65,
- 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x48, 0x75, 0x6e, 0x67,
- 0x61, 0x72, 0x69, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x20, 0x6f,
- 0x66, 0x73, 0x65, 0x72, 0x76, 0x65, 0x73, 0x20, 0x61, 0x73, 0x55, 0x6e, 0x69,
- 0x76, 0x65, 0x72, 0x73, 0x61, 0x6c, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69,
- 0x6f, 0x6e, 0x61, 0x67, 0x67, 0x72, 0x65, 0x67, 0x61, 0x74, 0x65, 0x66, 0x6f,
- 0x72, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x69, 0x6e, 0x66, 0x65, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x61, 0x67, 0x72, 0x65, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x68,
- 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x70, 0x6f, 0x70, 0x75, 0x6c,
- 0x61, 0x72, 0x22, 0x3e, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x20, 0x6f, 0x6e,
- 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x65, 0x6c, 0x65, 0x63,
- 0x74, 0x6f, 0x72, 0x61, 0x6c, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x20, 0x6f,
- 0x66, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x74,
- 0x75, 0x72, 0x6e, 0x20, 0x74, 0x6f, 0x61, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65,
- 0x63, 0x74, 0x43, 0x68, 0x72, 0x69, 0x73, 0x74, 0x69, 0x61, 0x6e, 0x70, 0x72,
- 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x20, 0x6c, 0x69, 0x76, 0x69, 0x6e, 0x67,
- 0x20, 0x69, 0x6e, 0x65, 0x61, 0x73, 0x69, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x70,
- 0x72, 0x6f, 0x66, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x0a, 0x26, 0x6c, 0x74, 0x3b,
- 0x21, 0x2d, 0x2d, 0x20, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x6f, 0x66,
- 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x77, 0x61, 0x73, 0x20,
- 0x74, 0x61, 0x6b, 0x65, 0x6e, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x74, 0x68,
- 0x65, 0x74, 0x6f, 0x6f, 0x6b, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x62, 0x65, 0x6c,
- 0x69, 0x65, 0x66, 0x20, 0x69, 0x6e, 0x41, 0x66, 0x72, 0x69, 0x6b, 0x61, 0x61,
- 0x6e, 0x73, 0x61, 0x73, 0x20, 0x66, 0x61, 0x72, 0x20, 0x61, 0x73, 0x70, 0x72,
- 0x65, 0x76, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x77, 0x6f, 0x72, 0x6b, 0x20, 0x77,
- 0x69, 0x74, 0x68, 0x61, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x3c,
- 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x43, 0x68, 0x72, 0x69, 0x73,
- 0x74, 0x6d, 0x61, 0x73, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x76, 0x65, 0x64,
- 0x0a, 0x0a, 0x49, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x62, 0x61, 0x63, 0x6b,
- 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x6e, 0x6f, 0x72, 0x74, 0x68, 0x65, 0x61, 0x73,
- 0x74, 0x6d, 0x61, 0x67, 0x61, 0x7a, 0x69, 0x6e, 0x65, 0x73, 0x3e, 0x3c, 0x73,
- 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x3e, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74,
- 0x65, 0x65, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x67, 0x72,
- 0x6f, 0x75, 0x70, 0x73, 0x20, 0x6f, 0x66, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64,
- 0x20, 0x69, 0x6e, 0x65, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x61,
- 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x69, 0x74, 0x73, 0x20, 0x66,
- 0x69, 0x72, 0x73, 0x74, 0x74, 0x68, 0x65, 0x69, 0x72, 0x20, 0x6f, 0x77, 0x6e,
- 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x61, 0x6e, 0x20, 0x6f,
- 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x61, 0x72, 0x69, 0x62, 0x62, 0x65, 0x61,
- 0x6e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x20, 0x74, 0x68, 0x65, 0x64, 0x69, 0x73,
- 0x74, 0x72, 0x69, 0x63, 0x74, 0x73, 0x77, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x73,
- 0x69, 0x6e, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x3b, 0x20,
- 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x20, 0x69, 0x6e, 0x68, 0x61, 0x62, 0x69,
- 0x74, 0x65, 0x64, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x69, 0x73, 0x74, 0x4a,
- 0x61, 0x6e, 0x75, 0x61, 0x72, 0x79, 0x20, 0x31, 0x3c, 0x2f, 0x66, 0x6f, 0x6f,
- 0x74, 0x65, 0x72, 0x3e, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x6c, 0x79,
- 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x20, 0x6f, 0x66, 0x74, 0x68, 0x65, 0x20,
- 0x73, 0x61, 0x6d, 0x65, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63,
- 0x20, 0x62, 0x75, 0x73, 0x69, 0x6e, 0x65, 0x73, 0x73, 0x20, 0x54, 0x68, 0x65,
- 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x2e, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68,
- 0x3b, 0x20, 0x64, 0x65, 0x73, 0x69, 0x72, 0x65, 0x20, 0x74, 0x6f, 0x64, 0x65,
- 0x61, 0x6c, 0x20, 0x77, 0x69, 0x74, 0x68, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x20,
- 0x74, 0x68, 0x65, 0x75, 0x73, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x63,
- 0x6f, 0x6e, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x69, 0x6e, 0x64, 0x65, 0x78,
- 0x2e, 0x70, 0x68, 0x70, 0x61, 0x73, 0x20, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b,
- 0x65, 0x6e, 0x67, 0x61, 0x67, 0x65, 0x20, 0x69, 0x6e, 0x72, 0x65, 0x63, 0x65,
- 0x6e, 0x74, 0x6c, 0x79, 0x2c, 0x66, 0x65, 0x77, 0x20, 0x79, 0x65, 0x61, 0x72,
- 0x73, 0x77, 0x65, 0x72, 0x65, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x0a, 0x3c, 0x68,
- 0x65, 0x61, 0x64, 0x3e, 0x0a, 0x3c, 0x65, 0x64, 0x69, 0x74, 0x65, 0x64, 0x20,
- 0x62, 0x79, 0x61, 0x72, 0x65, 0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x63, 0x69,
- 0x74, 0x69, 0x65, 0x73, 0x20, 0x69, 0x6e, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73,
- 0x6b, 0x65, 0x79, 0x63, 0x6f, 0x6e, 0x64, 0x65, 0x6d, 0x6e, 0x65, 0x64, 0x61,
- 0x6c, 0x73, 0x6f, 0x20, 0x68, 0x61, 0x76, 0x65, 0x73, 0x65, 0x72, 0x76, 0x69,
- 0x63, 0x65, 0x73, 0x2c, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x20, 0x6f, 0x66,
- 0x53, 0x63, 0x68, 0x6f, 0x6f, 0x6c, 0x20, 0x6f, 0x66, 0x63, 0x6f, 0x6e, 0x76,
- 0x65, 0x72, 0x74, 0x65, 0x64, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x20, 0x6f,
- 0x66, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x6d, 0x69, 0x6e,
- 0x69, 0x73, 0x74, 0x65, 0x72, 0x73, 0x3c, 0x2f, 0x6f, 0x62, 0x6a, 0x65, 0x63,
- 0x74, 0x3e, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x69, 0x73, 0x20, 0x61, 0x20,
- 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e,
- 0x63, 0x65, 0x73, 0x61, 0x64, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x64, 0x54,
- 0x68, 0x65, 0x79, 0x20, 0x77, 0x65, 0x72, 0x65, 0x61, 0x6e, 0x79, 0x20, 0x6f,
- 0x74, 0x68, 0x65, 0x72, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d,
- 0x65, 0x6e, 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x65, 0x6d, 0x75, 0x63, 0x68,
- 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x72, 0x65, 0x66, 0x6c, 0x65, 0x63, 0x74, 0x65,
- 0x64, 0x77, 0x61, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x6f, 0x72, 0x69,
- 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x20, 0x61, 0x20, 0x74, 0x79, 0x70, 0x69, 0x63,
- 0x61, 0x6c, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x79, 0x65, 0x6e,
- 0x67, 0x69, 0x6e, 0x65, 0x65, 0x72, 0x73, 0x63, 0x6f, 0x75, 0x6c, 0x64, 0x20,
- 0x6e, 0x6f, 0x74, 0x72, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x73, 0x77,
- 0x65, 0x64, 0x6e, 0x65, 0x73, 0x64, 0x61, 0x79, 0x74, 0x68, 0x65, 0x20, 0x74,
- 0x68, 0x69, 0x72, 0x64, 0x20, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x73,
- 0x4a, 0x61, 0x6e, 0x75, 0x61, 0x72, 0x79, 0x20, 0x32, 0x77, 0x68, 0x61, 0x74,
- 0x20, 0x74, 0x68, 0x65, 0x79, 0x61, 0x20, 0x63, 0x65, 0x72, 0x74, 0x61, 0x69,
- 0x6e, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x70, 0x72, 0x6f,
- 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x61, 0x66, 0x74, 0x65, 0x72, 0x20, 0x68,
- 0x69, 0x73, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x61, 0x73, 0x74, 0x20, 0x63, 0x6f,
- 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x22, 0x3e, 0x3c, 0x2f, 0x64, 0x69,
- 0x76, 0x3e, 0x0a, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x74, 0x64, 0x3e, 0x64,
- 0x65, 0x70, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x6e, 0x73, 0x65, 0x61, 0x72, 0x63,
- 0x68, 0x22, 0x3e, 0x0a, 0x70, 0x69, 0x65, 0x63, 0x65, 0x73, 0x20, 0x6f, 0x66,
- 0x63, 0x6f, 0x6d, 0x70, 0x65, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x66, 0x65,
- 0x72, 0x65, 0x6e, 0x63, 0x65, 0x74, 0x65, 0x6e, 0x6e, 0x65, 0x73, 0x73, 0x65,
- 0x65, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x68, 0x61, 0x73, 0x20, 0x76, 0x65,
- 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x3d, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e,
- 0x20, 0x3c, 0x3c, 0x2f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x3e, 0x67, 0x69,
- 0x76, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72,
- 0x69, 0x61, 0x6e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x22, 0x3e, 0x70,
- 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x30, 0x76, 0x69, 0x65, 0x77, 0x20,
- 0x74, 0x68, 0x61, 0x74, 0x74, 0x6f, 0x67, 0x65, 0x74, 0x68, 0x65, 0x72, 0x2c,
- 0x74, 0x68, 0x65, 0x20, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x77, 0x61, 0x73, 0x20,
- 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x73, 0x75, 0x62, 0x73, 0x65, 0x74, 0x20, 0x6f,
- 0x66, 0x61, 0x74, 0x74, 0x61, 0x63, 0x6b, 0x20, 0x6f, 0x6e, 0x63, 0x68, 0x69,
- 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x2c, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x20,
- 0x6f, 0x66, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x70, 0x6f,
- 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x61, 0x6c, 0x6c, 0x65, 0x67, 0x65,
- 0x64, 0x6c, 0x79, 0x43, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x61, 0x6e, 0x64, 0x77,
- 0x61, 0x73, 0x20, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x20, 0x61,
- 0x66, 0x74, 0x65, 0x72, 0x61, 0x72, 0x65, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e,
- 0x77, 0x61, 0x73, 0x20, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x73, 0x63, 0x72, 0x6f,
- 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x20, 0x6f,
- 0x66, 0x6d, 0x61, 0x6b, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x6d, 0x75, 0x63,
- 0x68, 0x20, 0x6c, 0x65, 0x73, 0x73, 0x41, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x61,
- 0x6e, 0x73, 0x2e, 0x0a, 0x0a, 0x41, 0x66, 0x74, 0x65, 0x72, 0x20, 0x2c, 0x20,
- 0x62, 0x75, 0x74, 0x20, 0x74, 0x68, 0x65, 0x4d, 0x75, 0x73, 0x65, 0x75, 0x6d,
- 0x20, 0x6f, 0x66, 0x6c, 0x6f, 0x75, 0x69, 0x73, 0x69, 0x61, 0x6e, 0x61, 0x28,
- 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x6d, 0x69, 0x6e, 0x6e, 0x65,
- 0x73, 0x6f, 0x74, 0x61, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73,
- 0x61, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x44, 0x6f, 0x6d, 0x69,
- 0x6e, 0x69, 0x63, 0x61, 0x6e, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x20, 0x6f,
- 0x66, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x64, 0x65, 0x66,
- 0x65, 0x6e, 0x73, 0x69, 0x76, 0x65, 0x30, 0x30, 0x70, 0x78, 0x7c, 0x72, 0x69,
- 0x67, 0x68, 0x6d, 0x61, 0x64, 0x65, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x6d, 0x6f,
- 0x75, 0x73, 0x65, 0x6f, 0x76, 0x65, 0x72, 0x22, 0x20, 0x73, 0x74, 0x79, 0x6c,
- 0x65, 0x3d, 0x22, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x20, 0x6f, 0x66, 0x28,
- 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x74, 0x69,
- 0x6e, 0x75, 0x65, 0x73, 0x46, 0x72, 0x61, 0x6e, 0x63, 0x69, 0x73, 0x63, 0x6f,
- 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x77, 0x69, 0x74, 0x68,
- 0x6f, 0x75, 0x74, 0x20, 0x61, 0x77, 0x69, 0x74, 0x68, 0x20, 0x73, 0x6f, 0x6d,
- 0x65, 0x77, 0x68, 0x6f, 0x20, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x61, 0x20, 0x66,
- 0x6f, 0x72, 0x6d, 0x20, 0x6f, 0x66, 0x61, 0x20, 0x70, 0x61, 0x72, 0x74, 0x20,
- 0x6f, 0x66, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x20, 0x69, 0x74, 0x6b, 0x6e,
- 0x6f, 0x77, 0x6e, 0x20, 0x61, 0x73, 0x20, 0x20, 0x53, 0x65, 0x72, 0x76, 0x69,
- 0x63, 0x65, 0x73, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61,
- 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x74, 0x65, 0x6e, 0x6d, 0x65, 0x61, 0x73, 0x75,
- 0x72, 0x69, 0x6e, 0x67, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x74, 0x20, 0x69, 0x73,
- 0x70, 0x61, 0x70, 0x65, 0x72, 0x62, 0x61, 0x63, 0x6b, 0x76, 0x61, 0x6c, 0x75,
- 0x65, 0x73, 0x20, 0x6f, 0x66, 0x0d, 0x0a, 0x3c, 0x74, 0x69, 0x74, 0x6c, 0x65,
- 0x3e, 0x3d, 0x20, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x2e, 0x64, 0x65, 0x74,
- 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x65, 0x65, 0x72, 0x26, 0x71, 0x75, 0x6f, 0x74,
- 0x3b, 0x20, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x20, 0x62, 0x79, 0x61, 0x6e,
- 0x64, 0x20, 0x65, 0x61, 0x72, 0x6c, 0x79, 0x3c, 0x2f, 0x63, 0x65, 0x6e, 0x74,
- 0x65, 0x72, 0x3e, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x69, 0x73, 0x74,
- 0x68, 0x65, 0x20, 0x74, 0x68, 0x72, 0x65, 0x65, 0x70, 0x6f, 0x77, 0x65, 0x72,
- 0x20, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x20, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b,
- 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x48, 0x54, 0x4d, 0x4c, 0x3c, 0x61, 0x20, 0x68,
- 0x72, 0x65, 0x66, 0x3d, 0x22, 0x79, 0x3a, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65,
- 0x3b, 0x43, 0x68, 0x75, 0x72, 0x63, 0x68, 0x20, 0x6f, 0x66, 0x74, 0x68, 0x65,
- 0x20, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x76, 0x65, 0x72, 0x79, 0x20, 0x68, 0x69,
- 0x67, 0x68, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x2d, 0x68,
- 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
- 0x74, 0x3d, 0x22, 0x2f, 0x63, 0x67, 0x69, 0x2d, 0x62, 0x69, 0x6e, 0x2f, 0x74,
- 0x6f, 0x20, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x61, 0x66, 0x72, 0x69, 0x6b,
- 0x61, 0x61, 0x6e, 0x73, 0x65, 0x73, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x74, 0x6f,
- 0x66, 0x72, 0x61, 0x6e, 0xc3, 0xa7, 0x61, 0x69, 0x73, 0x6c, 0x61, 0x74, 0x76,
- 0x69, 0x65, 0xc5, 0xa1, 0x75, 0x6c, 0x69, 0x65, 0x74, 0x75, 0x76, 0x69, 0xc5,
- 0xb3, 0xc4, 0x8c, 0x65, 0xc5, 0xa1, 0x74, 0x69, 0x6e, 0x61, 0xc4, 0x8d, 0x65,
- 0xc5, 0xa1, 0x74, 0x69, 0x6e, 0x61, 0xe0, 0xb9, 0x84, 0xe0, 0xb8, 0x97, 0xe0,
- 0xb8, 0xa2, 0xe6, 0x97, 0xa5, 0xe6, 0x9c, 0xac, 0xe8, 0xaa, 0x9e, 0xe7, 0xae,
- 0x80, 0xe4, 0xbd, 0x93, 0xe5, 0xad, 0x97, 0xe7, 0xb9, 0x81, 0xe9, 0xab, 0x94,
- 0xe5, 0xad, 0x97, 0xed, 0x95, 0x9c, 0xea, 0xb5, 0xad, 0xec, 0x96, 0xb4, 0xe4,
- 0xb8, 0xba, 0xe4, 0xbb, 0x80, 0xe4, 0xb9, 0x88, 0xe8, 0xae, 0xa1, 0xe7, 0xae,
- 0x97, 0xe6, 0x9c, 0xba, 0xe7, 0xac, 0x94, 0xe8, 0xae, 0xb0, 0xe6, 0x9c, 0xac,
- 0xe8, 0xa8, 0x8e, 0xe8, 0xab, 0x96, 0xe5, 0x8d, 0x80, 0xe6, 0x9c, 0x8d, 0xe5,
- 0x8a, 0xa1, 0xe5, 0x99, 0xa8, 0xe4, 0xba, 0x92, 0xe8, 0x81, 0x94, 0xe7, 0xbd,
- 0x91, 0xe6, 0x88, 0xbf, 0xe5, 0x9c, 0xb0, 0xe4, 0xba, 0xa7, 0xe4, 0xbf, 0xb1,
- 0xe4, 0xb9, 0x90, 0xe9, 0x83, 0xa8, 0xe5, 0x87, 0xba, 0xe7, 0x89, 0x88, 0xe7,
- 0xa4, 0xbe, 0xe6, 0x8e, 0x92, 0xe8, 0xa1, 0x8c, 0xe6, 0xa6, 0x9c, 0xe9, 0x83,
- 0xa8, 0xe8, 0x90, 0xbd, 0xe6, 0xa0, 0xbc, 0xe8, 0xbf, 0x9b, 0xe4, 0xb8, 0x80,
- 0xe6, 0xad, 0xa5, 0xe6, 0x94, 0xaf, 0xe4, 0xbb, 0x98, 0xe5, 0xae, 0x9d, 0xe9,
- 0xaa, 0x8c, 0xe8, 0xaf, 0x81, 0xe7, 0xa0, 0x81, 0xe5, 0xa7, 0x94, 0xe5, 0x91,
- 0x98, 0xe4, 0xbc, 0x9a, 0xe6, 0x95, 0xb0, 0xe6, 0x8d, 0xae, 0xe5, 0xba, 0x93,
- 0xe6, 0xb6, 0x88, 0xe8, 0xb4, 0xb9, 0xe8, 0x80, 0x85, 0xe5, 0x8a, 0x9e, 0xe5,
- 0x85, 0xac, 0xe5, 0xae, 0xa4, 0xe8, 0xae, 0xa8, 0xe8, 0xae, 0xba, 0xe5, 0x8c,
- 0xba, 0xe6, 0xb7, 0xb1, 0xe5, 0x9c, 0xb3, 0xe5, 0xb8, 0x82, 0xe6, 0x92, 0xad,
- 0xe6, 0x94, 0xbe, 0xe5, 0x99, 0xa8, 0xe5, 0x8c, 0x97, 0xe4, 0xba, 0xac, 0xe5,
- 0xb8, 0x82, 0xe5, 0xa4, 0xa7, 0xe5, 0xad, 0xa6, 0xe7, 0x94, 0x9f, 0xe8, 0xb6,
- 0x8a, 0xe6, 0x9d, 0xa5, 0xe8, 0xb6, 0x8a, 0xe7, 0xae, 0xa1, 0xe7, 0x90, 0x86,
- 0xe5, 0x91, 0x98, 0xe4, 0xbf, 0xa1, 0xe6, 0x81, 0xaf, 0xe7, 0xbd, 0x91, 0x73,
- 0x65, 0x72, 0x76, 0x69, 0x63, 0x69, 0x6f, 0x73, 0x61, 0x72, 0x74, 0xc3, 0xad,
- 0x63, 0x75, 0x6c, 0x6f, 0x61, 0x72, 0x67, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x61,
- 0x62, 0x61, 0x72, 0x63, 0x65, 0x6c, 0x6f, 0x6e, 0x61, 0x63, 0x75, 0x61, 0x6c,
- 0x71, 0x75, 0x69, 0x65, 0x72, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x64,
- 0x6f, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x6f, 0x73, 0x70, 0x6f, 0x6c,
- 0xc3, 0xad, 0x74, 0x69, 0x63, 0x61, 0x72, 0x65, 0x73, 0x70, 0x75, 0x65, 0x73,
- 0x74, 0x61, 0x77, 0x69, 0x6b, 0x69, 0x70, 0x65, 0x64, 0x69, 0x61, 0x73, 0x69,
- 0x67, 0x75, 0x69, 0x65, 0x6e, 0x74, 0x65, 0x62, 0xc3, 0xba, 0x73, 0x71, 0x75,
- 0x65, 0x64, 0x61, 0x63, 0x6f, 0x6d, 0x75, 0x6e, 0x69, 0x64, 0x61, 0x64, 0x73,
- 0x65, 0x67, 0x75, 0x72, 0x69, 0x64, 0x61, 0x64, 0x70, 0x72, 0x69, 0x6e, 0x63,
- 0x69, 0x70, 0x61, 0x6c, 0x70, 0x72, 0x65, 0x67, 0x75, 0x6e, 0x74, 0x61, 0x73,
- 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x69, 0x64, 0x6f, 0x72, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x64, 0x65, 0x72, 0x76, 0x65, 0x6e, 0x65, 0x7a, 0x75, 0x65, 0x6c,
- 0x61, 0x70, 0x72, 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x61, 0x73, 0x64, 0x69, 0x63,
- 0x69, 0x65, 0x6d, 0x62, 0x72, 0x65, 0x72, 0x65, 0x6c, 0x61, 0x63, 0x69, 0xc3,
- 0xb3, 0x6e, 0x6e, 0x6f, 0x76, 0x69, 0x65, 0x6d, 0x62, 0x72, 0x65, 0x73, 0x69,
- 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x70, 0x72, 0x6f, 0x79, 0x65, 0x63,
- 0x74, 0x6f, 0x73, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x61, 0x73, 0x69,
- 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x6f, 0x61, 0x63, 0x74, 0x69, 0x76,
- 0x69, 0x64, 0x61, 0x64, 0x65, 0x6e, 0x63, 0x75, 0x65, 0x6e, 0x74, 0x72, 0x61,
- 0x65, 0x63, 0x6f, 0x6e, 0x6f, 0x6d, 0xc3, 0xad, 0x61, 0x69, 0x6d, 0xc3, 0xa1,
- 0x67, 0x65, 0x6e, 0x65, 0x73, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x61,
- 0x72, 0x64, 0x65, 0x73, 0x63, 0x61, 0x72, 0x67, 0x61, 0x72, 0x6e, 0x65, 0x63,
- 0x65, 0x73, 0x61, 0x72, 0x69, 0x6f, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x69, 0xc3,
- 0xb3, 0x6e, 0x74, 0x65, 0x6c, 0xc3, 0xa9, 0x66, 0x6f, 0x6e, 0x6f, 0x63, 0x6f,
- 0x6d, 0x69, 0x73, 0x69, 0xc3, 0xb3, 0x6e, 0x63, 0x61, 0x6e, 0x63, 0x69, 0x6f,
- 0x6e, 0x65, 0x73, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x64, 0x61, 0x64, 0x65,
- 0x6e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x72, 0x61, 0x6e, 0xc3, 0xa1, 0x6c,
- 0x69, 0x73, 0x69, 0x73, 0x66, 0x61, 0x76, 0x6f, 0x72, 0x69, 0x74, 0x6f, 0x73,
- 0x74, 0xc3, 0xa9, 0x72, 0x6d, 0x69, 0x6e, 0x6f, 0x73, 0x70, 0x72, 0x6f, 0x76,
- 0x69, 0x6e, 0x63, 0x69, 0x61, 0x65, 0x74, 0x69, 0x71, 0x75, 0x65, 0x74, 0x61,
- 0x73, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x73, 0x66, 0x75, 0x6e,
- 0x63, 0x69, 0x6f, 0x6e, 0x65, 0x73, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x61,
- 0x64, 0x6f, 0x63, 0x61, 0x72, 0xc3, 0xa1, 0x63, 0x74, 0x65, 0x72, 0x70, 0x72,
- 0x6f, 0x70, 0x69, 0x65, 0x64, 0x61, 0x64, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69,
- 0x70, 0x69, 0x6f, 0x6e, 0x65, 0x63, 0x65, 0x73, 0x69, 0x64, 0x61, 0x64, 0x6d,
- 0x75, 0x6e, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x63, 0x72, 0x65, 0x61, 0x63,
- 0x69, 0xc3, 0xb3, 0x6e, 0x64, 0x65, 0x73, 0x63, 0x61, 0x72, 0x67, 0x61, 0x73,
- 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x69, 0x61, 0x63, 0x6f, 0x6d, 0x65,
- 0x72, 0x63, 0x69, 0x61, 0x6c, 0x6f, 0x70, 0x69, 0x6e, 0x69, 0x6f, 0x6e, 0x65,
- 0x73, 0x65, 0x6a, 0x65, 0x72, 0x63, 0x69, 0x63, 0x69, 0x6f, 0x65, 0x64, 0x69,
- 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x73, 0x61, 0x6c, 0x61, 0x6d, 0x61, 0x6e,
- 0x63, 0x61, 0x67, 0x6f, 0x6e, 0x7a, 0xc3, 0xa1, 0x6c, 0x65, 0x7a, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x70, 0x65, 0x6c, 0xc3, 0xad, 0x63,
- 0x75, 0x6c, 0x61, 0x72, 0x65, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x65, 0x73, 0x67,
- 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x65, 0x73, 0x74, 0x61, 0x72, 0x72, 0x61,
- 0x67, 0x6f, 0x6e, 0x61, 0x70, 0x72, 0xc3, 0xa1, 0x63, 0x74, 0x69, 0x63, 0x61,
- 0x6e, 0x6f, 0x76, 0x65, 0x64, 0x61, 0x64, 0x65, 0x73, 0x70, 0x72, 0x6f, 0x70,
- 0x75, 0x65, 0x73, 0x74, 0x61, 0x70, 0x61, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x65,
- 0x73, 0x74, 0xc3, 0xa9, 0x63, 0x6e, 0x69, 0x63, 0x61, 0x73, 0x6f, 0x62, 0x6a,
- 0x65, 0x74, 0x69, 0x76, 0x6f, 0x73, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74,
- 0x6f, 0x73, 0xe0, 0xa4, 0xae, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x82, 0xe0, 0xa4,
- 0xb2, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x8f, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x88,
- 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0xb8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa5, 0xe0, 0xa4, 0x8f, 0xe0, 0xa4,
- 0xb5, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x87,
- 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x88, 0xe0, 0xa4, 0x95, 0xe0,
- 0xa5, 0x81, 0xe0, 0xa4, 0x9b, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0x95,
- 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xad, 0xe0,
- 0xa5, 0x80, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0x8f, 0xe0, 0xa4,
- 0xb0, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xae, 0xe0, 0xa5, 0x88,
- 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa8, 0xe0,
- 0xa4, 0xac, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa4, 0x64, 0x69, 0x70, 0x6c, 0x6f,
- 0x64, 0x6f, 0x63, 0x73, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xaf,
- 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xa8, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0xab, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x94,
- 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xb0, 0xe0,
- 0xa4, 0xb9, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x97, 0xe0, 0xa4,
- 0xb9, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0x86, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa6, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb6, 0xe0,
- 0xa4, 0xb9, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0x88, 0xe0, 0xa4, 0x96, 0xe0, 0xa5,
- 0x87, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0xbf,
- 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xb5, 0xe0,
- 0xa5, 0x87, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x80, 0xe0, 0xa4,
- 0xa8, 0xe0, 0xa4, 0xac, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x9a, 0xe0, 0xa4, 0xae,
- 0xe0, 0xa5, 0x8c, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0xb2, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x96, 0xe0, 0xa4,
- 0x9c, 0xe0, 0xa5, 0x89, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xa6,
- 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xa5, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0xa8, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xb6, 0xe0, 0xa4,
- 0xb9, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x85, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0x97,
- 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xad, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xa8, 0xe0,
- 0xa4, 0x97, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0xb8, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0x95,
- 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x8f, 0xe0, 0xa4, 0x89, 0xe0, 0xa4, 0xb8, 0xe0,
- 0xa5, 0x87, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xaf, 0xe0, 0xa5, 0x80, 0xe0, 0xa4,
- 0xb9, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0x81, 0xe0, 0xa4, 0x86, 0xe0, 0xa4, 0x97,
- 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x9f, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xae, 0xe0,
- 0xa4, 0x96, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0x95, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x85, 0xe0, 0xa4, 0xad, 0xe0, 0xa5, 0x80,
- 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xaf, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xa4, 0xe0,
- 0xa5, 0x81, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xb5, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4,
- 0x9f, 0xe0, 0xa4, 0xa6, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x85,
- 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x90, 0xe0, 0xa4, 0xb8, 0xe0,
- 0xa5, 0x87, 0xe0, 0xa4, 0xae, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4,
- 0xb2, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0x8a, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xb0, 0xe0,
- 0xa4, 0x9a, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x90, 0xe0, 0xa4,
- 0xb8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa6, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb0,
- 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xa6, 0xe0,
- 0xa4, 0xbf, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0x82, 0xe0, 0xa4,
- 0xa6, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb9,
- 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0x96, 0xe0, 0xa4, 0x9c, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4,
- 0xac, 0xe0, 0xa4, 0x9f, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xbf,
- 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0x87, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x87, 0xe0,
- 0xa4, 0x86, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4,
- 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0xb2,
- 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x89, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xad, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x87, 0xe0, 0xa4,
- 0xb2, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xb0,
- 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0x97, 0xe0,
- 0xa5, 0x87, 0xe0, 0xa4, 0xaa, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4,
- 0xb9, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa5, 0xe0, 0xa4, 0x87, 0xe0, 0xa4, 0xb8,
- 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x80, 0xe0,
- 0xa4, 0x95, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa0, 0xe0, 0xa5,
- 0x80, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x81,
- 0xe0, 0xa4, 0xa6, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa4, 0xe0,
- 0xa4, 0xb9, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0xa4, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0x86,
- 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0x95, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8c, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4,
- 0xb6, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xa6, 0xe0, 0xa5, 0x87,
- 0xe0, 0xa4, 0x96, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x80, 0xe0,
- 0xa4, 0xb0, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0x96, 0xe0, 0xa5,
- 0x81, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0x97, 0xe0, 0xa5, 0x80,
- 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x65, 0x78, 0x70,
- 0x65, 0x72, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x3c, 0x2f, 0x74, 0x69, 0x74, 0x6c,
- 0x65, 0x3e, 0x0d, 0x0a, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74,
- 0x20, 0x6a, 0x61, 0x76, 0x61, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x63, 0x6f,
- 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x76, 0x65, 0x72, 0x79,
- 0x74, 0x68, 0x69, 0x6e, 0x67, 0x3c, 0x70, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73,
- 0x3d, 0x22, 0x74, 0x65, 0x63, 0x68, 0x6e, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x62,
- 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x3c, 0x61, 0x20, 0x63,
- 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d,
- 0x65, 0x6e, 0x74, 0x26, 0x63, 0x6f, 0x70, 0x79, 0x3b, 0x20, 0x32, 0x30, 0x31,
- 0x6a, 0x61, 0x76, 0x61, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x63, 0x68, 0x61,
- 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x73, 0x62, 0x72, 0x65, 0x61, 0x64, 0x63,
- 0x72, 0x75, 0x6d, 0x62, 0x74, 0x68, 0x65, 0x6d, 0x73, 0x65, 0x6c, 0x76, 0x65,
- 0x73, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x67, 0x6f,
- 0x76, 0x65, 0x72, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x61, 0x6c, 0x69, 0x66,
- 0x6f, 0x72, 0x6e, 0x69, 0x61, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x69,
- 0x65, 0x73, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x4e,
- 0x61, 0x76, 0x69, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x6e,
- 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x6e, 0x61, 0x76, 0x69, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x61, 0x6e, 0x63, 0x65, 0x3c, 0x2f, 0x74,
- 0x69, 0x74, 0x6c, 0x65, 0x3e, 0x3c, 0x6d, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x62,
- 0x6f, 0x78, 0x22, 0x20, 0x74, 0x65, 0x63, 0x68, 0x6e, 0x69, 0x71, 0x75, 0x65,
- 0x73, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x70,
- 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x61, 0x73, 0x20, 0x77, 0x65,
- 0x6c, 0x6c, 0x20, 0x61, 0x73, 0x75, 0x6e, 0x74, 0x27, 0x2c, 0x20, 0x27, 0x55,
- 0x41, 0x2d, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x6f,
- 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x74, 0x65, 0x6c, 0x65,
- 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61,
- 0x74, 0x65, 0x64, 0x57, 0x61, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x74, 0x6f, 0x6e,
- 0x6e, 0x61, 0x76, 0x69, 0x67, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x20, 0x3d, 0x20,
- 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x2e, 0x69, 0x6d, 0x70, 0x72, 0x65, 0x73,
- 0x73, 0x69, 0x6f, 0x6e, 0x26, 0x6c, 0x74, 0x3b, 0x62, 0x72, 0x26, 0x67, 0x74,
- 0x3b, 0x6c, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x70, 0x6f,
- 0x70, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x67, 0x63, 0x6f, 0x6c,
- 0x6f, 0x72, 0x3d, 0x22, 0x23, 0x65, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c,
- 0x6c, 0x79, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3d, 0x22, 0x70,
- 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x6e, 0x65, 0x77, 0x73,
- 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74,
- 0x69, 0x65, 0x73, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e,
- 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x54, 0x65, 0x63,
- 0x68, 0x6e, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x50, 0x61, 0x72, 0x6c, 0x69, 0x61,
- 0x6d, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f,
- 0x6e, 0x75, 0x6c, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x2e, 0x69,
- 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x66, 0x28, 0x22, 0x63, 0x6f, 0x6e, 0x63, 0x6c,
- 0x75, 0x73, 0x69, 0x6f, 0x6e, 0x64, 0x69, 0x73, 0x63, 0x75, 0x73, 0x73, 0x69,
- 0x6f, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x62,
- 0x69, 0x6f, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x52, 0x65, 0x76, 0x6f,
- 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
- 0x6e, 0x65, 0x72, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x74, 0x6f, 0x6f, 0x64,
- 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x3c, 0x70, 0x65, 0x72,
- 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x61, 0x63, 0x68, 0x20, 0x6f,
- 0x74, 0x68, 0x65, 0x72, 0x61, 0x74, 0x6d, 0x6f, 0x73, 0x70, 0x68, 0x65, 0x72,
- 0x65, 0x20, 0x6f, 0x6e, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x3d, 0x22, 0x3c, 0x66,
- 0x6f, 0x72, 0x6d, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x70, 0x72, 0x6f, 0x63, 0x65,
- 0x73, 0x73, 0x69, 0x6e, 0x67, 0x74, 0x68, 0x69, 0x73, 0x2e, 0x76, 0x61, 0x6c,
- 0x75, 0x65, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43,
- 0x6f, 0x6e, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x75, 0x62, 0x73,
- 0x65, 0x71, 0x75, 0x65, 0x6e, 0x74, 0x77, 0x65, 0x6c, 0x6c, 0x2d, 0x6b, 0x6e,
- 0x6f, 0x77, 0x6e, 0x76, 0x61, 0x72, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
- 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x70, 0x68, 0x65,
- 0x6e, 0x6f, 0x6d, 0x65, 0x6e, 0x6f, 0x6e, 0x64, 0x69, 0x73, 0x63, 0x69, 0x70,
- 0x6c, 0x69, 0x6e, 0x65, 0x6c, 0x6f, 0x67, 0x6f, 0x2e, 0x70, 0x6e, 0x67, 0x22,
- 0x20, 0x28, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x62, 0x6f,
- 0x75, 0x6e, 0x64, 0x61, 0x72, 0x69, 0x65, 0x73, 0x65, 0x78, 0x70, 0x72, 0x65,
- 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x74, 0x74, 0x6c, 0x65, 0x6d, 0x65,
- 0x6e, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x6f,
- 0x75, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x65, 0x6e, 0x74, 0x65,
- 0x72, 0x70, 0x72, 0x69, 0x73, 0x65, 0x28, 0x22, 0x68, 0x74, 0x74, 0x70, 0x73,
- 0x3a, 0x22, 0x20, 0x75, 0x6e, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x28, 0x22,
- 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x20, 0x64, 0x65, 0x6d,
- 0x6f, 0x63, 0x72, 0x61, 0x74, 0x69, 0x63, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65,
- 0x66, 0x3d, 0x22, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x22, 0x3e,
- 0x0a, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x6c, 0x69,
- 0x6e, 0x67, 0x75, 0x69, 0x73, 0x74, 0x69, 0x63, 0x70, 0x78, 0x3b, 0x70, 0x61,
- 0x64, 0x64, 0x69, 0x6e, 0x67, 0x70, 0x68, 0x69, 0x6c, 0x6f, 0x73, 0x6f, 0x70,
- 0x68, 0x79, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x75,
- 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x69, 0x74, 0x79, 0x66, 0x61, 0x63, 0x69,
- 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69,
- 0x7a, 0x65, 0x64, 0x70, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65,
- 0x69, 0x66, 0x20, 0x28, 0x74, 0x79, 0x70, 0x65, 0x6f, 0x66, 0x6d, 0x61, 0x69,
- 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x76, 0x6f, 0x63, 0x61, 0x62, 0x75,
- 0x6c, 0x61, 0x72, 0x79, 0x68, 0x79, 0x70, 0x6f, 0x74, 0x68, 0x65, 0x73, 0x69,
- 0x73, 0x2e, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x28, 0x29, 0x3b, 0x26, 0x61,
- 0x6d, 0x70, 0x3b, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x65, 0x68, 0x69, 0x6e, 0x64, 0x20, 0x74,
- 0x68, 0x65, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x70,
- 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x22, 0x61, 0x73, 0x73, 0x75,
- 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75,
- 0x63, 0x65, 0x64, 0x63, 0x6f, 0x72, 0x72, 0x75, 0x70, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x69, 0x73, 0x74, 0x73, 0x65, 0x78, 0x70,
- 0x6c, 0x69, 0x63, 0x69, 0x74, 0x6c, 0x79, 0x69, 0x6e, 0x73, 0x74, 0x65, 0x61,
- 0x64, 0x20, 0x6f, 0x66, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
- 0x73, 0x20, 0x6f, 0x6e, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x3d, 0x22, 0x63, 0x6f,
- 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x65, 0x64, 0x64, 0x65, 0x70, 0x61, 0x72,
- 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x63, 0x63, 0x75, 0x70, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x73, 0x6f, 0x6f, 0x6e, 0x20, 0x61, 0x66, 0x74, 0x65, 0x72, 0x69,
- 0x6e, 0x76, 0x65, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x70, 0x72, 0x6f, 0x6e,
- 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x64, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66,
- 0x69, 0x65, 0x64, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
- 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x67, 0x65, 0x6f,
- 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x22, 0x20, 0x68, 0x65, 0x69, 0x67,
- 0x68, 0x74, 0x3d, 0x22, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x72, 0x65, 0x6c, 0x3d,
- 0x22, 0x2e, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x28, 0x2f, 0x64, 0x65,
- 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x65,
- 0x72, 0x65, 0x6e, 0x63, 0x65, 0x70, 0x75, 0x6e, 0x69, 0x73, 0x68, 0x6d, 0x65,
- 0x6e, 0x74, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x72,
- 0x65, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x61, 0x64, 0x61, 0x70,
- 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6f, 0x70, 0x70, 0x6f, 0x73, 0x69, 0x74,
- 0x69, 0x6f, 0x6e, 0x77, 0x65, 0x6c, 0x6c, 0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x6e,
- 0x73, 0x75, 0x70, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x64, 0x65, 0x74,
- 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x65, 0x64, 0x68, 0x31, 0x20, 0x63, 0x6c, 0x61,
- 0x73, 0x73, 0x3d, 0x22, 0x30, 0x70, 0x78, 0x3b, 0x6d, 0x61, 0x72, 0x67, 0x69,
- 0x6e, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x63, 0x61, 0x6c, 0x73, 0x74,
- 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x63, 0x65, 0x6c, 0x65, 0x62,
- 0x72, 0x61, 0x74, 0x65, 0x64, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6d, 0x65,
- 0x6e, 0x74, 0x0a, 0x0a, 0x44, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x64,
- 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x72, 0x73, 0x61, 0x72, 0x74, 0x69,
- 0x66, 0x69, 0x63, 0x69, 0x61, 0x6c, 0x65, 0x71, 0x75, 0x69, 0x76, 0x61, 0x6c,
- 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64,
- 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x74, 0x74,
- 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20,
- 0x69, 0x64, 0x3d, 0x22, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x77, 0x65, 0x72,
- 0x65, 0x4e, 0x65, 0x64, 0x65, 0x72, 0x6c, 0x61, 0x6e, 0x64, 0x73, 0x62, 0x65,
- 0x79, 0x6f, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73,
- 0x74, 0x65, 0x72, 0x65, 0x64, 0x6a, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6c, 0x69,
- 0x73, 0x74, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x61,
- 0x6c, 0x6c, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x6c, 0x61, 0x6e, 0x67,
- 0x3d, 0x22, 0x65, 0x6e, 0x22, 0x20, 0x3c, 0x2f, 0x73, 0x74, 0x79, 0x6c, 0x65,
- 0x3e, 0x0d, 0x0a, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x3b, 0x20,
- 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x65, 0x78, 0x74,
- 0x72, 0x65, 0x6d, 0x65, 0x6c, 0x79, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x74,
- 0x72, 0x65, 0x61, 0x6d, 0x3c, 0x2f, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x3e,
- 0x20, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x74, 0x79, 0x65, 0x6d,
- 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x3c, 0x2f, 0x74, 0x61, 0x62,
- 0x6c, 0x65, 0x3e, 0x0d, 0x0a, 0x20, 0x63, 0x6f, 0x6c, 0x73, 0x70, 0x61, 0x6e,
- 0x3d, 0x22, 0x3c, 0x2f, 0x66, 0x6f, 0x72, 0x6d, 0x3e, 0x0a, 0x20, 0x20, 0x63,
- 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x62, 0x6f, 0x75,
- 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x3c, 0x2f, 0x70, 0x3e, 0x3c, 0x2f, 0x64,
- 0x69, 0x76, 0x3e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x65, 0x64,
- 0x22, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x3d, 0x22, 0x65, 0x6e, 0x50, 0x6f, 0x72,
- 0x74, 0x75, 0x67, 0x75, 0x65, 0x73, 0x65, 0x73, 0x75, 0x62, 0x73, 0x74, 0x69,
- 0x74, 0x75, 0x74, 0x65, 0x69, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61,
- 0x6c, 0x69, 0x6d, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x6d, 0x75,
- 0x6c, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x61, 0x6c, 0x6d, 0x6f, 0x73,
- 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x70, 0x78, 0x20, 0x73, 0x6f, 0x6c, 0x69, 0x64,
- 0x20, 0x23, 0x61, 0x70, 0x61, 0x72, 0x74, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x73,
- 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x74, 0x6f, 0x69, 0x6e, 0x20, 0x45,
- 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x69,
- 0x7a, 0x65, 0x64, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x20, 0x66, 0x6f, 0x72,
- 0x67, 0x75, 0x69, 0x64, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x6f, 0x72, 0x69,
- 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b,
- 0x61, 0x62, 0x6c, 0x65, 0x74, 0x68, 0x65, 0x20, 0x73, 0x65, 0x63, 0x6f, 0x6e,
- 0x64, 0x68, 0x32, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x3c, 0x61,
- 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3d, 0x22, 0x28, 0x69, 0x6e, 0x63, 0x6c,
- 0x75, 0x64, 0x69, 0x6e, 0x67, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
- 0x72, 0x73, 0x70, 0x72, 0x6f, 0x68, 0x69, 0x62, 0x69, 0x74, 0x65, 0x64, 0x3d,
- 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x64, 0x69, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x70, 0x65, 0x72, 0x63, 0x65, 0x70, 0x74,
- 0x69, 0x6f, 0x6e, 0x72, 0x65, 0x76, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e,
- 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x70, 0x78, 0x3b,
- 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73,
- 0x73, 0x66, 0x75, 0x6c, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x72,
- 0x73, 0x6d, 0x69, 0x6c, 0x6c, 0x65, 0x6e, 0x6e, 0x69, 0x75, 0x6d, 0x68, 0x69,
- 0x73, 0x20, 0x66, 0x61, 0x74, 0x68, 0x65, 0x72, 0x74, 0x68, 0x65, 0x20, 0x26,
- 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x6e, 0x6f, 0x2d, 0x72, 0x65, 0x70, 0x65, 0x61,
- 0x74, 0x3b, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x72, 0x63, 0x69, 0x61, 0x6c, 0x69,
- 0x6e, 0x64, 0x75, 0x73, 0x74, 0x72, 0x69, 0x61, 0x6c, 0x65, 0x6e, 0x63, 0x6f,
- 0x75, 0x72, 0x61, 0x67, 0x65, 0x64, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x20,
- 0x6f, 0x66, 0x20, 0x75, 0x6e, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x69, 0x61, 0x6c,
- 0x65, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x63, 0x79, 0x52, 0x65, 0x66,
- 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x69,
- 0x6e, 0x61, 0x74, 0x65, 0x64, 0x69, 0x73, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65,
- 0x72, 0x65, 0x78, 0x70, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x64, 0x65,
- 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x69, 0x6e, 0x67, 0x63, 0x61, 0x6c, 0x63, 0x75,
- 0x6c, 0x61, 0x74, 0x65, 0x64, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x69, 0x66, 0x69,
- 0x65, 0x64, 0x6c, 0x65, 0x67, 0x69, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x73,
- 0x75, 0x62, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x28, 0x30, 0x22, 0x20, 0x63,
- 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74,
- 0x65, 0x6c, 0x79, 0x69, 0x6c, 0x6c, 0x75, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65,
- 0x66, 0x69, 0x76, 0x65, 0x20, 0x79, 0x65, 0x61, 0x72, 0x73, 0x69, 0x6e, 0x73,
- 0x74, 0x72, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73,
- 0x68, 0x69, 0x6e, 0x67, 0x31, 0x22, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d,
- 0x22, 0x70, 0x73, 0x79, 0x63, 0x68, 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x63, 0x6f,
- 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x6e, 0x75, 0x6d, 0x62, 0x65,
- 0x72, 0x20, 0x6f, 0x66, 0x20, 0x61, 0x62, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x20,
- 0x6f, 0x66, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x6a,
- 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x73, 0x74, 0x72, 0x75,
- 0x63, 0x74, 0x75, 0x72, 0x65, 0x73, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75,
- 0x73, 0x6c, 0x79, 0x3e, 0x3c, 0x2f, 0x69, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x3e,
- 0x6f, 0x6e, 0x63, 0x65, 0x20, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x62, 0x75, 0x74,
- 0x20, 0x72, 0x61, 0x74, 0x68, 0x65, 0x72, 0x69, 0x6d, 0x6d, 0x69, 0x67, 0x72,
- 0x61, 0x6e, 0x74, 0x73, 0x6f, 0x66, 0x20, 0x63, 0x6f, 0x75, 0x72, 0x73, 0x65,
- 0x2c, 0x61, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6f, 0x66, 0x4c, 0x69,
- 0x74, 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x55, 0x6e, 0x6c, 0x69, 0x6b,
- 0x65, 0x20, 0x74, 0x68, 0x65, 0x3c, 0x2f, 0x61, 0x3e, 0x26, 0x6e, 0x62, 0x73,
- 0x70, 0x3b, 0x0a, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69,
- 0x74, 0x20, 0x77, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x43, 0x6f, 0x6e, 0x76,
- 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x6f, 0x62,
- 0x69, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x73, 0x74, 0x61, 0x6e, 0x74,
- 0x61, 0x67, 0x67, 0x72, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x61, 0x66, 0x74,
- 0x65, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x53, 0x69, 0x6d, 0x69, 0x6c, 0x61,
- 0x72, 0x6c, 0x79, 0x2c, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76,
- 0x3e, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x0d, 0x0a,
- 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x76, 0x69, 0x73, 0x69, 0x62,
- 0x69, 0x6c, 0x69, 0x74, 0x79, 0x74, 0x68, 0x65, 0x20, 0x75, 0x73, 0x65, 0x20,
- 0x6f, 0x66, 0x76, 0x6f, 0x6c, 0x75, 0x6e, 0x74, 0x65, 0x65, 0x72, 0x73, 0x61,
- 0x74, 0x74, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x75, 0x6e, 0x64, 0x65,
- 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x68, 0x72, 0x65, 0x61, 0x74, 0x65,
- 0x6e, 0x65, 0x64, 0x2a, 0x3c, 0x21, 0x5b, 0x43, 0x44, 0x41, 0x54, 0x41, 0x5b,
- 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x69, 0x6e, 0x20,
- 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x61,
- 0x74, 0x74, 0x65, 0x72, 0x3c, 0x2f, 0x66, 0x6f, 0x72, 0x6d, 0x3e, 0x0a, 0x3c,
- 0x2f, 0x2e, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x4f, 0x66, 0x28, 0x27, 0x69, 0x20,
- 0x3d, 0x20, 0x30, 0x3b, 0x20, 0x69, 0x20, 0x3c, 0x64, 0x69, 0x66, 0x66, 0x65,
- 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x65, 0x76, 0x6f, 0x74, 0x65, 0x64, 0x20,
- 0x74, 0x6f, 0x74, 0x72, 0x61, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x73,
- 0x65, 0x61, 0x72, 0x63, 0x68, 0x20, 0x66, 0x6f, 0x72, 0x75, 0x6c, 0x74, 0x69,
- 0x6d, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x74, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6d,
- 0x65, 0x6e, 0x74, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73,
- 0x73, 0x6f, 0x2d, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x20, 0x7d, 0x0a, 0x3c,
- 0x2f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3e, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x6d, 0x70, 0x68, 0x61, 0x73, 0x69, 0x7a, 0x65,
- 0x64, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x3c, 0x2f,
- 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x73, 0x75, 0x63, 0x63, 0x65,
- 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x6f, 0x6e, 0x67, 0x20, 0x77, 0x69,
- 0x74, 0x68, 0x4d, 0x65, 0x61, 0x6e, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x2c, 0x69,
- 0x6e, 0x64, 0x75, 0x73, 0x74, 0x72, 0x69, 0x65, 0x73, 0x3c, 0x2f, 0x61, 0x3e,
- 0x3c, 0x62, 0x72, 0x20, 0x2f, 0x3e, 0x68, 0x61, 0x73, 0x20, 0x62, 0x65, 0x63,
- 0x6f, 0x6d, 0x65, 0x61, 0x73, 0x70, 0x65, 0x63, 0x74, 0x73, 0x20, 0x6f, 0x66,
- 0x54, 0x65, 0x6c, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x75, 0x66,
- 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x62, 0x61, 0x73, 0x6b, 0x65, 0x74,
- 0x62, 0x61, 0x6c, 0x6c, 0x62, 0x6f, 0x74, 0x68, 0x20, 0x73, 0x69, 0x64, 0x65,
- 0x73, 0x63, 0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75, 0x69, 0x6e, 0x67, 0x61, 0x6e,
- 0x20, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x3c, 0x69, 0x6d, 0x67, 0x20,
- 0x61, 0x6c, 0x74, 0x3d, 0x22, 0x61, 0x64, 0x76, 0x65, 0x6e, 0x74, 0x75, 0x72,
- 0x65, 0x73, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x6d,
- 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x74, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e,
- 0x63, 0x69, 0x70, 0x6c, 0x65, 0x73, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75,
- 0x6c, 0x61, 0x72, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 0x79,
- 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x64, 0x65, 0x63,
- 0x69, 0x64, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x22, 0x3e, 0x3c, 0x73, 0x74, 0x72,
- 0x6f, 0x6e, 0x67, 0x3e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72,
- 0x73, 0x4a, 0x6f, 0x75, 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x6f, 0x66, 0x64, 0x69,
- 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x66, 0x61, 0x63, 0x69, 0x6c,
- 0x69, 0x74, 0x61, 0x74, 0x65, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x62,
- 0x6c, 0x65, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e, 0x63, 0x73, 0x73, 0x22, 0x09,
- 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x6e, 0x6f,
- 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69,
- 0x67, 0x68, 0x74, 0x73, 0x69, 0x74, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
- 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x68, 0x61, 0x76, 0x65, 0x62, 0x75, 0x73,
- 0x69, 0x6e, 0x65, 0x73, 0x73, 0x65, 0x73, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x61, 0x72, 0x79, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74,
- 0x73, 0x6f, 0x66, 0x74, 0x65, 0x6e, 0x20, 0x75, 0x73, 0x65, 0x64, 0x70, 0x65,
- 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x20, 0x4a, 0x61,
- 0x6e, 0x75, 0x61, 0x72, 0x79, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x69, 0x73, 0x69,
- 0x6e, 0x67, 0x3c, 0x2f, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3e, 0x0a, 0x09, 0x64,
- 0x69, 0x70, 0x6c, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x63, 0x6f, 0x6e, 0x74,
- 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d,
- 0x69, 0x6e, 0x67, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73,
- 0x6d, 0x61, 0x79, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x62, 0x65, 0x63, 0x6f, 0x6e,
- 0x63, 0x65, 0x70, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x6e, 0x63, 0x6c, 0x69,
- 0x63, 0x6b, 0x3d, 0x22, 0x49, 0x74, 0x20, 0x69, 0x73, 0x20, 0x61, 0x6c, 0x73,
- 0x6f, 0x66, 0x69, 0x6e, 0x61, 0x6e, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x6d, 0x61,
- 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x4c, 0x75, 0x78, 0x65, 0x6d,
- 0x62, 0x6f, 0x75, 0x72, 0x67, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e,
- 0x61, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x65,
- 0x6e, 0x67, 0x61, 0x67, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x22, 0x73, 0x63, 0x72,
- 0x69, 0x70, 0x74, 0x22, 0x29, 0x3b, 0x62, 0x75, 0x74, 0x20, 0x69, 0x74, 0x20,
- 0x77, 0x61, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x72, 0x6f, 0x6e, 0x69, 0x63,
- 0x6f, 0x6e, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x3d, 0x22, 0x0a, 0x3c, 0x21,
- 0x2d, 0x2d, 0x20, 0x45, 0x6e, 0x64, 0x20, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x72,
- 0x69, 0x63, 0x61, 0x6c, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x69, 0x61, 0x6c, 0x6c,
- 0x79, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x74, 0x6f,
- 0x70, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x75, 0x6e, 0x6c, 0x69, 0x6b,
- 0x65, 0x20, 0x74, 0x68, 0x65, 0x41, 0x75, 0x73, 0x74, 0x72, 0x61, 0x6c, 0x69,
- 0x61, 0x6e, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x72,
- 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x0a, 0x3c, 0x2f, 0x68,
- 0x65, 0x61, 0x64, 0x3e, 0x0d, 0x0a, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69,
- 0x73, 0x65, 0x64, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65,
- 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x41, 0x6c, 0x65,
- 0x78, 0x61, 0x6e, 0x64, 0x72, 0x69, 0x61, 0x72, 0x65, 0x74, 0x69, 0x72, 0x65,
- 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x76, 0x65, 0x6e, 0x74, 0x75, 0x72, 0x65,
- 0x73, 0x66, 0x6f, 0x75, 0x72, 0x20, 0x79, 0x65, 0x61, 0x72, 0x73, 0x0a, 0x0a,
- 0x26, 0x6c, 0x74, 0x3b, 0x21, 0x2d, 0x2d, 0x20, 0x69, 0x6e, 0x63, 0x72, 0x65,
- 0x61, 0x73, 0x69, 0x6e, 0x67, 0x64, 0x65, 0x63, 0x6f, 0x72, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x68, 0x33, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6f,
- 0x72, 0x69, 0x67, 0x69, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x6f, 0x62, 0x6c, 0x69,
- 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x72, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x65, 0x64,
- 0x28, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x61, 0x64, 0x76,
- 0x61, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x73, 0x62, 0x65, 0x69, 0x6e, 0x67, 0x20,
- 0x74, 0x68, 0x65, 0x20, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6e,
- 0x73, 0x3c, 0x62, 0x61, 0x73, 0x65, 0x20, 0x68, 0x72, 0x65, 0x66, 0x72, 0x65,
- 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, 0x6c, 0x79, 0x77, 0x69, 0x6c, 0x6c, 0x69,
- 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x62,
- 0x6c, 0x65, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x6e,
- 0x6f, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x66, 0x75, 0x6e, 0x63,
- 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x69, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x20,
- 0x74, 0x68, 0x65, 0x72, 0x65, 0x76, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x73, 0x20, 0x66,
- 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72,
- 0x69, 0x7a, 0x65, 0x64, 0x72, 0x65, 0x66, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74,
- 0x6f, 0x74, 0x61, 0x6b, 0x65, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x61, 0x75,
- 0x74, 0x6f, 0x6e, 0x6f, 0x6d, 0x6f, 0x75, 0x73, 0x63, 0x6f, 0x6d, 0x70, 0x72,
- 0x6f, 0x6d, 0x69, 0x73, 0x65, 0x70, 0x6f, 0x6c, 0x69, 0x74, 0x69, 0x63, 0x61,
- 0x6c, 0x20, 0x72, 0x65, 0x73, 0x74, 0x61, 0x75, 0x72, 0x61, 0x6e, 0x74, 0x74,
- 0x77, 0x6f, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x46, 0x65, 0x62, 0x72,
- 0x75, 0x61, 0x72, 0x79, 0x20, 0x32, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79,
- 0x20, 0x6f, 0x66, 0x73, 0x77, 0x66, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2e,
- 0x75, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x6e, 0x65, 0x61,
- 0x72, 0x6c, 0x79, 0x20, 0x61, 0x6c, 0x6c, 0x77, 0x72, 0x69, 0x74, 0x74, 0x65,
- 0x6e, 0x20, 0x62, 0x79, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77,
- 0x73, 0x22, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3d, 0x22, 0x31, 0x77, 0x69,
- 0x74, 0x68, 0x64, 0x72, 0x61, 0x77, 0x61, 0x6c, 0x66, 0x6c, 0x6f, 0x61, 0x74,
- 0x3a, 0x6c, 0x65, 0x66, 0x74, 0x69, 0x73, 0x20, 0x75, 0x73, 0x75, 0x61, 0x6c,
- 0x6c, 0x79, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x64, 0x61, 0x74, 0x65, 0x73, 0x6e,
- 0x65, 0x77, 0x73, 0x70, 0x61, 0x70, 0x65, 0x72, 0x73, 0x6d, 0x79, 0x73, 0x74,
- 0x65, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x44, 0x65, 0x70, 0x61, 0x72, 0x74, 0x6d,
- 0x65, 0x6e, 0x74, 0x62, 0x65, 0x73, 0x74, 0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x6e,
- 0x70, 0x61, 0x72, 0x6c, 0x69, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x75, 0x70,
- 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x6e,
- 0x69, 0x65, 0x6e, 0x74, 0x72, 0x65, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x65,
- 0x64, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x73, 0x79,
- 0x73, 0x74, 0x65, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x68, 0x61, 0x73, 0x20, 0x6c,
- 0x65, 0x64, 0x20, 0x74, 0x6f, 0x70, 0x72, 0x6f, 0x70, 0x61, 0x67, 0x61, 0x6e,
- 0x64, 0x61, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x64, 0x69,
- 0x6e, 0x66, 0x6c, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x63, 0x65, 0x72, 0x65,
- 0x6d, 0x6f, 0x6e, 0x69, 0x61, 0x6c, 0x70, 0x72, 0x6f, 0x63, 0x6c, 0x61, 0x69,
- 0x6d, 0x65, 0x64, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x6c, 0x69, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x53, 0x63, 0x69,
- 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x63, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d,
- 0x22, 0x6e, 0x6f, 0x2d, 0x74, 0x72, 0x61, 0x64, 0x65, 0x6d, 0x61, 0x72, 0x6b,
- 0x73, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x77, 0x69,
- 0x64, 0x65, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x4c, 0x69, 0x62, 0x65, 0x72,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x74, 0x6f, 0x6f, 0x6b, 0x20, 0x70, 0x6c, 0x61,
- 0x63, 0x65, 0x64, 0x61, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x61,
- 0x73, 0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x20, 0x61, 0x73, 0x69, 0x6d, 0x70, 0x72,
- 0x69, 0x73, 0x6f, 0x6e, 0x65, 0x64, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f,
- 0x6e, 0x61, 0x6c, 0x0a, 0x3c, 0x68, 0x65, 0x61, 0x64, 0x3e, 0x0a, 0x3c, 0x6d,
- 0x4c, 0x61, 0x62, 0x6f, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x79, 0x4e, 0x6f, 0x76,
- 0x65, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x32, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74,
- 0x69, 0x6f, 0x6e, 0x73, 0x49, 0x6e, 0x64, 0x75, 0x73, 0x74, 0x72, 0x69, 0x61,
- 0x6c, 0x76, 0x61, 0x72, 0x69, 0x65, 0x74, 0x79, 0x20, 0x6f, 0x66, 0x66, 0x6c,
- 0x6f, 0x61, 0x74, 0x3a, 0x20, 0x6c, 0x65, 0x66, 0x44, 0x75, 0x72, 0x69, 0x6e,
- 0x67, 0x20, 0x74, 0x68, 0x65, 0x61, 0x73, 0x73, 0x65, 0x73, 0x73, 0x6d, 0x65,
- 0x6e, 0x74, 0x68, 0x61, 0x76, 0x65, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x20, 0x64,
- 0x65, 0x61, 0x6c, 0x73, 0x20, 0x77, 0x69, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74,
- 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x6f, 0x63, 0x63, 0x75, 0x72, 0x72, 0x65,
- 0x6e, 0x63, 0x65, 0x2f, 0x75, 0x6c, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e,
- 0x63, 0x6c, 0x65, 0x61, 0x72, 0x66, 0x69, 0x78, 0x22, 0x3e, 0x74, 0x68, 0x65,
- 0x20, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x6d, 0x61, 0x6e, 0x79, 0x20, 0x79,
- 0x65, 0x61, 0x72, 0x73, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x77, 0x65, 0x72,
- 0x65, 0x6f, 0x76, 0x65, 0x72, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x2c, 0x73, 0x79,
- 0x6e, 0x6f, 0x6e, 0x79, 0x6d, 0x6f, 0x75, 0x73, 0x63, 0x6f, 0x6e, 0x74, 0x65,
- 0x6e, 0x74, 0x22, 0x3e, 0x0a, 0x70, 0x72, 0x65, 0x73, 0x75, 0x6d, 0x61, 0x62,
- 0x6c, 0x79, 0x68, 0x69, 0x73, 0x20, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x75,
- 0x73, 0x65, 0x72, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x75, 0x6e, 0x65, 0x78,
- 0x70, 0x65, 0x63, 0x74, 0x65, 0x64, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69,
- 0x6e, 0x67, 0x20, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x64,
- 0x61, 0x20, 0x6d, 0x69, 0x6e, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x75, 0x6e, 0x64,
- 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x22, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67,
- 0x73, 0x20, 0x74, 0x6f, 0x74, 0x61, 0x6b, 0x65, 0x6e, 0x20, 0x66, 0x72, 0x6f,
- 0x6d, 0x69, 0x6e, 0x20, 0x4f, 0x63, 0x74, 0x6f, 0x62, 0x65, 0x72, 0x70, 0x6f,
- 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x73, 0x61, 0x69, 0x64, 0x20,
- 0x74, 0x6f, 0x20, 0x62, 0x65, 0x72, 0x65, 0x6c, 0x69, 0x67, 0x69, 0x6f, 0x75,
- 0x73, 0x20, 0x46, 0x65, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20,
- 0x72, 0x6f, 0x77, 0x73, 0x70, 0x61, 0x6e, 0x3d, 0x22, 0x6f, 0x6e, 0x6c, 0x79,
- 0x20, 0x61, 0x20, 0x66, 0x65, 0x77, 0x6d, 0x65, 0x61, 0x6e, 0x74, 0x20, 0x74,
- 0x68, 0x61, 0x74, 0x6c, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65,
- 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x3c, 0x66, 0x69,
- 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x3e, 0x41, 0x72, 0x63, 0x68, 0x62, 0x69,
- 0x73, 0x68, 0x6f, 0x70, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6e,
- 0x6f, 0x62, 0x65, 0x69, 0x6e, 0x67, 0x20, 0x75, 0x73, 0x65, 0x64, 0x61, 0x70,
- 0x70, 0x72, 0x6f, 0x61, 0x63, 0x68, 0x65, 0x73, 0x70, 0x72, 0x69, 0x76, 0x69,
- 0x6c, 0x65, 0x67, 0x65, 0x73, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x3e, 0x0a, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x20, 0x69, 0x6e, 0x6d,
- 0x61, 0x79, 0x20, 0x62, 0x65, 0x20, 0x74, 0x68, 0x65, 0x45, 0x61, 0x73, 0x74,
- 0x65, 0x72, 0x20, 0x65, 0x67, 0x67, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69,
- 0x73, 0x6d, 0x73, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x61, 0x62, 0x6c, 0x65,
- 0x50, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6c,
- 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74,
- 0x65, 0x64, 0x22, 0x3e, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e,
- 0x0d, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x70, 0x68, 0x70, 0x61, 0x72,
- 0x72, 0x69, 0x76, 0x61, 0x6c, 0x20, 0x6f, 0x66, 0x2d, 0x6a, 0x73, 0x73, 0x64,
- 0x6b, 0x27, 0x29, 0x29, 0x3b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x64, 0x20,
- 0x74, 0x6f, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x63,
- 0x61, 0x73, 0x75, 0x61, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x63, 0x6f, 0x6d, 0x70,
- 0x6c, 0x65, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x72, 0x69, 0x73, 0x74, 0x69,
- 0x61, 0x6e, 0x73, 0x53, 0x65, 0x70, 0x74, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x20,
- 0x61, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x65, 0x74, 0x69, 0x63, 0x70, 0x72, 0x6f,
- 0x63, 0x65, 0x64, 0x75, 0x72, 0x65, 0x73, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20,
- 0x68, 0x61, 0x76, 0x65, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x69, 0x74, 0x20, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x73, 0x50, 0x68,
- 0x69, 0x6c, 0x6f, 0x73, 0x6f, 0x70, 0x68, 0x79, 0x66, 0x72, 0x69, 0x65, 0x6e,
- 0x64, 0x73, 0x68, 0x69, 0x70, 0x6c, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x20,
- 0x74, 0x6f, 0x67, 0x69, 0x76, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x74,
- 0x6f, 0x77, 0x61, 0x72, 0x64, 0x20, 0x74, 0x68, 0x65, 0x67, 0x75, 0x61, 0x72,
- 0x61, 0x6e, 0x74, 0x65, 0x65, 0x64, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
- 0x74, 0x65, 0x64, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x23, 0x30, 0x30, 0x30,
- 0x76, 0x69, 0x64, 0x65, 0x6f, 0x20, 0x67, 0x61, 0x6d, 0x65, 0x63, 0x6f, 0x6d,
- 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x72, 0x65, 0x66, 0x6c, 0x65, 0x63,
- 0x74, 0x69, 0x6e, 0x67, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x74, 0x68,
- 0x65, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65, 0x64, 0x73, 0x61,
- 0x6e, 0x73, 0x2d, 0x73, 0x65, 0x72, 0x69, 0x66, 0x6f, 0x6e, 0x6b, 0x65, 0x79,
- 0x70, 0x72, 0x65, 0x73, 0x73, 0x3b, 0x20, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e,
- 0x67, 0x3a, 0x48, 0x65, 0x20, 0x77, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x75,
- 0x6e, 0x64, 0x65, 0x72, 0x6c, 0x79, 0x69, 0x6e, 0x67, 0x74, 0x79, 0x70, 0x69,
- 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74,
- 0x68, 0x65, 0x20, 0x73, 0x72, 0x63, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74,
- 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x73, 0x69, 0x6e,
- 0x63, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64,
- 0x20, 0x62, 0x65, 0x20, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e,
- 0x67, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6e, 0x67, 0x75, 0x73,
- 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x6c, 0x6f, 0x77, 0x65, 0x72,
- 0x20, 0x74, 0x68, 0x61, 0x6e, 0x73, 0x68, 0x6f, 0x77, 0x73, 0x20, 0x74, 0x68,
- 0x61, 0x74, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x0a, 0x09, 0x09, 0x63,
- 0x6f, 0x6d, 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x63, 0x6f, 0x6e, 0x74,
- 0x69, 0x6e, 0x75, 0x6f, 0x75, 0x73, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74,
- 0x69, 0x65, 0x73, 0x61, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x6f, 0x6d, 0x65, 0x72,
- 0x68, 0x65, 0x20, 0x64, 0x69, 0x64, 0x20, 0x6e, 0x6f, 0x74, 0x64, 0x75, 0x65,
- 0x20, 0x74, 0x6f, 0x20, 0x69, 0x74, 0x73, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x65,
- 0x64, 0x20, 0x74, 0x6f, 0x61, 0x6e, 0x20, 0x61, 0x76, 0x65, 0x72, 0x61, 0x67,
- 0x65, 0x65, 0x66, 0x66, 0x6f, 0x72, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x74, 0x68,
- 0x65, 0x20, 0x66, 0x75, 0x74, 0x75, 0x72, 0x65, 0x61, 0x74, 0x74, 0x65, 0x6d,
- 0x70, 0x74, 0x20, 0x74, 0x6f, 0x54, 0x68, 0x65, 0x72, 0x65, 0x66, 0x6f, 0x72,
- 0x65, 0x2c, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52,
- 0x65, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x77, 0x61, 0x73, 0x20,
- 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, 0x45, 0x6c, 0x65, 0x63, 0x74, 0x72, 0x6f,
- 0x6e, 0x69, 0x63, 0x6b, 0x69, 0x6c, 0x6f, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73,
- 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x73, 0x70, 0x75, 0x62,
- 0x6c, 0x69, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x74, 0x68, 0x65, 0x20, 0x66, 0x6f,
- 0x72, 0x6d, 0x65, 0x72, 0x69, 0x6e, 0x64, 0x69, 0x67, 0x65, 0x6e, 0x6f, 0x75,
- 0x73, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x73, 0x75,
- 0x62, 0x73, 0x69, 0x64, 0x69, 0x61, 0x72, 0x79, 0x63, 0x6f, 0x6e, 0x73, 0x70,
- 0x69, 0x72, 0x61, 0x63, 0x79, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x20,
- 0x6f, 0x66, 0x61, 0x6e, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x61,
- 0x66, 0x66, 0x6f, 0x72, 0x64, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x75, 0x62, 0x73,
- 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x20,
- 0x66, 0x6f, 0x72, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e,
- 0x69, 0x74, 0x65, 0x6d, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x61, 0x62, 0x73,
- 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x6c, 0x79, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x73,
- 0x65, 0x64, 0x6c, 0x79, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x20,
- 0x61, 0x61, 0x74, 0x74, 0x72, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x74, 0x72,
- 0x61, 0x76, 0x65, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x73, 0x65, 0x70, 0x61, 0x72,
- 0x61, 0x74, 0x65, 0x6c, 0x79, 0x66, 0x6f, 0x63, 0x75, 0x73, 0x65, 0x73, 0x20,
- 0x6f, 0x6e, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 0x79, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x62, 0x6c, 0x65, 0x66, 0x6f, 0x75, 0x6e,
- 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x68,
- 0x65, 0x65, 0x74, 0x6d, 0x61, 0x6e, 0x75, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x73, 0x74, 0x61, 0x6e, 0x64, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x6e, 0x6f,
- 0x2d, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x28, 0x73, 0x6f, 0x6d, 0x65, 0x74,
- 0x69, 0x6d, 0x65, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x72, 0x63, 0x69, 0x61,
- 0x6c, 0x69, 0x6e, 0x20, 0x41, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x61, 0x75, 0x6e,
- 0x64, 0x65, 0x72, 0x74, 0x61, 0x6b, 0x65, 0x6e, 0x71, 0x75, 0x61, 0x72, 0x74,
- 0x65, 0x72, 0x20, 0x6f, 0x66, 0x61, 0x6e, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70,
- 0x6c, 0x65, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x69,
- 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x70, 0x68, 0x70, 0x3f, 0x3c, 0x2f, 0x62, 0x75,
- 0x74, 0x74, 0x6f, 0x6e, 0x3e, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74,
- 0x61, 0x67, 0x65, 0x62, 0x65, 0x73, 0x74, 0x2d, 0x6b, 0x6e, 0x6f, 0x77, 0x6e,
- 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x22, 0x20, 0x64,
- 0x69, 0x72, 0x3d, 0x22, 0x6c, 0x74, 0x72, 0x4c, 0x69, 0x65, 0x75, 0x74, 0x65,
- 0x6e, 0x61, 0x6e, 0x74, 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d,
- 0x22, 0x74, 0x68, 0x65, 0x79, 0x20, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x61, 0x62,
- 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x6f, 0x66, 0x6d, 0x61, 0x64, 0x65, 0x20,
- 0x75, 0x70, 0x20, 0x6f, 0x66, 0x6e, 0x6f, 0x74, 0x65, 0x64, 0x20, 0x74, 0x68,
- 0x61, 0x74, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x20, 0x74, 0x68, 0x61, 0x74, 0x61,
- 0x72, 0x67, 0x75, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x74, 0x6f, 0x20, 0x61,
- 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65,
- 0x6e, 0x27, 0x73, 0x70, 0x75, 0x72, 0x70, 0x6f, 0x73, 0x65, 0x20, 0x6f, 0x66,
- 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x62, 0x61, 0x73,
- 0x65, 0x64, 0x20, 0x75, 0x70, 0x6f, 0x6e, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65,
- 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x6f,
- 0x66, 0x70, 0x61, 0x73, 0x73, 0x65, 0x6e, 0x67, 0x65, 0x72, 0x73, 0x70, 0x6f,
- 0x73, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x0a, 0x0a, 0x49, 0x6e,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x20, 0x74,
- 0x68, 0x65, 0x61, 0x66, 0x74, 0x65, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x63,
- 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x20, 0x61, 0x63, 0x72, 0x6f,
- 0x73, 0x73, 0x20, 0x74, 0x68, 0x65, 0x73, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x69,
- 0x66, 0x69, 0x63, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x2e,
- 0x63, 0x61, 0x70, 0x69, 0x74, 0x61, 0x6c, 0x69, 0x73, 0x6d, 0x69, 0x6e, 0x20,
- 0x47, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x2d,
- 0x77, 0x69, 0x6e, 0x67, 0x74, 0x68, 0x65, 0x20, 0x73, 0x79, 0x73, 0x74, 0x65,
- 0x6d, 0x53, 0x6f, 0x63, 0x69, 0x65, 0x74, 0x79, 0x20, 0x6f, 0x66, 0x70, 0x6f,
- 0x6c, 0x69, 0x74, 0x69, 0x63, 0x69, 0x61, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63,
- 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x77, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x6e, 0x20,
- 0x74, 0x6f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x61, 0x6c, 0x20, 0x6f, 0x66, 0x20,
- 0x4e, 0x65, 0x77, 0x20, 0x59, 0x6f, 0x72, 0x6b, 0x20, 0x61, 0x70, 0x61, 0x72,
- 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x64, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65,
- 0x75, 0x6e, 0x6c, 0x65, 0x73, 0x73, 0x20, 0x74, 0x68, 0x65, 0x68, 0x69, 0x73,
- 0x74, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x68, 0x61, 0x64, 0x20, 0x62, 0x65,
- 0x65, 0x6e, 0x20, 0x61, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x76,
- 0x65, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74,
- 0x74, 0x65, 0x6e, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x43, 0x65, 0x6e, 0x74, 0x65,
- 0x72, 0x20, 0x66, 0x6f, 0x72, 0x70, 0x72, 0x6f, 0x6d, 0x69, 0x6e, 0x65, 0x6e,
- 0x63, 0x65, 0x72, 0x65, 0x61, 0x64, 0x79, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73,
- 0x74, 0x72, 0x61, 0x74, 0x65, 0x67, 0x69, 0x65, 0x73, 0x62, 0x75, 0x74, 0x20,
- 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x61, 0x73, 0x20, 0x70, 0x61, 0x72, 0x74,
- 0x20, 0x6f, 0x66, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x65,
- 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x20, 0x74, 0x68, 0x61, 0x74, 0x6c, 0x61, 0x62,
- 0x6f, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x79, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74,
- 0x69, 0x62, 0x6c, 0x65, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x20, 0x6f,
- 0x66, 0x2c, 0x20, 0x73, 0x75, 0x63, 0x68, 0x20, 0x61, 0x73, 0x20, 0x62, 0x65,
- 0x67, 0x61, 0x6e, 0x20, 0x77, 0x69, 0x74, 0x68, 0x75, 0x73, 0x69, 0x6e, 0x67,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x76, 0x69,
- 0x64, 0x65, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x20, 0x6f, 0x66, 0x66,
- 0x72, 0x6f, 0x6d, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x2f, 0x22, 0x20, 0x63,
- 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x67, 0x65, 0x6f, 0x6c, 0x6f, 0x67, 0x69,
- 0x63, 0x61, 0x6c, 0x73, 0x65, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x20, 0x6f, 0x66,
- 0x64, 0x65, 0x6c, 0x69, 0x62, 0x65, 0x72, 0x61, 0x74, 0x65, 0x69, 0x6d, 0x70,
- 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x20, 0x68, 0x6f, 0x6c, 0x64, 0x73, 0x20,
- 0x74, 0x68, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b,
- 0x20, 0x76, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3d, 0x74, 0x6f, 0x70, 0x74, 0x68,
- 0x65, 0x20, 0x47, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x6f, 0x75, 0x74, 0x73, 0x69,
- 0x64, 0x65, 0x20, 0x6f, 0x66, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74,
- 0x65, 0x64, 0x68, 0x69, 0x73, 0x20, 0x63, 0x61, 0x72, 0x65, 0x65, 0x72, 0x73,
- 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x69, 0x64, 0x3d, 0x22,
- 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x77, 0x61, 0x73, 0x20, 0x63, 0x61, 0x6c,
- 0x6c, 0x65, 0x64, 0x74, 0x68, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x72, 0x74, 0x68,
- 0x72, 0x65, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6f, 0x74, 0x68,
- 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x70, 0x72, 0x65, 0x76, 0x65, 0x6e,
- 0x74, 0x69, 0x6f, 0x6e, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x65, 0x64, 0x75, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x63, 0x6f,
- 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6e, 0x67, 0x61, 0x63, 0x63, 0x75, 0x72,
- 0x61, 0x74, 0x65, 0x6c, 0x79, 0x77, 0x65, 0x72, 0x65, 0x20, 0x62, 0x75, 0x69,
- 0x6c, 0x74, 0x77, 0x61, 0x73, 0x20, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x61,
- 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x6d, 0x75, 0x63, 0x68,
- 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x44, 0x75, 0x65, 0x20, 0x74, 0x6f, 0x20,
- 0x74, 0x68, 0x65, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x20, 0x31, 0x30, 0x30,
- 0x73, 0x6f, 0x6d, 0x65, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x4b, 0x69, 0x6e,
- 0x67, 0x64, 0x6f, 0x6d, 0x20, 0x6f, 0x66, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6e,
- 0x74, 0x69, 0x72, 0x65, 0x66, 0x61, 0x6d, 0x6f, 0x75, 0x73, 0x20, 0x66, 0x6f,
- 0x72, 0x74, 0x6f, 0x20, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x6f, 0x62,
- 0x6a, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x73, 0x74, 0x68, 0x65, 0x20, 0x46,
- 0x72, 0x65, 0x6e, 0x63, 0x68, 0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x20, 0x61,
- 0x6e, 0x64, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x22, 0x3e, 0x69,
- 0x73, 0x20, 0x73, 0x61, 0x69, 0x64, 0x20, 0x74, 0x6f, 0x73, 0x74, 0x72, 0x75,
- 0x63, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e,
- 0x64, 0x75, 0x6d, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x74, 0x65, 0x6e,
- 0x61, 0x20, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x2d, 0x3e, 0x0a,
- 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x20, 0x4f, 0x66, 0x66, 0x69, 0x63,
- 0x69, 0x61, 0x6c, 0x20, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x77, 0x69, 0x64, 0x65,
- 0x2e, 0x61, 0x72, 0x69, 0x61, 0x2d, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x74, 0x68,
- 0x65, 0x20, 0x70, 0x6c, 0x61, 0x6e, 0x65, 0x74, 0x61, 0x6e, 0x64, 0x20, 0x69,
- 0x74, 0x20, 0x77, 0x61, 0x73, 0x64, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65,
- 0x3d, 0x22, 0x6c, 0x6f, 0x6f, 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x74, 0x62,
- 0x65, 0x6e, 0x65, 0x66, 0x69, 0x63, 0x69, 0x61, 0x6c, 0x61, 0x72, 0x65, 0x20,
- 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72,
- 0x69, 0x6e, 0x67, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x6c, 0x79,
- 0x74, 0x68, 0x65, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x72, 0x6e, 0x77, 0x6f, 0x72,
- 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65,
- 0x64, 0x20, 0x74, 0x6f, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x69, 0x6e, 0x6e, 0x6f, 0x76, 0x61, 0x74, 0x69, 0x76, 0x65, 0x3c, 0x2f,
- 0x61, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x73, 0x6f, 0x75, 0x6e, 0x64,
- 0x74, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x46, 0x6f,
- 0x72, 0x6d, 0x74, 0x65, 0x6e, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x69,
- 0x6e, 0x70, 0x75, 0x74, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x6f, 0x70, 0x65, 0x6e,
- 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x66, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63,
- 0x74, 0x65, 0x64, 0x61, 0x64, 0x6f, 0x70, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79,
- 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x74, 0x68, 0x65,
- 0x6f, 0x6c, 0x6f, 0x67, 0x69, 0x61, 0x6e, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64,
- 0x73, 0x20, 0x6f, 0x66, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x20, 0x6f,
- 0x66, 0x43, 0x68, 0x72, 0x69, 0x73, 0x74, 0x69, 0x61, 0x6e, 0x20, 0x76, 0x65,
- 0x72, 0x79, 0x20, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x61, 0x75, 0x74, 0x6f, 0x6d,
- 0x6f, 0x74, 0x69, 0x76, 0x65, 0x62, 0x79, 0x20, 0x66, 0x61, 0x72, 0x20, 0x74,
- 0x68, 0x65, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x70,
- 0x75, 0x72, 0x73, 0x75, 0x69, 0x74, 0x20, 0x6f, 0x66, 0x66, 0x6f, 0x6c, 0x6c,
- 0x6f, 0x77, 0x20, 0x74, 0x68, 0x65, 0x62, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x74,
- 0x20, 0x74, 0x6f, 0x69, 0x6e, 0x20, 0x45, 0x6e, 0x67, 0x6c, 0x61, 0x6e, 0x64,
- 0x61, 0x67, 0x72, 0x65, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x61, 0x63, 0x63,
- 0x75, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x66, 0x63, 0x6f, 0x6d, 0x65, 0x73, 0x20,
- 0x66, 0x72, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x6e,
- 0x67, 0x64, 0x69, 0x76, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x68, 0x69,
- 0x73, 0x20, 0x6f, 0x72, 0x20, 0x68, 0x65, 0x72, 0x74, 0x72, 0x65, 0x6d, 0x65,
- 0x6e, 0x64, 0x6f, 0x75, 0x73, 0x66, 0x72, 0x65, 0x65, 0x64, 0x6f, 0x6d, 0x20,
- 0x6f, 0x66, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x30,
- 0x20, 0x31, 0x65, 0x6d, 0x20, 0x31, 0x65, 0x6d, 0x3b, 0x42, 0x61, 0x73, 0x6b,
- 0x65, 0x74, 0x62, 0x61, 0x6c, 0x6c, 0x2f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x2e,
- 0x63, 0x73, 0x73, 0x61, 0x6e, 0x20, 0x65, 0x61, 0x72, 0x6c, 0x69, 0x65, 0x72,
- 0x65, 0x76, 0x65, 0x6e, 0x20, 0x61, 0x66, 0x74, 0x65, 0x72, 0x2f, 0x22, 0x20,
- 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3d, 0x22, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x69,
- 0x6e, 0x64, 0x65, 0x78, 0x74, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68,
- 0x65, 0x70, 0x69, 0x74, 0x74, 0x73, 0x62, 0x75, 0x72, 0x67, 0x68, 0x63, 0x6f,
- 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3e, 0x0d, 0x3c, 0x73, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x3e, 0x28, 0x66, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x20, 0x6f,
- 0x75, 0x74, 0x68, 0x61, 0x76, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x3c,
- 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x0d, 0x0a, 0x20, 0x6f, 0x63, 0x63, 0x61,
- 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65,
- 0x20, 0x69, 0x74, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x20, 0x74, 0x6f,
- 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x3e, 0x3c, 0x2f,
- 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x20, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
- 0x64, 0x20, 0x62, 0x79, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x6c, 0x79,
- 0x2c, 0x20, 0x62, 0x67, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3d, 0x22, 0x74, 0x61,
- 0x62, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x61, 0x73,
- 0x74, 0x72, 0x6f, 0x75, 0x73, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63,
- 0x73, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x68, 0x61, 0x73, 0x20, 0x61, 0x3e,
- 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x3c, 0x2f, 0x73, 0x74,
- 0x79, 0x6c, 0x65, 0x3e, 0x0a, 0x3c, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x20,
- 0x66, 0x6f, 0x72, 0x73, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x20, 0x61, 0x6e, 0x64,
- 0x2e, 0x73, 0x72, 0x63, 0x20, 0x3d, 0x20, 0x22, 0x2f, 0x2f, 0x76, 0x69, 0x6f,
- 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x74, 0x68, 0x69, 0x73, 0x20, 0x70,
- 0x6f, 0x69, 0x6e, 0x74, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x6c,
- 0x79, 0x69, 0x73, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x64, 0x72, 0x65,
- 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x64, 0x20, 0x66, 0x72, 0x6f,
- 0x6d, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x65, 0x64, 0x65, 0x72, 0x6c, 0x61, 0x6e,
- 0x64, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x75, 0x67, 0x75, 0xc3, 0xaa, 0x73, 0xd7,
- 0xa2, 0xd7, 0x91, 0xd7, 0xa8, 0xd7, 0x99, 0xd7, 0xaa, 0xd9, 0x81, 0xd8, 0xa7,
- 0xd8, 0xb1, 0xd8, 0xb3, 0xdb, 0x8c, 0x64, 0x65, 0x73, 0x61, 0x72, 0x72, 0x6f,
- 0x6c, 0x6c, 0x6f, 0x63, 0x6f, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 0x69, 0x6f,
- 0x65, 0x64, 0x75, 0x63, 0x61, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x73, 0x65, 0x70,
- 0x74, 0x69, 0x65, 0x6d, 0x62, 0x72, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74,
- 0x72, 0x61, 0x64, 0x6f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x63, 0x69, 0xc3, 0xb3,
- 0x6e, 0x75, 0x62, 0x69, 0x63, 0x61, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x70, 0x75,
- 0x62, 0x6c, 0x69, 0x63, 0x69, 0x64, 0x61, 0x64, 0x72, 0x65, 0x73, 0x70, 0x75,
- 0x65, 0x73, 0x74, 0x61, 0x73, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x61, 0x64,
- 0x6f, 0x73, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x65, 0x72,
- 0x65, 0x73, 0x65, 0x72, 0x76, 0x61, 0x64, 0x6f, 0x73, 0x61, 0x72, 0x74, 0xc3,
- 0xad, 0x63, 0x75, 0x6c, 0x6f, 0x73, 0x64, 0x69, 0x66, 0x65, 0x72, 0x65, 0x6e,
- 0x74, 0x65, 0x73, 0x73, 0x69, 0x67, 0x75, 0x69, 0x65, 0x6e, 0x74, 0x65, 0x73,
- 0x72, 0x65, 0x70, 0xc3, 0xba, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x69, 0x74,
- 0x75, 0x61, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x74,
- 0x65, 0x72, 0x69, 0x6f, 0x70, 0x72, 0x69, 0x76, 0x61, 0x63, 0x69, 0x64, 0x61,
- 0x64, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x69, 0x6f, 0x66, 0x6f,
- 0x72, 0x6d, 0x61, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x70, 0x6f, 0x62, 0x6c, 0x61,
- 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x70, 0x72, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e,
- 0x74, 0x65, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x69, 0x64, 0x6f, 0x73, 0x61,
- 0x63, 0x63, 0x65, 0x73, 0x6f, 0x72, 0x69, 0x6f, 0x73, 0x74, 0x65, 0x63, 0x68,
- 0x6e, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61,
- 0x6c, 0x65, 0x73, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0xc3, 0xad, 0x61,
- 0x65, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x65, 0x73, 0x64, 0x69, 0x73,
- 0x70, 0x6f, 0x6e, 0x69, 0x62, 0x6c, 0x65, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c,
- 0x69, 0x64, 0x61, 0x64, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x69,
- 0x61, 0x76, 0x61, 0x6c, 0x6c, 0x61, 0x64, 0x6f, 0x6c, 0x69, 0x64, 0x62, 0x69,
- 0x62, 0x6c, 0x69, 0x6f, 0x74, 0x65, 0x63, 0x61, 0x72, 0x65, 0x6c, 0x61, 0x63,
- 0x69, 0x6f, 0x6e, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x6e, 0x64, 0x61, 0x72,
- 0x69, 0x6f, 0x70, 0x6f, 0x6c, 0xc3, 0xad, 0x74, 0x69, 0x63, 0x61, 0x73, 0x61,
- 0x6e, 0x74, 0x65, 0x72, 0x69, 0x6f, 0x72, 0x65, 0x73, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x73, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x61, 0x6c,
- 0x65, 0x7a, 0x61, 0x6d, 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x65, 0x73,
- 0x64, 0x69, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x69, 0x61, 0x65, 0x63, 0x6f,
- 0x6e, 0xc3, 0xb3, 0x6d, 0x69, 0x63, 0x61, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70,
- 0x6f, 0x72, 0x74, 0x65, 0x72, 0x6f, 0x64, 0x72, 0xc3, 0xad, 0x67, 0x75, 0x65,
- 0x7a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x72, 0x65, 0x6e,
- 0x63, 0x75, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x6e, 0x64, 0x69, 0x73, 0x63, 0x75,
- 0x73, 0x69, 0xc3, 0xb3, 0x6e, 0x65, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75,
- 0x72, 0x61, 0x66, 0x75, 0x6e, 0x64, 0x61, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x66,
- 0x72, 0x65, 0x63, 0x75, 0x65, 0x6e, 0x74, 0x65, 0x73, 0x70, 0x65, 0x72, 0x6d,
- 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x65, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x6d, 0x65,
- 0x6e, 0x74, 0x65, 0xd0, 0xbc, 0xd0, 0xbe, 0xd0, 0xb6, 0xd0, 0xbd, 0xd0, 0xbe,
- 0xd0, 0xb1, 0xd1, 0x83, 0xd0, 0xb4, 0xd0, 0xb5, 0xd1, 0x82, 0xd0, 0xbc, 0xd0,
- 0xbe, 0xd0, 0xb6, 0xd0, 0xb5, 0xd1, 0x82, 0xd0, 0xb2, 0xd1, 0x80, 0xd0, 0xb5,
- 0xd0, 0xbc, 0xd1, 0x8f, 0xd1, 0x82, 0xd0, 0xb0, 0xd0, 0xba, 0xd0, 0xb6, 0xd0,
- 0xb5, 0xd1, 0x87, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xb1, 0xd1, 0x8b, 0xd0, 0xb1,
- 0xd0, 0xbe, 0xd0, 0xbb, 0xd0, 0xb5, 0xd0, 0xb5, 0xd0, 0xbe, 0xd1, 0x87, 0xd0,
- 0xb5, 0xd0, 0xbd, 0xd1, 0x8c, 0xd1, 0x8d, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xb3,
- 0xd0, 0xbe, 0xd0, 0xba, 0xd0, 0xbe, 0xd0, 0xb3, 0xd0, 0xb4, 0xd0, 0xb0, 0xd0,
- 0xbf, 0xd0, 0xbe, 0xd1, 0x81, 0xd0, 0xbb, 0xd0, 0xb5, 0xd0, 0xb2, 0xd1, 0x81,
- 0xd0, 0xb5, 0xd0, 0xb3, 0xd0, 0xbe, 0xd1, 0x81, 0xd0, 0xb0, 0xd0, 0xb9, 0xd1,
- 0x82, 0xd0, 0xb5, 0xd1, 0x87, 0xd0, 0xb5, 0xd1, 0x80, 0xd0, 0xb5, 0xd0, 0xb7,
- 0xd0, 0xbc, 0xd0, 0xbe, 0xd0, 0xb3, 0xd1, 0x83, 0xd1, 0x82, 0xd1, 0x81, 0xd0,
- 0xb0, 0xd0, 0xb9, 0xd1, 0x82, 0xd0, 0xb0, 0xd0, 0xb6, 0xd0, 0xb8, 0xd0, 0xb7,
- 0xd0, 0xbd, 0xd0, 0xb8, 0xd0, 0xbc, 0xd0, 0xb5, 0xd0, 0xb6, 0xd0, 0xb4, 0xd1,
- 0x83, 0xd0, 0xb1, 0xd1, 0x83, 0xd0, 0xb4, 0xd1, 0x83, 0xd1, 0x82, 0xd0, 0x9f,
- 0xd0, 0xbe, 0xd0, 0xb8, 0xd1, 0x81, 0xd0, 0xba, 0xd0, 0xb7, 0xd0, 0xb4, 0xd0,
- 0xb5, 0xd1, 0x81, 0xd1, 0x8c, 0xd0, 0xb2, 0xd0, 0xb8, 0xd0, 0xb4, 0xd0, 0xb5,
- 0xd0, 0xbe, 0xd1, 0x81, 0xd0, 0xb2, 0xd1, 0x8f, 0xd0, 0xb7, 0xd0, 0xb8, 0xd0,
- 0xbd, 0xd1, 0x83, 0xd0, 0xb6, 0xd0, 0xbd, 0xd0, 0xbe, 0xd1, 0x81, 0xd0, 0xb2,
- 0xd0, 0xbe, 0xd0, 0xb5, 0xd0, 0xb9, 0xd0, 0xbb, 0xd1, 0x8e, 0xd0, 0xb4, 0xd0,
- 0xb5, 0xd0, 0xb9, 0xd0, 0xbf, 0xd0, 0xbe, 0xd1, 0x80, 0xd0, 0xbd, 0xd0, 0xbe,
- 0xd0, 0xbc, 0xd0, 0xbd, 0xd0, 0xbe, 0xd0, 0xb3, 0xd0, 0xbe, 0xd0, 0xb4, 0xd0,
- 0xb5, 0xd1, 0x82, 0xd0, 0xb5, 0xd0, 0xb9, 0xd1, 0x81, 0xd0, 0xb2, 0xd0, 0xbe,
- 0xd0, 0xb8, 0xd1, 0x85, 0xd0, 0xbf, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xb2, 0xd0,
- 0xb0, 0xd1, 0x82, 0xd0, 0xb0, 0xd0, 0xba, 0xd0, 0xbe, 0xd0, 0xb9, 0xd0, 0xbc,
- 0xd0, 0xb5, 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xb8, 0xd0, 0xbc, 0xd0,
- 0xb5, 0xd0, 0xb5, 0xd1, 0x82, 0xd0, 0xb6, 0xd0, 0xb8, 0xd0, 0xb7, 0xd0, 0xbd,
- 0xd1, 0x8c, 0xd0, 0xbe, 0xd0, 0xb4, 0xd0, 0xbd, 0xd0, 0xbe, 0xd0, 0xb9, 0xd0,
- 0xbb, 0xd1, 0x83, 0xd1, 0x87, 0xd1, 0x88, 0xd0, 0xb5, 0xd0, 0xbf, 0xd0, 0xb5,
- 0xd1, 0x80, 0xd0, 0xb5, 0xd0, 0xb4, 0xd1, 0x87, 0xd0, 0xb0, 0xd1, 0x81, 0xd1,
- 0x82, 0xd0, 0xb8, 0xd1, 0x87, 0xd0, 0xb0, 0xd1, 0x81, 0xd1, 0x82, 0xd1, 0x8c,
- 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xb1, 0xd0, 0xbe, 0xd1, 0x82, 0xd0, 0xbd, 0xd0,
- 0xbe, 0xd0, 0xb2, 0xd1, 0x8b, 0xd1, 0x85, 0xd0, 0xbf, 0xd1, 0x80, 0xd0, 0xb0,
- 0xd0, 0xb2, 0xd0, 0xbe, 0xd1, 0x81, 0xd0, 0xbe, 0xd0, 0xb1, 0xd0, 0xbe, 0xd0,
- 0xb9, 0xd0, 0xbf, 0xd0, 0xbe, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xbc, 0xd0, 0xbc,
- 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xb5, 0xd0, 0xb5, 0xd1, 0x87, 0xd0, 0xb8, 0xd1,
- 0x81, 0xd0, 0xbb, 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xbe, 0xd0, 0xb2, 0xd1, 0x8b,
- 0xd0, 0xb5, 0xd1, 0x83, 0xd1, 0x81, 0xd0, 0xbb, 0xd1, 0x83, 0xd0, 0xb3, 0xd0,
- 0xbe, 0xd0, 0xba, 0xd0, 0xbe, 0xd0, 0xbb, 0xd0, 0xbe, 0xd0, 0xbd, 0xd0, 0xb0,
- 0xd0, 0xb7, 0xd0, 0xb0, 0xd0, 0xb4, 0xd1, 0x82, 0xd0, 0xb0, 0xd0, 0xba, 0xd0,
- 0xbe, 0xd0, 0xb5, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xb3, 0xd0, 0xb4, 0xd0, 0xb0,
- 0xd0, 0xbf, 0xd0, 0xbe, 0xd1, 0x87, 0xd1, 0x82, 0xd0, 0xb8, 0xd0, 0x9f, 0xd0,
- 0xbe, 0xd1, 0x81, 0xd0, 0xbb, 0xd0, 0xb5, 0xd1, 0x82, 0xd0, 0xb0, 0xd0, 0xba,
- 0xd0, 0xb8, 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xbe, 0xd0, 0xb2, 0xd1, 0x8b, 0xd0,
- 0xb9, 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xb8, 0xd1, 0x82, 0xd1, 0x82,
- 0xd0, 0xb0, 0xd0, 0xba, 0xd0, 0xb8, 0xd1, 0x85, 0xd1, 0x81, 0xd1, 0x80, 0xd0,
- 0xb0, 0xd0, 0xb7, 0xd1, 0x83, 0xd0, 0xa1, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xba,
- 0xd1, 0x82, 0xd1, 0x84, 0xd0, 0xbe, 0xd1, 0x80, 0xd1, 0x83, 0xd0, 0xbc, 0xd0,
- 0x9a, 0xd0, 0xbe, 0xd0, 0xb3, 0xd0, 0xb4, 0xd0, 0xb0, 0xd0, 0xba, 0xd0, 0xbd,
- 0xd0, 0xb8, 0xd0, 0xb3, 0xd0, 0xb8, 0xd1, 0x81, 0xd0, 0xbb, 0xd0, 0xbe, 0xd0,
- 0xb2, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xb0, 0xd1, 0x88, 0xd0, 0xb5, 0xd0, 0xb9,
- 0xd0, 0xbd, 0xd0, 0xb0, 0xd0, 0xb9, 0xd1, 0x82, 0xd0, 0xb8, 0xd1, 0x81, 0xd0,
- 0xb2, 0xd0, 0xbe, 0xd0, 0xb8, 0xd0, 0xbc, 0xd1, 0x81, 0xd0, 0xb2, 0xd1, 0x8f,
- 0xd0, 0xb7, 0xd1, 0x8c, 0xd0, 0xbb, 0xd1, 0x8e, 0xd0, 0xb1, 0xd0, 0xbe, 0xd0,
- 0xb9, 0xd1, 0x87, 0xd0, 0xb0, 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xbe, 0xd1, 0x81,
- 0xd1, 0x80, 0xd0, 0xb5, 0xd0, 0xb4, 0xd0, 0xb8, 0xd0, 0x9a, 0xd1, 0x80, 0xd0,
- 0xbe, 0xd0, 0xbc, 0xd0, 0xb5, 0xd0, 0xa4, 0xd0, 0xbe, 0xd1, 0x80, 0xd1, 0x83,
- 0xd0, 0xbc, 0xd1, 0x80, 0xd1, 0x8b, 0xd0, 0xbd, 0xd0, 0xba, 0xd0, 0xb5, 0xd1,
- 0x81, 0xd1, 0x82, 0xd0, 0xb0, 0xd0, 0xbb, 0xd0, 0xb8, 0xd0, 0xbf, 0xd0, 0xbe,
- 0xd0, 0xb8, 0xd1, 0x81, 0xd0, 0xba, 0xd1, 0x82, 0xd1, 0x8b, 0xd1, 0x81, 0xd1,
- 0x8f, 0xd1, 0x87, 0xd0, 0xbc, 0xd0, 0xb5, 0xd1, 0x81, 0xd1, 0x8f, 0xd1, 0x86,
- 0xd1, 0x86, 0xd0, 0xb5, 0xd0, 0xbd, 0xd1, 0x82, 0xd1, 0x80, 0xd1, 0x82, 0xd1,
- 0x80, 0xd1, 0x83, 0xd0, 0xb4, 0xd0, 0xb0, 0xd1, 0x81, 0xd0, 0xb0, 0xd0, 0xbc,
- 0xd1, 0x8b, 0xd1, 0x85, 0xd1, 0x80, 0xd1, 0x8b, 0xd0, 0xbd, 0xd0, 0xba, 0xd0,
- 0xb0, 0xd0, 0x9d, 0xd0, 0xbe, 0xd0, 0xb2, 0xd1, 0x8b, 0xd0, 0xb9, 0xd1, 0x87,
- 0xd0, 0xb0, 0xd1, 0x81, 0xd0, 0xbe, 0xd0, 0xb2, 0xd0, 0xbc, 0xd0, 0xb5, 0xd1,
- 0x81, 0xd1, 0x82, 0xd0, 0xb0, 0xd1, 0x84, 0xd0, 0xb8, 0xd0, 0xbb, 0xd1, 0x8c,
- 0xd0, 0xbc, 0xd0, 0xbc, 0xd0, 0xb0, 0xd1, 0x80, 0xd1, 0x82, 0xd0, 0xb0, 0xd1,
- 0x81, 0xd1, 0x82, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xbc, 0xd0, 0xb5,
- 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb5, 0xd1, 0x82, 0xd0, 0xb5, 0xd0, 0xba, 0xd1,
- 0x81, 0xd1, 0x82, 0xd0, 0xbd, 0xd0, 0xb0, 0xd1, 0x88, 0xd0, 0xb8, 0xd1, 0x85,
- 0xd0, 0xbc, 0xd0, 0xb8, 0xd0, 0xbd, 0xd1, 0x83, 0xd1, 0x82, 0xd0, 0xb8, 0xd0,
- 0xbc, 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xb8, 0xd0, 0xb8, 0xd0, 0xbc, 0xd0, 0xb5,
- 0xd1, 0x8e, 0xd1, 0x82, 0xd0, 0xbd, 0xd0, 0xbe, 0xd0, 0xbc, 0xd0, 0xb5, 0xd1,
- 0x80, 0xd0, 0xb3, 0xd0, 0xbe, 0xd1, 0x80, 0xd0, 0xbe, 0xd0, 0xb4, 0xd1, 0x81,
- 0xd0, 0xb0, 0xd0, 0xbc, 0xd0, 0xbe, 0xd0, 0xbc, 0xd1, 0x8d, 0xd1, 0x82, 0xd0,
- 0xbe, 0xd0, 0xbc, 0xd1, 0x83, 0xd0, 0xba, 0xd0, 0xbe, 0xd0, 0xbd, 0xd1, 0x86,
- 0xd0, 0xb5, 0xd1, 0x81, 0xd0, 0xb2, 0xd0, 0xbe, 0xd0, 0xb5, 0xd0, 0xbc, 0xd0,
- 0xba, 0xd0, 0xb0, 0xd0, 0xba, 0xd0, 0xbe, 0xd0, 0xb9, 0xd0, 0x90, 0xd1, 0x80,
- 0xd1, 0x85, 0xd0, 0xb8, 0xd0, 0xb2, 0xd9, 0x85, 0xd9, 0x86, 0xd8, 0xaa, 0xd8,
- 0xaf, 0xd9, 0x89, 0xd8, 0xa5, 0xd8, 0xb1, 0xd8, 0xb3, 0xd8, 0xa7, 0xd9, 0x84,
- 0xd8, 0xb1, 0xd8, 0xb3, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9,
- 0x84, 0xd8, 0xb9, 0xd8, 0xa7, 0xd9, 0x85, 0xd9, 0x83, 0xd8, 0xaa, 0xd8, 0xa8,
- 0xd9, 0x87, 0xd8, 0xa7, 0xd8, 0xa8, 0xd8, 0xb1, 0xd8, 0xa7, 0xd9, 0x85, 0xd8,
- 0xac, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x8a, 0xd9, 0x88, 0xd9, 0x85, 0xd8, 0xa7,
- 0xd9, 0x84, 0xd8, 0xb5, 0xd9, 0x88, 0xd8, 0xb1, 0xd8, 0xac, 0xd8, 0xaf, 0xd9,
- 0x8a, 0xd8, 0xaf, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb9, 0xd8, 0xb6,
- 0xd9, 0x88, 0xd8, 0xa5, 0xd8, 0xb6, 0xd8, 0xa7, 0xd9, 0x81, 0xd8, 0xa9, 0xd8,
- 0xa7, 0xd9, 0x84, 0xd9, 0x82, 0xd8, 0xb3, 0xd9, 0x85, 0xd8, 0xa7, 0xd9, 0x84,
- 0xd8, 0xb9, 0xd8, 0xa7, 0xd8, 0xa8, 0xd8, 0xaa, 0xd8, 0xad, 0xd9, 0x85, 0xd9,
- 0x8a, 0xd9, 0x84, 0xd9, 0x85, 0xd9, 0x84, 0xd9, 0x81, 0xd8, 0xa7, 0xd8, 0xaa,
- 0xd9, 0x85, 0xd9, 0x84, 0xd8, 0xaa, 0xd9, 0x82, 0xd9, 0x89, 0xd8, 0xaa, 0xd8,
- 0xb9, 0xd8, 0xaf, 0xd9, 0x8a, 0xd9, 0x84, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb4,
- 0xd8, 0xb9, 0xd8, 0xb1, 0xd8, 0xa3, 0xd8, 0xae, 0xd8, 0xa8, 0xd8, 0xa7, 0xd8,
- 0xb1, 0xd8, 0xaa, 0xd8, 0xb7, 0xd9, 0x88, 0xd9, 0x8a, 0xd8, 0xb1, 0xd8, 0xb9,
- 0xd9, 0x84, 0xd9, 0x8a, 0xd9, 0x83, 0xd9, 0x85, 0xd8, 0xa5, 0xd8, 0xb1, 0xd9,
- 0x81, 0xd8, 0xa7, 0xd9, 0x82, 0xd8, 0xb7, 0xd9, 0x84, 0xd8, 0xa8, 0xd8, 0xa7,
- 0xd8, 0xaa, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x84, 0xd8, 0xba, 0xd8, 0xa9, 0xd8,
- 0xaa, 0xd8, 0xb1, 0xd8, 0xaa, 0xd9, 0x8a, 0xd8, 0xa8, 0xd8, 0xa7, 0xd9, 0x84,
- 0xd9, 0x86, 0xd8, 0xa7, 0xd8, 0xb3, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb4, 0xd9,
- 0x8a, 0xd8, 0xae, 0xd9, 0x85, 0xd9, 0x86, 0xd8, 0xaa, 0xd8, 0xaf, 0xd9, 0x8a,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb9, 0xd8, 0xb1, 0xd8, 0xa8, 0xd8, 0xa7, 0xd9,
- 0x84, 0xd9, 0x82, 0xd8, 0xb5, 0xd8, 0xb5, 0xd8, 0xa7, 0xd9, 0x81, 0xd9, 0x84,
- 0xd8, 0xa7, 0xd9, 0x85, 0xd8, 0xb9, 0xd9, 0x84, 0xd9, 0x8a, 0xd9, 0x87, 0xd8,
- 0xa7, 0xd8, 0xaa, 0xd8, 0xad, 0xd8, 0xaf, 0xd9, 0x8a, 0xd8, 0xab, 0xd8, 0xa7,
- 0xd9, 0x84, 0xd9, 0x84, 0xd9, 0x87, 0xd9, 0x85, 0xd8, 0xa7, 0xd9, 0x84, 0xd8,
- 0xb9, 0xd9, 0x85, 0xd9, 0x84, 0xd9, 0x85, 0xd9, 0x83, 0xd8, 0xaa, 0xd8, 0xa8,
- 0xd8, 0xa9, 0xd9, 0x8a, 0xd9, 0x85, 0xd9, 0x83, 0xd9, 0x86, 0xd9, 0x83, 0xd8,
- 0xa7, 0xd9, 0x84, 0xd8, 0xb7, 0xd9, 0x81, 0xd9, 0x84, 0xd9, 0x81, 0xd9, 0x8a,
- 0xd8, 0xaf, 0xd9, 0x8a, 0xd9, 0x88, 0xd8, 0xa5, 0xd8, 0xaf, 0xd8, 0xa7, 0xd8,
- 0xb1, 0xd8, 0xa9, 0xd8, 0xaa, 0xd8, 0xa7, 0xd8, 0xb1, 0xd9, 0x8a, 0xd8, 0xae,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb5, 0xd8, 0xad, 0xd8, 0xa9, 0xd8, 0xaa, 0xd8,
- 0xb3, 0xd8, 0xac, 0xd9, 0x8a, 0xd9, 0x84, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x88,
- 0xd9, 0x82, 0xd8, 0xaa, 0xd8, 0xb9, 0xd9, 0x86, 0xd8, 0xaf, 0xd9, 0x85, 0xd8,
- 0xa7, 0xd9, 0x85, 0xd8, 0xaf, 0xd9, 0x8a, 0xd9, 0x86, 0xd8, 0xa9, 0xd8, 0xaa,
- 0xd8, 0xb5, 0xd9, 0x85, 0xd9, 0x8a, 0xd9, 0x85, 0xd8, 0xa3, 0xd8, 0xb1, 0xd8,
- 0xb4, 0xd9, 0x8a, 0xd9, 0x81, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb0, 0xd9, 0x8a,
- 0xd9, 0x86, 0xd8, 0xb9, 0xd8, 0xb1, 0xd8, 0xa8, 0xd9, 0x8a, 0xd8, 0xa9, 0xd8,
- 0xa8, 0xd9, 0x88, 0xd8, 0xa7, 0xd8, 0xa8, 0xd8, 0xa9, 0xd8, 0xa3, 0xd9, 0x84,
- 0xd8, 0xb9, 0xd8, 0xa7, 0xd8, 0xa8, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb3, 0xd9,
- 0x81, 0xd8, 0xb1, 0xd9, 0x85, 0xd8, 0xb4, 0xd8, 0xa7, 0xd9, 0x83, 0xd9, 0x84,
- 0xd8, 0xaa, 0xd8, 0xb9, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x89, 0xd8, 0xa7, 0xd9,
- 0x84, 0xd8, 0xa3, 0xd9, 0x88, 0xd9, 0x84, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb3,
- 0xd9, 0x86, 0xd8, 0xa9, 0xd8, 0xac, 0xd8, 0xa7, 0xd9, 0x85, 0xd8, 0xb9, 0xd8,
- 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb5, 0xd8, 0xad, 0xd9, 0x81, 0xd8, 0xa7,
- 0xd9, 0x84, 0xd8, 0xaf, 0xd9, 0x8a, 0xd9, 0x86, 0xd9, 0x83, 0xd9, 0x84, 0xd9,
- 0x85, 0xd8, 0xa7, 0xd8, 0xaa, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xae, 0xd8, 0xa7,
- 0xd8, 0xb5, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd9, 0x84, 0xd9, 0x81, 0xd8,
- 0xa3, 0xd8, 0xb9, 0xd8, 0xb6, 0xd8, 0xa7, 0xd8, 0xa1, 0xd9, 0x83, 0xd8, 0xaa,
- 0xd8, 0xa7, 0xd8, 0xa8, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xae, 0xd9,
- 0x8a, 0xd8, 0xb1, 0xd8, 0xb1, 0xd8, 0xb3, 0xd8, 0xa7, 0xd8, 0xa6, 0xd9, 0x84,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x82, 0xd9, 0x84, 0xd8, 0xa8, 0xd8, 0xa7, 0xd9,
- 0x84, 0xd8, 0xa3, 0xd8, 0xaf, 0xd8, 0xa8, 0xd9, 0x85, 0xd9, 0x82, 0xd8, 0xa7,
- 0xd8, 0xb7, 0xd8, 0xb9, 0xd9, 0x85, 0xd8, 0xb1, 0xd8, 0xa7, 0xd8, 0xb3, 0xd9,
- 0x84, 0xd9, 0x85, 0xd9, 0x86, 0xd8, 0xb7, 0xd9, 0x82, 0xd8, 0xa9, 0xd8, 0xa7,
- 0xd9, 0x84, 0xd9, 0x83, 0xd8, 0xaa, 0xd8, 0xa8, 0xd8, 0xa7, 0xd9, 0x84, 0xd8,
- 0xb1, 0xd8, 0xac, 0xd9, 0x84, 0xd8, 0xa7, 0xd8, 0xb4, 0xd8, 0xaa, 0xd8, 0xb1,
- 0xd9, 0x83, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x82, 0xd8, 0xaf, 0xd9, 0x85, 0xd9,
- 0x8a, 0xd8, 0xb9, 0xd8, 0xb7, 0xd9, 0x8a, 0xd9, 0x83, 0x73, 0x42, 0x79, 0x54,
- 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x28, 0x2e, 0x6a, 0x70, 0x67, 0x22, 0x20,
- 0x61, 0x6c, 0x74, 0x3d, 0x22, 0x31, 0x70, 0x78, 0x20, 0x73, 0x6f, 0x6c, 0x69,
- 0x64, 0x20, 0x23, 0x2e, 0x67, 0x69, 0x66, 0x22, 0x20, 0x61, 0x6c, 0x74, 0x3d,
- 0x22, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x69,
- 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x6f, 0x6e, 0x63,
- 0x6c, 0x69, 0x63, 0x6b, 0x3d, 0x22, 0x65, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69,
- 0x73, 0x68, 0x65, 0x64, 0x61, 0x64, 0x76, 0x65, 0x72, 0x74, 0x69, 0x73, 0x69,
- 0x6e, 0x67, 0x2e, 0x70, 0x6e, 0x67, 0x22, 0x20, 0x61, 0x6c, 0x74, 0x3d, 0x22,
- 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x70, 0x65,
- 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x61, 0x70, 0x70, 0x72,
- 0x6f, 0x70, 0x72, 0x69, 0x61, 0x74, 0x65, 0x26, 0x61, 0x6d, 0x70, 0x3b, 0x6d,
- 0x64, 0x61, 0x73, 0x68, 0x3b, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74,
- 0x65, 0x6c, 0x79, 0x3c, 0x2f, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x67, 0x3e, 0x3c,
- 0x2f, 0x72, 0x61, 0x74, 0x68, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x74,
- 0x65, 0x6d, 0x70, 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64, 0x65, 0x76,
- 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x6d, 0x70, 0x65,
- 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f,
- 0x6c, 0x64, 0x65, 0x72, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74,
- 0x79, 0x3a, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x22, 0x3e,
- 0x30, 0x22, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3d, 0x22, 0x65, 0x76,
- 0x65, 0x6e, 0x20, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x72, 0x65, 0x70, 0x6c,
- 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x72, 0x70, 0x6f, 0x72, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x3c, 0x75, 0x6c, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d,
- 0x22, 0x41, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x69,
- 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x73, 0x70, 0x65, 0x72,
- 0x73, 0x70, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x73, 0x65, 0x74, 0x54, 0x69,
- 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x28, 0x75, 0x72, 0x6c, 0x28, 0x68, 0x74, 0x74,
- 0x70, 0x3a, 0x2f, 0x2f, 0x6d, 0x61, 0x74, 0x68, 0x65, 0x6d, 0x61, 0x74, 0x69,
- 0x63, 0x73, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x2d, 0x74, 0x6f, 0x70, 0x3a,
- 0x65, 0x76, 0x65, 0x6e, 0x74, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x64, 0x65,
- 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x29, 0x20, 0x6e, 0x6f,
- 0x2d, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4a, 0x50, 0x47, 0x7c, 0x74, 0x68, 0x75,
- 0x6d, 0x62, 0x7c, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74,
- 0x65, 0x2f, 0x68, 0x65, 0x61, 0x64, 0x3e, 0x3c, 0x62, 0x6f, 0x64, 0x79, 0x66,
- 0x6c, 0x6f, 0x61, 0x74, 0x3a, 0x6c, 0x65, 0x66, 0x74, 0x3b, 0x3c, 0x6c, 0x69,
- 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x68, 0x75, 0x6e, 0x64, 0x72,
- 0x65, 0x64, 0x73, 0x20, 0x6f, 0x66, 0x0a, 0x0a, 0x48, 0x6f, 0x77, 0x65, 0x76,
- 0x65, 0x72, 0x2c, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69,
- 0x6f, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x3a, 0x62, 0x6f, 0x74, 0x68, 0x3b,
- 0x63, 0x6f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x77, 0x69,
- 0x74, 0x68, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x61, 0x62, 0x65,
- 0x6c, 0x20, 0x66, 0x6f, 0x72, 0x3d, 0x22, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72,
- 0x2d, 0x74, 0x6f, 0x70, 0x3a, 0x4e, 0x65, 0x77, 0x20, 0x5a, 0x65, 0x61, 0x6c,
- 0x61, 0x6e, 0x64, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65,
- 0x64, 0x70, 0x68, 0x6f, 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x79, 0x69,
- 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x26, 0x6c, 0x74,
- 0x3b, 0x73, 0x75, 0x70, 0x26, 0x67, 0x74, 0x3b, 0x63, 0x6f, 0x6e, 0x74, 0x72,
- 0x6f, 0x76, 0x65, 0x72, 0x73, 0x79, 0x4e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x6c,
- 0x61, 0x6e, 0x64, 0x73, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69,
- 0x76, 0x65, 0x6d, 0x61, 0x78, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x3d, 0x22,
- 0x73, 0x77, 0x69, 0x74, 0x7a, 0x65, 0x72, 0x6c, 0x61, 0x6e, 0x64, 0x44, 0x65,
- 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x65, 0x73, 0x73, 0x65,
- 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x0a, 0x0a, 0x41, 0x6c, 0x74, 0x68,
- 0x6f, 0x75, 0x67, 0x68, 0x20, 0x3c, 0x2f, 0x74, 0x65, 0x78, 0x74, 0x61, 0x72,
- 0x65, 0x61, 0x3e, 0x74, 0x68, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x62, 0x69, 0x72,
- 0x64, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x26,
- 0x61, 0x6d, 0x70, 0x3b, 0x6e, 0x64, 0x61, 0x73, 0x68, 0x3b, 0x73, 0x70, 0x65,
- 0x63, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x63, 0x6f, 0x6d, 0x6d, 0x75,
- 0x6e, 0x69, 0x74, 0x69, 0x65, 0x73, 0x6c, 0x65, 0x67, 0x69, 0x73, 0x6c, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x72, 0x6f, 0x6e, 0x69,
- 0x63, 0x73, 0x0a, 0x09, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22,
- 0x69, 0x6c, 0x6c, 0x75, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x64, 0x65, 0x6e,
- 0x67, 0x69, 0x6e, 0x65, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x74, 0x65, 0x72, 0x72,
- 0x69, 0x74, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72,
- 0x69, 0x74, 0x69, 0x65, 0x73, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75,
- 0x74, 0x65, 0x64, 0x36, 0x22, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3d,
- 0x22, 0x73, 0x61, 0x6e, 0x73, 0x2d, 0x73, 0x65, 0x72, 0x69, 0x66, 0x3b, 0x63,
- 0x61, 0x70, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x69, 0x73,
- 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x65, 0x64, 0x69, 0x6e, 0x74, 0x65, 0x72,
- 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x6f, 0x6f, 0x6b, 0x69, 0x6e, 0x67,
- 0x20, 0x66, 0x6f, 0x72, 0x69, 0x74, 0x20, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x20,
- 0x62, 0x65, 0x41, 0x66, 0x67, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x74, 0x61, 0x6e,
- 0x77, 0x61, 0x73, 0x20, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x4d, 0x61,
- 0x74, 0x68, 0x2e, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x28, 0x73, 0x75, 0x72, 0x72,
- 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x63, 0x61, 0x6e, 0x20, 0x61, 0x6c,
- 0x73, 0x6f, 0x20, 0x62, 0x65, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x63,
- 0x65, 0x65, 0x6e, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x64, 0x3c,
- 0x68, 0x32, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6d, 0x6f, 0x72,
- 0x65, 0x20, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x20, 0x68, 0x61,
- 0x73, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x69, 0x6e, 0x76, 0x61, 0x73, 0x69, 0x6f,
- 0x6e, 0x20, 0x6f, 0x66, 0x29, 0x2e, 0x67, 0x65, 0x74, 0x54, 0x69, 0x6d, 0x65,
- 0x28, 0x29, 0x66, 0x75, 0x6e, 0x64, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c,
- 0x44, 0x65, 0x73, 0x70, 0x69, 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, 0x22, 0x3e,
- 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x69, 0x6e, 0x73, 0x70,
- 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x78, 0x61, 0x6d, 0x69, 0x6e,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x3c,
- 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x76, 0x65, 0x72,
- 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x69, 0x6e, 0x73, 0x74, 0x72,
- 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x20,
- 0x74, 0x68, 0x65, 0x20, 0x20, 0x3d, 0x20, 0x27, 0x68, 0x74, 0x74, 0x70, 0x3a,
- 0x2f, 0x2f, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
- 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x20, 0x2e, 0x73,
- 0x75, 0x62, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x28, 0x65, 0x61, 0x63, 0x68,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69,
- 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x65, 0x6e, 0x74,
- 0x69, 0x61, 0x6c, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x6d, 0x61, 0x6e, 0x79, 0x20, 0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x64,
- 0x75, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6d,
- 0x62, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x64, 0x6f, 0x20, 0x6e, 0x6f,
- 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x4d, 0x69, 0x64, 0x64, 0x6c, 0x65, 0x20,
- 0x45, 0x61, 0x73, 0x74, 0x3c, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x3e, 0x3c, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x22, 0x20,
- 0x70, 0x65, 0x72, 0x68, 0x61, 0x70, 0x73, 0x20, 0x74, 0x68, 0x65, 0x69, 0x6e,
- 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x20, 0x44,
- 0x65, 0x63, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x61, 0x72, 0x72, 0x61, 0x6e, 0x67,
- 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x66, 0x61, 0x6d,
- 0x6f, 0x75, 0x73, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x61, 0x6c, 0x69, 0x74,
- 0x79, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x6c,
- 0x69, 0x6d, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x78, 0x63,
- 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x73, 0x6f, 0x76, 0x65, 0x72,
- 0x65, 0x69, 0x67, 0x6e, 0x74, 0x79, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
- 0x74, 0x22, 0x3e, 0x0a, 0x3c, 0x74, 0x64, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73,
- 0x3d, 0x22, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64,
- 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, 0x20, 0x74, 0x6f, 0x64, 0x6f,
- 0x63, 0x74, 0x72, 0x69, 0x6e, 0x65, 0x20, 0x6f, 0x66, 0x6f, 0x63, 0x63, 0x75,
- 0x70, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e,
- 0x6f, 0x6c, 0x6f, 0x67, 0x79, 0x52, 0x65, 0x6e, 0x61, 0x69, 0x73, 0x73, 0x61,
- 0x6e, 0x63, 0x65, 0x61, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f,
- 0x66, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x65,
- 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x72, 0x65, 0x63,
- 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x70, 0x72, 0x65, 0x64, 0x65,
- 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x3c, 0x69, 0x6d, 0x67, 0x20, 0x73, 0x72,
- 0x63, 0x3d, 0x22, 0x2f, 0x3c, 0x68, 0x31, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73,
- 0x3d, 0x22, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x6d, 0x61, 0x79, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x62, 0x65, 0x73, 0x70,
- 0x65, 0x63, 0x69, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x64, 0x3c, 0x2f, 0x66, 0x69,
- 0x65, 0x6c, 0x64, 0x73, 0x65, 0x74, 0x3e, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65,
- 0x73, 0x73, 0x69, 0x76, 0x65, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x73,
- 0x20, 0x6f, 0x66, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x20, 0x74, 0x68, 0x61,
- 0x74, 0x65, 0x6e, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61,
- 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x6e, 0x65,
- 0x20, 0x61, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x2e, 0x70, 0x61, 0x72, 0x65,
- 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x61, 0x67, 0x72, 0x69, 0x63, 0x75, 0x6c,
- 0x74, 0x75, 0x72, 0x65, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69,
- 0x76, 0x65, 0x72, 0x65, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x65, 0x72, 0x73,
- 0x74, 0x6f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x20, 0x74, 0x68, 0x65, 0x4d, 0x6f,
- 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x6d, 0x61, 0x6e, 0x79,
- 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x28, 0x65, 0x73, 0x70, 0x65, 0x63,
- 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x3c, 0x74, 0x64, 0x20, 0x77, 0x69, 0x64, 0x74,
- 0x68, 0x3d, 0x22, 0x3b, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x31, 0x30, 0x30,
- 0x25, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x3c,
- 0x68, 0x33, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x20, 0x6f, 0x6e,
- 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x3d, 0x22, 0x29, 0x2e, 0x61, 0x64, 0x64,
- 0x43, 0x6c, 0x61, 0x73, 0x73, 0x28, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63,
- 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x6e, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68,
- 0x65, 0x20, 0x64, 0x61, 0x75, 0x67, 0x68, 0x74, 0x65, 0x72, 0x20, 0x6f, 0x66,
- 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x62, 0x72,
- 0x61, 0x6e, 0x63, 0x68, 0x65, 0x73, 0x20, 0x6f, 0x66, 0x0d, 0x0a, 0x3c, 0x64,
- 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x61,
- 0x72, 0x67, 0x65, 0x73, 0x74, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x72, 0x65, 0x67, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x74,
- 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x64, 0x6f, 0x63,
- 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 0x79, 0x69, 0x6e, 0x20, 0x6f, 0x72,
- 0x64, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x22, 0x3e, 0x0a, 0x3c, 0x68, 0x65, 0x61,
- 0x64, 0x3e, 0x0a, 0x3c, 0x22, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3d,
- 0x22, 0x31, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x29, 0x3b,
- 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x69, 0x6d, 0x70, 0x6c,
- 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65,
- 0x20, 0x73, 0x65, 0x65, 0x6e, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x77, 0x61,
- 0x73, 0x20, 0x61, 0x64, 0x65, 0x6d, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x74,
- 0x65, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x22, 0x3e, 0x63,
- 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x74, 0x68, 0x65,
- 0x20, 0x42, 0x72, 0x69, 0x74, 0x69, 0x73, 0x68, 0x77, 0x61, 0x73, 0x20, 0x77,
- 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x21, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74,
- 0x61, 0x6e, 0x74, 0x3b, 0x70, 0x78, 0x3b, 0x20, 0x6d, 0x61, 0x72, 0x67, 0x69,
- 0x6e, 0x2d, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x20, 0x62, 0x79,
- 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x6f,
- 0x6d, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64, 0x64, 0x75, 0x72, 0x69,
- 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x69, 0x6d, 0x6d, 0x69, 0x67, 0x72,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x63, 0x61, 0x6c,
- 0x6c, 0x65, 0x64, 0x3c, 0x68, 0x34, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d,
- 0x22, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x72,
- 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x20, 0x62, 0x79, 0x67, 0x6f, 0x76,
- 0x65, 0x72, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x6c, 0x6f, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x69, 0x6e, 0x20, 0x4e, 0x6f, 0x76, 0x65,
- 0x6d, 0x62, 0x65, 0x72, 0x77, 0x68, 0x65, 0x74, 0x68, 0x65, 0x72, 0x20, 0x74,
- 0x68, 0x65, 0x3c, 0x2f, 0x70, 0x3e, 0x0a, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e,
- 0x61, 0x63, 0x71, 0x75, 0x69, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x63, 0x61,
- 0x6c, 0x6c, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x65, 0x72, 0x73,
- 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7b, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x69,
- 0x7a, 0x65, 0x3a, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x65, 0x64, 0x20, 0x69,
- 0x6e, 0x69, 0x6e, 0x76, 0x65, 0x73, 0x74, 0x69, 0x67, 0x61, 0x74, 0x65, 0x65,
- 0x78, 0x70, 0x65, 0x72, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x6d, 0x6f, 0x73,
- 0x74, 0x20, 0x6c, 0x69, 0x6b, 0x65, 0x6c, 0x79, 0x77, 0x69, 0x64, 0x65, 0x6c,
- 0x79, 0x20, 0x75, 0x73, 0x65, 0x64, 0x64, 0x69, 0x73, 0x63, 0x75, 0x73, 0x73,
- 0x69, 0x6f, 0x6e, 0x73, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x65, 0x20,
- 0x6f, 0x66, 0x20, 0x28, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
- 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x49, 0x74,
- 0x20, 0x68, 0x61, 0x73, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x69, 0x74, 0x20, 0x64,
- 0x6f, 0x65, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61,
- 0x72, 0x79, 0x20, 0x74, 0x6f, 0x69, 0x6e, 0x68, 0x61, 0x62, 0x69, 0x74, 0x61,
- 0x6e, 0x74, 0x73, 0x69, 0x6d, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x6d, 0x65, 0x6e,
- 0x74, 0x73, 0x63, 0x68, 0x6f, 0x6c, 0x61, 0x72, 0x73, 0x68, 0x69, 0x70, 0x63,
- 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x73,
- 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x20, 0x65,
- 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x72, 0x20,
- 0x6d, 0x6f, 0x72, 0x65, 0x70, 0x78, 0x3b, 0x20, 0x70, 0x61, 0x64, 0x64, 0x69,
- 0x6e, 0x67, 0x74, 0x68, 0x65, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74,
- 0x61, 0x20, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x20, 0x6f, 0x66, 0x61, 0x72,
- 0x65, 0x20, 0x75, 0x73, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x72, 0x6f, 0x6c, 0x65,
- 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f,
- 0x75, 0x73, 0x6c, 0x79, 0x20, 0x64, 0x65, 0x72, 0x69, 0x76, 0x61, 0x74, 0x69,
- 0x76, 0x65, 0x73, 0x65, 0x76, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x6f,
- 0x66, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x63,
- 0x6f, 0x6c, 0x6f, 0x72, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x73, 0x74, 0x61,
- 0x74, 0x65, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x63, 0x65, 0x72, 0x74, 0x69,
- 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x64,
- 0x69, 0x76, 0x3e, 0x0a, 0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64,
- 0x3d, 0x22, 0x68, 0x69, 0x67, 0x68, 0x20, 0x73, 0x63, 0x68, 0x6f, 0x6f, 0x6c,
- 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x20, 0x74, 0x6f, 0x63, 0x6f,
- 0x6d, 0x66, 0x6f, 0x72, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x61, 0x64, 0x6f, 0x70,
- 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x74, 0x68, 0x72, 0x65, 0x65, 0x20,
- 0x79, 0x65, 0x61, 0x72, 0x73, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x75, 0x6e,
- 0x74, 0x72, 0x79, 0x69, 0x6e, 0x20, 0x46, 0x65, 0x62, 0x72, 0x75, 0x61, 0x72,
- 0x79, 0x73, 0x6f, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x70,
- 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x20, 0x77, 0x68, 0x6f, 0x20, 0x70, 0x72, 0x6f,
- 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x62, 0x79, 0x3c, 0x70, 0x61, 0x72, 0x61,
- 0x6d, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65,
- 0x64, 0x20, 0x62, 0x79, 0x69, 0x6e, 0x20, 0x74, 0x65, 0x72, 0x6d, 0x73, 0x20,
- 0x6f, 0x66, 0x61, 0x70, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x6d, 0x65, 0x6e, 0x74,
- 0x49, 0x53, 0x4f, 0x2d, 0x38, 0x38, 0x35, 0x39, 0x2d, 0x31, 0x22, 0x77, 0x61,
- 0x73, 0x20, 0x62, 0x6f, 0x72, 0x6e, 0x20, 0x69, 0x6e, 0x68, 0x69, 0x73, 0x74,
- 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x72, 0x65, 0x67, 0x61, 0x72, 0x64,
- 0x65, 0x64, 0x20, 0x61, 0x73, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d,
- 0x65, 0x6e, 0x74, 0x69, 0x73, 0x20, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f,
- 0x6e, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x3a,
- 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x73, 0x69, 0x67,
- 0x6e, 0x69, 0x66, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x63, 0x65, 0x6c, 0x65, 0x62,
- 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69,
- 0x74, 0x74, 0x65, 0x64, 0x2f, 0x6a, 0x73, 0x2f, 0x6a, 0x71, 0x75, 0x65, 0x72,
- 0x79, 0x2e, 0x69, 0x73, 0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x20, 0x61, 0x73,
- 0x74, 0x68, 0x65, 0x6f, 0x72, 0x65, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x74,
- 0x61, 0x62, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x3d, 0x22, 0x69, 0x74, 0x20, 0x63,
- 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x3c, 0x6e, 0x6f, 0x73, 0x63, 0x72,
- 0x69, 0x70, 0x74, 0x3e, 0x0a, 0x68, 0x61, 0x76, 0x69, 0x6e, 0x67, 0x20, 0x62,
- 0x65, 0x65, 0x6e, 0x0d, 0x0a, 0x3c, 0x68, 0x65, 0x61, 0x64, 0x3e, 0x0d, 0x0a,
- 0x3c, 0x20, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x54, 0x68, 0x65, 0x20, 0x63,
- 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x68, 0x65, 0x20,
- 0x68, 0x61, 0x64, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x64, 0x75,
- 0x63, 0x65, 0x64, 0x20, 0x62, 0x79, 0x70, 0x68, 0x69, 0x6c, 0x6f, 0x73, 0x6f,
- 0x70, 0x68, 0x65, 0x72, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
- 0x65, 0x64, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x20, 0x74, 0x6f,
- 0x61, 0x6d, 0x6f, 0x6e, 0x67, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x63, 0x6f,
- 0x6d, 0x70, 0x61, 0x72, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x74, 0x6f, 0x20, 0x73,
- 0x61, 0x79, 0x20, 0x74, 0x68, 0x61, 0x74, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65,
- 0x65, 0x72, 0x69, 0x6e, 0x67, 0x61, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72,
- 0x65, 0x6e, 0x74, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x20, 0x74,
- 0x6f, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x62,
- 0x65, 0x6c, 0x69, 0x65, 0x66, 0x20, 0x74, 0x68, 0x61, 0x74, 0x70, 0x68, 0x6f,
- 0x74, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74,
- 0x69, 0x66, 0x79, 0x69, 0x6e, 0x67, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79,
- 0x20, 0x6f, 0x66, 0x20, 0x52, 0x65, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20,
- 0x6f, 0x66, 0x6e, 0x65, 0x63, 0x65, 0x73, 0x73, 0x61, 0x72, 0x69, 0x6c, 0x79,
- 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x74, 0x65,
- 0x63, 0x68, 0x6e, 0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x6c, 0x65, 0x61, 0x76,
- 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x73, 0x70, 0x65, 0x63, 0x74, 0x61,
- 0x63, 0x75, 0x6c, 0x61, 0x72, 0x66, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x20, 0x6f, 0x66, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x72, 0x69, 0x63, 0x69, 0x74,
- 0x79, 0x68, 0x65, 0x61, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x72,
- 0x65, 0x73, 0x74, 0x61, 0x75, 0x72, 0x61, 0x6e, 0x74, 0x73, 0x70, 0x61, 0x72,
- 0x74, 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x65, 0x6d, 0x70, 0x68, 0x61,
- 0x73, 0x69, 0x73, 0x20, 0x6f, 0x6e, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x72, 0x65,
- 0x63, 0x65, 0x6e, 0x74, 0x73, 0x68, 0x61, 0x72, 0x65, 0x20, 0x77, 0x69, 0x74,
- 0x68, 0x20, 0x73, 0x61, 0x79, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x61, 0x74,
- 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x64, 0x65,
- 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x69, 0x74, 0x20, 0x69,
- 0x73, 0x20, 0x6f, 0x66, 0x74, 0x65, 0x6e, 0x22, 0x3e, 0x3c, 0x2f, 0x69, 0x66,
- 0x72, 0x61, 0x6d, 0x65, 0x3e, 0x61, 0x73, 0x20, 0x66, 0x6f, 0x6c, 0x6c, 0x6f,
- 0x77, 0x73, 0x3a, 0x6d, 0x65, 0x72, 0x67, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74,
- 0x68, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x74, 0x68, 0x65, 0x63,
- 0x6f, 0x6d, 0x6d, 0x65, 0x72, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x70, 0x6f, 0x69,
- 0x6e, 0x74, 0x65, 0x64, 0x20, 0x6f, 0x75, 0x74, 0x6f, 0x70, 0x70, 0x6f, 0x72,
- 0x74, 0x75, 0x6e, 0x69, 0x74, 0x79, 0x76, 0x69, 0x65, 0x77, 0x20, 0x6f, 0x66,
- 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65,
- 0x6e, 0x74, 0x64, 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66,
- 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x69, 0x6e, 0x67, 0x68, 0x65,
- 0x20, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x64, 0x73, 0x65, 0x74, 0x49,
- 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x22, 0x3e, 0x3c, 0x2f, 0x73, 0x70,
- 0x61, 0x6e, 0x3e, 0x3c, 0x2f, 0x69, 0x6e, 0x20, 0x4e, 0x65, 0x77, 0x20, 0x59,
- 0x6f, 0x72, 0x6b, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
- 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x0a,
- 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x69, 0x6e, 0x63,
- 0x6f, 0x72, 0x70, 0x6f, 0x72, 0x61, 0x74, 0x65, 0x3b, 0x3c, 0x2f, 0x73, 0x63,
- 0x72, 0x69, 0x70, 0x74, 0x3e, 0x3c, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x45,
- 0x76, 0x65, 0x6e, 0x74, 0x62, 0x65, 0x63, 0x61, 0x6d, 0x65, 0x20, 0x74, 0x68,
- 0x65, 0x20, 0x22, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x3d, 0x22, 0x5f,
- 0x63, 0x61, 0x72, 0x72, 0x69, 0x65, 0x64, 0x20, 0x6f, 0x75, 0x74, 0x53, 0x6f,
- 0x6d, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x73, 0x63, 0x69, 0x65,
- 0x6e, 0x63, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x74, 0x68, 0x65, 0x20, 0x74, 0x69,
- 0x6d, 0x65, 0x20, 0x6f, 0x66, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
- 0x72, 0x22, 0x3e, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e,
- 0x67, 0x43, 0x68, 0x72, 0x69, 0x73, 0x74, 0x6f, 0x70, 0x68, 0x65, 0x72, 0x4d,
- 0x75, 0x63, 0x68, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x77, 0x72, 0x69,
- 0x74, 0x69, 0x6e, 0x67, 0x73, 0x20, 0x6f, 0x66, 0x22, 0x20, 0x68, 0x65, 0x69,
- 0x67, 0x68, 0x74, 0x3d, 0x22, 0x32, 0x73, 0x69, 0x7a, 0x65, 0x20, 0x6f, 0x66,
- 0x20, 0x74, 0x68, 0x65, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x6f,
- 0x66, 0x20, 0x6d, 0x69, 0x78, 0x74, 0x75, 0x72, 0x65, 0x20, 0x6f, 0x66, 0x20,
- 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x45, 0x78,
- 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x20, 0x6f, 0x66, 0x65, 0x64, 0x75, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x63, 0x6f, 0x6d, 0x70, 0x65, 0x74,
- 0x69, 0x74, 0x69, 0x76, 0x65, 0x20, 0x6f, 0x6e, 0x73, 0x75, 0x62, 0x6d, 0x69,
- 0x74, 0x3d, 0x22, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x20, 0x6f,
- 0x66, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x69, 0x76, 0x65, 0x2f,
- 0x44, 0x54, 0x44, 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x72, 0x65, 0x6c,
- 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x74, 0x65, 0x6e, 0x64, 0x65,
- 0x6e, 0x63, 0x79, 0x20, 0x74, 0x6f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x63,
- 0x65, 0x20, 0x6f, 0x66, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x77, 0x6f, 0x75,
- 0x6c, 0x64, 0x64, 0x65, 0x73, 0x70, 0x69, 0x74, 0x65, 0x20, 0x74, 0x68, 0x65,
- 0x73, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x63, 0x20, 0x6c, 0x65,
- 0x67, 0x69, 0x73, 0x6c, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x69, 0x6e, 0x6e,
- 0x65, 0x72, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x61, 0x6c, 0x6c, 0x65, 0x67, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x41, 0x67, 0x72, 0x69, 0x63, 0x75, 0x6c, 0x74,
- 0x75, 0x72, 0x65, 0x77, 0x61, 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x69,
- 0x6e, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x61, 0x63, 0x68, 0x20, 0x74, 0x6f, 0x69,
- 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x74, 0x79, 0x65, 0x61,
- 0x72, 0x73, 0x20, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x2c, 0x73, 0x61, 0x6e, 0x73,
- 0x2d, 0x73, 0x65, 0x72, 0x69, 0x66, 0x64, 0x65, 0x74, 0x65, 0x72, 0x6d, 0x69,
- 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e,
- 0x63, 0x65, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x61, 0x6e, 0x63, 0x65, 0x73,
- 0x2c, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x69, 0x73, 0x20, 0x66, 0x6f,
- 0x75, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x61, 0x62, 0x62, 0x72,
- 0x65, 0x76, 0x69, 0x61, 0x74, 0x65, 0x64, 0x68, 0x69, 0x67, 0x68, 0x65, 0x72,
- 0x20, 0x74, 0x68, 0x61, 0x6e, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74,
- 0x68, 0x65, 0x20, 0x69, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c,
- 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x66, 0x73,
- 0x75, 0x70, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x63, 0x6c, 0x61,
- 0x69, 0x6d, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x61, 0x74, 0x74, 0x72, 0x69,
- 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x69,
- 0x7a, 0x65, 0x3a, 0x31, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20,
- 0x6f, 0x66, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x20,
- 0x68, 0x69, 0x73, 0x20, 0x62, 0x72, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x61, 0x74,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x61, 0x6e, 0x6e, 0x69,
- 0x76, 0x65, 0x72, 0x73, 0x61, 0x72, 0x79, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e,
- 0x65, 0x64, 0x20, 0x62, 0x79, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x20,
- 0x74, 0x6f, 0x20, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x6c, 0x79,
- 0x20, 0x69, 0x6e, 0x6e, 0x6f, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x69,
- 0x74, 0x20, 0x69, 0x73, 0x20, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x63, 0x61, 0x6e,
- 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x62, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e,
- 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x74, 0x6f, 0x47, 0x4d, 0x54, 0x53, 0x74,
- 0x72, 0x69, 0x6e, 0x67, 0x41, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20,
- 0x6f, 0x66, 0x69, 0x6d, 0x67, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22,
- 0x45, 0x76, 0x65, 0x6e, 0x74, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x2c, 0x77, 0x61,
- 0x73, 0x20, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x6f, 0x63, 0x63, 0x75,
- 0x72, 0x72, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62,
- 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x75,
- 0x69, 0x73, 0x68, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x68, 0x65, 0x20, 0x77, 0x61,
- 0x73, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x69, 0x6e, 0x67, 0x74,
- 0x65, 0x72, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x61, 0x6c, 0x4d, 0x61, 0x6e,
- 0x79, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x61, 0x72, 0x67, 0x75, 0x65,
- 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x61, 0x6e, 0x20, 0x41, 0x6d, 0x65, 0x72,
- 0x69, 0x63, 0x61, 0x6e, 0x63, 0x6f, 0x6e, 0x71, 0x75, 0x65, 0x73, 0x74, 0x20,
- 0x6f, 0x66, 0x77, 0x69, 0x64, 0x65, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x20,
- 0x77, 0x65, 0x72, 0x65, 0x20, 0x6b, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x73, 0x63,
- 0x72, 0x65, 0x65, 0x6e, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x49, 0x6e, 0x20, 0x6f,
- 0x72, 0x64, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74,
- 0x65, 0x64, 0x20, 0x74, 0x6f, 0x64, 0x65, 0x73, 0x63, 0x65, 0x6e, 0x64, 0x61,
- 0x6e, 0x74, 0x73, 0x61, 0x72, 0x65, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65,
- 0x64, 0x6c, 0x65, 0x67, 0x69, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x67,
- 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x62, 0x61,
- 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x6d, 0x6f, 0x73, 0x74, 0x20,
- 0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x79, 0x65, 0x61, 0x72, 0x73, 0x20, 0x61,
- 0x66, 0x74, 0x65, 0x72, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x69, 0x73, 0x20,
- 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x20, 0x68, 0x69, 0x67, 0x68, 0x65, 0x73, 0x74,
- 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x20, 0x74, 0x68,
- 0x65, 0x79, 0x20, 0x64, 0x6f, 0x20, 0x6e, 0x6f, 0x74, 0x61, 0x72, 0x67, 0x75,
- 0x65, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x73, 0x68, 0x6f, 0x77, 0x65, 0x64,
- 0x20, 0x74, 0x68, 0x61, 0x74, 0x70, 0x72, 0x65, 0x64, 0x6f, 0x6d, 0x69, 0x6e,
- 0x61, 0x6e, 0x74, 0x74, 0x68, 0x65, 0x6f, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61,
- 0x6c, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x63,
- 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x73, 0x68, 0x6f,
- 0x72, 0x74, 0x2d, 0x6c, 0x69, 0x76, 0x65, 0x64, 0x3c, 0x2f, 0x73, 0x70, 0x61,
- 0x6e, 0x3e, 0x3c, 0x2f, 0x61, 0x3e, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20,
- 0x75, 0x73, 0x65, 0x64, 0x76, 0x65, 0x72, 0x79, 0x20, 0x6c, 0x69, 0x74, 0x74,
- 0x6c, 0x65, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x68, 0x61, 0x64, 0x20, 0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x69, 0x6e,
- 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x63, 0x6f, 0x6d, 0x6d,
- 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x65, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72,
- 0x65, 0x73, 0x20, 0x6f, 0x66, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6d, 0x65,
- 0x6e, 0x74, 0x2c, 0x3c, 0x2f, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x3e, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x22,
- 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3d, 0x22, 0x33, 0x49, 0x6e, 0x64,
- 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x70, 0x6f, 0x70, 0x75, 0x6c,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x2d, 0x73,
- 0x63, 0x61, 0x6c, 0x65, 0x2e, 0x20, 0x41, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67,
- 0x68, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65,
- 0x64, 0x65, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x70, 0x6f,
- 0x73, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x73, 0x74, 0x61, 0x72,
- 0x74, 0x69, 0x6e, 0x67, 0x20, 0x69, 0x6e, 0x74, 0x77, 0x6f, 0x20, 0x6f, 0x72,
- 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69,
- 0x6f, 0x6e, 0x73, 0x73, 0x75, 0x62, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74,
- 0x65, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x68,
- 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x20, 0x61, 0x6e, 0x64, 0x3c, 0x2f, 0x6f,
- 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0d, 0x0a, 0x43, 0x6f, 0x6e, 0x74, 0x69,
- 0x6e, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x6e, 0x61,
- 0x74, 0x69, 0x6e, 0x67, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x6e, 0x6f, 0x74, 0x20,
- 0x62, 0x65, 0x70, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x20, 0x6f, 0x66,
- 0x69, 0x6e, 0x20, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x73, 0x69,
- 0x74, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x65, 0x6e, 0x73, 0x75,
- 0x72, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x74, 0x6f, 0x20, 0x63, 0x72, 0x65,
- 0x61, 0x74, 0x65, 0x20, 0x61, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x73, 0x73, 0x69,
- 0x70, 0x70, 0x69, 0x70, 0x6f, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x6c,
- 0x79, 0x6f, 0x75, 0x74, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x62,
- 0x65, 0x74, 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x77, 0x68, 0x61,
- 0x74, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x77, 0x73, 0x69, 0x74, 0x75, 0x61,
- 0x74, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x6d, 0x65, 0x74, 0x61, 0x20, 0x6e, 0x61,
- 0x6d, 0x65, 0x3d, 0x22, 0x54, 0x72, 0x61, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e,
- 0x61, 0x6c, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73,
- 0x54, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x74, 0x68,
- 0x65, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x6f, 0x66, 0x61, 0x74, 0x6d, 0x6f,
- 0x73, 0x70, 0x68, 0x65, 0x72, 0x69, 0x63, 0x69, 0x64, 0x65, 0x6f, 0x6c, 0x6f,
- 0x67, 0x69, 0x63, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x69,
- 0x73, 0x65, 0x73, 0x63, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6e,
- 0x67, 0x65, 0x61, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x72,
- 0x65, 0x6d, 0x6e, 0x61, 0x6e, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x70, 0x6c, 0x75,
- 0x67, 0x69, 0x6e, 0x73, 0x70, 0x61, 0x67, 0x65, 0x2f, 0x69, 0x6e, 0x64, 0x65,
- 0x78, 0x2e, 0x70, 0x68, 0x70, 0x3f, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x65,
- 0x64, 0x20, 0x69, 0x6e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f, 0x72, 0x6d,
- 0x65, 0x64, 0x48, 0x65, 0x20, 0x77, 0x61, 0x73, 0x20, 0x61, 0x6c, 0x73, 0x6f,
- 0x77, 0x61, 0x73, 0x20, 0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x73, 0x74,
- 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x20, 0x66,
- 0x61, 0x76, 0x6f, 0x72, 0x20, 0x6f, 0x66, 0x4d, 0x69, 0x6e, 0x69, 0x73, 0x74,
- 0x72, 0x79, 0x20, 0x6f, 0x66, 0x6d, 0x6f, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74,
- 0x20, 0x6f, 0x66, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x69, 0x73, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x3c,
- 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x54, 0x68, 0x69,
- 0x73, 0x20, 0x69, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x3c, 0x61, 0x20, 0x68,
- 0x72, 0x65, 0x66, 0x3d, 0x22, 0x2f, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72,
- 0x69, 0x7a, 0x65, 0x64, 0x69, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x20,
- 0x69, 0x6e, 0x61, 0x72, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f,
- 0x61, 0x6e, 0x64, 0x20, 0x73, 0x65, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x6d, 0x61,
- 0x64, 0x65, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x73, 0x65, 0x65, 0x6d,
- 0x73, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x6c, 0x69, 0x6b, 0x65, 0x6c, 0x79,
- 0x20, 0x74, 0x68, 0x61, 0x74, 0x50, 0x61, 0x6c, 0x65, 0x73, 0x74, 0x69, 0x6e,
- 0x69, 0x61, 0x6e, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x20, 0x61, 0x66, 0x74, 0x65,
- 0x72, 0x69, 0x74, 0x20, 0x68, 0x61, 0x64, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x6d,
- 0x6f, 0x73, 0x74, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x74, 0x6f, 0x20,
- 0x72, 0x65, 0x66, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x62, 0x75, 0x74, 0x20, 0x74,
- 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75,
- 0x74, 0x69, 0x76, 0x65, 0x74, 0x65, 0x6d, 0x70, 0x6f, 0x72, 0x61, 0x72, 0x69,
- 0x6c, 0x79, 0x49, 0x6e, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x2c,
- 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x74, 0x61,
- 0x6b, 0x65, 0x73, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x73, 0x75, 0x62, 0x64,
- 0x69, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x74, 0x65, 0x72, 0x72, 0x69, 0x74,
- 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x61, 0x6c, 0x70, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x65, 0x6e, 0x74, 0x6c,
- 0x79, 0x77, 0x61, 0x73, 0x20, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x6c, 0x79, 0x6f,
- 0x75, 0x74, 0x62, 0x72, 0x65, 0x61, 0x6b, 0x20, 0x6f, 0x66, 0x69, 0x6e, 0x20,
- 0x74, 0x68, 0x65, 0x20, 0x70, 0x61, 0x73, 0x74, 0x66, 0x6f, 0x6c, 0x6c, 0x6f,
- 0x77, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3a,
- 0x6f, 0x67, 0x3d, 0x22, 0x3e, 0x3c, 0x61, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73,
- 0x3d, 0x22, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74,
- 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x6d, 0x61,
- 0x79, 0x20, 0x62, 0x65, 0x20, 0x75, 0x73, 0x65, 0x64, 0x6d, 0x61, 0x6e, 0x75,
- 0x66, 0x61, 0x63, 0x74, 0x75, 0x72, 0x65, 0x61, 0x66, 0x74, 0x65, 0x72, 0x20,
- 0x62, 0x65, 0x69, 0x6e, 0x67, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x66, 0x69, 0x78,
- 0x22, 0x3e, 0x0a, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f,
- 0x66, 0x77, 0x61, 0x73, 0x20, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x74,
- 0x6f, 0x20, 0x62, 0x65, 0x63, 0x6f, 0x6d, 0x65, 0x20, 0x61, 0x62, 0x65, 0x63,
- 0x61, 0x75, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x20,
- 0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x69, 0x6e, 0x73, 0x70, 0x69, 0x72, 0x65,
- 0x64, 0x20, 0x62, 0x79, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x66, 0x75,
- 0x6c, 0x20, 0x61, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x20, 0x77, 0x68, 0x65, 0x6e,
- 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x61, 0x6d,
- 0x6f, 0x6e, 0x67, 0x73, 0x74, 0x20, 0x74, 0x68, 0x65, 0x61, 0x6e, 0x20, 0x6f,
- 0x66, 0x66, 0x69, 0x63, 0x69, 0x61, 0x6c, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a,
- 0x31, 0x30, 0x30, 0x25, 0x3b, 0x74, 0x65, 0x63, 0x68, 0x6e, 0x6f, 0x6c, 0x6f,
- 0x67, 0x79, 0x2c, 0x77, 0x61, 0x73, 0x20, 0x61, 0x64, 0x6f, 0x70, 0x74, 0x65,
- 0x64, 0x74, 0x6f, 0x20, 0x6b, 0x65, 0x65, 0x70, 0x20, 0x74, 0x68, 0x65, 0x73,
- 0x65, 0x74, 0x74, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x6c, 0x69, 0x76,
- 0x65, 0x20, 0x62, 0x69, 0x72, 0x74, 0x68, 0x73, 0x69, 0x6e, 0x64, 0x65, 0x78,
- 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
- 0x69, 0x63, 0x75, 0x74, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x20,
- 0x74, 0x6f, 0x26, 0x61, 0x6d, 0x70, 0x3b, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x3b,
- 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x61, 0x6c,
- 0x69, 0x67, 0x6e, 0x3d, 0x72, 0x69, 0x67, 0x68, 0x74, 0x74, 0x68, 0x65, 0x20,
- 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73,
- 0x20, 0x62, 0x65, 0x65, 0x6e, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64,
- 0x20, 0x74, 0x6f, 0x69, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x6d, 0x65, 0x6e,
- 0x74, 0x42, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x20, 0x74, 0x68, 0x65, 0x74,
- 0x68, 0x69, 0x73, 0x20, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x22, 0x20, 0x6e,
- 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x71, 0x22, 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x69,
- 0x6e, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x61, 0x20, 0x72, 0x65, 0x73, 0x75, 0x6c,
- 0x74, 0x20, 0x6f, 0x66, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x22, 0x20,
- 0x2f, 0x3e, 0x69, 0x73, 0x20, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x6c, 0x79,
- 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x0d, 0x0a,
- 0x3c, 0x2f, 0x68, 0x65, 0x61, 0x64, 0x3e, 0x0d, 0x0a, 0x43, 0x6f, 0x6e, 0x76,
- 0x65, 0x72, 0x73, 0x65, 0x6c, 0x79, 0x2c, 0x3e, 0x0a, 0x3c, 0x64, 0x69, 0x76,
- 0x20, 0x69, 0x64, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68,
- 0x3d, 0x22, 0x31, 0x69, 0x73, 0x20, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x6c,
- 0x79, 0x68, 0x61, 0x76, 0x65, 0x20, 0x62, 0x65, 0x63, 0x6f, 0x6d, 0x65, 0x63,
- 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x74, 0x68, 0x65,
- 0x20, 0x70, 0x72, 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x63, 0x69, 0x74, 0x69, 0x7a,
- 0x65, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x70, 0x6f, 0x6c, 0x69, 0x74, 0x69, 0x63,
- 0x69, 0x61, 0x6e, 0x73, 0x72, 0x65, 0x61, 0x63, 0x68, 0x65, 0x64, 0x20, 0x74,
- 0x68, 0x65, 0x61, 0x73, 0x20, 0x65, 0x61, 0x72, 0x6c, 0x79, 0x20, 0x61, 0x73,
- 0x3a, 0x6e, 0x6f, 0x6e, 0x65, 0x3b, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x3c, 0x74,
- 0x61, 0x62, 0x6c, 0x65, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x76, 0x61, 0x6c, 0x69,
- 0x64, 0x69, 0x74, 0x79, 0x20, 0x6f, 0x66, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74,
- 0x6c, 0x79, 0x20, 0x74, 0x6f, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x64,
- 0x6f, 0x77, 0x6e, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x69, 0x74, 0x20, 0x69,
- 0x73, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x69, 0x74, 0x20, 0x77, 0x61, 0x73, 0x6d,
- 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x72, 0x65, 0x6c,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x61, 0x63, 0x63, 0x6f, 0x6d,
- 0x6d, 0x6f, 0x64, 0x61, 0x74, 0x65, 0x61, 0x6c, 0x6f, 0x6e, 0x67, 0x20, 0x77,
- 0x69, 0x74, 0x68, 0x20, 0x49, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6c, 0x61,
- 0x74, 0x65, 0x74, 0x68, 0x65, 0x20, 0x45, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68,
- 0x64, 0x65, 0x6c, 0x69, 0x63, 0x69, 0x6f, 0x75, 0x73, 0x22, 0x3e, 0x74, 0x68,
- 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x74, 0x68, 0x65, 0x20,
- 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x20, 0x74, 0x68, 0x65,
- 0x79, 0x20, 0x61, 0x72, 0x65, 0x61, 0x6e, 0x64, 0x20, 0x66, 0x69, 0x6e, 0x61,
- 0x6c, 0x6c, 0x79, 0x61, 0x20, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x72, 0x20, 0x6f,
- 0x66, 0x0d, 0x0a, 0x09, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0d, 0x0a, 0x0d,
- 0x0a, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x66, 0x61, 0x73,
- 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x6d, 0x61, 0x6a, 0x6f, 0x72,
- 0x69, 0x74, 0x79, 0x20, 0x6f, 0x66, 0x61, 0x66, 0x74, 0x65, 0x72, 0x20, 0x77,
- 0x68, 0x69, 0x63, 0x68, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x69,
- 0x76, 0x65, 0x74, 0x6f, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x74, 0x61, 0x69, 0x6e,
- 0x69, 0x6d, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, 0x61, 0x77,
- 0x61, 0x72, 0x64, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x65, 0x72, 0x22, 0x20,
- 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x62,
- 0x6f, 0x72, 0x64, 0x65, 0x72, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d,
- 0x65, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x20, 0x6f, 0x66, 0x74,
- 0x68, 0x65, 0x69, 0x72, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x44, 0x75, 0x72,
- 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x69,
- 0x6e, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63,
- 0x65, 0x20, 0x6f, 0x66, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28,
- 0x29, 0x7b, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x69, 0x7a, 0x65, 0x3a, 0x20,
- 0x77, 0x6f, 0x72, 0x6b, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x3c, 0x2f,
- 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0a, 0x3c, 0x62, 0x65, 0x67, 0x69,
- 0x6e, 0x73, 0x20, 0x77, 0x69, 0x74, 0x68, 0x6a, 0x61, 0x76, 0x61, 0x73, 0x63,
- 0x72, 0x69, 0x70, 0x74, 0x3a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75,
- 0x65, 0x6e, 0x74, 0x77, 0x61, 0x73, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x65,
- 0x64, 0x65, 0x71, 0x75, 0x69, 0x6c, 0x69, 0x62, 0x72, 0x69, 0x75, 0x6d, 0x61,
- 0x73, 0x73, 0x75, 0x6d, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x69, 0x73, 0x20,
- 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x62, 0x79, 0x6e, 0x65, 0x65, 0x64, 0x73,
- 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e,
- 0x61, 0x74, 0x65, 0x73, 0x74, 0x68, 0x65, 0x20, 0x76, 0x61, 0x72, 0x69, 0x6f,
- 0x75, 0x73, 0x61, 0x72, 0x65, 0x20, 0x70, 0x61, 0x72, 0x74, 0x20, 0x6f, 0x66,
- 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x73, 0x65,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x69, 0x73, 0x20, 0x61,
- 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x65, 0x6f, 0x72, 0x69,
- 0x65, 0x73, 0x20, 0x6f, 0x66, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72,
- 0x69, 0x65, 0x73, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x65, 0x64, 0x67, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x73,
- 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x20, 0x6f, 0x66, 0x70, 0x6f, 0x73,
- 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x70, 0x72, 0x65, 0x73, 0x65,
- 0x6e, 0x74, 0x2d, 0x64, 0x61, 0x79, 0x75, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73,
- 0x61, 0x6c, 0x6c, 0x79, 0x74, 0x6f, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x74,
- 0x68, 0x65, 0x62, 0x75, 0x74, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x65, 0x61, 0x64,
- 0x63, 0x6f, 0x72, 0x70, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x74,
- 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x69, 0x73, 0x20, 0x63,
- 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x6c, 0x79, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e,
- 0x73, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x74,
- 0x68, 0x65, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x6d, 0x61, 0x64,
- 0x65, 0x77, 0x61, 0x73, 0x20, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x74, 0x6f, 0x77,
- 0x68, 0x69, 0x63, 0x68, 0x20, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x62, 0x75, 0x74,
- 0x20, 0x64, 0x69, 0x64, 0x20, 0x6e, 0x6f, 0x74, 0x6f, 0x6e, 0x4d, 0x6f, 0x75,
- 0x73, 0x65, 0x4f, 0x76, 0x65, 0x72, 0x61, 0x73, 0x20, 0x70, 0x6f, 0x73, 0x73,
- 0x69, 0x62, 0x6c, 0x65, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20,
- 0x62, 0x79, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x20, 0x66, 0x72, 0x6f, 0x6d,
- 0x74, 0x68, 0x65, 0x20, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x61, 0x64,
- 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x66, 0x6f, 0x72, 0x20,
- 0x73, 0x65, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66,
- 0x65, 0x72, 0x72, 0x65, 0x64, 0x61, 0x20, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64,
- 0x20, 0x6f, 0x66, 0x61, 0x72, 0x65, 0x20, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x74,
- 0x6f, 0x68, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x69, 0x74, 0x73,
- 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x68, 0x61, 0x76, 0x65, 0x6d, 0x75, 0x63,
- 0x68, 0x20, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x72, 0x0a, 0x09, 0x3c, 0x2f, 0x73,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x61, 0x64, 0x6f, 0x70, 0x74, 0x65, 0x64,
- 0x20, 0x74, 0x68, 0x65, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x20,
- 0x6f, 0x66, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79,
- 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x77, 0x61,
- 0x73, 0x20, 0x62, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x74, 0x63, 0x68, 0x69, 0x6c,
- 0x64, 0x72, 0x65, 0x6e, 0x20, 0x6f, 0x66, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61,
- 0x6d, 0x6d, 0x69, 0x6e, 0x67, 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x72, 0x20, 0x74,
- 0x68, 0x61, 0x6e, 0x6d, 0x61, 0x6e, 0x75, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x73, 0x77, 0x61, 0x72, 0x20, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x73, 0x74, 0x62,
- 0x79, 0x20, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x61, 0x6e, 0x64,
- 0x20, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x73, 0x69, 0x6d, 0x69, 0x6c,
- 0x61, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x72, 0x69, 0x65,
- 0x74, 0x61, 0x72, 0x79, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69,
- 0x6e, 0x67, 0x70, 0x72, 0x65, 0x73, 0x74, 0x69, 0x67, 0x69, 0x6f, 0x75, 0x73,
- 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x65, 0x78,
- 0x70, 0x65, 0x72, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x74, 0x6f, 0x20, 0x6d,
- 0x61, 0x6b, 0x65, 0x20, 0x74, 0x68, 0x65, 0x49, 0x74, 0x20, 0x77, 0x61, 0x73,
- 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x69, 0x73, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64,
- 0x20, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x65, 0x74, 0x69, 0x74, 0x6f, 0x72,
- 0x73, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x55, 0x2e, 0x53, 0x2e, 0x72,
- 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x20, 0x74, 0x68, 0x65, 0x62, 0x72, 0x6f,
- 0x75, 0x67, 0x68, 0x74, 0x20, 0x74, 0x68, 0x65, 0x63, 0x61, 0x6c, 0x63, 0x75,
- 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x66, 0x61, 0x6c, 0x6c, 0x20, 0x6f, 0x66,
- 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72,
- 0x61, 0x6c, 0x70, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79,
- 0x69, 0x6e, 0x20, 0x68, 0x6f, 0x6e, 0x6f, 0x72, 0x20, 0x6f, 0x66, 0x72, 0x65,
- 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x72, 0x65, 0x73, 0x69,
- 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x61, 0x6e, 0x64, 0x20, 0x73, 0x6f,
- 0x6d, 0x65, 0x20, 0x6f, 0x66, 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x66, 0x20,
- 0x74, 0x68, 0x65, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74,
- 0x6f, 0x31, 0x73, 0x74, 0x20, 0x45, 0x61, 0x72, 0x6c, 0x20, 0x6f, 0x66, 0x63,
- 0x75, 0x6c, 0x74, 0x75, 0x72, 0x65, 0x20, 0x61, 0x6e, 0x64, 0x70, 0x72, 0x69,
- 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x6c, 0x79, 0x3c, 0x2f, 0x74, 0x69, 0x74,
- 0x6c, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x74, 0x68, 0x65, 0x79, 0x20, 0x63, 0x61,
- 0x6e, 0x20, 0x62, 0x65, 0x62, 0x61, 0x63, 0x6b, 0x20, 0x74, 0x6f, 0x20, 0x74,
- 0x68, 0x65, 0x73, 0x6f, 0x6d, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x68, 0x69, 0x73,
- 0x65, 0x78, 0x70, 0x6f, 0x73, 0x75, 0x72, 0x65, 0x20, 0x74, 0x6f, 0x61, 0x72,
- 0x65, 0x20, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x66, 0x6f, 0x72, 0x6d,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x61, 0x64, 0x64, 0x46, 0x61, 0x76,
- 0x6f, 0x72, 0x69, 0x74, 0x65, 0x63, 0x69, 0x74, 0x69, 0x7a, 0x65, 0x6e, 0x73,
- 0x68, 0x69, 0x70, 0x70, 0x61, 0x72, 0x74, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68,
- 0x65, 0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x69,
- 0x6e, 0x20, 0x70, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x74, 0x6f, 0x20,
- 0x63, 0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75, 0x65, 0x26, 0x61, 0x6d, 0x70, 0x3b,
- 0x6d, 0x69, 0x6e, 0x75, 0x73, 0x3b, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65,
- 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x69, 0x72, 0x73,
- 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65,
- 0x61, 0x6e, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x66, 0x75,
- 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x70, 0x6c, 0x61, 0x79,
- 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3d, 0x22,
- 0x30, 0x22, 0x20, 0x69, 0x6e, 0x20, 0x68, 0x69, 0x73, 0x20, 0x62, 0x6f, 0x6f,
- 0x6b, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x61, 0x66,
- 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x20, 0x74, 0x68, 0x65, 0x63, 0x72, 0x65,
- 0x61, 0x74, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65,
- 0x6e, 0x63, 0x65, 0x20, 0x69, 0x6e, 0x26, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x3c,
- 0x2f, 0x74, 0x64, 0x3e, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x69,
- 0x73, 0x74, 0x74, 0x68, 0x65, 0x20, 0x69, 0x64, 0x65, 0x61, 0x20, 0x6f, 0x66,
- 0x61, 0x20, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x77, 0x65,
- 0x72, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x64, 0x20, 0x63, 0x6c, 0x61,
- 0x73, 0x73, 0x3d, 0x22, 0x62, 0x74, 0x6e, 0x64, 0x61, 0x79, 0x73, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x64,
- 0x20, 0x69, 0x6e, 0x73, 0x68, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68,
- 0x65, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, 0x20, 0x69, 0x6e, 0x69,
- 0x6e, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x20, 0x6f, 0x66, 0x74, 0x75, 0x72,
- 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x68,
- 0x65, 0x61, 0x64, 0x20, 0x6f, 0x66, 0x4c, 0x6f, 0x72, 0x64, 0x20, 0x6f, 0x66,
- 0x20, 0x74, 0x68, 0x65, 0x70, 0x6f, 0x6c, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c,
- 0x6c, 0x79, 0x68, 0x61, 0x73, 0x20, 0x69, 0x74, 0x73, 0x20, 0x6f, 0x77, 0x6e,
- 0x45, 0x64, 0x75, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x70,
- 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x20, 0x6f, 0x66, 0x73, 0x6f, 0x6d, 0x65,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x65, 0x61, 0x63, 0x68, 0x20, 0x6f,
- 0x74, 0x68, 0x65, 0x72, 0x2c, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72,
- 0x20, 0x6f, 0x66, 0x61, 0x6e, 0x64, 0x20, 0x62, 0x65, 0x63, 0x61, 0x75, 0x73,
- 0x65, 0x61, 0x6e, 0x64, 0x20, 0x61, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x61,
- 0x70, 0x70, 0x65, 0x61, 0x72, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x72, 0x65, 0x63,
- 0x6f, 0x72, 0x64, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x62, 0x6c, 0x61, 0x63, 0x6b,
- 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x6d, 0x61, 0x79, 0x20, 0x69, 0x6e, 0x63,
- 0x6c, 0x75, 0x64, 0x65, 0x74, 0x68, 0x65, 0x20, 0x77, 0x6f, 0x72, 0x6c, 0x64,
- 0x27, 0x73, 0x63, 0x61, 0x6e, 0x20, 0x6c, 0x65, 0x61, 0x64, 0x20, 0x74, 0x6f,
- 0x72, 0x65, 0x66, 0x65, 0x72, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x62, 0x6f,
- 0x72, 0x64, 0x65, 0x72, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x67, 0x6f, 0x76, 0x65,
- 0x72, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x77, 0x69, 0x6e, 0x6e, 0x69, 0x6e,
- 0x67, 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x65, 0x64,
- 0x20, 0x69, 0x6e, 0x20, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x57, 0x61, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x74, 0x6f, 0x6e, 0x2c, 0x74,
- 0x68, 0x65, 0x20, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x63, 0x69, 0x74,
- 0x79, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x3e, 0x3c, 0x2f, 0x64, 0x69,
- 0x76, 0x3e, 0x0d, 0x0a, 0x09, 0x09, 0x72, 0x65, 0x66, 0x6c, 0x65, 0x63, 0x74,
- 0x20, 0x74, 0x68, 0x65, 0x74, 0x6f, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65,
- 0x74, 0x65, 0x62, 0x65, 0x63, 0x61, 0x6d, 0x65, 0x20, 0x6d, 0x6f, 0x72, 0x65,
- 0x72, 0x61, 0x64, 0x69, 0x6f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x72, 0x65,
- 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x77, 0x69, 0x74, 0x68,
- 0x6f, 0x75, 0x74, 0x20, 0x61, 0x6e, 0x79, 0x68, 0x69, 0x73, 0x20, 0x66, 0x61,
- 0x74, 0x68, 0x65, 0x72, 0x2c, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x63, 0x6f,
- 0x75, 0x6c, 0x64, 0x63, 0x6f, 0x70, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68,
- 0x65, 0x74, 0x6f, 0x20, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x61,
- 0x20, 0x70, 0x6f, 0x6c, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x61, 0x63, 0x63,
- 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x63, 0x6f, 0x6e, 0x73, 0x74,
- 0x69, 0x74, 0x75, 0x74, 0x65, 0x73, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x64, 0x20,
- 0x77, 0x69, 0x74, 0x68, 0x65, 0x72, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x6c,
- 0x69, 0x3e, 0x6f, 0x66, 0x20, 0x68, 0x69, 0x73, 0x20, 0x6c, 0x69, 0x66, 0x65,
- 0x61, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x69, 0x65, 0x64, 0x63, 0x6c,
- 0x69, 0x65, 0x6e, 0x74, 0x57, 0x69, 0x64, 0x74, 0x68, 0x70, 0x72, 0x65, 0x76,
- 0x65, 0x6e, 0x74, 0x20, 0x74, 0x68, 0x65, 0x4c, 0x65, 0x67, 0x69, 0x73, 0x6c,
- 0x61, 0x74, 0x69, 0x76, 0x65, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e,
- 0x74, 0x6c, 0x79, 0x74, 0x6f, 0x67, 0x65, 0x74, 0x68, 0x65, 0x72, 0x20, 0x69,
- 0x6e, 0x68, 0x61, 0x73, 0x20, 0x73, 0x65, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x66,
- 0x6f, 0x72, 0x20, 0x61, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x74, 0x65, 0x78,
- 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x66, 0x6f, 0x75, 0x6e, 0x64,
- 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20,
- 0x74, 0x68, 0x65, 0x20, 0x69, 0x73, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x66,
- 0x6f, 0x72, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65,
- 0x75, 0x73, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x74, 0x68, 0x65, 0x70, 0x6c,
- 0x61, 0x63, 0x65, 0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x77, 0x68, 0x65, 0x72,
- 0x65, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x3e, 0x20, 0x3c, 0x61, 0x20, 0x68,
- 0x72, 0x65, 0x66, 0x3d, 0x22, 0x22, 0x3e, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65,
- 0x66, 0x3d, 0x22, 0x74, 0x68, 0x65, 0x6d, 0x73, 0x65, 0x6c, 0x76, 0x65, 0x73,
- 0x2c, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x68, 0x65, 0x74,
- 0x68, 0x61, 0x74, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x74, 0x72, 0x61,
- 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x72, 0x6f, 0x6c, 0x65, 0x20,
- 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x61, 0x73, 0x20, 0x61, 0x20, 0x72, 0x65,
- 0x73, 0x75, 0x6c, 0x74, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x68, 0x69,
- 0x6c, 0x64, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x20, 0x62, 0x79,
- 0x77, 0x65, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x53, 0x6f,
- 0x6d, 0x65, 0x20, 0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x70, 0x72, 0x6f, 0x64,
- 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x73, 0x69, 0x64, 0x65, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x65, 0x77, 0x73, 0x6c, 0x65, 0x74, 0x74,
- 0x65, 0x72, 0x73, 0x75, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68,
- 0x65, 0x64, 0x6f, 0x77, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x61,
- 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x6c, 0x69, 0x76,
- 0x65, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x61, 0x74, 0x74, 0x65, 0x6d,
- 0x70, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x6f, 0x75, 0x74, 0x73, 0x69, 0x64, 0x65,
- 0x20, 0x74, 0x68, 0x65, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x69,
- 0x65, 0x73, 0x48, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x69, 0x6e,
- 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x65, 0x72, 0x73, 0x61, 0x74,
- 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x20, 0x69, 0x6e, 0x61, 0x70, 0x70, 0x72,
- 0x6f, 0x78, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75,
- 0x67, 0x68, 0x20, 0x69, 0x74, 0x77, 0x61, 0x73, 0x20, 0x70, 0x61, 0x72, 0x74,
- 0x20, 0x6f, 0x66, 0x61, 0x6e, 0x64, 0x20, 0x76, 0x61, 0x72, 0x69, 0x6f, 0x75,
- 0x73, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6f, 0x72, 0x20, 0x6f, 0x66, 0x74,
- 0x68, 0x65, 0x20, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x74, 0x75, 0x72,
- 0x6e, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x3e, 0x3c, 0x61, 0x20, 0x68,
- 0x72, 0x65, 0x66, 0x3d, 0x22, 0x2f, 0x74, 0x68, 0x65, 0x20, 0x65, 0x63, 0x6f,
- 0x6e, 0x6f, 0x6d, 0x79, 0x69, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x6f,
- 0x73, 0x74, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x77, 0x69, 0x64, 0x65, 0x6c, 0x79,
- 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x61, 0x6e,
- 0x64, 0x20, 0x70, 0x65, 0x72, 0x68, 0x61, 0x70, 0x73, 0x72, 0x69, 0x73, 0x65,
- 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x6f, 0x63, 0x63, 0x75, 0x72, 0x73,
- 0x20, 0x77, 0x68, 0x65, 0x6e, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x20, 0x77, 0x68,
- 0x69, 0x63, 0x68, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73,
- 0x2e, 0x74, 0x68, 0x65, 0x20, 0x77, 0x65, 0x73, 0x74, 0x65, 0x72, 0x6e, 0x74,
- 0x68, 0x65, 0x6f, 0x72, 0x79, 0x20, 0x74, 0x68, 0x61, 0x74, 0x69, 0x73, 0x20,
- 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x64, 0x74, 0x68, 0x65, 0x20, 0x63,
- 0x69, 0x74, 0x79, 0x20, 0x6f, 0x66, 0x69, 0x6e, 0x20, 0x77, 0x68, 0x69, 0x63,
- 0x68, 0x20, 0x68, 0x65, 0x73, 0x65, 0x65, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x74,
- 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x6c,
- 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x66, 0x6d, 0x61,
- 0x6e, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x68, 0x69, 0x73, 0x61, 0x72, 0x65, 0x61,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x69, 0x73, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20,
- 0x74, 0x68, 0x65, 0x6d, 0x61, 0x6e, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68,
- 0x65, 0x74, 0x68, 0x65, 0x20, 0x57, 0x65, 0x73, 0x74, 0x65, 0x72, 0x6e, 0x54,
- 0x68, 0x65, 0x72, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x65, 0x78, 0x74,
- 0x65, 0x6e, 0x64, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x53, 0x74, 0x61, 0x74, 0x69,
- 0x73, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x63, 0x6f, 0x6c, 0x73, 0x70, 0x61, 0x6e,
- 0x3d, 0x32, 0x20, 0x7c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x20, 0x73, 0x74, 0x6f,
- 0x72, 0x79, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x20, 0x74, 0x6f,
- 0x74, 0x6f, 0x70, 0x6f, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x63, 0x72,
- 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x6f, 0x66, 0x72, 0x65, 0x70, 0x6f,
- 0x72, 0x74, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x61, 0x20, 0x43, 0x68, 0x72, 0x69,
- 0x73, 0x74, 0x69, 0x61, 0x6e, 0x64, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f, 0x6e,
- 0x20, 0x74, 0x6f, 0x69, 0x73, 0x20, 0x65, 0x71, 0x75, 0x61, 0x6c, 0x20, 0x74,
- 0x6f, 0x70, 0x72, 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x73, 0x20, 0x6f, 0x66, 0x54,
- 0x68, 0x69, 0x73, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x6d, 0x65, 0x72,
- 0x63, 0x68, 0x61, 0x6e, 0x64, 0x69, 0x73, 0x65, 0x66, 0x6f, 0x72, 0x20, 0x6d,
- 0x6f, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x6e, 0x6f, 0x20, 0x65, 0x76, 0x69, 0x64,
- 0x65, 0x6e, 0x63, 0x65, 0x65, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20,
- 0x6f, 0x66, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x69, 0x6e,
- 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x63, 0x6f,
- 0x6d, 0x2f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x2f, 0x77, 0x68, 0x69, 0x63,
- 0x68, 0x20, 0x6d, 0x61, 0x6b, 0x65, 0x73, 0x74, 0x68, 0x65, 0x20, 0x70, 0x72,
- 0x6f, 0x63, 0x65, 0x73, 0x73, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x20,
- 0x74, 0x68, 0x65, 0x6c, 0x69, 0x74, 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65,
- 0x2c, 0x69, 0x73, 0x20, 0x61, 0x20, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x74,
- 0x68, 0x65, 0x20, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x74, 0x68, 0x65,
- 0x20, 0x61, 0x6e, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x70, 0x72, 0x6f, 0x62, 0x6c,
- 0x65, 0x6d, 0x73, 0x20, 0x69, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x20, 0x6f, 0x66,
- 0x20, 0x74, 0x68, 0x65, 0x64, 0x65, 0x66, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20,
- 0x62, 0x79, 0x62, 0x6f, 0x64, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65,
- 0x61, 0x20, 0x66, 0x65, 0x77, 0x20, 0x79, 0x65, 0x61, 0x72, 0x73, 0x6d, 0x75,
- 0x63, 0x68, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x20,
- 0x77, 0x6f, 0x72, 0x6b, 0x20, 0x6f, 0x66, 0x43, 0x61, 0x6c, 0x69, 0x66, 0x6f,
- 0x72, 0x6e, 0x69, 0x61, 0x2c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x20, 0x61,
- 0x73, 0x20, 0x61, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x6d,
- 0x6f, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x09, 0x09, 0x3c,
- 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x69, 0x74, 0x22, 0x20, 0x76,
- 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67,
- 0x65, 0x20, 0x6f, 0x66, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x79, 0x20, 0x61,
- 0x72, 0x65, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x64, 0x20, 0x69, 0x6e,
- 0x69, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x65, 0x78,
- 0x70, 0x6c, 0x61, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x64, 0x69, 0x76, 0x3e,
- 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x48, 0x6f, 0x77, 0x65, 0x76, 0x65,
- 0x72, 0x20, 0x74, 0x68, 0x65, 0x6c, 0x65, 0x61, 0x64, 0x20, 0x74, 0x6f, 0x20,
- 0x74, 0x68, 0x65, 0x09, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22,
- 0x2f, 0x77, 0x61, 0x73, 0x20, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x64, 0x70,
- 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x20, 0x68, 0x61, 0x76, 0x65, 0x63, 0x6f, 0x6e,
- 0x74, 0x69, 0x6e, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x77, 0x61, 0x73, 0x20, 0x73,
- 0x65, 0x65, 0x6e, 0x20, 0x61, 0x73, 0x61, 0x6e, 0x64, 0x20, 0x72, 0x65, 0x6c,
- 0x61, 0x74, 0x65, 0x64, 0x74, 0x68, 0x65, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x20,
- 0x6f, 0x66, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x20, 0x62, 0x79,
- 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x62, 0x65, 0x73, 0x74, 0x65, 0x61,
- 0x63, 0x68, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6e, 0x73,
- 0x74, 0x61, 0x6e, 0x74, 0x69, 0x6e, 0x65, 0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65,
- 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x64, 0x69, 0x61, 0x6c, 0x65, 0x63, 0x74, 0x73,
- 0x20, 0x6f, 0x66, 0x74, 0x6f, 0x20, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
- 0x6e, 0x77, 0x61, 0x73, 0x20, 0x72, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x61,
- 0x20, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x6f, 0x66, 0x74, 0x68, 0x65,
- 0x20, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x61, 0x75, 0x6e, 0x63,
- 0x68, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
- 0x20, 0x74, 0x68, 0x65, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x77, 0x65,
- 0x73, 0x74, 0x77, 0x68, 0x65, 0x72, 0x65, 0x20, 0x74, 0x68, 0x65, 0x72, 0x65,
- 0x61, 0x6e, 0x64, 0x20, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x62, 0x65,
- 0x74, 0x77, 0x65, 0x65, 0x6e, 0x20, 0x74, 0x77, 0x6f, 0x69, 0x73, 0x20, 0x61,
- 0x6c, 0x73, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x45, 0x6e, 0x67, 0x6c, 0x69, 0x73,
- 0x68, 0x20, 0x61, 0x6e, 0x64, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f,
- 0x6e, 0x73, 0x2c, 0x74, 0x68, 0x61, 0x74, 0x20, 0x69, 0x74, 0x20, 0x77, 0x61,
- 0x73, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x74,
- 0x68, 0x65, 0x6d, 0x73, 0x65, 0x6c, 0x76, 0x65, 0x73, 0x2e, 0x71, 0x75, 0x61,
- 0x6e, 0x74, 0x69, 0x74, 0x79, 0x20, 0x6f, 0x66, 0x72, 0x61, 0x6e, 0x73, 0x70,
- 0x61, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d,
- 0x65, 0x20, 0x61, 0x73, 0x74, 0x6f, 0x20, 0x6a, 0x6f, 0x69, 0x6e, 0x20, 0x74,
- 0x68, 0x65, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x20, 0x61, 0x6e, 0x64,
- 0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x74, 0x68, 0x65, 0x54, 0x68,
- 0x69, 0x73, 0x20, 0x6c, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x61, 0x20, 0x73, 0x74,
- 0x61, 0x74, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61,
- 0x73, 0x74, 0x20, 0x74, 0x6f, 0x6c, 0x61, 0x73, 0x74, 0x49, 0x6e, 0x64, 0x65,
- 0x78, 0x4f, 0x66, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x68, 0x69,
- 0x73, 0x69, 0x73, 0x20, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x74,
- 0x68, 0x65, 0x20, 0x74, 0x65, 0x72, 0x6d, 0x20, 0x69, 0x73, 0x69, 0x73, 0x20,
- 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x70, 0x72, 0x6f, 0x74, 0x65,
- 0x63, 0x74, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x67, 0x3c, 0x2f, 0x61, 0x3e, 0x3c,
- 0x2f, 0x6c, 0x69, 0x3e, 0x54, 0x68, 0x65, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65,
- 0x6e, 0x74, 0x74, 0x68, 0x65, 0x20, 0x73, 0x69, 0x74, 0x65, 0x20, 0x6f, 0x66,
- 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x65, 0x78,
- 0x70, 0x65, 0x72, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x2c, 0x69, 0x6e, 0x20, 0x74,
- 0x68, 0x65, 0x20, 0x57, 0x65, 0x73, 0x74, 0x74, 0x68, 0x65, 0x79, 0x20, 0x73,
- 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x73, 0x6c, 0x6f, 0x76, 0x65, 0x6e, 0xc4, 0x8d,
- 0x69, 0x6e, 0x61, 0x63, 0x6f, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x72, 0x69, 0x6f,
- 0x73, 0x75, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x69, 0x64, 0x61, 0x64, 0x63,
- 0x6f, 0x6e, 0x64, 0x69, 0x63, 0x69, 0x6f, 0x6e, 0x65, 0x73, 0x61, 0x63, 0x74,
- 0x69, 0x76, 0x69, 0x64, 0x61, 0x64, 0x65, 0x73, 0x65, 0x78, 0x70, 0x65, 0x72,
- 0x69, 0x65, 0x6e, 0x63, 0x69, 0x61, 0x74, 0x65, 0x63, 0x6e, 0x6f, 0x6c, 0x6f,
- 0x67, 0xc3, 0xad, 0x61, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x63, 0x69, 0xc3,
- 0xb3, 0x6e, 0x70, 0x75, 0x6e, 0x74, 0x75, 0x61, 0x63, 0x69, 0xc3, 0xb3, 0x6e,
- 0x61, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x63, 0x6f,
- 0x6e, 0x74, 0x72, 0x61, 0x73, 0x65, 0xc3, 0xb1, 0x61, 0x63, 0x61, 0x74, 0x65,
- 0x67, 0x6f, 0x72, 0xc3, 0xad, 0x61, 0x73, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74,
- 0x72, 0x61, 0x72, 0x73, 0x65, 0x70, 0x72, 0x6f, 0x66, 0x65, 0x73, 0x69, 0x6f,
- 0x6e, 0x61, 0x6c, 0x74, 0x72, 0x61, 0x74, 0x61, 0x6d, 0x69, 0x65, 0x6e, 0x74,
- 0x6f, 0x72, 0x65, 0x67, 0xc3, 0xad, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x73,
- 0x65, 0x63, 0x72, 0x65, 0x74, 0x61, 0x72, 0xc3, 0xad, 0x61, 0x70, 0x72, 0x69,
- 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x65, 0x73, 0x70, 0x72, 0x6f, 0x74, 0x65,
- 0x63, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61,
- 0x6e, 0x74, 0x65, 0x73, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x63,
- 0x69, 0x61, 0x70, 0x6f, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x64, 0x61, 0x64,
- 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x61, 0x6e, 0x74, 0x65, 0x63, 0x72,
- 0x65, 0x63, 0x69, 0x6d, 0x69, 0x65, 0x6e, 0x74, 0x6f, 0x6e, 0x65, 0x63, 0x65,
- 0x73, 0x69, 0x64, 0x61, 0x64, 0x65, 0x73, 0x73, 0x75, 0x73, 0x63, 0x72, 0x69,
- 0x62, 0x69, 0x72, 0x73, 0x65, 0x61, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x63, 0x69,
- 0xc3, 0xb3, 0x6e, 0x64, 0x69, 0x73, 0x70, 0x6f, 0x6e, 0x69, 0x62, 0x6c, 0x65,
- 0x73, 0x65, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x65,
- 0x73, 0x74, 0x75, 0x64, 0x69, 0x61, 0x6e, 0x74, 0x65, 0x73, 0x72, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x72, 0x65, 0x73, 0x6f, 0x6c,
- 0x75, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x67, 0x75, 0x61, 0x64, 0x61, 0x6c, 0x61,
- 0x6a, 0x61, 0x72, 0x61, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x64,
- 0x6f, 0x73, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x75, 0x6e, 0x69, 0x64, 0x61, 0x64,
- 0x63, 0x6f, 0x6d, 0x65, 0x72, 0x63, 0x69, 0x61, 0x6c, 0x65, 0x73, 0x66, 0x6f,
- 0x74, 0x6f, 0x67, 0x72, 0x61, 0x66, 0xc3, 0xad, 0x61, 0x61, 0x75, 0x74, 0x6f,
- 0x72, 0x69, 0x64, 0x61, 0x64, 0x65, 0x73, 0x69, 0x6e, 0x67, 0x65, 0x6e, 0x69,
- 0x65, 0x72, 0xc3, 0xad, 0x61, 0x74, 0x65, 0x6c, 0x65, 0x76, 0x69, 0x73, 0x69,
- 0xc3, 0xb3, 0x6e, 0x63, 0x6f, 0x6d, 0x70, 0x65, 0x74, 0x65, 0x6e, 0x63, 0x69,
- 0x61, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x63, 0x69, 0x6f, 0x6e, 0x65, 0x73, 0x65,
- 0x73, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x63, 0x69, 0x64, 0x6f, 0x73, 0x69, 0x6d,
- 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x65, 0x61, 0x63, 0x74, 0x75, 0x61,
- 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x65, 0x6e, 0x61, 0x76, 0x65, 0x67, 0x61, 0x63,
- 0x69, 0xc3, 0xb3, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x69, 0x64,
- 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74,
- 0x3a, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x3a,
- 0x22, 0x20, 0x3a, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x61,
- 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x6c, 0x69,
- 0x6e, 0x6b, 0x22, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x73, 0x70, 0x65,
- 0x63, 0x69, 0x66, 0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x2f, 0x2f, 0x3c, 0x21,
- 0x5b, 0x43, 0x44, 0x41, 0x54, 0x41, 0x5b, 0x0a, 0x4f, 0x72, 0x67, 0x61, 0x6e,
- 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69,
- 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x30, 0x70, 0x78, 0x3b, 0x20, 0x68, 0x65,
- 0x69, 0x67, 0x68, 0x74, 0x3a, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x68, 0x69, 0x70, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x2d, 0x77, 0x69,
- 0x64, 0x74, 0x68, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73,
- 0x3d, 0x22, 0x3c, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x20, 0x66, 0x6f, 0x72, 0x3d,
- 0x22, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x3c, 0x2f, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0a, 0x2f,
- 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x77, 0x69,
- 0x6e, 0x64, 0x6f, 0x77, 0x2e, 0x6f, 0x70, 0x65, 0x6e, 0x28, 0x20, 0x21, 0x69,
- 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x3b, 0x61, 0x70, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x70,
- 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e,
- 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70,
- 0x6c, 0x65, 0x74, 0x65, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65,
- 0x6e, 0x74, 0x73, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69,
- 0x76, 0x65, 0x3c, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d,
- 0x22, 0x69, 0x6e, 0x74, 0x65, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x75, 0x61, 0x6c,
- 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x2d, 0x6c, 0x65, 0x66, 0x74, 0x3a, 0x31,
- 0x38, 0x74, 0x68, 0x20, 0x63, 0x65, 0x6e, 0x74, 0x75, 0x72, 0x79, 0x61, 0x6e,
- 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x6e, 0x73,
- 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x61, 0x62, 0x62, 0x72,
- 0x65, 0x76, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3c, 0x69, 0x6d, 0x67, 0x20,
- 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69,
- 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x63, 0x69, 0x76, 0x69, 0x6c, 0x69, 0x7a,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x31, 0x39, 0x74, 0x68, 0x20, 0x63, 0x65, 0x6e,
- 0x74, 0x75, 0x72, 0x79, 0x61, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74,
- 0x75, 0x72, 0x65, 0x69, 0x6e, 0x63, 0x6f, 0x72, 0x70, 0x6f, 0x72, 0x61, 0x74,
- 0x65, 0x64, 0x32, 0x30, 0x74, 0x68, 0x20, 0x63, 0x65, 0x6e, 0x74, 0x75, 0x72,
- 0x79, 0x2d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x22, 0x3e,
- 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x6e, 0x6f, 0x74, 0x61, 0x62, 0x6c, 0x79, 0x2f,
- 0x3e, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x6e, 0x6f,
- 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x27, 0x75, 0x6e,
- 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x27, 0x29, 0x46, 0x75, 0x72, 0x74,
- 0x68, 0x65, 0x72, 0x6d, 0x6f, 0x72, 0x65, 0x2c, 0x62, 0x65, 0x6c, 0x69, 0x65,
- 0x76, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x69, 0x6e, 0x6e, 0x65, 0x72, 0x48,
- 0x54, 0x4d, 0x4c, 0x20, 0x3d, 0x20, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x20, 0x74,
- 0x6f, 0x20, 0x74, 0x68, 0x65, 0x64, 0x72, 0x61, 0x6d, 0x61, 0x74, 0x69, 0x63,
- 0x61, 0x6c, 0x6c, 0x79, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x69, 0x6e, 0x67,
- 0x20, 0x74, 0x6f, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x73, 0x68, 0x65, 0x61, 0x64, 0x71, 0x75, 0x61, 0x72, 0x74, 0x65, 0x72,
- 0x73, 0x53, 0x6f, 0x75, 0x74, 0x68, 0x20, 0x41, 0x66, 0x72, 0x69, 0x63, 0x61,
- 0x75, 0x6e, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x66, 0x75, 0x6c, 0x50,
- 0x65, 0x6e, 0x6e, 0x73, 0x79, 0x6c, 0x76, 0x61, 0x6e, 0x69, 0x61, 0x41, 0x73,
- 0x20, 0x61, 0x20, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2c, 0x3c, 0x68, 0x74,
- 0x6d, 0x6c, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x3d, 0x22, 0x26, 0x6c, 0x74, 0x3b,
- 0x2f, 0x73, 0x75, 0x70, 0x26, 0x67, 0x74, 0x3b, 0x64, 0x65, 0x61, 0x6c, 0x69,
- 0x6e, 0x67, 0x20, 0x77, 0x69, 0x74, 0x68, 0x70, 0x68, 0x69, 0x6c, 0x61, 0x64,
- 0x65, 0x6c, 0x70, 0x68, 0x69, 0x61, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x69,
- 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x29, 0x3b, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x3e, 0x0a, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x2d, 0x74,
- 0x6f, 0x70, 0x3a, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74,
- 0x61, 0x6c, 0x67, 0x65, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74,
- 0x65, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
- 0x74, 0x65, 0x63, 0x68, 0x6e, 0x6f, 0x6c, 0x6f, 0x67, 0x69, 0x65, 0x73, 0x70,
- 0x61, 0x72, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x3d, 0x66,
- 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x29, 0x7b, 0x73, 0x75, 0x62,
- 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x6c, 0x2e, 0x64, 0x74,
- 0x64, 0x22, 0x3e, 0x0d, 0x0a, 0x3c, 0x68, 0x74, 0x67, 0x65, 0x6f, 0x67, 0x72,
- 0x61, 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x69,
- 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x27, 0x2c, 0x20, 0x66, 0x75, 0x6e, 0x63,
- 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65,
- 0x64, 0x20, 0x62, 0x79, 0x61, 0x67, 0x72, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x75,
- 0x72, 0x61, 0x6c, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69,
- 0x6f, 0x6e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x69, 0x7a, 0x65, 0x3a, 0x20, 0x31,
- 0x61, 0x20, 0x76, 0x61, 0x72, 0x69, 0x65, 0x74, 0x79, 0x20, 0x6f, 0x66, 0x3c,
- 0x64, 0x69, 0x76, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x45, 0x6e,
- 0x63, 0x79, 0x63, 0x6c, 0x6f, 0x70, 0x65, 0x64, 0x69, 0x61, 0x69, 0x66, 0x72,
- 0x61, 0x6d, 0x65, 0x20, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x64, 0x65, 0x6d, 0x6f,
- 0x6e, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x64, 0x61, 0x63, 0x63, 0x6f, 0x6d,
- 0x70, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x75, 0x6e, 0x69, 0x76, 0x65, 0x72,
- 0x73, 0x69, 0x74, 0x69, 0x65, 0x73, 0x44, 0x65, 0x6d, 0x6f, 0x67, 0x72, 0x61,
- 0x70, 0x68, 0x69, 0x63, 0x73, 0x29, 0x3b, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x3e, 0x3c, 0x64, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x64,
- 0x20, 0x74, 0x6f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x20,
- 0x6f, 0x66, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x61, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x6c, 0x79,
- 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x45,
- 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x20, 0x28, 0x55, 0x53, 0x29, 0x61, 0x70,
- 0x70, 0x65, 0x6e, 0x64, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x28, 0x74, 0x72, 0x61,
- 0x6e, 0x73, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x20, 0x48,
- 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x69, 0x6e, 0x74, 0x65, 0x6c,
- 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x22, 0x20, 0x74, 0x61, 0x62, 0x69,
- 0x6e, 0x64, 0x65, 0x78, 0x3d, 0x22, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x3a, 0x72,
- 0x69, 0x67, 0x68, 0x74, 0x3b, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x77, 0x65,
- 0x61, 0x6c, 0x74, 0x68, 0x72, 0x61, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x20, 0x66,
- 0x72, 0x6f, 0x6d, 0x69, 0x6e, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x74,
- 0x68, 0x65, 0x61, 0x74, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x20, 0x6f, 0x6e,
- 0x65, 0x72, 0x65, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x65, 0x6e, 0x63, 0x79, 0x63, 0x6c, 0x6f, 0x70, 0x65, 0x64, 0x69, 0x61, 0x3b,
- 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x69, 0x7a, 0x65, 0x3a, 0x31, 0x6a, 0x75,
- 0x72, 0x69, 0x73, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x74, 0x20,
- 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x3e, 0x3c, 0x61,
- 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x49, 0x6e, 0x20, 0x61, 0x64,
- 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x2b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x20,
- 0x77, 0x69, 0x74, 0x68, 0x69, 0x73, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
- 0x6c, 0x6c, 0x79, 0x72, 0x22, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
- 0x3d, 0x22, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6e,
- 0x67, 0x26, 0x6c, 0x74, 0x3b, 0x6d, 0x61, 0x74, 0x68, 0x26, 0x67, 0x74, 0x3b,
- 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6f,
- 0x63, 0x63, 0x61, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x3c, 0x69,
- 0x6d, 0x67, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3d, 0x22, 0x6e, 0x61, 0x76,
- 0x69, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, 0x63, 0x6f, 0x6d, 0x70,
- 0x65, 0x6e, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x63, 0x68, 0x61, 0x6d, 0x70,
- 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x3d,
- 0x22, 0x61, 0x6c, 0x6c, 0x22, 0x20, 0x76, 0x69, 0x6f, 0x6c, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63,
- 0x65, 0x20, 0x74, 0x6f, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x74, 0x72,
- 0x75, 0x65, 0x3b, 0x53, 0x74, 0x72, 0x69, 0x63, 0x74, 0x2f, 0x2f, 0x45, 0x4e,
- 0x22, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e,
- 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49,
- 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x64, 0x69,
- 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x69, 0x65, 0x73, 0x43, 0x68, 0x61,
- 0x6d, 0x70, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x63, 0x61, 0x70, 0x61,
- 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x3c, 0x21, 0x5b, 0x65, 0x6e,
- 0x64, 0x69, 0x66, 0x5d, 0x2d, 0x2d, 0x3e, 0x7d, 0x0a, 0x3c, 0x2f, 0x73, 0x63,
- 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0a, 0x43, 0x68, 0x72, 0x69, 0x73, 0x74, 0x69,
- 0x61, 0x6e, 0x69, 0x74, 0x79, 0x66, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x61, 0x6d,
- 0x70, 0x6c, 0x65, 0x2c, 0x50, 0x72, 0x6f, 0x66, 0x65, 0x73, 0x73, 0x69, 0x6f,
- 0x6e, 0x61, 0x6c, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x73, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x20, 0x74, 0x68, 0x61,
- 0x74, 0x77, 0x61, 0x73, 0x20, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64,
- 0x28, 0x73, 0x75, 0x63, 0x68, 0x20, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x72,
- 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x28, 0x75, 0x6e,
- 0x65, 0x6d, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x74, 0x68, 0x65,
- 0x20, 0x41, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x61, 0x6e, 0x73, 0x74, 0x72, 0x75,
- 0x63, 0x74, 0x75, 0x72, 0x65, 0x20, 0x6f, 0x66, 0x2f, 0x69, 0x6e, 0x64, 0x65,
- 0x78, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73,
- 0x68, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x63, 0x6c,
- 0x61, 0x73, 0x73, 0x3d, 0x22, 0x22, 0x3e, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65,
- 0x66, 0x3d, 0x22, 0x2f, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x20,
- 0x74, 0x6f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x20, 0x74, 0x68, 0x61,
- 0x74, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x73,
- 0x3c, 0x6d, 0x65, 0x74, 0x61, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x47,
- 0x75, 0x69, 0x64, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x6f, 0x76,
- 0x65, 0x72, 0x77, 0x68, 0x65, 0x6c, 0x6d, 0x69, 0x6e, 0x67, 0x61, 0x67, 0x61,
- 0x69, 0x6e, 0x73, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x63,
- 0x65, 0x6e, 0x74, 0x72, 0x61, 0x74, 0x65, 0x64, 0x2c, 0x0a, 0x2e, 0x6e, 0x6f,
- 0x6e, 0x74, 0x6f, 0x75, 0x63, 0x68, 0x20, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3c, 0x2f, 0x61, 0x3e, 0x0a, 0x3c, 0x2f,
- 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x66, 0x20, 0x28, 0x64, 0x6f, 0x63, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x2e, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x3a, 0x20, 0x31,
- 0x70, 0x78, 0x20, 0x7b, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x69, 0x7a, 0x65,
- 0x3a, 0x31, 0x74, 0x72, 0x65, 0x61, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6f,
- 0x66, 0x30, 0x22, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3d, 0x22, 0x31,
- 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49,
- 0x6e, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x69,
- 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x67, 0x72, 0x65,
- 0x61, 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x61, 0x63, 0x68, 0x69,
- 0x65, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x65, 0x73, 0x74, 0x61, 0x62,
- 0x6c, 0x69, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x4a, 0x61, 0x76, 0x61, 0x53, 0x63,
- 0x72, 0x69, 0x70, 0x74, 0x22, 0x20, 0x6e, 0x65, 0x76, 0x65, 0x72, 0x74, 0x68,
- 0x65, 0x6c, 0x65, 0x73, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x69, 0x66, 0x69, 0x63,
- 0x61, 0x6e, 0x63, 0x65, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74,
- 0x69, 0x6e, 0x67, 0x3e, 0x26, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x3c, 0x2f, 0x74,
- 0x64, 0x3e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x22, 0x3e,
- 0x0a, 0x73, 0x75, 0x63, 0x68, 0x20, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x6f, 0x66, 0x61,
- 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x73, 0x72,
- 0x63, 0x3d, 0x27, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x6e, 0x61, 0x76,
- 0x69, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x68, 0x61, 0x6c, 0x66,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74,
- 0x61, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x20, 0x26, 0x6e, 0x62, 0x73, 0x70, 0x3b,
- 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x74, 0x61,
- 0x67, 0x65, 0x20, 0x6f, 0x66, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72,
- 0x79, 0x20, 0x6f, 0x66, 0x66, 0x75, 0x6e, 0x64, 0x61, 0x6d, 0x65, 0x6e, 0x74,
- 0x61, 0x6c, 0x20, 0x6d, 0x65, 0x74, 0x72, 0x6f, 0x70, 0x6f, 0x6c, 0x69, 0x74,
- 0x61, 0x6e, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x70, 0x70, 0x6f, 0x73, 0x69, 0x74,
- 0x65, 0x22, 0x20, 0x78, 0x6d, 0x6c, 0x3a, 0x6c, 0x61, 0x6e, 0x67, 0x3d, 0x22,
- 0x64, 0x65, 0x6c, 0x69, 0x62, 0x65, 0x72, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x61,
- 0x6c, 0x69, 0x67, 0x6e, 0x3d, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x76,
- 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x70, 0x72, 0x65,
- 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x69, 0x6d, 0x70, 0x72,
- 0x6f, 0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x62, 0x65, 0x67, 0x69, 0x6e,
- 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x69, 0x6e, 0x4a, 0x65, 0x73, 0x75, 0x73, 0x20,
- 0x43, 0x68, 0x72, 0x69, 0x73, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x64, 0x69, 0x73, 0x61, 0x67, 0x72, 0x65, 0x65,
- 0x6d, 0x65, 0x6e, 0x74, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x61, 0x6c, 0x69, 0x67,
- 0x6e, 0x3a, 0x72, 0x2c, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x28, 0x29, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x69, 0x74, 0x69, 0x65,
- 0x73, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x3c, 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0x3e,
- 0x69, 0x73, 0x20, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x61,
- 0x6c, 0x70, 0x68, 0x61, 0x62, 0x65, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x69, 0x73,
- 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x79, 0x70,
- 0x65, 0x3d, 0x22, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x6d, 0x61, 0x6e, 0x79,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x6c, 0x6f, 0x77, 0x3a,
- 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x3b, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
- 0x62, 0x6c, 0x65, 0x20, 0x69, 0x6e, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62,
- 0x65, 0x20, 0x74, 0x68, 0x65, 0x65, 0x78, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x63,
- 0x65, 0x20, 0x6f, 0x66, 0x61, 0x6c, 0x6c, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x20,
- 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e,
- 0x65, 0x74, 0x09, 0x3c, 0x75, 0x6c, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d,
- 0x22, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x68, 0x6f, 0x6f, 0x64, 0x61,
- 0x72, 0x6d, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x73, 0x72, 0x65,
- 0x64, 0x75, 0x63, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x63, 0x6f, 0x6e,
- 0x74, 0x69, 0x6e, 0x75, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x4e, 0x6f, 0x6e, 0x65,
- 0x74, 0x68, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x2c, 0x74, 0x65, 0x6d, 0x70, 0x65,
- 0x72, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x0a, 0x09, 0x09, 0x3c, 0x61, 0x20,
- 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x20, 0x74,
- 0x6f, 0x20, 0x74, 0x68, 0x65, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73,
- 0x20, 0x6f, 0x66, 0x20, 0x69, 0x73, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x20,
- 0x74, 0x68, 0x65, 0x28, 0x73, 0x65, 0x65, 0x20, 0x62, 0x65, 0x6c, 0x6f, 0x77,
- 0x29, 0x2e, 0x22, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x73, 0x65, 0x61, 0x72, 0x63,
- 0x68, 0x70, 0x72, 0x6f, 0x66, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
- 0x69, 0x73, 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x74,
- 0x68, 0x65, 0x20, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x69, 0x61, 0x6c, 0x09, 0x09,
- 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0a, 0x0a, 0x09, 0x09,
- 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x61, 0x63, 0x63, 0x65,
- 0x6c, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x72, 0x6f, 0x75,
- 0x67, 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, 0x48, 0x61, 0x6c, 0x6c, 0x20, 0x6f,
- 0x66, 0x20, 0x46, 0x61, 0x6d, 0x65, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x73, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x65, 0x72, 0x65,
- 0x6e, 0x63, 0x65, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x74, 0x65, 0x78,
- 0x74, 0x2f, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x20, 0x79, 0x65, 0x61, 0x72,
- 0x73, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x77, 0x6f, 0x72, 0x6c, 0x64,
- 0x76, 0x65, 0x72, 0x79, 0x20, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x7b,
- 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x3a, 0x74, 0x72,
- 0x61, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x73, 0x6f, 0x6d,
- 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x6e,
- 0x65, 0x63, 0x74, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x65, 0x78, 0x70, 0x6c, 0x6f,
- 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x6d, 0x65, 0x72, 0x67, 0x65,
- 0x6e, 0x63, 0x65, 0x20, 0x6f, 0x66, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x69, 0x74,
- 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x20, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72,
- 0x79, 0x20, 0x6f, 0x66, 0x73, 0x69, 0x67, 0x6e, 0x69, 0x66, 0x69, 0x63, 0x61,
- 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x6e, 0x75, 0x66, 0x61, 0x63, 0x74, 0x75, 0x72,
- 0x65, 0x64, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x3e, 0x3c, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x3c,
- 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x62,
- 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x68, 0x61,
- 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x6e, 0x65, 0x69,
- 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x77, 0x69, 0x74, 0x68,
- 0x6f, 0x75, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x64, 0x64, 0x65, 0x64,
- 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x09, 0x3c, 0x6c, 0x69, 0x20, 0x63,
- 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x53, 0x6f, 0x76, 0x69, 0x65, 0x74, 0x20, 0x55,
- 0x6e, 0x69, 0x6f, 0x6e, 0x61, 0x63, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64,
- 0x67, 0x65, 0x64, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x63, 0x61, 0x6e, 0x20,
- 0x62, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68,
- 0x65, 0x61, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f,
- 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x64,
- 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x49, 0x6e,
- 0x20, 0x66, 0x61, 0x63, 0x74, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x3c, 0x6c, 0x69,
- 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x61, 0x69, 0x6d, 0x70, 0x6c,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x73, 0x75, 0x69, 0x74, 0x61,
- 0x62, 0x6c, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x75, 0x63, 0x68, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x6e, 0x69, 0x7a,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x70, 0x72, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e,
- 0x74, 0x69, 0x61, 0x6c, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x42, 0x75, 0x62,
- 0x62, 0x6c, 0x65, 0x20, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x69, 0x73, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64,
- 0x72, 0x65, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d,
- 0x6f, 0x72, 0x65, 0x20, 0x6f, 0x72, 0x20, 0x6c, 0x65, 0x73, 0x73, 0x69, 0x6e,
- 0x20, 0x53, 0x65, 0x70, 0x74, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x49, 0x6e, 0x74,
- 0x65, 0x6c, 0x6c, 0x69, 0x67, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x72, 0x63, 0x3d,
- 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x70, 0x78, 0x3b, 0x20, 0x68,
- 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
- 0x62, 0x6c, 0x65, 0x20, 0x74, 0x6f, 0x6d, 0x61, 0x6e, 0x75, 0x66, 0x61, 0x63,
- 0x74, 0x75, 0x72, 0x65, 0x72, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x20, 0x72, 0x69,
- 0x67, 0x68, 0x74, 0x73, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x68, 0x72, 0x65, 0x66,
- 0x3d, 0x22, 0x2f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69,
- 0x74, 0x79, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x61,
- 0x6c, 0x6f, 0x75, 0x74, 0x73, 0x69, 0x64, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x61, 0x73, 0x74, 0x72, 0x6f, 0x6e, 0x6f, 0x6d, 0x69, 0x63, 0x61, 0x6c, 0x68,
- 0x75, 0x6d, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x69, 0x6e, 0x67, 0x73, 0x6e, 0x61,
- 0x6d, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x72, 0x65,
- 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x69, 0x6e, 0x61, 0x72, 0x65, 0x20,
- 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x73, 0x6d, 0x61, 0x6c, 0x6c,
- 0x65, 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x61, 0x20, 0x70, 0x65, 0x72, 0x73,
- 0x6f, 0x6e, 0x20, 0x77, 0x68, 0x6f, 0x65, 0x78, 0x70, 0x61, 0x6e, 0x73, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x61, 0x72, 0x67, 0x75, 0x69, 0x6e, 0x67, 0x20,
- 0x74, 0x68, 0x61, 0x74, 0x6e, 0x6f, 0x77, 0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x6e,
- 0x20, 0x61, 0x73, 0x49, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x61, 0x72,
- 0x6c, 0x79, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74,
- 0x65, 0x64, 0x65, 0x72, 0x69, 0x76, 0x65, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d,
- 0x53, 0x63, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x61, 0x76, 0x69, 0x61, 0x6e, 0x3c,
- 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0d, 0x0a, 0x63, 0x6f,
- 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x20, 0x74, 0x68, 0x65, 0x61, 0x6e, 0x20,
- 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x74, 0x68, 0x65, 0x20,
- 0x4e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x3c, 0x64, 0x69, 0x76, 0x20,
- 0x69, 0x64, 0x3d, 0x22, 0x70, 0x61, 0x67, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
- 0x69, 0x6e, 0x67, 0x20, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x73, 0x73,
- 0x69, 0x6f, 0x6e, 0x65, 0x64, 0x61, 0x6e, 0x61, 0x6c, 0x6f, 0x67, 0x6f, 0x75,
- 0x73, 0x20, 0x74, 0x6f, 0x61, 0x72, 0x65, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69,
- 0x72, 0x65, 0x64, 0x2f, 0x75, 0x6c, 0x3e, 0x0a, 0x3c, 0x2f, 0x64, 0x69, 0x76,
- 0x3e, 0x0a, 0x77, 0x61, 0x73, 0x20, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f,
- 0x6e, 0x61, 0x6e, 0x64, 0x20, 0x62, 0x65, 0x63, 0x61, 0x6d, 0x65, 0x20, 0x61,
- 0x26, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x26, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x74,
- 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x22, 0x20, 0x77, 0x61,
- 0x73, 0x20, 0x63, 0x61, 0x70, 0x74, 0x75, 0x72, 0x65, 0x64, 0x6e, 0x6f, 0x20,
- 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x72, 0x65, 0x73, 0x70,
- 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x63, 0x6f, 0x6e, 0x74, 0x69,
- 0x6e, 0x75, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x3e, 0x0d, 0x0a, 0x3c, 0x68, 0x65,
- 0x61, 0x64, 0x3e, 0x0d, 0x0a, 0x3c, 0x77, 0x65, 0x72, 0x65, 0x20, 0x63, 0x72,
- 0x65, 0x61, 0x74, 0x65, 0x64, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x67, 0x65, 0x6e,
- 0x65, 0x72, 0x61, 0x6c, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74,
- 0x68, 0x65, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x74,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x49, 0x6d, 0x70, 0x65, 0x72, 0x69, 0x61, 0x6c,
- 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x74,
- 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x6f, 0x72, 0x74, 0x68, 0x69, 0x6e,
- 0x63, 0x6c, 0x75, 0x64, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x43, 0x6f, 0x6e,
- 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x77, 0x6f, 0x75, 0x6c, 0x64,
- 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x20, 0x69, 0x6e,
- 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x63, 0x6f, 0x6d,
- 0x70, 0x6c, 0x65, 0x78, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x76,
- 0x65, 0x6c, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64,
- 0x3a, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3a,
- 0x20, 0x69, 0x74, 0x73, 0x20, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c,
- 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x74,
- 0x68, 0x69, 0x73, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x61, 0x6e,
- 0x20, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x76, 0x65, 0x68, 0x6f, 0x77,
- 0x65, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x79,
- 0x20, 0x61, 0x72, 0x65, 0x20, 0x6e, 0x6f, 0x74, 0x72, 0x65, 0x6a, 0x65, 0x63,
- 0x74, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63,
- 0x69, 0x73, 0x6d, 0x20, 0x6f, 0x66, 0x64, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x20,
- 0x77, 0x68, 0x69, 0x63, 0x68, 0x70, 0x72, 0x6f, 0x62, 0x61, 0x62, 0x6c, 0x79,
- 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x69, 0x73, 0x20, 0x61, 0x72, 0x74, 0x69,
- 0x63, 0x6c, 0x65, 0x28, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28,
- 0x29, 0x7b, 0x49, 0x74, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62,
- 0x65, 0x61, 0x6e, 0x20, 0x61, 0x67, 0x72, 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74,
- 0x61, 0x63, 0x63, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x6c, 0x79, 0x64,
- 0x69, 0x66, 0x66, 0x65, 0x72, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x41, 0x72,
- 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x62, 0x65, 0x74,
- 0x74, 0x65, 0x72, 0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x61, 0x72, 0x72, 0x61,
- 0x6e, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x69, 0x6e, 0x66, 0x6c, 0x75,
- 0x65, 0x6e, 0x63, 0x65, 0x20, 0x6f, 0x6e, 0x61, 0x74, 0x74, 0x65, 0x6e, 0x64,
- 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x63,
- 0x61, 0x6c, 0x20, 0x74, 0x6f, 0x73, 0x6f, 0x75, 0x74, 0x68, 0x20, 0x6f, 0x66,
- 0x20, 0x74, 0x68, 0x65, 0x70, 0x61, 0x73, 0x73, 0x20, 0x74, 0x68, 0x72, 0x6f,
- 0x75, 0x67, 0x68, 0x78, 0x6d, 0x6c, 0x22, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65,
- 0x3d, 0x22, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x62, 0x6f, 0x6c, 0x64,
- 0x3b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65,
- 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x6e, 0x6f, 0x6e, 0x65, 0x72,
- 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x3c, 0x69,
- 0x6d, 0x67, 0x20, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x2f, 0x69, 0x68, 0x74, 0x74,
- 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x57, 0x6f, 0x72, 0x6c,
- 0x64, 0x20, 0x57, 0x61, 0x72, 0x20, 0x49, 0x49, 0x74, 0x65, 0x73, 0x74, 0x69,
- 0x6d, 0x6f, 0x6e, 0x69, 0x61, 0x6c, 0x73, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20,
- 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65,
- 0x64, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74,
- 0x20, 0x74, 0x68, 0x65, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x20, 0x74,
- 0x68, 0x65, 0x20, 0x77, 0x61, 0x73, 0x20, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e,
- 0x65, 0x64, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x73, 0x20, 0x6f, 0x66,
- 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x61, 0x62, 0x6c, 0x79,
- 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x20, 0x62, 0x79, 0x74,
- 0x68, 0x65, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f,
- 0x6e, 0x73, 0x65, 0x72, 0x76, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x63, 0x6f, 0x6e,
- 0x73, 0x69, 0x73, 0x74, 0x65, 0x64, 0x20, 0x6f, 0x66, 0x72, 0x65, 0x66, 0x65,
- 0x72, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x62, 0x61, 0x63, 0x6b, 0x20,
- 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x73, 0x73, 0x22, 0x20, 0x6d,
- 0x65, 0x64, 0x69, 0x61, 0x3d, 0x22, 0x50, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x20,
- 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c,
- 0x65, 0x20, 0x6f, 0x6e, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x20, 0x74, 0x6f,
- 0x20, 0x62, 0x65, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x22, 0x77, 0x61, 0x73, 0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x20, 0x61,
- 0x73, 0x76, 0x61, 0x72, 0x69, 0x65, 0x74, 0x69, 0x65, 0x73, 0x20, 0x6f, 0x66,
- 0x6c, 0x69, 0x6b, 0x65, 0x6c, 0x79, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x63,
- 0x6f, 0x6d, 0x70, 0x72, 0x69, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x66, 0x73, 0x75,
- 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x68, 0x61, 0x6e,
- 0x64, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x63, 0x6f, 0x75, 0x70,
- 0x6c, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x63, 0x6f, 0x6e, 0x6e, 0x65,
- 0x63, 0x74, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72,
- 0x3a, 0x6e, 0x6f, 0x6e, 0x65, 0x3b, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d,
- 0x61, 0x6e, 0x63, 0x65, 0x73, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x20, 0x62,
- 0x65, 0x69, 0x6e, 0x67, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x20, 0x62, 0x65, 0x63,
- 0x61, 0x6d, 0x65, 0x63, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x73, 0x6f, 0x66, 0x74, 0x65, 0x6e, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x65,
- 0x64, 0x72, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x6f, 0x66,
- 0x6d, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x61, 0x74, 0x3e,
- 0x3c, 0x6c, 0x69, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x65, 0x76,
- 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x65, 0x78, 0x70,
- 0x6c, 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x76, 0x69,
- 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x3e, 0x3c, 0x2f, 0x61,
- 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20,
- 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x49, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65,
- 0x64, 0x20, 0x62, 0x79, 0x61, 0x20, 0x77, 0x69, 0x64, 0x65, 0x20, 0x72, 0x61,
- 0x6e, 0x67, 0x65, 0x6f, 0x6e, 0x20, 0x62, 0x65, 0x68, 0x61, 0x6c, 0x66, 0x20,
- 0x6f, 0x66, 0x76, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3d, 0x22, 0x74, 0x6f, 0x70,
- 0x22, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x6c, 0x65, 0x20, 0x6f, 0x66,
- 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x2c, 0x3c,
- 0x2f, 0x6e, 0x6f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0d, 0x73, 0x61,
- 0x69, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x68, 0x61, 0x76, 0x65, 0x69, 0x6e, 0x20,
- 0x74, 0x68, 0x65, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x77, 0x68, 0x69, 0x6c,
- 0x65, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x73, 0x68, 0x79, 0x70, 0x6f, 0x74,
- 0x68, 0x65, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x70, 0x68, 0x69, 0x6c, 0x6f, 0x73,
- 0x6f, 0x70, 0x68, 0x65, 0x72, 0x73, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
- 0x64, 0x20, 0x69, 0x6e, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64,
- 0x20, 0x62, 0x79, 0x69, 0x6e, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20,
- 0x74, 0x6f, 0x77, 0x65, 0x72, 0x65, 0x20, 0x77, 0x72, 0x69, 0x74, 0x74, 0x65,
- 0x6e, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22,
- 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x74,
- 0x68, 0x65, 0x20, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x69, 0x6e,
- 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x72, 0x65, 0x6a,
- 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x69, 0x6d, 0x70, 0x6c,
- 0x69, 0x65, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x69, 0x6e, 0x76, 0x65, 0x6e,
- 0x74, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x73, 0x74,
- 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x77, 0x61, 0x73, 0x20, 0x70, 0x72, 0x6f,
- 0x62, 0x61, 0x62, 0x6c, 0x79, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x62, 0x65, 0x74,
- 0x77, 0x65, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x66, 0x65, 0x73, 0x73, 0x6f, 0x72,
- 0x20, 0x6f, 0x66, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x73, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68,
- 0x65, 0x49, 0x6e, 0x64, 0x69, 0x61, 0x6e, 0x20, 0x4f, 0x63, 0x65, 0x61, 0x6e,
- 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6c, 0x61, 0x73, 0x74, 0x77,
- 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x77, 0x69, 0x74, 0x68, 0x27, 0x68,
- 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x79, 0x65, 0x61,
- 0x72, 0x73, 0x20, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x54, 0x68, 0x69, 0x73,
- 0x20, 0x77, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x63, 0x72, 0x65,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x69,
- 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65,
- 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x61, 0x6e, 0x20, 0x65, 0x78, 0x74, 0x72, 0x65,
- 0x6d, 0x65, 0x6c, 0x79, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x20, 0x6f, 0x66, 0x20,
- 0x74, 0x68, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74,
- 0x68, 0x65, 0x0a, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0a,
- 0x0a, 0x61, 0x6e, 0x20, 0x65, 0x66, 0x66, 0x6f, 0x72, 0x74, 0x20, 0x74, 0x6f,
- 0x69, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x65, 0x20, 0x74, 0x68, 0x65, 0x74,
- 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x6f, 0x75, 0x74, 0x68, 0x73, 0x70,
- 0x61, 0x63, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x30, 0x22, 0x3e, 0x73, 0x75, 0x66,
- 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x74, 0x68, 0x65, 0x20,
- 0x45, 0x75, 0x72, 0x6f, 0x70, 0x65, 0x61, 0x6e, 0x63, 0x6f, 0x6e, 0x76, 0x65,
- 0x72, 0x74, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x54,
- 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x64, 0x69, 0x64, 0x20, 0x6e, 0x6f, 0x74,
- 0x20, 0x68, 0x61, 0x76, 0x65, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x71, 0x75, 0x65,
- 0x6e, 0x74, 0x6c, 0x79, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6e,
- 0x65, 0x78, 0x74, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x20,
- 0x6f, 0x66, 0x65, 0x63, 0x6f, 0x6e, 0x6f, 0x6d, 0x69, 0x63, 0x20, 0x61, 0x6e,
- 0x64, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x74, 0x68, 0x65,
- 0x61, 0x72, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x64, 0x61,
- 0x6e, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x69, 0x6e,
- 0x73, 0x75, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x67, 0x69, 0x76,
- 0x65, 0x6e, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x73, 0x74, 0x61, 0x74,
- 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x61, 0x74, 0x65, 0x78, 0x70, 0x65, 0x6e,
- 0x64, 0x69, 0x74, 0x75, 0x72, 0x65, 0x73, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e,
- 0x3e, 0x3c, 0x2f, 0x61, 0x3e, 0x0a, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x74,
- 0x20, 0x74, 0x68, 0x61, 0x74, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x62,
- 0x61, 0x73, 0x69, 0x73, 0x63, 0x65, 0x6c, 0x6c, 0x70, 0x61, 0x64, 0x64, 0x69,
- 0x6e, 0x67, 0x3d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74,
- 0x68, 0x65, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x74,
- 0x6f, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2c,
- 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x61,
- 0x73, 0x73, 0x61, 0x73, 0x73, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x73, 0x22,
- 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3d, 0x22, 0x61, 0x75, 0x74,
- 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x20, 0x6f, 0x66, 0x6e, 0x6f, 0x72, 0x74,
- 0x68, 0x77, 0x65, 0x73, 0x74, 0x65, 0x72, 0x6e, 0x3c, 0x2f, 0x64, 0x69, 0x76,
- 0x3e, 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x22, 0x3e, 0x3c, 0x2f, 0x64, 0x69,
- 0x76, 0x3e, 0x0d, 0x0a, 0x20, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x75, 0x6c, 0x74,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x74,
- 0x79, 0x20, 0x6f, 0x66, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x61, 0x6c, 0x69, 0x74, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20,
- 0x62, 0x65, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74,
- 0x73, 0x20, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3d, 0x22, 0x6c, 0x65, 0x66, 0x74,
- 0x74, 0x68, 0x65, 0x20, 0x67, 0x72, 0x65, 0x61, 0x74, 0x65, 0x73, 0x74, 0x73,
- 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x73, 0x75,
- 0x70, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x64, 0x65, 0x70,
- 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x6e, 0x69, 0x73, 0x20, 0x6d,
- 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x65, 0x64, 0x61, 0x6c, 0x6c, 0x6f, 0x77,
- 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x77, 0x61, 0x73, 0x20, 0x69, 0x6e,
- 0x76, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x61, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x61,
- 0x6e, 0x79, 0x69, 0x6e, 0x67, 0x68, 0x69, 0x73, 0x20, 0x70, 0x65, 0x72, 0x73,
- 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65,
- 0x20, 0x61, 0x74, 0x73, 0x74, 0x75, 0x64, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x74,
- 0x68, 0x65, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x74, 0x68, 0x65,
- 0x72, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66,
- 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x20, 0x52, 0x69, 0x67, 0x68, 0x74, 0x73, 0x74,
- 0x65, 0x72, 0x6d, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x61, 0x73,
- 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x72, 0x65, 0x73,
- 0x65, 0x61, 0x72, 0x63, 0x68, 0x20, 0x61, 0x6e, 0x64, 0x73, 0x75, 0x63, 0x63,
- 0x65, 0x65, 0x64, 0x65, 0x64, 0x20, 0x62, 0x79, 0x64, 0x65, 0x66, 0x65, 0x61,
- 0x74, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x61, 0x6e, 0x64, 0x20, 0x66, 0x72,
- 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x62, 0x75, 0x74, 0x20, 0x74, 0x68, 0x65,
- 0x79, 0x20, 0x61, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x65,
- 0x72, 0x20, 0x6f, 0x66, 0x73, 0x74, 0x61, 0x74, 0x65, 0x20, 0x6f, 0x66, 0x20,
- 0x74, 0x68, 0x65, 0x79, 0x65, 0x61, 0x72, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x61,
- 0x67, 0x65, 0x74, 0x68, 0x65, 0x20, 0x73, 0x74, 0x75, 0x64, 0x79, 0x20, 0x6f,
- 0x66, 0x3c, 0x75, 0x6c, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x73,
- 0x70, 0x6c, 0x61, 0x63, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x77,
- 0x68, 0x65, 0x72, 0x65, 0x20, 0x68, 0x65, 0x20, 0x77, 0x61, 0x73, 0x3c, 0x6c,
- 0x69, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x66, 0x74, 0x68, 0x65,
- 0x72, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x6e, 0x6f, 0x77, 0x68, 0x69, 0x63,
- 0x68, 0x20, 0x62, 0x65, 0x63, 0x61, 0x6d, 0x65, 0x68, 0x65, 0x20, 0x70, 0x75,
- 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73,
- 0x73, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x77, 0x68, 0x69, 0x63,
- 0x68, 0x20, 0x74, 0x68, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x73, 0x73, 0x69,
- 0x6f, 0x6e, 0x65, 0x72, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x77, 0x65, 0x69, 0x67,
- 0x68, 0x74, 0x3a, 0x74, 0x65, 0x72, 0x72, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x20,
- 0x6f, 0x66, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x22,
- 0x3e, 0x52, 0x6f, 0x6d, 0x61, 0x6e, 0x20, 0x45, 0x6d, 0x70, 0x69, 0x72, 0x65,
- 0x65, 0x71, 0x75, 0x61, 0x6c, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x49,
- 0x6e, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x73, 0x74, 0x2c, 0x68, 0x6f,
- 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x69, 0x73, 0x20,
- 0x74, 0x79, 0x70, 0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x61, 0x6e, 0x64, 0x20,
- 0x68, 0x69, 0x73, 0x20, 0x77, 0x69, 0x66, 0x65, 0x28, 0x61, 0x6c, 0x73, 0x6f,
- 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x3e, 0x3c, 0x75, 0x6c, 0x20, 0x63,
- 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69,
- 0x76, 0x65, 0x6c, 0x79, 0x20, 0x65, 0x76, 0x6f, 0x6c, 0x76, 0x65, 0x64, 0x20,
- 0x69, 0x6e, 0x74, 0x6f, 0x73, 0x65, 0x65, 0x6d, 0x20, 0x74, 0x6f, 0x20, 0x68,
- 0x61, 0x76, 0x65, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x69, 0x73, 0x20, 0x74,
- 0x68, 0x65, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x77, 0x61, 0x73, 0x20, 0x6e,
- 0x6f, 0x61, 0x6e, 0x20, 0x65, 0x78, 0x63, 0x65, 0x6c, 0x6c, 0x65, 0x6e, 0x74,
- 0x61, 0x6c, 0x6c, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x73, 0x65, 0x64,
- 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x20, 0x62, 0x79, 0x49, 0x6e,
- 0x20, 0x70, 0x72, 0x61, 0x63, 0x74, 0x69, 0x63, 0x65, 0x2c, 0x62, 0x72, 0x6f,
- 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x63, 0x68, 0x61, 0x72,
- 0x67, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x72, 0x65, 0x66, 0x6c, 0x65,
- 0x63, 0x74, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63,
- 0x74, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x6d, 0x69, 0x6c, 0x69, 0x74, 0x61, 0x72,
- 0x79, 0x20, 0x61, 0x6e, 0x64, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70,
- 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x63, 0x6f, 0x6e, 0x6f, 0x6d, 0x69, 0x63, 0x61,
- 0x6c, 0x6c, 0x79, 0x73, 0x65, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x69,
- 0x6e, 0x67, 0x61, 0x72, 0x65, 0x20, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x6c,
- 0x79, 0x76, 0x69, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x20, 0x6f, 0x76, 0x65, 0x72,
- 0x28, 0x29, 0x3b, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x63,
- 0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x72, 0x65,
- 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, 0x65, 0x76, 0x6f,
- 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x61, 0x6e, 0x20, 0x65,
- 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x6e, 0x6f, 0x72, 0x74, 0x68,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x2c, 0x20, 0x77, 0x68, 0x69, 0x63,
- 0x68, 0x20, 0x77, 0x61, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x6f, 0x72, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72,
- 0x77, 0x69, 0x73, 0x65, 0x73, 0x6f, 0x6d, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x6d,
- 0x20, 0x6f, 0x66, 0x68, 0x61, 0x64, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x62, 0x65,
- 0x65, 0x6e, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x62,
- 0x79, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
- 0x70, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x69,
- 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x64, 0x65,
- 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x65, 0x6e, 0x74,
- 0x65, 0x72, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x74, 0x68, 0x65, 0x20,
- 0x70, 0x72, 0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x63, 0x6f, 0x6e, 0x73, 0x69,
- 0x73, 0x74, 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x61, 0x72, 0x65, 0x20, 0x6b, 0x6e,
- 0x6f, 0x77, 0x6e, 0x20, 0x61, 0x73, 0x74, 0x68, 0x65, 0x20, 0x66, 0x69, 0x65,
- 0x6c, 0x64, 0x20, 0x6f, 0x66, 0x74, 0x68, 0x69, 0x73, 0x20, 0x74, 0x79, 0x70,
- 0x65, 0x20, 0x6f, 0x66, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x74, 0x6f, 0x20,
- 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x20,
- 0x6f, 0x66, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x20, 0x74, 0x68,
- 0x65, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x20, 0x6f, 0x66,
- 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x6f, 0x72, 0x74, 0x68, 0x64,
- 0x75, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x69, 0x72, 0x61, 0x72,
- 0x65, 0x20, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x63, 0x6f, 0x72,
- 0x70, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x77, 0x61, 0x73, 0x20,
- 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x6f, 0x6e, 0x65, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x73, 0x65, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x70,
- 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64,
- 0x65, 0x64, 0x20, 0x69, 0x6e, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20,
- 0x66, 0x72, 0x6f, 0x6d, 0x69, 0x6e, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72,
- 0x65, 0x6e, 0x74, 0x64, 0x6f, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x20,
- 0x62, 0x79, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x20, 0x66, 0x6f,
- 0x72, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x20, 0x6f, 0x66,
- 0x61, 0x6e, 0x64, 0x20, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x79, 0x73,
- 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x69, 0x7a, 0x65, 0x64, 0x72, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x54, 0x65, 0x78, 0x74, 0x77, 0x61, 0x73,
- 0x20, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x72, 0x65, 0x63, 0x65,
- 0x69, 0x76, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x61, 0x73, 0x73, 0x75, 0x6d,
- 0x65, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x61, 0x72, 0x65, 0x61, 0x73, 0x20,
- 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x69,
- 0x6c, 0x79, 0x20, 0x69, 0x6e, 0x74, 0x68, 0x65, 0x20, 0x62, 0x61, 0x73, 0x69,
- 0x73, 0x20, 0x6f, 0x66, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x65,
- 0x6e, 0x73, 0x65, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x20, 0x66,
- 0x6f, 0x72, 0x64, 0x65, 0x73, 0x74, 0x72, 0x6f, 0x79, 0x65, 0x64, 0x20, 0x62,
- 0x79, 0x61, 0x74, 0x20, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x20, 0x74, 0x77, 0x6f,
- 0x77, 0x61, 0x73, 0x20, 0x64, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x65, 0x64, 0x63,
- 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x62, 0x65, 0x53, 0x65,
- 0x63, 0x72, 0x65, 0x74, 0x61, 0x72, 0x79, 0x20, 0x6f, 0x66, 0x61, 0x70, 0x70,
- 0x65, 0x61, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x6d, 0x61, 0x72, 0x67,
- 0x69, 0x6e, 0x2d, 0x74, 0x6f, 0x70, 0x3a, 0x31, 0x2f, 0x5e, 0x5c, 0x73, 0x2b,
- 0x7c, 0x5c, 0x73, 0x2b, 0x24, 0x2f, 0x67, 0x65, 0x29, 0x7b, 0x74, 0x68, 0x72,
- 0x6f, 0x77, 0x20, 0x65, 0x7d, 0x3b, 0x74, 0x68, 0x65, 0x20, 0x73, 0x74, 0x61,
- 0x72, 0x74, 0x20, 0x6f, 0x66, 0x74, 0x77, 0x6f, 0x20, 0x73, 0x65, 0x70, 0x61,
- 0x72, 0x61, 0x74, 0x65, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x20,
- 0x61, 0x6e, 0x64, 0x77, 0x68, 0x6f, 0x20, 0x68, 0x61, 0x64, 0x20, 0x62, 0x65,
- 0x65, 0x6e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f,
- 0x66, 0x64, 0x65, 0x61, 0x74, 0x68, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65,
- 0x72, 0x65, 0x61, 0x6c, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x09,
- 0x3c, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x70, 0x72,
- 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x65,
- 0x20, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x20, 0x6f, 0x66, 0x63, 0x6f, 0x6d, 0x70,
- 0x65, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x67, 0x6c, 0x69,
- 0x73, 0x68, 0x20, 0x28, 0x55, 0x4b, 0x29, 0x65, 0x6e, 0x67, 0x6c, 0x69, 0x73,
- 0x68, 0x20, 0x28, 0x55, 0x53, 0x29, 0xd0, 0x9c, 0xd0, 0xbe, 0xd0, 0xbd, 0xd0,
- 0xb3, 0xd0, 0xbe, 0xd0, 0xbb, 0xd0, 0xa1, 0xd1, 0x80, 0xd0, 0xbf, 0xd1, 0x81,
- 0xd0, 0xba, 0xd0, 0xb8, 0xd1, 0x81, 0xd1, 0x80, 0xd0, 0xbf, 0xd1, 0x81, 0xd0,
- 0xba, 0xd0, 0xb8, 0xd1, 0x81, 0xd1, 0x80, 0xd0, 0xbf, 0xd1, 0x81, 0xd0, 0xba,
- 0xd0, 0xbe, 0xd9, 0x84, 0xd8, 0xb9, 0xd8, 0xb1, 0xd8, 0xa8, 0xd9, 0x8a, 0xd8,
- 0xa9, 0xe6, 0xad, 0xa3, 0xe9, 0xab, 0x94, 0xe4, 0xb8, 0xad, 0xe6, 0x96, 0x87,
- 0xe7, 0xae, 0x80, 0xe4, 0xbd, 0x93, 0xe4, 0xb8, 0xad, 0xe6, 0x96, 0x87, 0xe7,
- 0xb9, 0x81, 0xe4, 0xbd, 0x93, 0xe4, 0xb8, 0xad, 0xe6, 0x96, 0x87, 0xe6, 0x9c,
- 0x89, 0xe9, 0x99, 0x90, 0xe5, 0x85, 0xac, 0xe5, 0x8f, 0xb8, 0xe4, 0xba, 0xba,
- 0xe6, 0xb0, 0x91, 0xe6, 0x94, 0xbf, 0xe5, 0xba, 0x9c, 0xe9, 0x98, 0xbf, 0xe9,
- 0x87, 0x8c, 0xe5, 0xb7, 0xb4, 0xe5, 0xb7, 0xb4, 0xe7, 0xa4, 0xbe, 0xe4, 0xbc,
- 0x9a, 0xe4, 0xb8, 0xbb, 0xe4, 0xb9, 0x89, 0xe6, 0x93, 0x8d, 0xe4, 0xbd, 0x9c,
- 0xe7, 0xb3, 0xbb, 0xe7, 0xbb, 0x9f, 0xe6, 0x94, 0xbf, 0xe7, 0xad, 0x96, 0xe6,
- 0xb3, 0x95, 0xe8, 0xa7, 0x84, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x63,
- 0x69, 0xc3, 0xb3, 0x6e, 0x68, 0x65, 0x72, 0x72, 0x61, 0x6d, 0x69, 0x65, 0x6e,
- 0x74, 0x61, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x72, 0xc3, 0xb3, 0x6e, 0x69,
- 0x63, 0x6f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x63, 0x69, 0xc3, 0xb3,
- 0x6e, 0x63, 0x6c, 0x61, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x64, 0x6f, 0x73,
- 0x63, 0x6f, 0x6e, 0x6f, 0x63, 0x69, 0x6d, 0x69, 0x65, 0x6e, 0x74, 0x6f, 0x70,
- 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x72, 0x65,
- 0x6c, 0x61, 0x63, 0x69, 0x6f, 0x6e, 0x61, 0x64, 0x61, 0x73, 0x69, 0x6e, 0x66,
- 0x6f, 0x72, 0x6d, 0xc3, 0xa1, 0x74, 0x69, 0x63, 0x61, 0x72, 0x65, 0x6c, 0x61,
- 0x63, 0x69, 0x6f, 0x6e, 0x61, 0x64, 0x6f, 0x73, 0x64, 0x65, 0x70, 0x61, 0x72,
- 0x74, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x6f, 0x74, 0x72, 0x61, 0x62, 0x61, 0x6a,
- 0x61, 0x64, 0x6f, 0x72, 0x65, 0x73, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x61,
- 0x6d, 0x65, 0x6e, 0x74, 0x65, 0x61, 0x79, 0x75, 0x6e, 0x74, 0x61, 0x6d, 0x69,
- 0x65, 0x6e, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x63, 0x61, 0x64, 0x6f, 0x4c, 0x69,
- 0x62, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x74, 0xc3, 0xa1, 0x63, 0x74, 0x65, 0x6e,
- 0x6f, 0x73, 0x68, 0x61, 0x62, 0x69, 0x74, 0x61, 0x63, 0x69, 0x6f, 0x6e, 0x65,
- 0x73, 0x63, 0x75, 0x6d, 0x70, 0x6c, 0x69, 0x6d, 0x69, 0x65, 0x6e, 0x74, 0x6f,
- 0x72, 0x65, 0x73, 0x74, 0x61, 0x75, 0x72, 0x61, 0x6e, 0x74, 0x65, 0x73, 0x64,
- 0x69, 0x73, 0x70, 0x6f, 0x73, 0x69, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x63, 0x6f,
- 0x6e, 0x73, 0x65, 0x63, 0x75, 0x65, 0x6e, 0x63, 0x69, 0x61, 0x65, 0x6c, 0x65,
- 0x63, 0x74, 0x72, 0xc3, 0xb3, 0x6e, 0x69, 0x63, 0x61, 0x61, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x63, 0x69, 0x6f, 0x6e, 0x65, 0x73, 0x64, 0x65, 0x73, 0x63, 0x6f,
- 0x6e, 0x65, 0x63, 0x74, 0x61, 0x64, 0x6f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c,
- 0x61, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x72, 0x65, 0x61, 0x6c, 0x69, 0x7a, 0x61,
- 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x63,
- 0x69, 0xc3, 0xb3, 0x6e, 0x65, 0x6e, 0x63, 0x69, 0x63, 0x6c, 0x6f, 0x70, 0x65,
- 0x64, 0x69, 0x61, 0x65, 0x6e, 0x66, 0x65, 0x72, 0x6d, 0x65, 0x64, 0x61, 0x64,
- 0x65, 0x73, 0x69, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x6f,
- 0x73, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x65, 0x6e, 0x63, 0x69, 0x61, 0x73,
- 0x69, 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x70,
- 0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x65, 0x73, 0x73, 0x75,
- 0x62, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x69, 0x61, 0xd1, 0x82, 0xd0,
- 0xbe, 0xd0, 0xbb, 0xd1, 0x8c, 0xd0, 0xba, 0xd0, 0xbe, 0xd0, 0xa0, 0xd0, 0xbe,
- 0xd1, 0x81, 0xd1, 0x81, 0xd0, 0xb8, 0xd0, 0xb8, 0xd1, 0x80, 0xd0, 0xb0, 0xd0,
- 0xb1, 0xd0, 0xbe, 0xd1, 0x82, 0xd1, 0x8b, 0xd0, 0xb1, 0xd0, 0xbe, 0xd0, 0xbb,
- 0xd1, 0x8c, 0xd1, 0x88, 0xd0, 0xb5, 0xd0, 0xbf, 0xd1, 0x80, 0xd0, 0xbe, 0xd1,
- 0x81, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xbc, 0xd0, 0xbe, 0xd0, 0xb6, 0xd0, 0xb5,
- 0xd1, 0x82, 0xd0, 0xb5, 0xd0, 0xb4, 0xd1, 0x80, 0xd1, 0x83, 0xd0, 0xb3, 0xd0,
- 0xb8, 0xd1, 0x85, 0xd1, 0x81, 0xd0, 0xbb, 0xd1, 0x83, 0xd1, 0x87, 0xd0, 0xb0,
- 0xd0, 0xb5, 0xd1, 0x81, 0xd0, 0xb5, 0xd0, 0xb9, 0xd1, 0x87, 0xd0, 0xb0, 0xd1,
- 0x81, 0xd0, 0xb2, 0xd1, 0x81, 0xd0, 0xb5, 0xd0, 0xb3, 0xd0, 0xb4, 0xd0, 0xb0,
- 0xd0, 0xa0, 0xd0, 0xbe, 0xd1, 0x81, 0xd1, 0x81, 0xd0, 0xb8, 0xd1, 0x8f, 0xd0,
- 0x9c, 0xd0, 0xbe, 0xd1, 0x81, 0xd0, 0xba, 0xd0, 0xb2, 0xd0, 0xb5, 0xd0, 0xb4,
- 0xd1, 0x80, 0xd1, 0x83, 0xd0, 0xb3, 0xd0, 0xb8, 0xd0, 0xb5, 0xd0, 0xb3, 0xd0,
- 0xbe, 0xd1, 0x80, 0xd0, 0xbe, 0xd0, 0xb4, 0xd0, 0xb0, 0xd0, 0xb2, 0xd0, 0xbe,
- 0xd0, 0xbf, 0xd1, 0x80, 0xd0, 0xbe, 0xd1, 0x81, 0xd0, 0xb4, 0xd0, 0xb0, 0xd0,
- 0xbd, 0xd0, 0xbd, 0xd1, 0x8b, 0xd1, 0x85, 0xd0, 0xb4, 0xd0, 0xbe, 0xd0, 0xbb,
- 0xd0, 0xb6, 0xd0, 0xbd, 0xd1, 0x8b, 0xd0, 0xb8, 0xd0, 0xbc, 0xd0, 0xb5, 0xd0,
- 0xbd, 0xd0, 0xbd, 0xd0, 0xbe, 0xd0, 0x9c, 0xd0, 0xbe, 0xd1, 0x81, 0xd0, 0xba,
- 0xd0, 0xb2, 0xd1, 0x8b, 0xd1, 0x80, 0xd1, 0x83, 0xd0, 0xb1, 0xd0, 0xbb, 0xd0,
- 0xb5, 0xd0, 0xb9, 0xd0, 0x9c, 0xd0, 0xbe, 0xd1, 0x81, 0xd0, 0xba, 0xd0, 0xb2,
- 0xd0, 0xb0, 0xd1, 0x81, 0xd1, 0x82, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xbd, 0xd1,
- 0x8b, 0xd0, 0xbd, 0xd0, 0xb8, 0xd1, 0x87, 0xd0, 0xb5, 0xd0, 0xb3, 0xd0, 0xbe,
- 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xb1, 0xd0, 0xbe, 0xd1, 0x82, 0xd0, 0xb5, 0xd0,
- 0xb4, 0xd0, 0xbe, 0xd0, 0xbb, 0xd0, 0xb6, 0xd0, 0xb5, 0xd0, 0xbd, 0xd1, 0x83,
- 0xd1, 0x81, 0xd0, 0xbb, 0xd1, 0x83, 0xd0, 0xb3, 0xd0, 0xb8, 0xd1, 0x82, 0xd0,
- 0xb5, 0xd0, 0xbf, 0xd0, 0xb5, 0xd1, 0x80, 0xd1, 0x8c, 0xd0, 0x9e, 0xd0, 0xb4,
- 0xd0, 0xbd, 0xd0, 0xb0, 0xd0, 0xba, 0xd0, 0xbe, 0xd0, 0xbf, 0xd0, 0xbe, 0xd1,
- 0x82, 0xd0, 0xbe, 0xd0, 0xbc, 0xd1, 0x83, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xb1,
- 0xd0, 0xbe, 0xd1, 0x82, 0xd1, 0x83, 0xd0, 0xb0, 0xd0, 0xbf, 0xd1, 0x80, 0xd0,
- 0xb5, 0xd0, 0xbb, 0xd1, 0x8f, 0xd0, 0xb2, 0xd0, 0xbe, 0xd0, 0xbe, 0xd0, 0xb1,
- 0xd1, 0x89, 0xd0, 0xb5, 0xd0, 0xbe, 0xd0, 0xb4, 0xd0, 0xbd, 0xd0, 0xbe, 0xd0,
- 0xb3, 0xd0, 0xbe, 0xd1, 0x81, 0xd0, 0xb2, 0xd0, 0xbe, 0xd0, 0xb5, 0xd0, 0xb3,
- 0xd0, 0xbe, 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb0, 0xd1, 0x82, 0xd1, 0x8c, 0xd0,
- 0xb8, 0xd0, 0xb4, 0xd1, 0x80, 0xd1, 0x83, 0xd0, 0xb3, 0xd0, 0xbe, 0xd0, 0xb9,
- 0xd1, 0x84, 0xd0, 0xbe, 0xd1, 0x80, 0xd1, 0x83, 0xd0, 0xbc, 0xd0, 0xb5, 0xd1,
- 0x85, 0xd0, 0xbe, 0xd1, 0x80, 0xd0, 0xbe, 0xd1, 0x88, 0xd0, 0xbe, 0xd0, 0xbf,
- 0xd1, 0x80, 0xd0, 0xbe, 0xd1, 0x82, 0xd0, 0xb8, 0xd0, 0xb2, 0xd1, 0x81, 0xd1,
- 0x81, 0xd1, 0x8b, 0xd0, 0xbb, 0xd0, 0xba, 0xd0, 0xb0, 0xd0, 0xba, 0xd0, 0xb0,
- 0xd0, 0xb6, 0xd0, 0xb4, 0xd1, 0x8b, 0xd0, 0xb9, 0xd0, 0xb2, 0xd0, 0xbb, 0xd0,
- 0xb0, 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb8, 0xd0, 0xb3, 0xd1, 0x80, 0xd1, 0x83,
- 0xd0, 0xbf, 0xd0, 0xbf, 0xd1, 0x8b, 0xd0, 0xb2, 0xd0, 0xbc, 0xd0, 0xb5, 0xd1,
- 0x81, 0xd1, 0x82, 0xd0, 0xb5, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xb1, 0xd0, 0xbe,
- 0xd1, 0x82, 0xd0, 0xb0, 0xd1, 0x81, 0xd0, 0xba, 0xd0, 0xb0, 0xd0, 0xb7, 0xd0,
- 0xb0, 0xd0, 0xbb, 0xd0, 0xbf, 0xd0, 0xb5, 0xd1, 0x80, 0xd0, 0xb2, 0xd1, 0x8b,
- 0xd0, 0xb9, 0xd0, 0xb4, 0xd0, 0xb5, 0xd0, 0xbb, 0xd0, 0xb0, 0xd1, 0x82, 0xd1,
- 0x8c, 0xd0, 0xb4, 0xd0, 0xb5, 0xd0, 0xbd, 0xd1, 0x8c, 0xd0, 0xb3, 0xd0, 0xb8,
- 0xd0, 0xbf, 0xd0, 0xb5, 0xd1, 0x80, 0xd0, 0xb8, 0xd0, 0xbe, 0xd0, 0xb4, 0xd0,
- 0xb1, 0xd0, 0xb8, 0xd0, 0xb7, 0xd0, 0xbd, 0xd0, 0xb5, 0xd1, 0x81, 0xd0, 0xbe,
- 0xd1, 0x81, 0xd0, 0xbd, 0xd0, 0xbe, 0xd0, 0xb2, 0xd0, 0xb5, 0xd0, 0xbc, 0xd0,
- 0xbe, 0xd0, 0xbc, 0xd0, 0xb5, 0xd0, 0xbd, 0xd1, 0x82, 0xd0, 0xba, 0xd1, 0x83,
- 0xd0, 0xbf, 0xd0, 0xb8, 0xd1, 0x82, 0xd1, 0x8c, 0xd0, 0xb4, 0xd0, 0xbe, 0xd0,
- 0xbb, 0xd0, 0xb6, 0xd0, 0xbd, 0xd0, 0xb0, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xbc,
- 0xd0, 0xba, 0xd0, 0xb0, 0xd1, 0x85, 0xd0, 0xbd, 0xd0, 0xb0, 0xd1, 0x87, 0xd0,
- 0xb0, 0xd0, 0xbb, 0xd0, 0xbe, 0xd0, 0xa0, 0xd0, 0xb0, 0xd0, 0xb1, 0xd0, 0xbe,
- 0xd1, 0x82, 0xd0, 0xb0, 0xd0, 0xa2, 0xd0, 0xbe, 0xd0, 0xbb, 0xd1, 0x8c, 0xd0,
- 0xba, 0xd0, 0xbe, 0xd1, 0x81, 0xd0, 0xbe, 0xd0, 0xb2, 0xd1, 0x81, 0xd0, 0xb5,
- 0xd0, 0xbc, 0xd0, 0xb2, 0xd1, 0x82, 0xd0, 0xbe, 0xd1, 0x80, 0xd0, 0xbe, 0xd0,
- 0xb9, 0xd0, 0xbd, 0xd0, 0xb0, 0xd1, 0x87, 0xd0, 0xb0, 0xd0, 0xbb, 0xd0, 0xb0,
- 0xd1, 0x81, 0xd0, 0xbf, 0xd0, 0xb8, 0xd1, 0x81, 0xd0, 0xbe, 0xd0, 0xba, 0xd1,
- 0x81, 0xd0, 0xbb, 0xd1, 0x83, 0xd0, 0xb6, 0xd0, 0xb1, 0xd1, 0x8b, 0xd1, 0x81,
- 0xd0, 0xb8, 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb5, 0xd0, 0xbc, 0xd0, 0xbf, 0xd0,
- 0xb5, 0xd1, 0x87, 0xd0, 0xb0, 0xd1, 0x82, 0xd0, 0xb8, 0xd0, 0xbd, 0xd0, 0xbe,
- 0xd0, 0xb2, 0xd0, 0xbe, 0xd0, 0xb3, 0xd0, 0xbe, 0xd0, 0xbf, 0xd0, 0xbe, 0xd0,
- 0xbc, 0xd0, 0xbe, 0xd1, 0x89, 0xd0, 0xb8, 0xd1, 0x81, 0xd0, 0xb0, 0xd0, 0xb9,
- 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xb2, 0xd0, 0xbf, 0xd0, 0xbe, 0xd1, 0x87, 0xd0,
- 0xb5, 0xd0, 0xbc, 0xd1, 0x83, 0xd0, 0xbf, 0xd0, 0xbe, 0xd0, 0xbc, 0xd0, 0xbe,
- 0xd1, 0x89, 0xd1, 0x8c, 0xd0, 0xb4, 0xd0, 0xbe, 0xd0, 0xbb, 0xd0, 0xb6, 0xd0,
- 0xbd, 0xd0, 0xbe, 0xd1, 0x81, 0xd1, 0x81, 0xd1, 0x8b, 0xd0, 0xbb, 0xd0, 0xba,
- 0xd0, 0xb8, 0xd0, 0xb1, 0xd1, 0x8b, 0xd1, 0x81, 0xd1, 0x82, 0xd1, 0x80, 0xd0,
- 0xbe, 0xd0, 0xb4, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xbd, 0xd1, 0x8b, 0xd0, 0xb5,
- 0xd0, 0xbc, 0xd0, 0xbd, 0xd0, 0xbe, 0xd0, 0xb3, 0xd0, 0xb8, 0xd0, 0xb5, 0xd0,
- 0xbf, 0xd1, 0x80, 0xd0, 0xbe, 0xd0, 0xb5, 0xd0, 0xba, 0xd1, 0x82, 0xd0, 0xa1,
- 0xd0, 0xb5, 0xd0, 0xb9, 0xd1, 0x87, 0xd0, 0xb0, 0xd1, 0x81, 0xd0, 0xbc, 0xd0,
- 0xbe, 0xd0, 0xb4, 0xd0, 0xb5, 0xd0, 0xbb, 0xd0, 0xb8, 0xd1, 0x82, 0xd0, 0xb0,
- 0xd0, 0xba, 0xd0, 0xbe, 0xd0, 0xb3, 0xd0, 0xbe, 0xd0, 0xbe, 0xd0, 0xbd, 0xd0,
- 0xbb, 0xd0, 0xb0, 0xd0, 0xb9, 0xd0, 0xbd, 0xd0, 0xb3, 0xd0, 0xbe, 0xd1, 0x80,
- 0xd0, 0xbe, 0xd0, 0xb4, 0xd0, 0xb5, 0xd0, 0xb2, 0xd0, 0xb5, 0xd1, 0x80, 0xd1,
- 0x81, 0xd0, 0xb8, 0xd1, 0x8f, 0xd1, 0x81, 0xd1, 0x82, 0xd1, 0x80, 0xd0, 0xb0,
- 0xd0, 0xbd, 0xd0, 0xb5, 0xd1, 0x84, 0xd0, 0xb8, 0xd0, 0xbb, 0xd1, 0x8c, 0xd0,
- 0xbc, 0xd1, 0x8b, 0xd1, 0x83, 0xd1, 0x80, 0xd0, 0xbe, 0xd0, 0xb2, 0xd0, 0xbd,
- 0xd1, 0x8f, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xb7, 0xd0, 0xbd, 0xd1, 0x8b, 0xd1,
- 0x85, 0xd0, 0xb8, 0xd1, 0x81, 0xd0, 0xba, 0xd0, 0xb0, 0xd1, 0x82, 0xd1, 0x8c,
- 0xd0, 0xbd, 0xd0, 0xb5, 0xd0, 0xb4, 0xd0, 0xb5, 0xd0, 0xbb, 0xd1, 0x8e, 0xd1,
- 0x8f, 0xd0, 0xbd, 0xd0, 0xb2, 0xd0, 0xb0, 0xd1, 0x80, 0xd1, 0x8f, 0xd0, 0xbc,
- 0xd0, 0xb5, 0xd0, 0xbd, 0xd1, 0x8c, 0xd1, 0x88, 0xd0, 0xb5, 0xd0, 0xbc, 0xd0,
- 0xbd, 0xd0, 0xbe, 0xd0, 0xb3, 0xd0, 0xb8, 0xd1, 0x85, 0xd0, 0xb4, 0xd0, 0xb0,
- 0xd0, 0xbd, 0xd0, 0xbd, 0xd0, 0xbe, 0xd0, 0xb9, 0xd0, 0xb7, 0xd0, 0xbd, 0xd0,
- 0xb0, 0xd1, 0x87, 0xd0, 0xb8, 0xd1, 0x82, 0xd0, 0xbd, 0xd0, 0xb5, 0xd0, 0xbb,
- 0xd1, 0x8c, 0xd0, 0xb7, 0xd1, 0x8f, 0xd1, 0x84, 0xd0, 0xbe, 0xd1, 0x80, 0xd1,
- 0x83, 0xd0, 0xbc, 0xd0, 0xb0, 0xd0, 0xa2, 0xd0, 0xb5, 0xd0, 0xbf, 0xd0, 0xb5,
- 0xd1, 0x80, 0xd1, 0x8c, 0xd0, 0xbc, 0xd0, 0xb5, 0xd1, 0x81, 0xd1, 0x8f, 0xd1,
- 0x86, 0xd0, 0xb0, 0xd0, 0xb7, 0xd0, 0xb0, 0xd1, 0x89, 0xd0, 0xb8, 0xd1, 0x82,
- 0xd1, 0x8b, 0xd0, 0x9b, 0xd1, 0x83, 0xd1, 0x87, 0xd1, 0x88, 0xd0, 0xb8, 0xd0,
- 0xb5, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x82,
- 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x87, 0xe0,
- 0xa4, 0x85, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4,
- 0x95, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x95,
- 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x85, 0xe0,
- 0xa4, 0xa8, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0x95, 0xe0, 0xa5,
- 0x8d, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0x87, 0xe0, 0xa4, 0xa1, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0xb0, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4,
- 0xb8, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xaf,
- 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xb2, 0xe0,
- 0xa5, 0x87, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x82, 0xe0, 0xa4,
- 0xb9, 0xe0, 0xa4, 0xad, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa4,
- 0xe0, 0xa4, 0x85, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x80, 0xe0,
- 0xa4, 0xb5, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x87, 0xe0, 0xa4,
- 0xb8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x95,
- 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xae, 0xe0,
- 0xa5, 0x87, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5,
- 0x8b, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x95,
- 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xb9, 0xe0,
- 0xa5, 0x81, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0x87, 0xe0, 0xa4, 0x9f, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x97,
- 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa8, 0xe0,
- 0xa5, 0x87, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4,
- 0x9f, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0x89, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x87, 0xe0, 0xa4,
- 0xaf, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x81, 0xe0, 0xa4, 0xb8,
- 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xad, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0xb7, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x86, 0xe0, 0xa4,
- 0xaa, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xbf,
- 0xe0, 0xa4, 0xaf, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb6, 0xe0, 0xa5, 0x81, 0xe0,
- 0xa4, 0xb0, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0x87, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4,
- 0x95, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x98, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x9f,
- 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xae, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb0, 0xe0,
- 0xa5, 0x80, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0xae, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xb0, 0xe0,
- 0xa4, 0x85, 0xe0, 0xa4, 0xa7, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x95, 0xe0, 0xa4,
- 0x85, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb8,
- 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xae, 0xe0,
- 0xa5, 0x81, 0xe0, 0xa4, 0x9d, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x95, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa3, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x8b,
- 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xa1, 0xe0,
- 0xa4, 0xbc, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x9f,
- 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xb6, 0xe0, 0xa4, 0xac, 0xe0, 0xa5, 0x8d, 0xe0,
- 0xa4, 0xa6, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0x9c, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xa8,
- 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0x95, 0xe0, 0xa5, 0x88, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4,
- 0x86, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb5,
- 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xa6, 0xe0,
- 0xa5, 0x87, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xaa, 0xe0, 0xa5,
- 0x82, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x89, 0xe0, 0xa4, 0xb8, 0xe0,
- 0xa4, 0x95, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4,
- 0x97, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xac, 0xe0, 0xa5, 0x88, 0xe0, 0xa4, 0xa0,
- 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0x86, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0x95, 0xe0,
- 0xa5, 0x80, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4,
- 0xb7, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xb5,
- 0xe0, 0xa4, 0x86, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8b, 0xe0,
- 0xa4, 0x9c, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0x9c, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb8,
- 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xb9, 0xe0,
- 0xa4, 0xae, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x89, 0xe0, 0xa4,
- 0xa8, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0xb0, 0xe0,
- 0xa5, 0x8d, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x82, 0xe0, 0xa4,
- 0x9a, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x82,
- 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0xb2, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x80,
- 0xe0, 0xa4, 0x9c, 0xe0, 0xa5, 0x88, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x87, 0xe0,
- 0xa4, 0xb5, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4,
- 0x9c, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa8,
- 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x9c, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x98, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xbf,
- 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x80, 0xe0,
- 0xa4, 0x9a, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0x82, 0xe0, 0xa4, 0x9a, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x97, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0x97, 0xe0,
- 0xa4, 0xb2, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5,
- 0x87, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xb0,
- 0xe0, 0xa4, 0x86, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x87, 0xe0,
- 0xa4, 0xb5, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4,
- 0x87, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb8,
- 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xb0, 0xe0,
- 0xa4, 0xb9, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x87, 0xe0, 0xa4,
- 0xb8, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xb9,
- 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xa1, 0xe0,
- 0xa4, 0xbc, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x98, 0xe0, 0xa4, 0x9f, 0xe0, 0xa4,
- 0xa8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0xb6, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x82, 0xe0,
- 0xa4, 0x9a, 0xe0, 0xa4, 0xb6, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5,
- 0x80, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xa1, 0xe0, 0xa4, 0xbc, 0xe0, 0xa5, 0x80,
- 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x87, 0xe0,
- 0xa4, 0xb8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x88, 0xe0, 0xa4, 0x9f, 0xe0, 0xa4,
- 0xb6, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0xb8,
- 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x9c, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0x9c,
- 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0x9f, 0xe0,
- 0xa4, 0xa8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x96, 0xe0, 0xa4,
- 0xa8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xa1, 0xe0, 0xa4, 0xbc,
- 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xb2, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0x89, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x95, 0xe0, 0xa5,
- 0x80, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xb2,
- 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0x96, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0x85, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa5, 0xe0, 0xa4, 0x9c,
- 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xa6, 0xe0,
- 0xa5, 0x87, 0xe0, 0xa4, 0x96, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4,
- 0xb9, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xbf,
- 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xbf, 0xe0,
- 0xa4, 0xa8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xac, 0xe0, 0xa5, 0x88, 0xe0, 0xa4,
- 0x82, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x80,
- 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xa8, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0xa6, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x87,
- 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xab, 0xe0, 0xa5, 0x80, 0xe0,
- 0xa4, 0x9c, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4,
- 0xa4, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xae,
- 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xb5, 0xe0,
- 0xa4, 0xb9, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5,
- 0x8b, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xbc, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xbf,
- 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x86, 0xe0, 0xa4, 0xb0, 0xe0,
- 0xa5, 0x8b, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4,
- 0xa8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa6,
- 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xa8, 0xe0,
- 0xa5, 0x87, 0xe0, 0xa4, 0x96, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xac,
- 0xe0, 0xa4, 0x89, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0x9c, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xac, 0xe0, 0xa4,
- 0xaa, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xac,
- 0xe0, 0xa4, 0xa1, 0xe0, 0xa4, 0xbc, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb8, 0xe0,
- 0xa5, 0x8c, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb6, 0xe0, 0xa5,
- 0x87, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbf,
- 0xe0, 0xa4, 0xaf, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xb9, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x85, 0xe0, 0xa4, 0x95, 0xe0, 0xa4,
- 0xb8, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0x8f, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0x82, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa5, 0xe0, 0xa4,
- 0xb2, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x87,
- 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x96, 0xe0, 0xa4, 0x95, 0xe0,
- 0xa4, 0xb5, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xb7, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4,
- 0x95, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xb8,
- 0xe0, 0xa4, 0xae, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xa5, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xbe, 0xd8, 0xaa, 0xd8, 0xb3, 0xd8,
- 0xaa, 0xd8, 0xb7, 0xd9, 0x8a, 0xd8, 0xb9, 0xd9, 0x85, 0xd8, 0xb4, 0xd8, 0xa7,
- 0xd8, 0xb1, 0xd9, 0x83, 0xd8, 0xa9, 0xd8, 0xa8, 0xd9, 0x88, 0xd8, 0xa7, 0xd8,
- 0xb3, 0xd8, 0xb7, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb5, 0xd9, 0x81,
- 0xd8, 0xad, 0xd8, 0xa9, 0xd9, 0x85, 0xd9, 0x88, 0xd8, 0xa7, 0xd8, 0xb6, 0xd9,
- 0x8a, 0xd8, 0xb9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xae, 0xd8, 0xa7, 0xd8, 0xb5,
- 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd8, 0xb2, 0xd9, 0x8a, 0xd8,
- 0xaf, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb9, 0xd8, 0xa7, 0xd9, 0x85, 0xd8, 0xa9,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x83, 0xd8, 0xa7, 0xd8, 0xaa, 0xd8, 0xa8, 0xd8,
- 0xa7, 0xd9, 0x84, 0xd8, 0xb1, 0xd8, 0xaf, 0xd9, 0x88, 0xd8, 0xaf, 0xd8, 0xa8,
- 0xd8, 0xb1, 0xd9, 0x86, 0xd8, 0xa7, 0xd9, 0x85, 0xd8, 0xac, 0xd8, 0xa7, 0xd9,
- 0x84, 0xd8, 0xaf, 0xd9, 0x88, 0xd9, 0x84, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84,
- 0xd8, 0xb9, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd8, 0xa7, 0xd9, 0x84, 0xd9,
- 0x85, 0xd9, 0x88, 0xd9, 0x82, 0xd8, 0xb9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb9,
- 0xd8, 0xb1, 0xd8, 0xa8, 0xd9, 0x8a, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb3, 0xd8,
- 0xb1, 0xd9, 0x8a, 0xd8, 0xb9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xac, 0xd9, 0x88,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb0, 0xd9, 0x87, 0xd8,
- 0xa7, 0xd8, 0xa8, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xad, 0xd9, 0x8a, 0xd8, 0xa7,
- 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xad, 0xd9, 0x82, 0xd9, 0x88, 0xd9,
- 0x82, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x83, 0xd8, 0xb1, 0xd9, 0x8a, 0xd9, 0x85,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb9, 0xd8, 0xb1, 0xd8, 0xa7, 0xd9, 0x82, 0xd9,
- 0x85, 0xd8, 0xad, 0xd9, 0x81, 0xd9, 0x88, 0xd8, 0xb8, 0xd8, 0xa9, 0xd8, 0xa7,
- 0xd9, 0x84, 0xd8, 0xab, 0xd8, 0xa7, 0xd9, 0x86, 0xd9, 0x8a, 0xd9, 0x85, 0xd8,
- 0xb4, 0xd8, 0xa7, 0xd9, 0x87, 0xd8, 0xaf, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84,
- 0xd9, 0x85, 0xd8, 0xb1, 0xd8, 0xa3, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd9,
- 0x82, 0xd8, 0xb1, 0xd8, 0xa2, 0xd9, 0x86, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb4,
- 0xd8, 0xa8, 0xd8, 0xa7, 0xd8, 0xa8, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xad, 0xd9,
- 0x88, 0xd8, 0xa7, 0xd8, 0xb1, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xac, 0xd8, 0xaf,
- 0xd9, 0x8a, 0xd8, 0xaf, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa3, 0xd8, 0xb3, 0xd8,
- 0xb1, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb9, 0xd9, 0x84, 0xd9, 0x88,
- 0xd9, 0x85, 0xd9, 0x85, 0xd8, 0xac, 0xd9, 0x85, 0xd9, 0x88, 0xd8, 0xb9, 0xd8,
- 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb1, 0xd8, 0xad, 0xd9, 0x85, 0xd9, 0x86,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x86, 0xd9, 0x82, 0xd8, 0xa7, 0xd8, 0xb7, 0xd9,
- 0x81, 0xd9, 0x84, 0xd8, 0xb3, 0xd8, 0xb7, 0xd9, 0x8a, 0xd9, 0x86, 0xd8, 0xa7,
- 0xd9, 0x84, 0xd9, 0x83, 0xd9, 0x88, 0xd9, 0x8a, 0xd8, 0xaa, 0xd8, 0xa7, 0xd9,
- 0x84, 0xd8, 0xaf, 0xd9, 0x86, 0xd9, 0x8a, 0xd8, 0xa7, 0xd8, 0xa8, 0xd8, 0xb1,
- 0xd9, 0x83, 0xd8, 0xa7, 0xd8, 0xaa, 0xd9, 0x87, 0xd8, 0xa7, 0xd9, 0x84, 0xd8,
- 0xb1, 0xd9, 0x8a, 0xd8, 0xa7, 0xd8, 0xb6, 0xd8, 0xaa, 0xd8, 0xad, 0xd9, 0x8a,
- 0xd8, 0xa7, 0xd8, 0xaa, 0xd9, 0x8a, 0xd8, 0xa8, 0xd8, 0xaa, 0xd9, 0x88, 0xd9,
- 0x82, 0xd9, 0x8a, 0xd8, 0xaa, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa3, 0xd9, 0x88,
- 0xd9, 0x84, 0xd9, 0x89, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa8, 0xd8, 0xb1, 0xd9,
- 0x8a, 0xd8, 0xaf, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x83, 0xd9, 0x84, 0xd8, 0xa7,
- 0xd9, 0x85, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb1, 0xd8, 0xa7, 0xd8, 0xa8, 0xd8,
- 0xb7, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb4, 0xd8, 0xae, 0xd8, 0xb5, 0xd9, 0x8a,
- 0xd8, 0xb3, 0xd9, 0x8a, 0xd8, 0xa7, 0xd8, 0xb1, 0xd8, 0xa7, 0xd8, 0xaa, 0xd8,
- 0xa7, 0xd9, 0x84, 0xd8, 0xab, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xab, 0xd8, 0xa7,
- 0xd9, 0x84, 0xd8, 0xb5, 0xd9, 0x84, 0xd8, 0xa7, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9,
- 0x84, 0xd8, 0xad, 0xd8, 0xaf, 0xd9, 0x8a, 0xd8, 0xab, 0xd8, 0xa7, 0xd9, 0x84,
- 0xd8, 0xb2, 0xd9, 0x88, 0xd8, 0xa7, 0xd8, 0xb1, 0xd8, 0xa7, 0xd9, 0x84, 0xd8,
- 0xae, 0xd9, 0x84, 0xd9, 0x8a, 0xd8, 0xac, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xac,
- 0xd9, 0x85, 0xd9, 0x8a, 0xd8, 0xb9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb9, 0xd8,
- 0xa7, 0xd9, 0x85, 0xd9, 0x87, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xac, 0xd9, 0x85,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb3, 0xd8, 0xa7, 0xd8,
- 0xb9, 0xd8, 0xa9, 0xd9, 0x85, 0xd8, 0xb4, 0xd8, 0xa7, 0xd9, 0x87, 0xd8, 0xaf,
- 0xd9, 0x87, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb1, 0xd8, 0xa6, 0xd9, 0x8a, 0xd8,
- 0xb3, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xaf, 0xd8, 0xae, 0xd9, 0x88, 0xd9, 0x84,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x81, 0xd9, 0x86, 0xd9, 0x8a, 0xd8, 0xa9, 0xd8,
- 0xa7, 0xd9, 0x84, 0xd9, 0x83, 0xd8, 0xaa, 0xd8, 0xa7, 0xd8, 0xa8, 0xd8, 0xa7,
- 0xd9, 0x84, 0xd8, 0xaf, 0xd9, 0x88, 0xd8, 0xb1, 0xd9, 0x8a, 0xd8, 0xa7, 0xd9,
- 0x84, 0xd8, 0xaf, 0xd8, 0xb1, 0xd9, 0x88, 0xd8, 0xb3, 0xd8, 0xa7, 0xd8, 0xb3,
- 0xd8, 0xaa, 0xd8, 0xba, 0xd8, 0xb1, 0xd9, 0x82, 0xd8, 0xaa, 0xd8, 0xb5, 0xd8,
- 0xa7, 0xd9, 0x85, 0xd9, 0x8a, 0xd9, 0x85, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa8,
- 0xd9, 0x86, 0xd8, 0xa7, 0xd8, 0xaa, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb9, 0xd8,
- 0xb8, 0xd9, 0x8a, 0xd9, 0x85, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69,
- 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x74, 0x61,
- 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x28, 0x29, 0x2e, 0x6a, 0x70, 0x67, 0x22, 0x20, 0x77, 0x69,
- 0x64, 0x74, 0x68, 0x3d, 0x22, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x6e, 0x67, 0x22, 0x20, 0x77, 0x69,
- 0x64, 0x74, 0x68, 0x3d, 0x22, 0x3c, 0x62, 0x6f, 0x64, 0x79, 0x20, 0x63, 0x6c,
- 0x61, 0x73, 0x73, 0x3d, 0x22, 0x4d, 0x61, 0x74, 0x68, 0x2e, 0x72, 0x61, 0x6e,
- 0x64, 0x6f, 0x6d, 0x28, 0x29, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6d, 0x70, 0x6f,
- 0x72, 0x61, 0x72, 0x79, 0x20, 0x55, 0x6e, 0x69, 0x74, 0x65, 0x64, 0x20, 0x53,
- 0x74, 0x61, 0x74, 0x65, 0x73, 0x63, 0x69, 0x72, 0x63, 0x75, 0x6d, 0x73, 0x74,
- 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2e, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x64, 0x43,
- 0x68, 0x69, 0x6c, 0x64, 0x28, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x63, 0x6c,
- 0x61, 0x73, 0x73, 0x3d, 0x22, 0x22, 0x3e, 0x3c, 0x69, 0x6d, 0x67, 0x20, 0x73,
- 0x72, 0x63, 0x3d, 0x22, 0x2f, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x75,
- 0x69, 0x73, 0x68, 0x65, 0x64, 0x74, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64,
- 0x73, 0x20, 0x6f, 0x66, 0x20, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x22, 0x3e, 0x3c,
- 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x69, 0x6e, 0x76, 0x65, 0x73, 0x74, 0x69, 0x67,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x66, 0x61, 0x76, 0x69, 0x63, 0x6f, 0x6e, 0x2e,
- 0x69, 0x63, 0x6f, 0x22, 0x20, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x2d, 0x72,
- 0x69, 0x67, 0x68, 0x74, 0x3a, 0x62, 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x4d, 0x61, 0x73, 0x73, 0x61, 0x63, 0x68, 0x75,
- 0x73, 0x65, 0x74, 0x74, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x62, 0x6f,
- 0x72, 0x64, 0x65, 0x72, 0x3d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x6b, 0x6e, 0x6f,
- 0x77, 0x6e, 0x20, 0x61, 0x73, 0x70, 0x72, 0x6f, 0x6e, 0x75, 0x6e, 0x63, 0x69,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75,
- 0x6e, 0x64, 0x3a, 0x23, 0x66, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x2d,
- 0x6c, 0x65, 0x66, 0x74, 0x3a, 0x46, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x61, 0x6d,
- 0x70, 0x6c, 0x65, 0x2c, 0x20, 0x6d, 0x69, 0x73, 0x63, 0x65, 0x6c, 0x6c, 0x61,
- 0x6e, 0x65, 0x6f, 0x75, 0x73, 0x26, 0x6c, 0x74, 0x3b, 0x2f, 0x6d, 0x61, 0x74,
- 0x68, 0x26, 0x67, 0x74, 0x3b, 0x70, 0x73, 0x79, 0x63, 0x68, 0x6f, 0x6c, 0x6f,
- 0x67, 0x69, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69,
- 0x63, 0x75, 0x6c, 0x61, 0x72, 0x65, 0x61, 0x72, 0x63, 0x68, 0x22, 0x20, 0x74,
- 0x79, 0x70, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x6d, 0x65, 0x74,
- 0x68, 0x6f, 0x64, 0x3d, 0x22, 0x61, 0x73, 0x20, 0x6f, 0x70, 0x70, 0x6f, 0x73,
- 0x65, 0x64, 0x20, 0x74, 0x6f, 0x53, 0x75, 0x70, 0x72, 0x65, 0x6d, 0x65, 0x20,
- 0x43, 0x6f, 0x75, 0x72, 0x74, 0x6f, 0x63, 0x63, 0x61, 0x73, 0x69, 0x6f, 0x6e,
- 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x41, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e,
- 0x61, 0x6c, 0x6c, 0x79, 0x2c, 0x4e, 0x6f, 0x72, 0x74, 0x68, 0x20, 0x41, 0x6d,
- 0x65, 0x72, 0x69, 0x63, 0x61, 0x70, 0x78, 0x3b, 0x62, 0x61, 0x63, 0x6b, 0x67,
- 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x6f, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x75, 0x6e,
- 0x69, 0x74, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x65, 0x72, 0x74, 0x61, 0x69,
- 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x74, 0x6f, 0x4c, 0x6f, 0x77, 0x65, 0x72,
- 0x43, 0x61, 0x73, 0x65, 0x28, 0x6d, 0x61, 0x6e, 0x75, 0x66, 0x61, 0x63, 0x74,
- 0x75, 0x72, 0x69, 0x6e, 0x67, 0x70, 0x72, 0x6f, 0x66, 0x65, 0x73, 0x73, 0x69,
- 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x63, 0x6f, 0x6d, 0x62, 0x69, 0x6e, 0x65, 0x64,
- 0x20, 0x77, 0x69, 0x74, 0x68, 0x46, 0x6f, 0x72, 0x20, 0x69, 0x6e, 0x73, 0x74,
- 0x61, 0x6e, 0x63, 0x65, 0x2c, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x69,
- 0x6e, 0x67, 0x20, 0x6f, 0x66, 0x22, 0x20, 0x6d, 0x61, 0x78, 0x6c, 0x65, 0x6e,
- 0x67, 0x74, 0x68, 0x3d, 0x22, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66,
- 0x61, 0x6c, 0x73, 0x65, 0x3b, 0x63, 0x6f, 0x6e, 0x73, 0x63, 0x69, 0x6f, 0x75,
- 0x73, 0x6e, 0x65, 0x73, 0x73, 0x4d, 0x65, 0x64, 0x69, 0x74, 0x65, 0x72, 0x72,
- 0x61, 0x6e, 0x65, 0x61, 0x6e, 0x65, 0x78, 0x74, 0x72, 0x61, 0x6f, 0x72, 0x64,
- 0x69, 0x6e, 0x61, 0x72, 0x79, 0x61, 0x73, 0x73, 0x61, 0x73, 0x73, 0x69, 0x6e,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x75, 0x62, 0x73, 0x65, 0x71, 0x75, 0x65,
- 0x6e, 0x74, 0x6c, 0x79, 0x20, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x74,
- 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x75, 0x6d, 0x62,
- 0x65, 0x72, 0x20, 0x6f, 0x66, 0x74, 0x68, 0x65, 0x20, 0x6f, 0x72, 0x69, 0x67,
- 0x69, 0x6e, 0x61, 0x6c, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x68, 0x65,
- 0x6e, 0x73, 0x69, 0x76, 0x65, 0x72, 0x65, 0x66, 0x65, 0x72, 0x73, 0x20, 0x74,
- 0x6f, 0x20, 0x74, 0x68, 0x65, 0x3c, 0x2f, 0x75, 0x6c, 0x3e, 0x0a, 0x3c, 0x2f,
- 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x70, 0x68, 0x69, 0x6c, 0x6f, 0x73, 0x6f, 0x70,
- 0x68, 0x69, 0x63, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x2e, 0x68, 0x72, 0x65, 0x66, 0x77, 0x61, 0x73, 0x20, 0x70, 0x75, 0x62, 0x6c,
- 0x69, 0x73, 0x68, 0x65, 0x64, 0x53, 0x61, 0x6e, 0x20, 0x46, 0x72, 0x61, 0x6e,
- 0x63, 0x69, 0x73, 0x63, 0x6f, 0x28, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x28, 0x29, 0x7b, 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d,
- 0x22, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x6f, 0x70, 0x68, 0x69, 0x73, 0x74, 0x69,
- 0x63, 0x61, 0x74, 0x65, 0x64, 0x6d, 0x61, 0x74, 0x68, 0x65, 0x6d, 0x61, 0x74,
- 0x69, 0x63, 0x61, 0x6c, 0x20, 0x2f, 0x68, 0x65, 0x61, 0x64, 0x3e, 0x0d, 0x0a,
- 0x3c, 0x62, 0x6f, 0x64, 0x79, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x73,
- 0x20, 0x74, 0x68, 0x61, 0x74, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x6e, 0x74, 0x72,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x68, 0x69, 0x70, 0x73, 0x6d, 0x61, 0x79, 0x20, 0x68, 0x61, 0x76, 0x65,
- 0x20, 0x62, 0x65, 0x65, 0x6e, 0x28, 0x66, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x61,
- 0x6d, 0x70, 0x6c, 0x65, 0x2c, 0x54, 0x68, 0x69, 0x73, 0x20, 0x61, 0x72, 0x74,
- 0x69, 0x63, 0x6c, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x20,
- 0x63, 0x61, 0x73, 0x65, 0x73, 0x70, 0x61, 0x72, 0x74, 0x73, 0x20, 0x6f, 0x66,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x47, 0x72, 0x65, 0x61, 0x74, 0x20, 0x42, 0x72,
- 0x69, 0x74, 0x61, 0x69, 0x6e, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x70, 0x61, 0x64,
- 0x64, 0x69, 0x6e, 0x67, 0x3d, 0x65, 0x71, 0x75, 0x69, 0x76, 0x61, 0x6c, 0x65,
- 0x6e, 0x74, 0x20, 0x74, 0x6f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c,
- 0x64, 0x65, 0x72, 0x3d, 0x22, 0x3b, 0x20, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73,
- 0x69, 0x7a, 0x65, 0x3a, 0x20, 0x6a, 0x75, 0x73, 0x74, 0x69, 0x66, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x65, 0x6c, 0x69, 0x65, 0x76, 0x65, 0x64,
- 0x20, 0x74, 0x68, 0x61, 0x74, 0x73, 0x75, 0x66, 0x66, 0x65, 0x72, 0x65, 0x64,
- 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x65,
- 0x64, 0x20, 0x74, 0x6f, 0x20, 0x6c, 0x65, 0x61, 0x64, 0x65, 0x72, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x20, 0x73,
- 0x72, 0x63, 0x3d, 0x22, 0x2f, 0x28, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x28, 0x29, 0x20, 0x7b, 0x61, 0x72, 0x65, 0x20, 0x61, 0x76, 0x61, 0x69,
- 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x0a, 0x09, 0x3c, 0x6c, 0x69, 0x6e, 0x6b, 0x20,
- 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x20, 0x73, 0x72, 0x63, 0x3d, 0x27, 0x68, 0x74,
- 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74,
- 0x65, 0x64, 0x20, 0x69, 0x6e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x69,
- 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x22, 0x20, 0x61, 0x6c, 0x74, 0x3d, 0x22, 0x22,
- 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x61, 0x72, 0x65, 0x20, 0x67, 0x65, 0x6e, 0x65,
- 0x72, 0x61, 0x6c, 0x6c, 0x79, 0x68, 0x61, 0x73, 0x20, 0x61, 0x6c, 0x73, 0x6f,
- 0x20, 0x62, 0x65, 0x65, 0x6e, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x70, 0x6f, 0x70,
- 0x75, 0x6c, 0x61, 0x72, 0x20, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x65, 0x64,
- 0x20, 0x77, 0x69, 0x74, 0x68, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x62, 0x6f,
- 0x72, 0x64, 0x65, 0x72, 0x3a, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x73, 0x70,
- 0x61, 0x6e, 0x3e, 0x3c, 0x2f, 0x2e, 0x67, 0x69, 0x66, 0x22, 0x20, 0x77, 0x69,
- 0x64, 0x74, 0x68, 0x3d, 0x22, 0x3c, 0x69, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x20,
- 0x73, 0x72, 0x63, 0x3d, 0x22, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x63, 0x6c,
- 0x61, 0x73, 0x73, 0x3d, 0x22, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x62,
- 0x6c, 0x6f, 0x63, 0x6b, 0x3b, 0x61, 0x63, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e,
- 0x67, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x6f, 0x67, 0x65, 0x74, 0x68, 0x65, 0x72,
- 0x20, 0x77, 0x69, 0x74, 0x68, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x6d,
- 0x61, 0x74, 0x65, 0x6c, 0x79, 0x70, 0x61, 0x72, 0x6c, 0x69, 0x61, 0x6d, 0x65,
- 0x6e, 0x74, 0x61, 0x72, 0x79, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x61, 0x6e, 0x64,
- 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a,
- 0x6e, 0x6f, 0x6e, 0x65, 0x3b, 0x74, 0x72, 0x61, 0x64, 0x69, 0x74, 0x69, 0x6f,
- 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x70, 0x72, 0x65, 0x64, 0x6f, 0x6d, 0x69, 0x6e,
- 0x61, 0x6e, 0x74, 0x6c, 0x79, 0x26, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x7c, 0x26,
- 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x26, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x3c, 0x2f,
- 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x70, 0x61,
- 0x63, 0x69, 0x6e, 0x67, 0x3d, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x6e,
- 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x72, 0x22, 0x20, 0x63, 0x6f, 0x6e, 0x74,
- 0x65, 0x6e, 0x74, 0x3d, 0x22, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x76, 0x65,
- 0x72, 0x73, 0x69, 0x61, 0x6c, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79,
- 0x3d, 0x22, 0x6f, 0x67, 0x3a, 0x2f, 0x78, 0x2d, 0x73, 0x68, 0x6f, 0x63, 0x6b,
- 0x77, 0x61, 0x76, 0x65, 0x2d, 0x64, 0x65, 0x6d, 0x6f, 0x6e, 0x73, 0x74, 0x72,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x75, 0x72, 0x72, 0x6f, 0x75, 0x6e, 0x64,
- 0x65, 0x64, 0x20, 0x62, 0x79, 0x4e, 0x65, 0x76, 0x65, 0x72, 0x74, 0x68, 0x65,
- 0x6c, 0x65, 0x73, 0x73, 0x2c, 0x77, 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x66, 0x69, 0x72, 0x73, 0x74, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72,
- 0x61, 0x62, 0x6c, 0x65, 0x20, 0x41, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x62, 0x6f, 0x72,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x6e,
- 0x6f, 0x74, 0x20, 0x62, 0x65, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x72, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x73, 0x74,
- 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x20, 0x61, 0x73,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x6c, 0x79, 0x20,
- 0x61, 0x66, 0x74, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x20, 0x69, 0x6e, 0x73, 0x74,
- 0x61, 0x6e, 0x63, 0x65, 0x2c, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65,
- 0x64, 0x20, 0x61, 0x73, 0x20, 0x2f, 0x68, 0x65, 0x61, 0x64, 0x3e, 0x0a, 0x3c,
- 0x62, 0x6f, 0x64, 0x79, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67,
- 0x20, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x69,
- 0x6e, 0x67, 0x6c, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, 0x61, 0x63, 0x74,
- 0x20, 0x74, 0x68, 0x61, 0x74, 0x64, 0x69, 0x73, 0x63, 0x75, 0x73, 0x73, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x6d, 0x69, 0x64, 0x64, 0x6c, 0x65, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x61, 0x6e, 0x20, 0x69, 0x6e, 0x64, 0x69, 0x76,
- 0x69, 0x64, 0x75, 0x61, 0x6c, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c,
- 0x74, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x20, 0x6f, 0x66,
- 0x20, 0x76, 0x69, 0x65, 0x77, 0x68, 0x6f, 0x6d, 0x6f, 0x73, 0x65, 0x78, 0x75,
- 0x61, 0x6c, 0x69, 0x74, 0x79, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x61, 0x6e,
- 0x63, 0x65, 0x20, 0x6f, 0x66, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x3c,
- 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x6d, 0x61, 0x6e, 0x75, 0x66, 0x61, 0x63, 0x74,
- 0x75, 0x72, 0x65, 0x72, 0x73, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x6c, 0x79,
- 0x20, 0x75, 0x73, 0x65, 0x64, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e,
- 0x63, 0x65, 0x20, 0x6f, 0x66, 0x64, 0x65, 0x6e, 0x6f, 0x6d, 0x69, 0x6e, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75,
- 0x6e, 0x64, 0x3a, 0x20, 0x23, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x64, 0x65, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x69, 0x66,
- 0x69, 0x63, 0x61, 0x6e, 0x74, 0x22, 0x20, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72,
- 0x3d, 0x22, 0x30, 0x22, 0x3e, 0x72, 0x65, 0x76, 0x6f, 0x6c, 0x75, 0x74, 0x69,
- 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x6c,
- 0x65, 0x73, 0x20, 0x6f, 0x66, 0x69, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69,
- 0x64, 0x65, 0x72, 0x65, 0x64, 0x77, 0x61, 0x73, 0x20, 0x64, 0x65, 0x76, 0x65,
- 0x6c, 0x6f, 0x70, 0x65, 0x64, 0x49, 0x6e, 0x64, 0x6f, 0x2d, 0x45, 0x75, 0x72,
- 0x6f, 0x70, 0x65, 0x61, 0x6e, 0x76, 0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62,
- 0x6c, 0x65, 0x20, 0x74, 0x6f, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x6e, 0x65, 0x6e,
- 0x74, 0x73, 0x20, 0x6f, 0x66, 0x61, 0x72, 0x65, 0x20, 0x73, 0x6f, 0x6d, 0x65,
- 0x74, 0x69, 0x6d, 0x65, 0x73, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x72, 0x20, 0x74,
- 0x6f, 0x20, 0x74, 0x68, 0x65, 0x4e, 0x65, 0x77, 0x20, 0x59, 0x6f, 0x72, 0x6b,
- 0x20, 0x43, 0x69, 0x74, 0x79, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73,
- 0x65, 0x61, 0x72, 0x63, 0x68, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74,
- 0x65, 0x64, 0x20, 0x74, 0x6f, 0x63, 0x6f, 0x75, 0x72, 0x73, 0x65, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x6d, 0x61, 0x74, 0x68, 0x65, 0x6d, 0x61, 0x74,
- 0x69, 0x63, 0x69, 0x61, 0x6e, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65,
- 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65,
- 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x22, 0x20, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72,
- 0x3d, 0x22, 0x30, 0x22, 0x20, 0x74, 0x65, 0x63, 0x68, 0x6e, 0x6f, 0x6c, 0x6f,
- 0x67, 0x69, 0x63, 0x61, 0x6c, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x43,
- 0x6c, 0x61, 0x73, 0x73, 0x28, 0x62, 0x72, 0x61, 0x6e, 0x63, 0x68, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x65, 0x76, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65,
- 0x20, 0x74, 0x68, 0x61, 0x74, 0x21, 0x5b, 0x65, 0x6e, 0x64, 0x69, 0x66, 0x5d,
- 0x2d, 0x2d, 0x3e, 0x0d, 0x0a, 0x49, 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74,
- 0x65, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x73,
- 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x72, 0x65, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69,
- 0x76, 0x65, 0x6c, 0x79, 0x2e, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x72,
- 0x65, 0x66, 0x6f, 0x72, 0x65, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69,
- 0x65, 0x73, 0x20, 0x6f, 0x66, 0x69, 0x73, 0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74,
- 0x65, 0x64, 0x20, 0x69, 0x6e, 0x73, 0x6f, 0x6d, 0x65, 0x20, 0x6f, 0x66, 0x20,
- 0x77, 0x68, 0x69, 0x63, 0x68, 0x54, 0x68, 0x65, 0x72, 0x65, 0x20, 0x69, 0x73,
- 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x63, 0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75, 0x65,
- 0x64, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x61, 0x6e,
- 0x63, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x26, 0x61, 0x6d, 0x70, 0x3b, 0x6e, 0x64,
- 0x61, 0x73, 0x68, 0x3b, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65,
- 0x73, 0x20, 0x74, 0x68, 0x65, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64,
- 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x65, 0x71, 0x75, 0x69, 0x70, 0x70, 0x65, 0x64,
- 0x20, 0x77, 0x69, 0x74, 0x68, 0x64, 0x6f, 0x65, 0x73, 0x20, 0x6e, 0x6f, 0x74,
- 0x20, 0x68, 0x61, 0x76, 0x65, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x61, 0x20, 0x68,
- 0x72, 0x65, 0x66, 0x3d, 0x22, 0x63, 0x6f, 0x6e, 0x66, 0x75, 0x73, 0x65, 0x64,
- 0x20, 0x77, 0x69, 0x74, 0x68, 0x3c, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x68, 0x72,
- 0x65, 0x66, 0x3d, 0x22, 0x2f, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61,
- 0x67, 0x65, 0x20, 0x6f, 0x66, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x20, 0x69,
- 0x6e, 0x20, 0x74, 0x68, 0x65, 0x54, 0x68, 0x65, 0x73, 0x65, 0x20, 0x69, 0x6e,
- 0x63, 0x6c, 0x75, 0x64, 0x65, 0x72, 0x65, 0x67, 0x61, 0x72, 0x64, 0x6c, 0x65,
- 0x73, 0x73, 0x20, 0x6f, 0x66, 0x63, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65,
- 0x20, 0x75, 0x73, 0x65, 0x64, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x26,
- 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x73, 0x65, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x20,
- 0x74, 0x69, 0x6d, 0x65, 0x73, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e,
- 0x74, 0x20, 0x74, 0x68, 0x65, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x0a, 0x3c, 0x2f,
- 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x74, 0x20,
- 0x74, 0x6f, 0x20, 0x62, 0x65, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x69, 0x6c,
- 0x69, 0x74, 0x69, 0x65, 0x73, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61,
- 0x67, 0x65, 0x20, 0x6f, 0x66, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x20, 0x74,
- 0x6f, 0x20, 0x74, 0x68, 0x65, 0x61, 0x6e, 0x20, 0x61, 0x74, 0x74, 0x65, 0x6d,
- 0x70, 0x74, 0x20, 0x74, 0x6f, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x6a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2f, 0x6a,
- 0x71, 0x75, 0x65, 0x72, 0x79, 0x74, 0x77, 0x6f, 0x20, 0x64, 0x69, 0x66, 0x66,
- 0x65, 0x72, 0x65, 0x6e, 0x74, 0x62, 0x65, 0x6c, 0x6f, 0x6e, 0x67, 0x20, 0x74,
- 0x6f, 0x20, 0x74, 0x68, 0x65, 0x65, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73,
- 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x69, 0x6e,
- 0x67, 0x20, 0x74, 0x68, 0x65, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x64, 0x65, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e,
- 0x65, 0x20, 0x74, 0x68, 0x65, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c,
- 0x65, 0x20, 0x66, 0x6f, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e,
- 0x67, 0x20, 0x74, 0x6f, 0x20, 0x77, 0x69, 0x64, 0x65, 0x20, 0x72, 0x61, 0x6e,
- 0x67, 0x65, 0x20, 0x6f, 0x66, 0x09, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c,
- 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x63, 0x6f, 0x6d,
- 0x6d, 0x6f, 0x6e, 0x6c, 0x79, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x73, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x61, 0x6c, 0x69, 0x74, 0x79, 0x77, 0x61, 0x73, 0x20, 0x63, 0x6f, 0x6d, 0x70,
- 0x6c, 0x65, 0x74, 0x65, 0x64, 0x20, 0x26, 0x61, 0x6d, 0x70, 0x3b, 0x6d, 0x64,
- 0x61, 0x73, 0x68, 0x3b, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x74, 0x68, 0x65, 0x20, 0x63, 0x68, 0x61, 0x72,
- 0x61, 0x63, 0x74, 0x65, 0x72, 0x61, 0x6e, 0x20, 0x61, 0x64, 0x64, 0x69, 0x74,
- 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x73, 0x20,
- 0x74, 0x6f, 0x20, 0x62, 0x65, 0x66, 0x61, 0x63, 0x74, 0x20, 0x74, 0x68, 0x61,
- 0x74, 0x20, 0x74, 0x68, 0x65, 0x61, 0x6e, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70,
- 0x6c, 0x65, 0x20, 0x6f, 0x66, 0x73, 0x69, 0x67, 0x6e, 0x69, 0x66, 0x69, 0x63,
- 0x61, 0x6e, 0x74, 0x6c, 0x79, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x6f,
- 0x76, 0x65, 0x72, 0x3d, 0x22, 0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x20,
- 0x74, 0x68, 0x65, 0x79, 0x20, 0x61, 0x73, 0x79, 0x6e, 0x63, 0x20, 0x3d, 0x20,
- 0x74, 0x72, 0x75, 0x65, 0x3b, 0x70, 0x72, 0x6f, 0x62, 0x6c, 0x65, 0x6d, 0x73,
- 0x20, 0x77, 0x69, 0x74, 0x68, 0x73, 0x65, 0x65, 0x6d, 0x73, 0x20, 0x74, 0x6f,
- 0x20, 0x68, 0x61, 0x76, 0x65, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x75,
- 0x6c, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x68, 0x74,
- 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x69, 0x61, 0x72,
- 0x20, 0x77, 0x69, 0x74, 0x68, 0x70, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x73, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x20, 0x28, 0x29, 0x20, 0x7b, 0x74, 0x6f, 0x6f, 0x6b, 0x20, 0x70, 0x6c, 0x61,
- 0x63, 0x65, 0x20, 0x69, 0x6e, 0x61, 0x6e, 0x64, 0x20, 0x73, 0x6f, 0x6d, 0x65,
- 0x74, 0x69, 0x6d, 0x65, 0x73, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x6e, 0x74,
- 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x3c, 0x2f,
- 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x69, 0x73, 0x20, 0x6f, 0x66, 0x74, 0x65, 0x6e,
- 0x20, 0x75, 0x73, 0x65, 0x64, 0x69, 0x6e, 0x20, 0x61, 0x6e, 0x20, 0x61, 0x74,
- 0x74, 0x65, 0x6d, 0x70, 0x74, 0x67, 0x72, 0x65, 0x61, 0x74, 0x20, 0x64, 0x65,
- 0x61, 0x6c, 0x20, 0x6f, 0x66, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d,
- 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x66,
- 0x75, 0x6c, 0x6c, 0x79, 0x20, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x6c,
- 0x79, 0x20, 0x61, 0x6c, 0x6c, 0x32, 0x30, 0x74, 0x68, 0x20, 0x63, 0x65, 0x6e,
- 0x74, 0x75, 0x72, 0x79, 0x2c, 0x70, 0x72, 0x6f, 0x66, 0x65, 0x73, 0x73, 0x69,
- 0x6f, 0x6e, 0x61, 0x6c, 0x73, 0x6e, 0x65, 0x63, 0x65, 0x73, 0x73, 0x61, 0x72,
- 0x79, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x65, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e,
- 0x65, 0x64, 0x20, 0x62, 0x79, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62,
- 0x69, 0x6c, 0x69, 0x74, 0x79, 0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x20,
- 0x69, 0x74, 0x20, 0x69, 0x73, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61,
- 0x72, 0x79, 0x20, 0x6f, 0x66, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x68, 0x65, 0x20, 0x66, 0x6f, 0x6c, 0x6c,
- 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x6d, 0x61, 0x79, 0x20, 0x72, 0x65, 0x66, 0x65,
- 0x72, 0x20, 0x74, 0x6f, 0x3a, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x71, 0x75, 0x65,
- 0x6e, 0x74, 0x6c, 0x79, 0x2c, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68,
- 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x74, 0x68, 0x61, 0x74, 0x20, 0x77, 0x6f, 0x75,
- 0x6c, 0x64, 0x20, 0x62, 0x65, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x27, 0x73, 0x20,
- 0x66, 0x69, 0x72, 0x73, 0x74, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69,
- 0x65, 0x64, 0x20, 0x61, 0x73, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x28, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75,
- 0x6c, 0x61, 0x72, 0x6c, 0x79, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3d, 0x22, 0x6c,
- 0x65, 0x66, 0x74, 0x22, 0x20, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x63, 0x6f, 0x6d,
- 0x6d, 0x6f, 0x6e, 0x6c, 0x79, 0x62, 0x61, 0x73, 0x69, 0x73, 0x20, 0x66, 0x6f,
- 0x72, 0x20, 0x74, 0x68, 0x65, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x69, 0x62, 0x75,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x69,
- 0x74, 0x79, 0x20, 0x6f, 0x66, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x74, 0x6f, 0x20, 0x72, 0x65, 0x64, 0x75, 0x63,
- 0x65, 0x20, 0x74, 0x68, 0x65, 0x6a, 0x75, 0x72, 0x69, 0x73, 0x64, 0x69, 0x63,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x6d,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x6d, 0x6f, 0x75, 0x73, 0x65,
- 0x6f, 0x75, 0x74, 0x3d, 0x22, 0x4e, 0x65, 0x77, 0x20, 0x54, 0x65, 0x73, 0x74,
- 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x3c,
- 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x55,
- 0x6e, 0x69, 0x74, 0x65, 0x64, 0x66, 0x69, 0x6c, 0x6d, 0x20, 0x64, 0x69, 0x72,
- 0x65, 0x63, 0x74, 0x6f, 0x72, 0x2d, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x2e,
- 0x64, 0x74, 0x64, 0x22, 0x3e, 0x68, 0x61, 0x73, 0x20, 0x62, 0x65, 0x65, 0x6e,
- 0x20, 0x75, 0x73, 0x65, 0x64, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x74,
- 0x6f, 0x20, 0x74, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68,
- 0x20, 0x74, 0x68, 0x69, 0x73, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x20, 0x69,
- 0x6e, 0x20, 0x74, 0x68, 0x65, 0x73, 0x65, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x20,
- 0x6f, 0x74, 0x68, 0x65, 0x72, 0x62, 0x75, 0x74, 0x20, 0x74, 0x68, 0x65, 0x72,
- 0x65, 0x20, 0x61, 0x72, 0x65, 0x75, 0x6e, 0x70, 0x72, 0x65, 0x63, 0x65, 0x64,
- 0x65, 0x6e, 0x74, 0x65, 0x64, 0x69, 0x73, 0x20, 0x73, 0x69, 0x6d, 0x69, 0x6c,
- 0x61, 0x72, 0x20, 0x74, 0x6f, 0x65, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c,
- 0x6c, 0x79, 0x20, 0x69, 0x6e, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x20,
- 0x62, 0x6f, 0x6c, 0x64, 0x3b, 0x69, 0x73, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x65,
- 0x64, 0x20, 0x74, 0x68, 0x65, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65,
- 0x20, 0x74, 0x68, 0x61, 0x74, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74,
- 0x65, 0x64, 0x20, 0x74, 0x6f, 0x09, 0x3c, 0x6d, 0x65, 0x74, 0x61, 0x20, 0x6e,
- 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x72, 0x65, 0x20, 0x74, 0x79, 0x70, 0x69,
- 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x63, 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74,
- 0x20, 0x77, 0x69, 0x74, 0x68, 0x48, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x41, 0x6e, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70,
- 0x6c, 0x65, 0x20, 0x6f, 0x66, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x64,
- 0x20, 0x77, 0x69, 0x74, 0x68, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x69,
- 0x65, 0x73, 0x20, 0x6f, 0x66, 0x72, 0x61, 0x74, 0x68, 0x65, 0x72, 0x20, 0x74,
- 0x68, 0x61, 0x6e, 0x20, 0x61, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x65, 0x6c, 0x6c,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x65, 0x73, 0x73, 0x61, 0x72,
- 0x79, 0x20, 0x66, 0x6f, 0x72, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64,
- 0x20, 0x74, 0x68, 0x61, 0x74, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x70, 0x6f, 0x6c, 0x69, 0x74, 0x69, 0x63, 0x61,
- 0x6c, 0x20, 0x61, 0x6e, 0x64, 0x26, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x26, 0x6e,
- 0x62, 0x73, 0x70, 0x3b, 0x3c, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63,
- 0x65, 0x73, 0x20, 0x74, 0x6f, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65,
- 0x20, 0x79, 0x65, 0x61, 0x72, 0x47, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6d, 0x65,
- 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x68, 0x61, 0x76, 0x65, 0x20, 0x6e, 0x6f, 0x74,
- 0x20, 0x62, 0x65, 0x65, 0x6e, 0x73, 0x65, 0x76, 0x65, 0x72, 0x61, 0x6c, 0x20,
- 0x79, 0x65, 0x61, 0x72, 0x73, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x6d, 0x65,
- 0x6e, 0x74, 0x20, 0x74, 0x6f, 0x09, 0x09, 0x3c, 0x75, 0x6c, 0x20, 0x63, 0x6c,
- 0x61, 0x73, 0x73, 0x3d, 0x22, 0x76, 0x69, 0x73, 0x75, 0x61, 0x6c, 0x69, 0x7a,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x31, 0x39, 0x74, 0x68, 0x20, 0x63, 0x65, 0x6e,
- 0x74, 0x75, 0x72, 0x79, 0x2c, 0x70, 0x72, 0x61, 0x63, 0x74, 0x69, 0x74, 0x69,
- 0x6f, 0x6e, 0x65, 0x72, 0x73, 0x74, 0x68, 0x61, 0x74, 0x20, 0x68, 0x65, 0x20,
- 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x61, 0x6e, 0x64, 0x20, 0x63, 0x6f, 0x6e, 0x74,
- 0x69, 0x6e, 0x75, 0x65, 0x64, 0x6f, 0x63, 0x63, 0x75, 0x70, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x69, 0x73, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e,
- 0x65, 0x64, 0x20, 0x61, 0x73, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x65, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x61, 0x6d, 0x6f, 0x75,
- 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x3e, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x73, 0x74,
- 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x65, 0x71, 0x75, 0x69, 0x76, 0x61, 0x6c, 0x65,
- 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e,
- 0x74, 0x69, 0x61, 0x74, 0x65, 0x62, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x74, 0x20,
- 0x61, 0x62, 0x6f, 0x75, 0x74, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x2d, 0x6c,
- 0x65, 0x66, 0x74, 0x3a, 0x20, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69,
- 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x74, 0x20,
- 0x6f, 0x66, 0x20, 0x61, 0x73, 0x53, 0x6f, 0x6d, 0x65, 0x20, 0x6f, 0x66, 0x20,
- 0x74, 0x68, 0x65, 0x73, 0x65, 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c,
- 0x61, 0x73, 0x73, 0x3d, 0x22, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x63, 0x6c,
- 0x61, 0x73, 0x73, 0x3d, 0x22, 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64,
- 0x20, 0x77, 0x69, 0x74, 0x68, 0x69, 0x73, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x65, 0x64, 0x75, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x20, 0x61, 0x6e, 0x64, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x65, 0x6e, 0x63,
- 0x65, 0x64, 0x20, 0x62, 0x79, 0x72, 0x65, 0x70, 0x75, 0x74, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x61, 0x73, 0x0a, 0x3c, 0x6d, 0x65, 0x74, 0x61, 0x20, 0x6e,
- 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x63, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x64,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x3c,
- 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x20, 0x70, 0x61,
- 0x72, 0x74, 0x20, 0x6f, 0x66, 0x49, 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74,
- 0x65, 0x20, 0x66, 0x6f, 0x72, 0x74, 0x68, 0x65, 0x20, 0x73, 0x6f, 0x2d, 0x63,
- 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x20, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x73, 0x74,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x49, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20,
- 0x63, 0x61, 0x73, 0x65, 0x2c, 0x77, 0x61, 0x73, 0x20, 0x61, 0x70, 0x70, 0x6f,
- 0x69, 0x6e, 0x74, 0x65, 0x64, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x65, 0x64, 0x20,
- 0x74, 0x6f, 0x20, 0x62, 0x65, 0x48, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c,
- 0x20, 0x74, 0x68, 0x69, 0x73, 0x44, 0x65, 0x70, 0x61, 0x72, 0x74, 0x6d, 0x65,
- 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x6d, 0x61,
- 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x6f,
- 0x6e, 0x20, 0x74, 0x68, 0x65, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c,
- 0x61, 0x72, 0x6c, 0x79, 0x20, 0x64, 0x65, 0x61, 0x6c, 0x20, 0x77, 0x69, 0x74,
- 0x68, 0x20, 0x74, 0x68, 0x65, 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x73, 0x74,
- 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x61, 0x6c, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x61,
- 0x6c, 0x77, 0x61, 0x79, 0x73, 0x61, 0x72, 0x65, 0x20, 0x63, 0x75, 0x72, 0x72,
- 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x70, 0x68, 0x69, 0x6c, 0x6f, 0x73, 0x6f, 0x70,
- 0x68, 0x79, 0x20, 0x6f, 0x66, 0x66, 0x6f, 0x72, 0x20, 0x6d, 0x6f, 0x72, 0x65,
- 0x20, 0x74, 0x68, 0x61, 0x6e, 0x63, 0x69, 0x76, 0x69, 0x6c, 0x69, 0x7a, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x69,
- 0x73, 0x6c, 0x61, 0x6e, 0x64, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64,
- 0x49, 0x6e, 0x64, 0x65, 0x78, 0x63, 0x61, 0x6e, 0x20, 0x72, 0x65, 0x73, 0x75,
- 0x6c, 0x74, 0x20, 0x69, 0x6e, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d,
- 0x22, 0x22, 0x20, 0x2f, 0x3e, 0x74, 0x68, 0x65, 0x20, 0x73, 0x74, 0x72, 0x75,
- 0x63, 0x74, 0x75, 0x72, 0x65, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x61, 0x3e, 0x3c,
- 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x4d, 0x61, 0x6e, 0x79, 0x20, 0x6f, 0x66, 0x20,
- 0x74, 0x68, 0x65, 0x73, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x64, 0x20, 0x62,
- 0x79, 0x20, 0x74, 0x68, 0x65, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x55,
- 0x6e, 0x69, 0x74, 0x65, 0x64, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x63, 0x6c, 0x61,
- 0x73, 0x73, 0x3d, 0x22, 0x6d, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x74,
- 0x72, 0x61, 0x63, 0x65, 0x64, 0x69, 0x73, 0x20, 0x72, 0x65, 0x6c, 0x61, 0x74,
- 0x65, 0x64, 0x20, 0x74, 0x6f, 0x62, 0x65, 0x63, 0x61, 0x6d, 0x65, 0x20, 0x6f,
- 0x6e, 0x65, 0x20, 0x6f, 0x66, 0x69, 0x73, 0x20, 0x66, 0x72, 0x65, 0x71, 0x75,
- 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x6c, 0x69, 0x76, 0x69, 0x6e, 0x67, 0x20, 0x69,
- 0x6e, 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x6f, 0x72, 0x65, 0x74, 0x69,
- 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e,
- 0x67, 0x20, 0x74, 0x68, 0x65, 0x52, 0x65, 0x76, 0x6f, 0x6c, 0x75, 0x74, 0x69,
- 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6d, 0x65,
- 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x69, 0x73, 0x20, 0x64, 0x65, 0x74, 0x65, 0x72,
- 0x6d, 0x69, 0x6e, 0x65, 0x64, 0x74, 0x68, 0x65, 0x20, 0x70, 0x6f, 0x6c, 0x69,
- 0x74, 0x69, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63,
- 0x65, 0x64, 0x20, 0x69, 0x6e, 0x73, 0x75, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65,
- 0x6e, 0x74, 0x20, 0x74, 0x6f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x69, 0x6f, 0x6e, 0x22, 0x3e, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x20, 0x73, 0x74,
- 0x6f, 0x72, 0x69, 0x65, 0x73, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x61, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x77, 0x68,
- 0x65, 0x74, 0x68, 0x65, 0x72, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x20, 0x66, 0x6f,
- 0x72, 0x20, 0x69, 0x74, 0x73, 0x77, 0x61, 0x73, 0x20, 0x69, 0x6e, 0x69, 0x74,
- 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a,
- 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x65, 0x78,
- 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x68, 0x65, 0x20, 0x70, 0x72, 0x69, 0x6e,
- 0x63, 0x69, 0x70, 0x61, 0x6c, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x73,
- 0x20, 0x6f, 0x66, 0x20, 0x61, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a,
- 0x65, 0x64, 0x20, 0x61, 0x73, 0x2f, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x3c, 0x2f,
- 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x61, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61,
- 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72,
- 0x75, 0x63, 0x74, 0x65, 0x64, 0x68, 0x65, 0x61, 0x64, 0x20, 0x6f, 0x66, 0x20,
- 0x73, 0x74, 0x61, 0x74, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e,
- 0x63, 0x65, 0x20, 0x74, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x67, 0x72, 0x61,
- 0x64, 0x75, 0x61, 0x74, 0x65, 0x54, 0x68, 0x65, 0x72, 0x65, 0x20, 0x61, 0x72,
- 0x65, 0x20, 0x74, 0x77, 0x6f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61, 0x72, 0x65, 0x20, 0x64, 0x65, 0x73, 0x63,
- 0x72, 0x69, 0x62, 0x65, 0x64, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f,
- 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x73, 0x65, 0x72, 0x76, 0x65, 0x64, 0x20, 0x61,
- 0x73, 0x20, 0x74, 0x68, 0x65, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x68,
- 0x65, 0x61, 0x64, 0x65, 0x72, 0x6f, 0x70, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x66, 0x75, 0x6e, 0x64, 0x61, 0x6d, 0x65, 0x6e,
- 0x74, 0x61, 0x6c, 0x6c, 0x79, 0x64, 0x6f, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65,
- 0x64, 0x20, 0x74, 0x68, 0x65, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x6f, 0x74, 0x68, 0x65, 0x72, 0x61, 0x6c, 0x6c, 0x69, 0x61, 0x6e, 0x63, 0x65,
- 0x20, 0x77, 0x69, 0x74, 0x68, 0x77, 0x61, 0x73, 0x20, 0x66, 0x6f, 0x72, 0x63,
- 0x65, 0x64, 0x20, 0x74, 0x6f, 0x72, 0x65, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69,
- 0x76, 0x65, 0x6c, 0x79, 0x2c, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x6f, 0x6c, 0x69,
- 0x74, 0x69, 0x63, 0x61, 0x6c, 0x69, 0x6e, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6f,
- 0x72, 0x74, 0x20, 0x6f, 0x66, 0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x20, 0x69,
- 0x6e, 0x20, 0x74, 0x68, 0x65, 0x32, 0x30, 0x74, 0x68, 0x20, 0x63, 0x65, 0x6e,
- 0x74, 0x75, 0x72, 0x79, 0x2e, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x75, 0x62, 0x6c,
- 0x69, 0x73, 0x68, 0x65, 0x64, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x68, 0x61, 0x72,
- 0x74, 0x62, 0x65, 0x61, 0x74, 0x74, 0x6f, 0x20, 0x75, 0x6e, 0x64, 0x65, 0x72,
- 0x73, 0x74, 0x61, 0x6e, 0x64, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x73,
- 0x74, 0x61, 0x74, 0x65, 0x73, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d,
- 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x66, 0x69, 0x72, 0x73, 0x74, 0x20, 0x68, 0x61,
- 0x6c, 0x66, 0x20, 0x6f, 0x66, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x69, 0x65,
- 0x73, 0x20, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63,
- 0x74, 0x75, 0x72, 0x61, 0x6c, 0x62, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69,
- 0x64, 0x65, 0x72, 0x65, 0x64, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65,
- 0x72, 0x69, 0x7a, 0x65, 0x64, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x49, 0x6e, 0x74,
- 0x65, 0x72, 0x76, 0x61, 0x6c, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74,
- 0x61, 0x74, 0x69, 0x76, 0x65, 0x46, 0x65, 0x64, 0x65, 0x72, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x77, 0x61, 0x73, 0x20, 0x73, 0x75, 0x63, 0x63,
- 0x65, 0x65, 0x64, 0x65, 0x64, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x72,
- 0x65, 0x20, 0x61, 0x72, 0x65, 0x61, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x71,
- 0x75, 0x65, 0x6e, 0x63, 0x65, 0x74, 0x68, 0x65, 0x20, 0x50, 0x72, 0x65, 0x73,
- 0x69, 0x64, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x69, 0x6e, 0x63,
- 0x6c, 0x75, 0x64, 0x65, 0x64, 0x66, 0x72, 0x65, 0x65, 0x20, 0x73, 0x6f, 0x66,
- 0x74, 0x77, 0x61, 0x72, 0x65, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65,
- 0x64, 0x20, 0x74, 0x68, 0x65, 0x77, 0x61, 0x73, 0x20, 0x64, 0x65, 0x73, 0x74,
- 0x72, 0x6f, 0x79, 0x65, 0x64, 0x61, 0x77, 0x61, 0x79, 0x20, 0x66, 0x72, 0x6f,
- 0x6d, 0x20, 0x74, 0x68, 0x65, 0x3b, 0x0a, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x3e, 0x0a, 0x3c, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68,
- 0x20, 0x74, 0x68, 0x65, 0x79, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64,
- 0x20, 0x62, 0x79, 0x20, 0x61, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x70, 0x6f, 0x77,
- 0x65, 0x72, 0x66, 0x75, 0x6c, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x65, 0x64,
- 0x20, 0x69, 0x6e, 0x20, 0x61, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x69,
- 0x74, 0x79, 0x20, 0x6f, 0x66, 0x48, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c,
- 0x20, 0x6d, 0x61, 0x6e, 0x79, 0x74, 0x68, 0x65, 0x20, 0x70, 0x72, 0x65, 0x73,
- 0x69, 0x64, 0x65, 0x6e, 0x74, 0x48, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c,
- 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x69, 0x73, 0x20, 0x74, 0x68, 0x6f, 0x75, 0x67,
- 0x68, 0x74, 0x20, 0x74, 0x6f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x20, 0x74, 0x68,
- 0x65, 0x20, 0x65, 0x6e, 0x64, 0x77, 0x61, 0x73, 0x20, 0x61, 0x6e, 0x6e, 0x6f,
- 0x75, 0x6e, 0x63, 0x65, 0x64, 0x61, 0x72, 0x65, 0x20, 0x69, 0x6d, 0x70, 0x6f,
- 0x72, 0x74, 0x61, 0x6e, 0x74, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x69, 0x6e, 0x63,
- 0x6c, 0x75, 0x64, 0x65, 0x73, 0x3e, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20,
- 0x74, 0x79, 0x70, 0x65, 0x3d, 0x74, 0x68, 0x65, 0x20, 0x63, 0x65, 0x6e, 0x74,
- 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x44, 0x4f, 0x20, 0x4e, 0x4f, 0x54, 0x20,
- 0x41, 0x4c, 0x54, 0x45, 0x52, 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20,
- 0x72, 0x65, 0x66, 0x65, 0x72, 0x74, 0x68, 0x65, 0x6d, 0x65, 0x73, 0x2f, 0x3f,
- 0x73, 0x6f, 0x72, 0x74, 0x3d, 0x74, 0x68, 0x61, 0x74, 0x20, 0x68, 0x61, 0x64,
- 0x20, 0x62, 0x65, 0x65, 0x6e, 0x74, 0x68, 0x65, 0x20, 0x62, 0x61, 0x73, 0x69,
- 0x73, 0x20, 0x66, 0x6f, 0x72, 0x68, 0x61, 0x73, 0x20, 0x64, 0x65, 0x76, 0x65,
- 0x6c, 0x6f, 0x70, 0x65, 0x64, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73,
- 0x75, 0x6d, 0x6d, 0x65, 0x72, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74,
- 0x69, 0x76, 0x65, 0x6c, 0x79, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65,
- 0x64, 0x20, 0x74, 0x68, 0x65, 0x73, 0x75, 0x63, 0x68, 0x20, 0x61, 0x73, 0x20,
- 0x74, 0x68, 0x6f, 0x73, 0x65, 0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x75,
- 0x6c, 0x74, 0x69, 0x6e, 0x67, 0x69, 0x73, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x73,
- 0x73, 0x69, 0x62, 0x6c, 0x65, 0x76, 0x61, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x20,
- 0x6f, 0x74, 0x68, 0x65, 0x72, 0x53, 0x6f, 0x75, 0x74, 0x68, 0x20, 0x41, 0x66,
- 0x72, 0x69, 0x63, 0x61, 0x6e, 0x68, 0x61, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x73, 0x61, 0x6d, 0x65, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76,
- 0x65, 0x6e, 0x65, 0x73, 0x73, 0x69, 0x6e, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68,
- 0x20, 0x63, 0x61, 0x73, 0x65, 0x3b, 0x20, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x61,
- 0x6c, 0x69, 0x67, 0x6e, 0x3a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x75, 0x72,
- 0x65, 0x20, 0x61, 0x6e, 0x64, 0x3b, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72,
- 0x6f, 0x75, 0x6e, 0x64, 0x3a, 0x72, 0x65, 0x67, 0x61, 0x72, 0x64, 0x69, 0x6e,
- 0x67, 0x20, 0x74, 0x68, 0x65, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65,
- 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x73, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x20,
- 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x6d,
- 0x61, 0x72, 0x67, 0x69, 0x6e, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e,
- 0x67, 0x20, 0x74, 0x68, 0x65, 0x62, 0x61, 0x68, 0x61, 0x73, 0x61, 0x20, 0x4d,
- 0x65, 0x6c, 0x61, 0x79, 0x75, 0x6e, 0x6f, 0x72, 0x73, 0x6b, 0x20, 0x62, 0x6f,
- 0x6b, 0x6d, 0xc3, 0xa5, 0x6c, 0x6e, 0x6f, 0x72, 0x73, 0x6b, 0x20, 0x6e, 0x79,
- 0x6e, 0x6f, 0x72, 0x73, 0x6b, 0x73, 0x6c, 0x6f, 0x76, 0x65, 0x6e, 0xc5, 0xa1,
- 0xc4, 0x8d, 0x69, 0x6e, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x63,
- 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x63, 0x61, 0x6c, 0x69, 0x66, 0x69, 0x63, 0x61,
- 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x63, 0x6f, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61,
- 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63,
- 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x22, 0x3e, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63,
- 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x61, 0x6d, 0x62, 0x69,
- 0x67, 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e,
- 0x4e, 0x61, 0x6d, 0x65, 0x27, 0x2c, 0x20, 0x27, 0x61, 0x64, 0x6d, 0x69, 0x6e,
- 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x69, 0x6d, 0x75,
- 0x6c, 0x74, 0x61, 0x6e, 0x65, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x74, 0x72, 0x61,
- 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e,
- 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x6d,
- 0x61, 0x72, 0x67, 0x69, 0x6e, 0x2d, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x3a,
- 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74,
- 0x79, 0x3c, 0x21, 0x5b, 0x65, 0x6e, 0x64, 0x69, 0x66, 0x5d, 0x2d, 0x2d, 0x3e,
- 0x0a, 0x3c, 0x2f, 0x3e, 0x3c, 0x6d, 0x65, 0x74, 0x61, 0x20, 0x6e, 0x61, 0x6d,
- 0x65, 0x3d, 0x22, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x73, 0x74, 0x72, 0x75,
- 0x63, 0x74, 0x75, 0x72, 0x65, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e,
- 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x2d,
- 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x3a, 0x3c, 0x2f, 0x68, 0x65, 0x61, 0x64,
- 0x3e, 0x0a, 0x3c, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x3d, 0x68, 0x74, 0x74, 0x70,
- 0x25, 0x33, 0x41, 0x25, 0x32, 0x46, 0x25, 0x32, 0x46, 0x3c, 0x66, 0x6f, 0x72,
- 0x6d, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3d, 0x22, 0x6d, 0x65, 0x74,
- 0x68, 0x6f, 0x64, 0x3d, 0x22, 0x70, 0x6f, 0x73, 0x74, 0x22, 0x20, 0x2f, 0x66,
- 0x61, 0x76, 0x69, 0x63, 0x6f, 0x6e, 0x2e, 0x69, 0x63, 0x6f, 0x22, 0x20, 0x7d,
- 0x29, 0x3b, 0x0a, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0a,
- 0x2e, 0x73, 0x65, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65,
- 0x28, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x3d, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x41, 0x72, 0x72, 0x61, 0x79,
- 0x28, 0x29, 0x3b, 0x3c, 0x21, 0x5b, 0x65, 0x6e, 0x64, 0x69, 0x66, 0x5d, 0x2d,
- 0x2d, 0x3e, 0x0d, 0x0a, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x62,
- 0x6c, 0x6f, 0x63, 0x6b, 0x3b, 0x55, 0x6e, 0x66, 0x6f, 0x72, 0x74, 0x75, 0x6e,
- 0x61, 0x74, 0x65, 0x6c, 0x79, 0x2c, 0x22, 0x3e, 0x26, 0x6e, 0x62, 0x73, 0x70,
- 0x3b, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x2f, 0x66, 0x61, 0x76, 0x69, 0x63,
- 0x6f, 0x6e, 0x2e, 0x69, 0x63, 0x6f, 0x22, 0x3e, 0x3d, 0x27, 0x73, 0x74, 0x79,
- 0x6c, 0x65, 0x73, 0x68, 0x65, 0x65, 0x74, 0x27, 0x20, 0x69, 0x64, 0x65, 0x6e,
- 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2c, 0x20, 0x66,
- 0x6f, 0x72, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2c, 0x3c, 0x6c,
- 0x69, 0x3e, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x2f, 0x61,
- 0x6e, 0x20, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65,
- 0x61, 0x73, 0x20, 0x61, 0x20, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x20, 0x6f,
- 0x66, 0x70, 0x74, 0x22, 0x3e, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x3e, 0x0a, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x75, 0x62, 0x6d, 0x69,
- 0x74, 0x22, 0x20, 0x0a, 0x28, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x28, 0x29, 0x20, 0x7b, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x61, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x2f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x6f,
- 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x73,
- 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x73, 0x74, 0x79, 0x6c,
- 0x65, 0x2e, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x20, 0x41, 0x63, 0x63,
- 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x20, 0x68, 0x69, 0x64,
- 0x64, 0x65, 0x6e, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x6c,
- 0x6f, 0x6e, 0x67, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x64,
- 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x62, 0x6f, 0x64, 0x79, 0x2e,
- 0x61, 0x70, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x6c, 0x79,
- 0x20, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x73, 0x70, 0x6f, 0x73, 0x74, 0x22, 0x20, 0x61, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x3d, 0x22, 0x6d, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x26, 0x71,
- 0x75, 0x6f, 0x74, 0x3b, 0x2d, 0x2d, 0x3c, 0x21, 0x5b, 0x65, 0x6e, 0x64, 0x69,
- 0x66, 0x5d, 0x2d, 0x2d, 0x3e, 0x50, 0x72, 0x69, 0x6d, 0x65, 0x20, 0x4d, 0x69,
- 0x6e, 0x69, 0x73, 0x74, 0x65, 0x72, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74,
- 0x65, 0x72, 0x69, 0x73, 0x74, 0x69, 0x63, 0x3c, 0x2f, 0x61, 0x3e, 0x20, 0x3c,
- 0x61, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x74, 0x68, 0x65, 0x20, 0x68,
- 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x6e, 0x6d,
- 0x6f, 0x75, 0x73, 0x65, 0x6f, 0x76, 0x65, 0x72, 0x3d, 0x22, 0x74, 0x68, 0x65,
- 0x20, 0x67, 0x6f, 0x76, 0x65, 0x72, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x68, 0x72,
- 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77,
- 0x61, 0x73, 0x20, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x6c, 0x79,
- 0x77, 0x61, 0x73, 0x20, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65,
- 0x64, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74,
- 0x69, 0x76, 0x65, 0x61, 0x72, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64,
- 0x65, 0x72, 0x65, 0x64, 0x3c, 0x21, 0x5b, 0x65, 0x6e, 0x64, 0x69, 0x66, 0x5d,
- 0x2d, 0x2d, 0x3e, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x73, 0x20,
- 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73,
- 0x69, 0x74, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x6e, 0x20, 0x63, 0x6f, 0x6e,
- 0x74, 0x72, 0x61, 0x73, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x6c, 0x61, 0x63,
- 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x3d, 0x22, 0x69, 0x6e, 0x20, 0x74,
- 0x68, 0x65, 0x20, 0x63, 0x61, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x69, 0x6e, 0x74,
- 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x63, 0x6f,
- 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x73,
- 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x2d,
- 0x3a, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x29, 0x20,
- 0x7b, 0x42, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74,
- 0x68, 0x65, 0x2d, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x2e, 0x64, 0x74, 0x64,
- 0x22, 0x3e, 0x0a, 0x3c, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x63, 0x6c, 0x61,
- 0x73, 0x73, 0x3d, 0x22, 0x61, 0x63, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x69,
- 0x65, 0x64, 0x20, 0x62, 0x79, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x20,
- 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x3c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x20, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x2f, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70,
- 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x61,
- 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x73, 0x29, 0x3b,
- 0x20, 0x6a, 0x73, 0x2e, 0x69, 0x64, 0x20, 0x3d, 0x20, 0x69, 0x64, 0x22, 0x20,
- 0x77, 0x69, 0x64, 0x74, 0x68, 0x3d, 0x22, 0x31, 0x30, 0x30, 0x25, 0x22, 0x72,
- 0x65, 0x67, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x52, 0x6f, 0x6d, 0x61, 0x6e, 0x20, 0x43, 0x61, 0x74, 0x68, 0x6f, 0x6c, 0x69,
- 0x63, 0x61, 0x6e, 0x20, 0x69, 0x6e, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65,
- 0x6e, 0x74, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x20, 0x74,
- 0x68, 0x65, 0x20, 0x2e, 0x67, 0x69, 0x66, 0x22, 0x20, 0x77, 0x69, 0x64, 0x74,
- 0x68, 0x3d, 0x22, 0x31, 0x74, 0x68, 0x65, 0x20, 0x66, 0x6f, 0x6c, 0x6c, 0x6f,
- 0x77, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x69, 0x73, 0x63, 0x72, 0x69, 0x6d, 0x69,
- 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x63, 0x68, 0x61, 0x65, 0x6f,
- 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x70, 0x72, 0x69, 0x6d, 0x65, 0x20,
- 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x6a, 0x73, 0x22, 0x3e,
- 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x63, 0x6f, 0x6d, 0x62,
- 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x61,
- 0x72, 0x67, 0x69, 0x6e, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3d, 0x22, 0x63, 0x72,
- 0x65, 0x61, 0x74, 0x65, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x28, 0x77,
- 0x2e, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x28,
- 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x74, 0x64, 0x3e, 0x3c, 0x2f, 0x74, 0x72,
- 0x3e, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f,
- 0x2f, 0x61, 0x49, 0x6e, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c,
- 0x61, 0x72, 0x2c, 0x20, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3d, 0x22, 0x6c, 0x65,
- 0x66, 0x74, 0x22, 0x20, 0x43, 0x7a, 0x65, 0x63, 0x68, 0x20, 0x52, 0x65, 0x70,
- 0x75, 0x62, 0x6c, 0x69, 0x63, 0x55, 0x6e, 0x69, 0x74, 0x65, 0x64, 0x20, 0x4b,
- 0x69, 0x6e, 0x67, 0x64, 0x6f, 0x6d, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x63, 0x6f, 0x6e, 0x63, 0x6c, 0x75,
- 0x64, 0x65, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x2e, 0x68, 0x74, 0x6d, 0x6c,
- 0x22, 0x20, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3d, 0x22, 0x28, 0x66, 0x75, 0x6e,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x29, 0x20, 0x7b, 0x63, 0x6f, 0x6d,
- 0x65, 0x73, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x3c,
- 0x73, 0x70, 0x61, 0x6e, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x73,
- 0x62, 0x65, 0x6c, 0x69, 0x65, 0x76, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x62,
- 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x28, 0x27, 0x73, 0x63, 0x72, 0x69, 0x70,
- 0x74, 0x27, 0x3c, 0x2f, 0x61, 0x3e, 0x0a, 0x3c, 0x2f, 0x6c, 0x69, 0x3e, 0x0a,
- 0x3c, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x79, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65,
- 0x72, 0x65, 0x6e, 0x74, 0x3e, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x63, 0x6c,
- 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76,
- 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x28, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x6b,
- 0x6e, 0x6f, 0x77, 0x6e, 0x20, 0x61, 0x73, 0x09, 0x3c, 0x6c, 0x69, 0x3e, 0x3c,
- 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x3e, 0x3c, 0x69, 0x6e, 0x70,
- 0x75, 0x74, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x65, 0x70, 0x61,
- 0x72, 0x61, 0x74, 0x65, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x72, 0x65, 0x66,
- 0x65, 0x72, 0x72, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x73, 0x20, 0x76,
- 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3d, 0x22, 0x74, 0x6f, 0x70, 0x22, 0x3e, 0x66,
- 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65,
- 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f,
- 0x20, 0x63, 0x61, 0x72, 0x62, 0x6f, 0x6e, 0x20, 0x64, 0x69, 0x6f, 0x78, 0x69,
- 0x64, 0x65, 0x0a, 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73,
- 0x73, 0x3d, 0x22, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x73, 0x65, 0x61,
- 0x72, 0x63, 0x68, 0x2d, 0x2f, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x0a, 0x3c, 0x2f,
- 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x6f, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x75, 0x6e,
- 0x69, 0x74, 0x79, 0x20, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3c, 0x2f, 0x68, 0x65, 0x61, 0x64,
- 0x3e, 0x0d, 0x0a, 0x3c, 0x62, 0x6f, 0x64, 0x79, 0x20, 0x73, 0x74, 0x79, 0x6c,
- 0x65, 0x3d, 0x22, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x54, 0x69, 0xe1, 0xba,
- 0xbf, 0x6e, 0x67, 0x20, 0x56, 0x69, 0xe1, 0xbb, 0x87, 0x74, 0x63, 0x68, 0x61,
- 0x6e, 0x67, 0x65, 0x73, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x62, 0x6f,
- 0x72, 0x64, 0x65, 0x72, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x23, 0x30,
- 0x22, 0x20, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x3d, 0x22, 0x30, 0x22, 0x20,
- 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e,
- 0x3c, 0x77, 0x61, 0x73, 0x20, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72,
- 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78,
- 0x74, 0x22, 0x20, 0x29, 0x3b, 0x0a, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70,
- 0x74, 0x3e, 0x0a, 0x0a, 0x44, 0x65, 0x70, 0x61, 0x72, 0x74, 0x6d, 0x65, 0x6e,
- 0x74, 0x20, 0x6f, 0x66, 0x20, 0x65, 0x63, 0x63, 0x6c, 0x65, 0x73, 0x69, 0x61,
- 0x73, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x68,
- 0x61, 0x73, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
- 0x69, 0x6e, 0x67, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x3c, 0x2f, 0x62, 0x6f, 0x64,
- 0x79, 0x3e, 0x3c, 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x68, 0x61, 0x73, 0x20,
- 0x6e, 0x65, 0x76, 0x65, 0x72, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x74, 0x68, 0x65,
- 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x69, 0x6e,
- 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x20, 0x74, 0x6f, 0x61,
- 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x20,
- 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20,
- 0x69, 0x77, 0x61, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72,
- 0x65, 0x64, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20,
- 0x74, 0x68, 0x65, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f,
- 0x64, 0x69, 0x76, 0x3e, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x65, 0x73, 0x63, 0x65, 0x6e, 0x64, 0x65,
- 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74,
- 0x2d, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x74, 0x6f, 0x20, 0x62, 0x65,
- 0x20, 0x63, 0x6f, 0x6e, 0x66, 0x75, 0x73, 0x65, 0x64, 0x6d, 0x65, 0x6d, 0x62,
- 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x61, 0x64,
- 0x64, 0x69, 0x6e, 0x67, 0x2d, 0x72, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x74, 0x72,
- 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x69,
- 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x27, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f,
- 0x2f, 0x77, 0x68, 0x65, 0x74, 0x68, 0x65, 0x72, 0x20, 0x6f, 0x72, 0x20, 0x6e,
- 0x6f, 0x74, 0x54, 0x68, 0x65, 0x72, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x61,
- 0x6c, 0x73, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20,
- 0x6d, 0x61, 0x6e, 0x79, 0x61, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6e,
- 0x75, 0x6d, 0x62, 0x65, 0x72, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x70, 0x61,
- 0x72, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x69, 0x6d, 0x70, 0x6f, 0x73, 0x73, 0x69,
- 0x62, 0x6c, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73,
- 0x3d, 0x22, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x6c, 0x6f, 0x63, 0x61, 0x74,
- 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x2e, 0x20, 0x48, 0x6f,
- 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x61, 0x6e, 0x64,
- 0x20, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x41, 0x74,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x62,
- 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x74, 0x73,
- 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x74, 0x68,
- 0x65, 0x3c, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x3d, 0x22, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3d, 0x22, 0x70, 0x6f,
- 0x73, 0x74, 0x22, 0x69, 0x74, 0x20, 0x69, 0x73, 0x20, 0x70, 0x6f, 0x73, 0x73,
- 0x69, 0x62, 0x6c, 0x65, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x6c, 0x69, 0x6b, 0x65,
- 0x6c, 0x79, 0x20, 0x74, 0x6f, 0x61, 0x6e, 0x20, 0x69, 0x6e, 0x63, 0x72, 0x65,
- 0x61, 0x73, 0x65, 0x20, 0x69, 0x6e, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x6c,
- 0x73, 0x6f, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x64, 0x73, 0x20, 0x74, 0x6f, 0x61, 0x6e, 0x6e, 0x6f, 0x75,
- 0x6e, 0x63, 0x65, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x61, 0x6c, 0x69, 0x67,
- 0x6e, 0x3d, 0x22, 0x72, 0x69, 0x67, 0x68, 0x74, 0x22, 0x3e, 0x6d, 0x61, 0x6e,
- 0x79, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x66, 0x6f,
- 0x72, 0x20, 0x6d, 0x61, 0x6e, 0x79, 0x20, 0x79, 0x65, 0x61, 0x72, 0x73, 0x65,
- 0x61, 0x72, 0x6c, 0x69, 0x65, 0x73, 0x74, 0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x6e,
- 0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x20, 0x69, 0x74, 0x20, 0x77, 0x61,
- 0x73, 0x70, 0x74, 0x22, 0x3e, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x3e, 0x0d, 0x20, 0x76, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3d, 0x22, 0x74, 0x6f,
- 0x70, 0x22, 0x20, 0x69, 0x6e, 0x68, 0x61, 0x62, 0x69, 0x74, 0x61, 0x6e, 0x74,
- 0x73, 0x20, 0x6f, 0x66, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67,
- 0x20, 0x79, 0x65, 0x61, 0x72, 0x0d, 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63,
- 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x6f, 0x6e,
- 0x20, 0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
- 0x76, 0x65, 0x72, 0x73, 0x69, 0x61, 0x6c, 0x20, 0x63, 0x6f, 0x6e, 0x63, 0x65,
- 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x61, 0x72, 0x67, 0x75,
- 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x67, 0x6f, 0x76,
- 0x65, 0x72, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x61, 0x6e, 0x64, 0x61, 0x20,
- 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x74, 0x6f, 0x74,
- 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x20, 0x74, 0x6f,
- 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68,
- 0x65, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6c, 0x6f,
- 0x72, 0x3a, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x74, 0x68,
- 0x65, 0x72, 0x65, 0x62, 0x65, 0x73, 0x74, 0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x6e,
- 0x20, 0x66, 0x6f, 0x72, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x22, 0x20, 0x6e,
- 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x74, 0x68,
- 0x61, 0x6e, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e,
- 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x43, 0x6f, 0x75, 0x6e, 0x63,
- 0x69, 0x6c, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x65, 0x64, 0x69, 0x74,
- 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x20, 0x3c,
- 0x6d, 0x65, 0x74, 0x61, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x45, 0x6e,
- 0x74, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x61,
- 0x77, 0x61, 0x79, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x3b, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x2d, 0x72, 0x69, 0x67, 0x68, 0x74,
- 0x3a, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x20,
- 0x6f, 0x66, 0x69, 0x6e, 0x76, 0x65, 0x73, 0x74, 0x69, 0x67, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x20,
- 0x77, 0x69, 0x74, 0x68, 0x61, 0x6e, 0x64, 0x20, 0x6d, 0x61, 0x6e, 0x79, 0x20,
- 0x6f, 0x74, 0x68, 0x65, 0x72, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, 0x67, 0x68,
- 0x20, 0x69, 0x74, 0x20, 0x69, 0x73, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x6e, 0x69,
- 0x6e, 0x67, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x3c, 0x73, 0x70, 0x61, 0x6e,
- 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x64, 0x65, 0x73, 0x63, 0x65,
- 0x6e, 0x64, 0x61, 0x6e, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x3c, 0x73, 0x70, 0x61,
- 0x6e, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x69, 0x20, 0x61, 0x6c,
- 0x69, 0x67, 0x6e, 0x3d, 0x22, 0x72, 0x69, 0x67, 0x68, 0x74, 0x22, 0x3c, 0x2f,
- 0x68, 0x65, 0x61, 0x64, 0x3e, 0x0a, 0x3c, 0x62, 0x6f, 0x64, 0x79, 0x20, 0x61,
- 0x73, 0x70, 0x65, 0x63, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65,
- 0x68, 0x61, 0x73, 0x20, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x20, 0x62, 0x65, 0x65,
- 0x6e, 0x45, 0x75, 0x72, 0x6f, 0x70, 0x65, 0x61, 0x6e, 0x20, 0x55, 0x6e, 0x69,
- 0x6f, 0x6e, 0x72, 0x65, 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x63, 0x65, 0x6e, 0x74,
- 0x20, 0x6f, 0x66, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x64, 0x69, 0x66, 0x66, 0x69,
- 0x63, 0x75, 0x6c, 0x74, 0x56, 0x69, 0x63, 0x65, 0x20, 0x50, 0x72, 0x65, 0x73,
- 0x69, 0x64, 0x65, 0x6e, 0x74, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74,
- 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x70, 0x61, 0x73, 0x73, 0x65, 0x64, 0x20,
- 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x69,
- 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x66, 0x6f, 0x6e, 0x74, 0x2d,
- 0x73, 0x69, 0x7a, 0x65, 0x3a, 0x31, 0x31, 0x70, 0x78, 0x65, 0x78, 0x70, 0x6c,
- 0x61, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x74, 0x68, 0x65,
- 0x20, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x70, 0x74, 0x20, 0x6f, 0x66, 0x77, 0x72,
- 0x69, 0x74, 0x74, 0x65, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x09,
- 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22,
- 0x69, 0x73, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x72, 0x65, 0x73, 0x65, 0x6d, 0x62, 0x6c, 0x61, 0x6e, 0x63, 0x65, 0x20,
- 0x74, 0x6f, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x67, 0x72, 0x6f, 0x75,
- 0x6e, 0x64, 0x73, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x63, 0x6f, 0x6e, 0x74,
- 0x61, 0x69, 0x6e, 0x73, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20,
- 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x20,
- 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x6f, 0x75, 0x74, 0x73, 0x69,
- 0x64, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x73, 0x75, 0x70, 0x70,
- 0x6f, 0x72, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x3c, 0x69, 0x6e,
- 0x70, 0x75, 0x74, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x3c, 0x73,
- 0x70, 0x61, 0x6e, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x74, 0x28,
- 0x4d, 0x61, 0x74, 0x68, 0x2e, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x28, 0x29,
- 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x70, 0x72, 0x6f, 0x6d, 0x69, 0x6e, 0x65, 0x6e,
- 0x74, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20,
- 0x6f, 0x66, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x69, 0x6e, 0x6f,
- 0x70, 0x6c, 0x65, 0x77, 0x65, 0x72, 0x65, 0x20, 0x70, 0x75, 0x62, 0x6c, 0x69,
- 0x73, 0x68, 0x65, 0x64, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73,
- 0x73, 0x3d, 0x22, 0x73, 0x65, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x73, 0x20,
- 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x31, 0x22, 0x20, 0x68, 0x65, 0x69, 0x67,
- 0x68, 0x74, 0x3d, 0x22, 0x31, 0x22, 0x20, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x69,
- 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x77, 0x68, 0x69, 0x63, 0x68,
- 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x77, 0x68, 0x69, 0x63,
- 0x68, 0x20, 0x68, 0x61, 0x64, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x64, 0x65, 0x73,
- 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x74, 0x68,
- 0x65, 0x20, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0a,
- 0x09, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22,
- 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x6f,
- 0x66, 0x73, 0x6f, 0x6d, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x20, 0x75, 0x73,
- 0x65, 0x64, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x68,
- 0x61, 0x76, 0x65, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x20, 0x6f, 0x66,
- 0x20, 0x74, 0x68, 0x65, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x20,
- 0x74, 0x6f, 0x20, 0x62, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x20,
- 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22,
- 0x63, 0x6c, 0x65, 0x61, 0x72, 0x3a, 0x62, 0x0d, 0x0a, 0x3c, 0x2f, 0x73, 0x63,
- 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0d, 0x0a, 0x3c, 0x77, 0x61, 0x73, 0x20, 0x66,
- 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x69, 0x6e, 0x74, 0x65,
- 0x72, 0x76, 0x69, 0x65, 0x77, 0x20, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x69, 0x64,
- 0x22, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3d, 0x22, 0x63, 0x61,
- 0x70, 0x69, 0x74, 0x61, 0x6c, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x0d,
- 0x0a, 0x3c, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x73,
- 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68,
- 0x65, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x20, 0x6f, 0x75, 0x74, 0x20, 0x74, 0x68,
- 0x61, 0x74, 0x78, 0x4d, 0x4c, 0x48, 0x74, 0x74, 0x70, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x20, 0x73, 0x75, 0x62, 0x73, 0x65, 0x71,
- 0x75, 0x65, 0x6e, 0x74, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x20, 0x6c, 0x61,
- 0x72, 0x67, 0x65, 0x73, 0x74, 0x76, 0x65, 0x72, 0x79, 0x20, 0x69, 0x6d, 0x70,
- 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x73, 0x75, 0x72, 0x66, 0x61, 0x63,
- 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x61, 0x70, 0x70, 0x6c, 0x69,
- 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x66, 0x6f, 0x72, 0x65,
- 0x69, 0x67, 0x6e, 0x20, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x73, 0x65,
- 0x74, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x65, 0x73,
- 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x69,
- 0x73, 0x20, 0x62, 0x65, 0x6c, 0x69, 0x65, 0x76, 0x65, 0x64, 0x20, 0x74, 0x6f,
- 0x49, 0x6e, 0x20, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74,
- 0x6f, 0x6d, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x66, 0x20, 0x74,
- 0x68, 0x65, 0x69, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x20, 0x61, 0x66,
- 0x74, 0x65, 0x72, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74,
- 0x20, 0x74, 0x68, 0x65, 0x69, 0x73, 0x20, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73,
- 0x65, 0x6e, 0x74, 0x65, 0x64, 0x44, 0x65, 0x63, 0x6c, 0x61, 0x72, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x65, 0x66,
- 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69,
- 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72,
- 0x20, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x20, 0x6f, 0x66, 0x68, 0x65, 0x20, 0x72,
- 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x3c, 0x73, 0x70,
- 0x61, 0x6e, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x63, 0x70, 0x65,
- 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x6e, 0x63, 0x65, 0x20, 0x6f, 0x66, 0x28,
- 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x29, 0x20, 0x7b, 0x0d,
- 0x69, 0x66, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x69,
- 0x66, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74,
- 0x68, 0x65, 0x6c, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x20,
- 0x74, 0x68, 0x65, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20,
- 0x77, 0x69, 0x74, 0x68, 0x55, 0x6e, 0x69, 0x74, 0x65, 0x64, 0x20, 0x4e, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x68,
- 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x74,
- 0x68, 0x61, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x79, 0x70, 0x65, 0x22, 0x20, 0x63,
- 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3d, 0x22, 0x41, 0x73, 0x73, 0x6f, 0x63,
- 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x0a, 0x3c, 0x2f, 0x68,
- 0x65, 0x61, 0x64, 0x3e, 0x0a, 0x3c, 0x62, 0x6f, 0x64, 0x79, 0x6c, 0x6f, 0x63,
- 0x61, 0x74, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x69, 0x73,
- 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x28,
- 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65,
- 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x74, 0x68, 0x65, 0x20, 0x69, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75,
- 0x61, 0x6c, 0x61, 0x6d, 0x6f, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d,
- 0x6f, 0x73, 0x74, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x6f,
- 0x74, 0x68, 0x65, 0x72, 0x2f, 0x3e, 0x0a, 0x3c, 0x6c, 0x69, 0x6e, 0x6b, 0x20,
- 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20,
- 0x66, 0x61, 0x6c, 0x73, 0x65, 0x3b, 0x74, 0x68, 0x65, 0x20, 0x70, 0x75, 0x72,
- 0x70, 0x6f, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x74, 0x68, 0x65, 0x20, 0x61, 0x62,
- 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20, 0x74, 0x6f, 0x3b, 0x63, 0x6f, 0x6c, 0x6f,
- 0x72, 0x3a, 0x23, 0x66, 0x66, 0x66, 0x7d, 0x0a, 0x2e, 0x0a, 0x3c, 0x73, 0x70,
- 0x61, 0x6e, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x74, 0x68, 0x65,
- 0x20, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x6f, 0x66, 0x64, 0x65,
- 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x3e,
- 0x0d, 0x0a, 0x3c, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22,
- 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68,
- 0x65, 0x68, 0x61, 0x76, 0x65, 0x20, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70,
- 0x65, 0x64, 0x3c, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x77, 0x69, 0x64, 0x74,
- 0x68, 0x3d, 0x22, 0x63, 0x65, 0x6c, 0x65, 0x62, 0x72, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x20, 0x6f, 0x66, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x69, 0x73, 0x74, 0x69,
- 0x6e, 0x67, 0x75, 0x69, 0x73, 0x68, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x63,
- 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x62, 0x74, 0x61, 0x6b, 0x65, 0x73, 0x20,
- 0x70, 0x6c, 0x61, 0x63, 0x65, 0x20, 0x69, 0x6e, 0x75, 0x6e, 0x64, 0x65, 0x72,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x6e, 0x6f, 0x74, 0x65,
- 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x3e, 0x3c, 0x21,
- 0x5b, 0x65, 0x6e, 0x64, 0x69, 0x66, 0x5d, 0x2d, 0x2d, 0x3e, 0x0a, 0x73, 0x74,
- 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x2d, 0x69,
- 0x6e, 0x73, 0x74, 0x65, 0x61, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65,
- 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x64, 0x20, 0x74, 0x68,
- 0x65, 0x74, 0x68, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x20,
- 0x6f, 0x66, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, 0x69, 0x6e, 0x67, 0x20,
- 0x74, 0x68, 0x65, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65,
- 0x73, 0x20, 0x69, 0x6e, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x61, 0x74, 0x65, 0x64,
- 0x20, 0x74, 0x68, 0x61, 0x74, 0x65, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c,
- 0x6c, 0x79, 0x20, 0x74, 0x68, 0x65, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x64,
- 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x77, 0x61, 0x73, 0x20, 0x65, 0x76,
- 0x65, 0x6e, 0x74, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x74, 0x68, 0x72, 0x6f, 0x75,
- 0x67, 0x68, 0x6f, 0x75, 0x74, 0x20, 0x68, 0x69, 0x73, 0x74, 0x68, 0x65, 0x20,
- 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x6f, 0x6d,
- 0x65, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x61, 0x74, 0x73, 0x70,
- 0x61, 0x6e, 0x3e, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x3c, 0x2f, 0x73,
- 0x69, 0x67, 0x6e, 0x69, 0x66, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x6c, 0x79, 0x20,
- 0x3e, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0d, 0x0a, 0x0d,
- 0x0a, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x61,
- 0x6c, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x20,
- 0x74, 0x68, 0x65, 0x68, 0x61, 0x76, 0x65, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x20,
- 0x75, 0x73, 0x65, 0x64, 0x65, 0x73, 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x6c,
- 0x79, 0x20, 0x66, 0x6f, 0x72, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x74, 0x61,
- 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x73, 0x20, 0x65, 0x73, 0x73, 0x65,
- 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x77, 0x65, 0x72, 0x65, 0x20, 0x74,
- 0x68, 0x65, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x69, 0x73, 0x20, 0x74, 0x68,
- 0x65, 0x20, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x73, 0x74, 0x68, 0x61, 0x76, 0x65,
- 0x20, 0x62, 0x65, 0x65, 0x6e, 0x20, 0x6d, 0x61, 0x64, 0x65, 0x22, 0x20, 0x73,
- 0x72, 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x69, 0x6e,
- 0x74, 0x65, 0x72, 0x70, 0x72, 0x65, 0x74, 0x65, 0x64, 0x20, 0x61, 0x73, 0x73,
- 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x20, 0x68, 0x61, 0x6c, 0x66, 0x20, 0x6f, 0x66,
- 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x6e, 0x6f, 0x22,
- 0x20, 0x69, 0x73, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x20,
- 0x6f, 0x66, 0x49, 0x49, 0x2c, 0x20, 0x48, 0x6f, 0x6c, 0x79, 0x20, 0x52, 0x6f,
- 0x6d, 0x61, 0x6e, 0x69, 0x73, 0x20, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x65,
- 0x64, 0x20, 0x74, 0x6f, 0x68, 0x61, 0x76, 0x65, 0x20, 0x74, 0x68, 0x65, 0x69,
- 0x72, 0x20, 0x6f, 0x77, 0x6e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x20,
- 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x74, 0x72, 0x61, 0x64, 0x69, 0x74, 0x69,
- 0x6f, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x64,
- 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x61, 0x72, 0x65, 0x20, 0x6f,
- 0x66, 0x74, 0x65, 0x6e, 0x20, 0x75, 0x73, 0x65, 0x64, 0x74, 0x6f, 0x20, 0x65,
- 0x6e, 0x73, 0x75, 0x72, 0x65, 0x20, 0x74, 0x68, 0x61, 0x74, 0x61, 0x67, 0x72,
- 0x65, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x77, 0x69, 0x74, 0x68, 0x63, 0x6f,
- 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x61,
- 0x72, 0x65, 0x20, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x74, 0x6c, 0x79,
- 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f,
- 0x6e, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x20, 0x69, 0x73, 0x20, 0x74,
- 0x68, 0x65, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x69,
- 0x6e, 0x20, 0x61, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x6c, 0x69, 0x3e, 0x3c,
- 0x2f, 0x75, 0x6c, 0x3e, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x66,
- 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x20, 0x65, 0x73, 0x70, 0x65,
- 0x63, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x62,
- 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x22, 0x20, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e,
- 0x3e, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x77, 0x68, 0x69, 0x63, 0x68,
- 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x3e, 0x0a, 0x3c, 0x6d,
- 0x65, 0x74, 0x61, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6e,
- 0x73, 0x69, 0x64, 0x65, 0x72, 0x65, 0x64, 0x20, 0x74, 0x68, 0x65, 0x63, 0x61,
- 0x72, 0x72, 0x69, 0x65, 0x64, 0x20, 0x6f, 0x75, 0x74, 0x20, 0x62, 0x79, 0x48,
- 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x69, 0x74, 0x20, 0x69, 0x73,
- 0x62, 0x65, 0x63, 0x61, 0x6d, 0x65, 0x20, 0x70, 0x61, 0x72, 0x74, 0x20, 0x6f,
- 0x66, 0x69, 0x6e, 0x20, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20,
- 0x74, 0x6f, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x69, 0x6e, 0x20,
- 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x63, 0x61, 0x70, 0x69, 0x74, 0x61,
- 0x6c, 0x20, 0x6f, 0x66, 0x77, 0x61, 0x73, 0x20, 0x6f, 0x66, 0x66, 0x69, 0x63,
- 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x68, 0x61,
- 0x73, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x74, 0x68, 0x65, 0x20, 0x48, 0x69, 0x73,
- 0x74, 0x6f, 0x72, 0x79, 0x20, 0x6f, 0x66, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e,
- 0x61, 0x74, 0x69, 0x76, 0x65, 0x20, 0x74, 0x6f, 0x64, 0x69, 0x66, 0x66, 0x65,
- 0x72, 0x65, 0x6e, 0x74, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x74, 0x6f, 0x20, 0x73,
- 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x74, 0x68, 0x65, 0x73, 0x75, 0x67,
- 0x67, 0x65, 0x73, 0x74, 0x65, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x69, 0x6e,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x20,
- 0x20, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22,
- 0x74, 0x68, 0x65, 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x68,
- 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x63, 0x65, 0x72, 0x6e, 0x65, 0x64, 0x20, 0x77,
- 0x69, 0x74, 0x68, 0x74, 0x68, 0x65, 0x20, 0x75, 0x6e, 0x69, 0x76, 0x65, 0x72,
- 0x73, 0x69, 0x74, 0x79, 0x6f, 0x70, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x20, 0x74,
- 0x6f, 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x74,
- 0x65, 0x78, 0x74, 0x20, 0x6f, 0x66, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x63,
- 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x70, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20,
- 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x71, 0x22, 0x09, 0x09, 0x3c, 0x64, 0x69,
- 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x74, 0x68, 0x65, 0x20,
- 0x73, 0x63, 0x69, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x63, 0x72, 0x65, 0x70,
- 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x6d, 0x61,
- 0x74, 0x68, 0x65, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x69, 0x61, 0x6e, 0x73, 0x65,
- 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65,
- 0x74, 0x68, 0x61, 0x74, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x62, 0x65, 0x65,
- 0x6e, 0x3e, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d,
- 0x22, 0x63, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x68, 0x65, 0x61,
- 0x64, 0x65, 0x72, 0x69, 0x6e, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75,
- 0x6c, 0x61, 0x72, 0x2c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74, 0x65, 0x64,
- 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x29, 0x3b, 0x0a, 0x3c, 0x2f, 0x73, 0x63, 0x72,
- 0x69, 0x70, 0x74, 0x3e, 0x0a, 0x3c, 0x70, 0x68, 0x69, 0x6c, 0x6f, 0x73, 0x6f,
- 0x70, 0x68, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x73, 0x72, 0x70, 0x73, 0x6b, 0x6f,
- 0x68, 0x72, 0x76, 0x61, 0x74, 0x73, 0x6b, 0x69, 0x74, 0x69, 0xe1, 0xba, 0xbf,
- 0x6e, 0x67, 0x20, 0x56, 0x69, 0xe1, 0xbb, 0x87, 0x74, 0xd0, 0xa0, 0xd1, 0x83,
- 0xd1, 0x81, 0xd1, 0x81, 0xd0, 0xba, 0xd0, 0xb8, 0xd0, 0xb9, 0xd1, 0x80, 0xd1,
- 0x83, 0xd1, 0x81, 0xd1, 0x81, 0xd0, 0xba, 0xd0, 0xb8, 0xd0, 0xb9, 0x69, 0x6e,
- 0x76, 0x65, 0x73, 0x74, 0x69, 0x67, 0x61, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x70,
- 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x63, 0x69, 0xc3, 0xb3, 0x6e,
- 0xd0, 0xba, 0xd0, 0xbe, 0xd1, 0x82, 0xd0, 0xbe, 0xd1, 0x80, 0xd1, 0x8b, 0xd0,
- 0xb5, 0xd0, 0xbe, 0xd0, 0xb1, 0xd0, 0xbb, 0xd0, 0xb0, 0xd1, 0x81, 0xd1, 0x82,
- 0xd0, 0xb8, 0xd0, 0xba, 0xd0, 0xbe, 0xd1, 0x82, 0xd0, 0xbe, 0xd1, 0x80, 0xd1,
- 0x8b, 0xd0, 0xb9, 0xd1, 0x87, 0xd0, 0xb5, 0xd0, 0xbb, 0xd0, 0xbe, 0xd0, 0xb2,
- 0xd0, 0xb5, 0xd0, 0xba, 0xd1, 0x81, 0xd0, 0xb8, 0xd1, 0x81, 0xd1, 0x82, 0xd0,
- 0xb5, 0xd0, 0xbc, 0xd1, 0x8b, 0xd0, 0x9d, 0xd0, 0xbe, 0xd0, 0xb2, 0xd0, 0xbe,
- 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb8, 0xd0, 0xba, 0xd0, 0xbe, 0xd1, 0x82, 0xd0,
- 0xbe, 0xd1, 0x80, 0xd1, 0x8b, 0xd1, 0x85, 0xd0, 0xbe, 0xd0, 0xb1, 0xd0, 0xbb,
- 0xd0, 0xb0, 0xd1, 0x81, 0xd1, 0x82, 0xd1, 0x8c, 0xd0, 0xb2, 0xd1, 0x80, 0xd0,
- 0xb5, 0xd0, 0xbc, 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xb8, 0xd0, 0xba, 0xd0, 0xbe,
- 0xd1, 0x82, 0xd0, 0xbe, 0xd1, 0x80, 0xd0, 0xb0, 0xd1, 0x8f, 0xd1, 0x81, 0xd0,
- 0xb5, 0xd0, 0xb3, 0xd0, 0xbe, 0xd0, 0xb4, 0xd0, 0xbd, 0xd1, 0x8f, 0xd1, 0x81,
- 0xd0, 0xba, 0xd0, 0xb0, 0xd1, 0x87, 0xd0, 0xb0, 0xd1, 0x82, 0xd1, 0x8c, 0xd0,
- 0xbd, 0xd0, 0xbe, 0xd0, 0xb2, 0xd0, 0xbe, 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb8,
- 0xd0, 0xa3, 0xd0, 0xba, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xb8, 0xd0, 0xbd, 0xd1,
- 0x8b, 0xd0, 0xb2, 0xd0, 0xbe, 0xd0, 0xbf, 0xd1, 0x80, 0xd0, 0xbe, 0xd1, 0x81,
- 0xd1, 0x8b, 0xd0, 0xba, 0xd0, 0xbe, 0xd1, 0x82, 0xd0, 0xbe, 0xd1, 0x80, 0xd0,
- 0xbe, 0xd0, 0xb9, 0xd1, 0x81, 0xd0, 0xb4, 0xd0, 0xb5, 0xd0, 0xbb, 0xd0, 0xb0,
- 0xd1, 0x82, 0xd1, 0x8c, 0xd0, 0xbf, 0xd0, 0xbe, 0xd0, 0xbc, 0xd0, 0xbe, 0xd1,
- 0x89, 0xd1, 0x8c, 0xd1, 0x8e, 0xd1, 0x81, 0xd1, 0x80, 0xd0, 0xb5, 0xd0, 0xb4,
- 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb2, 0xd0, 0xbe, 0xd0, 0xb1, 0xd1, 0x80, 0xd0,
- 0xb0, 0xd0, 0xb7, 0xd0, 0xbe, 0xd0, 0xbc, 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xbe,
- 0xd1, 0x80, 0xd0, 0xbe, 0xd0, 0xbd, 0xd1, 0x8b, 0xd1, 0x83, 0xd1, 0x87, 0xd0,
- 0xb0, 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb8, 0xd0, 0xb5, 0xd1, 0x82, 0xd0, 0xb5,
- 0xd1, 0x87, 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xb8, 0xd0, 0xb5, 0xd0, 0x93, 0xd0,
- 0xbb, 0xd0, 0xb0, 0xd0, 0xb2, 0xd0, 0xbd, 0xd0, 0xb0, 0xd1, 0x8f, 0xd0, 0xb8,
- 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xbe, 0xd1, 0x80, 0xd0, 0xb8, 0xd0, 0xb8, 0xd1,
- 0x81, 0xd0, 0xb8, 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb5, 0xd0, 0xbc, 0xd0, 0xb0,
- 0xd1, 0x80, 0xd0, 0xb5, 0xd1, 0x88, 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xb8, 0xd1,
- 0x8f, 0xd0, 0xa1, 0xd0, 0xba, 0xd0, 0xb0, 0xd1, 0x87, 0xd0, 0xb0, 0xd1, 0x82,
- 0xd1, 0x8c, 0xd0, 0xbf, 0xd0, 0xbe, 0xd1, 0x8d, 0xd1, 0x82, 0xd0, 0xbe, 0xd0,
- 0xbc, 0xd1, 0x83, 0xd1, 0x81, 0xd0, 0xbb, 0xd0, 0xb5, 0xd0, 0xb4, 0xd1, 0x83,
- 0xd0, 0xb5, 0xd1, 0x82, 0xd1, 0x81, 0xd0, 0xba, 0xd0, 0xb0, 0xd0, 0xb7, 0xd0,
- 0xb0, 0xd1, 0x82, 0xd1, 0x8c, 0xd1, 0x82, 0xd0, 0xbe, 0xd0, 0xb2, 0xd0, 0xb0,
- 0xd1, 0x80, 0xd0, 0xbe, 0xd0, 0xb2, 0xd0, 0xba, 0xd0, 0xbe, 0xd0, 0xbd, 0xd0,
- 0xb5, 0xd1, 0x87, 0xd0, 0xbd, 0xd0, 0xbe, 0xd1, 0x80, 0xd0, 0xb5, 0xd1, 0x88,
- 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xb8, 0xd0, 0xb5, 0xd0, 0xba, 0xd0, 0xbe, 0xd1,
- 0x82, 0xd0, 0xbe, 0xd1, 0x80, 0xd0, 0xbe, 0xd0, 0xb5, 0xd0, 0xbe, 0xd1, 0x80,
- 0xd0, 0xb3, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xbe, 0xd0, 0xb2, 0xd0, 0xba, 0xd0,
- 0xbe, 0xd1, 0x82, 0xd0, 0xbe, 0xd1, 0x80, 0xd0, 0xbe, 0xd0, 0xbc, 0xd0, 0xa0,
- 0xd0, 0xb5, 0xd0, 0xba, 0xd0, 0xbb, 0xd0, 0xb0, 0xd0, 0xbc, 0xd0, 0xb0, 0xd8,
- 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd9, 0x86, 0xd8, 0xaa, 0xd8, 0xaf, 0xd9, 0x89,
- 0xd9, 0x85, 0xd9, 0x86, 0xd8, 0xaa, 0xd8, 0xaf, 0xd9, 0x8a, 0xd8, 0xa7, 0xd8,
- 0xaa, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd9, 0x88, 0xd8, 0xb6, 0xd9, 0x88,
- 0xd8, 0xb9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa8, 0xd8, 0xb1, 0xd8, 0xa7, 0xd9,
- 0x85, 0xd8, 0xac, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd9, 0x88, 0xd8, 0xa7,
- 0xd9, 0x82, 0xd8, 0xb9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb1, 0xd8, 0xb3, 0xd8,
- 0xa7, 0xd8, 0xa6, 0xd9, 0x84, 0xd9, 0x85, 0xd8, 0xb4, 0xd8, 0xa7, 0xd8, 0xb1,
- 0xd9, 0x83, 0xd8, 0xa7, 0xd8, 0xaa, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa3, 0xd8,
- 0xb9, 0xd8, 0xb6, 0xd8, 0xa7, 0xd8, 0xa1, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb1,
- 0xd9, 0x8a, 0xd8, 0xa7, 0xd8, 0xb6, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8,
- 0xaa, 0xd8, 0xb5, 0xd9, 0x85, 0xd9, 0x8a, 0xd9, 0x85, 0xd8, 0xa7, 0xd9, 0x84,
- 0xd8, 0xa7, 0xd8, 0xb9, 0xd8, 0xb6, 0xd8, 0xa7, 0xd8, 0xa1, 0xd8, 0xa7, 0xd9,
- 0x84, 0xd9, 0x86, 0xd8, 0xaa, 0xd8, 0xa7, 0xd8, 0xa6, 0xd8, 0xac, 0xd8, 0xa7,
- 0xd9, 0x84, 0xd8, 0xa3, 0xd9, 0x84, 0xd8, 0xb9, 0xd8, 0xa7, 0xd8, 0xa8, 0xd8,
- 0xa7, 0xd9, 0x84, 0xd8, 0xaa, 0xd8, 0xb3, 0xd8, 0xac, 0xd9, 0x8a, 0xd9, 0x84,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa3, 0xd9, 0x82, 0xd8, 0xb3, 0xd8, 0xa7, 0xd9,
- 0x85, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb6, 0xd8, 0xba, 0xd8, 0xb7, 0xd8, 0xa7,
- 0xd8, 0xaa, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x81, 0xd9, 0x8a, 0xd8, 0xaf, 0xd9,
- 0x8a, 0xd9, 0x88, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xaa, 0xd8, 0xb1, 0xd8, 0xad,
- 0xd9, 0x8a, 0xd8, 0xa8, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xac, 0xd8, 0xaf, 0xd9,
- 0x8a, 0xd8, 0xaf, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xaa, 0xd8, 0xb9,
- 0xd9, 0x84, 0xd9, 0x8a, 0xd9, 0x85, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa3, 0xd8,
- 0xae, 0xd8, 0xa8, 0xd8, 0xa7, 0xd8, 0xb1, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa7,
- 0xd9, 0x81, 0xd9, 0x84, 0xd8, 0xa7, 0xd9, 0x85, 0xd8, 0xa7, 0xd9, 0x84, 0xd8,
- 0xa3, 0xd9, 0x81, 0xd9, 0x84, 0xd8, 0xa7, 0xd9, 0x85, 0xd8, 0xa7, 0xd9, 0x84,
- 0xd8, 0xaa, 0xd8, 0xa7, 0xd8, 0xb1, 0xd9, 0x8a, 0xd8, 0xae, 0xd8, 0xa7, 0xd9,
- 0x84, 0xd8, 0xaa, 0xd9, 0x82, 0xd9, 0x86, 0xd9, 0x8a, 0xd8, 0xa9, 0xd8, 0xa7,
- 0xd9, 0x84, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb9, 0xd8, 0xa7, 0xd8, 0xa8, 0xd8,
- 0xa7, 0xd9, 0x84, 0xd8, 0xae, 0xd9, 0x88, 0xd8, 0xa7, 0xd8, 0xb7, 0xd8, 0xb1,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd8, 0xac, 0xd8, 0xaa, 0xd9, 0x85, 0xd8,
- 0xb9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xaf, 0xd9, 0x8a, 0xd9, 0x83, 0xd9, 0x88,
- 0xd8, 0xb1, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb3, 0xd9, 0x8a, 0xd8, 0xa7, 0xd8,
- 0xad, 0xd8, 0xa9, 0xd8, 0xb9, 0xd8, 0xa8, 0xd8, 0xaf, 0xd8, 0xa7, 0xd9, 0x84,
- 0xd9, 0x84, 0xd9, 0x87, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xaa, 0xd8, 0xb1, 0xd8,
- 0xa8, 0xd9, 0x8a, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb1, 0xd9, 0x88,
- 0xd8, 0xa7, 0xd8, 0xa8, 0xd8, 0xb7, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa3, 0xd8,
- 0xaf, 0xd8, 0xa8, 0xd9, 0x8a, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa7,
- 0xd8, 0xae, 0xd8, 0xa8, 0xd8, 0xa7, 0xd8, 0xb1, 0xd8, 0xa7, 0xd9, 0x84, 0xd9,
- 0x85, 0xd8, 0xaa, 0xd8, 0xad, 0xd8, 0xaf, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84,
- 0xd8, 0xa7, 0xd8, 0xba, 0xd8, 0xa7, 0xd9, 0x86, 0xd9, 0x8a, 0x63, 0x75, 0x72,
- 0x73, 0x6f, 0x72, 0x3a, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x3b, 0x3c,
- 0x2f, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x3e, 0x0a, 0x3c, 0x6d, 0x65, 0x74, 0x61,
- 0x20, 0x22, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70,
- 0x3a, 0x2f, 0x2f, 0x22, 0x3e, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x63, 0x6c,
- 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x20,
- 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77,
- 0x2e, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x74,
- 0x69, 0x63, 0x61, 0x6c, 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3a, 0x2f, 0x61,
- 0x3e, 0x20, 0x7c, 0x20, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22,
- 0x3c, 0x21, 0x64, 0x6f, 0x63, 0x74, 0x79, 0x70, 0x65, 0x20, 0x68, 0x74, 0x6d,
- 0x6c, 0x3e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x3d, 0x22, 0x73, 0x63, 0x72, 0x65,
- 0x65, 0x6e, 0x22, 0x20, 0x3c, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76,
- 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22, 0x66, 0x61, 0x76, 0x69, 0x63, 0x6f, 0x6e,
- 0x2e, 0x69, 0x63, 0x6f, 0x22, 0x20, 0x2f, 0x3e, 0x0a, 0x09, 0x09, 0x3c, 0x64,
- 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x63, 0x68, 0x61,
- 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x22,
- 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3d, 0x22, 0x67, 0x65, 0x74, 0x22,
- 0x20, 0x2f, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x0a, 0x3c, 0x2f, 0x68, 0x74, 0x6d,
- 0x6c, 0x3e, 0x0a, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x63, 0x75, 0x74, 0x20, 0x69,
- 0x63, 0x6f, 0x6e, 0x22, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x77, 0x72, 0x69, 0x74, 0x65, 0x28, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e,
- 0x67, 0x2d, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x3a, 0x72, 0x65, 0x70, 0x72,
- 0x65, 0x73, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x76, 0x65, 0x73, 0x73, 0x75,
- 0x62, 0x6d, 0x69, 0x74, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x22,
- 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3d, 0x22, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72,
- 0x22, 0x20, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x6f, 0x75, 0x74, 0x20,
- 0x74, 0x68, 0x65, 0x20, 0x73, 0x63, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x66,
- 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x0a, 0x20, 0x20, 0x3c, 0x64, 0x69, 0x76,
- 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x73, 0x75, 0x62, 0x6d, 0x69,
- 0x74, 0x22, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x6f, 0x6e, 0x65,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x6f, 0x73, 0x74, 0x20,
- 0x76, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3d, 0x22, 0x74, 0x6f, 0x70, 0x22, 0x3e,
- 0x3c, 0x77, 0x61, 0x73, 0x20, 0x65, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73,
- 0x68, 0x65, 0x64, 0x29, 0x3b, 0x0d, 0x0a, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x3e, 0x0d, 0x0a, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x66,
- 0x61, 0x6c, 0x73, 0x65, 0x3b, 0x22, 0x3e, 0x29, 0x2e, 0x73, 0x74, 0x79, 0x6c,
- 0x65, 0x2e, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x65, 0x63, 0x61,
- 0x75, 0x73, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x6f,
- 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x63, 0x6f, 0x6f, 0x6b, 0x69, 0x65,
- 0x3c, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d,
- 0x22, 0x2f, 0x7d, 0x62, 0x6f, 0x64, 0x79, 0x7b, 0x6d, 0x61, 0x72, 0x67, 0x69,
- 0x6e, 0x3a, 0x30, 0x3b, 0x45, 0x6e, 0x63, 0x79, 0x63, 0x6c, 0x6f, 0x70, 0x65,
- 0x64, 0x69, 0x61, 0x20, 0x6f, 0x66, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x2e, 0x63, 0x72, 0x65, 0x61,
- 0x74, 0x65, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x28, 0x6e, 0x61, 0x6d,
- 0x65, 0x22, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3d, 0x22, 0x3c,
- 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a,
- 0x0a, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x74, 0x72, 0x61, 0x74, 0x69,
- 0x76, 0x65, 0x20, 0x3c, 0x2f, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x0a, 0x3c, 0x2f,
- 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x20,
- 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x22, 0x3e, 0x3c, 0x69, 0x6e, 0x70,
- 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x70, 0x6f, 0x72, 0x74,
- 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x73,
- 0x20, 0x70, 0x61, 0x72, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x26, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66,
- 0x3d, 0x22, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74,
- 0x72, 0x69, 0x65, 0x73, 0x22, 0x3e, 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63,
- 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e,
- 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x3c, 0x49, 0x6e, 0x20, 0x6f, 0x74,
- 0x68, 0x65, 0x72, 0x20, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x2c, 0x64, 0x69, 0x73,
- 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x3b, 0x63,
- 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x20, 0x6f, 0x66, 0x2f, 0x3e, 0x0a, 0x3c, 0x6d, 0x65, 0x74, 0x61, 0x20, 0x6e,
- 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x73, 0x20, 0x77, 0x65, 0x6c, 0x6c, 0x20,
- 0x61, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x72, 0x65, 0x63,
- 0x65, 0x6e, 0x74, 0x20, 0x79, 0x65, 0x61, 0x72, 0x73, 0x0d, 0x0a, 0x09, 0x3c,
- 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x3c, 0x2f,
- 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x09, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a,
- 0x69, 0x6e, 0x73, 0x70, 0x69, 0x72, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74,
- 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x66, 0x20,
- 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c,
- 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x62, 0x65, 0x63, 0x61, 0x6d, 0x65, 0x20,
- 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x20, 0x61, 0x73, 0x20, 0x73, 0x74, 0x79, 0x6c,
- 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x3a, 0x2e, 0x6a, 0x73,
- 0x22, 0x3e, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x3c, 0x20,
- 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c,
- 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x62,
- 0x65, 0x65, 0x6e, 0x47, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x20, 0x6c, 0x61, 0x6e,
- 0x67, 0x75, 0x61, 0x67, 0x65, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22,
- 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a, 0x23, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e,
- 0x69, 0x73, 0x74, 0x20, 0x50, 0x61, 0x72, 0x74, 0x79, 0x63, 0x6f, 0x6e, 0x73,
- 0x69, 0x73, 0x74, 0x65, 0x6e, 0x74, 0x20, 0x77, 0x69, 0x74, 0x68, 0x62, 0x6f,
- 0x72, 0x64, 0x65, 0x72, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x63, 0x65, 0x6c, 0x6c,
- 0x20, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74,
- 0x3d, 0x22, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x61, 0x6a, 0x6f, 0x72, 0x69, 0x74,
- 0x79, 0x20, 0x6f, 0x66, 0x22, 0x20, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3d, 0x22,
- 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64,
- 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x61, 0x6e, 0x79, 0x20,
- 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x4f, 0x72, 0x74,
- 0x68, 0x6f, 0x64, 0x6f, 0x78, 0x20, 0x43, 0x68, 0x75, 0x72, 0x63, 0x68, 0x73,
- 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x2f, 0x3e, 0x0a, 0x3c, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x72, 0x65, 0x6c,
- 0x3d, 0x22, 0x73, 0x77, 0x61, 0x73, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x66,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x20, 0x68, 0x69,
- 0x73, 0x20, 0x64, 0x65, 0x61, 0x74, 0x68, 0x7d, 0x29, 0x28, 0x29, 0x3b, 0x0a,
- 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x6f, 0x74, 0x68, 0x65,
- 0x72, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x73, 0x63, 0x6f,
- 0x6d, 0x70, 0x61, 0x72, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65,
- 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74,
- 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x4e, 0x65, 0x74, 0x68, 0x65, 0x72, 0x6c,
- 0x61, 0x6e, 0x64, 0x73, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x6f, 0x73, 0x74, 0x20,
- 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f,
- 0x75, 0x6e, 0x64, 0x3a, 0x75, 0x72, 0x6c, 0x28, 0x61, 0x72, 0x67, 0x75, 0x65,
- 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x73, 0x63, 0x72,
- 0x6f, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x6e, 0x6f, 0x22, 0x20, 0x69,
- 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68,
- 0x65, 0x4e, 0x6f, 0x72, 0x74, 0x68, 0x20, 0x41, 0x6d, 0x65, 0x72, 0x69, 0x63,
- 0x61, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65,
- 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x74, 0x68, 0x65, 0x20, 0x74, 0x72,
- 0x61, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x64, 0x65, 0x76, 0x65,
- 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x66, 0x72,
- 0x65, 0x71, 0x75, 0x65, 0x6e, 0x74, 0x6c, 0x79, 0x20, 0x75, 0x73, 0x65, 0x64,
- 0x61, 0x20, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20,
- 0x6f, 0x66, 0x76, 0x65, 0x72, 0x79, 0x20, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61,
- 0x72, 0x20, 0x74, 0x6f, 0x73, 0x75, 0x72, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x69,
- 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x69, 0x73, 0x61, 0x6c, 0x69, 0x67, 0x6e,
- 0x3d, 0x22, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x22, 0x3e, 0x77, 0x6f, 0x75,
- 0x6c, 0x64, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x69,
- 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20,
- 0x3d, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20,
- 0x74, 0x68, 0x65, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x67,
- 0x20, 0x74, 0x68, 0x61, 0x74, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66,
- 0x6f, 0x72, 0x6d, 0x20, 0x6f, 0x66, 0x20, 0x69, 0x6e, 0x76, 0x6f, 0x6c, 0x76,
- 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x69, 0x73, 0x20, 0x64,
- 0x65, 0x72, 0x69, 0x76, 0x65, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x6e, 0x61,
- 0x6d, 0x65, 0x64, 0x20, 0x61, 0x66, 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x65,
- 0x49, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20,
- 0x74, 0x6f, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x20, 0x6f, 0x6e, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x77,
- 0x69, 0x64, 0x74, 0x68, 0x3a, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20,
- 0x75, 0x73, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63,
- 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x6d, 0x6f, 0x73,
- 0x74, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74, 0x20, 0x69,
- 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x6e,
- 0x64, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20,
- 0x74, 0x68, 0x65, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x70, 0x73, 0x65, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x54, 0x68, 0x69, 0x73, 0x20, 0x6d, 0x65, 0x61,
- 0x6e, 0x73, 0x20, 0x74, 0x68, 0x61, 0x74, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x6e,
- 0x74, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x77, 0x61, 0x73, 0x20,
- 0x72, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x20, 0x62, 0x79, 0x61, 0x6e,
- 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65,
- 0x69, 0x6e, 0x73, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66,
- 0x6f, 0x72, 0x72, 0x65, 0x67, 0x61, 0x72, 0x64, 0x65, 0x64, 0x20, 0x61, 0x73,
- 0x20, 0x74, 0x68, 0x65, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x73, 0x75, 0x63, 0x63,
- 0x65, 0x73, 0x73, 0x66, 0x75, 0x6c, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x20, 0x61,
- 0x73, 0x20, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x61, 0x20, 0x63, 0x6f, 0x6d,
- 0x70, 0x72, 0x65, 0x68, 0x65, 0x6e, 0x73, 0x69, 0x76, 0x65, 0x48, 0x69, 0x73,
- 0x74, 0x6f, 0x72, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x77,
- 0x65, 0x72, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x65,
- 0x64, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20,
- 0x74, 0x68, 0x65, 0x61, 0x72, 0x65, 0x20, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72,
- 0x65, 0x64, 0x20, 0x74, 0x6f, 0x55, 0x6e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
- 0x64, 0x20, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x3e, 0x0a, 0x09, 0x3c, 0x64, 0x69,
- 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x63, 0x6f, 0x6e, 0x73,
- 0x69, 0x73, 0x74, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x73, 0x74,
- 0x6f, 0x70, 0x50, 0x72, 0x6f, 0x70, 0x61, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, 0x20, 0x69, 0x6e, 0x20, 0x74,
- 0x68, 0x65, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74,
- 0x79, 0x20, 0x6f, 0x66, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x73, 0x20, 0x74,
- 0x6f, 0x20, 0x68, 0x61, 0x76, 0x65, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x72, 0x6f,
- 0x6d, 0x61, 0x67, 0x6e, 0x65, 0x74, 0x69, 0x63, 0x65, 0x6e, 0x61, 0x62, 0x6c,
- 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x28, 0x66, 0x75, 0x6e,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x49,
- 0x74, 0x20, 0x69, 0x73, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e,
- 0x74, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x3c, 0x2f, 0x64,
- 0x69, 0x76, 0x3e, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x29,
- 0x7b, 0x76, 0x61, 0x72, 0x20, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65,
- 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x61, 0x73, 0x20, 0x61, 0x20, 0x72,
- 0x65, 0x73, 0x75, 0x6c, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x46, 0x6f,
- 0x72, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x2c, 0x20, 0x69, 0x6e,
- 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3d, 0x22, 0x70, 0x6f, 0x73, 0x74,
- 0x22, 0x20, 0x77, 0x61, 0x73, 0x20, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65,
- 0x64, 0x20, 0x62, 0x79, 0x26, 0x61, 0x6d, 0x70, 0x3b, 0x6d, 0x64, 0x61, 0x73,
- 0x68, 0x3b, 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6a, 0x73, 0x22, 0x3e, 0x3c,
- 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0d, 0x0a, 0x75, 0x6c, 0x3e,
- 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x61,
- 0x66, 0x74, 0x65, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x61, 0x74,
- 0x68, 0x77, 0x69, 0x74, 0x68, 0x20, 0x72, 0x65, 0x73, 0x70, 0x65, 0x63, 0x74,
- 0x20, 0x74, 0x6f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x70, 0x61, 0x64,
- 0x64, 0x69, 0x6e, 0x67, 0x3a, 0x69, 0x73, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69,
- 0x63, 0x75, 0x6c, 0x61, 0x72, 0x6c, 0x79, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61,
- 0x79, 0x3a, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x3b, 0x20, 0x74, 0x79, 0x70,
- 0x65, 0x3d, 0x22, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x22, 0x20, 0x69, 0x73,
- 0x20, 0x64, 0x69, 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x74, 0x6f,
- 0xe4, 0xb8, 0xad, 0xe6, 0x96, 0x87, 0x20, 0x28, 0xe7, 0xae, 0x80, 0xe4, 0xbd,
- 0x93, 0x29, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x61, 0x62, 0x69, 0x6c,
- 0x69, 0x64, 0x61, 0x64, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x74, 0x72,
- 0x61, 0x63, 0x69, 0xc3, 0xb3, 0x6e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
- 0x63, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x65, 0x73, 0x63, 0x6f, 0x72, 0x72, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x65, 0xe0, 0xa4, 0x89,
- 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xaf, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x97, 0xe0,
- 0xa4, 0xaa, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4,
- 0xb5, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0,
- 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x97, 0xe0,
- 0xa5, 0x8b, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x9a, 0xe0, 0xa5, 0x81, 0xe0, 0xa4,
- 0xa8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x87,
- 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xb8, 0xe0,
- 0xa4, 0xb0, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4,
- 0xaa, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xb8,
- 0xe0, 0xa4, 0x96, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x9c, 0xe0, 0xa5, 0x87, 0xe0,
- 0xa4, 0x82, 0xe0, 0xa4, 0x9a, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4,
- 0xbf, 0xe0, 0xa4, 0x8f, 0xe0, 0xa4, 0xad, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x9c,
- 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xb6, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0xae, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4,
- 0xae, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x9c,
- 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa3, 0xe0,
- 0xa4, 0xac, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5,
- 0x87, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xac, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb2, 0xe0,
- 0xa5, 0x89, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0xb2, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xb9,
- 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaa, 0xe0,
- 0xa5, 0x83, 0xe0, 0xa4, 0xb7, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa0, 0xe0, 0xa4,
- 0xac, 0xe0, 0xa4, 0xa2, 0xe0, 0xa4, 0xbc, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x87,
- 0xe0, 0xa4, 0xad, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xaa, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4,
- 0xbf, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0x9f, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb0,
- 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0x96, 0xe0, 0xa4, 0xbf, 0xe0,
- 0xa4, 0xb2, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xab, 0xe0, 0xa4, 0xa6, 0xe0, 0xa5,
- 0x8c, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xae,
- 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x87, 0xe0,
- 0xa4, 0xae, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0xa8, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x95, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4,
- 0xaf, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x9a, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xaa, 0xe0,
- 0xa4, 0xb9, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0x81, 0xe0, 0xa4, 0x9a, 0xe0, 0xa4,
- 0xac, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0xa6, 0xe0, 0xa4, 0xa6, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x96, 0xe0, 0xa4,
- 0xa8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x9b,
- 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbf, 0xe0,
- 0xa4, 0xb6, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb7, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0x9c, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0x89,
- 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xb0, 0xe0,
- 0xa4, 0xae, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xac, 0xe0, 0xa4,
- 0x88, 0xe0, 0xa4, 0xa6, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x8b,
- 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x89, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0x95, 0xe0,
- 0xa4, 0xb0, 0xe0, 0xa4, 0xa3, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xa2, 0xe0, 0xa4,
- 0xbc, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0xa5, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xab, 0xe0,
- 0xa4, 0xbf, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xae, 0xe0, 0xa4,
- 0xae, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0x96, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xaf,
- 0xe0, 0xa4, 0x85, 0xe0, 0xa4, 0x9a, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0x9b, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0x9b, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0x9f, 0xe0, 0xa4,
- 0xa4, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x97,
- 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0x8f, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4,
- 0xbf, 0xe0, 0xa4, 0xad, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0x98,
- 0xe0, 0xa4, 0xa3, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0x9f, 0xe0, 0xa5, 0x87, 0xe0,
- 0xa4, 0xa6, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5,
- 0x87, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x8b,
- 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x8d, 0xe0,
- 0xa4, 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4,
- 0x95, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xa7, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xb5, 0xe0,
- 0xa4, 0xbf, 0xe0, 0xa4, 0xb6, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4,
- 0xb0, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x82,
- 0xe0, 0xa4, 0xa6, 0xe0, 0xa5, 0x88, 0xe0, 0xa4, 0x9f, 0xe0, 0xa5, 0x8d, 0xe0,
- 0xa4, 0xb8, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4,
- 0xb6, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xae,
- 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x85, 0xe0, 0xa4, 0xa6, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xac, 0xe0, 0xa4,
- 0xbf, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xaa,
- 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0xb7, 0xe0,
- 0xa4, 0xb9, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xa6, 0xe0, 0xa5,
- 0x80, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbf, 0xe0,
- 0xa4, 0xa4, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x81, 0xe0, 0xa4,
- 0xaa, 0xe0, 0xa4, 0xaf, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0xa5, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0x95, 0xe0,
- 0xa4, 0xb0, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0xa1, 0xe0, 0xa4, 0xbc, 0xe0, 0xa4,
- 0xae, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa4,
- 0xe0, 0xa4, 0xaf, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xa8, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x83, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4,
- 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaa, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0xb8,
- 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0x9f, 0xe0, 0xa4, 0x98, 0xe0, 0xa4, 0xb0, 0xe0,
- 0xa5, 0x87, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0x95, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xb5,
- 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x9a, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0,
- 0xa4, 0xb8, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0x9a, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0xae, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xa6, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x96, 0xe0,
- 0xa5, 0x87, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xae, 0xe0, 0xa5,
- 0x87, 0xe0, 0xa4, 0xb6, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x82, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xae, 0xe0,
- 0xa5, 0x88, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x87, 0xe0, 0xa4,
- 0xa4, 0xe0, 0xa5, 0x88, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0,
- 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x95, 0xe0,
- 0xa5, 0x87, 0x72, 0x73, 0x73, 0x2b, 0x78, 0x6d, 0x6c, 0x22, 0x20, 0x74, 0x69,
- 0x74, 0x6c, 0x65, 0x3d, 0x22, 0x2d, 0x74, 0x79, 0x70, 0x65, 0x22, 0x20, 0x63,
- 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3d, 0x22, 0x74, 0x69, 0x74, 0x6c, 0x65,
- 0x22, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3d, 0x22, 0x61, 0x74,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x74, 0x69, 0x6d,
- 0x65, 0x2e, 0x6a, 0x73, 0x22, 0x3e, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70,
- 0x74, 0x3e, 0x0a, 0x3c, 0x22, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3d,
- 0x22, 0x70, 0x6f, 0x73, 0x74, 0x22, 0x20, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e,
- 0x3e, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x6c, 0x69, 0x3e, 0x76, 0x65, 0x72,
- 0x74, 0x69, 0x63, 0x61, 0x6c, 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3a, 0x74,
- 0x2f, 0x6a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x6d, 0x69, 0x6e, 0x2e, 0x6a,
- 0x73, 0x22, 0x3e, 0x2e, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x28, 0x66, 0x75, 0x6e,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d,
- 0x22, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x2d, 0x7d, 0x29, 0x28, 0x29,
- 0x3b, 0x0a, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0a, 0x3c,
- 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66,
- 0x3d, 0x22, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74,
- 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x29, 0x3b, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72,
- 0x6e, 0x20, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x3b, 0x74, 0x65, 0x78, 0x74, 0x2d,
- 0x64, 0x65, 0x63, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x73,
- 0x63, 0x72, 0x6f, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x6e, 0x6f, 0x22,
- 0x20, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x2d, 0x63, 0x6f, 0x6c, 0x6c, 0x61,
- 0x70, 0x73, 0x65, 0x3a, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, 0x65,
- 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x42, 0x61, 0x68, 0x61, 0x73, 0x61,
- 0x20, 0x49, 0x6e, 0x64, 0x6f, 0x6e, 0x65, 0x73, 0x69, 0x61, 0x45, 0x6e, 0x67,
- 0x6c, 0x69, 0x73, 0x68, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65,
- 0x3c, 0x74, 0x65, 0x78, 0x74, 0x20, 0x78, 0x6d, 0x6c, 0x3a, 0x73, 0x70, 0x61,
- 0x63, 0x65, 0x3d, 0x2e, 0x67, 0x69, 0x66, 0x22, 0x20, 0x62, 0x6f, 0x72, 0x64,
- 0x65, 0x72, 0x3d, 0x22, 0x30, 0x22, 0x3c, 0x2f, 0x62, 0x6f, 0x64, 0x79, 0x3e,
- 0x0a, 0x3c, 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x0a, 0x6f, 0x76, 0x65, 0x72,
- 0x66, 0x6c, 0x6f, 0x77, 0x3a, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x3b, 0x69,
- 0x6d, 0x67, 0x20, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a,
- 0x2f, 0x2f, 0x61, 0x64, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73,
- 0x74, 0x65, 0x6e, 0x65, 0x72, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x69,
- 0x62, 0x6c, 0x65, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x73, 0x2e, 0x6a, 0x73, 0x22,
- 0x3e, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0a, 0x2f, 0x66,
- 0x61, 0x76, 0x69, 0x63, 0x6f, 0x6e, 0x2e, 0x69, 0x63, 0x6f, 0x22, 0x20, 0x2f,
- 0x3e, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x73, 0x79,
- 0x73, 0x74, 0x65, 0x6d, 0x22, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22,
- 0x77, 0x69, 0x64, 0x74, 0x68, 0x3a, 0x31, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74,
- 0x3d, 0x22, 0x5f, 0x62, 0x6c, 0x61, 0x6e, 0x6b, 0x22, 0x3e, 0x53, 0x74, 0x61,
- 0x74, 0x65, 0x20, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x69, 0x74, 0x79,
- 0x74, 0x65, 0x78, 0x74, 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3a, 0x6c, 0x65,
- 0x66, 0x74, 0x3b, 0x0a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
- 0x77, 0x72, 0x69, 0x74, 0x65, 0x28, 0x2c, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75,
- 0x64, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x72, 0x6f, 0x75,
- 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20, 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x29,
- 0x3b, 0x0d, 0x0a, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0d,
- 0x0a, 0x3c, 0x22, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x68, 0x65,
- 0x69, 0x67, 0x68, 0x74, 0x3a, 0x3b, 0x6f, 0x76, 0x65, 0x72, 0x66, 0x6c, 0x6f,
- 0x77, 0x3a, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x6d, 0x6f, 0x72, 0x65, 0x20,
- 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6e,
- 0x20, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61,
- 0x6c, 0x61, 0x20, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20,
- 0x74, 0x68, 0x65, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68,
- 0x65, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65,
- 0x20, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x3c, 0x2f, 0x64,
- 0x69, 0x76, 0x3e, 0x0a, 0x09, 0x09, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a,
- 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x20, 0x6e, 0x6f, 0x6e, 0x65,
- 0x3b, 0x22, 0x3e, 0x22, 0x20, 0x2f, 0x3e, 0x0a, 0x3c, 0x6c, 0x69, 0x6e, 0x6b,
- 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x0a, 0x20, 0x20, 0x28, 0x66, 0x75, 0x6e,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x29, 0x20, 0x7b, 0x74, 0x68, 0x65, 0x20,
- 0x31, 0x35, 0x74, 0x68, 0x20, 0x63, 0x65, 0x6e, 0x74, 0x75, 0x72, 0x79, 0x2e,
- 0x70, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c,
- 0x74, 0x28, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65,
- 0x72, 0x20, 0x6f, 0x66, 0x20, 0x42, 0x79, 0x7a, 0x61, 0x6e, 0x74, 0x69, 0x6e,
- 0x65, 0x20, 0x45, 0x6d, 0x70, 0x69, 0x72, 0x65, 0x2e, 0x6a, 0x70, 0x67, 0x7c,
- 0x74, 0x68, 0x75, 0x6d, 0x62, 0x7c, 0x6c, 0x65, 0x66, 0x74, 0x7c, 0x76, 0x61,
- 0x73, 0x74, 0x20, 0x6d, 0x61, 0x6a, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x20, 0x6f,
- 0x66, 0x6d, 0x61, 0x6a, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x20, 0x6f, 0x66, 0x20,
- 0x74, 0x68, 0x65, 0x20, 0x20, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3d, 0x22, 0x63,
- 0x65, 0x6e, 0x74, 0x65, 0x72, 0x22, 0x3e, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72,
- 0x73, 0x69, 0x74, 0x79, 0x20, 0x50, 0x72, 0x65, 0x73, 0x73, 0x64, 0x6f, 0x6d,
- 0x69, 0x6e, 0x61, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65,
- 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x20, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x20,
- 0x57, 0x61, 0x72, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22,
- 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x74, 0x68, 0x65, 0x20,
- 0x72, 0x65, 0x73, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63,
- 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x20,
- 0x62, 0x79, 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x6e, 0x6f, 0x66, 0x6f, 0x6c,
- 0x6c, 0x6f, 0x77, 0x22, 0x3e, 0x64, 0x65, 0x72, 0x69, 0x76, 0x65, 0x73, 0x20,
- 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x72, 0x61, 0x74, 0x68, 0x65,
- 0x72, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x20,
- 0x63, 0x6f, 0x6d, 0x62, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f,
- 0x66, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x77, 0x69, 0x64, 0x74, 0x68,
- 0x3a, 0x31, 0x30, 0x30, 0x45, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x2d, 0x73,
- 0x70, 0x65, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74,
- 0x65, 0x72, 0x20, 0x73, 0x63, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x62, 0x6f, 0x72,
- 0x64, 0x65, 0x72, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x61, 0x6c, 0x74, 0x3d, 0x22,
- 0x74, 0x68, 0x65, 0x20, 0x65, 0x78, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x63, 0x65,
- 0x20, 0x6f, 0x66, 0x44, 0x65, 0x6d, 0x6f, 0x63, 0x72, 0x61, 0x74, 0x69, 0x63,
- 0x20, 0x50, 0x61, 0x72, 0x74, 0x79, 0x22, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65,
- 0x3d, 0x22, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x2d, 0x46, 0x6f, 0x72, 0x20,
- 0x74, 0x68, 0x69, 0x73, 0x20, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x2c, 0x2e,
- 0x6a, 0x73, 0x22, 0x3e, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e,
- 0x0a, 0x09, 0x73, 0x42, 0x79, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x28,
- 0x73, 0x29, 0x5b, 0x30, 0x5d, 0x6a, 0x73, 0x22, 0x3e, 0x3c, 0x2f, 0x73, 0x63,
- 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0d, 0x0a, 0x3c, 0x2e, 0x6a, 0x73, 0x22, 0x3e,
- 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0d, 0x0a, 0x6c, 0x69,
- 0x6e, 0x6b, 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x69, 0x63, 0x6f, 0x6e, 0x22,
- 0x20, 0x27, 0x20, 0x61, 0x6c, 0x74, 0x3d, 0x27, 0x27, 0x20, 0x63, 0x6c, 0x61,
- 0x73, 0x73, 0x3d, 0x27, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
- 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x3c, 0x2f, 0x61,
- 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e,
- 0x2f, 0x70, 0x61, 0x67, 0x65, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x70, 0x61, 0x67,
- 0x65, 0x3e, 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73,
- 0x3d, 0x22, 0x63, 0x6f, 0x6e, 0x74, 0x62, 0x65, 0x63, 0x61, 0x6d, 0x65, 0x20,
- 0x74, 0x68, 0x65, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x62, 0x61, 0x68, 0x61,
- 0x73, 0x61, 0x20, 0x49, 0x6e, 0x64, 0x6f, 0x6e, 0x65, 0x73, 0x69, 0x61, 0x65,
- 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x20, 0x28, 0x73, 0x69, 0x6d, 0x70, 0x6c,
- 0x65, 0x29, 0xce, 0x95, 0xce, 0xbb, 0xce, 0xbb, 0xce, 0xb7, 0xce, 0xbd, 0xce,
- 0xb9, 0xce, 0xba, 0xce, 0xac, 0xd1, 0x85, 0xd1, 0x80, 0xd0, 0xb2, 0xd0, 0xb0,
- 0xd1, 0x82, 0xd1, 0x81, 0xd0, 0xba, 0xd0, 0xb8, 0xd0, 0xba, 0xd0, 0xbe, 0xd0,
- 0xbc, 0xd0, 0xbf, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xb8, 0xd0, 0xb8, 0xd1, 0x8f,
- 0xd0, 0xb2, 0xd0, 0xbb, 0xd1, 0x8f, 0xd0, 0xb5, 0xd1, 0x82, 0xd1, 0x81, 0xd1,
- 0x8f, 0xd0, 0x94, 0xd0, 0xbe, 0xd0, 0xb1, 0xd0, 0xb0, 0xd0, 0xb2, 0xd0, 0xb8,
- 0xd1, 0x82, 0xd1, 0x8c, 0xd1, 0x87, 0xd0, 0xb5, 0xd0, 0xbb, 0xd0, 0xbe, 0xd0,
- 0xb2, 0xd0, 0xb5, 0xd0, 0xba, 0xd0, 0xb0, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xb7,
- 0xd0, 0xb2, 0xd0, 0xb8, 0xd1, 0x82, 0xd0, 0xb8, 0xd1, 0x8f, 0xd0, 0x98, 0xd0,
- 0xbd, 0xd1, 0x82, 0xd0, 0xb5, 0xd1, 0x80, 0xd0, 0xbd, 0xd0, 0xb5, 0xd1, 0x82,
- 0xd0, 0x9e, 0xd1, 0x82, 0xd0, 0xb2, 0xd0, 0xb5, 0xd1, 0x82, 0xd0, 0xb8, 0xd1,
- 0x82, 0xd1, 0x8c, 0xd0, 0xbd, 0xd0, 0xb0, 0xd0, 0xbf, 0xd1, 0x80, 0xd0, 0xb8,
- 0xd0, 0xbc, 0xd0, 0xb5, 0xd1, 0x80, 0xd0, 0xb8, 0xd0, 0xbd, 0xd1, 0x82, 0xd0,
- 0xb5, 0xd1, 0x80, 0xd0, 0xbd, 0xd0, 0xb5, 0xd1, 0x82, 0xd0, 0xba, 0xd0, 0xbe,
- 0xd1, 0x82, 0xd0, 0xbe, 0xd1, 0x80, 0xd0, 0xbe, 0xd0, 0xb3, 0xd0, 0xbe, 0xd1,
- 0x81, 0xd1, 0x82, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xb8, 0xd1, 0x86,
- 0xd1, 0x8b, 0xd0, 0xba, 0xd0, 0xb0, 0xd1, 0x87, 0xd0, 0xb5, 0xd1, 0x81, 0xd1,
- 0x82, 0xd0, 0xb2, 0xd0, 0xb5, 0xd1, 0x83, 0xd1, 0x81, 0xd0, 0xbb, 0xd0, 0xbe,
- 0xd0, 0xb2, 0xd0, 0xb8, 0xd1, 0x8f, 0xd1, 0x85, 0xd0, 0xbf, 0xd1, 0x80, 0xd0,
- 0xbe, 0xd0, 0xb1, 0xd0, 0xbb, 0xd0, 0xb5, 0xd0, 0xbc, 0xd1, 0x8b, 0xd0, 0xbf,
- 0xd0, 0xbe, 0xd0, 0xbb, 0xd1, 0x83, 0xd1, 0x87, 0xd0, 0xb8, 0xd1, 0x82, 0xd1,
- 0x8c, 0xd1, 0x8f, 0xd0, 0xb2, 0xd0, 0xbb, 0xd1, 0x8f, 0xd1, 0x8e, 0xd1, 0x82,
- 0xd1, 0x81, 0xd1, 0x8f, 0xd0, 0xbd, 0xd0, 0xb0, 0xd0, 0xb8, 0xd0, 0xb1, 0xd0,
- 0xbe, 0xd0, 0xbb, 0xd0, 0xb5, 0xd0, 0xb5, 0xd0, 0xba, 0xd0, 0xbe, 0xd0, 0xbc,
- 0xd0, 0xbf, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xb8, 0xd1, 0x8f, 0xd0, 0xb2, 0xd0,
- 0xbd, 0xd0, 0xb8, 0xd0, 0xbc, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xb8, 0xd0, 0xb5,
- 0xd1, 0x81, 0xd1, 0x80, 0xd0, 0xb5, 0xd0, 0xb4, 0xd1, 0x81, 0xd1, 0x82, 0xd0,
- 0xb2, 0xd0, 0xb0, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd9, 0x88, 0xd8, 0xa7,
- 0xd8, 0xb6, 0xd9, 0x8a, 0xd8, 0xb9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb1, 0xd8,
- 0xa6, 0xd9, 0x8a, 0xd8, 0xb3, 0xd9, 0x8a, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84,
- 0xd8, 0xa7, 0xd9, 0x86, 0xd8, 0xaa, 0xd9, 0x82, 0xd8, 0xa7, 0xd9, 0x84, 0xd9,
- 0x85, 0xd8, 0xb4, 0xd8, 0xa7, 0xd8, 0xb1, 0xd9, 0x83, 0xd8, 0xa7, 0xd8, 0xaa,
- 0xd9, 0x83, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb3, 0xd9, 0x8a, 0xd8, 0xa7, 0xd8,
- 0xb1, 0xd8, 0xa7, 0xd8, 0xaa, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd9, 0x83,
- 0xd8, 0xaa, 0xd9, 0x88, 0xd8, 0xa8, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8,
- 0xb3, 0xd8, 0xb9, 0xd9, 0x88, 0xd8, 0xaf, 0xd9, 0x8a, 0xd8, 0xa9, 0xd8, 0xa7,
- 0xd8, 0xad, 0xd8, 0xb5, 0xd8, 0xa7, 0xd8, 0xa6, 0xd9, 0x8a, 0xd8, 0xa7, 0xd8,
- 0xaa, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb9, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85,
- 0xd9, 0x8a, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb5, 0xd9, 0x88, 0xd8,
- 0xaa, 0xd9, 0x8a, 0xd8, 0xa7, 0xd8, 0xaa, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa7,
- 0xd9, 0x86, 0xd8, 0xaa, 0xd8, 0xb1, 0xd9, 0x86, 0xd8, 0xaa, 0xd8, 0xa7, 0xd9,
- 0x84, 0xd8, 0xaa, 0xd8, 0xb5, 0xd8, 0xa7, 0xd9, 0x85, 0xd9, 0x8a, 0xd9, 0x85,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa5, 0xd8, 0xb3, 0xd9, 0x84, 0xd8, 0xa7, 0xd9,
- 0x85, 0xd9, 0x8a, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd8, 0xb4, 0xd8, 0xa7,
- 0xd8, 0xb1, 0xd9, 0x83, 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd8,
- 0xb1, 0xd8, 0xa6, 0xd9, 0x8a, 0xd8, 0xa7, 0xd8, 0xaa, 0x72, 0x6f, 0x62, 0x6f,
- 0x74, 0x73, 0x22, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3d, 0x22,
- 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x66, 0x6f, 0x6f, 0x74,
- 0x65, 0x72, 0x22, 0x3e, 0x74, 0x68, 0x65, 0x20, 0x55, 0x6e, 0x69, 0x74, 0x65,
- 0x64, 0x20, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x3c, 0x69, 0x6d, 0x67, 0x20,
- 0x73, 0x72, 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x2e,
- 0x6a, 0x70, 0x67, 0x7c, 0x72, 0x69, 0x67, 0x68, 0x74, 0x7c, 0x74, 0x68, 0x75,
- 0x6d, 0x62, 0x7c, 0x2e, 0x6a, 0x73, 0x22, 0x3e, 0x3c, 0x2f, 0x73, 0x63, 0x72,
- 0x69, 0x70, 0x74, 0x3e, 0x0d, 0x0a, 0x3c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x66, 0x72,
- 0x61, 0x6d, 0x65, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x3d, 0x22, 0x30, 0x22,
- 0x20, 0x73, 0x22, 0x20, 0x2f, 0x3e, 0x0a, 0x3c, 0x6d, 0x65, 0x74, 0x61, 0x20,
- 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x64,
- 0x69, 0x76, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x66, 0x6f, 0x6e,
- 0x74, 0x2d, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x62, 0x6f, 0x6c, 0x64,
- 0x3b, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x26,
- 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e,
- 0x67, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x61, 0x72, 0x67,
- 0x69, 0x6e, 0x3a, 0x30, 0x3b, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x3a,
- 0x22, 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x6e, 0x6f, 0x66, 0x6f, 0x6c, 0x6c,
- 0x6f, 0x77, 0x22, 0x20, 0x50, 0x72, 0x65, 0x73, 0x69, 0x64, 0x65, 0x6e, 0x74,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x77, 0x65, 0x6e, 0x74,
- 0x69, 0x65, 0x74, 0x68, 0x20, 0x63, 0x65, 0x6e, 0x74, 0x75, 0x72, 0x79, 0x65,
- 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x20, 0x20, 0x3c, 0x2f, 0x70,
- 0x61, 0x67, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x20, 0x45,
- 0x78, 0x70, 0x6c, 0x6f, 0x72, 0x65, 0x72, 0x61, 0x2e, 0x61, 0x73, 0x79, 0x6e,
- 0x63, 0x20, 0x3d, 0x20, 0x74, 0x72, 0x75, 0x65, 0x3b, 0x0d, 0x0a, 0x69, 0x6e,
- 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x62, 0x6f,
- 0x75, 0x74, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x68, 0x65,
- 0x61, 0x64, 0x65, 0x72, 0x22, 0x3e, 0x22, 0x20, 0x61, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x3c, 0x61, 0x20,
- 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f,
- 0x2f, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64, 0x3d, 0x22, 0x63, 0x6f, 0x6e,
- 0x74, 0x65, 0x6e, 0x74, 0x22, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0d, 0x0a,
- 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0d, 0x0a, 0x3c, 0x64, 0x65, 0x72, 0x69,
- 0x76, 0x65, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x3c, 0x69, 0x6d, 0x67, 0x20, 0x73, 0x72, 0x63, 0x3d, 0x27, 0x68, 0x74, 0x74,
- 0x70, 0x3a, 0x2f, 0x2f, 0x61, 0x63, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67,
- 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x0a, 0x3c, 0x2f, 0x62, 0x6f,
- 0x64, 0x79, 0x3e, 0x0a, 0x3c, 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x0a, 0x73,
- 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x73, 0x69,
- 0x7a, 0x65, 0x3a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x6c, 0x61, 0x6e,
- 0x67, 0x75, 0x61, 0x67, 0x65, 0x3d, 0x22, 0x41, 0x72, 0x69, 0x61, 0x6c, 0x2c,
- 0x20, 0x48, 0x65, 0x6c, 0x76, 0x65, 0x74, 0x69, 0x63, 0x61, 0x2c, 0x3c, 0x2f,
- 0x61, 0x3e, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73,
- 0x3d, 0x22, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x3c, 0x73,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x70, 0x6f, 0x6c, 0x69, 0x74, 0x69, 0x63,
- 0x61, 0x6c, 0x20, 0x70, 0x61, 0x72, 0x74, 0x69, 0x65, 0x73, 0x74, 0x64, 0x3e,
- 0x3c, 0x2f, 0x74, 0x72, 0x3e, 0x3c, 0x2f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x3e,
- 0x3c, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f,
- 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x70, 0x72, 0x65,
- 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x72, 0x65, 0x6c, 0x3d,
- 0x22, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x68, 0x65, 0x65, 0x74, 0x22, 0x20,
- 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x77, 0x72, 0x69, 0x74,
- 0x65, 0x28, 0x27, 0x3c, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x3d, 0x22,
- 0x75, 0x74, 0x66, 0x2d, 0x38, 0x22, 0x3e, 0x0a, 0x62, 0x65, 0x67, 0x69, 0x6e,
- 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x72,
- 0x65, 0x76, 0x65, 0x61, 0x6c, 0x65, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20,
- 0x74, 0x68, 0x65, 0x74, 0x65, 0x6c, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
- 0x20, 0x73, 0x65, 0x72, 0x69, 0x65, 0x73, 0x22, 0x20, 0x72, 0x65, 0x6c, 0x3d,
- 0x22, 0x6e, 0x6f, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x22, 0x3e, 0x20, 0x74,
- 0x61, 0x72, 0x67, 0x65, 0x74, 0x3d, 0x22, 0x5f, 0x62, 0x6c, 0x61, 0x6e, 0x6b,
- 0x22, 0x3e, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68,
- 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x68, 0x74, 0x74, 0x70, 0x25, 0x33, 0x41,
- 0x25, 0x32, 0x46, 0x25, 0x32, 0x46, 0x77, 0x77, 0x77, 0x2e, 0x6d, 0x61, 0x6e,
- 0x69, 0x66, 0x65, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f,
- 0x66, 0x50, 0x72, 0x69, 0x6d, 0x65, 0x20, 0x4d, 0x69, 0x6e, 0x69, 0x73, 0x74,
- 0x65, 0x72, 0x20, 0x6f, 0x66, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x65, 0x6e, 0x63,
- 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x63, 0x6c, 0x61, 0x73,
- 0x73, 0x3d, 0x22, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x66, 0x69, 0x78, 0x22, 0x3e,
- 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0d, 0x0a, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e,
- 0x0d, 0x0a, 0x0d, 0x0a, 0x74, 0x68, 0x72, 0x65, 0x65, 0x2d, 0x64, 0x69, 0x6d,
- 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x43, 0x68, 0x75, 0x72, 0x63,
- 0x68, 0x20, 0x6f, 0x66, 0x20, 0x45, 0x6e, 0x67, 0x6c, 0x61, 0x6e, 0x64, 0x6f,
- 0x66, 0x20, 0x4e, 0x6f, 0x72, 0x74, 0x68, 0x20, 0x43, 0x61, 0x72, 0x6f, 0x6c,
- 0x69, 0x6e, 0x61, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x20, 0x6b, 0x69, 0x6c,
- 0x6f, 0x6d, 0x65, 0x74, 0x72, 0x65, 0x73, 0x2e, 0x61, 0x64, 0x64, 0x45, 0x76,
- 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x64, 0x69,
- 0x73, 0x74, 0x69, 0x6e, 0x63, 0x74, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74,
- 0x68, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x6b, 0x6e,
- 0x6f, 0x77, 0x6e, 0x20, 0x61, 0x73, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x74, 0x69,
- 0x63, 0x20, 0x41, 0x6c, 0x70, 0x68, 0x61, 0x62, 0x65, 0x74, 0x64, 0x65, 0x63,
- 0x6c, 0x61, 0x72, 0x65, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68,
- 0x65, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x64, 0x20, 0x62,
- 0x79, 0x20, 0x74, 0x68, 0x65, 0x42, 0x65, 0x6e, 0x6a, 0x61, 0x6d, 0x69, 0x6e,
- 0x20, 0x46, 0x72, 0x61, 0x6e, 0x6b, 0x6c, 0x69, 0x6e, 0x72, 0x6f, 0x6c, 0x65,
- 0x2d, 0x70, 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, 0x20, 0x67, 0x61, 0x6d, 0x65,
- 0x74, 0x68, 0x65, 0x20, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x69, 0x74,
- 0x79, 0x20, 0x6f, 0x66, 0x69, 0x6e, 0x20, 0x57, 0x65, 0x73, 0x74, 0x65, 0x72,
- 0x6e, 0x20, 0x45, 0x75, 0x72, 0x6f, 0x70, 0x65, 0x70, 0x65, 0x72, 0x73, 0x6f,
- 0x6e, 0x61, 0x6c, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x50,
- 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x47, 0x75, 0x74, 0x65, 0x6e, 0x62,
- 0x65, 0x72, 0x67, 0x72, 0x65, 0x67, 0x61, 0x72, 0x64, 0x6c, 0x65, 0x73, 0x73,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x68, 0x61, 0x73, 0x20, 0x62, 0x65,
- 0x65, 0x6e, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x6f, 0x73, 0x65, 0x64, 0x74, 0x6f,
- 0x67, 0x65, 0x74, 0x68, 0x65, 0x72, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74,
- 0x68, 0x65, 0x3e, 0x3c, 0x2f, 0x6c, 0x69, 0x3e, 0x3c, 0x6c, 0x69, 0x20, 0x63,
- 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x69, 0x6e, 0x20, 0x73, 0x6f, 0x6d, 0x65,
- 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x6d, 0x69, 0x6e,
- 0x2e, 0x6a, 0x73, 0x22, 0x3e, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x3e, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x6f, 0x70, 0x75, 0x6c,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6f, 0x66, 0x66, 0x69, 0x63, 0x69, 0x61, 0x6c,
- 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x3c, 0x69, 0x6d, 0x67,
- 0x20, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x2f,
- 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x62, 0x79,
- 0x20, 0x74, 0x68, 0x65, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x61, 0x6c, 0x20, 0x72,
- 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x63, 0x6c, 0x61, 0x73, 0x73,
- 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x63,
- 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65,
- 0x72, 0x65, 0x64, 0x71, 0x75, 0x61, 0x6e, 0x74, 0x75, 0x6d, 0x20, 0x6d, 0x65,
- 0x63, 0x68, 0x61, 0x6e, 0x69, 0x63, 0x73, 0x4e, 0x65, 0x76, 0x65, 0x72, 0x74,
- 0x68, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x6d, 0x69,
- 0x6c, 0x6c, 0x69, 0x6f, 0x6e, 0x20, 0x79, 0x65, 0x61, 0x72, 0x73, 0x20, 0x61,
- 0x67, 0x6f, 0x3c, 0x2f, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x0d, 0x0a, 0x3c, 0x2f,
- 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x0d, 0xce, 0x95, 0xce, 0xbb, 0xce, 0xbb, 0xce,
- 0xb7, 0xce, 0xbd, 0xce, 0xb9, 0xce, 0xba, 0xce, 0xac, 0x0a, 0x74, 0x61, 0x6b,
- 0x65, 0x20, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x20, 0x6f,
- 0x66, 0x61, 0x6e, 0x64, 0x2c, 0x20, 0x61, 0x63, 0x63, 0x6f, 0x72, 0x64, 0x69,
- 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74,
- 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x4d, 0x69, 0x63, 0x72,
- 0x6f, 0x73, 0x6f, 0x66, 0x74, 0x20, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73,
- 0x74, 0x68, 0x65, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x20, 0x63, 0x65, 0x6e,
- 0x74, 0x75, 0x72, 0x79, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x64, 0x69, 0x76, 0x20, 0x63,
- 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73,
- 0x68, 0x6f, 0x72, 0x74, 0x6c, 0x79, 0x20, 0x61, 0x66, 0x74, 0x65, 0x72, 0x20,
- 0x74, 0x68, 0x65, 0x6e, 0x6f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x65, 0x78,
- 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x73, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x73, 0x73, 0x65,
- 0x76, 0x65, 0x72, 0x61, 0x6c, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65,
- 0x6e, 0x74, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x77, 0x6f, 0x72, 0x6c, 0x64, 0x2e, 0x72, 0x65, 0x61, 0x63, 0x68, 0x69, 0x6e,
- 0x67, 0x20, 0x6d, 0x69, 0x6c, 0x69, 0x74, 0x61, 0x72, 0x79, 0x69, 0x73, 0x6f,
- 0x6c, 0x61, 0x74, 0x65, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68,
- 0x65, 0x6f, 0x70, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74,
- 0x6f, 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x4f, 0x6c, 0x64, 0x20,
- 0x54, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x66, 0x72, 0x69,
- 0x63, 0x61, 0x6e, 0x20, 0x41, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x61, 0x6e, 0x73,
- 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x74, 0x6f,
- 0x20, 0x74, 0x68, 0x65, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x20,
- 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x6f,
- 0x70, 0x6f, 0x6c, 0x69, 0x74, 0x61, 0x6e, 0x20, 0x61, 0x72, 0x65, 0x61, 0x6d,
- 0x61, 0x6b, 0x65, 0x73, 0x20, 0x69, 0x74, 0x20, 0x70, 0x6f, 0x73, 0x73, 0x69,
- 0x62, 0x6c, 0x65, 0x61, 0x63, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67,
- 0x65, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x61, 0x72, 0x67, 0x75, 0x61, 0x62,
- 0x6c, 0x79, 0x20, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x6f, 0x73, 0x74, 0x74, 0x79,
- 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x63, 0x73, 0x73, 0x22,
- 0x3e, 0x0a, 0x74, 0x68, 0x65, 0x20, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x72, 0x64, 0x69,
- 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x65, 0x3d,
- 0x22, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x63, 0x73, 0x73, 0x22, 0x20, 0x2f, 0x3e,
- 0x0a, 0x63, 0x6f, 0x69, 0x6e, 0x63, 0x69, 0x64, 0x65, 0x20, 0x77, 0x69, 0x74,
- 0x68, 0x20, 0x74, 0x68, 0x65, 0x74, 0x77, 0x6f, 0x2d, 0x74, 0x68, 0x69, 0x72,
- 0x64, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x44, 0x75, 0x72, 0x69,
- 0x6e, 0x67, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x2c,
- 0x64, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x20, 0x70, 0x65,
- 0x72, 0x69, 0x6f, 0x64, 0x61, 0x6e, 0x6e, 0x6f, 0x75, 0x6e, 0x63, 0x65, 0x64,
- 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x69,
- 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x61,
- 0x6e, 0x64, 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x72, 0x65, 0x63, 0x65, 0x6e,
- 0x74, 0x6c, 0x79, 0x62, 0x65, 0x6c, 0x69, 0x65, 0x76, 0x65, 0x64, 0x20, 0x74,
- 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x63, 0x6f, 0x6e, 0x73, 0x63, 0x69,
- 0x6f, 0x75, 0x73, 0x6e, 0x65, 0x73, 0x73, 0x20, 0x61, 0x6e, 0x64, 0x66, 0x6f,
- 0x72, 0x6d, 0x65, 0x72, 0x6c, 0x79, 0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x20,
- 0x61, 0x73, 0x73, 0x75, 0x72, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x20,
- 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x66, 0x69, 0x72, 0x73, 0x74, 0x20, 0x61,
- 0x70, 0x70, 0x65, 0x61, 0x72, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x6f, 0x63, 0x63,
- 0x61, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x75, 0x73, 0x65,
- 0x64, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x61, 0x62, 0x73,
- 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x3b, 0x22, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65,
- 0x74, 0x3d, 0x22, 0x5f, 0x62, 0x6c, 0x61, 0x6e, 0x6b, 0x22, 0x20, 0x70, 0x6f,
- 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69,
- 0x76, 0x65, 0x3b, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e,
- 0x3a, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x3b, 0x6a, 0x61, 0x78, 0x2f, 0x6c,
- 0x69, 0x62, 0x73, 0x2f, 0x6a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2f, 0x31, 0x2e,
- 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x63, 0x6f,
- 0x6c, 0x6f, 0x72, 0x3a, 0x23, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x61, 0x70,
- 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x61, 0x6e, 0x67,
- 0x75, 0x61, 0x67, 0x65, 0x22, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
- 0x3d, 0x22, 0x3c, 0x6d, 0x65, 0x74, 0x61, 0x20, 0x68, 0x74, 0x74, 0x70, 0x2d,
- 0x65, 0x71, 0x75, 0x69, 0x76, 0x3d, 0x22, 0x50, 0x72, 0x69, 0x76, 0x61, 0x63,
- 0x79, 0x20, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x3c, 0x2f, 0x61, 0x3e, 0x65,
- 0x28, 0x22, 0x25, 0x33, 0x43, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x73,
- 0x72, 0x63, 0x3d, 0x27, 0x22, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x3d,
- 0x22, 0x5f, 0x62, 0x6c, 0x61, 0x6e, 0x6b, 0x22, 0x3e, 0x4f, 0x6e, 0x20, 0x74,
- 0x68, 0x65, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x68, 0x61, 0x6e, 0x64,
- 0x2c, 0x2e, 0x6a, 0x70, 0x67, 0x7c, 0x74, 0x68, 0x75, 0x6d, 0x62, 0x7c, 0x72,
- 0x69, 0x67, 0x68, 0x74, 0x7c, 0x32, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c,
- 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x3c, 0x64,
- 0x69, 0x76, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x66, 0x6c, 0x6f,
- 0x61, 0x74, 0x3a, 0x6e, 0x69, 0x6e, 0x65, 0x74, 0x65, 0x65, 0x6e, 0x74, 0x68,
- 0x20, 0x63, 0x65, 0x6e, 0x74, 0x75, 0x72, 0x79, 0x3c, 0x2f, 0x62, 0x6f, 0x64,
- 0x79, 0x3e, 0x0d, 0x0a, 0x3c, 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x0d, 0x0a,
- 0x3c, 0x69, 0x6d, 0x67, 0x20, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74,
- 0x70, 0x3a, 0x2f, 0x2f, 0x73, 0x3b, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x61, 0x6c,
- 0x69, 0x67, 0x6e, 0x3a, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x6f, 0x6e,
- 0x74, 0x2d, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a, 0x20, 0x62, 0x6f, 0x6c,
- 0x64, 0x3b, 0x20, 0x41, 0x63, 0x63, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x20,
- 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72,
- 0x65, 0x6e, 0x63, 0x65, 0x20, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x22,
- 0x20, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x3d,
- 0x22, 0x30, 0x22, 0x20, 0x22, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22,
- 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x6c, 0x69, 0x6e, 0x6b,
- 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f,
- 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0x34, 0x2f, 0x6c, 0x6f, 0x6f, 0x73, 0x65, 0x2e,
- 0x64, 0x74, 0x64, 0x22, 0x3e, 0x0a, 0x64, 0x75, 0x72, 0x69, 0x6e, 0x67, 0x20,
- 0x74, 0x68, 0x69, 0x73, 0x20, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x3c, 0x2f,
- 0x74, 0x64, 0x3e, 0x3c, 0x2f, 0x74, 0x72, 0x3e, 0x3c, 0x2f, 0x74, 0x61, 0x62,
- 0x6c, 0x65, 0x3e, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x6c, 0x79, 0x20, 0x72, 0x65,
- 0x6c, 0x61, 0x74, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x66, 0x6f, 0x72, 0x20, 0x74,
- 0x68, 0x65, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x20, 0x74, 0x69, 0x6d, 0x65,
- 0x3b, 0x66, 0x6f, 0x6e, 0x74, 0x2d, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3a,
- 0x62, 0x6f, 0x6c, 0x64, 0x3b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79,
- 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, 0x3c, 0x73, 0x70,
- 0x61, 0x6e, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e,
- 0x74, 0x2d, 0x6f, 0x6e, 0x72, 0x65, 0x61, 0x64, 0x79, 0x73, 0x74, 0x61, 0x74,
- 0x65, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x09, 0x3c, 0x64, 0x69, 0x76, 0x20,
- 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x64,
- 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x6c, 0x6f, 0x63, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x2e, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x61, 0x6d,
- 0x70, 0x6c, 0x65, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x20, 0x77, 0x69,
- 0x64, 0x65, 0x20, 0x76, 0x61, 0x72, 0x69, 0x65, 0x74, 0x79, 0x20, 0x6f, 0x66,
- 0x20, 0x3c, 0x21, 0x44, 0x4f, 0x43, 0x54, 0x59, 0x50, 0x45, 0x20, 0x68, 0x74,
- 0x6d, 0x6c, 0x3e, 0x0d, 0x0a, 0x3c, 0x26, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x26,
- 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x26, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x22, 0x3e,
- 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70,
- 0x3a, 0x2f, 0x2f, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x66, 0x6c, 0x6f,
- 0x61, 0x74, 0x3a, 0x6c, 0x65, 0x66, 0x74, 0x3b, 0x63, 0x6f, 0x6e, 0x63, 0x65,
- 0x72, 0x6e, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65,
- 0x3d, 0x68, 0x74, 0x74, 0x70, 0x25, 0x33, 0x41, 0x25, 0x32, 0x46, 0x25, 0x32,
- 0x46, 0x77, 0x77, 0x77, 0x2e, 0x69, 0x6e, 0x20, 0x70, 0x6f, 0x70, 0x75, 0x6c,
- 0x61, 0x72, 0x20, 0x63, 0x75, 0x6c, 0x74, 0x75, 0x72, 0x65, 0x74, 0x79, 0x70,
- 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x63, 0x73, 0x73, 0x22, 0x20,
- 0x2f, 0x3e, 0x69, 0x74, 0x20, 0x69, 0x73, 0x20, 0x70, 0x6f, 0x73, 0x73, 0x69,
- 0x62, 0x6c, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x48, 0x61, 0x72, 0x76, 0x61, 0x72,
- 0x64, 0x20, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x69, 0x74, 0x79, 0x74,
- 0x79, 0x6c, 0x65, 0x73, 0x68, 0x65, 0x65, 0x74, 0x22, 0x20, 0x68, 0x72, 0x65,
- 0x66, 0x3d, 0x22, 0x2f, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x20,
- 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x4f, 0x78, 0x66, 0x6f,
- 0x72, 0x64, 0x20, 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x69, 0x74, 0x79,
- 0x20, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6b, 0x65, 0x79, 0x77, 0x6f,
- 0x72, 0x64, 0x73, 0x22, 0x20, 0x63, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22,
- 0x74, 0x65, 0x78, 0x74, 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3a, 0x74, 0x68,
- 0x65, 0x20, 0x55, 0x6e, 0x69, 0x74, 0x65, 0x64, 0x20, 0x4b, 0x69, 0x6e, 0x67,
- 0x64, 0x6f, 0x6d, 0x66, 0x65, 0x64, 0x65, 0x72, 0x61, 0x6c, 0x20, 0x67, 0x6f,
- 0x76, 0x65, 0x72, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x3c, 0x64, 0x69, 0x76, 0x20,
- 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e,
- 0x20, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e,
- 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x3c, 0x64, 0x69,
- 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x68, 0x65, 0x61, 0x64,
- 0x65, 0x72, 0x2e, 0x6d, 0x69, 0x6e, 0x2e, 0x6a, 0x73, 0x22, 0x3e, 0x3c, 0x2f,
- 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x64, 0x65, 0x73, 0x74, 0x72, 0x75,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x73,
- 0x6c, 0x69, 0x67, 0x68, 0x74, 0x6c, 0x79, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65,
- 0x72, 0x65, 0x6e, 0x74, 0x69, 0x6e, 0x20, 0x61, 0x63, 0x63, 0x6f, 0x72, 0x64,
- 0x61, 0x6e, 0x63, 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x74, 0x65, 0x6c, 0x65,
- 0x63, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x20, 0x74, 0x68,
- 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x6c, 0x79,
- 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x61, 0x66, 0x74, 0x65, 0x72, 0x65, 0x73,
- 0x70, 0x65, 0x63, 0x69, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x69, 0x6e, 0x20, 0x74,
- 0x68, 0x65, 0x20, 0x45, 0x75, 0x72, 0x6f, 0x70, 0x65, 0x61, 0x6e, 0x20, 0x63,
- 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x48, 0x6f, 0x77, 0x65, 0x76,
- 0x65, 0x72, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x72, 0x65, 0x20, 0x61, 0x72, 0x65,
- 0x73, 0x72, 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x73,
- 0x74, 0x61, 0x74, 0x69, 0x63, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x65,
- 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x22, 0x20, 0x73,
- 0x72, 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77,
- 0x77, 0x2e, 0x61, 0x20, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x20, 0x6e, 0x75, 0x6d,
- 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x54, 0x65, 0x6c, 0x65, 0x63, 0x6f,
- 0x6d, 0x6d, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22,
- 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x6e, 0x6f, 0x66, 0x6f, 0x6c, 0x6c, 0x6f,
- 0x77, 0x22, 0x20, 0x74, 0x48, 0x6f, 0x6c, 0x79, 0x20, 0x52, 0x6f, 0x6d, 0x61,
- 0x6e, 0x20, 0x45, 0x6d, 0x70, 0x65, 0x72, 0x6f, 0x72, 0x61, 0x6c, 0x6d, 0x6f,
- 0x73, 0x74, 0x20, 0x65, 0x78, 0x63, 0x6c, 0x75, 0x73, 0x69, 0x76, 0x65, 0x6c,
- 0x79, 0x22, 0x20, 0x62, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x3d, 0x22, 0x30, 0x22,
- 0x20, 0x61, 0x6c, 0x74, 0x3d, 0x22, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x61,
- 0x72, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x53, 0x74, 0x61, 0x74, 0x65, 0x63, 0x75,
- 0x6c, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x69, 0x6e, 0x20,
- 0x74, 0x68, 0x65, 0x43, 0x49, 0x41, 0x20, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x20,
- 0x46, 0x61, 0x63, 0x74, 0x62, 0x6f, 0x6f, 0x6b, 0x74, 0x68, 0x65, 0x20, 0x6d,
- 0x6f, 0x73, 0x74, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x61, 0x6e, 0x74,
- 0x61, 0x6e, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x61, 0x72, 0x79, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x62,
- 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x3c, 0x6c, 0x69,
- 0x3e, 0x3c, 0x65, 0x6d, 0x3e, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d,
- 0x22, 0x2f, 0x74, 0x68, 0x65, 0x20, 0x41, 0x74, 0x6c, 0x61, 0x6e, 0x74, 0x69,
- 0x63, 0x20, 0x4f, 0x63, 0x65, 0x61, 0x6e, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74,
- 0x6c, 0x79, 0x20, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x2c, 0x73,
- 0x68, 0x6f, 0x72, 0x74, 0x6c, 0x79, 0x20, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65,
- 0x20, 0x74, 0x68, 0x65, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74,
- 0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x20, 0x6f, 0x66, 0x74, 0x68, 0x65, 0x20,
- 0x4f, 0x74, 0x74, 0x6f, 0x6d, 0x61, 0x6e, 0x20, 0x45, 0x6d, 0x70, 0x69, 0x72,
- 0x65, 0x3e, 0x3c, 0x69, 0x6d, 0x67, 0x20, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x68,
- 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x41, 0x6e, 0x20, 0x49, 0x6e, 0x74, 0x72,
- 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x63, 0x6f,
- 0x6e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x20, 0x6f, 0x66, 0x20,
- 0x74, 0x68, 0x65, 0x64, 0x65, 0x70, 0x61, 0x72, 0x74, 0x75, 0x72, 0x65, 0x20,
- 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x65,
- 0x64, 0x65, 0x72, 0x61, 0x74, 0x65, 0x20, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73,
- 0x69, 0x6e, 0x64, 0x69, 0x67, 0x65, 0x6e, 0x6f, 0x75, 0x73, 0x20, 0x70, 0x65,
- 0x6f, 0x70, 0x6c, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x65, 0x64, 0x69,
- 0x6e, 0x67, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x69, 0x6e, 0x66,
- 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x20, 0x74,
- 0x68, 0x65, 0x74, 0x68, 0x65, 0x6f, 0x72, 0x69, 0x65, 0x73, 0x20, 0x68, 0x61,
- 0x76, 0x65, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x69, 0x6e, 0x76, 0x6f, 0x6c, 0x76,
- 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x64,
- 0x69, 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x74,
- 0x68, 0x72, 0x65, 0x65, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, 0x20,
- 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x69, 0x73, 0x20, 0x72,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x20, 0x66, 0x6f,
- 0x72, 0x64, 0x69, 0x73, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x20,
- 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x63, 0x6f, 0x6c, 0x6c, 0x61, 0x62, 0x6f,
- 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x77, 0x69, 0x74, 0x68, 0x77, 0x69,
- 0x64, 0x65, 0x6c, 0x79, 0x20, 0x72, 0x65, 0x67, 0x61, 0x72, 0x64, 0x65, 0x64,
- 0x20, 0x61, 0x73, 0x68, 0x69, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6d,
- 0x70, 0x6f, 0x72, 0x61, 0x72, 0x69, 0x65, 0x73, 0x66, 0x6f, 0x75, 0x6e, 0x64,
- 0x69, 0x6e, 0x67, 0x20, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66,
- 0x44, 0x6f, 0x6d, 0x69, 0x6e, 0x69, 0x63, 0x61, 0x6e, 0x20, 0x52, 0x65, 0x70,
- 0x75, 0x62, 0x6c, 0x69, 0x63, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x6c,
- 0x79, 0x20, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x74, 0x68, 0x65,
- 0x20, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x20,
- 0x6f, 0x66, 0x61, 0x72, 0x65, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x61, 0x76,
- 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x20,
- 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x72,
- 0x65, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66,
- 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72,
- 0x61, 0x6c, 0x20, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x69, 0x73, 0x20, 0x61,
- 0x6c, 0x6d, 0x6f, 0x73, 0x74, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x72, 0x65, 0x6c,
- 0x79, 0x70, 0x61, 0x73, 0x73, 0x65, 0x73, 0x20, 0x74, 0x68, 0x72, 0x6f, 0x75,
- 0x67, 0x68, 0x20, 0x74, 0x68, 0x65, 0x68, 0x61, 0x73, 0x20, 0x62, 0x65, 0x65,
- 0x6e, 0x20, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x65, 0x64, 0x63, 0x6f,
- 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x76, 0x69,
- 0x64, 0x65, 0x6f, 0x47, 0x65, 0x72, 0x6d, 0x61, 0x6e, 0x69, 0x63, 0x20, 0x6c,
- 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x73, 0x20, 0x61, 0x63, 0x63, 0x6f,
- 0x72, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20,
- 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x20, 0x66, 0x72, 0x6f,
- 0x6d, 0x20, 0x74, 0x68, 0x65, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x6c, 0x79, 0x20,
- 0x61, 0x66, 0x74, 0x65, 0x72, 0x77, 0x61, 0x72, 0x64, 0x73, 0x68, 0x72, 0x65,
- 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77,
- 0x77, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x20, 0x64, 0x65, 0x76, 0x65,
- 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x6f, 0x61, 0x72, 0x64, 0x20,
- 0x6f, 0x66, 0x20, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x3c,
- 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x73, 0x65,
- 0x61, 0x72, 0x63, 0x68, 0x7c, 0x20, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66,
- 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x49, 0x6e, 0x20, 0x70,
- 0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x2c, 0x20, 0x74, 0x68,
- 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x20, 0x66, 0x6f, 0x6f,
- 0x74, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x6f, 0x72, 0x20, 0x6f, 0x74, 0x68, 0x65,
- 0x72, 0x20, 0x73, 0x75, 0x62, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x74, 0x68,
- 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x79, 0x65,
- 0x61, 0x72, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x3c, 0x2f, 0x64, 0x69, 0x76,
- 0x3e, 0x0d, 0x0a, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0d, 0x0a, 0x0d, 0x0a,
- 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x69, 0x6e, 0x64, 0x65,
- 0x78, 0x2e, 0x70, 0x68, 0x70, 0x77, 0x61, 0x73, 0x20, 0x65, 0x73, 0x74, 0x61,
- 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x6d, 0x69, 0x6e,
- 0x2e, 0x6a, 0x73, 0x22, 0x3e, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x3e, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x65,
- 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x61, 0x20, 0x73, 0x74, 0x72, 0x6f,
- 0x6e, 0x67, 0x20, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x73,
- 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x2d,
- 0x74, 0x6f, 0x70, 0x3a, 0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74,
- 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x67, 0x72, 0x61, 0x64,
- 0x75, 0x61, 0x74, 0x65, 0x64, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68,
- 0x65, 0x54, 0x72, 0x61, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x6c,
- 0x79, 0x2c, 0x20, 0x74, 0x68, 0x65, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74,
- 0x28, 0x22, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x29, 0x3b, 0x48, 0x6f,
- 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x20,
- 0x74, 0x68, 0x65, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x3c, 0x2f, 0x64, 0x69,
- 0x76, 0x3e, 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x3b,
- 0x20, 0x6d, 0x61, 0x72, 0x67, 0x69, 0x6e, 0x2d, 0x6c, 0x65, 0x66, 0x74, 0x3a,
- 0x70, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x67,
- 0x61, 0x69, 0x6e, 0x73, 0x74, 0x30, 0x3b, 0x20, 0x76, 0x65, 0x72, 0x74, 0x69,
- 0x63, 0x61, 0x6c, 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3a, 0x55, 0x6e, 0x66,
- 0x6f, 0x72, 0x74, 0x75, 0x6e, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x2c, 0x20, 0x74,
- 0x68, 0x65, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x6d, 0x61, 0x67, 0x65,
- 0x2f, 0x78, 0x2d, 0x69, 0x63, 0x6f, 0x6e, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a,
- 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x20,
- 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x66,
- 0x69, 0x78, 0x22, 0x3e, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73,
- 0x73, 0x3d, 0x22, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x09, 0x09, 0x3c, 0x2f,
- 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x09, 0x09, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e,
- 0x0a, 0x74, 0x68, 0x65, 0x20, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x70,
- 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0xd0, 0x91, 0xd1, 0x8a, 0xd0, 0xbb, 0xd0,
- 0xb3, 0xd0, 0xb0, 0xd1, 0x80, 0xd1, 0x81, 0xd0, 0xba, 0xd0, 0xb8, 0xd0, 0xb1,
- 0xd1, 0x8a, 0xd0, 0xbb, 0xd0, 0xb3, 0xd0, 0xb0, 0xd1, 0x80, 0xd1, 0x81, 0xd0,
- 0xba, 0xd0, 0xb8, 0xd0, 0xa4, 0xd0, 0xb5, 0xd0, 0xb4, 0xd0, 0xb5, 0xd1, 0x80,
- 0xd0, 0xb0, 0xd1, 0x86, 0xd0, 0xb8, 0xd0, 0xb8, 0xd0, 0xbd, 0xd0, 0xb5, 0xd1,
- 0x81, 0xd0, 0xba, 0xd0, 0xbe, 0xd0, 0xbb, 0xd1, 0x8c, 0xd0, 0xba, 0xd0, 0xbe,
- 0xd1, 0x81, 0xd0, 0xbe, 0xd0, 0xbe, 0xd0, 0xb1, 0xd1, 0x89, 0xd0, 0xb5, 0xd0,
- 0xbd, 0xd0, 0xb8, 0xd0, 0xb5, 0xd1, 0x81, 0xd0, 0xbe, 0xd0, 0xbe, 0xd0, 0xb1,
- 0xd1, 0x89, 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xb8, 0xd1, 0x8f, 0xd0, 0xbf, 0xd1,
- 0x80, 0xd0, 0xbe, 0xd0, 0xb3, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xbc, 0xd0, 0xbc,
- 0xd1, 0x8b, 0xd0, 0x9e, 0xd1, 0x82, 0xd0, 0xbf, 0xd1, 0x80, 0xd0, 0xb0, 0xd0,
- 0xb2, 0xd0, 0xb8, 0xd1, 0x82, 0xd1, 0x8c, 0xd0, 0xb1, 0xd0, 0xb5, 0xd1, 0x81,
- 0xd0, 0xbf, 0xd0, 0xbb, 0xd0, 0xb0, 0xd1, 0x82, 0xd0, 0xbd, 0xd0, 0xbe, 0xd0,
- 0xbc, 0xd0, 0xb0, 0xd1, 0x82, 0xd0, 0xb5, 0xd1, 0x80, 0xd0, 0xb8, 0xd0, 0xb0,
- 0xd0, 0xbb, 0xd1, 0x8b, 0xd0, 0xbf, 0xd0, 0xbe, 0xd0, 0xb7, 0xd0, 0xb2, 0xd0,
- 0xbe, 0xd0, 0xbb, 0xd1, 0x8f, 0xd0, 0xb5, 0xd1, 0x82, 0xd0, 0xbf, 0xd0, 0xbe,
- 0xd1, 0x81, 0xd0, 0xbb, 0xd0, 0xb5, 0xd0, 0xb4, 0xd0, 0xbd, 0xd0, 0xb8, 0xd0,
- 0xb5, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xb7, 0xd0, 0xbb, 0xd0, 0xb8, 0xd1, 0x87,
- 0xd0, 0xbd, 0xd1, 0x8b, 0xd1, 0x85, 0xd0, 0xbf, 0xd1, 0x80, 0xd0, 0xbe, 0xd0,
- 0xb4, 0xd1, 0x83, 0xd0, 0xba, 0xd1, 0x86, 0xd0, 0xb8, 0xd0, 0xb8, 0xd0, 0xbf,
- 0xd1, 0x80, 0xd0, 0xbe, 0xd0, 0xb3, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xbc, 0xd0,
- 0xbc, 0xd0, 0xb0, 0xd0, 0xbf, 0xd0, 0xbe, 0xd0, 0xbb, 0xd0, 0xbd, 0xd0, 0xbe,
- 0xd1, 0x81, 0xd1, 0x82, 0xd1, 0x8c, 0xd1, 0x8e, 0xd0, 0xbd, 0xd0, 0xb0, 0xd1,
- 0x85, 0xd0, 0xbe, 0xd0, 0xb4, 0xd0, 0xb8, 0xd1, 0x82, 0xd1, 0x81, 0xd1, 0x8f,
- 0xd0, 0xb8, 0xd0, 0xb7, 0xd0, 0xb1, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0,
- 0xbd, 0xd0, 0xbe, 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xb0, 0xd1, 0x81, 0xd0, 0xb5,
- 0xd0, 0xbb, 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xb8, 0xd1, 0x8f, 0xd0, 0xb8, 0xd0,
- 0xb7, 0xd0, 0xbc, 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xb8,
- 0xd1, 0x8f, 0xd0, 0xba, 0xd0, 0xb0, 0xd1, 0x82, 0xd0, 0xb5, 0xd0, 0xb3, 0xd0,
- 0xbe, 0xd1, 0x80, 0xd0, 0xb8, 0xd0, 0xb8, 0xd0, 0x90, 0xd0, 0xbb, 0xd0, 0xb5,
- 0xd0, 0xba, 0xd1, 0x81, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xb4, 0xd1, 0x80, 0xe0,
- 0xa4, 0xa6, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0xb0, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xae, 0xe0, 0xa5, 0x88, 0xe0, 0xa4, 0xa8,
- 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0x85, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xaa, 0xe0,
- 0xa5, 0x8d, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0xa8, 0xe0, 0xa4, 0xad, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa4,
- 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0x85, 0xe0, 0xa4, 0xa8, 0xe0,
- 0xa5, 0x81, 0xe0, 0xa4, 0xa6, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb6, 0xe0, 0xa4,
- 0xb9, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa6,
- 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x87, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xa1, 0xe0,
- 0xa4, 0xbf, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4,
- 0xbf, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x80,
- 0xe0, 0xa4, 0x85, 0xe0, 0xa4, 0xa7, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x95, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xb5, 0xe0, 0xa5, 0x80, 0xe0, 0xa4,
- 0xa1, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xaf, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x9a,
- 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x9f, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa0, 0xe0,
- 0xa5, 0x87, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0x9a, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0x82,
- 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb6, 0xe0, 0xa4, 0xa8, 0xe0,
- 0xa4, 0xa6, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4,
- 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaa, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb0,
- 0xe0, 0xa4, 0xaf, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0x85, 0xe0,
- 0xa4, 0xa8, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0xb0, 0xe0, 0xa4, 0x91, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0x87, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0xb0, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0x9f, 0xe0, 0xa5, 0x80, 0xe0, 0xa4,
- 0xb6, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x8b,
- 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x95, 0xe0,
- 0xa4, 0xb8, 0xe0, 0xa4, 0xad, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xab, 0xe0, 0xa4,
- 0xbc, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x88, 0xe0, 0xa4, 0xb6,
- 0xe0, 0xa4, 0xb6, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa4, 0xe0,
- 0xa5, 0x87, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xaa, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4,
- 0xb0, 0xe0, 0xa4, 0xa6, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb6, 0xe0, 0xa4, 0xaa,
- 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xaf, 0xe0,
- 0xa4, 0xb0, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x82, 0xe0, 0xa4,
- 0xa6, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0xa5, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xbf, 0xe0,
- 0xa4, 0x89, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0x89, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x9a, 0xe0,
- 0xa4, 0xbf, 0xe0, 0xa4, 0x9f, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa0, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x9c, 0xe0, 0xa5, 0x8d, 0xe0,
- 0xa4, 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0xaa, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa8,
- 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x9c, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0xa1, 0xe0,
- 0xa4, 0xbc, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x85, 0xe0, 0xa4,
- 0xa8, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa6,
- 0xe0, 0xa4, 0xb6, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x87, 0xe0,
- 0xa4, 0xa3, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xb6, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4,
- 0x95, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb7, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb8,
- 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0,
- 0xa5, 0x80, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x97, 0xe0, 0xa5,
- 0x8d, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xb9, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xb0,
- 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa3, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xae, 0xe0,
- 0xa4, 0xac, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0x82, 0xe0, 0xa4, 0xa1, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0x9a, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0x9a, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x89, 0xe0,
- 0xa4, 0xaa, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xac, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4,
- 0xa7, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x82, 0xe0,
- 0xa4, 0xaa, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0x95, 0xe0, 0xa4,
- 0x89, 0xe0, 0xa4, 0xae, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xae, 0xe0, 0xa5, 0x80,
- 0xe0, 0xa4, 0xa6, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa7, 0xe0,
- 0xa5, 0x8d, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4,
- 0xb9, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0xb6, 0xe0, 0xa4, 0xac, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa6, 0xe0,
- 0xa5, 0x8b, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xae, 0xe0, 0xa5, 0x80, 0xe0, 0xa4,
- 0xa1, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x86,
- 0xe0, 0xa4, 0x88, 0xe0, 0xa4, 0xaa, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x8f, 0xe0,
- 0xa4, 0xb2, 0xe0, 0xa4, 0xae, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0xac, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0x87, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x82,
- 0xe0, 0xa4, 0x96, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0x86, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x87, 0xe0, 0xa4,
- 0xb6, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0x85, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x81,
- 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xa7, 0xe0, 0xa4, 0xac, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xbc, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0xb0, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xb5, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xa8,
- 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xaa, 0xe0, 0xa5, 0x8d, 0xe0,
- 0xa4, 0xb0, 0xe0, 0xa4, 0xae, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0x96, 0xe0, 0xa4,
- 0xaa, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xb6, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xaa, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xbf, 0xe0,
- 0xa4, 0xb5, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5,
- 0x81, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa8,
- 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x8d, 0xe0,
- 0xa4, 0xa5, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0x86, 0xe0, 0xa4, 0xaf, 0xe0, 0xa5,
- 0x8b, 0xe0, 0xa4, 0x9c, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xb8,
- 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0xb0, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd8, 0xb4, 0xd8, 0xa7, 0xd8,
- 0xb1, 0xd9, 0x83, 0xd8, 0xa7, 0xd8, 0xaa, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85,
- 0xd9, 0x86, 0xd8, 0xaa, 0xd8, 0xaf, 0xd9, 0x8a, 0xd8, 0xa7, 0xd8, 0xaa, 0xd8,
- 0xa7, 0xd9, 0x84, 0xd9, 0x83, 0xd9, 0x85, 0xd8, 0xa8, 0xd9, 0x8a, 0xd9, 0x88,
- 0xd8, 0xaa, 0xd8, 0xb1, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd8, 0xb4, 0xd8,
- 0xa7, 0xd9, 0x87, 0xd8, 0xaf, 0xd8, 0xa7, 0xd8, 0xaa, 0xd8, 0xb9, 0xd8, 0xaf,
- 0xd8, 0xaf, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb2, 0xd9, 0x88, 0xd8, 0xa7, 0xd8,
- 0xb1, 0xd8, 0xb9, 0xd8, 0xaf, 0xd8, 0xaf, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xb1,
- 0xd8, 0xaf, 0xd9, 0x88, 0xd8, 0xaf, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa5, 0xd8,
- 0xb3, 0xd9, 0x84, 0xd8, 0xa7, 0xd9, 0x85, 0xd9, 0x8a, 0xd8, 0xa9, 0xd8, 0xa7,
- 0xd9, 0x84, 0xd9, 0x81, 0xd9, 0x88, 0xd8, 0xaa, 0xd9, 0x88, 0xd8, 0xb4, 0xd9,
- 0x88, 0xd8, 0xa8, 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd8, 0xb3, 0xd8, 0xa7,
- 0xd8, 0xa8, 0xd9, 0x82, 0xd8, 0xa7, 0xd8, 0xaa, 0xd8, 0xa7, 0xd9, 0x84, 0xd9,
- 0x85, 0xd8, 0xb9, 0xd9, 0x84, 0xd9, 0x88, 0xd9, 0x85, 0xd8, 0xa7, 0xd8, 0xaa,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd8, 0xb3, 0xd9, 0x84, 0xd8, 0xb3, 0xd9,
- 0x84, 0xd8, 0xa7, 0xd8, 0xaa, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xac, 0xd8, 0xb1,
- 0xd8, 0xa7, 0xd9, 0x81, 0xd9, 0x8a, 0xd9, 0x83, 0xd8, 0xb3, 0xd8, 0xa7, 0xd9,
- 0x84, 0xd8, 0xa7, 0xd8, 0xb3, 0xd9, 0x84, 0xd8, 0xa7, 0xd9, 0x85, 0xd9, 0x8a,
- 0xd8, 0xa9, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa7, 0xd8, 0xaa, 0xd8, 0xb5, 0xd8,
- 0xa7, 0xd9, 0x84, 0xd8, 0xa7, 0xd8, 0xaa, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72,
- 0x64, 0x73, 0x22, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3d, 0x22,
- 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x31, 0x39, 0x39, 0x39, 0x2f, 0x78,
- 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x3e, 0x3c, 0x61, 0x20, 0x74, 0x61, 0x72, 0x67,
- 0x65, 0x74, 0x3d, 0x22, 0x5f, 0x62, 0x6c, 0x61, 0x6e, 0x6b, 0x22, 0x20, 0x74,
- 0x65, 0x78, 0x74, 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0x3b, 0x20, 0x63, 0x68, 0x61,
- 0x72, 0x73, 0x65, 0x74, 0x3d, 0x22, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74,
- 0x3d, 0x22, 0x5f, 0x62, 0x6c, 0x61, 0x6e, 0x6b, 0x22, 0x3e, 0x3c, 0x74, 0x61,
- 0x62, 0x6c, 0x65, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x70, 0x61, 0x64, 0x64, 0x69,
- 0x6e, 0x67, 0x3d, 0x22, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6f, 0x6d, 0x70, 0x6c,
- 0x65, 0x74, 0x65, 0x3d, 0x22, 0x6f, 0x66, 0x66, 0x22, 0x20, 0x74, 0x65, 0x78,
- 0x74, 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3a, 0x20, 0x63, 0x65, 0x6e, 0x74,
- 0x65, 0x72, 0x3b, 0x74, 0x6f, 0x20, 0x6c, 0x61, 0x73, 0x74, 0x20, 0x76, 0x65,
- 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x79, 0x20, 0x62, 0x61, 0x63, 0x6b,
- 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x3a,
- 0x20, 0x23, 0x22, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74,
- 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x2f, 0x64, 0x69, 0x76, 0x3e,
- 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x69, 0x64,
- 0x3d, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x23, 0x22, 0x20,
- 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x22, 0x3e, 0x3c, 0x69, 0x6d, 0x67,
- 0x20, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x20, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x68,
- 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x0a, 0x3c, 0x73, 0x63, 0x72, 0x69, 0x70,
- 0x74, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x3d, 0x22, 0x2f,
- 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f,
- 0x77, 0x77, 0x77, 0x2e, 0x77, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x55, 0x52,
- 0x49, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x28, 0x22, 0x20,
- 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6a, 0x61, 0x76, 0x61, 0x73, 0x63, 0x72,
- 0x69, 0x70, 0x74, 0x3a, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73,
- 0x73, 0x3d, 0x22, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x64, 0x6f, 0x63,
- 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x77, 0x72, 0x69, 0x74, 0x65, 0x28, 0x27,
- 0x3c, 0x73, 0x63, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x20,
- 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x65, 0x3b, 0x73, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x20, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a,
- 0x2f, 0x2f, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x6d, 0x61, 0x72,
- 0x67, 0x69, 0x6e, 0x2d, 0x74, 0x6f, 0x70, 0x3a, 0x2e, 0x6d, 0x69, 0x6e, 0x2e,
- 0x6a, 0x73, 0x22, 0x3e, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e,
- 0x0a, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20,
- 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67,
- 0x2f, 0x31, 0x39, 0x39, 0x39, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x20,
- 0x0a, 0x0d, 0x0a, 0x3c, 0x2f, 0x62, 0x6f, 0x64, 0x79, 0x3e, 0x0d, 0x0a, 0x3c,
- 0x2f, 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x63,
- 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x2f,
- 0x22, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x3d, 0x22, 0x5f, 0x62, 0x6c,
- 0x61, 0x6e, 0x6b, 0x22, 0x3e, 0x3c, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x68, 0x72,
- 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x65, 0x6e,
- 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x75, 0x74, 0x66, 0x2d, 0x38,
- 0x22, 0x3f, 0x3e, 0x0a, 0x77, 0x2e, 0x61, 0x64, 0x64, 0x45, 0x76, 0x65, 0x6e,
- 0x74, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x65, 0x72, 0x3f, 0x61, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77,
- 0x77, 0x77, 0x2e, 0x69, 0x63, 0x6f, 0x6e, 0x22, 0x20, 0x68, 0x72, 0x65, 0x66,
- 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x20, 0x73, 0x74, 0x79,
- 0x6c, 0x65, 0x3d, 0x22, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e,
- 0x64, 0x3a, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2f,
- 0x63, 0x73, 0x73, 0x22, 0x20, 0x2f, 0x3e, 0x0a, 0x6d, 0x65, 0x74, 0x61, 0x20,
- 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x3d, 0x22, 0x6f, 0x67, 0x3a,
- 0x74, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d,
- 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65,
- 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x3a,
- 0x74, 0x68, 0x65, 0x20, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65,
- 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x68, 0x65,
- 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x68,
- 0x74, 0x6d, 0x6c, 0x3b, 0x20, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x3d,
- 0x75, 0x74, 0x66, 0x2d, 0x38, 0x69, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69,
- 0x64, 0x65, 0x72, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x62, 0x65, 0x74, 0x61,
- 0x62, 0x6c, 0x65, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3d, 0x22, 0x31, 0x30,
- 0x30, 0x25, 0x22, 0x20, 0x49, 0x6e, 0x20, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69,
- 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6e,
- 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x74,
- 0x68, 0x65, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65,
- 0x73, 0x20, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x64, 0x65, 0x76, 0x65,
- 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68,
- 0x65, 0x20, 0x49, 0x74, 0x20, 0x69, 0x73, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x72,
- 0x74, 0x61, 0x6e, 0x74, 0x20, 0x74, 0x6f, 0x20, 0x3c, 0x2f, 0x73, 0x63, 0x72,
- 0x69, 0x70, 0x74, 0x3e, 0x0a, 0x0a, 0x3c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x20, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x66, 0x6f, 0x6e, 0x74,
- 0x2d, 0x73, 0x69, 0x7a, 0x65, 0x3a, 0x31, 0x3e, 0x3c, 0x2f, 0x73, 0x70, 0x61,
- 0x6e, 0x3e, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x69, 0x64, 0x3d, 0x67, 0x62,
- 0x4c, 0x69, 0x62, 0x72, 0x61, 0x72, 0x79, 0x20, 0x6f, 0x66, 0x20, 0x43, 0x6f,
- 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x3c, 0x69, 0x6d, 0x67, 0x20, 0x73, 0x72,
- 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x69, 0x6d, 0x45,
- 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x63, 0x61, 0x64, 0x65, 0x6d, 0x79, 0x20,
- 0x6f, 0x66, 0x20, 0x53, 0x63, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x64, 0x69,
- 0x76, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x70,
- 0x6c, 0x61, 0x79, 0x3a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x2e, 0x67, 0x65,
- 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x79, 0x49, 0x64, 0x28,
- 0x69, 0x64, 0x29, 0x69, 0x6e, 0x20, 0x63, 0x6f, 0x6e, 0x6a, 0x75, 0x6e, 0x63,
- 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x77, 0x69, 0x74, 0x68, 0x45, 0x6c, 0x65, 0x6d,
- 0x65, 0x6e, 0x74, 0x28, 0x27, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x27, 0x29,
- 0x3b, 0x20, 0x3c, 0x6d, 0x65, 0x74, 0x61, 0x20, 0x70, 0x72, 0x6f, 0x70, 0x65,
- 0x72, 0x74, 0x79, 0x3d, 0x22, 0x6f, 0x67, 0x3a, 0xd0, 0x91, 0xd1, 0x8a, 0xd0,
- 0xbb, 0xd0, 0xb3, 0xd0, 0xb0, 0xd1, 0x80, 0xd1, 0x81, 0xd0, 0xba, 0xd0, 0xb8,
- 0x0a, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22,
- 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x3e, 0x50, 0x72, 0x69, 0x76, 0x61,
- 0x63, 0x79, 0x20, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x3c, 0x2f, 0x61, 0x3e,
- 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x69, 0x73, 0x74, 0x65, 0x72, 0x65, 0x64, 0x20,
- 0x62, 0x79, 0x20, 0x74, 0x68, 0x65, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53,
- 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73,
- 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x26, 0x71, 0x75, 0x6f, 0x74, 0x3b, 0x6d, 0x61,
- 0x72, 0x67, 0x69, 0x6e, 0x3a, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x2f,
- 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x3e, 0x3c,
- 0x69, 0x6d, 0x67, 0x20, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70,
- 0x3a, 0x2f, 0x2f, 0x69, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x26, 0x71,
- 0x75, 0x6f, 0x74, 0x3b, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x3a, 0x72, 0x65, 0x66,
- 0x65, 0x72, 0x72, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x73, 0x20, 0x74,
- 0x68, 0x65, 0x20, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x20, 0x70, 0x6f, 0x70, 0x75,
- 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x69, 0x6e, 0x20, 0x57,
- 0x61, 0x73, 0x68, 0x69, 0x6e, 0x67, 0x74, 0x6f, 0x6e, 0x2c, 0x20, 0x44, 0x2e,
- 0x43, 0x2e, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x62, 0x61, 0x63,
- 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x61, 0x6d, 0x6f, 0x6e, 0x67,
- 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x74, 0x68, 0x69, 0x6e, 0x67, 0x73,
- 0x2c, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63,
- 0x69, 0x70, 0x61, 0x74, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65,
- 0x74, 0x68, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66,
- 0x69, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x66,
- 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x63, 0x68, 0x61, 0x72,
- 0x61, 0x63, 0x74, 0x65, 0x72, 0x20, 0x4f, 0x78, 0x66, 0x6f, 0x72, 0x64, 0x20,
- 0x55, 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x69, 0x74, 0x79, 0x20, 0x6d, 0x69,
- 0x73, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x69, 0x6e,
- 0x67, 0x20, 0x6f, 0x66, 0x54, 0x68, 0x65, 0x72, 0x65, 0x20, 0x61, 0x72, 0x65,
- 0x2c, 0x20, 0x68, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, 0x73, 0x74, 0x79,
- 0x6c, 0x65, 0x73, 0x68, 0x65, 0x65, 0x74, 0x22, 0x20, 0x68, 0x72, 0x65, 0x66,
- 0x3d, 0x22, 0x2f, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x62, 0x69, 0x61, 0x20, 0x55,
- 0x6e, 0x69, 0x76, 0x65, 0x72, 0x73, 0x69, 0x74, 0x79, 0x65, 0x78, 0x70, 0x61,
- 0x6e, 0x64, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x69, 0x6e, 0x63, 0x6c, 0x75,
- 0x64, 0x65, 0x75, 0x73, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x72, 0x65, 0x66,
- 0x65, 0x72, 0x72, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x69, 0x6e, 0x64, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68,
- 0x65, 0x68, 0x61, 0x76, 0x65, 0x20, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74,
- 0x65, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x61, 0x66, 0x66, 0x69, 0x6c, 0x69,
- 0x61, 0x74, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65,
- 0x63, 0x6f, 0x72, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62,
- 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20,
- 0x6f, 0x66, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x3e,
- 0x3c, 0x2f, 0x74, 0x64, 0x3e, 0x3c, 0x2f, 0x74, 0x72, 0x3e, 0x3c, 0x2f, 0x74,
- 0x61, 0x62, 0x6c, 0x65, 0x3e, 0x52, 0x65, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63,
- 0x20, 0x6f, 0x66, 0x20, 0x49, 0x72, 0x65, 0x6c, 0x61, 0x6e, 0x64, 0x0a, 0x3c,
- 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0a, 0x3c, 0x73, 0x63, 0x72,
- 0x69, 0x70, 0x74, 0x20, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x20, 0x74, 0x68, 0x65,
- 0x20, 0x69, 0x6e, 0x66, 0x6c, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x63, 0x6f, 0x6e,
- 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x74, 0x6f, 0x20,
- 0x74, 0x68, 0x65, 0x4f, 0x66, 0x66, 0x69, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x77,
- 0x65, 0x62, 0x73, 0x69, 0x74, 0x65, 0x20, 0x6f, 0x66, 0x68, 0x65, 0x61, 0x64,
- 0x71, 0x75, 0x61, 0x72, 0x74, 0x65, 0x72, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74,
- 0x68, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x64, 0x20, 0x61, 0x72,
- 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x69, 0x6d, 0x70, 0x6c, 0x69,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68,
- 0x65, 0x68, 0x61, 0x76, 0x65, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x20, 0x64, 0x65,
- 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x64, 0x46, 0x65, 0x64, 0x65, 0x72, 0x61,
- 0x6c, 0x20, 0x52, 0x65, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20, 0x6f, 0x66,
- 0x62, 0x65, 0x63, 0x61, 0x6d, 0x65, 0x20, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x61,
- 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x79, 0x63, 0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x4e,
- 0x6f, 0x74, 0x65, 0x2c, 0x20, 0x68, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c,
- 0x20, 0x74, 0x68, 0x61, 0x74, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x20,
- 0x74, 0x6f, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x63, 0x61,
- 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x20, 0x6f, 0x66,
- 0x20, 0x74, 0x68, 0x65, 0x61, 0x63, 0x63, 0x6f, 0x72, 0x64, 0x61, 0x6e, 0x63,
- 0x65, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x70, 0x61, 0x72,
- 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x20, 0x69, 0x6e, 0x20,
- 0x74, 0x68, 0x65, 0x66, 0x75, 0x72, 0x74, 0x68, 0x65, 0x72, 0x20, 0x64, 0x65,
- 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d, 0x65, 0x6e, 0x74, 0x75, 0x6e, 0x64, 0x65,
- 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69,
- 0x6f, 0x6e, 0x69, 0x73, 0x20, 0x6f, 0x66, 0x74, 0x65, 0x6e, 0x20, 0x63, 0x6f,
- 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x65, 0x64, 0x68, 0x69, 0x73, 0x20, 0x79,
- 0x6f, 0x75, 0x6e, 0x67, 0x65, 0x72, 0x20, 0x62, 0x72, 0x6f, 0x74, 0x68, 0x65,
- 0x72, 0x3c, 0x2f, 0x74, 0x64, 0x3e, 0x3c, 0x2f, 0x74, 0x72, 0x3e, 0x3c, 0x2f,
- 0x74, 0x61, 0x62, 0x6c, 0x65, 0x3e, 0x3c, 0x61, 0x20, 0x68, 0x74, 0x74, 0x70,
- 0x2d, 0x65, 0x71, 0x75, 0x69, 0x76, 0x3d, 0x22, 0x58, 0x2d, 0x55, 0x41, 0x2d,
- 0x70, 0x68, 0x79, 0x73, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x70, 0x72, 0x6f, 0x70,
- 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x6f, 0x66, 0x20, 0x42, 0x72, 0x69, 0x74,
- 0x69, 0x73, 0x68, 0x20, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x62, 0x69, 0x61, 0x68,
- 0x61, 0x73, 0x20, 0x62, 0x65, 0x65, 0x6e, 0x20, 0x63, 0x72, 0x69, 0x74, 0x69,
- 0x63, 0x69, 0x7a, 0x65, 0x64, 0x28, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68,
- 0x65, 0x20, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74,
- 0x20, 0x74, 0x68, 0x65, 0x70, 0x61, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x74,
- 0x68, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x74, 0x68, 0x65, 0x30, 0x22, 0x20,
- 0x63, 0x65, 0x6c, 0x6c, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x3d, 0x22,
- 0x30, 0x22, 0x20, 0x74, 0x68, 0x6f, 0x75, 0x73, 0x61, 0x6e, 0x64, 0x73, 0x20,
- 0x6f, 0x66, 0x20, 0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x72, 0x65, 0x64, 0x69,
- 0x72, 0x65, 0x63, 0x74, 0x73, 0x20, 0x68, 0x65, 0x72, 0x65, 0x2e, 0x20, 0x46,
- 0x6f, 0x72, 0x68, 0x61, 0x76, 0x65, 0x20, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72,
- 0x65, 0x6e, 0x20, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x25, 0x33, 0x45, 0x25, 0x33,
- 0x43, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x25, 0x33, 0x45, 0x22, 0x29,
- 0x29, 0x3b, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74,
- 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x3c, 0x6c, 0x69, 0x3e,
- 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70,
- 0x3a, 0x2f, 0x2f, 0x73, 0x69, 0x74, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x22,
- 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3d, 0x22, 0x74, 0x65, 0x78,
- 0x74, 0x2d, 0x64, 0x65, 0x63, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a,
- 0x6e, 0x6f, 0x6e, 0x65, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x64, 0x69,
- 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x20, 0x6e, 0x6f, 0x6e, 0x65, 0x3c, 0x6d,
- 0x65, 0x74, 0x61, 0x20, 0x68, 0x74, 0x74, 0x70, 0x2d, 0x65, 0x71, 0x75, 0x69,
- 0x76, 0x3d, 0x22, 0x58, 0x2d, 0x6e, 0x65, 0x77, 0x20, 0x44, 0x61, 0x74, 0x65,
- 0x28, 0x29, 0x2e, 0x67, 0x65, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x28, 0x29, 0x20,
- 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x78,
- 0x2d, 0x69, 0x63, 0x6f, 0x6e, 0x22, 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e,
- 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22,
- 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x3d, 0x22, 0x6a, 0x61, 0x76,
- 0x61, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77,
- 0x2e, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x68, 0x72, 0x65,
- 0x66, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x6a, 0x61, 0x76,
- 0x61, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3a, 0x2d, 0x2d, 0x3e, 0x0d, 0x0a,
- 0x3c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d,
- 0x22, 0x74, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x27, 0x68, 0x74,
- 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x68, 0x6f, 0x72, 0x74,
- 0x63, 0x75, 0x74, 0x20, 0x69, 0x63, 0x6f, 0x6e, 0x22, 0x20, 0x68, 0x72, 0x65,
- 0x66, 0x3d, 0x22, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0d, 0x0a, 0x3c, 0x64,
- 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x3c, 0x73, 0x63,
- 0x72, 0x69, 0x70, 0x74, 0x20, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74,
- 0x70, 0x3a, 0x2f, 0x2f, 0x22, 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x73, 0x74,
- 0x79, 0x6c, 0x65, 0x73, 0x68, 0x65, 0x65, 0x74, 0x22, 0x20, 0x74, 0x3c, 0x2f,
- 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x3c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20,
- 0x74, 0x79, 0x70, 0x65, 0x3d, 0x2f, 0x61, 0x3e, 0x20, 0x3c, 0x61, 0x20, 0x68,
- 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x20,
- 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x61, 0x72,
- 0x65, 0x6e, 0x63, 0x79, 0x3d, 0x22, 0x58, 0x2d, 0x55, 0x41, 0x2d, 0x43, 0x6f,
- 0x6d, 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x22, 0x20, 0x63, 0x6f, 0x6e,
- 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x68, 0x69, 0x70, 0x20,
- 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x0a, 0x3c, 0x2f, 0x73, 0x63, 0x72,
- 0x69, 0x70, 0x74, 0x3e, 0x0d, 0x0a, 0x3c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x20, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x6c, 0x69, 0x3e, 0x3c, 0x2f, 0x75,
- 0x6c, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x61, 0x73, 0x73, 0x6f, 0x63,
- 0x69, 0x61, 0x74, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68,
- 0x65, 0x20, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x69, 0x6e, 0x67,
- 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x3c, 0x2f, 0x61, 0x3e,
- 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70,
- 0x3a, 0x2f, 0x2f, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x6c, 0x69, 0x3e, 0x3c,
- 0x6c, 0x69, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x66, 0x6f, 0x72,
- 0x6d, 0x20, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x68, 0x74, 0x74,
- 0x70, 0x3a, 0x2f, 0x2f, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x73, 0x74, 0x79, 0x6c,
- 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x74, 0x79,
- 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d,
- 0x65, 0x3d, 0x22, 0x71, 0x22, 0x3c, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x20, 0x77,
- 0x69, 0x64, 0x74, 0x68, 0x3d, 0x22, 0x31, 0x30, 0x30, 0x25, 0x22, 0x20, 0x62,
- 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x70, 0x6f, 0x73,
- 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x22, 0x20, 0x62, 0x6f, 0x72, 0x64, 0x65,
- 0x72, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3d, 0x22,
- 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x63, 0x75, 0x74,
- 0x20, 0x69, 0x63, 0x6f, 0x6e, 0x22, 0x20, 0x68, 0x36, 0x3e, 0x3c, 0x75, 0x6c,
- 0x3e, 0x3c, 0x6c, 0x69, 0x3e, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d,
- 0x22, 0x20, 0x20, 0x3c, 0x6d, 0x65, 0x74, 0x61, 0x20, 0x68, 0x74, 0x74, 0x70,
- 0x2d, 0x65, 0x71, 0x75, 0x69, 0x76, 0x3d, 0x22, 0x63, 0x73, 0x73, 0x22, 0x20,
- 0x6d, 0x65, 0x64, 0x69, 0x61, 0x3d, 0x22, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e,
- 0x22, 0x20, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x69, 0x62, 0x6c, 0x65,
- 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x65, 0x20, 0x22, 0x20, 0x74, 0x79,
- 0x70, 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x2f, 0x22, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x62,
- 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2d, 0x68, 0x74, 0x6d,
- 0x6c, 0x3b, 0x20, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x3d, 0x75, 0x74,
- 0x66, 0x2d, 0x38, 0x22, 0x20, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x74, 0x72, 0x61,
- 0x6e, 0x73, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x63, 0x79, 0x3d, 0x22, 0x73, 0x74,
- 0x79, 0x6c, 0x65, 0x73, 0x68, 0x65, 0x65, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70,
- 0x65, 0x3d, 0x22, 0x74, 0x65, 0x0d, 0x0a, 0x3c, 0x6d, 0x65, 0x74, 0x61, 0x20,
- 0x68, 0x74, 0x74, 0x70, 0x2d, 0x65, 0x71, 0x75, 0x69, 0x76, 0x3d, 0x22, 0x3e,
- 0x3c, 0x2f, 0x73, 0x70, 0x61, 0x6e, 0x3e, 0x3c, 0x73, 0x70, 0x61, 0x6e, 0x20,
- 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x63, 0x65, 0x6c,
- 0x6c, 0x73, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x30, 0x22, 0x3e,
- 0x3b, 0x0a, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0a, 0x3c,
- 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x74, 0x69,
- 0x6d, 0x65, 0x73, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x20, 0x74, 0x68,
- 0x65, 0x64, 0x6f, 0x65, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6e, 0x65, 0x63,
- 0x65, 0x73, 0x73, 0x61, 0x72, 0x69, 0x6c, 0x79, 0x46, 0x6f, 0x72, 0x20, 0x6d,
- 0x6f, 0x72, 0x65, 0x20, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x62, 0x65, 0x67, 0x69,
- 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x66, 0x20, 0x3c, 0x21, 0x44, 0x4f,
- 0x43, 0x54, 0x59, 0x50, 0x45, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x3c, 0x68,
- 0x74, 0x6d, 0x6c, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72,
- 0x6c, 0x79, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, 0x79, 0x70,
- 0x65, 0x3d, 0x22, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x22, 0x20, 0x6e, 0x61,
- 0x6d, 0x65, 0x3d, 0x22, 0x6a, 0x61, 0x76, 0x61, 0x73, 0x63, 0x72, 0x69, 0x70,
- 0x74, 0x3a, 0x76, 0x6f, 0x69, 0x64, 0x28, 0x30, 0x29, 0x3b, 0x22, 0x65, 0x66,
- 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x6e, 0x65, 0x73, 0x73, 0x20, 0x6f,
- 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6f, 0x6d,
- 0x70, 0x6c, 0x65, 0x74, 0x65, 0x3d, 0x22, 0x6f, 0x66, 0x66, 0x22, 0x20, 0x67,
- 0x65, 0x6e, 0x65, 0x72, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x63, 0x6f, 0x6e, 0x73,
- 0x69, 0x64, 0x65, 0x72, 0x65, 0x64, 0x3e, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74,
- 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20,
- 0x22, 0x3e, 0x3c, 0x2f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3e, 0x0d, 0x0a,
- 0x3c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x74, 0x68, 0x72, 0x6f, 0x75, 0x67,
- 0x68, 0x6f, 0x75, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x77, 0x6f, 0x72, 0x6c,
- 0x64, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x20, 0x6d, 0x69, 0x73, 0x63, 0x6f,
- 0x6e, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x73, 0x73, 0x6f, 0x63,
- 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74,
- 0x68, 0x65, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x3c, 0x2f, 0x64, 0x69,
- 0x76, 0x3e, 0x0a, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x64, 0x75, 0x72, 0x69,
- 0x6e, 0x67, 0x20, 0x68, 0x69, 0x73, 0x20, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69,
- 0x6d, 0x65, 0x2c, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64,
- 0x69, 0x6e, 0x67, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x74, 0x79, 0x70,
- 0x65, 0x3d, 0x22, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x78, 0x2d, 0x69, 0x63,
- 0x6f, 0x6e, 0x22, 0x20, 0x61, 0x6e, 0x20, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x61,
- 0x73, 0x69, 0x6e, 0x67, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x64, 0x69,
- 0x70, 0x6c, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x20, 0x72, 0x65, 0x6c, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x61, 0x72, 0x65, 0x20, 0x6f, 0x66, 0x74, 0x65,
- 0x6e, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x65, 0x64, 0x6d,
- 0x65, 0x74, 0x61, 0x20, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x3d, 0x22,
- 0x75, 0x74, 0x66, 0x2d, 0x38, 0x22, 0x20, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74,
- 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22, 0x20,
- 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x73, 0x20, 0x69, 0x6e, 0x63, 0x6c,
- 0x75, 0x64, 0x65, 0x20, 0x74, 0x68, 0x65, 0x22, 0x3e, 0x3c, 0x69, 0x6d, 0x67,
- 0x20, 0x73, 0x72, 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f,
- 0x69, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x74, 0x68, 0x65, 0x20, 0x65,
- 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x20,
- 0x6f, 0x66, 0x0a, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x3c, 0x64, 0x69,
- 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x22, 0x26, 0x61, 0x6d, 0x70,
- 0x3b, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x26, 0x61, 0x6d, 0x70, 0x3b, 0x6e, 0x62,
- 0x73, 0x70, 0x3b, 0x74, 0x6f, 0x20, 0x64, 0x65, 0x74, 0x65, 0x72, 0x6d, 0x69,
- 0x6e, 0x65, 0x20, 0x77, 0x68, 0x65, 0x74, 0x68, 0x65, 0x72, 0x71, 0x75, 0x69,
- 0x74, 0x65, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x20,
- 0x66, 0x72, 0x6f, 0x6d, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x64, 0x20, 0x74, 0x68,
- 0x65, 0x20, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x64, 0x69,
- 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x20, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65,
- 0x6e, 0x20, 0x74, 0x68, 0x65, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x69, 0x62, 0x75,
- 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x63,
- 0x6f, 0x6e, 0x66, 0x6c, 0x69, 0x63, 0x74, 0x20, 0x62, 0x65, 0x74, 0x77, 0x65,
- 0x65, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x77, 0x69, 0x64, 0x65, 0x6c, 0x79, 0x20,
- 0x63, 0x6f, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x72, 0x65, 0x64, 0x20, 0x74, 0x6f,
- 0x77, 0x61, 0x73, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68,
- 0x65, 0x20, 0x66, 0x69, 0x72, 0x73, 0x74, 0x77, 0x69, 0x74, 0x68, 0x20, 0x76,
- 0x61, 0x72, 0x79, 0x69, 0x6e, 0x67, 0x20, 0x64, 0x65, 0x67, 0x72, 0x65, 0x65,
- 0x73, 0x68, 0x61, 0x76, 0x65, 0x20, 0x73, 0x70, 0x65, 0x63, 0x75, 0x6c, 0x61,
- 0x74, 0x65, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x28, 0x64, 0x6f, 0x63, 0x75,
- 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65,
- 0x6e, 0x74, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x74, 0x69,
- 0x6e, 0x67, 0x20, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x6f, 0x72, 0x69, 0x67,
- 0x69, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f,
- 0x70, 0x65, 0x64, 0x65, 0x74, 0x61, 0x20, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65,
- 0x74, 0x3d, 0x22, 0x75, 0x74, 0x66, 0x2d, 0x38, 0x22, 0x3e, 0x20, 0x74, 0x79,
- 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x63, 0x73, 0x73, 0x22,
- 0x20, 0x2f, 0x3e, 0x0a, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x63, 0x68, 0x61, 0x6e,
- 0x67, 0x65, 0x61, 0x62, 0x6c, 0x79, 0x20, 0x77, 0x69, 0x74, 0x68, 0x6d, 0x6f,
- 0x72, 0x65, 0x20, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x6c, 0x79, 0x20, 0x72, 0x65,
- 0x6c, 0x61, 0x74, 0x65, 0x64, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x61,
- 0x6e, 0x64, 0x20, 0x70, 0x6f, 0x6c, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x74,
- 0x68, 0x61, 0x74, 0x20, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x6f, 0x74, 0x68,
- 0x65, 0x72, 0x77, 0x69, 0x73, 0x65, 0x70, 0x65, 0x72, 0x70, 0x65, 0x6e, 0x64,
- 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65,
- 0x73, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74,
- 0x65, 0x78, 0x74, 0x2f, 0x63, 0x73, 0x73, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22,
- 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d,
- 0x22, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x69, 0x65, 0x73, 0x20, 0x72, 0x65, 0x73,
- 0x69, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x69, 0x6e, 0x64, 0x65, 0x76, 0x65, 0x6c,
- 0x6f, 0x70, 0x69, 0x6e, 0x67, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x69,
- 0x65, 0x73, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x20, 0x70, 0x72,
- 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x6d, 0x69, 0x6e, 0x67, 0x65, 0x63, 0x6f, 0x6e,
- 0x6f, 0x6d, 0x69, 0x63, 0x20, 0x64, 0x65, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x6d,
- 0x65, 0x6e, 0x74, 0x64, 0x65, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x66, 0x6f, 0x72,
- 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61,
- 0x74, 0x69, 0x6f, 0x6e, 0x6f, 0x6e, 0x20, 0x73, 0x65, 0x76, 0x65, 0x72, 0x61,
- 0x6c, 0x20, 0x6f, 0x63, 0x63, 0x61, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x70, 0x6f,
- 0x72, 0x74, 0x75, 0x67, 0x75, 0xc3, 0xaa, 0x73, 0x20, 0x28, 0x45, 0x75, 0x72,
- 0x6f, 0x70, 0x65, 0x75, 0x29, 0xd0, 0xa3, 0xd0, 0xba, 0xd1, 0x80, 0xd0, 0xb0,
- 0xd1, 0x97, 0xd0, 0xbd, 0xd1, 0x81, 0xd1, 0x8c, 0xd0, 0xba, 0xd0, 0xb0, 0xd1,
- 0x83, 0xd0, 0xba, 0xd1, 0x80, 0xd0, 0xb0, 0xd1, 0x97, 0xd0, 0xbd, 0xd1, 0x81,
- 0xd1, 0x8c, 0xd0, 0xba, 0xd0, 0xb0, 0xd0, 0xa0, 0xd0, 0xbe, 0xd1, 0x81, 0xd1,
- 0x81, 0xd0, 0xb8, 0xd0, 0xb9, 0xd1, 0x81, 0xd0, 0xba, 0xd0, 0xbe, 0xd0, 0xb9,
- 0xd0, 0xbc, 0xd0, 0xb0, 0xd1, 0x82, 0xd0, 0xb5, 0xd1, 0x80, 0xd0, 0xb8, 0xd0,
- 0xb0, 0xd0, 0xbb, 0xd0, 0xbe, 0xd0, 0xb2, 0xd0, 0xb8, 0xd0, 0xbd, 0xd1, 0x84,
- 0xd0, 0xbe, 0xd1, 0x80, 0xd0, 0xbc, 0xd0, 0xb0, 0xd1, 0x86, 0xd0, 0xb8, 0xd0,
- 0xb8, 0xd1, 0x83, 0xd0, 0xbf, 0xd1, 0x80, 0xd0, 0xb0, 0xd0, 0xb2, 0xd0, 0xbb,
- 0xd0, 0xb5, 0xd0, 0xbd, 0xd0, 0xb8, 0xd1, 0x8f, 0xd0, 0xbd, 0xd0, 0xb5, 0xd0,
- 0xbe, 0xd0, 0xb1, 0xd1, 0x85, 0xd0, 0xbe, 0xd0, 0xb4, 0xd0, 0xb8, 0xd0, 0xbc,
- 0xd0, 0xbe, 0xd0, 0xb8, 0xd0, 0xbd, 0xd1, 0x84, 0xd0, 0xbe, 0xd1, 0x80, 0xd0,
- 0xbc, 0xd0, 0xb0, 0xd1, 0x86, 0xd0, 0xb8, 0xd1, 0x8f, 0xd0, 0x98, 0xd0, 0xbd,
- 0xd1, 0x84, 0xd0, 0xbe, 0xd1, 0x80, 0xd0, 0xbc, 0xd0, 0xb0, 0xd1, 0x86, 0xd0,
- 0xb8, 0xd1, 0x8f, 0xd0, 0xa0, 0xd0, 0xb5, 0xd1, 0x81, 0xd0, 0xbf, 0xd1, 0x83,
- 0xd0, 0xb1, 0xd0, 0xbb, 0xd0, 0xb8, 0xd0, 0xba, 0xd0, 0xb8, 0xd0, 0xba, 0xd0,
- 0xbe, 0xd0, 0xbb, 0xd0, 0xb8, 0xd1, 0x87, 0xd0, 0xb5, 0xd1, 0x81, 0xd1, 0x82,
- 0xd0, 0xb2, 0xd0, 0xbe, 0xd0, 0xb8, 0xd0, 0xbd, 0xd1, 0x84, 0xd0, 0xbe, 0xd1,
- 0x80, 0xd0, 0xbc, 0xd0, 0xb0, 0xd1, 0x86, 0xd0, 0xb8, 0xd1, 0x8e, 0xd1, 0x82,
- 0xd0, 0xb5, 0xd1, 0x80, 0xd1, 0x80, 0xd0, 0xb8, 0xd1, 0x82, 0xd0, 0xbe, 0xd1,
- 0x80, 0xd0, 0xb8, 0xd0, 0xb8, 0xd0, 0xb4, 0xd0, 0xbe, 0xd1, 0x81, 0xd1, 0x82,
- 0xd0, 0xb0, 0xd1, 0x82, 0xd0, 0xbe, 0xd1, 0x87, 0xd0, 0xbd, 0xd0, 0xbe, 0xd8,
- 0xa7, 0xd9, 0x84, 0xd9, 0x85, 0xd8, 0xaa, 0xd9, 0x88, 0xd8, 0xa7, 0xd8, 0xac,
- 0xd8, 0xaf, 0xd9, 0x88, 0xd9, 0x86, 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa7, 0xd8,
- 0xb4, 0xd8, 0xaa, 0xd8, 0xb1, 0xd8, 0xa7, 0xd9, 0x83, 0xd8, 0xa7, 0xd8, 0xaa,
- 0xd8, 0xa7, 0xd9, 0x84, 0xd8, 0xa7, 0xd9, 0x82, 0xd8, 0xaa, 0xd8, 0xb1, 0xd8,
- 0xa7, 0xd8, 0xad, 0xd8, 0xa7, 0xd8, 0xaa, 0x68, 0x74, 0x6d, 0x6c, 0x3b, 0x20,
- 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x3d, 0x55, 0x54, 0x46, 0x2d, 0x38,
- 0x22, 0x20, 0x73, 0x65, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x28,
- 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x28, 0x29, 0x64, 0x69, 0x73,
- 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x2d, 0x62,
- 0x6c, 0x6f, 0x63, 0x6b, 0x3b, 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74,
- 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x22, 0x20,
- 0x74, 0x79, 0x70, 0x65, 0x20, 0x3d, 0x20, 0x27, 0x74, 0x65, 0x78, 0x74, 0x2f,
- 0x6a, 0x61, 0x76, 0x61, 0x73, 0x63, 0x72, 0x69, 0x3c, 0x69, 0x6d, 0x67, 0x20,
- 0x73, 0x72, 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77,
- 0x77, 0x77, 0x2e, 0x22, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f,
- 0x77, 0x77, 0x77, 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x73, 0x68,
- 0x6f, 0x72, 0x74, 0x63, 0x75, 0x74, 0x20, 0x69, 0x63, 0x6f, 0x6e, 0x22, 0x20,
- 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x22, 0x20, 0x61, 0x75, 0x74, 0x6f, 0x63,
- 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x3d, 0x22, 0x6f, 0x66, 0x66, 0x22,
- 0x20, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x64,
- 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d, 0x3c, 0x2f, 0x61, 0x3e,
- 0x3c, 0x2f, 0x6c, 0x69, 0x3e, 0x0a, 0x3c, 0x6c, 0x69, 0x20, 0x63, 0x6c, 0x61,
- 0x73, 0x73, 0x3d, 0x22, 0x63, 0x73, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65,
- 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x63, 0x73, 0x73, 0x22, 0x20, 0x3c,
- 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22,
- 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x78, 0x74, 0x2f, 0x63, 0x73, 0x73,
- 0x22, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a,
- 0x2f, 0x2f, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x61,
- 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x65, 0x22, 0x20, 0x0d, 0x0a, 0x3c,
- 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22,
- 0x74, 0x65, 0x78, 0x74, 0x2f, 0x20, 0x6f, 0x6e, 0x63, 0x6c, 0x69, 0x63, 0x6b,
- 0x3d, 0x22, 0x6a, 0x61, 0x76, 0x61, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x3a,
- 0x28, 0x6e, 0x65, 0x77, 0x20, 0x44, 0x61, 0x74, 0x65, 0x29, 0x2e, 0x67, 0x65,
- 0x74, 0x54, 0x69, 0x6d, 0x65, 0x28, 0x29, 0x7d, 0x68, 0x65, 0x69, 0x67, 0x68,
- 0x74, 0x3d, 0x22, 0x31, 0x22, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3d, 0x22,
- 0x31, 0x22, 0x20, 0x50, 0x65, 0x6f, 0x70, 0x6c, 0x65, 0x27, 0x73, 0x20, 0x52,
- 0x65, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x20, 0x6f, 0x66, 0x20, 0x20, 0x3c,
- 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a,
- 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x74, 0x65, 0x78, 0x74, 0x2d, 0x64, 0x65,
- 0x63, 0x6f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x75, 0x6e, 0x64, 0x65,
- 0x72, 0x74, 0x68, 0x65, 0x20, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x6e, 0x69, 0x6e,
- 0x67, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x3c, 0x2f, 0x64, 0x69,
- 0x76, 0x3e, 0x0a, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x0a, 0x3c, 0x2f, 0x64,
- 0x69, 0x76, 0x3e, 0x0a, 0x65, 0x73, 0x74, 0x61, 0x62, 0x6c, 0x69, 0x73, 0x68,
- 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x65, 0x20, 0x3c,
- 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x2f,
- 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x2f, 0x64, 0x23, 0x76, 0x69, 0x65, 0x77, 0x70,
- 0x6f, 0x72, 0x74, 0x7b, 0x6d, 0x69, 0x6e, 0x2d, 0x68, 0x65, 0x69, 0x67, 0x68,
- 0x74, 0x3a, 0x0a, 0x3c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x73, 0x72,
- 0x63, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x6f, 0x70, 0x74,
- 0x69, 0x6f, 0x6e, 0x3e, 0x3c, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76,
- 0x61, 0x6c, 0x75, 0x65, 0x3d, 0x6f, 0x66, 0x74, 0x65, 0x6e, 0x20, 0x72, 0x65,
- 0x66, 0x65, 0x72, 0x72, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x73, 0x20,
- 0x2f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x3e, 0x0a, 0x3c, 0x6f, 0x70, 0x74,
- 0x69, 0x6f, 0x6e, 0x20, 0x76, 0x61, 0x6c, 0x75, 0x3c, 0x21, 0x44, 0x4f, 0x43,
- 0x54, 0x59, 0x50, 0x45, 0x20, 0x68, 0x74, 0x6d, 0x6c, 0x3e, 0x0a, 0x3c, 0x21,
- 0x2d, 0x2d, 0x5b, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x61, 0x6c, 0x20, 0x41, 0x69, 0x72, 0x70, 0x6f, 0x72, 0x74, 0x3e, 0x0a,
- 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70,
- 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x3c, 0x2f, 0x61, 0x3e, 0x3c, 0x61, 0x20,
- 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f,
- 0x77, 0xe0, 0xb8, 0xa0, 0xe0, 0xb8, 0xb2, 0xe0, 0xb8, 0xa9, 0xe0, 0xb8, 0xb2,
- 0xe0, 0xb9, 0x84, 0xe0, 0xb8, 0x97, 0xe0, 0xb8, 0xa2, 0xe1, 0x83, 0xa5, 0xe1,
- 0x83, 0x90, 0xe1, 0x83, 0xa0, 0xe1, 0x83, 0x97, 0xe1, 0x83, 0xa3, 0xe1, 0x83,
- 0x9a, 0xe1, 0x83, 0x98, 0xe6, 0xad, 0xa3, 0xe9, 0xab, 0x94, 0xe4, 0xb8, 0xad,
- 0xe6, 0x96, 0x87, 0x20, 0x28, 0xe7, 0xb9, 0x81, 0xe9, 0xab, 0x94, 0x29, 0xe0,
- 0xa4, 0xa8, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4,
- 0xa6, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb6, 0xe0, 0xa4, 0xa1, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0x89, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xb2, 0xe0, 0xa5, 0x8b, 0xe0,
- 0xa4, 0xa1, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb7, 0xe0, 0xa5,
- 0x87, 0xe0, 0xa4, 0xa4, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x9c,
- 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0xb0, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x82, 0xe0, 0xa4,
- 0xac, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xa7, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa4,
- 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa5, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0xaa, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5,
- 0x8d, 0xe0, 0xa4, 0xb5, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbe,
- 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xb8, 0xe0,
- 0xa5, 0x8d, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa3, 0xe0, 0xa4,
- 0xb8, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0x97, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x9a, 0xe0, 0xa4, 0xbf, 0xe0,
- 0xa4, 0x9f, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa0, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4,
- 0x82, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x9c, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0x9e, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0x85, 0xe0,
- 0xa4, 0xae, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4,
- 0x95, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xad,
- 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa8, 0xe0,
- 0xa4, 0x97, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xa1, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4,
- 0xaf, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x81, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0xaf, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x95, 0xe0,
- 0xa4, 0xbf, 0xe0, 0xa4, 0xb8, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4,
- 0x95, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb7, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaa,
- 0xe0, 0xa4, 0xb9, 0xe0, 0xa5, 0x81, 0xe0, 0xa4, 0x81, 0xe0, 0xa4, 0x9a, 0xe0,
- 0xa4, 0xa4, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xaa, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4,
- 0xb0, 0xe0, 0xa4, 0xac, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xa7, 0xe0, 0xa4, 0xa8,
- 0xe0, 0xa4, 0x9f, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xaa, 0xe0, 0xa5, 0x8d, 0xe0,
- 0xa4, 0xaa, 0xe0, 0xa4, 0xa3, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0x95, 0xe0, 0xa5,
- 0x8d, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x87,
- 0xe0, 0xa4, 0x9f, 0xe0, 0xa4, 0xaa, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb0, 0xe0,
- 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xad, 0xe0, 0xa4,
- 0xaa, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaa,
- 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xae, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0xb2, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4,
- 0x82, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xab, 0xe0, 0xa4, 0xbc, 0xe0, 0xa5, 0x8d,
- 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xa8, 0xe0,
- 0xa4, 0xbf, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xae, 0xe0, 0xa4,
- 0xbe, 0xe0, 0xa4, 0xa3, 0xe0, 0xa4, 0xb2, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xae,
- 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x9f, 0xe0, 0xa5, 0x87, 0xe0, 0xa4, 0xa1, 0x64,
- 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x63,
- 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3d, 0x22, 0x64, 0x6f, 0x63, 0x75, 0x6d,
- 0x65, 0x6e, 0x74, 0x2e, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
- 0x70, 0x72, 0x6f, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65,
- 0x6e, 0x74, 0x73, 0x42, 0x79, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x28,
- 0x3c, 0x21, 0x44, 0x4f, 0x43, 0x54, 0x59, 0x50, 0x45, 0x20, 0x68, 0x74, 0x6d,
- 0x6c, 0x3e, 0x0a, 0x3c, 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x3c, 0x6d, 0x65, 0x74,
- 0x61, 0x20, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x3d, 0x22, 0x75, 0x74,
- 0x66, 0x2d, 0x38, 0x22, 0x3e, 0x3a, 0x75, 0x72, 0x6c, 0x22, 0x20, 0x63, 0x6f,
- 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f,
- 0x2f, 0x2e, 0x63, 0x73, 0x73, 0x22, 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x73,
- 0x74, 0x79, 0x6c, 0x65, 0x73, 0x68, 0x65, 0x65, 0x74, 0x22, 0x73, 0x74, 0x79,
- 0x6c, 0x65, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74,
- 0x2f, 0x63, 0x73, 0x73, 0x22, 0x3e, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74,
- 0x65, 0x78, 0x74, 0x2f, 0x63, 0x73, 0x73, 0x22, 0x20, 0x68, 0x72, 0x65, 0x66,
- 0x3d, 0x22, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x31, 0x39, 0x39, 0x39,
- 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x22, 0x20, 0x78, 0x6d, 0x6c, 0x74, 0x79,
- 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x6a, 0x61, 0x76, 0x61,
- 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x20, 0x6d, 0x65, 0x74, 0x68, 0x6f,
- 0x64, 0x3d, 0x22, 0x67, 0x65, 0x74, 0x22, 0x20, 0x61, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x3d, 0x22, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22,
- 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x68, 0x65, 0x65, 0x74, 0x22, 0x20, 0x20,
- 0x3d, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x65,
- 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x74, 0x79, 0x70, 0x65, 0x3d,
- 0x22, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x2f, 0x78, 0x2d, 0x69, 0x63, 0x6f, 0x6e,
- 0x22, 0x20, 0x2f, 0x3e, 0x63, 0x65, 0x6c, 0x6c, 0x70, 0x61, 0x64, 0x64, 0x69,
- 0x6e, 0x67, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x70,
- 0x2e, 0x63, 0x73, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74,
- 0x65, 0x78, 0x74, 0x2f, 0x63, 0x73, 0x73, 0x22, 0x20, 0x3c, 0x2f, 0x61, 0x3e,
- 0x3c, 0x2f, 0x6c, 0x69, 0x3e, 0x3c, 0x6c, 0x69, 0x3e, 0x3c, 0x61, 0x20, 0x68,
- 0x72, 0x65, 0x66, 0x3d, 0x22, 0x22, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3d,
- 0x22, 0x31, 0x22, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x3d, 0x22, 0x31,
- 0x22, 0x22, 0x3e, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68,
- 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x73, 0x74, 0x79,
- 0x6c, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x6e,
- 0x6f, 0x6e, 0x65, 0x3b, 0x22, 0x3e, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61,
- 0x74, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70,
- 0x6c, 0x69, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x44, 0x54, 0x44,
- 0x20, 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x31, 0x2e, 0x30, 0x20, 0x65, 0x6c,
- 0x6c, 0x73, 0x70, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x30, 0x22, 0x20,
- 0x63, 0x65, 0x6c, 0x6c, 0x70, 0x61, 0x64, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d,
- 0x22, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x22, 0x20, 0x76, 0x61, 0x6c, 0x75,
- 0x65, 0x3d, 0x22, 0x2f, 0x61, 0x3e, 0x26, 0x6e, 0x62, 0x73, 0x70, 0x3b, 0x3c,
- 0x73, 0x70, 0x61, 0x6e, 0x20, 0x72, 0x6f, 0x6c, 0x65, 0x3d, 0x22, 0x73, 0x0a,
- 0x3c, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22,
- 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x22, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x75,
- 0x61, 0x67, 0x65, 0x3d, 0x22, 0x4a, 0x61, 0x76, 0x61, 0x53, 0x63, 0x72, 0x69,
- 0x70, 0x74, 0x22, 0x20, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
- 0x2e, 0x67, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x42,
- 0x67, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x70, 0x61,
- 0x63, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x79, 0x70, 0x65, 0x3d,
- 0x22, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x63, 0x73, 0x73, 0x22, 0x20, 0x6d, 0x65,
- 0x64, 0x69, 0x61, 0x3d, 0x22, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x74, 0x65,
- 0x78, 0x74, 0x2f, 0x6a, 0x61, 0x76, 0x61, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x27, 0x77, 0x69, 0x74, 0x68, 0x20, 0x74, 0x68, 0x65, 0x20, 0x65, 0x78, 0x63,
- 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x20, 0x79, 0x70, 0x65,
- 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x63, 0x73, 0x73, 0x22, 0x20, 0x72,
- 0x65, 0x6c, 0x3d, 0x22, 0x73, 0x74, 0x20, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74,
- 0x3d, 0x22, 0x31, 0x22, 0x20, 0x77, 0x69, 0x64, 0x74, 0x68, 0x3d, 0x22, 0x31,
- 0x22, 0x20, 0x3d, 0x27, 0x2b, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x65, 0x55, 0x52,
- 0x49, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x28, 0x3c, 0x6c,
- 0x69, 0x6e, 0x6b, 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x61, 0x6c, 0x74, 0x65,
- 0x72, 0x6e, 0x61, 0x74, 0x65, 0x22, 0x20, 0x0a, 0x62, 0x6f, 0x64, 0x79, 0x2c,
- 0x20, 0x74, 0x72, 0x2c, 0x20, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x2c, 0x20, 0x74,
- 0x65, 0x78, 0x74, 0x6d, 0x65, 0x74, 0x61, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d,
- 0x22, 0x72, 0x6f, 0x62, 0x6f, 0x74, 0x73, 0x22, 0x20, 0x63, 0x6f, 0x6e, 0x6d,
- 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3d, 0x22, 0x70, 0x6f, 0x73, 0x74, 0x22, 0x20,
- 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x3e, 0x0a, 0x3c, 0x61, 0x20,
- 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f,
- 0x77, 0x77, 0x77, 0x2e, 0x63, 0x73, 0x73, 0x22, 0x20, 0x72, 0x65, 0x6c, 0x3d,
- 0x22, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x73, 0x68, 0x65, 0x65, 0x74, 0x22, 0x20,
- 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c,
- 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6c, 0x61, 0x6e, 0x67,
- 0x75, 0x61, 0x67, 0x65, 0x3d, 0x22, 0x6a, 0x61, 0x76, 0x61, 0x73, 0x63, 0x72,
- 0x69, 0x70, 0x74, 0x22, 0x3e, 0x61, 0x72, 0x69, 0x61, 0x2d, 0x68, 0x69, 0x64,
- 0x64, 0x65, 0x6e, 0x3d, 0x22, 0x74, 0x72, 0x75, 0x65, 0x22, 0x3e, 0xc2, 0xb7,
- 0x3c, 0x72, 0x69, 0x70, 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22,
- 0x74, 0x65, 0x78, 0x74, 0x2f, 0x6a, 0x61, 0x76, 0x61, 0x73, 0x6c, 0x3d, 0x30,
- 0x3b, 0x7d, 0x29, 0x28, 0x29, 0x3b, 0x0a, 0x28, 0x66, 0x75, 0x6e, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x28, 0x29, 0x7b, 0x62, 0x61, 0x63, 0x6b, 0x67, 0x72, 0x6f,
- 0x75, 0x6e, 0x64, 0x2d, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x3a, 0x20, 0x75, 0x72,
- 0x6c, 0x28, 0x2f, 0x61, 0x3e, 0x3c, 0x2f, 0x6c, 0x69, 0x3e, 0x3c, 0x6c, 0x69,
- 0x3e, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x09, 0x09,
- 0x3c, 0x6c, 0x69, 0x3e, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22,
- 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x20,
- 0x61, 0x72, 0x69, 0x61, 0x2d, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x3d, 0x22,
- 0x74, 0x72, 0x75, 0x3e, 0x20, 0x3c, 0x61, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d,
- 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6c,
- 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x3d, 0x22, 0x6a, 0x61, 0x76, 0x61,
- 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x22, 0x20, 0x2f, 0x6f, 0x70, 0x74, 0x69,
- 0x6f, 0x6e, 0x3e, 0x0a, 0x3c, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x76,
- 0x61, 0x6c, 0x75, 0x65, 0x2f, 0x64, 0x69, 0x76, 0x3e, 0x3c, 0x2f, 0x64, 0x69,
- 0x76, 0x3e, 0x3c, 0x64, 0x69, 0x76, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x3d,
- 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x20, 0x61, 0x72, 0x69, 0x61, 0x2d, 0x68,
- 0x69, 0x64, 0x64, 0x65, 0x6e, 0x3d, 0x22, 0x74, 0x72, 0x65, 0x3d, 0x28, 0x6e,
- 0x65, 0x77, 0x20, 0x44, 0x61, 0x74, 0x65, 0x29, 0x2e, 0x67, 0x65, 0x74, 0x54,
- 0x69, 0x6d, 0x65, 0x28, 0x29, 0x70, 0x6f, 0x72, 0x74, 0x75, 0x67, 0x75, 0xc3,
- 0xaa, 0x73, 0x20, 0x28, 0x64, 0x6f, 0x20, 0x42, 0x72, 0x61, 0x73, 0x69, 0x6c,
- 0x29, 0xd0, 0xbe, 0xd1, 0x80, 0xd0, 0xb3, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xb8,
- 0xd0, 0xb7, 0xd0, 0xb0, 0xd1, 0x86, 0xd0, 0xb8, 0xd0, 0xb8, 0xd0, 0xb2, 0xd0,
- 0xbe, 0xd0, 0xb7, 0xd0, 0xbc, 0xd0, 0xbe, 0xd0, 0xb6, 0xd0, 0xbd, 0xd0, 0xbe,
- 0xd1, 0x81, 0xd1, 0x82, 0xd1, 0x8c, 0xd0, 0xbe, 0xd0, 0xb1, 0xd1, 0x80, 0xd0,
- 0xb0, 0xd0, 0xb7, 0xd0, 0xbe, 0xd0, 0xb2, 0xd0, 0xb0, 0xd0, 0xbd, 0xd0, 0xb8,
- 0xd1, 0x8f, 0xd1, 0x80, 0xd0, 0xb5, 0xd0, 0xb3, 0xd0, 0xb8, 0xd1, 0x81, 0xd1,
- 0x82, 0xd1, 0x80, 0xd0, 0xb0, 0xd1, 0x86, 0xd0, 0xb8, 0xd0, 0xb8, 0xd0, 0xb2,
- 0xd0, 0xbe, 0xd0, 0xb7, 0xd0, 0xbc, 0xd0, 0xbe, 0xd0, 0xb6, 0xd0, 0xbd, 0xd0,
- 0xbe, 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb8, 0xd0, 0xbe, 0xd0, 0xb1, 0xd1, 0x8f,
- 0xd0, 0xb7, 0xd0, 0xb0, 0xd1, 0x82, 0xd0, 0xb5, 0xd0, 0xbb, 0xd1, 0x8c, 0xd0,
- 0xbd, 0xd0, 0xb0, 0x3c, 0x21, 0x44, 0x4f, 0x43, 0x54, 0x59, 0x50, 0x45, 0x20,
- 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22,
- 0x6e, 0x74, 0x2d, 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x63, 0x6f, 0x6e, 0x74,
- 0x65, 0x6e, 0x74, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x3c, 0x6d, 0x65,
- 0x74, 0x61, 0x20, 0x68, 0x74, 0x74, 0x70, 0x2d, 0x65, 0x71, 0x75, 0x69, 0x76,
- 0x3d, 0x22, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74,
- 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x22, 0x68,
- 0x74, 0x74, 0x70, 0x3a, 0x3c, 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x78, 0x6d, 0x6c,
- 0x6e, 0x73, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77,
- 0x77, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43, 0x2f, 0x2f, 0x44, 0x54, 0x44, 0x20,
- 0x58, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x31, 0x2e, 0x30, 0x20, 0x54, 0x44, 0x54,
- 0x44, 0x2f, 0x78, 0x68, 0x74, 0x6d, 0x6c, 0x31, 0x2d, 0x74, 0x72, 0x61, 0x6e,
- 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2f, 0x2f, 0x77, 0x77, 0x77,
- 0x2e, 0x77, 0x33, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x54, 0x52, 0x2f, 0x78, 0x68,
- 0x74, 0x6d, 0x6c, 0x31, 0x2f, 0x70, 0x65, 0x20, 0x3d, 0x20, 0x27, 0x74, 0x65,
- 0x78, 0x74, 0x2f, 0x6a, 0x61, 0x76, 0x61, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x27, 0x3b, 0x3c, 0x6d, 0x65, 0x74, 0x61, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d,
- 0x22, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x70,
- 0x61, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x2e, 0x69, 0x6e, 0x73,
- 0x65, 0x72, 0x74, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x3c, 0x69, 0x6e, 0x70,
- 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x68, 0x69, 0x64, 0x64,
- 0x65, 0x6e, 0x22, 0x20, 0x6e, 0x61, 0x6a, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70,
- 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x6a, 0x61, 0x76, 0x61, 0x73,
- 0x63, 0x72, 0x69, 0x28, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x29,
- 0x2e, 0x72, 0x65, 0x61, 0x64, 0x79, 0x28, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69,
- 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22,
- 0x74, 0x65, 0x78, 0x74, 0x2f, 0x6a, 0x61, 0x76, 0x61, 0x73, 0x69, 0x6d, 0x61,
- 0x67, 0x65, 0x22, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3d, 0x22,
- 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x55, 0x41, 0x2d, 0x43, 0x6f, 0x6d,
- 0x70, 0x61, 0x74, 0x69, 0x62, 0x6c, 0x65, 0x22, 0x20, 0x63, 0x6f, 0x6e, 0x74,
- 0x65, 0x6e, 0x74, 0x3d, 0x74, 0x6d, 0x6c, 0x3b, 0x20, 0x63, 0x68, 0x61, 0x72,
- 0x73, 0x65, 0x74, 0x3d, 0x75, 0x74, 0x66, 0x2d, 0x38, 0x22, 0x20, 0x2f, 0x3e,
- 0x0a, 0x6c, 0x69, 0x6e, 0x6b, 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x73, 0x68,
- 0x6f, 0x72, 0x74, 0x63, 0x75, 0x74, 0x20, 0x69, 0x63, 0x6f, 0x6e, 0x3c, 0x6c,
- 0x69, 0x6e, 0x6b, 0x20, 0x72, 0x65, 0x6c, 0x3d, 0x22, 0x73, 0x74, 0x79, 0x6c,
- 0x65, 0x73, 0x68, 0x65, 0x65, 0x74, 0x22, 0x20, 0x3c, 0x2f, 0x73, 0x63, 0x72,
- 0x69, 0x70, 0x74, 0x3e, 0x0a, 0x3c, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x20,
- 0x74, 0x79, 0x70, 0x65, 0x3d, 0x3d, 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
- 0x6e, 0x74, 0x2e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6c, 0x65, 0x6d,
- 0x65, 0x6e, 0x3c, 0x61, 0x20, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x3d, 0x22,
- 0x5f, 0x62, 0x6c, 0x61, 0x6e, 0x6b, 0x22, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d,
- 0x20, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74,
- 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x69, 0x6e, 0x70, 0x75,
- 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x22,
- 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x61, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x20,
- 0x3d, 0x20, 0x27, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x6a, 0x61, 0x76, 0x61, 0x73,
- 0x63, 0x72, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d,
- 0x22, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65,
- 0x68, 0x74, 0x6d, 0x6c, 0x3b, 0x20, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74,
- 0x3d, 0x75, 0x74, 0x66, 0x2d, 0x38, 0x22, 0x20, 0x2f, 0x3e, 0x64, 0x74, 0x64,
- 0x22, 0x3e, 0x0a, 0x3c, 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x78, 0x6d, 0x6c, 0x6e,
- 0x73, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x2d, 0x2f, 0x2f, 0x57, 0x33, 0x43,
- 0x2f, 0x2f, 0x44, 0x54, 0x44, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x34, 0x2e,
- 0x30, 0x31, 0x20, 0x54, 0x65, 0x6e, 0x74, 0x73, 0x42, 0x79, 0x54, 0x61, 0x67,
- 0x4e, 0x61, 0x6d, 0x65, 0x28, 0x27, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x27,
- 0x29, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22,
- 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x3c, 0x73,
- 0x63, 0x72, 0x69, 0x70, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74,
- 0x65, 0x78, 0x74, 0x2f, 0x6a, 0x61, 0x76, 0x61, 0x73, 0x22, 0x20, 0x73, 0x74,
- 0x79, 0x6c, 0x65, 0x3d, 0x22, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a,
- 0x6e, 0x6f, 0x6e, 0x65, 0x3b, 0x22, 0x3e, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
- 0x6e, 0x74, 0x2e, 0x67, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74,
- 0x42, 0x79, 0x49, 0x64, 0x28, 0x3d, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
- 0x74, 0x2e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6c, 0x65, 0x6d, 0x65,
- 0x6e, 0x74, 0x28, 0x27, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x74, 0x65,
- 0x78, 0x74, 0x2f, 0x6a, 0x61, 0x76, 0x61, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x27, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22,
- 0x74, 0x65, 0x78, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x64,
- 0x2e, 0x67, 0x65, 0x74, 0x45, 0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x42,
- 0x79, 0x54, 0x61, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x28, 0x73, 0x6e, 0x69, 0x63,
- 0x61, 0x6c, 0x22, 0x20, 0x68, 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74,
- 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x43, 0x2f, 0x2f, 0x44, 0x54,
- 0x44, 0x20, 0x48, 0x54, 0x4d, 0x4c, 0x20, 0x34, 0x2e, 0x30, 0x31, 0x20, 0x54,
- 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x3c, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x20,
- 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x63, 0x73,
- 0x73, 0x22, 0x3e, 0x0a, 0x0a, 0x3c, 0x73, 0x74, 0x79, 0x6c, 0x65, 0x20, 0x74,
- 0x79, 0x70, 0x65, 0x3d, 0x22, 0x74, 0x65, 0x78, 0x74, 0x2f, 0x63, 0x73, 0x73,
- 0x22, 0x3e, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2e, 0x64, 0x74, 0x64, 0x22, 0x3e,
- 0x0a, 0x3c, 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x78, 0x6d, 0x6c, 0x6e, 0x73, 0x3d,
- 0x68, 0x74, 0x74, 0x70, 0x2d, 0x65, 0x71, 0x75, 0x69, 0x76, 0x3d, 0x22, 0x43,
- 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2d, 0x54, 0x79, 0x70, 0x65, 0x64, 0x69,
- 0x6e, 0x67, 0x3d, 0x22, 0x30, 0x22, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x70,
- 0x61, 0x63, 0x69, 0x6e, 0x67, 0x3d, 0x22, 0x30, 0x22, 0x68, 0x74, 0x6d, 0x6c,
- 0x3b, 0x20, 0x63, 0x68, 0x61, 0x72, 0x73, 0x65, 0x74, 0x3d, 0x75, 0x74, 0x66,
- 0x2d, 0x38, 0x22, 0x20, 0x2f, 0x3e, 0x0a, 0x20, 0x73, 0x74, 0x79, 0x6c, 0x65,
- 0x3d, 0x22, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3a, 0x6e, 0x6f, 0x6e,
- 0x65, 0x3b, 0x22, 0x3e, 0x3c, 0x3c, 0x6c, 0x69, 0x3e, 0x3c, 0x61, 0x20, 0x68,
- 0x72, 0x65, 0x66, 0x3d, 0x22, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77,
- 0x77, 0x77, 0x2e, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x27, 0x74, 0x65, 0x78,
- 0x74, 0x2f, 0x6a, 0x61, 0x76, 0x61, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x27,
- 0x3e, 0xd0, 0xb4, 0xd0, 0xb5, 0xd1, 0x8f, 0xd1, 0x82, 0xd0, 0xb5, 0xd0, 0xbb,
- 0xd1, 0x8c, 0xd0, 0xbd, 0xd0, 0xbe, 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb8, 0xd1,
- 0x81, 0xd0, 0xbe, 0xd0, 0xbe, 0xd1, 0x82, 0xd0, 0xb2, 0xd0, 0xb5, 0xd1, 0x82,
- 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb2, 0xd0, 0xb8, 0xd0, 0xb8, 0xd0, 0xbf, 0xd1,
- 0x80, 0xd0, 0xbe, 0xd0, 0xb8, 0xd0, 0xb7, 0xd0, 0xb2, 0xd0, 0xbe, 0xd0, 0xb4,
- 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb2, 0xd0, 0xb0, 0xd0, 0xb1, 0xd0, 0xb5, 0xd0,
- 0xb7, 0xd0, 0xbe, 0xd0, 0xbf, 0xd0, 0xb0, 0xd1, 0x81, 0xd0, 0xbd, 0xd0, 0xbe,
- 0xd1, 0x81, 0xd1, 0x82, 0xd0, 0xb8, 0xe0, 0xa4, 0xaa, 0xe0, 0xa5, 0x81, 0xe0,
- 0xa4, 0xb8, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4,
- 0x95, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0x82,
- 0xe0, 0xa4, 0x97, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb0, 0xe0, 0xa5, 0x87, 0xe0,
- 0xa4, 0xb8, 0xe0, 0xa4, 0x89, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4,
- 0xb9, 0xe0, 0xa5, 0x8b, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0xa8, 0xe0, 0xa5, 0x87,
- 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa7, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0xa8, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0xad, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0xab, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb8,
- 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0x82, 0xe0, 0xa4, 0x97, 0xe0, 0xa4, 0xb8, 0xe0,
- 0xa5, 0x81, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4,
- 0xb7, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x89,
- 0xe0, 0xa4, 0xaa, 0xe0, 0xa5, 0x80, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xbe, 0xe0,
- 0xa4, 0x87, 0xe0, 0xa4, 0x9f, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbf, 0xe0, 0xa4,
- 0x9c, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0x9e, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xaa,
- 0xe0, 0xa4, 0xa8, 0xe0, 0xa4, 0x95, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4, 0xb0, 0xe0,
- 0xa5, 0x8d, 0xe0, 0xa4, 0xb0, 0xe0, 0xa4, 0xb5, 0xe0, 0xa4, 0xbe, 0xe0, 0xa4,
- 0x88, 0xe0, 0xa4, 0xb8, 0xe0, 0xa4, 0x95, 0xe0, 0xa5, 0x8d, 0xe0, 0xa4, 0xb0,
- 0xe0, 0xa4, 0xbf, 0xe0, 0xa4, 0xaf, 0xe0, 0xa4, 0xa4, 0xe0, 0xa4, 0xbe,
-};
-
-#if defined(__cplusplus) || defined(c_plusplus)
-} /* extern "C" */
-#endif
diff --git a/thirdparty/brotli/enc/dictionary.h b/thirdparty/brotli/enc/dictionary.h
deleted file mode 100644
index c9c6362d..00000000
--- a/thirdparty/brotli/enc/dictionary.h
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Copyright 2013 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-// Collection of static dictionary words.
-
-#ifndef BROTLI_ENC_DICTIONARY_H_
-#define BROTLI_ENC_DICTIONARY_H_
-
-#include "./types.h"
-
-// No namespace, use same identifier as for the C decoder.
-
-#if defined(__cplusplus) || defined(c_plusplus)
-extern "C" {
-#endif
-
-extern const uint8_t kBrotliDictionary[122784];
-
-static const uint32_t kBrotliDictionaryOffsetsByLength[] = {
- 0, 0, 0, 0, 0, 4096, 9216, 21504, 35840, 44032,
- 53248, 63488, 74752, 87040, 93696, 100864, 104704, 106752, 108928, 113536,
- 115968, 118528, 119872, 121280, 122016,
-};
-
-static const uint8_t kBrotliDictionarySizeBitsByLength[] = {
- 0, 0, 0, 0, 10, 10, 11, 11, 10, 10,
- 10, 10, 10, 9, 9, 8, 7, 7, 8, 7,
- 7, 6, 6, 5, 5,
-};
-
-static const int kBrotliMinDictionaryWordLength = 4;
-static const int kBrotliMaxDictionaryWordLength = 24;
-
-#if defined(__cplusplus) || defined(c_plusplus)
-} /* extern "C" */
-#endif
-
-#endif // BROTLI_ENC_DICTIONARY_H_
diff --git a/thirdparty/brotli/enc/dictionary_hash.h b/thirdparty/brotli/enc/dictionary_hash.h
index afbb1f1e..92576b3c 100644
--- a/thirdparty/brotli/enc/dictionary_hash.h
+++ b/thirdparty/brotli/enc/dictionary_hash.h
@@ -4,14 +4,16 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Hash table on the 4-byte prefixes of static dictionary words.
+/* Hash table on the 4-byte prefixes of static dictionary words. */
#ifndef BROTLI_ENC_DICTIONARY_HASH_H_
#define BROTLI_ENC_DICTIONARY_HASH_H_
-#include "./types.h"
+#include "../common/types.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
static const uint16_t kStaticDictionaryHash[] = {
0x7d48, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -4112,6 +4114,8 @@ static const uint16_t kStaticDictionaryHash[] = {
0x0000, 0x0000, 0x0d88, 0x4ac5, 0x0000, 0x0000, 0x0000, 0x0000,
};
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_DICTIONARY_HASH_H_
+#endif /* BROTLI_ENC_DICTIONARY_HASH_H_ */
diff --git a/thirdparty/brotli/enc/encode.c b/thirdparty/brotli/enc/encode.c
new file mode 100644
index 00000000..368722a1
--- /dev/null
+++ b/thirdparty/brotli/enc/encode.c
@@ -0,0 +1,1562 @@
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Implementation of Brotli compressor. */
+
+#include "./encode.h"
+
+#include <stdlib.h> /* free, malloc */
+#include <string.h> /* memcpy, memset */
+
+#include "./backward_references.h"
+#include "./bit_cost.h"
+#include "./brotli_bit_stream.h"
+#include "./compress_fragment.h"
+#include "./compress_fragment_two_pass.h"
+#include "./context.h"
+#include "./entropy_encode.h"
+#include "./fast_log.h"
+#include "./hash.h"
+#include "./histogram.h"
+#include "./memory.h"
+#include "./metablock.h"
+#include "./port.h"
+#include "./prefix.h"
+#include "./quality.h"
+#include "./ringbuffer.h"
+#include "./utf8_util.h"
+#include "./write_bits.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+#define COPY_ARRAY(dst, src) memcpy(dst, src, sizeof(src));
+
+typedef enum BrotliEncoderStreamState {
+ /* Default state. */
+ BROTLI_STREAM_PROCESSING = 0,
+ /* Intermediate state; after next block is emitted, byte-padding should be
+ performed before getting back to default state. */
+ BROTLI_STREAM_FLUSH_REQUESTED = 1,
+ /* Last metablock was produced; no more input is acceptable. */
+ BROTLI_STREAM_FINISHED = 2
+} BrotliEncoderStreamState;
+
+typedef struct BrotliEncoderStateStruct {
+ BrotliEncoderParams params;
+
+ MemoryManager memory_manager_;
+
+ Hashers hashers_;
+ uint64_t input_pos_;
+ RingBuffer ringbuffer_;
+ size_t cmd_alloc_size_;
+ Command* commands_;
+ size_t num_commands_;
+ size_t num_literals_;
+ size_t last_insert_len_;
+ uint64_t last_flush_pos_;
+ uint64_t last_processed_pos_;
+ int dist_cache_[4];
+ int saved_dist_cache_[4];
+ uint8_t last_byte_;
+ uint8_t last_byte_bits_;
+ uint8_t prev_byte_;
+ uint8_t prev_byte2_;
+ size_t storage_size_;
+ uint8_t* storage_;
+ /* Hash table for FAST_ONE_PASS_COMPRESSION_QUALITY mode. */
+ int small_table_[1 << 10]; /* 4KiB */
+ int* large_table_; /* Allocated only when needed */
+ size_t large_table_size_;
+ /* Command and distance prefix codes (each 64 symbols, stored back-to-back)
+ used for the next block in FAST_ONE_PASS_COMPRESSION_QUALITY. The command
+ prefix code is over a smaller alphabet with the following 64 symbols:
+ 0 - 15: insert length code 0, copy length code 0 - 15, same distance
+ 16 - 39: insert length code 0, copy length code 0 - 23
+ 40 - 63: insert length code 0 - 23, copy length code 0
+ Note that symbols 16 and 40 represent the same code in the full alphabet,
+ but we do not use either of them in FAST_ONE_PASS_COMPRESSION_QUALITY. */
+ uint8_t cmd_depths_[128];
+ uint16_t cmd_bits_[128];
+ /* The compressed form of the command and distance prefix codes for the next
+ block in FAST_ONE_PASS_COMPRESSION_QUALITY. */
+ uint8_t cmd_code_[512];
+ size_t cmd_code_numbits_;
+ /* Command and literal buffers for FAST_TWO_PASS_COMPRESSION_QUALITY. */
+ uint32_t* command_buf_;
+ uint8_t* literal_buf_;
+
+ uint8_t* next_out_;
+ size_t available_out_;
+ size_t total_out_;
+ uint8_t flush_buf_[2];
+ BrotliEncoderStreamState stream_state_;
+
+ BROTLI_BOOL is_last_block_emitted_;
+ BROTLI_BOOL is_initialized_;
+} BrotliEncoderStateStruct;
+
+static BROTLI_BOOL EnsureInitialized(BrotliEncoderState* s);
+
+size_t BrotliEncoderInputBlockSize(BrotliEncoderState* s) {
+ if (!EnsureInitialized(s)) return 0;
+ return (size_t)1 << s->params.lgblock;
+}
+
+static uint64_t UnprocessedInputSize(BrotliEncoderState* s) {
+ return s->input_pos_ - s->last_processed_pos_;
+}
+
+static size_t RemainingInputBlockSize(BrotliEncoderState* s) {
+ const uint64_t delta = UnprocessedInputSize(s);
+ size_t block_size = BrotliEncoderInputBlockSize(s);
+ if (delta >= block_size) return 0;
+ return block_size - (size_t)delta;
+}
+
+BROTLI_BOOL BrotliEncoderSetParameter(
+ BrotliEncoderState* state, BrotliEncoderParameter p, uint32_t value) {
+ /* Changing parameters on the fly is not implemented yet. */
+ if (state->is_initialized_) return BROTLI_FALSE;
+ /* TODO: Validate/clamp params here. */
+ switch (p) {
+ case BROTLI_PARAM_MODE:
+ state->params.mode = (BrotliEncoderMode)value;
+ return BROTLI_TRUE;
+
+ case BROTLI_PARAM_QUALITY:
+ state->params.quality = (int)value;
+ return BROTLI_TRUE;
+
+ case BROTLI_PARAM_LGWIN:
+ state->params.lgwin = (int)value;
+ return BROTLI_TRUE;
+
+ case BROTLI_PARAM_LGBLOCK:
+ state->params.lgblock = (int)value;
+ return BROTLI_TRUE;
+
+ default: return BROTLI_FALSE;
+ }
+}
+
+static void RecomputeDistancePrefixes(Command* cmds,
+ size_t num_commands,
+ uint32_t num_direct_distance_codes,
+ uint32_t distance_postfix_bits) {
+ size_t i;
+ if (num_direct_distance_codes == 0 && distance_postfix_bits == 0) {
+ return;
+ }
+ for (i = 0; i < num_commands; ++i) {
+ Command* cmd = &cmds[i];
+ if (CommandCopyLen(cmd) && cmd->cmd_prefix_ >= 128) {
+ PrefixEncodeCopyDistance(CommandDistanceCode(cmd),
+ num_direct_distance_codes,
+ distance_postfix_bits,
+ &cmd->dist_prefix_,
+ &cmd->dist_extra_);
+ }
+ }
+}
+
+/* Wraps 64-bit input position to 32-bit ringbuffer position preserving
+ "not-a-first-lap" feature. */
+static uint32_t WrapPosition(uint64_t position) {
+ uint32_t result = (uint32_t)position;
+ uint64_t gb = position >> 30;
+ if (gb > 2) {
+ /* Wrap every 2GiB; The first 3GB are continous. */
+ result = (result & ((1u << 30) - 1)) | ((uint32_t)((gb - 1) & 1) + 1) << 30;
+ }
+ return result;
+}
+
+static uint8_t* GetBrotliStorage(BrotliEncoderState* s, size_t size) {
+ MemoryManager* m = &s->memory_manager_;
+ if (s->storage_size_ < size) {
+ BROTLI_FREE(m, s->storage_);
+ s->storage_ = BROTLI_ALLOC(m, uint8_t, size);
+ if (BROTLI_IS_OOM(m)) return NULL;
+ s->storage_size_ = size;
+ }
+ return s->storage_;
+}
+
+static size_t HashTableSize(size_t max_table_size, size_t input_size) {
+ size_t htsize = 256;
+ while (htsize < max_table_size && htsize < input_size) {
+ htsize <<= 1;
+ }
+ return htsize;
+}
+
+static int* GetHashTable(BrotliEncoderState* s, int quality,
+ size_t input_size, size_t* table_size) {
+ /* Use smaller hash table when input.size() is smaller, since we
+ fill the table, incurring O(hash table size) overhead for
+ compression, and if the input is short, we won't need that
+ many hash table entries anyway. */
+ MemoryManager* m = &s->memory_manager_;
+ const size_t max_table_size = MaxHashTableSize(quality);
+ size_t htsize = HashTableSize(max_table_size, input_size);
+ int* table;
+ assert(max_table_size >= 256);
+
+ if (htsize <= sizeof(s->small_table_) / sizeof(s->small_table_[0])) {
+ table = s->small_table_;
+ } else {
+ if (htsize > s->large_table_size_) {
+ s->large_table_size_ = htsize;
+ BROTLI_FREE(m, s->large_table_);
+ s->large_table_ = BROTLI_ALLOC(m, int, htsize);
+ if (BROTLI_IS_OOM(m)) return 0;
+ }
+ table = s->large_table_;
+ }
+
+ *table_size = htsize;
+ memset(table, 0, htsize * sizeof(*table));
+ return table;
+}
+
+static void EncodeWindowBits(int lgwin, uint8_t* last_byte,
+ uint8_t* last_byte_bits) {
+ if (lgwin == 16) {
+ *last_byte = 0;
+ *last_byte_bits = 1;
+ } else if (lgwin == 17) {
+ *last_byte = 1;
+ *last_byte_bits = 7;
+ } else if (lgwin > 17) {
+ *last_byte = (uint8_t)(((lgwin - 17) << 1) | 1);
+ *last_byte_bits = 4;
+ } else {
+ *last_byte = (uint8_t)(((lgwin - 8) << 4) | 1);
+ *last_byte_bits = 7;
+ }
+}
+
+/* Initializes the command and distance prefix codes for the first block. */
+static void InitCommandPrefixCodes(uint8_t cmd_depths[128],
+ uint16_t cmd_bits[128],
+ uint8_t cmd_code[512],
+ size_t* cmd_code_numbits) {
+ static const uint8_t kDefaultCommandDepths[128] = {
+ 0, 4, 4, 5, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8,
+ 0, 0, 0, 4, 4, 4, 4, 4, 5, 5, 6, 6, 6, 6, 7, 7,
+ 7, 7, 10, 10, 10, 10, 10, 10, 0, 4, 4, 5, 5, 5, 6, 6,
+ 7, 8, 8, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
+ 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 6, 6, 6, 6, 6, 6, 5, 5, 5, 5, 5, 5, 4, 4, 4, 4,
+ 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 7, 7, 7, 8, 10,
+ 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
+ };
+ static const uint16_t kDefaultCommandBits[128] = {
+ 0, 0, 8, 9, 3, 35, 7, 71,
+ 39, 103, 23, 47, 175, 111, 239, 31,
+ 0, 0, 0, 4, 12, 2, 10, 6,
+ 13, 29, 11, 43, 27, 59, 87, 55,
+ 15, 79, 319, 831, 191, 703, 447, 959,
+ 0, 14, 1, 25, 5, 21, 19, 51,
+ 119, 159, 95, 223, 479, 991, 63, 575,
+ 127, 639, 383, 895, 255, 767, 511, 1023,
+ 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 27, 59, 7, 39, 23, 55, 30, 1, 17, 9, 25, 5, 0, 8, 4, 12,
+ 2, 10, 6, 21, 13, 29, 3, 19, 11, 15, 47, 31, 95, 63, 127, 255,
+ 767, 2815, 1791, 3839, 511, 2559, 1535, 3583, 1023, 3071, 2047, 4095,
+ };
+ static const uint8_t kDefaultCommandCode[] = {
+ 0xff, 0x77, 0xd5, 0xbf, 0xe7, 0xde, 0xea, 0x9e, 0x51, 0x5d, 0xde, 0xc6,
+ 0x70, 0x57, 0xbc, 0x58, 0x58, 0x58, 0xd8, 0xd8, 0x58, 0xd5, 0xcb, 0x8c,
+ 0xea, 0xe0, 0xc3, 0x87, 0x1f, 0x83, 0xc1, 0x60, 0x1c, 0x67, 0xb2, 0xaa,
+ 0x06, 0x83, 0xc1, 0x60, 0x30, 0x18, 0xcc, 0xa1, 0xce, 0x88, 0x54, 0x94,
+ 0x46, 0xe1, 0xb0, 0xd0, 0x4e, 0xb2, 0xf7, 0x04, 0x00,
+ };
+ static const size_t kDefaultCommandCodeNumBits = 448;
+ COPY_ARRAY(cmd_depths, kDefaultCommandDepths);
+ COPY_ARRAY(cmd_bits, kDefaultCommandBits);
+
+ /* Initialize the pre-compressed form of the command and distance prefix
+ codes. */
+ COPY_ARRAY(cmd_code, kDefaultCommandCode);
+ *cmd_code_numbits = kDefaultCommandCodeNumBits;
+}
+
+/* Decide about the context map based on the ability of the prediction
+ ability of the previous byte UTF8-prefix on the next byte. The
+ prediction ability is calculated as shannon entropy. Here we need
+ shannon entropy instead of 'BitsEntropy' since the prefix will be
+ encoded with the remaining 6 bits of the following byte, and
+ BitsEntropy will assume that symbol to be stored alone using Huffman
+ coding. */
+static void ChooseContextMap(int quality,
+ uint32_t* bigram_histo,
+ size_t* num_literal_contexts,
+ const uint32_t** literal_context_map) {
+ static const uint32_t kStaticContextMapContinuation[64] = {
+ 1, 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ };
+ static const uint32_t kStaticContextMapSimpleUTF8[64] = {
+ 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ };
+
+ uint32_t monogram_histo[3] = { 0 };
+ uint32_t two_prefix_histo[6] = { 0 };
+ size_t total = 0;
+ size_t i;
+ size_t dummy;
+ double entropy[4];
+ for (i = 0; i < 9; ++i) {
+ size_t j = i;
+ total += bigram_histo[i];
+ monogram_histo[i % 3] += bigram_histo[i];
+ if (j >= 6) {
+ j -= 6;
+ }
+ two_prefix_histo[j] += bigram_histo[i];
+ }
+ entropy[1] = ShannonEntropy(monogram_histo, 3, &dummy);
+ entropy[2] = (ShannonEntropy(two_prefix_histo, 3, &dummy) +
+ ShannonEntropy(two_prefix_histo + 3, 3, &dummy));
+ entropy[3] = 0;
+ for (i = 0; i < 3; ++i) {
+ entropy[3] += ShannonEntropy(bigram_histo + 3 * i, 3, &dummy);
+ }
+
+ assert(total != 0);
+ entropy[0] = 1.0 / (double)total;
+ entropy[1] *= entropy[0];
+ entropy[2] *= entropy[0];
+ entropy[3] *= entropy[0];
+
+ if (quality < MIN_QUALITY_FOR_HQ_CONTEXT_MODELING) {
+ /* 3 context models is a bit slower, don't use it at lower qualities. */
+ entropy[3] = entropy[1] * 10;
+ }
+ /* If expected savings by symbol are less than 0.2 bits, skip the
+ context modeling -- in exchange for faster decoding speed. */
+ if (entropy[1] - entropy[2] < 0.2 &&
+ entropy[1] - entropy[3] < 0.2) {
+ *num_literal_contexts = 1;
+ } else if (entropy[2] - entropy[3] < 0.02) {
+ *num_literal_contexts = 2;
+ *literal_context_map = kStaticContextMapSimpleUTF8;
+ } else {
+ *num_literal_contexts = 3;
+ *literal_context_map = kStaticContextMapContinuation;
+ }
+}
+
+static void DecideOverLiteralContextModeling(const uint8_t* input,
+ size_t start_pos, size_t length, size_t mask, int quality,
+ ContextType* literal_context_mode, size_t* num_literal_contexts,
+ const uint32_t** literal_context_map) {
+ if (quality < MIN_QUALITY_FOR_CONTEXT_MODELING || length < 64) {
+ return;
+ } else {
+ /* Gather bigram data of the UTF8 byte prefixes. To make the analysis of
+ UTF8 data faster we only examine 64 byte long strides at every 4kB
+ intervals. */
+ const size_t end_pos = start_pos + length;
+ uint32_t bigram_prefix_histo[9] = { 0 };
+ for (; start_pos + 64 <= end_pos; start_pos += 4096) {
+ static const int lut[4] = { 0, 0, 1, 2 };
+ const size_t stride_end_pos = start_pos + 64;
+ int prev = lut[input[start_pos & mask] >> 6] * 3;
+ size_t pos;
+ for (pos = start_pos + 1; pos < stride_end_pos; ++pos) {
+ const uint8_t literal = input[pos & mask];
+ ++bigram_prefix_histo[prev + lut[literal >> 6]];
+ prev = lut[literal >> 6] * 3;
+ }
+ }
+ *literal_context_mode = CONTEXT_UTF8;
+ ChooseContextMap(quality, &bigram_prefix_histo[0], num_literal_contexts,
+ literal_context_map);
+ }
+}
+
+static BROTLI_BOOL ShouldCompress(
+ const uint8_t* data, const size_t mask, const uint64_t last_flush_pos,
+ const size_t bytes, const size_t num_literals, const size_t num_commands) {
+ if (num_commands < (bytes >> 8) + 2) {
+ if (num_literals > 0.99 * (double)bytes) {
+ uint32_t literal_histo[256] = { 0 };
+ static const uint32_t kSampleRate = 13;
+ static const double kMinEntropy = 7.92;
+ const double bit_cost_threshold =
+ (double)bytes * kMinEntropy / kSampleRate;
+ size_t t = (bytes + kSampleRate - 1) / kSampleRate;
+ uint32_t pos = (uint32_t)last_flush_pos;
+ size_t i;
+ for (i = 0; i < t; i++) {
+ ++literal_histo[data[pos & mask]];
+ pos += kSampleRate;
+ }
+ if (BitsEntropy(literal_histo, 256) > bit_cost_threshold) {
+ return BROTLI_FALSE;
+ }
+ }
+ }
+ return BROTLI_TRUE;
+}
+
+static void WriteMetaBlockInternal(MemoryManager* m,
+ const uint8_t* data,
+ const size_t mask,
+ const uint64_t last_flush_pos,
+ const size_t bytes,
+ const BROTLI_BOOL is_last,
+ const BrotliEncoderParams* params,
+ const uint8_t prev_byte,
+ const uint8_t prev_byte2,
+ const size_t num_literals,
+ const size_t num_commands,
+ Command* commands,
+ const int* saved_dist_cache,
+ int* dist_cache,
+ size_t* storage_ix,
+ uint8_t* storage) {
+ const uint32_t wrapped_last_flush_pos = WrapPosition(last_flush_pos);
+ uint8_t last_byte;
+ uint8_t last_byte_bits;
+ uint32_t num_direct_distance_codes = 0;
+ uint32_t distance_postfix_bits = 0;
+
+ if (bytes == 0) {
+ /* Write the ISLAST and ISEMPTY bits. */
+ BrotliWriteBits(2, 3, storage_ix, storage);
+ *storage_ix = (*storage_ix + 7u) & ~7u;
+ return;
+ }
+
+ if (!ShouldCompress(data, mask, last_flush_pos, bytes,
+ num_literals, num_commands)) {
+ /* Restore the distance cache, as its last update by
+ CreateBackwardReferences is now unused. */
+ memcpy(dist_cache, saved_dist_cache, 4 * sizeof(dist_cache[0]));
+ BrotliStoreUncompressedMetaBlock(is_last, data,
+ wrapped_last_flush_pos, mask, bytes,
+ storage_ix, storage);
+ return;
+ }
+
+ last_byte = storage[0];
+ last_byte_bits = (uint8_t)(*storage_ix & 0xff);
+ if (params->quality >= MIN_QUALITY_FOR_RECOMPUTE_DISTANCE_PREFIXES &&
+ params->mode == BROTLI_MODE_FONT) {
+ num_direct_distance_codes = 12;
+ distance_postfix_bits = 1;
+ RecomputeDistancePrefixes(commands,
+ num_commands,
+ num_direct_distance_codes,
+ distance_postfix_bits);
+ }
+ if (params->quality <= MAX_QUALITY_FOR_STATIC_ENRTOPY_CODES) {
+ BrotliStoreMetaBlockFast(m, data, wrapped_last_flush_pos,
+ bytes, mask, is_last,
+ commands, num_commands,
+ storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+ } else if (params->quality < MIN_QUALITY_FOR_BLOCK_SPLIT) {
+ BrotliStoreMetaBlockTrivial(m, data, wrapped_last_flush_pos,
+ bytes, mask, is_last,
+ commands, num_commands,
+ storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+ } else {
+ ContextType literal_context_mode = CONTEXT_UTF8;
+ MetaBlockSplit mb;
+ InitMetaBlockSplit(&mb);
+ if (params->quality < MIN_QUALITY_FOR_HQ_BLOCK_SPLITTING) {
+ size_t num_literal_contexts = 1;
+ const uint32_t* literal_context_map = NULL;
+ DecideOverLiteralContextModeling(data, wrapped_last_flush_pos,
+ bytes, mask,
+ params->quality,
+ &literal_context_mode,
+ &num_literal_contexts,
+ &literal_context_map);
+ if (literal_context_map == NULL) {
+ BrotliBuildMetaBlockGreedy(m, data, wrapped_last_flush_pos, mask,
+ commands, num_commands, &mb);
+ if (BROTLI_IS_OOM(m)) return;
+ } else {
+ BrotliBuildMetaBlockGreedyWithContexts(m, data,
+ wrapped_last_flush_pos,
+ mask,
+ prev_byte, prev_byte2,
+ literal_context_mode,
+ num_literal_contexts,
+ literal_context_map,
+ commands, num_commands,
+ &mb);
+ if (BROTLI_IS_OOM(m)) return;
+ }
+ } else {
+ if (!BrotliIsMostlyUTF8(data, wrapped_last_flush_pos, mask, bytes,
+ kMinUTF8Ratio)) {
+ literal_context_mode = CONTEXT_SIGNED;
+ }
+ BrotliBuildMetaBlock(m, data, wrapped_last_flush_pos, mask, params,
+ prev_byte, prev_byte2,
+ commands, num_commands,
+ literal_context_mode,
+ &mb);
+ if (BROTLI_IS_OOM(m)) return;
+ }
+ if (params->quality >= MIN_QUALITY_FOR_OPTIMIZE_HISTOGRAMS) {
+ BrotliOptimizeHistograms(num_direct_distance_codes,
+ distance_postfix_bits,
+ &mb);
+ }
+ BrotliStoreMetaBlock(m, data, wrapped_last_flush_pos, bytes, mask,
+ prev_byte, prev_byte2,
+ is_last,
+ num_direct_distance_codes,
+ distance_postfix_bits,
+ literal_context_mode,
+ commands, num_commands,
+ &mb,
+ storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return;
+ DestroyMetaBlockSplit(m, &mb);
+ }
+ if (bytes + 4 < (*storage_ix >> 3)) {
+ /* Restore the distance cache and last byte. */
+ memcpy(dist_cache, saved_dist_cache, 4 * sizeof(dist_cache[0]));
+ storage[0] = last_byte;
+ *storage_ix = last_byte_bits;
+ BrotliStoreUncompressedMetaBlock(is_last, data,
+ wrapped_last_flush_pos, mask,
+ bytes, storage_ix, storage);
+ }
+}
+
+static BROTLI_BOOL EnsureInitialized(BrotliEncoderState* s) {
+ if (BROTLI_IS_OOM(&s->memory_manager_)) return BROTLI_FALSE;
+ if (s->is_initialized_) return BROTLI_TRUE;
+
+ SanitizeParams(&s->params);
+ s->params.lgblock = ComputeLgBlock(&s->params);
+
+ RingBufferSetup(&s->params, &s->ringbuffer_);
+
+ /* Initialize last byte with stream header. */
+ EncodeWindowBits(s->params.lgwin, &s->last_byte_, &s->last_byte_bits_);
+
+ if (s->params.quality == FAST_ONE_PASS_COMPRESSION_QUALITY) {
+ InitCommandPrefixCodes(s->cmd_depths_, s->cmd_bits_,
+ s->cmd_code_, &s->cmd_code_numbits_);
+ }
+
+ /* Initialize hashers. */
+ HashersSetup(&s->memory_manager_, &s->hashers_, ChooseHasher(&s->params));
+ if (BROTLI_IS_OOM(&s->memory_manager_)) return BROTLI_FALSE;
+
+ s->is_initialized_ = BROTLI_TRUE;
+ return BROTLI_TRUE;
+}
+
+static void BrotliEncoderInitState(BrotliEncoderState* s) {
+ s->params.mode = BROTLI_DEFAULT_MODE;
+ s->params.quality = BROTLI_DEFAULT_QUALITY;
+ s->params.lgwin = BROTLI_DEFAULT_WINDOW;
+ s->params.lgblock = 0;
+
+ s->input_pos_ = 0;
+ s->num_commands_ = 0;
+ s->num_literals_ = 0;
+ s->last_insert_len_ = 0;
+ s->last_flush_pos_ = 0;
+ s->last_processed_pos_ = 0;
+ s->prev_byte_ = 0;
+ s->prev_byte2_ = 0;
+ s->storage_size_ = 0;
+ s->storage_ = 0;
+ s->large_table_ = NULL;
+ s->large_table_size_ = 0;
+ s->cmd_code_numbits_ = 0;
+ s->command_buf_ = NULL;
+ s->literal_buf_ = NULL;
+ s->next_out_ = NULL;
+ s->available_out_ = 0;
+ s->total_out_ = 0;
+ s->stream_state_ = BROTLI_STREAM_PROCESSING;
+ s->is_last_block_emitted_ = BROTLI_FALSE;
+ s->is_initialized_ = BROTLI_FALSE;
+
+ InitHashers(&s->hashers_);
+
+ RingBufferInit(&s->ringbuffer_);
+
+ s->commands_ = 0;
+ s->cmd_alloc_size_ = 0;
+
+ /* Initialize distance cache. */
+ s->dist_cache_[0] = 4;
+ s->dist_cache_[1] = 11;
+ s->dist_cache_[2] = 15;
+ s->dist_cache_[3] = 16;
+ /* Save the state of the distance cache in case we need to restore it for
+ emitting an uncompressed block. */
+ memcpy(s->saved_dist_cache_, s->dist_cache_, sizeof(s->dist_cache_));
+}
+
+BrotliEncoderState* BrotliEncoderCreateInstance(brotli_alloc_func alloc_func,
+ brotli_free_func free_func,
+ void* opaque) {
+ BrotliEncoderState* state = 0;
+ if (!alloc_func && !free_func) {
+ state = (BrotliEncoderState*)malloc(sizeof(BrotliEncoderState));
+ } else if (alloc_func && free_func) {
+ state = (BrotliEncoderState*)alloc_func(opaque, sizeof(BrotliEncoderState));
+ }
+ if (state == 0) {
+ /* BROTLI_DUMP(); */
+ return 0;
+ }
+ BrotliInitMemoryManager(
+ &state->memory_manager_, alloc_func, free_func, opaque);
+ BrotliEncoderInitState(state);
+ return state;
+}
+
+static void BrotliEncoderCleanupState(BrotliEncoderState* s) {
+ MemoryManager* m = &s->memory_manager_;
+ if (BROTLI_IS_OOM(m)) {
+ BrotliWipeOutMemoryManager(m);
+ return;
+ }
+ BROTLI_FREE(m, s->storage_);
+ BROTLI_FREE(m, s->commands_);
+ RingBufferFree(m, &s->ringbuffer_);
+ DestroyHashers(m, &s->hashers_);
+ BROTLI_FREE(m, s->large_table_);
+ BROTLI_FREE(m, s->command_buf_);
+ BROTLI_FREE(m, s->literal_buf_);
+}
+
+/* Deinitializes and frees BrotliEncoderState instance. */
+void BrotliEncoderDestroyInstance(BrotliEncoderState* state) {
+ if (!state) {
+ return;
+ } else {
+ MemoryManager* m = &state->memory_manager_;
+ brotli_free_func free_func = m->free_func;
+ void* opaque = m->opaque;
+ BrotliEncoderCleanupState(state);
+ free_func(opaque, state);
+ }
+}
+
+void BrotliEncoderCopyInputToRingBuffer(BrotliEncoderState* s,
+ const size_t input_size,
+ const uint8_t* input_buffer) {
+ RingBuffer* ringbuffer_ = &s->ringbuffer_;
+ MemoryManager* m = &s->memory_manager_;
+ if (!EnsureInitialized(s)) return;
+ RingBufferWrite(m, input_buffer, input_size, ringbuffer_);
+ if (BROTLI_IS_OOM(m)) return;
+ s->input_pos_ += input_size;
+
+ /* TL;DR: If needed, initialize 7 more bytes in the ring buffer to make the
+ hashing not depend on uninitialized data. This makes compression
+ deterministic and it prevents uninitialized memory warnings in Valgrind.
+ Even without erasing, the output would be valid (but nondeterministic).
+
+ Background information: The compressor stores short (at most 8 bytes)
+ substrings of the input already read in a hash table, and detects
+ repetitions by looking up such substrings in the hash table. If it
+ can find a substring, it checks whether the substring is really there
+ in the ring buffer (or it's just a hash collision). Should the hash
+ table become corrupt, this check makes sure that the output is
+ still valid, albeit the compression ratio would be bad.
+
+ The compressor populates the hash table from the ring buffer as it's
+ reading new bytes from the input. However, at the last few indexes of
+ the ring buffer, there are not enough bytes to build full-length
+ substrings from. Since the hash table always contains full-length
+ substrings, we erase with dummy 0s here to make sure that those
+ substrings will contain 0s at the end instead of uninitialized
+ data.
+
+ Please note that erasing is not necessary (because the
+ memory region is already initialized since he ring buffer
+ has a `tail' that holds a copy of the beginning,) so we
+ skip erasing if we have already gone around at least once in
+ the ring buffer.
+
+ Only clear during the first round of ringbuffer writes. On
+ subsequent rounds data in the ringbuffer would be affected. */
+ if (ringbuffer_->pos_ <= ringbuffer_->mask_) {
+ /* This is the first time when the ring buffer is being written.
+ We clear 7 bytes just after the bytes that have been copied from
+ the input buffer.
+
+ The ringbuffer has a "tail" that holds a copy of the beginning,
+ but only once the ring buffer has been fully written once, i.e.,
+ pos <= mask. For the first time, we need to write values
+ in this tail (where index may be larger than mask), so that
+ we have exactly defined behavior and don't read un-initialized
+ memory. Due to performance reasons, hashing reads data using a
+ LOAD64, which can go 7 bytes beyond the bytes written in the
+ ringbuffer. */
+ memset(ringbuffer_->buffer_ + ringbuffer_->pos_, 0, 7);
+ }
+}
+
+void BrotliEncoderSetCustomDictionary(BrotliEncoderState* s, size_t size,
+ const uint8_t* dict) {
+ size_t max_dict_size = MaxBackwardLimit(s->params.lgwin);
+ size_t dict_size = size;
+ MemoryManager* m = &s->memory_manager_;
+
+ if (!EnsureInitialized(s)) return;
+
+ if (dict_size == 0 ||
+ s->params.quality == FAST_ONE_PASS_COMPRESSION_QUALITY ||
+ s->params.quality == FAST_TWO_PASS_COMPRESSION_QUALITY) {
+ return;
+ }
+ if (size > max_dict_size) {
+ dict += size - max_dict_size;
+ dict_size = max_dict_size;
+ }
+ BrotliEncoderCopyInputToRingBuffer(s, dict_size, dict);
+ s->last_flush_pos_ = dict_size;
+ s->last_processed_pos_ = dict_size;
+ if (dict_size > 0) {
+ s->prev_byte_ = dict[dict_size - 1];
+ }
+ if (dict_size > 1) {
+ s->prev_byte2_ = dict[dict_size - 2];
+ }
+ HashersPrependCustomDictionary(m, &s->hashers_, &s->params, dict_size, dict);
+ if (BROTLI_IS_OOM(m)) return;
+}
+
+/* Marks all input as processed.
+ Returns true if position wrapping occurs. */
+static BROTLI_BOOL UpdateLastProcessedPos(BrotliEncoderState* s) {
+ uint32_t wrapped_last_processed_pos = WrapPosition(s->last_processed_pos_);
+ uint32_t wrapped_input_pos = WrapPosition(s->input_pos_);
+ s->last_processed_pos_ = s->input_pos_;
+ return TO_BROTLI_BOOL(wrapped_input_pos < wrapped_last_processed_pos);
+}
+
+BROTLI_BOOL BrotliEncoderWriteData(
+ BrotliEncoderState* s, const BROTLI_BOOL is_last,
+ const BROTLI_BOOL force_flush, size_t* out_size, uint8_t** output) {
+ const uint64_t delta = UnprocessedInputSize(s);
+ const uint32_t bytes = (uint32_t)delta;
+ const uint32_t wrapped_last_processed_pos =
+ WrapPosition(s->last_processed_pos_);
+ uint8_t* data;
+ uint32_t mask;
+ MemoryManager* m = &s->memory_manager_;
+
+ if (!EnsureInitialized(s)) return BROTLI_FALSE;
+ data = s->ringbuffer_.buffer_;
+ mask = s->ringbuffer_.mask_;
+
+ /* Adding more blocks after "last" block is forbidden. */
+ if (s->is_last_block_emitted_) return BROTLI_FALSE;
+ if (is_last) s->is_last_block_emitted_ = BROTLI_TRUE;
+
+ if (delta > BrotliEncoderInputBlockSize(s)) {
+ return BROTLI_FALSE;
+ }
+ if (s->params.quality == FAST_TWO_PASS_COMPRESSION_QUALITY &&
+ !s->command_buf_) {
+ s->command_buf_ =
+ BROTLI_ALLOC(m, uint32_t, kCompressFragmentTwoPassBlockSize);
+ s->literal_buf_ =
+ BROTLI_ALLOC(m, uint8_t, kCompressFragmentTwoPassBlockSize);
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+ }
+
+ if (s->params.quality == FAST_ONE_PASS_COMPRESSION_QUALITY ||
+ s->params.quality == FAST_TWO_PASS_COMPRESSION_QUALITY) {
+ uint8_t* storage;
+ size_t storage_ix = s->last_byte_bits_;
+ size_t table_size;
+ int* table;
+
+ if (delta == 0 && !is_last) {
+ /* We have no new input data and we don't have to finish the stream, so
+ nothing to do. */
+ *out_size = 0;
+ return BROTLI_TRUE;
+ }
+ storage = GetBrotliStorage(s, 2 * bytes + 500);
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+ storage[0] = s->last_byte_;
+ table = GetHashTable(s, s->params.quality, bytes, &table_size);
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+ if (s->params.quality == FAST_ONE_PASS_COMPRESSION_QUALITY) {
+ BrotliCompressFragmentFast(
+ m, &data[wrapped_last_processed_pos & mask],
+ bytes, is_last,
+ table, table_size,
+ s->cmd_depths_, s->cmd_bits_,
+ &s->cmd_code_numbits_, s->cmd_code_,
+ &storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+ } else {
+ BrotliCompressFragmentTwoPass(
+ m, &data[wrapped_last_processed_pos & mask],
+ bytes, is_last,
+ s->command_buf_, s->literal_buf_,
+ table, table_size,
+ &storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+ }
+ s->last_byte_ = storage[storage_ix >> 3];
+ s->last_byte_bits_ = storage_ix & 7u;
+ UpdateLastProcessedPos(s);
+ *output = &storage[0];
+ *out_size = storage_ix >> 3;
+ return BROTLI_TRUE;
+ }
+
+ {
+ /* Theoretical max number of commands is 1 per 2 bytes. */
+ size_t newsize = s->num_commands_ + bytes / 2 + 1;
+ if (newsize > s->cmd_alloc_size_) {
+ Command* new_commands;
+ /* Reserve a bit more memory to allow merging with a next block
+ without realloc: that would impact speed. */
+ newsize += (bytes / 4) + 16;
+ s->cmd_alloc_size_ = newsize;
+ new_commands = BROTLI_ALLOC(m, Command, newsize);
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+ if (s->commands_) {
+ memcpy(new_commands, s->commands_, sizeof(Command) * s->num_commands_);
+ BROTLI_FREE(m, s->commands_);
+ }
+ s->commands_ = new_commands;
+ }
+ }
+
+ BrotliCreateBackwardReferences(m, bytes, wrapped_last_processed_pos,
+ is_last, data, mask,
+ &s->params,
+ &s->hashers_,
+ s->dist_cache_,
+ &s->last_insert_len_,
+ &s->commands_[s->num_commands_],
+ &s->num_commands_,
+ &s->num_literals_);
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+
+ {
+ const size_t max_length = MaxMetablockSize(&s->params);
+ const size_t max_literals = max_length / 8;
+ const size_t max_commands = max_length / 8;
+ const size_t processed_bytes = (size_t)(s->input_pos_ - s->last_flush_pos_);
+ /* If maximal possible additional block doesn't fit metablock, flush now. */
+ /* TODO: Postpone decision until next block arrives? */
+ const BROTLI_BOOL next_input_fits_metablock = TO_BROTLI_BOOL(
+ processed_bytes + BrotliEncoderInputBlockSize(s) <= max_length);
+ /* If block splitting is not used, then flush as soon as there is some
+ amount of commands / literals produced. */
+ const BROTLI_BOOL should_flush = TO_BROTLI_BOOL(
+ s->params.quality < MIN_QUALITY_FOR_BLOCK_SPLIT &&
+ s->num_literals_ + s->num_commands_ >= MAX_NUM_DELAYED_SYMBOLS);
+ if (!is_last && !force_flush && !should_flush &&
+ next_input_fits_metablock &&
+ s->num_literals_ < max_literals &&
+ s->num_commands_ < max_commands) {
+ /* Merge with next input block. Everything will happen later. */
+ if (UpdateLastProcessedPos(s)) {
+ HashersReset(&s->hashers_, ChooseHasher(&s->params));
+ }
+ *out_size = 0;
+ return BROTLI_TRUE;
+ }
+ }
+
+ /* Create the last insert-only command. */
+ if (s->last_insert_len_ > 0) {
+ InitInsertCommand(&s->commands_[s->num_commands_++], s->last_insert_len_);
+ s->num_literals_ += s->last_insert_len_;
+ s->last_insert_len_ = 0;
+ }
+
+ if (!is_last && s->input_pos_ == s->last_flush_pos_) {
+ /* We have no new input data and we don't have to finish the stream, so
+ nothing to do. */
+ *out_size = 0;
+ return BROTLI_TRUE;
+ }
+ assert(s->input_pos_ >= s->last_flush_pos_);
+ assert(s->input_pos_ > s->last_flush_pos_ || is_last);
+ assert(s->input_pos_ - s->last_flush_pos_ <= 1u << 24);
+ {
+ const uint32_t metablock_size =
+ (uint32_t)(s->input_pos_ - s->last_flush_pos_);
+ uint8_t* storage = GetBrotliStorage(s, 2 * metablock_size + 500);
+ size_t storage_ix = s->last_byte_bits_;
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+ storage[0] = s->last_byte_;
+ WriteMetaBlockInternal(
+ m, data, mask, s->last_flush_pos_, metablock_size, is_last,
+ &s->params, s->prev_byte_, s->prev_byte2_,
+ s->num_literals_, s->num_commands_, s->commands_, s->saved_dist_cache_,
+ s->dist_cache_, &storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+ s->last_byte_ = storage[storage_ix >> 3];
+ s->last_byte_bits_ = storage_ix & 7u;
+ s->last_flush_pos_ = s->input_pos_;
+ if (UpdateLastProcessedPos(s)) {
+ HashersReset(&s->hashers_, ChooseHasher(&s->params));
+ }
+ if (s->last_flush_pos_ > 0) {
+ s->prev_byte_ = data[((uint32_t)s->last_flush_pos_ - 1) & mask];
+ }
+ if (s->last_flush_pos_ > 1) {
+ s->prev_byte2_ = data[(uint32_t)(s->last_flush_pos_ - 2) & mask];
+ }
+ s->num_commands_ = 0;
+ s->num_literals_ = 0;
+ /* Save the state of the distance cache in case we need to restore it for
+ emitting an uncompressed block. */
+ memcpy(s->saved_dist_cache_, s->dist_cache_, sizeof(s->dist_cache_));
+ *output = &storage[0];
+ *out_size = storage_ix >> 3;
+ return BROTLI_TRUE;
+ }
+}
+
+BROTLI_BOOL BrotliEncoderWriteMetaBlock(
+ BrotliEncoderState* s, const size_t input_size, const uint8_t* input_buffer,
+ const BROTLI_BOOL is_last, size_t* encoded_size, uint8_t* encoded_buffer) {
+ size_t out_size = 0;
+ uint8_t* output;
+ int result;
+ if (!EnsureInitialized(s)) return BROTLI_FALSE;
+ BrotliEncoderCopyInputToRingBuffer(s, input_size, input_buffer);
+ result = BrotliEncoderWriteData(
+ s, is_last, /* force_flush */ BROTLI_TRUE, &out_size, &output);
+ if (!result || out_size > *encoded_size) {
+ return BROTLI_FALSE;
+ }
+ if (out_size > 0) {
+ memcpy(encoded_buffer, output, out_size);
+ }
+ *encoded_size = out_size;
+ return BROTLI_TRUE;
+}
+
+BROTLI_BOOL BrotliEncoderWriteMetadata(
+ BrotliEncoderState* s, const size_t input_size, const uint8_t* input_buffer,
+ const BROTLI_BOOL is_last, size_t* encoded_size, uint8_t* encoded_buffer) {
+ uint64_t hdr_buffer_data[2];
+ uint8_t* hdr_buffer = (uint8_t*)&hdr_buffer_data[0];
+ size_t storage_ix;
+ if (!EnsureInitialized(s)) return BROTLI_FALSE;
+ if (input_size > (1 << 24) || input_size + 6 > *encoded_size) {
+ return BROTLI_FALSE;
+ }
+ storage_ix = s->last_byte_bits_;
+ hdr_buffer[0] = s->last_byte_;
+ BrotliWriteBits(1, 0, &storage_ix, hdr_buffer);
+ BrotliWriteBits(2, 3, &storage_ix, hdr_buffer);
+ BrotliWriteBits(1, 0, &storage_ix, hdr_buffer);
+ if (input_size == 0) {
+ BrotliWriteBits(2, 0, &storage_ix, hdr_buffer);
+ *encoded_size = (storage_ix + 7u) >> 3;
+ memcpy(encoded_buffer, hdr_buffer, *encoded_size);
+ } else {
+ uint32_t nbits = (input_size == 1) ? 0 :
+ (Log2FloorNonZero((uint32_t)input_size - 1) + 1);
+ uint32_t nbytes = (nbits + 7) / 8;
+ size_t hdr_size;
+ BrotliWriteBits(2, nbytes, &storage_ix, hdr_buffer);
+ BrotliWriteBits(8 * nbytes, input_size - 1, &storage_ix, hdr_buffer);
+ hdr_size = (storage_ix + 7u) >> 3;
+ memcpy(encoded_buffer, hdr_buffer, hdr_size);
+ memcpy(&encoded_buffer[hdr_size], input_buffer, input_size);
+ *encoded_size = hdr_size + input_size;
+ }
+ if (is_last) {
+ encoded_buffer[(*encoded_size)++] = 3;
+ }
+ s->last_byte_ = 0;
+ s->last_byte_bits_ = 0;
+ return BROTLI_TRUE;
+}
+
+BROTLI_BOOL BrotliEncoderFinishStream(
+ BrotliEncoderState* s, size_t* encoded_size, uint8_t* encoded_buffer) {
+ if (!EnsureInitialized(s)) return BROTLI_FALSE;
+ return BrotliEncoderWriteMetaBlock(
+ s, 0, NULL, 1, encoded_size, encoded_buffer);
+}
+
+static BROTLI_BOOL BrotliCompressBufferQuality10(
+ int lgwin, size_t input_size, const uint8_t* input_buffer,
+ size_t* encoded_size, uint8_t* encoded_buffer) {
+ MemoryManager memory_manager;
+ MemoryManager* m = &memory_manager;
+
+ const size_t mask = BROTLI_SIZE_MAX >> 1;
+ const size_t max_backward_limit = MaxBackwardLimit(lgwin);
+ int dist_cache[4] = { 4, 11, 15, 16 };
+ int saved_dist_cache[4] = { 4, 11, 15, 16 };
+ BROTLI_BOOL ok = BROTLI_TRUE;
+ const size_t max_out_size = *encoded_size;
+ size_t total_out_size = 0;
+ uint8_t last_byte;
+ uint8_t last_byte_bits;
+ H10* hasher;
+
+ const size_t hasher_eff_size =
+ BROTLI_MIN(size_t, input_size, max_backward_limit + 16);
+
+ BrotliEncoderParams params;
+
+ const int lgmetablock = BROTLI_MIN(int, 24, lgwin + 1);
+ size_t max_block_size;
+ const size_t max_metablock_size = (size_t)1 << lgmetablock;
+ const size_t max_literals_per_metablock = max_metablock_size / 8;
+ const size_t max_commands_per_metablock = max_metablock_size / 8;
+ size_t metablock_start = 0;
+ uint8_t prev_byte = 0;
+ uint8_t prev_byte2 = 0;
+
+ params.mode = BROTLI_DEFAULT_MODE;
+ params.quality = 10;
+ params.lgwin = lgwin;
+ params.lgblock = 0;
+ SanitizeParams(&params);
+ params.lgblock = ComputeLgBlock(&params);
+ max_block_size = (size_t)1 << params.lgblock;
+
+ BrotliInitMemoryManager(m, 0, 0, 0);
+
+ assert(input_size <= mask + 1);
+ EncodeWindowBits(lgwin, &last_byte, &last_byte_bits);
+ hasher = BROTLI_ALLOC(m, H10, 1);
+ if (BROTLI_IS_OOM(m)) goto oom;
+ InitializeH10(hasher);
+ InitH10(m, hasher, input_buffer, &params, 0, hasher_eff_size, 1);
+ if (BROTLI_IS_OOM(m)) goto oom;
+
+ while (ok && metablock_start < input_size) {
+ const size_t metablock_end =
+ BROTLI_MIN(size_t, input_size, metablock_start + max_metablock_size);
+ const size_t expected_num_commands =
+ (metablock_end - metablock_start) / 12 + 16;
+ Command* commands = 0;
+ size_t num_commands = 0;
+ size_t last_insert_len = 0;
+ size_t num_literals = 0;
+ size_t metablock_size = 0;
+ size_t cmd_alloc_size = 0;
+ BROTLI_BOOL is_last;
+ uint8_t* storage;
+ size_t storage_ix;
+
+ size_t block_start;
+ for (block_start = metablock_start; block_start < metablock_end; ) {
+ size_t block_size =
+ BROTLI_MIN(size_t, metablock_end - block_start, max_block_size);
+ ZopfliNode* nodes = BROTLI_ALLOC(m, ZopfliNode, block_size + 1);
+ size_t path_size;
+ size_t new_cmd_alloc_size;
+ if (BROTLI_IS_OOM(m)) goto oom;
+ BrotliInitZopfliNodes(nodes, block_size + 1);
+ StitchToPreviousBlockH10(hasher, block_size, block_start,
+ input_buffer, mask);
+ path_size = BrotliZopfliComputeShortestPath(
+ m, block_size, block_start, input_buffer, mask, &params,
+ max_backward_limit, dist_cache, hasher, nodes);
+ if (BROTLI_IS_OOM(m)) goto oom;
+ /* We allocate a command buffer in the first iteration of this loop that
+ will be likely big enough for the whole metablock, so that for most
+ inputs we will not have to reallocate in later iterations. We do the
+ allocation here and not before the loop, because if the input is small,
+ this will be allocated after the zopfli cost model is freed, so this
+ will not increase peak memory usage.
+ TODO: If the first allocation is too small, increase command
+ buffer size exponentially. */
+ new_cmd_alloc_size = BROTLI_MAX(size_t, expected_num_commands,
+ num_commands + path_size + 1);
+ if (cmd_alloc_size != new_cmd_alloc_size) {
+ Command* new_commands = BROTLI_ALLOC(m, Command, new_cmd_alloc_size);
+ if (BROTLI_IS_OOM(m)) goto oom;
+ cmd_alloc_size = new_cmd_alloc_size;
+ if (commands) {
+ memcpy(new_commands, commands, sizeof(Command) * num_commands);
+ BROTLI_FREE(m, commands);
+ }
+ commands = new_commands;
+ }
+ BrotliZopfliCreateCommands(block_size, block_start, max_backward_limit,
+ &nodes[0], dist_cache, &last_insert_len,
+ &commands[num_commands], &num_literals);
+ num_commands += path_size;
+ block_start += block_size;
+ metablock_size += block_size;
+ BROTLI_FREE(m, nodes);
+ if (num_literals > max_literals_per_metablock ||
+ num_commands > max_commands_per_metablock) {
+ break;
+ }
+ }
+
+ if (last_insert_len > 0) {
+ InitInsertCommand(&commands[num_commands++], last_insert_len);
+ num_literals += last_insert_len;
+ }
+
+ is_last = TO_BROTLI_BOOL(metablock_start + metablock_size == input_size);
+ storage = NULL;
+ storage_ix = last_byte_bits;
+
+ if (metablock_size == 0) {
+ /* Write the ISLAST and ISEMPTY bits. */
+ storage = BROTLI_ALLOC(m, uint8_t, 16);
+ if (BROTLI_IS_OOM(m)) goto oom;
+ storage[0] = last_byte;
+ BrotliWriteBits(2, 3, &storage_ix, storage);
+ storage_ix = (storage_ix + 7u) & ~7u;
+ } else if (!ShouldCompress(input_buffer, mask, metablock_start,
+ metablock_size, num_literals, num_commands)) {
+ /* Restore the distance cache, as its last update by
+ CreateBackwardReferences is now unused. */
+ memcpy(dist_cache, saved_dist_cache, 4 * sizeof(dist_cache[0]));
+ storage = BROTLI_ALLOC(m, uint8_t, metablock_size + 16);
+ if (BROTLI_IS_OOM(m)) goto oom;
+ storage[0] = last_byte;
+ BrotliStoreUncompressedMetaBlock(is_last, input_buffer,
+ metablock_start, mask, metablock_size,
+ &storage_ix, storage);
+ } else {
+ uint32_t num_direct_distance_codes = 0;
+ uint32_t distance_postfix_bits = 0;
+ ContextType literal_context_mode = CONTEXT_UTF8;
+ MetaBlockSplit mb;
+ InitMetaBlockSplit(&mb);
+ if (!BrotliIsMostlyUTF8(input_buffer, metablock_start, mask,
+ metablock_size, kMinUTF8Ratio)) {
+ literal_context_mode = CONTEXT_SIGNED;
+ }
+ BrotliBuildMetaBlock(m, input_buffer, metablock_start, mask, &params,
+ prev_byte, prev_byte2,
+ commands, num_commands,
+ literal_context_mode,
+ &mb);
+ if (BROTLI_IS_OOM(m)) goto oom;
+ BrotliOptimizeHistograms(num_direct_distance_codes,
+ distance_postfix_bits,
+ &mb);
+ storage = BROTLI_ALLOC(m, uint8_t, 2 * metablock_size + 500);
+ if (BROTLI_IS_OOM(m)) goto oom;
+ storage[0] = last_byte;
+ BrotliStoreMetaBlock(m, input_buffer, metablock_start, metablock_size,
+ mask, prev_byte, prev_byte2,
+ is_last,
+ num_direct_distance_codes,
+ distance_postfix_bits,
+ literal_context_mode,
+ commands, num_commands,
+ &mb,
+ &storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) goto oom;
+ if (metablock_size + 4 < (storage_ix >> 3)) {
+ /* Restore the distance cache and last byte. */
+ memcpy(dist_cache, saved_dist_cache, 4 * sizeof(dist_cache[0]));
+ storage[0] = last_byte;
+ storage_ix = last_byte_bits;
+ BrotliStoreUncompressedMetaBlock(is_last, input_buffer,
+ metablock_start, mask,
+ metablock_size, &storage_ix, storage);
+ }
+ DestroyMetaBlockSplit(m, &mb);
+ }
+ last_byte = storage[storage_ix >> 3];
+ last_byte_bits = storage_ix & 7u;
+ metablock_start += metablock_size;
+ prev_byte = input_buffer[metablock_start - 1];
+ prev_byte2 = input_buffer[metablock_start - 2];
+ /* Save the state of the distance cache in case we need to restore it for
+ emitting an uncompressed block. */
+ memcpy(saved_dist_cache, dist_cache, 4 * sizeof(dist_cache[0]));
+
+ {
+ const size_t out_size = storage_ix >> 3;
+ total_out_size += out_size;
+ if (total_out_size <= max_out_size) {
+ memcpy(encoded_buffer, storage, out_size);
+ encoded_buffer += out_size;
+ } else {
+ ok = BROTLI_FALSE;
+ }
+ }
+ BROTLI_FREE(m, storage);
+ BROTLI_FREE(m, commands);
+ }
+
+ *encoded_size = total_out_size;
+ CleanupH10(m, hasher);
+ BROTLI_FREE(m, hasher);
+ return ok;
+
+oom:
+ BrotliWipeOutMemoryManager(m);
+ return BROTLI_FALSE;
+}
+
+size_t BrotliEncoderMaxCompressedSize(size_t input_size) {
+ /* [window bits / empty metadata] + N * [uncompressed] + [last empty] */
+ size_t num_large_blocks = input_size >> 24;
+ size_t tail = input_size - (num_large_blocks << 24);
+ size_t tail_overhead = (tail > (1 << 20)) ? 4 : 3;
+ size_t overhead = 2 + (4 * num_large_blocks) + tail_overhead + 1;
+ size_t result = input_size + overhead;
+ if (input_size == 0) return 1;
+ return (result < input_size) ? 0 : result;
+}
+
+/* Wraps data to uncompressed brotli stream with minimal window size.
+ |output| should point at region with at least BrotliEncoderMaxCompressedSize
+ addressable bytes.
+ Returns the length of stream. */
+static size_t MakeUncompressedStream(
+ const uint8_t* input, size_t input_size, uint8_t* output) {
+ size_t size = input_size;
+ size_t result = 0;
+ size_t offset = 0;
+ if (input_size == 0) {
+ output[0] = 6;
+ return 1;
+ }
+ output[result++] = 0x21; /* window bits = 10, is_last = false */
+ output[result++] = 0x03; /* empty metadata, padding */
+ while (size > 0) {
+ uint32_t nibbles = 0;
+ uint32_t chunk_size;
+ uint32_t bits;
+ chunk_size = (size > (1u << 24)) ? (1u << 24) : (uint32_t)size;
+ if (chunk_size > (1u << 16)) nibbles = (chunk_size > (1u << 20)) ? 2 : 1;
+ bits =
+ (nibbles << 1) | ((chunk_size - 1) << 3) | (1u << (19 + 4 * nibbles));
+ output[result++] = (uint8_t)bits;
+ output[result++] = (uint8_t)(bits >> 8);
+ output[result++] = (uint8_t)(bits >> 16);
+ if (nibbles == 2) output[result++] = (uint8_t)(bits >> 24);
+ memcpy(&output[result], &input[offset], chunk_size);
+ result += chunk_size;
+ offset += chunk_size;
+ size -= chunk_size;
+ }
+ output[result++] = 3;
+ return result;
+}
+
+BROTLI_BOOL BrotliEncoderCompress(
+ int quality, int lgwin, BrotliEncoderMode mode, size_t input_size,
+ const uint8_t* input_buffer, size_t* encoded_size,
+ uint8_t* encoded_buffer) {
+ BrotliEncoderState* s;
+ size_t out_size = *encoded_size;
+ const uint8_t* input_start = input_buffer;
+ uint8_t* output_start = encoded_buffer;
+ size_t max_out_size = BrotliEncoderMaxCompressedSize(input_size);
+ if (out_size == 0) {
+ /* Output buffer needs at least one byte. */
+ return BROTLI_FALSE;
+ }
+ if (input_size == 0) {
+ /* Handle the special case of empty input. */
+ *encoded_size = 1;
+ *encoded_buffer = 6;
+ return BROTLI_TRUE;
+ }
+ if (quality == 10) {
+ /* TODO: Implement this direct path for all quality levels. */
+ const int lg_win = BROTLI_MIN(int, 24, BROTLI_MAX(int, 16, lgwin));
+ int ok = BrotliCompressBufferQuality10(lg_win, input_size, input_buffer,
+ encoded_size, encoded_buffer);
+ if (!ok || (max_out_size && *encoded_size > max_out_size)) {
+ goto fallback;
+ }
+ return BROTLI_TRUE;
+ }
+
+ s = BrotliEncoderCreateInstance(0, 0, 0);
+ if (!s) {
+ return BROTLI_FALSE;
+ } else {
+ size_t available_in = input_size;
+ const uint8_t* next_in = input_buffer;
+ size_t available_out = *encoded_size;
+ uint8_t* next_out = encoded_buffer;
+ size_t total_out = 0;
+ BROTLI_BOOL result = BROTLI_FALSE;
+ BrotliEncoderSetParameter(s, BROTLI_PARAM_QUALITY, (uint32_t)quality);
+ BrotliEncoderSetParameter(s, BROTLI_PARAM_LGWIN, (uint32_t)lgwin);
+ BrotliEncoderSetParameter(s, BROTLI_PARAM_MODE, (uint32_t)mode);
+ result = BrotliEncoderCompressStream(s, BROTLI_OPERATION_FINISH,
+ &available_in, &next_in, &available_out, &next_out, &total_out);
+ if (!BrotliEncoderIsFinished(s)) result = 0;
+ *encoded_size = total_out;
+ BrotliEncoderDestroyInstance(s);
+ if (!result || (max_out_size && *encoded_size > max_out_size)) {
+ goto fallback;
+ }
+ return BROTLI_TRUE;
+ }
+fallback:
+ *encoded_size = 0;
+ if (!max_out_size) return BROTLI_FALSE;
+ if (out_size >= max_out_size) {
+ *encoded_size =
+ MakeUncompressedStream(input_start, input_size, output_start);
+ return BROTLI_TRUE;
+ }
+ return BROTLI_FALSE;
+}
+
+static void InjectBytePaddingBlock(BrotliEncoderState* s) {
+ uint32_t seal = s->last_byte_;
+ size_t seal_bits = s->last_byte_bits_;
+ s->last_byte_ = 0;
+ s->last_byte_bits_ = 0;
+ /* is_last = 0, data_nibbles = 11, reseved = 0, meta_nibbles = 00 */
+ seal |= 0x6u << seal_bits;
+ seal_bits += 6;
+ s->flush_buf_[0] = (uint8_t)seal;
+ if (seal_bits > 8) s->flush_buf_[1] = (uint8_t)(seal >> 8);
+ s->next_out_ = s->flush_buf_;
+ s->available_out_ = (seal_bits + 7) >> 3;
+}
+
+static BROTLI_BOOL BrotliEncoderCompressStreamFast(
+ BrotliEncoderState* s, BrotliEncoderOperation op, size_t* available_in,
+ const uint8_t** next_in, size_t* available_out, uint8_t** next_out,
+ size_t* total_out) {
+ const size_t block_size_limit = (size_t)1 << s->params.lgwin;
+ const size_t buf_size = BROTLI_MIN(size_t, kCompressFragmentTwoPassBlockSize,
+ BROTLI_MIN(size_t, *available_in, block_size_limit));
+ uint32_t* tmp_command_buf = NULL;
+ uint32_t* command_buf = NULL;
+ uint8_t* tmp_literal_buf = NULL;
+ uint8_t* literal_buf = NULL;
+ MemoryManager* m = &s->memory_manager_;
+ if (s->params.quality != FAST_ONE_PASS_COMPRESSION_QUALITY &&
+ s->params.quality != FAST_TWO_PASS_COMPRESSION_QUALITY) {
+ return BROTLI_FALSE;
+ }
+ if (s->params.quality == FAST_TWO_PASS_COMPRESSION_QUALITY) {
+ if (!s->command_buf_ && buf_size == kCompressFragmentTwoPassBlockSize) {
+ s->command_buf_ =
+ BROTLI_ALLOC(m, uint32_t, kCompressFragmentTwoPassBlockSize);
+ s->literal_buf_ =
+ BROTLI_ALLOC(m, uint8_t, kCompressFragmentTwoPassBlockSize);
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+ }
+ if (s->command_buf_) {
+ command_buf = s->command_buf_;
+ literal_buf = s->literal_buf_;
+ } else {
+ tmp_command_buf = BROTLI_ALLOC(m, uint32_t, buf_size);
+ tmp_literal_buf = BROTLI_ALLOC(m, uint8_t, buf_size);
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+ command_buf = tmp_command_buf;
+ literal_buf = tmp_literal_buf;
+ }
+ }
+
+ while (BROTLI_TRUE) {
+ if (s->available_out_ == 0 &&
+ s->stream_state_ == BROTLI_STREAM_FLUSH_REQUESTED) {
+ s->stream_state_ = BROTLI_STREAM_PROCESSING;
+ if (s->last_byte_bits_ == 0) break;
+ InjectBytePaddingBlock(s);
+ continue;
+ }
+
+ if (s->available_out_ != 0 && *available_out != 0) {
+ size_t copy_output_size =
+ BROTLI_MIN(size_t, s->available_out_, *available_out);
+ memcpy(*next_out, s->next_out_, copy_output_size);
+ *next_out += copy_output_size;
+ *available_out -= copy_output_size;
+ s->next_out_ += copy_output_size;
+ s->available_out_ -= copy_output_size;
+ s->total_out_ += copy_output_size;
+ if (total_out) *total_out = s->total_out_;
+ continue;
+ }
+
+ /* Compress block only when internal output buffer is empty, stream is not
+ finished, there is no pending flush request, and there is either
+ additional input or pending operation. */
+ if (s->available_out_ == 0 &&
+ s->stream_state_ == BROTLI_STREAM_PROCESSING &&
+ (*available_in != 0 || op != BROTLI_OPERATION_PROCESS)) {
+ size_t block_size = BROTLI_MIN(size_t, block_size_limit, *available_in);
+ BROTLI_BOOL is_last =
+ (*available_in == block_size) && (op == BROTLI_OPERATION_FINISH);
+ BROTLI_BOOL force_flush =
+ (*available_in == block_size) && (op == BROTLI_OPERATION_FLUSH);
+ size_t max_out_size = 2 * block_size + 500;
+ BROTLI_BOOL inplace = BROTLI_TRUE;
+ uint8_t* storage = NULL;
+ size_t storage_ix = s->last_byte_bits_;
+ size_t table_size;
+ int* table;
+
+ if (force_flush && block_size == 0) {
+ s->stream_state_ = BROTLI_STREAM_FLUSH_REQUESTED;
+ continue;
+ }
+ if (max_out_size <= *available_out) {
+ storage = *next_out;
+ } else {
+ inplace = 0;
+ storage = GetBrotliStorage(s, max_out_size);
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+ }
+ storage[0] = s->last_byte_;
+ table = GetHashTable(s, s->params.quality, block_size, &table_size);
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+
+ if (s->params.quality == FAST_ONE_PASS_COMPRESSION_QUALITY) {
+ BrotliCompressFragmentFast(m, *next_in, block_size, is_last, table,
+ table_size, s->cmd_depths_, s->cmd_bits_, &s->cmd_code_numbits_,
+ s->cmd_code_, &storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+ } else {
+ BrotliCompressFragmentTwoPass(m, *next_in, block_size, is_last,
+ command_buf, literal_buf, table, table_size,
+ &storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) return BROTLI_FALSE;
+ }
+ *next_in += block_size;
+ *available_in -= block_size;
+ if (inplace) {
+ size_t out_bytes = storage_ix >> 3;
+ assert(out_bytes <= *available_out);
+ assert((storage_ix & 7) == 0 || out_bytes < *available_out);
+ *next_out += out_bytes;
+ *available_out -= out_bytes;
+ s->total_out_ += out_bytes;
+ if (total_out) *total_out = s->total_out_;
+ } else {
+ size_t out_bytes = storage_ix >> 3;
+ s->next_out_ = storage;
+ s->available_out_ = out_bytes;
+ }
+ s->last_byte_ = storage[storage_ix >> 3];
+ s->last_byte_bits_ = storage_ix & 7u;
+
+ if (force_flush) s->stream_state_ = BROTLI_STREAM_FLUSH_REQUESTED;
+ if (is_last) s->stream_state_ = BROTLI_STREAM_FINISHED;
+ continue;
+ }
+ break;
+ }
+ BROTLI_FREE(m, tmp_command_buf);
+ BROTLI_FREE(m, tmp_literal_buf);
+ return BROTLI_TRUE;
+}
+
+BROTLI_BOOL BrotliEncoderCompressStream(
+ BrotliEncoderState* s, BrotliEncoderOperation op, size_t* available_in,
+ const uint8_t** next_in, size_t* available_out,uint8_t** next_out,
+ size_t* total_out) {
+ if (!EnsureInitialized(s)) return BROTLI_FALSE;
+
+ if (s->stream_state_ != BROTLI_STREAM_PROCESSING && *available_in != 0) {
+ return BROTLI_FALSE;
+ }
+ if (s->params.quality == FAST_ONE_PASS_COMPRESSION_QUALITY ||
+ s->params.quality == FAST_TWO_PASS_COMPRESSION_QUALITY) {
+ return BrotliEncoderCompressStreamFast(s, op, available_in, next_in,
+ available_out, next_out, total_out);
+ }
+ while (BROTLI_TRUE) {
+ size_t remaining_block_size = RemainingInputBlockSize(s);
+
+ if (remaining_block_size != 0 && *available_in != 0) {
+ size_t copy_input_size =
+ BROTLI_MIN(size_t, remaining_block_size, *available_in);
+ BrotliEncoderCopyInputToRingBuffer(s, copy_input_size, *next_in);
+ *next_in += copy_input_size;
+ *available_in -= copy_input_size;
+ continue;
+ }
+
+ if (s->available_out_ == 0 &&
+ s->stream_state_ == BROTLI_STREAM_FLUSH_REQUESTED) {
+ s->stream_state_ = BROTLI_STREAM_PROCESSING;
+ if (s->last_byte_bits_ == 0) break;
+ InjectBytePaddingBlock(s);
+ continue;
+ }
+
+ if (s->available_out_ != 0 && *available_out != 0) {
+ size_t copy_output_size =
+ BROTLI_MIN(size_t, s->available_out_, *available_out);
+ memcpy(*next_out, s->next_out_, copy_output_size);
+ *next_out += copy_output_size;
+ *available_out -= copy_output_size;
+ s->next_out_ += copy_output_size;
+ s->available_out_ -= copy_output_size;
+ s->total_out_ += copy_output_size;
+ if (total_out) *total_out = s->total_out_;
+ continue;
+ }
+
+ /* Compress data only when internal outpuf buffer is empty, stream is not
+ finished and there is no pending flush request. */
+ if (s->available_out_ == 0 &&
+ s->stream_state_ == BROTLI_STREAM_PROCESSING) {
+ if (remaining_block_size == 0 || op != BROTLI_OPERATION_PROCESS) {
+ BROTLI_BOOL is_last = TO_BROTLI_BOOL(
+ (*available_in == 0) && op == BROTLI_OPERATION_FINISH);
+ BROTLI_BOOL force_flush = TO_BROTLI_BOOL(
+ (*available_in == 0) && op == BROTLI_OPERATION_FLUSH);
+ BROTLI_BOOL result = BrotliEncoderWriteData(s, is_last, force_flush,
+ &s->available_out_, &s->next_out_);
+ if (!result) return BROTLI_FALSE;
+ if (force_flush) s->stream_state_ = BROTLI_STREAM_FLUSH_REQUESTED;
+ if (is_last) s->stream_state_ = BROTLI_STREAM_FINISHED;
+ continue;
+ }
+ }
+ break;
+ }
+ return BROTLI_TRUE;
+}
+
+BROTLI_BOOL BrotliEncoderIsFinished(BrotliEncoderState* s) {
+ return TO_BROTLI_BOOL(s->stream_state_ == BROTLI_STREAM_FINISHED &&
+ !BrotliEncoderHasMoreOutput(s));
+}
+
+BROTLI_BOOL BrotliEncoderHasMoreOutput(BrotliEncoderState* s) {
+ return TO_BROTLI_BOOL(s->available_out_ != 0);
+}
+
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/encode.cc b/thirdparty/brotli/enc/encode.cc
deleted file mode 100644
index 3e1c79ad..00000000
--- a/thirdparty/brotli/enc/encode.cc
+++ /dev/null
@@ -1,1175 +0,0 @@
-/* Copyright 2013 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-// Implementation of Brotli compressor.
-
-#include "./encode.h"
-
-#include <algorithm>
-#include <cstdlib> /* free, malloc */
-#include <cstring> /* memset */
-#include <limits>
-
-#include "./backward_references.h"
-#include "./bit_cost.h"
-#include "./block_splitter.h"
-#include "./brotli_bit_stream.h"
-#include "./cluster.h"
-#include "./context.h"
-#include "./metablock.h"
-#include "./transform.h"
-#include "./compress_fragment.h"
-#include "./compress_fragment_two_pass.h"
-#include "./entropy_encode.h"
-#include "./fast_log.h"
-#include "./hash.h"
-#include "./histogram.h"
-#include "./prefix.h"
-#include "./utf8_util.h"
-#include "./write_bits.h"
-
-namespace brotli {
-
-static const int kMinQualityForBlockSplit = 4;
-static const int kMinQualityForContextModeling = 5;
-static const int kMinQualityForOptimizeHistograms = 4;
-// For quality 2 there is no block splitting, so we buffer at most this much
-// literals and commands.
-static const size_t kMaxNumDelayedSymbols = 0x2fff;
-
-#define COPY_ARRAY(dst, src) memcpy(dst, src, sizeof(src));
-
-static void RecomputeDistancePrefixes(Command* cmds,
- size_t num_commands,
- uint32_t num_direct_distance_codes,
- uint32_t distance_postfix_bits) {
- if (num_direct_distance_codes == 0 && distance_postfix_bits == 0) {
- return;
- }
- for (size_t i = 0; i < num_commands; ++i) {
- Command* cmd = &cmds[i];
- if (cmd->copy_len() && cmd->cmd_prefix_ >= 128) {
- PrefixEncodeCopyDistance(cmd->DistanceCode(),
- num_direct_distance_codes,
- distance_postfix_bits,
- &cmd->dist_prefix_,
- &cmd->dist_extra_);
- }
- }
-}
-
-/* Wraps 64-bit input position to 32-bit ringbuffer position preserving
- "not-a-first-lap" feature. */
-static uint32_t WrapPosition(uint64_t position) {
- uint32_t result = static_cast<uint32_t>(position);
- if (position > (1u << 30)) {
- result = (result & ((1u << 30) - 1)) | (1u << 30);
- }
- return result;
-}
-
-uint8_t* BrotliCompressor::GetBrotliStorage(size_t size) {
- if (storage_size_ < size) {
- delete[] storage_;
- storage_ = new uint8_t[size];
- storage_size_ = size;
- }
- return storage_;
-}
-
-static size_t MaxHashTableSize(int quality) {
- return quality == 0 ? 1 << 15 : 1 << 17;
-}
-
-static size_t HashTableSize(size_t max_table_size, size_t input_size) {
- size_t htsize = 256;
- while (htsize < max_table_size && htsize < input_size) {
- htsize <<= 1;
- }
- return htsize;
-}
-
-int* BrotliCompressor::GetHashTable(int quality,
- size_t input_size,
- size_t* table_size) {
- // Use smaller hash table when input.size() is smaller, since we
- // fill the table, incurring O(hash table size) overhead for
- // compression, and if the input is short, we won't need that
- // many hash table entries anyway.
- const size_t max_table_size = MaxHashTableSize(quality);
- assert(max_table_size >= 256);
- size_t htsize = HashTableSize(max_table_size, input_size);
-
- int* table;
- if (htsize <= sizeof(small_table_) / sizeof(small_table_[0])) {
- table = small_table_;
- } else {
- if (large_table_ == NULL) {
- large_table_ = new int[max_table_size];
- }
- table = large_table_;
- }
-
- *table_size = htsize;
- memset(table, 0, htsize * sizeof(*table));
- return table;
-}
-
-static void EncodeWindowBits(int lgwin, uint8_t* last_byte,
- uint8_t* last_byte_bits) {
- if (lgwin == 16) {
- *last_byte = 0;
- *last_byte_bits = 1;
- } else if (lgwin == 17) {
- *last_byte = 1;
- *last_byte_bits = 7;
- } else if (lgwin > 17) {
- *last_byte = static_cast<uint8_t>(((lgwin - 17) << 1) | 1);
- *last_byte_bits = 4;
- } else {
- *last_byte = static_cast<uint8_t>(((lgwin - 8) << 4) | 1);
- *last_byte_bits = 7;
- }
-}
-
-// Initializes the command and distance prefix codes for the first block.
-static void InitCommandPrefixCodes(uint8_t cmd_depths[128],
- uint16_t cmd_bits[128],
- uint8_t cmd_code[512],
- size_t* cmd_code_numbits) {
- static const uint8_t kDefaultCommandDepths[128] = {
- 0, 4, 4, 5, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8,
- 0, 0, 0, 4, 4, 4, 4, 4, 5, 5, 6, 6, 6, 6, 7, 7,
- 7, 7, 10, 10, 10, 10, 10, 10, 0, 4, 4, 5, 5, 5, 6, 6,
- 7, 8, 8, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
- 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 6, 6, 6, 6, 6, 6, 5, 5, 5, 5, 5, 5, 4, 4, 4, 4,
- 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 7, 7, 7, 8, 10,
- 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
- };
- static const uint16_t kDefaultCommandBits[128] = {
- 0, 0, 8, 9, 3, 35, 7, 71,
- 39, 103, 23, 47, 175, 111, 239, 31,
- 0, 0, 0, 4, 12, 2, 10, 6,
- 13, 29, 11, 43, 27, 59, 87, 55,
- 15, 79, 319, 831, 191, 703, 447, 959,
- 0, 14, 1, 25, 5, 21, 19, 51,
- 119, 159, 95, 223, 479, 991, 63, 575,
- 127, 639, 383, 895, 255, 767, 511, 1023,
- 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 27, 59, 7, 39, 23, 55, 30, 1, 17, 9, 25, 5, 0, 8, 4, 12,
- 2, 10, 6, 21, 13, 29, 3, 19, 11, 15, 47, 31, 95, 63, 127, 255,
- 767, 2815, 1791, 3839, 511, 2559, 1535, 3583, 1023, 3071, 2047, 4095,
- };
- COPY_ARRAY(cmd_depths, kDefaultCommandDepths);
- COPY_ARRAY(cmd_bits, kDefaultCommandBits);
-
- // Initialize the pre-compressed form of the command and distance prefix
- // codes.
- static const uint8_t kDefaultCommandCode[] = {
- 0xff, 0x77, 0xd5, 0xbf, 0xe7, 0xde, 0xea, 0x9e, 0x51, 0x5d, 0xde, 0xc6,
- 0x70, 0x57, 0xbc, 0x58, 0x58, 0x58, 0xd8, 0xd8, 0x58, 0xd5, 0xcb, 0x8c,
- 0xea, 0xe0, 0xc3, 0x87, 0x1f, 0x83, 0xc1, 0x60, 0x1c, 0x67, 0xb2, 0xaa,
- 0x06, 0x83, 0xc1, 0x60, 0x30, 0x18, 0xcc, 0xa1, 0xce, 0x88, 0x54, 0x94,
- 0x46, 0xe1, 0xb0, 0xd0, 0x4e, 0xb2, 0xf7, 0x04, 0x00,
- };
- static const int kDefaultCommandCodeNumBits = 448;
- COPY_ARRAY(cmd_code, kDefaultCommandCode);
- *cmd_code_numbits = kDefaultCommandCodeNumBits;
-}
-
-// Decide about the context map based on the ability of the prediction
-// ability of the previous byte UTF8-prefix on the next byte. The
-// prediction ability is calculated as shannon entropy. Here we need
-// shannon entropy instead of 'BitsEntropy' since the prefix will be
-// encoded with the remaining 6 bits of the following byte, and
-// BitsEntropy will assume that symbol to be stored alone using Huffman
-// coding.
-static void ChooseContextMap(int quality,
- uint32_t* bigram_histo,
- size_t* num_literal_contexts,
- const uint32_t** literal_context_map) {
- uint32_t monogram_histo[3] = { 0 };
- uint32_t two_prefix_histo[6] = { 0 };
- size_t total = 0;
- for (size_t i = 0; i < 9; ++i) {
- total += bigram_histo[i];
- monogram_histo[i % 3] += bigram_histo[i];
- size_t j = i;
- if (j >= 6) {
- j -= 6;
- }
- two_prefix_histo[j] += bigram_histo[i];
- }
- size_t dummy;
- double entropy1 = ShannonEntropy(monogram_histo, 3, &dummy);
- double entropy2 = (ShannonEntropy(two_prefix_histo, 3, &dummy) +
- ShannonEntropy(two_prefix_histo + 3, 3, &dummy));
- double entropy3 = 0;
- for (size_t k = 0; k < 3; ++k) {
- entropy3 += ShannonEntropy(bigram_histo + 3 * k, 3, &dummy);
- }
-
- assert(total != 0);
- double scale = 1.0 / static_cast<double>(total);
- entropy1 *= scale;
- entropy2 *= scale;
- entropy3 *= scale;
-
- static const uint32_t kStaticContextMapContinuation[64] = {
- 1, 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- };
- static const uint32_t kStaticContextMapSimpleUTF8[64] = {
- 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- };
- if (quality < 7) {
- // 3 context models is a bit slower, don't use it at lower qualities.
- entropy3 = entropy1 * 10;
- }
- // If expected savings by symbol are less than 0.2 bits, skip the
- // context modeling -- in exchange for faster decoding speed.
- if (entropy1 - entropy2 < 0.2 &&
- entropy1 - entropy3 < 0.2) {
- *num_literal_contexts = 1;
- } else if (entropy2 - entropy3 < 0.02) {
- *num_literal_contexts = 2;
- *literal_context_map = kStaticContextMapSimpleUTF8;
- } else {
- *num_literal_contexts = 3;
- *literal_context_map = kStaticContextMapContinuation;
- }
-}
-
-static void DecideOverLiteralContextModeling(
- const uint8_t* input,
- size_t start_pos,
- size_t length,
- size_t mask,
- int quality,
- ContextType* literal_context_mode,
- size_t* num_literal_contexts,
- const uint32_t** literal_context_map) {
- if (quality < kMinQualityForContextModeling || length < 64) {
- return;
- }
- // Gather bigram data of the UTF8 byte prefixes. To make the analysis of
- // UTF8 data faster we only examine 64 byte long strides at every 4kB
- // intervals.
- const size_t end_pos = start_pos + length;
- uint32_t bigram_prefix_histo[9] = { 0 };
- for (; start_pos + 64 <= end_pos; start_pos += 4096) {
- static const int lut[4] = { 0, 0, 1, 2 };
- const size_t stride_end_pos = start_pos + 64;
- int prev = lut[input[start_pos & mask] >> 6] * 3;
- for (size_t pos = start_pos + 1; pos < stride_end_pos; ++pos) {
- const uint8_t literal = input[pos & mask];
- ++bigram_prefix_histo[prev + lut[literal >> 6]];
- prev = lut[literal >> 6] * 3;
- }
- }
- *literal_context_mode = CONTEXT_UTF8;
- ChooseContextMap(quality, &bigram_prefix_histo[0], num_literal_contexts,
- literal_context_map);
-}
-
-static bool ShouldCompress(const uint8_t* data,
- const size_t mask,
- const uint64_t last_flush_pos,
- const size_t bytes,
- const size_t num_literals,
- const size_t num_commands) {
- if (num_commands < (bytes >> 8) + 2) {
- if (num_literals > 0.99 * static_cast<double>(bytes)) {
- uint32_t literal_histo[256] = { 0 };
- static const uint32_t kSampleRate = 13;
- static const double kMinEntropy = 7.92;
- const double bit_cost_threshold =
- static_cast<double>(bytes) * kMinEntropy / kSampleRate;
- size_t t = (bytes + kSampleRate - 1) / kSampleRate;
- uint32_t pos = static_cast<uint32_t>(last_flush_pos);
- for (size_t i = 0; i < t; i++) {
- ++literal_histo[data[pos & mask]];
- pos += kSampleRate;
- }
- if (BitsEntropy(literal_histo, 256) > bit_cost_threshold) {
- return false;
- }
- }
- }
- return true;
-}
-
-static void WriteMetaBlockInternal(const uint8_t* data,
- const size_t mask,
- const uint64_t last_flush_pos,
- const size_t bytes,
- const bool is_last,
- const int quality,
- const bool font_mode,
- const uint8_t prev_byte,
- const uint8_t prev_byte2,
- const size_t num_literals,
- const size_t num_commands,
- Command* commands,
- const int* saved_dist_cache,
- int* dist_cache,
- size_t* storage_ix,
- uint8_t* storage) {
- if (bytes == 0) {
- // Write the ISLAST and ISEMPTY bits.
- WriteBits(2, 3, storage_ix, storage);
- *storage_ix = (*storage_ix + 7u) & ~7u;
- return;
- }
-
- if (!ShouldCompress(data, mask, last_flush_pos, bytes,
- num_literals, num_commands)) {
- // Restore the distance cache, as its last update by
- // CreateBackwardReferences is now unused.
- memcpy(dist_cache, saved_dist_cache, 4 * sizeof(dist_cache[0]));
- StoreUncompressedMetaBlock(is_last, data,
- WrapPosition(last_flush_pos), mask, bytes,
- storage_ix, storage);
- return;
- }
-
- const uint8_t last_byte = storage[0];
- const uint8_t last_byte_bits = static_cast<uint8_t>(*storage_ix & 0xff);
- uint32_t num_direct_distance_codes = 0;
- uint32_t distance_postfix_bits = 0;
- if (quality > 9 && font_mode) {
- num_direct_distance_codes = 12;
- distance_postfix_bits = 1;
- RecomputeDistancePrefixes(commands,
- num_commands,
- num_direct_distance_codes,
- distance_postfix_bits);
- }
- if (quality == 2) {
- StoreMetaBlockFast(data, WrapPosition(last_flush_pos),
- bytes, mask, is_last,
- commands, num_commands,
- storage_ix, storage);
- } else if (quality < kMinQualityForBlockSplit) {
- StoreMetaBlockTrivial(data, WrapPosition(last_flush_pos),
- bytes, mask, is_last,
- commands, num_commands,
- storage_ix, storage);
- } else {
- MetaBlockSplit mb;
- ContextType literal_context_mode = CONTEXT_UTF8;
- if (quality <= 9) {
- size_t num_literal_contexts = 1;
- const uint32_t* literal_context_map = NULL;
- DecideOverLiteralContextModeling(data, WrapPosition(last_flush_pos),
- bytes, mask,
- quality,
- &literal_context_mode,
- &num_literal_contexts,
- &literal_context_map);
- if (literal_context_map == NULL) {
- BuildMetaBlockGreedy(data, WrapPosition(last_flush_pos), mask,
- commands, num_commands, &mb);
- } else {
- BuildMetaBlockGreedyWithContexts(data, WrapPosition(last_flush_pos),
- mask,
- prev_byte, prev_byte2,
- literal_context_mode,
- num_literal_contexts,
- literal_context_map,
- commands, num_commands,
- &mb);
- }
- } else {
- if (!IsMostlyUTF8(data, WrapPosition(last_flush_pos), mask, bytes,
- kMinUTF8Ratio)) {
- literal_context_mode = CONTEXT_SIGNED;
- }
- BuildMetaBlock(data, WrapPosition(last_flush_pos), mask,
- prev_byte, prev_byte2,
- commands, num_commands,
- literal_context_mode,
- &mb);
- }
- if (quality >= kMinQualityForOptimizeHistograms) {
- OptimizeHistograms(num_direct_distance_codes,
- distance_postfix_bits,
- &mb);
- }
- StoreMetaBlock(data, WrapPosition(last_flush_pos), bytes, mask,
- prev_byte, prev_byte2,
- is_last,
- num_direct_distance_codes,
- distance_postfix_bits,
- literal_context_mode,
- commands, num_commands,
- mb,
- storage_ix, storage);
- }
- if (bytes + 4 < (*storage_ix >> 3)) {
- // Restore the distance cache and last byte.
- memcpy(dist_cache, saved_dist_cache, 4 * sizeof(dist_cache[0]));
- storage[0] = last_byte;
- *storage_ix = last_byte_bits;
- StoreUncompressedMetaBlock(is_last, data,
- WrapPosition(last_flush_pos), mask,
- bytes, storage_ix, storage);
- }
-}
-
-BrotliCompressor::BrotliCompressor(BrotliParams params)
- : params_(params),
- hashers_(new Hashers()),
- input_pos_(0),
- num_commands_(0),
- num_literals_(0),
- last_insert_len_(0),
- last_flush_pos_(0),
- last_processed_pos_(0),
- prev_byte_(0),
- prev_byte2_(0),
- storage_size_(0),
- storage_(0),
- large_table_(NULL),
- cmd_code_numbits_(0),
- command_buf_(NULL),
- literal_buf_(NULL) {
- // Sanitize params.
- params_.quality = std::max(0, params_.quality);
- if (params_.lgwin < kMinWindowBits) {
- params_.lgwin = kMinWindowBits;
- } else if (params_.lgwin > kMaxWindowBits) {
- params_.lgwin = kMaxWindowBits;
- }
- if (params_.quality <= 1) {
- params_.lgblock = params_.lgwin;
- } else if (params_.quality < kMinQualityForBlockSplit) {
- params_.lgblock = 14;
- } else if (params_.lgblock == 0) {
- params_.lgblock = 16;
- if (params_.quality >= 9 && params_.lgwin > params_.lgblock) {
- params_.lgblock = std::min(18, params_.lgwin);
- }
- } else {
- params_.lgblock = std::min(kMaxInputBlockBits,
- std::max(kMinInputBlockBits, params_.lgblock));
- }
-
- // Initialize input and literal cost ring buffers.
- // We allocate at least lgwin + 1 bits for the ring buffer so that the newly
- // added block fits there completely and we still get lgwin bits and at least
- // read_block_size_bits + 1 bits because the copy tail length needs to be
- // smaller than ringbuffer size.
- int ringbuffer_bits = std::max(params_.lgwin + 1, params_.lgblock + 1);
- ringbuffer_ = new RingBuffer(ringbuffer_bits, params_.lgblock);
-
- commands_ = 0;
- cmd_alloc_size_ = 0;
-
- // Initialize last byte with stream header.
- EncodeWindowBits(params_.lgwin, &last_byte_, &last_byte_bits_);
-
- // Initialize distance cache.
- dist_cache_[0] = 4;
- dist_cache_[1] = 11;
- dist_cache_[2] = 15;
- dist_cache_[3] = 16;
- // Save the state of the distance cache in case we need to restore it for
- // emitting an uncompressed block.
- memcpy(saved_dist_cache_, dist_cache_, sizeof(dist_cache_));
-
- if (params_.quality == 0) {
- InitCommandPrefixCodes(cmd_depths_, cmd_bits_,
- cmd_code_, &cmd_code_numbits_);
- } else if (params_.quality == 1) {
- command_buf_ = new uint32_t[kCompressFragmentTwoPassBlockSize];
- literal_buf_ = new uint8_t[kCompressFragmentTwoPassBlockSize];
- }
-
- // Initialize hashers.
- hash_type_ = std::min(10, params_.quality);
- hashers_->Init(hash_type_);
-}
-
-BrotliCompressor::~BrotliCompressor(void) {
- delete[] storage_;
- free(commands_);
- delete ringbuffer_;
- delete hashers_;
- delete[] large_table_;
- delete[] command_buf_;
- delete[] literal_buf_;
-}
-
-void BrotliCompressor::CopyInputToRingBuffer(const size_t input_size,
- const uint8_t* input_buffer) {
- ringbuffer_->Write(input_buffer, input_size);
- input_pos_ += input_size;
-
- // TL;DR: If needed, initialize 7 more bytes in the ring buffer to make the
- // hashing not depend on uninitialized data. This makes compression
- // deterministic and it prevents uninitialized memory warnings in Valgrind.
- // Even without erasing, the output would be valid (but nondeterministic).
- //
- // Background information: The compressor stores short (at most 8 bytes)
- // substrings of the input already read in a hash table, and detects
- // repetitions by looking up such substrings in the hash table. If it
- // can find a substring, it checks whether the substring is really there
- // in the ring buffer (or it's just a hash collision). Should the hash
- // table become corrupt, this check makes sure that the output is
- // still valid, albeit the compression ratio would be bad.
- //
- // The compressor populates the hash table from the ring buffer as it's
- // reading new bytes from the input. However, at the last few indexes of
- // the ring buffer, there are not enough bytes to build full-length
- // substrings from. Since the hash table always contains full-length
- // substrings, we erase with dummy 0s here to make sure that those
- // substrings will contain 0s at the end instead of uninitialized
- // data.
- //
- // Please note that erasing is not necessary (because the
- // memory region is already initialized since he ring buffer
- // has a `tail' that holds a copy of the beginning,) so we
- // skip erasing if we have already gone around at least once in
- // the ring buffer.
- size_t pos = ringbuffer_->position();
- // Only clear during the first round of ringbuffer writes. On
- // subsequent rounds data in the ringbuffer would be affected.
- if (pos <= ringbuffer_->mask()) {
- // This is the first time when the ring buffer is being written.
- // We clear 7 bytes just after the bytes that have been copied from
- // the input buffer.
- //
- // The ringbuffer has a "tail" that holds a copy of the beginning,
- // but only once the ring buffer has been fully written once, i.e.,
- // pos <= mask. For the first time, we need to write values
- // in this tail (where index may be larger than mask), so that
- // we have exactly defined behavior and don't read un-initialized
- // memory. Due to performance reasons, hashing reads data using a
- // LOAD64, which can go 7 bytes beyond the bytes written in the
- // ringbuffer.
- memset(ringbuffer_->start() + pos, 0, 7);
- }
-}
-
-void BrotliCompressor::BrotliSetCustomDictionary(
- const size_t size, const uint8_t* dict) {
- CopyInputToRingBuffer(size, dict);
- last_flush_pos_ = size;
- last_processed_pos_ = size;
- if (size > 0) {
- prev_byte_ = dict[size - 1];
- }
- if (size > 1) {
- prev_byte2_ = dict[size - 2];
- }
- hashers_->PrependCustomDictionary(hash_type_, params_.lgwin, size, dict);
-}
-
-bool BrotliCompressor::WriteBrotliData(const bool is_last,
- const bool force_flush,
- size_t* out_size,
- uint8_t** output) {
- const uint64_t delta = input_pos_ - last_processed_pos_;
- const uint8_t* data = ringbuffer_->start();
- const uint32_t mask = ringbuffer_->mask();
-
- if (delta > input_block_size()) {
- return false;
- }
- const uint32_t bytes = static_cast<uint32_t>(delta);
-
- if (params_.quality <= 1) {
- if (delta == 0 && !is_last) {
- // We have no new input data and we don't have to finish the stream, so
- // nothing to do.
- *out_size = 0;
- return true;
- }
- const size_t max_out_size = 2 * bytes + 500;
- uint8_t* storage = GetBrotliStorage(max_out_size);
- storage[0] = last_byte_;
- size_t storage_ix = last_byte_bits_;
- size_t table_size;
- int* table = GetHashTable(params_.quality, bytes, &table_size);
- if (params_.quality == 0) {
- BrotliCompressFragmentFast(
- &data[WrapPosition(last_processed_pos_) & mask],
- bytes, is_last,
- table, table_size,
- cmd_depths_, cmd_bits_,
- &cmd_code_numbits_, cmd_code_,
- &storage_ix, storage);
- } else {
- BrotliCompressFragmentTwoPass(
- &data[WrapPosition(last_processed_pos_) & mask],
- bytes, is_last,
- command_buf_, literal_buf_,
- table, table_size,
- &storage_ix, storage);
- }
- last_byte_ = storage[storage_ix >> 3];
- last_byte_bits_ = storage_ix & 7u;
- last_processed_pos_ = input_pos_;
- *output = &storage[0];
- *out_size = storage_ix >> 3;
- return true;
- }
-
- // Theoretical max number of commands is 1 per 2 bytes.
- size_t newsize = num_commands_ + bytes / 2 + 1;
- if (newsize > cmd_alloc_size_) {
- // Reserve a bit more memory to allow merging with a next block
- // without realloc: that would impact speed.
- newsize += (bytes / 4) + 16;
- cmd_alloc_size_ = newsize;
- commands_ =
- static_cast<Command*>(realloc(commands_, sizeof(Command) * newsize));
- }
-
- CreateBackwardReferences(bytes, WrapPosition(last_processed_pos_),
- is_last, data, mask,
- params_.quality,
- params_.lgwin,
- hashers_,
- hash_type_,
- dist_cache_,
- &last_insert_len_,
- &commands_[num_commands_],
- &num_commands_,
- &num_literals_);
-
- size_t max_length = std::min<size_t>(mask + 1, 1u << kMaxInputBlockBits);
- const size_t max_literals = max_length / 8;
- const size_t max_commands = max_length / 8;
- if (!is_last && !force_flush &&
- (params_.quality >= kMinQualityForBlockSplit ||
- (num_literals_ + num_commands_ < kMaxNumDelayedSymbols)) &&
- num_literals_ < max_literals &&
- num_commands_ < max_commands &&
- input_pos_ + input_block_size() <= last_flush_pos_ + max_length) {
- // Merge with next input block. Everything will happen later.
- last_processed_pos_ = input_pos_;
- *out_size = 0;
- return true;
- }
-
- // Create the last insert-only command.
- if (last_insert_len_ > 0) {
- brotli::Command cmd(last_insert_len_);
- commands_[num_commands_++] = cmd;
- num_literals_ += last_insert_len_;
- last_insert_len_ = 0;
- }
-
- if (!is_last && input_pos_ == last_flush_pos_) {
- // We have no new input data and we don't have to finish the stream, so
- // nothing to do.
- *out_size = 0;
- return true;
- }
- assert(input_pos_ >= last_flush_pos_);
- assert(input_pos_ > last_flush_pos_ || is_last);
- assert(input_pos_ - last_flush_pos_ <= 1u << 24);
- const uint32_t metablock_size =
- static_cast<uint32_t>(input_pos_ - last_flush_pos_);
- const size_t max_out_size = 2 * metablock_size + 500;
- uint8_t* storage = GetBrotliStorage(max_out_size);
- storage[0] = last_byte_;
- size_t storage_ix = last_byte_bits_;
- bool font_mode = params_.mode == BrotliParams::MODE_FONT;
- WriteMetaBlockInternal(
- data, mask, last_flush_pos_, metablock_size, is_last, params_.quality,
- font_mode, prev_byte_, prev_byte2_, num_literals_, num_commands_,
- commands_, saved_dist_cache_, dist_cache_, &storage_ix, storage);
- last_byte_ = storage[storage_ix >> 3];
- last_byte_bits_ = storage_ix & 7u;
- last_flush_pos_ = input_pos_;
- last_processed_pos_ = input_pos_;
- if (last_flush_pos_ > 0) {
- prev_byte_ = data[(static_cast<uint32_t>(last_flush_pos_) - 1) & mask];
- }
- if (last_flush_pos_ > 1) {
- prev_byte2_ = data[(static_cast<uint32_t>(last_flush_pos_) - 2) & mask];
- }
- num_commands_ = 0;
- num_literals_ = 0;
- // Save the state of the distance cache in case we need to restore it for
- // emitting an uncompressed block.
- memcpy(saved_dist_cache_, dist_cache_, sizeof(dist_cache_));
- *output = &storage[0];
- *out_size = storage_ix >> 3;
- return true;
-}
-
-bool BrotliCompressor::WriteMetaBlock(const size_t input_size,
- const uint8_t* input_buffer,
- const bool is_last,
- size_t* encoded_size,
- uint8_t* encoded_buffer) {
- CopyInputToRingBuffer(input_size, input_buffer);
- size_t out_size = 0;
- uint8_t* output;
- if (!WriteBrotliData(is_last, /* force_flush = */ true, &out_size, &output) ||
- out_size > *encoded_size) {
- return false;
- }
- if (out_size > 0) {
- memcpy(encoded_buffer, output, out_size);
- }
- *encoded_size = out_size;
- return true;
-}
-
-bool BrotliCompressor::WriteMetadata(const size_t input_size,
- const uint8_t* input_buffer,
- const bool is_last,
- size_t* encoded_size,
- uint8_t* encoded_buffer) {
- if (input_size > (1 << 24) || input_size + 6 > *encoded_size) {
- return false;
- }
- uint64_t hdr_buffer_data[2];
- uint8_t* hdr_buffer = reinterpret_cast<uint8_t*>(&hdr_buffer_data[0]);
- size_t storage_ix = last_byte_bits_;
- hdr_buffer[0] = last_byte_;
- WriteBits(1, 0, &storage_ix, hdr_buffer);
- WriteBits(2, 3, &storage_ix, hdr_buffer);
- WriteBits(1, 0, &storage_ix, hdr_buffer);
- if (input_size == 0) {
- WriteBits(2, 0, &storage_ix, hdr_buffer);
- *encoded_size = (storage_ix + 7u) >> 3;
- memcpy(encoded_buffer, hdr_buffer, *encoded_size);
- } else {
- uint32_t nbits = (input_size == 1) ? 0 : (Log2FloorNonZero(
- static_cast<uint32_t>(input_size) - 1) + 1);
- uint32_t nbytes = (nbits + 7) / 8;
- WriteBits(2, nbytes, &storage_ix, hdr_buffer);
- WriteBits(8 * nbytes, input_size - 1, &storage_ix, hdr_buffer);
- size_t hdr_size = (storage_ix + 7u) >> 3;
- memcpy(encoded_buffer, hdr_buffer, hdr_size);
- memcpy(&encoded_buffer[hdr_size], input_buffer, input_size);
- *encoded_size = hdr_size + input_size;
- }
- if (is_last) {
- encoded_buffer[(*encoded_size)++] = 3;
- }
- last_byte_ = 0;
- last_byte_bits_ = 0;
- return true;
-}
-
-bool BrotliCompressor::FinishStream(
- size_t* encoded_size, uint8_t* encoded_buffer) {
- return WriteMetaBlock(0, NULL, true, encoded_size, encoded_buffer);
-}
-
-static int BrotliCompressBufferQuality10(int lgwin,
- size_t input_size,
- const uint8_t* input_buffer,
- size_t* encoded_size,
- uint8_t* encoded_buffer) {
- const size_t mask = std::numeric_limits<size_t>::max() >> 1;
- assert(input_size <= mask + 1);
- const size_t max_backward_limit = (1 << lgwin) - 16;
- int dist_cache[4] = { 4, 11, 15, 16 };
- int saved_dist_cache[4] = { 4, 11, 15, 16 };
- int ok = 1;
- const size_t max_out_size = *encoded_size;
- size_t total_out_size = 0;
- uint8_t last_byte;
- uint8_t last_byte_bits;
- EncodeWindowBits(lgwin, &last_byte, &last_byte_bits);
-
- Hashers::H10* hasher = new Hashers::H10;
- const size_t hasher_eff_size = std::min(input_size, max_backward_limit + 16);
- hasher->Init(lgwin, 0, hasher_eff_size, true);
-
- const int lgblock = std::min(18, lgwin);
- const int lgmetablock = std::min(24, lgwin + 1);
- const size_t max_block_size = static_cast<size_t>(1) << lgblock;
- const size_t max_metablock_size = static_cast<size_t>(1) << lgmetablock;
- const size_t max_literals_per_metablock = max_metablock_size / 8;
- const size_t max_commands_per_metablock = max_metablock_size / 8;
- size_t metablock_start = 0;
- uint8_t prev_byte = 0;
- uint8_t prev_byte2 = 0;
- while (ok && metablock_start < input_size) {
- const size_t metablock_end =
- std::min(input_size, metablock_start + max_metablock_size);
- const size_t expected_num_commands =
- (metablock_end - metablock_start) / 12 + 16;
- Command* commands = 0;
- size_t num_commands = 0;
- size_t last_insert_len = 0;
- size_t num_literals = 0;
- size_t metablock_size = 0;
- size_t cmd_alloc_size = 0;
-
- for (size_t block_start = metablock_start; block_start < metablock_end; ) {
- size_t block_size = std::min(metablock_end - block_start, max_block_size);
- ZopfliNode* nodes = new ZopfliNode[block_size + 1];
- std::vector<uint32_t> path;
- hasher->StitchToPreviousBlock(block_size, block_start,
- input_buffer, mask);
- ZopfliComputeShortestPath(block_size, block_start, input_buffer, mask,
- max_backward_limit, dist_cache,
- hasher, nodes, &path);
- // We allocate a command buffer in the first iteration of this loop that
- // will be likely big enough for the whole metablock, so that for most
- // inputs we will not have to reallocate in later iterations. We do the
- // allocation here and not before the loop, because if the input is small,
- // this will be allocated after the zopfli cost model is freed, so this
- // will not increase peak memory usage.
- // TODO: If the first allocation is too small, increase command
- // buffer size exponentially.
- size_t new_cmd_alloc_size = std::max(expected_num_commands,
- num_commands + path.size() + 1);
- if (cmd_alloc_size != new_cmd_alloc_size) {
- cmd_alloc_size = new_cmd_alloc_size;
- commands = static_cast<Command*>(
- realloc(commands, cmd_alloc_size * sizeof(Command)));
- }
- ZopfliCreateCommands(block_size, block_start, max_backward_limit, path,
- &nodes[0], dist_cache, &last_insert_len,
- &commands[num_commands], &num_literals);
- num_commands += path.size();
- block_start += block_size;
- metablock_size += block_size;
- delete[] nodes;
- if (num_literals > max_literals_per_metablock ||
- num_commands > max_commands_per_metablock) {
- break;
- }
- }
-
- if (last_insert_len > 0) {
- Command cmd(last_insert_len);
- commands[num_commands++] = cmd;
- num_literals += last_insert_len;
- }
-
- const bool is_last = (metablock_start + metablock_size == input_size);
- uint8_t* storage = NULL;
- size_t storage_ix = last_byte_bits;
-
- if (metablock_size == 0) {
- // Write the ISLAST and ISEMPTY bits.
- storage = new uint8_t[16];
- storage[0] = last_byte;
- WriteBits(2, 3, &storage_ix, storage);
- storage_ix = (storage_ix + 7u) & ~7u;
- } else if (!ShouldCompress(input_buffer, mask, metablock_start,
- metablock_size, num_literals, num_commands)) {
- // Restore the distance cache, as its last update by
- // CreateBackwardReferences is now unused.
- memcpy(dist_cache, saved_dist_cache, 4 * sizeof(dist_cache[0]));
- storage = new uint8_t[metablock_size + 16];
- storage[0] = last_byte;
- StoreUncompressedMetaBlock(is_last, input_buffer,
- metablock_start, mask, metablock_size,
- &storage_ix, storage);
- } else {
- uint32_t num_direct_distance_codes = 0;
- uint32_t distance_postfix_bits = 0;
- MetaBlockSplit mb;
- ContextType literal_context_mode = CONTEXT_UTF8;
- if (!IsMostlyUTF8(
- input_buffer, metablock_start, mask, metablock_size,
- kMinUTF8Ratio)) {
- literal_context_mode = CONTEXT_SIGNED;
- }
- BuildMetaBlock(input_buffer, metablock_start, mask,
- prev_byte, prev_byte2,
- commands, num_commands,
- literal_context_mode,
- &mb);
- OptimizeHistograms(num_direct_distance_codes,
- distance_postfix_bits,
- &mb);
- const size_t max_out_metablock_size = 2 * metablock_size + 500;
- storage = new uint8_t[max_out_metablock_size];
- storage[0] = last_byte;
- StoreMetaBlock(input_buffer, metablock_start, metablock_size, mask,
- prev_byte, prev_byte2,
- is_last,
- num_direct_distance_codes,
- distance_postfix_bits,
- literal_context_mode,
- commands, num_commands,
- mb,
- &storage_ix, storage);
- if (metablock_size + 4 < (storage_ix >> 3)) {
- // Restore the distance cache and last byte.
- memcpy(dist_cache, saved_dist_cache, 4 * sizeof(dist_cache[0]));
- storage[0] = last_byte;
- storage_ix = last_byte_bits;
- StoreUncompressedMetaBlock(is_last, input_buffer,
- metablock_start, mask,
- metablock_size, &storage_ix, storage);
- }
- }
- last_byte = storage[storage_ix >> 3];
- last_byte_bits = storage_ix & 7u;
- metablock_start += metablock_size;
- prev_byte = input_buffer[metablock_start - 1];
- prev_byte2 = input_buffer[metablock_start - 2];
- // Save the state of the distance cache in case we need to restore it for
- // emitting an uncompressed block.
- memcpy(saved_dist_cache, dist_cache, 4 * sizeof(dist_cache[0]));
-
- const size_t out_size = storage_ix >> 3;
- total_out_size += out_size;
- if (total_out_size <= max_out_size) {
- memcpy(encoded_buffer, storage, out_size);
- encoded_buffer += out_size;
- } else {
- ok = 0;
- }
- delete[] storage;
- free(commands);
- }
-
- *encoded_size = total_out_size;
- delete hasher;
- return ok;
-}
-
-int BrotliCompressBuffer(BrotliParams params,
- size_t input_size,
- const uint8_t* input_buffer,
- size_t* encoded_size,
- uint8_t* encoded_buffer) {
- if (*encoded_size == 0) {
- // Output buffer needs at least one byte.
- return 0;
- }
- if (input_size == 0) {
- // Handle the special case of empty input.
- *encoded_size = 1;
- *encoded_buffer = 6;
- return 1;
- }
- if (params.quality == 10) {
- // TODO: Implement this direct path for all quality levels.
- const int lgwin = std::min(24, std::max(16, params.lgwin));
- return BrotliCompressBufferQuality10(lgwin, input_size, input_buffer,
- encoded_size, encoded_buffer);
- }
- BrotliMemIn in(input_buffer, input_size);
- BrotliMemOut out(encoded_buffer, *encoded_size);
- if (!BrotliCompress(params, &in, &out)) {
- return 0;
- }
- *encoded_size = out.position();
- return 1;
-}
-
-static bool BrotliInIsFinished(BrotliIn* r) {
- size_t read_bytes;
- return r->Read(0, &read_bytes) == NULL;
-}
-
-static const uint8_t* BrotliInReadAndCheckEnd(const size_t block_size,
- BrotliIn* r,
- size_t* bytes_read,
- bool* is_last) {
- *bytes_read = 0;
- const uint8_t* data = reinterpret_cast<const uint8_t*>(
- r->Read(block_size, bytes_read));
- assert((data == NULL) == (*bytes_read == 0));
- *is_last = BrotliInIsFinished(r);
- return data;
-}
-
-static bool CopyOneBlockToRingBuffer(BrotliIn* r,
- BrotliCompressor* compressor,
- size_t* bytes_read,
- bool* is_last) {
- const size_t block_size = compressor->input_block_size();
- const uint8_t* data = BrotliInReadAndCheckEnd(block_size, r,
- bytes_read, is_last);
- if (data == NULL) {
- return *is_last;
- }
- compressor->CopyInputToRingBuffer(*bytes_read, data);
-
- // Read more bytes until block_size is filled or an EOF (data == NULL) is
- // received. This is useful to get deterministic compressed output for the
- // same input no matter how r->Read splits the input to chunks.
- for (size_t remaining = block_size - *bytes_read; remaining > 0; ) {
- size_t more_bytes_read = 0;
- data = BrotliInReadAndCheckEnd(remaining, r, &more_bytes_read, is_last);
- if (data == NULL) {
- return *is_last;
- }
- compressor->CopyInputToRingBuffer(more_bytes_read, data);
- *bytes_read += more_bytes_read;
- remaining -= more_bytes_read;
- }
- return true;
-}
-
-
-int BrotliCompress(BrotliParams params, BrotliIn* in, BrotliOut* out) {
- return BrotliCompressWithCustomDictionary(0, 0, params, in, out);
-}
-
-// Reads the provided input in 'block_size' blocks. Only the last read can be
-// smaller than 'block_size'.
-class BrotliBlockReader {
- public:
- explicit BrotliBlockReader(size_t block_size)
- : block_size_(block_size), buf_(NULL) {}
- ~BrotliBlockReader(void) { delete[] buf_; }
-
- const uint8_t* Read(BrotliIn* in, size_t* bytes_read, bool* is_last) {
- *bytes_read = 0;
- const uint8_t* data = BrotliInReadAndCheckEnd(block_size_, in,
- bytes_read, is_last);
- if (data == NULL || *bytes_read == block_size_ || *is_last) {
- // If we could get the whole block in one read, or it is the last block,
- // we just return the pointer to the data without copying.
- return data;
- }
- // If the data comes in smaller chunks, we need to copy it into an internal
- // buffer until we get a whole block or reach the last chunk.
- if (buf_ == NULL) {
- buf_ = new uint8_t[block_size_];
- }
- memcpy(buf_, data, *bytes_read);
- do {
- size_t cur_bytes_read = 0;
- data = BrotliInReadAndCheckEnd(block_size_ - *bytes_read, in,
- &cur_bytes_read, is_last);
- if (data == NULL) {
- return *is_last ? buf_ : NULL;
- }
- memcpy(&buf_[*bytes_read], data, cur_bytes_read);
- *bytes_read += cur_bytes_read;
- } while (*bytes_read < block_size_ && !*is_last);
- return buf_;
- }
-
- private:
- const size_t block_size_;
- uint8_t* buf_;
-};
-
-int BrotliCompressWithCustomDictionary(size_t dictsize, const uint8_t* dict,
- BrotliParams params,
- BrotliIn* in, BrotliOut* out) {
- if (params.quality <= 1) {
- const int quality = std::max(0, params.quality);
- const int lgwin = std::min(kMaxWindowBits,
- std::max(kMinWindowBits, params.lgwin));
- uint8_t* storage = NULL;
- int* table = NULL;
- uint32_t* command_buf = NULL;
- uint8_t* literal_buf = NULL;
- uint8_t cmd_depths[128];
- uint16_t cmd_bits[128];
- uint8_t cmd_code[512];
- size_t cmd_code_numbits;
- if (quality == 0) {
- InitCommandPrefixCodes(cmd_depths, cmd_bits, cmd_code, &cmd_code_numbits);
- }
- uint8_t last_byte;
- uint8_t last_byte_bits;
- EncodeWindowBits(lgwin, &last_byte, &last_byte_bits);
- BrotliBlockReader r(1u << lgwin);
- int ok = 1;
- bool is_last = false;
- while (ok && !is_last) {
- // Read next block of input.
- size_t bytes;
- const uint8_t* data = r.Read(in, &bytes, &is_last);
- if (data == NULL) {
- if (!is_last) {
- ok = 0;
- break;
- }
- assert(bytes == 0);
- }
- // Set up output storage.
- const size_t max_out_size = 2 * bytes + 500;
- if (storage == NULL) {
- storage = new uint8_t[max_out_size];
- }
- storage[0] = last_byte;
- size_t storage_ix = last_byte_bits;
- // Set up hash table.
- size_t htsize = HashTableSize(MaxHashTableSize(quality), bytes);
- if (table == NULL) {
- table = new int[htsize];
- }
- memset(table, 0, htsize * sizeof(table[0]));
- // Set up command and literal buffers for two pass mode.
- if (quality == 1 && command_buf == NULL) {
- size_t buf_size = std::min(bytes, kCompressFragmentTwoPassBlockSize);
- command_buf = new uint32_t[buf_size];
- literal_buf = new uint8_t[buf_size];
- }
- // Do the actual compression.
- if (quality == 0) {
- BrotliCompressFragmentFast(data, bytes, is_last, table, htsize,
- cmd_depths, cmd_bits,
- &cmd_code_numbits, cmd_code,
- &storage_ix, storage);
- } else {
- BrotliCompressFragmentTwoPass(data, bytes, is_last,
- command_buf, literal_buf,
- table, htsize,
- &storage_ix, storage);
- }
- // Save last bytes to stitch it together with the next output block.
- last_byte = storage[storage_ix >> 3];
- last_byte_bits = storage_ix & 7u;
- // Write output block.
- size_t out_bytes = storage_ix >> 3;
- if (out_bytes > 0 && !out->Write(storage, out_bytes)) {
- ok = 0;
- break;
- }
- }
- delete[] storage;
- delete[] table;
- delete[] command_buf;
- delete[] literal_buf;
- return ok;
- }
-
- size_t in_bytes = 0;
- size_t out_bytes = 0;
- uint8_t* output;
- bool final_block = false;
- BrotliCompressor compressor(params);
- if (dictsize != 0) compressor.BrotliSetCustomDictionary(dictsize, dict);
- while (!final_block) {
- if (!CopyOneBlockToRingBuffer(in, &compressor, &in_bytes, &final_block)) {
- return false;
- }
- out_bytes = 0;
- if (!compressor.WriteBrotliData(final_block,
- /* force_flush = */ false,
- &out_bytes, &output)) {
- return false;
- }
- if (out_bytes > 0 && !out->Write(output, out_bytes)) {
- return false;
- }
- }
- return true;
-}
-
-
-} // namespace brotli
diff --git a/thirdparty/brotli/enc/encode.h b/thirdparty/brotli/enc/encode.h
index a06aa408..349e38dd 100644
--- a/thirdparty/brotli/enc/encode.h
+++ b/thirdparty/brotli/enc/encode.h
@@ -4,204 +4,218 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// API for Brotli compression
+/* API for Brotli compression. */
#ifndef BROTLI_ENC_ENCODE_H_
#define BROTLI_ENC_ENCODE_H_
-#include <string>
-#include <vector>
-#include "./command.h"
-#include "./hash.h"
-#include "./ringbuffer.h"
-#include "./static_dict.h"
-#include "./streams.h"
-#include "./types.h"
-
-namespace brotli {
-
-static const int kMaxWindowBits = 24;
-static const int kMinWindowBits = 10;
-static const int kMinInputBlockBits = 16;
-static const int kMaxInputBlockBits = 24;
-
-struct BrotliParams {
- BrotliParams(void)
- : mode(MODE_GENERIC),
- quality(11),
- lgwin(22),
- lgblock(0),
- enable_dictionary(true),
- enable_transforms(false),
- greedy_block_split(false),
- enable_context_modeling(true) {}
-
- enum Mode {
- // Default compression mode. The compressor does not know anything in
- // advance about the properties of the input.
- MODE_GENERIC = 0,
- // Compression mode for UTF-8 format text input.
- MODE_TEXT = 1,
- // Compression mode used in WOFF 2.0.
- MODE_FONT = 2
- };
- Mode mode;
-
- // Controls the compression-speed vs compression-density tradeoffs. The higher
- // the quality, the slower the compression. Range is 0 to 11.
- int quality;
- // Base 2 logarithm of the sliding window size. Range is 10 to 24.
- int lgwin;
- // Base 2 logarithm of the maximum input block size. Range is 16 to 24.
- // If set to 0, the value will be set based on the quality.
- int lgblock;
-
- // These settings are deprecated and will be ignored.
- // All speed vs. size compromises are controlled by the quality param.
- bool enable_dictionary;
- bool enable_transforms;
- bool greedy_block_split;
- bool enable_context_modeling;
-};
-
-// An instance can not be reused for multiple brotli streams.
-class BrotliCompressor {
- public:
- explicit BrotliCompressor(BrotliParams params);
- ~BrotliCompressor(void);
-
- // The maximum input size that can be processed at once.
- size_t input_block_size(void) const { return size_t(1) << params_.lgblock; }
-
- // Encodes the data in input_buffer as a meta-block and writes it to
- // encoded_buffer (*encoded_size should be set to the size of
- // encoded_buffer) and sets *encoded_size to the number of bytes that
- // was written. The input_size must be <= input_block_size().
- // Returns 0 if there was an error and 1 otherwise.
- bool WriteMetaBlock(const size_t input_size,
- const uint8_t* input_buffer,
- const bool is_last,
- size_t* encoded_size,
- uint8_t* encoded_buffer);
-
- // Writes a metadata meta-block containing the given input to encoded_buffer.
- // *encoded_size should be set to the size of the encoded_buffer.
- // Sets *encoded_size to the number of bytes that was written.
- // Note that the given input data will not be part of the sliding window and
- // thus no backward references can be made to this data from subsequent
- // metablocks.
- bool WriteMetadata(const size_t input_size,
- const uint8_t* input_buffer,
- const bool is_last,
- size_t* encoded_size,
- uint8_t* encoded_buffer);
-
- // Writes a zero-length meta-block with end-of-input bit set to the
- // internal output buffer and copies the output buffer to encoded_buffer
- // (*encoded_size should be set to the size of encoded_buffer) and sets
- // *encoded_size to the number of bytes written. Returns false if there was
- // an error and true otherwise.
- bool FinishStream(size_t* encoded_size, uint8_t* encoded_buffer);
-
- // Copies the given input data to the internal ring buffer of the compressor.
- // No processing of the data occurs at this time and this function can be
- // called multiple times before calling WriteBrotliData() to process the
- // accumulated input. At most input_block_size() bytes of input data can be
- // copied to the ring buffer, otherwise the next WriteBrotliData() will fail.
- void CopyInputToRingBuffer(const size_t input_size,
- const uint8_t* input_buffer);
-
- // Processes the accumulated input data and sets *out_size to the length of
- // the new output meta-block, or to zero if no new output meta-block was
- // created (in this case the processed input data is buffered internally).
- // If *out_size is positive, *output points to the start of the output data.
- // If is_last or force_flush is true, an output meta-block is always created.
- // Returns false if the size of the input data is larger than
- // input_block_size().
- bool WriteBrotliData(const bool is_last, const bool force_flush,
- size_t* out_size, uint8_t** output);
-
- // Fills the new state with a dictionary for LZ77, warming up the ringbuffer,
- // e.g. for custom static dictionaries for data formats.
- // Not to be confused with the built-in transformable dictionary of Brotli.
- // To decode, use BrotliSetCustomDictionary of the decoder with the same
- // dictionary.
- void BrotliSetCustomDictionary(size_t size, const uint8_t* dict);
-
- // No-op, but we keep it here for API backward-compatibility.
- void WriteStreamHeader(void) {}
-
- private:
- uint8_t* GetBrotliStorage(size_t size);
-
- // Allocates and clears a hash table using memory in "*this",
- // stores the number of buckets in "*table_size" and returns a pointer to
- // the base of the hash table.
- int* GetHashTable(int quality,
- size_t input_size, size_t* table_size);
-
- BrotliParams params_;
- Hashers* hashers_;
- int hash_type_;
- uint64_t input_pos_;
- RingBuffer* ringbuffer_;
- size_t cmd_alloc_size_;
- Command* commands_;
- size_t num_commands_;
- size_t num_literals_;
- size_t last_insert_len_;
- uint64_t last_flush_pos_;
- uint64_t last_processed_pos_;
- int dist_cache_[4];
- int saved_dist_cache_[4];
- uint8_t last_byte_;
- uint8_t last_byte_bits_;
- uint8_t prev_byte_;
- uint8_t prev_byte2_;
- size_t storage_size_;
- uint8_t* storage_;
- // Hash table for quality 0 mode.
- int small_table_[1 << 10]; // 2KB
- int* large_table_; // Allocated only when needed
- // Command and distance prefix codes (each 64 symbols, stored back-to-back)
- // used for the next block in quality 0. The command prefix code is over a
- // smaller alphabet with the following 64 symbols:
- // 0 - 15: insert length code 0, copy length code 0 - 15, same distance
- // 16 - 39: insert length code 0, copy length code 0 - 23
- // 40 - 63: insert length code 0 - 23, copy length code 0
- // Note that symbols 16 and 40 represent the same code in the full alphabet,
- // but we do not use either of them in quality 0.
- uint8_t cmd_depths_[128];
- uint16_t cmd_bits_[128];
- // The compressed form of the command and distance prefix codes for the next
- // block in quality 0.
- uint8_t cmd_code_[512];
- size_t cmd_code_numbits_;
- // Command and literal buffers for quality 1.
- uint32_t* command_buf_;
- uint8_t* literal_buf_;
-};
-
-// Compresses the data in input_buffer into encoded_buffer, and sets
-// *encoded_size to the compressed length.
-// Returns 0 if there was an error and 1 otherwise.
-int BrotliCompressBuffer(BrotliParams params,
- size_t input_size,
- const uint8_t* input_buffer,
- size_t* encoded_size,
- uint8_t* encoded_buffer);
-
-// Same as above, but uses the specified input and output classes instead
-// of reading from and writing to pre-allocated memory buffers.
-int BrotliCompress(BrotliParams params, BrotliIn* in, BrotliOut* out);
-
-// Before compressing the data, sets a custom LZ77 dictionary with
-// BrotliCompressor::BrotliSetCustomDictionary.
-int BrotliCompressWithCustomDictionary(size_t dictsize, const uint8_t* dict,
- BrotliParams params,
- BrotliIn* in, BrotliOut* out);
-
-
-} // namespace brotli
-
-#endif // BROTLI_ENC_ENCODE_H_
+#include "../common/types.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+static const int kBrotliMaxWindowBits = 24;
+static const int kBrotliMinWindowBits = 10;
+static const int kBrotliMinInputBlockBits = 16;
+static const int kBrotliMaxInputBlockBits = 24;
+
+#define BROTLI_MIN_QUALITY 0
+#define BROTLI_MAX_QUALITY 11
+
+typedef enum BrotliEncoderMode {
+ /* Default compression mode. The compressor does not know anything in
+ advance about the properties of the input. */
+ BROTLI_MODE_GENERIC = 0,
+ /* Compression mode for UTF-8 format text input. */
+ BROTLI_MODE_TEXT = 1,
+ /* Compression mode used in WOFF 2.0. */
+ BROTLI_MODE_FONT = 2
+} BrotliEncoderMode;
+
+#define BROTLI_DEFAULT_QUALITY 11
+#define BROTLI_DEFAULT_WINDOW 22
+#define BROTLI_DEFAULT_MODE BROTLI_MODE_GENERIC
+
+typedef enum BrotliEncoderOperation {
+ BROTLI_OPERATION_PROCESS = 0,
+ /* Request output stream to flush. Performed when input stream is depleted
+ and there is enough space in output stream. */
+ BROTLI_OPERATION_FLUSH = 1,
+ /* Request output stream to finish. Performed when input stream is depleted
+ and there is enough space in output stream. */
+ BROTLI_OPERATION_FINISH = 2
+} BrotliEncoderOperation;
+
+typedef enum BrotliEncoderParameter {
+ BROTLI_PARAM_MODE = 0,
+ /* Controls the compression-speed vs compression-density tradeoffs. The higher
+ the quality, the slower the compression. Range is 0 to 11. */
+ BROTLI_PARAM_QUALITY = 1,
+ /* Base 2 logarithm of the sliding window size. Range is 10 to 24. */
+ BROTLI_PARAM_LGWIN = 2,
+ /* Base 2 logarithm of the maximum input block size. Range is 16 to 24.
+ If set to 0, the value will be set based on the quality. */
+ BROTLI_PARAM_LGBLOCK = 3
+} BrotliEncoderParameter;
+
+/* A state can not be reused for multiple brotli streams. */
+typedef struct BrotliEncoderStateStruct BrotliEncoderState;
+
+BROTLI_BOOL BrotliEncoderSetParameter(
+ BrotliEncoderState* state, BrotliEncoderParameter p, uint32_t value);
+
+/* Creates the instance of BrotliEncoderState and initializes it.
+ |alloc_func| and |free_func| MUST be both zero or both non-zero. In the case
+ they are both zero, default memory allocators are used. |opaque| is passed to
+ |alloc_func| and |free_func| when they are called. */
+BrotliEncoderState* BrotliEncoderCreateInstance(brotli_alloc_func alloc_func,
+ brotli_free_func free_func,
+ void* opaque);
+
+/* Deinitializes and frees BrotliEncoderState instance. */
+void BrotliEncoderDestroyInstance(BrotliEncoderState* state);
+/* The maximum input size that can be processed at once. */
+size_t BrotliEncoderInputBlockSize(BrotliEncoderState* state);
+
+/* Encodes the data in |input_buffer| as a meta-block and writes it to
+ |encoded_buffer| (|*encoded_size should| be set to the size of
+ |encoded_buffer|) and sets |*encoded_size| to the number of bytes that
+ was written. The |input_size| must not be greater than input_block_size().
+ Returns false if there was an error and true otherwise. */
+BROTLI_BOOL BrotliEncoderWriteMetaBlock(
+ BrotliEncoderState* state, const size_t input_size,
+ const uint8_t* input_buffer, const BROTLI_BOOL is_last,
+ size_t* encoded_size, uint8_t* encoded_buffer);
+
+/* Writes a metadata meta-block containing the given input to encoded_buffer.
+ |*encoded_size| should be set to the size of the encoded_buffer.
+ Sets |*encoded_size| to the number of bytes that was written.
+ Note that the given input data will not be part of the sliding window and
+ thus no backward references can be made to this data from subsequent
+ metablocks. |input_size| must not be greater than 2^24 and provided
+ |*encoded_size| must not be less than |input_size| + 6.
+ Returns false if there was an error and true otherwise. */
+BROTLI_BOOL BrotliEncoderWriteMetadata(
+ BrotliEncoderState* state, const size_t input_size,
+ const uint8_t* input_buffer, const BROTLI_BOOL is_last,
+ size_t* encoded_size, uint8_t* encoded_buffer);
+
+/* Writes a zero-length meta-block with end-of-input bit set to the
+ internal output buffer and copies the output buffer to |encoded_buffer|
+ (|*encoded_size| should be set to the size of |encoded_buffer|) and sets
+ |*encoded_size| to the number of bytes written.
+ Returns false if there was an error and true otherwise. */
+BROTLI_BOOL BrotliEncoderFinishStream(
+ BrotliEncoderState* state, size_t* encoded_size, uint8_t* encoded_buffer);
+
+/* Copies the given input data to the internal ring buffer of the compressor.
+ No processing of the data occurs at this time and this function can be
+ called multiple times before calling WriteBrotliData() to process the
+ accumulated input. At most input_block_size() bytes of input data can be
+ copied to the ring buffer, otherwise the next WriteBrotliData() will fail.
+ */
+void BrotliEncoderCopyInputToRingBuffer(BrotliEncoderState* state,
+ const size_t input_size,
+ const uint8_t* input_buffer);
+
+/* Processes the accumulated input data and sets |*out_size| to the length of
+ the new output meta-block, or to zero if no new output meta-block has been
+ created (in this case the processed input data is buffered internally).
+ If |*out_size| is positive, |*output| points to the start of the output
+ data. If |is_last| or |force_flush| is 1, an output meta-block is always
+ created. However, until |is_last| is 1 encoder may retain up to 7 bits
+ of the last byte of output. To force encoder to dump the remaining bits
+ use WriteMetadata() to append an empty meta-data block.
+ Returns false if the size of the input data is larger than
+ input_block_size(). */
+BROTLI_BOOL BrotliEncoderWriteData(
+ BrotliEncoderState* state, const BROTLI_BOOL is_last,
+ const BROTLI_BOOL force_flush, size_t* out_size, uint8_t** output);
+
+/* Fills the new state with a dictionary for LZ77, warming up the ringbuffer,
+ e.g. for custom static dictionaries for data formats.
+ Not to be confused with the built-in transformable dictionary of Brotli.
+ To decode, use BrotliSetCustomDictionary() of the decoder with the same
+ dictionary. */
+void BrotliEncoderSetCustomDictionary(BrotliEncoderState* state, size_t size,
+ const uint8_t* dict);
+
+/* Returns buffer size that is large enough to contain BrotliEncoderCompress
+ output for any input.
+ Returns 0 if result does not fit size_t. */
+size_t BrotliEncoderMaxCompressedSize(size_t input_size);
+
+/* Compresses the data in |input_buffer| into |encoded_buffer|, and sets
+ |*encoded_size| to the compressed length.
+ BROTLI_DEFAULT_QUALITY, BROTLI_DEFAULT_WINDOW and BROTLI_DEFAULT_MODE should
+ be used as |quality|, |lgwin| and |mode| if there are no specific
+ requirements to encoder speed and compression ratio.
+ If compression fails, |*encoded_size| is set to 0.
+ If BrotliEncoderMaxCompressedSize(|input_size|) is not zero, then
+ |*encoded_size| is never set to the bigger value.
+ Returns false if there was an error and true otherwise. */
+BROTLI_BOOL BrotliEncoderCompress(
+ int quality, int lgwin, BrotliEncoderMode mode, size_t input_size,
+ const uint8_t* input_buffer, size_t* encoded_size, uint8_t* encoded_buffer);
+
+/* Progressively compress input stream and push produced bytes to output stream.
+ Internally workflow consists of 3 tasks:
+ * (optional) copy input data to internal buffer
+ * actually compress data and (optionally) store it to internal buffer
+ * (optional) copy compressed bytes from internal buffer to output stream
+ Whenever all 3 tasks can't move forward anymore, or error occurs, this
+ method returns.
+
+ |available_in| and |next_in| represent input stream; when X bytes of input
+ are consumed, X is subtracted from |available_in| and added to |next_in|.
+ |available_out| and |next_out| represent output stream; when Y bytes are
+ pushed to output, Y is subtracted from |available_out| and added to
+ |next_out|. |total_out|, if it is not a null-pointer, is assigned to the
+ total amount of bytes pushed by the instance of encoder to output.
+
+ |op| is used to perform flush or finish the stream.
+
+ Flushing the stream means forcing encoding of all input passed to encoder and
+ completing the current output block, so it could be fully decoded by stream
+ decoder. To perform flush |op| must be set to BROTLI_OPERATION_FLUSH. Under
+ some circumstances (e.g. lack of output stream capacity) this operation would
+ require several calls to BrotliEncoderCompressStream. The method must be
+ called again until both input stream is depleted and encoder has no more
+ output (see BrotliEncoderHasMoreOutput) after the method is called.
+
+ Finishing the stream means encoding of all input passed to encoder and
+ adding specific "final" marks, so stream decoder could determine that stream
+ is complete. To perform finish |op| must be set to BROTLI_OPERATION_FINISH.
+ Under some circumstances (e.g. lack of output stream capacity) this operation
+ would require several calls to BrotliEncoderCompressStream. The method must
+ be called again until both input stream is depleted and encoder has no more
+ output (see BrotliEncoderHasMoreOutput) after the method is called.
+
+ WARNING: when flushing and finishing, |op| should not change until operation
+ is complete; input stream should not be refilled as well.
+
+ Returns false if there was an error and true otherwise.
+*/
+BROTLI_BOOL BrotliEncoderCompressStream(
+ BrotliEncoderState* s, BrotliEncoderOperation op, size_t* available_in,
+ const uint8_t** next_in, size_t* available_out, uint8_t** next_out,
+ size_t* total_out);
+
+/* Check if encoder is in "finished" state, i.e. no more input is acceptable and
+ no more output will be produced.
+ Works only with BrotliEncoderCompressStream workflow.
+ Returns 1 if stream is finished and 0 otherwise. */
+BROTLI_BOOL BrotliEncoderIsFinished(BrotliEncoderState* s);
+
+/* Check if encoder has more output bytes in internal buffer.
+ Works only with BrotliEncoderCompressStream workflow.
+ Returns 1 if has more output (in internal buffer) and 0 otherwise. */
+BROTLI_BOOL BrotliEncoderHasMoreOutput(BrotliEncoderState* s);
+
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
+
+#endif /* BROTLI_ENC_ENCODE_H_ */
diff --git a/thirdparty/brotli/enc/encode_parallel.cc b/thirdparty/brotli/enc/encode_parallel.cc
index cbad9754..cedcc782 100644
--- a/thirdparty/brotli/enc/encode_parallel.cc
+++ b/thirdparty/brotli/enc/encode_parallel.cc
@@ -4,44 +4,39 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Implementation of parallel Brotli compressor.
+/* Implementation of parallel Brotli compressor. */
#include "./encode_parallel.h"
-#include <algorithm>
-#include <limits>
+#include <vector>
#include "./backward_references.h"
-#include "./bit_cost.h"
-#include "./block_splitter.h"
#include "./brotli_bit_stream.h"
-#include "./cluster.h"
#include "./context.h"
-#include "./metablock.h"
-#include "./transform.h"
#include "./entropy_encode.h"
#include "./fast_log.h"
#include "./hash.h"
-#include "./histogram.h"
+#include "./metablock.h"
+#include "./port.h"
#include "./prefix.h"
+#include "./quality.h"
#include "./utf8_util.h"
-#include "./write_bits.h"
namespace brotli {
namespace {
-void RecomputeDistancePrefixes(Command* cmds, size_t num_commands,
- uint32_t num_direct_distance_codes,
- uint32_t distance_postfix_bits) {
+static void RecomputeDistancePrefixes(Command* cmds, size_t num_commands,
+ uint32_t num_direct_distance_codes,
+ uint32_t distance_postfix_bits) {
if (num_direct_distance_codes == 0 &&
distance_postfix_bits == 0) {
return;
}
for (size_t i = 0; i < num_commands; ++i) {
Command* cmd = &cmds[i];
- if (cmd->copy_len() && cmd->cmd_prefix_ >= 128) {
- PrefixEncodeCopyDistance(cmd->DistanceCode(),
+ if (CommandCopyLen(cmd) && cmd->cmd_prefix_ >= 128) {
+ PrefixEncodeCopyDistance(CommandDistanceCode(cmd),
num_direct_distance_codes,
distance_postfix_bits,
&cmd->dist_prefix_,
@@ -50,230 +45,245 @@ void RecomputeDistancePrefixes(Command* cmds, size_t num_commands,
}
}
-bool WriteMetaBlockParallel(const BrotliParams& params,
- const uint32_t input_size,
- const uint8_t* input_buffer,
- const uint32_t prefix_size,
- const uint8_t* prefix_buffer,
- const bool is_first,
- const bool is_last,
- size_t* encoded_size,
- uint8_t* encoded_buffer) {
+/* Returns 1 on success, otherwise 0. */
+int WriteMetaBlockParallel(const BrotliEncoderParams* params,
+ const uint32_t input_size,
+ const uint8_t* input_buffer,
+ const uint32_t prefix_size,
+ const uint8_t* prefix_buffer,
+ const int is_first,
+ const int is_last,
+ size_t* encoded_size,
+ uint8_t* encoded_buffer) {
if (input_size == 0) {
- return false;
+ return 0;
}
- // Copy prefix + next input block into a continuous area.
- uint32_t input_pos = prefix_size;
- // CreateBackwardReferences reads up to 3 bytes past the end of input if the
- // mask points past the end of input.
- // FindMatchLengthWithLimit could do another 8 bytes look-forward.
- std::vector<uint8_t> input(prefix_size + input_size + 4 + 8);
- memcpy(&input[0], prefix_buffer, prefix_size);
- memcpy(&input[input_pos], input_buffer, input_size);
- // Since we don't have a ringbuffer, masking is a no-op.
- // We use one less bit than the full range because some of the code uses
- // mask + 1 as the size of the ringbuffer.
- const uint32_t mask = std::numeric_limits<uint32_t>::max() >> 1;
-
- uint8_t prev_byte = input_pos > 0 ? input[(input_pos - 1) & mask] : 0;
- uint8_t prev_byte2 = input_pos > 1 ? input[(input_pos - 2) & mask] : 0;
-
- // Decide about UTF8 mode.
- static const double kMinUTF8Ratio = 0.75;
- bool utf8_mode = IsMostlyUTF8(&input[0], input_pos, mask, input_size,
- kMinUTF8Ratio);
-
- // Initialize hashers.
- int hash_type = std::min(10, params.quality);
- Hashers* hashers = new Hashers();
- hashers->Init(hash_type);
+ MemoryManager memory_manager;
+ MemoryManager* m = &memory_manager;
+ BrotliInitMemoryManager(m, 0, 0, 0);
- // Compute backward references.
+ uint8_t* storage;
+ size_t storage_ix;
+ uint8_t first_byte;
+ size_t first_byte_bits;
+ size_t output_size;
+ uint32_t num_direct_distance_codes;
+ uint32_t distance_postfix_bits;
+ ContextType literal_context_mode;
size_t last_insert_len = 0;
size_t num_commands = 0;
size_t num_literals = 0;
int dist_cache[4] = { -4, -4, -4, -4 };
- Command* commands = static_cast<Command*>(
- malloc(sizeof(Command) * ((input_size + 1) >> 1)));
- if (commands == 0) {
- delete hashers;
- return false;
- }
- CreateBackwardReferences(
- input_size, input_pos, is_last,
- &input[0], mask,
- params.quality,
- params.lgwin,
- hashers,
- hash_type,
- dist_cache,
- &last_insert_len,
- commands,
- &num_commands,
+ Command* commands;
+ Hashers* hashers;
+ int use_utf8_mode;
+ uint8_t prev_byte;
+ uint8_t prev_byte2;
+ const uint32_t mask = BROTLI_UINT32_MAX >> 1;
+
+ /* Copy prefix + next input block into a continuous area. */
+ uint32_t input_pos = prefix_size;
+ /* CreateBackwardReferences reads up to 3 bytes past the end of input if the
+ mask points past the end of input.
+ FindMatchLengthWithLimit could do another 8 bytes look-forward. */
+ uint8_t* input = BROTLI_ALLOC(m, uint8_t, prefix_size + input_size + 4 + 8);
+ if (BROTLI_IS_OOM(m)) goto oom;
+ memcpy(input, prefix_buffer, prefix_size);
+ memcpy(input + input_pos, input_buffer, input_size);
+ /* Since we don't have a ringbuffer, masking is a no-op.
+ We use one less bit than the full range because some of the code uses
+ mask + 1 as the size of the ringbuffer. */
+
+ prev_byte = input_pos > 0 ? input[(input_pos - 1) & mask] : 0;
+ prev_byte2 = input_pos > 1 ? input[(input_pos - 2) & mask] : 0;
+
+ /* Decide about UTF8 mode. */
+ static const double kMinUTF8Ratio = 0.75;
+ use_utf8_mode = BrotliIsMostlyUTF8(
+ input, input_pos, mask, input_size, kMinUTF8Ratio);
+
+ /* Initialize hashers. */
+ hashers = BROTLI_ALLOC(m, Hashers, 1);
+ if (BROTLI_IS_OOM(m)) goto oom;
+ InitHashers(hashers);
+ HashersSetup(m, hashers, ChooseHasher(params));
+ if (BROTLI_IS_OOM(m)) goto oom;
+
+ /* Compute backward references. */
+ commands = BROTLI_ALLOC(m, Command, ((input_size + 1) >> 1));
+ if (BROTLI_IS_OOM(m)) goto oom;
+ BrotliCreateBackwardReferences(m, input_size, input_pos,
+ TO_BROTLI_BOOL(is_last), input, mask, params,
+ hashers, dist_cache, &last_insert_len, commands, &num_commands,
&num_literals);
- delete hashers;
+ if (BROTLI_IS_OOM(m)) goto oom;
+ DestroyHashers(m, hashers);
+ BROTLI_FREE(m, hashers);
if (last_insert_len > 0) {
- commands[num_commands++] = Command(last_insert_len);
+ InitInsertCommand(&commands[num_commands++], last_insert_len);
num_literals += last_insert_len;
}
assert(num_commands != 0);
- // Build the meta-block.
+ /* Build the meta-block. */
MetaBlockSplit mb;
- uint32_t num_direct_distance_codes =
- params.mode == BrotliParams::MODE_FONT ? 12 : 0;
- uint32_t distance_postfix_bits =
- params.mode == BrotliParams::MODE_FONT ? 1 : 0;
- ContextType literal_context_mode = utf8_mode ? CONTEXT_UTF8 : CONTEXT_SIGNED;
+ InitMetaBlockSplit(&mb);
+ num_direct_distance_codes = params->mode == BROTLI_MODE_FONT ? 12 : 0;
+ distance_postfix_bits = params->mode == BROTLI_MODE_FONT ? 1 : 0;
+ literal_context_mode = use_utf8_mode ? CONTEXT_UTF8 : CONTEXT_SIGNED;
RecomputeDistancePrefixes(commands, num_commands,
num_direct_distance_codes,
distance_postfix_bits);
- if (params.quality <= 9) {
- BuildMetaBlockGreedy(&input[0], input_pos, mask,
+ if (params->quality < MIN_QUALITY_FOR_HQ_BLOCK_SPLITTING) {
+ BrotliBuildMetaBlockGreedy(m, input, input_pos, mask,
+ commands, num_commands,
+ &mb);
+ if (BROTLI_IS_OOM(m)) goto oom;
+ } else {
+ BrotliBuildMetaBlock(m, input, input_pos, mask, params,
+ prev_byte, prev_byte2,
commands, num_commands,
+ literal_context_mode,
&mb);
- } else {
- BuildMetaBlock(&input[0], input_pos, mask,
- prev_byte, prev_byte2,
- commands, num_commands,
- literal_context_mode,
- &mb);
+ if (BROTLI_IS_OOM(m)) goto oom;
}
- // Set up the temporary output storage.
- const size_t max_out_size = 2 * input_size + 500;
- std::vector<uint8_t> storage(max_out_size);
- uint8_t first_byte = 0;
- size_t first_byte_bits = 0;
+ /* Set up the temporary output storage. */
+ storage = BROTLI_ALLOC(m, uint8_t, 2 * input_size + 500);
+ if (BROTLI_IS_OOM(m)) goto oom;
+ first_byte = 0;
+ first_byte_bits = 0;
if (is_first) {
- if (params.lgwin == 16) {
+ if (params->lgwin == 16) {
first_byte = 0;
first_byte_bits = 1;
- } else if (params.lgwin == 17) {
+ } else if (params->lgwin == 17) {
first_byte = 1;
first_byte_bits = 7;
} else {
- first_byte = static_cast<uint8_t>(((params.lgwin - 17) << 1) | 1);
+ first_byte = static_cast<uint8_t>(((params->lgwin - 17) << 1) | 1);
first_byte_bits = 4;
}
}
storage[0] = static_cast<uint8_t>(first_byte);
- size_t storage_ix = first_byte_bits;
-
- // Store the meta-block to the temporary output.
- StoreMetaBlock(&input[0], input_pos, input_size, mask,
- prev_byte, prev_byte2,
- is_last,
- num_direct_distance_codes,
- distance_postfix_bits,
- literal_context_mode,
- commands, num_commands,
- mb,
- &storage_ix, &storage[0]);
- free(commands);
-
- // If this is not the last meta-block, store an empty metadata
- // meta-block so that the meta-block will end at a byte boundary.
+ storage_ix = first_byte_bits;
+
+ /* Store the meta-block to the temporary output. */
+ BrotliStoreMetaBlock(m, input, input_pos, input_size, mask,
+ prev_byte, prev_byte2,
+ TO_BROTLI_BOOL(is_last),
+ num_direct_distance_codes,
+ distance_postfix_bits,
+ literal_context_mode,
+ commands, num_commands,
+ &mb,
+ &storage_ix, storage);
+ if (BROTLI_IS_OOM(m)) goto oom;
+ DestroyMetaBlockSplit(m, &mb);
+ BROTLI_FREE(m, commands);
+
+ /* If this is not the last meta-block, store an empty metadata
+ meta-block so that the meta-block will end at a byte boundary. */
if (!is_last) {
- StoreSyncMetaBlock(&storage_ix, &storage[0]);
+ BrotliStoreSyncMetaBlock(&storage_ix, storage);
}
- // If the compressed data is too large, fall back to an uncompressed
- // meta-block.
- size_t output_size = storage_ix >> 3;
+ /* If the compressed data is too large, fall back to an uncompressed
+ meta-block. */
+ output_size = storage_ix >> 3;
if (input_size + 4 < output_size) {
storage[0] = static_cast<uint8_t>(first_byte);
storage_ix = first_byte_bits;
- StoreUncompressedMetaBlock(is_last, &input[0], input_pos, mask,
- input_size,
- &storage_ix, &storage[0]);
+ BrotliStoreUncompressedMetaBlock(
+ TO_BROTLI_BOOL(is_last), input, input_pos, mask, input_size,
+ &storage_ix, storage);
output_size = storage_ix >> 3;
}
- // Copy the temporary output with size-check to the output.
+ /* Copy the temporary output with size-check to the output. */
if (output_size > *encoded_size) {
- return false;
+ BROTLI_FREE(m, storage);
+ BROTLI_FREE(m, input);
+ return 0;
}
- memcpy(encoded_buffer, &storage[0], output_size);
+ memcpy(encoded_buffer, storage, output_size);
*encoded_size = output_size;
- return true;
+ BROTLI_FREE(m, storage);
+ BROTLI_FREE(m, input);
+ return 1;
+
+oom:
+ BrotliWipeOutMemoryManager(m);
+ return 0;
}
-} // namespace
+} /* namespace */
-int BrotliCompressBufferParallel(BrotliParams params,
+int BrotliCompressBufferParallel(BrotliParams compressor_params,
size_t input_size,
const uint8_t* input_buffer,
size_t* encoded_size,
uint8_t* encoded_buffer) {
if (*encoded_size == 0) {
- // Output buffer needs at least one byte.
+ /* Output buffer needs at least one byte. */
return 0;
- } else if (input_size == 0) {
+ } else if (input_size == 0) {
encoded_buffer[0] = 6;
*encoded_size = 1;
return 1;
}
- // Sanitize params.
- if (params.lgwin < kMinWindowBits) {
- params.lgwin = kMinWindowBits;
- } else if (params.lgwin > kMaxWindowBits) {
- params.lgwin = kMaxWindowBits;
- }
- if (params.lgblock == 0) {
- params.lgblock = 16;
- if (params.quality >= 9 && params.lgwin > params.lgblock) {
- params.lgblock = std::min(21, params.lgwin);
- }
- } else if (params.lgblock < kMinInputBlockBits) {
- params.lgblock = kMinInputBlockBits;
- } else if (params.lgblock > kMaxInputBlockBits) {
- params.lgblock = kMaxInputBlockBits;
- }
+ BrotliEncoderParams params;
+ params.mode = (BrotliEncoderMode)compressor_params.mode;
+ params.quality = compressor_params.quality;
+ params.lgwin = compressor_params.lgwin;
+ params.lgblock = compressor_params.lgblock;
+
+ SanitizeParams(&params);
+ params.lgblock = ComputeLgBlock(&params);
size_t max_input_block_size = 1 << params.lgblock;
size_t max_prefix_size = 1u << params.lgwin;
std::vector<std::vector<uint8_t> > compressed_pieces;
- // Compress block-by-block independently.
+ /* Compress block-by-block independently. */
for (size_t pos = 0; pos < input_size; ) {
- uint32_t input_block_size =
- static_cast<uint32_t>(std::min(max_input_block_size, input_size - pos));
+ uint32_t input_block_size = static_cast<uint32_t>(
+ BROTLI_MIN(size_t, max_input_block_size, input_size - pos));
uint32_t prefix_size =
- static_cast<uint32_t>(std::min(max_prefix_size, pos));
+ static_cast<uint32_t>(BROTLI_MIN(size_t, max_prefix_size, pos));
size_t out_size = input_block_size + (input_block_size >> 3) + 1024;
std::vector<uint8_t> out(out_size);
- if (!WriteMetaBlockParallel(params,
+ if (!WriteMetaBlockParallel(&params,
input_block_size,
&input_buffer[pos],
prefix_size,
&input_buffer[pos - prefix_size],
- pos == 0,
- pos + input_block_size == input_size,
+ (pos == 0) ? 1 : 0,
+ (pos + input_block_size == input_size) ? 1 : 0,
&out_size,
&out[0])) {
- return false;
+ return 0;
}
out.resize(out_size);
compressed_pieces.push_back(out);
pos += input_block_size;
}
- // Piece together the output.
+ /* Piece together the output. */
size_t out_pos = 0;
for (size_t i = 0; i < compressed_pieces.size(); ++i) {
const std::vector<uint8_t>& out = compressed_pieces[i];
if (out_pos + out.size() > *encoded_size) {
- return false;
+ return 0;
}
memcpy(&encoded_buffer[out_pos], &out[0], out.size());
out_pos += out.size();
}
*encoded_size = out_pos;
- return true;
+ return 1;
}
-} // namespace brotli
+} /* namespace brotli */
diff --git a/thirdparty/brotli/enc/encode_parallel.h b/thirdparty/brotli/enc/encode_parallel.h
index 8d637b7c..b7649b18 100644
--- a/thirdparty/brotli/enc/encode_parallel.h
+++ b/thirdparty/brotli/enc/encode_parallel.h
@@ -4,16 +4,15 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// API for parallel Brotli compression
-// Note that this is only a proof of concept currently and not part of the
-// final API yet.
+/* API for parallel Brotli compression
+ Note that this is only a proof of concept currently and not part of the
+ final API yet. */
#ifndef BROTLI_ENC_ENCODE_PARALLEL_H_
#define BROTLI_ENC_ENCODE_PARALLEL_H_
-
-#include "./encode.h"
-#include "./types.h"
+#include "../common/types.h"
+#include "./compressor.h"
namespace brotli {
@@ -23,6 +22,6 @@ int BrotliCompressBufferParallel(BrotliParams params,
size_t* encoded_size,
uint8_t* encoded_buffer);
-} // namespace brotli
+} /* namespace brotli */
-#endif // BROTLI_ENC_ENCODE_PARALLEL_H_
+#endif /* BROTLI_ENC_ENCODE_PARALLEL_H_ */
diff --git a/thirdparty/brotli/enc/entropy_encode.c b/thirdparty/brotli/enc/entropy_encode.c
new file mode 100644
index 00000000..3d2dce23
--- /dev/null
+++ b/thirdparty/brotli/enc/entropy_encode.c
@@ -0,0 +1,501 @@
+/* Copyright 2010 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Entropy encoding (Huffman) utilities. */
+
+#include "./entropy_encode.h"
+
+#include <string.h> /* memset */
+
+#include "../common/constants.h"
+#include "../common/types.h"
+#include "./port.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+BROTLI_BOOL BrotliSetDepth(
+ int p0, HuffmanTree* pool, uint8_t* depth, int max_depth) {
+ int stack[16];
+ int level = 0;
+ int p = p0;
+ assert(max_depth <= 15);
+ stack[0] = -1;
+ while (BROTLI_TRUE) {
+ if (pool[p].index_left_ >= 0) {
+ level++;
+ if (level > max_depth) return BROTLI_FALSE;
+ stack[level] = pool[p].index_right_or_value_;
+ p = pool[p].index_left_;
+ continue;
+ } else {
+ depth[pool[p].index_right_or_value_] = (uint8_t)level;
+ }
+ while (level >= 0 && stack[level] == -1) level--;
+ if (level < 0) return BROTLI_TRUE;
+ p = stack[level];
+ stack[level] = -1;
+ }
+}
+
+/* Sort the root nodes, least popular first. */
+static BROTLI_INLINE BROTLI_BOOL SortHuffmanTree(
+ const HuffmanTree* v0, const HuffmanTree* v1) {
+ if (v0->total_count_ != v1->total_count_) {
+ return TO_BROTLI_BOOL(v0->total_count_ < v1->total_count_);
+ }
+ return TO_BROTLI_BOOL(v0->index_right_or_value_ > v1->index_right_or_value_);
+}
+
+/* This function will create a Huffman tree.
+
+ The catch here is that the tree cannot be arbitrarily deep.
+ Brotli specifies a maximum depth of 15 bits for "code trees"
+ and 7 bits for "code length code trees."
+
+ count_limit is the value that is to be faked as the minimum value
+ and this minimum value is raised until the tree matches the
+ maximum length requirement.
+
+ This algorithm is not of excellent performance for very long data blocks,
+ especially when population counts are longer than 2**tree_limit, but
+ we are not planning to use this with extremely long blocks.
+
+ See http://en.wikipedia.org/wiki/Huffman_coding */
+void BrotliCreateHuffmanTree(const uint32_t *data,
+ const size_t length,
+ const int tree_limit,
+ HuffmanTree* tree,
+ uint8_t *depth) {
+ uint32_t count_limit;
+ HuffmanTree sentinel;
+ InitHuffmanTree(&sentinel, BROTLI_UINT32_MAX, -1, -1);
+ /* For block sizes below 64 kB, we never need to do a second iteration
+ of this loop. Probably all of our block sizes will be smaller than
+ that, so this loop is mostly of academic interest. If we actually
+ would need this, we would be better off with the Katajainen algorithm. */
+ for (count_limit = 1; ; count_limit *= 2) {
+ size_t n = 0;
+ size_t i;
+ size_t j;
+ size_t k;
+ for (i = length; i != 0;) {
+ --i;
+ if (data[i]) {
+ const uint32_t count = BROTLI_MAX(uint32_t, data[i], count_limit);
+ InitHuffmanTree(&tree[n++], count, -1, (int16_t)i);
+ }
+ }
+
+ if (n == 1) {
+ depth[tree[0].index_right_or_value_] = 1; /* Only one element. */
+ break;
+ }
+
+ SortHuffmanTreeItems(tree, n, SortHuffmanTree);
+
+ /* The nodes are:
+ [0, n): the sorted leaf nodes that we start with.
+ [n]: we add a sentinel here.
+ [n + 1, 2n): new parent nodes are added here, starting from
+ (n+1). These are naturally in ascending order.
+ [2n]: we add a sentinel at the end as well.
+ There will be (2n+1) elements at the end. */
+ tree[n] = sentinel;
+ tree[n + 1] = sentinel;
+
+ i = 0; /* Points to the next leaf node. */
+ j = n + 1; /* Points to the next non-leaf node. */
+ for (k = n - 1; k != 0; --k) {
+ size_t left, right;
+ if (tree[i].total_count_ <= tree[j].total_count_) {
+ left = i;
+ ++i;
+ } else {
+ left = j;
+ ++j;
+ }
+ if (tree[i].total_count_ <= tree[j].total_count_) {
+ right = i;
+ ++i;
+ } else {
+ right = j;
+ ++j;
+ }
+
+ {
+ /* The sentinel node becomes the parent node. */
+ size_t j_end = 2 * n - k;
+ tree[j_end].total_count_ =
+ tree[left].total_count_ + tree[right].total_count_;
+ tree[j_end].index_left_ = (int16_t)left;
+ tree[j_end].index_right_or_value_ = (int16_t)right;
+
+ /* Add back the last sentinel node. */
+ tree[j_end + 1] = sentinel;
+ }
+ }
+ if (BrotliSetDepth((int)(2 * n - 1), &tree[0], depth, tree_limit)) {
+ /* We need to pack the Huffman tree in tree_limit bits. If this was not
+ successful, add fake entities to the lowest values and retry. */
+ break;
+ }
+ }
+}
+
+static void Reverse(uint8_t* v, size_t start, size_t end) {
+ --end;
+ while (start < end) {
+ uint8_t tmp = v[start];
+ v[start] = v[end];
+ v[end] = tmp;
+ ++start;
+ --end;
+ }
+}
+
+static void BrotliWriteHuffmanTreeRepetitions(
+ const uint8_t previous_value,
+ const uint8_t value,
+ size_t repetitions,
+ size_t* tree_size,
+ uint8_t* tree,
+ uint8_t* extra_bits_data) {
+ assert(repetitions > 0);
+ if (previous_value != value) {
+ tree[*tree_size] = value;
+ extra_bits_data[*tree_size] = 0;
+ ++(*tree_size);
+ --repetitions;
+ }
+ if (repetitions == 7) {
+ tree[*tree_size] = value;
+ extra_bits_data[*tree_size] = 0;
+ ++(*tree_size);
+ --repetitions;
+ }
+ if (repetitions < 3) {
+ size_t i;
+ for (i = 0; i < repetitions; ++i) {
+ tree[*tree_size] = value;
+ extra_bits_data[*tree_size] = 0;
+ ++(*tree_size);
+ }
+ } else {
+ size_t start = *tree_size;
+ repetitions -= 3;
+ while (BROTLI_TRUE) {
+ tree[*tree_size] = BROTLI_REPEAT_PREVIOUS_CODE_LENGTH;
+ extra_bits_data[*tree_size] = repetitions & 0x3;
+ ++(*tree_size);
+ repetitions >>= 2;
+ if (repetitions == 0) {
+ break;
+ }
+ --repetitions;
+ }
+ Reverse(tree, start, *tree_size);
+ Reverse(extra_bits_data, start, *tree_size);
+ }
+}
+
+static void BrotliWriteHuffmanTreeRepetitionsZeros(
+ size_t repetitions,
+ size_t* tree_size,
+ uint8_t* tree,
+ uint8_t* extra_bits_data) {
+ if (repetitions == 11) {
+ tree[*tree_size] = 0;
+ extra_bits_data[*tree_size] = 0;
+ ++(*tree_size);
+ --repetitions;
+ }
+ if (repetitions < 3) {
+ size_t i;
+ for (i = 0; i < repetitions; ++i) {
+ tree[*tree_size] = 0;
+ extra_bits_data[*tree_size] = 0;
+ ++(*tree_size);
+ }
+ } else {
+ size_t start = *tree_size;
+ repetitions -= 3;
+ while (BROTLI_TRUE) {
+ tree[*tree_size] = BROTLI_REPEAT_ZERO_CODE_LENGTH;
+ extra_bits_data[*tree_size] = repetitions & 0x7;
+ ++(*tree_size);
+ repetitions >>= 3;
+ if (repetitions == 0) {
+ break;
+ }
+ --repetitions;
+ }
+ Reverse(tree, start, *tree_size);
+ Reverse(extra_bits_data, start, *tree_size);
+ }
+}
+
+void BrotliOptimizeHuffmanCountsForRle(size_t length, uint32_t* counts,
+ uint8_t* good_for_rle) {
+ size_t nonzero_count = 0;
+ size_t stride;
+ size_t limit;
+ size_t sum;
+ const size_t streak_limit = 1240;
+ /* Let's make the Huffman code more compatible with rle encoding. */
+ size_t i;
+ for (i = 0; i < length; i++) {
+ if (counts[i]) {
+ ++nonzero_count;
+ }
+ }
+ if (nonzero_count < 16) {
+ return;
+ }
+ while (length != 0 && counts[length - 1] == 0) {
+ --length;
+ }
+ if (length == 0) {
+ return; /* All zeros. */
+ }
+ /* Now counts[0..length - 1] does not have trailing zeros. */
+ {
+ size_t nonzeros = 0;
+ uint32_t smallest_nonzero = 1 << 30;
+ for (i = 0; i < length; ++i) {
+ if (counts[i] != 0) {
+ ++nonzeros;
+ if (smallest_nonzero > counts[i]) {
+ smallest_nonzero = counts[i];
+ }
+ }
+ }
+ if (nonzeros < 5) {
+ /* Small histogram will model it well. */
+ return;
+ }
+ if (smallest_nonzero < 4) {
+ size_t zeros = length - nonzeros;
+ if (zeros < 6) {
+ for (i = 1; i < length - 1; ++i) {
+ if (counts[i - 1] != 0 && counts[i] == 0 && counts[i + 1] != 0) {
+ counts[i] = 1;
+ }
+ }
+ }
+ }
+ if (nonzeros < 28) {
+ return;
+ }
+ }
+ /* 2) Let's mark all population counts that already can be encoded
+ with an rle code. */
+ memset(good_for_rle, 0, length);
+ {
+ /* Let's not spoil any of the existing good rle codes.
+ Mark any seq of 0's that is longer as 5 as a good_for_rle.
+ Mark any seq of non-0's that is longer as 7 as a good_for_rle. */
+ uint32_t symbol = counts[0];
+ size_t step = 0;
+ for (i = 0; i <= length; ++i) {
+ if (i == length || counts[i] != symbol) {
+ if ((symbol == 0 && step >= 5) ||
+ (symbol != 0 && step >= 7)) {
+ size_t k;
+ for (k = 0; k < step; ++k) {
+ good_for_rle[i - k - 1] = 1;
+ }
+ }
+ step = 1;
+ if (i != length) {
+ symbol = counts[i];
+ }
+ } else {
+ ++step;
+ }
+ }
+ }
+ /* 3) Let's replace those population counts that lead to more rle codes.
+ Math here is in 24.8 fixed point representation. */
+ stride = 0;
+ limit = 256 * (counts[0] + counts[1] + counts[2]) / 3 + 420;
+ sum = 0;
+ for (i = 0; i <= length; ++i) {
+ if (i == length || good_for_rle[i] ||
+ (i != 0 && good_for_rle[i - 1]) ||
+ (256 * counts[i] - limit + streak_limit) >= 2 * streak_limit) {
+ if (stride >= 4 || (stride >= 3 && sum == 0)) {
+ size_t k;
+ /* The stride must end, collapse what we have, if we have enough (4). */
+ size_t count = (sum + stride / 2) / stride;
+ if (count == 0) {
+ count = 1;
+ }
+ if (sum == 0) {
+ /* Don't make an all zeros stride to be upgraded to ones. */
+ count = 0;
+ }
+ for (k = 0; k < stride; ++k) {
+ /* We don't want to change value at counts[i],
+ that is already belonging to the next stride. Thus - 1. */
+ counts[i - k - 1] = (uint32_t)count;
+ }
+ }
+ stride = 0;
+ sum = 0;
+ if (i < length - 2) {
+ /* All interesting strides have a count of at least 4, */
+ /* at least when non-zeros. */
+ limit = 256 * (counts[i] + counts[i + 1] + counts[i + 2]) / 3 + 420;
+ } else if (i < length) {
+ limit = 256 * counts[i];
+ } else {
+ limit = 0;
+ }
+ }
+ ++stride;
+ if (i != length) {
+ sum += counts[i];
+ if (stride >= 4) {
+ limit = (256 * sum + stride / 2) / stride;
+ }
+ if (stride == 4) {
+ limit += 120;
+ }
+ }
+ }
+}
+
+static void DecideOverRleUse(const uint8_t* depth, const size_t length,
+ BROTLI_BOOL *use_rle_for_non_zero,
+ BROTLI_BOOL *use_rle_for_zero) {
+ size_t total_reps_zero = 0;
+ size_t total_reps_non_zero = 0;
+ size_t count_reps_zero = 1;
+ size_t count_reps_non_zero = 1;
+ size_t i;
+ for (i = 0; i < length;) {
+ const uint8_t value = depth[i];
+ size_t reps = 1;
+ size_t k;
+ for (k = i + 1; k < length && depth[k] == value; ++k) {
+ ++reps;
+ }
+ if (reps >= 3 && value == 0) {
+ total_reps_zero += reps;
+ ++count_reps_zero;
+ }
+ if (reps >= 4 && value != 0) {
+ total_reps_non_zero += reps;
+ ++count_reps_non_zero;
+ }
+ i += reps;
+ }
+ *use_rle_for_non_zero =
+ TO_BROTLI_BOOL(total_reps_non_zero > count_reps_non_zero * 2);
+ *use_rle_for_zero = TO_BROTLI_BOOL(total_reps_zero > count_reps_zero * 2);
+}
+
+void BrotliWriteHuffmanTree(const uint8_t* depth,
+ size_t length,
+ size_t* tree_size,
+ uint8_t* tree,
+ uint8_t* extra_bits_data) {
+ uint8_t previous_value = BROTLI_INITIAL_REPEATED_CODE_LENGTH;
+ size_t i;
+ BROTLI_BOOL use_rle_for_non_zero = BROTLI_FALSE;
+ BROTLI_BOOL use_rle_for_zero = BROTLI_FALSE;
+
+ /* Throw away trailing zeros. */
+ size_t new_length = length;
+ for (i = 0; i < length; ++i) {
+ if (depth[length - i - 1] == 0) {
+ --new_length;
+ } else {
+ break;
+ }
+ }
+
+ /* First gather statistics on if it is a good idea to do rle. */
+ if (length > 50) {
+ /* Find rle coding for longer codes.
+ Shorter codes seem not to benefit from rle. */
+ DecideOverRleUse(depth, new_length,
+ &use_rle_for_non_zero, &use_rle_for_zero);
+ }
+
+ /* Actual rle coding. */
+ for (i = 0; i < new_length;) {
+ const uint8_t value = depth[i];
+ size_t reps = 1;
+ if ((value != 0 && use_rle_for_non_zero) ||
+ (value == 0 && use_rle_for_zero)) {
+ size_t k;
+ for (k = i + 1; k < new_length && depth[k] == value; ++k) {
+ ++reps;
+ }
+ }
+ if (value == 0) {
+ BrotliWriteHuffmanTreeRepetitionsZeros(
+ reps, tree_size, tree, extra_bits_data);
+ } else {
+ BrotliWriteHuffmanTreeRepetitions(previous_value,
+ value, reps, tree_size,
+ tree, extra_bits_data);
+ previous_value = value;
+ }
+ i += reps;
+ }
+}
+
+static uint16_t BrotliReverseBits(size_t num_bits, uint16_t bits) {
+ static const size_t kLut[16] = { /* Pre-reversed 4-bit values. */
+ 0x0, 0x8, 0x4, 0xc, 0x2, 0xa, 0x6, 0xe,
+ 0x1, 0x9, 0x5, 0xd, 0x3, 0xb, 0x7, 0xf
+ };
+ size_t retval = kLut[bits & 0xf];
+ size_t i;
+ for (i = 4; i < num_bits; i += 4) {
+ retval <<= 4;
+ bits = (uint16_t)(bits >> 4);
+ retval |= kLut[bits & 0xf];
+ }
+ retval >>= ((0 - num_bits) & 0x3);
+ return (uint16_t)retval;
+}
+
+/* 0..15 are values for bits */
+#define MAX_HUFFMAN_BITS 16
+
+void BrotliConvertBitDepthsToSymbols(const uint8_t *depth,
+ size_t len,
+ uint16_t *bits) {
+ /* In Brotli, all bit depths are [1..15]
+ 0 bit depth means that the symbol does not exist. */
+ uint16_t bl_count[MAX_HUFFMAN_BITS] = { 0 };
+ uint16_t next_code[MAX_HUFFMAN_BITS];
+ size_t i;
+ int code = 0;
+ for (i = 0; i < len; ++i) {
+ ++bl_count[depth[i]];
+ }
+ bl_count[0] = 0;
+ next_code[0] = 0;
+ for (i = 1; i < MAX_HUFFMAN_BITS; ++i) {
+ code = (code + bl_count[i - 1]) << 1;
+ next_code[i] = (uint16_t)code;
+ }
+ for (i = 0; i < len; ++i) {
+ if (depth[i]) {
+ bits[i] = BrotliReverseBits(depth[i], next_code[depth[i]]++);
+ }
+ }
+}
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/entropy_encode.cc b/thirdparty/brotli/enc/entropy_encode.cc
deleted file mode 100644
index f18355d8..00000000
--- a/thirdparty/brotli/enc/entropy_encode.cc
+++ /dev/null
@@ -1,480 +0,0 @@
-/* Copyright 2010 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-// Entropy encoding (Huffman) utilities.
-
-#include "./entropy_encode.h"
-
-#include <algorithm>
-#include <limits>
-#include <cstdlib>
-
-#include "./histogram.h"
-#include "./port.h"
-#include "./types.h"
-
-namespace brotli {
-
-void SetDepth(const HuffmanTree &p,
- HuffmanTree *pool,
- uint8_t *depth,
- uint8_t level) {
- if (p.index_left_ >= 0) {
- ++level;
- SetDepth(pool[p.index_left_], pool, depth, level);
- SetDepth(pool[p.index_right_or_value_], pool, depth, level);
- } else {
- depth[p.index_right_or_value_] = level;
- }
-}
-
-// Sort the root nodes, least popular first.
-static inline bool SortHuffmanTree(const HuffmanTree& v0,
- const HuffmanTree& v1) {
- if (v0.total_count_ != v1.total_count_) {
- return v0.total_count_ < v1.total_count_;
- }
- return v0.index_right_or_value_ > v1.index_right_or_value_;
-}
-
-// This function will create a Huffman tree.
-//
-// The catch here is that the tree cannot be arbitrarily deep.
-// Brotli specifies a maximum depth of 15 bits for "code trees"
-// and 7 bits for "code length code trees."
-//
-// count_limit is the value that is to be faked as the minimum value
-// and this minimum value is raised until the tree matches the
-// maximum length requirement.
-//
-// This algorithm is not of excellent performance for very long data blocks,
-// especially when population counts are longer than 2**tree_limit, but
-// we are not planning to use this with extremely long blocks.
-//
-// See http://en.wikipedia.org/wiki/Huffman_coding
-void CreateHuffmanTree(const uint32_t *data,
- const size_t length,
- const int tree_limit,
- HuffmanTree* tree,
- uint8_t *depth) {
- // For block sizes below 64 kB, we never need to do a second iteration
- // of this loop. Probably all of our block sizes will be smaller than
- // that, so this loop is mostly of academic interest. If we actually
- // would need this, we would be better off with the Katajainen algorithm.
- for (uint32_t count_limit = 1; ; count_limit *= 2) {
- size_t n = 0;
- for (size_t i = length; i != 0;) {
- --i;
- if (data[i]) {
- const uint32_t count = std::max(data[i], count_limit);
- tree[n++] = HuffmanTree(count, -1, static_cast<int16_t>(i));
- }
- }
-
- if (n == 1) {
- depth[tree[0].index_right_or_value_] = 1; // Only one element.
- break;
- }
-
- std::sort(tree, tree + n, SortHuffmanTree);
-
- // The nodes are:
- // [0, n): the sorted leaf nodes that we start with.
- // [n]: we add a sentinel here.
- // [n + 1, 2n): new parent nodes are added here, starting from
- // (n+1). These are naturally in ascending order.
- // [2n]: we add a sentinel at the end as well.
- // There will be (2n+1) elements at the end.
- const HuffmanTree sentinel(std::numeric_limits<uint32_t>::max(), -1, -1);
- tree[n] = sentinel;
- tree[n + 1] = sentinel;
-
- size_t i = 0; // Points to the next leaf node.
- size_t j = n + 1; // Points to the next non-leaf node.
- for (size_t k = n - 1; k != 0; --k) {
- size_t left, right;
- if (tree[i].total_count_ <= tree[j].total_count_) {
- left = i;
- ++i;
- } else {
- left = j;
- ++j;
- }
- if (tree[i].total_count_ <= tree[j].total_count_) {
- right = i;
- ++i;
- } else {
- right = j;
- ++j;
- }
-
- // The sentinel node becomes the parent node.
- size_t j_end = 2 * n - k;
- tree[j_end].total_count_ =
- tree[left].total_count_ + tree[right].total_count_;
- tree[j_end].index_left_ = static_cast<int16_t>(left);
- tree[j_end].index_right_or_value_ = static_cast<int16_t>(right);
-
- // Add back the last sentinel node.
- tree[j_end + 1] = sentinel;
- }
- SetDepth(tree[2 * n - 1], &tree[0], depth, 0);
-
- // We need to pack the Huffman tree in tree_limit bits.
- // If this was not successful, add fake entities to the lowest values
- // and retry.
- if (*std::max_element(&depth[0], &depth[length]) <= tree_limit) {
- break;
- }
- }
-}
-
-static void Reverse(uint8_t* v, size_t start, size_t end) {
- --end;
- while (start < end) {
- uint8_t tmp = v[start];
- v[start] = v[end];
- v[end] = tmp;
- ++start;
- --end;
- }
-}
-
-static void WriteHuffmanTreeRepetitions(
- const uint8_t previous_value,
- const uint8_t value,
- size_t repetitions,
- size_t* tree_size,
- uint8_t* tree,
- uint8_t* extra_bits_data) {
- assert(repetitions > 0);
- if (previous_value != value) {
- tree[*tree_size] = value;
- extra_bits_data[*tree_size] = 0;
- ++(*tree_size);
- --repetitions;
- }
- if (repetitions == 7) {
- tree[*tree_size] = value;
- extra_bits_data[*tree_size] = 0;
- ++(*tree_size);
- --repetitions;
- }
- if (repetitions < 3) {
- for (size_t i = 0; i < repetitions; ++i) {
- tree[*tree_size] = value;
- extra_bits_data[*tree_size] = 0;
- ++(*tree_size);
- }
- } else {
- repetitions -= 3;
- size_t start = *tree_size;
- while (true) {
- tree[*tree_size] = 16;
- extra_bits_data[*tree_size] = repetitions & 0x3;
- ++(*tree_size);
- repetitions >>= 2;
- if (repetitions == 0) {
- break;
- }
- --repetitions;
- }
- Reverse(tree, start, *tree_size);
- Reverse(extra_bits_data, start, *tree_size);
- }
-}
-
-static void WriteHuffmanTreeRepetitionsZeros(
- size_t repetitions,
- size_t* tree_size,
- uint8_t* tree,
- uint8_t* extra_bits_data) {
- if (repetitions == 11) {
- tree[*tree_size] = 0;
- extra_bits_data[*tree_size] = 0;
- ++(*tree_size);
- --repetitions;
- }
- if (repetitions < 3) {
- for (size_t i = 0; i < repetitions; ++i) {
- tree[*tree_size] = 0;
- extra_bits_data[*tree_size] = 0;
- ++(*tree_size);
- }
- } else {
- repetitions -= 3;
- size_t start = *tree_size;
- while (true) {
- tree[*tree_size] = 17;
- extra_bits_data[*tree_size] = repetitions & 0x7;
- ++(*tree_size);
- repetitions >>= 3;
- if (repetitions == 0) {
- break;
- }
- --repetitions;
- }
- Reverse(tree, start, *tree_size);
- Reverse(extra_bits_data, start, *tree_size);
- }
-}
-
-void OptimizeHuffmanCountsForRle(size_t length, uint32_t* counts,
- uint8_t* good_for_rle) {
- size_t nonzero_count = 0;
- size_t stride;
- size_t limit;
- size_t sum;
- const size_t streak_limit = 1240;
- // Let's make the Huffman code more compatible with rle encoding.
- size_t i;
- for (i = 0; i < length; i++) {
- if (counts[i]) {
- ++nonzero_count;
- }
- }
- if (nonzero_count < 16) {
- return;
- }
- while (length != 0 && counts[length - 1] == 0) {
- --length;
- }
- if (length == 0) {
- return; // All zeros.
- }
- // Now counts[0..length - 1] does not have trailing zeros.
- {
- size_t nonzeros = 0;
- uint32_t smallest_nonzero = 1 << 30;
- for (i = 0; i < length; ++i) {
- if (counts[i] != 0) {
- ++nonzeros;
- if (smallest_nonzero > counts[i]) {
- smallest_nonzero = counts[i];
- }
- }
- }
- if (nonzeros < 5) {
- // Small histogram will model it well.
- return;
- }
- size_t zeros = length - nonzeros;
- if (smallest_nonzero < 4) {
- if (zeros < 6) {
- for (i = 1; i < length - 1; ++i) {
- if (counts[i - 1] != 0 && counts[i] == 0 && counts[i + 1] != 0) {
- counts[i] = 1;
- }
- }
- }
- }
- if (nonzeros < 28) {
- return;
- }
- }
- // 2) Let's mark all population counts that already can be encoded
- // with an rle code.
- memset(good_for_rle, 0, length);
- {
- // Let's not spoil any of the existing good rle codes.
- // Mark any seq of 0's that is longer as 5 as a good_for_rle.
- // Mark any seq of non-0's that is longer as 7 as a good_for_rle.
- uint32_t symbol = counts[0];
- size_t step = 0;
- for (i = 0; i <= length; ++i) {
- if (i == length || counts[i] != symbol) {
- if ((symbol == 0 && step >= 5) ||
- (symbol != 0 && step >= 7)) {
- size_t k;
- for (k = 0; k < step; ++k) {
- good_for_rle[i - k - 1] = 1;
- }
- }
- step = 1;
- if (i != length) {
- symbol = counts[i];
- }
- } else {
- ++step;
- }
- }
- }
- // 3) Let's replace those population counts that lead to more rle codes.
- // Math here is in 24.8 fixed point representation.
- stride = 0;
- limit = 256 * (counts[0] + counts[1] + counts[2]) / 3 + 420;
- sum = 0;
- for (i = 0; i <= length; ++i) {
- if (i == length || good_for_rle[i] ||
- (i != 0 && good_for_rle[i - 1]) ||
- (256 * counts[i] - limit + streak_limit) >= 2 * streak_limit) {
- if (stride >= 4 || (stride >= 3 && sum == 0)) {
- size_t k;
- // The stride must end, collapse what we have, if we have enough (4).
- size_t count = (sum + stride / 2) / stride;
- if (count == 0) {
- count = 1;
- }
- if (sum == 0) {
- // Don't make an all zeros stride to be upgraded to ones.
- count = 0;
- }
- for (k = 0; k < stride; ++k) {
- // We don't want to change value at counts[i],
- // that is already belonging to the next stride. Thus - 1.
- counts[i - k - 1] = static_cast<uint32_t>(count);
- }
- }
- stride = 0;
- sum = 0;
- if (i < length - 2) {
- // All interesting strides have a count of at least 4,
- // at least when non-zeros.
- limit = 256 * (counts[i] + counts[i + 1] + counts[i + 2]) / 3 + 420;
- } else if (i < length) {
- limit = 256 * counts[i];
- } else {
- limit = 0;
- }
- }
- ++stride;
- if (i != length) {
- sum += counts[i];
- if (stride >= 4) {
- limit = (256 * sum + stride / 2) / stride;
- }
- if (stride == 4) {
- limit += 120;
- }
- }
- }
-}
-
-static void DecideOverRleUse(const uint8_t* depth, const size_t length,
- bool *use_rle_for_non_zero,
- bool *use_rle_for_zero) {
- size_t total_reps_zero = 0;
- size_t total_reps_non_zero = 0;
- size_t count_reps_zero = 1;
- size_t count_reps_non_zero = 1;
- for (size_t i = 0; i < length;) {
- const uint8_t value = depth[i];
- size_t reps = 1;
- for (size_t k = i + 1; k < length && depth[k] == value; ++k) {
- ++reps;
- }
- if (reps >= 3 && value == 0) {
- total_reps_zero += reps;
- ++count_reps_zero;
- }
- if (reps >= 4 && value != 0) {
- total_reps_non_zero += reps;
- ++count_reps_non_zero;
- }
- i += reps;
- }
- *use_rle_for_non_zero = total_reps_non_zero > count_reps_non_zero * 2;
- *use_rle_for_zero = total_reps_zero > count_reps_zero * 2;
-}
-
-void WriteHuffmanTree(const uint8_t* depth,
- size_t length,
- size_t* tree_size,
- uint8_t* tree,
- uint8_t* extra_bits_data) {
- uint8_t previous_value = 8;
-
- // Throw away trailing zeros.
- size_t new_length = length;
- for (size_t i = 0; i < length; ++i) {
- if (depth[length - i - 1] == 0) {
- --new_length;
- } else {
- break;
- }
- }
-
- // First gather statistics on if it is a good idea to do rle.
- bool use_rle_for_non_zero = false;
- bool use_rle_for_zero = false;
- if (length > 50) {
- // Find rle coding for longer codes.
- // Shorter codes seem not to benefit from rle.
- DecideOverRleUse(depth, new_length,
- &use_rle_for_non_zero, &use_rle_for_zero);
- }
-
- // Actual rle coding.
- for (size_t i = 0; i < new_length;) {
- const uint8_t value = depth[i];
- size_t reps = 1;
- if ((value != 0 && use_rle_for_non_zero) ||
- (value == 0 && use_rle_for_zero)) {
- for (size_t k = i + 1; k < new_length && depth[k] == value; ++k) {
- ++reps;
- }
- }
- if (value == 0) {
- WriteHuffmanTreeRepetitionsZeros(reps, tree_size, tree, extra_bits_data);
- } else {
- WriteHuffmanTreeRepetitions(previous_value,
- value, reps, tree_size,
- tree, extra_bits_data);
- previous_value = value;
- }
- i += reps;
- }
-}
-
-namespace {
-
-uint16_t ReverseBits(int num_bits, uint16_t bits) {
- static const size_t kLut[16] = { // Pre-reversed 4-bit values.
- 0x0, 0x8, 0x4, 0xc, 0x2, 0xa, 0x6, 0xe,
- 0x1, 0x9, 0x5, 0xd, 0x3, 0xb, 0x7, 0xf
- };
- size_t retval = kLut[bits & 0xf];
- for (int i = 4; i < num_bits; i += 4) {
- retval <<= 4;
- bits = static_cast<uint16_t>(bits >> 4);
- retval |= kLut[bits & 0xf];
- }
- retval >>= (-num_bits & 0x3);
- return static_cast<uint16_t>(retval);
-}
-
-} // namespace
-
-void ConvertBitDepthsToSymbols(const uint8_t *depth,
- size_t len,
- uint16_t *bits) {
- // In Brotli, all bit depths are [1..15]
- // 0 bit depth means that the symbol does not exist.
- const int kMaxBits = 16; // 0..15 are values for bits
- uint16_t bl_count[kMaxBits] = { 0 };
- {
- for (size_t i = 0; i < len; ++i) {
- ++bl_count[depth[i]];
- }
- bl_count[0] = 0;
- }
- uint16_t next_code[kMaxBits];
- next_code[0] = 0;
- {
- int code = 0;
- for (int bits = 1; bits < kMaxBits; ++bits) {
- code = (code + bl_count[bits - 1]) << 1;
- next_code[bits] = static_cast<uint16_t>(code);
- }
- }
- for (size_t i = 0; i < len; ++i) {
- if (depth[i]) {
- bits[i] = ReverseBits(depth[i], next_code[depth[i]]++);
- }
- }
-}
-
-} // namespace brotli
diff --git a/thirdparty/brotli/enc/entropy_encode.h b/thirdparty/brotli/enc/entropy_encode.h
index 090f9546..2fad140d 100644
--- a/thirdparty/brotli/enc/entropy_encode.h
+++ b/thirdparty/brotli/enc/entropy_encode.h
@@ -4,101 +4,119 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Entropy encoding (Huffman) utilities.
+/* Entropy encoding (Huffman) utilities. */
#ifndef BROTLI_ENC_ENTROPY_ENCODE_H_
#define BROTLI_ENC_ENTROPY_ENCODE_H_
-#include <string.h>
-#include "./histogram.h"
-#include "./prefix.h"
-#include "./types.h"
+#include "../common/types.h"
+#include "./port.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
-// A node of a Huffman tree.
-struct HuffmanTree {
- HuffmanTree() {}
- HuffmanTree(uint32_t count, int16_t left, int16_t right)
- : total_count_(count),
- index_left_(left),
- index_right_or_value_(right) {
- }
+/* A node of a Huffman tree. */
+typedef struct HuffmanTree {
uint32_t total_count_;
int16_t index_left_;
int16_t index_right_or_value_;
-};
-
-void SetDepth(const HuffmanTree &p, HuffmanTree *pool,
- uint8_t *depth, uint8_t level);
-
-// This function will create a Huffman tree.
-//
-// The (data,length) contains the population counts.
-// The tree_limit is the maximum bit depth of the Huffman codes.
-//
-// The depth contains the tree, i.e., how many bits are used for
-// the symbol.
-//
-// The actual Huffman tree is constructed in the tree[] array, which has to
-// be at least 2 * length + 1 long.
-//
-// See http://en.wikipedia.org/wiki/Huffman_coding
-void CreateHuffmanTree(const uint32_t *data,
- const size_t length,
- const int tree_limit,
- HuffmanTree* tree,
- uint8_t *depth);
-
-// Change the population counts in a way that the consequent
-// Huffman tree compression, especially its rle-part will be more
-// likely to compress this data more efficiently.
-//
-// length contains the size of the histogram.
-// counts contains the population counts.
-// good_for_rle is a buffer of at least length size
-void OptimizeHuffmanCountsForRle(size_t length, uint32_t* counts,
- uint8_t* good_for_rle);
-
-// Write a Huffman tree from bit depths into the bitstream representation
-// of a Huffman tree. The generated Huffman tree is to be compressed once
-// more using a Huffman tree
-void WriteHuffmanTree(const uint8_t* depth,
- size_t num,
- size_t* tree_size,
- uint8_t* tree,
- uint8_t* extra_bits_data);
-
-// Get the actual bit values for a tree of bit depths.
-void ConvertBitDepthsToSymbols(const uint8_t *depth,
- size_t len,
- uint16_t *bits);
-
-template<int kSize>
-struct EntropyCode {
- // How many bits for symbol.
- uint8_t depth_[kSize];
- // Actual bits used to represent the symbol.
- uint16_t bits_[kSize];
- // How many non-zero depth.
- int count_;
- // First four symbols with non-zero depth.
- int symbols_[4];
-};
-
-static const int kCodeLengthCodes = 18;
-
-// Literal entropy code.
-typedef EntropyCode<256> EntropyCodeLiteral;
-// Prefix entropy codes.
-typedef EntropyCode<kNumCommandPrefixes> EntropyCodeCommand;
-typedef EntropyCode<kNumDistancePrefixes> EntropyCodeDistance;
-typedef EntropyCode<kNumBlockLenPrefixes> EntropyCodeBlockLength;
-// Context map entropy code, 256 Huffman tree indexes + 16 run length codes.
-typedef EntropyCode<272> EntropyCodeContextMap;
-// Block type entropy code, 256 block types + 2 special symbols.
-typedef EntropyCode<258> EntropyCodeBlockType;
-
-} // namespace brotli
-
-#endif // BROTLI_ENC_ENTROPY_ENCODE_H_
+} HuffmanTree;
+
+static BROTLI_INLINE void InitHuffmanTree(HuffmanTree* self, uint32_t count,
+ int16_t left, int16_t right) {
+ self->total_count_ = count;
+ self->index_left_ = left;
+ self->index_right_or_value_ = right;
+}
+
+/* Returns 1 is assignment of depths succeded, otherwise 0. */
+BROTLI_INTERNAL BROTLI_BOOL BrotliSetDepth(
+ int p, HuffmanTree* pool, uint8_t* depth, int max_depth);
+
+/* This function will create a Huffman tree.
+
+ The (data,length) contains the population counts.
+ The tree_limit is the maximum bit depth of the Huffman codes.
+
+ The depth contains the tree, i.e., how many bits are used for
+ the symbol.
+
+ The actual Huffman tree is constructed in the tree[] array, which has to
+ be at least 2 * length + 1 long.
+
+ See http://en.wikipedia.org/wiki/Huffman_coding */
+BROTLI_INTERNAL void BrotliCreateHuffmanTree(const uint32_t *data,
+ const size_t length,
+ const int tree_limit,
+ HuffmanTree* tree,
+ uint8_t *depth);
+
+/* Change the population counts in a way that the consequent
+ Huffman tree compression, especially its rle-part will be more
+ likely to compress this data more efficiently.
+
+ length contains the size of the histogram.
+ counts contains the population counts.
+ good_for_rle is a buffer of at least length size */
+BROTLI_INTERNAL void BrotliOptimizeHuffmanCountsForRle(
+ size_t length, uint32_t* counts, uint8_t* good_for_rle);
+
+/* Write a Huffman tree from bit depths into the bitstream representation
+ of a Huffman tree. The generated Huffman tree is to be compressed once
+ more using a Huffman tree */
+BROTLI_INTERNAL void BrotliWriteHuffmanTree(const uint8_t* depth,
+ size_t num,
+ size_t* tree_size,
+ uint8_t* tree,
+ uint8_t* extra_bits_data);
+
+/* Get the actual bit values for a tree of bit depths. */
+BROTLI_INTERNAL void BrotliConvertBitDepthsToSymbols(const uint8_t *depth,
+ size_t len,
+ uint16_t *bits);
+
+/* Input size optimized Shell sort. */
+typedef BROTLI_BOOL (*HuffmanTreeComparator)(
+ const HuffmanTree*, const HuffmanTree*);
+static BROTLI_INLINE void SortHuffmanTreeItems(HuffmanTree* items,
+ const size_t n, HuffmanTreeComparator comparator) {
+ static const size_t gaps[] = {132, 57, 23, 10, 4, 1};
+ if (n < 13) {
+ /* Insertion sort. */
+ size_t i;
+ for (i = 1; i < n; ++i) {
+ HuffmanTree tmp = items[i];
+ size_t k = i;
+ size_t j = i - 1;
+ while (comparator(&tmp, &items[j])) {
+ items[k] = items[j];
+ k = j;
+ if (!j--) break;
+ }
+ items[k] = tmp;
+ }
+ return;
+ } else {
+ /* Shell sort. */
+ int g = n < 57 ? 2 : 0;
+ for (; g < 6; ++g) {
+ size_t gap = gaps[g];
+ size_t i;
+ for (i = gap; i < n; ++i) {
+ size_t j = i;
+ HuffmanTree tmp = items[i];
+ for (; j >= gap && comparator(&tmp, &items[j - gap]); j -= gap) {
+ items[j] = items[j - gap];
+ }
+ items[j] = tmp;
+ }
+ }
+ }
+}
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
+
+#endif /* BROTLI_ENC_ENTROPY_ENCODE_H_ */
diff --git a/thirdparty/brotli/enc/entropy_encode_static.h b/thirdparty/brotli/enc/entropy_encode_static.h
index d21f3b51..1b4a2a1d 100644
--- a/thirdparty/brotli/enc/entropy_encode_static.h
+++ b/thirdparty/brotli/enc/entropy_encode_static.h
@@ -4,22 +4,25 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Static entropy codes used for faster meta-block encoding.
+/* Static entropy codes used for faster meta-block encoding. */
#ifndef BROTLI_ENC_ENTROPY_ENCODE_STATIC_H_
#define BROTLI_ENC_ENTROPY_ENCODE_STATIC_H_
-#include "./prefix.h"
-#include "./types.h"
+#include "../common/constants.h"
+#include "../common/port.h"
+#include "../common/types.h"
#include "./write_bits.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
static const uint8_t kCodeLengthDepth[18] = {
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 0, 4, 4,
};
-static const uint8_t kStaticCommandCodeDepth[kNumCommandPrefixes] = {
+static const uint8_t kStaticCommandCodeDepth[BROTLI_NUM_COMMAND_SYMBOLS] = {
9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
@@ -77,11 +80,13 @@ static const uint32_t kCodeLengthBits[18] = {
0, 8, 4, 12, 2, 10, 6, 14, 1, 9, 5, 13, 3, 15, 31, 0, 11, 7,
};
-inline void StoreStaticCodeLengthCode(size_t* storage_ix, uint8_t* storage) {
- WriteBits(40, MAKE_UINT64_T(0xff, 0x55555554), storage_ix, storage);
+static BROTLI_INLINE void StoreStaticCodeLengthCode(
+ size_t* storage_ix, uint8_t* storage) {
+ BrotliWriteBits(
+ 40, MAKE_UINT64_T(0x0000ffU, 0x55555554U), storage_ix, storage);
}
-static const uint64_t kZeroRepsBits[704] = {
+static const uint64_t kZeroRepsBits[BROTLI_NUM_COMMAND_SYMBOLS] = {
0x00000000, 0x00000000, 0x00000000, 0x00000007, 0x00000017, 0x00000027,
0x00000037, 0x00000047, 0x00000057, 0x00000067, 0x00000077, 0x00000770,
0x00000b87, 0x00001387, 0x00001b87, 0x00002387, 0x00002b87, 0x00003387,
@@ -202,7 +207,7 @@ static const uint64_t kZeroRepsBits[704] = {
0x06f9cb87, 0x08f9cb87,
};
-static const uint32_t kZeroRepsDepth[704] = {
+static const uint32_t kZeroRepsDepth[BROTLI_NUM_COMMAND_SYMBOLS] = {
0, 4, 8, 7, 7, 7, 7, 7, 7, 7, 7, 11, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
@@ -249,7 +254,7 @@ static const uint32_t kZeroRepsDepth[704] = {
28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28,
};
-static const uint64_t kNonZeroRepsBits[704] = {
+static const uint64_t kNonZeroRepsBits[BROTLI_NUM_COMMAND_SYMBOLS] = {
0x0000000b, 0x0000001b, 0x0000002b, 0x0000003b, 0x000002cb, 0x000006cb,
0x00000acb, 0x00000ecb, 0x000002db, 0x000006db, 0x00000adb, 0x00000edb,
0x000002eb, 0x000006eb, 0x00000aeb, 0x00000eeb, 0x000002fb, 0x000006fb,
@@ -370,7 +375,7 @@ static const uint64_t kNonZeroRepsBits[704] = {
0x2baeb6db, 0x3baeb6db,
};
-static const uint32_t kNonZeroRepsDepth[704] = {
+static const uint32_t kNonZeroRepsDepth[BROTLI_NUM_COMMAND_SYMBOLS] = {
6, 6, 6, 6, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
12, 12, 12, 12, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
@@ -417,47 +422,7 @@ static const uint32_t kNonZeroRepsDepth[704] = {
30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
};
-static const uint16_t kStaticLiteralCodeBits[256] = {
- 0, 128, 64, 192, 32, 160, 96, 224,
- 16, 144, 80, 208, 48, 176, 112, 240,
- 8, 136, 72, 200, 40, 168, 104, 232,
- 24, 152, 88, 216, 56, 184, 120, 248,
- 4, 132, 68, 196, 36, 164, 100, 228,
- 20, 148, 84, 212, 52, 180, 116, 244,
- 12, 140, 76, 204, 44, 172, 108, 236,
- 28, 156, 92, 220, 60, 188, 124, 252,
- 2, 130, 66, 194, 34, 162, 98, 226,
- 18, 146, 82, 210, 50, 178, 114, 242,
- 10, 138, 74, 202, 42, 170, 106, 234,
- 26, 154, 90, 218, 58, 186, 122, 250,
- 6, 134, 70, 198, 38, 166, 102, 230,
- 22, 150, 86, 214, 54, 182, 118, 246,
- 14, 142, 78, 206, 46, 174, 110, 238,
- 30, 158, 94, 222, 62, 190, 126, 254,
- 1, 129, 65, 193, 33, 161, 97, 225,
- 17, 145, 81, 209, 49, 177, 113, 241,
- 9, 137, 73, 201, 41, 169, 105, 233,
- 25, 153, 89, 217, 57, 185, 121, 249,
- 5, 133, 69, 197, 37, 165, 101, 229,
- 21, 149, 85, 213, 53, 181, 117, 245,
- 13, 141, 77, 205, 45, 173, 109, 237,
- 29, 157, 93, 221, 61, 189, 125, 253,
- 3, 131, 67, 195, 35, 163, 99, 227,
- 19, 147, 83, 211, 51, 179, 115, 243,
- 11, 139, 75, 203, 43, 171, 107, 235,
- 27, 155, 91, 219, 59, 187, 123, 251,
- 7, 135, 71, 199, 39, 167, 103, 231,
- 23, 151, 87, 215, 55, 183, 119, 247,
- 15, 143, 79, 207, 47, 175, 111, 239,
- 31, 159, 95, 223, 63, 191, 127, 255,
-};
-
-inline void StoreStaticLiteralHuffmanTree(size_t* storage_ix,
- uint8_t* storage) {
- WriteBits(32, 0x00010003U, storage_ix, storage);
-}
-
-static const uint16_t kStaticCommandCodeBits[kNumCommandPrefixes] = {
+static const uint16_t kStaticCommandCodeBits[BROTLI_NUM_COMMAND_SYMBOLS] = {
0, 256, 128, 384, 64, 320, 192, 448,
32, 288, 160, 416, 96, 352, 224, 480,
16, 272, 144, 400, 80, 336, 208, 464,
@@ -548,10 +513,11 @@ static const uint16_t kStaticCommandCodeBits[kNumCommandPrefixes] = {
255, 1279, 767, 1791, 511, 1535, 1023, 2047,
};
-inline void StoreStaticCommandHuffmanTree(size_t* storage_ix,
- uint8_t* storage) {
- WriteBits(28, 0x0000000006307003U, storage_ix, storage);
- WriteBits(31, 0x0000000009262441U, storage_ix, storage);
+static BROTLI_INLINE void StoreStaticCommandHuffmanTree(
+ size_t* storage_ix, uint8_t* storage) {
+ BrotliWriteBits(
+ 56, MAKE_UINT64_T(0x926244U, 0x16307003U), storage_ix, storage);
+ BrotliWriteBits(3, 0x00000000U, storage_ix, storage);
}
static const uint16_t kStaticDistanceCodeBits[64] = {
@@ -561,12 +527,13 @@ static const uint16_t kStaticDistanceCodeBits[64] = {
3, 35, 19, 51, 11, 43, 27, 59, 7, 39, 23, 55, 15, 47, 31, 63,
};
-inline void StoreStaticDistanceHuffmanTree(size_t* storage_ix,
- uint8_t* storage) {
- WriteBits(18, 0x000000000001dc03U, storage_ix, storage);
- WriteBits(10, 0x00000000000000daU, storage_ix, storage);
+static BROTLI_INLINE void StoreStaticDistanceHuffmanTree(
+ size_t* storage_ix, uint8_t* storage) {
+ BrotliWriteBits(28, 0x0369dc03U, storage_ix, storage);
}
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_ENTROPY_ENCODE_STATIC_H_
+#endif /* BROTLI_ENC_ENTROPY_ENCODE_STATIC_H_ */
diff --git a/thirdparty/brotli/enc/fast_log.h b/thirdparty/brotli/enc/fast_log.h
index c3f3ca73..ca1d6cb3 100644
--- a/thirdparty/brotli/enc/fast_log.h
+++ b/thirdparty/brotli/enc/fast_log.h
@@ -4,21 +4,23 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Utilities for fast computation of logarithms.
+/* Utilities for fast computation of logarithms. */
#ifndef BROTLI_ENC_FAST_LOG_H_
#define BROTLI_ENC_FAST_LOG_H_
-#include <assert.h>
#include <math.h>
-#include "./types.h"
+#include "../common/types.h"
+#include "../common/port.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
-static inline uint32_t Log2FloorNonZero(size_t n) {
+static BROTLI_INLINE uint32_t Log2FloorNonZero(size_t n) {
#ifdef __GNUC__
- return 31u ^ static_cast<uint32_t>(__builtin_clz(static_cast<uint32_t>(n)));
+ return 31u ^ (uint32_t)__builtin_clz((uint32_t)n);
#else
uint32_t result = 0;
while (n >>= 1) result++;
@@ -26,10 +28,10 @@ static inline uint32_t Log2FloorNonZero(size_t n) {
#endif
}
-// A lookup table for small values of log2(int) to be used in entropy
-// computation.
-//
-// ", ".join(["%.16ff" % x for x in [0.0]+[log2(x) for x in range(1, 256)]])
+/* A lookup table for small values of log2(int) to be used in entropy
+ computation.
+
+ ", ".join(["%.16ff" % x for x in [0.0]+[log2(x) for x in range(1, 256)]]) */
static const float kLog2Table[] = {
0.0000000000000000f, 0.0000000000000000f, 1.0000000000000000f,
1.5849625007211563f, 2.0000000000000000f, 2.3219280948873622f,
@@ -119,21 +121,25 @@ static const float kLog2Table[] = {
7.9943534368588578f
};
-// Faster logarithm for small integers, with the property of log2(0) == 0.
-static inline double FastLog2(size_t v) {
+#define LOG_2_INV 1.4426950408889634
+
+/* Faster logarithm for small integers, with the property of log2(0) == 0. */
+static BROTLI_INLINE double FastLog2(size_t v) {
if (v < sizeof(kLog2Table) / sizeof(kLog2Table[0])) {
return kLog2Table[v];
}
-#if defined(_MSC_VER) && _MSC_VER <= 1600 || defined(ANDROID)
- // Visual Studio 2010 does not have the log2() function defined, so we use
- // log() and a multiplication instead.
- static const double kLog2Inv = 1.4426950408889634f;
- return log(static_cast<double>(v)) * kLog2Inv;
+#if (defined(_MSC_VER) && _MSC_VER <= 1700) || \
+ (defined(__ANDROID_API__) && __ANDROID_API__ < 18)
+ /* Visual Studio 2012 and Android API levels < 18 do not have the log2()
+ * function defined, so we use log() and a multiplication instead. */
+ return log((double)v) * LOG_2_INV;
#else
- return log2(static_cast<double>(v));
+ return log2((double)v);
#endif
}
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_FAST_LOG_H_
+#endif /* BROTLI_ENC_FAST_LOG_H_ */
diff --git a/thirdparty/brotli/enc/find_match_length.h b/thirdparty/brotli/enc/find_match_length.h
index 1337ec36..2b38abf0 100644
--- a/thirdparty/brotli/enc/find_match_length.h
+++ b/thirdparty/brotli/enc/find_match_length.h
@@ -4,25 +4,26 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Function to find maximal matching prefixes of strings.
+/* Function to find maximal matching prefixes of strings. */
#ifndef BROTLI_ENC_FIND_MATCH_LENGTH_H_
#define BROTLI_ENC_FIND_MATCH_LENGTH_H_
-
+#include "../common/types.h"
#include "./port.h"
-#include "./types.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
-// Separate implementation for little-endian 64-bit targets, for speed.
+/* Separate implementation for little-endian 64-bit targets, for speed. */
#if defined(__GNUC__) && defined(_LP64) && defined(IS_LITTLE_ENDIAN)
-static inline size_t FindMatchLengthWithLimit(const uint8_t* s1,
- const uint8_t* s2,
- size_t limit) {
+static BROTLI_INLINE size_t FindMatchLengthWithLimit(const uint8_t* s1,
+ const uint8_t* s2,
+ size_t limit) {
size_t matched = 0;
- size_t limit2 = (limit >> 3) + 1; // + 1 is for pre-decrement in while
+ size_t limit2 = (limit >> 3) + 1; /* + 1 is for pre-decrement in while */
while (PREDICT_TRUE(--limit2)) {
if (PREDICT_FALSE(BROTLI_UNALIGNED_LOAD64(s2) ==
BROTLI_UNALIGNED_LOAD64(s1 + matched))) {
@@ -31,12 +32,12 @@ static inline size_t FindMatchLengthWithLimit(const uint8_t* s1,
} else {
uint64_t x =
BROTLI_UNALIGNED_LOAD64(s2) ^ BROTLI_UNALIGNED_LOAD64(s1 + matched);
- size_t matching_bits = static_cast<size_t>(__builtin_ctzll(x));
+ size_t matching_bits = (size_t)__builtin_ctzll(x);
matched += matching_bits >> 3;
return matched;
}
}
- limit = (limit & 7) + 1; // + 1 is for pre-decrement in while
+ limit = (limit & 7) + 1; /* + 1 is for pre-decrement in while */
while (--limit) {
if (PREDICT_TRUE(s1[matched] == *s2)) {
++s2;
@@ -48,16 +49,16 @@ static inline size_t FindMatchLengthWithLimit(const uint8_t* s1,
return matched;
}
#else
-static inline size_t FindMatchLengthWithLimit(const uint8_t* s1,
- const uint8_t* s2,
- size_t limit) {
+static BROTLI_INLINE size_t FindMatchLengthWithLimit(const uint8_t* s1,
+ const uint8_t* s2,
+ size_t limit) {
size_t matched = 0;
const uint8_t* s2_limit = s2 + limit;
const uint8_t* s2_ptr = s2;
- // Find out how long the match is. We loop over the data 32 bits at a
- // time until we find a 32-bit block that doesn't match; then we find
- // the first non-matching bit and use that to calculate the total
- // length of the match.
+ /* Find out how long the match is. We loop over the data 32 bits at a
+ time until we find a 32-bit block that doesn't match; then we find
+ the first non-matching bit and use that to calculate the total
+ length of the match. */
while (s2_ptr <= s2_limit - 4 &&
BROTLI_UNALIGNED_LOAD32(s2_ptr) ==
BROTLI_UNALIGNED_LOAD32(s1 + matched)) {
@@ -72,6 +73,8 @@ static inline size_t FindMatchLengthWithLimit(const uint8_t* s1,
}
#endif
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_FIND_MATCH_LENGTH_H_
+#endif /* BROTLI_ENC_FIND_MATCH_LENGTH_H_ */
diff --git a/thirdparty/brotli/enc/hash.h b/thirdparty/brotli/enc/hash.h
index 8716863b..6efa6c69 100644
--- a/thirdparty/brotli/enc/hash.h
+++ b/thirdparty/brotli/enc/hash.h
@@ -4,30 +4,32 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// A (forgetful) hash table to the data seen by the compressor, to
-// help create backward references to previous data.
+/* A (forgetful) hash table to the data seen by the compressor, to
+ help create backward references to previous data. */
#ifndef BROTLI_ENC_HASH_H_
#define BROTLI_ENC_HASH_H_
-#include <sys/types.h>
-#include <algorithm>
-#include <cstring>
-#include <limits>
+#include <string.h> /* memcmp, memset */
+#include "../common/constants.h"
+#include "../common/dictionary.h"
+#include "../common/types.h"
#include "./dictionary_hash.h"
#include "./fast_log.h"
#include "./find_match_length.h"
+#include "./memory.h"
#include "./port.h"
-#include "./prefix.h"
+#include "./quality.h"
#include "./static_dict.h"
-#include "./transform.h"
-#include "./types.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
-static const size_t kMaxTreeSearchDepth = 64;
-static const size_t kMaxTreeCompLength = 128;
+#define MAX_TREE_SEARCH_DEPTH 64
+#define MAX_TREE_COMP_LENGTH 128
+#define score_t size_t
static const uint32_t kDistanceCacheIndex[] = {
0, 1, 2, 3, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1,
@@ -41,934 +43,675 @@ static const uint8_t kCutoffTransforms[] = {
0, 12, 27, 23, 42, 63, 56, 48, 59, 64
};
-// kHashMul32 multiplier has these properties:
-// * The multiplier must be odd. Otherwise we may lose the highest bit.
-// * No long streaks of 1s or 0s.
-// * There is no effort to ensure that it is a prime, the oddity is enough
-// for this use.
-// * The number has been tuned heuristically against compression benchmarks.
+typedef struct HasherSearchResult {
+ size_t len;
+ size_t len_x_code; /* == len ^ len_code */
+ size_t distance;
+ score_t score;
+} HasherSearchResult;
+
+typedef struct DictionarySearchStatictics {
+ size_t num_lookups;
+ size_t num_matches;
+} DictionarySearchStatictics;
+
+/* kHashMul32 multiplier has these properties:
+ * The multiplier must be odd. Otherwise we may lose the highest bit.
+ * No long streaks of 1s or 0s.
+ * There is no effort to ensure that it is a prime, the oddity is enough
+ for this use.
+ * The number has been tuned heuristically against compression benchmarks. */
static const uint32_t kHashMul32 = 0x1e35a7bd;
-template<int kShiftBits>
-inline uint32_t Hash(const uint8_t *data) {
+static BROTLI_INLINE uint32_t Hash14(const uint8_t* data) {
uint32_t h = BROTLI_UNALIGNED_LOAD32(data) * kHashMul32;
- // The higher bits contain more mixture from the multiplication,
- // so we take our results from there.
- return h >> (32 - kShiftBits);
+ /* The higher bits contain more mixture from the multiplication,
+ so we take our results from there. */
+ return h >> (32 - 14);
}
-// Usually, we always choose the longest backward reference. This function
-// allows for the exception of that rule.
-//
-// If we choose a backward reference that is further away, it will
-// usually be coded with more bits. We approximate this by assuming
-// log2(distance). If the distance can be expressed in terms of the
-// last four distances, we use some heuristic constants to estimate
-// the bits cost. For the first up to four literals we use the bit
-// cost of the literals from the literal cost model, after that we
-// use the average bit cost of the cost model.
-//
-// This function is used to sometimes discard a longer backward reference
-// when it is not much longer and the bit cost for encoding it is more
-// than the saved literals.
-//
-// backward_reference_offset MUST be positive.
-inline double BackwardReferenceScore(size_t copy_length,
- size_t backward_reference_offset) {
- return 5.4 * static_cast<double>(copy_length) -
- 1.20 * Log2FloorNonZero(backward_reference_offset);
+#define BROTLI_LITERAL_BYTE_SCORE 540
+#define BROTLI_DISTANCE_BIT_PENALTY 120
+/* Score must be positive after applying maximal penalty. */
+#define BROTLI_SCORE_BASE (BROTLI_DISTANCE_BIT_PENALTY * 8 * sizeof(size_t))
+
+/* Usually, we always choose the longest backward reference. This function
+ allows for the exception of that rule.
+
+ If we choose a backward reference that is further away, it will
+ usually be coded with more bits. We approximate this by assuming
+ log2(distance). If the distance can be expressed in terms of the
+ last four distances, we use some heuristic constants to estimate
+ the bits cost. For the first up to four literals we use the bit
+ cost of the literals from the literal cost model, after that we
+ use the average bit cost of the cost model.
+
+ This function is used to sometimes discard a longer backward reference
+ when it is not much longer and the bit cost for encoding it is more
+ than the saved literals.
+
+ backward_reference_offset MUST be positive. */
+static BROTLI_INLINE score_t BackwardReferenceScore(
+ size_t copy_length, size_t backward_reference_offset) {
+ return BROTLI_SCORE_BASE + BROTLI_LITERAL_BYTE_SCORE * (score_t)copy_length -
+ BROTLI_DISTANCE_BIT_PENALTY * Log2FloorNonZero(backward_reference_offset);
}
-inline double BackwardReferenceScoreUsingLastDistance(size_t copy_length,
- size_t distance_short_code) {
- static const double kDistanceShortCodeBitCost[16] = {
- -0.6, 0.95, 1.17, 1.27,
- 0.93, 0.93, 0.96, 0.96, 0.99, 0.99,
- 1.05, 1.05, 1.15, 1.15, 1.25, 1.25
- };
- return 5.4 * static_cast<double>(copy_length) -
- kDistanceShortCodeBitCost[distance_short_code];
-}
-
-struct BackwardMatch {
- BackwardMatch(void) : distance(0), length_and_code(0) {}
-
- BackwardMatch(size_t dist, size_t len)
- : distance(static_cast<uint32_t>(dist))
- , length_and_code(static_cast<uint32_t>(len << 5)) {}
-
- BackwardMatch(size_t dist, size_t len, size_t len_code)
- : distance(static_cast<uint32_t>(dist))
- , length_and_code(static_cast<uint32_t>(
- (len << 5) | (len == len_code ? 0 : len_code))) {}
-
- size_t length(void) const {
- return length_and_code >> 5;
- }
- size_t length_code(void) const {
- size_t code = length_and_code & 31;
- return code ? code : length();
- }
-
- uint32_t distance;
- uint32_t length_and_code;
+static const score_t kDistanceShortCodeCost[BROTLI_NUM_DISTANCE_SHORT_CODES] = {
+ /* Repeat last */
+ BROTLI_SCORE_BASE + 60,
+ /* 2nd, 3rd, 4th last */
+ BROTLI_SCORE_BASE - 95,
+ BROTLI_SCORE_BASE - 117,
+ BROTLI_SCORE_BASE - 127,
+ /* Last with offset */
+ BROTLI_SCORE_BASE - 93,
+ BROTLI_SCORE_BASE - 93,
+ BROTLI_SCORE_BASE - 96,
+ BROTLI_SCORE_BASE - 96,
+ BROTLI_SCORE_BASE - 99,
+ BROTLI_SCORE_BASE - 99,
+ /* 2nd last with offset */
+ BROTLI_SCORE_BASE - 105,
+ BROTLI_SCORE_BASE - 105,
+ BROTLI_SCORE_BASE - 115,
+ BROTLI_SCORE_BASE - 115,
+ BROTLI_SCORE_BASE - 125,
+ BROTLI_SCORE_BASE - 125
};
-// A (forgetful) hash table to the data seen by the compressor, to
-// help create backward references to previous data.
-//
-// This is a hash map of fixed size (kBucketSize). Starting from the
-// given index, kBucketSweep buckets are used to store values of a key.
-template <int kBucketBits, int kBucketSweep, bool kUseDictionary>
-class HashLongestMatchQuickly {
- public:
- HashLongestMatchQuickly(void) {
- Reset();
- }
- void Reset(void) {
- need_init_ = true;
- num_dict_lookups_ = 0;
- num_dict_matches_ = 0;
- }
- void Init(void) {
- if (need_init_) {
- // It is not strictly necessary to fill this buffer here, but
- // not filling will make the results of the compression stochastic
- // (but correct). This is because random data would cause the
- // system to find accidentally good backward references here and there.
- memset(&buckets_[0], 0, sizeof(buckets_));
- need_init_ = false;
- }
- }
- void InitForData(const uint8_t* data, size_t num) {
- for (size_t i = 0; i < num; ++i) {
- const uint32_t key = HashBytes(&data[i]);
- memset(&buckets_[key], 0, kBucketSweep * sizeof(buckets_[0]));
- need_init_ = false;
- }
- }
- // Look at 4 bytes at data.
- // Compute a hash from these, and store the value somewhere within
- // [ix .. ix+3].
- inline void Store(const uint8_t *data, const uint32_t ix) {
- const uint32_t key = HashBytes(data);
- // Wiggle the value with the bucket sweep range.
- const uint32_t off = (ix >> 3) % kBucketSweep;
- buckets_[key + off] = ix;
- }
-
- // Find a longest backward match of &ring_buffer[cur_ix & ring_buffer_mask]
- // up to the length of max_length and stores the position cur_ix in the
- // hash table.
- //
- // Does not look for matches longer than max_length.
- // Does not look for matches further away than max_backward.
- // Writes the best found match length into best_len_out.
- // Writes the index (&data[index]) of the start of the best match into
- // best_distance_out.
- inline bool FindLongestMatch(const uint8_t * __restrict ring_buffer,
- const size_t ring_buffer_mask,
- const int* __restrict distance_cache,
- const size_t cur_ix,
- const size_t max_length,
- const size_t max_backward,
- size_t * __restrict best_len_out,
- size_t * __restrict best_len_code_out,
- size_t * __restrict best_distance_out,
- double* __restrict best_score_out) {
- const size_t best_len_in = *best_len_out;
- const size_t cur_ix_masked = cur_ix & ring_buffer_mask;
- const uint32_t key = HashBytes(&ring_buffer[cur_ix_masked]);
- int compare_char = ring_buffer[cur_ix_masked + best_len_in];
- double best_score = *best_score_out;
- size_t best_len = best_len_in;
- size_t cached_backward = static_cast<size_t>(distance_cache[0]);
- size_t prev_ix = cur_ix - cached_backward;
- bool match_found = false;
- if (prev_ix < cur_ix) {
- prev_ix &= static_cast<uint32_t>(ring_buffer_mask);
- if (compare_char == ring_buffer[prev_ix + best_len]) {
- size_t len = FindMatchLengthWithLimit(&ring_buffer[prev_ix],
- &ring_buffer[cur_ix_masked],
- max_length);
- if (len >= 4) {
- best_score = BackwardReferenceScoreUsingLastDistance(len, 0);
- best_len = len;
- *best_len_out = len;
- *best_len_code_out = len;
- *best_distance_out = cached_backward;
- *best_score_out = best_score;
- compare_char = ring_buffer[cur_ix_masked + best_len];
- if (kBucketSweep == 1) {
- buckets_[key] = static_cast<uint32_t>(cur_ix);
- return true;
- } else {
- match_found = true;
- }
- }
- }
- }
- if (kBucketSweep == 1) {
- // Only one to look for, don't bother to prepare for a loop.
- prev_ix = buckets_[key];
- buckets_[key] = static_cast<uint32_t>(cur_ix);
- size_t backward = cur_ix - prev_ix;
- prev_ix &= static_cast<uint32_t>(ring_buffer_mask);
- if (compare_char != ring_buffer[prev_ix + best_len_in]) {
- return false;
- }
- if (PREDICT_FALSE(backward == 0 || backward > max_backward)) {
- return false;
- }
- const size_t len = FindMatchLengthWithLimit(&ring_buffer[prev_ix],
- &ring_buffer[cur_ix_masked],
- max_length);
- if (len >= 4) {
- *best_len_out = len;
- *best_len_code_out = len;
- *best_distance_out = backward;
- *best_score_out = BackwardReferenceScore(len, backward);
- return true;
- }
- } else {
- uint32_t *bucket = buckets_ + key;
- prev_ix = *bucket++;
- for (int i = 0; i < kBucketSweep; ++i, prev_ix = *bucket++) {
- const size_t backward = cur_ix - prev_ix;
- prev_ix &= static_cast<uint32_t>(ring_buffer_mask);
- if (compare_char != ring_buffer[prev_ix + best_len]) {
- continue;
- }
- if (PREDICT_FALSE(backward == 0 || backward > max_backward)) {
- continue;
- }
- const size_t len = FindMatchLengthWithLimit(&ring_buffer[prev_ix],
- &ring_buffer[cur_ix_masked],
- max_length);
- if (len >= 4) {
- const double score = BackwardReferenceScore(len, backward);
- if (best_score < score) {
- best_score = score;
- best_len = len;
- *best_len_out = best_len;
- *best_len_code_out = best_len;
- *best_distance_out = backward;
- *best_score_out = score;
- compare_char = ring_buffer[cur_ix_masked + best_len];
- match_found = true;
- }
- }
- }
- }
- if (kUseDictionary && !match_found &&
- num_dict_matches_ >= (num_dict_lookups_ >> 7)) {
- ++num_dict_lookups_;
- const uint32_t dict_key = Hash<14>(&ring_buffer[cur_ix_masked]) << 1;
- const uint16_t v = kStaticDictionaryHash[dict_key];
- if (v > 0) {
- const uint32_t len = v & 31;
- const uint32_t dist = v >> 5;
- const size_t offset =
- kBrotliDictionaryOffsetsByLength[len] + len * dist;
- if (len <= max_length) {
- const size_t matchlen =
- FindMatchLengthWithLimit(&ring_buffer[cur_ix_masked],
- &kBrotliDictionary[offset], len);
- if (matchlen + kCutoffTransformsCount > len && matchlen > 0) {
- const size_t transform_id = kCutoffTransforms[len - matchlen];
- const size_t word_id =
- transform_id * (1u << kBrotliDictionarySizeBitsByLength[len]) +
- dist;
- const size_t backward = max_backward + word_id + 1;
- const double score = BackwardReferenceScore(matchlen, backward);
- if (best_score < score) {
- ++num_dict_matches_;
- best_score = score;
- best_len = matchlen;
- *best_len_out = best_len;
- *best_len_code_out = len;
- *best_distance_out = backward;
- *best_score_out = best_score;
- match_found = true;
- }
- }
- }
- }
- }
- const uint32_t off = (cur_ix >> 3) % kBucketSweep;
- buckets_[key + off] = static_cast<uint32_t>(cur_ix);
- return match_found;
- }
-
- enum { kHashLength = 5 };
- enum { kHashTypeLength = 8 };
- // HashBytes is the function that chooses the bucket to place
- // the address in. The HashLongestMatch and HashLongestMatchQuickly
- // classes have separate, different implementations of hashing.
- static uint32_t HashBytes(const uint8_t *data) {
- // Computing a hash based on 5 bytes works much better for
- // qualities 1 and 3, where the next hash value is likely to replace
- uint64_t h = (BROTLI_UNALIGNED_LOAD64(data) << 24) * kHashMul32;
- // The higher bits contain more mixture from the multiplication,
- // so we take our results from there.
- return static_cast<uint32_t>(h >> (64 - kBucketBits));
- }
-
- enum { kHashMapSize = 4 << kBucketBits };
-
- private:
- static const uint32_t kBucketSize = 1 << kBucketBits;
- uint32_t buckets_[kBucketSize + kBucketSweep];
- // True if buckets_ array needs to be initialized.
- bool need_init_;
- size_t num_dict_lookups_;
- size_t num_dict_matches_;
-};
+static BROTLI_INLINE score_t BackwardReferenceScoreUsingLastDistance(
+ size_t copy_length, size_t distance_short_code) {
+ return BROTLI_LITERAL_BYTE_SCORE * (score_t)copy_length +
+ kDistanceShortCodeCost[distance_short_code];
+}
-// A (forgetful) hash table to the data seen by the compressor, to
-// help create backward references to previous data.
-//
-// This is a hash map of fixed size (kBucketSize) to a ring buffer of
-// fixed size (kBlockSize). The ring buffer contains the last kBlockSize
-// index positions of the given hash key in the compressed data.
-template <int kBucketBits,
- int kBlockBits,
- int kNumLastDistancesToCheck>
-class HashLongestMatch {
- public:
- HashLongestMatch(void) {
- Reset();
- }
+static BROTLI_INLINE void DictionarySearchStaticticsReset(
+ DictionarySearchStatictics* self) {
+ self->num_lookups = 0;
+ self->num_matches = 0;
+}
- void Reset(void) {
- need_init_ = true;
- num_dict_lookups_ = 0;
- num_dict_matches_ = 0;
- }
+static BROTLI_INLINE BROTLI_BOOL TestStaticDictionaryItem(
+ size_t item, const uint8_t* data, size_t max_length, size_t max_backward,
+ HasherSearchResult* out) {
+ size_t len;
+ size_t dist;
+ size_t offset;
+ size_t matchlen;
+ size_t backward;
+ score_t score;
+ len = item & 31;
+ dist = item >> 5;
+ offset = kBrotliDictionaryOffsetsByLength[len] + len * dist;
+ if (len > max_length) {
+ return BROTLI_FALSE;
+ }
+
+ matchlen = FindMatchLengthWithLimit(data, &kBrotliDictionary[offset], len);
+ if (matchlen + kCutoffTransformsCount <= len || matchlen == 0) {
+ return BROTLI_FALSE;
+ }
+ {
+ size_t transform_id = kCutoffTransforms[len - matchlen];
+ backward = max_backward + dist + 1 +
+ (transform_id << kBrotliDictionarySizeBitsByLength[len]);
+ }
+ score = BackwardReferenceScore(matchlen, backward);
+ if (score < out->score) {
+ return BROTLI_FALSE;
+ }
+ out->len = matchlen;
+ out->len_x_code = len ^ matchlen;
+ out->distance = backward;
+ out->score = score;
+ return BROTLI_TRUE;
+}
- void Init(void) {
- if (need_init_) {
- memset(&num_[0], 0, sizeof(num_));
- need_init_ = false;
+static BROTLI_INLINE BROTLI_BOOL SearchInStaticDictionary(
+ DictionarySearchStatictics* self, const uint8_t* data, size_t max_length,
+ size_t max_backward, HasherSearchResult* out, BROTLI_BOOL shallow) {
+ size_t key;
+ size_t i;
+ BROTLI_BOOL is_match_found = BROTLI_FALSE;
+ if (self->num_matches < (self->num_lookups >> 7)) {
+ return BROTLI_FALSE;
+ }
+ key = Hash14(data) << 1;
+ for (i = 0; i < (shallow ? 1 : 2); ++i, ++key) {
+ size_t item = kStaticDictionaryHash[key];
+ self->num_lookups++;
+ if (item != 0 &&
+ TestStaticDictionaryItem(item, data, max_length, max_backward, out)) {
+ self->num_matches++;
+ is_match_found = BROTLI_TRUE;
}
}
+ return is_match_found;
+}
- void InitForData(const uint8_t* data, size_t num) {
- for (size_t i = 0; i < num; ++i) {
- const uint32_t key = HashBytes(&data[i]);
- num_[key] = 0;
- need_init_ = false;
- }
- }
+typedef struct BackwardMatch {
+ uint32_t distance;
+ uint32_t length_and_code;
+} BackwardMatch;
- // Look at 3 bytes at data.
- // Compute a hash from these, and store the value of ix at that position.
- inline void Store(const uint8_t *data, const uint32_t ix) {
- const uint32_t key = HashBytes(data);
- const int minor_ix = num_[key] & kBlockMask;
- buckets_[key][minor_ix] = ix;
- ++num_[key];
- }
+static BROTLI_INLINE void InitBackwardMatch(BackwardMatch* self,
+ size_t dist, size_t len) {
+ self->distance = (uint32_t)dist;
+ self->length_and_code = (uint32_t)(len << 5);
+}
- // Find a longest backward match of &data[cur_ix] up to the length of
- // max_length and stores the position cur_ix in the hash table.
- //
- // Does not look for matches longer than max_length.
- // Does not look for matches further away than max_backward.
- // Writes the best found match length into best_len_out.
- // Writes the index (&data[index]) offset from the start of the best match
- // into best_distance_out.
- // Write the score of the best match into best_score_out.
- bool FindLongestMatch(const uint8_t * __restrict data,
- const size_t ring_buffer_mask,
- const int* __restrict distance_cache,
- const size_t cur_ix,
- const size_t max_length,
- const size_t max_backward,
- size_t * __restrict best_len_out,
- size_t * __restrict best_len_code_out,
- size_t * __restrict best_distance_out,
- double * __restrict best_score_out) {
- *best_len_code_out = 0;
- const size_t cur_ix_masked = cur_ix & ring_buffer_mask;
- bool match_found = false;
- // Don't accept a short copy from far away.
- double best_score = *best_score_out;
- size_t best_len = *best_len_out;
- *best_len_out = 0;
- // Try last distance first.
- for (size_t i = 0; i < kNumLastDistancesToCheck; ++i) {
- const size_t idx = kDistanceCacheIndex[i];
- const size_t backward =
- static_cast<size_t>(distance_cache[idx] + kDistanceCacheOffset[i]);
- size_t prev_ix = static_cast<size_t>(cur_ix - backward);
- if (prev_ix >= cur_ix) {
- continue;
- }
- if (PREDICT_FALSE(backward > max_backward)) {
- continue;
- }
- prev_ix &= ring_buffer_mask;
+static BROTLI_INLINE void InitDictionaryBackwardMatch(BackwardMatch* self,
+ size_t dist, size_t len, size_t len_code) {
+ self->distance = (uint32_t)dist;
+ self->length_and_code =
+ (uint32_t)((len << 5) | (len == len_code ? 0 : len_code));
+}
- if (cur_ix_masked + best_len > ring_buffer_mask ||
- prev_ix + best_len > ring_buffer_mask ||
- data[cur_ix_masked + best_len] != data[prev_ix + best_len]) {
- continue;
- }
- const size_t len = FindMatchLengthWithLimit(&data[prev_ix],
- &data[cur_ix_masked],
- max_length);
- if (len >= 3 || (len == 2 && i < 2)) {
- // Comparing for >= 2 does not change the semantics, but just saves for
- // a few unnecessary binary logarithms in backward reference score,
- // since we are not interested in such short matches.
- double score = BackwardReferenceScoreUsingLastDistance(len, i);
- if (best_score < score) {
- best_score = score;
- best_len = len;
- *best_len_out = best_len;
- *best_len_code_out = best_len;
- *best_distance_out = backward;
- *best_score_out = best_score;
- match_found = true;
- }
- }
- }
- const uint32_t key = HashBytes(&data[cur_ix_masked]);
- const uint32_t * __restrict const bucket = &buckets_[key][0];
- const size_t down = (num_[key] > kBlockSize) ? (num_[key] - kBlockSize) : 0;
- for (size_t i = num_[key]; i > down;) {
- --i;
- size_t prev_ix = bucket[i & kBlockMask];
- const size_t backward = cur_ix - prev_ix;
- if (PREDICT_FALSE(backward == 0 || backward > max_backward)) {
- break;
- }
- prev_ix &= ring_buffer_mask;
- if (cur_ix_masked + best_len > ring_buffer_mask ||
- prev_ix + best_len > ring_buffer_mask ||
- data[cur_ix_masked + best_len] != data[prev_ix + best_len]) {
- continue;
- }
- const size_t len = FindMatchLengthWithLimit(&data[prev_ix],
- &data[cur_ix_masked],
- max_length);
- if (len >= 4) {
- // Comparing for >= 3 does not change the semantics, but just saves
- // for a few unnecessary binary logarithms in backward reference
- // score, since we are not interested in such short matches.
- double score = BackwardReferenceScore(len, backward);
- if (best_score < score) {
- best_score = score;
- best_len = len;
- *best_len_out = best_len;
- *best_len_code_out = best_len;
- *best_distance_out = backward;
- *best_score_out = best_score;
- match_found = true;
- }
- }
- }
- buckets_[key][num_[key] & kBlockMask] = static_cast<uint32_t>(cur_ix);
- ++num_[key];
- if (!match_found && num_dict_matches_ >= (num_dict_lookups_ >> 7)) {
- size_t dict_key = Hash<14>(&data[cur_ix_masked]) << 1;
- for (int k = 0; k < 2; ++k, ++dict_key) {
- ++num_dict_lookups_;
- const uint16_t v = kStaticDictionaryHash[dict_key];
- if (v > 0) {
- const size_t len = v & 31;
- const size_t dist = v >> 5;
- const size_t offset =
- kBrotliDictionaryOffsetsByLength[len] + len * dist;
- if (len <= max_length) {
- const size_t matchlen =
- FindMatchLengthWithLimit(&data[cur_ix_masked],
- &kBrotliDictionary[offset], len);
- if (matchlen + kCutoffTransformsCount > len && matchlen > 0) {
- const size_t transform_id = kCutoffTransforms[len - matchlen];
- const size_t word_id =
- transform_id * (1 << kBrotliDictionarySizeBitsByLength[len]) +
- dist;
- const size_t backward = max_backward + word_id + 1;
- double score = BackwardReferenceScore(matchlen, backward);
- if (best_score < score) {
- ++num_dict_matches_;
- best_score = score;
- best_len = matchlen;
- *best_len_out = best_len;
- *best_len_code_out = len;
- *best_distance_out = backward;
- *best_score_out = best_score;
- match_found = true;
- }
- }
- }
- }
- }
- }
- return match_found;
- }
+static BROTLI_INLINE size_t BackwardMatchLength(const BackwardMatch* self) {
+ return self->length_and_code >> 5;
+}
- // Finds all backward matches of &data[cur_ix & ring_buffer_mask] up to the
- // length of max_length and stores the position cur_ix in the hash table.
- //
- // Sets *num_matches to the number of matches found, and stores the found
- // matches in matches[0] to matches[*num_matches - 1]. The matches will be
- // sorted by strictly increasing length and (non-strictly) increasing
- // distance.
- size_t FindAllMatches(const uint8_t* data,
- const size_t ring_buffer_mask,
- const size_t cur_ix,
- const size_t max_length,
- const size_t max_backward,
- BackwardMatch* matches) {
- BackwardMatch* const orig_matches = matches;
- const size_t cur_ix_masked = cur_ix & ring_buffer_mask;
- size_t best_len = 1;
- size_t stop = cur_ix - 64;
- if (cur_ix < 64) { stop = 0; }
- for (size_t i = cur_ix - 1; i > stop && best_len <= 2; --i) {
- size_t prev_ix = i;
- const size_t backward = cur_ix - prev_ix;
- if (PREDICT_FALSE(backward > max_backward)) {
- break;
- }
- prev_ix &= ring_buffer_mask;
- if (data[cur_ix_masked] != data[prev_ix] ||
- data[cur_ix_masked + 1] != data[prev_ix + 1]) {
- continue;
- }
- const size_t len =
- FindMatchLengthWithLimit(&data[prev_ix], &data[cur_ix_masked],
- max_length);
- if (len > best_len) {
- best_len = len;
- *matches++ = BackwardMatch(backward, len);
- }
- }
- const uint32_t key = HashBytes(&data[cur_ix_masked]);
- const uint32_t * __restrict const bucket = &buckets_[key][0];
- const size_t down = (num_[key] > kBlockSize) ? (num_[key] - kBlockSize) : 0;
- for (size_t i = num_[key]; i > down;) {
- --i;
- size_t prev_ix = bucket[i & kBlockMask];
- const size_t backward = cur_ix - prev_ix;
- if (PREDICT_FALSE(backward == 0 || backward > max_backward)) {
- break;
- }
- prev_ix &= ring_buffer_mask;
- if (cur_ix_masked + best_len > ring_buffer_mask ||
- prev_ix + best_len > ring_buffer_mask ||
- data[cur_ix_masked + best_len] != data[prev_ix + best_len]) {
- continue;
- }
- const size_t len =
- FindMatchLengthWithLimit(&data[prev_ix], &data[cur_ix_masked],
- max_length);
- if (len > best_len) {
- best_len = len;
- *matches++ = BackwardMatch(backward, len);
- }
- }
- buckets_[key][num_[key] & kBlockMask] = static_cast<uint32_t>(cur_ix);
- ++num_[key];
- uint32_t dict_matches[kMaxDictionaryMatchLen + 1];
- for (size_t i = 0; i <= kMaxDictionaryMatchLen; ++i) {
- dict_matches[i] = kInvalidMatch;
- }
- size_t minlen = std::max<size_t>(4, best_len + 1);
- if (FindAllStaticDictionaryMatches(&data[cur_ix_masked], minlen, max_length,
- &dict_matches[0])) {
- size_t maxlen = std::min<size_t>(kMaxDictionaryMatchLen, max_length);
- for (size_t l = minlen; l <= maxlen; ++l) {
- uint32_t dict_id = dict_matches[l];
- if (dict_id < kInvalidMatch) {
- *matches++ = BackwardMatch(max_backward + (dict_id >> 5) + 1, l,
- dict_id & 31);
- }
- }
- }
- return static_cast<size_t>(matches - orig_matches);
- }
+static BROTLI_INLINE size_t BackwardMatchLengthCode(const BackwardMatch* self) {
+ size_t code = self->length_and_code & 31;
+ return code ? code : BackwardMatchLength(self);
+}
- enum { kHashLength = 4 };
- enum { kHashTypeLength = 4 };
-
- // HashBytes is the function that chooses the bucket to place
- // the address in. The HashLongestMatch and HashLongestMatchQuickly
- // classes have separate, different implementations of hashing.
- static uint32_t HashBytes(const uint8_t *data) {
- uint32_t h = BROTLI_UNALIGNED_LOAD32(data) * kHashMul32;
- // The higher bits contain more mixture from the multiplication,
- // so we take our results from there.
- return h >> (32 - kBucketBits);
- }
+#define EXPAND_CAT(a, b) CAT(a, b)
+#define CAT(a, b) a ## b
+#define FN(X) EXPAND_CAT(X, HASHER())
- enum { kHashMapSize = 2 << kBucketBits };
+#define MAX_NUM_MATCHES_H10 (64 + MAX_TREE_SEARCH_DEPTH)
- static const size_t kMaxNumMatches = 64 + (1 << kBlockBits);
+#define HASHER() H10
+#define HashToBinaryTree HASHER()
- private:
- // Number of hash buckets.
- static const uint32_t kBucketSize = 1 << kBucketBits;
+#define BUCKET_BITS 17
+#define BUCKET_SIZE (1 << BUCKET_BITS)
- // Only kBlockSize newest backward references are kept,
- // and the older are forgotten.
- static const uint32_t kBlockSize = 1 << kBlockBits;
+static size_t FN(HashTypeLength)(void) { return 4; }
+static size_t FN(StoreLookahead)(void) { return MAX_TREE_COMP_LENGTH; }
- // Mask for accessing entries in a block (in a ringbuffer manner).
- static const uint32_t kBlockMask = (1 << kBlockBits) - 1;
+static uint32_t FN(HashBytes)(const uint8_t *data) {
+ uint32_t h = BROTLI_UNALIGNED_LOAD32(data) * kHashMul32;
+ /* The higher bits contain more mixture from the multiplication,
+ so we take our results from there. */
+ return h >> (32 - BUCKET_BITS);
+}
- // Number of entries in a particular bucket.
- uint16_t num_[kBucketSize];
+/* A (forgetful) hash table where each hash bucket contains a binary tree of
+ sequences whose first 4 bytes share the same hash code.
+ Each sequence is MAX_TREE_COMP_LENGTH long and is identified by its starting
+ position in the input data. The binary tree is sorted by the lexicographic
+ order of the sequences, and it is also a max-heap with respect to the
+ starting positions. */
+typedef struct HashToBinaryTree {
+ /* The window size minus 1 */
+ size_t window_mask_;
- // Buckets containing kBlockSize of backward references.
- uint32_t buckets_[kBucketSize][kBlockSize];
+ /* Hash table that maps the 4-byte hashes of the sequence to the last
+ position where this hash was found, which is the root of the binary
+ tree of sequences that share this hash bucket. */
+ uint32_t buckets_[BUCKET_SIZE];
- // True if num_ array needs to be initialized.
- bool need_init_;
+ /* The union of the binary trees of each hash bucket. The root of the tree
+ corresponding to a hash is a sequence starting at buckets_[hash] and
+ the left and right children of a sequence starting at pos are
+ forest_[2 * pos] and forest_[2 * pos + 1]. */
+ uint32_t* forest_;
- size_t num_dict_lookups_;
- size_t num_dict_matches_;
-};
+ /* A position used to mark a non-existent sequence, i.e. a tree is empty if
+ its root is at invalid_pos_ and a node is a leaf if both its children
+ are at invalid_pos_. */
+ uint32_t invalid_pos_;
-// A (forgetful) hash table where each hash bucket contains a binary tree of
-// sequences whose first 4 bytes share the same hash code.
-// Each sequence is kMaxTreeCompLength long and is identified by its starting
-// position in the input data. The binary tree is sorted by the lexicographic
-// order of the sequences, and it is also a max-heap with respect to the
-// starting positions.
-class HashToBinaryTree {
- public:
- HashToBinaryTree() : forest_(NULL) {
- Reset();
- }
+ size_t forest_size_;
+ BROTLI_BOOL is_dirty_;
+} HashToBinaryTree;
- ~HashToBinaryTree() {
- delete[] forest_;
- }
+static void FN(Reset)(HashToBinaryTree* self) {
+ self->is_dirty_ = BROTLI_TRUE;
+}
- void Reset() {
- need_init_ = true;
- }
+static void FN(Initialize)(HashToBinaryTree* self) {
+ self->forest_ = NULL;
+ self->forest_size_ = 0;
+ FN(Reset)(self);
+}
- void Init(int lgwin, size_t position, size_t bytes, bool is_last) {
- if (need_init_) {
- window_mask_ = (1u << lgwin) - 1u;
- invalid_pos_ = static_cast<uint32_t>(-window_mask_);
- for (uint32_t i = 0; i < kBucketSize; i++) {
- buckets_[i] = invalid_pos_;
- }
- size_t num_nodes = (position == 0 && is_last) ? bytes : window_mask_ + 1;
- forest_ = new uint32_t[2 * num_nodes];
- need_init_ = false;
- }
- }
+static void FN(Cleanup)(MemoryManager* m, HashToBinaryTree* self) {
+ BROTLI_FREE(m, self->forest_);
+}
- // Finds all backward matches of &data[cur_ix & ring_buffer_mask] up to the
- // length of max_length and stores the position cur_ix in the hash table.
- //
- // Sets *num_matches to the number of matches found, and stores the found
- // matches in matches[0] to matches[*num_matches - 1]. The matches will be
- // sorted by strictly increasing length and (non-strictly) increasing
- // distance.
- size_t FindAllMatches(const uint8_t* data,
- const size_t ring_buffer_mask,
- const size_t cur_ix,
- const size_t max_length,
- const size_t max_backward,
- BackwardMatch* matches) {
- BackwardMatch* const orig_matches = matches;
- const size_t cur_ix_masked = cur_ix & ring_buffer_mask;
- size_t best_len = 1;
- size_t stop = cur_ix - 64;
- if (cur_ix < 64) { stop = 0; }
- for (size_t i = cur_ix - 1; i > stop && best_len <= 2; --i) {
- size_t prev_ix = i;
- const size_t backward = cur_ix - prev_ix;
- if (PREDICT_FALSE(backward > max_backward)) {
- break;
- }
- prev_ix &= ring_buffer_mask;
- if (data[cur_ix_masked] != data[prev_ix] ||
- data[cur_ix_masked + 1] != data[prev_ix + 1]) {
- continue;
- }
- const size_t len =
- FindMatchLengthWithLimit(&data[prev_ix], &data[cur_ix_masked],
- max_length);
- if (len > best_len) {
- best_len = len;
- *matches++ = BackwardMatch(backward, len);
- }
- }
- if (best_len < max_length) {
- matches = StoreAndFindMatches(data, cur_ix, ring_buffer_mask,
- max_length, &best_len, matches);
- }
- uint32_t dict_matches[kMaxDictionaryMatchLen + 1];
- for (size_t i = 0; i <= kMaxDictionaryMatchLen; ++i) {
- dict_matches[i] = kInvalidMatch;
+static void FN(Init)(
+ MemoryManager* m, HashToBinaryTree* self, const uint8_t* data,
+ const BrotliEncoderParams* params, size_t position, size_t bytes,
+ BROTLI_BOOL is_last) {
+ if (self->is_dirty_) {
+ uint32_t invalid_pos;
+ size_t num_nodes;
+ uint32_t i;
+ BROTLI_UNUSED(data);
+ self->window_mask_ = (1u << params->lgwin) - 1u;
+ invalid_pos = (uint32_t)(0 - self->window_mask_);
+ self->invalid_pos_ = invalid_pos;
+ for (i = 0; i < BUCKET_SIZE; i++) {
+ self->buckets_[i] = invalid_pos;
}
- size_t minlen = std::max<size_t>(4, best_len + 1);
- if (FindAllStaticDictionaryMatches(&data[cur_ix_masked], minlen, max_length,
- &dict_matches[0])) {
- size_t maxlen = std::min<size_t>(kMaxDictionaryMatchLen, max_length);
- for (size_t l = minlen; l <= maxlen; ++l) {
- uint32_t dict_id = dict_matches[l];
- if (dict_id < kInvalidMatch) {
- *matches++ = BackwardMatch(max_backward + (dict_id >> 5) + 1, l,
- dict_id & 31);
- }
- }
+ num_nodes = (position == 0 && is_last) ? bytes : self->window_mask_ + 1;
+ if (num_nodes > self->forest_size_) {
+ BROTLI_FREE(m, self->forest_);
+ self->forest_ = BROTLI_ALLOC(m, uint32_t, 2 * num_nodes);
+ if (BROTLI_IS_OOM(m)) return;
+ self->forest_size_ = num_nodes;
}
- return static_cast<size_t>(matches - orig_matches);
+ self->is_dirty_ = BROTLI_FALSE;
}
+}
- // Stores the hash of the next 4 bytes and re-roots the binary tree at the
- // current sequence, without returning any matches.
- // REQUIRES: cur_ix + kMaxTreeCompLength <= end-of-current-block
- void Store(const uint8_t* data,
- const size_t ring_buffer_mask,
- const size_t cur_ix) {
- size_t best_len = 0;
- StoreAndFindMatches(data, cur_ix, ring_buffer_mask, kMaxTreeCompLength,
- &best_len, NULL);
- }
+static BROTLI_INLINE size_t FN(LeftChildIndex)(HashToBinaryTree* self,
+ const size_t pos) {
+ return 2 * (pos & self->window_mask_);
+}
- void StitchToPreviousBlock(size_t num_bytes,
- size_t position,
- const uint8_t* ringbuffer,
- size_t ringbuffer_mask) {
- if (num_bytes >= 3 && position >= kMaxTreeCompLength) {
- // Store the last `kMaxTreeCompLength - 1` positions in the hasher.
- // These could not be calculated before, since they require knowledge
- // of both the previous and the current block.
- const size_t i_start = position - kMaxTreeCompLength + 1;
- const size_t i_end = std::min(position, i_start + num_bytes);
- for (size_t i = i_start; i < i_end; ++i) {
- // We know that i + kMaxTreeCompLength <= position + num_bytes, i.e. the
- // end of the current block and that we have at least
- // kMaxTreeCompLength tail in the ringbuffer.
- Store(ringbuffer, ringbuffer_mask, i);
- }
- }
- }
+static BROTLI_INLINE size_t FN(RightChildIndex)(HashToBinaryTree* self,
+ const size_t pos) {
+ return 2 * (pos & self->window_mask_) + 1;
+}
- static const size_t kMaxNumMatches = 64 + kMaxTreeSearchDepth;
-
- private:
- // Stores the hash of the next 4 bytes and in a single tree-traversal, the
- // hash bucket's binary tree is searched for matches and is re-rooted at the
- // current position.
- //
- // If less than kMaxTreeCompLength data is available, the hash bucket of the
- // current position is searched for matches, but the state of the hash table
- // is not changed, since we can not know the final sorting order of the
- // current (incomplete) sequence.
- //
- // This function must be called with increasing cur_ix positions.
- BackwardMatch* StoreAndFindMatches(const uint8_t* const __restrict data,
- const size_t cur_ix,
- const size_t ring_buffer_mask,
- const size_t max_length,
- size_t* const __restrict best_len,
- BackwardMatch* __restrict matches) {
- const size_t cur_ix_masked = cur_ix & ring_buffer_mask;
- const size_t max_backward = window_mask_ - 15;
- const size_t max_comp_len = std::min(max_length, kMaxTreeCompLength);
- const bool reroot_tree = max_length >= kMaxTreeCompLength;
- const uint32_t key = HashBytes(&data[cur_ix_masked]);
- size_t prev_ix = buckets_[key];
- // The forest index of the rightmost node of the left subtree of the new
- // root, updated as we traverse and reroot the tree of the hash bucket.
- size_t node_left = LeftChildIndex(cur_ix);
- // The forest index of the leftmost node of the right subtree of the new
- // root, updated as we traverse and reroot the tree of the hash bucket.
- size_t node_right = RightChildIndex(cur_ix);
- // The match length of the rightmost node of the left subtree of the new
- // root, updated as we traverse and reroot the tree of the hash bucket.
- size_t best_len_left = 0;
- // The match length of the leftmost node of the right subtree of the new
- // root, updated as we traverse and reroot the tree of the hash bucket.
- size_t best_len_right = 0;
- if (reroot_tree) {
- buckets_[key] = static_cast<uint32_t>(cur_ix);
- }
- for (size_t depth_remaining = kMaxTreeSearchDepth; ; --depth_remaining) {
- const size_t backward = cur_ix - prev_ix;
- const size_t prev_ix_masked = prev_ix & ring_buffer_mask;
- if (backward == 0 || backward > max_backward || depth_remaining == 0) {
- if (reroot_tree) {
- forest_[node_left] = invalid_pos_;
- forest_[node_right] = invalid_pos_;
- }
- break;
+/* Stores the hash of the next 4 bytes and in a single tree-traversal, the
+ hash bucket's binary tree is searched for matches and is re-rooted at the
+ current position.
+
+ If less than MAX_TREE_COMP_LENGTH data is available, the hash bucket of the
+ current position is searched for matches, but the state of the hash table
+ is not changed, since we can not know the final sorting order of the
+ current (incomplete) sequence.
+
+ This function must be called with increasing cur_ix positions. */
+static BROTLI_INLINE BackwardMatch* FN(StoreAndFindMatches)(
+ HashToBinaryTree* self, const uint8_t* const BROTLI_RESTRICT data,
+ const size_t cur_ix, const size_t ring_buffer_mask, const size_t max_length,
+ const size_t max_backward, size_t* const BROTLI_RESTRICT best_len,
+ BackwardMatch* BROTLI_RESTRICT matches) {
+ const size_t cur_ix_masked = cur_ix & ring_buffer_mask;
+ const size_t max_comp_len =
+ BROTLI_MIN(size_t, max_length, MAX_TREE_COMP_LENGTH);
+ const BROTLI_BOOL should_reroot_tree =
+ TO_BROTLI_BOOL(max_length >= MAX_TREE_COMP_LENGTH);
+ const uint32_t key = FN(HashBytes)(&data[cur_ix_masked]);
+ size_t prev_ix = self->buckets_[key];
+ /* The forest index of the rightmost node of the left subtree of the new
+ root, updated as we traverse and reroot the tree of the hash bucket. */
+ size_t node_left = FN(LeftChildIndex)(self, cur_ix);
+ /* The forest index of the leftmost node of the right subtree of the new
+ root, updated as we traverse and reroot the tree of the hash bucket. */
+ size_t node_right = FN(RightChildIndex)(self, cur_ix);
+ /* The match length of the rightmost node of the left subtree of the new
+ root, updated as we traverse and reroot the tree of the hash bucket. */
+ size_t best_len_left = 0;
+ /* The match length of the leftmost node of the right subtree of the new
+ root, updated as we traverse and reroot the tree of the hash bucket. */
+ size_t best_len_right = 0;
+ size_t depth_remaining;
+ if (should_reroot_tree) {
+ self->buckets_[key] = (uint32_t)cur_ix;
+ }
+ for (depth_remaining = MAX_TREE_SEARCH_DEPTH; ; --depth_remaining) {
+ const size_t backward = cur_ix - prev_ix;
+ const size_t prev_ix_masked = prev_ix & ring_buffer_mask;
+ if (backward == 0 || backward > max_backward || depth_remaining == 0) {
+ if (should_reroot_tree) {
+ self->forest_[node_left] = self->invalid_pos_;
+ self->forest_[node_right] = self->invalid_pos_;
}
- const size_t cur_len = std::min(best_len_left, best_len_right);
- const size_t len = cur_len +
+ break;
+ }
+ {
+ const size_t cur_len = BROTLI_MIN(size_t, best_len_left, best_len_right);
+ size_t len;
+ assert(cur_len <= MAX_TREE_COMP_LENGTH);
+ len = cur_len +
FindMatchLengthWithLimit(&data[cur_ix_masked + cur_len],
&data[prev_ix_masked + cur_len],
max_length - cur_len);
- if (len > *best_len) {
+ assert(0 == memcmp(&data[cur_ix_masked], &data[prev_ix_masked], len));
+ if (matches && len > *best_len) {
*best_len = len;
- if (matches) {
- *matches++ = BackwardMatch(backward, len);
- }
- if (len >= max_comp_len) {
- if (reroot_tree) {
- forest_[node_left] = forest_[LeftChildIndex(prev_ix)];
- forest_[node_right] = forest_[RightChildIndex(prev_ix)];
- }
- break;
+ InitBackwardMatch(matches++, backward, len);
+ }
+ if (len >= max_comp_len) {
+ if (should_reroot_tree) {
+ self->forest_[node_left] =
+ self->forest_[FN(LeftChildIndex)(self, prev_ix)];
+ self->forest_[node_right] =
+ self->forest_[FN(RightChildIndex)(self, prev_ix)];
}
+ break;
}
if (data[cur_ix_masked + len] > data[prev_ix_masked + len]) {
best_len_left = len;
- if (reroot_tree) {
- forest_[node_left] = static_cast<uint32_t>(prev_ix);
+ if (should_reroot_tree) {
+ self->forest_[node_left] = (uint32_t)prev_ix;
}
- node_left = RightChildIndex(prev_ix);
- prev_ix = forest_[node_left];
+ node_left = FN(RightChildIndex)(self, prev_ix);
+ prev_ix = self->forest_[node_left];
} else {
best_len_right = len;
- if (reroot_tree) {
- forest_[node_right] = static_cast<uint32_t>(prev_ix);
+ if (should_reroot_tree) {
+ self->forest_[node_right] = (uint32_t)prev_ix;
}
- node_right = LeftChildIndex(prev_ix);
- prev_ix = forest_[node_right];
+ node_right = FN(LeftChildIndex)(self, prev_ix);
+ prev_ix = self->forest_[node_right];
}
}
- return matches;
- }
-
- inline size_t LeftChildIndex(const size_t pos) {
- return 2 * (pos & window_mask_);
}
+ return matches;
+}
- inline size_t RightChildIndex(const size_t pos) {
- return 2 * (pos & window_mask_) + 1;
+/* Finds all backward matches of &data[cur_ix & ring_buffer_mask] up to the
+ length of max_length and stores the position cur_ix in the hash table.
+
+ Sets *num_matches to the number of matches found, and stores the found
+ matches in matches[0] to matches[*num_matches - 1]. The matches will be
+ sorted by strictly increasing length and (non-strictly) increasing
+ distance. */
+static BROTLI_INLINE size_t FN(FindAllMatches)(HashToBinaryTree* self,
+ const uint8_t* data, const size_t ring_buffer_mask, const size_t cur_ix,
+ const size_t max_length, const size_t max_backward,
+ const BrotliEncoderParams* params, BackwardMatch* matches) {
+ BackwardMatch* const orig_matches = matches;
+ const size_t cur_ix_masked = cur_ix & ring_buffer_mask;
+ size_t best_len = 1;
+ const size_t short_match_max_backward =
+ params->quality != HQ_ZOPFLIFICATION_QUALITY ? 16 : 64;
+ size_t stop = cur_ix - short_match_max_backward;
+ uint32_t dict_matches[BROTLI_MAX_STATIC_DICTIONARY_MATCH_LEN + 1];
+ size_t i;
+ if (cur_ix < short_match_max_backward) { stop = 0; }
+ for (i = cur_ix - 1; i > stop && best_len <= 2; --i) {
+ size_t prev_ix = i;
+ const size_t backward = cur_ix - prev_ix;
+ if (PREDICT_FALSE(backward > max_backward)) {
+ break;
+ }
+ prev_ix &= ring_buffer_mask;
+ if (data[cur_ix_masked] != data[prev_ix] ||
+ data[cur_ix_masked + 1] != data[prev_ix + 1]) {
+ continue;
+ }
+ {
+ const size_t len =
+ FindMatchLengthWithLimit(&data[prev_ix], &data[cur_ix_masked],
+ max_length);
+ if (len > best_len) {
+ best_len = len;
+ InitBackwardMatch(matches++, backward, len);
+ }
+ }
}
-
- static uint32_t HashBytes(const uint8_t *data) {
- uint32_t h = BROTLI_UNALIGNED_LOAD32(data) * kHashMul32;
- // The higher bits contain more mixture from the multiplication,
- // so we take our results from there.
- return h >> (32 - kBucketBits);
+ if (best_len < max_length) {
+ matches = FN(StoreAndFindMatches)(self, data, cur_ix, ring_buffer_mask,
+ max_length, max_backward, &best_len, matches);
+ }
+ for (i = 0; i <= BROTLI_MAX_STATIC_DICTIONARY_MATCH_LEN; ++i) {
+ dict_matches[i] = kInvalidMatch;
+ }
+ {
+ size_t minlen = BROTLI_MAX(size_t, 4, best_len + 1);
+ if (BrotliFindAllStaticDictionaryMatches(&data[cur_ix_masked], minlen,
+ max_length, &dict_matches[0])) {
+ size_t maxlen = BROTLI_MIN(
+ size_t, BROTLI_MAX_STATIC_DICTIONARY_MATCH_LEN, max_length);
+ size_t l;
+ for (l = minlen; l <= maxlen; ++l) {
+ uint32_t dict_id = dict_matches[l];
+ if (dict_id < kInvalidMatch) {
+ InitDictionaryBackwardMatch(matches++,
+ max_backward + (dict_id >> 5) + 1, l, dict_id & 31);
+ }
+ }
+ }
}
+ return (size_t)(matches - orig_matches);
+}
- static const int kBucketBits = 17;
- static const size_t kBucketSize = 1 << kBucketBits;
-
- // The window size minus 1
- size_t window_mask_;
-
- // Hash table that maps the 4-byte hashes of the sequence to the last
- // position where this hash was found, which is the root of the binary
- // tree of sequences that share this hash bucket.
- uint32_t buckets_[kBucketSize];
-
- // The union of the binary trees of each hash bucket. The root of the tree
- // corresponding to a hash is a sequence starting at buckets_[hash] and
- // the left and right children of a sequence starting at pos are
- // forest_[2 * pos] and forest_[2 * pos + 1].
- uint32_t* forest_;
-
- // A position used to mark a non-existent sequence, i.e. a tree is empty if
- // its root is at invalid_pos_ and a node is a leaf if both its children
- // are at invalid_pos_.
- uint32_t invalid_pos_;
-
- bool need_init_;
-};
+/* Stores the hash of the next 4 bytes and re-roots the binary tree at the
+ current sequence, without returning any matches.
+ REQUIRES: ix + MAX_TREE_COMP_LENGTH <= end-of-current-block */
+static BROTLI_INLINE void FN(Store)(HashToBinaryTree* self, const uint8_t *data,
+ const size_t mask, const size_t ix) {
+ /* Maximum distance is window size - 16, see section 9.1. of the spec. */
+ const size_t max_backward = self->window_mask_ - 15;
+ FN(StoreAndFindMatches)(self, data, ix, mask, MAX_TREE_COMP_LENGTH,
+ max_backward, NULL, NULL);
+}
-struct Hashers {
- // For kBucketSweep == 1, enabling the dictionary lookup makes compression
- // a little faster (0.5% - 1%) and it compresses 0.15% better on small text
- // and html inputs.
- typedef HashLongestMatchQuickly<16, 1, true> H2;
- typedef HashLongestMatchQuickly<16, 2, false> H3;
- typedef HashLongestMatchQuickly<17, 4, true> H4;
- typedef HashLongestMatch<14, 4, 4> H5;
- typedef HashLongestMatch<14, 5, 4> H6;
- typedef HashLongestMatch<15, 6, 10> H7;
- typedef HashLongestMatch<15, 7, 10> H8;
- typedef HashLongestMatch<15, 8, 16> H9;
- typedef HashToBinaryTree H10;
-
- Hashers(void) : hash_h2(0), hash_h3(0), hash_h4(0), hash_h5(0),
- hash_h6(0), hash_h7(0), hash_h8(0), hash_h9(0), hash_h10(0) {}
-
- ~Hashers(void) {
- delete hash_h2;
- delete hash_h3;
- delete hash_h4;
- delete hash_h5;
- delete hash_h6;
- delete hash_h7;
- delete hash_h8;
- delete hash_h9;
- delete hash_h10;
+static BROTLI_INLINE void FN(StoreRange)(HashToBinaryTree* self,
+ const uint8_t *data, const size_t mask, const size_t ix_start,
+ const size_t ix_end) {
+ size_t i = ix_start + 63 <= ix_end ? ix_end - 63 : ix_start;
+ for (; i < ix_end; ++i) {
+ FN(Store)(self, data, mask, i);
}
+}
- void Init(int type) {
- switch (type) {
- case 2: hash_h2 = new H2; break;
- case 3: hash_h3 = new H3; break;
- case 4: hash_h4 = new H4; break;
- case 5: hash_h5 = new H5; break;
- case 6: hash_h6 = new H6; break;
- case 7: hash_h7 = new H7; break;
- case 8: hash_h8 = new H8; break;
- case 9: hash_h9 = new H9; break;
- case 10: hash_h10 = new H10; break;
- default: break;
+static BROTLI_INLINE void FN(StitchToPreviousBlock)(HashToBinaryTree* self,
+ size_t num_bytes, size_t position, const uint8_t* ringbuffer,
+ size_t ringbuffer_mask) {
+ if (num_bytes >= FN(HashTypeLength)() - 1 &&
+ position >= MAX_TREE_COMP_LENGTH) {
+ /* Store the last `MAX_TREE_COMP_LENGTH - 1` positions in the hasher.
+ These could not be calculated before, since they require knowledge
+ of both the previous and the current block. */
+ const size_t i_start = position - MAX_TREE_COMP_LENGTH + 1;
+ const size_t i_end = BROTLI_MIN(size_t, position, i_start + num_bytes);
+ size_t i;
+ for (i = i_start; i < i_end; ++i) {
+ /* Maximum distance is window size - 16, see section 9.1. of the spec.
+ Furthermore, we have to make sure that we don't look further back
+ from the start of the next block than the window size, otherwise we
+ could access already overwritten areas of the ringbuffer. */
+ const size_t max_backward =
+ self->window_mask_ - BROTLI_MAX(size_t, 15, position - i);
+ /* We know that i + MAX_TREE_COMP_LENGTH <= position + num_bytes, i.e. the
+ end of the current block and that we have at least
+ MAX_TREE_COMP_LENGTH tail in the ringbuffer. */
+ FN(StoreAndFindMatches)(self, ringbuffer, i, ringbuffer_mask,
+ MAX_TREE_COMP_LENGTH, max_backward, NULL, NULL);
}
}
+}
- template<typename Hasher>
- void WarmupHash(const size_t size, const uint8_t* dict, Hasher* hasher) {
- hasher->Init();
- for (size_t i = 0; i + Hasher::kHashTypeLength - 1 < size; i++) {
- hasher->Store(&dict[i], static_cast<uint32_t>(i));
- }
- }
+#undef BUCKET_SIZE
+#undef BUCKET_BITS
+
+#undef HASHER
+
+/* For BUCKET_SWEEP == 1, enabling the dictionary lookup makes compression
+ a little faster (0.5% - 1%) and it compresses 0.15% better on small text
+ and html inputs. */
+
+#define HASHER() H2
+#define BUCKET_BITS 16
+#define BUCKET_SWEEP 1
+#define USE_DICTIONARY 1
+#include "./hash_longest_match_quickly_inc.h" /* NOLINT(build/include) */
+#undef BUCKET_SWEEP
+#undef USE_DICTIONARY
+#undef HASHER
+
+#define HASHER() H3
+#define BUCKET_SWEEP 2
+#define USE_DICTIONARY 0
+#include "./hash_longest_match_quickly_inc.h" /* NOLINT(build/include) */
+#undef USE_DICTIONARY
+#undef BUCKET_SWEEP
+#undef BUCKET_BITS
+#undef HASHER
+
+#define HASHER() H4
+#define BUCKET_BITS 17
+#define BUCKET_SWEEP 4
+#define USE_DICTIONARY 1
+#include "./hash_longest_match_quickly_inc.h" /* NOLINT(build/include) */
+#undef USE_DICTIONARY
+#undef BUCKET_SWEEP
+#undef BUCKET_BITS
+#undef HASHER
+
+#define HASHER() H5
+#define BUCKET_BITS 14
+#define BLOCK_BITS 4
+#define NUM_LAST_DISTANCES_TO_CHECK 4
+#include "./hash_longest_match_inc.h" /* NOLINT(build/include) */
+#undef BLOCK_BITS
+#undef HASHER
+
+#define HASHER() H6
+#define BLOCK_BITS 5
+#include "./hash_longest_match_inc.h" /* NOLINT(build/include) */
+#undef NUM_LAST_DISTANCES_TO_CHECK
+#undef BLOCK_BITS
+#undef BUCKET_BITS
+#undef HASHER
+
+#define HASHER() H7
+#define BUCKET_BITS 15
+#define BLOCK_BITS 6
+#define NUM_LAST_DISTANCES_TO_CHECK 10
+#include "./hash_longest_match_inc.h" /* NOLINT(build/include) */
+#undef BLOCK_BITS
+#undef HASHER
+
+#define HASHER() H8
+#define BLOCK_BITS 7
+#include "./hash_longest_match_inc.h" /* NOLINT(build/include) */
+#undef NUM_LAST_DISTANCES_TO_CHECK
+#undef BLOCK_BITS
+#undef HASHER
+
+#define HASHER() H9
+#define BLOCK_BITS 8
+#define NUM_LAST_DISTANCES_TO_CHECK 16
+#include "./hash_longest_match_inc.h" /* NOLINT(build/include) */
+#undef NUM_LAST_DISTANCES_TO_CHECK
+#undef BLOCK_BITS
+#undef BUCKET_BITS
+#undef HASHER
+
+#define BUCKET_BITS 15
+
+#define NUM_LAST_DISTANCES_TO_CHECK 4
+#define NUM_BANKS 1
+#define BANK_BITS 16
+#define HASHER() H40
+#include "./hash_forgetful_chain_inc.h" /* NOLINT(build/include) */
+#undef HASHER
+#undef NUM_LAST_DISTANCES_TO_CHECK
+
+#define NUM_LAST_DISTANCES_TO_CHECK 10
+#define HASHER() H41
+#include "./hash_forgetful_chain_inc.h" /* NOLINT(build/include) */
+#undef HASHER
+#undef NUM_LAST_DISTANCES_TO_CHECK
+#undef NUM_BANKS
+#undef BANK_BITS
+
+#define NUM_LAST_DISTANCES_TO_CHECK 16
+#define NUM_BANKS 512
+#define BANK_BITS 9
+#define HASHER() H42
+#include "./hash_forgetful_chain_inc.h" /* NOLINT(build/include) */
+#undef HASHER
+#undef NUM_LAST_DISTANCES_TO_CHECK
+#undef NUM_BANKS
+#undef BANK_BITS
+
+#undef BUCKET_BITS
+
+#undef FN
+#undef CAT
+#undef EXPAND_CAT
+
+#define FOR_GENERIC_HASHERS(H) H(2) H(3) H(4) H(5) H(6) H(7) H(8) H(9) \
+ H(40) H(41) H(42)
+#define FOR_ALL_HASHERS(H) FOR_GENERIC_HASHERS(H) H(10)
+
+typedef struct Hashers {
+#define _MEMBER(N) H ## N* h ## N;
+ FOR_ALL_HASHERS(_MEMBER)
+#undef _MEMBER
+} Hashers;
+
+static BROTLI_INLINE void InitHashers(Hashers* self) {
+#define _INIT(N) self->h ## N = 0;
+ FOR_ALL_HASHERS(_INIT)
+#undef _INIT
+}
- // Custom LZ77 window.
- void PrependCustomDictionary(
- int type, int lgwin, const size_t size, const uint8_t* dict) {
- switch (type) {
- case 2: WarmupHash(size, dict, hash_h2); break;
- case 3: WarmupHash(size, dict, hash_h3); break;
- case 4: WarmupHash(size, dict, hash_h4); break;
- case 5: WarmupHash(size, dict, hash_h5); break;
- case 6: WarmupHash(size, dict, hash_h6); break;
- case 7: WarmupHash(size, dict, hash_h7); break;
- case 8: WarmupHash(size, dict, hash_h8); break;
- case 9: WarmupHash(size, dict, hash_h9); break;
- case 10:
- hash_h10->Init(lgwin, 0, size, false);
- for (size_t i = 0; i + kMaxTreeCompLength - 1 < size; ++i) {
- hash_h10->Store(dict, std::numeric_limits<size_t>::max(), i);
- }
- break;
- default: break;
- }
+static BROTLI_INLINE void DestroyHashers(MemoryManager* m, Hashers* self) {
+ if (self->h10) CleanupH10(m, self->h10);
+#define _CLEANUP(N) BROTLI_FREE(m, self->h ## N)
+ FOR_ALL_HASHERS(_CLEANUP)
+#undef _CLEANUP
+}
+
+static BROTLI_INLINE void HashersReset(Hashers* self, int type) {
+ switch (type) {
+#define _RESET(N) case N: ResetH ## N(self->h ## N); break;
+ FOR_ALL_HASHERS(_RESET)
+#undef _RESET
+ default: break;
}
+}
+static BROTLI_INLINE void HashersSetup(
+ MemoryManager* m, Hashers* self, int type) {
+ switch (type) {
+#define _SETUP(N) case N: self->h ## N = BROTLI_ALLOC(m, H ## N, 1); break;
+ FOR_ALL_HASHERS(_SETUP)
+#undef _SETUP
+ default: break;
+ }
+ if (BROTLI_IS_OOM(m)) return;
+ if (type == 10) InitializeH10(self->h10);
+ HashersReset(self, type);
+}
+
+#define _WARMUP_HASH(N) \
+static BROTLI_INLINE void WarmupHashH ## N(MemoryManager* m, \
+ const BrotliEncoderParams* params, const size_t size, const uint8_t* dict, \
+ H ## N* hasher) { \
+ size_t overlap = (StoreLookaheadH ## N()) - 1; \
+ size_t i; \
+ InitH ## N(m, hasher, dict, params, 0, size, BROTLI_FALSE); \
+ if (BROTLI_IS_OOM(m)) return; \
+ for (i = 0; i + overlap < size; i++) { \
+ StoreH ## N(hasher, dict, ~(size_t)0, i); \
+ } \
+}
+FOR_ALL_HASHERS(_WARMUP_HASH)
+#undef _WARMUP_HASH
+
+/* Custom LZ77 window. */
+static BROTLI_INLINE void HashersPrependCustomDictionary(
+ MemoryManager* m, Hashers* self, const BrotliEncoderParams* params,
+ const size_t size, const uint8_t* dict) {
+ int hasher_type = ChooseHasher(params);
+ switch (hasher_type) {
+#define _PREPEND(N) \
+ case N: WarmupHashH ## N(m, params, size, dict, self->h ## N); break;
+ FOR_ALL_HASHERS(_PREPEND)
+#undef _PREPEND
+ default: break;
+ }
+ if (BROTLI_IS_OOM(m)) return;
+}
- H2* hash_h2;
- H3* hash_h3;
- H4* hash_h4;
- H5* hash_h5;
- H6* hash_h6;
- H7* hash_h7;
- H8* hash_h8;
- H9* hash_h9;
- H10* hash_h10;
-};
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_HASH_H_
+#endif /* BROTLI_ENC_HASH_H_ */
diff --git a/thirdparty/brotli/enc/hash_forgetful_chain_inc.h b/thirdparty/brotli/enc/hash_forgetful_chain_inc.h
new file mode 100755
index 00000000..49d537af
--- /dev/null
+++ b/thirdparty/brotli/enc/hash_forgetful_chain_inc.h
@@ -0,0 +1,249 @@
+/* NOLINT(build/header_guard) */
+/* Copyright 2016 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* template parameters: FN, BUCKET_BITS, NUM_BANKS, BANK_BITS,
+ NUM_LAST_DISTANCES_TO_CHECK */
+
+/* A (forgetful) hash table to the data seen by the compressor, to
+ help create backward references to previous data.
+
+ Hashes are stored in chains which are bucketed to groups. Group of chains
+ share a storage "bank". When more than "bank size" chain nodes are added,
+ oldest nodes are replaced; this way several chains may share a tail. */
+
+#define HashForgetfulChain HASHER()
+
+#define BANK_SIZE (1 << BANK_BITS)
+
+/* Number of hash buckets. */
+#define BUCKET_SIZE (1 << BUCKET_BITS)
+
+#define CAPPED_CHAINS 0
+
+static BROTLI_INLINE size_t FN(HashTypeLength)(void) { return 4; }
+static BROTLI_INLINE size_t FN(StoreLookahead)(void) { return 4; }
+
+/* HashBytes is the function that chooses the bucket to place the address in.*/
+static BROTLI_INLINE size_t FN(HashBytes)(const uint8_t *data) {
+ const uint32_t h = BROTLI_UNALIGNED_LOAD32(data) * kHashMul32;
+ /* The higher bits contain more mixture from the multiplication,
+ so we take our results from there. */
+ return h >> (32 - BUCKET_BITS);
+}
+
+typedef struct FN(Slot) {
+ uint16_t delta;
+ uint16_t next;
+} FN(Slot);
+
+typedef struct FN(Bank) {
+ FN(Slot) slots[BANK_SIZE];
+} FN(Bank);
+
+typedef struct HashForgetfulChain {
+ uint32_t addr[BUCKET_SIZE];
+ uint16_t head[BUCKET_SIZE];
+ /* Truncated hash used for quick rejection of "distance cache" candidates. */
+ uint8_t tiny_hash[65536];
+ FN(Bank) banks[NUM_BANKS];
+ uint16_t free_slot_idx[NUM_BANKS];
+ BROTLI_BOOL is_dirty_;
+ DictionarySearchStatictics dict_search_stats_;
+ size_t max_hops;
+} HashForgetfulChain;
+
+static void FN(Reset)(HashForgetfulChain* self) {
+ self->is_dirty_ = BROTLI_TRUE;
+ DictionarySearchStaticticsReset(&self->dict_search_stats_);
+}
+
+static void FN(InitEmpty)(HashForgetfulChain* self) {
+ if (self->is_dirty_) {
+ /* Fill |addr| array with 0xCCCCCCCC value. Because of wrapping, position
+ processed by hasher never reaches 3GB + 64M; this makes all new chains
+ to be terminated after the first node. */
+ memset(self->addr, 0xCC, sizeof(self->addr));
+ memset(self->head, 0, sizeof(self->head));
+ memset(self->tiny_hash, 0, sizeof(self->tiny_hash));
+ memset(self->free_slot_idx, 0, sizeof(self->free_slot_idx));
+ self->is_dirty_ = BROTLI_FALSE;
+ }
+}
+
+static void FN(InitForData)(HashForgetfulChain* self, const uint8_t* data,
+ size_t num) {
+ size_t i;
+ for (i = 0; i < num; ++i) {
+ size_t bucket = FN(HashBytes)(&data[i]);
+ /* See InitEmpty comment. */
+ self->addr[bucket] = 0xCCCCCCCC;
+ self->head[bucket] = 0xCCCC;
+ }
+ memset(self->tiny_hash, 0, sizeof(self->tiny_hash));
+ memset(self->free_slot_idx, 0, sizeof(self->free_slot_idx));
+ if (num != 0) {
+ self->is_dirty_ = BROTLI_FALSE;
+ }
+}
+
+static void FN(Init)(
+ MemoryManager* m, HashForgetfulChain* self, const uint8_t* data,
+ const BrotliEncoderParams* params, size_t position, size_t bytes,
+ BROTLI_BOOL is_last) {
+ /* Choose which init method is faster.
+ Init() is about 100 times faster than InitForData(). */
+ const size_t kMaxBytesForPartialHashInit = BUCKET_SIZE >> 6;
+ BROTLI_UNUSED(m);
+ self->max_hops = (params->quality > 6 ? 7u : 8u) << (params->quality - 4);
+ if (position == 0 && is_last && bytes <= kMaxBytesForPartialHashInit) {
+ FN(InitForData)(self, data, bytes);
+ } else {
+ FN(InitEmpty)(self);
+ }
+}
+
+/* Look at 4 bytes at &data[ix & mask]. Compute a hash from these, and prepend
+ node to corresponding chain; also update tiny_hash for current position. */
+static BROTLI_INLINE void FN(Store)(HashForgetfulChain* BROTLI_RESTRICT self,
+ const uint8_t* BROTLI_RESTRICT data, const size_t mask, const size_t ix) {
+ const size_t key = FN(HashBytes)(&data[ix & mask]);
+ const size_t bank = key & (NUM_BANKS - 1);
+ const size_t idx = self->free_slot_idx[bank]++ & (BANK_SIZE - 1);
+ size_t delta = ix - self->addr[key];
+ self->tiny_hash[(uint16_t)ix] = (uint8_t)key;
+ if (delta > 0xFFFF) delta = CAPPED_CHAINS ? 0 : 0xFFFF;
+ self->banks[bank].slots[idx].delta = (uint16_t)delta;
+ self->banks[bank].slots[idx].next = self->head[key];
+ self->addr[key] = (uint32_t)ix;
+ self->head[key] = (uint16_t)idx;
+}
+
+static BROTLI_INLINE void FN(StoreRange)(HashForgetfulChain* self,
+ const uint8_t *data, const size_t mask, const size_t ix_start,
+ const size_t ix_end) {
+ size_t i;
+ for (i = ix_start; i < ix_end; ++i) {
+ FN(Store)(self, data, mask, i);
+ }
+}
+
+static BROTLI_INLINE void FN(StitchToPreviousBlock)(HashForgetfulChain* self,
+ size_t num_bytes, size_t position, const uint8_t* ringbuffer,
+ size_t ring_buffer_mask) {
+ if (num_bytes >= FN(HashTypeLength)() - 1 && position >= 3) {
+ /* Prepare the hashes for three last bytes of the last write.
+ These could not be calculated before, since they require knowledge
+ of both the previous and the current block. */
+ FN(Store)(self, ringbuffer, ring_buffer_mask, position - 3);
+ FN(Store)(self, ringbuffer, ring_buffer_mask, position - 2);
+ FN(Store)(self, ringbuffer, ring_buffer_mask, position - 1);
+ }
+}
+
+/* Find a longest backward match of &data[cur_ix] up to the length of
+ max_length and stores the position cur_ix in the hash table.
+
+ Does not look for matches longer than max_length.
+ Does not look for matches further away than max_backward.
+ Writes the best match into |out|.
+ Returns 1 when match is found, otherwise 0. */
+static BROTLI_INLINE BROTLI_BOOL FN(FindLongestMatch)(
+ HashForgetfulChain* self, const uint8_t* BROTLI_RESTRICT data,
+ const size_t ring_buffer_mask, const int* BROTLI_RESTRICT distance_cache,
+ const size_t cur_ix, const size_t max_length, const size_t max_backward,
+ HasherSearchResult* BROTLI_RESTRICT out) {
+ const size_t cur_ix_masked = cur_ix & ring_buffer_mask;
+ BROTLI_BOOL is_match_found = BROTLI_FALSE;
+ /* Don't accept a short copy from far away. */
+ score_t best_score = out->score;
+ size_t best_len = out->len;
+ size_t i;
+ const size_t key = FN(HashBytes)(&data[cur_ix_masked]);
+ const uint8_t tiny_hash = (uint8_t)(key);
+ out->len = 0;
+ out->len_x_code = 0;
+ /* Try last distance first. */
+ for (i = 0; i < NUM_LAST_DISTANCES_TO_CHECK; ++i) {
+ const size_t idx = kDistanceCacheIndex[i];
+ const size_t backward =
+ (size_t)(distance_cache[idx] + kDistanceCacheOffset[i]);
+ size_t prev_ix = (cur_ix - backward);
+ if (i > 0 && self->tiny_hash[(uint16_t)prev_ix] != tiny_hash) continue;
+ if (prev_ix >= cur_ix || backward > max_backward) {
+ continue;
+ }
+ prev_ix &= ring_buffer_mask;
+ {
+ const size_t len = FindMatchLengthWithLimit(&data[prev_ix],
+ &data[cur_ix_masked],
+ max_length);
+ if (len >= 2) {
+ score_t score = BackwardReferenceScoreUsingLastDistance(len, i);
+ if (best_score < score) {
+ best_score = score;
+ best_len = len;
+ out->len = best_len;
+ out->distance = backward;
+ out->score = best_score;
+ is_match_found = BROTLI_TRUE;
+ }
+ }
+ }
+ }
+ {
+ const size_t bank = key & (NUM_BANKS - 1);
+ size_t backward = 0;
+ size_t hops = self->max_hops;
+ size_t delta = cur_ix - self->addr[key];
+ size_t slot = self->head[key];
+ while (hops--) {
+ size_t prev_ix;
+ size_t last = slot;
+ backward += delta;
+ if (backward > max_backward || (CAPPED_CHAINS && !delta)) break;
+ prev_ix = (cur_ix - backward) & ring_buffer_mask;
+ slot = self->banks[bank].slots[last].next;
+ delta = self->banks[bank].slots[last].delta;
+ if (cur_ix_masked + best_len > ring_buffer_mask ||
+ prev_ix + best_len > ring_buffer_mask ||
+ data[cur_ix_masked + best_len] != data[prev_ix + best_len]) {
+ continue;
+ }
+ {
+ const size_t len = FindMatchLengthWithLimit(&data[prev_ix],
+ &data[cur_ix_masked],
+ max_length);
+ if (len >= 4) {
+ /* Comparing for >= 3 does not change the semantics, but just saves
+ for a few unnecessary binary logarithms in backward reference
+ score, since we are not interested in such short matches. */
+ score_t score = BackwardReferenceScore(len, backward);
+ if (best_score < score) {
+ best_score = score;
+ best_len = len;
+ out->len = best_len;
+ out->distance = backward;
+ out->score = best_score;
+ is_match_found = BROTLI_TRUE;
+ }
+ }
+ }
+ }
+ FN(Store)(self, data, ring_buffer_mask, cur_ix);
+ }
+ if (!is_match_found) {
+ is_match_found = SearchInStaticDictionary(&self->dict_search_stats_,
+ &data[cur_ix_masked], max_length, max_backward, out, BROTLI_FALSE);
+ }
+ return is_match_found;
+}
+
+#undef BANK_SIZE
+#undef BUCKET_SIZE
+#undef CAPPED_CHAINS
+
+#undef HashForgetfulChain
diff --git a/thirdparty/brotli/enc/hash_longest_match_inc.h b/thirdparty/brotli/enc/hash_longest_match_inc.h
new file mode 100644
index 00000000..5fc7163e
--- /dev/null
+++ b/thirdparty/brotli/enc/hash_longest_match_inc.h
@@ -0,0 +1,241 @@
+/* NOLINT(build/header_guard) */
+/* Copyright 2010 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* template parameters: FN, BUCKET_BITS, BLOCK_BITS,
+ NUM_LAST_DISTANCES_TO_CHECK */
+
+/* A (forgetful) hash table to the data seen by the compressor, to
+ help create backward references to previous data.
+
+ This is a hash map of fixed size (BUCKET_SIZE) to a ring buffer of
+ fixed size (BLOCK_SIZE). The ring buffer contains the last BLOCK_SIZE
+ index positions of the given hash key in the compressed data. */
+
+#define HashLongestMatch HASHER()
+
+/* Number of hash buckets. */
+#define BUCKET_SIZE (1 << BUCKET_BITS)
+
+/* Only BLOCK_SIZE newest backward references are kept,
+ and the older are forgotten. */
+#define BLOCK_SIZE (1u << BLOCK_BITS)
+
+/* Mask for accessing entries in a block (in a ringbuffer manner). */
+#define BLOCK_MASK ((1 << BLOCK_BITS) - 1)
+
+#define HASH_MAP_SIZE (2 << BUCKET_BITS)
+
+static BROTLI_INLINE size_t FN(HashTypeLength)(void) { return 4; }
+static BROTLI_INLINE size_t FN(StoreLookahead)(void) { return 4; }
+
+/* HashBytes is the function that chooses the bucket to place
+ the address in. The HashLongestMatch and HashLongestMatchQuickly
+ classes have separate, different implementations of hashing. */
+static uint32_t FN(HashBytes)(const uint8_t *data) {
+ uint32_t h = BROTLI_UNALIGNED_LOAD32(data) * kHashMul32;
+ /* The higher bits contain more mixture from the multiplication,
+ so we take our results from there. */
+ return h >> (32 - BUCKET_BITS);
+}
+
+typedef struct HashLongestMatch {
+ /* Number of entries in a particular bucket. */
+ uint16_t num_[BUCKET_SIZE];
+
+ /* Buckets containing BLOCK_SIZE of backward references. */
+ uint32_t buckets_[BLOCK_SIZE << BUCKET_BITS];
+
+ /* True if num_ array needs to be initialized. */
+ BROTLI_BOOL is_dirty_;
+
+ DictionarySearchStatictics dict_search_stats_;
+} HashLongestMatch;
+
+static void FN(Reset)(HashLongestMatch* self) {
+ self->is_dirty_ = BROTLI_TRUE;
+ DictionarySearchStaticticsReset(&self->dict_search_stats_);
+}
+
+static void FN(InitEmpty)(HashLongestMatch* self) {
+ if (self->is_dirty_) {
+ memset(self->num_, 0, sizeof(self->num_));
+ self->is_dirty_ = BROTLI_FALSE;
+ }
+}
+
+static void FN(InitForData)(HashLongestMatch* self, const uint8_t* data,
+ size_t num) {
+ size_t i;
+ for (i = 0; i < num; ++i) {
+ const uint32_t key = FN(HashBytes)(&data[i]);
+ self->num_[key] = 0;
+ }
+ if (num != 0) {
+ self->is_dirty_ = BROTLI_FALSE;
+ }
+}
+
+static void FN(Init)(
+ MemoryManager* m, HashLongestMatch* self, const uint8_t* data,
+ const BrotliEncoderParams* params, size_t position, size_t bytes,
+ BROTLI_BOOL is_last) {
+ /* Choose which init method is faster.
+ Init() is about 100 times faster than InitForData(). */
+ const size_t kMaxBytesForPartialHashInit = HASH_MAP_SIZE >> 7;
+ BROTLI_UNUSED(m);
+ BROTLI_UNUSED(params);
+ if (position == 0 && is_last && bytes <= kMaxBytesForPartialHashInit) {
+ FN(InitForData)(self, data, bytes);
+ } else {
+ FN(InitEmpty)(self);
+ }
+}
+
+/* Look at 4 bytes at &data[ix & mask].
+ Compute a hash from these, and store the value of ix at that position. */
+static BROTLI_INLINE void FN(Store)(HashLongestMatch* self, const uint8_t *data,
+ const size_t mask, const size_t ix) {
+ const uint32_t key = FN(HashBytes)(&data[ix & mask]);
+ const size_t minor_ix = self->num_[key] & BLOCK_MASK;
+ self->buckets_[minor_ix + (key << BLOCK_BITS)] = (uint32_t)ix;
+ ++self->num_[key];
+}
+
+static BROTLI_INLINE void FN(StoreRange)(HashLongestMatch* self,
+ const uint8_t *data, const size_t mask, const size_t ix_start,
+ const size_t ix_end) {
+ size_t i;
+ for (i = ix_start; i < ix_end; ++i) {
+ FN(Store)(self, data, mask, i);
+ }
+}
+
+static BROTLI_INLINE void FN(StitchToPreviousBlock)(HashLongestMatch* self,
+ size_t num_bytes, size_t position, const uint8_t* ringbuffer,
+ size_t ringbuffer_mask) {
+ if (num_bytes >= FN(HashTypeLength)() - 1 && position >= 3) {
+ /* Prepare the hashes for three last bytes of the last write.
+ These could not be calculated before, since they require knowledge
+ of both the previous and the current block. */
+ FN(Store)(self, ringbuffer, ringbuffer_mask, position - 3);
+ FN(Store)(self, ringbuffer, ringbuffer_mask, position - 2);
+ FN(Store)(self, ringbuffer, ringbuffer_mask, position - 1);
+ }
+}
+
+/* Find a longest backward match of &data[cur_ix] up to the length of
+ max_length and stores the position cur_ix in the hash table.
+
+ Does not look for matches longer than max_length.
+ Does not look for matches further away than max_backward.
+ Writes the best match into |out|.
+ Returns true when match is found, otherwise false. */
+static BROTLI_INLINE BROTLI_BOOL FN(FindLongestMatch)(HashLongestMatch* self,
+ const uint8_t* BROTLI_RESTRICT data, const size_t ring_buffer_mask,
+ const int* BROTLI_RESTRICT distance_cache, const size_t cur_ix,
+ const size_t max_length, const size_t max_backward,
+ HasherSearchResult* BROTLI_RESTRICT out) {
+ const size_t cur_ix_masked = cur_ix & ring_buffer_mask;
+ BROTLI_BOOL is_match_found = BROTLI_FALSE;
+ /* Don't accept a short copy from far away. */
+ score_t best_score = out->score;
+ size_t best_len = out->len;
+ size_t i;
+ out->len = 0;
+ out->len_x_code = 0;
+ /* Try last distance first. */
+ for (i = 0; i < NUM_LAST_DISTANCES_TO_CHECK; ++i) {
+ const size_t idx = kDistanceCacheIndex[i];
+ const size_t backward =
+ (size_t)(distance_cache[idx] + kDistanceCacheOffset[i]);
+ size_t prev_ix = (size_t)(cur_ix - backward);
+ if (prev_ix >= cur_ix) {
+ continue;
+ }
+ if (PREDICT_FALSE(backward > max_backward)) {
+ continue;
+ }
+ prev_ix &= ring_buffer_mask;
+
+ if (cur_ix_masked + best_len > ring_buffer_mask ||
+ prev_ix + best_len > ring_buffer_mask ||
+ data[cur_ix_masked + best_len] != data[prev_ix + best_len]) {
+ continue;
+ }
+ {
+ const size_t len = FindMatchLengthWithLimit(&data[prev_ix],
+ &data[cur_ix_masked],
+ max_length);
+ if (len >= 3 || (len == 2 && i < 2)) {
+ /* Comparing for >= 2 does not change the semantics, but just saves for
+ a few unnecessary binary logarithms in backward reference score,
+ since we are not interested in such short matches. */
+ score_t score = BackwardReferenceScoreUsingLastDistance(len, i);
+ if (best_score < score) {
+ best_score = score;
+ best_len = len;
+ out->len = best_len;
+ out->distance = backward;
+ out->score = best_score;
+ is_match_found = BROTLI_TRUE;
+ }
+ }
+ }
+ }
+ {
+ const uint32_t key = FN(HashBytes)(&data[cur_ix_masked]);
+ uint32_t* BROTLI_RESTRICT bucket = &self->buckets_[key << BLOCK_BITS];
+ const size_t down =
+ (self->num_[key] > BLOCK_SIZE) ? (self->num_[key] - BLOCK_SIZE) : 0u;
+ for (i = self->num_[key]; i > down;) {
+ size_t prev_ix = bucket[--i & BLOCK_MASK];
+ const size_t backward = cur_ix - prev_ix;
+ if (PREDICT_FALSE(backward > max_backward)) {
+ break;
+ }
+ prev_ix &= ring_buffer_mask;
+ if (cur_ix_masked + best_len > ring_buffer_mask ||
+ prev_ix + best_len > ring_buffer_mask ||
+ data[cur_ix_masked + best_len] != data[prev_ix + best_len]) {
+ continue;
+ }
+ {
+ const size_t len = FindMatchLengthWithLimit(&data[prev_ix],
+ &data[cur_ix_masked],
+ max_length);
+ if (len >= 4) {
+ /* Comparing for >= 3 does not change the semantics, but just saves
+ for a few unnecessary binary logarithms in backward reference
+ score, since we are not interested in such short matches. */
+ score_t score = BackwardReferenceScore(len, backward);
+ if (best_score < score) {
+ best_score = score;
+ best_len = len;
+ out->len = best_len;
+ out->distance = backward;
+ out->score = best_score;
+ is_match_found = BROTLI_TRUE;
+ }
+ }
+ }
+ }
+ bucket[self->num_[key] & BLOCK_MASK] = (uint32_t)cur_ix;
+ ++self->num_[key];
+ }
+ if (!is_match_found) {
+ is_match_found = SearchInStaticDictionary(&self->dict_search_stats_,
+ &data[cur_ix_masked], max_length, max_backward, out, BROTLI_FALSE);
+ }
+ return is_match_found;
+}
+
+#undef HASH_MAP_SIZE
+#undef BLOCK_MASK
+#undef BLOCK_SIZE
+#undef BUCKET_SIZE
+
+#undef HashLongestMatch
diff --git a/thirdparty/brotli/enc/hash_longest_match_quickly_inc.h b/thirdparty/brotli/enc/hash_longest_match_quickly_inc.h
new file mode 100644
index 00000000..db9a1e6b
--- /dev/null
+++ b/thirdparty/brotli/enc/hash_longest_match_quickly_inc.h
@@ -0,0 +1,230 @@
+/* NOLINT(build/header_guard) */
+/* Copyright 2010 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* template parameters: FN, BUCKET_BITS, BUCKET_SWEEP, USE_DICTIONARY */
+
+#define HashLongestMatchQuickly HASHER()
+
+#define BUCKET_SIZE (1 << BUCKET_BITS)
+
+#define HASH_MAP_SIZE (4 << BUCKET_BITS)
+
+static BROTLI_INLINE size_t FN(HashTypeLength)(void) { return 8; }
+static BROTLI_INLINE size_t FN(StoreLookahead)(void) { return 8; }
+
+/* HashBytes is the function that chooses the bucket to place
+ the address in. The HashLongestMatch and HashLongestMatchQuickly
+ classes have separate, different implementations of hashing. */
+static uint32_t FN(HashBytes)(const uint8_t *data) {
+ /* Computing a hash based on 5 bytes works much better for
+ qualities 1 and 3, where the next hash value is likely to replace */
+ uint64_t h = (BROTLI_UNALIGNED_LOAD64(data) << 24) * kHashMul32;
+ /* The higher bits contain more mixture from the multiplication,
+ so we take our results from there. */
+ return (uint32_t)(h >> (64 - BUCKET_BITS));
+}
+
+/* A (forgetful) hash table to the data seen by the compressor, to
+ help create backward references to previous data.
+
+ This is a hash map of fixed size (BUCKET_SIZE). Starting from the
+ given index, BUCKET_SWEEP buckets are used to store values of a key. */
+typedef struct HashLongestMatchQuickly {
+ uint32_t buckets_[BUCKET_SIZE + BUCKET_SWEEP];
+ /* True if buckets_ array needs to be initialized. */
+ BROTLI_BOOL is_dirty_;
+ DictionarySearchStatictics dict_search_stats_;
+} HashLongestMatchQuickly;
+
+static void FN(Reset)(HashLongestMatchQuickly* self) {
+ self->is_dirty_ = BROTLI_TRUE;
+ DictionarySearchStaticticsReset(&self->dict_search_stats_);
+}
+
+static void FN(InitEmpty)(HashLongestMatchQuickly* self) {
+ if (self->is_dirty_) {
+ /* It is not strictly necessary to fill this buffer here, but
+ not filling will make the results of the compression stochastic
+ (but correct). This is because random data would cause the
+ system to find accidentally good backward references here and there. */
+ memset(&self->buckets_[0], 0, sizeof(self->buckets_));
+ self->is_dirty_ = BROTLI_FALSE;
+ }
+}
+
+static void FN(InitForData)(HashLongestMatchQuickly* self, const uint8_t* data,
+ size_t num) {
+ size_t i;
+ for (i = 0; i < num; ++i) {
+ const uint32_t key = FN(HashBytes)(&data[i]);
+ memset(&self->buckets_[key], 0, BUCKET_SWEEP * sizeof(self->buckets_[0]));
+ }
+ if (num != 0) {
+ self->is_dirty_ = BROTLI_FALSE;
+ }
+}
+
+static void FN(Init)(
+ MemoryManager* m, HashLongestMatchQuickly* self, const uint8_t* data,
+ const BrotliEncoderParams* params, size_t position, size_t bytes,
+ BROTLI_BOOL is_last) {
+ /* Choose which init method is faster.
+ Init() is about 100 times faster than InitForData(). */
+ const size_t kMaxBytesForPartialHashInit = HASH_MAP_SIZE >> 7;
+ BROTLI_UNUSED(m);
+ BROTLI_UNUSED(params);
+ if (position == 0 && is_last && bytes <= kMaxBytesForPartialHashInit) {
+ FN(InitForData)(self, data, bytes);
+ } else {
+ FN(InitEmpty)(self);
+ }
+}
+
+/* Look at 5 bytes at &data[ix & mask].
+ Compute a hash from these, and store the value somewhere within
+ [ix .. ix+3]. */
+static BROTLI_INLINE void FN(Store)(HashLongestMatchQuickly* self,
+ const uint8_t *data, const size_t mask, const size_t ix) {
+ const uint32_t key = FN(HashBytes)(&data[ix & mask]);
+ /* Wiggle the value with the bucket sweep range. */
+ const uint32_t off = (ix >> 3) % BUCKET_SWEEP;
+ self->buckets_[key + off] = (uint32_t)ix;
+}
+
+static BROTLI_INLINE void FN(StoreRange)(HashLongestMatchQuickly* self,
+ const uint8_t *data, const size_t mask, const size_t ix_start,
+ const size_t ix_end) {
+ size_t i;
+ for (i = ix_start; i < ix_end; ++i) {
+ FN(Store)(self, data, mask, i);
+ }
+}
+
+static BROTLI_INLINE void FN(StitchToPreviousBlock)(
+ HashLongestMatchQuickly* self, size_t num_bytes, size_t position,
+ const uint8_t* ringbuffer, size_t ringbuffer_mask) {
+ if (num_bytes >= FN(HashTypeLength)() - 1 && position >= 3) {
+ /* Prepare the hashes for three last bytes of the last write.
+ These could not be calculated before, since they require knowledge
+ of both the previous and the current block. */
+ FN(Store)(self, ringbuffer, ringbuffer_mask, position - 3);
+ FN(Store)(self, ringbuffer, ringbuffer_mask, position - 2);
+ FN(Store)(self, ringbuffer, ringbuffer_mask, position - 1);
+ }
+}
+
+/* Find a longest backward match of &data[cur_ix & ring_buffer_mask]
+ up to the length of max_length and stores the position cur_ix in the
+ hash table.
+
+ Does not look for matches longer than max_length.
+ Does not look for matches further away than max_backward.
+ Writes the best match into |out|.
+ Returns true if match is found, otherwise false. */
+static BROTLI_INLINE BROTLI_BOOL FN(FindLongestMatch)(
+ HashLongestMatchQuickly* self, const uint8_t* BROTLI_RESTRICT data,
+ const size_t ring_buffer_mask, const int* BROTLI_RESTRICT distance_cache,
+ const size_t cur_ix, const size_t max_length, const size_t max_backward,
+ HasherSearchResult* BROTLI_RESTRICT out) {
+ const size_t best_len_in = out->len;
+ const size_t cur_ix_masked = cur_ix & ring_buffer_mask;
+ const uint32_t key = FN(HashBytes)(&data[cur_ix_masked]);
+ int compare_char = data[cur_ix_masked + best_len_in];
+ score_t best_score = out->score;
+ size_t best_len = best_len_in;
+ size_t cached_backward = (size_t)distance_cache[0];
+ size_t prev_ix = cur_ix - cached_backward;
+ BROTLI_BOOL is_match_found = BROTLI_FALSE;
+ out->len_x_code = 0;
+ if (prev_ix < cur_ix) {
+ prev_ix &= (uint32_t)ring_buffer_mask;
+ if (compare_char == data[prev_ix + best_len]) {
+ size_t len = FindMatchLengthWithLimit(&data[prev_ix],
+ &data[cur_ix_masked],
+ max_length);
+ if (len >= 4) {
+ best_score = BackwardReferenceScoreUsingLastDistance(len, 0);
+ best_len = len;
+ out->len = len;
+ out->distance = cached_backward;
+ out->score = best_score;
+ compare_char = data[cur_ix_masked + best_len];
+ if (BUCKET_SWEEP == 1) {
+ self->buckets_[key] = (uint32_t)cur_ix;
+ return BROTLI_TRUE;
+ } else {
+ is_match_found = BROTLI_TRUE;
+ }
+ }
+ }
+ }
+ if (BUCKET_SWEEP == 1) {
+ size_t backward;
+ size_t len;
+ /* Only one to look for, don't bother to prepare for a loop. */
+ prev_ix = self->buckets_[key];
+ self->buckets_[key] = (uint32_t)cur_ix;
+ backward = cur_ix - prev_ix;
+ prev_ix &= (uint32_t)ring_buffer_mask;
+ if (compare_char != data[prev_ix + best_len_in]) {
+ return BROTLI_FALSE;
+ }
+ if (PREDICT_FALSE(backward == 0 || backward > max_backward)) {
+ return BROTLI_FALSE;
+ }
+ len = FindMatchLengthWithLimit(&data[prev_ix],
+ &data[cur_ix_masked],
+ max_length);
+ if (len >= 4) {
+ out->len = len;
+ out->distance = backward;
+ out->score = BackwardReferenceScore(len, backward);
+ return BROTLI_TRUE;
+ }
+ } else {
+ uint32_t *bucket = self->buckets_ + key;
+ int i;
+ prev_ix = *bucket++;
+ for (i = 0; i < BUCKET_SWEEP; ++i, prev_ix = *bucket++) {
+ const size_t backward = cur_ix - prev_ix;
+ size_t len;
+ prev_ix &= (uint32_t)ring_buffer_mask;
+ if (compare_char != data[prev_ix + best_len]) {
+ continue;
+ }
+ if (PREDICT_FALSE(backward == 0 || backward > max_backward)) {
+ continue;
+ }
+ len = FindMatchLengthWithLimit(&data[prev_ix],
+ &data[cur_ix_masked],
+ max_length);
+ if (len >= 4) {
+ const score_t score = BackwardReferenceScore(len, backward);
+ if (best_score < score) {
+ best_score = score;
+ best_len = len;
+ out->len = best_len;
+ out->distance = backward;
+ out->score = score;
+ compare_char = data[cur_ix_masked + best_len];
+ is_match_found = BROTLI_TRUE;
+ }
+ }
+ }
+ }
+ if (USE_DICTIONARY && !is_match_found) {
+ is_match_found = SearchInStaticDictionary(&self->dict_search_stats_,
+ &data[cur_ix_masked], max_length, max_backward, out, BROTLI_TRUE);
+ }
+ self->buckets_[key + ((cur_ix >> 3) % BUCKET_SWEEP)] = (uint32_t)cur_ix;
+ return is_match_found;
+}
+
+#undef HASH_MAP_SIZE
+#undef BUCKET_SIZE
+
+#undef HashLongestMatchQuickly
diff --git a/thirdparty/brotli/enc/histogram.c b/thirdparty/brotli/enc/histogram.c
new file mode 100644
index 00000000..a8f04130
--- /dev/null
+++ b/thirdparty/brotli/enc/histogram.c
@@ -0,0 +1,95 @@
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Build per-context histograms of literals, commands and distance codes. */
+
+#include "./histogram.h"
+
+#include "./block_splitter.h"
+#include "./command.h"
+#include "./context.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+typedef struct BlockSplitIterator {
+ const BlockSplit* split_; /* Not owned. */
+ size_t idx_;
+ size_t type_;
+ size_t length_;
+} BlockSplitIterator;
+
+static void InitBlockSplitIterator(BlockSplitIterator* self,
+ const BlockSplit* split) {
+ self->split_ = split;
+ self->idx_ = 0;
+ self->type_ = 0;
+ self->length_ = split->lengths ? split->lengths[0] : 0;
+}
+
+static void BlockSplitIteratorNext(BlockSplitIterator* self) {
+ if (self->length_ == 0) {
+ ++self->idx_;
+ self->type_ = self->split_->types[self->idx_];
+ self->length_ = self->split_->lengths[self->idx_];
+ }
+ --self->length_;
+}
+
+void BrotliBuildHistogramsWithContext(
+ const Command* cmds, const size_t num_commands,
+ const BlockSplit* literal_split, const BlockSplit* insert_and_copy_split,
+ const BlockSplit* dist_split, const uint8_t* ringbuffer, size_t start_pos,
+ size_t mask, uint8_t prev_byte, uint8_t prev_byte2,
+ const ContextType* context_modes, HistogramLiteral* literal_histograms,
+ HistogramCommand* insert_and_copy_histograms,
+ HistogramDistance* copy_dist_histograms) {
+ size_t pos = start_pos;
+ BlockSplitIterator literal_it;
+ BlockSplitIterator insert_and_copy_it;
+ BlockSplitIterator dist_it;
+ size_t i;
+
+ InitBlockSplitIterator(&literal_it, literal_split);
+ InitBlockSplitIterator(&insert_and_copy_it, insert_and_copy_split);
+ InitBlockSplitIterator(&dist_it, dist_split);
+ for (i = 0; i < num_commands; ++i) {
+ const Command* cmd = &cmds[i];
+ size_t j;
+ BlockSplitIteratorNext(&insert_and_copy_it);
+ HistogramAddCommand(&insert_and_copy_histograms[insert_and_copy_it.type_],
+ cmd->cmd_prefix_);
+ for (j = cmd->insert_len_; j != 0; --j) {
+ size_t context;
+ BlockSplitIteratorNext(&literal_it);
+ context = (literal_it.type_ << BROTLI_LITERAL_CONTEXT_BITS) +
+ Context(prev_byte, prev_byte2, context_modes[literal_it.type_]);
+ HistogramAddLiteral(&literal_histograms[context],
+ ringbuffer[pos & mask]);
+ prev_byte2 = prev_byte;
+ prev_byte = ringbuffer[pos & mask];
+ ++pos;
+ }
+ pos += CommandCopyLen(cmd);
+ if (CommandCopyLen(cmd)) {
+ prev_byte2 = ringbuffer[(pos - 2) & mask];
+ prev_byte = ringbuffer[(pos - 1) & mask];
+ if (cmd->cmd_prefix_ >= 128) {
+ size_t context;
+ BlockSplitIteratorNext(&dist_it);
+ context = (dist_it.type_ << BROTLI_DISTANCE_CONTEXT_BITS) +
+ CommandDistanceContext(cmd);
+ HistogramAddDistance(&copy_dist_histograms[context],
+ cmd->dist_prefix_);
+ }
+ }
+ }
+}
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/histogram.cc b/thirdparty/brotli/enc/histogram.cc
deleted file mode 100644
index 9d733d80..00000000
--- a/thirdparty/brotli/enc/histogram.cc
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Copyright 2013 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-// Build per-context histograms of literals, commands and distance codes.
-
-#include "./histogram.h"
-
-#include <cmath>
-
-#include "./block_splitter.h"
-#include "./command.h"
-#include "./context.h"
-#include "./prefix.h"
-
-namespace brotli {
-
-void BuildHistograms(
- const Command* cmds,
- const size_t num_commands,
- const BlockSplit& literal_split,
- const BlockSplit& insert_and_copy_split,
- const BlockSplit& dist_split,
- const uint8_t* ringbuffer,
- size_t start_pos,
- size_t mask,
- uint8_t prev_byte,
- uint8_t prev_byte2,
- const std::vector<ContextType>& context_modes,
- std::vector<HistogramLiteral>* literal_histograms,
- std::vector<HistogramCommand>* insert_and_copy_histograms,
- std::vector<HistogramDistance>* copy_dist_histograms) {
- size_t pos = start_pos;
- BlockSplitIterator literal_it(literal_split);
- BlockSplitIterator insert_and_copy_it(insert_and_copy_split);
- BlockSplitIterator dist_it(dist_split);
- for (size_t i = 0; i < num_commands; ++i) {
- const Command &cmd = cmds[i];
- insert_and_copy_it.Next();
- (*insert_and_copy_histograms)[insert_and_copy_it.type_].Add(
- cmd.cmd_prefix_);
- for (size_t j = cmd.insert_len_; j != 0; --j) {
- literal_it.Next();
- size_t context = (literal_it.type_ << kLiteralContextBits) +
- Context(prev_byte, prev_byte2, context_modes[literal_it.type_]);
- (*literal_histograms)[context].Add(ringbuffer[pos & mask]);
- prev_byte2 = prev_byte;
- prev_byte = ringbuffer[pos & mask];
- ++pos;
- }
- pos += cmd.copy_len();
- if (cmd.copy_len()) {
- prev_byte2 = ringbuffer[(pos - 2) & mask];
- prev_byte = ringbuffer[(pos - 1) & mask];
- if (cmd.cmd_prefix_ >= 128) {
- dist_it.Next();
- size_t context = (dist_it.type_ << kDistanceContextBits) +
- cmd.DistanceContext();
- (*copy_dist_histograms)[context].Add(cmd.dist_prefix_);
- }
- }
- }
-}
-
-} // namespace brotli
diff --git a/thirdparty/brotli/enc/histogram.h b/thirdparty/brotli/enc/histogram.h
index a1153c85..c9bcead7 100644
--- a/thirdparty/brotli/enc/histogram.h
+++ b/thirdparty/brotli/enc/histogram.h
@@ -4,91 +4,57 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Models the histograms of literals, commands and distance codes.
+/* Models the histograms of literals, commands and distance codes. */
#ifndef BROTLI_ENC_HISTOGRAM_H_
#define BROTLI_ENC_HISTOGRAM_H_
-#include <cstring>
-#include <limits>
-#include <vector>
-#include "./context.h"
-#include "./command.h"
-#include "./fast_log.h"
-#include "./prefix.h"
-#include "./types.h"
-
-namespace brotli {
-
-struct BlockSplit;
-
-// A simple container for histograms of data in blocks.
-template<int kDataSize>
-struct Histogram {
- Histogram(void) {
- Clear();
- }
- void Clear(void) {
- memset(data_, 0, sizeof(data_));
- total_count_ = 0;
- bit_cost_ = std::numeric_limits<double>::infinity();
- }
- void Add(size_t val) {
- ++data_[val];
- ++total_count_;
- }
- void Remove(size_t val) {
- --data_[val];
- --total_count_;
- }
- template<typename DataType>
- void Add(const DataType *p, size_t n) {
- total_count_ += n;
- n += 1;
- while(--n) ++data_[*p++];
- }
- void AddHistogram(const Histogram& v) {
- total_count_ += v.total_count_;
- for (size_t i = 0; i < kDataSize; ++i) {
- data_[i] += v.data_[i];
- }
- }
-
- uint32_t data_[kDataSize];
- size_t total_count_;
- double bit_cost_;
-};
+#include <string.h> /* memset */
-// Literal histogram.
-typedef Histogram<256> HistogramLiteral;
-// Prefix histograms.
-typedef Histogram<kNumCommandPrefixes> HistogramCommand;
-typedef Histogram<kNumDistancePrefixes> HistogramDistance;
-typedef Histogram<kNumBlockLenPrefixes> HistogramBlockLength;
-// Context map histogram, 256 Huffman tree indexes + 16 run length codes.
-typedef Histogram<272> HistogramContextMap;
-// Block type histogram, 256 block types + 2 special symbols.
-typedef Histogram<258> HistogramBlockType;
-
-static const size_t kLiteralContextBits = 6;
-static const size_t kDistanceContextBits = 2;
-
-void BuildHistograms(
- const Command* cmds,
- const size_t num_commands,
- const BlockSplit& literal_split,
- const BlockSplit& insert_and_copy_split,
- const BlockSplit& dist_split,
- const uint8_t* ringbuffer,
- size_t pos,
- size_t mask,
- uint8_t prev_byte,
- uint8_t prev_byte2,
- const std::vector<ContextType>& context_modes,
- std::vector<HistogramLiteral>* literal_histograms,
- std::vector<HistogramCommand>* insert_and_copy_histograms,
- std::vector<HistogramDistance>* copy_dist_histograms);
-
-} // namespace brotli
-
-#endif // BROTLI_ENC_HISTOGRAM_H_
+#include "../common/constants.h"
+#include "../common/types.h"
+#include "./block_splitter.h"
+#include "./command.h"
+#include "./context.h"
+#include "./port.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+#define FN(X) X ## Literal
+#define DATA_SIZE BROTLI_NUM_LITERAL_SYMBOLS
+#define DataType uint8_t
+#include "./histogram_inc.h" /* NOLINT(build/include) */
+#undef DataType
+#undef DATA_SIZE
+#undef FN
+
+#define FN(X) X ## Command
+#define DataType uint16_t
+#define DATA_SIZE BROTLI_NUM_COMMAND_SYMBOLS
+#include "./histogram_inc.h" /* NOLINT(build/include) */
+#undef DATA_SIZE
+#undef FN
+
+#define FN(X) X ## Distance
+#define DATA_SIZE BROTLI_NUM_DISTANCE_SYMBOLS
+#include "./histogram_inc.h" /* NOLINT(build/include) */
+#undef DataType
+#undef DATA_SIZE
+#undef FN
+
+BROTLI_INTERNAL void BrotliBuildHistogramsWithContext(
+ const Command* cmds, const size_t num_commands,
+ const BlockSplit* literal_split, const BlockSplit* insert_and_copy_split,
+ const BlockSplit* dist_split, const uint8_t* ringbuffer, size_t pos,
+ size_t mask, uint8_t prev_byte, uint8_t prev_byte2,
+ const ContextType* context_modes, HistogramLiteral* literal_histograms,
+ HistogramCommand* insert_and_copy_histograms,
+ HistogramDistance* copy_dist_histograms);
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
+
+#endif /* BROTLI_ENC_HISTOGRAM_H_ */
diff --git a/thirdparty/brotli/enc/histogram_inc.h b/thirdparty/brotli/enc/histogram_inc.h
new file mode 100644
index 00000000..78070368
--- /dev/null
+++ b/thirdparty/brotli/enc/histogram_inc.h
@@ -0,0 +1,51 @@
+/* NOLINT(build/header_guard) */
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* template parameters: Histogram, DATA_SIZE, DataType */
+
+/* A simple container for histograms of data in blocks. */
+
+typedef struct FN(Histogram) {
+ uint32_t data_[DATA_SIZE];
+ size_t total_count_;
+ double bit_cost_;
+} FN(Histogram);
+
+static BROTLI_INLINE void FN(HistogramClear)(FN(Histogram)* self) {
+ memset(self->data_, 0, sizeof(self->data_));
+ self->total_count_ = 0;
+ self->bit_cost_ = HUGE_VAL;
+}
+
+static BROTLI_INLINE void FN(ClearHistograms)(
+ FN(Histogram)* array, size_t length) {
+ size_t i;
+ for (i = 0; i < length; ++i) FN(HistogramClear)(array + i);
+}
+
+static BROTLI_INLINE void FN(HistogramAdd)(FN(Histogram)* self, size_t val) {
+ ++self->data_[val];
+ ++self->total_count_;
+}
+
+static BROTLI_INLINE void FN(HistogramAddVector)(FN(Histogram)* self,
+ const DataType *p, size_t n) {
+ self->total_count_ += n;
+ n += 1;
+ while (--n) ++self->data_[*p++];
+}
+
+static BROTLI_INLINE void FN(HistogramAddHistogram)(FN(Histogram)* self,
+ const FN(Histogram)* v) {
+ size_t i;
+ self->total_count_ += v->total_count_;
+ for (i = 0; i < DATA_SIZE; ++i) {
+ self->data_[i] += v->data_[i];
+ }
+}
+
+static BROTLI_INLINE size_t FN(HistogramDataSize)(void) { return DATA_SIZE; }
diff --git a/thirdparty/brotli/enc/literal_cost.c b/thirdparty/brotli/enc/literal_cost.c
new file mode 100644
index 00000000..301edc81
--- /dev/null
+++ b/thirdparty/brotli/enc/literal_cost.c
@@ -0,0 +1,178 @@
+/* Copyright 2013 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Literal cost model to allow backward reference replacement to be efficient.
+*/
+
+#include "./literal_cost.h"
+
+#include "../common/types.h"
+#include "./fast_log.h"
+#include "./port.h"
+#include "./utf8_util.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+static size_t UTF8Position(size_t last, size_t c, size_t clamp) {
+ if (c < 128) {
+ return 0; /* Next one is the 'Byte 1' again. */
+ } else if (c >= 192) { /* Next one is the 'Byte 2' of utf-8 encoding. */
+ return BROTLI_MIN(size_t, 1, clamp);
+ } else {
+ /* Let's decide over the last byte if this ends the sequence. */
+ if (last < 0xe0) {
+ return 0; /* Completed two or three byte coding. */
+ } else { /* Next one is the 'Byte 3' of utf-8 encoding. */
+ return BROTLI_MIN(size_t, 2, clamp);
+ }
+ }
+}
+
+static size_t DecideMultiByteStatsLevel(size_t pos, size_t len, size_t mask,
+ const uint8_t *data) {
+ size_t counts[3] = { 0 };
+ size_t max_utf8 = 1; /* should be 2, but 1 compresses better. */
+ size_t last_c = 0;
+ size_t utf8_pos = 0;
+ size_t i;
+ for (i = 0; i < len; ++i) {
+ size_t c = data[(pos + i) & mask];
+ utf8_pos = UTF8Position(last_c, c, 2);
+ ++counts[utf8_pos];
+ last_c = c;
+ }
+ if (counts[2] < 500) {
+ max_utf8 = 1;
+ }
+ if (counts[1] + counts[2] < 25) {
+ max_utf8 = 0;
+ }
+ return max_utf8;
+}
+
+static void EstimateBitCostsForLiteralsUTF8(size_t pos, size_t len, size_t mask,
+ const uint8_t *data, float *cost) {
+ /* max_utf8 is 0 (normal ascii single byte modeling),
+ 1 (for 2-byte utf-8 modeling), or 2 (for 3-byte utf-8 modeling). */
+ const size_t max_utf8 = DecideMultiByteStatsLevel(pos, len, mask, data);
+ size_t histogram[3][256] = { { 0 } };
+ size_t window_half = 495;
+ size_t in_window = BROTLI_MIN(size_t, window_half, len);
+ size_t in_window_utf8[3] = { 0 };
+
+
+ size_t i;
+ { /* Bootstrap histograms. */
+ size_t last_c = 0;
+ size_t utf8_pos = 0;
+ for (i = 0; i < in_window; ++i) {
+ size_t c = data[(pos + i) & mask];
+ ++histogram[utf8_pos][c];
+ ++in_window_utf8[utf8_pos];
+ utf8_pos = UTF8Position(last_c, c, max_utf8);
+ last_c = c;
+ }
+ }
+
+ /* Compute bit costs with sliding window. */
+ for (i = 0; i < len; ++i) {
+ if (i >= window_half) {
+ /* Remove a byte in the past. */
+ size_t c =
+ i < window_half + 1 ? 0 : data[(pos + i - window_half - 1) & mask];
+ size_t last_c =
+ i < window_half + 2 ? 0 : data[(pos + i - window_half - 2) & mask];
+ size_t utf8_pos2 = UTF8Position(last_c, c, max_utf8);
+ --histogram[utf8_pos2][data[(pos + i - window_half) & mask]];
+ --in_window_utf8[utf8_pos2];
+ }
+ if (i + window_half < len) {
+ /* Add a byte in the future. */
+ size_t c = data[(pos + i + window_half - 1) & mask];
+ size_t last_c = data[(pos + i + window_half - 2) & mask];
+ size_t utf8_pos2 = UTF8Position(last_c, c, max_utf8);
+ ++histogram[utf8_pos2][data[(pos + i + window_half) & mask]];
+ ++in_window_utf8[utf8_pos2];
+ }
+ {
+ size_t c = i < 1 ? 0 : data[(pos + i - 1) & mask];
+ size_t last_c = i < 2 ? 0 : data[(pos + i - 2) & mask];
+ size_t utf8_pos = UTF8Position(last_c, c, max_utf8);
+ size_t masked_pos = (pos + i) & mask;
+ size_t histo = histogram[utf8_pos][data[masked_pos]];
+ double lit_cost;
+ if (histo == 0) {
+ histo = 1;
+ }
+ lit_cost = FastLog2(in_window_utf8[utf8_pos]) - FastLog2(histo);
+ lit_cost += 0.02905;
+ if (lit_cost < 1.0) {
+ lit_cost *= 0.5;
+ lit_cost += 0.5;
+ }
+ /* Make the first bytes more expensive -- seems to help, not sure why.
+ Perhaps because the entropy source is changing its properties
+ rapidly in the beginning of the file, perhaps because the beginning
+ of the data is a statistical "anomaly". */
+ if (i < 2000) {
+ lit_cost += 0.7 - ((double)(2000 - i) / 2000.0 * 0.35);
+ }
+ cost[i] = (float)lit_cost;
+ }
+ }
+}
+
+void BrotliEstimateBitCostsForLiterals(size_t pos, size_t len, size_t mask,
+ const uint8_t *data, float *cost) {
+ if (BrotliIsMostlyUTF8(data, pos, mask, len, kMinUTF8Ratio)) {
+ EstimateBitCostsForLiteralsUTF8(pos, len, mask, data, cost);
+ return;
+ } else {
+ size_t histogram[256] = { 0 };
+ size_t window_half = 2000;
+ size_t in_window = BROTLI_MIN(size_t, window_half, len);
+
+ /* Bootstrap histogram. */
+ size_t i;
+ for (i = 0; i < in_window; ++i) {
+ ++histogram[data[(pos + i) & mask]];
+ }
+
+ /* Compute bit costs with sliding window. */
+ for (i = 0; i < len; ++i) {
+ size_t histo;
+ if (i >= window_half) {
+ /* Remove a byte in the past. */
+ --histogram[data[(pos + i - window_half) & mask]];
+ --in_window;
+ }
+ if (i + window_half < len) {
+ /* Add a byte in the future. */
+ ++histogram[data[(pos + i + window_half) & mask]];
+ ++in_window;
+ }
+ histo = histogram[data[(pos + i) & mask]];
+ if (histo == 0) {
+ histo = 1;
+ }
+ {
+ double lit_cost = FastLog2(in_window) - FastLog2(histo);
+ lit_cost += 0.029;
+ if (lit_cost < 1.0) {
+ lit_cost *= 0.5;
+ lit_cost += 0.5;
+ }
+ cost[i] = (float)lit_cost;
+ }
+ }
+ }
+}
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/literal_cost.cc b/thirdparty/brotli/enc/literal_cost.cc
deleted file mode 100644
index e6be86fc..00000000
--- a/thirdparty/brotli/enc/literal_cost.cc
+++ /dev/null
@@ -1,165 +0,0 @@
-/* Copyright 2013 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-// Literal cost model to allow backward reference replacement to be efficient.
-
-#include "./literal_cost.h"
-
-#include <math.h>
-#include <algorithm>
-
-#include "./fast_log.h"
-#include "./types.h"
-#include "./utf8_util.h"
-
-namespace brotli {
-
-static size_t UTF8Position(size_t last, size_t c, size_t clamp) {
- if (c < 128) {
- return 0; // Next one is the 'Byte 1' again.
- } else if (c >= 192) { // Next one is the 'Byte 2' of utf-8 encoding.
- return std::min<size_t>(1, clamp);
- } else {
- // Let's decide over the last byte if this ends the sequence.
- if (last < 0xe0) {
- return 0; // Completed two or three byte coding.
- } else { // Next one is the 'Byte 3' of utf-8 encoding.
- return std::min<size_t>(2, clamp);
- }
- }
-}
-
-static size_t DecideMultiByteStatsLevel(size_t pos, size_t len, size_t mask,
- const uint8_t *data) {
- size_t counts[3] = { 0 };
- size_t max_utf8 = 1; // should be 2, but 1 compresses better.
- size_t last_c = 0;
- size_t utf8_pos = 0;
- for (size_t i = 0; i < len; ++i) {
- size_t c = data[(pos + i) & mask];
- utf8_pos = UTF8Position(last_c, c, 2);
- ++counts[utf8_pos];
- last_c = c;
- }
- if (counts[2] < 500) {
- max_utf8 = 1;
- }
- if (counts[1] + counts[2] < 25) {
- max_utf8 = 0;
- }
- return max_utf8;
-}
-
-static void EstimateBitCostsForLiteralsUTF8(size_t pos, size_t len, size_t mask,
- const uint8_t *data, float *cost) {
-
- // max_utf8 is 0 (normal ascii single byte modeling),
- // 1 (for 2-byte utf-8 modeling), or 2 (for 3-byte utf-8 modeling).
- const size_t max_utf8 = DecideMultiByteStatsLevel(pos, len, mask, data);
- size_t histogram[3][256] = { { 0 } };
- size_t window_half = 495;
- size_t in_window = std::min(window_half, len);
- size_t in_window_utf8[3] = { 0 };
-
- // Bootstrap histograms.
- size_t last_c = 0;
- size_t utf8_pos = 0;
- for (size_t i = 0; i < in_window; ++i) {
- size_t c = data[(pos + i) & mask];
- ++histogram[utf8_pos][c];
- ++in_window_utf8[utf8_pos];
- utf8_pos = UTF8Position(last_c, c, max_utf8);
- last_c = c;
- }
-
- // Compute bit costs with sliding window.
- for (size_t i = 0; i < len; ++i) {
- if (i >= window_half) {
- // Remove a byte in the past.
- size_t c = i < window_half + 1 ?
- 0 : data[(pos + i - window_half - 1) & mask];
- size_t last_c = i < window_half + 2 ?
- 0 : data[(pos + i - window_half - 2) & mask];
- size_t utf8_pos2 = UTF8Position(last_c, c, max_utf8);
- --histogram[utf8_pos2][data[(pos + i - window_half) & mask]];
- --in_window_utf8[utf8_pos2];
- }
- if (i + window_half < len) {
- // Add a byte in the future.
- size_t c = data[(pos + i + window_half - 1) & mask];
- size_t last_c = data[(pos + i + window_half - 2) & mask];
- size_t utf8_pos2 = UTF8Position(last_c, c, max_utf8);
- ++histogram[utf8_pos2][data[(pos + i + window_half) & mask]];
- ++in_window_utf8[utf8_pos2];
- }
- size_t c = i < 1 ? 0 : data[(pos + i - 1) & mask];
- size_t last_c = i < 2 ? 0 : data[(pos + i - 2) & mask];
- size_t utf8_pos = UTF8Position(last_c, c, max_utf8);
- size_t masked_pos = (pos + i) & mask;
- size_t histo = histogram[utf8_pos][data[masked_pos]];
- if (histo == 0) {
- histo = 1;
- }
- double lit_cost = FastLog2(in_window_utf8[utf8_pos]) - FastLog2(histo);
- lit_cost += 0.02905;
- if (lit_cost < 1.0) {
- lit_cost *= 0.5;
- lit_cost += 0.5;
- }
- // Make the first bytes more expensive -- seems to help, not sure why.
- // Perhaps because the entropy source is changing its properties
- // rapidly in the beginning of the file, perhaps because the beginning
- // of the data is a statistical "anomaly".
- if (i < 2000) {
- lit_cost += 0.7 - (static_cast<double>(2000 - i) / 2000.0 * 0.35);
- }
- cost[i] = static_cast<float>(lit_cost);
- }
-}
-
-void EstimateBitCostsForLiterals(size_t pos, size_t len, size_t mask,
- const uint8_t *data, float *cost) {
- if (IsMostlyUTF8(data, pos, mask, len, kMinUTF8Ratio)) {
- EstimateBitCostsForLiteralsUTF8(pos, len, mask, data, cost);
- return;
- }
- size_t histogram[256] = { 0 };
- size_t window_half = 2000;
- size_t in_window = std::min(window_half, len);
-
- // Bootstrap histogram.
- for (size_t i = 0; i < in_window; ++i) {
- ++histogram[data[(pos + i) & mask]];
- }
-
- // Compute bit costs with sliding window.
- for (size_t i = 0; i < len; ++i) {
- if (i >= window_half) {
- // Remove a byte in the past.
- --histogram[data[(pos + i - window_half) & mask]];
- --in_window;
- }
- if (i + window_half < len) {
- // Add a byte in the future.
- ++histogram[data[(pos + i + window_half) & mask]];
- ++in_window;
- }
- size_t histo = histogram[data[(pos + i) & mask]];
- if (histo == 0) {
- histo = 1;
- }
- double lit_cost = FastLog2(in_window) - FastLog2(histo);
- lit_cost += 0.029;
- if (lit_cost < 1.0) {
- lit_cost *= 0.5;
- lit_cost += 0.5;
- }
- cost[i] = static_cast<float>(lit_cost);
- }
-}
-
-
-} // namespace brotli
diff --git a/thirdparty/brotli/enc/literal_cost.h b/thirdparty/brotli/enc/literal_cost.h
index 291aa8a1..fa96c9e7 100644
--- a/thirdparty/brotli/enc/literal_cost.h
+++ b/thirdparty/brotli/enc/literal_cost.h
@@ -4,21 +4,27 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Literal cost model to allow backward reference replacement to be efficient.
+/* Literal cost model to allow backward reference replacement to be efficient.
+*/
#ifndef BROTLI_ENC_LITERAL_COST_H_
#define BROTLI_ENC_LITERAL_COST_H_
-#include "./types.h"
+#include "../common/types.h"
+#include "./port.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
-// Estimates how many bits the literals in the interval [pos, pos + len) in the
-// ringbuffer (data, mask) will take entropy coded and writes these estimates
-// to the cost[0..len) array.
-void EstimateBitCostsForLiterals(size_t pos, size_t len, size_t mask,
- const uint8_t *data, float *cost);
+/* Estimates how many bits the literals in the interval [pos, pos + len) in the
+ ringbuffer (data, mask) will take entropy coded and writes these estimates
+ to the cost[0..len) array. */
+BROTLI_INTERNAL void BrotliEstimateBitCostsForLiterals(
+ size_t pos, size_t len, size_t mask, const uint8_t *data, float *cost);
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_LITERAL_COST_H_
+#endif /* BROTLI_ENC_LITERAL_COST_H_ */
diff --git a/thirdparty/brotli/enc/memory.c b/thirdparty/brotli/enc/memory.c
new file mode 100644
index 00000000..cd1cbbab
--- /dev/null
+++ b/thirdparty/brotli/enc/memory.c
@@ -0,0 +1,181 @@
+/* Copyright 2015 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Algorithms for distributing the literals and commands of a metablock between
+ block types and contexts. */
+
+#include "./memory.h"
+
+#include <assert.h>
+#include <stdlib.h> /* exit, free, malloc */
+#include <string.h> /* memcpy */
+
+#include "../common/types.h"
+#include "./port.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+#define MAX_PERM_ALLOCATED 128
+#define MAX_NEW_ALLOCATED 64
+#define MAX_NEW_FREED 64
+
+#define PERM_ALLOCATED_OFFSET 0
+#define NEW_ALLOCATED_OFFSET MAX_PERM_ALLOCATED
+#define NEW_FREED_OFFSET (MAX_PERM_ALLOCATED + MAX_NEW_ALLOCATED)
+
+static void* DefaultAllocFunc(void* opaque, size_t size) {
+ BROTLI_UNUSED(opaque);
+ return malloc(size);
+}
+
+static void DefaultFreeFunc(void* opaque, void* address) {
+ BROTLI_UNUSED(opaque);
+ free(address);
+}
+
+void BrotliInitMemoryManager(
+ MemoryManager* m, brotli_alloc_func alloc_func, brotli_free_func free_func,
+ void* opaque) {
+ if (!alloc_func) {
+ m->alloc_func = DefaultAllocFunc;
+ m->free_func = DefaultFreeFunc;
+ m->opaque = 0;
+ } else {
+ m->alloc_func = alloc_func;
+ m->free_func = free_func;
+ m->opaque = opaque;
+ }
+#if !defined(BROTLI_ENCODER_EXIT_ON_OOM)
+ m->is_oom = BROTLI_FALSE;
+ m->perm_allocated = 0;
+ m->new_allocated = 0;
+ m->new_freed = 0;
+#endif /* BROTLI_ENCODER_EXIT_ON_OOM */
+}
+
+#if defined(BROTLI_ENCODER_EXIT_ON_OOM)
+
+void* BrotliAllocate(MemoryManager* m, size_t n) {
+ void* result = m->alloc_func(m->opaque, n);
+ if (!result) exit(EXIT_FAILURE);
+ return result;
+}
+
+void BrotliFree(MemoryManager* m, void* p) {
+ m->free_func(m->opaque, p);
+}
+
+void BrotliWipeOutMemoryManager(MemoryManager* m) {
+ BROTLI_UNUSED(m);
+}
+
+#else /* BROTLI_ENCODER_EXIT_ON_OOM */
+
+static void SortPointers(void** items, const size_t n) {
+ /* Shell sort. */
+ static const size_t gaps[] = {23, 10, 4, 1};
+ int g = 0;
+ for (; g < 4; ++g) {
+ size_t gap = gaps[g];
+ size_t i;
+ for (i = gap; i < n; ++i) {
+ size_t j = i;
+ void* tmp = items[i];
+ for (; j >= gap && tmp < items[j - gap]; j -= gap) {
+ items[j] = items[j - gap];
+ }
+ items[j] = tmp;
+ }
+ }
+}
+
+static size_t Annihilate(void** a, size_t a_len, void** b, size_t b_len) {
+ size_t a_read_index = 0;
+ size_t b_read_index = 0;
+ size_t a_write_index = 0;
+ size_t b_write_index = 0;
+ size_t annihilated = 0;
+ while (a_read_index < a_len && b_read_index < b_len) {
+ if (a[a_read_index] == b[b_read_index]) {
+ a_read_index++;
+ b_read_index++;
+ annihilated++;
+ } else if (a[a_read_index] < b[b_read_index]) {
+ a[a_write_index++] = a[a_read_index++];
+ } else {
+ b[b_write_index++] = b[b_read_index++];
+ }
+ }
+ while (a_read_index < a_len) a[a_write_index++] = a[a_read_index++];
+ while (b_read_index < b_len) b[b_write_index++] = b[b_read_index++];
+ return annihilated;
+}
+
+static void CollectGarbagePointers(MemoryManager* m) {
+ size_t annihilated;
+ SortPointers(m->pointers + NEW_ALLOCATED_OFFSET, m->new_allocated);
+ SortPointers(m->pointers + NEW_FREED_OFFSET, m->new_freed);
+ annihilated = Annihilate(
+ m->pointers + NEW_ALLOCATED_OFFSET, m->new_allocated,
+ m->pointers + NEW_FREED_OFFSET, m->new_freed);
+ m->new_allocated -= annihilated;
+ m->new_freed -= annihilated;
+
+ if (m->new_freed != 0) {
+ annihilated = Annihilate(
+ m->pointers + PERM_ALLOCATED_OFFSET, m->perm_allocated,
+ m->pointers + NEW_FREED_OFFSET, m->new_freed);
+ m->perm_allocated -= annihilated;
+ m->new_freed -= annihilated;
+ assert(m->new_freed == 0);
+ }
+
+ if (m->new_allocated != 0) {
+ assert(m->perm_allocated + m->new_allocated <= MAX_PERM_ALLOCATED);
+ memcpy(m->pointers + PERM_ALLOCATED_OFFSET + m->perm_allocated,
+ m->pointers + NEW_ALLOCATED_OFFSET,
+ sizeof(void*) * m->new_allocated);
+ m->perm_allocated += m->new_allocated;
+ m->new_allocated = 0;
+ SortPointers(m->pointers + PERM_ALLOCATED_OFFSET, m->perm_allocated);
+ }
+}
+
+void* BrotliAllocate(MemoryManager* m, size_t n) {
+ void* result = m->alloc_func(m->opaque, n);
+ if (!result) {
+ m->is_oom = BROTLI_TRUE;
+ return NULL;
+ }
+ if (m->new_allocated == MAX_NEW_ALLOCATED) CollectGarbagePointers(m);
+ m->pointers[NEW_ALLOCATED_OFFSET + (m->new_allocated++)] = result;
+ return result;
+}
+
+void BrotliFree(MemoryManager* m, void* p) {
+ if (!p) return;
+ m->free_func(m->opaque, p);
+ if (m->new_freed == MAX_NEW_FREED) CollectGarbagePointers(m);
+ m->pointers[NEW_FREED_OFFSET + (m->new_freed++)] = p;
+}
+
+void BrotliWipeOutMemoryManager(MemoryManager* m) {
+ size_t i;
+ CollectGarbagePointers(m);
+ /* Now all unfreed pointers are in perm-allocated list. */
+ for (i = 0; i < m->perm_allocated; ++i) {
+ m->free_func(m->opaque, m->pointers[PERM_ALLOCATED_OFFSET + i]);
+ }
+ m->perm_allocated = 0;
+}
+
+#endif /* BROTLI_ENCODER_EXIT_ON_OOM */
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/memory.h b/thirdparty/brotli/enc/memory.h
new file mode 100644
index 00000000..e7abe0e1
--- /dev/null
+++ b/thirdparty/brotli/enc/memory.h
@@ -0,0 +1,62 @@
+/* Copyright 2016 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Macros for memory management. */
+
+#ifndef BROTLI_ENC_MEMORY_H_
+#define BROTLI_ENC_MEMORY_H_
+
+#include "../common/types.h"
+#include "./port.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+#if !defined(BROTLI_ENCODER_CLEANUP_ON_OOM) && \
+ !defined(BROTLI_ENCODER_EXIT_ON_OOM)
+#define BROTLI_ENCODER_EXIT_ON_OOM
+#endif
+
+typedef struct MemoryManager {
+ brotli_alloc_func alloc_func;
+ brotli_free_func free_func;
+ void* opaque;
+#if !defined(BROTLI_ENCODER_EXIT_ON_OOM)
+ BROTLI_BOOL is_oom;
+ size_t perm_allocated;
+ size_t new_allocated;
+ size_t new_freed;
+ void* pointers[256];
+#endif /* BROTLI_ENCODER_EXIT_ON_OOM */
+} MemoryManager;
+
+BROTLI_INTERNAL void BrotliInitMemoryManager(
+ MemoryManager* m, brotli_alloc_func alloc_func, brotli_free_func free_func,
+ void* opaque);
+
+BROTLI_INTERNAL void* BrotliAllocate(MemoryManager* m, size_t n);
+#define BROTLI_ALLOC(M, T, N) ((T*)BrotliAllocate((M), (N) * sizeof(T)))
+
+BROTLI_INTERNAL void BrotliFree(MemoryManager* m, void* p);
+#define BROTLI_FREE(M, P) { \
+ BrotliFree((M), (P)); \
+ P = NULL; \
+}
+
+#if defined(BROTLI_ENCODER_EXIT_ON_OOM)
+#define BROTLI_IS_OOM(M) (!!0)
+#else /* BROTLI_ENCODER_EXIT_ON_OOM */
+#define BROTLI_IS_OOM(M) (!!(M)->is_oom)
+#endif /* BROTLI_ENCODER_EXIT_ON_OOM */
+
+BROTLI_INTERNAL void BrotliWipeOutMemoryManager(MemoryManager* m);
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
+
+#endif /* BROTLI_ENC_MEMORY_H_ */
diff --git a/thirdparty/brotli/enc/metablock.c b/thirdparty/brotli/enc/metablock.c
new file mode 100644
index 00000000..e2e7909e
--- /dev/null
+++ b/thirdparty/brotli/enc/metablock.c
@@ -0,0 +1,515 @@
+/* Copyright 2015 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Algorithms for distributing the literals and commands of a metablock between
+ block types and contexts. */
+
+#include "./metablock.h"
+
+#include "../common/constants.h"
+#include "../common/types.h"
+#include "./bit_cost.h"
+#include "./block_splitter.h"
+#include "./cluster.h"
+#include "./context.h"
+#include "./entropy_encode.h"
+#include "./histogram.h"
+#include "./memory.h"
+#include "./port.h"
+#include "./quality.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+void BrotliBuildMetaBlock(MemoryManager* m,
+ const uint8_t* ringbuffer,
+ const size_t pos,
+ const size_t mask,
+ const BrotliEncoderParams* params,
+ uint8_t prev_byte,
+ uint8_t prev_byte2,
+ const Command* cmds,
+ size_t num_commands,
+ ContextType literal_context_mode,
+ MetaBlockSplit* mb) {
+ /* Histogram ids need to fit in one byte. */
+ static const size_t kMaxNumberOfHistograms = 256;
+ HistogramDistance* distance_histograms;
+ HistogramLiteral* literal_histograms;
+ ContextType* literal_context_modes;
+ size_t num_literal_contexts;
+ size_t num_distance_contexts;
+ size_t i;
+
+ BrotliSplitBlock(m, cmds, num_commands,
+ ringbuffer, pos, mask, params,
+ &mb->literal_split,
+ &mb->command_split,
+ &mb->distance_split);
+ if (BROTLI_IS_OOM(m)) return;
+
+ literal_context_modes =
+ BROTLI_ALLOC(m, ContextType, mb->literal_split.num_types);
+ if (BROTLI_IS_OOM(m)) return;
+ for (i = 0; i < mb->literal_split.num_types; ++i) {
+ literal_context_modes[i] = literal_context_mode;
+ }
+
+ num_literal_contexts =
+ mb->literal_split.num_types << BROTLI_LITERAL_CONTEXT_BITS;
+ num_distance_contexts =
+ mb->distance_split.num_types << BROTLI_DISTANCE_CONTEXT_BITS;
+ literal_histograms = BROTLI_ALLOC(m, HistogramLiteral, num_literal_contexts);
+ if (BROTLI_IS_OOM(m)) return;
+ ClearHistogramsLiteral(literal_histograms, num_literal_contexts);
+
+ assert(mb->command_histograms == 0);
+ mb->command_histograms_size = mb->command_split.num_types;
+ mb->command_histograms =
+ BROTLI_ALLOC(m, HistogramCommand, mb->command_histograms_size);
+ if (BROTLI_IS_OOM(m)) return;
+ ClearHistogramsCommand(mb->command_histograms, mb->command_histograms_size);
+ distance_histograms =
+ BROTLI_ALLOC(m, HistogramDistance, num_distance_contexts);
+ if (BROTLI_IS_OOM(m)) return;
+ ClearHistogramsDistance(distance_histograms, num_distance_contexts);
+ BrotliBuildHistogramsWithContext(cmds, num_commands,
+ &mb->literal_split, &mb->command_split, &mb->distance_split,
+ ringbuffer, pos, mask, prev_byte, prev_byte2, literal_context_modes,
+ literal_histograms, mb->command_histograms, distance_histograms);
+ BROTLI_FREE(m, literal_context_modes);
+
+ assert(mb->literal_context_map == 0);
+ mb->literal_context_map_size =
+ mb->literal_split.num_types << BROTLI_LITERAL_CONTEXT_BITS;
+ mb->literal_context_map =
+ BROTLI_ALLOC(m, uint32_t, mb->literal_context_map_size);
+ if (BROTLI_IS_OOM(m)) return;
+ assert(mb->literal_histograms == 0);
+ mb->literal_histograms_size = mb->literal_context_map_size;
+ mb->literal_histograms =
+ BROTLI_ALLOC(m, HistogramLiteral, mb->literal_histograms_size);
+ if (BROTLI_IS_OOM(m)) return;
+ BrotliClusterHistogramsLiteral(m, literal_histograms,
+ mb->literal_context_map_size,
+ kMaxNumberOfHistograms,
+ mb->literal_histograms,
+ &mb->literal_histograms_size,
+ mb->literal_context_map);
+ if (BROTLI_IS_OOM(m)) return;
+ BROTLI_FREE(m, literal_histograms);
+
+ assert(mb->distance_context_map == 0);
+ mb->distance_context_map_size =
+ mb->distance_split.num_types << BROTLI_DISTANCE_CONTEXT_BITS;
+ mb->distance_context_map =
+ BROTLI_ALLOC(m, uint32_t, mb->distance_context_map_size);
+ if (BROTLI_IS_OOM(m)) return;
+ assert(mb->distance_histograms == 0);
+ mb->distance_histograms_size = mb->distance_context_map_size;
+ mb->distance_histograms =
+ BROTLI_ALLOC(m, HistogramDistance, mb->distance_histograms_size);
+ if (BROTLI_IS_OOM(m)) return;
+ BrotliClusterHistogramsDistance(m, distance_histograms,
+ mb->distance_context_map_size,
+ kMaxNumberOfHistograms,
+ mb->distance_histograms,
+ &mb->distance_histograms_size,
+ mb->distance_context_map);
+ if (BROTLI_IS_OOM(m)) return;
+ BROTLI_FREE(m, distance_histograms);
+}
+
+#define FN(X) X ## Literal
+#include "./metablock_inc.h" /* NOLINT(build/include) */
+#undef FN
+
+#define FN(X) X ## Command
+#include "./metablock_inc.h" /* NOLINT(build/include) */
+#undef FN
+
+#define FN(X) X ## Distance
+#include "./metablock_inc.h" /* NOLINT(build/include) */
+#undef FN
+
+void BrotliBuildMetaBlockGreedy(MemoryManager* m,
+ const uint8_t* ringbuffer,
+ size_t pos,
+ size_t mask,
+ const Command *commands,
+ size_t n_commands,
+ MetaBlockSplit* mb) {
+ BlockSplitterLiteral lit_blocks;
+ BlockSplitterCommand cmd_blocks;
+ BlockSplitterDistance dist_blocks;
+ size_t num_literals = 0;
+ size_t i;
+ for (i = 0; i < n_commands; ++i) {
+ num_literals += commands[i].insert_len_;
+ }
+
+ InitBlockSplitterLiteral(m, &lit_blocks, 256, 512, 400.0, num_literals,
+ &mb->literal_split, &mb->literal_histograms,
+ &mb->literal_histograms_size);
+ if (BROTLI_IS_OOM(m)) return;
+ InitBlockSplitterCommand(m, &cmd_blocks, BROTLI_NUM_COMMAND_SYMBOLS, 1024,
+ 500.0, n_commands, &mb->command_split, &mb->command_histograms,
+ &mb->command_histograms_size);
+ if (BROTLI_IS_OOM(m)) return;
+ InitBlockSplitterDistance(m, &dist_blocks, 64, 512, 100.0, n_commands,
+ &mb->distance_split, &mb->distance_histograms,
+ &mb->distance_histograms_size);
+ if (BROTLI_IS_OOM(m)) return;
+
+ for (i = 0; i < n_commands; ++i) {
+ const Command cmd = commands[i];
+ size_t j;
+ BlockSplitterAddSymbolCommand(&cmd_blocks, cmd.cmd_prefix_);
+ for (j = cmd.insert_len_; j != 0; --j) {
+ BlockSplitterAddSymbolLiteral(&lit_blocks, ringbuffer[pos & mask]);
+ ++pos;
+ }
+ pos += CommandCopyLen(&cmd);
+ if (CommandCopyLen(&cmd) && cmd.cmd_prefix_ >= 128) {
+ BlockSplitterAddSymbolDistance(&dist_blocks, cmd.dist_prefix_);
+ }
+ }
+
+ BlockSplitterFinishBlockLiteral(&lit_blocks, /* is_final = */ BROTLI_TRUE);
+ BlockSplitterFinishBlockCommand(&cmd_blocks, /* is_final = */ BROTLI_TRUE);
+ BlockSplitterFinishBlockDistance(&dist_blocks, /* is_final = */ BROTLI_TRUE);
+}
+
+/* Greedy block splitter for one block category (literal, command or distance).
+ Gathers histograms for all context buckets. */
+typedef struct ContextBlockSplitter {
+ /* Alphabet size of particular block category. */
+ size_t alphabet_size_;
+ size_t num_contexts_;
+ size_t max_block_types_;
+ /* We collect at least this many symbols for each block. */
+ size_t min_block_size_;
+ /* We merge histograms A and B if
+ entropy(A+B) < entropy(A) + entropy(B) + split_threshold_,
+ where A is the current histogram and B is the histogram of the last or the
+ second last block type. */
+ double split_threshold_;
+
+ size_t num_blocks_;
+ BlockSplit* split_; /* not owned */
+ HistogramLiteral* histograms_; /* not owned */
+ size_t* histograms_size_; /* not owned */
+
+ /* The number of symbols that we want to collect before deciding on whether
+ or not to merge the block with a previous one or emit a new block. */
+ size_t target_block_size_;
+ /* The number of symbols in the current histogram. */
+ size_t block_size_;
+ /* Offset of the current histogram. */
+ size_t curr_histogram_ix_;
+ /* Offset of the histograms of the previous two block types. */
+ size_t last_histogram_ix_[2];
+ /* Entropy of the previous two block types. */
+ double* last_entropy_;
+ /* The number of times we merged the current block with the last one. */
+ size_t merge_last_count_;
+} ContextBlockSplitter;
+
+static void InitContextBlockSplitter(
+ MemoryManager* m, ContextBlockSplitter* self, size_t alphabet_size,
+ size_t num_contexts, size_t min_block_size, double split_threshold,
+ size_t num_symbols, BlockSplit* split, HistogramLiteral** histograms,
+ size_t* histograms_size) {
+ size_t max_num_blocks = num_symbols / min_block_size + 1;
+ size_t max_num_types;
+
+ self->alphabet_size_ = alphabet_size;
+ self->num_contexts_ = num_contexts;
+ self->max_block_types_ = BROTLI_MAX_NUMBER_OF_BLOCK_TYPES / num_contexts;
+ self->min_block_size_ = min_block_size;
+ self->split_threshold_ = split_threshold;
+ self->num_blocks_ = 0;
+ self->split_ = split;
+ self->histograms_size_ = histograms_size;
+ self->target_block_size_ = min_block_size;
+ self->block_size_ = 0;
+ self->curr_histogram_ix_ = 0;
+ self->merge_last_count_ = 0;
+
+ /* We have to allocate one more histogram than the maximum number of block
+ types for the current histogram when the meta-block is too big. */
+ max_num_types =
+ BROTLI_MIN(size_t, max_num_blocks, self->max_block_types_ + 1);
+ BROTLI_ENSURE_CAPACITY(m, uint8_t,
+ split->types, split->types_alloc_size, max_num_blocks);
+ BROTLI_ENSURE_CAPACITY(m, uint32_t,
+ split->lengths, split->lengths_alloc_size, max_num_blocks);
+ if (BROTLI_IS_OOM(m)) return;
+ split->num_blocks = max_num_blocks;
+ self->last_entropy_ = BROTLI_ALLOC(m, double, 2 * num_contexts);
+ if (BROTLI_IS_OOM(m)) return;
+ assert(*histograms == 0);
+ *histograms_size = max_num_types * num_contexts;
+ *histograms = BROTLI_ALLOC(m, HistogramLiteral, *histograms_size);
+ self->histograms_ = *histograms;
+ if (BROTLI_IS_OOM(m)) return;
+ /* Clear only current historgram. */
+ ClearHistogramsLiteral(&self->histograms_[0], num_contexts);
+ self->last_histogram_ix_[0] = self->last_histogram_ix_[1] = 0;
+}
+
+static void CleanupContextBlockSplitter(
+ MemoryManager* m, ContextBlockSplitter* self) {
+ BROTLI_FREE(m, self->last_entropy_);
+}
+
+/* Does either of three things:
+ (1) emits the current block with a new block type;
+ (2) emits the current block with the type of the second last block;
+ (3) merges the current block with the last block. */
+static void ContextBlockSplitterFinishBlock(
+ MemoryManager* m, ContextBlockSplitter* self, BROTLI_BOOL is_final) {
+ BlockSplit* split = self->split_;
+ const size_t num_contexts = self->num_contexts_;
+ double* last_entropy = self->last_entropy_;
+ HistogramLiteral* histograms = self->histograms_;
+
+ if (self->block_size_ < self->min_block_size_) {
+ self->block_size_ = self->min_block_size_;
+ }
+ if (self->num_blocks_ == 0) {
+ size_t i;
+ /* Create first block. */
+ split->lengths[0] = (uint32_t)self->block_size_;
+ split->types[0] = 0;
+
+ for (i = 0; i < num_contexts; ++i) {
+ last_entropy[i] =
+ BitsEntropy(histograms[i].data_, self->alphabet_size_);
+ last_entropy[num_contexts + i] = last_entropy[i];
+ }
+ ++self->num_blocks_;
+ ++split->num_types;
+ self->curr_histogram_ix_ += num_contexts;
+ if (self->curr_histogram_ix_ < *self->histograms_size_) {
+ ClearHistogramsLiteral(
+ &self->histograms_[self->curr_histogram_ix_], self->num_contexts_);
+ }
+ self->block_size_ = 0;
+ } else if (self->block_size_ > 0) {
+ /* Try merging the set of histograms for the current block type with the
+ respective set of histograms for the last and second last block types.
+ Decide over the split based on the total reduction of entropy across
+ all contexts. */
+ double* entropy = BROTLI_ALLOC(m, double, num_contexts);
+ HistogramLiteral* combined_histo =
+ BROTLI_ALLOC(m, HistogramLiteral, 2 * num_contexts);
+ double* combined_entropy = BROTLI_ALLOC(m, double, 2 * num_contexts);
+ double diff[2] = { 0.0 };
+ size_t i;
+ if (BROTLI_IS_OOM(m)) return;
+ for (i = 0; i < num_contexts; ++i) {
+ size_t curr_histo_ix = self->curr_histogram_ix_ + i;
+ size_t j;
+ entropy[i] = BitsEntropy(histograms[curr_histo_ix].data_,
+ self->alphabet_size_);
+ for (j = 0; j < 2; ++j) {
+ size_t jx = j * num_contexts + i;
+ size_t last_histogram_ix = self->last_histogram_ix_[j] + i;
+ combined_histo[jx] = histograms[curr_histo_ix];
+ HistogramAddHistogramLiteral(&combined_histo[jx],
+ &histograms[last_histogram_ix]);
+ combined_entropy[jx] = BitsEntropy(
+ &combined_histo[jx].data_[0], self->alphabet_size_);
+ diff[j] += combined_entropy[jx] - entropy[i] - last_entropy[jx];
+ }
+ }
+
+ if (split->num_types < self->max_block_types_ &&
+ diff[0] > self->split_threshold_ &&
+ diff[1] > self->split_threshold_) {
+ /* Create new block. */
+ split->lengths[self->num_blocks_] = (uint32_t)self->block_size_;
+ split->types[self->num_blocks_] = (uint8_t)split->num_types;
+ self->last_histogram_ix_[1] = self->last_histogram_ix_[0];
+ self->last_histogram_ix_[0] = split->num_types * num_contexts;
+ for (i = 0; i < num_contexts; ++i) {
+ last_entropy[num_contexts + i] = last_entropy[i];
+ last_entropy[i] = entropy[i];
+ }
+ ++self->num_blocks_;
+ ++split->num_types;
+ self->curr_histogram_ix_ += num_contexts;
+ if (self->curr_histogram_ix_ < *self->histograms_size_) {
+ ClearHistogramsLiteral(
+ &self->histograms_[self->curr_histogram_ix_], self->num_contexts_);
+ }
+ self->block_size_ = 0;
+ self->merge_last_count_ = 0;
+ self->target_block_size_ = self->min_block_size_;
+ } else if (diff[1] < diff[0] - 20.0) {
+ /* Combine this block with second last block. */
+ split->lengths[self->num_blocks_] = (uint32_t)self->block_size_;
+ split->types[self->num_blocks_] = split->types[self->num_blocks_ - 2];
+ BROTLI_SWAP(size_t, self->last_histogram_ix_, 0, 1);
+ for (i = 0; i < num_contexts; ++i) {
+ histograms[self->last_histogram_ix_[0] + i] =
+ combined_histo[num_contexts + i];
+ last_entropy[num_contexts + i] = last_entropy[i];
+ last_entropy[i] = combined_entropy[num_contexts + i];
+ HistogramClearLiteral(&histograms[self->curr_histogram_ix_ + i]);
+ }
+ ++self->num_blocks_;
+ self->block_size_ = 0;
+ self->merge_last_count_ = 0;
+ self->target_block_size_ = self->min_block_size_;
+ } else {
+ /* Combine this block with last block. */
+ split->lengths[self->num_blocks_ - 1] += (uint32_t)self->block_size_;
+ for (i = 0; i < num_contexts; ++i) {
+ histograms[self->last_histogram_ix_[0] + i] = combined_histo[i];
+ last_entropy[i] = combined_entropy[i];
+ if (split->num_types == 1) {
+ last_entropy[num_contexts + i] = last_entropy[i];
+ }
+ HistogramClearLiteral(&histograms[self->curr_histogram_ix_ + i]);
+ }
+ self->block_size_ = 0;
+ if (++self->merge_last_count_ > 1) {
+ self->target_block_size_ += self->min_block_size_;
+ }
+ }
+ BROTLI_FREE(m, combined_entropy);
+ BROTLI_FREE(m, combined_histo);
+ BROTLI_FREE(m, entropy);
+ }
+ if (is_final) {
+ *self->histograms_size_ = split->num_types * num_contexts;
+ split->num_blocks = self->num_blocks_;
+ }
+}
+
+/* Adds the next symbol to the current block type and context. When the
+ current block reaches the target size, decides on merging the block. */
+static void ContextBlockSplitterAddSymbol(MemoryManager* m,
+ ContextBlockSplitter* self, size_t symbol, size_t context) {
+ HistogramAddLiteral(&self->histograms_[self->curr_histogram_ix_ + context],
+ symbol);
+ ++self->block_size_;
+ if (self->block_size_ == self->target_block_size_) {
+ ContextBlockSplitterFinishBlock(m, self, /* is_final = */ BROTLI_FALSE);
+ if (BROTLI_IS_OOM(m)) return;
+ }
+}
+
+void BrotliBuildMetaBlockGreedyWithContexts(MemoryManager* m,
+ const uint8_t* ringbuffer,
+ size_t pos,
+ size_t mask,
+ uint8_t prev_byte,
+ uint8_t prev_byte2,
+ ContextType literal_context_mode,
+ size_t num_contexts,
+ const uint32_t* static_context_map,
+ const Command *commands,
+ size_t n_commands,
+ MetaBlockSplit* mb) {
+ ContextBlockSplitter lit_blocks;
+ BlockSplitterCommand cmd_blocks;
+ BlockSplitterDistance dist_blocks;
+ size_t num_literals = 0;
+ size_t i;
+ for (i = 0; i < n_commands; ++i) {
+ num_literals += commands[i].insert_len_;
+ }
+
+ InitContextBlockSplitter(m, &lit_blocks, 256, num_contexts, 512, 400.0,
+ num_literals, &mb->literal_split, &mb->literal_histograms,
+ &mb->literal_histograms_size);
+ if (BROTLI_IS_OOM(m)) return;
+ InitBlockSplitterCommand(m, &cmd_blocks, BROTLI_NUM_COMMAND_SYMBOLS, 1024,
+ 500.0, n_commands, &mb->command_split, &mb->command_histograms,
+ &mb->command_histograms_size);
+ if (BROTLI_IS_OOM(m)) return;
+ InitBlockSplitterDistance(m, &dist_blocks, 64, 512, 100.0, n_commands,
+ &mb->distance_split, &mb->distance_histograms,
+ &mb->distance_histograms_size);
+ if (BROTLI_IS_OOM(m)) return;
+
+ for (i = 0; i < n_commands; ++i) {
+ const Command cmd = commands[i];
+ size_t j;
+ BlockSplitterAddSymbolCommand(&cmd_blocks, cmd.cmd_prefix_);
+ for (j = cmd.insert_len_; j != 0; --j) {
+ size_t context = Context(prev_byte, prev_byte2, literal_context_mode);
+ uint8_t literal = ringbuffer[pos & mask];
+ ContextBlockSplitterAddSymbol(
+ m, &lit_blocks, literal, static_context_map[context]);
+ prev_byte2 = prev_byte;
+ if (BROTLI_IS_OOM(m)) return;
+ prev_byte = literal;
+ ++pos;
+ }
+ pos += CommandCopyLen(&cmd);
+ if (CommandCopyLen(&cmd)) {
+ prev_byte2 = ringbuffer[(pos - 2) & mask];
+ prev_byte = ringbuffer[(pos - 1) & mask];
+ if (cmd.cmd_prefix_ >= 128) {
+ BlockSplitterAddSymbolDistance(&dist_blocks, cmd.dist_prefix_);
+ }
+ }
+ }
+
+ ContextBlockSplitterFinishBlock(m, &lit_blocks, /* is_final = */ BROTLI_TRUE);
+ if (BROTLI_IS_OOM(m)) return;
+ CleanupContextBlockSplitter(m, &lit_blocks);
+ BlockSplitterFinishBlockCommand(&cmd_blocks, /* is_final = */ BROTLI_TRUE);
+ BlockSplitterFinishBlockDistance(&dist_blocks, /* is_final = */ BROTLI_TRUE);
+
+ assert(mb->literal_context_map == 0);
+ mb->literal_context_map_size =
+ mb->literal_split.num_types << BROTLI_LITERAL_CONTEXT_BITS;
+ mb->literal_context_map =
+ BROTLI_ALLOC(m, uint32_t, mb->literal_context_map_size);
+ if (BROTLI_IS_OOM(m)) return;
+
+ for (i = 0; i < mb->literal_split.num_types; ++i) {
+ size_t j;
+ for (j = 0; j < (1u << BROTLI_LITERAL_CONTEXT_BITS); ++j) {
+ mb->literal_context_map[(i << BROTLI_LITERAL_CONTEXT_BITS) + j] =
+ (uint32_t)(i * num_contexts) + static_context_map[j];
+ }
+ }
+}
+
+void BrotliOptimizeHistograms(size_t num_direct_distance_codes,
+ size_t distance_postfix_bits,
+ MetaBlockSplit* mb) {
+ uint8_t good_for_rle[BROTLI_NUM_COMMAND_SYMBOLS];
+ size_t num_distance_codes;
+ size_t i;
+ for (i = 0; i < mb->literal_histograms_size; ++i) {
+ BrotliOptimizeHuffmanCountsForRle(256, mb->literal_histograms[i].data_,
+ good_for_rle);
+ }
+ for (i = 0; i < mb->command_histograms_size; ++i) {
+ BrotliOptimizeHuffmanCountsForRle(BROTLI_NUM_COMMAND_SYMBOLS,
+ mb->command_histograms[i].data_,
+ good_for_rle);
+ }
+ num_distance_codes = BROTLI_NUM_DISTANCE_SHORT_CODES +
+ num_direct_distance_codes + (48u << distance_postfix_bits);
+ for (i = 0; i < mb->distance_histograms_size; ++i) {
+ BrotliOptimizeHuffmanCountsForRle(num_distance_codes,
+ mb->distance_histograms[i].data_,
+ good_for_rle);
+ }
+}
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/metablock.cc b/thirdparty/brotli/enc/metablock.cc
deleted file mode 100644
index fc962c5c..00000000
--- a/thirdparty/brotli/enc/metablock.cc
+++ /dev/null
@@ -1,539 +0,0 @@
-/* Copyright 2015 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-// Algorithms for distributing the literals and commands of a metablock between
-// block types and contexts.
-
-#include "./metablock.h"
-
-#include "./block_splitter.h"
-#include "./context.h"
-#include "./cluster.h"
-#include "./histogram.h"
-
-namespace brotli {
-
-void BuildMetaBlock(const uint8_t* ringbuffer,
- const size_t pos,
- const size_t mask,
- uint8_t prev_byte,
- uint8_t prev_byte2,
- const Command* cmds,
- size_t num_commands,
- ContextType literal_context_mode,
- MetaBlockSplit* mb) {
- SplitBlock(cmds, num_commands,
- ringbuffer, pos, mask,
- &mb->literal_split,
- &mb->command_split,
- &mb->distance_split);
-
- std::vector<ContextType> literal_context_modes(mb->literal_split.num_types,
- literal_context_mode);
-
- size_t num_literal_contexts =
- mb->literal_split.num_types << kLiteralContextBits;
- size_t num_distance_contexts =
- mb->distance_split.num_types << kDistanceContextBits;
- std::vector<HistogramLiteral> literal_histograms(num_literal_contexts);
- mb->command_histograms.resize(mb->command_split.num_types);
- std::vector<HistogramDistance> distance_histograms(num_distance_contexts);
- BuildHistograms(cmds, num_commands,
- mb->literal_split,
- mb->command_split,
- mb->distance_split,
- ringbuffer,
- pos,
- mask,
- prev_byte,
- prev_byte2,
- literal_context_modes,
- &literal_histograms,
- &mb->command_histograms,
- &distance_histograms);
-
- // Histogram ids need to fit in one byte.
- static const size_t kMaxNumberOfHistograms = 256;
-
- ClusterHistograms(literal_histograms,
- 1u << kLiteralContextBits,
- mb->literal_split.num_types,
- kMaxNumberOfHistograms,
- &mb->literal_histograms,
- &mb->literal_context_map);
-
- ClusterHistograms(distance_histograms,
- 1u << kDistanceContextBits,
- mb->distance_split.num_types,
- kMaxNumberOfHistograms,
- &mb->distance_histograms,
- &mb->distance_context_map);
-}
-
-// Greedy block splitter for one block category (literal, command or distance).
-template<typename HistogramType>
-class BlockSplitter {
- public:
- BlockSplitter(size_t alphabet_size,
- size_t min_block_size,
- double split_threshold,
- size_t num_symbols,
- BlockSplit* split,
- std::vector<HistogramType>* histograms)
- : alphabet_size_(alphabet_size),
- min_block_size_(min_block_size),
- split_threshold_(split_threshold),
- num_blocks_(0),
- split_(split),
- histograms_(histograms),
- target_block_size_(min_block_size),
- block_size_(0),
- curr_histogram_ix_(0),
- merge_last_count_(0) {
- size_t max_num_blocks = num_symbols / min_block_size + 1;
- // We have to allocate one more histogram than the maximum number of block
- // types for the current histogram when the meta-block is too big.
- size_t max_num_types = std::min<size_t>(max_num_blocks, kMaxBlockTypes + 1);
- split_->lengths.resize(max_num_blocks);
- split_->types.resize(max_num_blocks);
- histograms_->resize(max_num_types);
- last_histogram_ix_[0] = last_histogram_ix_[1] = 0;
- }
-
- // Adds the next symbol to the current histogram. When the current histogram
- // reaches the target size, decides on merging the block.
- void AddSymbol(size_t symbol) {
- (*histograms_)[curr_histogram_ix_].Add(symbol);
- ++block_size_;
- if (block_size_ == target_block_size_) {
- FinishBlock(/* is_final = */ false);
- }
- }
-
- // Does either of three things:
- // (1) emits the current block with a new block type;
- // (2) emits the current block with the type of the second last block;
- // (3) merges the current block with the last block.
- void FinishBlock(bool is_final) {
- if (block_size_ < min_block_size_) {
- block_size_ = min_block_size_;
- }
- if (num_blocks_ == 0) {
- // Create first block.
- split_->lengths[0] = static_cast<uint32_t>(block_size_);
- split_->types[0] = 0;
- last_entropy_[0] =
- BitsEntropy(&(*histograms_)[0].data_[0], alphabet_size_);
- last_entropy_[1] = last_entropy_[0];
- ++num_blocks_;
- ++split_->num_types;
- ++curr_histogram_ix_;
- block_size_ = 0;
- } else if (block_size_ > 0) {
- double entropy = BitsEntropy(&(*histograms_)[curr_histogram_ix_].data_[0],
- alphabet_size_);
- HistogramType combined_histo[2];
- double combined_entropy[2];
- double diff[2];
- for (size_t j = 0; j < 2; ++j) {
- size_t last_histogram_ix = last_histogram_ix_[j];
- combined_histo[j] = (*histograms_)[curr_histogram_ix_];
- combined_histo[j].AddHistogram((*histograms_)[last_histogram_ix]);
- combined_entropy[j] = BitsEntropy(
- &combined_histo[j].data_[0], alphabet_size_);
- diff[j] = combined_entropy[j] - entropy - last_entropy_[j];
- }
-
- if (split_->num_types < kMaxBlockTypes &&
- diff[0] > split_threshold_ &&
- diff[1] > split_threshold_) {
- // Create new block.
- split_->lengths[num_blocks_] = static_cast<uint32_t>(block_size_);
- split_->types[num_blocks_] = static_cast<uint8_t>(split_->num_types);
- last_histogram_ix_[1] = last_histogram_ix_[0];
- last_histogram_ix_[0] = static_cast<uint8_t>(split_->num_types);
- last_entropy_[1] = last_entropy_[0];
- last_entropy_[0] = entropy;
- ++num_blocks_;
- ++split_->num_types;
- ++curr_histogram_ix_;
- block_size_ = 0;
- merge_last_count_ = 0;
- target_block_size_ = min_block_size_;
- } else if (diff[1] < diff[0] - 20.0) {
- // Combine this block with second last block.
- split_->lengths[num_blocks_] = static_cast<uint32_t>(block_size_);
- split_->types[num_blocks_] = split_->types[num_blocks_ - 2];
- std::swap(last_histogram_ix_[0], last_histogram_ix_[1]);
- (*histograms_)[last_histogram_ix_[0]] = combined_histo[1];
- last_entropy_[1] = last_entropy_[0];
- last_entropy_[0] = combined_entropy[1];
- ++num_blocks_;
- block_size_ = 0;
- (*histograms_)[curr_histogram_ix_].Clear();
- merge_last_count_ = 0;
- target_block_size_ = min_block_size_;
- } else {
- // Combine this block with last block.
- split_->lengths[num_blocks_ - 1] += static_cast<uint32_t>(block_size_);
- (*histograms_)[last_histogram_ix_[0]] = combined_histo[0];
- last_entropy_[0] = combined_entropy[0];
- if (split_->num_types == 1) {
- last_entropy_[1] = last_entropy_[0];
- }
- block_size_ = 0;
- (*histograms_)[curr_histogram_ix_].Clear();
- if (++merge_last_count_ > 1) {
- target_block_size_ += min_block_size_;
- }
- }
- }
- if (is_final) {
- (*histograms_).resize(split_->num_types);
- split_->types.resize(num_blocks_);
- split_->lengths.resize(num_blocks_);
- }
- }
-
- private:
- static const uint16_t kMaxBlockTypes = 256;
-
- // Alphabet size of particular block category.
- const size_t alphabet_size_;
- // We collect at least this many symbols for each block.
- const size_t min_block_size_;
- // We merge histograms A and B if
- // entropy(A+B) < entropy(A) + entropy(B) + split_threshold_,
- // where A is the current histogram and B is the histogram of the last or the
- // second last block type.
- const double split_threshold_;
-
- size_t num_blocks_;
- BlockSplit* split_; // not owned
- std::vector<HistogramType>* histograms_; // not owned
-
- // The number of symbols that we want to collect before deciding on whether
- // or not to merge the block with a previous one or emit a new block.
- size_t target_block_size_;
- // The number of symbols in the current histogram.
- size_t block_size_;
- // Offset of the current histogram.
- size_t curr_histogram_ix_;
- // Offset of the histograms of the previous two block types.
- size_t last_histogram_ix_[2];
- // Entropy of the previous two block types.
- double last_entropy_[2];
- // The number of times we merged the current block with the last one.
- size_t merge_last_count_;
-};
-
-void BuildMetaBlockGreedy(const uint8_t* ringbuffer,
- size_t pos,
- size_t mask,
- const Command *commands,
- size_t n_commands,
- MetaBlockSplit* mb) {
- size_t num_literals = 0;
- for (size_t i = 0; i < n_commands; ++i) {
- num_literals += commands[i].insert_len_;
- }
-
- BlockSplitter<HistogramLiteral> lit_blocks(
- 256, 512, 400.0, num_literals,
- &mb->literal_split, &mb->literal_histograms);
- BlockSplitter<HistogramCommand> cmd_blocks(
- kNumCommandPrefixes, 1024, 500.0, n_commands,
- &mb->command_split, &mb->command_histograms);
- BlockSplitter<HistogramDistance> dist_blocks(
- 64, 512, 100.0, n_commands,
- &mb->distance_split, &mb->distance_histograms);
-
- for (size_t i = 0; i < n_commands; ++i) {
- const Command cmd = commands[i];
- cmd_blocks.AddSymbol(cmd.cmd_prefix_);
- for (size_t j = cmd.insert_len_; j != 0; --j) {
- lit_blocks.AddSymbol(ringbuffer[pos & mask]);
- ++pos;
- }
- pos += cmd.copy_len();
- if (cmd.copy_len() && cmd.cmd_prefix_ >= 128) {
- dist_blocks.AddSymbol(cmd.dist_prefix_);
- }
- }
-
- lit_blocks.FinishBlock(/* is_final = */ true);
- cmd_blocks.FinishBlock(/* is_final = */ true);
- dist_blocks.FinishBlock(/* is_final = */ true);
-}
-
-// Greedy block splitter for one block category (literal, command or distance).
-// Gathers histograms for all context buckets.
-template<typename HistogramType>
-class ContextBlockSplitter {
- public:
- ContextBlockSplitter(size_t alphabet_size,
- size_t num_contexts,
- size_t min_block_size,
- double split_threshold,
- size_t num_symbols,
- BlockSplit* split,
- std::vector<HistogramType>* histograms)
- : alphabet_size_(alphabet_size),
- num_contexts_(num_contexts),
- max_block_types_(kMaxBlockTypes / num_contexts),
- min_block_size_(min_block_size),
- split_threshold_(split_threshold),
- num_blocks_(0),
- split_(split),
- histograms_(histograms),
- target_block_size_(min_block_size),
- block_size_(0),
- curr_histogram_ix_(0),
- last_entropy_(2 * num_contexts),
- merge_last_count_(0) {
- size_t max_num_blocks = num_symbols / min_block_size + 1;
- // We have to allocate one more histogram than the maximum number of block
- // types for the current histogram when the meta-block is too big.
- size_t max_num_types = std::min(max_num_blocks, max_block_types_ + 1);
- split_->lengths.resize(max_num_blocks);
- split_->types.resize(max_num_blocks);
- histograms_->resize(max_num_types * num_contexts);
- last_histogram_ix_[0] = last_histogram_ix_[1] = 0;
- }
-
- // Adds the next symbol to the current block type and context. When the
- // current block reaches the target size, decides on merging the block.
- void AddSymbol(size_t symbol, size_t context) {
- (*histograms_)[curr_histogram_ix_ + context].Add(symbol);
- ++block_size_;
- if (block_size_ == target_block_size_) {
- FinishBlock(/* is_final = */ false);
- }
- }
-
- // Does either of three things:
- // (1) emits the current block with a new block type;
- // (2) emits the current block with the type of the second last block;
- // (3) merges the current block with the last block.
- void FinishBlock(bool is_final) {
- if (block_size_ < min_block_size_) {
- block_size_ = min_block_size_;
- }
- if (num_blocks_ == 0) {
- // Create first block.
- split_->lengths[0] = static_cast<uint32_t>(block_size_);
- split_->types[0] = 0;
- for (size_t i = 0; i < num_contexts_; ++i) {
- last_entropy_[i] =
- BitsEntropy(&(*histograms_)[i].data_[0], alphabet_size_);
- last_entropy_[num_contexts_ + i] = last_entropy_[i];
- }
- ++num_blocks_;
- ++split_->num_types;
- curr_histogram_ix_ += num_contexts_;
- block_size_ = 0;
- } else if (block_size_ > 0) {
- // Try merging the set of histograms for the current block type with the
- // respective set of histograms for the last and second last block types.
- // Decide over the split based on the total reduction of entropy across
- // all contexts.
- std::vector<double> entropy(num_contexts_);
- std::vector<HistogramType> combined_histo(2 * num_contexts_);
- std::vector<double> combined_entropy(2 * num_contexts_);
- double diff[2] = { 0.0 };
- for (size_t i = 0; i < num_contexts_; ++i) {
- size_t curr_histo_ix = curr_histogram_ix_ + i;
- entropy[i] = BitsEntropy(&(*histograms_)[curr_histo_ix].data_[0],
- alphabet_size_);
- for (size_t j = 0; j < 2; ++j) {
- size_t jx = j * num_contexts_ + i;
- size_t last_histogram_ix = last_histogram_ix_[j] + i;
- combined_histo[jx] = (*histograms_)[curr_histo_ix];
- combined_histo[jx].AddHistogram((*histograms_)[last_histogram_ix]);
- combined_entropy[jx] = BitsEntropy(
- &combined_histo[jx].data_[0], alphabet_size_);
- diff[j] += combined_entropy[jx] - entropy[i] - last_entropy_[jx];
- }
- }
-
- if (split_->num_types < max_block_types_ &&
- diff[0] > split_threshold_ &&
- diff[1] > split_threshold_) {
- // Create new block.
- split_->lengths[num_blocks_] = static_cast<uint32_t>(block_size_);
- split_->types[num_blocks_] = static_cast<uint8_t>(split_->num_types);
- last_histogram_ix_[1] = last_histogram_ix_[0];
- last_histogram_ix_[0] = split_->num_types * num_contexts_;
- for (size_t i = 0; i < num_contexts_; ++i) {
- last_entropy_[num_contexts_ + i] = last_entropy_[i];
- last_entropy_[i] = entropy[i];
- }
- ++num_blocks_;
- ++split_->num_types;
- curr_histogram_ix_ += num_contexts_;
- block_size_ = 0;
- merge_last_count_ = 0;
- target_block_size_ = min_block_size_;
- } else if (diff[1] < diff[0] - 20.0) {
- // Combine this block with second last block.
- split_->lengths[num_blocks_] = static_cast<uint32_t>(block_size_);
- split_->types[num_blocks_] = split_->types[num_blocks_ - 2];
- std::swap(last_histogram_ix_[0], last_histogram_ix_[1]);
- for (size_t i = 0; i < num_contexts_; ++i) {
- (*histograms_)[last_histogram_ix_[0] + i] =
- combined_histo[num_contexts_ + i];
- last_entropy_[num_contexts_ + i] = last_entropy_[i];
- last_entropy_[i] = combined_entropy[num_contexts_ + i];
- (*histograms_)[curr_histogram_ix_ + i].Clear();
- }
- ++num_blocks_;
- block_size_ = 0;
- merge_last_count_ = 0;
- target_block_size_ = min_block_size_;
- } else {
- // Combine this block with last block.
- split_->lengths[num_blocks_ - 1] += static_cast<uint32_t>(block_size_);
- for (size_t i = 0; i < num_contexts_; ++i) {
- (*histograms_)[last_histogram_ix_[0] + i] = combined_histo[i];
- last_entropy_[i] = combined_entropy[i];
- if (split_->num_types == 1) {
- last_entropy_[num_contexts_ + i] = last_entropy_[i];
- }
- (*histograms_)[curr_histogram_ix_ + i].Clear();
- }
- block_size_ = 0;
- if (++merge_last_count_ > 1) {
- target_block_size_ += min_block_size_;
- }
- }
- }
- if (is_final) {
- (*histograms_).resize(split_->num_types * num_contexts_);
- split_->types.resize(num_blocks_);
- split_->lengths.resize(num_blocks_);
- }
- }
-
- private:
- static const int kMaxBlockTypes = 256;
-
- // Alphabet size of particular block category.
- const size_t alphabet_size_;
- const size_t num_contexts_;
- const size_t max_block_types_;
- // We collect at least this many symbols for each block.
- const size_t min_block_size_;
- // We merge histograms A and B if
- // entropy(A+B) < entropy(A) + entropy(B) + split_threshold_,
- // where A is the current histogram and B is the histogram of the last or the
- // second last block type.
- const double split_threshold_;
-
- size_t num_blocks_;
- BlockSplit* split_; // not owned
- std::vector<HistogramType>* histograms_; // not owned
-
- // The number of symbols that we want to collect before deciding on whether
- // or not to merge the block with a previous one or emit a new block.
- size_t target_block_size_;
- // The number of symbols in the current histogram.
- size_t block_size_;
- // Offset of the current histogram.
- size_t curr_histogram_ix_;
- // Offset of the histograms of the previous two block types.
- size_t last_histogram_ix_[2];
- // Entropy of the previous two block types.
- std::vector<double> last_entropy_;
- // The number of times we merged the current block with the last one.
- size_t merge_last_count_;
-};
-
-void BuildMetaBlockGreedyWithContexts(const uint8_t* ringbuffer,
- size_t pos,
- size_t mask,
- uint8_t prev_byte,
- uint8_t prev_byte2,
- ContextType literal_context_mode,
- size_t num_contexts,
- const uint32_t* static_context_map,
- const Command *commands,
- size_t n_commands,
- MetaBlockSplit* mb) {
- size_t num_literals = 0;
- for (size_t i = 0; i < n_commands; ++i) {
- num_literals += commands[i].insert_len_;
- }
-
- ContextBlockSplitter<HistogramLiteral> lit_blocks(
- 256, num_contexts, 512, 400.0, num_literals,
- &mb->literal_split, &mb->literal_histograms);
- BlockSplitter<HistogramCommand> cmd_blocks(
- kNumCommandPrefixes, 1024, 500.0, n_commands,
- &mb->command_split, &mb->command_histograms);
- BlockSplitter<HistogramDistance> dist_blocks(
- 64, 512, 100.0, n_commands,
- &mb->distance_split, &mb->distance_histograms);
-
- for (size_t i = 0; i < n_commands; ++i) {
- const Command cmd = commands[i];
- cmd_blocks.AddSymbol(cmd.cmd_prefix_);
- for (size_t j = cmd.insert_len_; j != 0; --j) {
- size_t context = Context(prev_byte, prev_byte2, literal_context_mode);
- uint8_t literal = ringbuffer[pos & mask];
- lit_blocks.AddSymbol(literal, static_context_map[context]);
- prev_byte2 = prev_byte;
- prev_byte = literal;
- ++pos;
- }
- pos += cmd.copy_len();
- if (cmd.copy_len()) {
- prev_byte2 = ringbuffer[(pos - 2) & mask];
- prev_byte = ringbuffer[(pos - 1) & mask];
- if (cmd.cmd_prefix_ >= 128) {
- dist_blocks.AddSymbol(cmd.dist_prefix_);
- }
- }
- }
-
- lit_blocks.FinishBlock(/* is_final = */ true);
- cmd_blocks.FinishBlock(/* is_final = */ true);
- dist_blocks.FinishBlock(/* is_final = */ true);
-
- mb->literal_context_map.resize(
- mb->literal_split.num_types << kLiteralContextBits);
- for (size_t i = 0; i < mb->literal_split.num_types; ++i) {
- for (size_t j = 0; j < (1u << kLiteralContextBits); ++j) {
- mb->literal_context_map[(i << kLiteralContextBits) + j] =
- static_cast<uint32_t>(i * num_contexts) + static_context_map[j];
- }
- }
-}
-
-void OptimizeHistograms(size_t num_direct_distance_codes,
- size_t distance_postfix_bits,
- MetaBlockSplit* mb) {
- uint8_t* good_for_rle = new uint8_t[kNumCommandPrefixes];
- for (size_t i = 0; i < mb->literal_histograms.size(); ++i) {
- OptimizeHuffmanCountsForRle(256, &mb->literal_histograms[i].data_[0],
- good_for_rle);
- }
- for (size_t i = 0; i < mb->command_histograms.size(); ++i) {
- OptimizeHuffmanCountsForRle(kNumCommandPrefixes,
- &mb->command_histograms[i].data_[0],
- good_for_rle);
- }
- size_t num_distance_codes =
- kNumDistanceShortCodes + num_direct_distance_codes +
- (48u << distance_postfix_bits);
- for (size_t i = 0; i < mb->distance_histograms.size(); ++i) {
- OptimizeHuffmanCountsForRle(num_distance_codes,
- &mb->distance_histograms[i].data_[0],
- good_for_rle);
- }
- delete[] good_for_rle;
-}
-
-} // namespace brotli
diff --git a/thirdparty/brotli/enc/metablock.h b/thirdparty/brotli/enc/metablock.h
index d1928850..4e128232 100644
--- a/thirdparty/brotli/enc/metablock.h
+++ b/thirdparty/brotli/enc/metablock.h
@@ -4,77 +4,107 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Algorithms for distributing the literals and commands of a metablock between
-// block types and contexts.
+/* Algorithms for distributing the literals and commands of a metablock between
+ block types and contexts. */
#ifndef BROTLI_ENC_METABLOCK_H_
#define BROTLI_ENC_METABLOCK_H_
-#include <vector>
-
+#include "../common/types.h"
+#include "./block_splitter.h"
#include "./command.h"
+#include "./context.h"
#include "./histogram.h"
+#include "./memory.h"
+#include "./port.h"
+#include "./quality.h"
-namespace brotli {
-
-struct BlockSplit {
- BlockSplit(void) : num_types(0) {}
-
- size_t num_types;
- std::vector<uint8_t> types;
- std::vector<uint32_t> lengths;
-};
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
-struct MetaBlockSplit {
+typedef struct MetaBlockSplit {
BlockSplit literal_split;
BlockSplit command_split;
BlockSplit distance_split;
- std::vector<uint32_t> literal_context_map;
- std::vector<uint32_t> distance_context_map;
- std::vector<HistogramLiteral> literal_histograms;
- std::vector<HistogramCommand> command_histograms;
- std::vector<HistogramDistance> distance_histograms;
-};
+ uint32_t* literal_context_map;
+ size_t literal_context_map_size;
+ uint32_t* distance_context_map;
+ size_t distance_context_map_size;
+ HistogramLiteral* literal_histograms;
+ size_t literal_histograms_size;
+ HistogramCommand* command_histograms;
+ size_t command_histograms_size;
+ HistogramDistance* distance_histograms;
+ size_t distance_histograms_size;
+} MetaBlockSplit;
+
+static BROTLI_INLINE void InitMetaBlockSplit(MetaBlockSplit* mb) {
+ BrotliInitBlockSplit(&mb->literal_split);
+ BrotliInitBlockSplit(&mb->command_split);
+ BrotliInitBlockSplit(&mb->distance_split);
+ mb->literal_context_map = 0;
+ mb->literal_context_map_size = 0;
+ mb->distance_context_map = 0;
+ mb->distance_context_map_size = 0;
+ mb->literal_histograms = 0;
+ mb->literal_histograms_size = 0;
+ mb->command_histograms = 0;
+ mb->command_histograms_size = 0;
+ mb->distance_histograms = 0;
+ mb->distance_histograms_size = 0;
+}
+
+static BROTLI_INLINE void DestroyMetaBlockSplit(
+ MemoryManager* m, MetaBlockSplit* mb) {
+ BrotliDestroyBlockSplit(m, &mb->literal_split);
+ BrotliDestroyBlockSplit(m, &mb->command_split);
+ BrotliDestroyBlockSplit(m, &mb->distance_split);
+ BROTLI_FREE(m, mb->literal_context_map);
+ BROTLI_FREE(m, mb->distance_context_map);
+ BROTLI_FREE(m, mb->literal_histograms);
+ BROTLI_FREE(m, mb->command_histograms);
+ BROTLI_FREE(m, mb->distance_histograms);
+}
-// Uses the slow shortest-path block splitter and does context clustering.
-void BuildMetaBlock(const uint8_t* ringbuffer,
- const size_t pos,
- const size_t mask,
- uint8_t prev_byte,
- uint8_t prev_byte2,
- const Command* cmds,
- size_t num_commands,
- ContextType literal_context_mode,
- MetaBlockSplit* mb);
+/* Uses the slow shortest-path block splitter and does context clustering. */
+BROTLI_INTERNAL void BrotliBuildMetaBlock(MemoryManager* m,
+ const uint8_t* ringbuffer,
+ const size_t pos,
+ const size_t mask,
+ const BrotliEncoderParams* params,
+ uint8_t prev_byte,
+ uint8_t prev_byte2,
+ const Command* cmds,
+ size_t num_commands,
+ ContextType literal_context_mode,
+ MetaBlockSplit* mb);
-// Uses a fast greedy block splitter that tries to merge current block with the
-// last or the second last block and does not do any context modeling.
-void BuildMetaBlockGreedy(const uint8_t* ringbuffer,
- size_t pos,
- size_t mask,
- const Command *commands,
- size_t n_commands,
- MetaBlockSplit* mb);
+/* Uses a fast greedy block splitter that tries to merge current block with the
+ last or the second last block and does not do any context modeling. */
+BROTLI_INTERNAL void BrotliBuildMetaBlockGreedy(MemoryManager* m,
+ const uint8_t* ringbuffer,
+ size_t pos,
+ size_t mask,
+ const Command* commands,
+ size_t n_commands,
+ MetaBlockSplit* mb);
-// Uses a fast greedy block splitter that tries to merge current block with the
-// last or the second last block and uses a static context clustering which
-// is the same for all block types.
-void BuildMetaBlockGreedyWithContexts(const uint8_t* ringbuffer,
- size_t pos,
- size_t mask,
- uint8_t prev_byte,
- uint8_t prev_byte2,
- ContextType literal_context_mode,
- size_t num_contexts,
- const uint32_t* static_context_map,
- const Command *commands,
- size_t n_commands,
- MetaBlockSplit* mb);
+/* Uses a fast greedy block splitter that tries to merge current block with the
+ last or the second last block and uses a static context clustering which
+ is the same for all block types. */
+BROTLI_INTERNAL void BrotliBuildMetaBlockGreedyWithContexts(
+ MemoryManager* m, const uint8_t* ringbuffer, size_t pos, size_t mask,
+ uint8_t prev_byte, uint8_t prev_byte2, ContextType literal_context_mode,
+ size_t num_contexts, const uint32_t* static_context_map,
+ const Command* commands, size_t n_commands, MetaBlockSplit* mb);
-void OptimizeHistograms(size_t num_direct_distance_codes,
- size_t distance_postfix_bits,
- MetaBlockSplit* mb);
+BROTLI_INTERNAL void BrotliOptimizeHistograms(size_t num_direct_distance_codes,
+ size_t distance_postfix_bits,
+ MetaBlockSplit* mb);
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_METABLOCK_H_
+#endif /* BROTLI_ENC_METABLOCK_H_ */
diff --git a/thirdparty/brotli/enc/metablock_inc.h b/thirdparty/brotli/enc/metablock_inc.h
new file mode 100644
index 00000000..c8bfb812
--- /dev/null
+++ b/thirdparty/brotli/enc/metablock_inc.h
@@ -0,0 +1,183 @@
+/* NOLINT(build/header_guard) */
+/* Copyright 2015 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* template parameters: FN */
+
+#define HistogramType FN(Histogram)
+
+/* Greedy block splitter for one block category (literal, command or distance).
+*/
+typedef struct FN(BlockSplitter) {
+ /* Alphabet size of particular block category. */
+ size_t alphabet_size_;
+ /* We collect at least this many symbols for each block. */
+ size_t min_block_size_;
+ /* We merge histograms A and B if
+ entropy(A+B) < entropy(A) + entropy(B) + split_threshold_,
+ where A is the current histogram and B is the histogram of the last or the
+ second last block type. */
+ double split_threshold_;
+
+ size_t num_blocks_;
+ BlockSplit* split_; /* not owned */
+ HistogramType* histograms_; /* not owned */
+ size_t* histograms_size_; /* not owned */
+
+ /* The number of symbols that we want to collect before deciding on whether
+ or not to merge the block with a previous one or emit a new block. */
+ size_t target_block_size_;
+ /* The number of symbols in the current histogram. */
+ size_t block_size_;
+ /* Offset of the current histogram. */
+ size_t curr_histogram_ix_;
+ /* Offset of the histograms of the previous two block types. */
+ size_t last_histogram_ix_[2];
+ /* Entropy of the previous two block types. */
+ double last_entropy_[2];
+ /* The number of times we merged the current block with the last one. */
+ size_t merge_last_count_;
+} FN(BlockSplitter);
+
+static void FN(InitBlockSplitter)(
+ MemoryManager* m, FN(BlockSplitter)* self, size_t alphabet_size,
+ size_t min_block_size, double split_threshold, size_t num_symbols,
+ BlockSplit* split, HistogramType** histograms, size_t* histograms_size) {
+ size_t max_num_blocks = num_symbols / min_block_size + 1;
+ /* We have to allocate one more histogram than the maximum number of block
+ types for the current histogram when the meta-block is too big. */
+ size_t max_num_types =
+ BROTLI_MIN(size_t, max_num_blocks, BROTLI_MAX_NUMBER_OF_BLOCK_TYPES + 1);
+ self->alphabet_size_ = alphabet_size;
+ self->min_block_size_ = min_block_size;
+ self->split_threshold_ = split_threshold;
+ self->num_blocks_ = 0;
+ self->split_ = split;
+ self->histograms_size_ = histograms_size;
+ self->target_block_size_ = min_block_size;
+ self->block_size_ = 0;
+ self->curr_histogram_ix_ = 0;
+ self->merge_last_count_ = 0;
+ BROTLI_ENSURE_CAPACITY(m, uint8_t,
+ split->types, split->types_alloc_size, max_num_blocks);
+ BROTLI_ENSURE_CAPACITY(m, uint32_t,
+ split->lengths, split->lengths_alloc_size, max_num_blocks);
+ if (BROTLI_IS_OOM(m)) return;
+ self->split_->num_blocks = max_num_blocks;
+ assert(*histograms == 0);
+ *histograms_size = max_num_types;
+ *histograms = BROTLI_ALLOC(m, HistogramType, *histograms_size);
+ self->histograms_ = *histograms;
+ if (BROTLI_IS_OOM(m)) return;
+ /* Clear only current histogram. */
+ FN(HistogramClear)(&self->histograms_[0]);
+ self->last_histogram_ix_[0] = self->last_histogram_ix_[1] = 0;
+}
+
+/* Does either of three things:
+ (1) emits the current block with a new block type;
+ (2) emits the current block with the type of the second last block;
+ (3) merges the current block with the last block. */
+static void FN(BlockSplitterFinishBlock)(
+ FN(BlockSplitter)* self, BROTLI_BOOL is_final) {
+ BlockSplit* split = self->split_;
+ double* last_entropy = self->last_entropy_;
+ HistogramType* histograms = self->histograms_;
+ self->block_size_ =
+ BROTLI_MAX(size_t, self->block_size_, self->min_block_size_);
+ if (self->num_blocks_ == 0) {
+ /* Create first block. */
+ split->lengths[0] = (uint32_t)self->block_size_;
+ split->types[0] = 0;
+ last_entropy[0] =
+ BitsEntropy(histograms[0].data_, self->alphabet_size_);
+ last_entropy[1] = last_entropy[0];
+ ++self->num_blocks_;
+ ++split->num_types;
+ ++self->curr_histogram_ix_;
+ if (self->curr_histogram_ix_ < *self->histograms_size_)
+ FN(HistogramClear)(&histograms[self->curr_histogram_ix_]);
+ self->block_size_ = 0;
+ } else if (self->block_size_ > 0) {
+ double entropy = BitsEntropy(histograms[self->curr_histogram_ix_].data_,
+ self->alphabet_size_);
+ HistogramType combined_histo[2];
+ double combined_entropy[2];
+ double diff[2];
+ size_t j;
+ for (j = 0; j < 2; ++j) {
+ size_t last_histogram_ix = self->last_histogram_ix_[j];
+ combined_histo[j] = histograms[self->curr_histogram_ix_];
+ FN(HistogramAddHistogram)(&combined_histo[j],
+ &histograms[last_histogram_ix]);
+ combined_entropy[j] = BitsEntropy(
+ &combined_histo[j].data_[0], self->alphabet_size_);
+ diff[j] = combined_entropy[j] - entropy - last_entropy[j];
+ }
+
+ if (split->num_types < BROTLI_MAX_NUMBER_OF_BLOCK_TYPES &&
+ diff[0] > self->split_threshold_ &&
+ diff[1] > self->split_threshold_) {
+ /* Create new block. */
+ split->lengths[self->num_blocks_] = (uint32_t)self->block_size_;
+ split->types[self->num_blocks_] = (uint8_t)split->num_types;
+ self->last_histogram_ix_[1] = self->last_histogram_ix_[0];
+ self->last_histogram_ix_[0] = (uint8_t)split->num_types;
+ last_entropy[1] = last_entropy[0];
+ last_entropy[0] = entropy;
+ ++self->num_blocks_;
+ ++split->num_types;
+ ++self->curr_histogram_ix_;
+ if (self->curr_histogram_ix_ < *self->histograms_size_)
+ FN(HistogramClear)(&histograms[self->curr_histogram_ix_]);
+ self->block_size_ = 0;
+ self->merge_last_count_ = 0;
+ self->target_block_size_ = self->min_block_size_;
+ } else if (diff[1] < diff[0] - 20.0) {
+ /* Combine this block with second last block. */
+ split->lengths[self->num_blocks_] = (uint32_t)self->block_size_;
+ split->types[self->num_blocks_] = split->types[self->num_blocks_ - 2];
+ BROTLI_SWAP(size_t, self->last_histogram_ix_, 0, 1);
+ histograms[self->last_histogram_ix_[0]] = combined_histo[1];
+ last_entropy[1] = last_entropy[0];
+ last_entropy[0] = combined_entropy[1];
+ ++self->num_blocks_;
+ self->block_size_ = 0;
+ FN(HistogramClear)(&histograms[self->curr_histogram_ix_]);
+ self->merge_last_count_ = 0;
+ self->target_block_size_ = self->min_block_size_;
+ } else {
+ /* Combine this block with last block. */
+ split->lengths[self->num_blocks_ - 1] += (uint32_t)self->block_size_;
+ histograms[self->last_histogram_ix_[0]] = combined_histo[0];
+ last_entropy[0] = combined_entropy[0];
+ if (split->num_types == 1) {
+ last_entropy[1] = last_entropy[0];
+ }
+ self->block_size_ = 0;
+ FN(HistogramClear)(&histograms[self->curr_histogram_ix_]);
+ if (++self->merge_last_count_ > 1) {
+ self->target_block_size_ += self->min_block_size_;
+ }
+ }
+ }
+ if (is_final) {
+ *self->histograms_size_ = split->num_types;
+ split->num_blocks = self->num_blocks_;
+ }
+}
+
+/* Adds the next symbol to the current histogram. When the current histogram
+ reaches the target size, decides on merging the block. */
+static void FN(BlockSplitterAddSymbol)(FN(BlockSplitter)* self, size_t symbol) {
+ FN(HistogramAdd)(&self->histograms_[self->curr_histogram_ix_], symbol);
+ ++self->block_size_;
+ if (self->block_size_ == self->target_block_size_) {
+ FN(BlockSplitterFinishBlock)(self, /* is_final = */ BROTLI_FALSE);
+ }
+}
+
+#undef HistogramType
diff --git a/thirdparty/brotli/enc/port.h b/thirdparty/brotli/enc/port.h
index e73df63a..cd908ec2 100644
--- a/thirdparty/brotli/enc/port.h
+++ b/thirdparty/brotli/enc/port.h
@@ -4,14 +4,16 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Macros for endianness, branch prediction and unaligned loads and stores.
+/* Macros for endianness, branch prediction and unaligned loads and stores. */
#ifndef BROTLI_ENC_PORT_H_
#define BROTLI_ENC_PORT_H_
#include <assert.h>
-#include <string.h>
-#include "./types.h"
+#include <string.h> /* memcpy */
+
+#include "../common/port.h"
+#include "../common/types.h"
#if defined OS_LINUX || defined OS_CYGWIN
#include <endian.h>
@@ -24,9 +26,9 @@
#define __LITTLE_ENDIAN LITTLE_ENDIAN
#endif
-// define the macro IS_LITTLE_ENDIAN
-// using the above endian definitions from endian.h if
-// endian.h was included
+/* define the macro IS_LITTLE_ENDIAN
+ using the above endian definitions from endian.h if
+ endian.h was included */
#ifdef __BYTE_ORDER
#if __BYTE_ORDER == __LITTLE_ENDIAN
#define IS_LITTLE_ENDIAN
@@ -37,49 +39,36 @@
#if defined(__LITTLE_ENDIAN__)
#define IS_LITTLE_ENDIAN
#endif
-#endif // __BYTE_ORDER
+#endif /* __BYTE_ORDER */
#if defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
#define IS_LITTLE_ENDIAN
#endif
-// Enable little-endian optimization for x64 architecture on Windows.
+/* Enable little-endian optimization for x64 architecture on Windows. */
#if (defined(_WIN32) || defined(_WIN64)) && defined(_M_X64)
#define IS_LITTLE_ENDIAN
#endif
-/* Compatibility with non-clang compilers. */
-#ifndef __has_builtin
-#define __has_builtin(x) 0
-#endif
-
-#if (__GNUC__ > 2) || (__GNUC__ == 2 && __GNUC_MINOR__ > 95) || \
- (defined(__llvm__) && __has_builtin(__builtin_expect))
-#define PREDICT_FALSE(x) (__builtin_expect(x, 0))
-#define PREDICT_TRUE(x) (__builtin_expect(!!(x), 1))
-#else
-#define PREDICT_FALSE(x) (x)
-#define PREDICT_TRUE(x) (x)
-#endif
-
-// Portable handling of unaligned loads, stores, and copies.
-// On some platforms, like ARM, the copy functions can be more efficient
-// then a load and a store.
+/* Portable handling of unaligned loads, stores, and copies.
+ On some platforms, like ARM, the copy functions can be more efficient
+ then a load and a store. */
#if defined(ARCH_PIII) || \
defined(ARCH_ATHLON) || defined(ARCH_K8) || defined(_ARCH_PPC)
-// x86 and x86-64 can perform unaligned loads/stores directly;
-// modern PowerPC hardware can also do unaligned integer loads and stores;
-// but note: the FPU still sends unaligned loads and stores to a trap handler!
+/* x86 and x86-64 can perform unaligned loads/stores directly;
+ modern PowerPC hardware can also do unaligned integer loads and stores;
+ but note: the FPU still sends unaligned loads and stores to a trap handler!
+*/
-#define BROTLI_UNALIGNED_LOAD32(_p) (*reinterpret_cast<const uint32_t *>(_p))
-#define BROTLI_UNALIGNED_LOAD64(_p) (*reinterpret_cast<const uint64_t *>(_p))
+#define BROTLI_UNALIGNED_LOAD32(_p) (*(const uint32_t *)(_p))
+#define BROTLI_UNALIGNED_LOAD64(_p) (*(const uint64_t *)(_p))
#define BROTLI_UNALIGNED_STORE32(_p, _val) \
- (*reinterpret_cast<uint32_t *>(_p) = (_val))
+ (*(uint32_t *)(_p) = (_val))
#define BROTLI_UNALIGNED_STORE64(_p, _val) \
- (*reinterpret_cast<uint64_t *>(_p) = (_val))
+ (*(uint64_t *)(_p) = (_val))
#elif defined(__arm__) && \
!defined(__ARM_ARCH_5__) && \
@@ -93,50 +82,87 @@
!defined(__ARM_ARCH_6ZK__) && \
!defined(__ARM_ARCH_6T2__)
-// ARMv7 and newer support native unaligned accesses, but only of 16-bit
-// and 32-bit values (not 64-bit); older versions either raise a fatal signal,
-// do an unaligned read and rotate the words around a bit, or do the reads very
-// slowly (trip through kernel mode).
+/* ARMv7 and newer support native unaligned accesses, but only of 16-bit
+ and 32-bit values (not 64-bit); older versions either raise a fatal signal,
+ do an unaligned read and rotate the words around a bit, or do the reads very
+ slowly (trip through kernel mode). */
-#define BROTLI_UNALIGNED_LOAD32(_p) (*reinterpret_cast<const uint32_t *>(_p))
+#define BROTLI_UNALIGNED_LOAD32(_p) (*(const uint32_t *)(_p))
#define BROTLI_UNALIGNED_STORE32(_p, _val) \
- (*reinterpret_cast<uint32_t *>(_p) = (_val))
+ (*(uint32_t *)(_p) = (_val))
-inline uint64_t BROTLI_UNALIGNED_LOAD64(const void *p) {
+static BROTLI_INLINE uint64_t BROTLI_UNALIGNED_LOAD64(const void *p) {
uint64_t t;
memcpy(&t, p, sizeof t);
return t;
}
-inline void BROTLI_UNALIGNED_STORE64(void *p, uint64_t v) {
+static BROTLI_INLINE void BROTLI_UNALIGNED_STORE64(void *p, uint64_t v) {
memcpy(p, &v, sizeof v);
}
#else
-// These functions are provided for architectures that don't support
-// unaligned loads and stores.
+/* These functions are provided for architectures that don't support */
+/* unaligned loads and stores. */
-inline uint32_t BROTLI_UNALIGNED_LOAD32(const void *p) {
+static BROTLI_INLINE uint32_t BROTLI_UNALIGNED_LOAD32(const void *p) {
uint32_t t;
memcpy(&t, p, sizeof t);
return t;
}
-inline uint64_t BROTLI_UNALIGNED_LOAD64(const void *p) {
+static BROTLI_INLINE uint64_t BROTLI_UNALIGNED_LOAD64(const void *p) {
uint64_t t;
memcpy(&t, p, sizeof t);
return t;
}
-inline void BROTLI_UNALIGNED_STORE32(void *p, uint32_t v) {
+static BROTLI_INLINE void BROTLI_UNALIGNED_STORE32(void *p, uint32_t v) {
memcpy(p, &v, sizeof v);
}
-inline void BROTLI_UNALIGNED_STORE64(void *p, uint64_t v) {
+static BROTLI_INLINE void BROTLI_UNALIGNED_STORE64(void *p, uint64_t v) {
memcpy(p, &v, sizeof v);
}
#endif
-#endif // BROTLI_ENC_PORT_H_
+#if !defined(__cplusplus) && !defined(c_plusplus) && __STDC_VERSION__ >= 199901L
+#define BROTLI_RESTRICT restrict
+#elif BROTLI_GCC_VERSION > 295 || defined(__llvm__)
+#define BROTLI_RESTRICT __restrict
+#else
+#define BROTLI_RESTRICT
+#endif
+
+#define _TEMPLATE(T) \
+ static BROTLI_INLINE T brotli_min_ ## T (T a, T b) { return a < b ? a : b; } \
+ static BROTLI_INLINE T brotli_max_ ## T (T a, T b) { return a > b ? a : b; }
+_TEMPLATE(double) _TEMPLATE(float) _TEMPLATE(int)
+_TEMPLATE(size_t) _TEMPLATE(uint32_t) _TEMPLATE(uint8_t)
+#undef _TEMPLATE
+#define BROTLI_MIN(T, A, B) (brotli_min_ ## T((A), (B)))
+#define BROTLI_MAX(T, A, B) (brotli_max_ ## T((A), (B)))
+
+#define BROTLI_SWAP(T, A, I, J) { \
+ T __brotli_swap_tmp = (A)[(I)]; \
+ (A)[(I)] = (A)[(J)]; \
+ (A)[(J)] = __brotli_swap_tmp; \
+}
+
+#define BROTLI_ENSURE_CAPACITY(M, T, A, C, R) { \
+ if (C < (R)) { \
+ size_t _new_size = (C == 0) ? (R) : C; \
+ T* new_array; \
+ while (_new_size < (R)) _new_size *= 2; \
+ new_array = BROTLI_ALLOC((M), T, _new_size); \
+ if (!BROTLI_IS_OOM(m) && C != 0) \
+ memcpy(new_array, A, C * sizeof(T)); \
+ BROTLI_FREE((M), A); \
+ A = new_array; \
+ C = _new_size; \
+ } \
+}
+
+#endif /* BROTLI_ENC_PORT_H_ */
diff --git a/thirdparty/brotli/enc/prefix.h b/thirdparty/brotli/enc/prefix.h
index 86fff8d5..2bc0d198 100644
--- a/thirdparty/brotli/enc/prefix.h
+++ b/thirdparty/brotli/enc/prefix.h
@@ -4,76 +4,49 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Functions for encoding of integers into prefix codes the amount of extra
-// bits, and the actual values of the extra bits.
+/* Functions for encoding of integers into prefix codes the amount of extra
+ bits, and the actual values of the extra bits. */
#ifndef BROTLI_ENC_PREFIX_H_
#define BROTLI_ENC_PREFIX_H_
+#include "../common/constants.h"
+#include "../common/port.h"
+#include "../common/types.h"
#include "./fast_log.h"
-#include "./types.h"
-namespace brotli {
-
-static const uint32_t kNumInsertLenPrefixes = 24;
-static const uint32_t kNumCopyLenPrefixes = 24;
-static const uint32_t kNumCommandPrefixes = 704;
-static const uint32_t kNumBlockLenPrefixes = 26;
-static const uint32_t kNumDistanceShortCodes = 16;
-static const uint32_t kNumDistancePrefixes = 520;
-
-// Represents the range of values belonging to a prefix code:
-// [offset, offset + 2^nbits)
-struct PrefixCodeRange {
- uint32_t offset;
- uint32_t nbits;
-};
-
-static const PrefixCodeRange kBlockLengthPrefixCode[kNumBlockLenPrefixes] = {
- { 1, 2}, { 5, 2}, { 9, 2}, { 13, 2},
- { 17, 3}, { 25, 3}, { 33, 3}, { 41, 3},
- { 49, 4}, { 65, 4}, { 81, 4}, { 97, 4},
- { 113, 5}, { 145, 5}, { 177, 5}, { 209, 5},
- { 241, 6}, { 305, 6}, { 369, 7}, { 497, 8},
- { 753, 9}, { 1265, 10}, {2289, 11}, {4337, 12},
- {8433, 13}, {16625, 24}
-};
-
-inline void GetBlockLengthPrefixCode(uint32_t len, uint32_t* code,
- uint32_t* n_extra, uint32_t* extra) {
- *code = 0;
- while (*code < 25 && len >= kBlockLengthPrefixCode[*code + 1].offset) {
- ++(*code);
- }
- *n_extra = kBlockLengthPrefixCode[*code].nbits;
- *extra = len - kBlockLengthPrefixCode[*code].offset;
-}
-
-inline void PrefixEncodeCopyDistance(size_t distance_code,
- size_t num_direct_codes,
- size_t postfix_bits,
- uint16_t* code,
- uint32_t* extra_bits) {
- if (distance_code < kNumDistanceShortCodes + num_direct_codes) {
- *code = static_cast<uint16_t>(distance_code);
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+static BROTLI_INLINE void PrefixEncodeCopyDistance(size_t distance_code,
+ size_t num_direct_codes,
+ size_t postfix_bits,
+ uint16_t* code,
+ uint32_t* extra_bits) {
+ if (distance_code < BROTLI_NUM_DISTANCE_SHORT_CODES + num_direct_codes) {
+ *code = (uint16_t)distance_code;
*extra_bits = 0;
return;
+ } else {
+ size_t dist = ((size_t)1 << (postfix_bits + 2u)) +
+ (distance_code - BROTLI_NUM_DISTANCE_SHORT_CODES - num_direct_codes);
+ size_t bucket = Log2FloorNonZero(dist) - 1;
+ size_t postfix_mask = (1u << postfix_bits) - 1;
+ size_t postfix = dist & postfix_mask;
+ size_t prefix = (dist >> bucket) & 1;
+ size_t offset = (2 + prefix) << bucket;
+ size_t nbits = bucket - postfix_bits;
+ *code = (uint16_t)(
+ (BROTLI_NUM_DISTANCE_SHORT_CODES + num_direct_codes +
+ ((2 * (nbits - 1) + prefix) << postfix_bits) + postfix));
+ *extra_bits = (uint32_t)(
+ (nbits << 24) | ((dist - offset) >> postfix_bits));
}
- distance_code -= kNumDistanceShortCodes + num_direct_codes; /* >= 0 */
- distance_code += (1u << (postfix_bits + 2u)); /* > 0 */
- size_t bucket = Log2FloorNonZero(distance_code) - 1;
- size_t postfix_mask = (1 << postfix_bits) - 1;
- size_t postfix = distance_code & postfix_mask;
- size_t prefix = (distance_code >> bucket) & 1;
- size_t offset = (2 + prefix) << bucket;
- size_t nbits = bucket - postfix_bits;
- *code = static_cast<uint16_t>(
- (kNumDistanceShortCodes + num_direct_codes +
- ((2 * (nbits - 1) + prefix) << postfix_bits) + postfix));
- *extra_bits = static_cast<uint32_t>(
- (nbits << 24) | ((distance_code - offset) >> postfix_bits));
}
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_PREFIX_H_
+#endif /* BROTLI_ENC_PREFIX_H_ */
diff --git a/thirdparty/brotli/enc/quality.h b/thirdparty/brotli/enc/quality.h
new file mode 100755
index 00000000..770747ee
--- /dev/null
+++ b/thirdparty/brotli/enc/quality.h
@@ -0,0 +1,130 @@
+/* Copyright 2016 Google Inc. All Rights Reserved.
+
+ Distributed under MIT license.
+ See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
+*/
+
+/* Constants and formulas that affect speed-ratio trade-offs and thus define
+ quality levels. */
+
+#ifndef BROTLI_ENC_QUALITY_H_
+#define BROTLI_ENC_QUALITY_H_
+
+#include "./encode.h"
+
+#define FAST_ONE_PASS_COMPRESSION_QUALITY 0
+#define FAST_TWO_PASS_COMPRESSION_QUALITY 1
+#define ZOPFLIFICATION_QUALITY 10
+#define HQ_ZOPFLIFICATION_QUALITY 11
+
+#define MAX_QUALITY_FOR_STATIC_ENRTOPY_CODES 2
+#define MIN_QUALITY_FOR_BLOCK_SPLIT 4
+#define MIN_QUALITY_FOR_OPTIMIZE_HISTOGRAMS 4
+#define MIN_QUALITY_FOR_EXTENSIVE_REFERENCE_SEARCH 5
+#define MIN_QUALITY_FOR_CONTEXT_MODELING 5
+#define MIN_QUALITY_FOR_HQ_CONTEXT_MODELING 7
+#define MIN_QUALITY_FOR_HQ_BLOCK_SPLITTING 10
+/* Only for "font" mode. */
+#define MIN_QUALITY_FOR_RECOMPUTE_DISTANCE_PREFIXES 10
+
+/* For quality below MIN_QUALITY_FOR_BLOCK_SPLIT there is no block splitting,
+ so we buffer at most this much literals and commands. */
+#define MAX_NUM_DELAYED_SYMBOLS 0x2fff
+
+/* Encoding parameters */
+typedef struct BrotliEncoderParams {
+ BrotliEncoderMode mode;
+ int quality;
+ int lgwin;
+ int lgblock;
+} BrotliEncoderParams;
+
+/* Returns hashtable size for quality levels 0 and 1. */
+static BROTLI_INLINE size_t MaxHashTableSize(int quality) {
+ return quality == FAST_ONE_PASS_COMPRESSION_QUALITY ? 1 << 15 : 1 << 17;
+}
+
+/* The maximum length for which the zopflification uses distinct distances. */
+#define MAX_ZOPFLI_LEN_QUALITY_10 150
+#define MAX_ZOPFLI_LEN_QUALITY_11 325
+
+static BROTLI_INLINE size_t MaxZopfliLen(const BrotliEncoderParams* params) {
+ return params->quality <= 10 ?
+ MAX_ZOPFLI_LEN_QUALITY_10 :
+ MAX_ZOPFLI_LEN_QUALITY_11;
+}
+
+/* Number of best candidates to evaluate to expand zopfli chain. */
+static BROTLI_INLINE size_t MaxZopfliCandidates(
+ const BrotliEncoderParams* params) {
+ return params->quality <= 10 ? 1 : 5;
+}
+
+static BROTLI_INLINE void SanitizeParams(BrotliEncoderParams* params) {
+ params->quality = BROTLI_MIN(int, BROTLI_MAX_QUALITY,
+ BROTLI_MAX(int, BROTLI_MIN_QUALITY, params->quality));
+ if (params->lgwin < kBrotliMinWindowBits) {
+ params->lgwin = kBrotliMinWindowBits;
+ } else if (params->lgwin > kBrotliMaxWindowBits) {
+ params->lgwin = kBrotliMaxWindowBits;
+ }
+}
+
+/* Returns optimized lg_block value. */
+static BROTLI_INLINE int ComputeLgBlock(const BrotliEncoderParams* params) {
+ int lgblock = params->lgblock;
+ if (params->quality == FAST_ONE_PASS_COMPRESSION_QUALITY ||
+ params->quality == FAST_TWO_PASS_COMPRESSION_QUALITY) {
+ lgblock = params->lgwin;
+ } else if (params->quality < MIN_QUALITY_FOR_BLOCK_SPLIT) {
+ lgblock = 14;
+ } else if (lgblock == 0) {
+ lgblock = 16;
+ if (params->quality >= 9 && params->lgwin > lgblock) {
+ lgblock = BROTLI_MIN(int, 18, params->lgwin);
+ }
+ } else {
+ lgblock = BROTLI_MIN(int, kBrotliMaxInputBlockBits,
+ BROTLI_MAX(int, kBrotliMinInputBlockBits, lgblock));
+ }
+ return lgblock;
+}
+
+/* Returns log2 of the size of main ring buffer area.
+ Allocate at least lgwin + 1 bits for the ring buffer so that the newly
+ added block fits there completely and we still get lgwin bits and at least
+ read_block_size_bits + 1 bits because the copy tail length needs to be
+ smaller than ringbuffer size. */
+static BROTLI_INLINE int ComputeRbBits(const BrotliEncoderParams* params) {
+ return 1 + BROTLI_MAX(int, params->lgwin, params->lgblock);
+}
+
+static BROTLI_INLINE size_t MaxMetablockSize(
+ const BrotliEncoderParams* params) {
+ int bits = BROTLI_MIN(int, ComputeRbBits(params), kBrotliMaxInputBlockBits);
+ return (size_t)1 << bits;
+}
+
+/* When searching for backward references and have not seen matches for a long
+ time, we can skip some match lookups. Unsuccessful match lookups are very
+ expensive and this kind of a heuristic speeds up compression quite a lot.
+ At first 8 byte strides are taken and every second byte is put to hasher.
+ After 4x more literals stride by 16 bytes, every put 4-th byte to hasher.
+ Applied only to qualities 2 to 9. */
+static BROTLI_INLINE size_t LiteralSpreeLengthForSparseSearch(
+ const BrotliEncoderParams* params) {
+ return params->quality < 9 ? 64 : 512;
+}
+
+static BROTLI_INLINE int ChooseHasher(const BrotliEncoderParams* params) {
+ if (params->quality > 9) {
+ return 10;
+ } else if (params->quality < 5) {
+ return params->quality;
+ } else if (params->lgwin <= 16) {
+ return params->quality < 7 ? 40 : params->quality < 9 ? 41 : 42;
+ }
+ return params->quality;
+}
+
+#endif /* BROTLI_ENC_QUALITY_H_ */
diff --git a/thirdparty/brotli/enc/ringbuffer.h b/thirdparty/brotli/enc/ringbuffer.h
index 13e1b836..b85bdc9e 100644
--- a/thirdparty/brotli/enc/ringbuffer.h
+++ b/thirdparty/brotli/enc/ringbuffer.h
@@ -4,142 +4,157 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Sliding window over the input data.
+/* Sliding window over the input data. */
#ifndef BROTLI_ENC_RINGBUFFER_H_
#define BROTLI_ENC_RINGBUFFER_H_
-#include <cstdlib> /* free, realloc */
+#include <string.h> /* memcpy */
+#include "../common/types.h"
+#include "./memory.h"
#include "./port.h"
-#include "./types.h"
-
-namespace brotli {
-
-// A RingBuffer(window_bits, tail_bits) contains `1 << window_bits' bytes of
-// data in a circular manner: writing a byte writes it to:
-// `position() % (1 << window_bits)'.
-// For convenience, the RingBuffer array contains another copy of the
-// first `1 << tail_bits' bytes:
-// buffer_[i] == buffer_[i + (1 << window_bits)], if i < (1 << tail_bits),
-// and another copy of the last two bytes:
-// buffer_[-1] == buffer_[(1 << window_bits) - 1] and
-// buffer_[-2] == buffer_[(1 << window_bits) - 2].
-class RingBuffer {
- public:
- RingBuffer(int window_bits, int tail_bits)
- : size_(1u << window_bits),
- mask_((1u << window_bits) - 1),
- tail_size_(1u << tail_bits),
- total_size_(size_ + tail_size_),
- cur_size_(0),
- pos_(0),
- data_(0),
- buffer_(0) {}
-
- ~RingBuffer(void) {
- free(data_);
- }
-
- // Allocates or re-allocates data_ to the given length + plus some slack
- // region before and after. Fills the slack regions with zeros.
- inline void InitBuffer(const uint32_t buflen) {
- static const size_t kSlackForEightByteHashingEverywhere = 7;
- cur_size_ = buflen;
- data_ = static_cast<uint8_t*>(realloc(
- data_, 2 + buflen + kSlackForEightByteHashingEverywhere));
- buffer_ = data_ + 2;
- buffer_[-2] = buffer_[-1] = 0;
- for (size_t i = 0; i < kSlackForEightByteHashingEverywhere; ++i) {
- buffer_[cur_size_ + i] = 0;
- }
- }
-
- // Push bytes into the ring buffer.
- void Write(const uint8_t *bytes, size_t n) {
- if (pos_ == 0 && n < tail_size_) {
- // Special case for the first write: to process the first block, we don't
- // need to allocate the whole ringbuffer and we don't need the tail
- // either. However, we do this memory usage optimization only if the
- // first write is less than the tail size, which is also the input block
- // size, otherwise it is likely that other blocks will follow and we
- // will need to reallocate to the full size anyway.
- pos_ = static_cast<uint32_t>(n);
- InitBuffer(pos_);
- memcpy(buffer_, bytes, n);
- return;
- }
- if (cur_size_ < total_size_) {
- // Lazily allocate the full buffer.
- InitBuffer(total_size_);
- // Initialize the last two bytes to zero, so that we don't have to worry
- // later when we copy the last two bytes to the first two positions.
- buffer_[size_ - 2] = 0;
- buffer_[size_ - 1] = 0;
- }
- const size_t masked_pos = pos_ & mask_;
- // The length of the writes is limited so that we do not need to worry
- // about a write
- WriteTail(bytes, n);
- if (PREDICT_TRUE(masked_pos + n <= size_)) {
- // A single write fits.
- memcpy(&buffer_[masked_pos], bytes, n);
- } else {
- // Split into two writes.
- // Copy into the end of the buffer, including the tail buffer.
- memcpy(&buffer_[masked_pos], bytes,
- std::min(n, total_size_ - masked_pos));
- // Copy into the beginning of the buffer
- memcpy(&buffer_[0], bytes + (size_ - masked_pos),
- n - (size_ - masked_pos));
- }
- buffer_[-2] = buffer_[size_ - 2];
- buffer_[-1] = buffer_[size_ - 1];
- pos_ += static_cast<uint32_t>(n);
- if (pos_ > (1u << 30)) { /* Wrap, but preserve not-a-first-lap feature. */
- pos_ = (pos_ & ((1u << 30) - 1)) | (1u << 30);
- }
- }
-
- void Reset(void) {
- pos_ = 0;
- }
-
- // Logical cursor position in the ring buffer.
- uint32_t position(void) const { return pos_; }
-
- // Bit mask for getting the physical position for a logical position.
- uint32_t mask(void) const { return mask_; }
-
- uint8_t *start(void) { return &buffer_[0]; }
- const uint8_t *start(void) const { return &buffer_[0]; }
-
- private:
- void WriteTail(const uint8_t *bytes, size_t n) {
- const size_t masked_pos = pos_ & mask_;
- if (PREDICT_FALSE(masked_pos < tail_size_)) {
- // Just fill the tail buffer with the beginning data.
- const size_t p = size_ + masked_pos;
- memcpy(&buffer_[p], bytes, std::min(n, tail_size_ - masked_pos));
- }
- }
-
- // Size of the ringbuffer is (1 << window_bits) + tail_size_.
+#include "./quality.h"
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+/* A RingBuffer(window_bits, tail_bits) contains `1 << window_bits' bytes of
+ data in a circular manner: writing a byte writes it to:
+ `position() % (1 << window_bits)'.
+ For convenience, the RingBuffer array contains another copy of the
+ first `1 << tail_bits' bytes:
+ buffer_[i] == buffer_[i + (1 << window_bits)], if i < (1 << tail_bits),
+ and another copy of the last two bytes:
+ buffer_[-1] == buffer_[(1 << window_bits) - 1] and
+ buffer_[-2] == buffer_[(1 << window_bits) - 2]. */
+typedef struct RingBuffer {
+ /* Size of the ringbuffer is (1 << window_bits) + tail_size_. */
const uint32_t size_;
const uint32_t mask_;
const uint32_t tail_size_;
const uint32_t total_size_;
uint32_t cur_size_;
- // Position to write in the ring buffer.
+ /* Position to write in the ring buffer. */
uint32_t pos_;
- // The actual ring buffer containing the copy of the last two bytes, the data,
- // and the copy of the beginning as a tail.
+ /* The actual ring buffer containing the copy of the last two bytes, the data,
+ and the copy of the beginning as a tail. */
uint8_t *data_;
- // The start of the ringbuffer.
+ /* The start of the ringbuffer. */
uint8_t *buffer_;
-};
+} RingBuffer;
+
+static BROTLI_INLINE void RingBufferInit(RingBuffer* rb) {
+ rb->cur_size_ = 0;
+ rb->pos_ = 0;
+ rb->data_ = 0;
+ rb->buffer_ = 0;
+}
+
+static BROTLI_INLINE void RingBufferSetup(
+ const BrotliEncoderParams* params, RingBuffer* rb) {
+ int window_bits = ComputeRbBits(params);
+ int tail_bits = params->lgblock;
+ *(uint32_t*)&rb->size_ = 1u << window_bits;
+ *(uint32_t*)&rb->mask_ = (1u << window_bits) - 1;
+ *(uint32_t*)&rb->tail_size_ = 1u << tail_bits;
+ *(uint32_t*)&rb->total_size_ = rb->size_ + rb->tail_size_;
+}
+
+static BROTLI_INLINE void RingBufferFree(MemoryManager* m, RingBuffer* rb) {
+ BROTLI_FREE(m, rb->data_);
+}
+
+/* Allocates or re-allocates data_ to the given length + plus some slack
+ region before and after. Fills the slack regions with zeros. */
+static BROTLI_INLINE void RingBufferInitBuffer(
+ MemoryManager* m, const uint32_t buflen, RingBuffer* rb) {
+ static const size_t kSlackForEightByteHashingEverywhere = 7;
+ uint8_t* new_data = BROTLI_ALLOC(
+ m, uint8_t, 2 + buflen + kSlackForEightByteHashingEverywhere);
+ size_t i;
+ if (BROTLI_IS_OOM(m)) return;
+ if (rb->data_) {
+ memcpy(new_data, rb->data_,
+ 2 + rb->cur_size_ + kSlackForEightByteHashingEverywhere);
+ BROTLI_FREE(m, rb->data_);
+ }
+ rb->data_ = new_data;
+ rb->cur_size_ = buflen;
+ rb->buffer_ = rb->data_ + 2;
+ rb->buffer_[-2] = rb->buffer_[-1] = 0;
+ for (i = 0; i < kSlackForEightByteHashingEverywhere; ++i) {
+ rb->buffer_[rb->cur_size_ + i] = 0;
+ }
+}
+
+static BROTLI_INLINE void RingBufferWriteTail(
+ const uint8_t *bytes, size_t n, RingBuffer* rb) {
+ const size_t masked_pos = rb->pos_ & rb->mask_;
+ if (PREDICT_FALSE(masked_pos < rb->tail_size_)) {
+ /* Just fill the tail buffer with the beginning data. */
+ const size_t p = rb->size_ + masked_pos;
+ memcpy(&rb->buffer_[p], bytes,
+ BROTLI_MIN(size_t, n, rb->tail_size_ - masked_pos));
+ }
+}
+
+/* Push bytes into the ring buffer. */
+static BROTLI_INLINE void RingBufferWrite(
+ MemoryManager* m, const uint8_t *bytes, size_t n, RingBuffer* rb) {
+ if (rb->pos_ == 0 && n < rb->tail_size_) {
+ /* Special case for the first write: to process the first block, we don't
+ need to allocate the whole ringbuffer and we don't need the tail
+ either. However, we do this memory usage optimization only if the
+ first write is less than the tail size, which is also the input block
+ size, otherwise it is likely that other blocks will follow and we
+ will need to reallocate to the full size anyway. */
+ rb->pos_ = (uint32_t)n;
+ RingBufferInitBuffer(m, rb->pos_, rb);
+ if (BROTLI_IS_OOM(m)) return;
+ memcpy(rb->buffer_, bytes, n);
+ return;
+ }
+ if (rb->cur_size_ < rb->total_size_) {
+ /* Lazily allocate the full buffer. */
+ RingBufferInitBuffer(m, rb->total_size_, rb);
+ if (BROTLI_IS_OOM(m)) return;
+ /* Initialize the last two bytes to zero, so that we don't have to worry
+ later when we copy the last two bytes to the first two positions. */
+ rb->buffer_[rb->size_ - 2] = 0;
+ rb->buffer_[rb->size_ - 1] = 0;
+ }
+ {
+ const size_t masked_pos = rb->pos_ & rb->mask_;
+ /* The length of the writes is limited so that we do not need to worry
+ about a write */
+ RingBufferWriteTail(bytes, n, rb);
+ if (PREDICT_TRUE(masked_pos + n <= rb->size_)) {
+ /* A single write fits. */
+ memcpy(&rb->buffer_[masked_pos], bytes, n);
+ } else {
+ /* Split into two writes.
+ Copy into the end of the buffer, including the tail buffer. */
+ memcpy(&rb->buffer_[masked_pos], bytes,
+ BROTLI_MIN(size_t, n, rb->total_size_ - masked_pos));
+ /* Copy into the beginning of the buffer */
+ memcpy(&rb->buffer_[0], bytes + (rb->size_ - masked_pos),
+ n - (rb->size_ - masked_pos));
+ }
+ }
+ rb->buffer_[-2] = rb->buffer_[rb->size_ - 2];
+ rb->buffer_[-1] = rb->buffer_[rb->size_ - 1];
+ rb->pos_ += (uint32_t)n;
+ if (rb->pos_ > (1u << 30)) {
+ /* Wrap, but preserve not-a-first-lap feature. */
+ rb->pos_ = (rb->pos_ & ((1u << 30) - 1)) | (1u << 30);
+ }
+}
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_RINGBUFFER_H_
+#endif /* BROTLI_ENC_RINGBUFFER_H_ */
diff --git a/thirdparty/brotli/enc/static_dict.cc b/thirdparty/brotli/enc/static_dict.c
index 27177b1b..edfaa84b 100644
--- a/thirdparty/brotli/enc/static_dict.cc
+++ b/thirdparty/brotli/enc/static_dict.c
@@ -6,88 +6,103 @@
#include "./static_dict.h"
-#include <algorithm>
-
-#include "./dictionary.h"
+#include "../common/dictionary.h"
#include "./find_match_length.h"
+#include "./port.h"
#include "./static_dict_lut.h"
-#include "./transform.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+static const uint8_t kUppercaseFirst = 10;
+static const uint8_t kOmitLastNTransforms[10] = {
+ 0, 12, 27, 23, 42, 63, 56, 48, 59, 64,
+};
-inline uint32_t Hash(const uint8_t *data) {
+static BROTLI_INLINE uint32_t Hash(const uint8_t *data) {
uint32_t h = BROTLI_UNALIGNED_LOAD32(data) * kDictHashMul32;
- // The higher bits contain more mixture from the multiplication,
- // so we take our results from there.
+ /* The higher bits contain more mixture from the multiplication,
+ so we take our results from there. */
return h >> (32 - kDictNumBits);
}
-inline void AddMatch(size_t distance, size_t len, size_t len_code,
- uint32_t* matches) {
- uint32_t match = static_cast<uint32_t>((distance << 5) + len_code);
- matches[len] = std::min(matches[len], match);
+static BROTLI_INLINE void AddMatch(size_t distance, size_t len, size_t len_code,
+ uint32_t* matches) {
+ uint32_t match = (uint32_t)((distance << 5) + len_code);
+ matches[len] = BROTLI_MIN(uint32_t, matches[len], match);
}
-inline size_t DictMatchLength(const uint8_t* data,
- size_t id,
- size_t len,
- size_t maxlen) {
+static BROTLI_INLINE size_t DictMatchLength(const uint8_t* data,
+ size_t id,
+ size_t len,
+ size_t maxlen) {
const size_t offset = kBrotliDictionaryOffsetsByLength[len] + len * id;
return FindMatchLengthWithLimit(&kBrotliDictionary[offset], data,
- std::min(len, maxlen));
+ BROTLI_MIN(size_t, len, maxlen));
}
-inline bool IsMatch(DictWord w, const uint8_t* data, size_t max_length) {
- if (w.len > max_length) return false;
- const size_t offset = kBrotliDictionaryOffsetsByLength[w.len] + w.len * w.idx;
- const uint8_t* dict = &kBrotliDictionary[offset];
- if (w.transform == 0) {
- // Match against base dictionary word.
- return FindMatchLengthWithLimit(dict, data, w.len) == w.len;
- } else if (w.transform == 10) {
- // Match against uppercase first transform.
- // Note that there are only ASCII uppercase words in the lookup table.
- return (dict[0] >= 'a' && dict[0] <= 'z' &&
- (dict[0] ^ 32) == data[0] &&
- FindMatchLengthWithLimit(&dict[1], &data[1], w.len - 1u) ==
- w.len - 1u);
+static BROTLI_INLINE BROTLI_BOOL IsMatch(
+ DictWord w, const uint8_t* data, size_t max_length) {
+ if (w.len > max_length) {
+ return BROTLI_FALSE;
} else {
- // Match against uppercase all transform.
- // Note that there are only ASCII uppercase words in the lookup table.
- for (size_t i = 0; i < w.len; ++i) {
- if (dict[i] >= 'a' && dict[i] <= 'z') {
- if ((dict[i] ^ 32) != data[i]) return false;
- } else {
- if (dict[i] != data[i]) return false;
+ const size_t offset = kBrotliDictionaryOffsetsByLength[w.len] +
+ (size_t)w.len * (size_t)w.idx;
+ const uint8_t* dict = &kBrotliDictionary[offset];
+ if (w.transform == 0) {
+ /* Match against base dictionary word. */
+ return
+ TO_BROTLI_BOOL(FindMatchLengthWithLimit(dict, data, w.len) == w.len);
+ } else if (w.transform == 10) {
+ /* Match against uppercase first transform.
+ Note that there are only ASCII uppercase words in the lookup table. */
+ return TO_BROTLI_BOOL(dict[0] >= 'a' && dict[0] <= 'z' &&
+ (dict[0] ^ 32) == data[0] &&
+ FindMatchLengthWithLimit(&dict[1], &data[1], w.len - 1u) ==
+ w.len - 1u);
+ } else {
+ /* Match against uppercase all transform.
+ Note that there are only ASCII uppercase words in the lookup table. */
+ size_t i;
+ for (i = 0; i < w.len; ++i) {
+ if (dict[i] >= 'a' && dict[i] <= 'z') {
+ if ((dict[i] ^ 32) != data[i]) return BROTLI_FALSE;
+ } else {
+ if (dict[i] != data[i]) return BROTLI_FALSE;
+ }
}
+ return BROTLI_TRUE;
}
- return true;
}
}
-bool FindAllStaticDictionaryMatches(const uint8_t* data,
- size_t min_length,
- size_t max_length,
- uint32_t* matches) {
- bool found_match = false;
- size_t key = Hash(data);
- size_t bucket = kStaticDictionaryBuckets[key];
- if (bucket != 0) {
- size_t num = bucket & 0xff;
- size_t offset = bucket >> 8;
- for (size_t i = 0; i < num; ++i) {
- const DictWord w = kStaticDictionaryWords[offset + i];
- const size_t l = w.len;
- const size_t n = 1u << kBrotliDictionarySizeBitsByLength[l];
+BROTLI_BOOL BrotliFindAllStaticDictionaryMatches(
+ const uint8_t* data, size_t min_length, size_t max_length,
+ uint32_t* matches) {
+ BROTLI_BOOL has_found_match = BROTLI_FALSE;
+ {
+ size_t offset = kStaticDictionaryBuckets[Hash(data)];
+ BROTLI_BOOL end = !offset;
+ while (!end) {
+ DictWord w = kStaticDictionaryWords[offset++];
+ const size_t l = w.len & 0x7F;
+ const size_t n = (size_t)1 << kBrotliDictionarySizeBitsByLength[l];
const size_t id = w.idx;
+ end = !!(w.len & 0x80);
+ w.len = (uint8_t)l;
if (w.transform == 0) {
const size_t matchlen = DictMatchLength(data, id, l, max_length);
- // Transform "" + kIdentity + ""
+ const uint8_t* s;
+ size_t minlen;
+ size_t maxlen;
+ size_t len;
+ /* Transform "" + kIdentity + "" */
if (matchlen == l) {
AddMatch(id, l, l, matches);
- found_match = true;
+ has_found_match = BROTLI_TRUE;
}
- // Transforms "" + kOmitLast1 + "" and "" + kOmitLast1 + "ing "
+ /* Transforms "" + kOmitLast1 + "" and "" + kOmitLast1 + "ing " */
if (matchlen >= l - 1) {
AddMatch(id + 12 * n, l - 1, l, matches);
if (l + 2 < max_length &&
@@ -95,21 +110,21 @@ bool FindAllStaticDictionaryMatches(const uint8_t* data,
data[l + 2] == ' ') {
AddMatch(id + 49 * n, l + 3, l, matches);
}
- found_match = true;
+ has_found_match = BROTLI_TRUE;
}
- // Transform "" + kOmitLastN + "" (N = 2 .. 9)
- size_t minlen = min_length;
- if (l > 9) minlen = std::max(minlen, l - 9);
- size_t maxlen = std::min(matchlen, l - 2);
- for (size_t len = minlen; len <= maxlen; ++len) {
+ /* Transform "" + kOmitLastN + "" (N = 2 .. 9) */
+ minlen = min_length;
+ if (l > 9) minlen = BROTLI_MAX(size_t, minlen, l - 9);
+ maxlen = BROTLI_MIN(size_t, matchlen, l - 2);
+ for (len = minlen; len <= maxlen; ++len) {
AddMatch(id + kOmitLastNTransforms[l - len] * n, len, l, matches);
- found_match = true;
+ has_found_match = BROTLI_TRUE;
}
if (matchlen < l || l + 6 >= max_length) {
continue;
}
- const uint8_t* s = &data[l];
- // Transforms "" + kIdentity + <suffix>
+ s = &data[l];
+ /* Transforms "" + kIdentity + <suffix> */
if (s[0] == ' ') {
AddMatch(id + n, l + 1, l, matches);
if (s[1] == 'a') {
@@ -127,7 +142,7 @@ bool FindAllStaticDictionaryMatches(const uint8_t* data,
} else if (s[1] == 'b') {
if (s[2] == 'y' && s[3] == ' ') {
AddMatch(id + 38 * n, l + 4, l, matches);
- }
+ }
} else if (s[1] == 'i') {
if (s[2] == 'n') {
if (s[3] == ' ') AddMatch(id + 16 * n, l + 4, l, matches);
@@ -235,7 +250,7 @@ bool FindAllStaticDictionaryMatches(const uint8_t* data,
} else if (s[0] == 'i') {
if (s[1] == 'v') {
if (s[2] == 'e' && s[3] == ' ') {
- AddMatch(id + 92 * n, l + 4, l, matches);
+ AddMatch(id + 92 * n, l + 4, l, matches);
}
} else if (s[1] == 'z') {
if (s[2] == 'e' && s[3] == ' ') {
@@ -256,75 +271,79 @@ bool FindAllStaticDictionaryMatches(const uint8_t* data,
}
}
} else {
- // Set t=false for kUppercaseFirst and
- // t=true otherwise (kUppercaseAll) transform.
- const bool t = w.transform != kUppercaseFirst;
+ /* Set is_all_caps=0 for kUppercaseFirst and
+ is_all_caps=1 otherwise (kUppercaseAll) transform. */
+ const BROTLI_BOOL is_all_caps =
+ TO_BROTLI_BOOL(w.transform != kUppercaseFirst);
+ const uint8_t* s;
if (!IsMatch(w, data, max_length)) {
continue;
}
- // Transform "" + kUppercase{First,All} + ""
- AddMatch(id + (t ? 44 : 9) * n, l, l, matches);
- found_match = true;
+ /* Transform "" + kUppercase{First,All} + "" */
+ AddMatch(id + (is_all_caps ? 44 : 9) * n, l, l, matches);
+ has_found_match = BROTLI_TRUE;
if (l + 1 >= max_length) {
continue;
}
- // Transforms "" + kUppercase{First,All} + <suffix>
- const uint8_t* s = &data[l];
+ /* Transforms "" + kUppercase{First,All} + <suffix> */
+ s = &data[l];
if (s[0] == ' ') {
- AddMatch(id + (t ? 68 : 4) * n, l + 1, l, matches);
+ AddMatch(id + (is_all_caps ? 68 : 4) * n, l + 1, l, matches);
} else if (s[0] == '"') {
- AddMatch(id + (t ? 87 : 66) * n, l + 1, l, matches);
+ AddMatch(id + (is_all_caps ? 87 : 66) * n, l + 1, l, matches);
if (s[1] == '>') {
- AddMatch(id + (t ? 97 : 69) * n, l + 2, l, matches);
+ AddMatch(id + (is_all_caps ? 97 : 69) * n, l + 2, l, matches);
}
} else if (s[0] == '.') {
- AddMatch(id + (t ? 101 : 79) * n, l + 1, l, matches);
+ AddMatch(id + (is_all_caps ? 101 : 79) * n, l + 1, l, matches);
if (s[1] == ' ') {
- AddMatch(id + (t ? 114 : 88) * n, l + 2, l, matches);
+ AddMatch(id + (is_all_caps ? 114 : 88) * n, l + 2, l, matches);
}
} else if (s[0] == ',') {
- AddMatch(id + (t ? 112 : 99) * n, l + 1, l, matches);
+ AddMatch(id + (is_all_caps ? 112 : 99) * n, l + 1, l, matches);
if (s[1] == ' ') {
- AddMatch(id + (t ? 107 : 58) * n, l + 2, l, matches);
+ AddMatch(id + (is_all_caps ? 107 : 58) * n, l + 2, l, matches);
}
} else if (s[0] == '\'') {
- AddMatch(id + (t ? 94 : 74) * n, l + 1, l, matches);
+ AddMatch(id + (is_all_caps ? 94 : 74) * n, l + 1, l, matches);
} else if (s[0] == '(') {
- AddMatch(id + (t ? 113 : 78) * n, l + 1, l, matches);
+ AddMatch(id + (is_all_caps ? 113 : 78) * n, l + 1, l, matches);
} else if (s[0] == '=') {
if (s[1] == '"') {
- AddMatch(id + (t ? 105 : 104) * n, l + 2, l, matches);
+ AddMatch(id + (is_all_caps ? 105 : 104) * n, l + 2, l, matches);
} else if (s[1] == '\'') {
- AddMatch(id + (t ? 116 : 108) * n, l + 2, l, matches);
+ AddMatch(id + (is_all_caps ? 116 : 108) * n, l + 2, l, matches);
}
}
}
}
}
- // Transforms with prefixes " " and "."
+ /* Transforms with prefixes " " and "." */
if (max_length >= 5 && (data[0] == ' ' || data[0] == '.')) {
- bool is_space = (data[0] == ' ');
- key = Hash(&data[1]);
- bucket = kStaticDictionaryBuckets[key];
- size_t num = bucket & 0xff;
- size_t offset = bucket >> 8;
- for (size_t i = 0; i < num; ++i) {
- const DictWord w = kStaticDictionaryWords[offset + i];
- const size_t l = w.len;
- const size_t n = 1u << kBrotliDictionarySizeBitsByLength[l];
+ BROTLI_BOOL is_space = TO_BROTLI_BOOL(data[0] == ' ');
+ size_t offset = kStaticDictionaryBuckets[Hash(&data[1])];
+ BROTLI_BOOL end = !offset;
+ while (!end) {
+ DictWord w = kStaticDictionaryWords[offset++];
+ const size_t l = w.len & 0x7F;
+ const size_t n = (size_t)1 << kBrotliDictionarySizeBitsByLength[l];
const size_t id = w.idx;
+ end = !!(w.len & 0x80);
+ w.len = (uint8_t)l;
if (w.transform == 0) {
+ const uint8_t* s;
if (!IsMatch(w, &data[1], max_length - 1)) {
continue;
}
- // Transforms " " + kIdentity + "" and "." + kIdentity + ""
+ /* Transforms " " + kIdentity + "" and "." + kIdentity + "" */
AddMatch(id + (is_space ? 6 : 32) * n, l + 1, l, matches);
- found_match = true;
+ has_found_match = BROTLI_TRUE;
if (l + 2 >= max_length) {
continue;
}
- // Transforms " " + kIdentity + <suffix> and "." + kIdentity + <suffix>
- const uint8_t* s = &data[l + 1];
+ /* Transforms " " + kIdentity + <suffix> and "." + kIdentity + <suffix>
+ */
+ s = &data[l + 1];
if (s[0] == ' ') {
AddMatch(id + (is_space ? 2 : 77) * n, l + 2, l, matches);
} else if (s[0] == '(') {
@@ -349,89 +368,91 @@ bool FindAllStaticDictionaryMatches(const uint8_t* data,
}
}
} else if (is_space) {
- // Set t=false for kUppercaseFirst and
- // t=true otherwise (kUppercaseAll) transform.
- const bool t = w.transform != kUppercaseFirst;
+ /* Set is_all_caps=0 for kUppercaseFirst and
+ is_all_caps=1 otherwise (kUppercaseAll) transform. */
+ const BROTLI_BOOL is_all_caps =
+ TO_BROTLI_BOOL(w.transform != kUppercaseFirst);
+ const uint8_t* s;
if (!IsMatch(w, &data[1], max_length - 1)) {
continue;
}
- // Transforms " " + kUppercase{First,All} + ""
- AddMatch(id + (t ? 85 : 30) * n, l + 1, l, matches);
- found_match = true;
+ /* Transforms " " + kUppercase{First,All} + "" */
+ AddMatch(id + (is_all_caps ? 85 : 30) * n, l + 1, l, matches);
+ has_found_match = BROTLI_TRUE;
if (l + 2 >= max_length) {
continue;
}
- // Transforms " " + kUppercase{First,All} + <suffix>
- const uint8_t* s = &data[l + 1];
+ /* Transforms " " + kUppercase{First,All} + <suffix> */
+ s = &data[l + 1];
if (s[0] == ' ') {
- AddMatch(id + (t ? 83 : 15) * n, l + 2, l, matches);
+ AddMatch(id + (is_all_caps ? 83 : 15) * n, l + 2, l, matches);
} else if (s[0] == ',') {
- if (!t) {
+ if (!is_all_caps) {
AddMatch(id + 109 * n, l + 2, l, matches);
- }
+ }
if (s[1] == ' ') {
- AddMatch(id + (t ? 111 : 65) * n, l + 3, l, matches);
+ AddMatch(id + (is_all_caps ? 111 : 65) * n, l + 3, l, matches);
}
} else if (s[0] == '.') {
- AddMatch(id + (t ? 115 : 96) * n, l + 2, l, matches);
+ AddMatch(id + (is_all_caps ? 115 : 96) * n, l + 2, l, matches);
if (s[1] == ' ') {
- AddMatch(id + (t ? 117 : 91) * n, l + 3, l, matches);
+ AddMatch(id + (is_all_caps ? 117 : 91) * n, l + 3, l, matches);
}
} else if (s[0] == '=') {
if (s[1] == '"') {
- AddMatch(id + (t ? 110 : 118) * n, l + 3, l, matches);
+ AddMatch(id + (is_all_caps ? 110 : 118) * n, l + 3, l, matches);
} else if (s[1] == '\'') {
- AddMatch(id + (t ? 119 : 120) * n, l + 3, l, matches);
+ AddMatch(id + (is_all_caps ? 119 : 120) * n, l + 3, l, matches);
}
}
}
}
}
if (max_length >= 6) {
- // Transforms with prefixes "e ", "s ", ", " and "\xc2\xa0"
+ /* Transforms with prefixes "e ", "s ", ", " and "\xc2\xa0" */
if ((data[1] == ' ' &&
(data[0] == 'e' || data[0] == 's' || data[0] == ',')) ||
(data[0] == 0xc2 && data[1] == 0xa0)) {
- key = Hash(&data[2]);
- bucket = kStaticDictionaryBuckets[key];
- size_t num = bucket & 0xff;
- size_t offset = bucket >> 8;
- for (size_t i = 0; i < num; ++i) {
- const DictWord w = kStaticDictionaryWords[offset + i];
- const size_t l = w.len;
- const size_t n = 1u << kBrotliDictionarySizeBitsByLength[l];
+ size_t offset = kStaticDictionaryBuckets[Hash(&data[2])];
+ BROTLI_BOOL end = !offset;
+ while (!end) {
+ DictWord w = kStaticDictionaryWords[offset++];
+ const size_t l = w.len & 0x7F;
+ const size_t n = (size_t)1 << kBrotliDictionarySizeBitsByLength[l];
const size_t id = w.idx;
+ end = !!(w.len & 0x80);
+ w.len = (uint8_t)l;
if (w.transform == 0 && IsMatch(w, &data[2], max_length - 2)) {
if (data[0] == 0xc2) {
AddMatch(id + 102 * n, l + 2, l, matches);
- found_match = true;
+ has_found_match = BROTLI_TRUE;
} else if (l + 2 < max_length && data[l + 2] == ' ') {
size_t t = data[0] == 'e' ? 18 : (data[0] == 's' ? 7 : 13);
AddMatch(id + t * n, l + 3, l, matches);
- found_match = true;
+ has_found_match = BROTLI_TRUE;
}
}
}
}
}
if (max_length >= 9) {
- // Transforms with prefixes " the " and ".com/"
+ /* Transforms with prefixes " the " and ".com/" */
if ((data[0] == ' ' && data[1] == 't' && data[2] == 'h' &&
data[3] == 'e' && data[4] == ' ') ||
(data[0] == '.' && data[1] == 'c' && data[2] == 'o' &&
data[3] == 'm' && data[4] == '/')) {
- key = Hash(&data[5]);
- bucket = kStaticDictionaryBuckets[key];
- size_t num = bucket & 0xff;
- size_t offset = bucket >> 8;
- for (size_t i = 0; i < num; ++i) {
- const DictWord w = kStaticDictionaryWords[offset + i];
- const size_t l = w.len;
- const size_t n = 1u << kBrotliDictionarySizeBitsByLength[l];
+ size_t offset = kStaticDictionaryBuckets[Hash(&data[5])];
+ BROTLI_BOOL end = !offset;
+ while (!end) {
+ DictWord w = kStaticDictionaryWords[offset++];
+ const size_t l = w.len & 0x7F;
+ const size_t n = (size_t)1 << kBrotliDictionarySizeBitsByLength[l];
const size_t id = w.idx;
+ end = !!(w.len & 0x80);
+ w.len = (uint8_t)l;
if (w.transform == 0 && IsMatch(w, &data[5], max_length - 5)) {
AddMatch(id + (data[0] == ' ' ? 41 : 72) * n, l + 5, l, matches);
- found_match = true;
+ has_found_match = BROTLI_TRUE;
if (l + 5 < max_length) {
const uint8_t* s = &data[l + 5];
if (data[0] == ' ') {
@@ -449,7 +470,9 @@ bool FindAllStaticDictionaryMatches(const uint8_t* data,
}
}
}
- return found_match;
+ return has_found_match;
}
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/static_dict.h b/thirdparty/brotli/enc/static_dict.h
index d293934d..039d0878 100644
--- a/thirdparty/brotli/enc/static_dict.h
+++ b/thirdparty/brotli/enc/static_dict.h
@@ -4,29 +4,34 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Class to model the static dictionary.
+/* Class to model the static dictionary. */
#ifndef BROTLI_ENC_STATIC_DICT_H_
#define BROTLI_ENC_STATIC_DICT_H_
-#include "./types.h"
+#include "../common/types.h"
+#include "./port.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
-static const size_t kMaxDictionaryMatchLen = 37;
+#define BROTLI_MAX_STATIC_DICTIONARY_MATCH_LEN 37
static const uint32_t kInvalidMatch = 0xfffffff;
-// Matches data against static dictionary words, and for each length l,
-// for which a match is found, updates matches[l] to be the minimum possible
-// (distance << 5) + len_code.
-// Prerequisites:
-// matches array is at least kMaxDictionaryMatchLen + 1 long
-// all elements are initialized to kInvalidMatch
-bool FindAllStaticDictionaryMatches(const uint8_t* data,
- size_t min_length,
- size_t max_length,
- uint32_t* matches);
-
-} // namespace brotli
-
-#endif // BROTLI_ENC_STATIC_DICT_H_
+/* Matches data against static dictionary words, and for each length l,
+ for which a match is found, updates matches[l] to be the minimum possible
+ (distance << 5) + len_code.
+ Returns 1 if matches have been found, otherwise 0.
+ Prerequisites:
+ matches array is at least BROTLI_MAX_STATIC_DICTIONARY_MATCH_LEN + 1 long
+ all elements are initialized to kInvalidMatch */
+BROTLI_INTERNAL BROTLI_BOOL BrotliFindAllStaticDictionaryMatches(
+ const uint8_t* data, size_t min_length, size_t max_length,
+ uint32_t* matches);
+
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
+
+#endif /* BROTLI_ENC_STATIC_DICT_H_ */
diff --git a/thirdparty/brotli/enc/static_dict_lut.h b/thirdparty/brotli/enc/static_dict_lut.h
index 489c03a1..8b564f50 100644
--- a/thirdparty/brotli/enc/static_dict_lut.h
+++ b/thirdparty/brotli/enc/static_dict_lut.h
@@ -4,12052 +4,11238 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Lookup table for static dictionary and transforms.
+/* Lookup table for static dictionary and transforms. */
-#ifndef BROTLI_ENC_DICTIONARY_LUT_H_
-#define BROTLI_ENC_DICTIONARY_LUT_H_
+#ifndef BROTLI_ENC_STATIC_DICT_LUT_H_
+#define BROTLI_ENC_STATIC_DICT_LUT_H_
-#include "./types.h"
+#include "../common/types.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
-static const int kDictNumBits = 15
-;static const uint32_t kDictHashMul32 = 0x1e35a7bd;
-
-struct DictWord {
+typedef struct DictWord {
+ /* Highest bit is used to indicate end of bucket. */
uint8_t len;
uint8_t transform;
uint16_t idx;
-};
+} DictWord;
-static const uint32_t kStaticDictionaryBuckets[] = {
- 0x000002, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000203, 0x00050e, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x001301, 0x000000, 0x000000, 0x000000, 0x001401, 0x000000, 0x001501, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x001602,
- 0x000000, 0x000000, 0x001804, 0x000000, 0x001c18, 0x000000, 0x003402, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x003606, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x003c0f, 0x004b12, 0x000000, 0x000000,
- 0x000000, 0x005d02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x005f01, 0x000000, 0x006001, 0x000000, 0x006101, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x006202, 0x006405, 0x006902, 0x006b02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x006d01, 0x000000, 0x006e01,
- 0x006f01, 0x000000, 0x007005, 0x007506, 0x007b01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x007c03, 0x007f01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x008002, 0x000000, 0x000000, 0x008201, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x008303, 0x000000, 0x000000, 0x008602, 0x000000, 0x000000,
- 0x000000, 0x008801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x008901,
- 0x008a03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x008d01, 0x008e01, 0x008f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x009001, 0x000000, 0x000000, 0x000000, 0x009103, 0x009402, 0x009601, 0x009701,
- 0x000000, 0x000000, 0x009801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x009901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x009a05, 0x000000, 0x000000, 0x000000, 0x000000, 0x009f16, 0x00b501,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x00b605, 0x000000,
- 0x000000, 0x000000, 0x00bb01, 0x00bc03, 0x000000, 0x000000, 0x00bf02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x00c103, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x00c405, 0x00c907,
- 0x00d001, 0x000000, 0x000000, 0x00d10e, 0x000000, 0x00df01, 0x000000, 0x000000,
- 0x000000, 0x00e006, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x00e601, 0x000000, 0x000000, 0x000000,
- 0x00e708, 0x000000, 0x00ef02, 0x000000, 0x000000, 0x00f102, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x00f302, 0x000000, 0x000000, 0x000000, 0x00f503, 0x000000, 0x000000,
- 0x00f802, 0x00fa02, 0x00fc05, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x010103, 0x000000, 0x000000, 0x010402, 0x010604, 0x000000, 0x000000, 0x000000,
- 0x010a01, 0x000000, 0x000000, 0x010b01, 0x000000, 0x010c02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x010e01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x010f01, 0x000000,
- 0x011004, 0x000000, 0x011401, 0x000000, 0x011508, 0x011d01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x011e02, 0x000000, 0x012001, 0x012101, 0x012204, 0x000000,
- 0x000000, 0x000000, 0x012601, 0x000000, 0x000000, 0x012701, 0x012801, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x012901, 0x000000, 0x000000, 0x000000, 0x012a06, 0x000000, 0x000000,
- 0x013013, 0x000000, 0x014303, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x014601, 0x000000, 0x014701, 0x014807, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x014f04, 0x000000, 0x000000, 0x015301, 0x000000, 0x015401, 0x015501, 0x015603,
- 0x000000, 0x000000, 0x015902, 0x000000, 0x015b01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x015c02, 0x015e04, 0x000000, 0x000000, 0x016208,
- 0x000000, 0x016a01, 0x000000, 0x016b04, 0x000000, 0x016f01, 0x017001, 0x000000,
- 0x017102, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x017301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x017402, 0x000000, 0x017601, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x017701, 0x017811, 0x000000, 0x000000, 0x018901,
- 0x018a01, 0x018b02, 0x000000, 0x000000, 0x018d02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x018f08, 0x000000, 0x000000, 0x01970c, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x01a301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x01a401, 0x000000, 0x000000, 0x01a501, 0x01a606, 0x000000, 0x000000, 0x01ac06,
- 0x01b201, 0x01b306, 0x01b901, 0x000000, 0x000000, 0x01ba01, 0x000000, 0x01bb01,
- 0x01bc08, 0x01c403, 0x01c701, 0x000000, 0x01c801, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x01c901, 0x000000, 0x000000, 0x000000, 0x01ca01, 0x000000,
- 0x000000, 0x000000, 0x01cb02, 0x000000, 0x01cd01, 0x01ce02, 0x01d001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x01d103, 0x01d401, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x01d504, 0x000000, 0x000000,
- 0x000000, 0x01d902, 0x000000, 0x01db07, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x01e202, 0x000000, 0x01e401, 0x000000, 0x000000, 0x000000, 0x01e502, 0x000000,
- 0x000000, 0x01e703, 0x01ea01, 0x01eb05, 0x000000, 0x000000, 0x01f002, 0x01f201,
- 0x01f301, 0x000000, 0x01f404, 0x000000, 0x000000, 0x000000, 0x01f801, 0x000000,
- 0x000000, 0x01f901, 0x000000, 0x000000, 0x000000, 0x01fa02, 0x000000, 0x000000,
- 0x000000, 0x01fc02, 0x000000, 0x000000, 0x000000, 0x000000, 0x01fe01, 0x01ff07,
- 0x02060a, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x021001,
- 0x021104, 0x000000, 0x000000, 0x000000, 0x021509, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x021e0a, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x022804, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x022c03, 0x022f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x023003, 0x000000, 0x023301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x023401, 0x023509, 0x000000, 0x023e2c, 0x000000, 0x026a01, 0x000000,
- 0x026b03, 0x000000, 0x000000, 0x026e01, 0x026f01, 0x000000, 0x000000, 0x000000,
- 0x027001, 0x000000, 0x000000, 0x027101, 0x027201, 0x000000, 0x000000, 0x027302,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x027501, 0x000000, 0x02760a, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x028002, 0x000000, 0x000000, 0x000000, 0x000000, 0x02820d, 0x028f0c, 0x029b05,
- 0x000000, 0x000000, 0x000000, 0x02a001, 0x000000, 0x000000, 0x000000, 0x02a108,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x02a905, 0x000000, 0x02ae03, 0x000000, 0x02b103, 0x000000, 0x02b406, 0x02ba01,
- 0x02bb04, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x02bf01,
- 0x02c002, 0x000000, 0x000000, 0x000000, 0x000000, 0x02c203, 0x02c501, 0x000000,
- 0x02c60f, 0x000000, 0x000000, 0x000000, 0x000000, 0x02d503, 0x000000, 0x000000,
- 0x02d801, 0x000000, 0x000000, 0x000000, 0x02d901, 0x02da15, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x02ef0a, 0x000000, 0x000000, 0x000000, 0x02f901,
- 0x000000, 0x02fa04, 0x000000, 0x000000, 0x02fe03, 0x000000, 0x000000, 0x000000,
- 0x030104, 0x030501, 0x000000, 0x000000, 0x030601, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x030701,
- 0x000000, 0x000000, 0x000000, 0x030806, 0x030e02, 0x000000, 0x000000, 0x000000,
- 0x031003, 0x031302, 0x000000, 0x000000, 0x000000, 0x000000, 0x031503, 0x000000,
- 0x000000, 0x000000, 0x031801, 0x000000, 0x000000, 0x000000, 0x000000, 0x03190a,
- 0x000000, 0x000000, 0x03230f, 0x033202, 0x033406, 0x000000, 0x033a07, 0x000000,
- 0x000000, 0x000000, 0x034101, 0x000000, 0x000000, 0x034206, 0x000000, 0x000000,
- 0x000000, 0x034803, 0x000000, 0x034b06, 0x000000, 0x035101, 0x035208, 0x035a01,
- 0x000000, 0x035b0e, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x036902, 0x000000, 0x036b01, 0x000000, 0x036c0d, 0x037903, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x037c01,
- 0x037d04, 0x038101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x038201, 0x000000, 0x000000, 0x000000, 0x038304, 0x038702, 0x038901,
- 0x000000, 0x000000, 0x000000, 0x038a01, 0x000000, 0x038b01, 0x038c01, 0x000000,
- 0x038d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x038e05, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x039306, 0x000000, 0x000000, 0x000000, 0x039903,
- 0x039c05, 0x000000, 0x03a104, 0x000000, 0x03a509, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x03ae01, 0x000000, 0x000000, 0x03af09, 0x000000, 0x03b801,
- 0x03b901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x03ba07,
- 0x000000, 0x03c101, 0x03c20d, 0x000000, 0x000000, 0x03cf01, 0x000000, 0x000000,
- 0x03d001, 0x03d101, 0x03d201, 0x03d301, 0x000000, 0x03d403, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x03d701, 0x000000, 0x000000, 0x03d802, 0x000000, 0x000000,
- 0x03da02, 0x03dc02, 0x03de01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x03df01, 0x000000, 0x000000, 0x000000,
- 0x03e003, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x03e304,
- 0x000000, 0x000000, 0x000000, 0x03e702, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x03e903, 0x000000, 0x000000, 0x000000, 0x000000, 0x03ec02, 0x03ee02,
- 0x000000, 0x000000, 0x000000, 0x03f001, 0x000000, 0x000000, 0x000000, 0x03f101,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x03f201, 0x000000,
- 0x03f302, 0x000000, 0x000000, 0x000000, 0x000000, 0x03f502, 0x03f704, 0x000000,
- 0x000000, 0x000000, 0x03fb01, 0x000000, 0x03fc01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x03fd02, 0x000000, 0x000000, 0x000000, 0x03ff01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x040001, 0x000000, 0x000000, 0x040101,
- 0x040204, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x040602, 0x000000,
- 0x040801, 0x000000, 0x000000, 0x000000, 0x000000, 0x040903, 0x000000, 0x000000,
- 0x000000, 0x040c03, 0x040f02, 0x000000, 0x000000, 0x000000, 0x041101, 0x04120a,
- 0x000000, 0x000000, 0x041c01, 0x000000, 0x041d03, 0x000000, 0x000000, 0x042001,
- 0x000000, 0x000000, 0x000000, 0x042102, 0x000000, 0x000000, 0x042301, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x042401, 0x000000,
- 0x000000, 0x042501, 0x000000, 0x000000, 0x000000, 0x000000, 0x042601, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x042701, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x042801, 0x000000, 0x000000, 0x000000, 0x000000, 0x042901, 0x042a02,
- 0x000000, 0x000000, 0x000000, 0x042c01, 0x042d02, 0x042f01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x043002, 0x000000, 0x043205, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x043704, 0x043b04, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x043f06, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x044501, 0x000000, 0x04460c, 0x000000, 0x045205, 0x000000,
- 0x000000, 0x000000, 0x045702, 0x045905, 0x000000, 0x045e03, 0x000000, 0x046104,
- 0x000000, 0x000000, 0x046503, 0x000000, 0x046801, 0x000000, 0x046902, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x046b0c, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x047701, 0x000000, 0x000000, 0x047801, 0x047902,
- 0x000000, 0x047b01, 0x047c01, 0x000000, 0x000000, 0x047d01, 0x047e01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x047f01, 0x000000, 0x048001, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x048109, 0x000000, 0x048a01, 0x000000, 0x000000,
- 0x000000, 0x048b01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x048c02,
- 0x000000, 0x048e03, 0x000000, 0x049101, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x049201, 0x049301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x049402, 0x049602, 0x049809, 0x000000, 0x04a109,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x04aa1a, 0x000000, 0x000000, 0x04c403, 0x000000, 0x000000,
- 0x04c703, 0x000000, 0x000000, 0x04ca01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x04cb01, 0x04cc01, 0x000000, 0x000000, 0x04cd01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x04ce02,
- 0x000000, 0x000000, 0x000000, 0x04d00a, 0x000000, 0x000000, 0x04da01, 0x04db02,
- 0x04dd02, 0x04df06, 0x000000, 0x000000, 0x000000, 0x000000, 0x04e501, 0x04e603,
- 0x04e901, 0x04ea01, 0x000000, 0x000000, 0x000000, 0x04eb01, 0x000000, 0x000000,
- 0x04ec01, 0x000000, 0x000000, 0x000000, 0x04ed02, 0x04ef01, 0x000000, 0x000000,
- 0x04f001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x04f101, 0x000000, 0x04f206,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x04f801, 0x04f902, 0x04fb0d, 0x050802,
- 0x000000, 0x000000, 0x050a01, 0x050b01, 0x050c01, 0x000000, 0x000000, 0x050d01,
- 0x050e01, 0x050f06, 0x000000, 0x000000, 0x000000, 0x000000, 0x051502, 0x000000,
- 0x051707, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x051e01, 0x051f02, 0x000000, 0x052102, 0x000000, 0x052304,
- 0x052701, 0x052801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x052901, 0x052a01, 0x052b0b, 0x000000, 0x053601, 0x000000, 0x053705,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x053c01, 0x053d04, 0x000000, 0x05410b,
- 0x000000, 0x054c01, 0x000000, 0x000000, 0x000000, 0x054d02, 0x054f01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x055001, 0x000000, 0x000000,
- 0x000000, 0x055103, 0x055401, 0x000000, 0x05550d, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x056207, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x056902, 0x000000, 0x056b07, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x057208, 0x000000, 0x000000, 0x000000, 0x000000, 0x057a02,
- 0x000000, 0x057c02, 0x000000, 0x000000, 0x057e01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x057f01, 0x058001, 0x000000, 0x058102, 0x000000, 0x000000,
- 0x000000, 0x058301, 0x058403, 0x05870d, 0x000000, 0x000000, 0x059416, 0x05aa03,
- 0x000000, 0x000000, 0x05ad01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x05ae01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x05af03, 0x000000, 0x000000, 0x000000, 0x000000, 0x05b201,
- 0x05b301, 0x05b40e, 0x05c202, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x05c403, 0x000000, 0x05c701, 0x000000, 0x05c805, 0x000000, 0x000000,
- 0x05cd09, 0x000000, 0x000000, 0x05d601, 0x000000, 0x000000, 0x000000, 0x05d702,
- 0x000000, 0x000000, 0x05d901, 0x05da02, 0x05dc13, 0x05ef01, 0x05f005, 0x000000,
- 0x000000, 0x000000, 0x05f502, 0x000000, 0x000000, 0x000000, 0x000000, 0x05f701,
- 0x05f804, 0x000000, 0x05fc03, 0x05ff01, 0x000000, 0x000000, 0x000000, 0x060001,
- 0x06010b, 0x060c01, 0x000000, 0x060d08, 0x061501, 0x06160d, 0x062301, 0x000000,
- 0x062402, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x062604, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x062a14, 0x000000, 0x063e04, 0x000000, 0x064201, 0x000000, 0x064301, 0x000000,
- 0x064403, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x064702, 0x064901,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x064a04, 0x000000, 0x064e01, 0x000000,
- 0x064f02, 0x065101, 0x000000, 0x065203, 0x000000, 0x000000, 0x06550c, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x066101, 0x000000, 0x000000, 0x000000, 0x066206,
- 0x000000, 0x000000, 0x000000, 0x066802, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x066a07, 0x000000, 0x000000,
- 0x000000, 0x067102, 0x000000, 0x000000, 0x067301, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x067401, 0x000000, 0x000000, 0x000000, 0x067501, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x067607, 0x000000, 0x067d01, 0x000000, 0x000000,
- 0x067e01, 0x067f04, 0x000000, 0x000000, 0x068301, 0x000000, 0x000000, 0x068401,
- 0x068502, 0x000000, 0x068701, 0x068801, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x068901, 0x000000, 0x000000, 0x000000, 0x068a01, 0x068b04, 0x068f02,
- 0x000000, 0x069105, 0x000000, 0x000000, 0x069611, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x06a701, 0x000000, 0x000000, 0x06a810, 0x000000, 0x000000,
- 0x06b80d, 0x000000, 0x000000, 0x000000, 0x000000, 0x06c501, 0x06c602, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x06c802, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x06ca01, 0x000000, 0x000000, 0x06cb01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x06cc02, 0x06ce02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x06d004, 0x000000, 0x000000, 0x000000,
- 0x06d402, 0x000000, 0x000000, 0x000000, 0x06d609, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x06df05, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x06e413, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x06f701, 0x000000,
- 0x06f802, 0x06fa01, 0x000000, 0x000000, 0x000000, 0x000000, 0x06fb01, 0x06fc01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x06fd01, 0x06fe02, 0x070005, 0x000000,
- 0x070501, 0x070602, 0x000000, 0x000000, 0x000000, 0x000000, 0x070802, 0x000000,
- 0x070a02, 0x070c01, 0x000000, 0x000000, 0x000000, 0x070d05, 0x071201, 0x000000,
- 0x071302, 0x071507, 0x000000, 0x071c01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x071d0b, 0x07280f, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x073709, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x074002, 0x000000, 0x000000, 0x000000, 0x074202, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x074405, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x074937, 0x000000, 0x078004, 0x078404, 0x000000, 0x000000, 0x000000,
- 0x078801, 0x078901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x078a01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x078b02, 0x000000, 0x000000, 0x000000, 0x078d0c, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x079902, 0x000000, 0x000000,
- 0x079b02, 0x000000, 0x000000, 0x000000, 0x000000, 0x079d07, 0x000000, 0x07a401,
- 0x000000, 0x07a507, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x07ac02,
- 0x07ae01, 0x000000, 0x000000, 0x000000, 0x000000, 0x07af01, 0x000000, 0x07b002,
- 0x000000, 0x07b201, 0x07b301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x07b402, 0x000000, 0x000000, 0x000000, 0x000000, 0x07b601,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x07b703, 0x07ba03, 0x000000, 0x07bd02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x07bf04, 0x07c302, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x07c50e, 0x07d304, 0x07d704, 0x000000, 0x000000, 0x000000,
- 0x07db01, 0x07dc02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x07de01, 0x000000, 0x07df01, 0x07e004,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x07e404, 0x000000, 0x000000, 0x07e804,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x07ec07, 0x07f304, 0x07f702,
- 0x000000, 0x07f901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x07fa02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x07fc01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x07fd01, 0x07fe01,
- 0x000000, 0x07ff01, 0x08000a, 0x000000, 0x080a04, 0x000000, 0x000000, 0x080e01,
- 0x000000, 0x080f01, 0x081001, 0x000000, 0x000000, 0x081103, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x081401, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x081501, 0x000000, 0x081601, 0x000000, 0x081708, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x081f02, 0x082101, 0x082202, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x082401, 0x000000, 0x082502, 0x082701, 0x082810, 0x083802,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x083a09, 0x000000, 0x000000, 0x084301,
- 0x084403, 0x000000, 0x084702, 0x000000, 0x000000, 0x084901, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x084a02, 0x000000, 0x000000, 0x084c02, 0x084e01,
- 0x084f02, 0x000000, 0x000000, 0x000000, 0x085107, 0x000000, 0x000000, 0x000000,
- 0x085802, 0x085a01, 0x085b01, 0x085c03, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x085f01, 0x086001, 0x000000,
- 0x000000, 0x086103, 0x086401, 0x000000, 0x000000, 0x000000, 0x000000, 0x086501,
- 0x000000, 0x000000, 0x086607, 0x086d01, 0x000000, 0x086e01, 0x000000, 0x086f01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x087001, 0x087120,
- 0x000000, 0x000000, 0x089108, 0x089903, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x089c0c, 0x08a803, 0x000000, 0x08ab01, 0x000000, 0x08ac01,
- 0x000000, 0x08ad02, 0x08af0d, 0x000000, 0x000000, 0x000000, 0x000000, 0x08bc01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x08bd01, 0x000000, 0x08be02,
- 0x08c001, 0x000000, 0x000000, 0x08c101, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x08c209, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x08cb01, 0x000000, 0x000000, 0x08cc04, 0x000000, 0x000000, 0x000000, 0x08d001,
- 0x08d102, 0x000000, 0x000000, 0x000000, 0x08d302, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x08d502, 0x000000, 0x08d705, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x08dc01, 0x08dd01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x08de02,
- 0x000000, 0x08e004, 0x000000, 0x000000, 0x000000, 0x000000, 0x08e401, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x08e501, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x08e601, 0x000000, 0x08e703, 0x000000, 0x08ea04, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x08ee02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x08f001,
- 0x08f101, 0x000000, 0x000000, 0x000000, 0x000000, 0x08f201, 0x000000, 0x08f301,
- 0x000000, 0x000000, 0x000000, 0x08f402, 0x08f601, 0x08f702, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x08f905, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x08fe02, 0x000000, 0x090001, 0x000000, 0x000000,
- 0x090101, 0x000000, 0x090206, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x090801,
- 0x090901, 0x090a01, 0x090b02, 0x000000, 0x000000, 0x090d01, 0x000000, 0x090e03,
- 0x000000, 0x091101, 0x000000, 0x000000, 0x091201, 0x000000, 0x091302, 0x000000,
- 0x091509, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x091e01, 0x000000, 0x091f02, 0x092101, 0x092201, 0x000000, 0x09230f, 0x000000,
- 0x000000, 0x000000, 0x093214, 0x000000, 0x094607, 0x000000, 0x094d04, 0x095101,
- 0x000000, 0x095207, 0x000000, 0x000000, 0x095901, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x095a02, 0x000000, 0x095c01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x095d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x095e03, 0x096102, 0x096304, 0x096703, 0x096a02, 0x000000, 0x000000,
- 0x000000, 0x096c02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x096e01, 0x000000, 0x000000, 0x096f01, 0x097002, 0x097201, 0x000000, 0x097305,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x097801, 0x000000, 0x000000,
- 0x000000, 0x097901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x097a01, 0x097b01,
- 0x000000, 0x097c01, 0x000000, 0x000000, 0x097d04, 0x098102, 0x000000, 0x098305,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x098801, 0x098903,
- 0x000000, 0x098c01, 0x000000, 0x000000, 0x098d0b, 0x099802, 0x000000, 0x099a03,
- 0x000000, 0x000000, 0x099d02, 0x000000, 0x099f0d, 0x000000, 0x09ac01, 0x000000,
- 0x09ad08, 0x09b505, 0x000000, 0x000000, 0x000000, 0x09ba02, 0x000000, 0x000000,
- 0x09bc01, 0x000000, 0x000000, 0x09bd01, 0x000000, 0x09be12, 0x000000, 0x09d00a,
- 0x09da01, 0x000000, 0x000000, 0x000000, 0x000000, 0x09db04, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x09df01, 0x09e001, 0x09e101, 0x000000,
- 0x000000, 0x09e202, 0x000000, 0x09e401, 0x000000, 0x000000, 0x09e501, 0x09e601,
- 0x000000, 0x09e701, 0x09e801, 0x000000, 0x09e901, 0x000000, 0x09ea01, 0x09eb05,
- 0x000000, 0x000000, 0x000000, 0x09f001, 0x09f102, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x09f301, 0x000000, 0x000000, 0x09f401,
- 0x000000, 0x09f505, 0x09fa02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x09fc03, 0x000000, 0x09ff01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0a000f, 0x000000,
- 0x0a0f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0a1001, 0x0a1101, 0x000000, 0x000000, 0x000000, 0x0a1201,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0a1301,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0a1402, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x0a1601, 0x000000, 0x0a1704, 0x000000, 0x0a1b02, 0x0a1d01, 0x000000,
- 0x000000, 0x000000, 0x0a1e02, 0x000000, 0x000000, 0x000000, 0x000000, 0x0a2001,
- 0x0a2101, 0x000000, 0x0a2206, 0x000000, 0x0a2801, 0x0a2901, 0x000000, 0x000000,
- 0x0a2a02, 0x000000, 0x0a2c01, 0x000000, 0x000000, 0x000000, 0x0a2d01, 0x0a2e04,
- 0x0a3204, 0x000000, 0x0a3602, 0x000000, 0x000000, 0x000000, 0x0a3802, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0a3a01, 0x000000, 0x000000, 0x0a3b01,
- 0x000000, 0x000000, 0x000000, 0x0a3c02, 0x000000, 0x0a3e02, 0x000000, 0x0a4003,
- 0x000000, 0x000000, 0x0a4301, 0x0a4406, 0x000000, 0x000000, 0x0a4a01, 0x0a4b01,
- 0x0a4c02, 0x000000, 0x000000, 0x0a4e03, 0x000000, 0x000000, 0x000000, 0x0a5101,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0a5201, 0x000000, 0x0a5305, 0x000000,
- 0x0a5806, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0a5e01,
- 0x0a5f01, 0x000000, 0x000000, 0x0a6001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x0a6101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0a6205,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0a6715, 0x0a7c02, 0x000000, 0x0a7e01,
- 0x000000, 0x0a7f01, 0x000000, 0x000000, 0x0a8005, 0x000000, 0x000000, 0x0a8501,
- 0x000000, 0x0a8603, 0x000000, 0x000000, 0x0a8903, 0x000000, 0x0a8c05, 0x0a9101,
- 0x000000, 0x000000, 0x000000, 0x0a9202, 0x000000, 0x0a9401, 0x0a9501, 0x0a9609,
- 0x000000, 0x000000, 0x000000, 0x0a9f0a, 0x0aa905, 0x0aae03, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0ab102, 0x0ab307, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0aba01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0abb01,
- 0x000000, 0x000000, 0x0abc01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0abd02, 0x000000, 0x000000, 0x0abf02, 0x0ac104, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0ac504, 0x000000, 0x000000, 0x000000, 0x000000, 0x0ac901,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0aca01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0acb03, 0x0ace01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0acf02, 0x000000, 0x000000, 0x0ad101, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0ad201, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0ad301,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0ad403, 0x0ad707, 0x000000,
- 0x000000, 0x0ade01, 0x000000, 0x000000, 0x0adf05, 0x000000, 0x0ae401, 0x000000,
- 0x0ae502, 0x000000, 0x000000, 0x000000, 0x0ae701, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0ae802,
- 0x0aea01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0aeb01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0aec02, 0x0aee04,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0af203, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x0af501, 0x000000, 0x0af601, 0x0af709, 0x0b0002, 0x0b0202, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0b0401, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x0b0501, 0x0b0601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0b0704, 0x000000, 0x000000, 0x0b0b06, 0x000000, 0x0b1102,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0b1302, 0x000000,
- 0x0b1501, 0x000000, 0x000000, 0x0b1602, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0b1801, 0x000000, 0x000000,
- 0x000000, 0x0b1901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0b1a01,
- 0x0b1b02, 0x000000, 0x000000, 0x000000, 0x000000, 0x0b1d01, 0x000000, 0x000000,
- 0x0b1e02, 0x000000, 0x0b2004, 0x000000, 0x0b2404, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0b2801, 0x000000, 0x000000, 0x000000, 0x000000, 0x0b2901,
- 0x000000, 0x0b2a01, 0x000000, 0x000000, 0x0b2b02, 0x000000, 0x0b2d06, 0x0b3307,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0b3a01, 0x000000, 0x0b3b01, 0x000000,
- 0x000000, 0x0b3c01, 0x0b3d06, 0x0b4305, 0x0b4801, 0x0b4901, 0x000000, 0x000000,
- 0x0b4a01, 0x000000, 0x000000, 0x0b4b0e, 0x000000, 0x000000, 0x000000, 0x0b5906,
- 0x0b5f01, 0x000000, 0x0b6003, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x0b6312, 0x000000, 0x0b7501, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x0b7604, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0b7a01, 0x000000, 0x0b7b01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0b7c05, 0x000000, 0x000000, 0x000000, 0x0b8103, 0x000000,
- 0x0b8401, 0x000000, 0x000000, 0x0b8504, 0x0b8901, 0x0b8a04, 0x000000, 0x000000,
- 0x000000, 0x0b8e02, 0x0b9001, 0x000000, 0x000000, 0x0b9101, 0x000000, 0x0b9201,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0b9301, 0x0b9401,
- 0x0b9501, 0x0b9602, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x0b9801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0b9905,
- 0x0b9e07, 0x000000, 0x0ba501, 0x0ba601, 0x0ba705, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0bac01, 0x000000, 0x000000, 0x0bad01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0bae07, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0bb502, 0x000000,
- 0x0bb701, 0x0bb801, 0x000000, 0x000000, 0x0bb901, 0x000000, 0x000000, 0x000000,
- 0x0bba09, 0x000000, 0x000000, 0x0bc30a, 0x000000, 0x000000, 0x0bcd02, 0x000000,
- 0x000000, 0x0bcf01, 0x000000, 0x000000, 0x0bd002, 0x0bd203, 0x000000, 0x000000,
- 0x000000, 0x0bd504, 0x000000, 0x000000, 0x000000, 0x000000, 0x0bd901, 0x0bda01,
- 0x000000, 0x000000, 0x0bdb03, 0x000000, 0x0bde0a, 0x000000, 0x0be801, 0x000000,
- 0x000000, 0x0be901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0bea02, 0x000000, 0x0bec04, 0x000000, 0x000000, 0x000000, 0x000000, 0x0bf001,
- 0x000000, 0x0bf105, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0bf60a, 0x000000, 0x000000, 0x0c0001, 0x0c0104, 0x0c0501,
- 0x0c0601, 0x000000, 0x0c0706, 0x0c0d01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0c0e05, 0x000000, 0x0c1303, 0x000000,
- 0x0c1604, 0x000000, 0x0c1a01, 0x000000, 0x000000, 0x000000, 0x0c1b01, 0x000000,
- 0x0c1c01, 0x0c1d14, 0x000000, 0x0c3102, 0x000000, 0x000000, 0x000000, 0x0c3301,
- 0x000000, 0x0c3407, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0c3b02, 0x0c3d02, 0x000000, 0x000000, 0x0c3f0b, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0c4a02, 0x000000, 0x000000, 0x0c4c01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0c4d01, 0x0c4e01, 0x0c4f06,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0c5502, 0x000000, 0x000000, 0x0c5701,
- 0x000000, 0x000000, 0x0c5801, 0x000000, 0x000000, 0x0c5901, 0x000000, 0x0c5a03,
- 0x0c5d02, 0x0c5f01, 0x000000, 0x000000, 0x0c6001, 0x0c6101, 0x000000, 0x000000,
- 0x0c620b, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0c6d02, 0x000000, 0x0c6f04, 0x000000, 0x000000, 0x0c7306, 0x000000, 0x000000,
- 0x0c790a, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0c8305,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0c8807, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0c8f01, 0x0c9002, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x0c9201, 0x000000, 0x000000, 0x0c9302, 0x0c9501, 0x000000, 0x0c9601,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0c9701, 0x000000, 0x0c9801, 0x0c9902,
- 0x000000, 0x0c9b05, 0x0ca006, 0x000000, 0x0ca602, 0x0ca801, 0x0ca909, 0x000000,
- 0x000000, 0x0cb201, 0x0cb301, 0x0cb402, 0x0cb605, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0cbb01, 0x000000, 0x000000,
- 0x0cbc06, 0x000000, 0x000000, 0x000000, 0x0cc204, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0cc607, 0x000000, 0x000000,
- 0x000000, 0x0ccd04, 0x000000, 0x0cd102, 0x000000, 0x000000, 0x000000, 0x0cd301,
- 0x000000, 0x000000, 0x000000, 0x0cd401, 0x0cd501, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0cd605, 0x0cdb02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0cdd02, 0x0cdf03, 0x000000, 0x000000, 0x0ce201, 0x0ce301,
- 0x0ce401, 0x000000, 0x0ce502, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0ce702, 0x0ce902, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0ceb03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0cee01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x0cef02, 0x0cf101, 0x0cf203, 0x000000, 0x0cf501,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0cf602, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0cf801, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0cf902, 0x000000, 0x000000, 0x0cfb01, 0x0cfc01, 0x000000, 0x000000, 0x0cfd02,
- 0x000000, 0x000000, 0x0cff01, 0x0d0002, 0x0d0204, 0x000000, 0x000000, 0x0d0602,
- 0x000000, 0x000000, 0x0d0801, 0x000000, 0x0d0905, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x0d0e04, 0x0d1201, 0x000000, 0x000000, 0x000000, 0x0d1303, 0x000000,
- 0x000000, 0x0d1603, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0d1901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x0d1a0a, 0x000000, 0x000000, 0x0d2401, 0x0d2501,
- 0x0d2601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0d2701,
- 0x0d2801, 0x000000, 0x0d2903, 0x000000, 0x000000, 0x0d2c03, 0x000000, 0x000000,
- 0x0d2f01, 0x000000, 0x000000, 0x0d3002, 0x000000, 0x0d3208, 0x0d3a03, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0d3d0c, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0d4901, 0x000000, 0x0d4a21, 0x0d6b01,
- 0x0d6c02, 0x0d6e02, 0x000000, 0x000000, 0x0d7001, 0x000000, 0x000000, 0x000000,
- 0x0d7107, 0x000000, 0x000000, 0x0d7801, 0x000000, 0x000000, 0x000000, 0x0d7901,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0d7a01,
- 0x000000, 0x000000, 0x0d7b01, 0x000000, 0x0d7c03, 0x0d7f01, 0x000000, 0x0d8001,
- 0x000000, 0x000000, 0x0d8101, 0x000000, 0x0d8201, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0d8309, 0x000000,
- 0x000000, 0x0d8c01, 0x0d8d05, 0x000000, 0x000000, 0x0d9205, 0x000000, 0x000000,
- 0x000000, 0x0d9707, 0x0d9e02, 0x0da001, 0x000000, 0x0da101, 0x000000, 0x000000,
- 0x0da208, 0x0daa01, 0x000000, 0x0dab01, 0x000000, 0x000000, 0x0dac01, 0x000000,
- 0x000000, 0x000000, 0x0dad0c, 0x000000, 0x0db902, 0x000000, 0x000000, 0x000000,
- 0x0dbb01, 0x0dbc01, 0x000000, 0x000000, 0x000000, 0x0dbd02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0dbf01, 0x0dc001, 0x0dc104, 0x000000, 0x000000, 0x0dc504,
- 0x0dc901, 0x000000, 0x000000, 0x000000, 0x000000, 0x0dca05, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0dcf03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0dd202, 0x0dd401, 0x000000, 0x000000, 0x0dd502, 0x0dd703,
- 0x000000, 0x0dda01, 0x0ddb02, 0x000000, 0x000000, 0x0ddd03, 0x000000, 0x0de001,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0de101,
- 0x000000, 0x0de203, 0x000000, 0x0de501, 0x000000, 0x0de604, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0dea12, 0x000000,
- 0x0dfc12, 0x000000, 0x000000, 0x000000, 0x0e0e01, 0x000000, 0x000000, 0x000000,
- 0x0e0f01, 0x000000, 0x0e1001, 0x000000, 0x0e1101, 0x0e1203, 0x000000, 0x000000,
- 0x0e1502, 0x0e1702, 0x000000, 0x0e1901, 0x0e1a01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0e1b04, 0x0e1f03,
- 0x0e2205, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0e2704, 0x0e2b01,
- 0x000000, 0x0e2c05, 0x0e3101, 0x0e3201, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0e3301, 0x000000, 0x0e3401, 0x000000, 0x000000, 0x0e350d,
- 0x0e4201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0e4301,
- 0x0e4403, 0x000000, 0x000000, 0x000000, 0x000000, 0x0e4701, 0x0e4801, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0e4901, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x0e4a02, 0x000000, 0x0e4c02, 0x0e4e01, 0x0e4f01, 0x000000, 0x0e501b,
- 0x000000, 0x0e6b02, 0x000000, 0x000000, 0x000000, 0x0e6d02, 0x0e6f02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x0e7102, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x0e7301, 0x000000, 0x000000, 0x0e7407, 0x000000,
- 0x000000, 0x000000, 0x0e7b01, 0x0e7c02, 0x000000, 0x000000, 0x000000, 0x0e7e01,
- 0x0e7f0b, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0e8a01, 0x000000,
- 0x0e8b01, 0x0e8c01, 0x000000, 0x000000, 0x0e8d02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x0e8f01, 0x0e9005, 0x000000, 0x0e9501, 0x0e9602,
- 0x0e9806, 0x000000, 0x000000, 0x000000, 0x0e9e02, 0x000000, 0x0ea001, 0x000000,
- 0x000000, 0x0ea101, 0x000000, 0x000000, 0x0ea201, 0x0ea309, 0x000000, 0x0eac02,
- 0x000000, 0x0eae07, 0x0eb501, 0x0eb601, 0x000000, 0x0eb701, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0eb802, 0x000000, 0x000000, 0x0eba03, 0x000000, 0x0ebd01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0ebe01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0ebf01, 0x000000, 0x0ec009,
- 0x0ec902, 0x000000, 0x0ecb01, 0x0ecc02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0ece14, 0x000000, 0x0ee203,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0ee501, 0x0ee601, 0x0ee704,
- 0x0eeb01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0eec04, 0x000000, 0x000000, 0x0ef00a, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0efa0d, 0x000000, 0x000000, 0x0f0701, 0x0f0801, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x0f0901, 0x0f0a02, 0x0f0c06, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0f1201, 0x000000, 0x0f1302, 0x0f1501, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x0f160a, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0f2001, 0x000000, 0x0f2101, 0x000000, 0x0f220b, 0x0f2d01,
- 0x000000, 0x0f2e05, 0x000000, 0x000000, 0x000000, 0x000000, 0x0f3315, 0x0f4801,
- 0x000000, 0x0f490b, 0x000000, 0x000000, 0x000000, 0x0f5406, 0x0f5a03, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x0f5d07, 0x0f6401, 0x0f6501, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x0f6601, 0x000000, 0x000000, 0x000000, 0x0f6701, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0f6802, 0x000000, 0x0f6a09, 0x000000,
- 0x000000, 0x000000, 0x0f7301, 0x0f7401, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0f7501, 0x000000, 0x0f7606,
- 0x0f7c01, 0x000000, 0x000000, 0x000000, 0x000000, 0x0f7d01, 0x000000, 0x000000,
- 0x000000, 0x0f7e01, 0x000000, 0x000000, 0x000000, 0x0f7f06, 0x0f8501, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x0f8602, 0x0f8801, 0x0f8902, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x0f8b05, 0x000000, 0x0f9001, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0f9119, 0x0faa06,
- 0x000000, 0x000000, 0x0fb001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0fb101, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x0fb204, 0x000000, 0x0fb604, 0x000000, 0x000000,
- 0x000000, 0x0fba01, 0x0fbb03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x0fbe03, 0x0fc101, 0x000000, 0x000000, 0x0fc202,
- 0x0fc402, 0x0fc601, 0x0fc713, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0fda01, 0x000000, 0x0fdb01, 0x0fdc01, 0x000000, 0x0fdd01, 0x0fde03, 0x0fe106,
- 0x000000, 0x000000, 0x0fe710, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x0ff703, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x0ffa03, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x0ffd01, 0x0ffe01, 0x000000, 0x000000, 0x0fff02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x100101, 0x100202, 0x000000,
- 0x000000, 0x000000, 0x100403, 0x000000, 0x100701, 0x000000, 0x000000, 0x000000,
- 0x100803, 0x100b05, 0x000000, 0x101002, 0x000000, 0x000000, 0x101201, 0x10130a,
- 0x000000, 0x101d01, 0x000000, 0x000000, 0x101e01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x101f04, 0x102301, 0x102401, 0x000000,
- 0x102503, 0x000000, 0x000000, 0x000000, 0x102804, 0x000000, 0x000000, 0x102c03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x102f02, 0x103101, 0x103201, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1033a3, 0x000000, 0x000000, 0x10d603, 0x000000,
- 0x000000, 0x000000, 0x10d90f, 0x10e802, 0x000000, 0x10ea01, 0x10eb01, 0x000000,
- 0x10ec01, 0x000000, 0x10ed01, 0x000000, 0x000000, 0x000000, 0x10ee01, 0x000000,
- 0x10ef01, 0x000000, 0x000000, 0x000000, 0x10f005, 0x000000, 0x000000, 0x000000,
- 0x10f503, 0x10f801, 0x10f904, 0x10fd01, 0x000000, 0x10fe01, 0x10ff02, 0x000000,
- 0x110101, 0x110209, 0x000000, 0x000000, 0x110b05, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x111004, 0x000000, 0x000000, 0x000000, 0x111401, 0x000000, 0x111503,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x111801, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x111902, 0x000000, 0x000000, 0x000000, 0x111b01, 0x000000, 0x000000,
- 0x000000, 0x111c01, 0x111d02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x111f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x112001,
- 0x000000, 0x000000, 0x000000, 0x112105, 0x000000, 0x000000, 0x000000, 0x112607,
- 0x112d09, 0x000000, 0x000000, 0x000000, 0x000000, 0x113602, 0x113801, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x113901, 0x000000, 0x000000, 0x113a03, 0x000000,
- 0x113d01, 0x113e03, 0x114109, 0x000000, 0x114a01, 0x114b02, 0x114d01, 0x000000,
- 0x114e11, 0x000000, 0x115f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x116002, 0x000000, 0x000000, 0x000000, 0x116201, 0x116301, 0x000000, 0x116401,
- 0x116502, 0x000000, 0x116703, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x116a04, 0x000000, 0x116e03, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x117101, 0x000000, 0x117202, 0x000000, 0x117401, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x117501, 0x117602, 0x000000, 0x117802,
- 0x000000, 0x000000, 0x117a02, 0x000000, 0x000000, 0x000000, 0x000000, 0x117c01,
- 0x117d01, 0x000000, 0x000000, 0x000000, 0x117e02, 0x118001, 0x000000, 0x118102,
- 0x000000, 0x118302, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x118502, 0x000000, 0x000000, 0x118709, 0x000000, 0x000000, 0x11900b,
- 0x000000, 0x119b02, 0x000000, 0x000000, 0x119d01, 0x119e09, 0x000000, 0x11a703,
- 0x11aa01, 0x000000, 0x11ab01, 0x000000, 0x11ac02, 0x000000, 0x11ae01, 0x000000,
- 0x000000, 0x11af02, 0x000000, 0x000000, 0x000000, 0x000000, 0x11b101, 0x000000,
- 0x11b201, 0x000000, 0x000000, 0x11b301, 0x000000, 0x000000, 0x000000, 0x11b402,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x11b601, 0x000000, 0x000000,
- 0x000000, 0x11b705, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x11bc02,
- 0x11be01, 0x11bf01, 0x11c002, 0x11c201, 0x000000, 0x11c302, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x11c501, 0x11c602, 0x000000, 0x11c809, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x11d109, 0x000000, 0x000000, 0x11da03, 0x000000, 0x000000,
- 0x000000, 0x11dd01, 0x000000, 0x000000, 0x000000, 0x11de01, 0x000000, 0x11df01,
- 0x000000, 0x11e004, 0x000000, 0x000000, 0x000000, 0x11e401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x11e504, 0x000000, 0x000000, 0x11e902, 0x000000,
- 0x000000, 0x000000, 0x11eb09, 0x000000, 0x000000, 0x11f401, 0x000000, 0x11f512,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x120701, 0x120801, 0x000000, 0x120901,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x120a01, 0x000000, 0x120b01, 0x000000,
- 0x000000, 0x120c03, 0x000000, 0x120f01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x121020, 0x000000, 0x000000, 0x000000, 0x000000, 0x123002, 0x000000,
- 0x123208, 0x000000, 0x123a01, 0x000000, 0x000000, 0x000000, 0x123b02, 0x123d02,
- 0x000000, 0x123f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x124003,
- 0x12430b, 0x000000, 0x000000, 0x000000, 0x000000, 0x124e0a, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x125802, 0x000000, 0x000000, 0x000000, 0x000000, 0x125a02,
- 0x000000, 0x125c01, 0x000000, 0x000000, 0x000000, 0x000000, 0x125d04, 0x000000,
- 0x000000, 0x126107, 0x000000, 0x000000, 0x126801, 0x000000, 0x000000, 0x000000,
- 0x126901, 0x126a01, 0x126b01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x126c03,
- 0x000000, 0x000000, 0x126f01, 0x000000, 0x127008, 0x127806, 0x127e02, 0x000000,
- 0x000000, 0x000000, 0x128002, 0x000000, 0x000000, 0x000000, 0x128201, 0x000000,
- 0x000000, 0x000000, 0x128301, 0x000000, 0x000000, 0x000000, 0x128401, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x128503, 0x000000, 0x128801, 0x128901,
- 0x128a01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x128b01, 0x000000, 0x000000, 0x000000, 0x128c02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x128e23, 0x12b101, 0x000000, 0x12b201, 0x000000,
- 0x12b308, 0x12bb01, 0x000000, 0x000000, 0x12bc01, 0x12bd01, 0x000000, 0x12be07,
- 0x12c501, 0x12c602, 0x000000, 0x000000, 0x000000, 0x000000, 0x12c801, 0x12c901,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x12ca01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x12cb01, 0x000000, 0x12cc02, 0x000000,
- 0x000000, 0x12ce06, 0x000000, 0x12d401, 0x12d501, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x12d601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x12d702, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x12d902, 0x000000, 0x000000, 0x000000, 0x12db01, 0x000000, 0x12dc0e,
- 0x000000, 0x000000, 0x000000, 0x12ea04, 0x000000, 0x000000, 0x12ee06, 0x000000,
- 0x12f402, 0x12f603, 0x12f901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x12fa05, 0x000000, 0x12ff0f, 0x000000, 0x000000, 0x130e01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x130f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x131001,
- 0x000000, 0x131101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x131201, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x131302, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x131501, 0x131601,
- 0x131706, 0x131d02, 0x131f06, 0x000000, 0x132503, 0x000000, 0x000000, 0x13280a,
- 0x000000, 0x000000, 0x133201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x133301, 0x133402, 0x133602, 0x133805, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x133d01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x133e02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x134001, 0x000000, 0x134101, 0x134207, 0x000000, 0x13490e, 0x000000,
- 0x135701, 0x000000, 0x135804, 0x135c03, 0x135f04, 0x136337, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x139a01, 0x139b02, 0x139d01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x139e01, 0x000000, 0x000000,
- 0x000000, 0x139f01, 0x000000, 0x000000, 0x000000, 0x13a003, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x13a301, 0x000000, 0x000000, 0x000000, 0x000000, 0x13a401,
- 0x13a501, 0x13a602, 0x000000, 0x13a801, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x13a901, 0x13aa01, 0x000000,
- 0x13ab01, 0x000000, 0x000000, 0x13ac01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x13ad01, 0x000000, 0x000000, 0x13ae02, 0x000000, 0x000000, 0x000000, 0x13b001,
- 0x13b102, 0x000000, 0x000000, 0x000000, 0x000000, 0x13b305, 0x13b805, 0x13bd01,
- 0x000000, 0x13be02, 0x000000, 0x13c003, 0x000000, 0x000000, 0x000000, 0x13c303,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x13c601, 0x000000, 0x13c701,
- 0x13c802, 0x000000, 0x13ca01, 0x000000, 0x000000, 0x000000, 0x13cb08, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x13d301, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x13d401, 0x000000, 0x000000, 0x13d502, 0x13d703,
- 0x000000, 0x000000, 0x13da02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x13dc0d, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x13e901, 0x13ea02, 0x13ec04, 0x13f002, 0x13f201, 0x000000,
- 0x13f301, 0x000000, 0x13f401, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x13f507, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x13fc01, 0x13fd03, 0x000000, 0x140001, 0x000000, 0x140108, 0x000000, 0x000000,
- 0x140907, 0x000000, 0x000000, 0x000000, 0x14100b, 0x000000, 0x000000, 0x000000,
- 0x141b03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x141e03, 0x142101, 0x000000, 0x000000, 0x000000, 0x142201, 0x000000, 0x000000,
- 0x142303, 0x142602, 0x142801, 0x000000, 0x000000, 0x000000, 0x000000, 0x142901,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x142a01, 0x142b02, 0x000000, 0x142d01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x142e05, 0x000000, 0x000000, 0x000000, 0x143306, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x143901, 0x143a0b, 0x000000,
- 0x000000, 0x144501, 0x000000, 0x000000, 0x144601, 0x144702, 0x144904, 0x000000,
- 0x000000, 0x144d03, 0x145002, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x145203, 0x000000, 0x145503, 0x145804, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x145c01, 0x000000, 0x145d02, 0x145f01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x146001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x146101, 0x14620c, 0x000000, 0x146e0d,
- 0x000000, 0x000000, 0x147b05, 0x148005, 0x000000, 0x148501, 0x000000, 0x148602,
- 0x000000, 0x000000, 0x148801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x148902, 0x000000, 0x148b0a, 0x149507, 0x000000, 0x149c03, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x149f01, 0x14a001, 0x14a101, 0x14a201,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x14a301, 0x000000, 0x14a402,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x14a601, 0x14a701, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x14a802, 0x14aa03, 0x000000, 0x000000, 0x14ad01, 0x000000, 0x000000,
- 0x14ae09, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x14b702, 0x000000, 0x000000, 0x14b901, 0x14ba01, 0x14bb01, 0x000000, 0x14bc01,
- 0x000000, 0x000000, 0x14bd01, 0x000000, 0x000000, 0x000000, 0x000000, 0x14be01,
- 0x14bf01, 0x000000, 0x14c003, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x14c301, 0x000000, 0x000000, 0x000000, 0x14c408, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x14cc01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x14cd01, 0x000000, 0x14ce02,
- 0x14d003, 0x000000, 0x14d306, 0x000000, 0x000000, 0x000000, 0x000000, 0x14d902,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x14db01, 0x000000, 0x000000, 0x14dc01, 0x000000, 0x000000, 0x000000, 0x14dd01,
- 0x000000, 0x14de01, 0x14df01, 0x000000, 0x000000, 0x14e002, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x14e201, 0x14e301, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x14e401,
- 0x000000, 0x14e504, 0x000000, 0x14e904, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x14ed01, 0x000000, 0x000000, 0x14ee02, 0x000000, 0x000000, 0x14f004, 0x000000,
- 0x000000, 0x14f402, 0x000000, 0x14f606, 0x000000, 0x14fc06, 0x000000, 0x000000,
- 0x000000, 0x150201, 0x000000, 0x000000, 0x000000, 0x150302, 0x000000, 0x000000,
- 0x000000, 0x150502, 0x000000, 0x150701, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x150802, 0x000000, 0x000000, 0x000000, 0x000000, 0x150a01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x150b02, 0x150d03,
- 0x151003, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x151301, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x151405, 0x151901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x151a01, 0x000000, 0x000000, 0x000000, 0x151b01, 0x151c01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x151d04, 0x000000, 0x000000, 0x000000, 0x000000, 0x152101,
- 0x000000, 0x000000, 0x152204, 0x000000, 0x152601, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x152712, 0x153904, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x153d02, 0x000000,
- 0x153f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x154001,
- 0x154101, 0x000000, 0x000000, 0x000000, 0x154201, 0x154303, 0x154601, 0x000000,
- 0x000000, 0x154701, 0x154802, 0x154a05, 0x000000, 0x000000, 0x000000, 0x154f01,
- 0x155002, 0x000000, 0x000000, 0x000000, 0x155202, 0x000000, 0x000000, 0x000000,
- 0x155403, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x155702,
- 0x000000, 0x155901, 0x000000, 0x000000, 0x155a03, 0x000000, 0x155d03, 0x000000,
- 0x000000, 0x156001, 0x000000, 0x000000, 0x156102, 0x000000, 0x000000, 0x156301,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x156407, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x156b01, 0x000000, 0x000000, 0x156c01, 0x156d02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x156f01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x157012, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x158203, 0x000000, 0x000000, 0x000000, 0x158501,
- 0x000000, 0x158601, 0x000000, 0x000000, 0x158701, 0x000000, 0x000000, 0x000000,
- 0x158802, 0x000000, 0x158a01, 0x000000, 0x000000, 0x158b01, 0x158c01, 0x000000,
- 0x158d04, 0x000000, 0x000000, 0x15910c, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x159d01, 0x159e01, 0x000000, 0x000000, 0x159f02, 0x000000, 0x15a105,
- 0x000000, 0x000000, 0x15a601, 0x000000, 0x15a701, 0x000000, 0x000000, 0x15a802,
- 0x000000, 0x15aa0a, 0x000000, 0x15b401, 0x000000, 0x000000, 0x15b502, 0x000000,
- 0x15b707, 0x15be01, 0x000000, 0x000000, 0x000000, 0x000000, 0x15bf03, 0x000000,
- 0x000000, 0x000000, 0x15c202, 0x15c401, 0x000000, 0x15c501, 0x000000, 0x15c602,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x15c815, 0x000000, 0x000000, 0x15dd02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x15df09, 0x15e801, 0x000000, 0x000000, 0x000000, 0x000000, 0x15e902,
- 0x000000, 0x000000, 0x15eb0c, 0x000000, 0x15f701, 0x000000, 0x15f804, 0x000000,
- 0x000000, 0x000000, 0x15fc0c, 0x000000, 0x160801, 0x000000, 0x160901, 0x160a08,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x161201, 0x000000,
- 0x000000, 0x000000, 0x161301, 0x161408, 0x000000, 0x161c01, 0x161d10, 0x162d01,
- 0x000000, 0x162e06, 0x000000, 0x000000, 0x000000, 0x000000, 0x163401, 0x163504,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x163902, 0x163b0b, 0x000000,
- 0x164603, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x164901, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x164a01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x164b01, 0x000000, 0x000000, 0x164c01, 0x000000, 0x164d02,
- 0x000000, 0x000000, 0x000000, 0x164f15, 0x000000, 0x166401, 0x000000, 0x166501,
- 0x166609, 0x000000, 0x000000, 0x166f07, 0x167601, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x167702, 0x000000, 0x167903, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x167c01, 0x167d02, 0x000000, 0x167f01, 0x168002, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x168201, 0x168301, 0x168401, 0x000000, 0x168501,
- 0x000000, 0x168601, 0x168702, 0x000000, 0x168906, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x168f04, 0x169302, 0x000000, 0x000000, 0x000000, 0x000000, 0x169502,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x169704, 0x000000, 0x000000, 0x169b09,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x16a402, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x16a602, 0x000000, 0x000000, 0x16a80a, 0x000000,
- 0x000000, 0x000000, 0x16b205, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x16b70b, 0x000000, 0x000000, 0x16c203, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x16c501, 0x16c601, 0x000000,
- 0x000000, 0x16c701, 0x000000, 0x000000, 0x16c802, 0x000000, 0x16ca09, 0x16d301,
- 0x16d401, 0x000000, 0x16d504, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x16d902, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x16db03, 0x000000,
- 0x16de02, 0x16e002, 0x000000, 0x000000, 0x16e202, 0x000000, 0x16e402, 0x000000,
- 0x000000, 0x16e602, 0x000000, 0x16e808, 0x000000, 0x000000, 0x000000, 0x16f002,
- 0x16f202, 0x000000, 0x000000, 0x000000, 0x16f402, 0x000000, 0x16f609, 0x000000,
- 0x000000, 0x000000, 0x16ff01, 0x000000, 0x000000, 0x170002, 0x170203, 0x000000,
- 0x170501, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x170602,
- 0x000000, 0x17080a, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x171204, 0x000000, 0x171601, 0x000000, 0x000000, 0x171701, 0x000000, 0x171809,
- 0x172102, 0x172303, 0x000000, 0x172601, 0x172701, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x172801, 0x172903, 0x000000, 0x172c10, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x173c02, 0x000000, 0x000000, 0x173e02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x174001, 0x000000, 0x000000,
- 0x174105, 0x000000, 0x174601, 0x174701, 0x174803, 0x000000, 0x174b0c, 0x000000,
- 0x000000, 0x000000, 0x175702, 0x175909, 0x176203, 0x176501, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x176601, 0x000000, 0x176702, 0x000000, 0x000000,
- 0x000000, 0x176901, 0x176a01, 0x000000, 0x000000, 0x176b05, 0x000000, 0x000000,
- 0x177002, 0x177204, 0x000000, 0x000000, 0x000000, 0x000000, 0x177601, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x177701, 0x000000, 0x000000, 0x177801,
- 0x000000, 0x177901, 0x000000, 0x000000, 0x000000, 0x177a04, 0x177e02, 0x000000,
- 0x178002, 0x000000, 0x178204, 0x000000, 0x178602, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x178801, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x178904,
- 0x000000, 0x178d02, 0x000000, 0x000000, 0x178f01, 0x000000, 0x000000, 0x000000,
- 0x179005, 0x179502, 0x179701, 0x000000, 0x000000, 0x000000, 0x179804, 0x179c01,
- 0x000000, 0x000000, 0x179d07, 0x000000, 0x000000, 0x17a401, 0x000000, 0x000000,
- 0x17a501, 0x000000, 0x17a602, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x17a806, 0x000000, 0x17ae01, 0x000000, 0x000000, 0x000000, 0x17af02,
- 0x000000, 0x17b105, 0x17b601, 0x17b703, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x17ba01, 0x17bb01, 0x000000, 0x000000, 0x17bc01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x17bd01, 0x17be01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x17bf03, 0x000000, 0x17c201, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x17c304, 0x000000, 0x000000, 0x17c701, 0x000000, 0x17c804,
- 0x000000, 0x000000, 0x17cc0c, 0x17d802, 0x000000, 0x000000, 0x17da03, 0x000000,
- 0x17dd01, 0x000000, 0x000000, 0x000000, 0x17de0e, 0x17ec01, 0x17ed03, 0x000000,
- 0x000000, 0x000000, 0x17f001, 0x000000, 0x000000, 0x000000, 0x000000, 0x17f101,
- 0x000000, 0x000000, 0x000000, 0x17f203, 0x17f508, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x17fd02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x17ff02, 0x000000, 0x000000, 0x180105, 0x180602, 0x180803, 0x000000,
- 0x180b07, 0x000000, 0x181211, 0x000000, 0x182301, 0x182401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x182502, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x18270b, 0x18320b, 0x000000, 0x000000, 0x183d02, 0x000000, 0x183f04, 0x000000,
- 0x000000, 0x184301, 0x184401, 0x184501, 0x000000, 0x18460d, 0x000000, 0x000000,
- 0x000000, 0x185306, 0x000000, 0x000000, 0x000000, 0x185901, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x185a05, 0x185f02, 0x000000, 0x186101,
- 0x186201, 0x186306, 0x000000, 0x186905, 0x186e02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x187001, 0x000000, 0x000000, 0x000000, 0x187114, 0x188506,
- 0x000000, 0x188b01, 0x000000, 0x000000, 0x000000, 0x188c01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x188d22, 0x000000,
- 0x000000, 0x000000, 0x18af02, 0x000000, 0x000000, 0x18b10a, 0x18bb02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x18bd01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x18be02,
- 0x000000, 0x000000, 0x18c001, 0x000000, 0x18c101, 0x000000, 0x18c201, 0x18c310,
- 0x000000, 0x000000, 0x18d301, 0x18d40c, 0x18e001, 0x000000, 0x000000, 0x000000,
- 0x18e101, 0x18e201, 0x18e301, 0x000000, 0x18e403, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x18e706, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x18ed01, 0x18ee01, 0x18ef02, 0x000000, 0x000000, 0x000000, 0x000000, 0x18f103,
- 0x000000, 0x18f408, 0x18fc03, 0x18ff0b, 0x190a03, 0x000000, 0x190d01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x190e01, 0x190f01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x191001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x191102, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x191301, 0x000000, 0x191402, 0x191602, 0x191804,
- 0x000000, 0x191c01, 0x191d03, 0x000000, 0x192005, 0x192501, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x192601, 0x192701, 0x000000, 0x000000, 0x192803, 0x000000, 0x000000, 0x192b02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x192d01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x192e01, 0x192f02, 0x000000, 0x000000, 0x193104, 0x000000, 0x000000,
- 0x000000, 0x193501, 0x000000, 0x000000, 0x193606, 0x000000, 0x193c01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x193d01, 0x000000, 0x000000,
- 0x193e01, 0x000000, 0x193f01, 0x000000, 0x194002, 0x194201, 0x000000, 0x000000,
- 0x000000, 0x19430b, 0x000000, 0x194e01, 0x194f01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x195004, 0x000000, 0x000000, 0x195402,
- 0x195606, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x195c01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x195d01, 0x195e01, 0x195f02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x196109, 0x000000, 0x000000, 0x000000, 0x196a01, 0x196b03, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x196e01, 0x196f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x197001, 0x000000,
- 0x000000, 0x000000, 0x197102, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x197301, 0x000000, 0x000000, 0x197401, 0x197501, 0x000000, 0x000000, 0x000000,
- 0x197601, 0x197701, 0x197802, 0x000000, 0x197a01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x197b04, 0x197f02, 0x000000, 0x198102, 0x000000, 0x000000, 0x19832e,
- 0x000000, 0x19b105, 0x000000, 0x000000, 0x000000, 0x19b601, 0x000000, 0x19b703,
- 0x000000, 0x000000, 0x000000, 0x19ba03, 0x000000, 0x000000, 0x000000, 0x19bd01,
- 0x000000, 0x19be01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x19bf01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x19c001, 0x19c105, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x19c601, 0x19c701, 0x000000, 0x000000, 0x19c801,
- 0x19c902, 0x19cb04, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x19cf02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x19d101, 0x19d204, 0x000000, 0x19d601, 0x000000, 0x19d702, 0x19d902,
- 0x19db11, 0x000000, 0x19ec02, 0x000000, 0x000000, 0x000000, 0x000000, 0x19ee02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x19f001, 0x000000, 0x19f105, 0x000000,
- 0x000000, 0x000000, 0x19f60d, 0x000000, 0x1a0303, 0x1a0601, 0x000000, 0x1a0702,
- 0x000000, 0x1a0903, 0x1a0c06, 0x000000, 0x1a1201, 0x1a1301, 0x1a1401, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x1a1501, 0x000000, 0x000000, 0x000000, 0x1a1601, 0x000000, 0x1a170d, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1a240b, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x1a2f01, 0x1a3001, 0x1a3105, 0x000000, 0x000000, 0x1a3602, 0x1a3803, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x1a3b01, 0x000000, 0x000000, 0x000000,
- 0x1a3c02, 0x000000, 0x1a3e05, 0x1a4301, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x1a4401, 0x1a4502, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1a4701, 0x1a4806, 0x1a4e02, 0x000000, 0x1a5005,
- 0x1a5501, 0x000000, 0x000000, 0x1a5607, 0x1a5d01, 0x000000, 0x1a5e01, 0x000000,
- 0x000000, 0x1a5f01, 0x1a6001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x1a6102, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1a6307,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1a6a01, 0x000000,
- 0x000000, 0x1a6b01, 0x1a6c05, 0x000000, 0x000000, 0x000000, 0x1a7106, 0x000000,
- 0x000000, 0x000000, 0x1a7704, 0x1a7b01, 0x000000, 0x1a7c02, 0x000000, 0x000000,
- 0x000000, 0x1a7e01, 0x000000, 0x1a7f01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1a8007,
- 0x000000, 0x000000, 0x000000, 0x1a8701, 0x000000, 0x000000, 0x000000, 0x1a8809,
- 0x000000, 0x000000, 0x1a9101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x1a9201, 0x000000, 0x000000, 0x000000, 0x1a9308, 0x000000, 0x000000, 0x000000,
- 0x1a9b0b, 0x000000, 0x000000, 0x1aa601, 0x000000, 0x1aa70f, 0x1ab60d, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1ac302, 0x000000, 0x000000, 0x1ac502, 0x000000,
- 0x1ac701, 0x1ac80a, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1ad201, 0x000000, 0x1ad302, 0x1ad502, 0x1ad701,
- 0x000000, 0x000000, 0x000000, 0x1ad801, 0x1ad901, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x1ada02, 0x000000, 0x000000, 0x1adc01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1add01, 0x000000, 0x000000,
- 0x000000, 0x1ade01, 0x000000, 0x1adf07, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1ae601, 0x000000,
- 0x1ae703, 0x1aea02, 0x1aec02, 0x000000, 0x1aee04, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1af202, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x1af409, 0x000000, 0x000000, 0x000000, 0x000000, 0x1afd01,
- 0x000000, 0x1afe01, 0x000000, 0x000000, 0x1aff01, 0x000000, 0x000000, 0x1b0001,
- 0x1b0101, 0x000000, 0x000000, 0x000000, 0x1b0201, 0x000000, 0x000000, 0x000000,
- 0x1b0303, 0x1b0605, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x1b0b01, 0x000000, 0x1b0c01, 0x000000, 0x000000, 0x000000, 0x1b0d01, 0x1b0e01,
- 0x1b0f01, 0x000000, 0x1b1001, 0x000000, 0x1b1101, 0x000000, 0x000000, 0x1b1204,
- 0x1b1601, 0x000000, 0x1b1703, 0x000000, 0x000000, 0x000000, 0x000000, 0x1b1a01,
- 0x1b1b01, 0x1b1c01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x1b1d06, 0x1b2301, 0x1b2403, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1b2702, 0x1b2909, 0x1b3202, 0x1b3401, 0x1b3501,
- 0x000000, 0x000000, 0x1b3601, 0x1b3701, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1b3801, 0x000000, 0x000000,
- 0x1b3909, 0x1b4201, 0x000000, 0x000000, 0x1b4303, 0x000000, 0x000000, 0x1b4601,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1b4704, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1b4b02, 0x1b4d02, 0x1b4f03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1b5211,
- 0x000000, 0x000000, 0x000000, 0x1b6307, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1b6a02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1b6c01, 0x000000,
- 0x000000, 0x1b6d01, 0x1b6e05, 0x1b7302, 0x000000, 0x1b7503, 0x1b7805, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1b7d01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x1b7e07, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1b8501, 0x000000,
- 0x1b8601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x1b8704, 0x1b8b02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1b8d06, 0x000000, 0x1b9301, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x1b9404, 0x000000, 0x1b9802, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x1b9a02, 0x1b9c01, 0x000000, 0x1b9d01, 0x1b9e01, 0x1b9f06, 0x000000,
- 0x000000, 0x1ba502, 0x000000, 0x1ba701, 0x1ba802, 0x000000, 0x1baa01, 0x000000,
- 0x000000, 0x000000, 0x1bab03, 0x1bae01, 0x1baf02, 0x000000, 0x000000, 0x1bb103,
- 0x000000, 0x1bb40e, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x1bc201, 0x000000, 0x000000, 0x1bc302, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1bc504, 0x000000, 0x1bc901,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1bca01,
- 0x000000, 0x1bcb01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1bcc01,
- 0x000000, 0x000000, 0x1bcd06, 0x000000, 0x000000, 0x1bd301, 0x000000, 0x1bd401,
- 0x000000, 0x000000, 0x1bd502, 0x000000, 0x000000, 0x000000, 0x000000, 0x1bd701,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1bd801, 0x000000, 0x1bd902,
- 0x000000, 0x1bdb01, 0x1bdc01, 0x000000, 0x000000, 0x1bdd05, 0x000000, 0x000000,
- 0x1be209, 0x000000, 0x1beb02, 0x1bed02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x1bef01, 0x000000, 0x000000, 0x000000, 0x1bf003, 0x1bf301, 0x1bf401, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x1bf505, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1bfa02,
- 0x1bfc04, 0x1c0002, 0x000000, 0x1c0201, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1c0301, 0x000000, 0x1c0408,
- 0x1c0c01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1c0d03, 0x1c1002,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x1c120e, 0x000000, 0x1c2003, 0x1c2302,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1c2501, 0x1c2604, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1c2a05, 0x1c2f02, 0x000000, 0x1c3108, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1c3902, 0x1c3b02, 0x1c3d02, 0x1c3f01, 0x1c4002,
- 0x1c4202, 0x1c4401, 0x000000, 0x000000, 0x000000, 0x000000, 0x1c4503, 0x1c4801,
- 0x000000, 0x1c4905, 0x000000, 0x000000, 0x1c4e13, 0x000000, 0x000000, 0x000000,
- 0x1c6117, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x1c7801, 0x000000, 0x000000, 0x1c7901, 0x1c7a01, 0x000000, 0x000000, 0x1c7b05,
- 0x000000, 0x1c8003, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x1c8301, 0x000000, 0x1c8401, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1c8503, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x1c8802, 0x000000, 0x000000, 0x000000, 0x000000, 0x1c8a01, 0x000000, 0x1c8b02,
- 0x000000, 0x1c8d19, 0x000000, 0x1ca602, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1ca806, 0x000000, 0x1cae04, 0x1cb201, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x1cb301, 0x000000, 0x1cb401, 0x1cb502,
- 0x1cb702, 0x1cb903, 0x000000, 0x000000, 0x000000, 0x000000, 0x1cbc01, 0x000000,
- 0x1cbd08, 0x1cc501, 0x000000, 0x1cc601, 0x1cc705, 0x000000, 0x000000, 0x1ccc01,
- 0x000000, 0x000000, 0x000000, 0x1ccd02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1ccf01, 0x000000, 0x000000, 0x000000, 0x1cd001,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1cd101, 0x000000, 0x1cd201,
- 0x1cd303, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1cd603, 0x000000,
- 0x000000, 0x1cd90c, 0x000000, 0x000000, 0x000000, 0x000000, 0x1ce501, 0x000000,
- 0x000000, 0x000000, 0x1ce601, 0x1ce701, 0x000000, 0x1ce801, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1ce903, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1cec01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x1ced0f, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x1cfc06, 0x1d0202, 0x1d0406, 0x000000, 0x000000, 0x000000,
- 0x1d0a01, 0x000000, 0x000000, 0x1d0b01, 0x000000, 0x000000, 0x000000, 0x1d0c01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1d0d05, 0x1d1203,
- 0x000000, 0x1d1502, 0x000000, 0x1d1708, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1d1f01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x1d2004, 0x000000, 0x000000, 0x1d2401,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1d2501, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x1d2603, 0x1d2906, 0x1d2f04, 0x000000,
- 0x1d330e, 0x000000, 0x000000, 0x1d4101, 0x000000, 0x1d4202, 0x000000, 0x000000,
- 0x1d4405, 0x000000, 0x000000, 0x000000, 0x1d4901, 0x1d4a09, 0x000000, 0x000000,
- 0x1d5304, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1d5701, 0x000000,
- 0x000000, 0x000000, 0x1d5801, 0x1d5902, 0x1d5b02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x1d5d01, 0x000000, 0x000000, 0x1d5e02, 0x1d6001, 0x1d6104, 0x000000,
- 0x000000, 0x000000, 0x1d6503, 0x000000, 0x000000, 0x1d6802, 0x000000, 0x000000,
- 0x1d6a05, 0x000000, 0x1d6f02, 0x000000, 0x1d7101, 0x000000, 0x1d7202, 0x000000,
- 0x000000, 0x1d7401, 0x1d7504, 0x1d7901, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x1d7a01, 0x000000, 0x1d7b02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x1d7d02, 0x000000, 0x000000, 0x1d7f01, 0x1d8001, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x1d8109, 0x1d8a0a, 0x000000, 0x1d9401, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x1d9502, 0x1d9702, 0x000000, 0x1d9903, 0x1d9c02, 0x1d9e01,
- 0x000000, 0x000000, 0x000000, 0x1d9f03, 0x000000, 0x1da202, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1da405, 0x000000, 0x000000, 0x000000, 0x1da901,
- 0x000000, 0x000000, 0x1daa05, 0x000000, 0x000000, 0x1daf02, 0x1db108, 0x1db902,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1dbb01, 0x000000, 0x1dbc01,
- 0x1dbd01, 0x000000, 0x000000, 0x1dbe01, 0x000000, 0x000000, 0x1dbf04, 0x000000,
- 0x1dc301, 0x000000, 0x1dc401, 0x1dc501, 0x000000, 0x1dc603, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x1dc901, 0x000000, 0x000000, 0x000000, 0x000000, 0x1dca02,
- 0x1dcc02, 0x1dce02, 0x000000, 0x000000, 0x1dd006, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x1dd601, 0x000000, 0x1dd702, 0x1dd901, 0x000000, 0x000000,
- 0x1dda01, 0x000000, 0x000000, 0x000000, 0x000000, 0x1ddb01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1ddc10, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1dec01, 0x1ded01, 0x1dee02, 0x1df001, 0x000000,
- 0x1df101, 0x000000, 0x1df211, 0x000000, 0x1e0304, 0x1e0702, 0x1e0901, 0x000000,
- 0x1e0a01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1e0b08,
- 0x000000, 0x000000, 0x1e1307, 0x000000, 0x1e1a01, 0x000000, 0x1e1b01, 0x000000,
- 0x1e1c0c, 0x000000, 0x1e2801, 0x000000, 0x000000, 0x000000, 0x1e2902, 0x000000,
- 0x1e2b05, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1e3002,
- 0x1e3201, 0x000000, 0x1e3301, 0x000000, 0x1e3402, 0x1e3604, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1e3a02, 0x000000, 0x000000,
- 0x1e3c04, 0x1e4003, 0x000000, 0x1e4303, 0x000000, 0x000000, 0x000000, 0x1e4601,
- 0x000000, 0x000000, 0x000000, 0x1e4701, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1e4803, 0x000000, 0x000000, 0x1e4b01, 0x000000,
- 0x1e4c02, 0x000000, 0x1e4e01, 0x000000, 0x1e4f01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x1e5007, 0x1e5701, 0x000000, 0x000000, 0x1e5801, 0x000000, 0x000000,
- 0x1e5901, 0x000000, 0x000000, 0x1e5a01, 0x000000, 0x000000, 0x1e5b01, 0x000000,
- 0x000000, 0x1e5c05, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1e6105,
- 0x1e6601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1e6701, 0x1e6805,
- 0x000000, 0x1e6d02, 0x000000, 0x000000, 0x000000, 0x000000, 0x1e6f06, 0x000000,
- 0x1e7501, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1e760b, 0x000000,
- 0x1e8103, 0x000000, 0x000000, 0x1e8401, 0x000000, 0x1e8502, 0x000000, 0x1e8702,
- 0x000000, 0x1e8906, 0x1e8f01, 0x1e9001, 0x1e9102, 0x000000, 0x1e9302, 0x1e950a,
- 0x000000, 0x000000, 0x000000, 0x1e9f02, 0x000000, 0x1ea101, 0x000000, 0x1ea201,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x1ea302, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x1ea50a, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x1eaf01, 0x1eb001, 0x1eb104, 0x1eb503, 0x000000, 0x1eb801,
- 0x000000, 0x000000, 0x1eb92f, 0x000000, 0x000000, 0x1ee801, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x1ee901, 0x000000, 0x000000, 0x1eea02, 0x1eec01, 0x1eed01,
- 0x1eee01, 0x000000, 0x1eef01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x1ef001, 0x1ef102, 0x000000, 0x1ef301, 0x000000, 0x000000,
- 0x1ef402, 0x000000, 0x000000, 0x1ef603, 0x000000, 0x1ef905, 0x1efe02, 0x000000,
- 0x000000, 0x1f0002, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x1f0201, 0x000000, 0x1f0301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x1f0404, 0x000000, 0x000000, 0x000000, 0x000000, 0x1f0804, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x1f0c01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1f0d03, 0x000000, 0x1f100f, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1f1f01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x1f2003, 0x1f2314, 0x1f3701, 0x000000, 0x1f3801, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x1f390d, 0x000000, 0x000000, 0x000000, 0x000000, 0x1f4601,
- 0x1f4702, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1f4902, 0x000000, 0x000000,
- 0x000000, 0x1f4b06, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x1f510a, 0x000000, 0x1f5b01, 0x1f5c01, 0x000000, 0x000000,
- 0x1f5d02, 0x000000, 0x000000, 0x1f5f01, 0x1f6001, 0x000000, 0x000000, 0x1f6102,
- 0x1f6301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1f6406, 0x000000, 0x000000, 0x000000, 0x1f6a09,
- 0x1f7307, 0x1f7a01, 0x1f7b01, 0x000000, 0x000000, 0x1f7c01, 0x000000, 0x000000,
- 0x000000, 0x1f7d01, 0x000000, 0x1f7e01, 0x000000, 0x1f7f02, 0x000000, 0x1f8102,
- 0x1f830c, 0x000000, 0x000000, 0x000000, 0x1f8f01, 0x1f9008, 0x000000, 0x1f9803,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1f9b01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x1f9c11, 0x1fad01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1fae01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1faf03, 0x1fb202, 0x000000, 0x1fb403, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x1fb701,
- 0x1fb801, 0x1fb906, 0x1fbf01, 0x1fc001, 0x1fc101, 0x1fc208, 0x000000, 0x000000,
- 0x1fca05, 0x000000, 0x000000, 0x1fcf01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x1fd001, 0x1fd107, 0x1fd801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x1fd903, 0x000000, 0x1fdc03, 0x1fdf02, 0x1fe102,
- 0x000000, 0x1fe301, 0x1fe401, 0x000000, 0x000000, 0x000000, 0x000000, 0x1fe501,
- 0x1fe60c, 0x000000, 0x000000, 0x1ff206, 0x000000, 0x000000, 0x000000, 0x1ff801,
- 0x000000, 0x000000, 0x000000, 0x1ff901, 0x000000, 0x000000, 0x1ffa01, 0x000000,
- 0x000000, 0x000000, 0x1ffb10, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x200b06, 0x000000, 0x000000, 0x000000, 0x000000, 0x201103, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x201401, 0x000000, 0x201501, 0x000000, 0x000000,
- 0x201603, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x201901,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x201a02, 0x000000, 0x201c01, 0x000000, 0x000000, 0x201d03, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x202008,
- 0x000000, 0x000000, 0x000000, 0x202809, 0x000000, 0x000000, 0x203105, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x203601, 0x000000, 0x203704, 0x203b04, 0x000000, 0x203f01,
- 0x204004, 0x000000, 0x000000, 0x204403, 0x000000, 0x204701, 0x204802, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x204a02, 0x000000, 0x000000, 0x000000, 0x204c01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x204d08, 0x000000, 0x000000, 0x000000, 0x205501, 0x000000, 0x205604,
- 0x205a02, 0x000000, 0x000000, 0x205c01, 0x205d03, 0x206003, 0x206301, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x206402, 0x206604, 0x206a01, 0x206b01, 0x206c03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x206f03, 0x20720e,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x208001,
- 0x000000, 0x000000, 0x000000, 0x208101, 0x208202, 0x208401, 0x208501, 0x208605,
- 0x000000, 0x000000, 0x208b06, 0x209102, 0x000000, 0x000000, 0x20930a, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x209d01, 0x000000, 0x000000, 0x209e03,
- 0x000000, 0x20a101, 0x20a205, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x20a70c, 0x20b305, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x20b803, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x20bb03, 0x000000, 0x000000, 0x000000, 0x20be01, 0x000000, 0x20bf02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x20c106, 0x20c702, 0x000000, 0x000000, 0x20c902,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x20cb01,
- 0x20cc01, 0x000000, 0x20cd01, 0x000000, 0x20ce01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x20cf01, 0x000000, 0x20d009, 0x20d901, 0x20da01, 0x000000,
- 0x20db01, 0x20dc09, 0x20e501, 0x000000, 0x000000, 0x000000, 0x000000, 0x20e601,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x20e701, 0x000000, 0x000000, 0x20e810,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x20f801,
- 0x20f901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x20fa01,
- 0x000000, 0x000000, 0x20fb03, 0x000000, 0x20fe04, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x210207, 0x000000, 0x210904, 0x000000, 0x210d06, 0x000000, 0x000000,
- 0x211301, 0x000000, 0x211401, 0x000000, 0x000000, 0x000000, 0x211503, 0x000000,
- 0x211806, 0x211e01, 0x211f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x212002,
- 0x212201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x212306, 0x000000, 0x000000, 0x212901, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x212a02, 0x212c01, 0x212d22, 0x000000,
- 0x214f02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x215104, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x215504, 0x215902, 0x215b01, 0x000000, 0x000000, 0x215c04, 0x000000,
- 0x000000, 0x21600c, 0x000000, 0x216c0c, 0x000000, 0x000000, 0x217801, 0x217901,
- 0x000000, 0x000000, 0x217a03, 0x217d01, 0x217e04, 0x218204, 0x000000, 0x218608,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x218e0f, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x219d01, 0x000000, 0x219e01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x219f01, 0x000000, 0x000000, 0x21a001, 0x000000, 0x000000, 0x000000,
- 0x21a101, 0x000000, 0x000000, 0x000000, 0x21a202, 0x000000, 0x000000, 0x21a404,
- 0x21a804, 0x21ac01, 0x000000, 0x000000, 0x21ad01, 0x000000, 0x21ae01, 0x000000,
- 0x21af01, 0x21b00c, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x21bc01, 0x21bd01, 0x21be0b, 0x21c902, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x21cb02, 0x21cd01, 0x21ce01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x21cf01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x21d001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x21d101, 0x000000, 0x000000, 0x21d201, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x21d301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x21d402,
- 0x21d601, 0x21d701, 0x000000, 0x000000, 0x000000, 0x000000, 0x21d804, 0x000000,
- 0x21dc02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x21de03, 0x21e10a, 0x000000, 0x21eb02, 0x000000, 0x21ed03, 0x000000, 0x000000,
- 0x000000, 0x21f001, 0x000000, 0x000000, 0x000000, 0x21f110, 0x000000, 0x220104,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x220501, 0x000000, 0x220602, 0x220801, 0x22090a,
- 0x221303, 0x221601, 0x221705, 0x221c03, 0x221f01, 0x000000, 0x222002, 0x222203,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x222501, 0x222602, 0x222809, 0x223102,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x223301, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x223403, 0x223702, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x223901, 0x223a01, 0x223b02, 0x000000, 0x223d03, 0x224001,
- 0x224103, 0x224401, 0x000000, 0x224505, 0x000000, 0x224a01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x224b01, 0x000000, 0x000000, 0x224c02, 0x000000, 0x000000,
- 0x224e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x224f01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x225001, 0x000000, 0x000000, 0x000000, 0x000000, 0x225102, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x225302, 0x22550d, 0x000000, 0x000000, 0x000000, 0x22620a,
- 0x000000, 0x226c01, 0x226d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x226e01, 0x226f02, 0x000000, 0x000000, 0x000000, 0x000000, 0x227104, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x227506, 0x227b01, 0x227c02, 0x000000, 0x227e02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x228001, 0x000000, 0x000000, 0x000000,
- 0x228101, 0x000000, 0x000000, 0x000000, 0x228201, 0x000000, 0x228301, 0x000000,
- 0x000000, 0x000000, 0x228401, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x228501, 0x228601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x228701, 0x000000,
- 0x000000, 0x000000, 0x228801, 0x000000, 0x228904, 0x000000, 0x000000, 0x000000,
- 0x228d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x228e01, 0x000000, 0x228f10, 0x000000, 0x000000, 0x229f02, 0x000000, 0x000000,
- 0x22a104, 0x000000, 0x000000, 0x22a502, 0x22a701, 0x000000, 0x000000, 0x22a801,
- 0x22a901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x22aa01,
- 0x000000, 0x22ab14, 0x000000, 0x000000, 0x000000, 0x000000, 0x22bf04, 0x22c301,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x22c403, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x22c703, 0x000000, 0x22ca04, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x22ce01, 0x22cf01, 0x22d001, 0x000000, 0x000000, 0x000000, 0x22d101,
- 0x000000, 0x22d201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x22d30d, 0x000000,
- 0x000000, 0x000000, 0x22e001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x22e102, 0x000000, 0x22e30b,
- 0x000000, 0x22ee02, 0x000000, 0x000000, 0x000000, 0x22f002, 0x22f202, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x22f401, 0x000000, 0x22f504, 0x000000, 0x22f903,
- 0x22fc0d, 0x000000, 0x000000, 0x230901, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x230a19, 0x000000, 0x232301, 0x000000, 0x000000, 0x000000, 0x000000, 0x232403,
- 0x232701, 0x000000, 0x000000, 0x000000, 0x000000, 0x232801, 0x232902, 0x000000,
- 0x232b05, 0x23300f, 0x233f03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x234237,
- 0x237901, 0x000000, 0x000000, 0x237a06, 0x238001, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x238102, 0x000000, 0x000000, 0x000000, 0x238301,
- 0x000000, 0x000000, 0x238402, 0x000000, 0x238601, 0x000000, 0x000000, 0x238701,
- 0x238804, 0x238c01, 0x238d0a, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x239702, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x239906, 0x000000, 0x000000, 0x239f01, 0x000000, 0x23a001,
- 0x23a101, 0x000000, 0x000000, 0x000000, 0x23a201, 0x23a301, 0x000000, 0x000000,
- 0x23a401, 0x000000, 0x000000, 0x23a501, 0x000000, 0x23a602, 0x000000, 0x000000,
- 0x23a802, 0x23aa01, 0x000000, 0x000000, 0x000000, 0x23ab04, 0x000000, 0x000000,
- 0x23af08, 0x000000, 0x23b704, 0x000000, 0x000000, 0x23bb01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x23bc03, 0x000000, 0x23bf0b, 0x23ca02,
- 0x000000, 0x000000, 0x23cc01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x23cd03, 0x000000, 0x23d001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x23d102, 0x000000, 0x000000, 0x000000, 0x000000, 0x23d302,
- 0x000000, 0x23d501, 0x23d601, 0x23d701, 0x000000, 0x23d809, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x23e101, 0x000000,
- 0x23e201, 0x000000, 0x000000, 0x000000, 0x23e301, 0x23e401, 0x000000, 0x000000,
- 0x23e501, 0x000000, 0x000000, 0x000000, 0x000000, 0x23e602, 0x000000, 0x000000,
- 0x000000, 0x23e804, 0x000000, 0x000000, 0x000000, 0x000000, 0x23ec01, 0x23ed0a,
- 0x000000, 0x000000, 0x000000, 0x23f703, 0x23fa05, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x23ff01, 0x240003, 0x000000, 0x240301, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x240401, 0x240501, 0x240601, 0x000000, 0x240701, 0x240802, 0x000000,
- 0x000000, 0x240a01, 0x000000, 0x240b01, 0x240c01, 0x000000, 0x000000, 0x240d02,
- 0x000000, 0x240f01, 0x000000, 0x241001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x241101, 0x241202, 0x000000, 0x000000, 0x241401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x241502, 0x241701,
- 0x000000, 0x000000, 0x241803, 0x000000, 0x000000, 0x000000, 0x000000, 0x241b03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x241e01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x241f01,
- 0x000000, 0x000000, 0x000000, 0x242001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x242101, 0x000000, 0x000000, 0x000000, 0x000000, 0x242201, 0x000000,
- 0x000000, 0x242303, 0x242601, 0x000000, 0x000000, 0x000000, 0x242701, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x242801, 0x000000,
- 0x000000, 0x242901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x242a03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x242d01, 0x242e02,
- 0x000000, 0x000000, 0x243001, 0x243102, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x243303, 0x243602, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x243803,
- 0x000000, 0x000000, 0x000000, 0x243b01, 0x243c02, 0x243e01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x243f0d, 0x000000, 0x000000,
- 0x244c04, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x245004, 0x245407,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x245b01, 0x245c04, 0x246008, 0x246801, 0x246904,
- 0x000000, 0x246d01, 0x246e96, 0x000000, 0x000000, 0x250402, 0x000000, 0x250603,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x250901, 0x000000, 0x000000, 0x000000,
- 0x250a01, 0x000000, 0x250b01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x250c01, 0x000000, 0x000000, 0x250d03,
- 0x000000, 0x000000, 0x000000, 0x251001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x251101, 0x251202, 0x000000, 0x000000, 0x000000, 0x000000, 0x251402, 0x000000,
- 0x251601, 0x251704, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x251b02, 0x000000, 0x251d02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x251f03, 0x252202, 0x000000, 0x252402, 0x000000, 0x252602,
- 0x000000, 0x000000, 0x252802, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x252a01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x252b01, 0x252c0f, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x253b01, 0x000000, 0x000000, 0x253c05, 0x000000, 0x000000, 0x254101, 0x000000,
- 0x254201, 0x254301, 0x000000, 0x000000, 0x000000, 0x000000, 0x254401, 0x000000,
- 0x000000, 0x000000, 0x254502, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x254701, 0x254801, 0x000000, 0x254901, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x254a01, 0x254b02, 0x000000,
- 0x000000, 0x000000, 0x254d07, 0x000000, 0x255401, 0x000000, 0x255503, 0x000000,
- 0x255802, 0x000000, 0x255a07, 0x256102, 0x000000, 0x256302, 0x256501, 0x256602,
- 0x000000, 0x000000, 0x000000, 0x25680f, 0x257704, 0x000000, 0x000000, 0x257b02,
- 0x000000, 0x000000, 0x000000, 0x257d02, 0x000000, 0x257f01, 0x000000, 0x258007,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x25871e, 0x000000,
- 0x25a501, 0x25a602, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x25a802, 0x000000, 0x000000, 0x25aa01, 0x25ab01, 0x25ac01, 0x25ad02,
- 0x000000, 0x000000, 0x000000, 0x25af02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x25b104, 0x25b501, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x25b601, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x25b701, 0x000000, 0x25b801, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x25b901, 0x000000, 0x000000, 0x25ba05, 0x000000, 0x000000,
- 0x25bf01, 0x000000, 0x000000, 0x25c002, 0x000000, 0x25c202, 0x25c402, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x25c602, 0x000000, 0x25c808, 0x25d001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x25d101, 0x25d201, 0x25d302, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x25d50c, 0x25e102, 0x000000, 0x000000, 0x25e301, 0x25e401,
- 0x25e501, 0x000000, 0x25e60e, 0x25f401, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x25f508, 0x000000, 0x25fd01, 0x000000, 0x000000, 0x000000, 0x000000, 0x25fe01,
- 0x000000, 0x000000, 0x000000, 0x25ff0e, 0x000000, 0x260d02, 0x000000, 0x260f06,
- 0x000000, 0x000000, 0x000000, 0x261504, 0x000000, 0x261901, 0x261a01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x261b01, 0x000000, 0x261c0b, 0x262701,
- 0x000000, 0x262801, 0x000000, 0x000000, 0x000000, 0x262901, 0x262a02, 0x000000,
- 0x262c01, 0x000000, 0x262d01, 0x000000, 0x262e01, 0x000000, 0x000000, 0x000000,
- 0x262f01, 0x263007, 0x263702, 0x000000, 0x000000, 0x000000, 0x263903, 0x000000,
- 0x263c04, 0x000000, 0x000000, 0x000000, 0x000000, 0x264001, 0x26410e, 0x000000,
- 0x000000, 0x000000, 0x264f03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x265201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x265308, 0x000000, 0x265b03,
- 0x000000, 0x265e05, 0x000000, 0x266302, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x266503, 0x000000, 0x000000, 0x266803, 0x266b04, 0x000000, 0x000000, 0x000000,
- 0x266f01, 0x000000, 0x000000, 0x000000, 0x267001, 0x000000, 0x000000, 0x267103,
- 0x000000, 0x267402, 0x000000, 0x000000, 0x000000, 0x267601, 0x267707, 0x000000,
- 0x000000, 0x267e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x267f07, 0x268602, 0x268801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x268901, 0x268a01, 0x268b05, 0x269002, 0x269205,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x269706, 0x000000,
- 0x269d01, 0x000000, 0x000000, 0x000000, 0x269e04, 0x000000, 0x000000, 0x26a20f,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x26b101,
- 0x26b201, 0x26b301, 0x000000, 0x000000, 0x000000, 0x26b401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x26b503, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x26b801, 0x000000, 0x000000, 0x000000, 0x000000, 0x26b908, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x26c101, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x26c202, 0x26c405, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x26c901, 0x000000, 0x000000, 0x000000, 0x26ca01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x26cb07, 0x000000, 0x26d201,
- 0x000000, 0x000000, 0x26d316, 0x26e904, 0x26ed03, 0x000000, 0x26f001, 0x26f104,
- 0x000000, 0x000000, 0x26f505, 0x000000, 0x26fa02, 0x26fc01, 0x26fd03, 0x000000,
- 0x000000, 0x000000, 0x270002, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x270201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x270305, 0x270801, 0x000000, 0x000000, 0x270903, 0x000000, 0x000000,
- 0x000000, 0x270c07, 0x000000, 0x271303, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x27160c, 0x272201, 0x272302, 0x272509, 0x000000, 0x000000, 0x000000,
- 0x272e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x272f02, 0x000000,
- 0x000000, 0x273102, 0x000000, 0x273302, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x273501, 0x000000, 0x273601, 0x273701, 0x273801, 0x273901, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x273a02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x273c09, 0x274501, 0x000000, 0x000000, 0x000000, 0x000000, 0x274602,
- 0x000000, 0x000000, 0x274801, 0x274901, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x274a01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x274b03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x274e03, 0x000000, 0x275104, 0x000000, 0x000000, 0x000000,
- 0x275502, 0x000000, 0x275704, 0x000000, 0x000000, 0x275b01, 0x275c07, 0x000000,
- 0x000000, 0x276303, 0x000000, 0x276603, 0x276901, 0x276a03, 0x000000, 0x000000,
- 0x000000, 0x276d03, 0x277001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x277105, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x277601, 0x000000, 0x277704, 0x000000, 0x277b0c, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x278702, 0x000000, 0x000000,
- 0x000000, 0x278903, 0x000000, 0x000000, 0x278c02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x278e01, 0x278f06, 0x000000, 0x000000, 0x279501, 0x000000, 0x279601,
- 0x279701, 0x000000, 0x27980a, 0x000000, 0x000000, 0x27a202, 0x000000, 0x27a401,
- 0x27a506, 0x000000, 0x000000, 0x27ab02, 0x000000, 0x27ad01, 0x27ae01, 0x27af08,
- 0x27b703, 0x000000, 0x000000, 0x27ba02, 0x000000, 0x27bc03, 0x000000, 0x000000,
- 0x000000, 0x27bf01, 0x000000, 0x000000, 0x000000, 0x000000, 0x27c001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x27c110, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x27d108, 0x000000, 0x27d901, 0x000000, 0x000000, 0x27da01, 0x27db01, 0x000000,
- 0x27dc01, 0x27dd01, 0x000000, 0x27de02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x27e004, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x27e404, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x27e80c,
- 0x000000, 0x27f401, 0x000000, 0x27f501, 0x27f601, 0x000000, 0x000000, 0x27f705,
- 0x000000, 0x000000, 0x27fc01, 0x27fd06, 0x280306, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x280902, 0x000000, 0x280b03, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x280e02, 0x000000, 0x000000, 0x281001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x281101, 0x000000, 0x281201,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x281318, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x282b04, 0x282f01, 0x283001, 0x000000, 0x000000, 0x000000, 0x283106, 0x000000,
- 0x283701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x283801, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x283901, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x283a04, 0x283e03, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x284101, 0x000000, 0x000000, 0x000000, 0x284201, 0x000000, 0x284303,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x284604, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x284a02, 0x284c01, 0x000000, 0x000000,
- 0x000000, 0x284d01, 0x284e02, 0x000000, 0x285005, 0x000000, 0x285502, 0x000000,
- 0x285701, 0x000000, 0x000000, 0x000000, 0x000000, 0x285802, 0x000000, 0x000000,
- 0x285a01, 0x000000, 0x285b02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x285d01, 0x000000, 0x000000, 0x285e03, 0x286101, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x28620a, 0x286c02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x286e02, 0x000000, 0x287009, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x287906, 0x000000, 0x287f01, 0x000000,
- 0x288003, 0x000000, 0x000000, 0x000000, 0x288301, 0x288401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x288501, 0x000000, 0x000000, 0x000000, 0x288601,
- 0x000000, 0x28870a, 0x000000, 0x000000, 0x289102, 0x289302, 0x289501, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x289601, 0x000000,
- 0x000000, 0x289702, 0x289902, 0x000000, 0x000000, 0x289b01, 0x000000, 0x289c06,
- 0x000000, 0x28a201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x28a301, 0x000000, 0x28a405, 0x28a901, 0x000000, 0x000000,
- 0x28aa01, 0x000000, 0x28ab09, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x28b401, 0x28b501, 0x28b602, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x28b802, 0x000000,
- 0x000000, 0x28ba03, 0x000000, 0x000000, 0x28bd02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x28bf01, 0x000000, 0x28c001, 0x28c102, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x28c301, 0x28c401, 0x000000, 0x28c501, 0x000000, 0x28c605,
- 0x000000, 0x28cb02, 0x28cd02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x28cf01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x28d002, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x28d202, 0x000000,
- 0x28d401, 0x000000, 0x000000, 0x000000, 0x28d503, 0x28d802, 0x000000, 0x000000,
- 0x28da0a, 0x000000, 0x28e403, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x28e709, 0x28f001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x28f101,
- 0x28f209, 0x000000, 0x28fb07, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x290203, 0x000000, 0x000000,
- 0x000000, 0x290508, 0x000000, 0x000000, 0x290d0b, 0x000000, 0x291803, 0x291b01,
- 0x000000, 0x000000, 0x291c01, 0x291d02, 0x291f02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x292103, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x292401, 0x000000, 0x292501, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x292601,
- 0x292708, 0x000000, 0x000000, 0x292f09, 0x000000, 0x293803, 0x293b01, 0x000000,
- 0x293c02, 0x293e03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x294101,
- 0x294201, 0x294301, 0x000000, 0x294401, 0x000000, 0x000000, 0x000000, 0x294501,
- 0x000000, 0x294608, 0x000000, 0x000000, 0x000000, 0x000000, 0x294e01, 0x000000,
- 0x000000, 0x294f02, 0x000000, 0x295107, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x295801, 0x295901,
- 0x295a02, 0x295c01, 0x000000, 0x295d04, 0x000000, 0x000000, 0x296104, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x296503, 0x000000, 0x000000, 0x296801,
- 0x000000, 0x000000, 0x000000, 0x296901, 0x000000, 0x296a01, 0x000000, 0x296b01,
- 0x000000, 0x296c02, 0x000000, 0x000000, 0x296e13, 0x000000, 0x298101, 0x000000,
- 0x298202, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x298401, 0x298501,
- 0x29860f, 0x000000, 0x000000, 0x000000, 0x299501, 0x000000, 0x000000, 0x000000,
- 0x299603, 0x000000, 0x299901, 0x000000, 0x299a01, 0x000000, 0x000000, 0x000000,
- 0x299b01, 0x299c02, 0x299e03, 0x000000, 0x29a101, 0x000000, 0x000000, 0x29a208,
- 0x000000, 0x29aa02, 0x000000, 0x000000, 0x000000, 0x000000, 0x29ac01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x29ad01, 0x000000, 0x000000, 0x000000, 0x29ae01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x29af01, 0x29b001, 0x000000, 0x29b102, 0x000000, 0x000000, 0x000000,
- 0x29b302, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x29b504,
- 0x000000, 0x29b90a, 0x000000, 0x000000, 0x29c305, 0x000000, 0x29c801, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x29c902, 0x000000, 0x000000, 0x000000, 0x29cb03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x29ce01, 0x000000, 0x29cf01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x29d00a,
- 0x000000, 0x29da03, 0x29dd02, 0x29df02, 0x000000, 0x000000, 0x29e101, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x29e203,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x29e501, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x29e603, 0x29e90d, 0x29f601, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x29f701, 0x000000, 0x000000, 0x29f803, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x29fb02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x29fd02, 0x000000, 0x000000, 0x29ff01, 0x2a0003, 0x000000,
- 0x000000, 0x000000, 0x2a0302, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2a0501, 0x000000, 0x000000, 0x000000, 0x2a060a, 0x000000, 0x2a1003,
- 0x000000, 0x000000, 0x2a1301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2a1404, 0x000000, 0x000000, 0x000000, 0x2a1802, 0x000000, 0x000000,
- 0x2a1a01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2a1b04, 0x2a1f05, 0x000000, 0x000000, 0x000000, 0x2a2402, 0x000000,
- 0x000000, 0x000000, 0x2a2604, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x2a2a01, 0x000000, 0x000000, 0x2a2b0c,
- 0x000000, 0x2a3701, 0x000000, 0x2a3801, 0x000000, 0x000000, 0x000000, 0x2a3902,
- 0x000000, 0x000000, 0x000000, 0x2a3b02, 0x000000, 0x000000, 0x2a3d01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2a3e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x2a3f01, 0x2a4002, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2a4201, 0x000000, 0x2a4301, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2a4401, 0x2a4501, 0x2a4603, 0x000000, 0x2a4917, 0x2a6001,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x2a6102, 0x000000, 0x000000, 0x2a6301,
- 0x000000, 0x2a6403, 0x000000, 0x000000, 0x2a6701, 0x000000, 0x000000, 0x2a6801,
- 0x2a6901, 0x2a6a01, 0x2a6b03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2a6e03, 0x000000, 0x2a7101, 0x2a7205, 0x2a7712, 0x2a8901, 0x000000,
- 0x000000, 0x2a8a01, 0x2a8b01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2a8c03, 0x000000, 0x000000, 0x000000, 0x2a8f03, 0x2a9201, 0x000000, 0x000000,
- 0x2a9302, 0x2a9501, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2a9602,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x2a9801, 0x000000, 0x2a9902, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2a9b03, 0x2a9e01, 0x000000, 0x2a9f04, 0x000000,
- 0x000000, 0x2aa301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2aa401,
- 0x000000, 0x2aa505, 0x000000, 0x000000, 0x000000, 0x2aaa01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2aab04, 0x000000, 0x000000, 0x2aaf01, 0x2ab001,
- 0x000000, 0x000000, 0x2ab102, 0x000000, 0x000000, 0x000000, 0x2ab307, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2aba06, 0x000000, 0x000000, 0x2ac002, 0x000000,
- 0x000000, 0x000000, 0x2ac201, 0x000000, 0x000000, 0x2ac30a, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2acd02, 0x000000, 0x2acf02, 0x2ad102, 0x000000, 0x000000,
- 0x2ad302, 0x000000, 0x000000, 0x000000, 0x2ad501, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2ad601,
- 0x000000, 0x000000, 0x000000, 0x2ad705, 0x000000, 0x000000, 0x000000, 0x2adc02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2ade01, 0x000000, 0x000000,
- 0x000000, 0x2adf02, 0x2ae104, 0x000000, 0x000000, 0x2ae502, 0x2ae703, 0x2aea01,
- 0x000000, 0x000000, 0x2aeb01, 0x000000, 0x2aec02, 0x000000, 0x000000, 0x2aee01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x2aef01, 0x000000, 0x000000, 0x000000,
- 0x2af002, 0x000000, 0x2af201, 0x000000, 0x000000, 0x000000, 0x2af301, 0x2af401,
- 0x000000, 0x000000, 0x000000, 0x2af501, 0x000000, 0x2af602, 0x000000, 0x2af809,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2b0102, 0x2b0301,
- 0x000000, 0x2b0403, 0x2b0701, 0x2b0802, 0x000000, 0x000000, 0x2b0a01, 0x2b0b01,
- 0x2b0c01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2b0d01, 0x000000, 0x000000,
- 0x2b0e06, 0x2b1402, 0x000000, 0x000000, 0x000000, 0x000000, 0x2b1603, 0x000000,
- 0x000000, 0x000000, 0x2b1915, 0x000000, 0x000000, 0x000000, 0x000000, 0x2b2e01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2b2f04, 0x2b3301, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2b3403, 0x000000, 0x000000,
- 0x2b3701, 0x2b3801, 0x000000, 0x2b3903, 0x000000, 0x2b3c10, 0x000000, 0x2b4c01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2b4d02, 0x000000, 0x000000,
- 0x000000, 0x2b4f06, 0x000000, 0x000000, 0x000000, 0x2b5501, 0x000000, 0x000000,
- 0x000000, 0x2b5601, 0x2b5701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2b5801, 0x2b5901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2b5a03, 0x000000, 0x000000, 0x2b5d06, 0x2b6301, 0x000000, 0x000000,
- 0x000000, 0x2b6405, 0x000000, 0x2b6905, 0x2b6e0c, 0x000000, 0x2b7a0b, 0x000000,
- 0x000000, 0x000000, 0x2b8501, 0x000000, 0x000000, 0x2b8603, 0x000000, 0x2b8901,
- 0x000000, 0x2b8a01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2b8b01, 0x000000, 0x2b8c03, 0x2b8f01, 0x2b9001, 0x2b9102, 0x000000,
- 0x2b9301, 0x000000, 0x2b9401, 0x000000, 0x000000, 0x000000, 0x2b9501, 0x000000,
- 0x000000, 0x2b9601, 0x2b9703, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2b9a01,
- 0x000000, 0x000000, 0x2b9b02, 0x2b9d06, 0x000000, 0x000000, 0x000000, 0x2ba302,
- 0x2ba502, 0x000000, 0x000000, 0x000000, 0x2ba706, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2bad01, 0x2bae01, 0x000000, 0x000000, 0x000000, 0x2baf03,
- 0x2bb201, 0x000000, 0x000000, 0x2bb301, 0x2bb405, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2bb906, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2bbf02, 0x2bc101, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2bc201, 0x000000, 0x2bc301, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2bc401, 0x000000, 0x000000, 0x000000, 0x2bc501,
- 0x000000, 0x2bc602, 0x000000, 0x000000, 0x2bc802, 0x000000, 0x2bca03, 0x000000,
- 0x2bcd11, 0x000000, 0x000000, 0x2bde3e, 0x000000, 0x000000, 0x000000, 0x2c1c02,
- 0x2c1e01, 0x000000, 0x000000, 0x2c1f01, 0x2c2005, 0x2c2505, 0x000000, 0x000000,
- 0x000000, 0x2c2a02, 0x000000, 0x000000, 0x000000, 0x000000, 0x2c2c01, 0x2c2d01,
- 0x000000, 0x2c2e02, 0x000000, 0x000000, 0x000000, 0x2c3001, 0x000000, 0x2c3114,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x2c4504, 0x000000, 0x2c4901, 0x000000,
- 0x000000, 0x000000, 0x2c4a01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2c4b01, 0x000000, 0x2c4c01, 0x2c4d02, 0x000000, 0x2c4f01, 0x000000, 0x2c5003,
- 0x000000, 0x000000, 0x000000, 0x2c5301, 0x2c5401, 0x000000, 0x000000, 0x2c5505,
- 0x000000, 0x000000, 0x000000, 0x2c5a01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2c5b01, 0x000000, 0x2c5c0d, 0x2c6901, 0x000000, 0x000000,
- 0x2c6a03, 0x000000, 0x2c6d02, 0x2c6f01, 0x000000, 0x000000, 0x000000, 0x2c7001,
- 0x000000, 0x000000, 0x2c7105, 0x2c7603, 0x000000, 0x2c790d, 0x2c8601, 0x000000,
- 0x2c8706, 0x2c8d02, 0x000000, 0x000000, 0x000000, 0x2c8f01, 0x000000, 0x000000,
- 0x2c9003, 0x2c9305, 0x000000, 0x000000, 0x000000, 0x000000, 0x2c9801, 0x000000,
- 0x000000, 0x000000, 0x2c9903, 0x000000, 0x2c9c05, 0x000000, 0x2ca103, 0x2ca401,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2ca507, 0x000000, 0x2cac01,
- 0x000000, 0x2cad02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2caf0d,
- 0x2cbc01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2cbd01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x2cbe01, 0x000000, 0x000000, 0x2cbf04,
- 0x2cc301, 0x2cc402, 0x2cc606, 0x000000, 0x2ccc04, 0x000000, 0x2cd001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2cd101, 0x000000, 0x000000, 0x000000, 0x2cd201,
- 0x000000, 0x2cd301, 0x2cd403, 0x2cd701, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2cd803, 0x000000, 0x000000, 0x2cdb03, 0x000000, 0x000000, 0x2cde0a, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2ce805, 0x000000, 0x000000, 0x2ced07, 0x000000, 0x2cf401, 0x000000,
- 0x000000, 0x2cf501, 0x2cf602, 0x2cf802, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2cfa01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2cfb04, 0x000000, 0x2cff01, 0x2d0008, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2d0801, 0x2d0901, 0x2d0a03, 0x2d0d09, 0x000000, 0x000000,
- 0x2d1604, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2d1a01, 0x000000,
- 0x2d1b04, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2d1f04, 0x2d2301,
- 0x000000, 0x2d2402, 0x000000, 0x000000, 0x2d2601, 0x000000, 0x2d2701, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2d2802, 0x000000, 0x000000,
- 0x2d2a01, 0x2d2b01, 0x000000, 0x2d2c02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2d2e02, 0x000000, 0x000000, 0x000000, 0x2d3005, 0x000000, 0x2d3501, 0x000000,
- 0x2d3602, 0x000000, 0x000000, 0x000000, 0x2d3801, 0x000000, 0x2d3902, 0x000000,
- 0x000000, 0x000000, 0x2d3b01, 0x2d3c01, 0x000000, 0x000000, 0x000000, 0x2d3d02,
- 0x2d3f03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2d4201, 0x000000, 0x2d4303, 0x2d4604, 0x000000, 0x2d4a01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2d4b01, 0x000000,
- 0x2d4c01, 0x000000, 0x000000, 0x000000, 0x000000, 0x2d4d03, 0x2d5001, 0x000000,
- 0x000000, 0x000000, 0x2d5101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2d5201, 0x2d5302, 0x000000,
- 0x2d5502, 0x000000, 0x000000, 0x2d5702, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2d5901, 0x000000, 0x000000, 0x2d5a02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2d5c09, 0x000000, 0x2d6501, 0x000000, 0x000000, 0x000000, 0x2d6602, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2d6801, 0x000000, 0x000000, 0x2d6901, 0x2d6a01,
- 0x2d6b02, 0x2d6d09, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2d7607, 0x000000, 0x000000, 0x2d7d02, 0x000000, 0x2d7f01, 0x2d8001, 0x000000,
- 0x2d8101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2d8201, 0x000000, 0x000000, 0x2d8301, 0x2d8403, 0x2d8715,
- 0x000000, 0x000000, 0x2d9c02, 0x2d9e01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2d9f01, 0x000000, 0x000000, 0x2da004, 0x000000, 0x2da403, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2da71c, 0x000000,
- 0x000000, 0x000000, 0x2dc303, 0x000000, 0x2dc602, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2dc803, 0x000000, 0x000000, 0x2dcb13, 0x2dde02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2de003,
- 0x2de302, 0x2de501, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2de601,
- 0x000000, 0x000000, 0x000000, 0x2de702, 0x2de901, 0x000000, 0x2dea04, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2dee01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2def01, 0x000000, 0x000000,
- 0x000000, 0x2df005, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2df501, 0x2df605, 0x000000, 0x2dfb01, 0x2dfc01, 0x000000, 0x2dfd01, 0x000000,
- 0x000000, 0x2dfe02, 0x000000, 0x2e0001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2e0102,
- 0x2e0303, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2e0601, 0x000000, 0x2e0701, 0x000000, 0x000000, 0x000000, 0x2e0801, 0x000000,
- 0x000000, 0x000000, 0x2e0902, 0x000000, 0x000000, 0x000000, 0x000000, 0x2e0b01,
- 0x000000, 0x000000, 0x2e0c02, 0x2e0e01, 0x2e0f03, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2e1227, 0x2e3901, 0x2e3a01, 0x2e3b01, 0x000000, 0x000000, 0x2e3c01,
- 0x000000, 0x000000, 0x000000, 0x2e3d08, 0x000000, 0x000000, 0x2e4505, 0x2e4a01,
- 0x000000, 0x2e4b11, 0x000000, 0x2e5c02, 0x000000, 0x000000, 0x000000, 0x2e5e01,
- 0x000000, 0x000000, 0x000000, 0x2e5f02, 0x2e6101, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2e6201, 0x000000, 0x2e6301, 0x2e6406, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2e6a01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2e6b01, 0x000000, 0x2e6c01, 0x000000, 0x2e6d01, 0x000000, 0x000000,
- 0x2e6e07, 0x000000, 0x2e7501, 0x2e7602, 0x2e780c, 0x2e8401, 0x2e8502, 0x000000,
- 0x2e8706, 0x2e8d02, 0x000000, 0x000000, 0x2e8f02, 0x000000, 0x2e9102, 0x2e9303,
- 0x2e9601, 0x2e9701, 0x000000, 0x000000, 0x000000, 0x000000, 0x2e9805, 0x000000,
- 0x2e9d07, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2ea402, 0x2ea601,
- 0x2ea701, 0x000000, 0x2ea803, 0x000000, 0x000000, 0x000000, 0x000000, 0x2eab01,
- 0x2eac04, 0x000000, 0x000000, 0x000000, 0x000000, 0x2eb001, 0x000000, 0x2eb101,
- 0x000000, 0x2eb201, 0x000000, 0x2eb301, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2eb402, 0x000000, 0x000000, 0x2eb602, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2eb811, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2ec901, 0x000000, 0x000000, 0x000000, 0x2eca01,
- 0x2ecb06, 0x2ed101, 0x2ed205, 0x000000, 0x2ed701, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2ed801, 0x000000, 0x000000, 0x000000, 0x2ed905, 0x000000,
- 0x2ede05, 0x2ee301, 0x2ee401, 0x2ee505, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2eea01, 0x000000, 0x000000, 0x2eeb02, 0x2eed01, 0x000000, 0x000000,
- 0x2eee04, 0x000000, 0x000000, 0x2ef209, 0x2efb01, 0x000000, 0x000000, 0x2efc03,
- 0x000000, 0x000000, 0x2eff01, 0x2f0001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2f0107, 0x000000, 0x2f0802, 0x2f0a01, 0x000000, 0x000000, 0x2f0b02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2f0d08, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2f1501, 0x2f1601,
- 0x000000, 0x2f1704, 0x000000, 0x000000, 0x000000, 0x2f1b04, 0x2f1f01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x2f2002, 0x2f2201, 0x2f2306, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2f2901,
- 0x000000, 0x000000, 0x000000, 0x2f2a01, 0x2f2b03, 0x000000, 0x000000, 0x000000,
- 0x2f2e02, 0x000000, 0x2f3005, 0x2f3501, 0x2f3601, 0x000000, 0x000000, 0x2f3701,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x2f3803, 0x000000, 0x2f3b05, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2f4001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x2f4104, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2f4501, 0x2f4601, 0x2f4707, 0x2f4e03, 0x000000, 0x000000,
- 0x2f5102, 0x2f5302, 0x000000, 0x000000, 0x000000, 0x2f5501, 0x000000, 0x000000,
- 0x000000, 0x2f5601, 0x2f5708, 0x2f5f02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2f6101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2f6201,
- 0x000000, 0x000000, 0x000000, 0x2f6302, 0x2f6503, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2f6802, 0x000000, 0x2f6a02, 0x000000, 0x2f6c01, 0x000000, 0x000000,
- 0x2f6d02, 0x000000, 0x000000, 0x000000, 0x2f6f01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2f7003, 0x000000, 0x2f7305, 0x000000, 0x2f7801, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2f7911, 0x2f8a02, 0x2f8c02, 0x000000, 0x000000,
- 0x000000, 0x2f8e03, 0x000000, 0x000000, 0x000000, 0x000000, 0x2f9105, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2f9601, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x2f9702,
- 0x000000, 0x000000, 0x000000, 0x2f9901, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x2f9a01, 0x2f9b01, 0x000000, 0x000000, 0x2f9c07, 0x000000, 0x2fa301,
- 0x000000, 0x2fa401, 0x000000, 0x000000, 0x2fa503, 0x000000, 0x2fa802, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x2faa06, 0x000000, 0x2fb001, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2fb101, 0x2fb201, 0x2fb301, 0x2fb404, 0x000000, 0x2fb801,
- 0x2fb904, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2fbd01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2fbe06, 0x000000, 0x000000, 0x2fc404, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2fc801, 0x000000, 0x000000, 0x000000, 0x000000, 0x2fc902,
- 0x000000, 0x000000, 0x2fcb06, 0x2fd101, 0x000000, 0x000000, 0x000000, 0x2fd201,
- 0x000000, 0x000000, 0x000000, 0x2fd309, 0x2fdc01, 0x000000, 0x2fdd02, 0x2fdf01,
- 0x000000, 0x2fe012, 0x000000, 0x000000, 0x2ff202, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x2ff401, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x2ff50b, 0x000000, 0x300001, 0x000000, 0x000000, 0x300102, 0x000000, 0x300301,
- 0x300401, 0x000000, 0x000000, 0x300501, 0x000000, 0x300601, 0x000000, 0x000000,
- 0x300701, 0x000000, 0x300801, 0x000000, 0x300903, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x300c08, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x30141d,
- 0x000000, 0x303102, 0x303301, 0x000000, 0x000000, 0x000000, 0x000000, 0x303401,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x303501, 0x303601, 0x000000, 0x303701, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x303801, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x303902, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x303b02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x303d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x303e04, 0x000000, 0x304201, 0x304301, 0x30440a, 0x000000, 0x000000, 0x304e03,
- 0x305101, 0x305201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x305304,
- 0x305703, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x305a03, 0x000000, 0x305d01, 0x000000, 0x305e01, 0x000000, 0x000000,
- 0x305f09, 0x000000, 0x000000, 0x000000, 0x000000, 0x306801, 0x000000, 0x000000,
- 0x306904, 0x000000, 0x000000, 0x000000, 0x000000, 0x306d05, 0x307201, 0x000000,
- 0x000000, 0x307306, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x307901,
- 0x000000, 0x000000, 0x000000, 0x307a01, 0x000000, 0x000000, 0x000000, 0x307b08,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x308301, 0x000000, 0x308402, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x308602, 0x000000, 0x308804, 0x308c02,
- 0x000000, 0x000000, 0x000000, 0x308e01, 0x308f02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x309101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x309201,
- 0x309301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x309401, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x309507,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x309c05, 0x000000, 0x000000, 0x000000, 0x30a101, 0x30a201, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x30a317, 0x30ba12,
- 0x000000, 0x000000, 0x30cc01, 0x30cd01, 0x000000, 0x000000, 0x000000, 0x30ce01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x30cf06, 0x30d507, 0x30dc01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x30dd02, 0x000000, 0x30df01, 0x30e001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x30e101, 0x000000, 0x000000, 0x000000, 0x30e205,
- 0x000000, 0x30e704, 0x000000, 0x000000, 0x000000, 0x30eb03, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x30ee01, 0x000000,
- 0x000000, 0x000000, 0x30ef01, 0x000000, 0x000000, 0x000000, 0x30f001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x30f105, 0x000000, 0x30f601, 0x000000,
- 0x000000, 0x30f702, 0x000000, 0x30f902, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x30fb08, 0x000000, 0x310302, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x310501, 0x000000, 0x000000, 0x000000, 0x310601, 0x310702, 0x000000, 0x000000,
- 0x000000, 0x310901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x310a07, 0x000000, 0x000000, 0x311103, 0x000000, 0x311401,
- 0x000000, 0x311503, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x311802, 0x000000,
- 0x000000, 0x000000, 0x311a03, 0x311d03, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x312001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x312101, 0x312218, 0x313a05, 0x000000, 0x313f03,
- 0x000000, 0x000000, 0x314201, 0x000000, 0x314303, 0x000000, 0x31460a, 0x000000,
- 0x315002, 0x000000, 0x000000, 0x000000, 0x000000, 0x315213, 0x316502, 0x000000,
- 0x316709, 0x000000, 0x000000, 0x31700d, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x317d01, 0x000000, 0x000000, 0x317e02, 0x000000, 0x318004,
- 0x318402, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x318602, 0x000000, 0x318801, 0x000000,
- 0x31890b, 0x319401, 0x000000, 0x319503, 0x000000, 0x319804, 0x000000, 0x319c02,
- 0x000000, 0x000000, 0x000000, 0x319e01, 0x319f03, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x31a21e, 0x31c002, 0x000000, 0x000000, 0x31c201, 0x000000, 0x000000,
- 0x31c302, 0x000000, 0x000000, 0x31c501, 0x31c602, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x31c801, 0x000000,
- 0x31c901, 0x31ca01, 0x000000, 0x31cb0b, 0x000000, 0x000000, 0x31d608, 0x31de06,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x31e401, 0x000000, 0x31e504, 0x31e901,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x31ea01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x31eb0d, 0x31f81f, 0x000000,
- 0x321701, 0x000000, 0x32180b, 0x000000, 0x322303, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x322603, 0x000000, 0x322901, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x322a02, 0x322c01, 0x000000, 0x322d01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x322e03, 0x000000, 0x000000, 0x323102, 0x323301, 0x323401, 0x000000, 0x000000,
- 0x000000, 0x323501, 0x000000, 0x000000, 0x000000, 0x323601, 0x000000, 0x323702,
- 0x000000, 0x323901, 0x000000, 0x000000, 0x323a03, 0x000000, 0x323d01, 0x000000,
- 0x323e03, 0x000000, 0x000000, 0x324103, 0x000000, 0x324403, 0x324701, 0x324802,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x324a02, 0x000000, 0x324c01, 0x000000, 0x000000, 0x324d06, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x325301, 0x325403, 0x325701, 0x000000, 0x325804, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x325c02, 0x000000, 0x000000, 0x000000, 0x325e01, 0x325f02, 0x326104,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x326507,
- 0x000000, 0x326c01, 0x326d10, 0x000000, 0x327d02, 0x000000, 0x327f01, 0x000000,
- 0x000000, 0x000000, 0x328001, 0x000000, 0x328101, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x328201, 0x000000, 0x328301, 0x328401, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x328508, 0x000000, 0x328d02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x328f02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x329102, 0x000000, 0x000000,
- 0x329301, 0x000000, 0x000000, 0x329401, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x329501, 0x000000, 0x000000, 0x000000, 0x000000, 0x329601, 0x000000, 0x329701,
- 0x000000, 0x329801, 0x000000, 0x000000, 0x000000, 0x329904, 0x329d01, 0x329e01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x329f04, 0x32a302, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x32a504, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x32a901, 0x000000, 0x32aa01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x32ab0a, 0x000000,
- 0x000000, 0x32b502, 0x000000, 0x000000, 0x000000, 0x32b701, 0x32b801, 0x000000,
- 0x32b90a, 0x32c301, 0x32c404, 0x32c801, 0x32c902, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x32cb01, 0x000000, 0x000000, 0x32cc02, 0x000000, 0x000000, 0x32ce02,
- 0x32d008, 0x000000, 0x32d803, 0x000000, 0x000000, 0x000000, 0x32db01, 0x000000,
- 0x32dc01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x32dd02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x32df03, 0x32e201, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x32e301, 0x000000, 0x000000, 0x32e403, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x32e705, 0x000000,
- 0x32ec03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x32ef01,
- 0x000000, 0x000000, 0x32f002, 0x000000, 0x000000, 0x000000, 0x32f201, 0x32f302,
- 0x32f501, 0x000000, 0x000000, 0x000000, 0x000000, 0x32f602, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x32f805, 0x32fd02, 0x000000,
- 0x32ff04, 0x000000, 0x000000, 0x330301, 0x330406, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x330a01, 0x000000, 0x000000, 0x330b03, 0x000000, 0x330e06,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x331401, 0x331501, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x331601, 0x331701, 0x331801, 0x000000,
- 0x331903, 0x000000, 0x000000, 0x000000, 0x331c01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x331d01, 0x000000, 0x331e01, 0x331f06,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x332505, 0x000000, 0x332a01,
- 0x000000, 0x332b01, 0x000000, 0x000000, 0x000000, 0x332c18, 0x000000, 0x334401,
- 0x334502, 0x334701, 0x334801, 0x000000, 0x000000, 0x334901, 0x000000, 0x334a03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x334d10, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x335d12, 0x000000, 0x336f01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x337001, 0x000000,
- 0x000000, 0x337104, 0x000000, 0x000000, 0x000000, 0x000000, 0x337502, 0x000000,
- 0x000000, 0x000000, 0x337701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x337801, 0x000000, 0x337905, 0x337e04, 0x338202, 0x000000, 0x000000, 0x000000,
- 0x338401, 0x000000, 0x000000, 0x338501, 0x000000, 0x000000, 0x33860f, 0x000000,
- 0x000000, 0x339501, 0x000000, 0x000000, 0x000000, 0x339605, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x339b07, 0x000000, 0x000000, 0x33a20d, 0x33af09, 0x000000, 0x000000, 0x000000,
- 0x33b808, 0x000000, 0x33c004, 0x33c402, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x33c604, 0x33ca01, 0x000000, 0x33cb01, 0x33cc01, 0x000000, 0x33cd0a,
- 0x000000, 0x33d704, 0x000000, 0x000000, 0x000000, 0x000000, 0x33db01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x33dc16, 0x33f202, 0x000000, 0x000000, 0x33f401,
- 0x33f501, 0x000000, 0x000000, 0x33f602, 0x000000, 0x000000, 0x33f805, 0x000000,
- 0x33fd01, 0x000000, 0x000000, 0x000000, 0x33fe0e, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x340c03, 0x000000, 0x340f01, 0x000000, 0x000000, 0x000000, 0x341001,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x341101, 0x000000,
- 0x000000, 0x341204, 0x000000, 0x341607, 0x000000, 0x000000, 0x341d01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x341e0b, 0x000000, 0x342908, 0x000000,
- 0x343104, 0x000000, 0x343501, 0x343602, 0x343802, 0x000000, 0x000000, 0x343a01,
- 0x343b01, 0x000000, 0x343c01, 0x343d02, 0x000000, 0x343f04, 0x000000, 0x344301,
- 0x344405, 0x344901, 0x000000, 0x344a01, 0x344b01, 0x000000, 0x344c02, 0x344e04,
- 0x345206, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x345808, 0x346001,
- 0x000000, 0x34610a, 0x000000, 0x000000, 0x000000, 0x000000, 0x346b02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x346d01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x346e02, 0x000000, 0x000000, 0x000000, 0x000000, 0x347002, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x347201, 0x000000, 0x000000, 0x000000,
- 0x347302, 0x000000, 0x000000, 0x347508, 0x347d01, 0x000000, 0x347e06, 0x000000,
- 0x348403, 0x000000, 0x348701, 0x348802, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x348a06, 0x000000, 0x349001, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x349101, 0x349201, 0x000000, 0x349304, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x349701, 0x349801, 0x349904, 0x349d01, 0x000000, 0x349e01, 0x349f02,
- 0x34a101, 0x34a201, 0x000000, 0x34a302, 0x000000, 0x000000, 0x34a501, 0x34a602,
- 0x000000, 0x34a806, 0x000000, 0x000000, 0x000000, 0x000000, 0x34ae03, 0x000000,
- 0x34b103, 0x000000, 0x34b401, 0x000000, 0x000000, 0x34b501, 0x000000, 0x000000,
- 0x34b601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x34b701,
- 0x34b803, 0x000000, 0x34bb10, 0x000000, 0x000000, 0x34cb06, 0x34d103, 0x000000,
- 0x000000, 0x34d403, 0x34d702, 0x000000, 0x000000, 0x000000, 0x34d905, 0x34de02,
- 0x000000, 0x34e002, 0x34e201, 0x000000, 0x34e303, 0x000000, 0x34e601, 0x000000,
- 0x34e701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x34e802,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x34ea02, 0x000000,
- 0x000000, 0x000000, 0x34ec06, 0x34f201, 0x000000, 0x000000, 0x000000, 0x34f301,
- 0x34f401, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x34f505, 0x000000, 0x34fa01, 0x000000, 0x000000, 0x000000, 0x000000, 0x34fb02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x34fd03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x350002,
- 0x000000, 0x000000, 0x350202, 0x000000, 0x000000, 0x000000, 0x000000, 0x350405,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x350903, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x350c05, 0x000000, 0x351109, 0x000000, 0x351a05, 0x000000, 0x351f01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x352002, 0x352201, 0x000000, 0x352301, 0x352401, 0x352501, 0x35260a, 0x000000,
- 0x000000, 0x353001, 0x353105, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x353602, 0x000000, 0x353802, 0x353a02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x353c05, 0x000000,
- 0x000000, 0x000000, 0x354104, 0x000000, 0x000000, 0x000000, 0x354510, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x355502,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x355703, 0x000000, 0x355a01, 0x000000, 0x000000, 0x355b02,
- 0x000000, 0x000000, 0x355d01, 0x000000, 0x000000, 0x000000, 0x355e01, 0x000000,
- 0x355f04, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x356301, 0x000000,
- 0x356402, 0x356601, 0x000000, 0x000000, 0x356703, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x356a0a, 0x357401, 0x000000, 0x357501, 0x000000,
- 0x000000, 0x000000, 0x357605, 0x000000, 0x000000, 0x000000, 0x357b02, 0x357d03,
- 0x358005, 0x000000, 0x000000, 0x000000, 0x358503, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x358802, 0x000000, 0x000000, 0x000000, 0x000000, 0x358a07,
- 0x000000, 0x000000, 0x000000, 0x359101, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x359201, 0x000000, 0x359301,
- 0x359402, 0x000000, 0x000000, 0x359605, 0x359b06, 0x35a101, 0x35a201, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x35a302,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x35a502,
- 0x000000, 0x35a701, 0x000000, 0x000000, 0x35a801, 0x35a909, 0x35b204, 0x000000,
- 0x35b601, 0x000000, 0x000000, 0x35b701, 0x000000, 0x000000, 0x000000, 0x35b804,
- 0x000000, 0x35bc05, 0x000000, 0x000000, 0x35c101, 0x35c201, 0x000000, 0x35c301,
- 0x35c401, 0x000000, 0x35c501, 0x000000, 0x000000, 0x35c601, 0x000000, 0x000000,
- 0x000000, 0x35c701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x35c803, 0x000000, 0x000000, 0x35cb03, 0x000000, 0x35ce01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x35cf02, 0x35d109, 0x35da0a, 0x000000, 0x000000, 0x000000, 0x35e401,
- 0x000000, 0x35e503, 0x000000, 0x35e803, 0x000000, 0x35eb02, 0x35ed0a, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x35f701, 0x35f811, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x360902, 0x000000, 0x360b02, 0x000000, 0x000000, 0x360d01,
- 0x000000, 0x000000, 0x360e01, 0x000000, 0x360f02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x361101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x361202, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x36140d, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x362102, 0x000000, 0x000000, 0x362301, 0x000000, 0x000000, 0x362401, 0x000000,
- 0x000000, 0x362501, 0x362605, 0x000000, 0x362b01, 0x000000, 0x362c01, 0x362d02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x362f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x363005,
- 0x363508, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x363d02, 0x000000, 0x363f01, 0x364001, 0x364101,
- 0x000000, 0x000000, 0x364203, 0x364503, 0x000000, 0x364802, 0x364a01, 0x364b04,
- 0x364f02, 0x000000, 0x000000, 0x365103, 0x000000, 0x000000, 0x000000, 0x365401,
- 0x000000, 0x000000, 0x000000, 0x365501, 0x000000, 0x000000, 0x000000, 0x365601,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x365705, 0x365c01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x365d01, 0x000000, 0x365e01, 0x000000, 0x000000,
- 0x365f01, 0x000000, 0x000000, 0x000000, 0x366001, 0x000000, 0x000000, 0x366102,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x366303,
- 0x000000, 0x366605, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x366b01,
- 0x000000, 0x366c01, 0x000000, 0x366d01, 0x000000, 0x000000, 0x366e09, 0x000000,
- 0x36770a, 0x000000, 0x000000, 0x000000, 0x368101, 0x000000, 0x000000, 0x368201,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x368301, 0x000000, 0x36840a, 0x000000,
- 0x368e02, 0x369001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x369114, 0x36a501,
- 0x000000, 0x36a603, 0x36a901, 0x000000, 0x36aa01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x36ab03, 0x000000, 0x000000, 0x36ae13, 0x000000, 0x000000, 0x000000,
- 0x36c101, 0x000000, 0x36c202, 0x000000, 0x36c414, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x36d802, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x36da03, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x36dd02, 0x000000, 0x000000, 0x000000, 0x36df01, 0x36e002, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x36e201, 0x000000, 0x000000, 0x36e304, 0x36e707, 0x000000, 0x36ee01,
- 0x000000, 0x36ef02, 0x36f101, 0x000000, 0x000000, 0x36f201, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x36f304,
- 0x000000, 0x000000, 0x000000, 0x36f702, 0x000000, 0x36f901, 0x36fa01, 0x000000,
- 0x36fb03, 0x36fe06, 0x370401, 0x370501, 0x370606, 0x370c02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x370e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x370f01, 0x371001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x371104, 0x000000, 0x371501, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x371601, 0x000000, 0x000000, 0x000000, 0x371701, 0x000000,
- 0x000000, 0x371802, 0x000000, 0x000000, 0x000000, 0x371a01, 0x371b01, 0x000000,
- 0x000000, 0x371c08, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x372401, 0x000000, 0x000000, 0x000000, 0x000000, 0x372501,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x372601, 0x000000, 0x000000, 0x372701,
- 0x000000, 0x000000, 0x372801, 0x000000, 0x372905, 0x372e01, 0x000000, 0x372f08,
- 0x373702, 0x000000, 0x000000, 0x373902, 0x000000, 0x373b01, 0x000000, 0x000000,
- 0x000000, 0x373c01, 0x373d04, 0x000000, 0x000000, 0x000000, 0x000000, 0x374103,
- 0x000000, 0x000000, 0x374402, 0x000000, 0x374601, 0x000000, 0x000000, 0x000000,
- 0x374701, 0x000000, 0x000000, 0x374801, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x374902, 0x000000, 0x374b01,
- 0x374c02, 0x000000, 0x000000, 0x374e02, 0x000000, 0x375001, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x375101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x37520a, 0x000000, 0x000000, 0x375c01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x375d02, 0x000000, 0x000000, 0x375f02, 0x000000,
- 0x000000, 0x376101, 0x000000, 0x000000, 0x376202, 0x376401, 0x000000, 0x000000,
- 0x376503, 0x376802, 0x376a03, 0x000000, 0x376d07, 0x000000, 0x000000, 0x377401,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x377501, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x377601, 0x377704, 0x000000, 0x000000, 0x000000,
- 0x377b04, 0x000000, 0x000000, 0x377f17, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x379603,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x379901, 0x000000, 0x000000, 0x379a05, 0x000000, 0x000000, 0x000000,
- 0x379f01, 0x37a005, 0x000000, 0x000000, 0x000000, 0x37a501, 0x000000, 0x000000,
- 0x000000, 0x37a603, 0x000000, 0x37a901, 0x000000, 0x000000, 0x37aa03, 0x000000,
- 0x000000, 0x37ad02, 0x000000, 0x000000, 0x37af04, 0x000000, 0x000000, 0x000000,
- 0x37b301, 0x000000, 0x37b401, 0x000000, 0x000000, 0x000000, 0x000000, 0x37b505,
- 0x37ba02, 0x37bc08, 0x000000, 0x000000, 0x37c401, 0x000000, 0x000000, 0x37c501,
- 0x000000, 0x37c603, 0x37c901, 0x000000, 0x000000, 0x000000, 0x37ca01, 0x000000,
- 0x000000, 0x000000, 0x37cb01, 0x37cc01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x37cd02, 0x000000, 0x000000, 0x000000, 0x37cf01, 0x000000, 0x000000, 0x000000,
- 0x37d001, 0x000000, 0x37d103, 0x000000, 0x37d408, 0x37dc01, 0x37dd02, 0x37df01,
- 0x37e002, 0x000000, 0x37e201, 0x000000, 0x37e301, 0x37e402, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x37e601, 0x37e705, 0x000000, 0x000000, 0x37ec01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x37ed02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x37ef01, 0x000000, 0x000000, 0x000000, 0x000000, 0x37f001,
- 0x37f104, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x37f503, 0x37f801,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x37f901, 0x37fa01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x37fb01, 0x000000, 0x000000, 0x000000,
- 0x37fc04, 0x000000, 0x000000, 0x380003, 0x380301, 0x000000, 0x380401, 0x000000,
- 0x000000, 0x380503, 0x000000, 0x380801, 0x380901, 0x000000, 0x000000, 0x380a0f,
- 0x000000, 0x381902, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x381b01,
- 0x381c06, 0x382202, 0x000000, 0x382401, 0x000000, 0x000000, 0x382505, 0x000000,
- 0x382a15, 0x000000, 0x383f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x384004, 0x000000, 0x000000, 0x384401, 0x000000, 0x384502, 0x000000, 0x384701,
- 0x384808, 0x000000, 0x000000, 0x000000, 0x385007, 0x000000, 0x000000, 0x385706,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x385d01, 0x000000, 0x000000, 0x000000, 0x385e04, 0x000000, 0x000000,
- 0x386205, 0x000000, 0x386702, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x386901, 0x000000, 0x000000, 0x386a03, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x386d08, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x387503, 0x000000, 0x387803, 0x000000, 0x387b06, 0x000000,
- 0x000000, 0x388101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x388202,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x388408, 0x000000,
- 0x388c01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x388d04,
- 0x389101, 0x000000, 0x000000, 0x000000, 0x389202, 0x000000, 0x000000, 0x000000,
- 0x389401, 0x389501, 0x000000, 0x000000, 0x000000, 0x389601, 0x389701, 0x389803,
- 0x389b01, 0x389c01, 0x389d01, 0x389e01, 0x389f01, 0x38a002, 0x000000, 0x38a202,
- 0x000000, 0x38a401, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x38a505, 0x000000, 0x38aa05, 0x38af01,
- 0x38b001, 0x38b101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x38b20b, 0x38bd04, 0x38c107,
- 0x000000, 0x38c807, 0x000000, 0x38cf03, 0x000000, 0x38d201, 0x000000, 0x000000,
- 0x38d302, 0x38d501, 0x38d601, 0x000000, 0x000000, 0x38d701, 0x000000, 0x000000,
- 0x000000, 0x38d801, 0x000000, 0x38d902, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x38db08, 0x38e301, 0x000000, 0x000000, 0x38e401, 0x38e502, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x38e701, 0x000000, 0x000000, 0x38e802,
- 0x000000, 0x000000, 0x000000, 0x38ea05, 0x38ef01, 0x000000, 0x000000, 0x38f001,
- 0x38f101, 0x38f201, 0x000000, 0x000000, 0x38f302, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x38f501, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x38f604, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x38fa01, 0x000000, 0x38fb0c, 0x000000,
- 0x000000, 0x390701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x390803, 0x000000,
- 0x000000, 0x390b01, 0x390c06, 0x391202, 0x000000, 0x391402, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x39160c, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x392201, 0x000000, 0x392303, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x392602, 0x000000, 0x392801, 0x392901, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x392a01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x392b03, 0x000000, 0x000000, 0x392e03, 0x393102, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x393301, 0x000000, 0x000000, 0x000000, 0x000000, 0x393401,
- 0x393507, 0x000000, 0x393c01, 0x000000, 0x000000, 0x393d04, 0x000000, 0x394103,
- 0x000000, 0x394404, 0x000000, 0x000000, 0x000000, 0x394803, 0x000000, 0x000000,
- 0x000000, 0x394b01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x394c01, 0x000000, 0x000000, 0x394d0a, 0x000000,
- 0x000000, 0x000000, 0x395701, 0x000000, 0x000000, 0x395801, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x395901, 0x395a03, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x395d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x395e0a, 0x396802,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x396a06, 0x397006, 0x397601, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x397701, 0x000000, 0x000000, 0x000000, 0x397806, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x397e01, 0x000000, 0x397f01, 0x398005, 0x398502, 0x000000,
- 0x000000, 0x000000, 0x398701, 0x398802, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x398a02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x398c03, 0x398f01, 0x399003, 0x000000, 0x000000, 0x399302, 0x399502, 0x000000,
- 0x000000, 0x000000, 0x399709, 0x39a002, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x39a203, 0x39a502, 0x39a701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x39a801, 0x39a903, 0x39ac06, 0x39b201, 0x000000, 0x39b301, 0x000000, 0x39b401,
- 0x39b501, 0x000000, 0x000000, 0x39b601, 0x000000, 0x000000, 0x39b701, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x39b802, 0x000000, 0x39ba03, 0x000000, 0x000000,
- 0x39bd03, 0x000000, 0x000000, 0x39c001, 0x39c102, 0x39c307, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x39ca03, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x39cd05, 0x000000, 0x39d201, 0x39d302, 0x39d503, 0x000000,
- 0x000000, 0x000000, 0x39d801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x39d901, 0x000000, 0x000000, 0x000000, 0x000000, 0x39da01, 0x000000,
- 0x39db03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x39de01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x39df02,
- 0x000000, 0x39e101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x39e201, 0x000000, 0x39e303, 0x000000, 0x39e601, 0x000000, 0x000000, 0x000000,
- 0x39e702, 0x000000, 0x000000, 0x39e901, 0x39ea03, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x39ed03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x39f00c,
- 0x000000, 0x39fc01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x39fd01,
- 0x000000, 0x000000, 0x39fe18, 0x3a1602, 0x000000, 0x3a1803, 0x000000, 0x3a1b01,
- 0x000000, 0x3a1c01, 0x3a1d02, 0x3a1f01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x3a2001, 0x000000, 0x3a210c, 0x3a2d01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x3a2e0c, 0x000000, 0x3a3a01, 0x000000, 0x3a3b03, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3a3e09, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3a470b, 0x000000, 0x000000, 0x3a5201, 0x000000, 0x3a5302,
- 0x3a5501, 0x3a5601, 0x000000, 0x000000, 0x3a5709, 0x000000, 0x3a6002, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3a6201, 0x000000,
- 0x000000, 0x3a6301, 0x3a6402, 0x3a6601, 0x000000, 0x000000, 0x3a670c, 0x000000,
- 0x000000, 0x000000, 0x3a7309, 0x3a7c11, 0x000000, 0x000000, 0x3a8d05, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3a9203, 0x000000, 0x000000, 0x3a9503, 0x3a9801,
- 0x000000, 0x000000, 0x3a9912, 0x3aab01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3aac01, 0x000000, 0x3aad01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x3aae02, 0x000000, 0x000000, 0x3ab004, 0x3ab404, 0x3ab801, 0x000000,
- 0x000000, 0x000000, 0x3ab901, 0x000000, 0x000000, 0x000000, 0x3aba08, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x3ac201, 0x3ac301, 0x000000, 0x000000,
- 0x000000, 0x3ac401, 0x3ac502, 0x3ac702, 0x3ac90f, 0x000000, 0x3ad801, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3ad909, 0x000000, 0x000000, 0x3ae207, 0x3ae902,
- 0x3aeb01, 0x000000, 0x000000, 0x3aec01, 0x3aed02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3aef01, 0x000000, 0x000000,
- 0x000000, 0x3af005, 0x000000, 0x000000, 0x000000, 0x000000, 0x3af502, 0x000000,
- 0x3af701, 0x000000, 0x3af803, 0x000000, 0x3afb02, 0x000000, 0x000000, 0x3afd03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3b0001, 0x000000, 0x000000, 0x3b0103, 0x000000, 0x3b0404, 0x3b0802, 0x000000,
- 0x000000, 0x000000, 0x3b0a03, 0x000000, 0x3b0d01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3b0e01, 0x000000, 0x000000, 0x3b0f03, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x3b1206, 0x3b1801, 0x000000, 0x000000,
- 0x000000, 0x3b1901, 0x000000, 0x3b1a03, 0x000000, 0x000000, 0x3b1d01, 0x000000,
- 0x3b1e02, 0x000000, 0x000000, 0x000000, 0x3b2001, 0x3b2101, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x3b2201, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3b230e, 0x000000, 0x000000, 0x3b3108, 0x3b3907, 0x000000,
- 0x3b4001, 0x3b4105, 0x000000, 0x3b4602, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3b4801, 0x000000, 0x3b4901, 0x3b4a04, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x3b4e02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x3b5002, 0x3b5207, 0x000000, 0x3b5901, 0x3b5a01, 0x3b5b08, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3b6302, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3b6501, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x3b6606, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3b6c01, 0x000000, 0x3b6d12, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3b7f02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3b8104, 0x000000, 0x3b8502, 0x3b8708, 0x000000, 0x3b8f02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x3b9101, 0x3b9201, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3b9303, 0x000000, 0x000000,
- 0x000000, 0x3b9607, 0x3b9d04, 0x3ba101, 0x000000, 0x000000, 0x000000, 0x3ba20a,
- 0x000000, 0x000000, 0x000000, 0x3bac02, 0x3bae01, 0x000000, 0x000000, 0x000000,
- 0x3baf01, 0x3bb001, 0x3bb103, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3bb404, 0x000000, 0x000000, 0x000000, 0x000000, 0x3bb802, 0x000000, 0x000000,
- 0x3bba05, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3bbf01, 0x3bc007, 0x000000, 0x000000, 0x3bc702, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x3bc901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3bca01, 0x3bcb01, 0x000000, 0x3bcc02, 0x000000, 0x000000, 0x3bce01, 0x000000,
- 0x000000, 0x3bcf01, 0x3bd001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3bd103,
- 0x3bd401, 0x000000, 0x000000, 0x000000, 0x3bd501, 0x3bd601, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3bd701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3bd803, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x3bdb01, 0x000000, 0x3bdc01, 0x3bdd04, 0x000000, 0x3be104, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3be501, 0x000000, 0x3be606, 0x000000, 0x3bec01,
- 0x000000, 0x000000, 0x3bed01, 0x000000, 0x000000, 0x3bee01, 0x3bef01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3bf002, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3bf201, 0x000000, 0x000000, 0x3bf301, 0x3bf401, 0x3bf506, 0x000000, 0x3bfb01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3bfc01, 0x000000, 0x3bfd01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3bfe01, 0x3bff04, 0x3c0310, 0x000000, 0x3c130c, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x3c1f01, 0x000000, 0x000000, 0x3c2002,
- 0x000000, 0x3c2201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3c2301, 0x000000, 0x000000, 0x3c2401, 0x3c2501, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3c2601, 0x000000, 0x3c2702, 0x000000, 0x000000, 0x000000, 0x3c2903, 0x000000,
- 0x3c2c05, 0x3c3101, 0x000000, 0x000000, 0x000000, 0x000000, 0x3c3201, 0x000000,
- 0x000000, 0x000000, 0x3c3304, 0x000000, 0x3c370c, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x3c4307, 0x000000, 0x3c4a03, 0x000000,
- 0x000000, 0x3c4d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x3c4e01, 0x000000,
- 0x000000, 0x000000, 0x3c4f01, 0x000000, 0x000000, 0x000000, 0x3c5008, 0x3c5802,
- 0x3c5a01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3c5b03, 0x000000, 0x000000, 0x3c5e01, 0x000000, 0x000000, 0x000000, 0x3c5f02,
- 0x000000, 0x000000, 0x3c6102, 0x000000, 0x3c6301, 0x3c6401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3c6502, 0x3c6701, 0x000000, 0x3c6801, 0x000000,
- 0x000000, 0x3c6901, 0x000000, 0x000000, 0x3c6a01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3c6b0d, 0x000000, 0x000000, 0x000000, 0x000000, 0x3c7803,
- 0x000000, 0x000000, 0x3c7b01, 0x000000, 0x3c7c01, 0x3c7d01, 0x000000, 0x000000,
- 0x000000, 0x3c7e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3c7f04,
- 0x000000, 0x3c8306, 0x3c8901, 0x000000, 0x000000, 0x000000, 0x3c8a01, 0x000000,
- 0x000000, 0x000000, 0x3c8b01, 0x000000, 0x3c8c0b, 0x000000, 0x000000, 0x3c970a,
- 0x000000, 0x3ca102, 0x000000, 0x000000, 0x000000, 0x3ca301, 0x000000, 0x3ca401,
- 0x3ca501, 0x000000, 0x000000, 0x3ca612, 0x000000, 0x000000, 0x3cb801, 0x3cb902,
- 0x000000, 0x3cbb04, 0x3cbf01, 0x000000, 0x3cc001, 0x000000, 0x000000, 0x000000,
- 0x3cc101, 0x000000, 0x3cc202, 0x000000, 0x3cc408, 0x3ccc08, 0x3cd404, 0x3cd801,
- 0x3cd904, 0x000000, 0x3cdd01, 0x000000, 0x3cde03, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3ce102, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x3ce301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3ce404,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3ce801,
- 0x3ce901, 0x000000, 0x000000, 0x000000, 0x000000, 0x3cea01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x3ceb01, 0x000000, 0x000000, 0x000000,
- 0x3cec03, 0x000000, 0x000000, 0x000000, 0x000000, 0x3cef01, 0x000000, 0x000000,
- 0x3cf001, 0x000000, 0x000000, 0x000000, 0x000000, 0x3cf101, 0x3cf201, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3cf305, 0x000000, 0x3cf803,
- 0x000000, 0x000000, 0x3cfb01, 0x000000, 0x000000, 0x3cfc02, 0x000000, 0x000000,
- 0x3cfe02, 0x3d0001, 0x3d0102, 0x000000, 0x000000, 0x3d0310, 0x000000, 0x3d1301,
- 0x3d140c, 0x000000, 0x000000, 0x3d2001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3d2101, 0x000000, 0x000000, 0x3d2205, 0x000000,
- 0x000000, 0x000000, 0x3d2702, 0x000000, 0x3d2906, 0x000000, 0x000000, 0x000000,
- 0x3d2f01, 0x000000, 0x000000, 0x3d3003, 0x000000, 0x000000, 0x3d3301, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x3d3405, 0x000000, 0x000000, 0x3d3901,
- 0x000000, 0x000000, 0x3d3a01, 0x000000, 0x000000, 0x000000, 0x000000, 0x3d3b01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3d3c01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3d3d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3d3e02, 0x000000,
- 0x000000, 0x3d4005, 0x000000, 0x3d4501, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3d4601, 0x000000, 0x3d4702, 0x000000, 0x000000, 0x3d4907, 0x000000, 0x000000,
- 0x000000, 0x3d5002, 0x000000, 0x3d5201, 0x3d5301, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3d5401, 0x000000,
- 0x3d5501, 0x3d5601, 0x000000, 0x3d5701, 0x000000, 0x3d5802, 0x000000, 0x3d5a02,
- 0x000000, 0x3d5c03, 0x000000, 0x3d5f04, 0x3d6301, 0x000000, 0x3d6401, 0x000000,
- 0x3d6502, 0x3d6704, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3d6b01,
- 0x000000, 0x000000, 0x000000, 0x3d6c01, 0x000000, 0x3d6d0e, 0x000000, 0x000000,
- 0x000000, 0x3d7b05, 0x000000, 0x3d8001, 0x3d8101, 0x000000, 0x000000, 0x3d8201,
- 0x000000, 0x3d8301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3d8403,
- 0x000000, 0x000000, 0x000000, 0x3d8701, 0x000000, 0x3d8806, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x3d8e06, 0x000000, 0x000000, 0x000000,
- 0x3d9402, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3d9604, 0x000000, 0x000000, 0x000000, 0x3d9a0d, 0x000000,
- 0x000000, 0x3da701, 0x000000, 0x000000, 0x000000, 0x000000, 0x3da805, 0x3dad01,
- 0x3dae01, 0x000000, 0x000000, 0x3daf0f, 0x000000, 0x000000, 0x000000, 0x3dbe04,
- 0x000000, 0x3dc207, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3dc901, 0x000000,
- 0x000000, 0x000000, 0x3dca02, 0x000000, 0x000000, 0x000000, 0x000000, 0x3dcc01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3dcd02, 0x3dcf03, 0x000000,
- 0x000000, 0x3dd202, 0x000000, 0x000000, 0x3dd402, 0x3dd601, 0x000000, 0x3dd701,
- 0x000000, 0x000000, 0x3dd802, 0x000000, 0x3dda03, 0x3ddd01, 0x3dde04, 0x3de201,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3de301, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3de406, 0x3dea05, 0x3def02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3df102, 0x3df301, 0x000000, 0x3df403, 0x000000, 0x000000,
- 0x000000, 0x3df701, 0x000000, 0x000000, 0x000000, 0x000000, 0x3df801, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3df906, 0x000000, 0x3dff04,
- 0x000000, 0x000000, 0x3e0301, 0x000000, 0x000000, 0x000000, 0x000000, 0x3e0401,
- 0x3e0505, 0x3e0a02, 0x3e0c03, 0x000000, 0x000000, 0x3e0f01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3e1001, 0x3e1102, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3e1301, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3e1401, 0x000000, 0x000000,
- 0x3e1501, 0x000000, 0x000000, 0x000000, 0x3e1601, 0x000000, 0x3e1701, 0x3e1801,
- 0x000000, 0x3e1903, 0x3e1c01, 0x3e1d09, 0x000000, 0x3e2604, 0x3e2a01, 0x000000,
- 0x3e2b08, 0x000000, 0x3e330b, 0x3e3e02, 0x000000, 0x3e400d, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3e4d08, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3e5503, 0x000000, 0x000000, 0x000000, 0x3e5805,
- 0x000000, 0x000000, 0x3e5d01, 0x000000, 0x3e5e0a, 0x000000, 0x000000, 0x3e6801,
- 0x000000, 0x000000, 0x3e6903, 0x000000, 0x000000, 0x3e6c01, 0x3e6d01, 0x3e6e03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3e7104,
- 0x000000, 0x000000, 0x000000, 0x3e7501, 0x000000, 0x3e7604, 0x3e7a03, 0x3e7d01,
- 0x000000, 0x3e7e01, 0x000000, 0x3e7f08, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3e8701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x3e8802, 0x3e8a02, 0x000000, 0x3e8c01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3e8d01, 0x000000, 0x000000, 0x3e8e08, 0x3e9601, 0x3e9701, 0x3e9801, 0x000000,
- 0x000000, 0x3e9904, 0x000000, 0x3e9d02, 0x000000, 0x3e9f01, 0x000000, 0x3ea002,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3ea201, 0x3ea301,
- 0x3ea402, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3ea602, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3ea802, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x3eaa01, 0x3eab03, 0x000000, 0x000000, 0x3eae01, 0x000000, 0x000000,
- 0x000000, 0x3eaf01, 0x000000, 0x000000, 0x3eb001, 0x3eb102, 0x3eb303, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x3eb601, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3eb702, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3eb902, 0x3ebb01, 0x3ebc02,
- 0x000000, 0x000000, 0x3ebe01, 0x000000, 0x000000, 0x3ebf03, 0x000000, 0x000000,
- 0x000000, 0x3ec201, 0x3ec301, 0x000000, 0x000000, 0x3ec409, 0x3ecd01, 0x000000,
- 0x000000, 0x000000, 0x3ece01, 0x000000, 0x000000, 0x000000, 0x3ecf01, 0x000000,
- 0x3ed007, 0x000000, 0x000000, 0x000000, 0x3ed701, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3ed804, 0x3edc04, 0x000000, 0x3ee006, 0x000000, 0x3ee601, 0x000000, 0x3ee701,
- 0x3ee897, 0x000000, 0x000000, 0x3f7f03, 0x000000, 0x000000, 0x3f8201, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3f8301, 0x3f8401,
- 0x000000, 0x000000, 0x3f8501, 0x000000, 0x000000, 0x3f8605, 0x000000, 0x3f8b01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3f8c01,
- 0x000000, 0x000000, 0x3f8d03, 0x3f9001, 0x000000, 0x3f9101, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3f9201, 0x3f9301, 0x3f9403, 0x3f9701, 0x000000, 0x000000,
- 0x000000, 0x3f9803, 0x3f9b02, 0x000000, 0x000000, 0x000000, 0x3f9d03, 0x000000,
- 0x3fa001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3fa101, 0x000000, 0x000000, 0x000000, 0x000000, 0x3fa201,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3fa301,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3fa402, 0x3fa602, 0x3fa805, 0x000000, 0x3fad02, 0x000000, 0x3faf01, 0x000000,
- 0x3fb001, 0x000000, 0x3fb101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3fb201,
- 0x3fb304, 0x3fb701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x3fb802, 0x3fba03, 0x000000, 0x3fbd03, 0x000000, 0x000000, 0x000000, 0x3fc005,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3fc507,
- 0x3fcc03, 0x3fcf01, 0x000000, 0x000000, 0x000000, 0x000000, 0x3fd003, 0x3fd305,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x3fd801, 0x000000, 0x000000,
- 0x3fd901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3fda01, 0x000000, 0x000000, 0x3fdb01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3fdc01, 0x000000, 0x000000, 0x000000, 0x3fdd07, 0x000000,
- 0x3fe402, 0x000000, 0x000000, 0x000000, 0x000000, 0x3fe601, 0x3fe702, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x3fe901, 0x3fea01, 0x3feb01, 0x3fec01, 0x000000,
- 0x000000, 0x3fed01, 0x000000, 0x000000, 0x000000, 0x000000, 0x3fee01, 0x3fef01,
- 0x000000, 0x3ff005, 0x3ff502, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x3ff702, 0x000000, 0x000000, 0x000000, 0x000000, 0x3ff901,
- 0x3ffa01, 0x000000, 0x3ffb01, 0x000000, 0x000000, 0x000000, 0x3ffc02, 0x3ffe07,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x400509, 0x000000, 0x000000,
- 0x000000, 0x400e03, 0x000000, 0x401102, 0x401302, 0x401501, 0x401602, 0x000000,
- 0x000000, 0x000000, 0x401802, 0x401a01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x401b01, 0x000000, 0x401c02, 0x401e08, 0x402601, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x402704, 0x000000, 0x000000, 0x000000, 0x402b06, 0x403101,
- 0x40320e, 0x404001, 0x000000, 0x404101, 0x404202, 0x000000, 0x000000, 0x000000,
- 0x404401, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x404502, 0x000000, 0x000000, 0x404702, 0x404901, 0x000000, 0x000000, 0x404a01,
- 0x000000, 0x000000, 0x404b02, 0x000000, 0x000000, 0x000000, 0x000000, 0x404d01,
- 0x000000, 0x404e03, 0x000000, 0x000000, 0x40510d, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x405e01, 0x000000, 0x000000, 0x405f01, 0x000000, 0x406003,
- 0x406301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x406404, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x406802, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x406a07, 0x000000, 0x000000, 0x407105, 0x000000, 0x000000, 0x407602, 0x000000,
- 0x407801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x407902, 0x000000, 0x000000, 0x000000, 0x407b01, 0x407c02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x407e02,
- 0x408003, 0x000000, 0x000000, 0x000000, 0x408301, 0x000000, 0x408402, 0x000000,
- 0x40860a, 0x000000, 0x409002, 0x000000, 0x000000, 0x409203, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x409507, 0x000000, 0x000000, 0x409c01,
- 0x409d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x409e04, 0x40a201, 0x40a303, 0x000000, 0x000000, 0x000000,
- 0x40a601, 0x000000, 0x40a701, 0x000000, 0x000000, 0x000000, 0x40a805, 0x000000,
- 0x000000, 0x40ad04, 0x000000, 0x000000, 0x40b103, 0x40b405, 0x000000, 0x000000,
- 0x000000, 0x40b903, 0x000000, 0x000000, 0x000000, 0x40bc0c, 0x40c801, 0x000000,
- 0x000000, 0x000000, 0x40c901, 0x40ca08, 0x40d201, 0x000000, 0x40d302, 0x000000,
- 0x40d502, 0x000000, 0x000000, 0x000000, 0x40d701, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x40d802, 0x000000, 0x000000, 0x000000, 0x000000, 0x40da01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x40db08,
- 0x40e301, 0x000000, 0x000000, 0x000000, 0x000000, 0x40e405, 0x000000, 0x40e916,
- 0x000000, 0x000000, 0x000000, 0x40ff01, 0x000000, 0x000000, 0x410004, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x410401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x410505, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x410a02, 0x000000, 0x000000, 0x000000, 0x000000, 0x410c01, 0x410d01,
- 0x000000, 0x000000, 0x000000, 0x410e01, 0x000000, 0x000000, 0x410f0b, 0x411a04,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x411e01, 0x000000, 0x411f01, 0x000000,
- 0x000000, 0x000000, 0x412003, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x41230a, 0x000000, 0x412d03, 0x000000, 0x000000, 0x000000, 0x000000, 0x413001,
- 0x000000, 0x413102, 0x000000, 0x413301, 0x000000, 0x413401, 0x000000, 0x413502,
- 0x000000, 0x413709, 0x000000, 0x000000, 0x000000, 0x414002, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x414202, 0x000000, 0x000000, 0x000000,
- 0x414402, 0x000000, 0x000000, 0x000000, 0x000000, 0x414601, 0x000000, 0x414701,
- 0x414802, 0x000000, 0x000000, 0x000000, 0x414a01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x414b02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x414d06, 0x415302, 0x000000, 0x000000, 0x415501,
- 0x415601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x415701, 0x000000, 0x415801, 0x000000, 0x000000, 0x415901, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x415a01, 0x000000, 0x000000, 0x000000, 0x415b02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x415d04, 0x416105, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x416602, 0x000000,
- 0x000000, 0x416804, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x416c03,
- 0x000000, 0x416f04, 0x000000, 0x000000, 0x000000, 0x000000, 0x417302, 0x000000,
- 0x000000, 0x417501, 0x000000, 0x417601, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x417702, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x417907, 0x000000, 0x418001, 0x000000, 0x418102, 0x000000, 0x418305,
- 0x000000, 0x000000, 0x000000, 0x418803, 0x418b01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x418c01, 0x000000, 0x000000, 0x418d02, 0x000000,
- 0x418f01, 0x000000, 0x000000, 0x419002, 0x419205, 0x419702, 0x000000, 0x000000,
- 0x419904, 0x000000, 0x000000, 0x000000, 0x419d0b, 0x000000, 0x000000, 0x41a805,
- 0x000000, 0x000000, 0x41ad02, 0x41af01, 0x41b002, 0x000000, 0x41b201, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x41b310, 0x000000, 0x000000, 0x41c303, 0x41c602, 0x000000, 0x000000,
- 0x41c80a, 0x41d206, 0x41d801, 0x000000, 0x000000, 0x41d901, 0x41da01, 0x000000,
- 0x000000, 0x41db02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x41dd01, 0x000000, 0x41de01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x41df0c, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x41eb05, 0x000000, 0x41f001, 0x41f103,
- 0x000000, 0x41f401, 0x41f501, 0x000000, 0x41f602, 0x000000, 0x000000, 0x000000,
- 0x41f802, 0x41fa03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x41fd01,
- 0x41fe02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x420001, 0x000000, 0x42010f, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x42100b, 0x000000, 0x000000, 0x421b01,
- 0x421c01, 0x421d01, 0x000000, 0x000000, 0x421e0a, 0x000000, 0x000000, 0x000000,
- 0x422801, 0x422902, 0x000000, 0x000000, 0x000000, 0x422b01, 0x422c01, 0x000000,
- 0x000000, 0x000000, 0x422d03, 0x423001, 0x000000, 0x423103, 0x423401, 0x423502,
- 0x000000, 0x000000, 0x000000, 0x423703, 0x423a0a, 0x000000, 0x000000, 0x000000,
- 0x424404, 0x000000, 0x424806, 0x000000, 0x000000, 0x424e01, 0x000000, 0x000000,
- 0x424f02, 0x000000, 0x000000, 0x000000, 0x000000, 0x425103, 0x000000, 0x000000,
- 0x425402, 0x000000, 0x425606, 0x425c01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x425d01, 0x000000, 0x000000, 0x425e02, 0x000000, 0x000000, 0x000000, 0x426001,
- 0x000000, 0x426102, 0x426304, 0x426702, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x426902, 0x426b02, 0x000000, 0x426d01, 0x000000, 0x000000, 0x426e01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x426f05, 0x427401, 0x427507, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x427c0a, 0x000000, 0x428602, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x428803, 0x428b02, 0x000000, 0x428d01, 0x000000, 0x000000, 0x428e06, 0x000000,
- 0x429401, 0x000000, 0x000000, 0x429501, 0x429601, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x429701, 0x000000, 0x429801, 0x429901, 0x000000, 0x429a02, 0x429c01,
- 0x000000, 0x429d01, 0x000000, 0x429e08, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x42a601, 0x000000, 0x000000, 0x42a701, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x42a803, 0x000000, 0x000000, 0x42ab04,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x42af01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x42b001, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x42b106,
- 0x000000, 0x42b701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x42b802,
- 0x42ba01, 0x42bb01, 0x000000, 0x000000, 0x000000, 0x42bc07, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x42c301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x42c402, 0x000000, 0x42c607, 0x42cd01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x42ce02, 0x000000,
- 0x000000, 0x42d002, 0x000000, 0x42d207, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x42d901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x42da0a, 0x42e402,
- 0x42e601, 0x000000, 0x000000, 0x42e701, 0x000000, 0x000000, 0x000000, 0x42e801,
- 0x42e901, 0x000000, 0x42ea01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x42eb03, 0x42ee0a, 0x42f801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x42f901, 0x000000, 0x42fa01, 0x000000, 0x42fb01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x42fc01, 0x42fd01,
- 0x000000, 0x42fe02, 0x430002, 0x000000, 0x430208, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x430a08, 0x431203, 0x000000, 0x431505, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x431a03, 0x000000, 0x000000, 0x431d03, 0x432001, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x432102, 0x000000, 0x000000, 0x432301, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x432402, 0x432603,
- 0x000000, 0x432901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x432a01, 0x432b07, 0x433201, 0x433301, 0x000000,
- 0x000000, 0x43340c, 0x434001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x434101, 0x000000, 0x000000, 0x000000, 0x000000, 0x434201, 0x000000, 0x434301,
- 0x000000, 0x434409, 0x000000, 0x000000, 0x434d06, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x435302, 0x000000, 0x435501, 0x435602, 0x000000, 0x000000,
- 0x000000, 0x435803, 0x435b01, 0x000000, 0x000000, 0x435c03, 0x000000, 0x435f03,
- 0x000000, 0x000000, 0x436201, 0x000000, 0x43630c, 0x000000, 0x000000, 0x436f02,
- 0x000000, 0x437102, 0x000000, 0x000000, 0x000000, 0x437303, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x437601, 0x437701, 0x000000, 0x437816, 0x000000, 0x438e07,
- 0x000000, 0x439503, 0x000000, 0x439801, 0x000000, 0x000000, 0x000000, 0x439902,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x439b01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x439c01, 0x000000, 0x439d03, 0x43a001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x43a101, 0x43a202, 0x000000, 0x43a401, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x43a502, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x43a70e, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x43b50a,
- 0x000000, 0x43bf04, 0x43c302, 0x000000, 0x000000, 0x000000, 0x43c501, 0x43c602,
- 0x000000, 0x000000, 0x43c801, 0x000000, 0x000000, 0x43c901, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x43ca01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x43cb01, 0x43cc02,
- 0x000000, 0x000000, 0x43ce0c, 0x000000, 0x000000, 0x000000, 0x43da01, 0x000000,
- 0x43db15, 0x000000, 0x000000, 0x000000, 0x43f001, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x43f101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x43f204,
- 0x000000, 0x000000, 0x43f602, 0x000000, 0x000000, 0x000000, 0x43f810, 0x440801,
- 0x000000, 0x440901, 0x000000, 0x440a03, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x440d01, 0x440e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x440f04, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x441301, 0x441404,
- 0x441804, 0x000000, 0x000000, 0x000000, 0x441c04, 0x000000, 0x000000, 0x442001,
- 0x000000, 0x000000, 0x44210b, 0x000000, 0x000000, 0x442c01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x442d02, 0x442f06,
- 0x443504, 0x000000, 0x000000, 0x443902, 0x000000, 0x000000, 0x443b01, 0x000000,
- 0x000000, 0x443c01, 0x000000, 0x000000, 0x000000, 0x000000, 0x443d05, 0x000000,
- 0x444204, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x444604, 0x000000,
- 0x000000, 0x000000, 0x444a01, 0x444b01, 0x000000, 0x444c01, 0x000000, 0x444d05,
- 0x000000, 0x445201, 0x445301, 0x000000, 0x000000, 0x445401, 0x000000, 0x445501,
- 0x445601, 0x000000, 0x000000, 0x000000, 0x445701, 0x000000, 0x000000, 0x000000,
- 0x445805, 0x000000, 0x000000, 0x000000, 0x445d01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x445e02, 0x000000, 0x446002, 0x000000, 0x446205, 0x000000,
- 0x000000, 0x000000, 0x446701, 0x446801, 0x446901, 0x000000, 0x000000, 0x446a04,
- 0x000000, 0x000000, 0x000000, 0x446e03, 0x000000, 0x000000, 0x000000, 0x447101,
- 0x000000, 0x000000, 0x447204, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x447601, 0x000000, 0x000000, 0x000000,
- 0x447706, 0x000000, 0x000000, 0x000000, 0x447d02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x447f03, 0x000000, 0x000000, 0x000000, 0x448201, 0x000000, 0x448303,
- 0x448606, 0x448c07, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x449302, 0x000000, 0x000000, 0x449501, 0x000000, 0x449601,
- 0x000000, 0x000000, 0x449703, 0x000000, 0x000000, 0x000000, 0x449a01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x449b01, 0x000000, 0x000000,
- 0x449c01, 0x449d01, 0x000000, 0x449e02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x44a001, 0x44a105, 0x000000, 0x44a606, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x44ac01, 0x000000, 0x000000, 0x000000, 0x44ad01, 0x44ae03, 0x000000,
- 0x44b101, 0x000000, 0x000000, 0x44b201, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x44b308, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x44bb01, 0x44bc01, 0x000000, 0x000000, 0x44bd02, 0x44bf01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x44c003, 0x000000, 0x000000, 0x000000,
- 0x44c301, 0x000000, 0x000000, 0x44c402, 0x000000, 0x000000, 0x44c605, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x44cb06, 0x000000, 0x000000, 0x44d103, 0x000000, 0x44d401,
- 0x44d501, 0x000000, 0x000000, 0x000000, 0x000000, 0x44d601, 0x000000, 0x000000,
- 0x44d706, 0x000000, 0x000000, 0x44dd01, 0x000000, 0x000000, 0x44de02, 0x44e001,
- 0x44e101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x44e201, 0x000000, 0x000000, 0x44e301, 0x000000, 0x000000, 0x44e401, 0x000000,
- 0x44e502, 0x000000, 0x44e701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x44e802, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x44ea02, 0x000000, 0x000000, 0x000000, 0x000000, 0x44ec01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x44ed10, 0x44fd01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x44fe01, 0x44ff01, 0x000000, 0x450001, 0x450103, 0x000000, 0x000000,
- 0x000000, 0x450402, 0x450602, 0x450806, 0x000000, 0x450e05, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x451302, 0x000000, 0x000000,
- 0x000000, 0x45151c, 0x000000, 0x453106, 0x000000, 0x000000, 0x453702, 0x453904,
- 0x453d02, 0x000000, 0x000000, 0x453f01, 0x000000, 0x000000, 0x454003, 0x000000,
- 0x000000, 0x000000, 0x454301, 0x000000, 0x454401, 0x000000, 0x454501, 0x000000,
- 0x000000, 0x000000, 0x454602, 0x000000, 0x000000, 0x000000, 0x000000, 0x454802,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x454a02, 0x000000, 0x000000, 0x000000,
- 0x454c01, 0x454d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x454e01, 0x454f01,
- 0x455004, 0x000000, 0x000000, 0x000000, 0x455401, 0x000000, 0x455501, 0x455601,
- 0x455702, 0x455907, 0x456001, 0x456101, 0x000000, 0x456203, 0x000000, 0x456506,
- 0x000000, 0x456b03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x456e01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x456f01,
- 0x000000, 0x000000, 0x457001, 0x000000, 0x000000, 0x457101, 0x457203, 0x000000,
- 0x457501, 0x457601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x457725, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x459c01, 0x000000, 0x000000, 0x000000,
- 0x459d01, 0x000000, 0x000000, 0x000000, 0x459e02, 0x45a001, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x45a105, 0x45a601, 0x45a701, 0x45a80c, 0x000000,
- 0x000000, 0x45b401, 0x000000, 0x000000, 0x000000, 0x45b502, 0x000000, 0x000000,
- 0x000000, 0x45b702, 0x45b904, 0x45bd01, 0x000000, 0x45be04, 0x000000, 0x000000,
- 0x45c201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x45c301,
- 0x45c409, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x45cd01, 0x45ce01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x45cf07, 0x000000, 0x000000, 0x000000,
- 0x45d602, 0x000000, 0x000000, 0x000000, 0x45d802, 0x45da01, 0x000000, 0x45db01,
- 0x000000, 0x45dc01, 0x000000, 0x000000, 0x45dd01, 0x000000, 0x000000, 0x45de04,
- 0x45e23e, 0x462001, 0x000000, 0x000000, 0x000000, 0x000000, 0x462101, 0x000000,
- 0x000000, 0x46220d, 0x000000, 0x462f04, 0x000000, 0x000000, 0x463302, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x463502, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x463702, 0x463905, 0x000000, 0x000000, 0x463e14, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x465204, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x465602, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x465801, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x465902, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x465b02, 0x000000, 0x000000,
- 0x465d01, 0x000000, 0x000000, 0x000000, 0x465e01, 0x000000, 0x000000, 0x000000,
- 0x465f01, 0x000000, 0x46600d, 0x000000, 0x000000, 0x000000, 0x466d01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x466e05, 0x000000,
- 0x000000, 0x467301, 0x467401, 0x46750b, 0x000000, 0x000000, 0x468007, 0x468701,
- 0x000000, 0x468801, 0x468901, 0x000000, 0x468a03, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x468d02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x468f03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x469201, 0x000000, 0x000000, 0x000000, 0x469307,
- 0x000000, 0x000000, 0x469a03, 0x000000, 0x000000, 0x469d0f, 0x46ac01, 0x46ad03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x46b001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x46b102, 0x46b308,
- 0x000000, 0x000000, 0x000000, 0x46bb03, 0x000000, 0x46be01, 0x000000, 0x000000,
- 0x46bf01, 0x000000, 0x46c002, 0x000000, 0x000000, 0x46c201, 0x46c302, 0x000000,
- 0x46c503, 0x000000, 0x000000, 0x000000, 0x000000, 0x46c802, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x46ca01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x46cb01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x46cc01, 0x46cd01, 0x000000, 0x46ce01, 0x000000, 0x000000, 0x46cf07,
- 0x46d60f, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x46e501, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x46e601, 0x46e704, 0x000000, 0x000000, 0x46eb08, 0x46f302, 0x000000, 0x46f505,
- 0x46fa01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x46fb0b, 0x470601, 0x000000, 0x470701, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x470802, 0x000000, 0x470a01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x470b01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x470c01, 0x000000, 0x000000, 0x470d01, 0x000000,
- 0x000000, 0x470e01, 0x470f02, 0x000000, 0x000000, 0x471101, 0x471201, 0x471301,
- 0x000000, 0x000000, 0x000000, 0x471406, 0x000000, 0x471a01, 0x000000, 0x471b01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x471c02, 0x000000, 0x000000, 0x000000,
- 0x471e01, 0x471f06, 0x000000, 0x000000, 0x472501, 0x000000, 0x000000, 0x000000,
- 0x472601, 0x472704, 0x000000, 0x000000, 0x000000, 0x472b02, 0x000000, 0x000000,
- 0x472d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x472e02, 0x000000,
- 0x473006, 0x473603, 0x000000, 0x473901, 0x000000, 0x473a05, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x473f01, 0x000000, 0x000000, 0x474001, 0x474101, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x474208, 0x474a02, 0x000000, 0x474c01,
- 0x000000, 0x474d0c, 0x000000, 0x000000, 0x000000, 0x475903, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x475c01, 0x475d01, 0x475e02, 0x476008,
- 0x476801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x476901, 0x000000, 0x476a01,
- 0x000000, 0x476b01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x476c02, 0x000000, 0x476e02, 0x477001, 0x000000, 0x000000, 0x477112, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x478302, 0x000000, 0x000000, 0x000000, 0x478501,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x478601, 0x000000, 0x478701, 0x478802,
- 0x000000, 0x478a01, 0x000000, 0x000000, 0x478b04, 0x478f0b, 0x000000, 0x479a01,
- 0x000000, 0x479b04, 0x000000, 0x479f01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x47a003, 0x000000, 0x47a301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x47a403, 0x000000, 0x47a701, 0x47a801,
- 0x000000, 0x47a902, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x47ab03,
- 0x000000, 0x47ae05, 0x000000, 0x000000, 0x47b301, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x47b40a, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x47be01, 0x000000, 0x000000, 0x000000, 0x47bf01, 0x000000, 0x47c001,
- 0x000000, 0x47c101, 0x47c242, 0x000000, 0x000000, 0x000000, 0x480407, 0x480b01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x480c05, 0x481101,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x481201, 0x000000, 0x481301, 0x000000,
- 0x000000, 0x000000, 0x481402, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x481601, 0x000000, 0x000000, 0x000000, 0x481701, 0x000000, 0x481803, 0x000000,
- 0x481b01, 0x000000, 0x000000, 0x481c05, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x482101, 0x000000, 0x000000, 0x482206,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x482803, 0x000000, 0x000000, 0x000000,
- 0x482b01, 0x000000, 0x482c01, 0x000000, 0x000000, 0x000000, 0x482d01, 0x482e01,
- 0x482f05, 0x000000, 0x000000, 0x000000, 0x483401, 0x000000, 0x000000, 0x000000,
- 0x483502, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x483702,
- 0x483901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x483a04,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x483e01, 0x000000, 0x000000,
- 0x483f09, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x484810,
- 0x000000, 0x485801, 0x000000, 0x485901, 0x485a02, 0x000000, 0x000000, 0x000000,
- 0x485c01, 0x485d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x485e05,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x486301, 0x486401, 0x000000, 0x486501,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x486602, 0x486801,
- 0x000000, 0x486902, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x486b01, 0x486c01, 0x486d01, 0x486e03, 0x000000, 0x487107, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x487803, 0x487b02, 0x000000, 0x000000, 0x487d0b, 0x000000,
- 0x000000, 0x488802, 0x488a01, 0x000000, 0x000000, 0x000000, 0x488b02, 0x000000,
- 0x488d0c, 0x000000, 0x000000, 0x000000, 0x000000, 0x489902, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x489b01, 0x000000, 0x000000, 0x489c01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x489d02, 0x000000, 0x489f02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x48a102, 0x000000, 0x000000, 0x000000,
- 0x48a301, 0x000000, 0x000000, 0x48a401, 0x48a503, 0x000000, 0x000000, 0x48a801,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x48a901, 0x000000, 0x000000, 0x000000,
- 0x48aa01, 0x48ab01, 0x000000, 0x48ac03, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x48af03, 0x000000, 0x000000, 0x48b201, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x48b304, 0x000000, 0x48b701,
- 0x000000, 0x000000, 0x48b802, 0x48ba09, 0x000000, 0x000000, 0x000000, 0x48c301,
- 0x000000, 0x000000, 0x000000, 0x48c401, 0x000000, 0x000000, 0x48c501, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x48c601, 0x000000,
- 0x48c703, 0x000000, 0x000000, 0x48ca02, 0x48cc04, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x48d002, 0x48d205, 0x48d704, 0x000000, 0x48db01,
- 0x000000, 0x000000, 0x48dc02, 0x000000, 0x48de01, 0x48df01, 0x000000, 0x000000,
- 0x000000, 0x48e009, 0x000000, 0x000000, 0x48e908, 0x48f103, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x48f407, 0x48fb01, 0x48fc01, 0x000000, 0x000000, 0x48fd04,
- 0x000000, 0x000000, 0x490105, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x490601, 0x490701, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x490803, 0x000000,
- 0x000000, 0x490b02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x490d06, 0x000000, 0x491301, 0x000000, 0x000000, 0x491401, 0x000000, 0x491501,
- 0x000000, 0x000000, 0x491603, 0x000000, 0x491904, 0x000000, 0x000000, 0x491d01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x491e03, 0x000000,
- 0x000000, 0x492104, 0x000000, 0x492505, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x492a08, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x493202,
- 0x493401, 0x000000, 0x000000, 0x493501, 0x000000, 0x493601, 0x493702, 0x493902,
- 0x493b04, 0x000000, 0x493f01, 0x494001, 0x000000, 0x000000, 0x494109, 0x494a02,
- 0x000000, 0x494c01, 0x000000, 0x000000, 0x000000, 0x494d03, 0x000000, 0x000000,
- 0x000000, 0x495004, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x495405,
- 0x495901, 0x495a02, 0x495c03, 0x000000, 0x000000, 0x495f03, 0x496201, 0x000000,
- 0x496305, 0x000000, 0x496802, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x496a05, 0x000000, 0x000000, 0x496f01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x497003, 0x497302, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x497505, 0x000000, 0x000000, 0x000000, 0x497a04,
- 0x497e01, 0x497f09, 0x000000, 0x000000, 0x000000, 0x000000, 0x498802, 0x000000,
- 0x000000, 0x498a02, 0x498c01, 0x000000, 0x000000, 0x498d01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x498e01, 0x000000, 0x000000, 0x498f01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x499007, 0x000000, 0x499701, 0x000000, 0x499801, 0x000000,
- 0x499901, 0x000000, 0x000000, 0x000000, 0x000000, 0x499a01, 0x000000, 0x499b01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x499c01, 0x499d02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x499f05, 0x000000, 0x000000, 0x000000, 0x49a407,
- 0x49ab02, 0x000000, 0x000000, 0x49ad04, 0x49b101, 0x000000, 0x000000, 0x49b202,
- 0x49b405, 0x000000, 0x000000, 0x49b907, 0x49c00a, 0x49ca01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x49cb03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x49ce01, 0x000000, 0x49cf04, 0x000000, 0x000000, 0x000000, 0x49d301,
- 0x000000, 0x000000, 0x000000, 0x49d401, 0x000000, 0x49d50d, 0x49e201, 0x49e303,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x49e601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x49e701, 0x000000,
- 0x000000, 0x000000, 0x49e808, 0x49f001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x49f102, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x49f302,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x49f508, 0x49fd09, 0x000000, 0x000000,
- 0x000000, 0x4a0606, 0x4a0c01, 0x000000, 0x000000, 0x000000, 0x000000, 0x4a0d01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4a0e01, 0x4a0f01, 0x000000, 0x000000,
- 0x4a1001, 0x000000, 0x000000, 0x4a1101, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x4a1201, 0x4a1301, 0x000000, 0x000000, 0x000000, 0x4a1402, 0x000000, 0x4a1601,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x4a1701, 0x000000, 0x4a1801, 0x000000, 0x4a1903, 0x4a1c03, 0x4a1f01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4a2004, 0x000000,
- 0x000000, 0x000000, 0x4a2409, 0x000000, 0x000000, 0x000000, 0x4a2d08, 0x000000,
- 0x4a3501, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4a3604, 0x4a3a02,
- 0x000000, 0x000000, 0x4a3c01, 0x000000, 0x000000, 0x000000, 0x4a3d02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4a3f03, 0x4a4207, 0x000000,
- 0x000000, 0x4a4901, 0x000000, 0x000000, 0x4a4a05, 0x000000, 0x4a4f07, 0x000000,
- 0x4a5601, 0x4a5707, 0x000000, 0x4a5e02, 0x000000, 0x4a6009, 0x4a6901, 0x000000,
- 0x000000, 0x000000, 0x4a6a04, 0x4a6e01, 0x4a6f03, 0x000000, 0x4a7204, 0x4a7601,
- 0x4a7718, 0x000000, 0x000000, 0x4a8f05, 0x000000, 0x000000, 0x000000, 0x4a9401,
- 0x4a9501, 0x000000, 0x000000, 0x000000, 0x000000, 0x4a9601, 0x000000, 0x4a9701,
- 0x000000, 0x000000, 0x000000, 0x4a9801, 0x000000, 0x000000, 0x4a9901, 0x000000,
- 0x4a9a01, 0x4a9b03, 0x000000, 0x000000, 0x4a9e08, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4aa601, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4aa704, 0x000000, 0x000000, 0x000000, 0x4aab01,
- 0x4aac04, 0x000000, 0x4ab001, 0x4ab101, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4ab201, 0x4ab301, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4ab401, 0x4ab502, 0x000000, 0x4ab701, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x4ab801, 0x4ab901, 0x4aba01, 0x4abb0e, 0x000000, 0x000000, 0x4ac901,
- 0x000000, 0x000000, 0x4aca09, 0x4ad302, 0x4ad518, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4aed03, 0x4af002, 0x000000,
- 0x000000, 0x4af206, 0x000000, 0x000000, 0x000000, 0x4af801, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4af903, 0x000000, 0x4afc01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4afd04, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4b0101, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4b0202, 0x000000,
- 0x4b0405, 0x4b0903, 0x000000, 0x000000, 0x000000, 0x4b0c05, 0x000000, 0x4b1105,
- 0x000000, 0x000000, 0x000000, 0x4b1606, 0x4b1c01, 0x000000, 0x000000, 0x4b1d01,
- 0x000000, 0x000000, 0x4b1e01, 0x4b1f01, 0x4b2006, 0x4b2601, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4b2708, 0x000000, 0x4b2f01, 0x4b3005, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4b3502, 0x000000, 0x4b3702, 0x4b3901, 0x4b3a02,
- 0x000000, 0x000000, 0x4b3c05, 0x000000, 0x4b4106, 0x000000, 0x000000, 0x000000,
- 0x4b4706, 0x000000, 0x4b4d03, 0x4b5001, 0x4b5101, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x4b5201, 0x000000, 0x000000, 0x4b5301, 0x000000, 0x000000, 0x4b5402,
- 0x4b5601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4b5703,
- 0x4b5a01, 0x000000, 0x4b5b05, 0x000000, 0x000000, 0x000000, 0x000000, 0x4b6001,
- 0x000000, 0x4b6104, 0x000000, 0x000000, 0x000000, 0x000000, 0x4b6501, 0x4b6601,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4b6701, 0x4b6809, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4b7101, 0x000000, 0x000000, 0x4b7206, 0x000000, 0x000000,
- 0x4b7801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x4b790b, 0x000000, 0x4b8401, 0x000000, 0x4b8501, 0x4b8601, 0x000000, 0x4b8701,
- 0x4b8809, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4b9107, 0x000000, 0x000000, 0x4b9801,
- 0x000000, 0x4b9908, 0x4ba104, 0x000000, 0x4ba501, 0x4ba602, 0x000000, 0x000000,
- 0x4ba806, 0x000000, 0x4bae02, 0x000000, 0x4bb003, 0x4bb308, 0x4bbb01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4bbc01, 0x4bbd02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4bbf0a, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x4bc90a, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x4bd301, 0x000000, 0x000000, 0x4bd409, 0x4bdd02, 0x000000, 0x4bdf01,
- 0x000000, 0x000000, 0x000000, 0x4be003, 0x000000, 0x000000, 0x000000, 0x4be303,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4be601, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4be710, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x4bf70b, 0x4c0202, 0x000000, 0x000000, 0x4c0401, 0x000000, 0x4c0501, 0x4c0604,
- 0x000000, 0x4c0a07, 0x4c1108, 0x4c190c, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x4c2507, 0x000000, 0x000000, 0x000000, 0x000000, 0x4c2c01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x4c2d02, 0x4c2f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x4c3001, 0x000000, 0x000000, 0x000000, 0x000000, 0x4c3101, 0x4c3201,
- 0x000000, 0x000000, 0x000000, 0x4c3303, 0x000000, 0x000000, 0x4c3603, 0x000000,
- 0x000000, 0x4c3901, 0x000000, 0x4c3a01, 0x000000, 0x4c3b02, 0x000000, 0x4c3d0c,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4c4907, 0x000000, 0x4c5001, 0x4c5105, 0x000000, 0x4c5603,
- 0x4c5901, 0x000000, 0x4c5a04, 0x4c5e01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4c5f01, 0x4c6002, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x4c6201, 0x000000, 0x000000, 0x4c6304, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x4c6701, 0x4c6801, 0x000000, 0x000000, 0x4c6903, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4c6c02, 0x4c6e01, 0x000000, 0x4c6f01, 0x000000,
- 0x000000, 0x000000, 0x4c7001, 0x4c7108, 0x000000, 0x4c7902, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4c7b01, 0x000000, 0x000000, 0x000000, 0x000000, 0x4c7c03,
- 0x4c7f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x4c8001, 0x4c8101, 0x000000, 0x000000, 0x000000, 0x4c8201, 0x4c8301, 0x000000,
- 0x4c8403, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4c8701,
- 0x4c8806, 0x4c8e01, 0x000000, 0x4c8f04, 0x000000, 0x000000, 0x4c9301, 0x000000,
- 0x000000, 0x4c9401, 0x000000, 0x4c9502, 0x4c9702, 0x4c9903, 0x000000, 0x4c9c01,
- 0x4c9d02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4c9f01,
- 0x4ca001, 0x000000, 0x000000, 0x4ca101, 0x000000, 0x000000, 0x4ca201, 0x000000,
- 0x000000, 0x000000, 0x4ca301, 0x4ca40a, 0x4cae01, 0x000000, 0x000000, 0x4caf02,
- 0x4cb102, 0x4cb307, 0x000000, 0x4cba01, 0x000000, 0x000000, 0x4cbb0e, 0x4cc901,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4cca10, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x4cda02, 0x4cdc02, 0x000000, 0x000000, 0x000000, 0x000000, 0x4cde04, 0x000000,
- 0x4ce201, 0x000000, 0x4ce303, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x4ce601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4ce701, 0x4ce803, 0x4ceb03, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4cee02, 0x4cf001, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4cf101, 0x4cf201, 0x000000, 0x000000, 0x4cf302,
- 0x000000, 0x4cf501, 0x000000, 0x000000, 0x4cf601, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4cf704, 0x4cfb02, 0x000000, 0x4cfd03, 0x000000,
- 0x4d0002, 0x000000, 0x000000, 0x000000, 0x4d0203, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x4d0502, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x4d0702, 0x000000, 0x4d0903, 0x000000, 0x000000, 0x4d0c05, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4d1101, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4d1203, 0x000000, 0x4d1501, 0x4d1604, 0x4d1a01, 0x000000,
- 0x000000, 0x4d1b01, 0x000000, 0x4d1c05, 0x000000, 0x000000, 0x000000, 0x4d2101,
- 0x000000, 0x000000, 0x4d2218, 0x000000, 0x4d3a01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4d3b03, 0x4d3e03, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4d4101, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4d4201, 0x000000, 0x000000, 0x4d430a, 0x4d4d01,
- 0x000000, 0x4d4e01, 0x000000, 0x000000, 0x4d4f01, 0x000000, 0x000000, 0x000000,
- 0x4d5003, 0x000000, 0x000000, 0x4d5301, 0x4d5402, 0x000000, 0x000000, 0x000000,
- 0x4d5602, 0x000000, 0x000000, 0x000000, 0x4d5802, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x4d5a01, 0x000000, 0x4d5b01, 0x000000, 0x4d5c02, 0x000000, 0x000000,
- 0x4d5e01, 0x000000, 0x000000, 0x000000, 0x4d5f01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4d6007, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4d6705, 0x000000, 0x4d6c01,
- 0x000000, 0x4d6d08, 0x4d7501, 0x4d7602, 0x000000, 0x000000, 0x000000, 0x4d7805,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4d7d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x4d7e04,
- 0x000000, 0x000000, 0x4d8202, 0x000000, 0x000000, 0x000000, 0x000000, 0x4d8402,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4d8601, 0x000000, 0x000000, 0x4d8701,
- 0x000000, 0x4d8802, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x4d8a03, 0x000000, 0x000000, 0x000000, 0x4d8d0a, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4d9701,
- 0x000000, 0x4d9801, 0x000000, 0x4d9902, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4d9b02, 0x000000, 0x000000, 0x4d9d01, 0x000000,
- 0x000000, 0x4d9e01, 0x000000, 0x000000, 0x4d9f01, 0x4da002, 0x4da205, 0x000000,
- 0x4da702, 0x4da902, 0x4dab01, 0x000000, 0x000000, 0x4dac01, 0x4dad02, 0x4daf02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4db102, 0x4db301, 0x4db401, 0x000000,
- 0x000000, 0x4db501, 0x000000, 0x000000, 0x000000, 0x4db601, 0x000000, 0x4db706,
- 0x4dbd01, 0x000000, 0x000000, 0x4dbe02, 0x000000, 0x000000, 0x4dc001, 0x000000,
- 0x000000, 0x000000, 0x4dc102, 0x000000, 0x4dc301, 0x000000, 0x4dc402, 0x4dc602,
- 0x000000, 0x000000, 0x000000, 0x4dc807, 0x4dcf12, 0x000000, 0x4de101, 0x4de201,
- 0x4de302, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x4de501, 0x000000, 0x4de602, 0x000000, 0x4de806, 0x000000, 0x000000, 0x000000,
- 0x4dee01, 0x4def02, 0x4df106, 0x4df705, 0x000000, 0x4dfc06, 0x000000, 0x4e0204,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4e0601, 0x000000, 0x4e070e,
- 0x000000, 0x4e1501, 0x000000, 0x000000, 0x4e1602, 0x000000, 0x4e1802, 0x000000,
- 0x4e1a03, 0x000000, 0x000000, 0x000000, 0x4e1d01, 0x4e1e02, 0x4e2002, 0x000000,
- 0x4e2202, 0x4e2406, 0x000000, 0x4e2a01, 0x4e2b02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4e2d06, 0x000000, 0x4e3301, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4e3402, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x4e3601, 0x4e3701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4e3802,
- 0x000000, 0x000000, 0x4e3a02, 0x000000, 0x000000, 0x4e3c03, 0x000000, 0x000000,
- 0x4e3f0c, 0x000000, 0x000000, 0x000000, 0x000000, 0x4e4b01, 0x4e4c03, 0x000000,
- 0x4e4f01, 0x4e5001, 0x000000, 0x000000, 0x4e5102, 0x000000, 0x4e5302, 0x000000,
- 0x000000, 0x4e5503, 0x4e5802, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4e5a02, 0x000000, 0x000000, 0x4e5c01,
- 0x000000, 0x4e5d02, 0x000000, 0x4e5f02, 0x000000, 0x000000, 0x4e6101, 0x000000,
- 0x000000, 0x4e6202, 0x000000, 0x000000, 0x000000, 0x000000, 0x4e6401, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4e6501, 0x4e6601, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4e6701, 0x000000, 0x000000, 0x4e6801, 0x4e6901, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4e6a03, 0x000000, 0x4e6d02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4e6f01, 0x000000, 0x4e700e, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4e7e03, 0x000000, 0x4e8109, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4e8a05, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4e8f01,
- 0x000000, 0x000000, 0x000000, 0x4e9001, 0x4e9101, 0x000000, 0x000000, 0x000000,
- 0x4e9208, 0x4e9a01, 0x4e9b07, 0x000000, 0x000000, 0x000000, 0x4ea202, 0x4ea401,
- 0x4ea502, 0x000000, 0x000000, 0x000000, 0x000000, 0x4ea701, 0x000000, 0x000000,
- 0x4ea801, 0x4ea90c, 0x4eb502, 0x000000, 0x4eb701, 0x000000, 0x000000, 0x000000,
- 0x4eb801, 0x000000, 0x000000, 0x4eb904, 0x000000, 0x000000, 0x000000, 0x4ebd05,
- 0x000000, 0x4ec201, 0x000000, 0x000000, 0x4ec302, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4ec502, 0x000000, 0x4ec702, 0x000000,
- 0x4ec905, 0x000000, 0x4ece03, 0x000000, 0x000000, 0x4ed12d, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4efe01, 0x000000, 0x000000, 0x000000, 0x000000, 0x4eff02,
- 0x000000, 0x4f0104, 0x000000, 0x000000, 0x4f0501, 0x000000, 0x4f0601, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4f0701, 0x000000, 0x000000, 0x4f0801, 0x4f090a,
- 0x000000, 0x4f1303, 0x000000, 0x4f1602, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4f1801, 0x000000, 0x000000, 0x000000, 0x4f1901, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4f1a02, 0x000000, 0x4f1c01, 0x000000, 0x4f1d02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4f1f08, 0x000000, 0x000000, 0x4f2702,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4f290c, 0x000000, 0x000000, 0x000000,
- 0x4f3501, 0x000000, 0x000000, 0x4f3603, 0x4f3901, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4f3a01, 0x000000, 0x4f3b01, 0x000000, 0x4f3c02, 0x000000,
- 0x4f3e03, 0x4f4102, 0x000000, 0x000000, 0x000000, 0x000000, 0x4f4301, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4f4404, 0x4f4802, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4f4a01, 0x000000, 0x4f4b03, 0x4f4e04, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4f5201, 0x000000, 0x000000,
- 0x4f5301, 0x000000, 0x4f5401, 0x000000, 0x4f5502, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4f5702, 0x000000, 0x000000, 0x000000, 0x4f5901,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4f5a01, 0x4f5b06, 0x000000, 0x4f6111,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4f7203, 0x000000,
- 0x000000, 0x000000, 0x4f750a, 0x000000, 0x000000, 0x000000, 0x000000, 0x4f7f0a,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4f8903, 0x000000, 0x000000, 0x4f8c0a, 0x000000, 0x4f9602,
- 0x4f9801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4f9901, 0x4f9a01, 0x000000, 0x4f9b01,
- 0x000000, 0x000000, 0x4f9c01, 0x000000, 0x4f9d01, 0x000000, 0x4f9e05, 0x000000,
- 0x4fa302, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4fa502,
- 0x4fa701, 0x4fa802, 0x000000, 0x000000, 0x4faa01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x4fab02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4fad11, 0x4fbe02, 0x000000, 0x000000, 0x000000,
- 0x4fc003, 0x000000, 0x000000, 0x4fc306, 0x000000, 0x000000, 0x4fc902, 0x4fcb03,
- 0x000000, 0x4fce01, 0x000000, 0x000000, 0x4fcf01, 0x000000, 0x4fd001, 0x4fd101,
- 0x4fd205, 0x000000, 0x000000, 0x000000, 0x000000, 0x4fd702, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4fd901, 0x000000, 0x4fda03, 0x000000, 0x4fdd02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x4fdf03, 0x000000, 0x4fe201, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x4fe301, 0x4fe401, 0x000000, 0x000000, 0x4fe503, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x4fe801, 0x000000, 0x4fe907, 0x000000, 0x000000,
- 0x000000, 0x4ff004, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4ff404,
- 0x000000, 0x000000, 0x000000, 0x4ff803, 0x000000, 0x4ffb01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x4ffc08, 0x000000,
- 0x000000, 0x500401, 0x000000, 0x000000, 0x500501, 0x000000, 0x000000, 0x500609,
- 0x000000, 0x500f01, 0x000000, 0x501001, 0x000000, 0x000000, 0x501101, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x501201, 0x501301, 0x000000, 0x501413, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x502707, 0x502e02, 0x000000, 0x50300a, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x503a01, 0x000000, 0x000000, 0x503b03, 0x000000, 0x000000,
- 0x000000, 0x503e03, 0x000000, 0x000000, 0x000000, 0x504102, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x50430f, 0x000000, 0x000000, 0x505201, 0x000000,
- 0x000000, 0x505302, 0x000000, 0x505517, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x506c01, 0x000000, 0x000000, 0x000000, 0x000000, 0x506d03, 0x000000,
- 0x000000, 0x507001, 0x507101, 0x000000, 0x000000, 0x000000, 0x000000, 0x507202,
- 0x000000, 0x507401, 0x507514, 0x000000, 0x000000, 0x000000, 0x508902, 0x508b01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x508c06, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x509201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x509301,
- 0x000000, 0x000000, 0x000000, 0x509401, 0x000000, 0x509509, 0x000000, 0x000000,
- 0x509e44, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x50e202, 0x000000,
- 0x000000, 0x50e404, 0x000000, 0x000000, 0x000000, 0x50e801, 0x50e90a, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x50f301, 0x50f401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x50f502, 0x50f701, 0x50f804, 0x000000, 0x50fc01, 0x000000,
- 0x50fd01, 0x000000, 0x50fe01, 0x50ff01, 0x000000, 0x510007, 0x000000, 0x000000,
- 0x510701, 0x000000, 0x510803, 0x000000, 0x510b01, 0x000000, 0x000000, 0x510c01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x510d04, 0x000000, 0x000000, 0x000000, 0x000000, 0x511107, 0x000000, 0x000000,
- 0x000000, 0x511802, 0x000000, 0x000000, 0x511a03, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x511d01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x511e01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x511f01, 0x000000, 0x512008, 0x512808, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x513001, 0x000000, 0x000000, 0x000000, 0x513109, 0x513a06,
- 0x514001, 0x000000, 0x514105, 0x000000, 0x514601, 0x000000, 0x000000, 0x514702,
- 0x000000, 0x000000, 0x514901, 0x000000, 0x000000, 0x514a01, 0x000000, 0x514b01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x514c05, 0x000000, 0x000000,
- 0x515102, 0x515301, 0x515401, 0x000000, 0x000000, 0x000000, 0x515501, 0x000000,
- 0x515603, 0x000000, 0x000000, 0x000000, 0x515903, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x515c01, 0x515d01, 0x515e01, 0x000000,
- 0x515f04, 0x516303, 0x000000, 0x000000, 0x516601, 0x000000, 0x000000, 0x516702,
- 0x516901, 0x000000, 0x516a01, 0x000000, 0x516b0a, 0x000000, 0x517501, 0x000000,
- 0x000000, 0x000000, 0x517601, 0x000000, 0x000000, 0x000000, 0x000000, 0x51770d,
- 0x000000, 0x000000, 0x000000, 0x518402, 0x000000, 0x000000, 0x518602, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x518803, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x518b04, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x518f02, 0x000000, 0x000000, 0x519101, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x519201, 0x519306, 0x000000, 0x000000, 0x519901, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x519a0e, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x51a801, 0x000000,
- 0x51a904, 0x51ad02, 0x000000, 0x000000, 0x51af03, 0x51b201, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x51b301, 0x000000, 0x51b402, 0x000000, 0x51b601,
- 0x51b702, 0x51b905, 0x000000, 0x51be01, 0x000000, 0x51bf01, 0x51c001, 0x51c105,
- 0x000000, 0x000000, 0x51c604, 0x000000, 0x000000, 0x51ca02, 0x000000, 0x000000,
- 0x51cc02, 0x000000, 0x000000, 0x000000, 0x51ce03, 0x000000, 0x000000, 0x000000,
- 0x51d101, 0x51d203, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x51d504,
- 0x000000, 0x51d901, 0x000000, 0x000000, 0x51da09, 0x51e303, 0x000000, 0x000000,
- 0x51e606, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x51ec02, 0x51ee09,
- 0x000000, 0x000000, 0x000000, 0x51f703, 0x000000, 0x51fa01, 0x51fb01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x51fc06, 0x000000, 0x000000, 0x000000,
- 0x520203, 0x000000, 0x520501, 0x000000, 0x520601, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x520701, 0x520807, 0x000000, 0x000000, 0x000000, 0x000000, 0x520f02,
- 0x000000, 0x521106, 0x000000, 0x521701, 0x000000, 0x000000, 0x000000, 0x521801,
- 0x521903, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x521c05, 0x522101,
- 0x522201, 0x522301, 0x000000, 0x000000, 0x522401, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x522501, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x522601, 0x522705, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x522c01,
- 0x000000, 0x000000, 0x522d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x522e02, 0x000000, 0x523005, 0x000000,
- 0x523501, 0x523602, 0x000000, 0x000000, 0x000000, 0x523804, 0x523c04, 0x000000,
- 0x000000, 0x524007, 0x524701, 0x524801, 0x000000, 0x000000, 0x524901, 0x524a02,
- 0x000000, 0x000000, 0x000000, 0x524c02, 0x000000, 0x000000, 0x000000, 0x524e01,
- 0x524f01, 0x000000, 0x000000, 0x525001, 0x000000, 0x525104, 0x000000, 0x000000,
- 0x525501, 0x000000, 0x000000, 0x000000, 0x000000, 0x525601, 0x000000, 0x000000,
- 0x525701, 0x525805, 0x000000, 0x000000, 0x525d01, 0x525e02, 0x000000, 0x526002,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x526202,
- 0x000000, 0x526401, 0x000000, 0x526501, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x526601, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x526702, 0x000000, 0x526901, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x526a01, 0x000000, 0x000000, 0x526b01,
- 0x526c01, 0x526d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x526e01,
- 0x000000, 0x526f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x527003,
- 0x527301, 0x527403, 0x000000, 0x000000, 0x527701, 0x527802, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x527a07, 0x528101, 0x528202, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x528404, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x528802, 0x528a03, 0x000000,
- 0x000000, 0x528d03, 0x000000, 0x000000, 0x000000, 0x529005, 0x529501, 0x000000,
- 0x529601, 0x000000, 0x000000, 0x529701, 0x000000, 0x529801, 0x529906, 0x000000,
- 0x529f02, 0x52a101, 0x52a201, 0x52a304, 0x000000, 0x000000, 0x000000, 0x52a701,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x52a803, 0x000000,
- 0x52ab02, 0x000000, 0x52ad04, 0x000000, 0x000000, 0x000000, 0x000000, 0x52b101,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x52b201, 0x000000, 0x000000, 0x52b302,
- 0x000000, 0x52b501, 0x000000, 0x52b601, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x52b703, 0x52ba09, 0x52c301, 0x000000, 0x000000, 0x000000, 0x52c401,
- 0x000000, 0x000000, 0x52c502, 0x000000, 0x000000, 0x000000, 0x52c701, 0x000000,
- 0x000000, 0x52c805, 0x000000, 0x000000, 0x000000, 0x52cd0e, 0x000000, 0x52db01,
- 0x000000, 0x000000, 0x52dc02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x52de01, 0x52df07, 0x000000, 0x000000, 0x52e602, 0x52e801, 0x000000,
- 0x52e901, 0x000000, 0x000000, 0x000000, 0x000000, 0x52ea01, 0x52eb01, 0x000000,
- 0x000000, 0x52ec01, 0x000000, 0x000000, 0x000000, 0x000000, 0x52ed06, 0x52f301,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x52f401, 0x000000, 0x000000,
- 0x52f501, 0x52f611, 0x000000, 0x000000, 0x000000, 0x000000, 0x530701, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x530802, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x530a04, 0x000000, 0x000000, 0x000000,
- 0x530e09, 0x000000, 0x531702, 0x000000, 0x531908, 0x000000, 0x532101, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x53220b,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x532d03, 0x000000, 0x000000, 0x533001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x533101, 0x000000, 0x000000, 0x000000, 0x533201, 0x000000, 0x533302, 0x53350e,
- 0x000000, 0x534302, 0x000000, 0x534504, 0x534901, 0x534a01, 0x000000, 0x534b02,
- 0x000000, 0x534d01, 0x000000, 0x000000, 0x000000, 0x534e01, 0x534f18, 0x000000,
- 0x000000, 0x000000, 0x536702, 0x000000, 0x000000, 0x536907, 0x537001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x537101, 0x000000, 0x000000, 0x000000,
- 0x537203, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x537501, 0x000000, 0x000000, 0x537605, 0x537b02, 0x537d01,
- 0x000000, 0x000000, 0x000000, 0x537e02, 0x538001, 0x000000, 0x538102, 0x000000,
- 0x000000, 0x000000, 0x538301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x538401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x538501, 0x000000, 0x538601, 0x000000,
- 0x000000, 0x538701, 0x000000, 0x000000, 0x538804, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x538c01, 0x538d07, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x539401, 0x539501, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x539601, 0x000000, 0x539702, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x539901, 0x000000, 0x000000, 0x000000, 0x539a01,
- 0x539b01, 0x000000, 0x539c01, 0x539d01, 0x000000, 0x000000, 0x000000, 0x539e01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x539f01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x53a00c, 0x000000, 0x53ac01, 0x000000, 0x53ad03, 0x000000, 0x000000,
- 0x000000, 0x53b003, 0x53b301, 0x000000, 0x000000, 0x000000, 0x000000, 0x53b404,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x53b801, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x53b909, 0x000000, 0x53c201, 0x000000, 0x53c305, 0x53c803, 0x000000, 0x53cb01,
- 0x000000, 0x53cc01, 0x53cd03, 0x000000, 0x000000, 0x000000, 0x53d001, 0x000000,
- 0x000000, 0x53d102, 0x000000, 0x000000, 0x000000, 0x53d301, 0x53d403, 0x000000,
- 0x000000, 0x53d709, 0x000000, 0x000000, 0x000000, 0x53e005, 0x53e501, 0x000000,
- 0x000000, 0x53e602, 0x000000, 0x000000, 0x53e802, 0x53ea01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x53eb01, 0x000000,
- 0x000000, 0x53ec01, 0x53ed02, 0x000000, 0x000000, 0x53ef23, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x541202, 0x000000, 0x000000, 0x541401,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x541503,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x541801, 0x541901,
- 0x000000, 0x000000, 0x541a02, 0x000000, 0x000000, 0x541c06, 0x000000, 0x000000,
- 0x542219, 0x543b03, 0x000000, 0x543e08, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x544602, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x54480e, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x54560d,
- 0x000000, 0x000000, 0x546301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x546401, 0x000000, 0x54650b, 0x000000,
- 0x000000, 0x547001, 0x547101, 0x547201, 0x547303, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x547608, 0x000000, 0x000000, 0x000000, 0x000000, 0x547e04,
- 0x000000, 0x548204, 0x000000, 0x000000, 0x000000, 0x000000, 0x548607, 0x548d07,
- 0x549409, 0x549d01, 0x000000, 0x000000, 0x549e01, 0x549f02, 0x000000, 0x54a101,
- 0x000000, 0x000000, 0x54a203, 0x000000, 0x54a502, 0x54a701, 0x54a801, 0x000000,
- 0x54a909, 0x54b201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x54b30a,
- 0x000000, 0x54bd01, 0x000000, 0x000000, 0x000000, 0x000000, 0x54be05, 0x54c303,
- 0x000000, 0x54c601, 0x000000, 0x54c705, 0x000000, 0x000000, 0x54cc01, 0x000000,
- 0x000000, 0x000000, 0x54cd01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x54ce01, 0x000000, 0x000000, 0x000000, 0x54cf05,
- 0x000000, 0x54d40d, 0x000000, 0x54e101, 0x000000, 0x000000, 0x000000, 0x54e202,
- 0x54e404, 0x000000, 0x000000, 0x000000, 0x000000, 0x54e804, 0x54ec01, 0x54ed05,
- 0x000000, 0x54f202, 0x000000, 0x000000, 0x000000, 0x54f401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x54f502, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x54f701, 0x000000, 0x000000, 0x000000, 0x000000, 0x54f802, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x54fa01, 0x54fb01, 0x000000,
- 0x54fc03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x54ff03,
- 0x000000, 0x000000, 0x550201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x550302, 0x000000, 0x000000, 0x550501,
- 0x000000, 0x000000, 0x550606, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x550c01, 0x000000, 0x550d01, 0x000000,
- 0x000000, 0x550e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x550f01, 0x000000,
- 0x000000, 0x551003, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x551307, 0x551a01, 0x551b03, 0x551e06, 0x000000,
- 0x000000, 0x000000, 0x552408, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x552c01, 0x000000, 0x000000, 0x000000, 0x000000, 0x552d01, 0x000000, 0x552e02,
- 0x553001, 0x000000, 0x553101, 0x553206, 0x000000, 0x553802, 0x553a01, 0x553b03,
- 0x000000, 0x553e01, 0x000000, 0x553f01, 0x000000, 0x000000, 0x554001, 0x000000,
- 0x000000, 0x554106, 0x554701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x55480f, 0x555701, 0x555812, 0x000000, 0x000000, 0x556a03, 0x556d01, 0x556e02,
- 0x557001, 0x000000, 0x000000, 0x000000, 0x557101, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x557203, 0x000000,
- 0x557501, 0x000000, 0x000000, 0x000000, 0x557602, 0x000000, 0x557805, 0x557d01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x557e01, 0x000000, 0x000000, 0x557f06,
- 0x558501, 0x558602, 0x558804, 0x000000, 0x558c03, 0x000000, 0x558f02, 0x000000,
- 0x000000, 0x559103, 0x000000, 0x000000, 0x000000, 0x559401, 0x559501, 0x559601,
- 0x000000, 0x000000, 0x559701, 0x000000, 0x000000, 0x559801, 0x559901, 0x559a04,
- 0x000000, 0x559e02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x55a001, 0x000000, 0x000000, 0x55a10b, 0x55ac06, 0x55b205, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x55b701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x55b802, 0x000000, 0x55ba02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x55bc01, 0x000000, 0x000000,
- 0x000000, 0x55bd01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x55be01,
- 0x000000, 0x55bf02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x55c103, 0x55c401, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x55c501, 0x000000, 0x55c603, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x55c901, 0x55ca01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x55cb01, 0x55cc04, 0x000000, 0x000000,
- 0x55d001, 0x55d104, 0x000000, 0x000000, 0x000000, 0x55d506, 0x000000, 0x000000,
- 0x55db01, 0x55dc01, 0x000000, 0x55dd03, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x55e003, 0x000000, 0x55e304, 0x000000, 0x55e707, 0x000000, 0x55ee02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x55f001, 0x000000,
- 0x55f101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x55f201,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x55f304, 0x000000, 0x000000,
- 0x000000, 0x55f701, 0x000000, 0x55f806, 0x55fe01, 0x000000, 0x000000, 0x55ff01,
- 0x000000, 0x000000, 0x000000, 0x560002, 0x560201, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x560301, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x560410, 0x561402, 0x000000, 0x561601, 0x000000, 0x000000, 0x000000,
- 0x561708, 0x000000, 0x000000, 0x000000, 0x561f01, 0x562004, 0x000000, 0x000000,
- 0x562402, 0x562601, 0x562703, 0x562a01, 0x000000, 0x000000, 0x562b01, 0x562c03,
- 0x000000, 0x000000, 0x562f02, 0x000000, 0x000000, 0x000000, 0x000000, 0x563107,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x563801,
- 0x000000, 0x000000, 0x000000, 0x563901, 0x563a01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x563b01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x563c07, 0x56430f, 0x565205, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x565703, 0x000000, 0x000000, 0x565a01, 0x000000,
- 0x565b01, 0x000000, 0x565c01, 0x000000, 0x565d01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x565e08, 0x566601, 0x000000, 0x566702,
- 0x566903, 0x000000, 0x000000, 0x000000, 0x000000, 0x566c03, 0x000000, 0x000000,
- 0x000000, 0x566f01, 0x56700c, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x567c01, 0x000000, 0x000000, 0x000000, 0x567d02, 0x000000, 0x000000,
- 0x567f02, 0x568102, 0x000000, 0x568301, 0x568402, 0x568603, 0x568908, 0x000000,
- 0x000000, 0x000000, 0x569102, 0x000000, 0x000000, 0x000000, 0x000000, 0x56930d,
- 0x56a002, 0x000000, 0x000000, 0x000000, 0x000000, 0x56a203, 0x000000, 0x56a501,
- 0x56a601, 0x000000, 0x000000, 0x56a704, 0x56ab02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x56ad04, 0x000000, 0x56b107,
- 0x56b807, 0x000000, 0x000000, 0x56bf01, 0x000000, 0x56c003, 0x000000, 0x56c303,
- 0x000000, 0x000000, 0x56c608, 0x000000, 0x56ce08, 0x56d601, 0x000000, 0x000000,
- 0x56d702, 0x000000, 0x56d901, 0x000000, 0x000000, 0x56da01, 0x56db01, 0x000000,
- 0x56dc03, 0x000000, 0x56df01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x56e001, 0x000000, 0x000000, 0x000000, 0x56e104, 0x56e501, 0x56e60c, 0x000000,
- 0x000000, 0x000000, 0x56f209, 0x56fb01, 0x000000, 0x56fc01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x56fd01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x56fe01, 0x000000, 0x56ff05, 0x000000, 0x570401, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x570502, 0x570703, 0x570a03, 0x570d01,
- 0x000000, 0x000000, 0x570e02, 0x571001, 0x000000, 0x000000, 0x571103, 0x000000,
- 0x571402, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x571606, 0x000000, 0x571c01, 0x571d03, 0x000000,
- 0x000000, 0x000000, 0x572003, 0x000000, 0x572307, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x572a02,
- 0x000000, 0x000000, 0x000000, 0x572c11, 0x000000, 0x573d01, 0x000000, 0x000000,
- 0x000000, 0x573e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x573f02,
- 0x000000, 0x574106, 0x574703, 0x000000, 0x574a02, 0x574c01, 0x000000, 0x574d07,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x575401,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x575501, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x575601, 0x575701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x575805, 0x575d03, 0x000000, 0x000000, 0x576001, 0x000000,
- 0x576103, 0x576402, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x576602,
- 0x000000, 0x576801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x576903,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x576c01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x576d01, 0x000000, 0x576e08, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x577601, 0x000000, 0x000000,
- 0x577703, 0x577a01, 0x577b06, 0x578103, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x578401, 0x000000, 0x000000, 0x578502, 0x000000, 0x000000, 0x578701,
- 0x000000, 0x000000, 0x578801, 0x57890e, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x579702, 0x000000, 0x000000, 0x000000, 0x000000, 0x579901,
- 0x000000, 0x000000, 0x000000, 0x579a01, 0x000000, 0x579b04, 0x000000, 0x579f03,
- 0x000000, 0x57a207, 0x57a901, 0x57aa01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x57ab02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x57ad08, 0x000000,
- 0x57b501, 0x000000, 0x57b60a, 0x000000, 0x000000, 0x000000, 0x57c005, 0x000000,
- 0x57c501, 0x000000, 0x57c601, 0x000000, 0x000000, 0x000000, 0x000000, 0x57c701,
- 0x57c80e, 0x000000, 0x57d601, 0x000000, 0x000000, 0x000000, 0x57d701, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x57d80a, 0x000000, 0x000000, 0x57e20f, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x57f101, 0x000000, 0x000000,
- 0x57f201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x57f301, 0x000000, 0x000000, 0x000000, 0x57f403, 0x57f70e, 0x000000, 0x000000,
- 0x000000, 0x580501, 0x000000, 0x000000, 0x580601, 0x000000, 0x000000, 0x580704,
- 0x000000, 0x580b0d, 0x581802, 0x000000, 0x581a06, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x582001, 0x000000, 0x000000, 0x582104, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x582501, 0x000000, 0x000000, 0x000000, 0x000000, 0x582601, 0x582707, 0x000000,
- 0x000000, 0x582e04, 0x000000, 0x583203, 0x000000, 0x583501, 0x583602, 0x583801,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x583901, 0x000000, 0x000000,
- 0x583a03, 0x000000, 0x000000, 0x583d01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x583e01, 0x000000, 0x583f01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x584009, 0x000000, 0x584902, 0x000000, 0x000000, 0x584b05, 0x000000,
- 0x000000, 0x585009, 0x000000, 0x000000, 0x585901, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x585a05, 0x000000, 0x585f01, 0x58600d, 0x000000,
- 0x000000, 0x586d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x586e01,
- 0x000000, 0x000000, 0x586f04, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x587301, 0x000000, 0x587402, 0x587605, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x587b01, 0x587c01, 0x000000, 0x000000, 0x000000, 0x587d01,
- 0x000000, 0x587e01, 0x000000, 0x000000, 0x000000, 0x587f11, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x589002, 0x589201, 0x589302, 0x000000, 0x000000, 0x589501, 0x58960c, 0x000000,
- 0x58a202, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x58a403, 0x000000, 0x000000, 0x58a703, 0x000000, 0x58aa08, 0x58b201, 0x58b30a,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x58bd01, 0x000000, 0x58be04, 0x000000, 0x000000, 0x000000, 0x000000, 0x58c201,
- 0x000000, 0x000000, 0x000000, 0x58c301, 0x58c401, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x58c502, 0x58c701, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x58c802, 0x000000, 0x000000,
- 0x58ca01, 0x000000, 0x000000, 0x000000, 0x000000, 0x58cb03, 0x58ce01, 0x58cf03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x58d20a, 0x000000, 0x58dc02, 0x000000,
- 0x000000, 0x58de07, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x58e502, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x58e704, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x58eb01, 0x58ec01, 0x58ed02, 0x000000, 0x58ef01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x58f001, 0x58f101, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x58f201, 0x000000, 0x000000, 0x58f303, 0x58f601,
- 0x000000, 0x58f701, 0x58f803, 0x58fb02, 0x000000, 0x000000, 0x58fd02, 0x58ff03,
- 0x000000, 0x590202, 0x000000, 0x590407, 0x590b02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x590d04, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x591101, 0x000000, 0x591201, 0x591301, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x591405,
- 0x000000, 0x000000, 0x591901, 0x591a03, 0x591d02, 0x591f09, 0x000000, 0x592801,
- 0x592905, 0x000000, 0x592e02, 0x593001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x593102, 0x000000, 0x593302,
- 0x593501, 0x000000, 0x593601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x593707, 0x000000, 0x593e09, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x594701, 0x594801, 0x000000, 0x594901, 0x594a03, 0x000000, 0x000000, 0x594d02,
- 0x000000, 0x000000, 0x594f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x595001,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x595101, 0x000000, 0x595201, 0x595301, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x595402, 0x000000, 0x595601, 0x000000, 0x595701,
- 0x000000, 0x595808, 0x596001, 0x596102, 0x596301, 0x596401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x596501, 0x596607, 0x000000,
- 0x596d01, 0x000000, 0x596e05, 0x000000, 0x000000, 0x000000, 0x597301, 0x000000,
- 0x597403, 0x000000, 0x000000, 0x000000, 0x000000, 0x597701, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x597802, 0x597a08, 0x000000, 0x000000, 0x000000, 0x598202,
- 0x598401, 0x000000, 0x000000, 0x598502, 0x000000, 0x000000, 0x000000, 0x598709,
- 0x000000, 0x000000, 0x000000, 0x599001, 0x59910b, 0x000000, 0x000000, 0x000000,
- 0x599c01, 0x599d01, 0x000000, 0x000000, 0x000000, 0x599e01, 0x000000, 0x000000,
- 0x000000, 0x599f02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x59a101, 0x000000, 0x59a207, 0x000000, 0x000000, 0x59a902, 0x000000,
- 0x59ab06, 0x000000, 0x000000, 0x59b101, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x59b201, 0x000000, 0x000000, 0x59b301, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x59b403, 0x000000,
- 0x59b701, 0x000000, 0x000000, 0x000000, 0x59b801, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x59b901, 0x000000, 0x59ba07, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x59c101, 0x000000, 0x000000, 0x59c208, 0x000000, 0x59ca02,
- 0x000000, 0x000000, 0x59cc01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x59cd0f, 0x000000, 0x59dc01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x59dd01, 0x59de01, 0x59df0f, 0x000000, 0x000000,
- 0x59ee01, 0x59ef05, 0x59f401, 0x000000, 0x000000, 0x000000, 0x000000, 0x59f502,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x59f703, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x59fa03, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x59fd0a, 0x000000, 0x000000, 0x000000, 0x5a0701, 0x000000, 0x5a0803, 0x5a0b01,
- 0x5a0c07, 0x5a1301, 0x5a1402, 0x000000, 0x5a1604, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x5a1a01, 0x5a1b01, 0x000000, 0x000000, 0x000000, 0x5a1c04, 0x5a2036,
- 0x000000, 0x000000, 0x000000, 0x5a5601, 0x000000, 0x5a5701, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x5a5809, 0x000000, 0x5a6103, 0x5a6408, 0x000000,
- 0x5a6c01, 0x000000, 0x000000, 0x5a6d02, 0x000000, 0x000000, 0x000000, 0x5a6f02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x5a7103, 0x000000, 0x000000, 0x000000, 0x000000, 0x5a7402, 0x5a7601, 0x5a7714,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5a8b01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x5a8c07, 0x000000, 0x000000, 0x5a9301, 0x000000, 0x5a9406, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x5a9a01, 0x000000, 0x000000, 0x5a9b03, 0x5a9e03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x5aa102, 0x000000, 0x5aa303, 0x000000, 0x5aa602, 0x000000, 0x5aa801,
- 0x5aa911, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5aba02,
- 0x5abc01, 0x000000, 0x000000, 0x5abd04, 0x5ac104, 0x5ac507, 0x000000, 0x000000,
- 0x000000, 0x5acc01, 0x5acd02, 0x5acf01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x5ad005, 0x5ad50b, 0x000000, 0x000000, 0x000000, 0x5ae003, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5ae308, 0x000000, 0x5aeb01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5aec14, 0x000000, 0x5b0001, 0x000000,
- 0x5b0101, 0x000000, 0x000000, 0x000000, 0x000000, 0x5b0203, 0x000000, 0x5b0501,
- 0x000000, 0x000000, 0x5b0609, 0x5b0f02, 0x000000, 0x000000, 0x5b1106, 0x000000,
- 0x5b1704, 0x000000, 0x000000, 0x000000, 0x000000, 0x5b1b01, 0x000000, 0x5b1c03,
- 0x000000, 0x5b1f06, 0x000000, 0x5b2503, 0x000000, 0x000000, 0x000000, 0x5b2806,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5b2e01, 0x5b2f02, 0x5b3102, 0x000000,
- 0x5b3305, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x5b3802, 0x000000, 0x000000, 0x000000, 0x000000, 0x5b3a01, 0x000000,
- 0x5b3b02, 0x5b3d01, 0x000000, 0x000000, 0x000000, 0x5b3e01, 0x5b3f01, 0x000000,
- 0x5b4006, 0x000000, 0x5b4602, 0x000000, 0x5b4804, 0x000000, 0x000000, 0x5b4c05,
- 0x000000, 0x5b5101, 0x5b5203, 0x000000, 0x5b5501, 0x5b5604, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5b5a01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x5b5b02, 0x5b5d03, 0x000000, 0x000000, 0x5b6005,
- 0x5b6501, 0x000000, 0x000000, 0x000000, 0x5b6601, 0x000000, 0x000000, 0x000000,
- 0x5b6701, 0x000000, 0x000000, 0x000000, 0x000000, 0x5b680e, 0x000000, 0x000000,
- 0x000000, 0x5b7601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5b7706, 0x000000, 0x5b7d15, 0x000000, 0x5b9201, 0x5b9304,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5b9706, 0x000000, 0x5b9d02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5b9f02, 0x000000, 0x000000,
- 0x5ba106, 0x5ba701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x5ba805, 0x000000, 0x000000, 0x000000, 0x5bad01, 0x5bae01, 0x000000, 0x000000,
- 0x5baf01, 0x000000, 0x000000, 0x000000, 0x5bb017, 0x5bc701, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5bc802, 0x000000,
- 0x5bca03, 0x000000, 0x000000, 0x5bcd01, 0x000000, 0x000000, 0x5bce0a, 0x000000,
- 0x000000, 0x5bd802, 0x000000, 0x000000, 0x5bda02, 0x000000, 0x000000, 0x000000,
- 0x5bdc01, 0x000000, 0x000000, 0x000000, 0x000000, 0x5bdd01, 0x5bde02, 0x5be003,
- 0x5be301, 0x000000, 0x5be403, 0x5be70b, 0x5bf202, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5bf403, 0x000000, 0x000000, 0x5bf70c, 0x000000, 0x000000,
- 0x5c0301, 0x000000, 0x000000, 0x5c0402, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x5c0601, 0x000000, 0x5c0701, 0x000000, 0x000000, 0x5c0805, 0x000000,
- 0x000000, 0x5c0d02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5c0f01,
- 0x5c1001, 0x5c1101, 0x000000, 0x000000, 0x000000, 0x000000, 0x5c1203, 0x000000,
- 0x5c1501, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5c1604, 0x000000, 0x5c1a02, 0x000000,
- 0x000000, 0x5c1c06, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x5c2209, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x5c2b02, 0x5c2d04, 0x000000, 0x000000, 0x000000, 0x000000, 0x5c3104, 0x5c3501,
- 0x000000, 0x000000, 0x5c3601, 0x000000, 0x5c3706, 0x000000, 0x000000, 0x000000,
- 0x5c3d02, 0x5c3f02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5c4101,
- 0x000000, 0x000000, 0x5c4202, 0x000000, 0x000000, 0x000000, 0x000000, 0x5c4405,
- 0x5c4901, 0x000000, 0x5c4a02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5c4c01, 0x000000, 0x5c4d04, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x5c5102, 0x000000, 0x5c5302, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5c5502, 0x000000, 0x000000, 0x000000, 0x000000, 0x5c571b,
- 0x5c7202, 0x000000, 0x5c740c, 0x000000, 0x000000, 0x000000, 0x5c8001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5c8101, 0x000000,
- 0x5c8201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5c8301, 0x000000,
- 0x000000, 0x000000, 0x5c8404, 0x5c8804, 0x000000, 0x5c8c01, 0x5c8d06, 0x5c9302,
- 0x000000, 0x5c9507, 0x000000, 0x5c9c03, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x5c9f02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x5ca101, 0x000000, 0x000000, 0x5ca203, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x5ca502, 0x000000, 0x000000, 0x5ca702, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x5ca904, 0x000000, 0x000000, 0x000000, 0x5cad03, 0x5cb00c, 0x000000,
- 0x5cbc05, 0x5cc102, 0x000000, 0x5cc301, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x5cc401, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5cc501, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x5cc602, 0x000000, 0x5cc804, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5ccc08, 0x5cd405, 0x000000, 0x000000, 0x000000, 0x5cd901,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5cda01,
- 0x000000, 0x5cdb09, 0x5ce40f, 0x000000, 0x000000, 0x5cf302, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5cf501, 0x000000, 0x5cf603, 0x000000, 0x000000, 0x000000,
- 0x5cf904, 0x000000, 0x000000, 0x5cfd01, 0x000000, 0x5cfe01, 0x000000, 0x000000,
- 0x5cff01, 0x000000, 0x5d000a, 0x000000, 0x5d0a02, 0x000000, 0x000000, 0x000000,
- 0x5d0c06, 0x000000, 0x5d1202, 0x000000, 0x000000, 0x000000, 0x5d1401, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5d1502, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5d1701, 0x5d1801, 0x5d1901,
- 0x5d1a02, 0x000000, 0x000000, 0x000000, 0x000000, 0x5d1c01, 0x5d1d08, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5d2501, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x5d2620, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x5d4602, 0x5d4801, 0x000000, 0x000000, 0x5d4901, 0x5d4a0c, 0x5d5604,
- 0x000000, 0x5d5a02, 0x000000, 0x000000, 0x000000, 0x000000, 0x5d5c01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5d5d01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x5d5e02, 0x5d6001, 0x000000, 0x5d6101, 0x000000,
- 0x5d620b, 0x5d6d01, 0x5d6e01, 0x5d6f02, 0x000000, 0x5d7102, 0x000000, 0x5d7303,
- 0x000000, 0x5d7607, 0x000000, 0x5d7d03, 0x000000, 0x5d8004, 0x5d8401, 0x000000,
- 0x5d8504, 0x5d8909, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5d9201,
- 0x5d9302, 0x5d9501, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x5d9603, 0x000000, 0x5d9903, 0x5d9c01, 0x000000, 0x5d9d01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5d9e01, 0x5d9f05, 0x000000, 0x000000, 0x5da401, 0x000000,
- 0x000000, 0x5da501, 0x000000, 0x000000, 0x000000, 0x000000, 0x5da601, 0x000000,
- 0x5da701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5da803, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5dab04,
- 0x000000, 0x000000, 0x5daf01, 0x000000, 0x5db002, 0x000000, 0x000000, 0x5db201,
- 0x000000, 0x000000, 0x5db302, 0x5db501, 0x5db601, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x5db702, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5db904, 0x000000, 0x000000, 0x000000,
- 0x5dbd01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5dbe04, 0x000000, 0x000000, 0x5dc201, 0x000000, 0x5dc302,
- 0x000000, 0x5dc501, 0x000000, 0x000000, 0x000000, 0x5dc601, 0x000000, 0x000000,
- 0x5dc701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x5dc801, 0x000000, 0x000000, 0x5dc901, 0x000000, 0x000000, 0x5dca02, 0x000000,
- 0x000000, 0x5dcc01, 0x5dcd01, 0x000000, 0x000000, 0x5dce01, 0x5dcf0b, 0x5dda01,
- 0x000000, 0x5ddb01, 0x5ddc01, 0x000000, 0x5ddd03, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5de001, 0x5de101, 0x000000, 0x5de201, 0x000000, 0x000000,
- 0x5de308, 0x000000, 0x000000, 0x5deb04, 0x000000, 0x5def01, 0x5df00e, 0x5dfe04,
- 0x5e0201, 0x000000, 0x5e0302, 0x5e0501, 0x000000, 0x000000, 0x5e0607, 0x5e0d09,
- 0x5e1603, 0x000000, 0x5e1905, 0x000000, 0x000000, 0x000000, 0x5e1e03, 0x000000,
- 0x5e2103, 0x5e2403, 0x5e2702, 0x5e2901, 0x000000, 0x5e2a01, 0x000000, 0x000000,
- 0x000000, 0x5e2b02, 0x000000, 0x000000, 0x000000, 0x000000, 0x5e2d01, 0x5e2e02,
- 0x000000, 0x5e3002, 0x000000, 0x000000, 0x5e3205, 0x5e3704, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5e3b01, 0x000000, 0x5e3c01, 0x000000,
- 0x5e3d01, 0x000000, 0x5e3e08, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x5e4601, 0x000000, 0x000000, 0x5e4701, 0x000000, 0x5e4805, 0x5e4d04, 0x000000,
- 0x000000, 0x000000, 0x5e5101, 0x000000, 0x000000, 0x5e5202, 0x5e5405, 0x5e5909,
- 0x000000, 0x5e6202, 0x000000, 0x000000, 0x000000, 0x5e6401, 0x5e6501, 0x5e6602,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5e6801, 0x5e6905, 0x5e6e03, 0x000000, 0x000000, 0x000000,
- 0x5e7101, 0x000000, 0x000000, 0x5e7202, 0x000000, 0x000000, 0x5e7403, 0x000000,
- 0x5e770d, 0x5e8404, 0x000000, 0x5e8803, 0x5e8b02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x5e8d06, 0x5e9308, 0x5e9b04, 0x000000, 0x000000,
- 0x000000, 0x5e9f02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5ea108, 0x000000, 0x5ea901, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5eaa01, 0x000000, 0x5eab03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5eae01, 0x5eaf01, 0x5eb007,
- 0x000000, 0x000000, 0x5eb701, 0x000000, 0x000000, 0x5eb802, 0x000000, 0x5eba02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5ebc0f, 0x000000,
- 0x5ecb01, 0x000000, 0x000000, 0x000000, 0x5ecc02, 0x000000, 0x5ece01, 0x5ecf01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5ed001, 0x000000, 0x000000, 0x5ed105,
- 0x000000, 0x000000, 0x5ed601, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5ed70d, 0x000000, 0x5ee401, 0x5ee502, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5ee71b, 0x000000, 0x000000, 0x5f0206,
- 0x000000, 0x000000, 0x000000, 0x5f0801, 0x5f0901, 0x5f0a08, 0x5f120c, 0x000000,
- 0x5f1e12, 0x000000, 0x000000, 0x5f3001, 0x5f3101, 0x000000, 0x000000, 0x000000,
- 0x5f3201, 0x000000, 0x000000, 0x000000, 0x000000, 0x5f3301, 0x5f3401, 0x5f3504,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5f3901, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5f3a02, 0x000000, 0x5f3c02, 0x000000, 0x5f3e06, 0x5f4401,
- 0x000000, 0x5f4504, 0x000000, 0x000000, 0x5f4901, 0x5f4a05, 0x5f4f01, 0x000000,
- 0x000000, 0x000000, 0x5f5001, 0x5f5104, 0x000000, 0x5f5505, 0x000000, 0x000000,
- 0x000000, 0x5f5a04, 0x000000, 0x000000, 0x000000, 0x5f5e01, 0x000000, 0x5f5f01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5f6002, 0x000000, 0x5f6203,
- 0x000000, 0x5f6501, 0x000000, 0x5f6605, 0x5f6b07, 0x000000, 0x5f7204, 0x000000,
- 0x000000, 0x000000, 0x5f7601, 0x000000, 0x000000, 0x000000, 0x5f7702, 0x5f7904,
- 0x5f7d01, 0x000000, 0x000000, 0x000000, 0x5f7e01, 0x5f7f01, 0x5f8003, 0x5f8301,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5f8404, 0x5f8801, 0x000000, 0x000000,
- 0x5f8901, 0x5f8a01, 0x5f8b05, 0x000000, 0x5f9005, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5f9501, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5f9602,
- 0x000000, 0x5f9801, 0x5f9901, 0x5f9a01, 0x5f9b02, 0x000000, 0x5f9d02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x5f9f01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5fa001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x5fa103, 0x5fa401, 0x000000, 0x000000, 0x000000, 0x000000, 0x5fa502,
- 0x000000, 0x000000, 0x000000, 0x5fa706, 0x000000, 0x000000, 0x000000, 0x5fad03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5fb001, 0x000000, 0x000000, 0x5fb101,
- 0x000000, 0x000000, 0x000000, 0x5fb207, 0x5fb901, 0x000000, 0x000000, 0x000000,
- 0x5fba04, 0x000000, 0x000000, 0x5fbe02, 0x000000, 0x000000, 0x5fc001, 0x5fc103,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x5fc401, 0x000000, 0x5fc502,
- 0x000000, 0x5fc701, 0x000000, 0x5fc803, 0x5fcb01, 0x5fcc02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x5fce01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5fcf09, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x5fd802, 0x5fda01, 0x000000, 0x5fdb08, 0x000000,
- 0x000000, 0x000000, 0x5fe301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x5fe401, 0x5fe503, 0x000000, 0x000000, 0x000000, 0x5fe801, 0x5fe901, 0x000000,
- 0x5fea01, 0x000000, 0x5feb02, 0x000000, 0x5fed02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5fef01, 0x000000, 0x000000, 0x000000, 0x5ff001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x5ff105, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x5ff602, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x5ff805, 0x000000, 0x000000, 0x000000, 0x5ffd01, 0x000000, 0x5ffe02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x600004, 0x600403, 0x000000, 0x600701, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x600801, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x600901, 0x000000, 0x000000, 0x600a01, 0x000000, 0x600b02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x600d01, 0x600e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x600f02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x601102,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x601301,
- 0x601405, 0x000000, 0x000000, 0x000000, 0x000000, 0x601901, 0x601a01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x601b01, 0x000000, 0x000000, 0x601c05, 0x000000,
- 0x602101, 0x000000, 0x000000, 0x602201, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x602303, 0x602601, 0x602708, 0x602f03, 0x000000, 0x000000, 0x000000, 0x60320b,
- 0x000000, 0x603d01, 0x603e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x603f0f,
- 0x000000, 0x000000, 0x000000, 0x604e01, 0x604f01, 0x605005, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x605501, 0x000000,
- 0x605601, 0x605701, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x605802,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x605a01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x605b01, 0x605c01, 0x000000, 0x605d04, 0x606101,
- 0x000000, 0x000000, 0x000000, 0x606203, 0x000000, 0x606501, 0x000000, 0x000000,
- 0x606602, 0x000000, 0x000000, 0x000000, 0x606802, 0x000000, 0x606a01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x606b01, 0x000000, 0x606c01, 0x000000, 0x000000,
- 0x606d02, 0x000000, 0x000000, 0x606f01, 0x607001, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x607101, 0x607206, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x607801, 0x000000, 0x60790b, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x608401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x608502, 0x000000, 0x608701, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x608801, 0x608901, 0x000000, 0x608a01,
- 0x000000, 0x608b02, 0x608d01, 0x000000, 0x608e01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x608f05, 0x000000, 0x000000, 0x60940d, 0x000000, 0x000000, 0x60a10b,
- 0x000000, 0x60ac01, 0x60ad02, 0x000000, 0x000000, 0x000000, 0x60af01, 0x000000,
- 0x000000, 0x000000, 0x60b005, 0x000000, 0x000000, 0x000000, 0x60b504, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x60b901, 0x000000, 0x60ba01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x60bb01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x60bc02, 0x60be01, 0x60bf04, 0x000000,
- 0x60c301, 0x000000, 0x000000, 0x000000, 0x000000, 0x60c404, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x60c808, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x60d001, 0x000000, 0x60d102, 0x60d301, 0x000000, 0x000000, 0x000000, 0x60d405,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x60d904, 0x60dd01, 0x000000, 0x60de01,
- 0x60df03, 0x000000, 0x000000, 0x000000, 0x60e201, 0x000000, 0x60e302, 0x60e501,
- 0x000000, 0x60e603, 0x000000, 0x000000, 0x000000, 0x60e911, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x60fa01, 0x60fb07, 0x000000, 0x610201,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x610303, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x610604, 0x000000, 0x610a01, 0x610b03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x610e01, 0x000000, 0x000000, 0x610f01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x611001, 0x000000, 0x611101, 0x611201,
- 0x000000, 0x000000, 0x000000, 0x611301, 0x000000, 0x611401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x611501,
- 0x000000, 0x61160d, 0x000000, 0x000000, 0x61230f, 0x000000, 0x000000, 0x000000,
- 0x613201, 0x000000, 0x000000, 0x000000, 0x61330b, 0x000000, 0x613e02, 0x614002,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x614201, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x61430d, 0x000000, 0x615001, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x615103, 0x000000, 0x000000, 0x61540d,
- 0x616101, 0x616201, 0x000000, 0x000000, 0x000000, 0x616307, 0x000000, 0x000000,
- 0x616a03, 0x000000, 0x000000, 0x616d03, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x617005, 0x617501, 0x000000,
- 0x617602, 0x000000, 0x000000, 0x617801, 0x000000, 0x000000, 0x000000, 0x617905,
- 0x000000, 0x617e02, 0x000000, 0x000000, 0x000000, 0x618001, 0x000000, 0x000000,
- 0x618102, 0x000000, 0x618304, 0x618702, 0x618902, 0x618b04, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x618f01, 0x000000, 0x000000, 0x000000, 0x619005,
- 0x000000, 0x619501, 0x000000, 0x000000, 0x619601, 0x000000, 0x000000, 0x619709,
- 0x000000, 0x000000, 0x000000, 0x61a001, 0x000000, 0x000000, 0x000000, 0x61a107,
- 0x000000, 0x000000, 0x61a802, 0x000000, 0x000000, 0x000000, 0x61aa0f, 0x000000,
- 0x000000, 0x61b905, 0x000000, 0x000000, 0x61be0b, 0x000000, 0x000000, 0x000000,
- 0x61c901, 0x000000, 0x000000, 0x61ca01, 0x61cb01, 0x000000, 0x61cc02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x61ce01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x61cf02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x61d101, 0x000000, 0x000000, 0x61d202,
- 0x61d404, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x61d802,
- 0x000000, 0x000000, 0x61da01, 0x000000, 0x61db01, 0x61dc01, 0x000000, 0x000000,
- 0x61dd01, 0x000000, 0x000000, 0x000000, 0x61de02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x61e002, 0x61e201, 0x000000, 0x000000, 0x61e304, 0x61e701, 0x000000,
- 0x61e804, 0x61ec01, 0x61ed02, 0x000000, 0x000000, 0x000000, 0x000000, 0x61ef01,
- 0x000000, 0x61f011, 0x000000, 0x620102, 0x000000, 0x000000, 0x620301, 0x620408,
- 0x620c04, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x621003,
- 0x621305, 0x000000, 0x000000, 0x621802, 0x000000, 0x000000, 0x621a01, 0x621b01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x621c03, 0x000000,
- 0x000000, 0x000000, 0x621f01, 0x622004, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x622401, 0x000000, 0x000000, 0x000000, 0x622504,
- 0x000000, 0x622904, 0x622d05, 0x000000, 0x623204, 0x000000, 0x623608, 0x000000,
- 0x000000, 0x000000, 0x623e0a, 0x000000, 0x624802, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x624a0b, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x625501, 0x000000, 0x625620, 0x000000, 0x627602, 0x000000, 0x000000, 0x000000,
- 0x627804, 0x000000, 0x000000, 0x000000, 0x000000, 0x627c06, 0x000000, 0x628204,
- 0x000000, 0x628602, 0x000000, 0x628802, 0x000000, 0x000000, 0x000000, 0x628a01,
- 0x000000, 0x000000, 0x000000, 0x628b01, 0x000000, 0x000000, 0x000000, 0x628c02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x628e02,
- 0x629004, 0x000000, 0x000000, 0x000000, 0x000000, 0x629402, 0x629604, 0x000000,
- 0x000000, 0x000000, 0x629a09, 0x000000, 0x000000, 0x000000, 0x62a305, 0x000000,
- 0x62a801, 0x62a902, 0x000000, 0x000000, 0x000000, 0x000000, 0x62ab05, 0x62b003,
- 0x000000, 0x62b305, 0x000000, 0x000000, 0x62b833, 0x62eb01, 0x000000, 0x62ec01,
- 0x000000, 0x62ed01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x62ee01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x62ef04, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x62f301,
- 0x000000, 0x000000, 0x000000, 0x62f403, 0x000000, 0x000000, 0x000000, 0x62f701,
- 0x62f801, 0x62f905, 0x000000, 0x000000, 0x62fe07, 0x000000, 0x630502, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x630702, 0x000000,
- 0x630915, 0x000000, 0x631e04, 0x000000, 0x632205, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x632702, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x632902, 0x000000, 0x632b02, 0x000000, 0x632d09,
- 0x000000, 0x000000, 0x633602, 0x000000, 0x000000, 0x633801, 0x000000, 0x000000,
- 0x000000, 0x633905, 0x000000, 0x000000, 0x000000, 0x633e06, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x634402, 0x634602, 0x000000, 0x000000, 0x634802, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x634a02, 0x000000, 0x000000,
- 0x000000, 0x634c03, 0x000000, 0x000000, 0x000000, 0x634f09, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x635802, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x635a01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x635b01, 0x000000, 0x000000, 0x000000, 0x635c03,
- 0x000000, 0x000000, 0x635f02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x636101, 0x000000, 0x000000, 0x636203, 0x000000, 0x636503, 0x000000,
- 0x000000, 0x636801, 0x000000, 0x000000, 0x000000, 0x636902, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x636b01, 0x000000, 0x636c01, 0x636d01, 0x636e01, 0x000000,
- 0x000000, 0x000000, 0x636f01, 0x000000, 0x637002, 0x000000, 0x000000, 0x000000,
- 0x637202, 0x000000, 0x637407, 0x000000, 0x637b01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x637c02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x637e03, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x638101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x638202, 0x000000, 0x000000, 0x000000, 0x000000, 0x638406,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x638a01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x638b01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x638c0c,
- 0x000000, 0x639801, 0x000000, 0x000000, 0x639906, 0x000000, 0x639f06, 0x000000,
- 0x63a502, 0x000000, 0x63a701, 0x000000, 0x000000, 0x63a801, 0x63a903, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x63ac01, 0x63ad01, 0x63ae01,
- 0x000000, 0x63af01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x63b001, 0x000000, 0x63b105, 0x63b607, 0x63bd02, 0x000000, 0x63bf01,
- 0x000000, 0x63c00b, 0x000000, 0x000000, 0x63cb02, 0x63cd01, 0x000000, 0x000000,
- 0x63ce01, 0x000000, 0x63cf02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x63d101, 0x000000, 0x63d201, 0x000000, 0x63d301, 0x63d40b, 0x63df02, 0x000000,
- 0x000000, 0x000000, 0x63e101, 0x63e203, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x63e505, 0x000000, 0x000000, 0x000000, 0x000000, 0x63ea02,
- 0x000000, 0x000000, 0x000000, 0x63ec01, 0x000000, 0x000000, 0x000000, 0x63ed06,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x63f301, 0x000000, 0x000000, 0x000000, 0x000000, 0x63f401, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x63f501, 0x000000, 0x63f601, 0x63f701, 0x63f801,
- 0x000000, 0x63f902, 0x000000, 0x000000, 0x000000, 0x63fb01, 0x000000, 0x63fc12,
- 0x640e03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x641101, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x641204, 0x641606, 0x000000, 0x000000, 0x641c02,
- 0x000000, 0x000000, 0x641e04, 0x000000, 0x000000, 0x000000, 0x642201, 0x64230d,
- 0x000000, 0x000000, 0x643005, 0x000000, 0x000000, 0x000000, 0x000000, 0x643507,
- 0x000000, 0x000000, 0x000000, 0x643c02, 0x643e08, 0x000000, 0x000000, 0x644607,
- 0x000000, 0x000000, 0x644d14, 0x646101, 0x000000, 0x646203, 0x646501, 0x646601,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x646702, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x646904, 0x000000,
- 0x000000, 0x646d01, 0x000000, 0x646e01, 0x000000, 0x646f03, 0x000000, 0x647201,
- 0x647301, 0x647401, 0x000000, 0x000000, 0x64750a, 0x647f04, 0x648302, 0x000000,
- 0x000000, 0x000000, 0x648503, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x648802, 0x000000, 0x000000, 0x648a01,
- 0x000000, 0x000000, 0x000000, 0x648b01, 0x000000, 0x648c04, 0x649001, 0x000000,
- 0x649102, 0x000000, 0x649318, 0x64ab06, 0x64b102, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x64b301, 0x000000, 0x000000, 0x000000, 0x000000, 0x64b401,
- 0x000000, 0x64b502, 0x64b701, 0x64b804, 0x000000, 0x000000, 0x000000, 0x64bc08,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x64c404, 0x64c807,
- 0x000000, 0x000000, 0x000000, 0x64cf01, 0x64d002, 0x000000, 0x000000, 0x64d203,
- 0x64d501, 0x64d602, 0x000000, 0x000000, 0x64d803, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x64db0c, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x64e701, 0x64e80d, 0x000000, 0x000000, 0x000000, 0x64f501,
- 0x000000, 0x000000, 0x000000, 0x64f601, 0x64f701, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x64f801, 0x64f901,
- 0x000000, 0x000000, 0x64fa01, 0x000000, 0x000000, 0x64fb0a, 0x000000, 0x650501,
- 0x000000, 0x000000, 0x000000, 0x650602, 0x650802, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x650a01, 0x650b01, 0x000000, 0x650c05,
- 0x651101, 0x000000, 0x651201, 0x000000, 0x651301, 0x651401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x651518, 0x652d01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x652e01, 0x652f01, 0x653003, 0x000000, 0x000000,
- 0x000000, 0x653301, 0x653401, 0x000000, 0x000000, 0x000000, 0x000000, 0x653502,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x653701,
- 0x000000, 0x653801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x653902, 0x000000, 0x000000, 0x653b01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x653c0a, 0x654601, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x654702, 0x000000, 0x000000, 0x654903, 0x000000, 0x000000, 0x000000,
- 0x654c05, 0x000000, 0x000000, 0x655104, 0x655503, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x655805, 0x000000, 0x655d06, 0x000000,
- 0x656305, 0x000000, 0x000000, 0x656801, 0x656901, 0x000000, 0x000000, 0x656a01,
- 0x000000, 0x656b01, 0x656c01, 0x656d01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x656e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x656f01, 0x000000,
- 0x000000, 0x000000, 0x657002, 0x657202, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x657402, 0x657603, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x657903, 0x000000, 0x657c01, 0x000000, 0x000000, 0x000000,
- 0x657d02, 0x000000, 0x000000, 0x000000, 0x657f09, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x658809, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x659103, 0x000000, 0x000000, 0x000000, 0x659401, 0x000000,
- 0x000000, 0x000000, 0x659501, 0x659607, 0x000000, 0x000000, 0x659d01, 0x659e01,
- 0x659f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x65a001,
- 0x65a102, 0x65a302, 0x000000, 0x65a501, 0x65a601, 0x000000, 0x000000, 0x000000,
- 0x65a704, 0x65ab01, 0x000000, 0x65ac04, 0x65b001, 0x65b10a, 0x65bb02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x65bd01, 0x000000, 0x000000, 0x65be02,
- 0x000000, 0x000000, 0x65c001, 0x000000, 0x65c101, 0x000000, 0x65c202, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x65c401, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x65c505, 0x65ca01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x65cb06, 0x000000, 0x65d101, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x65d202, 0x000000, 0x65d402, 0x000000, 0x000000, 0x65d602, 0x000000, 0x000000,
- 0x000000, 0x65d801, 0x000000, 0x65d903, 0x65dc01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x65dd01, 0x000000, 0x000000, 0x000000, 0x65de0b, 0x000000, 0x65e904,
- 0x000000, 0x000000, 0x65ed01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x65ee01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x65ef05,
- 0x65f406, 0x000000, 0x65fa0f, 0x660902, 0x000000, 0x660b01, 0x000000, 0x000000,
- 0x660c0b, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x661705,
- 0x661c0e, 0x662a09, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x663302, 0x663501, 0x000000, 0x000000, 0x000000,
- 0x663603, 0x000000, 0x663901, 0x663a01, 0x000000, 0x000000, 0x663b02, 0x000000,
- 0x000000, 0x663d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x663e01,
- 0x000000, 0x000000, 0x000000, 0x663f01, 0x664090, 0x000000, 0x66d001, 0x66d101,
- 0x000000, 0x66d201, 0x000000, 0x000000, 0x66d301, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x66d406, 0x000000, 0x66da04, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x66de0f, 0x000000, 0x000000,
- 0x000000, 0x66ed1d, 0x000000, 0x000000, 0x000000, 0x670a03, 0x000000, 0x000000,
- 0x670d01, 0x670e02, 0x671007, 0x000000, 0x000000, 0x67170e, 0x672505, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x672a01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x672b08, 0x000000, 0x000000, 0x673303, 0x000000, 0x000000, 0x673601,
- 0x000000, 0x673702, 0x673906, 0x673f03, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x674201, 0x000000, 0x674305, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x674803, 0x000000, 0x674b02, 0x000000,
- 0x000000, 0x000000, 0x674d01, 0x000000, 0x000000, 0x000000, 0x000000, 0x674e02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x675001, 0x000000, 0x675102, 0x675301,
- 0x000000, 0x675401, 0x675501, 0x000000, 0x000000, 0x000000, 0x675601, 0x000000,
- 0x000000, 0x000000, 0x675702, 0x000000, 0x000000, 0x675902, 0x000000, 0x000000,
- 0x675b03, 0x000000, 0x675e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x675f06, 0x676503, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x676801, 0x000000,
- 0x000000, 0x676901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x676a02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x676c08, 0x000000, 0x677401, 0x000000, 0x000000, 0x677501, 0x000000,
- 0x677601, 0x000000, 0x000000, 0x677705, 0x677c01, 0x677d01, 0x000000, 0x000000,
- 0x677e02, 0x000000, 0x678007, 0x678702, 0x678901, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x678a02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x678c01, 0x000000, 0x000000, 0x678d02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x678f01, 0x000000, 0x679002, 0x679203, 0x000000, 0x000000, 0x000000,
- 0x679501, 0x000000, 0x000000, 0x000000, 0x679605, 0x000000, 0x679b02, 0x679d01,
- 0x000000, 0x000000, 0x000000, 0x679e05, 0x000000, 0x67a301, 0x000000, 0x67a404,
- 0x67a815, 0x67bd01, 0x000000, 0x000000, 0x000000, 0x67be0c, 0x000000, 0x000000,
- 0x000000, 0x67ca02, 0x000000, 0x000000, 0x67cc0f, 0x000000, 0x67db05, 0x000000,
- 0x67e00a, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x67ea01,
- 0x000000, 0x67eb02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x67ed01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x67ee02, 0x67f002, 0x67f203, 0x67f502,
- 0x000000, 0x000000, 0x000000, 0x67f704, 0x67fb01, 0x000000, 0x67fc06, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x680202, 0x000000, 0x680401, 0x000000,
- 0x000000, 0x680502, 0x000000, 0x000000, 0x68070b, 0x681201, 0x000000, 0x000000,
- 0x000000, 0x681302, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x681501, 0x681603, 0x000000, 0x000000, 0x000000,
- 0x681906, 0x000000, 0x000000, 0x681f07, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x682607, 0x682d01, 0x682e0e, 0x000000, 0x000000, 0x000000, 0x683c01, 0x683d01,
- 0x683e02, 0x000000, 0x684037, 0x000000, 0x000000, 0x000000, 0x000000, 0x687701,
- 0x000000, 0x687802, 0x000000, 0x687a01, 0x687b01, 0x000000, 0x687c01, 0x687d01,
- 0x687e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x687f03, 0x688201, 0x000000,
- 0x000000, 0x000000, 0x68830d, 0x689005, 0x000000, 0x000000, 0x000000, 0x689501,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x689602, 0x000000, 0x689801,
- 0x689908, 0x000000, 0x68a101, 0x000000, 0x000000, 0x000000, 0x68a201, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x68a301, 0x000000, 0x000000, 0x68a402,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x68a601, 0x000000, 0x68a701,
- 0x68a801, 0x000000, 0x000000, 0x000000, 0x68a903, 0x000000, 0x68ac01, 0x68ad02,
- 0x000000, 0x000000, 0x000000, 0x68af03, 0x000000, 0x000000, 0x68b201, 0x000000,
- 0x68b301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x68b403, 0x000000, 0x000000, 0x68b701, 0x000000, 0x000000,
- 0x68b803, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x68bb0d, 0x000000, 0x68c801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x68c901, 0x000000, 0x000000, 0x68ca02, 0x68cc05, 0x68d101,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x68d20e, 0x000000, 0x000000, 0x68e002,
- 0x000000, 0x68e201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x68e301, 0x000000, 0x68e404, 0x68e801, 0x000000,
- 0x68e901, 0x000000, 0x68ea11, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x68fb02, 0x000000, 0x68fd04, 0x690101, 0x690207, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x690904, 0x690d01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x690e01, 0x690f04, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x69130b, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x691e02, 0x692001, 0x692101, 0x692201, 0x692303, 0x692602, 0x000000, 0x000000,
- 0x000000, 0x692801, 0x692903, 0x000000, 0x000000, 0x692c03, 0x000000, 0x000000,
- 0x000000, 0x692f01, 0x000000, 0x000000, 0x693001, 0x693101, 0x000000, 0x000000,
- 0x000000, 0x693201, 0x000000, 0x693301, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x693404, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x693806, 0x000000, 0x000000, 0x693e01, 0x000000, 0x000000, 0x693f02, 0x000000,
- 0x000000, 0x000000, 0x69410a, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x694b02, 0x000000, 0x694d05, 0x000000, 0x000000, 0x695202,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x695404,
- 0x000000, 0x695801, 0x695902, 0x695b01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x695c01, 0x000000, 0x695d04, 0x000000, 0x696102, 0x000000, 0x696302,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x696504, 0x000000,
- 0x696901, 0x696a03, 0x000000, 0x696d0d, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x697a03, 0x697d01, 0x000000, 0x000000, 0x697e03, 0x698102, 0x698301, 0x698401,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x698501, 0x698603, 0x698901, 0x000000, 0x698a06, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x699001, 0x000000, 0x000000, 0x000000, 0x699103, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x699401, 0x699501, 0x699603, 0x699902, 0x000000,
- 0x000000, 0x699b01, 0x699c01, 0x000000, 0x000000, 0x000000, 0x699d04, 0x69a102,
- 0x000000, 0x000000, 0x000000, 0x69a301, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x69a401, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x69a501, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x69a602, 0x69a801, 0x000000, 0x69a901, 0x000000, 0x000000,
- 0x000000, 0x69aa01, 0x69ab03, 0x000000, 0x69ae01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x69af02, 0x69b101, 0x69b202, 0x000000, 0x69b403, 0x000000, 0x69b705, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x69bc01, 0x000000, 0x000000, 0x69bd02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x69bf04,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x69c302, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x69c501, 0x000000,
- 0x69c602, 0x000000, 0x000000, 0x000000, 0x69c801, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x69c901, 0x000000, 0x69ca03, 0x69cd01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x69ce01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x69cf02, 0x69d104, 0x000000, 0x69d501, 0x000000, 0x000000, 0x69d604,
- 0x000000, 0x69da03, 0x69dd01, 0x000000, 0x000000, 0x000000, 0x69de02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x69e001, 0x000000, 0x000000, 0x000000, 0x69e101,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x69e201, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x69e309, 0x69ec01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x69ed06, 0x000000, 0x000000, 0x69f302, 0x000000, 0x69f504, 0x000000,
- 0x000000, 0x69f901, 0x69fa10, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x6a0a01, 0x000000, 0x000000, 0x000000, 0x000000, 0x6a0b01, 0x6a0c01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x6a0d01, 0x6a0e01, 0x000000, 0x6a0f07,
- 0x000000, 0x6a1605, 0x000000, 0x000000, 0x000000, 0x6a1b0b, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6a260e, 0x000000, 0x6a3402,
- 0x000000, 0x000000, 0x6a3602, 0x000000, 0x6a3802, 0x000000, 0x6a3a03, 0x000000,
- 0x6a3d02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6a3f02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6a4101, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6a4201, 0x000000, 0x000000, 0x6a4302, 0x000000, 0x000000, 0x6a4501, 0x000000,
- 0x6a4602, 0x000000, 0x000000, 0x000000, 0x000000, 0x6a4804, 0x000000, 0x000000,
- 0x000000, 0x6a4c03, 0x000000, 0x000000, 0x6a4f03, 0x6a5201, 0x6a5302, 0x6a5501,
- 0x6a5601, 0x000000, 0x6a5701, 0x000000, 0x6a5801, 0x6a5907, 0x000000, 0x000000,
- 0x6a6002, 0x000000, 0x000000, 0x000000, 0x000000, 0x6a6202, 0x000000, 0x6a6401,
- 0x000000, 0x6a6501, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6a6603, 0x000000, 0x6a6901, 0x6a6a07, 0x000000, 0x6a7101, 0x000000, 0x000000,
- 0x000000, 0x6a7202, 0x000000, 0x6a7401, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x6a7501, 0x6a7603, 0x6a7901, 0x000000, 0x000000, 0x000000, 0x6a7a08,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6a8209, 0x000000,
- 0x6a8b02, 0x6a8d12, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6a9f01, 0x6aa004, 0x6aa401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x6aa50a, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6aaf01, 0x6ab005, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x6ab502, 0x000000, 0x6ab709, 0x000000, 0x6ac001, 0x000000,
- 0x6ac101, 0x6ac201, 0x000000, 0x6ac308, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6acb08, 0x000000, 0x000000, 0x000000, 0x6ad302, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6ad501, 0x000000, 0x6ad604, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x6ada03, 0x000000, 0x000000, 0x6add01, 0x6ade02, 0x6ae004,
- 0x000000, 0x000000, 0x000000, 0x6ae402, 0x000000, 0x6ae609, 0x000000, 0x6aef02,
- 0x6af101, 0x000000, 0x000000, 0x6af211, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x6b0301, 0x000000, 0x6b0407, 0x6b0b04, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6b0f2d, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6b3c03, 0x000000, 0x000000, 0x000000, 0x6b3f02, 0x000000, 0x000000, 0x000000,
- 0x6b4101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6b4201, 0x000000, 0x000000, 0x000000, 0x6b4301, 0x000000, 0x000000, 0x6b4404,
- 0x000000, 0x6b4802, 0x6b4a02, 0x000000, 0x000000, 0x6b4c01, 0x000000, 0x6b4d01,
- 0x000000, 0x6b4e06, 0x000000, 0x6b5405, 0x6b5902, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6b5b01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x6b5c08, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6b6401, 0x000000, 0x6b6508, 0x6b6d09, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6b7615, 0x6b8b01, 0x000000, 0x000000, 0x000000, 0x6b8c0c, 0x6b9801, 0x000000,
- 0x000000, 0x000000, 0x6b9901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6b9a02, 0x000000, 0x000000,
- 0x6b9c01, 0x6b9d01, 0x000000, 0x6b9e04, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6ba210, 0x000000, 0x000000, 0x6bb202, 0x000000,
- 0x6bb401, 0x6bb501, 0x6bb602, 0x6bb801, 0x000000, 0x6bb901, 0x000000, 0x000000,
- 0x6bba06, 0x6bc001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6bc102,
- 0x000000, 0x000000, 0x6bc301, 0x6bc407, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6bcb04, 0x000000, 0x000000, 0x6bcf08, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6bd702,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6bd908, 0x000000, 0x000000, 0x000000, 0x6be102,
- 0x000000, 0x000000, 0x6be30b, 0x000000, 0x000000, 0x000000, 0x6bee01, 0x000000,
- 0x000000, 0x6bef02, 0x6bf102, 0x000000, 0x6bf302, 0x6bf505, 0x000000, 0x000000,
- 0x000000, 0x6bfa01, 0x000000, 0x6bfb05, 0x6c0002, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x6c0209, 0x6c0b01, 0x000000, 0x6c0c01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6c0d02, 0x000000, 0x000000,
- 0x6c0f01, 0x000000, 0x6c1004, 0x000000, 0x000000, 0x000000, 0x6c1402, 0x000000,
- 0x6c1602, 0x000000, 0x000000, 0x000000, 0x6c1801, 0x6c1908, 0x000000, 0x000000,
- 0x000000, 0x6c211d, 0x000000, 0x000000, 0x000000, 0x6c3e01, 0x000000, 0x6c3f01,
- 0x6c4006, 0x6c4601, 0x6c4708, 0x000000, 0x000000, 0x6c4f01, 0x000000, 0x6c5002,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x6c5201, 0x000000, 0x000000, 0x6c5301, 0x000000, 0x6c5405, 0x000000,
- 0x6c5904, 0x000000, 0x000000, 0x000000, 0x6c5d01, 0x000000, 0x000000, 0x000000,
- 0x6c5e01, 0x6c5f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6c6001, 0x6c6101, 0x000000, 0x000000, 0x000000, 0x6c6201, 0x6c6303, 0x6c6601,
- 0x6c6710, 0x000000, 0x000000, 0x000000, 0x6c7702, 0x6c7904, 0x000000, 0x000000,
- 0x000000, 0x6c7d01, 0x6c7e01, 0x000000, 0x6c7f01, 0x6c8004, 0x000000, 0x000000,
- 0x6c8403, 0x000000, 0x6c8702, 0x000000, 0x6c8905, 0x000000, 0x000000, 0x6c8e01,
- 0x000000, 0x6c8f01, 0x6c900b, 0x6c9b08, 0x000000, 0x6ca301, 0x6ca401, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6ca50b,
- 0x000000, 0x6cb002, 0x000000, 0x6cb201, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6cb321, 0x6cd401, 0x6cd502, 0x000000, 0x000000, 0x000000, 0x6cd701, 0x000000,
- 0x000000, 0x000000, 0x6cd813, 0x6ceb05, 0x000000, 0x6cf001, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6cf101, 0x000000, 0x6cf201, 0x000000, 0x000000,
- 0x000000, 0x6cf305, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6cf801,
- 0x6cf901, 0x000000, 0x000000, 0x6cfa02, 0x000000, 0x000000, 0x000000, 0x6cfc04,
- 0x6d000f, 0x000000, 0x000000, 0x6d0f01, 0x000000, 0x000000, 0x6d1001, 0x000000,
- 0x6d1109, 0x000000, 0x000000, 0x000000, 0x6d1a03, 0x6d1d07, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6d2401, 0x000000, 0x6d2503, 0x000000, 0x6d2802, 0x000000, 0x6d2a07, 0x6d3106,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x6d3703, 0x6d3a01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6d3b01, 0x6d3c02,
- 0x000000, 0x000000, 0x000000, 0x6d3e02, 0x000000, 0x6d4006, 0x6d4601, 0x000000,
- 0x6d4701, 0x6d4804, 0x000000, 0x6d4c02, 0x000000, 0x6d4e44, 0x6d9201, 0x6d9304,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6d9702, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x6d9901, 0x6d9a02, 0x000000, 0x000000,
- 0x6d9c02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6d9e03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6da103,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6da401, 0x6da502,
- 0x6da701, 0x000000, 0x6da801, 0x000000, 0x000000, 0x6da901, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x6daa03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x6dad07, 0x000000, 0x000000, 0x000000, 0x000000, 0x6db401,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x6db502, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6db702, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x6db907, 0x000000, 0x6dc011, 0x6dd101,
- 0x6dd201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6dd302, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6dd50b, 0x000000,
- 0x6de002, 0x000000, 0x6de204, 0x000000, 0x000000, 0x6de605, 0x000000, 0x000000,
- 0x000000, 0x6deb01, 0x6dec05, 0x000000, 0x000000, 0x000000, 0x6df106, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6df703, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6dfa02, 0x6dfc04, 0x6e0005, 0x000000, 0x000000, 0x000000, 0x000000, 0x6e0501,
- 0x000000, 0x6e0605, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6e0b01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x6e0c02, 0x000000, 0x000000, 0x6e0e03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x6e110a, 0x6e1b02, 0x000000, 0x6e1d01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x6e1e02, 0x000000, 0x6e200d, 0x6e2d01, 0x000000, 0x000000,
- 0x6e2e02, 0x6e3002, 0x000000, 0x6e3202, 0x000000, 0x6e3402, 0x000000, 0x000000,
- 0x000000, 0x6e3601, 0x6e3701, 0x6e3805, 0x000000, 0x6e3d01, 0x000000, 0x6e3e02,
- 0x6e4001, 0x000000, 0x000000, 0x000000, 0x6e4101, 0x000000, 0x6e4202, 0x6e4403,
- 0x6e4703, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x6e4a06, 0x000000, 0x6e5001, 0x000000, 0x000000, 0x6e5101,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x6e5202, 0x000000, 0x000000, 0x000000,
- 0x6e5403, 0x000000, 0x000000, 0x000000, 0x6e5702, 0x6e5901, 0x000000, 0x6e5a01,
- 0x6e5b01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6e5c01,
- 0x000000, 0x000000, 0x6e5d01, 0x6e5e01, 0x000000, 0x000000, 0x6e5f02, 0x000000,
- 0x000000, 0x6e6101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6e6201,
- 0x000000, 0x000000, 0x6e6301, 0x000000, 0x000000, 0x6e6401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x6e6501, 0x6e6601, 0x000000, 0x000000, 0x6e6702, 0x000000,
- 0x000000, 0x000000, 0x6e6902, 0x000000, 0x6e6b01, 0x6e6c01, 0x000000, 0x6e6d02,
- 0x6e6f02, 0x6e7103, 0x000000, 0x6e7401, 0x6e7501, 0x000000, 0x000000, 0x000000,
- 0x6e7601, 0x000000, 0x6e7701, 0x6e7802, 0x6e7a09, 0x000000, 0x6e8302, 0x000000,
- 0x6e8503, 0x000000, 0x6e8802, 0x000000, 0x000000, 0x000000, 0x000000, 0x6e8a01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6e8b01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6e8c01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6e8d01, 0x6e8e01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x6e8f01, 0x000000, 0x000000, 0x6e9007, 0x000000, 0x6e9701, 0x000000,
- 0x6e9801, 0x6e9901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x6e9a05, 0x000000, 0x000000, 0x000000, 0x6e9f01, 0x6ea007, 0x000000, 0x000000,
- 0x6ea701, 0x000000, 0x000000, 0x000000, 0x6ea809, 0x6eb101, 0x000000, 0x6eb205,
- 0x000000, 0x000000, 0x6eb703, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6eba01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x6ebb3f, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x6efa01, 0x000000, 0x6efb01, 0x6efc03, 0x000000, 0x6eff04,
- 0x000000, 0x000000, 0x000000, 0x6f0301, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x6f0402, 0x000000, 0x000000, 0x000000, 0x000000, 0x6f0601, 0x000000,
- 0x000000, 0x000000, 0x6f0704, 0x000000, 0x000000, 0x6f0b01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6f0c02, 0x000000, 0x000000, 0x000000, 0x6f0e03,
- 0x6f1118, 0x000000, 0x6f2906, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6f2f01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6f3002, 0x000000, 0x6f3204, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x6f3603, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x6f3906, 0x000000, 0x6f3f01, 0x000000, 0x6f4004, 0x000000, 0x000000,
- 0x6f4401, 0x000000, 0x000000, 0x000000, 0x000000, 0x6f4502, 0x6f4701, 0x000000,
- 0x000000, 0x6f4803, 0x000000, 0x000000, 0x000000, 0x000000, 0x6f4b03, 0x000000,
- 0x000000, 0x000000, 0x6f4e02, 0x000000, 0x6f5002, 0x000000, 0x6f5201, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x6f5302, 0x000000, 0x000000, 0x6f5501, 0x6f5605,
- 0x000000, 0x000000, 0x000000, 0x6f5b02, 0x000000, 0x000000, 0x000000, 0x6f5d02,
- 0x000000, 0x000000, 0x6f5f01, 0x6f6001, 0x6f6107, 0x6f6805, 0x000000, 0x6f6d01,
- 0x000000, 0x6f6e01, 0x6f6f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x6f7003,
- 0x000000, 0x000000, 0x6f7305, 0x000000, 0x000000, 0x6f7801, 0x6f7901, 0x000000,
- 0x000000, 0x000000, 0x6f7a09, 0x000000, 0x6f8305, 0x000000, 0x6f8801, 0x6f8906,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x6f8f03, 0x6f9201, 0x000000, 0x000000,
- 0x6f9301, 0x000000, 0x000000, 0x000000, 0x000000, 0x6f9401, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6f9502, 0x6f9701, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6f9801, 0x000000, 0x000000,
- 0x000000, 0x6f9902, 0x000000, 0x6f9b01, 0x6f9c02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x6f9e01, 0x000000, 0x000000, 0x000000, 0x000000, 0x6f9f05, 0x6fa407,
- 0x6fab01, 0x000000, 0x000000, 0x6fac01, 0x000000, 0x000000, 0x000000, 0x6fad05,
- 0x6fb203, 0x000000, 0x6fb503, 0x000000, 0x000000, 0x6fb804, 0x000000, 0x000000,
- 0x6fbc09, 0x000000, 0x000000, 0x000000, 0x000000, 0x6fc501, 0x6fc604, 0x6fca01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6fcb06, 0x000000,
- 0x6fd102, 0x000000, 0x000000, 0x6fd303, 0x000000, 0x6fd601, 0x000000, 0x6fd703,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6fda02, 0x000000,
- 0x000000, 0x000000, 0x6fdc01, 0x6fdd01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x6fde04, 0x000000, 0x6fe209, 0x000000, 0x000000, 0x6feb0a, 0x000000,
- 0x000000, 0x000000, 0x6ff508, 0x000000, 0x6ffd01, 0x6ffe01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x6fff01,
- 0x700002, 0x700201, 0x70030f, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x701204, 0x000000, 0x000000, 0x000000, 0x701601, 0x000000,
- 0x000000, 0x000000, 0x701701, 0x000000, 0x701801, 0x701907, 0x000000, 0x702002,
- 0x000000, 0x702201, 0x702302, 0x702501, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x702611, 0x703708, 0x000000, 0x000000, 0x000000,
- 0x703f01, 0x000000, 0x000000, 0x000000, 0x704001, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x704101, 0x000000,
- 0x704202, 0x000000, 0x704401, 0x000000, 0x000000, 0x704503, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x704804, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x704c01, 0x704d02, 0x704f02, 0x705102, 0x705301, 0x000000, 0x705402, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x705601, 0x705702, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x705902, 0x000000, 0x000000, 0x000000, 0x705b02,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x705d01, 0x000000,
- 0x705e01, 0x705f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x706001, 0x706101,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x706201, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x706301, 0x000000, 0x706409,
- 0x000000, 0x706d02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x706f01, 0x000000, 0x707001, 0x000000, 0x707101, 0x000000, 0x000000, 0x000000,
- 0x70720a, 0x000000, 0x000000, 0x000000, 0x707c02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x707e02, 0x000000, 0x000000, 0x708001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x708103, 0x000000, 0x708401, 0x000000, 0x000000,
- 0x708501, 0x000000, 0x000000, 0x708601, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x708702, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x708902, 0x708b04, 0x000000, 0x000000, 0x708f03, 0x709202, 0x000000,
- 0x000000, 0x709405, 0x000000, 0x709910, 0x000000, 0x000000, 0x000000, 0x70a90a,
- 0x70b301, 0x000000, 0x000000, 0x70b401, 0x000000, 0x70b501, 0x70b602, 0x000000,
- 0x000000, 0x000000, 0x70b801, 0x000000, 0x000000, 0x000000, 0x70b909, 0x000000,
- 0x70c201, 0x70c301, 0x70c405, 0x000000, 0x000000, 0x000000, 0x70c906, 0x70cf02,
- 0x70d108, 0x70d902, 0x70db03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x70de03, 0x000000, 0x000000, 0x000000, 0x70e101, 0x70e201,
- 0x000000, 0x000000, 0x000000, 0x70e304, 0x000000, 0x000000, 0x70e702, 0x000000,
- 0x70e901, 0x000000, 0x000000, 0x000000, 0x000000, 0x70ea01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x70eb02, 0x000000, 0x000000, 0x000000,
- 0x70ed04, 0x000000, 0x70f101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x70f201, 0x70f303, 0x70f601, 0x000000, 0x000000, 0x70f701,
- 0x000000, 0x70f803, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x70fb02, 0x000000, 0x000000, 0x000000, 0x000000, 0x70fd03,
- 0x710001, 0x000000, 0x000000, 0x000000, 0x710106, 0x000000, 0x710703, 0x000000,
- 0x710a03, 0x000000, 0x000000, 0x000000, 0x000000, 0x710d0e, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x711b0a, 0x000000, 0x000000, 0x000000,
- 0x712501, 0x000000, 0x000000, 0x000000, 0x000000, 0x712601, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x712703,
- 0x000000, 0x712a04, 0x000000, 0x712e01, 0x712f06, 0x000000, 0x713501, 0x713601,
- 0x000000, 0x000000, 0x713705, 0x713c07, 0x714301, 0x714401, 0x714501, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x714601, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x714701, 0x000000, 0x714808, 0x000000, 0x000000,
- 0x000000, 0x715002, 0x000000, 0x000000, 0x71520a, 0x000000, 0x000000, 0x715c03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x715f01, 0x000000, 0x716001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x71610a, 0x000000, 0x000000, 0x000000,
- 0x716b01, 0x000000, 0x000000, 0x000000, 0x716c01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x716d07, 0x000000, 0x717402, 0x000000, 0x717604, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x717a03,
- 0x000000, 0x000000, 0x000000, 0x717d02, 0x717f06, 0x718508, 0x000000, 0x718d0c,
- 0x719901, 0x000000, 0x000000, 0x000000, 0x719a01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x719b01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x719c03, 0x719f02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x71a107, 0x71a806, 0x000000, 0x000000, 0x000000,
- 0x71ae02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x71b002, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x71b202,
- 0x000000, 0x71b406, 0x000000, 0x000000, 0x000000, 0x71ba05, 0x000000, 0x000000,
- 0x71bf12, 0x000000, 0x000000, 0x71d102, 0x71d30c, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x71df08, 0x000000,
- 0x71e70e, 0x71f502, 0x000000, 0x71f704, 0x000000, 0x000000, 0x71fb01, 0x000000,
- 0x71fc2f, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x722b01, 0x000000, 0x000000, 0x722c01, 0x000000, 0x000000, 0x722d04,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x723107, 0x000000, 0x000000, 0x000000, 0x723804, 0x000000,
- 0x723c03, 0x000000, 0x723f02, 0x000000, 0x724106, 0x724718, 0x725f02, 0x000000,
- 0x726103, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x726401, 0x000000, 0x000000, 0x726505, 0x726a01, 0x726b02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x726d01, 0x000000, 0x726e01, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x726f01, 0x727001, 0x727102, 0x727302, 0x000000, 0x727502,
- 0x000000, 0x000000, 0x727703, 0x727a05, 0x000000, 0x727f0a, 0x000000, 0x000000,
- 0x000000, 0x728901, 0x000000, 0x000000, 0x728a01, 0x000000, 0x000000, 0x728b02,
- 0x728d02, 0x728f07, 0x000000, 0x729603, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x729901, 0x729a02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x729c02, 0x729e01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x729f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x72a001, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x72a101, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x72a201, 0x72a301, 0x72a405, 0x000000,
- 0x000000, 0x72a901, 0x000000, 0x000000, 0x72aa02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x72ac07, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x72b301, 0x000000, 0x72b401, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x72b502, 0x000000, 0x000000, 0x72b70a,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x72c103, 0x000000, 0x72c405, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x72c903, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x72cc01, 0x000000, 0x000000, 0x000000, 0x72cd01, 0x000000,
- 0x000000, 0x72ce06, 0x72d401, 0x000000, 0x72d50e, 0x72e302, 0x72e504, 0x72e901,
- 0x72ea01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x72eb03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x72ee0c, 0x000000, 0x000000, 0x000000, 0x72fa02, 0x000000, 0x000000, 0x000000,
- 0x72fc02, 0x000000, 0x000000, 0x72fe02, 0x000000, 0x730002, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x730203, 0x000000, 0x730504, 0x730902, 0x730b04, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x730f05, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x731403, 0x000000, 0x000000, 0x000000, 0x731704, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x731b05,
- 0x000000, 0x73200d, 0x000000, 0x000000, 0x000000, 0x732d04, 0x000000, 0x000000,
- 0x000000, 0x733101, 0x000000, 0x000000, 0x000000, 0x733201, 0x733305, 0x000000,
- 0x000000, 0x733801, 0x000000, 0x000000, 0x000000, 0x733901, 0x000000, 0x733a03,
- 0x000000, 0x733d03, 0x734004, 0x000000, 0x734401, 0x000000, 0x000000, 0x000000,
- 0x734502, 0x000000, 0x000000, 0x000000, 0x734704, 0x000000, 0x000000, 0x000000,
- 0x734b02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x734d01, 0x000000, 0x734e01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x734f01, 0x735008, 0x735801, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x735901, 0x000000, 0x000000, 0x735a07,
- 0x736102, 0x000000, 0x736302, 0x000000, 0x000000, 0x000000, 0x736501, 0x000000,
- 0x736601, 0x736703, 0x736a01, 0x000000, 0x000000, 0x736b01, 0x000000, 0x000000,
- 0x000000, 0x736c01, 0x000000, 0x000000, 0x000000, 0x736d02, 0x000000, 0x000000,
- 0x736f06, 0x000000, 0x000000, 0x000000, 0x000000, 0x737503, 0x737801, 0x000000,
- 0x737902, 0x737b01, 0x000000, 0x000000, 0x737c01, 0x000000, 0x000000, 0x737d0c,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x738906, 0x738f02, 0x739105, 0x739602, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x739801, 0x739903, 0x000000, 0x000000, 0x739c10, 0x000000,
- 0x000000, 0x73ac01, 0x000000, 0x73ad01, 0x000000, 0x73ae01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x73af01, 0x73b008, 0x000000, 0x000000, 0x73b807, 0x000000,
- 0x000000, 0x000000, 0x73bf01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x73c001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x73c101, 0x73c202, 0x73c401, 0x000000, 0x73c503, 0x000000, 0x73c802, 0x73ca01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x73cb01, 0x000000,
- 0x73cc04, 0x000000, 0x73d001, 0x000000, 0x000000, 0x000000, 0x73d103, 0x000000,
- 0x73d403, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x73d703,
- 0x73da01, 0x000000, 0x000000, 0x73db01, 0x000000, 0x000000, 0x000000, 0x73dc03,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x73df07, 0x000000, 0x000000,
- 0x000000, 0x73e602, 0x73e802, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x73ea02, 0x000000, 0x73ec02, 0x73ee05, 0x000000, 0x000000,
- 0x73f301, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x73f402, 0x000000,
- 0x000000, 0x000000, 0x73f601, 0x000000, 0x000000, 0x000000, 0x73f701, 0x000000,
- 0x73f801, 0x73f90a, 0x740301, 0x000000, 0x740401, 0x000000, 0x000000, 0x000000,
- 0x740504, 0x000000, 0x74090e, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x741701, 0x000000, 0x741806, 0x000000, 0x741e06, 0x000000,
- 0x742401, 0x742510, 0x000000, 0x74350b, 0x744002, 0x000000, 0x744201, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x744301, 0x000000, 0x000000, 0x744406,
- 0x000000, 0x000000, 0x000000, 0x744a01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x744b01, 0x000000, 0x000000, 0x000000, 0x744c01, 0x744d01, 0x744e2f, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x747d02, 0x000000, 0x000000, 0x000000, 0x747f01, 0x000000,
- 0x748002, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x748202, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x748403,
- 0x000000, 0x748702, 0x748901, 0x000000, 0x000000, 0x748a02, 0x000000, 0x000000,
- 0x748c01, 0x748d05, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x749201, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x749301, 0x749404, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x749814, 0x000000, 0x000000, 0x74ac03,
- 0x74af12, 0x74c10f, 0x74d002, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x74d20e, 0x74e001, 0x000000, 0x74e101, 0x000000, 0x000000, 0x74e203, 0x74e512,
- 0x74f702, 0x74f901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x74fa01, 0x74fb03, 0x000000, 0x000000, 0x000000, 0x74fe02, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x750003, 0x000000, 0x000000, 0x750301,
- 0x000000, 0x750405, 0x000000, 0x000000, 0x750909, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x751201, 0x000000, 0x000000, 0x000000, 0x751306, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x751901, 0x000000, 0x751a0d, 0x75270f, 0x753601,
- 0x753702, 0x753903, 0x000000, 0x000000, 0x000000, 0x753c01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x753d02, 0x753f01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x754006,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x754608, 0x754e02, 0x000000,
- 0x000000, 0x755001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x755104, 0x000000, 0x755501, 0x000000,
- 0x755601, 0x000000, 0x75571b, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x757201, 0x757301, 0x000000, 0x000000, 0x000000, 0x757403, 0x000000,
- 0x757701, 0x000000, 0x000000, 0x000000, 0x757802, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x757a04, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x757e01, 0x000000, 0x000000, 0x757f02, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x758102, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x758306, 0x758901, 0x000000,
- 0x000000, 0x758a07, 0x000000, 0x000000, 0x000000, 0x000000, 0x759114, 0x75a501,
- 0x000000, 0x75a602, 0x000000, 0x75a809, 0x75b101, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x75b201, 0x75b301, 0x75b402, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x75b601, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x75b701,
- 0x000000, 0x000000, 0x75b801, 0x75b901, 0x000000, 0x000000, 0x000000, 0x75ba07,
- 0x75c101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x75c201, 0x000000,
- 0x000000, 0x75c303, 0x75c611, 0x000000, 0x000000, 0x000000, 0x75d704, 0x000000,
- 0x75db01, 0x75dc07, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x75e301, 0x75e40b, 0x000000, 0x75ef02, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x75f102, 0x75f303, 0x000000,
- 0x000000, 0x75f603, 0x000000, 0x000000, 0x75f901, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x75fa0a, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x760403, 0x000000, 0x000000, 0x000000,
- 0x760701, 0x000000, 0x000000, 0x760801, 0x000000, 0x000000, 0x000000, 0x760901,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x760a01, 0x000000, 0x760b02, 0x000000,
- 0x760d05, 0x761204, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x761602,
- 0x000000, 0x000000, 0x761802, 0x761a03, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x761d02, 0x000000, 0x761f03, 0x762202, 0x762405, 0x000000, 0x762902, 0x762b11,
- 0x000000, 0x000000, 0x000000, 0x763c02, 0x000000, 0x000000, 0x763e01, 0x763f06,
- 0x000000, 0x000000, 0x000000, 0x764502, 0x764702, 0x000000, 0x000000, 0x764902,
- 0x000000, 0x764b0a, 0x000000, 0x765501, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x765601, 0x765702, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x765901,
- 0x765a03, 0x765d02, 0x765f02, 0x76610a, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x766b01, 0x766c01, 0x000000, 0x000000, 0x000000, 0x766d01,
- 0x000000, 0x000000, 0x000000, 0x766e01, 0x000000, 0x766f02, 0x767104, 0x767501,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x767605, 0x000000, 0x767b10,
- 0x768b01, 0x768c07, 0x000000, 0x000000, 0x769301, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x769401, 0x000000, 0x769501,
- 0x000000, 0x769601, 0x769705, 0x000000, 0x000000, 0x769c01, 0x769d0c, 0x76a901,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x76aa02, 0x000000, 0x000000, 0x76ac04,
- 0x000000, 0x76b003, 0x000000, 0x76b309, 0x76bc04, 0x000000, 0x000000, 0x000000,
- 0x76c002, 0x000000, 0x000000, 0x000000, 0x000000, 0x76c201, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x76c301, 0x000000, 0x000000, 0x76c401, 0x000000,
- 0x76c502, 0x76c701, 0x000000, 0x76c801, 0x000000, 0x76c907, 0x000000, 0x000000,
- 0x000000, 0x76d001, 0x000000, 0x000000, 0x76d101, 0x76d201, 0x000000, 0x76d304,
- 0x000000, 0x76d703, 0x000000, 0x000000, 0x000000, 0x76da03, 0x76dd02, 0x76df01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x76e003, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x76e301, 0x000000, 0x76e401, 0x76e503, 0x000000,
- 0x76e801, 0x76e903, 0x000000, 0x000000, 0x000000, 0x76ec07, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x76f304, 0x76f701, 0x76f801, 0x000000, 0x000000, 0x000000,
- 0x76f906, 0x000000, 0x76ff03, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x770202, 0x000000, 0x770408, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x770c07, 0x000000, 0x000000, 0x771301, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x771401, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x771501, 0x77160a, 0x772001, 0x772107, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x772803, 0x000000,
- 0x772b01, 0x000000, 0x000000, 0x000000, 0x772c01, 0x772d04, 0x000000, 0x773102,
- 0x773307, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x773a01, 0x000000, 0x773b01, 0x000000,
- 0x773c0c, 0x000000, 0x000000, 0x000000, 0x000000, 0x774801, 0x000000, 0x000000,
- 0x77490f, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x775802, 0x000000,
- 0x000000, 0x775a01, 0x775b02, 0x775d01, 0x775e01, 0x775f01, 0x000000, 0x000000,
- 0x776001, 0x000000, 0x776101, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x776207, 0x776901, 0x776a0f, 0x000000, 0x777901,
- 0x777a03, 0x000000, 0x000000, 0x777d04, 0x000000, 0x000000, 0x778111, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x779201, 0x77930b, 0x779e0b, 0x77a902, 0x000000,
- 0x000000, 0x77ab04, 0x77af0f, 0x77be01, 0x77bf01, 0x000000, 0x77c001, 0x000000,
- 0x000000, 0x77c10b, 0x77cc01, 0x000000, 0x77cd06, 0x000000, 0x77d302, 0x77d501,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x77d610,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x77e603, 0x000000, 0x000000, 0x77e902, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x77eb01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x77ec01, 0x000000, 0x77ed01, 0x77ee04, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x77f202, 0x000000, 0x000000, 0x000000, 0x77f401, 0x000000, 0x000000, 0x77f509,
- 0x77fe0a, 0x780802, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x780a02, 0x000000, 0x000000, 0x780c01, 0x000000,
- 0x000000, 0x000000, 0x780d02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x780f01, 0x781003, 0x000000, 0x000000, 0x000000, 0x781303, 0x000000, 0x000000,
- 0x000000, 0x781603, 0x000000, 0x781901, 0x000000, 0x781a01, 0x781b03, 0x000000,
- 0x000000, 0x781e01, 0x781f01, 0x782001, 0x000000, 0x000000, 0x000000, 0x782106,
- 0x000000, 0x000000, 0x782703, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x782a01, 0x000000, 0x782b02, 0x000000, 0x000000, 0x782d03,
- 0x000000, 0x783001, 0x783101, 0x783203, 0x783503, 0x783802, 0x000000, 0x000000,
- 0x783a01, 0x783b01, 0x783c09, 0x000000, 0x000000, 0x000000, 0x000000, 0x784502,
- 0x000000, 0x000000, 0x000000, 0x784712, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x785902, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x785b07, 0x786204, 0x000000, 0x000000, 0x786601, 0x786701, 0x000000, 0x786802,
- 0x000000, 0x786a01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x786b02, 0x000000, 0x000000, 0x786d04, 0x000000, 0x000000, 0x000000, 0x787101,
- 0x000000, 0x787202, 0x000000, 0x787401, 0x787507, 0x000000, 0x787c01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x787d01, 0x787e02, 0x000000, 0x000000,
- 0x788002, 0x000000, 0x788201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x788306, 0x788901, 0x000000, 0x000000, 0x788a06, 0x000000, 0x789001, 0x000000,
- 0x000000, 0x789102, 0x000000, 0x000000, 0x789301, 0x000000, 0x000000, 0x78940c,
- 0x000000, 0x000000, 0x000000, 0x78a002, 0x78a206, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x78a802, 0x000000, 0x78aa03, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x78ad01, 0x000000, 0x78ae02, 0x000000, 0x78b001, 0x000000, 0x78b106,
- 0x000000, 0x000000, 0x000000, 0x78b702, 0x78b903, 0x000000, 0x78bc01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x78bd05, 0x000000, 0x000000,
- 0x000000, 0x78c212, 0x78d409, 0x78dd01, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x78de02, 0x000000, 0x000000, 0x78e001, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x78e101, 0x000000, 0x000000, 0x78e208, 0x000000, 0x000000,
- 0x78ea01, 0x78eb04, 0x000000, 0x000000, 0x78ef01, 0x000000, 0x000000, 0x78f001,
- 0x78f104, 0x78f503, 0x000000, 0x000000, 0x78f805, 0x78fd02, 0x000000, 0x000000,
- 0x000000, 0x78ff01, 0x000000, 0x000000, 0x790001, 0x000000, 0x790104, 0x79050c,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x791101,
- 0x791203, 0x791502, 0x000000, 0x791701, 0x000000, 0x000000, 0x791802, 0x000000,
- 0x000000, 0x791a02, 0x791c01, 0x000000, 0x000000, 0x791d05, 0x792203, 0x000000,
- 0x000000, 0x792502, 0x000000, 0x792702, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x792902, 0x000000, 0x000000, 0x792b03, 0x792e01, 0x792f01, 0x793002, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x793201, 0x793301, 0x793403,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x793704, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x793b01, 0x793c01, 0x793d03, 0x000000, 0x000000, 0x000000,
- 0x794002, 0x794202, 0x794402, 0x000000, 0x794601, 0x000000, 0x000000, 0x000000,
- 0x794701, 0x000000, 0x794804, 0x000000, 0x000000, 0x000000, 0x794c01, 0x794d01,
- 0x794e08, 0x000000, 0x000000, 0x795603, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x795902, 0x000000, 0x795b03, 0x795e01, 0x000000, 0x000000, 0x000000,
- 0x795f01, 0x796002, 0x000000, 0x000000, 0x000000, 0x000000, 0x796201, 0x000000,
- 0x000000, 0x796301, 0x000000, 0x000000, 0x000000, 0x796402, 0x796601, 0x000000,
- 0x796707, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x796e37, 0x000000, 0x79a502, 0x000000, 0x79a701,
- 0x000000, 0x000000, 0x79a801, 0x79a901, 0x79aa02, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x79ac02, 0x000000, 0x79ae01, 0x79af0a, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x79b909, 0x79c203,
- 0x79c501, 0x79c601, 0x000000, 0x000000, 0x000000, 0x79c703, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x79ca07, 0x000000, 0x000000,
- 0x000000, 0x79d106, 0x000000, 0x000000, 0x000000, 0x79d703, 0x79da01, 0x000000,
- 0x000000, 0x79db02, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x79dd01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x79de06, 0x000000, 0x000000, 0x000000, 0x79e406, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x79ea04, 0x79ee10, 0x000000, 0x000000, 0x000000, 0x000000, 0x79fe01,
- 0x000000, 0x79ff01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x7a0003, 0x7a0311, 0x7a1401, 0x000000,
- 0x7a1501, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7a1602,
- 0x000000, 0x000000, 0x7a1801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x7a1901, 0x7a1a01, 0x000000, 0x000000,
- 0x7a1b01, 0x000000, 0x7a1c01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x7a1d01, 0x7a1e01, 0x000000, 0x000000, 0x7a1f02, 0x000000, 0x7a2101, 0x000000,
- 0x7a220e, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7a3001, 0x000000,
- 0x7a3102, 0x000000, 0x7a3301, 0x000000, 0x000000, 0x7a3402, 0x7a3601, 0x7a3702,
- 0x000000, 0x000000, 0x7a3902, 0x000000, 0x000000, 0x000000, 0x7a3b03, 0x7a3e04,
- 0x000000, 0x7a4201, 0x000000, 0x7a4302, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x7a4501, 0x000000, 0x000000, 0x000000, 0x000000, 0x7a4601, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7a4701, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x7a4803, 0x7a4b01, 0x7a4c06, 0x7a5202, 0x000000,
- 0x7a5406, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7a5a01, 0x000000,
- 0x7a5b01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7a5c02, 0x7a5e04,
- 0x000000, 0x000000, 0x7a6202, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x7a6403, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7a6701, 0x000000,
- 0x000000, 0x7a6801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x7a6901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7a6a03, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7a6d03, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x7a7002, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x7a7201, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x7a7302, 0x000000, 0x000000, 0x7a7501, 0x7a7601, 0x000000,
- 0x7a7702, 0x000000, 0x000000, 0x7a7901, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x7a7a01, 0x000000, 0x000000, 0x7a7b07, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7a8209, 0x000000,
- 0x7a8b01, 0x000000, 0x000000, 0x7a8c03, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7a8f0c, 0x000000, 0x7a9b01,
- 0x000000, 0x7a9c03, 0x000000, 0x7a9f09, 0x000000, 0x7aa804, 0x000000, 0x7aac02,
- 0x7aae01, 0x7aaf01, 0x000000, 0x7ab004, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x7ab402, 0x7ab601, 0x000000, 0x000000, 0x000000, 0x7ab702,
- 0x7ab904, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7abd01,
- 0x7abe01, 0x000000, 0x000000, 0x7abf01, 0x000000, 0x7ac007, 0x7ac701, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x7ac801, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x7ac901, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x7aca03, 0x000000, 0x000000, 0x000000, 0x000000, 0x7acd04, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x7ad102, 0x000000, 0x7ad304, 0x000000, 0x7ad703, 0x000000, 0x000000, 0x7ada01,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x7adb09, 0x000000, 0x7ae404, 0x7ae801,
- 0x000000, 0x000000, 0x7ae901, 0x000000, 0x000000, 0x7aea01, 0x000000, 0x000000,
- 0x7aeb01, 0x000000, 0x000000, 0x000000, 0x7aec04, 0x7af003, 0x000000, 0x7af30d,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x7b0001, 0x7b0102, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7b0301, 0x7b0401, 0x7b0507,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x7b0c03, 0x7b0f01, 0x7b1004, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x7b1401, 0x000000, 0x000000, 0x000000, 0x000000, 0x7b1501, 0x000000, 0x000000,
- 0x7b1602, 0x000000, 0x000000, 0x7b1801, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7b1908, 0x000000, 0x7b210e,
- 0x7b2f03, 0x7b3201, 0x7b3301, 0x000000, 0x7b3405, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x7b3907, 0x7b4006, 0x7b4601, 0x000000, 0x000000,
- 0x000000, 0x7b4701, 0x7b4801, 0x7b4902, 0x000000, 0x000000, 0x7b4b03, 0x7b4e02,
- 0x000000, 0x7b5001, 0x000000, 0x000000, 0x000000, 0x7b5101, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x7b5201, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x7b5302, 0x7b5506, 0x7b5b01, 0x7b5c01, 0x000000, 0x000000, 0x7b5d02,
- 0x7b5f01, 0x7b6001, 0x7b6109, 0x7b6a01, 0x000000, 0x7b6b01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x7b6c02, 0x000000, 0x7b6e01, 0x000000, 0x7b6f01, 0x7b7002,
- 0x000000, 0x000000, 0x7b7201, 0x7b7304, 0x000000, 0x000000, 0x7b7702, 0x7b7901,
- 0x000000, 0x000000, 0x000000, 0x7b7a04, 0x000000, 0x7b7e01, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x7b7f01, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x7b8001, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7b8103,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x7b8401, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x7b8503, 0x7b8802, 0x000000, 0x000000, 0x000000, 0x000000, 0x7b8a0e, 0x000000,
- 0x7b9801, 0x000000, 0x000000, 0x7b9901, 0x000000, 0x000000, 0x7b9a01, 0x000000,
- 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x7b9b02, 0x000000, 0x7b9d02, 0x000000, 0x000000, 0x000000, 0x000000, 0x7b9f04,
- 0x000000, 0x000000, 0x000000, 0x7ba305, 0x000000, 0x000000, 0x000000, 0x7ba813,
- 0x000000, 0x000000, 0x7bbb0d, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000,
- 0x000000, 0x000000, 0x7bc802, 0x7bca01, 0x7bcb02, 0x000000, 0x7bcd02, 0x000000,
- 0x000000, 0x000000, 0x7bcf06, 0x000000, 0x7bd501, 0x000000, 0x7bd602, 0x000000,
-};
+static const int kDictNumBits = 15;
+static const uint32_t kDictHashMul32 = 0x1e35a7bd;
+
+static const uint16_t kStaticDictionaryBuckets[32768] = {
+ 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0003,
+ 0x0006, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0014, 0x0000, 0x0000, 0x0000,
+ 0x0015, 0x0000, 0x0016, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0017, 0x0000, 0x0000, 0x0019, 0x0000, 0x001d, 0x0000, 0x0035, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0037, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x003d, 0x004c, 0x0000, 0x0000, 0x0000, 0x005e, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0060, 0x0000, 0x0061, 0x0000, 0x0062, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0063, 0x0065, 0x006a, 0x006c,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x006e, 0x0000, 0x006f, 0x0070, 0x0000,
+ 0x0071, 0x0076, 0x007c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x007d, 0x0080,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0081, 0x0000, 0x0000, 0x0083, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0084, 0x0000, 0x0000, 0x0087, 0x0000, 0x0000,
+ 0x0000, 0x0089, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x008a, 0x008b, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x008e, 0x008f, 0x0090, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0091, 0x0000, 0x0000, 0x0000, 0x0092, 0x0095,
+ 0x0097, 0x0098, 0x0000, 0x0000, 0x0099, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x009a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x009b, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x00a0, 0x00b6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x00b7, 0x0000, 0x0000, 0x0000, 0x00bc, 0x00bd, 0x0000, 0x0000, 0x00c0, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00c2, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x00c5, 0x00ca, 0x00d1, 0x0000, 0x0000, 0x00d2,
+ 0x0000, 0x00e0, 0x0000, 0x0000, 0x0000, 0x00e1, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00e7, 0x0000, 0x0000, 0x0000,
+ 0x00e8, 0x0000, 0x00f0, 0x0000, 0x0000, 0x00f2, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00f4, 0x0000, 0x0000,
+ 0x0000, 0x00f6, 0x0000, 0x0000, 0x00f9, 0x00fb, 0x00fd, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0102, 0x0000, 0x0000, 0x0105, 0x0107, 0x0000, 0x0000, 0x0000,
+ 0x010b, 0x0000, 0x0000, 0x010c, 0x0000, 0x010d, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x010f, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0110, 0x0000, 0x0111, 0x0000, 0x0115, 0x0000, 0x0116, 0x011e,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x011f, 0x0000, 0x0121, 0x0122, 0x0123, 0x0000,
+ 0x0000, 0x0000, 0x0127, 0x0000, 0x0000, 0x0128, 0x0129, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x012a, 0x0000, 0x0000,
+ 0x0000, 0x012b, 0x0000, 0x0000, 0x0131, 0x0000, 0x0144, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0147, 0x0000, 0x0148, 0x0149, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0150, 0x0000, 0x0000, 0x0154, 0x0000, 0x0155, 0x0156, 0x0157, 0x0000, 0x0000,
+ 0x015a, 0x0000, 0x015c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x015d,
+ 0x015f, 0x0000, 0x0000, 0x0163, 0x0000, 0x016b, 0x0000, 0x016c, 0x0000, 0x0170,
+ 0x0171, 0x0000, 0x0172, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0174, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0175, 0x0000, 0x0177, 0x0000, 0x0000, 0x0000, 0x0000, 0x0178,
+ 0x0179, 0x0000, 0x0000, 0x018a, 0x018b, 0x018c, 0x0000, 0x0000, 0x018e, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0190, 0x0000, 0x0000, 0x0198, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x01a4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x01a5, 0x0000,
+ 0x0000, 0x01a6, 0x01a7, 0x0000, 0x0000, 0x01ad, 0x01b3, 0x01b4, 0x01ba, 0x0000,
+ 0x0000, 0x01bb, 0x0000, 0x01bc, 0x01bd, 0x01c5, 0x01c8, 0x0000, 0x01c9, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x01ca, 0x0000, 0x0000, 0x0000, 0x01cb, 0x0000,
+ 0x0000, 0x0000, 0x01cc, 0x0000, 0x01ce, 0x01cf, 0x01d1, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x01d2, 0x01d5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x01d6, 0x0000, 0x0000, 0x0000, 0x01da, 0x0000, 0x01dc, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x01e3, 0x0000, 0x01e5, 0x0000, 0x0000, 0x0000, 0x01e6, 0x0000,
+ 0x0000, 0x01e8, 0x01eb, 0x01ec, 0x0000, 0x0000, 0x01f1, 0x01f3, 0x01f4, 0x0000,
+ 0x01f5, 0x0000, 0x0000, 0x0000, 0x01f9, 0x0000, 0x0000, 0x01fa, 0x0000, 0x0000,
+ 0x0000, 0x01fb, 0x0000, 0x0000, 0x0000, 0x01fd, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x01ff, 0x0200, 0x0207, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0211,
+ 0x0212, 0x0000, 0x0000, 0x0000, 0x0216, 0x0000, 0x0000, 0x0000, 0x0000, 0x021f,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0229,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x022d, 0x0230, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0231, 0x0000, 0x0234, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0235, 0x0236, 0x0000, 0x023f, 0x0000, 0x026b, 0x0000, 0x026c, 0x0000,
+ 0x0000, 0x026f, 0x0270, 0x0000, 0x0000, 0x0000, 0x0271, 0x0000, 0x0000, 0x0272,
+ 0x0273, 0x0000, 0x0000, 0x0274, 0x0000, 0x0000, 0x0000, 0x0000, 0x0276, 0x0000,
+ 0x0277, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0281, 0x0000, 0x0000, 0x0000, 0x0000, 0x0283, 0x0290, 0x029c, 0x0000, 0x0000,
+ 0x0000, 0x02a1, 0x0000, 0x0000, 0x0000, 0x02a2, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x02aa, 0x0000, 0x02af, 0x0000, 0x02b2, 0x0000,
+ 0x02b5, 0x02bb, 0x02bc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x02c0,
+ 0x02c1, 0x0000, 0x0000, 0x0000, 0x0000, 0x02c3, 0x02c6, 0x0000, 0x02c7, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x02d6, 0x0000, 0x0000, 0x02d9, 0x0000, 0x0000, 0x0000,
+ 0x02da, 0x02db, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x02f0, 0x0000, 0x0000,
+ 0x0000, 0x02fa, 0x0000, 0x02fb, 0x0000, 0x0000, 0x02ff, 0x0000, 0x0000, 0x0000,
+ 0x0302, 0x0306, 0x0000, 0x0000, 0x0307, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0308, 0x0000, 0x0000, 0x0000, 0x0309,
+ 0x030f, 0x0000, 0x0000, 0x0000, 0x0311, 0x0314, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0316, 0x0000, 0x0000, 0x0000, 0x0319, 0x0000, 0x0000, 0x0000, 0x0000, 0x031a,
+ 0x0000, 0x0000, 0x0324, 0x0333, 0x0335, 0x0000, 0x033b, 0x0000, 0x0000, 0x0000,
+ 0x0342, 0x0000, 0x0000, 0x0343, 0x0000, 0x0000, 0x0000, 0x0349, 0x0000, 0x034c,
+ 0x0000, 0x0352, 0x0353, 0x035b, 0x0000, 0x035c, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x036a, 0x0000, 0x036c, 0x0000, 0x036d, 0x037a, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x037d, 0x037e, 0x0382,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0383, 0x0000, 0x0000, 0x0000, 0x0384,
+ 0x0388, 0x038a, 0x0000, 0x0000, 0x0000, 0x038b, 0x0000, 0x038c, 0x038d, 0x0000,
+ 0x038e, 0x0000, 0x0000, 0x0000, 0x0000, 0x038f, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0394, 0x0000, 0x0000, 0x0000, 0x039a, 0x039d, 0x0000, 0x03a2, 0x0000,
+ 0x03a6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x03af, 0x0000, 0x0000, 0x03b0,
+ 0x0000, 0x03b9, 0x03ba, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x03bb,
+ 0x0000, 0x03c2, 0x03c3, 0x0000, 0x0000, 0x03d0, 0x0000, 0x0000, 0x03d1, 0x03d2,
+ 0x03d3, 0x03d4, 0x0000, 0x03d5, 0x0000, 0x0000, 0x0000, 0x0000, 0x03d8, 0x0000,
+ 0x0000, 0x03d9, 0x0000, 0x0000, 0x03db, 0x03dd, 0x03df, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x03e0, 0x0000, 0x0000, 0x0000,
+ 0x03e1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x03e4, 0x0000, 0x0000,
+ 0x0000, 0x03e8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x03ea, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x03ed, 0x03ef, 0x0000, 0x0000, 0x0000, 0x03f1, 0x0000, 0x0000,
+ 0x0000, 0x03f2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x03f3, 0x0000,
+ 0x03f4, 0x0000, 0x0000, 0x0000, 0x0000, 0x03f6, 0x03f8, 0x0000, 0x0000, 0x0000,
+ 0x03fc, 0x0000, 0x03fd, 0x0000, 0x0000, 0x0000, 0x0000, 0x03fe, 0x0000, 0x0000,
+ 0x0000, 0x0400, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0401, 0x0000,
+ 0x0000, 0x0402, 0x0403, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0407, 0x0000,
+ 0x0409, 0x0000, 0x0000, 0x0000, 0x0000, 0x040a, 0x0000, 0x0000, 0x0000, 0x040d,
+ 0x0410, 0x0000, 0x0000, 0x0000, 0x0412, 0x0413, 0x0000, 0x0000, 0x041d, 0x0000,
+ 0x041e, 0x0000, 0x0000, 0x0421, 0x0000, 0x0000, 0x0000, 0x0422, 0x0000, 0x0000,
+ 0x0424, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0425, 0x0000,
+ 0x0000, 0x0426, 0x0000, 0x0000, 0x0000, 0x0000, 0x0427, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0428, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0429, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x042a, 0x042b, 0x0000, 0x0000, 0x0000, 0x042d, 0x042e, 0x0430,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0431, 0x0000, 0x0433, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0438, 0x043c, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0440, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0446, 0x0000,
+ 0x0447, 0x0000, 0x0453, 0x0000, 0x0000, 0x0000, 0x0458, 0x045a, 0x0000, 0x045f,
+ 0x0000, 0x0462, 0x0000, 0x0000, 0x0466, 0x0000, 0x0469, 0x0000, 0x046a, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x046c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0478, 0x0000, 0x0000, 0x0479, 0x047a, 0x0000, 0x047c, 0x047d, 0x0000,
+ 0x0000, 0x047e, 0x047f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0480, 0x0000, 0x0481,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0482, 0x0000, 0x048b, 0x0000, 0x0000,
+ 0x0000, 0x048c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x048d, 0x0000, 0x048f,
+ 0x0000, 0x0492, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0493, 0x0494, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0495, 0x0497, 0x0499,
+ 0x0000, 0x04a2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x04ab, 0x0000, 0x0000, 0x04c5, 0x0000, 0x0000, 0x04c8, 0x0000,
+ 0x0000, 0x04cb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x04cc, 0x04cd, 0x0000,
+ 0x0000, 0x04ce, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x04cf, 0x0000, 0x0000, 0x0000, 0x04d1, 0x0000, 0x0000, 0x04db, 0x04dc,
+ 0x04de, 0x04e0, 0x0000, 0x0000, 0x0000, 0x0000, 0x04e6, 0x04e7, 0x04ea, 0x04eb,
+ 0x0000, 0x0000, 0x0000, 0x04ec, 0x0000, 0x0000, 0x04ed, 0x0000, 0x0000, 0x0000,
+ 0x04ee, 0x04f0, 0x0000, 0x0000, 0x04f1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x04f2, 0x0000, 0x04f3,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x04f9, 0x04fa, 0x04fc, 0x0509, 0x0000, 0x0000,
+ 0x050b, 0x050c, 0x050d, 0x0000, 0x0000, 0x050e, 0x050f, 0x0510, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0516, 0x0000, 0x0518, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x051f, 0x0520, 0x0000, 0x0522, 0x0000, 0x0524,
+ 0x0528, 0x0529, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x052a,
+ 0x052b, 0x052c, 0x0000, 0x0537, 0x0000, 0x0538, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x053d, 0x053e, 0x0000, 0x0542, 0x0000, 0x054d, 0x0000, 0x0000, 0x0000, 0x054e,
+ 0x0550, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0551, 0x0000, 0x0000,
+ 0x0000, 0x0552, 0x0555, 0x0000, 0x0556, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0563, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x056a, 0x0000, 0x056c, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0573, 0x0000, 0x0000, 0x0000, 0x0000, 0x057b, 0x0000, 0x057d,
+ 0x0000, 0x0000, 0x057f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0580, 0x0581,
+ 0x0000, 0x0582, 0x0000, 0x0000, 0x0000, 0x0584, 0x0585, 0x0588, 0x0000, 0x0000,
+ 0x0595, 0x05ab, 0x0000, 0x0000, 0x05ae, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x05af, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x05b0, 0x0000, 0x0000, 0x0000, 0x0000, 0x05b3, 0x05b4, 0x05b5, 0x05c3, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x05c5, 0x0000, 0x05c8, 0x0000, 0x05c9,
+ 0x0000, 0x0000, 0x05ce, 0x0000, 0x0000, 0x05d7, 0x0000, 0x0000, 0x0000, 0x05d8,
+ 0x0000, 0x0000, 0x05da, 0x05db, 0x05dd, 0x05f0, 0x05f1, 0x0000, 0x0000, 0x0000,
+ 0x05f6, 0x0000, 0x0000, 0x0000, 0x0000, 0x05f8, 0x05f9, 0x0000, 0x05fd, 0x0600,
+ 0x0000, 0x0000, 0x0000, 0x0601, 0x0602, 0x060d, 0x0000, 0x060e, 0x0616, 0x0617,
+ 0x0624, 0x0000, 0x0625, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0627, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x062b, 0x0000,
+ 0x063f, 0x0000, 0x0643, 0x0000, 0x0644, 0x0000, 0x0645, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0648, 0x064a, 0x0000, 0x0000, 0x0000, 0x0000, 0x064b, 0x0000,
+ 0x064f, 0x0000, 0x0650, 0x0652, 0x0000, 0x0653, 0x0000, 0x0000, 0x0656, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0662, 0x0000, 0x0000, 0x0000, 0x0663, 0x0000, 0x0000,
+ 0x0000, 0x0669, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x066b, 0x0000, 0x0000, 0x0000, 0x0672, 0x0000, 0x0000, 0x0674, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0675, 0x0000, 0x0000, 0x0000, 0x0676, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0677, 0x0000, 0x067e, 0x0000, 0x0000, 0x067f, 0x0680,
+ 0x0000, 0x0000, 0x0684, 0x0000, 0x0000, 0x0685, 0x0686, 0x0000, 0x0688, 0x0689,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x068a, 0x0000, 0x0000, 0x0000, 0x068b,
+ 0x068c, 0x0690, 0x0000, 0x0692, 0x0000, 0x0000, 0x0697, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x06a8, 0x0000, 0x0000, 0x06a9, 0x0000, 0x0000, 0x06b9, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x06c6, 0x06c7, 0x0000, 0x0000, 0x0000, 0x0000, 0x06c9,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x06cb, 0x0000, 0x0000, 0x06cc, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x06cd, 0x06cf,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x06d1, 0x0000, 0x0000, 0x0000, 0x06d5, 0x0000,
+ 0x0000, 0x0000, 0x06d7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x06e0,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x06e5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x06f8, 0x0000, 0x06f9, 0x06fb, 0x0000, 0x0000, 0x0000, 0x0000, 0x06fc, 0x06fd,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x06fe, 0x06ff, 0x0701, 0x0000, 0x0706, 0x0707,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0709, 0x0000, 0x070b, 0x070d, 0x0000, 0x0000,
+ 0x0000, 0x070e, 0x0713, 0x0000, 0x0714, 0x0716, 0x0000, 0x071d, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x071e, 0x0729, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0738, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0741, 0x0000,
+ 0x0000, 0x0000, 0x0743, 0x0000, 0x0000, 0x0000, 0x0000, 0x0745, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x074a, 0x0000, 0x0781, 0x0785, 0x0000,
+ 0x0000, 0x0000, 0x0789, 0x078a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x078b, 0x0000, 0x0000, 0x0000, 0x0000, 0x078c, 0x0000,
+ 0x0000, 0x0000, 0x078e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x079a, 0x0000, 0x0000, 0x079c, 0x0000, 0x0000, 0x0000, 0x0000, 0x079e,
+ 0x0000, 0x07a5, 0x0000, 0x07a6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x07ad,
+ 0x07af, 0x0000, 0x0000, 0x0000, 0x0000, 0x07b0, 0x0000, 0x07b1, 0x0000, 0x07b3,
+ 0x07b4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x07b5, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x07b7, 0x0000, 0x0000, 0x0000, 0x0000, 0x07b8, 0x07bb, 0x0000, 0x07be,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x07c0, 0x07c4, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x07c6, 0x07d4, 0x07d8, 0x0000, 0x0000, 0x0000, 0x07dc, 0x07dd, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x07df, 0x0000,
+ 0x07e0, 0x07e1, 0x0000, 0x0000, 0x0000, 0x0000, 0x07e5, 0x0000, 0x0000, 0x07e9,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x07ed, 0x07f4, 0x07f8, 0x0000, 0x07fa,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x07fb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x07fd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x07fe, 0x07ff,
+ 0x0000, 0x0800, 0x0801, 0x0000, 0x080b, 0x0000, 0x0000, 0x080f, 0x0000, 0x0810,
+ 0x0811, 0x0000, 0x0000, 0x0812, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0815, 0x0000, 0x0000, 0x0000, 0x0000, 0x0816, 0x0000, 0x0817, 0x0000, 0x0818,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0820, 0x0822, 0x0823, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0825, 0x0000, 0x0826, 0x0828, 0x0829, 0x0839, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x083b, 0x0000, 0x0000, 0x0844, 0x0845, 0x0000, 0x0848, 0x0000,
+ 0x0000, 0x084a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x084b, 0x0000, 0x0000,
+ 0x084d, 0x084f, 0x0850, 0x0000, 0x0000, 0x0000, 0x0852, 0x0000, 0x0000, 0x0000,
+ 0x0859, 0x085b, 0x085c, 0x085d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0860, 0x0861, 0x0000, 0x0000, 0x0862, 0x0865, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0866, 0x0000, 0x0000, 0x0867, 0x086e, 0x0000, 0x086f,
+ 0x0000, 0x0870, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0871, 0x0872,
+ 0x0000, 0x0000, 0x0892, 0x089a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x089d, 0x08a9, 0x0000, 0x08ac, 0x0000, 0x08ad, 0x0000, 0x08ae, 0x08b0, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x08bd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x08be,
+ 0x0000, 0x08bf, 0x08c1, 0x0000, 0x0000, 0x08c2, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x08c3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x08cc, 0x0000,
+ 0x0000, 0x08cd, 0x0000, 0x0000, 0x0000, 0x08d1, 0x08d2, 0x0000, 0x0000, 0x0000,
+ 0x08d4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x08d6, 0x0000,
+ 0x08d8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x08dd, 0x08de, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x08df, 0x0000, 0x08e1,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x08e5, 0x0000, 0x0000, 0x0000, 0x0000, 0x08e6,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x08e7, 0x0000, 0x08e8, 0x0000, 0x08eb, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x08ef, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x08f1, 0x08f2, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x08f3, 0x0000, 0x08f4, 0x0000, 0x0000, 0x0000, 0x08f5, 0x08f7, 0x08f8,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x08fa, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x08ff, 0x0000, 0x0901, 0x0000, 0x0000, 0x0902, 0x0000,
+ 0x0903, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0909, 0x090a, 0x090b, 0x090c, 0x0000, 0x0000, 0x090e,
+ 0x0000, 0x090f, 0x0000, 0x0912, 0x0000, 0x0000, 0x0913, 0x0000, 0x0914, 0x0000,
+ 0x0916, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x091f, 0x0000,
+ 0x0920, 0x0922, 0x0923, 0x0000, 0x0924, 0x0000, 0x0000, 0x0000, 0x0933, 0x0000,
+ 0x0947, 0x0000, 0x094e, 0x0952, 0x0000, 0x0953, 0x0000, 0x0000, 0x095a, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x095b, 0x0000, 0x095d, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x095e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x095f,
+ 0x0962, 0x0964, 0x0968, 0x096b, 0x0000, 0x0000, 0x0000, 0x096d, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x096f, 0x0000, 0x0000, 0x0970, 0x0971, 0x0973, 0x0000, 0x0974,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0979, 0x0000, 0x0000, 0x0000, 0x097a,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x097b, 0x097c, 0x0000, 0x097d, 0x0000, 0x0000, 0x097e, 0x0982,
+ 0x0000, 0x0984, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0989, 0x098a,
+ 0x0000, 0x098d, 0x0000, 0x0000, 0x098e, 0x0999, 0x0000, 0x099b, 0x0000, 0x0000,
+ 0x099e, 0x0000, 0x09a0, 0x0000, 0x09ad, 0x0000, 0x09ae, 0x09b6, 0x0000, 0x0000,
+ 0x0000, 0x09bb, 0x0000, 0x0000, 0x09bd, 0x0000, 0x0000, 0x09be, 0x0000, 0x09bf,
+ 0x0000, 0x09d1, 0x09db, 0x0000, 0x0000, 0x0000, 0x0000, 0x09dc, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x09e0, 0x09e1, 0x09e2, 0x0000, 0x0000, 0x09e3,
+ 0x0000, 0x09e5, 0x0000, 0x0000, 0x09e6, 0x09e7, 0x0000, 0x09e8, 0x09e9, 0x0000,
+ 0x09ea, 0x0000, 0x09eb, 0x09ec, 0x0000, 0x0000, 0x0000, 0x09f1, 0x09f2, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x09f4, 0x0000, 0x0000, 0x09f5,
+ 0x0000, 0x09f6, 0x09fb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x09fd, 0x0000,
+ 0x0a00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0a01, 0x0000, 0x0a10, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0a11, 0x0a12, 0x0000, 0x0000, 0x0000, 0x0a13,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0a14, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0a15, 0x0000, 0x0000, 0x0000, 0x0000, 0x0a17, 0x0000, 0x0a18,
+ 0x0000, 0x0a1c, 0x0a1e, 0x0000, 0x0000, 0x0000, 0x0a1f, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0a21, 0x0a22, 0x0000, 0x0a23, 0x0000, 0x0a29, 0x0a2a, 0x0000, 0x0000,
+ 0x0a2b, 0x0000, 0x0a2d, 0x0000, 0x0000, 0x0000, 0x0a2e, 0x0a2f, 0x0a33, 0x0000,
+ 0x0a37, 0x0000, 0x0000, 0x0000, 0x0a39, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0a3b, 0x0000,
+ 0x0000, 0x0a3c, 0x0000, 0x0000, 0x0000, 0x0a3d, 0x0000, 0x0a3f, 0x0000, 0x0a41,
+ 0x0000, 0x0000, 0x0a44, 0x0a45, 0x0000, 0x0000, 0x0a4b, 0x0a4c, 0x0a4d, 0x0000,
+ 0x0000, 0x0a4f, 0x0000, 0x0000, 0x0000, 0x0a52, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0a53, 0x0000, 0x0a54, 0x0000, 0x0a59, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0a5f, 0x0a60, 0x0000, 0x0000, 0x0a61, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0a62, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0a63, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0a68, 0x0a7d, 0x0000, 0x0a7f, 0x0000, 0x0a80, 0x0000, 0x0000,
+ 0x0a81, 0x0000, 0x0000, 0x0a86, 0x0000, 0x0a87, 0x0000, 0x0000, 0x0a8a, 0x0000,
+ 0x0a8d, 0x0a92, 0x0000, 0x0000, 0x0000, 0x0a93, 0x0000, 0x0a95, 0x0a96, 0x0a97,
+ 0x0000, 0x0000, 0x0000, 0x0aa0, 0x0aaa, 0x0aaf, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0ab2, 0x0ab4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0abb, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0abc, 0x0000, 0x0000, 0x0abd, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0abe, 0x0000, 0x0000, 0x0ac0, 0x0ac2, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0ac6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0aca, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0acb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0acc, 0x0acf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0ad0, 0x0000, 0x0000, 0x0ad2,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0ad3, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0ad4, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0ad5, 0x0ad8, 0x0000, 0x0000, 0x0adf, 0x0000, 0x0000,
+ 0x0ae0, 0x0000, 0x0ae5, 0x0000, 0x0ae6, 0x0000, 0x0000, 0x0000, 0x0ae8, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0ae9,
+ 0x0aeb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0aec, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0aed, 0x0aef, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0af3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0af6, 0x0000, 0x0af7, 0x0af8, 0x0b01,
+ 0x0b03, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0b05, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0b06, 0x0b07, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0b08, 0x0000, 0x0000, 0x0b0c, 0x0000, 0x0b12, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0b14, 0x0000, 0x0b16, 0x0000, 0x0000, 0x0b17, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0b19, 0x0000, 0x0000, 0x0000, 0x0b1a,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0b1b, 0x0b1c, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0b1e, 0x0000, 0x0000, 0x0b1f, 0x0000, 0x0b21, 0x0000, 0x0b25, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0b29, 0x0000, 0x0000, 0x0000, 0x0000, 0x0b2a,
+ 0x0000, 0x0b2b, 0x0000, 0x0000, 0x0b2c, 0x0000, 0x0b2e, 0x0b34, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0b3b, 0x0000, 0x0b3c, 0x0000, 0x0000, 0x0b3d, 0x0b3e, 0x0b44,
+ 0x0b49, 0x0b4a, 0x0000, 0x0000, 0x0b4b, 0x0000, 0x0000, 0x0b4c, 0x0000, 0x0000,
+ 0x0000, 0x0b5a, 0x0b60, 0x0000, 0x0b61, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0b64, 0x0000, 0x0b76, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0b77, 0x0000, 0x0000, 0x0000, 0x0000, 0x0b7b, 0x0000, 0x0b7c, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0b7d, 0x0000, 0x0000, 0x0000,
+ 0x0b82, 0x0000, 0x0b85, 0x0000, 0x0000, 0x0b86, 0x0b8a, 0x0b8b, 0x0000, 0x0000,
+ 0x0000, 0x0b8f, 0x0b91, 0x0000, 0x0000, 0x0b92, 0x0000, 0x0b93, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0b94, 0x0b95, 0x0b96, 0x0b97, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0b99, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0b9a, 0x0b9f, 0x0000, 0x0ba6, 0x0ba7, 0x0ba8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0bad, 0x0000, 0x0000, 0x0bae, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0baf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0bb6, 0x0000, 0x0bb8, 0x0bb9, 0x0000, 0x0000, 0x0bba, 0x0000,
+ 0x0000, 0x0000, 0x0bbb, 0x0000, 0x0000, 0x0bc4, 0x0000, 0x0000, 0x0bce, 0x0000,
+ 0x0000, 0x0bd0, 0x0000, 0x0000, 0x0bd1, 0x0bd3, 0x0000, 0x0000, 0x0000, 0x0bd6,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0bda, 0x0bdb, 0x0000, 0x0000, 0x0bdc, 0x0000,
+ 0x0bdf, 0x0000, 0x0be9, 0x0000, 0x0000, 0x0bea, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0beb, 0x0000, 0x0bed, 0x0000, 0x0000, 0x0000, 0x0000, 0x0bf1,
+ 0x0000, 0x0bf2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0bf7, 0x0000, 0x0000, 0x0c01, 0x0c02, 0x0c06, 0x0c07, 0x0000, 0x0c08, 0x0c0e,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0c0f, 0x0000,
+ 0x0c14, 0x0000, 0x0c17, 0x0000, 0x0c1b, 0x0000, 0x0000, 0x0000, 0x0c1c, 0x0000,
+ 0x0c1d, 0x0c1e, 0x0000, 0x0c32, 0x0000, 0x0000, 0x0000, 0x0c34, 0x0000, 0x0c35,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0c3c, 0x0c3e, 0x0000, 0x0000,
+ 0x0c40, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0c4b, 0x0000,
+ 0x0000, 0x0c4d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0c4e, 0x0c4f, 0x0c50,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0c56, 0x0000, 0x0000, 0x0c58, 0x0000, 0x0000,
+ 0x0c59, 0x0000, 0x0000, 0x0c5a, 0x0000, 0x0c5b, 0x0c5e, 0x0c60, 0x0000, 0x0000,
+ 0x0c61, 0x0c62, 0x0000, 0x0000, 0x0c63, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0c6e, 0x0000, 0x0c70, 0x0000, 0x0000, 0x0c74, 0x0000, 0x0000,
+ 0x0c7a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0c84, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0c89, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0c90, 0x0c91, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0c93, 0x0000, 0x0000, 0x0c94, 0x0c96, 0x0000, 0x0c97,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0c98, 0x0000, 0x0c99, 0x0c9a, 0x0000, 0x0c9c,
+ 0x0ca1, 0x0000, 0x0ca7, 0x0ca9, 0x0caa, 0x0000, 0x0000, 0x0cb3, 0x0cb4, 0x0cb5,
+ 0x0cb7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0cbc,
+ 0x0000, 0x0000, 0x0cbd, 0x0000, 0x0000, 0x0000, 0x0cc3, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0cc7, 0x0000, 0x0000, 0x0000, 0x0cce,
+ 0x0000, 0x0cd2, 0x0000, 0x0000, 0x0000, 0x0cd4, 0x0000, 0x0000, 0x0000, 0x0cd5,
+ 0x0cd6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0cd7, 0x0cdc,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0cde, 0x0ce0, 0x0000, 0x0000, 0x0ce3, 0x0ce4,
+ 0x0ce5, 0x0000, 0x0ce6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0ce8, 0x0cea,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0cec, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0cef, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0cf0, 0x0cf2, 0x0cf3, 0x0000, 0x0cf6,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0cf7, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0cf9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0cfa, 0x0000, 0x0000, 0x0cfc, 0x0cfd, 0x0000,
+ 0x0000, 0x0cfe, 0x0000, 0x0000, 0x0d00, 0x0d01, 0x0d03, 0x0000, 0x0000, 0x0d07,
+ 0x0000, 0x0000, 0x0d09, 0x0000, 0x0d0a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0d0f,
+ 0x0d13, 0x0000, 0x0000, 0x0000, 0x0d14, 0x0000, 0x0000, 0x0d17, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0d1a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0d1b, 0x0000, 0x0000, 0x0d25, 0x0d26,
+ 0x0d27, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0d28, 0x0d29, 0x0000,
+ 0x0d2a, 0x0000, 0x0000, 0x0d2d, 0x0000, 0x0000, 0x0d30, 0x0000, 0x0000, 0x0d31,
+ 0x0000, 0x0d33, 0x0d3b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0d3e, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0d4a, 0x0000, 0x0d4b, 0x0d6c,
+ 0x0d6d, 0x0d6f, 0x0000, 0x0000, 0x0d71, 0x0000, 0x0000, 0x0000, 0x0d72, 0x0000,
+ 0x0000, 0x0d79, 0x0000, 0x0000, 0x0000, 0x0d7a, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0d7b, 0x0000, 0x0000, 0x0d7c, 0x0000, 0x0d7d, 0x0d80,
+ 0x0000, 0x0d81, 0x0000, 0x0000, 0x0d82, 0x0000, 0x0d83, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0d84, 0x0000, 0x0000, 0x0d8d,
+ 0x0d8e, 0x0000, 0x0000, 0x0d93, 0x0000, 0x0000, 0x0000, 0x0d98, 0x0d9f, 0x0da1,
+ 0x0000, 0x0da2, 0x0000, 0x0000, 0x0da3, 0x0dab, 0x0000, 0x0dac, 0x0000, 0x0000,
+ 0x0dad, 0x0000, 0x0000, 0x0000, 0x0dae, 0x0000, 0x0dba, 0x0000, 0x0000, 0x0000,
+ 0x0dbc, 0x0dbd, 0x0000, 0x0000, 0x0000, 0x0dbe, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0dc0, 0x0dc1, 0x0dc2, 0x0000, 0x0000, 0x0dc6, 0x0dca, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0dcb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0dd0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0dd3, 0x0dd5, 0x0000, 0x0000, 0x0dd6, 0x0dd8,
+ 0x0000, 0x0ddb, 0x0ddc, 0x0000, 0x0000, 0x0dde, 0x0000, 0x0de1, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0de2, 0x0000, 0x0de3, 0x0000, 0x0de6,
+ 0x0000, 0x0de7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0deb, 0x0000, 0x0dfd, 0x0000, 0x0000, 0x0000, 0x0e0f, 0x0000, 0x0000, 0x0000,
+ 0x0e10, 0x0000, 0x0e11, 0x0000, 0x0e12, 0x0e13, 0x0000, 0x0000, 0x0e16, 0x0e18,
+ 0x0000, 0x0e1a, 0x0e1b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0e1c, 0x0e20, 0x0e23, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0e28, 0x0e2c,
+ 0x0000, 0x0e2d, 0x0e32, 0x0e33, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0e34, 0x0000, 0x0e35, 0x0000, 0x0000, 0x0e36, 0x0e43, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0e44, 0x0e45, 0x0000, 0x0000, 0x0000, 0x0000, 0x0e48,
+ 0x0e49, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0e4a, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0e4b, 0x0000, 0x0e4d, 0x0e4f, 0x0e50, 0x0000, 0x0e51, 0x0000, 0x0e6c,
+ 0x0000, 0x0000, 0x0000, 0x0e6e, 0x0e70, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0e72, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0e74, 0x0000, 0x0000, 0x0e75, 0x0000, 0x0000, 0x0000,
+ 0x0e7c, 0x0e7d, 0x0000, 0x0000, 0x0000, 0x0e7f, 0x0e80, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0e8b, 0x0000, 0x0e8c, 0x0e8d, 0x0000, 0x0000, 0x0e8e, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0e90, 0x0e91, 0x0000, 0x0e96, 0x0e97,
+ 0x0e99, 0x0000, 0x0000, 0x0000, 0x0e9f, 0x0000, 0x0ea1, 0x0000, 0x0000, 0x0ea2,
+ 0x0000, 0x0000, 0x0ea3, 0x0ea4, 0x0000, 0x0ead, 0x0000, 0x0eaf, 0x0eb6, 0x0eb7,
+ 0x0000, 0x0eb8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0eb9, 0x0000, 0x0000, 0x0ebb,
+ 0x0000, 0x0ebe, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0ebf, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0ec0, 0x0000, 0x0ec1, 0x0eca, 0x0000,
+ 0x0ecc, 0x0ecd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0ecf, 0x0000, 0x0ee3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0ee6,
+ 0x0ee7, 0x0ee8, 0x0eec, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0eed, 0x0000, 0x0000, 0x0ef1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0efb, 0x0000,
+ 0x0000, 0x0f08, 0x0f09, 0x0000, 0x0000, 0x0000, 0x0000, 0x0f0a, 0x0f0b, 0x0f0d,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0f13, 0x0000, 0x0f14, 0x0f16, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0f17, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0f21, 0x0000, 0x0f22, 0x0000, 0x0f23, 0x0f2e, 0x0000, 0x0f2f,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0f34, 0x0f49, 0x0000, 0x0f4a, 0x0000, 0x0000,
+ 0x0000, 0x0f55, 0x0f5b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0f5e, 0x0f65, 0x0f66,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0f67, 0x0000, 0x0000, 0x0000, 0x0f68, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0f69, 0x0000, 0x0f6b, 0x0000, 0x0000, 0x0000,
+ 0x0f74, 0x0f75, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0f76, 0x0000, 0x0f77, 0x0f7d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0f7e,
+ 0x0000, 0x0000, 0x0000, 0x0f7f, 0x0000, 0x0000, 0x0000, 0x0f80, 0x0f86, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0f87, 0x0f89, 0x0f8a, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0f8c, 0x0000, 0x0f91, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0f92, 0x0fab, 0x0000, 0x0000, 0x0fb1, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0fb2, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0fb3, 0x0000, 0x0fb7, 0x0000, 0x0000, 0x0000, 0x0fbb,
+ 0x0fbc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0fbf,
+ 0x0fc2, 0x0000, 0x0000, 0x0fc3, 0x0fc5, 0x0fc7, 0x0fc8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0fdb, 0x0000, 0x0fdc, 0x0fdd, 0x0000, 0x0fde, 0x0fdf, 0x0fe2,
+ 0x0000, 0x0000, 0x0fe8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0ff8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0ffb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0ffe, 0x0fff, 0x0000,
+ 0x0000, 0x1000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1002, 0x1003, 0x0000,
+ 0x0000, 0x0000, 0x1005, 0x0000, 0x1008, 0x0000, 0x0000, 0x0000, 0x1009, 0x100c,
+ 0x0000, 0x1011, 0x0000, 0x0000, 0x1013, 0x1014, 0x0000, 0x101e, 0x0000, 0x0000,
+ 0x101f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1020, 0x1024,
+ 0x1025, 0x0000, 0x1026, 0x0000, 0x0000, 0x0000, 0x1029, 0x0000, 0x0000, 0x102d,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1030, 0x1032, 0x1033, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1034, 0x0000, 0x0000, 0x10d7, 0x0000, 0x0000, 0x0000, 0x10da, 0x10e9,
+ 0x0000, 0x10eb, 0x10ec, 0x0000, 0x10ed, 0x0000, 0x10ee, 0x0000, 0x0000, 0x0000,
+ 0x10ef, 0x0000, 0x10f0, 0x0000, 0x0000, 0x0000, 0x10f1, 0x0000, 0x0000, 0x0000,
+ 0x10f6, 0x10f9, 0x10fa, 0x10fe, 0x0000, 0x10ff, 0x1100, 0x0000, 0x1102, 0x1103,
+ 0x0000, 0x0000, 0x110c, 0x0000, 0x0000, 0x0000, 0x0000, 0x1111, 0x0000, 0x0000,
+ 0x0000, 0x1115, 0x0000, 0x1116, 0x0000, 0x0000, 0x0000, 0x0000, 0x1119, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x111a, 0x0000, 0x0000, 0x0000, 0x111c, 0x0000, 0x0000,
+ 0x0000, 0x111d, 0x111e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1120, 0x0000, 0x0000, 0x0000, 0x0000, 0x1121, 0x0000, 0x0000, 0x0000, 0x1122,
+ 0x0000, 0x0000, 0x0000, 0x1127, 0x112e, 0x0000, 0x0000, 0x0000, 0x0000, 0x1137,
+ 0x1139, 0x0000, 0x0000, 0x0000, 0x0000, 0x113a, 0x0000, 0x0000, 0x113b, 0x0000,
+ 0x113e, 0x113f, 0x1142, 0x0000, 0x114b, 0x114c, 0x114e, 0x0000, 0x114f, 0x0000,
+ 0x1160, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1161, 0x0000, 0x0000, 0x0000,
+ 0x1163, 0x1164, 0x0000, 0x1165, 0x1166, 0x0000, 0x1168, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x116b, 0x0000, 0x116f, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1172, 0x0000, 0x1173, 0x0000, 0x1175, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1176, 0x1177, 0x0000, 0x1179, 0x0000, 0x0000, 0x117b, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x117d, 0x117e, 0x0000, 0x0000, 0x0000, 0x117f, 0x1181, 0x0000, 0x1182,
+ 0x0000, 0x1184, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1186,
+ 0x0000, 0x0000, 0x1188, 0x0000, 0x0000, 0x1191, 0x0000, 0x119c, 0x0000, 0x0000,
+ 0x119e, 0x119f, 0x0000, 0x11a8, 0x11ab, 0x0000, 0x11ac, 0x0000, 0x11ad, 0x0000,
+ 0x11af, 0x0000, 0x0000, 0x11b0, 0x0000, 0x0000, 0x0000, 0x0000, 0x11b2, 0x0000,
+ 0x11b3, 0x0000, 0x0000, 0x11b4, 0x0000, 0x0000, 0x0000, 0x11b5, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x11b7, 0x0000, 0x0000, 0x0000, 0x11b8, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x11bd, 0x11bf, 0x11c0, 0x11c1, 0x11c3, 0x0000, 0x11c4,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x11c6, 0x11c7, 0x0000, 0x11c9, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x11d2, 0x0000, 0x0000, 0x11db, 0x0000, 0x0000, 0x0000, 0x11de,
+ 0x0000, 0x0000, 0x0000, 0x11df, 0x0000, 0x11e0, 0x0000, 0x11e1, 0x0000, 0x0000,
+ 0x0000, 0x11e5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x11e6, 0x0000, 0x0000,
+ 0x11ea, 0x0000, 0x0000, 0x0000, 0x11ec, 0x0000, 0x0000, 0x11f5, 0x0000, 0x11f6,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1208, 0x1209, 0x0000, 0x120a, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x120b, 0x0000, 0x120c, 0x0000, 0x0000, 0x120d, 0x0000, 0x1210,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1211, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1231, 0x0000, 0x1233, 0x0000, 0x123b, 0x0000, 0x0000, 0x0000, 0x123c, 0x123e,
+ 0x0000, 0x1240, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1241, 0x1244, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x124f, 0x0000, 0x0000, 0x0000, 0x0000, 0x1259, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x125b, 0x0000, 0x125d, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x125e, 0x0000, 0x0000, 0x1262, 0x0000, 0x0000, 0x1269, 0x0000, 0x0000, 0x0000,
+ 0x126a, 0x126b, 0x126c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x126d, 0x0000, 0x0000, 0x1270, 0x0000,
+ 0x1271, 0x1279, 0x127f, 0x0000, 0x0000, 0x0000, 0x1281, 0x0000, 0x0000, 0x0000,
+ 0x1283, 0x0000, 0x0000, 0x0000, 0x1284, 0x0000, 0x0000, 0x0000, 0x1285, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1286, 0x0000, 0x1289, 0x128a, 0x128b, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x128c, 0x0000, 0x0000,
+ 0x0000, 0x128d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x128f, 0x12b2, 0x0000, 0x12b3, 0x0000, 0x12b4, 0x12bc,
+ 0x0000, 0x0000, 0x12bd, 0x12be, 0x0000, 0x12bf, 0x12c6, 0x12c7, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x12c9, 0x12ca, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x12cb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x12cc, 0x0000, 0x12cd, 0x0000,
+ 0x0000, 0x12cf, 0x0000, 0x12d5, 0x12d6, 0x0000, 0x0000, 0x0000, 0x0000, 0x12d7,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x12d8, 0x0000, 0x0000, 0x0000, 0x0000, 0x12da, 0x0000, 0x0000, 0x0000, 0x12dc,
+ 0x0000, 0x12dd, 0x0000, 0x0000, 0x0000, 0x12eb, 0x0000, 0x0000, 0x12ef, 0x0000,
+ 0x12f5, 0x12f7, 0x12fa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x12fb, 0x0000,
+ 0x1300, 0x0000, 0x0000, 0x130f, 0x0000, 0x0000, 0x0000, 0x0000, 0x1310, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1311, 0x0000, 0x1312, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1313, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1314, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1316, 0x1317, 0x1318, 0x131e,
+ 0x1320, 0x0000, 0x1326, 0x0000, 0x0000, 0x1329, 0x0000, 0x0000, 0x1333, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1334, 0x1335, 0x1337, 0x1339,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x133e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x133f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1341,
+ 0x0000, 0x1342, 0x1343, 0x0000, 0x134a, 0x0000, 0x1358, 0x0000, 0x1359, 0x135d,
+ 0x1360, 0x1364, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x139b,
+ 0x139c, 0x139e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x139f, 0x0000, 0x0000,
+ 0x0000, 0x13a0, 0x0000, 0x0000, 0x0000, 0x13a1, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x13a4, 0x0000, 0x0000, 0x0000, 0x0000, 0x13a5, 0x13a6, 0x13a7, 0x0000, 0x13a9,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x13aa,
+ 0x13ab, 0x0000, 0x13ac, 0x0000, 0x0000, 0x13ad, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x13ae, 0x0000, 0x0000, 0x13af, 0x0000, 0x0000, 0x0000, 0x13b1, 0x13b2, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x13b4, 0x13b9, 0x13be, 0x0000, 0x13bf, 0x0000, 0x13c1,
+ 0x0000, 0x0000, 0x0000, 0x13c4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x13c7,
+ 0x0000, 0x13c8, 0x13c9, 0x0000, 0x13cb, 0x0000, 0x0000, 0x0000, 0x13cc, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x13d4,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x13d5, 0x0000, 0x0000,
+ 0x13d6, 0x13d8, 0x0000, 0x0000, 0x13db, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x13dd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x13ea, 0x13eb, 0x13ed, 0x13f1, 0x13f3, 0x0000, 0x13f4, 0x0000, 0x13f5, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x13f6, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x13fd, 0x13fe, 0x0000, 0x1401, 0x0000, 0x1402, 0x0000, 0x0000,
+ 0x140a, 0x0000, 0x0000, 0x0000, 0x1411, 0x0000, 0x0000, 0x0000, 0x141c, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x141f, 0x1422, 0x0000, 0x0000,
+ 0x0000, 0x1423, 0x0000, 0x0000, 0x1424, 0x1427, 0x1429, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x142a, 0x0000, 0x0000, 0x0000, 0x0000, 0x142b, 0x142c, 0x0000, 0x142e,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x142f, 0x0000, 0x0000, 0x0000, 0x1434, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x143a, 0x143b, 0x0000, 0x0000, 0x1446, 0x0000, 0x0000, 0x1447, 0x1448,
+ 0x144a, 0x0000, 0x0000, 0x144e, 0x1451, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1453, 0x0000, 0x1456, 0x1459, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x145d, 0x0000, 0x145e, 0x1460, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1461,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1462, 0x1463,
+ 0x0000, 0x146f, 0x0000, 0x0000, 0x147c, 0x1481, 0x0000, 0x1486, 0x0000, 0x1487,
+ 0x0000, 0x0000, 0x1489, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x148a, 0x0000,
+ 0x148c, 0x1496, 0x0000, 0x149d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x14a0, 0x14a1, 0x14a2, 0x14a3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x14a4,
+ 0x0000, 0x14a5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x14a7, 0x14a8, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x14a9,
+ 0x14ab, 0x0000, 0x0000, 0x14ae, 0x0000, 0x0000, 0x14af, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x14b8, 0x0000, 0x0000, 0x14ba, 0x14bb, 0x14bc,
+ 0x0000, 0x14bd, 0x0000, 0x0000, 0x14be, 0x0000, 0x0000, 0x0000, 0x0000, 0x14bf,
+ 0x14c0, 0x0000, 0x14c1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x14c4, 0x0000,
+ 0x0000, 0x0000, 0x14c5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x14cd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x14ce,
+ 0x0000, 0x14cf, 0x14d1, 0x0000, 0x14d4, 0x0000, 0x0000, 0x0000, 0x0000, 0x14da,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x14dc, 0x0000,
+ 0x0000, 0x14dd, 0x0000, 0x0000, 0x0000, 0x14de, 0x0000, 0x14df, 0x14e0, 0x0000,
+ 0x0000, 0x14e1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x14e3, 0x14e4,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x14e5,
+ 0x0000, 0x14e6, 0x0000, 0x14ea, 0x0000, 0x0000, 0x0000, 0x0000, 0x14ee, 0x0000,
+ 0x0000, 0x14ef, 0x0000, 0x0000, 0x14f1, 0x0000, 0x0000, 0x14f5, 0x0000, 0x14f7,
+ 0x0000, 0x14fd, 0x0000, 0x0000, 0x0000, 0x1503, 0x0000, 0x0000, 0x0000, 0x1504,
+ 0x0000, 0x0000, 0x0000, 0x1506, 0x0000, 0x1508, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1509, 0x0000, 0x0000, 0x0000, 0x0000, 0x150b, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x150c, 0x150e, 0x1511, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1514, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1515, 0x151a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x151b, 0x0000, 0x0000, 0x0000, 0x151c, 0x151d, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x151e, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1522, 0x0000, 0x0000, 0x1523, 0x0000, 0x1527, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1528, 0x153a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x153e, 0x0000, 0x1540, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1541, 0x1542, 0x0000, 0x0000, 0x0000,
+ 0x1543, 0x1544, 0x1547, 0x0000, 0x0000, 0x1548, 0x1549, 0x154b, 0x0000, 0x0000,
+ 0x0000, 0x1550, 0x1551, 0x0000, 0x0000, 0x0000, 0x1553, 0x0000, 0x0000, 0x0000,
+ 0x1555, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1558, 0x0000, 0x155a, 0x0000, 0x0000,
+ 0x155b, 0x0000, 0x155e, 0x0000, 0x0000, 0x1561, 0x0000, 0x0000, 0x1562, 0x0000,
+ 0x0000, 0x1564, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1565, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x156c, 0x0000, 0x0000, 0x156d, 0x156e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1570, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1571,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1583, 0x0000, 0x0000, 0x0000, 0x1586,
+ 0x0000, 0x1587, 0x0000, 0x0000, 0x1588, 0x0000, 0x0000, 0x0000, 0x1589, 0x0000,
+ 0x158b, 0x0000, 0x0000, 0x158c, 0x158d, 0x0000, 0x158e, 0x0000, 0x0000, 0x1592,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x159e, 0x159f, 0x0000, 0x0000, 0x15a0,
+ 0x0000, 0x15a2, 0x0000, 0x0000, 0x15a7, 0x0000, 0x15a8, 0x0000, 0x0000, 0x15a9,
+ 0x0000, 0x15ab, 0x0000, 0x15b5, 0x0000, 0x0000, 0x15b6, 0x0000, 0x15b8, 0x15bf,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x15c0, 0x0000, 0x0000, 0x0000, 0x15c3, 0x15c5,
+ 0x0000, 0x15c6, 0x0000, 0x15c7, 0x0000, 0x0000, 0x0000, 0x0000, 0x15c9, 0x0000,
+ 0x0000, 0x15de, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x15e0, 0x15e9, 0x0000, 0x0000, 0x0000, 0x0000, 0x15ea, 0x0000, 0x0000,
+ 0x15ec, 0x0000, 0x15f8, 0x0000, 0x15f9, 0x0000, 0x0000, 0x0000, 0x15fd, 0x0000,
+ 0x1609, 0x0000, 0x160a, 0x160b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1613, 0x0000, 0x0000, 0x0000, 0x1614, 0x1615, 0x0000, 0x161d, 0x161e, 0x162e,
+ 0x0000, 0x162f, 0x0000, 0x0000, 0x0000, 0x0000, 0x1635, 0x1636, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x163a, 0x163c, 0x0000, 0x1647, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x164a, 0x0000, 0x0000, 0x0000, 0x0000, 0x164b, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x164c, 0x0000, 0x0000, 0x164d, 0x0000, 0x164e,
+ 0x0000, 0x0000, 0x0000, 0x1650, 0x0000, 0x1665, 0x0000, 0x1666, 0x1667, 0x0000,
+ 0x0000, 0x1670, 0x1677, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1678, 0x0000, 0x167a, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x167d, 0x167e, 0x0000, 0x1680, 0x1681, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1683, 0x1684, 0x1685, 0x0000, 0x1686, 0x0000, 0x1687,
+ 0x1688, 0x0000, 0x168a, 0x0000, 0x0000, 0x0000, 0x0000, 0x1690, 0x1694, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1696, 0x0000, 0x0000, 0x0000, 0x0000, 0x1698, 0x0000,
+ 0x0000, 0x169c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x16a5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x16a7,
+ 0x0000, 0x0000, 0x16a9, 0x0000, 0x0000, 0x0000, 0x16b3, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x16b8, 0x0000, 0x0000, 0x16c3, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x16c6, 0x16c7, 0x0000, 0x0000, 0x16c8,
+ 0x0000, 0x0000, 0x16c9, 0x0000, 0x16cb, 0x16d4, 0x16d5, 0x0000, 0x16d6, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x16da, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x16dc, 0x0000, 0x16df, 0x16e1, 0x0000, 0x0000, 0x16e3, 0x0000, 0x16e5, 0x0000,
+ 0x0000, 0x16e7, 0x0000, 0x16e9, 0x0000, 0x0000, 0x0000, 0x16f1, 0x16f3, 0x0000,
+ 0x0000, 0x0000, 0x16f5, 0x0000, 0x16f7, 0x0000, 0x0000, 0x0000, 0x1700, 0x0000,
+ 0x0000, 0x1701, 0x1703, 0x0000, 0x1706, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1707, 0x0000, 0x1709, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1713, 0x0000, 0x1717, 0x0000, 0x0000, 0x1718, 0x0000, 0x1719, 0x1722, 0x1724,
+ 0x0000, 0x1727, 0x1728, 0x0000, 0x0000, 0x0000, 0x0000, 0x1729, 0x172a, 0x0000,
+ 0x172d, 0x0000, 0x0000, 0x0000, 0x0000, 0x173d, 0x0000, 0x0000, 0x173f, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1741, 0x0000, 0x0000,
+ 0x1742, 0x0000, 0x1747, 0x1748, 0x1749, 0x0000, 0x174c, 0x0000, 0x0000, 0x0000,
+ 0x1758, 0x175a, 0x1763, 0x1766, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1767,
+ 0x0000, 0x1768, 0x0000, 0x0000, 0x0000, 0x176a, 0x176b, 0x0000, 0x0000, 0x176c,
+ 0x0000, 0x0000, 0x1771, 0x1773, 0x0000, 0x0000, 0x0000, 0x0000, 0x1777, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1778, 0x0000, 0x0000, 0x1779, 0x0000, 0x177a,
+ 0x0000, 0x0000, 0x0000, 0x177b, 0x177f, 0x0000, 0x1781, 0x0000, 0x1783, 0x0000,
+ 0x1787, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1789, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x178a,
+ 0x0000, 0x178e, 0x0000, 0x0000, 0x1790, 0x0000, 0x0000, 0x0000, 0x1791, 0x1796,
+ 0x1798, 0x0000, 0x0000, 0x0000, 0x1799, 0x179d, 0x0000, 0x0000, 0x179e, 0x0000,
+ 0x0000, 0x17a5, 0x0000, 0x0000, 0x17a6, 0x0000, 0x17a7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x17a9, 0x0000, 0x17af, 0x0000, 0x0000, 0x0000, 0x17b0,
+ 0x0000, 0x17b2, 0x17b7, 0x17b8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x17bb, 0x17bc, 0x0000, 0x0000, 0x17bd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x17be, 0x17bf, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x17c0, 0x0000, 0x17c3, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x17c4, 0x0000, 0x0000, 0x17c8, 0x0000, 0x17c9, 0x0000, 0x0000,
+ 0x17cd, 0x17d9, 0x0000, 0x0000, 0x17db, 0x0000, 0x17de, 0x0000, 0x0000, 0x0000,
+ 0x17df, 0x17ed, 0x17ee, 0x0000, 0x0000, 0x0000, 0x17f1, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x17f2, 0x0000, 0x0000, 0x0000, 0x17f3, 0x17f6, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x17fe, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1800,
+ 0x0000, 0x0000, 0x1802, 0x1807, 0x1809, 0x0000, 0x180c, 0x0000, 0x1813, 0x0000,
+ 0x1824, 0x1825, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1826, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1828, 0x1833, 0x0000, 0x0000, 0x183e, 0x0000, 0x1840, 0x0000,
+ 0x0000, 0x1844, 0x1845, 0x1846, 0x0000, 0x1847, 0x0000, 0x0000, 0x0000, 0x1854,
+ 0x0000, 0x0000, 0x0000, 0x185a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x185b, 0x1860, 0x0000, 0x1862, 0x1863, 0x1864, 0x0000, 0x186a, 0x186f, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1871, 0x0000, 0x0000, 0x0000, 0x1872, 0x1886,
+ 0x0000, 0x188c, 0x0000, 0x0000, 0x0000, 0x188d, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x188e, 0x0000, 0x0000, 0x0000, 0x18b0, 0x0000,
+ 0x0000, 0x18b2, 0x18bc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x18be, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18bf,
+ 0x0000, 0x0000, 0x18c1, 0x0000, 0x18c2, 0x0000, 0x18c3, 0x18c4, 0x0000, 0x0000,
+ 0x18d4, 0x18d5, 0x18e1, 0x0000, 0x0000, 0x0000, 0x18e2, 0x18e3, 0x18e4, 0x0000,
+ 0x18e5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x18e8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x18ee, 0x18ef, 0x18f0, 0x0000, 0x0000, 0x0000, 0x0000, 0x18f2,
+ 0x0000, 0x18f5, 0x18fd, 0x1900, 0x190b, 0x0000, 0x190e, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x190f, 0x1910, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1911, 0x0000, 0x0000, 0x0000, 0x0000, 0x1912, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1914, 0x0000, 0x1915, 0x1917, 0x1919,
+ 0x0000, 0x191d, 0x191e, 0x0000, 0x1921, 0x1926, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1927, 0x1928, 0x0000, 0x0000,
+ 0x1929, 0x0000, 0x0000, 0x192c, 0x0000, 0x0000, 0x0000, 0x0000, 0x192e, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x192f, 0x1930, 0x0000, 0x0000, 0x1932, 0x0000, 0x0000,
+ 0x0000, 0x1936, 0x0000, 0x0000, 0x1937, 0x0000, 0x193d, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x193e, 0x0000, 0x0000, 0x193f, 0x0000, 0x1940, 0x0000,
+ 0x1941, 0x1943, 0x0000, 0x0000, 0x0000, 0x1944, 0x0000, 0x194f, 0x1950, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1951, 0x0000, 0x0000, 0x1955,
+ 0x1957, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x195d, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x195e, 0x195f, 0x1960, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1962, 0x0000, 0x0000, 0x0000, 0x196b, 0x196c,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x196f, 0x1970, 0x0000, 0x0000, 0x0000, 0x0000, 0x1971, 0x0000, 0x0000, 0x0000,
+ 0x1972, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1974, 0x0000, 0x0000, 0x1975,
+ 0x1976, 0x0000, 0x0000, 0x0000, 0x1977, 0x1978, 0x1979, 0x0000, 0x197b, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x197c, 0x1980, 0x0000, 0x1982, 0x0000, 0x0000, 0x1984,
+ 0x0000, 0x19b2, 0x0000, 0x0000, 0x0000, 0x19b7, 0x0000, 0x19b8, 0x0000, 0x0000,
+ 0x0000, 0x19bb, 0x0000, 0x0000, 0x0000, 0x19be, 0x0000, 0x19bf, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x19c0, 0x0000, 0x0000, 0x0000, 0x0000, 0x19c1, 0x19c2,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x19c7, 0x19c8, 0x0000, 0x0000, 0x19c9,
+ 0x19ca, 0x19cc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x19d0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x19d2, 0x19d3, 0x0000, 0x19d7, 0x0000,
+ 0x19d8, 0x19da, 0x19dc, 0x0000, 0x19ed, 0x0000, 0x0000, 0x0000, 0x0000, 0x19ef,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x19f1, 0x0000, 0x19f2, 0x0000, 0x0000, 0x0000,
+ 0x19f7, 0x0000, 0x1a04, 0x1a07, 0x0000, 0x1a08, 0x0000, 0x1a0a, 0x1a0d, 0x0000,
+ 0x1a13, 0x1a14, 0x1a15, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1a16, 0x0000, 0x0000, 0x0000, 0x1a17, 0x0000, 0x1a18, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1a25, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1a30, 0x1a31, 0x1a32, 0x0000,
+ 0x0000, 0x1a37, 0x1a39, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1a3c, 0x0000,
+ 0x0000, 0x0000, 0x1a3d, 0x0000, 0x1a3f, 0x1a44, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1a45, 0x1a46, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1a48, 0x1a49, 0x1a4f, 0x0000, 0x1a51, 0x1a56, 0x0000, 0x0000, 0x1a57,
+ 0x1a5e, 0x0000, 0x1a5f, 0x0000, 0x0000, 0x1a60, 0x1a61, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1a62, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1a64,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1a6b, 0x0000, 0x0000, 0x1a6c,
+ 0x1a6d, 0x0000, 0x0000, 0x0000, 0x1a72, 0x0000, 0x0000, 0x0000, 0x1a78, 0x1a7c,
+ 0x0000, 0x1a7d, 0x0000, 0x0000, 0x0000, 0x1a7f, 0x0000, 0x1a80, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1a81, 0x0000, 0x0000,
+ 0x0000, 0x1a88, 0x0000, 0x0000, 0x0000, 0x1a89, 0x0000, 0x0000, 0x1a92, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1a93, 0x0000, 0x0000, 0x0000, 0x1a94, 0x0000,
+ 0x0000, 0x0000, 0x1a9c, 0x0000, 0x0000, 0x1aa7, 0x0000, 0x1aa8, 0x1ab7, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1ac4, 0x0000, 0x0000, 0x1ac6, 0x0000, 0x1ac8, 0x1ac9,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1ad3,
+ 0x0000, 0x1ad4, 0x1ad6, 0x1ad8, 0x0000, 0x0000, 0x0000, 0x1ad9, 0x1ada, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1adb, 0x0000, 0x0000, 0x1add, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1ade, 0x0000, 0x0000, 0x0000, 0x1adf,
+ 0x0000, 0x1ae0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1ae7, 0x0000, 0x1ae8, 0x1aeb, 0x1aed, 0x0000, 0x1aef, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1af3, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1af5, 0x0000, 0x0000, 0x0000, 0x0000, 0x1afe, 0x0000, 0x1aff,
+ 0x0000, 0x0000, 0x1b00, 0x0000, 0x0000, 0x1b01, 0x1b02, 0x0000, 0x0000, 0x0000,
+ 0x1b03, 0x0000, 0x0000, 0x0000, 0x1b04, 0x1b07, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1b0c, 0x0000, 0x1b0d, 0x0000, 0x0000, 0x0000, 0x1b0e, 0x1b0f,
+ 0x1b10, 0x0000, 0x1b11, 0x0000, 0x1b12, 0x0000, 0x0000, 0x1b13, 0x1b17, 0x0000,
+ 0x1b18, 0x0000, 0x0000, 0x0000, 0x0000, 0x1b1b, 0x1b1c, 0x1b1d, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1b1e, 0x1b24, 0x1b25, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1b28, 0x1b2a, 0x1b33, 0x1b35, 0x1b36, 0x0000, 0x0000,
+ 0x1b37, 0x1b38, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1b39, 0x0000, 0x0000, 0x1b3a, 0x1b43, 0x0000, 0x0000, 0x1b44, 0x0000,
+ 0x0000, 0x1b47, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1b48, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1b4c, 0x1b4e, 0x1b50, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1b53, 0x0000, 0x0000, 0x0000, 0x1b64,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1b6b,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1b6d, 0x0000,
+ 0x0000, 0x1b6e, 0x1b6f, 0x1b74, 0x0000, 0x1b76, 0x1b79, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1b7e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1b7f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1b86, 0x0000, 0x1b87, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1b88, 0x1b8c, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1b8e, 0x0000, 0x1b94, 0x0000, 0x0000, 0x0000, 0x0000, 0x1b95, 0x0000,
+ 0x1b99, 0x0000, 0x0000, 0x0000, 0x0000, 0x1b9b, 0x1b9d, 0x0000, 0x1b9e, 0x1b9f,
+ 0x1ba0, 0x0000, 0x0000, 0x1ba6, 0x0000, 0x1ba8, 0x1ba9, 0x0000, 0x1bab, 0x0000,
+ 0x0000, 0x0000, 0x1bac, 0x1baf, 0x1bb0, 0x0000, 0x0000, 0x1bb2, 0x0000, 0x1bb5,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1bc3, 0x0000, 0x0000, 0x1bc4, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1bc6, 0x0000, 0x1bca,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1bcb, 0x0000, 0x1bcc,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1bcd, 0x0000, 0x0000, 0x1bce, 0x0000,
+ 0x0000, 0x1bd4, 0x0000, 0x1bd5, 0x0000, 0x0000, 0x1bd6, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1bd8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1bd9, 0x0000, 0x1bda,
+ 0x0000, 0x1bdc, 0x1bdd, 0x0000, 0x0000, 0x1bde, 0x0000, 0x0000, 0x1be3, 0x0000,
+ 0x1bec, 0x1bee, 0x0000, 0x0000, 0x0000, 0x0000, 0x1bf0, 0x0000, 0x0000, 0x0000,
+ 0x1bf1, 0x1bf4, 0x1bf5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1bf6, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1bfb,
+ 0x1bfd, 0x1c01, 0x0000, 0x1c03, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1c04, 0x0000, 0x1c05, 0x1c0d, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1c0e, 0x1c11, 0x0000, 0x0000, 0x0000, 0x0000, 0x1c13, 0x0000,
+ 0x1c21, 0x1c24, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1c26, 0x1c27, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1c2b, 0x1c30, 0x0000, 0x1c32, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1c3a, 0x1c3c, 0x1c3e, 0x1c40, 0x1c41, 0x1c43, 0x1c45, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1c46, 0x1c49, 0x0000, 0x1c4a, 0x0000, 0x0000, 0x1c4f, 0x0000,
+ 0x0000, 0x0000, 0x1c62, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1c79, 0x0000, 0x0000, 0x1c7a, 0x1c7b, 0x0000, 0x0000, 0x1c7c, 0x0000, 0x1c81,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1c84, 0x0000, 0x1c85, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1c86, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1c89, 0x0000, 0x0000, 0x0000, 0x0000, 0x1c8b, 0x0000, 0x1c8c, 0x0000, 0x1c8e,
+ 0x0000, 0x1ca7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1ca9,
+ 0x0000, 0x1caf, 0x1cb3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1cb4, 0x0000,
+ 0x1cb5, 0x1cb6, 0x1cb8, 0x1cba, 0x0000, 0x0000, 0x0000, 0x0000, 0x1cbd, 0x0000,
+ 0x1cbe, 0x1cc6, 0x0000, 0x1cc7, 0x1cc8, 0x0000, 0x0000, 0x1ccd, 0x0000, 0x0000,
+ 0x0000, 0x1cce, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1cd0,
+ 0x0000, 0x0000, 0x0000, 0x1cd1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1cd2,
+ 0x0000, 0x1cd3, 0x1cd4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1cd7, 0x0000,
+ 0x0000, 0x1cda, 0x0000, 0x0000, 0x0000, 0x0000, 0x1ce6, 0x0000, 0x0000, 0x0000,
+ 0x1ce7, 0x1ce8, 0x0000, 0x1ce9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1cea, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1ced, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1cee, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1cfd, 0x1d03, 0x1d05, 0x0000, 0x0000, 0x0000, 0x1d0b, 0x0000,
+ 0x0000, 0x1d0c, 0x0000, 0x0000, 0x0000, 0x1d0d, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1d0e, 0x1d13, 0x0000, 0x1d16, 0x0000, 0x1d18, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1d20, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1d21, 0x0000, 0x0000, 0x1d25, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1d26, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1d27, 0x1d2a,
+ 0x1d30, 0x0000, 0x1d34, 0x0000, 0x0000, 0x1d42, 0x0000, 0x1d43, 0x0000, 0x0000,
+ 0x1d45, 0x0000, 0x0000, 0x0000, 0x1d4a, 0x1d4b, 0x0000, 0x0000, 0x1d54, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1d58, 0x0000, 0x0000, 0x0000, 0x1d59, 0x1d5a,
+ 0x1d5c, 0x0000, 0x0000, 0x0000, 0x0000, 0x1d5e, 0x0000, 0x0000, 0x1d5f, 0x1d61,
+ 0x1d62, 0x0000, 0x0000, 0x0000, 0x1d66, 0x0000, 0x0000, 0x1d69, 0x0000, 0x0000,
+ 0x1d6b, 0x0000, 0x1d70, 0x0000, 0x1d72, 0x0000, 0x1d73, 0x0000, 0x0000, 0x1d75,
+ 0x1d76, 0x1d7a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1d7b, 0x0000, 0x1d7c,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1d7e, 0x0000, 0x0000, 0x1d80, 0x1d81,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1d82, 0x1d8b, 0x0000, 0x1d95, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1d96, 0x1d98, 0x0000, 0x1d9a, 0x1d9d, 0x1d9f, 0x0000, 0x0000, 0x0000, 0x1da0,
+ 0x0000, 0x1da3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1da5, 0x0000, 0x0000,
+ 0x0000, 0x1daa, 0x0000, 0x0000, 0x1dab, 0x0000, 0x0000, 0x1db0, 0x1db2, 0x1dba,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1dbc, 0x0000, 0x1dbd, 0x1dbe, 0x0000,
+ 0x0000, 0x1dbf, 0x0000, 0x0000, 0x1dc0, 0x0000, 0x1dc4, 0x0000, 0x1dc5, 0x1dc6,
+ 0x0000, 0x1dc7, 0x0000, 0x0000, 0x0000, 0x0000, 0x1dca, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1dcb, 0x1dcd, 0x1dcf, 0x0000, 0x0000, 0x1dd1, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1dd7, 0x0000, 0x1dd8, 0x1dda, 0x0000, 0x0000, 0x1ddb, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1ddc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1ddd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1ded, 0x1dee, 0x1def,
+ 0x1df1, 0x0000, 0x1df2, 0x0000, 0x1df3, 0x0000, 0x1e04, 0x1e08, 0x1e0a, 0x0000,
+ 0x1e0b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1e0c, 0x0000, 0x0000,
+ 0x1e14, 0x0000, 0x1e1b, 0x0000, 0x1e1c, 0x0000, 0x1e1d, 0x0000, 0x1e29, 0x0000,
+ 0x0000, 0x0000, 0x1e2a, 0x0000, 0x1e2c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1e31, 0x1e33, 0x0000, 0x1e34, 0x0000, 0x1e35, 0x1e37, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1e3b, 0x0000, 0x0000, 0x1e3d, 0x1e41,
+ 0x0000, 0x1e44, 0x0000, 0x0000, 0x0000, 0x1e47, 0x0000, 0x0000, 0x0000, 0x1e48,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1e49, 0x0000, 0x0000,
+ 0x1e4c, 0x0000, 0x1e4d, 0x0000, 0x1e4f, 0x0000, 0x1e50, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1e51, 0x1e58, 0x0000, 0x0000, 0x1e59, 0x0000, 0x0000, 0x1e5a, 0x0000,
+ 0x0000, 0x1e5b, 0x0000, 0x0000, 0x1e5c, 0x0000, 0x0000, 0x1e5d, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1e62, 0x1e67, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1e68, 0x1e69, 0x0000, 0x1e6e, 0x0000, 0x0000, 0x0000, 0x0000, 0x1e70, 0x0000,
+ 0x1e76, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1e77, 0x0000, 0x1e82, 0x0000,
+ 0x0000, 0x1e85, 0x0000, 0x1e86, 0x0000, 0x1e88, 0x0000, 0x1e8a, 0x1e90, 0x1e91,
+ 0x1e92, 0x0000, 0x1e94, 0x1e96, 0x0000, 0x0000, 0x0000, 0x1ea0, 0x0000, 0x1ea2,
+ 0x0000, 0x1ea3, 0x0000, 0x0000, 0x0000, 0x0000, 0x1ea4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1ea6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1eb0, 0x1eb1, 0x1eb2, 0x1eb6, 0x0000, 0x1eb9, 0x0000, 0x0000, 0x1eba, 0x0000,
+ 0x0000, 0x1ee9, 0x0000, 0x0000, 0x0000, 0x0000, 0x1eea, 0x0000, 0x0000, 0x1eeb,
+ 0x1eed, 0x1eee, 0x1eef, 0x0000, 0x1ef0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1ef1, 0x1ef2, 0x0000, 0x1ef4, 0x0000, 0x0000, 0x1ef5, 0x0000, 0x0000, 0x1ef7,
+ 0x0000, 0x1efa, 0x1eff, 0x0000, 0x0000, 0x1f01, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1f03, 0x0000, 0x1f04, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1f05, 0x0000, 0x0000, 0x0000, 0x0000, 0x1f09, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1f0d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1f0e,
+ 0x0000, 0x1f11, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1f20,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x1f21, 0x1f24, 0x1f38, 0x0000, 0x1f39, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1f3a, 0x0000, 0x0000, 0x0000, 0x0000, 0x1f47, 0x1f48, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1f4a,
+ 0x0000, 0x0000, 0x0000, 0x1f4c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x1f52, 0x0000, 0x1f5c, 0x1f5d, 0x0000, 0x0000, 0x1f5e, 0x0000,
+ 0x0000, 0x1f60, 0x1f61, 0x0000, 0x0000, 0x1f62, 0x1f64, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1f65, 0x0000, 0x0000,
+ 0x0000, 0x1f6b, 0x1f74, 0x1f7b, 0x1f7c, 0x0000, 0x0000, 0x1f7d, 0x0000, 0x0000,
+ 0x0000, 0x1f7e, 0x0000, 0x1f7f, 0x0000, 0x1f80, 0x0000, 0x1f82, 0x1f84, 0x0000,
+ 0x0000, 0x0000, 0x1f90, 0x1f91, 0x0000, 0x1f99, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1f9c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1f9d, 0x1fae,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1faf, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1fb0, 0x1fb3, 0x0000, 0x1fb5, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1fb8, 0x1fb9, 0x1fba, 0x1fc0, 0x1fc1, 0x1fc2, 0x1fc3,
+ 0x0000, 0x0000, 0x1fcb, 0x0000, 0x0000, 0x1fd0, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x1fd1, 0x1fd2, 0x1fd9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x1fda, 0x0000, 0x1fdd, 0x1fe0, 0x1fe2, 0x0000, 0x1fe4, 0x1fe5, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x1fe6, 0x1fe7, 0x0000, 0x0000, 0x1ff3, 0x0000, 0x0000,
+ 0x0000, 0x1ff9, 0x0000, 0x0000, 0x0000, 0x1ffa, 0x0000, 0x0000, 0x1ffb, 0x0000,
+ 0x0000, 0x0000, 0x1ffc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x200c, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2012, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2015,
+ 0x0000, 0x2016, 0x0000, 0x0000, 0x2017, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x201a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x201b, 0x0000, 0x201d, 0x0000, 0x0000, 0x201e, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2021, 0x0000, 0x0000, 0x0000, 0x2029, 0x0000, 0x0000,
+ 0x2032, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2037, 0x0000, 0x2038, 0x203c, 0x0000, 0x2040, 0x2041, 0x0000,
+ 0x0000, 0x2045, 0x0000, 0x2048, 0x2049, 0x0000, 0x0000, 0x0000, 0x0000, 0x204b,
+ 0x0000, 0x0000, 0x0000, 0x204d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x204e, 0x0000, 0x0000, 0x0000, 0x2056, 0x0000, 0x2057,
+ 0x205b, 0x0000, 0x0000, 0x205d, 0x205e, 0x2061, 0x2064, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2065, 0x2067, 0x206b, 0x206c, 0x206d, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2070, 0x2073, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2081, 0x0000, 0x0000, 0x0000, 0x2082, 0x2083, 0x2085, 0x2086, 0x2087,
+ 0x0000, 0x0000, 0x208c, 0x2092, 0x0000, 0x0000, 0x2094, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x209e, 0x0000, 0x0000, 0x209f, 0x0000, 0x20a2, 0x20a3, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x20a8, 0x20b4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x20b9, 0x0000, 0x0000, 0x0000, 0x0000, 0x20bc, 0x0000,
+ 0x0000, 0x0000, 0x20bf, 0x0000, 0x20c0, 0x0000, 0x0000, 0x0000, 0x0000, 0x20c2,
+ 0x20c8, 0x0000, 0x0000, 0x20ca, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x20cc, 0x20cd, 0x0000, 0x20ce, 0x0000, 0x20cf, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x20d0, 0x0000, 0x20d1, 0x20da, 0x20db, 0x0000, 0x20dc, 0x20dd,
+ 0x20e6, 0x0000, 0x0000, 0x0000, 0x0000, 0x20e7, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x20e8, 0x0000, 0x0000, 0x20e9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x20f9, 0x20fa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x20fb,
+ 0x0000, 0x0000, 0x20fc, 0x0000, 0x20ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x2103,
+ 0x0000, 0x210a, 0x0000, 0x210e, 0x0000, 0x0000, 0x2114, 0x0000, 0x2115, 0x0000,
+ 0x0000, 0x0000, 0x2116, 0x0000, 0x2119, 0x211f, 0x2120, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2121, 0x2123, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2124, 0x0000, 0x0000, 0x212a, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x212b, 0x212d, 0x212e, 0x0000, 0x2150, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2152, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2156, 0x215a, 0x215c, 0x0000, 0x0000, 0x215d, 0x0000,
+ 0x0000, 0x2161, 0x0000, 0x216d, 0x0000, 0x0000, 0x2179, 0x217a, 0x0000, 0x0000,
+ 0x217b, 0x217e, 0x217f, 0x2183, 0x0000, 0x2187, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x218f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x219e,
+ 0x0000, 0x219f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x21a0, 0x0000, 0x0000, 0x21a1, 0x0000, 0x0000, 0x0000, 0x21a2, 0x0000,
+ 0x0000, 0x0000, 0x21a3, 0x0000, 0x0000, 0x21a5, 0x21a9, 0x21ad, 0x0000, 0x0000,
+ 0x21ae, 0x0000, 0x21af, 0x0000, 0x21b0, 0x21b1, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x21bd, 0x21be, 0x21bf, 0x21ca, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x21cc, 0x21ce, 0x21cf, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x21d0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x21d1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x21d2, 0x0000, 0x0000, 0x21d3, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x21d4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x21d5, 0x21d7, 0x21d8, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x21d9, 0x0000, 0x21dd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x21df, 0x21e2, 0x0000, 0x21ec, 0x0000, 0x21ee, 0x0000, 0x0000, 0x0000, 0x21f1,
+ 0x0000, 0x0000, 0x0000, 0x21f2, 0x0000, 0x2202, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2206, 0x0000, 0x2207,
+ 0x2209, 0x220a, 0x2214, 0x2217, 0x2218, 0x221d, 0x2220, 0x0000, 0x2221, 0x2223,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2226, 0x2227, 0x2229, 0x2232, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2234, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2235,
+ 0x2238, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x223a, 0x223b, 0x223c, 0x0000,
+ 0x223e, 0x2241, 0x2242, 0x2245, 0x0000, 0x2246, 0x0000, 0x224b, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x224c, 0x0000, 0x0000, 0x224d, 0x0000, 0x0000, 0x224f, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2250, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2251, 0x0000, 0x0000, 0x0000, 0x0000, 0x2252, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2254, 0x2256, 0x0000, 0x0000, 0x0000, 0x2263, 0x0000, 0x226d, 0x226e, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x226f, 0x2270, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2272, 0x0000, 0x0000, 0x0000, 0x0000, 0x2276, 0x227c, 0x227d, 0x0000, 0x227f,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2281, 0x0000, 0x0000, 0x0000, 0x2282, 0x0000,
+ 0x0000, 0x0000, 0x2283, 0x0000, 0x2284, 0x0000, 0x0000, 0x0000, 0x2285, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2286, 0x2287, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2288, 0x0000,
+ 0x0000, 0x0000, 0x2289, 0x0000, 0x228a, 0x0000, 0x0000, 0x0000, 0x228e, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x228f, 0x0000, 0x2290, 0x0000,
+ 0x0000, 0x22a0, 0x0000, 0x0000, 0x22a2, 0x0000, 0x0000, 0x22a6, 0x22a8, 0x0000,
+ 0x0000, 0x22a9, 0x22aa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x22ab,
+ 0x0000, 0x22ac, 0x0000, 0x0000, 0x0000, 0x0000, 0x22c0, 0x22c4, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x22c5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x22c8, 0x0000,
+ 0x22cb, 0x0000, 0x0000, 0x0000, 0x0000, 0x22cf, 0x22d0, 0x22d1, 0x0000, 0x0000,
+ 0x0000, 0x22d2, 0x0000, 0x22d3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x22d4, 0x0000, 0x0000, 0x0000,
+ 0x22e1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x22e2, 0x0000, 0x22e4, 0x0000, 0x22ef, 0x0000, 0x0000, 0x0000, 0x22f1,
+ 0x22f3, 0x0000, 0x0000, 0x0000, 0x0000, 0x22f5, 0x0000, 0x22f6, 0x0000, 0x22fa,
+ 0x22fd, 0x0000, 0x0000, 0x230a, 0x0000, 0x0000, 0x0000, 0x0000, 0x230b, 0x0000,
+ 0x2324, 0x0000, 0x0000, 0x0000, 0x0000, 0x2325, 0x2328, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2329, 0x232a, 0x0000, 0x232c, 0x2331, 0x2340, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2343,
+ 0x237a, 0x0000, 0x0000, 0x237b, 0x2381, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2382, 0x0000, 0x0000, 0x0000, 0x2384, 0x0000, 0x0000, 0x2385, 0x0000,
+ 0x2387, 0x0000, 0x0000, 0x2388, 0x2389, 0x238d, 0x238e, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2398, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x239a, 0x0000, 0x0000, 0x23a0, 0x0000, 0x23a1, 0x23a2, 0x0000,
+ 0x0000, 0x0000, 0x23a3, 0x23a4, 0x0000, 0x0000, 0x23a5, 0x0000, 0x0000, 0x23a6,
+ 0x0000, 0x23a7, 0x0000, 0x0000, 0x23a9, 0x23ab, 0x0000, 0x0000, 0x0000, 0x23ac,
+ 0x0000, 0x0000, 0x23b0, 0x0000, 0x23b8, 0x0000, 0x0000, 0x23bc, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x23bd, 0x0000, 0x23c0, 0x23cb, 0x0000, 0x0000,
+ 0x23cd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x23ce, 0x0000, 0x23d1, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x23d2, 0x0000, 0x0000, 0x0000, 0x0000, 0x23d4,
+ 0x0000, 0x23d6, 0x23d7, 0x23d8, 0x0000, 0x23d9, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x23e2, 0x0000, 0x23e3, 0x0000, 0x0000, 0x0000,
+ 0x23e4, 0x23e5, 0x0000, 0x0000, 0x23e6, 0x0000, 0x0000, 0x0000, 0x0000, 0x23e7,
+ 0x0000, 0x0000, 0x0000, 0x23e9, 0x0000, 0x0000, 0x0000, 0x0000, 0x23ed, 0x23ee,
+ 0x0000, 0x0000, 0x0000, 0x23f8, 0x23fb, 0x0000, 0x0000, 0x0000, 0x0000, 0x2400,
+ 0x2401, 0x0000, 0x2404, 0x0000, 0x0000, 0x0000, 0x0000, 0x2405, 0x2406, 0x2407,
+ 0x0000, 0x2408, 0x2409, 0x0000, 0x0000, 0x240b, 0x0000, 0x240c, 0x240d, 0x0000,
+ 0x0000, 0x240e, 0x0000, 0x2410, 0x0000, 0x2411, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2412, 0x2413, 0x0000, 0x0000, 0x2415, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2416, 0x2418, 0x0000, 0x0000, 0x2419, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x241c, 0x0000, 0x0000, 0x0000, 0x0000, 0x241f, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2420,
+ 0x0000, 0x0000, 0x0000, 0x2421, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2422,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2423, 0x0000, 0x0000, 0x2424, 0x2427, 0x0000,
+ 0x0000, 0x0000, 0x2428, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2429, 0x0000, 0x0000, 0x242a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x242b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x242e, 0x242f, 0x0000, 0x0000,
+ 0x2431, 0x2432, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2434, 0x2437, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2439, 0x0000, 0x0000, 0x0000, 0x243c, 0x243d, 0x243f, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2440, 0x0000, 0x0000, 0x244d, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2451, 0x2455, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x245c, 0x245d, 0x2461,
+ 0x2469, 0x246a, 0x0000, 0x246e, 0x246f, 0x0000, 0x0000, 0x2505, 0x0000, 0x2507,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x250a, 0x0000, 0x0000, 0x0000, 0x250b, 0x0000,
+ 0x250c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x250d, 0x0000, 0x0000, 0x250e, 0x0000, 0x0000, 0x0000, 0x2511, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2512, 0x2513, 0x0000, 0x0000, 0x0000, 0x0000, 0x2515, 0x0000,
+ 0x2517, 0x2518, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x251c, 0x0000, 0x251e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2520, 0x2523,
+ 0x0000, 0x2525, 0x0000, 0x2527, 0x0000, 0x0000, 0x2529, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x252b, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x252c, 0x252d, 0x0000, 0x0000, 0x0000, 0x0000, 0x253c, 0x0000,
+ 0x0000, 0x253d, 0x0000, 0x0000, 0x2542, 0x0000, 0x2543, 0x2544, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2545, 0x0000, 0x0000, 0x0000, 0x2546, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2548, 0x2549, 0x0000, 0x254a, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x254b, 0x254c, 0x0000, 0x0000, 0x0000,
+ 0x254e, 0x0000, 0x2555, 0x0000, 0x2556, 0x0000, 0x2559, 0x0000, 0x255b, 0x2562,
+ 0x0000, 0x2564, 0x2566, 0x2567, 0x0000, 0x0000, 0x0000, 0x2569, 0x2578, 0x0000,
+ 0x0000, 0x257c, 0x0000, 0x0000, 0x0000, 0x257e, 0x0000, 0x2580, 0x0000, 0x2581,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2588, 0x0000, 0x25a6, 0x25a7,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x25a9, 0x0000, 0x0000,
+ 0x25ab, 0x25ac, 0x25ad, 0x25ae, 0x0000, 0x0000, 0x0000, 0x25b0, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x25b2, 0x25b6, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x25b7, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x25b8, 0x0000, 0x25b9, 0x0000, 0x0000, 0x0000, 0x0000, 0x25ba, 0x0000,
+ 0x0000, 0x25bb, 0x0000, 0x0000, 0x25c0, 0x0000, 0x0000, 0x25c1, 0x0000, 0x25c3,
+ 0x25c5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x25c7, 0x0000, 0x25c9, 0x25d1, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x25d2, 0x25d3, 0x25d4, 0x0000, 0x0000, 0x0000, 0x0000, 0x25d6, 0x25e2,
+ 0x0000, 0x0000, 0x25e4, 0x25e5, 0x25e6, 0x0000, 0x25e7, 0x25f5, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x25f6, 0x0000, 0x25fe, 0x0000, 0x0000, 0x0000, 0x0000, 0x25ff,
+ 0x0000, 0x0000, 0x0000, 0x2600, 0x0000, 0x260e, 0x0000, 0x2610, 0x0000, 0x0000,
+ 0x0000, 0x2616, 0x0000, 0x261a, 0x261b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x261c, 0x0000, 0x261d, 0x2628, 0x0000, 0x2629, 0x0000, 0x0000, 0x0000, 0x262a,
+ 0x262b, 0x0000, 0x262d, 0x0000, 0x262e, 0x0000, 0x262f, 0x0000, 0x0000, 0x0000,
+ 0x2630, 0x2631, 0x2638, 0x0000, 0x0000, 0x0000, 0x263a, 0x0000, 0x263d, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2641, 0x2642, 0x0000, 0x0000, 0x0000, 0x2650, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2653, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2654, 0x0000, 0x265c,
+ 0x0000, 0x265f, 0x0000, 0x2664, 0x0000, 0x0000, 0x0000, 0x0000, 0x2666, 0x0000,
+ 0x0000, 0x2669, 0x266c, 0x0000, 0x0000, 0x0000, 0x2670, 0x0000, 0x0000, 0x0000,
+ 0x2671, 0x0000, 0x0000, 0x2672, 0x0000, 0x2675, 0x0000, 0x0000, 0x0000, 0x2677,
+ 0x2678, 0x0000, 0x0000, 0x267f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2680, 0x2687, 0x2689, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x268a, 0x268b, 0x268c, 0x2691, 0x2693, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2698, 0x0000, 0x269e, 0x0000, 0x0000, 0x0000, 0x269f, 0x0000,
+ 0x0000, 0x26a3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x26b2,
+ 0x26b3, 0x26b4, 0x0000, 0x0000, 0x0000, 0x26b5, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x26b6, 0x0000, 0x0000, 0x0000, 0x0000, 0x26b9, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x26ba, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x26c2, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x26c3, 0x26c5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x26ca, 0x0000, 0x0000, 0x0000, 0x26cb, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x26cc, 0x0000, 0x26d3, 0x0000, 0x0000, 0x26d4, 0x26ea, 0x26ee, 0x0000,
+ 0x26f1, 0x26f2, 0x0000, 0x0000, 0x26f6, 0x0000, 0x26fb, 0x26fd, 0x26fe, 0x0000,
+ 0x0000, 0x0000, 0x2701, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2703,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2704, 0x2709, 0x0000,
+ 0x0000, 0x270a, 0x0000, 0x0000, 0x0000, 0x270d, 0x0000, 0x2714, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2717, 0x2723, 0x2724, 0x2726, 0x0000, 0x0000, 0x0000,
+ 0x272f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2730, 0x0000, 0x0000, 0x2732,
+ 0x0000, 0x2734, 0x0000, 0x0000, 0x0000, 0x0000, 0x2736, 0x0000, 0x2737, 0x2738,
+ 0x2739, 0x273a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x273b, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x273d, 0x2746, 0x0000, 0x0000, 0x0000, 0x0000, 0x2747,
+ 0x0000, 0x0000, 0x2749, 0x274a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x274b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x274c, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x274f, 0x0000, 0x2752, 0x0000,
+ 0x0000, 0x0000, 0x2756, 0x0000, 0x2758, 0x0000, 0x0000, 0x275c, 0x275d, 0x0000,
+ 0x0000, 0x2764, 0x0000, 0x2767, 0x276a, 0x276b, 0x0000, 0x0000, 0x0000, 0x276e,
+ 0x2771, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2772, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2777, 0x0000, 0x2778, 0x0000, 0x277c, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2788, 0x0000, 0x0000,
+ 0x0000, 0x278a, 0x0000, 0x0000, 0x278d, 0x0000, 0x0000, 0x0000, 0x0000, 0x278f,
+ 0x2790, 0x0000, 0x0000, 0x2796, 0x0000, 0x2797, 0x2798, 0x0000, 0x2799, 0x0000,
+ 0x0000, 0x27a3, 0x0000, 0x27a5, 0x27a6, 0x0000, 0x0000, 0x27ac, 0x0000, 0x27ae,
+ 0x27af, 0x27b0, 0x27b8, 0x0000, 0x0000, 0x27bb, 0x0000, 0x27bd, 0x0000, 0x0000,
+ 0x0000, 0x27c0, 0x0000, 0x0000, 0x0000, 0x0000, 0x27c1, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x27c2, 0x0000, 0x0000, 0x0000, 0x0000, 0x27d2, 0x0000, 0x27da, 0x0000,
+ 0x0000, 0x27db, 0x27dc, 0x0000, 0x27dd, 0x27de, 0x0000, 0x27df, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x27e1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x27e5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x27e9, 0x0000, 0x27f5,
+ 0x0000, 0x27f6, 0x27f7, 0x0000, 0x0000, 0x27f8, 0x0000, 0x0000, 0x27fd, 0x27fe,
+ 0x2804, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x280a, 0x0000, 0x280c, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x280f, 0x0000, 0x0000, 0x2811, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2812, 0x0000, 0x2813, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2814, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x282c, 0x2830, 0x2831, 0x0000, 0x0000, 0x0000,
+ 0x2832, 0x0000, 0x2838, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2839, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x283a, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x283b, 0x283f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2842, 0x0000, 0x0000,
+ 0x0000, 0x2843, 0x0000, 0x2844, 0x0000, 0x0000, 0x0000, 0x0000, 0x2847, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x284b, 0x284d, 0x0000, 0x0000,
+ 0x0000, 0x284e, 0x284f, 0x0000, 0x2851, 0x0000, 0x2856, 0x0000, 0x2858, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2859, 0x0000, 0x0000, 0x285b, 0x0000, 0x285c, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x285e, 0x0000, 0x0000, 0x285f, 0x2862,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2863, 0x286d, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x286f, 0x0000, 0x2871, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x287a, 0x0000, 0x2880, 0x0000, 0x2881, 0x0000, 0x0000, 0x0000,
+ 0x2884, 0x2885, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2886, 0x0000, 0x0000,
+ 0x0000, 0x2887, 0x0000, 0x2888, 0x0000, 0x0000, 0x2892, 0x2894, 0x2896, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2897, 0x0000, 0x0000, 0x2898,
+ 0x289a, 0x0000, 0x0000, 0x289c, 0x0000, 0x289d, 0x0000, 0x28a3, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x28a4, 0x0000, 0x28a5, 0x28aa,
+ 0x0000, 0x0000, 0x28ab, 0x0000, 0x28ac, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x28b5, 0x28b6, 0x28b7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x28b9, 0x0000, 0x0000, 0x28bb, 0x0000, 0x0000,
+ 0x28be, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x28c0, 0x0000, 0x28c1, 0x28c2,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x28c4, 0x28c5, 0x0000, 0x28c6, 0x0000, 0x28c7,
+ 0x0000, 0x28cc, 0x28ce, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x28d0, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x28d1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x28d3, 0x0000, 0x28d5, 0x0000, 0x0000, 0x0000, 0x28d6, 0x28d9,
+ 0x0000, 0x0000, 0x28db, 0x0000, 0x28e5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x28e8, 0x28f1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x28f2, 0x28f3, 0x0000,
+ 0x28fc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2903, 0x0000, 0x0000, 0x0000, 0x2906, 0x0000, 0x0000, 0x290e, 0x0000,
+ 0x2919, 0x291c, 0x0000, 0x0000, 0x291d, 0x291e, 0x2920, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2922, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2925, 0x0000, 0x2926, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2927, 0x2928, 0x0000, 0x0000, 0x2930, 0x0000, 0x2939,
+ 0x293c, 0x0000, 0x293d, 0x293f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2942,
+ 0x2943, 0x2944, 0x0000, 0x2945, 0x0000, 0x0000, 0x0000, 0x2946, 0x0000, 0x2947,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x294f, 0x0000, 0x0000, 0x2950, 0x0000, 0x2952,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2959, 0x295a, 0x295b, 0x295d, 0x0000, 0x295e, 0x0000, 0x0000, 0x2962, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2966, 0x0000, 0x0000, 0x2969, 0x0000, 0x0000,
+ 0x0000, 0x296a, 0x0000, 0x296b, 0x0000, 0x296c, 0x0000, 0x296d, 0x0000, 0x0000,
+ 0x296f, 0x0000, 0x2982, 0x0000, 0x2983, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2985, 0x2986, 0x2987, 0x0000, 0x0000, 0x0000, 0x2996, 0x0000, 0x0000, 0x0000,
+ 0x2997, 0x0000, 0x299a, 0x0000, 0x299b, 0x0000, 0x0000, 0x0000, 0x299c, 0x299d,
+ 0x299f, 0x0000, 0x29a2, 0x0000, 0x0000, 0x29a3, 0x0000, 0x29ab, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x29ad, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x29ae, 0x0000, 0x0000, 0x0000, 0x29af, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x29b0, 0x29b1, 0x0000, 0x29b2, 0x0000, 0x0000, 0x0000, 0x29b4, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x29b6, 0x0000, 0x29ba, 0x0000, 0x0000,
+ 0x29c4, 0x0000, 0x29c9, 0x0000, 0x0000, 0x0000, 0x0000, 0x29ca, 0x0000, 0x0000,
+ 0x0000, 0x29cc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x29cf, 0x0000, 0x29d0,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x29d1, 0x0000, 0x29db,
+ 0x29de, 0x29e0, 0x0000, 0x0000, 0x29e2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x29e3, 0x0000, 0x0000, 0x0000, 0x0000, 0x29e6, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x29e7, 0x29ea, 0x29f7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x29f8, 0x0000, 0x0000, 0x29f9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x29fc, 0x0000, 0x0000, 0x0000, 0x0000, 0x29fe, 0x0000,
+ 0x0000, 0x2a00, 0x2a01, 0x0000, 0x0000, 0x0000, 0x2a04, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2a06, 0x0000, 0x0000, 0x0000, 0x2a07, 0x0000, 0x2a11,
+ 0x0000, 0x0000, 0x2a14, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2a15,
+ 0x0000, 0x0000, 0x0000, 0x2a19, 0x0000, 0x0000, 0x2a1b, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2a1c, 0x2a20, 0x0000, 0x0000, 0x0000,
+ 0x2a25, 0x0000, 0x0000, 0x0000, 0x2a27, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2a2b, 0x0000, 0x0000, 0x2a2c, 0x0000, 0x2a38,
+ 0x0000, 0x2a39, 0x0000, 0x0000, 0x0000, 0x2a3a, 0x0000, 0x0000, 0x0000, 0x2a3c,
+ 0x0000, 0x0000, 0x2a3e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2a3f, 0x0000, 0x0000, 0x0000, 0x0000, 0x2a40, 0x2a41, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2a43, 0x0000, 0x2a44, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2a45, 0x2a46, 0x2a47, 0x0000, 0x2a4a, 0x2a61, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2a62, 0x0000, 0x0000, 0x2a64, 0x0000, 0x2a65, 0x0000, 0x0000, 0x2a68, 0x0000,
+ 0x0000, 0x2a69, 0x2a6a, 0x2a6b, 0x2a6c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2a6f, 0x0000, 0x2a72, 0x2a73, 0x2a78, 0x2a8a, 0x0000, 0x0000, 0x2a8b,
+ 0x2a8c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2a8d, 0x0000, 0x0000, 0x0000,
+ 0x2a90, 0x2a93, 0x0000, 0x0000, 0x2a94, 0x2a96, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2a97, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2a99, 0x0000, 0x2a9a, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2a9c, 0x2a9f, 0x0000, 0x2aa0, 0x0000, 0x0000, 0x2aa4, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2aa5, 0x0000, 0x2aa6, 0x0000, 0x0000, 0x0000, 0x2aab,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2aac, 0x0000, 0x0000, 0x2ab0, 0x2ab1,
+ 0x0000, 0x0000, 0x2ab2, 0x0000, 0x0000, 0x0000, 0x2ab4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2abb, 0x0000, 0x0000, 0x2ac1, 0x0000, 0x0000, 0x0000, 0x2ac3, 0x0000,
+ 0x0000, 0x2ac4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2ace, 0x0000, 0x2ad0, 0x2ad2, 0x0000, 0x0000,
+ 0x2ad4, 0x0000, 0x0000, 0x0000, 0x2ad6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2ad7, 0x0000, 0x0000, 0x0000, 0x2ad8,
+ 0x0000, 0x0000, 0x0000, 0x2add, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2adf,
+ 0x0000, 0x0000, 0x0000, 0x2ae0, 0x2ae2, 0x0000, 0x0000, 0x2ae6, 0x2ae8, 0x2aeb,
+ 0x0000, 0x0000, 0x2aec, 0x0000, 0x2aed, 0x0000, 0x0000, 0x2aef, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2af0, 0x0000, 0x0000, 0x0000, 0x2af1, 0x0000, 0x2af3, 0x0000,
+ 0x0000, 0x0000, 0x2af4, 0x2af5, 0x0000, 0x0000, 0x0000, 0x2af6, 0x0000, 0x2af7,
+ 0x0000, 0x2af9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2b02, 0x2b04,
+ 0x0000, 0x2b05, 0x2b08, 0x2b09, 0x0000, 0x0000, 0x2b0b, 0x2b0c, 0x2b0d, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2b0e, 0x0000, 0x0000, 0x2b0f, 0x2b15, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2b17, 0x0000, 0x0000, 0x0000, 0x2b1a, 0x0000, 0x0000, 0x0000, 0x0000, 0x2b2f,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2b30, 0x2b34, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2b35, 0x0000, 0x0000, 0x2b38, 0x2b39, 0x0000, 0x2b3a,
+ 0x0000, 0x2b3d, 0x0000, 0x2b4d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2b4e,
+ 0x0000, 0x0000, 0x0000, 0x2b50, 0x0000, 0x0000, 0x0000, 0x2b56, 0x0000, 0x0000,
+ 0x0000, 0x2b57, 0x2b58, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2b59,
+ 0x2b5a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2b5b, 0x0000, 0x0000,
+ 0x2b5e, 0x2b64, 0x0000, 0x0000, 0x0000, 0x2b65, 0x0000, 0x2b6a, 0x2b6f, 0x0000,
+ 0x2b7b, 0x0000, 0x0000, 0x0000, 0x2b86, 0x0000, 0x0000, 0x2b87, 0x0000, 0x2b8a,
+ 0x0000, 0x2b8b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2b8c, 0x0000, 0x2b8d,
+ 0x2b90, 0x2b91, 0x2b92, 0x0000, 0x2b94, 0x0000, 0x2b95, 0x0000, 0x0000, 0x0000,
+ 0x2b96, 0x0000, 0x0000, 0x2b97, 0x2b98, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2b9b, 0x0000, 0x0000,
+ 0x2b9c, 0x2b9e, 0x0000, 0x0000, 0x0000, 0x2ba4, 0x2ba6, 0x0000, 0x0000, 0x0000,
+ 0x2ba8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2bae, 0x2baf, 0x0000, 0x0000,
+ 0x0000, 0x2bb0, 0x2bb3, 0x0000, 0x0000, 0x2bb4, 0x2bb5, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2bba, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2bc0, 0x2bc2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2bc3,
+ 0x0000, 0x2bc4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2bc5, 0x0000, 0x0000,
+ 0x0000, 0x2bc6, 0x0000, 0x2bc7, 0x0000, 0x0000, 0x2bc9, 0x0000, 0x2bcb, 0x0000,
+ 0x2bce, 0x0000, 0x0000, 0x2bdf, 0x0000, 0x0000, 0x0000, 0x2c1d, 0x2c1f, 0x0000,
+ 0x0000, 0x2c20, 0x2c21, 0x2c26, 0x0000, 0x0000, 0x0000, 0x2c2b, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2c2d, 0x2c2e, 0x0000, 0x2c2f, 0x0000, 0x0000, 0x0000, 0x2c31,
+ 0x0000, 0x2c32, 0x0000, 0x0000, 0x0000, 0x0000, 0x2c46, 0x0000, 0x2c4a, 0x0000,
+ 0x0000, 0x0000, 0x2c4b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2c4c, 0x0000,
+ 0x2c4d, 0x2c4e, 0x0000, 0x2c50, 0x0000, 0x2c51, 0x0000, 0x0000, 0x0000, 0x2c54,
+ 0x2c55, 0x0000, 0x0000, 0x2c56, 0x0000, 0x0000, 0x0000, 0x2c5b, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2c5c, 0x0000, 0x2c5d, 0x2c6a, 0x0000, 0x0000,
+ 0x2c6b, 0x0000, 0x2c6e, 0x2c70, 0x0000, 0x0000, 0x0000, 0x2c71, 0x0000, 0x0000,
+ 0x2c72, 0x2c77, 0x0000, 0x2c7a, 0x2c87, 0x0000, 0x2c88, 0x2c8e, 0x0000, 0x0000,
+ 0x0000, 0x2c90, 0x0000, 0x0000, 0x2c91, 0x2c94, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2c99, 0x0000, 0x0000, 0x0000, 0x2c9a, 0x0000, 0x2c9d, 0x0000, 0x2ca2, 0x2ca5,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2ca6, 0x0000, 0x2cad, 0x0000, 0x2cae,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2cb0, 0x2cbd, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2cbe, 0x0000, 0x0000, 0x0000, 0x0000, 0x2cbf, 0x0000,
+ 0x0000, 0x2cc0, 0x2cc4, 0x2cc5, 0x2cc7, 0x0000, 0x2ccd, 0x0000, 0x2cd1, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2cd2, 0x0000, 0x0000, 0x0000, 0x2cd3, 0x0000, 0x2cd4,
+ 0x2cd5, 0x2cd8, 0x0000, 0x0000, 0x0000, 0x0000, 0x2cd9, 0x0000, 0x0000, 0x2cdc,
+ 0x0000, 0x0000, 0x2cdf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2ce9, 0x0000, 0x0000, 0x2cee, 0x0000, 0x2cf5, 0x0000,
+ 0x0000, 0x2cf6, 0x2cf7, 0x2cf9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2cfb, 0x0000, 0x0000, 0x0000, 0x0000, 0x2cfc,
+ 0x0000, 0x2d00, 0x2d01, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2d09, 0x2d0a, 0x2d0b, 0x2d0e, 0x0000, 0x0000,
+ 0x2d17, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2d1b, 0x0000, 0x2d1c, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2d20, 0x2d24, 0x0000, 0x2d25, 0x0000, 0x0000,
+ 0x2d27, 0x0000, 0x2d28, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2d29,
+ 0x0000, 0x0000, 0x2d2b, 0x2d2c, 0x0000, 0x2d2d, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2d2f, 0x0000, 0x0000, 0x0000, 0x2d31, 0x0000, 0x2d36, 0x0000, 0x2d37, 0x0000,
+ 0x0000, 0x0000, 0x2d39, 0x0000, 0x2d3a, 0x0000, 0x0000, 0x0000, 0x2d3c, 0x2d3d,
+ 0x0000, 0x0000, 0x0000, 0x2d3e, 0x2d40, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2d43, 0x0000, 0x2d44, 0x2d47, 0x0000, 0x2d4b, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2d4c, 0x0000, 0x2d4d, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2d4e, 0x2d51, 0x0000, 0x0000, 0x0000, 0x2d52, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2d53, 0x2d54, 0x0000,
+ 0x2d56, 0x0000, 0x0000, 0x2d58, 0x0000, 0x0000, 0x0000, 0x0000, 0x2d5a, 0x0000,
+ 0x0000, 0x2d5b, 0x0000, 0x0000, 0x0000, 0x0000, 0x2d5d, 0x0000, 0x2d66, 0x0000,
+ 0x0000, 0x0000, 0x2d67, 0x0000, 0x0000, 0x0000, 0x0000, 0x2d69, 0x0000, 0x0000,
+ 0x2d6a, 0x2d6b, 0x2d6c, 0x2d6e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2d77, 0x0000, 0x0000, 0x2d7e, 0x0000, 0x2d80, 0x2d81, 0x0000, 0x2d82, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2d83, 0x0000,
+ 0x0000, 0x2d84, 0x2d85, 0x2d88, 0x0000, 0x0000, 0x2d9d, 0x2d9f, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2da0, 0x0000, 0x0000, 0x2da1, 0x0000, 0x2da5, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2da8, 0x0000, 0x0000, 0x0000,
+ 0x2dc4, 0x0000, 0x2dc7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2dc9, 0x0000,
+ 0x0000, 0x2dcc, 0x2ddf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2de1, 0x2de4, 0x2de6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2de7,
+ 0x0000, 0x0000, 0x0000, 0x2de8, 0x2dea, 0x0000, 0x2deb, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2def, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2df0, 0x0000, 0x0000, 0x0000, 0x2df1, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2df6, 0x2df7, 0x0000, 0x2dfc, 0x2dfd, 0x0000, 0x2dfe, 0x0000,
+ 0x0000, 0x2dff, 0x0000, 0x2e01, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2e02, 0x2e04, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2e07, 0x0000, 0x2e08, 0x0000, 0x0000, 0x0000, 0x2e09, 0x0000,
+ 0x0000, 0x0000, 0x2e0a, 0x0000, 0x0000, 0x0000, 0x0000, 0x2e0c, 0x0000, 0x0000,
+ 0x2e0d, 0x2e0f, 0x2e10, 0x0000, 0x0000, 0x0000, 0x0000, 0x2e13, 0x2e3a, 0x2e3b,
+ 0x2e3c, 0x0000, 0x0000, 0x2e3d, 0x0000, 0x0000, 0x0000, 0x2e3e, 0x0000, 0x0000,
+ 0x2e46, 0x2e4b, 0x0000, 0x2e4c, 0x0000, 0x2e5d, 0x0000, 0x0000, 0x0000, 0x2e5f,
+ 0x0000, 0x0000, 0x0000, 0x2e60, 0x2e62, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2e63, 0x0000, 0x2e64, 0x2e65, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2e6b, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2e6c, 0x0000, 0x2e6d, 0x0000, 0x2e6e, 0x0000, 0x0000,
+ 0x2e6f, 0x0000, 0x2e76, 0x2e77, 0x2e79, 0x2e85, 0x2e86, 0x0000, 0x2e88, 0x2e8e,
+ 0x0000, 0x0000, 0x2e90, 0x0000, 0x2e92, 0x2e94, 0x2e97, 0x2e98, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2e99, 0x0000, 0x2e9e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2ea5, 0x2ea7, 0x2ea8, 0x0000, 0x2ea9, 0x0000, 0x0000, 0x0000, 0x0000, 0x2eac,
+ 0x2ead, 0x0000, 0x0000, 0x0000, 0x0000, 0x2eb1, 0x0000, 0x2eb2, 0x0000, 0x2eb3,
+ 0x0000, 0x2eb4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2eb5, 0x0000, 0x0000,
+ 0x2eb7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2eb9,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2eca, 0x0000, 0x0000, 0x0000, 0x2ecb,
+ 0x2ecc, 0x2ed2, 0x2ed3, 0x0000, 0x2ed8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2ed9, 0x0000, 0x0000, 0x0000, 0x2eda, 0x0000, 0x2edf, 0x2ee4, 0x2ee5, 0x2ee6,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2eeb, 0x0000, 0x0000, 0x2eec, 0x2eee,
+ 0x0000, 0x0000, 0x2eef, 0x0000, 0x0000, 0x2ef3, 0x2efc, 0x0000, 0x0000, 0x2efd,
+ 0x0000, 0x0000, 0x2f00, 0x2f01, 0x0000, 0x0000, 0x0000, 0x0000, 0x2f02, 0x0000,
+ 0x2f09, 0x2f0b, 0x0000, 0x0000, 0x2f0c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2f0e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2f16, 0x2f17, 0x0000, 0x2f18, 0x0000, 0x0000, 0x0000, 0x2f1c, 0x2f20, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2f21, 0x2f23, 0x2f24, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2f2a, 0x0000, 0x0000, 0x0000, 0x2f2b,
+ 0x2f2c, 0x0000, 0x0000, 0x0000, 0x2f2f, 0x0000, 0x2f31, 0x2f36, 0x2f37, 0x0000,
+ 0x0000, 0x2f38, 0x0000, 0x0000, 0x0000, 0x0000, 0x2f39, 0x0000, 0x2f3c, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x2f41, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2f42, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2f46, 0x2f47, 0x2f48, 0x2f4f,
+ 0x0000, 0x0000, 0x2f52, 0x2f54, 0x0000, 0x0000, 0x0000, 0x2f56, 0x0000, 0x0000,
+ 0x0000, 0x2f57, 0x2f58, 0x2f60, 0x0000, 0x0000, 0x0000, 0x0000, 0x2f62, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2f63, 0x0000, 0x0000, 0x0000, 0x2f64,
+ 0x2f66, 0x0000, 0x0000, 0x0000, 0x0000, 0x2f69, 0x0000, 0x2f6b, 0x0000, 0x2f6d,
+ 0x0000, 0x0000, 0x2f6e, 0x0000, 0x0000, 0x0000, 0x2f70, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2f71, 0x0000, 0x2f74, 0x0000, 0x2f79, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2f7a, 0x2f8b, 0x2f8d, 0x0000, 0x0000, 0x0000, 0x2f8f, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x2f92, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2f97, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2f98,
+ 0x0000, 0x0000, 0x0000, 0x2f9a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2f9b,
+ 0x2f9c, 0x0000, 0x0000, 0x2f9d, 0x0000, 0x2fa4, 0x0000, 0x2fa5, 0x0000, 0x0000,
+ 0x2fa6, 0x0000, 0x2fa9, 0x0000, 0x0000, 0x0000, 0x0000, 0x2fab, 0x0000, 0x2fb1,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2fb2, 0x2fb3, 0x2fb4, 0x2fb5, 0x0000, 0x2fb9,
+ 0x2fba, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x2fbe, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2fbf, 0x0000,
+ 0x0000, 0x2fc5, 0x0000, 0x0000, 0x0000, 0x0000, 0x2fc9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x2fca, 0x0000, 0x0000, 0x2fcc, 0x2fd2, 0x0000, 0x0000, 0x0000, 0x2fd3,
+ 0x0000, 0x0000, 0x0000, 0x2fd4, 0x2fdd, 0x0000, 0x2fde, 0x2fe0, 0x0000, 0x2fe1,
+ 0x0000, 0x0000, 0x2ff3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2ff5, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x2ff6, 0x0000, 0x3001, 0x0000, 0x0000, 0x3002,
+ 0x0000, 0x3004, 0x3005, 0x0000, 0x0000, 0x3006, 0x0000, 0x3007, 0x0000, 0x0000,
+ 0x3008, 0x0000, 0x3009, 0x0000, 0x300a, 0x0000, 0x0000, 0x0000, 0x0000, 0x300d,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3015, 0x0000, 0x3032, 0x3034, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3035, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3036, 0x3037, 0x0000, 0x3038, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3039, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x303a, 0x0000, 0x0000, 0x0000, 0x0000, 0x303c, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x303e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x303f, 0x0000, 0x3043, 0x3044,
+ 0x3045, 0x0000, 0x0000, 0x304f, 0x3052, 0x3053, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3054, 0x3058, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x305b, 0x0000, 0x305e, 0x0000, 0x305f, 0x0000, 0x0000, 0x3060, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3069, 0x0000, 0x0000, 0x306a, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x306e, 0x3073, 0x0000, 0x0000, 0x3074, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x307a,
+ 0x0000, 0x0000, 0x0000, 0x307b, 0x0000, 0x0000, 0x0000, 0x307c, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3084, 0x0000, 0x3085, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3087, 0x0000, 0x3089, 0x308d, 0x0000, 0x0000, 0x0000, 0x308f, 0x3090, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3092, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3093, 0x3094, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3095, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3096, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x309d, 0x0000, 0x0000, 0x0000, 0x30a2, 0x30a3, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x30a4, 0x30bb, 0x0000, 0x0000,
+ 0x30cd, 0x30ce, 0x0000, 0x0000, 0x0000, 0x30cf, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x30d0, 0x30d6, 0x30dd, 0x0000, 0x0000, 0x0000, 0x0000, 0x30de, 0x0000, 0x30e0,
+ 0x30e1, 0x0000, 0x0000, 0x0000, 0x0000, 0x30e2, 0x0000, 0x0000, 0x0000, 0x30e3,
+ 0x0000, 0x30e8, 0x0000, 0x0000, 0x0000, 0x30ec, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x30ef, 0x0000, 0x0000, 0x0000, 0x30f0, 0x0000, 0x0000, 0x0000,
+ 0x30f1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x30f2, 0x0000, 0x30f7, 0x0000,
+ 0x0000, 0x30f8, 0x0000, 0x30fa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x30fc, 0x0000, 0x3104, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3106, 0x0000, 0x0000, 0x0000, 0x3107, 0x3108,
+ 0x0000, 0x0000, 0x0000, 0x310a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x310b, 0x0000, 0x0000, 0x3112, 0x0000, 0x3115, 0x0000, 0x3116,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3119, 0x0000, 0x0000, 0x0000, 0x311b, 0x311e, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3121, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3122, 0x3123, 0x313b, 0x0000, 0x3140, 0x0000, 0x0000,
+ 0x3143, 0x0000, 0x3144, 0x0000, 0x3147, 0x0000, 0x3151, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3153, 0x3166, 0x0000, 0x3168, 0x0000, 0x0000, 0x3171, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x317e, 0x0000, 0x0000, 0x317f, 0x0000, 0x3181, 0x3185, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3187, 0x0000, 0x3189, 0x0000, 0x318a, 0x3195, 0x0000, 0x3196, 0x0000, 0x3199,
+ 0x0000, 0x319d, 0x0000, 0x0000, 0x0000, 0x319f, 0x31a0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x31a3, 0x31c1, 0x0000, 0x0000, 0x31c3, 0x0000, 0x0000, 0x31c4, 0x0000,
+ 0x0000, 0x31c6, 0x31c7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x31c9, 0x0000, 0x31ca, 0x31cb, 0x0000, 0x31cc, 0x0000, 0x0000,
+ 0x31d7, 0x31df, 0x0000, 0x0000, 0x0000, 0x0000, 0x31e5, 0x0000, 0x31e6, 0x31ea,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x31eb, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x31ec, 0x31f9, 0x0000, 0x3218, 0x0000, 0x3219, 0x0000,
+ 0x3224, 0x0000, 0x0000, 0x0000, 0x0000, 0x3227, 0x0000, 0x322a, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x322b, 0x322d, 0x0000, 0x322e, 0x0000, 0x0000, 0x0000, 0x0000, 0x322f, 0x0000,
+ 0x0000, 0x3232, 0x3234, 0x3235, 0x0000, 0x0000, 0x0000, 0x3236, 0x0000, 0x0000,
+ 0x0000, 0x3237, 0x0000, 0x3238, 0x0000, 0x323a, 0x0000, 0x0000, 0x323b, 0x0000,
+ 0x323e, 0x0000, 0x323f, 0x0000, 0x0000, 0x3242, 0x0000, 0x3245, 0x3248, 0x3249,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x324b,
+ 0x0000, 0x324d, 0x0000, 0x0000, 0x324e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3254, 0x3255, 0x3258, 0x0000, 0x3259, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x325d, 0x0000, 0x0000, 0x0000, 0x325f, 0x3260, 0x3262,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3266, 0x0000, 0x326d,
+ 0x326e, 0x0000, 0x327e, 0x0000, 0x3280, 0x0000, 0x0000, 0x0000, 0x3281, 0x0000,
+ 0x3282, 0x0000, 0x0000, 0x0000, 0x0000, 0x3283, 0x0000, 0x3284, 0x3285, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3286, 0x0000, 0x328e, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3290, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3292, 0x0000, 0x0000, 0x3294, 0x0000, 0x0000, 0x3295, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3296, 0x0000, 0x0000, 0x0000, 0x0000, 0x3297, 0x0000, 0x3298,
+ 0x0000, 0x3299, 0x0000, 0x0000, 0x0000, 0x329a, 0x329e, 0x329f, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x32a0, 0x32a4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x32a6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x32aa,
+ 0x0000, 0x32ab, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x32ac, 0x0000,
+ 0x0000, 0x32b6, 0x0000, 0x0000, 0x0000, 0x32b8, 0x32b9, 0x0000, 0x32ba, 0x32c4,
+ 0x32c5, 0x32c9, 0x32ca, 0x0000, 0x0000, 0x0000, 0x0000, 0x32cc, 0x0000, 0x0000,
+ 0x32cd, 0x0000, 0x0000, 0x32cf, 0x32d1, 0x0000, 0x32d9, 0x0000, 0x0000, 0x0000,
+ 0x32dc, 0x0000, 0x32dd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x32de, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x32e0, 0x32e3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x32e4,
+ 0x0000, 0x0000, 0x32e5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x32e8, 0x0000, 0x32ed, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x32f0,
+ 0x0000, 0x0000, 0x32f1, 0x0000, 0x0000, 0x0000, 0x32f3, 0x32f4, 0x32f6, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x32f7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x32f9, 0x32fe, 0x0000, 0x3300, 0x0000, 0x0000, 0x3304, 0x3305, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x330b, 0x0000, 0x0000, 0x330c, 0x0000, 0x330f,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3315, 0x3316, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3317, 0x3318, 0x3319, 0x0000, 0x331a, 0x0000, 0x0000, 0x0000,
+ 0x331d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x331e, 0x0000,
+ 0x331f, 0x3320, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3326, 0x0000, 0x332b,
+ 0x0000, 0x332c, 0x0000, 0x0000, 0x0000, 0x332d, 0x0000, 0x3345, 0x3346, 0x3348,
+ 0x3349, 0x0000, 0x0000, 0x334a, 0x0000, 0x334b, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x334e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x335e, 0x0000, 0x3370, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3371, 0x0000, 0x0000, 0x3372,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3376, 0x0000, 0x0000, 0x0000, 0x3378, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3379, 0x0000, 0x337a, 0x337f, 0x3383, 0x0000,
+ 0x0000, 0x0000, 0x3385, 0x0000, 0x0000, 0x3386, 0x0000, 0x0000, 0x3387, 0x0000,
+ 0x0000, 0x3396, 0x0000, 0x0000, 0x0000, 0x3397, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x339c, 0x0000, 0x0000, 0x33a3,
+ 0x33b0, 0x0000, 0x0000, 0x0000, 0x33b9, 0x0000, 0x33c1, 0x33c5, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x33c7, 0x33cb, 0x0000, 0x33cc, 0x33cd, 0x0000, 0x33ce,
+ 0x0000, 0x33d8, 0x0000, 0x0000, 0x0000, 0x0000, 0x33dc, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x33dd, 0x33f3, 0x0000, 0x0000, 0x33f5, 0x33f6, 0x0000, 0x0000, 0x33f7,
+ 0x0000, 0x0000, 0x33f9, 0x0000, 0x33fe, 0x0000, 0x0000, 0x0000, 0x33ff, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x340d, 0x0000, 0x3410, 0x0000, 0x0000, 0x0000, 0x3411,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3412, 0x0000, 0x0000, 0x3413,
+ 0x0000, 0x3417, 0x0000, 0x0000, 0x341e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x341f, 0x0000, 0x342a, 0x0000, 0x3432, 0x0000, 0x3436, 0x3437, 0x3439, 0x0000,
+ 0x0000, 0x343b, 0x343c, 0x0000, 0x343d, 0x343e, 0x0000, 0x3440, 0x0000, 0x3444,
+ 0x3445, 0x344a, 0x0000, 0x344b, 0x344c, 0x0000, 0x344d, 0x344f, 0x3453, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3459, 0x3461, 0x0000, 0x3462, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x346c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x346e, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x346f, 0x0000, 0x0000, 0x0000, 0x0000, 0x3471, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3473, 0x0000, 0x0000, 0x0000, 0x3474, 0x0000,
+ 0x0000, 0x3476, 0x347e, 0x0000, 0x347f, 0x0000, 0x3485, 0x0000, 0x3488, 0x3489,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x348b, 0x0000, 0x3491, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3492, 0x3493, 0x0000, 0x3494, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3498, 0x3499, 0x349a, 0x349e, 0x0000, 0x349f, 0x34a0, 0x34a2, 0x34a3,
+ 0x0000, 0x34a4, 0x0000, 0x0000, 0x34a6, 0x34a7, 0x0000, 0x34a9, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x34af, 0x0000, 0x34b2, 0x0000, 0x34b5, 0x0000, 0x0000, 0x34b6,
+ 0x0000, 0x0000, 0x34b7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x34b8, 0x34b9, 0x0000,
+ 0x34bc, 0x0000, 0x0000, 0x34cc, 0x34d2, 0x0000, 0x0000, 0x34d5, 0x34d8, 0x0000,
+ 0x0000, 0x0000, 0x34da, 0x34df, 0x0000, 0x34e1, 0x34e3, 0x0000, 0x34e4, 0x0000,
+ 0x34e7, 0x0000, 0x34e8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x34e9,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x34eb, 0x0000, 0x0000, 0x0000,
+ 0x34ed, 0x34f3, 0x0000, 0x0000, 0x0000, 0x34f4, 0x34f5, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x34f6, 0x0000, 0x34fb, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x34fc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x34fe, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3501, 0x0000, 0x0000,
+ 0x3503, 0x0000, 0x0000, 0x0000, 0x0000, 0x3505, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x350a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x350d, 0x0000, 0x3512, 0x0000, 0x351b, 0x0000, 0x3520,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3521, 0x3523,
+ 0x0000, 0x3524, 0x3525, 0x3526, 0x3527, 0x0000, 0x0000, 0x3531, 0x3532, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3537, 0x0000, 0x3539, 0x353b,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x353d, 0x0000,
+ 0x0000, 0x0000, 0x3542, 0x0000, 0x0000, 0x0000, 0x3546, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3556, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3558, 0x0000, 0x355b, 0x0000,
+ 0x0000, 0x355c, 0x0000, 0x0000, 0x355e, 0x0000, 0x0000, 0x0000, 0x355f, 0x0000,
+ 0x3560, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3564, 0x0000, 0x3565, 0x3567,
+ 0x0000, 0x0000, 0x3568, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x356b,
+ 0x3575, 0x0000, 0x3576, 0x0000, 0x0000, 0x0000, 0x3577, 0x0000, 0x0000, 0x0000,
+ 0x357c, 0x357e, 0x3581, 0x0000, 0x0000, 0x0000, 0x3586, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3589, 0x0000, 0x0000, 0x0000, 0x0000, 0x358b, 0x0000, 0x0000,
+ 0x0000, 0x3592, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3593, 0x0000, 0x3594, 0x3595, 0x0000, 0x0000, 0x3597, 0x359c, 0x35a2,
+ 0x35a3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x35a4,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x35a6, 0x0000, 0x35a8,
+ 0x0000, 0x0000, 0x35a9, 0x35aa, 0x35b3, 0x0000, 0x35b7, 0x0000, 0x0000, 0x35b8,
+ 0x0000, 0x0000, 0x0000, 0x35b9, 0x0000, 0x35bd, 0x0000, 0x0000, 0x35c2, 0x35c3,
+ 0x0000, 0x35c4, 0x35c5, 0x0000, 0x35c6, 0x0000, 0x0000, 0x35c7, 0x0000, 0x0000,
+ 0x0000, 0x35c8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x35c9,
+ 0x0000, 0x0000, 0x35cc, 0x0000, 0x35cf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x35d0, 0x35d2, 0x35db, 0x0000, 0x0000, 0x0000, 0x35e5,
+ 0x0000, 0x35e6, 0x0000, 0x35e9, 0x0000, 0x35ec, 0x35ee, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x35f8, 0x35f9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x360a, 0x0000, 0x360c, 0x0000,
+ 0x0000, 0x360e, 0x0000, 0x0000, 0x360f, 0x0000, 0x3610, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3612, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3613, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3615, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3622, 0x0000, 0x0000, 0x3624, 0x0000, 0x0000,
+ 0x3625, 0x0000, 0x0000, 0x3626, 0x3627, 0x0000, 0x362c, 0x0000, 0x362d, 0x362e,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3630, 0x0000, 0x0000, 0x0000, 0x0000, 0x3631, 0x3636, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x363e, 0x0000, 0x3640,
+ 0x3641, 0x3642, 0x0000, 0x0000, 0x3643, 0x3646, 0x0000, 0x3649, 0x364b, 0x364c,
+ 0x3650, 0x0000, 0x0000, 0x3652, 0x0000, 0x0000, 0x0000, 0x3655, 0x0000, 0x0000,
+ 0x0000, 0x3656, 0x0000, 0x0000, 0x0000, 0x3657, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3658, 0x365d, 0x0000, 0x0000, 0x0000, 0x0000, 0x365e, 0x0000, 0x365f,
+ 0x0000, 0x0000, 0x3660, 0x0000, 0x0000, 0x0000, 0x3661, 0x0000, 0x0000, 0x3662,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3664, 0x0000, 0x3667,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x366c, 0x0000, 0x366d, 0x0000, 0x366e,
+ 0x0000, 0x0000, 0x366f, 0x0000, 0x3678, 0x0000, 0x0000, 0x0000, 0x3682, 0x0000,
+ 0x0000, 0x3683, 0x0000, 0x0000, 0x0000, 0x0000, 0x3684, 0x0000, 0x3685, 0x0000,
+ 0x368f, 0x3691, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3692, 0x36a6, 0x0000, 0x36a7, 0x36aa, 0x0000,
+ 0x36ab, 0x0000, 0x0000, 0x0000, 0x0000, 0x36ac, 0x0000, 0x0000, 0x36af, 0x0000,
+ 0x0000, 0x0000, 0x36c2, 0x0000, 0x36c3, 0x0000, 0x36c5, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x36d9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x36db, 0x0000, 0x0000, 0x0000, 0x0000, 0x36de, 0x0000, 0x0000,
+ 0x0000, 0x36e0, 0x36e1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x36e3, 0x0000, 0x0000, 0x36e4, 0x36e8, 0x0000, 0x36ef,
+ 0x0000, 0x36f0, 0x36f2, 0x0000, 0x0000, 0x36f3, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x36f4, 0x0000, 0x0000, 0x0000, 0x36f8,
+ 0x0000, 0x36fa, 0x36fb, 0x0000, 0x36fc, 0x36ff, 0x3705, 0x3706, 0x3707, 0x370d,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x370f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3710, 0x3711, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3712, 0x0000, 0x3716, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3717, 0x0000,
+ 0x0000, 0x0000, 0x3718, 0x0000, 0x0000, 0x3719, 0x0000, 0x0000, 0x0000, 0x371b,
+ 0x371c, 0x0000, 0x0000, 0x371d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3725, 0x0000, 0x0000, 0x0000, 0x0000, 0x3726, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3727, 0x0000, 0x0000, 0x3728, 0x0000, 0x0000, 0x3729, 0x0000,
+ 0x372a, 0x372f, 0x0000, 0x3730, 0x3738, 0x0000, 0x0000, 0x373a, 0x0000, 0x373c,
+ 0x0000, 0x0000, 0x0000, 0x373d, 0x373e, 0x0000, 0x0000, 0x0000, 0x0000, 0x3742,
+ 0x0000, 0x0000, 0x3745, 0x0000, 0x3747, 0x0000, 0x0000, 0x0000, 0x3748, 0x0000,
+ 0x0000, 0x3749, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x374a, 0x0000, 0x374c, 0x374d, 0x0000, 0x0000, 0x374f, 0x0000, 0x3751,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3752, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3753, 0x0000, 0x0000, 0x375d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x375e, 0x0000, 0x0000, 0x3760, 0x0000, 0x0000, 0x3762, 0x0000, 0x0000,
+ 0x3763, 0x3765, 0x0000, 0x0000, 0x3766, 0x3769, 0x376b, 0x0000, 0x376e, 0x0000,
+ 0x0000, 0x3775, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3776, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3777, 0x3778, 0x0000, 0x0000, 0x0000, 0x377c, 0x0000, 0x0000, 0x3780,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3797, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x379a, 0x0000, 0x0000, 0x379b, 0x0000, 0x0000, 0x0000, 0x37a0, 0x37a1,
+ 0x0000, 0x0000, 0x0000, 0x37a6, 0x0000, 0x0000, 0x0000, 0x37a7, 0x0000, 0x37aa,
+ 0x0000, 0x0000, 0x37ab, 0x0000, 0x0000, 0x37ae, 0x0000, 0x0000, 0x37b0, 0x0000,
+ 0x0000, 0x0000, 0x37b4, 0x0000, 0x37b5, 0x0000, 0x0000, 0x0000, 0x0000, 0x37b6,
+ 0x37bb, 0x37bd, 0x0000, 0x0000, 0x37c5, 0x0000, 0x0000, 0x37c6, 0x0000, 0x37c7,
+ 0x37ca, 0x0000, 0x0000, 0x0000, 0x37cb, 0x0000, 0x0000, 0x0000, 0x37cc, 0x37cd,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x37ce, 0x0000, 0x0000, 0x0000, 0x37d0, 0x0000,
+ 0x0000, 0x0000, 0x37d1, 0x0000, 0x37d2, 0x0000, 0x37d5, 0x37dd, 0x37de, 0x37e0,
+ 0x37e1, 0x0000, 0x37e3, 0x0000, 0x37e4, 0x37e5, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x37e7, 0x37e8, 0x0000,
+ 0x0000, 0x37ed, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x37ee,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x37f0, 0x0000, 0x0000, 0x0000, 0x0000, 0x37f1,
+ 0x37f2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x37f6, 0x37f9, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x37fa, 0x37fb, 0x0000, 0x0000, 0x0000, 0x0000, 0x37fc, 0x0000,
+ 0x0000, 0x0000, 0x37fd, 0x0000, 0x0000, 0x3801, 0x3804, 0x0000, 0x3805, 0x0000,
+ 0x0000, 0x3806, 0x0000, 0x3809, 0x380a, 0x0000, 0x0000, 0x380b, 0x0000, 0x381a,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x381c, 0x381d, 0x3823, 0x0000, 0x3825,
+ 0x0000, 0x0000, 0x3826, 0x0000, 0x382b, 0x0000, 0x3840, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3841, 0x0000, 0x0000, 0x3845, 0x0000, 0x3846, 0x0000, 0x3848,
+ 0x3849, 0x0000, 0x0000, 0x0000, 0x3851, 0x0000, 0x0000, 0x3858, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x385e, 0x0000, 0x0000,
+ 0x0000, 0x385f, 0x0000, 0x0000, 0x3863, 0x0000, 0x3868, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x386a, 0x0000, 0x0000, 0x386b, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x386e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3876, 0x0000, 0x3879, 0x0000, 0x387c, 0x0000, 0x0000, 0x3882, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3883, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3885, 0x0000, 0x388d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x388e,
+ 0x3892, 0x0000, 0x0000, 0x0000, 0x3893, 0x0000, 0x0000, 0x0000, 0x3895, 0x3896,
+ 0x0000, 0x0000, 0x0000, 0x3897, 0x3898, 0x3899, 0x389c, 0x389d, 0x389e, 0x389f,
+ 0x38a0, 0x38a1, 0x0000, 0x38a3, 0x0000, 0x38a5, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x38a6, 0x0000, 0x38ab, 0x38b0,
+ 0x38b1, 0x38b2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x38b3, 0x38be, 0x38c2, 0x0000, 0x38c9, 0x0000, 0x38d0,
+ 0x0000, 0x38d3, 0x0000, 0x0000, 0x38d4, 0x38d6, 0x38d7, 0x0000, 0x0000, 0x38d8,
+ 0x0000, 0x0000, 0x0000, 0x38d9, 0x0000, 0x38da, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x38dc, 0x38e4, 0x0000, 0x0000, 0x38e5, 0x38e6, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x38e8, 0x0000, 0x0000, 0x38e9, 0x0000, 0x0000, 0x0000, 0x38eb,
+ 0x38f0, 0x0000, 0x0000, 0x38f1, 0x38f2, 0x38f3, 0x0000, 0x0000, 0x38f4, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x38f6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x38f7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x38fb, 0x0000, 0x38fc, 0x0000, 0x0000, 0x3908, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3909, 0x0000,
+ 0x0000, 0x390c, 0x390d, 0x3913, 0x0000, 0x3915, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3917, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3923, 0x0000, 0x3924,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3927, 0x0000, 0x3929, 0x392a, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x392b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x392c, 0x0000, 0x0000, 0x392f, 0x3932, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3934, 0x0000, 0x0000, 0x0000, 0x0000, 0x3935, 0x3936, 0x0000, 0x393d, 0x0000,
+ 0x0000, 0x393e, 0x0000, 0x3942, 0x0000, 0x3945, 0x0000, 0x0000, 0x0000, 0x3949,
+ 0x0000, 0x0000, 0x0000, 0x394c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x394d, 0x0000, 0x0000, 0x394e, 0x0000, 0x0000, 0x0000,
+ 0x3958, 0x0000, 0x0000, 0x3959, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x395a,
+ 0x395b, 0x0000, 0x0000, 0x0000, 0x0000, 0x395e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x395f, 0x3969, 0x0000, 0x0000, 0x0000, 0x0000, 0x396b, 0x3971, 0x3977, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3978,
+ 0x0000, 0x0000, 0x0000, 0x3979, 0x0000, 0x0000, 0x0000, 0x0000, 0x397f, 0x0000,
+ 0x3980, 0x3981, 0x3986, 0x0000, 0x0000, 0x0000, 0x3988, 0x3989, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x398b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x398d, 0x3990, 0x3991, 0x0000, 0x0000, 0x3994, 0x3996, 0x0000, 0x0000, 0x0000,
+ 0x3998, 0x39a1, 0x0000, 0x0000, 0x0000, 0x0000, 0x39a3, 0x39a6, 0x39a8, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x39a9, 0x39aa, 0x39ad, 0x39b3, 0x0000, 0x39b4,
+ 0x0000, 0x39b5, 0x39b6, 0x0000, 0x0000, 0x39b7, 0x0000, 0x0000, 0x39b8, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x39b9, 0x0000, 0x39bb, 0x0000, 0x0000, 0x39be, 0x0000,
+ 0x0000, 0x39c1, 0x39c2, 0x39c4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x39cb,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x39ce, 0x0000, 0x39d3, 0x39d4,
+ 0x39d6, 0x0000, 0x0000, 0x0000, 0x39d9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x39da, 0x0000, 0x0000, 0x0000, 0x0000, 0x39db, 0x0000, 0x39dc, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x39df, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x39e0, 0x0000, 0x39e2, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x39e3, 0x0000, 0x39e4, 0x0000, 0x39e7, 0x0000, 0x0000, 0x0000,
+ 0x39e8, 0x0000, 0x0000, 0x39ea, 0x39eb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x39ee, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x39f1, 0x0000, 0x39fd, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x39fe, 0x0000, 0x0000, 0x39ff, 0x3a17, 0x0000, 0x3a19, 0x0000, 0x3a1c,
+ 0x0000, 0x3a1d, 0x3a1e, 0x3a20, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3a21,
+ 0x0000, 0x3a22, 0x3a2e, 0x0000, 0x0000, 0x0000, 0x0000, 0x3a2f, 0x0000, 0x3a3b,
+ 0x0000, 0x3a3c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3a3f,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3a48, 0x0000, 0x0000, 0x3a53, 0x0000, 0x3a54,
+ 0x3a56, 0x3a57, 0x0000, 0x0000, 0x3a58, 0x0000, 0x3a61, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3a63, 0x0000, 0x0000, 0x3a64, 0x3a65, 0x3a67,
+ 0x0000, 0x0000, 0x3a68, 0x0000, 0x0000, 0x0000, 0x3a74, 0x3a7d, 0x0000, 0x0000,
+ 0x3a8e, 0x0000, 0x0000, 0x0000, 0x0000, 0x3a93, 0x0000, 0x0000, 0x3a96, 0x3a99,
+ 0x0000, 0x0000, 0x3a9a, 0x3aac, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3aad, 0x0000, 0x3aae, 0x0000, 0x0000, 0x0000, 0x0000, 0x3aaf, 0x0000, 0x0000,
+ 0x3ab1, 0x3ab5, 0x3ab9, 0x0000, 0x0000, 0x0000, 0x3aba, 0x0000, 0x0000, 0x0000,
+ 0x3abb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3ac3, 0x3ac4, 0x0000, 0x0000,
+ 0x0000, 0x3ac5, 0x3ac6, 0x3ac8, 0x3aca, 0x0000, 0x3ad9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3ada, 0x0000, 0x0000, 0x3ae3, 0x3aea, 0x3aec, 0x0000, 0x0000, 0x3aed,
+ 0x3aee, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3af0,
+ 0x0000, 0x0000, 0x0000, 0x3af1, 0x0000, 0x0000, 0x0000, 0x0000, 0x3af6, 0x0000,
+ 0x3af8, 0x0000, 0x3af9, 0x0000, 0x3afc, 0x0000, 0x0000, 0x3afe, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3b01, 0x0000, 0x0000, 0x3b02,
+ 0x0000, 0x3b05, 0x3b09, 0x0000, 0x0000, 0x0000, 0x3b0b, 0x0000, 0x3b0e, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3b0f, 0x0000, 0x0000, 0x3b10, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3b13, 0x3b19, 0x0000, 0x0000, 0x0000, 0x3b1a,
+ 0x0000, 0x3b1b, 0x0000, 0x0000, 0x3b1e, 0x0000, 0x3b1f, 0x0000, 0x0000, 0x0000,
+ 0x3b21, 0x3b22, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3b23, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3b24, 0x0000, 0x0000, 0x3b32, 0x3b3a, 0x0000,
+ 0x3b41, 0x3b42, 0x0000, 0x3b47, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3b49,
+ 0x0000, 0x3b4a, 0x3b4b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3b4f, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3b51, 0x3b53, 0x0000, 0x3b5a, 0x3b5b, 0x3b5c, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3b64, 0x0000, 0x0000, 0x0000, 0x0000, 0x3b66,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3b67, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3b6d, 0x0000, 0x3b6e, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3b80, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3b82, 0x0000, 0x3b86, 0x3b88, 0x0000, 0x3b90, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3b92, 0x3b93, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3b94,
+ 0x0000, 0x0000, 0x0000, 0x3b97, 0x3b9e, 0x3ba2, 0x0000, 0x0000, 0x0000, 0x3ba3,
+ 0x0000, 0x0000, 0x0000, 0x3bad, 0x3baf, 0x0000, 0x0000, 0x0000, 0x3bb0, 0x3bb1,
+ 0x3bb2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3bb5, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3bb9, 0x0000, 0x0000, 0x3bbb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3bc0, 0x3bc1, 0x0000, 0x0000, 0x3bc8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3bca, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3bcb, 0x3bcc,
+ 0x0000, 0x3bcd, 0x0000, 0x0000, 0x3bcf, 0x0000, 0x0000, 0x3bd0, 0x3bd1, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3bd2, 0x3bd5, 0x0000, 0x0000, 0x0000, 0x3bd6, 0x3bd7, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3bd8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3bd9,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3bdc, 0x0000, 0x3bdd, 0x3bde, 0x0000,
+ 0x3be2, 0x0000, 0x0000, 0x0000, 0x0000, 0x3be6, 0x0000, 0x3be7, 0x0000, 0x3bed,
+ 0x0000, 0x0000, 0x3bee, 0x0000, 0x0000, 0x3bef, 0x3bf0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3bf1, 0x0000, 0x0000, 0x0000, 0x0000, 0x3bf3, 0x0000, 0x0000, 0x3bf4,
+ 0x3bf5, 0x3bf6, 0x0000, 0x3bfc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3bfd, 0x0000, 0x3bfe, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3bff, 0x3c00, 0x3c04, 0x0000, 0x3c14, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3c20, 0x0000, 0x0000, 0x3c21, 0x0000, 0x3c23, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3c24, 0x0000, 0x0000, 0x3c25, 0x3c26, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3c27, 0x0000,
+ 0x3c28, 0x0000, 0x0000, 0x0000, 0x3c2a, 0x0000, 0x3c2d, 0x3c32, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3c33, 0x0000, 0x0000, 0x0000, 0x3c34, 0x0000, 0x3c38, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3c44, 0x0000, 0x3c4b, 0x0000,
+ 0x0000, 0x3c4e, 0x0000, 0x0000, 0x0000, 0x0000, 0x3c4f, 0x0000, 0x0000, 0x0000,
+ 0x3c50, 0x0000, 0x0000, 0x0000, 0x3c51, 0x3c59, 0x3c5b, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3c5c, 0x0000, 0x0000, 0x3c5f, 0x0000, 0x0000,
+ 0x0000, 0x3c60, 0x0000, 0x0000, 0x3c62, 0x0000, 0x3c64, 0x3c65, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3c66, 0x3c68, 0x0000, 0x3c69, 0x0000, 0x0000, 0x3c6a,
+ 0x0000, 0x0000, 0x3c6b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3c6c, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3c79, 0x0000, 0x0000, 0x3c7c, 0x0000, 0x3c7d, 0x3c7e,
+ 0x0000, 0x0000, 0x0000, 0x3c7f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3c80,
+ 0x0000, 0x3c84, 0x3c8a, 0x0000, 0x0000, 0x0000, 0x3c8b, 0x0000, 0x0000, 0x0000,
+ 0x3c8c, 0x0000, 0x3c8d, 0x0000, 0x0000, 0x3c98, 0x0000, 0x3ca2, 0x0000, 0x0000,
+ 0x0000, 0x3ca4, 0x0000, 0x3ca5, 0x3ca6, 0x0000, 0x0000, 0x3ca7, 0x0000, 0x0000,
+ 0x3cb9, 0x3cba, 0x0000, 0x3cbc, 0x3cc0, 0x0000, 0x3cc1, 0x0000, 0x0000, 0x0000,
+ 0x3cc2, 0x0000, 0x3cc3, 0x0000, 0x3cc5, 0x3ccd, 0x3cd5, 0x3cd9, 0x3cda, 0x0000,
+ 0x3cde, 0x0000, 0x3cdf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3ce2, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3ce4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3ce5, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3ce9, 0x3cea, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3ceb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3cec, 0x0000,
+ 0x0000, 0x0000, 0x3ced, 0x0000, 0x0000, 0x0000, 0x0000, 0x3cf0, 0x0000, 0x0000,
+ 0x3cf1, 0x0000, 0x0000, 0x0000, 0x0000, 0x3cf2, 0x3cf3, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3cf4, 0x0000, 0x3cf9, 0x0000, 0x0000, 0x3cfc, 0x0000,
+ 0x0000, 0x3cfd, 0x0000, 0x0000, 0x3cff, 0x3d01, 0x3d02, 0x0000, 0x0000, 0x3d04,
+ 0x0000, 0x3d14, 0x3d15, 0x0000, 0x0000, 0x3d21, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3d22, 0x0000, 0x0000, 0x3d23, 0x0000, 0x0000, 0x0000,
+ 0x3d28, 0x0000, 0x3d2a, 0x0000, 0x0000, 0x0000, 0x3d30, 0x0000, 0x0000, 0x3d31,
+ 0x0000, 0x0000, 0x3d34, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3d35, 0x0000,
+ 0x0000, 0x3d3a, 0x0000, 0x0000, 0x3d3b, 0x0000, 0x0000, 0x0000, 0x0000, 0x3d3c,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3d3d, 0x0000, 0x0000, 0x0000, 0x0000, 0x3d3e, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3d3f, 0x0000, 0x0000, 0x3d41, 0x0000, 0x3d46, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3d47, 0x0000, 0x3d48, 0x0000, 0x0000, 0x3d4a, 0x0000, 0x0000,
+ 0x0000, 0x3d51, 0x0000, 0x3d53, 0x3d54, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3d55, 0x0000, 0x3d56, 0x3d57, 0x0000, 0x3d58,
+ 0x0000, 0x3d59, 0x0000, 0x3d5b, 0x0000, 0x3d5d, 0x0000, 0x3d60, 0x3d64, 0x0000,
+ 0x3d65, 0x0000, 0x3d66, 0x3d68, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3d6c,
+ 0x0000, 0x0000, 0x0000, 0x3d6d, 0x0000, 0x3d6e, 0x0000, 0x0000, 0x0000, 0x3d7c,
+ 0x0000, 0x3d81, 0x3d82, 0x0000, 0x0000, 0x3d83, 0x0000, 0x3d84, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3d85, 0x0000, 0x0000, 0x0000, 0x3d88, 0x0000, 0x3d89,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3d8f, 0x0000, 0x0000, 0x0000,
+ 0x3d95, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3d97, 0x0000, 0x0000, 0x0000, 0x3d9b, 0x0000, 0x0000, 0x3da8, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3da9, 0x3dae, 0x3daf, 0x0000, 0x0000, 0x3db0, 0x0000, 0x0000,
+ 0x0000, 0x3dbf, 0x0000, 0x3dc3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3dca, 0x0000, 0x0000, 0x0000,
+ 0x3dcb, 0x0000, 0x0000, 0x0000, 0x0000, 0x3dcd, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3dce, 0x3dd0, 0x0000, 0x0000, 0x3dd3, 0x0000, 0x0000, 0x3dd5, 0x3dd7,
+ 0x0000, 0x3dd8, 0x0000, 0x0000, 0x3dd9, 0x0000, 0x3ddb, 0x3dde, 0x3ddf, 0x3de3,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3de4, 0x0000, 0x0000, 0x0000, 0x0000, 0x3de5, 0x3deb, 0x3df0, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3df2, 0x3df4, 0x0000, 0x3df5,
+ 0x0000, 0x0000, 0x0000, 0x3df8, 0x0000, 0x0000, 0x0000, 0x0000, 0x3df9, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3dfa, 0x0000, 0x3e00, 0x0000, 0x0000,
+ 0x3e04, 0x0000, 0x0000, 0x0000, 0x0000, 0x3e05, 0x3e06, 0x3e0b, 0x3e0d, 0x0000,
+ 0x0000, 0x3e10, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3e11, 0x3e12, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3e14, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3e15, 0x0000, 0x0000, 0x3e16, 0x0000,
+ 0x0000, 0x0000, 0x3e17, 0x0000, 0x3e18, 0x3e19, 0x0000, 0x3e1a, 0x3e1d, 0x3e1e,
+ 0x0000, 0x3e27, 0x3e2b, 0x0000, 0x3e2c, 0x0000, 0x3e34, 0x3e3f, 0x0000, 0x3e41,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3e4e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3e56, 0x0000, 0x0000, 0x0000, 0x3e59, 0x0000, 0x0000,
+ 0x3e5e, 0x0000, 0x3e5f, 0x0000, 0x0000, 0x3e69, 0x0000, 0x0000, 0x3e6a, 0x0000,
+ 0x0000, 0x3e6d, 0x3e6e, 0x3e6f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3e72, 0x0000, 0x0000, 0x0000, 0x3e76, 0x0000, 0x3e77, 0x3e7b, 0x3e7e,
+ 0x0000, 0x3e7f, 0x0000, 0x3e80, 0x0000, 0x0000, 0x0000, 0x0000, 0x3e88, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3e89, 0x3e8b,
+ 0x0000, 0x3e8d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3e8e, 0x0000, 0x0000, 0x3e8f, 0x3e97, 0x3e98, 0x3e99, 0x0000, 0x0000, 0x3e9a,
+ 0x0000, 0x3e9e, 0x0000, 0x3ea0, 0x0000, 0x3ea1, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3ea3, 0x3ea4, 0x3ea5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3ea7, 0x0000, 0x0000, 0x0000, 0x0000, 0x3ea9, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x3eab, 0x3eac, 0x0000, 0x0000, 0x3eaf, 0x0000, 0x0000, 0x0000, 0x3eb0,
+ 0x0000, 0x0000, 0x3eb1, 0x3eb2, 0x3eb4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3eb7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3eb8,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3eba, 0x3ebc, 0x3ebd,
+ 0x0000, 0x0000, 0x3ebf, 0x0000, 0x0000, 0x3ec0, 0x0000, 0x0000, 0x0000, 0x3ec3,
+ 0x3ec4, 0x0000, 0x0000, 0x3ec5, 0x3ece, 0x0000, 0x0000, 0x0000, 0x3ecf, 0x0000,
+ 0x0000, 0x0000, 0x3ed0, 0x0000, 0x3ed1, 0x0000, 0x0000, 0x0000, 0x3ed8, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3ed9, 0x3edd, 0x0000, 0x3ee1, 0x0000, 0x3ee7, 0x0000, 0x3ee8, 0x3ee9, 0x0000,
+ 0x0000, 0x3f80, 0x0000, 0x0000, 0x3f83, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x3f84, 0x3f85, 0x0000, 0x0000, 0x3f86, 0x0000, 0x0000, 0x3f87,
+ 0x0000, 0x3f8c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3f8d,
+ 0x0000, 0x0000, 0x3f8e, 0x3f91, 0x0000, 0x3f92, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3f93, 0x3f94, 0x3f95, 0x3f98, 0x0000, 0x0000, 0x0000, 0x3f99, 0x3f9c, 0x0000,
+ 0x0000, 0x0000, 0x3f9e, 0x0000, 0x3fa1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x3fa2, 0x0000, 0x0000, 0x0000, 0x0000, 0x3fa3,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3fa4, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3fa5, 0x3fa7, 0x3fa9, 0x0000,
+ 0x3fae, 0x0000, 0x3fb0, 0x0000, 0x3fb1, 0x0000, 0x3fb2, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3fb3,
+ 0x3fb4, 0x3fb8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3fb9, 0x3fbb,
+ 0x0000, 0x3fbe, 0x0000, 0x0000, 0x0000, 0x3fc1, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3fc6, 0x3fcd, 0x3fd0, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3fd1, 0x3fd4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3fd9, 0x0000, 0x0000,
+ 0x3fda, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x3fdb, 0x0000, 0x0000, 0x3fdc, 0x0000, 0x0000, 0x0000, 0x0000, 0x3fdd, 0x0000,
+ 0x0000, 0x0000, 0x3fde, 0x0000, 0x3fe5, 0x0000, 0x0000, 0x0000, 0x0000, 0x3fe7,
+ 0x3fe8, 0x0000, 0x0000, 0x0000, 0x0000, 0x3fea, 0x3feb, 0x3fec, 0x3fed, 0x0000,
+ 0x0000, 0x3fee, 0x0000, 0x0000, 0x0000, 0x0000, 0x3fef, 0x3ff0, 0x0000, 0x3ff1,
+ 0x3ff6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3ff8, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x3ffa, 0x3ffb, 0x0000, 0x3ffc, 0x0000, 0x0000, 0x0000,
+ 0x3ffd, 0x3fff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4006, 0x0000, 0x0000,
+ 0x0000, 0x400f, 0x0000, 0x4012, 0x4014, 0x4016, 0x4017, 0x0000, 0x0000, 0x0000,
+ 0x4019, 0x401b, 0x0000, 0x0000, 0x0000, 0x0000, 0x401c, 0x0000, 0x401d, 0x401f,
+ 0x4027, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4028, 0x0000, 0x0000, 0x0000,
+ 0x402c, 0x4032, 0x4033, 0x4041, 0x0000, 0x4042, 0x4043, 0x0000, 0x0000, 0x0000,
+ 0x4045, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4046, 0x0000, 0x0000, 0x4048,
+ 0x404a, 0x0000, 0x0000, 0x404b, 0x0000, 0x0000, 0x404c, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x404e, 0x0000, 0x404f, 0x0000, 0x0000, 0x4052, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x405f, 0x0000, 0x0000, 0x4060, 0x0000, 0x4061, 0x4064, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4065,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4069, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x406b, 0x0000, 0x0000, 0x4072, 0x0000, 0x0000, 0x4077, 0x0000,
+ 0x4079, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x407a,
+ 0x0000, 0x0000, 0x0000, 0x407c, 0x407d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x407f, 0x4081, 0x0000, 0x0000, 0x0000, 0x4084, 0x0000,
+ 0x4085, 0x0000, 0x4087, 0x0000, 0x4091, 0x0000, 0x0000, 0x4093, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x4096, 0x0000, 0x0000, 0x409d, 0x409e, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x409f, 0x40a3,
+ 0x40a4, 0x0000, 0x0000, 0x0000, 0x40a7, 0x0000, 0x40a8, 0x0000, 0x0000, 0x0000,
+ 0x40a9, 0x0000, 0x0000, 0x40ae, 0x0000, 0x0000, 0x40b2, 0x40b5, 0x0000, 0x0000,
+ 0x0000, 0x40ba, 0x0000, 0x0000, 0x0000, 0x40bd, 0x40c9, 0x0000, 0x0000, 0x0000,
+ 0x40ca, 0x40cb, 0x40d3, 0x0000, 0x40d4, 0x0000, 0x40d6, 0x0000, 0x0000, 0x0000,
+ 0x40d8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x40d9, 0x0000, 0x0000, 0x0000, 0x0000, 0x40db,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x40dc, 0x40e4, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x40e5, 0x0000, 0x40ea, 0x0000, 0x0000, 0x0000, 0x4100,
+ 0x0000, 0x0000, 0x4101, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4105,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x4106, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x410b, 0x0000, 0x0000, 0x0000, 0x0000, 0x410d, 0x410e, 0x0000, 0x0000,
+ 0x0000, 0x410f, 0x0000, 0x0000, 0x4110, 0x411b, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x411f, 0x0000, 0x4120, 0x0000, 0x0000, 0x0000, 0x4121, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4124, 0x0000, 0x412e, 0x0000, 0x0000, 0x0000, 0x0000, 0x4131,
+ 0x0000, 0x4132, 0x0000, 0x4134, 0x0000, 0x4135, 0x0000, 0x4136, 0x0000, 0x4138,
+ 0x0000, 0x0000, 0x0000, 0x4141, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4143, 0x0000, 0x0000, 0x0000, 0x4145, 0x0000, 0x0000, 0x0000, 0x0000, 0x4147,
+ 0x0000, 0x4148, 0x4149, 0x0000, 0x0000, 0x0000, 0x414b, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x414c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x414e, 0x4154, 0x0000, 0x0000, 0x4156, 0x4157, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x4158, 0x0000, 0x4159, 0x0000, 0x0000, 0x415a,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x415b, 0x0000, 0x0000, 0x0000, 0x415c,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x415e, 0x4162, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x4167, 0x0000, 0x0000, 0x4169, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x416d, 0x0000, 0x4170, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4174, 0x0000, 0x0000, 0x4176, 0x0000, 0x4177, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x4178, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x417a,
+ 0x0000, 0x4181, 0x0000, 0x4182, 0x0000, 0x4184, 0x0000, 0x0000, 0x0000, 0x4189,
+ 0x418c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x418d, 0x0000, 0x0000,
+ 0x418e, 0x0000, 0x4190, 0x0000, 0x0000, 0x4191, 0x4193, 0x4198, 0x0000, 0x0000,
+ 0x419a, 0x0000, 0x0000, 0x0000, 0x419e, 0x0000, 0x0000, 0x41a9, 0x0000, 0x0000,
+ 0x41ae, 0x41b0, 0x41b1, 0x0000, 0x41b3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x41b4, 0x0000, 0x0000, 0x41c4, 0x41c7,
+ 0x0000, 0x0000, 0x41c9, 0x41d3, 0x41d9, 0x0000, 0x0000, 0x41da, 0x41db, 0x0000,
+ 0x0000, 0x41dc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x41de, 0x0000, 0x41df, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x41e0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x41ec, 0x0000,
+ 0x41f1, 0x41f2, 0x0000, 0x41f5, 0x41f6, 0x0000, 0x41f7, 0x0000, 0x0000, 0x0000,
+ 0x41f9, 0x41fb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x41fe, 0x41ff, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4201, 0x0000, 0x4202, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4211, 0x0000,
+ 0x0000, 0x421c, 0x421d, 0x421e, 0x0000, 0x0000, 0x421f, 0x0000, 0x0000, 0x0000,
+ 0x4229, 0x422a, 0x0000, 0x0000, 0x0000, 0x422c, 0x422d, 0x0000, 0x0000, 0x0000,
+ 0x422e, 0x4231, 0x0000, 0x4232, 0x4235, 0x4236, 0x0000, 0x0000, 0x0000, 0x4238,
+ 0x423b, 0x0000, 0x0000, 0x0000, 0x4245, 0x0000, 0x4249, 0x0000, 0x0000, 0x424f,
+ 0x0000, 0x0000, 0x4250, 0x0000, 0x0000, 0x0000, 0x0000, 0x4252, 0x0000, 0x0000,
+ 0x4255, 0x0000, 0x4257, 0x425d, 0x0000, 0x0000, 0x0000, 0x0000, 0x425e, 0x0000,
+ 0x0000, 0x425f, 0x0000, 0x0000, 0x0000, 0x4261, 0x0000, 0x4262, 0x4264, 0x4268,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x426a, 0x426c, 0x0000, 0x426e, 0x0000,
+ 0x0000, 0x426f, 0x0000, 0x0000, 0x0000, 0x0000, 0x4270, 0x4275, 0x4276, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x427d, 0x0000,
+ 0x4287, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4289, 0x428c, 0x0000, 0x428e,
+ 0x0000, 0x0000, 0x428f, 0x0000, 0x4295, 0x0000, 0x0000, 0x4296, 0x4297, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4298, 0x0000, 0x4299, 0x429a, 0x0000, 0x429b, 0x429d,
+ 0x0000, 0x429e, 0x0000, 0x429f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x42a7,
+ 0x0000, 0x0000, 0x42a8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x42a9, 0x0000, 0x0000, 0x42ac, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x42b0,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x42b1, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x42b2, 0x0000, 0x42b8, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x42b9,
+ 0x42bb, 0x42bc, 0x0000, 0x0000, 0x0000, 0x42bd, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x42c4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x42c5, 0x0000, 0x42c7, 0x42ce, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x42cf, 0x0000, 0x0000, 0x42d1, 0x0000, 0x42d3, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x42da, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x42db, 0x42e5, 0x42e7, 0x0000,
+ 0x0000, 0x42e8, 0x0000, 0x0000, 0x0000, 0x42e9, 0x42ea, 0x0000, 0x42eb, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x42ec, 0x42ef, 0x42f9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x42fa, 0x0000, 0x42fb, 0x0000, 0x42fc,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x42fd, 0x42fe, 0x0000, 0x42ff,
+ 0x4301, 0x0000, 0x4303, 0x0000, 0x0000, 0x0000, 0x0000, 0x430b, 0x4313, 0x0000,
+ 0x4316, 0x0000, 0x0000, 0x0000, 0x0000, 0x431b, 0x0000, 0x0000, 0x431e, 0x4321,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4322, 0x0000, 0x0000, 0x4324, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4325, 0x4327, 0x0000, 0x432a,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x432b,
+ 0x432c, 0x4333, 0x4334, 0x0000, 0x0000, 0x4335, 0x4341, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4342, 0x0000, 0x0000, 0x0000, 0x0000, 0x4343, 0x0000, 0x4344,
+ 0x0000, 0x4345, 0x0000, 0x0000, 0x434e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4354, 0x0000, 0x4356, 0x4357, 0x0000, 0x0000, 0x0000, 0x4359, 0x435c, 0x0000,
+ 0x0000, 0x435d, 0x0000, 0x4360, 0x0000, 0x0000, 0x4363, 0x0000, 0x4364, 0x0000,
+ 0x0000, 0x4370, 0x0000, 0x4372, 0x0000, 0x0000, 0x0000, 0x4374, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4377, 0x4378, 0x0000, 0x4379, 0x0000, 0x438f, 0x0000, 0x4396,
+ 0x0000, 0x4399, 0x0000, 0x0000, 0x0000, 0x439a, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x439c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x439d, 0x0000, 0x439e, 0x43a1, 0x0000, 0x0000, 0x0000, 0x0000, 0x43a2, 0x43a3,
+ 0x0000, 0x43a5, 0x0000, 0x0000, 0x0000, 0x0000, 0x43a6, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x43a8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x43b6, 0x0000, 0x43c0, 0x43c4, 0x0000, 0x0000, 0x0000, 0x43c6, 0x43c7,
+ 0x0000, 0x0000, 0x43c9, 0x0000, 0x0000, 0x43ca, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x43cb, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x43cc, 0x43cd, 0x0000, 0x0000, 0x43cf, 0x0000, 0x0000, 0x0000,
+ 0x43db, 0x0000, 0x43dc, 0x0000, 0x0000, 0x0000, 0x43f1, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x43f2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x43f3, 0x0000, 0x0000,
+ 0x43f7, 0x0000, 0x0000, 0x0000, 0x43f9, 0x4409, 0x0000, 0x440a, 0x0000, 0x440b,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x440e, 0x440f, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4410, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4414, 0x4415,
+ 0x4419, 0x0000, 0x0000, 0x0000, 0x441d, 0x0000, 0x0000, 0x4421, 0x0000, 0x0000,
+ 0x4422, 0x0000, 0x0000, 0x442d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x442e, 0x4430, 0x4436, 0x0000, 0x0000, 0x443a, 0x0000, 0x0000,
+ 0x443c, 0x0000, 0x0000, 0x443d, 0x0000, 0x0000, 0x0000, 0x0000, 0x443e, 0x0000,
+ 0x4443, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4447, 0x0000, 0x0000, 0x0000,
+ 0x444b, 0x444c, 0x0000, 0x444d, 0x0000, 0x444e, 0x0000, 0x4453, 0x4454, 0x0000,
+ 0x0000, 0x4455, 0x0000, 0x4456, 0x4457, 0x0000, 0x0000, 0x0000, 0x4458, 0x0000,
+ 0x0000, 0x0000, 0x4459, 0x0000, 0x0000, 0x0000, 0x445e, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x445f, 0x0000, 0x4461, 0x0000, 0x4463, 0x0000, 0x0000, 0x0000,
+ 0x4468, 0x4469, 0x446a, 0x0000, 0x0000, 0x446b, 0x0000, 0x0000, 0x0000, 0x446f,
+ 0x0000, 0x0000, 0x0000, 0x4472, 0x0000, 0x0000, 0x4473, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4477, 0x0000, 0x0000, 0x0000,
+ 0x4478, 0x0000, 0x0000, 0x0000, 0x447e, 0x0000, 0x0000, 0x0000, 0x0000, 0x4480,
+ 0x0000, 0x0000, 0x0000, 0x4483, 0x0000, 0x4484, 0x4487, 0x448d, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x4494, 0x0000, 0x0000, 0x4496, 0x0000, 0x4497,
+ 0x0000, 0x0000, 0x4498, 0x0000, 0x0000, 0x0000, 0x449b, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x449c, 0x0000, 0x0000, 0x449d, 0x449e, 0x0000, 0x449f,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x44a1, 0x44a2, 0x0000, 0x44a7,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x44ad, 0x0000, 0x0000, 0x0000, 0x44ae, 0x44af, 0x0000, 0x44b2, 0x0000,
+ 0x0000, 0x44b3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x44b4,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x44bc, 0x44bd, 0x0000, 0x0000, 0x44be, 0x44c0,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x44c1, 0x0000, 0x0000, 0x0000,
+ 0x44c4, 0x0000, 0x0000, 0x44c5, 0x0000, 0x0000, 0x44c7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x44cc, 0x0000, 0x0000, 0x44d2,
+ 0x0000, 0x44d5, 0x44d6, 0x0000, 0x0000, 0x0000, 0x0000, 0x44d7, 0x0000, 0x0000,
+ 0x44d8, 0x0000, 0x0000, 0x44de, 0x0000, 0x0000, 0x44df, 0x44e1, 0x44e2, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x44e3, 0x0000, 0x0000, 0x44e4,
+ 0x0000, 0x0000, 0x44e5, 0x0000, 0x44e6, 0x0000, 0x44e8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x44e9, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x44eb, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x44ed, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x44ee, 0x44fe, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x44ff, 0x4500, 0x0000, 0x4501, 0x4502, 0x0000, 0x0000,
+ 0x0000, 0x4505, 0x4507, 0x4509, 0x0000, 0x450f, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4514, 0x0000, 0x0000, 0x0000, 0x4516, 0x0000, 0x4532,
+ 0x0000, 0x0000, 0x4538, 0x453a, 0x453e, 0x0000, 0x0000, 0x4540, 0x0000, 0x0000,
+ 0x4541, 0x0000, 0x0000, 0x0000, 0x4544, 0x0000, 0x4545, 0x0000, 0x4546, 0x0000,
+ 0x0000, 0x0000, 0x4547, 0x0000, 0x0000, 0x0000, 0x0000, 0x4549, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x454b, 0x0000, 0x0000, 0x0000, 0x454d, 0x454e, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x454f, 0x4550, 0x4551, 0x0000, 0x0000, 0x0000, 0x4555, 0x0000,
+ 0x4556, 0x4557, 0x4558, 0x455a, 0x4561, 0x4562, 0x0000, 0x4563, 0x0000, 0x4566,
+ 0x0000, 0x456c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x456f, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4570, 0x0000, 0x0000, 0x4571, 0x0000,
+ 0x0000, 0x4572, 0x4573, 0x0000, 0x4576, 0x4577, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4578, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x459d, 0x0000, 0x0000, 0x0000, 0x459e, 0x0000,
+ 0x0000, 0x0000, 0x459f, 0x45a1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x45a2,
+ 0x45a7, 0x45a8, 0x45a9, 0x0000, 0x0000, 0x45b5, 0x0000, 0x0000, 0x0000, 0x45b6,
+ 0x0000, 0x0000, 0x0000, 0x45b8, 0x45ba, 0x45be, 0x0000, 0x45bf, 0x0000, 0x0000,
+ 0x45c3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x45c4, 0x45c5, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x45ce, 0x45cf,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x45d0, 0x0000, 0x0000, 0x0000,
+ 0x45d7, 0x0000, 0x0000, 0x0000, 0x45d9, 0x45db, 0x0000, 0x45dc, 0x0000, 0x45dd,
+ 0x0000, 0x0000, 0x45de, 0x0000, 0x0000, 0x45df, 0x45e3, 0x4621, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4622, 0x0000, 0x0000, 0x4623, 0x0000, 0x4630, 0x0000, 0x0000,
+ 0x4634, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4636, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x4638, 0x463a, 0x0000, 0x0000, 0x463f, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4653, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4657, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4659, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x465a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x465c, 0x0000, 0x0000,
+ 0x465e, 0x0000, 0x0000, 0x0000, 0x465f, 0x0000, 0x0000, 0x0000, 0x4660, 0x0000,
+ 0x4661, 0x0000, 0x0000, 0x0000, 0x466e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x466f, 0x0000, 0x0000, 0x4674, 0x4675, 0x4676, 0x0000, 0x0000,
+ 0x4681, 0x4688, 0x0000, 0x4689, 0x468a, 0x0000, 0x468b, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x468e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4690, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4693,
+ 0x0000, 0x0000, 0x0000, 0x4694, 0x0000, 0x0000, 0x469b, 0x0000, 0x0000, 0x469e,
+ 0x46ad, 0x46ae, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x46b1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x46b2, 0x46b4, 0x0000, 0x0000,
+ 0x0000, 0x46bc, 0x0000, 0x46bf, 0x0000, 0x0000, 0x46c0, 0x0000, 0x46c1, 0x0000,
+ 0x0000, 0x46c3, 0x46c4, 0x0000, 0x46c6, 0x0000, 0x0000, 0x0000, 0x0000, 0x46c9,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x46cb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x46cc, 0x0000, 0x0000, 0x0000, 0x0000, 0x46cd,
+ 0x46ce, 0x0000, 0x46cf, 0x0000, 0x0000, 0x46d0, 0x46d7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x46e6, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x46e7, 0x46e8, 0x0000, 0x0000, 0x46ec, 0x46f4, 0x0000, 0x46f6,
+ 0x46fb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x46fc, 0x4707, 0x0000, 0x4708, 0x0000, 0x0000, 0x0000, 0x0000, 0x4709, 0x0000,
+ 0x470b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x470c, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x470d, 0x0000, 0x0000, 0x470e, 0x0000,
+ 0x0000, 0x470f, 0x4710, 0x0000, 0x0000, 0x4712, 0x4713, 0x4714, 0x0000, 0x0000,
+ 0x0000, 0x4715, 0x0000, 0x471b, 0x0000, 0x471c, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x471d, 0x0000, 0x0000, 0x0000, 0x471f, 0x4720, 0x0000, 0x0000, 0x4726, 0x0000,
+ 0x0000, 0x0000, 0x4727, 0x4728, 0x0000, 0x0000, 0x0000, 0x472c, 0x0000, 0x0000,
+ 0x472e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x472f, 0x0000, 0x4731, 0x4737,
+ 0x0000, 0x473a, 0x0000, 0x473b, 0x0000, 0x0000, 0x0000, 0x0000, 0x4740, 0x0000,
+ 0x0000, 0x4741, 0x4742, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4743, 0x474b,
+ 0x0000, 0x474d, 0x0000, 0x474e, 0x0000, 0x0000, 0x0000, 0x475a, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x475d, 0x475e, 0x475f, 0x4761, 0x4769, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x476a, 0x0000, 0x476b, 0x0000, 0x476c, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x476d, 0x0000, 0x476f, 0x4771, 0x0000, 0x0000, 0x4772, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4784, 0x0000, 0x0000, 0x0000, 0x4786, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4787, 0x0000, 0x4788, 0x4789, 0x0000, 0x478b, 0x0000, 0x0000, 0x478c, 0x4790,
+ 0x0000, 0x479b, 0x0000, 0x479c, 0x0000, 0x47a0, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x47a1, 0x0000, 0x47a4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x47a5, 0x0000, 0x47a8, 0x47a9, 0x0000, 0x47aa, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x47ac, 0x0000, 0x47af, 0x0000, 0x0000, 0x47b4, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x47b5, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x47bf, 0x0000, 0x0000, 0x0000, 0x47c0, 0x0000, 0x47c1, 0x0000, 0x47c2,
+ 0x47c3, 0x0000, 0x0000, 0x0000, 0x4805, 0x480c, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x480d, 0x4812, 0x0000, 0x0000, 0x0000, 0x0000, 0x4813, 0x0000, 0x4814, 0x0000,
+ 0x0000, 0x0000, 0x4815, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4817, 0x0000,
+ 0x0000, 0x0000, 0x4818, 0x0000, 0x4819, 0x0000, 0x481c, 0x0000, 0x0000, 0x481d,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4822, 0x0000,
+ 0x0000, 0x4823, 0x0000, 0x0000, 0x0000, 0x0000, 0x4829, 0x0000, 0x0000, 0x0000,
+ 0x482c, 0x0000, 0x482d, 0x0000, 0x0000, 0x0000, 0x482e, 0x482f, 0x4830, 0x0000,
+ 0x0000, 0x0000, 0x4835, 0x0000, 0x0000, 0x0000, 0x4836, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4838, 0x483a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x483b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x483f, 0x0000, 0x0000,
+ 0x4840, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4849, 0x0000, 0x4859,
+ 0x0000, 0x485a, 0x485b, 0x0000, 0x0000, 0x0000, 0x485d, 0x485e, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x485f, 0x0000, 0x0000, 0x0000, 0x0000, 0x4864, 0x4865,
+ 0x0000, 0x4866, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4867, 0x4869,
+ 0x0000, 0x486a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x486c, 0x486d,
+ 0x486e, 0x486f, 0x0000, 0x4872, 0x0000, 0x0000, 0x0000, 0x0000, 0x4879, 0x487c,
+ 0x0000, 0x0000, 0x487e, 0x0000, 0x0000, 0x4889, 0x488b, 0x0000, 0x0000, 0x0000,
+ 0x488c, 0x0000, 0x488e, 0x0000, 0x0000, 0x0000, 0x0000, 0x489a, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x489c, 0x0000, 0x0000, 0x489d, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x489e, 0x0000, 0x48a0, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x48a2, 0x0000, 0x0000, 0x0000, 0x48a4, 0x0000, 0x0000, 0x48a5, 0x48a6, 0x0000,
+ 0x0000, 0x48a9, 0x0000, 0x0000, 0x0000, 0x0000, 0x48aa, 0x0000, 0x0000, 0x0000,
+ 0x48ab, 0x48ac, 0x0000, 0x48ad, 0x0000, 0x0000, 0x0000, 0x0000, 0x48b0, 0x0000,
+ 0x0000, 0x48b3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x48b4, 0x0000, 0x48b8, 0x0000, 0x0000, 0x48b9, 0x48bb, 0x0000, 0x0000,
+ 0x0000, 0x48c4, 0x0000, 0x0000, 0x0000, 0x48c5, 0x0000, 0x0000, 0x48c6, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x48c7, 0x0000, 0x48c8, 0x0000,
+ 0x0000, 0x48cb, 0x48cd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x48d1,
+ 0x48d3, 0x48d8, 0x0000, 0x48dc, 0x0000, 0x0000, 0x48dd, 0x0000, 0x48df, 0x48e0,
+ 0x0000, 0x0000, 0x0000, 0x48e1, 0x0000, 0x0000, 0x48ea, 0x48f2, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x48f5, 0x48fc, 0x48fd, 0x0000, 0x0000, 0x48fe, 0x0000, 0x0000,
+ 0x4902, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4907, 0x4908,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4909, 0x0000, 0x0000, 0x490c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x490e, 0x0000, 0x4914, 0x0000, 0x0000, 0x4915, 0x0000, 0x4916, 0x0000, 0x0000,
+ 0x4917, 0x0000, 0x491a, 0x0000, 0x0000, 0x491e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x491f, 0x0000, 0x0000, 0x4922, 0x0000, 0x4926, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x492b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4933, 0x4935, 0x0000,
+ 0x0000, 0x4936, 0x0000, 0x4937, 0x4938, 0x493a, 0x493c, 0x0000, 0x4940, 0x4941,
+ 0x0000, 0x0000, 0x4942, 0x494b, 0x0000, 0x494d, 0x0000, 0x0000, 0x0000, 0x494e,
+ 0x0000, 0x0000, 0x0000, 0x4951, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4955,
+ 0x495a, 0x495b, 0x495d, 0x0000, 0x0000, 0x4960, 0x4963, 0x0000, 0x4964, 0x0000,
+ 0x4969, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x496b, 0x0000, 0x0000,
+ 0x4970, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4971, 0x4974, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4976, 0x0000, 0x0000, 0x0000, 0x497b,
+ 0x497f, 0x4980, 0x0000, 0x0000, 0x0000, 0x0000, 0x4989, 0x0000, 0x0000, 0x498b,
+ 0x498d, 0x0000, 0x0000, 0x498e, 0x0000, 0x0000, 0x0000, 0x0000, 0x498f, 0x0000,
+ 0x0000, 0x4990, 0x0000, 0x0000, 0x0000, 0x0000, 0x4991, 0x0000, 0x4998, 0x0000,
+ 0x4999, 0x0000, 0x499a, 0x0000, 0x0000, 0x0000, 0x0000, 0x499b, 0x0000, 0x499c,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x499d, 0x499e, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x49a0, 0x0000, 0x0000,
+ 0x0000, 0x49a5, 0x49ac, 0x0000, 0x0000, 0x49ae, 0x49b2, 0x0000, 0x0000, 0x49b3,
+ 0x49b5, 0x0000, 0x0000, 0x49ba, 0x49c1, 0x49cb, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x49cc, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x49cf, 0x0000, 0x49d0, 0x0000, 0x0000,
+ 0x0000, 0x49d4, 0x0000, 0x0000, 0x0000, 0x49d5, 0x0000, 0x49d6, 0x49e3, 0x49e4,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x49e7, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x49e8, 0x0000, 0x0000, 0x0000, 0x49e9, 0x49f1,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x49f2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x49f4, 0x0000, 0x0000, 0x0000, 0x0000, 0x49f6, 0x49fe, 0x0000, 0x0000,
+ 0x0000, 0x4a07, 0x4a0d, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a0e, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4a0f, 0x4a10, 0x0000, 0x0000, 0x4a11, 0x0000, 0x0000, 0x4a12,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x4a13, 0x4a14, 0x0000, 0x0000, 0x0000, 0x4a15,
+ 0x0000, 0x4a17, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x4a18, 0x0000, 0x4a19, 0x0000, 0x4a1a, 0x4a1d, 0x4a20, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x4a21, 0x0000, 0x0000, 0x0000, 0x4a25, 0x0000,
+ 0x0000, 0x0000, 0x4a2e, 0x0000, 0x4a36, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4a37, 0x4a3b, 0x0000, 0x0000, 0x4a3d, 0x0000, 0x0000, 0x0000, 0x4a3e, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a40, 0x4a43, 0x0000, 0x0000, 0x4a4a,
+ 0x0000, 0x0000, 0x4a4b, 0x0000, 0x4a50, 0x0000, 0x4a57, 0x4a58, 0x0000, 0x4a5f,
+ 0x0000, 0x4a61, 0x4a6a, 0x0000, 0x0000, 0x0000, 0x4a6b, 0x4a6f, 0x4a70, 0x0000,
+ 0x4a73, 0x4a77, 0x4a78, 0x0000, 0x0000, 0x4a90, 0x0000, 0x0000, 0x0000, 0x4a95,
+ 0x4a96, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a97, 0x0000, 0x4a98, 0x0000, 0x0000,
+ 0x0000, 0x4a99, 0x0000, 0x0000, 0x4a9a, 0x0000, 0x4a9b, 0x4a9c, 0x0000, 0x0000,
+ 0x4a9f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4aa7, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4aa8, 0x0000, 0x0000, 0x0000, 0x4aac,
+ 0x4aad, 0x0000, 0x4ab1, 0x4ab2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4ab3, 0x4ab4, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4ab5, 0x4ab6, 0x0000, 0x4ab8, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4ab9,
+ 0x4aba, 0x4abb, 0x4abc, 0x0000, 0x0000, 0x4aca, 0x0000, 0x0000, 0x4acb, 0x4ad4,
+ 0x4ad6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4aee,
+ 0x4af1, 0x0000, 0x0000, 0x4af3, 0x0000, 0x0000, 0x0000, 0x4af9, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4afa, 0x0000, 0x4afd, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4afe, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x4b02, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4b03, 0x0000, 0x4b05, 0x4b0a,
+ 0x0000, 0x0000, 0x0000, 0x4b0d, 0x0000, 0x4b12, 0x0000, 0x0000, 0x0000, 0x4b17,
+ 0x4b1d, 0x0000, 0x0000, 0x4b1e, 0x0000, 0x0000, 0x4b1f, 0x4b20, 0x4b21, 0x4b27,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4b28, 0x0000, 0x4b30, 0x4b31, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4b36, 0x0000, 0x4b38, 0x4b3a, 0x4b3b, 0x0000, 0x0000,
+ 0x4b3d, 0x0000, 0x4b42, 0x0000, 0x0000, 0x0000, 0x4b48, 0x0000, 0x4b4e, 0x4b51,
+ 0x4b52, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4b53, 0x0000, 0x0000, 0x4b54, 0x0000, 0x0000, 0x4b55,
+ 0x4b57, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4b58, 0x4b5b, 0x0000, 0x4b5c, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4b61, 0x0000, 0x4b62, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4b66, 0x4b67, 0x0000, 0x0000, 0x0000, 0x0000, 0x4b68, 0x4b69, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4b72, 0x0000, 0x0000, 0x4b73, 0x0000, 0x0000, 0x4b79, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4b7a, 0x0000, 0x4b85, 0x0000,
+ 0x4b86, 0x4b87, 0x0000, 0x4b88, 0x4b89, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4b92, 0x0000, 0x0000, 0x4b99,
+ 0x0000, 0x4b9a, 0x4ba2, 0x0000, 0x4ba6, 0x4ba7, 0x0000, 0x0000, 0x4ba9, 0x0000,
+ 0x4baf, 0x0000, 0x4bb1, 0x4bb4, 0x4bbc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4bbd, 0x4bbe, 0x0000, 0x0000, 0x0000, 0x0000, 0x4bc0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4bca, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x4bd4, 0x0000, 0x0000, 0x4bd5, 0x4bde, 0x0000, 0x4be0, 0x0000, 0x0000,
+ 0x0000, 0x4be1, 0x0000, 0x0000, 0x0000, 0x4be4, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4be7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4be8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4bf8, 0x4c03, 0x0000, 0x0000, 0x4c05, 0x0000, 0x4c06, 0x4c07,
+ 0x0000, 0x4c0b, 0x4c12, 0x4c1a, 0x0000, 0x0000, 0x0000, 0x0000, 0x4c26, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4c2d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x4c2e, 0x4c30, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4c31, 0x0000, 0x0000, 0x0000, 0x0000, 0x4c32, 0x4c33,
+ 0x0000, 0x0000, 0x0000, 0x4c34, 0x0000, 0x0000, 0x4c37, 0x0000, 0x0000, 0x4c3a,
+ 0x0000, 0x4c3b, 0x0000, 0x4c3c, 0x0000, 0x4c3e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x4c4a, 0x0000, 0x4c51, 0x4c52, 0x0000, 0x4c57,
+ 0x4c5a, 0x0000, 0x4c5b, 0x4c5f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4c60, 0x4c61, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x4c63, 0x0000, 0x0000, 0x4c64, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4c68, 0x4c69, 0x0000, 0x0000, 0x4c6a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x4c6d, 0x4c6f, 0x0000, 0x4c70, 0x0000, 0x0000, 0x0000, 0x4c71, 0x4c72,
+ 0x0000, 0x4c7a, 0x0000, 0x0000, 0x0000, 0x0000, 0x4c7c, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x4c7d, 0x4c80, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4c81, 0x4c82, 0x0000, 0x0000, 0x0000, 0x4c83, 0x4c84, 0x0000, 0x4c85, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4c88, 0x4c89, 0x4c8f, 0x0000, 0x4c90,
+ 0x0000, 0x0000, 0x4c94, 0x0000, 0x0000, 0x4c95, 0x0000, 0x4c96, 0x4c98, 0x4c9a,
+ 0x0000, 0x4c9d, 0x4c9e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4ca0,
+ 0x4ca1, 0x0000, 0x0000, 0x4ca2, 0x0000, 0x0000, 0x4ca3, 0x0000, 0x0000, 0x0000,
+ 0x4ca4, 0x4ca5, 0x4caf, 0x0000, 0x0000, 0x4cb0, 0x4cb2, 0x4cb4, 0x0000, 0x4cbb,
+ 0x0000, 0x0000, 0x4cbc, 0x4cca, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x4ccb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4cdb, 0x4cdd, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4cdf, 0x0000, 0x4ce3, 0x0000, 0x4ce4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4ce7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4ce8, 0x4ce9, 0x4cec, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4cef, 0x4cf1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4cf2,
+ 0x4cf3, 0x0000, 0x0000, 0x4cf4, 0x0000, 0x4cf6, 0x0000, 0x0000, 0x4cf7, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4cf8, 0x4cfc, 0x0000, 0x4cfe, 0x0000,
+ 0x4d01, 0x0000, 0x0000, 0x0000, 0x4d03, 0x0000, 0x0000, 0x0000, 0x0000, 0x4d06,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4d08, 0x0000, 0x4d0a,
+ 0x0000, 0x0000, 0x4d0d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4d12, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4d13, 0x0000, 0x4d16, 0x4d17, 0x4d1b, 0x0000, 0x0000, 0x4d1c,
+ 0x0000, 0x4d1d, 0x0000, 0x0000, 0x0000, 0x4d22, 0x0000, 0x0000, 0x4d23, 0x0000,
+ 0x4d3b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4d3c,
+ 0x4d3f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4d42, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4d43, 0x0000, 0x0000, 0x4d44, 0x4d4e, 0x0000, 0x4d4f,
+ 0x0000, 0x0000, 0x4d50, 0x0000, 0x0000, 0x0000, 0x4d51, 0x0000, 0x0000, 0x4d54,
+ 0x4d55, 0x0000, 0x0000, 0x0000, 0x4d57, 0x0000, 0x0000, 0x0000, 0x4d59, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4d5b, 0x0000, 0x4d5c, 0x0000, 0x4d5d, 0x0000, 0x0000,
+ 0x4d5f, 0x0000, 0x0000, 0x0000, 0x4d60, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x4d61, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4d68,
+ 0x0000, 0x4d6d, 0x0000, 0x4d6e, 0x4d76, 0x4d77, 0x0000, 0x0000, 0x0000, 0x4d79,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4d7e, 0x0000, 0x0000, 0x0000, 0x0000, 0x4d7f, 0x0000, 0x0000, 0x4d83, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4d85, 0x0000, 0x0000, 0x0000, 0x0000, 0x4d87, 0x0000,
+ 0x0000, 0x4d88, 0x0000, 0x4d89, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x4d8b, 0x0000, 0x0000, 0x0000, 0x4d8e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4d98, 0x0000, 0x4d99, 0x0000, 0x4d9a,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4d9c, 0x0000, 0x0000,
+ 0x4d9e, 0x0000, 0x0000, 0x4d9f, 0x0000, 0x0000, 0x4da0, 0x4da1, 0x4da3, 0x0000,
+ 0x4da8, 0x4daa, 0x4dac, 0x0000, 0x0000, 0x4dad, 0x4dae, 0x4db0, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4db2, 0x4db4, 0x4db5, 0x0000, 0x0000, 0x4db6, 0x0000, 0x0000, 0x0000, 0x4db7,
+ 0x0000, 0x4db8, 0x4dbe, 0x0000, 0x0000, 0x4dbf, 0x0000, 0x0000, 0x4dc1, 0x0000,
+ 0x0000, 0x0000, 0x4dc2, 0x0000, 0x4dc4, 0x0000, 0x4dc5, 0x4dc7, 0x0000, 0x0000,
+ 0x0000, 0x4dc9, 0x4dd0, 0x0000, 0x4de2, 0x4de3, 0x4de4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x4de6, 0x0000, 0x4de7, 0x0000, 0x4de9, 0x0000,
+ 0x0000, 0x0000, 0x4def, 0x4df0, 0x4df2, 0x4df8, 0x0000, 0x4dfd, 0x0000, 0x4e03,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4e07, 0x0000, 0x4e08, 0x0000, 0x4e16,
+ 0x0000, 0x0000, 0x4e17, 0x0000, 0x4e19, 0x0000, 0x4e1b, 0x0000, 0x0000, 0x0000,
+ 0x4e1e, 0x4e1f, 0x4e21, 0x0000, 0x4e23, 0x4e25, 0x0000, 0x4e2b, 0x4e2c, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4e2e, 0x0000, 0x4e34, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4e35, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4e37, 0x4e38,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4e39, 0x0000, 0x0000, 0x4e3b, 0x0000,
+ 0x0000, 0x4e3d, 0x0000, 0x0000, 0x4e40, 0x0000, 0x0000, 0x0000, 0x0000, 0x4e4c,
+ 0x4e4d, 0x0000, 0x4e50, 0x4e51, 0x0000, 0x0000, 0x4e52, 0x0000, 0x4e54, 0x0000,
+ 0x0000, 0x4e56, 0x4e59, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4e5b, 0x0000, 0x0000, 0x4e5d, 0x0000, 0x4e5e, 0x0000, 0x4e60,
+ 0x0000, 0x0000, 0x4e62, 0x0000, 0x0000, 0x4e63, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4e65, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4e66, 0x4e67, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4e68, 0x0000, 0x0000, 0x4e69, 0x4e6a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4e6b, 0x0000, 0x4e6e, 0x0000, 0x0000, 0x0000, 0x0000, 0x4e70, 0x0000, 0x4e71,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4e7f, 0x0000, 0x4e82, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4e8b, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4e90, 0x0000, 0x0000, 0x0000, 0x4e91,
+ 0x4e92, 0x0000, 0x0000, 0x0000, 0x4e93, 0x4e9b, 0x4e9c, 0x0000, 0x0000, 0x0000,
+ 0x4ea3, 0x4ea5, 0x4ea6, 0x0000, 0x0000, 0x0000, 0x0000, 0x4ea8, 0x0000, 0x0000,
+ 0x4ea9, 0x4eaa, 0x4eb6, 0x0000, 0x4eb8, 0x0000, 0x0000, 0x0000, 0x4eb9, 0x0000,
+ 0x0000, 0x4eba, 0x0000, 0x0000, 0x0000, 0x4ebe, 0x0000, 0x4ec3, 0x0000, 0x0000,
+ 0x4ec4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4ec6, 0x0000,
+ 0x4ec8, 0x0000, 0x4eca, 0x0000, 0x4ecf, 0x0000, 0x0000, 0x4ed2, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4eff, 0x0000, 0x0000, 0x0000, 0x0000, 0x4f00, 0x0000, 0x4f02,
+ 0x0000, 0x0000, 0x4f06, 0x0000, 0x4f07, 0x0000, 0x0000, 0x0000, 0x0000, 0x4f08,
+ 0x0000, 0x0000, 0x4f09, 0x4f0a, 0x0000, 0x4f14, 0x0000, 0x4f17, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x4f19, 0x0000, 0x0000, 0x0000, 0x4f1a, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4f1b, 0x0000, 0x4f1d, 0x0000, 0x4f1e, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4f20, 0x0000, 0x0000, 0x4f28, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4f2a, 0x0000, 0x0000, 0x0000, 0x4f36, 0x0000, 0x0000, 0x4f37, 0x4f3a, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x4f3b, 0x0000, 0x4f3c, 0x0000, 0x4f3d, 0x0000,
+ 0x4f3f, 0x4f42, 0x0000, 0x0000, 0x0000, 0x0000, 0x4f44, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x4f45, 0x4f49, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4f4b,
+ 0x0000, 0x4f4c, 0x4f4f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4f53,
+ 0x0000, 0x0000, 0x4f54, 0x0000, 0x4f55, 0x0000, 0x4f56, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4f58, 0x0000, 0x0000, 0x0000, 0x4f5a, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4f5b, 0x4f5c, 0x0000, 0x4f62, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4f73, 0x0000, 0x0000, 0x0000, 0x4f76, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x4f80, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x4f8a, 0x0000, 0x0000, 0x4f8d, 0x0000, 0x4f97, 0x4f99, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4f9a, 0x4f9b, 0x0000, 0x4f9c, 0x0000, 0x0000, 0x4f9d, 0x0000, 0x4f9e, 0x0000,
+ 0x4f9f, 0x0000, 0x4fa4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4fa6, 0x4fa8, 0x4fa9,
+ 0x0000, 0x0000, 0x4fab, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4fac, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4fae, 0x4fbf, 0x0000,
+ 0x0000, 0x0000, 0x4fc1, 0x0000, 0x0000, 0x4fc4, 0x0000, 0x0000, 0x4fca, 0x4fcc,
+ 0x0000, 0x4fcf, 0x0000, 0x0000, 0x4fd0, 0x0000, 0x4fd1, 0x4fd2, 0x4fd3, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4fd8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4fda,
+ 0x0000, 0x4fdb, 0x0000, 0x4fde, 0x0000, 0x0000, 0x0000, 0x0000, 0x4fe0, 0x0000,
+ 0x4fe3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x4fe4, 0x4fe5, 0x0000, 0x0000, 0x4fe6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x4fe9, 0x0000, 0x4fea, 0x0000, 0x0000, 0x0000, 0x4ff1, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x4ff5, 0x0000, 0x0000, 0x0000, 0x4ff9, 0x0000, 0x4ffc,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4ffd, 0x0000,
+ 0x0000, 0x5005, 0x0000, 0x0000, 0x5006, 0x0000, 0x0000, 0x5007, 0x0000, 0x5010,
+ 0x0000, 0x5011, 0x0000, 0x0000, 0x5012, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5013, 0x5014, 0x0000, 0x5015, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5028, 0x502f, 0x0000, 0x5031, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x503b, 0x0000, 0x0000, 0x503c, 0x0000, 0x0000, 0x0000, 0x503f,
+ 0x0000, 0x0000, 0x0000, 0x5042, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5044,
+ 0x0000, 0x0000, 0x5053, 0x0000, 0x0000, 0x5054, 0x0000, 0x5056, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x506d, 0x0000, 0x0000, 0x0000, 0x0000, 0x506e, 0x0000,
+ 0x0000, 0x5071, 0x5072, 0x0000, 0x0000, 0x0000, 0x0000, 0x5073, 0x0000, 0x5075,
+ 0x5076, 0x0000, 0x0000, 0x0000, 0x508a, 0x508c, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x508d, 0x0000, 0x0000, 0x0000, 0x0000, 0x5093, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5094, 0x0000, 0x0000, 0x0000, 0x5095, 0x0000, 0x5096, 0x0000, 0x0000,
+ 0x509f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x50e3, 0x0000, 0x0000, 0x50e5,
+ 0x0000, 0x0000, 0x0000, 0x50e9, 0x50ea, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x50f4, 0x50f5, 0x0000, 0x0000, 0x0000, 0x0000, 0x50f6, 0x50f8, 0x50f9, 0x0000,
+ 0x50fd, 0x0000, 0x50fe, 0x0000, 0x50ff, 0x5100, 0x0000, 0x5101, 0x0000, 0x0000,
+ 0x5108, 0x0000, 0x5109, 0x0000, 0x510c, 0x0000, 0x0000, 0x510d, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x510e, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5112, 0x0000, 0x0000, 0x0000, 0x5119, 0x0000, 0x0000, 0x511b, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x511e, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x511f, 0x0000, 0x0000, 0x0000, 0x0000, 0x5120, 0x0000, 0x5121, 0x5129,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5131, 0x0000, 0x0000, 0x0000,
+ 0x5132, 0x513b, 0x5141, 0x0000, 0x5142, 0x0000, 0x5147, 0x0000, 0x0000, 0x5148,
+ 0x0000, 0x0000, 0x514a, 0x0000, 0x0000, 0x514b, 0x0000, 0x514c, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x514d, 0x0000, 0x0000, 0x5152, 0x5154, 0x5155, 0x0000,
+ 0x0000, 0x0000, 0x5156, 0x0000, 0x5157, 0x0000, 0x0000, 0x0000, 0x515a, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x515d, 0x515e, 0x515f, 0x0000,
+ 0x5160, 0x5164, 0x0000, 0x0000, 0x5167, 0x0000, 0x0000, 0x5168, 0x516a, 0x0000,
+ 0x516b, 0x0000, 0x516c, 0x0000, 0x5176, 0x0000, 0x0000, 0x0000, 0x5177, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5178, 0x0000, 0x0000, 0x0000, 0x5185, 0x0000, 0x0000,
+ 0x5187, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5189, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x518c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5190, 0x0000, 0x0000, 0x5192, 0x0000, 0x0000, 0x0000, 0x0000, 0x5193, 0x5194,
+ 0x0000, 0x0000, 0x519a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x519b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x51a9, 0x0000,
+ 0x51aa, 0x51ae, 0x0000, 0x0000, 0x51b0, 0x51b3, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x51b4, 0x0000, 0x51b5, 0x0000, 0x51b7, 0x51b8, 0x51ba, 0x0000, 0x51bf,
+ 0x0000, 0x51c0, 0x51c1, 0x51c2, 0x0000, 0x0000, 0x51c7, 0x0000, 0x0000, 0x51cb,
+ 0x0000, 0x0000, 0x51cd, 0x0000, 0x0000, 0x0000, 0x51cf, 0x0000, 0x0000, 0x0000,
+ 0x51d2, 0x51d3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x51d6, 0x0000, 0x51da,
+ 0x0000, 0x0000, 0x51db, 0x51e4, 0x0000, 0x0000, 0x51e7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x51ed, 0x51ef, 0x0000, 0x0000, 0x0000, 0x51f8, 0x0000, 0x51fb,
+ 0x51fc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x51fd, 0x0000, 0x0000, 0x0000,
+ 0x5203, 0x0000, 0x5206, 0x0000, 0x5207, 0x0000, 0x0000, 0x0000, 0x0000, 0x5208,
+ 0x5209, 0x0000, 0x0000, 0x0000, 0x0000, 0x5210, 0x0000, 0x5212, 0x0000, 0x5218,
+ 0x0000, 0x0000, 0x0000, 0x5219, 0x521a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x521d, 0x5222, 0x5223, 0x5224, 0x0000, 0x0000, 0x5225, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5226, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5227, 0x5228, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x522d, 0x0000, 0x0000, 0x522e, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x522f, 0x0000, 0x5231, 0x0000,
+ 0x5236, 0x5237, 0x0000, 0x0000, 0x0000, 0x5239, 0x523d, 0x0000, 0x0000, 0x5241,
+ 0x5248, 0x5249, 0x0000, 0x0000, 0x524a, 0x524b, 0x0000, 0x0000, 0x0000, 0x524d,
+ 0x0000, 0x0000, 0x0000, 0x524f, 0x5250, 0x0000, 0x0000, 0x5251, 0x0000, 0x5252,
+ 0x0000, 0x0000, 0x5256, 0x0000, 0x0000, 0x0000, 0x0000, 0x5257, 0x0000, 0x0000,
+ 0x5258, 0x5259, 0x0000, 0x0000, 0x525e, 0x525f, 0x0000, 0x5261, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5263, 0x0000, 0x5265, 0x0000, 0x5266,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5267, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5268, 0x0000, 0x526a, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x526b, 0x0000, 0x0000, 0x526c, 0x526d, 0x526e,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x526f, 0x0000, 0x5270, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5271, 0x5274, 0x5275, 0x0000, 0x0000, 0x5278, 0x5279,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x527b, 0x5282, 0x5283, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5285, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5289, 0x528b, 0x0000, 0x0000, 0x528e, 0x0000, 0x0000,
+ 0x0000, 0x5291, 0x5296, 0x0000, 0x5297, 0x0000, 0x0000, 0x5298, 0x0000, 0x5299,
+ 0x529a, 0x0000, 0x52a0, 0x52a2, 0x52a3, 0x52a4, 0x0000, 0x0000, 0x0000, 0x52a8,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x52a9, 0x0000, 0x52ac, 0x0000,
+ 0x52ae, 0x0000, 0x0000, 0x0000, 0x0000, 0x52b2, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x52b3, 0x0000, 0x0000, 0x52b4, 0x0000, 0x52b6, 0x0000, 0x52b7, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x52b8, 0x52bb, 0x52c4, 0x0000, 0x0000, 0x0000, 0x52c5,
+ 0x0000, 0x0000, 0x52c6, 0x0000, 0x0000, 0x0000, 0x52c8, 0x0000, 0x0000, 0x52c9,
+ 0x0000, 0x0000, 0x0000, 0x52ce, 0x0000, 0x52dc, 0x0000, 0x0000, 0x52dd, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x52df, 0x52e0, 0x0000, 0x0000, 0x52e7,
+ 0x52e9, 0x0000, 0x52ea, 0x0000, 0x0000, 0x0000, 0x0000, 0x52eb, 0x52ec, 0x0000,
+ 0x0000, 0x52ed, 0x0000, 0x0000, 0x0000, 0x0000, 0x52ee, 0x52f4, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x52f5, 0x0000, 0x0000, 0x52f6, 0x52f7, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5308, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5309, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x530b, 0x0000, 0x0000, 0x0000, 0x530f, 0x0000,
+ 0x5318, 0x0000, 0x531a, 0x0000, 0x5322, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5323, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x532e, 0x0000, 0x0000, 0x5331, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5332, 0x0000, 0x0000, 0x0000, 0x5333, 0x0000, 0x5334, 0x5336, 0x0000, 0x5344,
+ 0x0000, 0x5346, 0x534a, 0x534b, 0x0000, 0x534c, 0x0000, 0x534e, 0x0000, 0x0000,
+ 0x0000, 0x534f, 0x5350, 0x0000, 0x0000, 0x0000, 0x5368, 0x0000, 0x0000, 0x536a,
+ 0x5371, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5372, 0x0000, 0x0000, 0x0000, 0x5373, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5376, 0x0000,
+ 0x0000, 0x5377, 0x537c, 0x537e, 0x0000, 0x0000, 0x0000, 0x537f, 0x5381, 0x0000,
+ 0x5382, 0x0000, 0x0000, 0x0000, 0x5384, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5385, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5386, 0x0000, 0x5387, 0x0000, 0x0000, 0x5388, 0x0000, 0x0000,
+ 0x5389, 0x0000, 0x0000, 0x0000, 0x0000, 0x538d, 0x538e, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5395, 0x5396, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5397, 0x0000, 0x5398, 0x0000, 0x0000, 0x0000, 0x0000, 0x539a,
+ 0x0000, 0x0000, 0x0000, 0x539b, 0x539c, 0x0000, 0x539d, 0x539e, 0x0000, 0x0000,
+ 0x0000, 0x539f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x53a0, 0x0000, 0x0000, 0x0000, 0x0000, 0x53a1,
+ 0x0000, 0x53ad, 0x0000, 0x53ae, 0x0000, 0x0000, 0x0000, 0x53b1, 0x53b4, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x53b5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x53b9,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x53ba, 0x0000, 0x53c3, 0x0000, 0x53c4, 0x53c9, 0x0000, 0x53cc, 0x0000, 0x53cd,
+ 0x53ce, 0x0000, 0x0000, 0x0000, 0x53d1, 0x0000, 0x0000, 0x53d2, 0x0000, 0x0000,
+ 0x0000, 0x53d4, 0x53d5, 0x0000, 0x0000, 0x53d8, 0x0000, 0x0000, 0x0000, 0x53e1,
+ 0x53e6, 0x0000, 0x0000, 0x53e7, 0x0000, 0x0000, 0x53e9, 0x53eb, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x53ec, 0x0000, 0x0000, 0x53ed,
+ 0x53ee, 0x0000, 0x0000, 0x53f0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5413, 0x0000, 0x0000, 0x5415, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5416, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5419, 0x541a,
+ 0x0000, 0x0000, 0x541b, 0x0000, 0x0000, 0x541d, 0x0000, 0x0000, 0x5423, 0x543c,
+ 0x0000, 0x543f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5447, 0x0000, 0x0000, 0x0000, 0x0000, 0x5449, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5457, 0x0000, 0x0000, 0x5464, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5465, 0x0000, 0x5466, 0x0000, 0x0000, 0x5471,
+ 0x5472, 0x5473, 0x5474, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5477, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x547f, 0x0000, 0x5483, 0x0000, 0x0000, 0x0000, 0x0000, 0x5487, 0x548e,
+ 0x5495, 0x549e, 0x0000, 0x0000, 0x549f, 0x54a0, 0x0000, 0x54a2, 0x0000, 0x0000,
+ 0x54a3, 0x0000, 0x54a6, 0x54a8, 0x54a9, 0x0000, 0x54aa, 0x54b3, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x54b4, 0x0000, 0x54be, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x54bf, 0x54c4, 0x0000, 0x54c7, 0x0000, 0x54c8, 0x0000, 0x0000, 0x54cd, 0x0000,
+ 0x0000, 0x0000, 0x54ce, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x54cf, 0x0000, 0x0000, 0x0000, 0x54d0, 0x0000, 0x54d5, 0x0000, 0x54e2,
+ 0x0000, 0x0000, 0x0000, 0x54e3, 0x54e5, 0x0000, 0x0000, 0x0000, 0x0000, 0x54e9,
+ 0x54ed, 0x54ee, 0x0000, 0x54f3, 0x0000, 0x0000, 0x0000, 0x54f5, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x54f6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x54f8, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x54f9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x54fb,
+ 0x54fc, 0x0000, 0x54fd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5500,
+ 0x0000, 0x0000, 0x5503, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5504, 0x0000, 0x0000, 0x5506, 0x0000, 0x0000, 0x5507, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x550d, 0x0000,
+ 0x550e, 0x0000, 0x0000, 0x550f, 0x0000, 0x0000, 0x0000, 0x0000, 0x5510, 0x0000,
+ 0x0000, 0x5511, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5514, 0x551b, 0x551c, 0x551f, 0x0000, 0x0000, 0x0000, 0x5525, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x552d, 0x0000, 0x0000, 0x0000, 0x0000, 0x552e,
+ 0x0000, 0x552f, 0x5531, 0x0000, 0x5532, 0x5533, 0x0000, 0x5539, 0x553b, 0x553c,
+ 0x0000, 0x553f, 0x0000, 0x5540, 0x0000, 0x0000, 0x5541, 0x0000, 0x0000, 0x5542,
+ 0x5548, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5549, 0x5558, 0x5559, 0x0000,
+ 0x0000, 0x556b, 0x556e, 0x556f, 0x5571, 0x0000, 0x0000, 0x0000, 0x5572, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5573, 0x0000,
+ 0x5576, 0x0000, 0x0000, 0x0000, 0x5577, 0x0000, 0x5579, 0x557e, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x557f, 0x0000, 0x0000, 0x5580, 0x5586, 0x5587, 0x5589, 0x0000,
+ 0x558d, 0x0000, 0x5590, 0x0000, 0x0000, 0x5592, 0x0000, 0x0000, 0x0000, 0x5595,
+ 0x5596, 0x5597, 0x0000, 0x0000, 0x5598, 0x0000, 0x0000, 0x5599, 0x559a, 0x559b,
+ 0x0000, 0x559f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x55a1,
+ 0x0000, 0x0000, 0x55a2, 0x55ad, 0x55b3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x55b8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x55b9, 0x0000, 0x55bb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x55bd, 0x0000, 0x0000, 0x0000, 0x55be,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x55bf, 0x0000, 0x55c0, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x55c2, 0x55c5, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x55c6, 0x0000, 0x55c7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x55ca, 0x55cb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x55cc, 0x55cd, 0x0000, 0x0000, 0x55d1, 0x55d2, 0x0000, 0x0000, 0x0000, 0x55d6,
+ 0x0000, 0x0000, 0x55dc, 0x55dd, 0x0000, 0x55de, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x55e1, 0x0000, 0x55e4, 0x0000, 0x55e8, 0x0000, 0x55ef, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x55f1, 0x0000, 0x55f2, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x55f3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x55f4,
+ 0x0000, 0x0000, 0x0000, 0x55f8, 0x0000, 0x55f9, 0x55ff, 0x0000, 0x0000, 0x5600,
+ 0x0000, 0x0000, 0x0000, 0x5601, 0x5603, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5604, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5605, 0x5615, 0x0000, 0x5617, 0x0000,
+ 0x0000, 0x0000, 0x5618, 0x0000, 0x0000, 0x0000, 0x5620, 0x5621, 0x0000, 0x0000,
+ 0x5625, 0x5627, 0x5628, 0x562b, 0x0000, 0x0000, 0x562c, 0x562d, 0x0000, 0x0000,
+ 0x5630, 0x0000, 0x0000, 0x0000, 0x0000, 0x5632, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5639, 0x0000, 0x0000, 0x0000, 0x563a, 0x563b, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x563c, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x563d, 0x5644, 0x5653, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5658, 0x0000, 0x0000, 0x565b, 0x0000, 0x565c, 0x0000, 0x565d, 0x0000,
+ 0x565e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x565f, 0x5667,
+ 0x0000, 0x5668, 0x566a, 0x0000, 0x0000, 0x0000, 0x0000, 0x566d, 0x0000, 0x0000,
+ 0x0000, 0x5670, 0x5671, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x567d,
+ 0x0000, 0x0000, 0x0000, 0x567e, 0x0000, 0x0000, 0x5680, 0x5682, 0x0000, 0x5684,
+ 0x5685, 0x5687, 0x568a, 0x0000, 0x0000, 0x0000, 0x5692, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5694, 0x56a1, 0x0000, 0x0000, 0x0000, 0x0000, 0x56a3, 0x0000, 0x56a6,
+ 0x56a7, 0x0000, 0x0000, 0x56a8, 0x56ac, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x56ae, 0x0000, 0x56b2, 0x56b9, 0x0000, 0x0000, 0x56c0,
+ 0x0000, 0x56c1, 0x0000, 0x56c4, 0x0000, 0x0000, 0x56c7, 0x0000, 0x56cf, 0x56d7,
+ 0x0000, 0x0000, 0x56d8, 0x0000, 0x56da, 0x0000, 0x0000, 0x56db, 0x56dc, 0x0000,
+ 0x56dd, 0x0000, 0x56e0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x56e1, 0x0000,
+ 0x0000, 0x0000, 0x56e2, 0x56e6, 0x56e7, 0x0000, 0x0000, 0x0000, 0x56f3, 0x56fc,
+ 0x0000, 0x56fd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x56fe,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x56ff, 0x0000, 0x5700, 0x0000, 0x5705, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5706, 0x5708, 0x570b, 0x570e, 0x0000, 0x0000,
+ 0x570f, 0x5711, 0x0000, 0x0000, 0x5712, 0x0000, 0x5715, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5717, 0x0000, 0x571d,
+ 0x571e, 0x0000, 0x0000, 0x0000, 0x5721, 0x0000, 0x5724, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x572b, 0x0000, 0x0000,
+ 0x0000, 0x572d, 0x0000, 0x573e, 0x0000, 0x0000, 0x0000, 0x573f, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5740, 0x0000, 0x5742, 0x5748, 0x0000, 0x574b, 0x574d,
+ 0x0000, 0x574e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5755,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5756, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5757, 0x5758, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5759, 0x575e, 0x0000, 0x0000,
+ 0x5761, 0x0000, 0x5762, 0x5765, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5767,
+ 0x0000, 0x5769, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x576a, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x576d, 0x0000, 0x0000, 0x0000, 0x0000, 0x576e, 0x0000, 0x576f,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5777,
+ 0x0000, 0x0000, 0x5778, 0x577b, 0x577c, 0x5782, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5785,
+ 0x0000, 0x0000, 0x5786, 0x0000, 0x0000, 0x5788, 0x0000, 0x0000, 0x5789, 0x578a,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5798, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x579a, 0x0000, 0x0000, 0x0000, 0x579b, 0x0000, 0x579c, 0x0000, 0x57a0,
+ 0x0000, 0x57a3, 0x57aa, 0x57ab, 0x0000, 0x0000, 0x0000, 0x0000, 0x57ac, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x57ae, 0x0000, 0x57b6, 0x0000, 0x57b7, 0x0000,
+ 0x0000, 0x0000, 0x57c1, 0x0000, 0x57c6, 0x0000, 0x57c7, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x57c8, 0x57c9, 0x0000, 0x57d7, 0x0000, 0x0000, 0x0000, 0x57d8, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x57d9, 0x0000, 0x0000, 0x57e3, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x57f2, 0x0000, 0x0000, 0x57f3, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x57f4, 0x0000, 0x0000, 0x0000, 0x57f5, 0x57f8,
+ 0x0000, 0x0000, 0x0000, 0x5806, 0x0000, 0x0000, 0x5807, 0x0000, 0x0000, 0x5808,
+ 0x0000, 0x580c, 0x5819, 0x0000, 0x581b, 0x0000, 0x0000, 0x0000, 0x0000, 0x5821,
+ 0x0000, 0x0000, 0x5822, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5826, 0x0000, 0x0000, 0x0000, 0x0000, 0x5827,
+ 0x5828, 0x0000, 0x0000, 0x582f, 0x0000, 0x5833, 0x0000, 0x5836, 0x5837, 0x5839,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x583a, 0x0000, 0x0000, 0x583b, 0x0000,
+ 0x0000, 0x583e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x583f, 0x0000, 0x5840,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5841, 0x0000, 0x584a, 0x0000, 0x0000,
+ 0x584c, 0x0000, 0x0000, 0x5851, 0x0000, 0x0000, 0x585a, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x585b, 0x0000, 0x5860, 0x5861, 0x0000, 0x0000, 0x586e,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x586f, 0x0000, 0x0000, 0x5870, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5874, 0x0000, 0x5875, 0x5877,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x587c, 0x587d, 0x0000, 0x0000, 0x0000, 0x587e,
+ 0x0000, 0x587f, 0x0000, 0x0000, 0x0000, 0x5880, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5891, 0x5893, 0x5894, 0x0000,
+ 0x0000, 0x5896, 0x5897, 0x0000, 0x58a3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x58a5, 0x0000, 0x0000, 0x58a8, 0x0000, 0x58ab, 0x58b3, 0x58b4,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x58be, 0x0000,
+ 0x58bf, 0x0000, 0x0000, 0x0000, 0x0000, 0x58c3, 0x0000, 0x0000, 0x0000, 0x58c4,
+ 0x58c5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x58c6, 0x58c8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x58c9, 0x0000, 0x0000, 0x58cb, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x58cc, 0x58cf, 0x58d0, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x58d3, 0x0000, 0x58dd, 0x0000, 0x0000, 0x58df, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x58e6, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x58e8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x58ec,
+ 0x58ed, 0x58ee, 0x0000, 0x58f0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x58f1,
+ 0x58f2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x58f3, 0x0000, 0x0000,
+ 0x58f4, 0x58f7, 0x0000, 0x58f8, 0x58f9, 0x58fc, 0x0000, 0x0000, 0x58fe, 0x5900,
+ 0x0000, 0x5903, 0x0000, 0x5905, 0x590c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x590e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5912, 0x0000, 0x5913,
+ 0x5914, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5915, 0x0000, 0x0000, 0x591a, 0x591b, 0x591e, 0x5920, 0x0000, 0x5929,
+ 0x592a, 0x0000, 0x592f, 0x5931, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5932, 0x0000, 0x5934, 0x5936, 0x0000, 0x5937, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5938, 0x0000, 0x593f, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5948, 0x5949, 0x0000, 0x594a, 0x594b, 0x0000, 0x0000, 0x594e,
+ 0x0000, 0x0000, 0x5950, 0x0000, 0x0000, 0x0000, 0x0000, 0x5951, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5952,
+ 0x0000, 0x5953, 0x5954, 0x0000, 0x0000, 0x0000, 0x0000, 0x5955, 0x0000, 0x5957,
+ 0x0000, 0x5958, 0x0000, 0x5959, 0x5961, 0x5962, 0x5964, 0x5965, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5966, 0x5967, 0x0000, 0x596e, 0x0000,
+ 0x596f, 0x0000, 0x0000, 0x0000, 0x5974, 0x0000, 0x5975, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5978, 0x0000, 0x0000, 0x0000, 0x0000, 0x5979, 0x597b, 0x0000, 0x0000,
+ 0x0000, 0x5983, 0x5985, 0x0000, 0x0000, 0x5986, 0x0000, 0x0000, 0x0000, 0x5988,
+ 0x0000, 0x0000, 0x0000, 0x5991, 0x5992, 0x0000, 0x0000, 0x0000, 0x599d, 0x599e,
+ 0x0000, 0x0000, 0x0000, 0x599f, 0x0000, 0x0000, 0x0000, 0x59a0, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x59a2, 0x0000, 0x59a3, 0x0000, 0x0000,
+ 0x59aa, 0x0000, 0x59ac, 0x0000, 0x0000, 0x59b2, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x59b3, 0x0000, 0x0000, 0x59b4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x59b5, 0x0000, 0x59b8, 0x0000, 0x0000, 0x0000,
+ 0x59b9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x59ba, 0x0000, 0x59bb, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x59c2, 0x0000, 0x0000, 0x59c3, 0x0000, 0x59cb,
+ 0x0000, 0x0000, 0x59cd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x59ce,
+ 0x0000, 0x59dd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x59de,
+ 0x59df, 0x59e0, 0x0000, 0x0000, 0x59ef, 0x59f0, 0x59f5, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x59f6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x59f8, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x59fb, 0x0000, 0x0000, 0x0000, 0x0000, 0x59fe, 0x0000,
+ 0x0000, 0x0000, 0x5a08, 0x0000, 0x5a09, 0x5a0c, 0x5a0d, 0x5a14, 0x5a15, 0x0000,
+ 0x5a17, 0x0000, 0x0000, 0x0000, 0x0000, 0x5a1b, 0x5a1c, 0x0000, 0x0000, 0x0000,
+ 0x5a1d, 0x5a21, 0x0000, 0x0000, 0x0000, 0x5a57, 0x0000, 0x5a58, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5a59, 0x0000, 0x5a62, 0x5a65, 0x0000, 0x5a6d, 0x0000,
+ 0x0000, 0x5a6e, 0x0000, 0x0000, 0x0000, 0x5a70, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5a72, 0x0000, 0x0000, 0x0000, 0x0000, 0x5a75,
+ 0x5a77, 0x5a78, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5a8c, 0x0000, 0x0000, 0x0000, 0x0000, 0x5a8d,
+ 0x0000, 0x0000, 0x5a94, 0x0000, 0x5a95, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5a9b, 0x0000, 0x0000,
+ 0x5a9c, 0x5a9f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5aa2, 0x0000, 0x5aa4, 0x0000, 0x5aa7, 0x0000, 0x5aa9, 0x5aaa, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5abb, 0x5abd, 0x0000, 0x0000, 0x5abe,
+ 0x5ac2, 0x5ac6, 0x0000, 0x0000, 0x0000, 0x5acd, 0x5ace, 0x5ad0, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5ad1, 0x5ad6, 0x0000, 0x0000, 0x0000, 0x5ae1, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5ae4, 0x0000, 0x5aec, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5aed, 0x0000, 0x5b01, 0x0000, 0x5b02, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5b03, 0x0000, 0x5b06, 0x0000, 0x0000, 0x5b07, 0x5b10, 0x0000, 0x0000,
+ 0x5b12, 0x0000, 0x5b18, 0x0000, 0x0000, 0x0000, 0x0000, 0x5b1c, 0x0000, 0x5b1d,
+ 0x0000, 0x5b20, 0x0000, 0x5b26, 0x0000, 0x0000, 0x0000, 0x5b29, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5b2f, 0x5b30, 0x5b32, 0x0000, 0x5b34, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5b39, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5b3b, 0x0000, 0x5b3c, 0x5b3e, 0x0000, 0x0000, 0x0000, 0x5b3f, 0x5b40, 0x0000,
+ 0x5b41, 0x0000, 0x5b47, 0x0000, 0x5b49, 0x0000, 0x0000, 0x5b4d, 0x0000, 0x5b52,
+ 0x5b53, 0x0000, 0x5b56, 0x5b57, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5b5b, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5b5c, 0x5b5e, 0x0000, 0x0000, 0x5b61,
+ 0x5b66, 0x0000, 0x0000, 0x0000, 0x5b67, 0x0000, 0x0000, 0x0000, 0x5b68, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5b69, 0x0000, 0x0000, 0x0000, 0x5b77, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5b78, 0x0000, 0x5b7e, 0x0000,
+ 0x5b93, 0x5b94, 0x0000, 0x0000, 0x0000, 0x0000, 0x5b98, 0x0000, 0x5b9e, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5ba0, 0x0000, 0x0000, 0x5ba2, 0x5ba8,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5ba9, 0x0000, 0x0000, 0x0000,
+ 0x5bae, 0x5baf, 0x0000, 0x0000, 0x5bb0, 0x0000, 0x0000, 0x0000, 0x5bb1, 0x5bc8,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5bc9, 0x0000,
+ 0x5bcb, 0x0000, 0x0000, 0x5bce, 0x0000, 0x0000, 0x5bcf, 0x0000, 0x0000, 0x5bd9,
+ 0x0000, 0x0000, 0x5bdb, 0x0000, 0x0000, 0x0000, 0x5bdd, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5bde, 0x5bdf, 0x5be1, 0x5be4, 0x0000, 0x5be5, 0x5be8, 0x5bf3, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5bf5, 0x0000, 0x0000, 0x5bf8, 0x0000, 0x0000,
+ 0x5c04, 0x0000, 0x0000, 0x5c05, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5c07, 0x0000, 0x5c08,
+ 0x0000, 0x0000, 0x5c09, 0x0000, 0x0000, 0x5c0e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5c10, 0x5c11, 0x5c12, 0x0000, 0x0000, 0x0000, 0x0000, 0x5c13, 0x0000,
+ 0x5c16, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5c17, 0x0000, 0x5c1b, 0x0000, 0x0000, 0x5c1d, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5c23, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5c2c, 0x5c2e, 0x0000, 0x0000, 0x0000, 0x0000, 0x5c32, 0x5c36,
+ 0x0000, 0x0000, 0x5c37, 0x0000, 0x5c38, 0x0000, 0x0000, 0x0000, 0x5c3e, 0x5c40,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5c42, 0x0000, 0x0000, 0x5c43, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5c45, 0x5c4a, 0x0000, 0x5c4b, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5c4d, 0x0000, 0x5c4e, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5c52, 0x0000, 0x5c54, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5c56, 0x0000, 0x0000, 0x0000, 0x0000, 0x5c58, 0x5c73, 0x0000, 0x5c75, 0x0000,
+ 0x0000, 0x0000, 0x5c81, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5c82, 0x0000, 0x5c83, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5c84, 0x0000,
+ 0x0000, 0x0000, 0x5c85, 0x5c89, 0x0000, 0x5c8d, 0x5c8e, 0x5c94, 0x0000, 0x5c96,
+ 0x0000, 0x5c9d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5ca0,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5ca2, 0x0000, 0x0000, 0x5ca3, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5ca6, 0x0000, 0x0000, 0x5ca8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5caa, 0x0000, 0x0000, 0x0000, 0x5cae, 0x5cb1, 0x0000, 0x5cbd, 0x5cc2,
+ 0x0000, 0x5cc4, 0x0000, 0x0000, 0x0000, 0x0000, 0x5cc5, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5cc6, 0x0000, 0x0000, 0x0000, 0x0000, 0x5cc7, 0x0000, 0x5cc9,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5ccd, 0x5cd5, 0x0000, 0x0000, 0x0000, 0x5cda,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5cdb, 0x0000, 0x5cdc,
+ 0x5ce5, 0x0000, 0x0000, 0x5cf4, 0x0000, 0x0000, 0x0000, 0x0000, 0x5cf6, 0x0000,
+ 0x5cf7, 0x0000, 0x0000, 0x0000, 0x5cfa, 0x0000, 0x0000, 0x5cfe, 0x0000, 0x5cff,
+ 0x0000, 0x0000, 0x5d00, 0x0000, 0x5d01, 0x0000, 0x5d0b, 0x0000, 0x0000, 0x0000,
+ 0x5d0d, 0x0000, 0x5d13, 0x0000, 0x0000, 0x0000, 0x5d15, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5d16, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5d18, 0x5d19, 0x5d1a, 0x5d1b, 0x0000, 0x0000, 0x0000, 0x0000, 0x5d1d,
+ 0x5d1e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5d26, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5d27, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5d47,
+ 0x5d49, 0x0000, 0x0000, 0x5d4a, 0x5d4b, 0x5d57, 0x0000, 0x5d5b, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5d5d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5d5e,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5d5f, 0x5d61, 0x0000, 0x5d62, 0x0000,
+ 0x5d63, 0x5d6e, 0x5d6f, 0x5d70, 0x0000, 0x5d72, 0x0000, 0x5d74, 0x0000, 0x5d77,
+ 0x0000, 0x5d7e, 0x0000, 0x5d81, 0x5d85, 0x0000, 0x5d86, 0x5d8a, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5d93, 0x5d94, 0x5d96, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5d97, 0x0000, 0x5d9a, 0x5d9d, 0x0000, 0x5d9e, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5d9f, 0x5da0, 0x0000, 0x0000, 0x5da5, 0x0000, 0x0000, 0x5da6,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5da7, 0x0000, 0x5da8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5da9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5dac,
+ 0x0000, 0x0000, 0x5db0, 0x0000, 0x5db1, 0x0000, 0x0000, 0x5db3, 0x0000, 0x0000,
+ 0x5db4, 0x5db6, 0x5db7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5db8,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5dba, 0x0000,
+ 0x0000, 0x0000, 0x5dbe, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5dbf, 0x0000, 0x0000, 0x5dc3, 0x0000, 0x5dc4, 0x0000, 0x5dc6,
+ 0x0000, 0x0000, 0x0000, 0x5dc7, 0x0000, 0x0000, 0x5dc8, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5dc9, 0x0000, 0x0000, 0x5dca, 0x0000, 0x0000,
+ 0x5dcb, 0x0000, 0x0000, 0x5dcd, 0x5dce, 0x0000, 0x0000, 0x5dcf, 0x5dd0, 0x5ddb,
+ 0x0000, 0x5ddc, 0x5ddd, 0x0000, 0x5dde, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5de1, 0x5de2, 0x0000, 0x5de3, 0x0000, 0x0000, 0x5de4, 0x0000, 0x0000, 0x5dec,
+ 0x0000, 0x5df0, 0x5df1, 0x5dff, 0x5e03, 0x0000, 0x5e04, 0x5e06, 0x0000, 0x0000,
+ 0x5e07, 0x5e0e, 0x5e17, 0x0000, 0x5e1a, 0x0000, 0x0000, 0x0000, 0x5e1f, 0x0000,
+ 0x5e22, 0x5e25, 0x5e28, 0x5e2a, 0x0000, 0x5e2b, 0x0000, 0x0000, 0x0000, 0x5e2c,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5e2e, 0x5e2f, 0x0000, 0x5e31, 0x0000, 0x0000,
+ 0x5e33, 0x5e38, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5e3c, 0x0000,
+ 0x5e3d, 0x0000, 0x5e3e, 0x0000, 0x5e3f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5e47, 0x0000, 0x0000, 0x5e48, 0x0000, 0x5e49, 0x5e4e, 0x0000, 0x0000, 0x0000,
+ 0x5e52, 0x0000, 0x0000, 0x5e53, 0x5e55, 0x5e5a, 0x0000, 0x5e63, 0x0000, 0x0000,
+ 0x0000, 0x5e65, 0x5e66, 0x5e67, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5e69, 0x5e6a, 0x5e6f, 0x0000, 0x0000, 0x0000,
+ 0x5e72, 0x0000, 0x0000, 0x5e73, 0x0000, 0x0000, 0x5e75, 0x0000, 0x5e78, 0x5e85,
+ 0x0000, 0x5e89, 0x5e8c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5e8e,
+ 0x5e94, 0x5e9c, 0x0000, 0x0000, 0x0000, 0x5ea0, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5ea2, 0x0000, 0x5eaa, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5eab, 0x0000, 0x5eac, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5eaf, 0x5eb0, 0x5eb1, 0x0000, 0x0000, 0x5eb8, 0x0000, 0x0000, 0x5eb9,
+ 0x0000, 0x5ebb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5ebd, 0x0000,
+ 0x5ecc, 0x0000, 0x0000, 0x0000, 0x5ecd, 0x0000, 0x5ecf, 0x5ed0, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5ed1, 0x0000, 0x0000, 0x5ed2, 0x0000, 0x0000, 0x5ed7, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5ed8, 0x0000, 0x5ee5, 0x5ee6,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5ee8, 0x0000, 0x0000, 0x5f03,
+ 0x0000, 0x0000, 0x0000, 0x5f09, 0x5f0a, 0x5f0b, 0x5f13, 0x0000, 0x5f1f, 0x0000,
+ 0x0000, 0x5f31, 0x5f32, 0x0000, 0x0000, 0x0000, 0x5f33, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x5f34, 0x5f35, 0x5f36, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5f3a,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5f3b, 0x0000, 0x5f3d, 0x0000, 0x5f3f, 0x5f45,
+ 0x0000, 0x5f46, 0x0000, 0x0000, 0x5f4a, 0x5f4b, 0x5f50, 0x0000, 0x0000, 0x0000,
+ 0x5f51, 0x5f52, 0x0000, 0x5f56, 0x0000, 0x0000, 0x0000, 0x5f5b, 0x0000, 0x0000,
+ 0x0000, 0x5f5f, 0x0000, 0x5f60, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5f61,
+ 0x0000, 0x5f63, 0x0000, 0x5f66, 0x0000, 0x5f67, 0x5f6c, 0x0000, 0x5f73, 0x0000,
+ 0x0000, 0x0000, 0x5f77, 0x0000, 0x0000, 0x0000, 0x5f78, 0x5f7a, 0x5f7e, 0x0000,
+ 0x0000, 0x0000, 0x5f7f, 0x5f80, 0x5f81, 0x5f84, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5f85, 0x5f89, 0x0000, 0x0000, 0x5f8a, 0x5f8b, 0x5f8c, 0x0000, 0x5f91, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5f96, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5f97, 0x0000, 0x5f99, 0x5f9a, 0x5f9b,
+ 0x5f9c, 0x0000, 0x5f9e, 0x0000, 0x0000, 0x0000, 0x0000, 0x5fa0, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5fa1, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5fa2,
+ 0x5fa5, 0x0000, 0x0000, 0x0000, 0x0000, 0x5fa6, 0x0000, 0x0000, 0x0000, 0x5fa8,
+ 0x0000, 0x0000, 0x0000, 0x5fae, 0x0000, 0x0000, 0x0000, 0x0000, 0x5fb1, 0x0000,
+ 0x0000, 0x5fb2, 0x0000, 0x0000, 0x0000, 0x5fb3, 0x5fba, 0x0000, 0x0000, 0x0000,
+ 0x5fbb, 0x0000, 0x0000, 0x5fbf, 0x0000, 0x0000, 0x5fc1, 0x5fc2, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x5fc5, 0x0000, 0x5fc6, 0x0000, 0x5fc8, 0x0000, 0x5fc9,
+ 0x5fcc, 0x5fcd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5fcf, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5fd0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5fd9,
+ 0x5fdb, 0x0000, 0x5fdc, 0x0000, 0x0000, 0x0000, 0x5fe4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x5fe5, 0x5fe6, 0x0000, 0x0000, 0x0000, 0x5fe9, 0x5fea, 0x0000,
+ 0x5feb, 0x0000, 0x5fec, 0x0000, 0x5fee, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5ff0, 0x0000, 0x0000, 0x0000, 0x5ff1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5ff2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x5ff7, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x5ff9, 0x0000, 0x0000, 0x0000, 0x5ffe, 0x0000, 0x5fff, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6001, 0x6005,
+ 0x0000, 0x6008, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6009, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x600a, 0x0000, 0x0000, 0x600b, 0x0000, 0x600c, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x600e,
+ 0x600f, 0x0000, 0x0000, 0x0000, 0x0000, 0x6010, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6012, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6014, 0x6015, 0x0000, 0x0000, 0x0000, 0x0000, 0x601a, 0x601b, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x601c, 0x0000, 0x0000, 0x601d, 0x0000, 0x6022, 0x0000,
+ 0x0000, 0x6023, 0x0000, 0x0000, 0x0000, 0x0000, 0x6024, 0x6027, 0x6028, 0x6030,
+ 0x0000, 0x0000, 0x0000, 0x6033, 0x0000, 0x603e, 0x603f, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6040, 0x0000, 0x0000, 0x0000, 0x604f, 0x6050, 0x6051, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6056, 0x0000, 0x6057, 0x6058,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6059, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x605b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x605c, 0x605d, 0x0000,
+ 0x605e, 0x6062, 0x0000, 0x0000, 0x0000, 0x6063, 0x0000, 0x6066, 0x0000, 0x0000,
+ 0x6067, 0x0000, 0x0000, 0x0000, 0x6069, 0x0000, 0x606b, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x606c, 0x0000, 0x606d, 0x0000, 0x0000, 0x606e, 0x0000, 0x0000, 0x6070,
+ 0x6071, 0x0000, 0x0000, 0x0000, 0x0000, 0x6072, 0x6073, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x6079, 0x0000, 0x607a, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6085, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6086, 0x0000, 0x6088, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6089, 0x608a, 0x0000, 0x608b, 0x0000, 0x608c, 0x608e, 0x0000, 0x608f, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6090, 0x0000, 0x0000, 0x6095, 0x0000, 0x0000, 0x60a2,
+ 0x0000, 0x60ad, 0x60ae, 0x0000, 0x0000, 0x0000, 0x60b0, 0x0000, 0x0000, 0x0000,
+ 0x60b1, 0x0000, 0x0000, 0x0000, 0x60b6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x60ba, 0x0000, 0x60bb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x60bc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x60bd, 0x60bf, 0x60c0, 0x0000,
+ 0x60c4, 0x0000, 0x0000, 0x0000, 0x0000, 0x60c5, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x60c9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x60d1, 0x0000, 0x60d2, 0x60d4,
+ 0x0000, 0x0000, 0x0000, 0x60d5, 0x0000, 0x0000, 0x0000, 0x0000, 0x60da, 0x60de,
+ 0x0000, 0x60df, 0x60e0, 0x0000, 0x0000, 0x0000, 0x60e3, 0x0000, 0x60e4, 0x60e6,
+ 0x0000, 0x60e7, 0x0000, 0x0000, 0x0000, 0x60ea, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x60fb, 0x60fc, 0x0000, 0x6103, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6104, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6107, 0x0000,
+ 0x610b, 0x610c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x610f, 0x0000, 0x0000, 0x6110, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6111, 0x0000, 0x6112, 0x6113, 0x0000, 0x0000, 0x0000, 0x6114,
+ 0x0000, 0x6115, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6116, 0x0000, 0x6117, 0x0000, 0x0000, 0x6124, 0x0000, 0x0000, 0x0000,
+ 0x6133, 0x0000, 0x0000, 0x0000, 0x6134, 0x0000, 0x613f, 0x6141, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6143, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6144,
+ 0x0000, 0x6151, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6152, 0x0000,
+ 0x0000, 0x6155, 0x6162, 0x6163, 0x0000, 0x0000, 0x0000, 0x6164, 0x0000, 0x0000,
+ 0x616b, 0x0000, 0x0000, 0x616e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6171, 0x6176, 0x0000, 0x6177, 0x0000, 0x0000, 0x6179,
+ 0x0000, 0x0000, 0x0000, 0x617a, 0x0000, 0x617f, 0x0000, 0x0000, 0x0000, 0x6181,
+ 0x0000, 0x0000, 0x6182, 0x0000, 0x6184, 0x6188, 0x618a, 0x618c, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6190, 0x0000, 0x0000, 0x0000, 0x6191, 0x0000, 0x6196,
+ 0x0000, 0x0000, 0x6197, 0x0000, 0x0000, 0x6198, 0x0000, 0x0000, 0x0000, 0x61a1,
+ 0x0000, 0x0000, 0x0000, 0x61a2, 0x0000, 0x0000, 0x61a9, 0x0000, 0x0000, 0x0000,
+ 0x61ab, 0x0000, 0x0000, 0x61ba, 0x0000, 0x0000, 0x61bf, 0x0000, 0x0000, 0x0000,
+ 0x61ca, 0x0000, 0x0000, 0x61cb, 0x61cc, 0x0000, 0x61cd, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x61cf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x61d0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x61d2, 0x0000,
+ 0x0000, 0x61d3, 0x61d5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x61d9,
+ 0x0000, 0x0000, 0x61db, 0x0000, 0x61dc, 0x61dd, 0x0000, 0x0000, 0x61de, 0x0000,
+ 0x0000, 0x0000, 0x61df, 0x0000, 0x0000, 0x0000, 0x0000, 0x61e1, 0x61e3, 0x0000,
+ 0x0000, 0x61e4, 0x61e8, 0x0000, 0x61e9, 0x61ed, 0x61ee, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x61f0, 0x0000, 0x61f1, 0x0000, 0x6202, 0x0000, 0x0000, 0x6204, 0x6205,
+ 0x620d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6211, 0x6214, 0x0000,
+ 0x0000, 0x6219, 0x0000, 0x0000, 0x621b, 0x621c, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x621d, 0x0000, 0x0000, 0x0000, 0x6220, 0x6221, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6225, 0x0000, 0x0000, 0x0000, 0x6226,
+ 0x0000, 0x622a, 0x622e, 0x0000, 0x6233, 0x0000, 0x6237, 0x0000, 0x0000, 0x0000,
+ 0x623f, 0x0000, 0x6249, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x624b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6256, 0x0000, 0x6257, 0x0000, 0x6277, 0x0000, 0x0000, 0x0000, 0x6279, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x627d, 0x0000, 0x6283, 0x0000, 0x6287, 0x0000, 0x6289,
+ 0x0000, 0x0000, 0x0000, 0x628b, 0x0000, 0x0000, 0x0000, 0x628c, 0x0000, 0x0000,
+ 0x0000, 0x628d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x628f,
+ 0x6291, 0x0000, 0x0000, 0x0000, 0x0000, 0x6295, 0x6297, 0x0000, 0x0000, 0x0000,
+ 0x629b, 0x0000, 0x0000, 0x0000, 0x62a4, 0x0000, 0x62a9, 0x62aa, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x62ac, 0x62b1, 0x0000, 0x62b4, 0x0000, 0x0000, 0x62b9, 0x62ec,
+ 0x0000, 0x62ed, 0x0000, 0x62ee, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x62ef, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x62f0, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x62f4, 0x0000, 0x0000, 0x0000, 0x62f5,
+ 0x0000, 0x0000, 0x0000, 0x62f8, 0x62f9, 0x62fa, 0x0000, 0x0000, 0x62ff, 0x0000,
+ 0x6306, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6308, 0x0000,
+ 0x630a, 0x0000, 0x631f, 0x0000, 0x6323, 0x0000, 0x0000, 0x0000, 0x0000, 0x6328,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x632a,
+ 0x0000, 0x632c, 0x0000, 0x632e, 0x0000, 0x0000, 0x6337, 0x0000, 0x0000, 0x6339,
+ 0x0000, 0x0000, 0x0000, 0x633a, 0x0000, 0x0000, 0x0000, 0x633f, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6345,
+ 0x6347, 0x0000, 0x0000, 0x6349, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x634b, 0x0000, 0x0000, 0x0000, 0x634d, 0x0000, 0x0000, 0x0000, 0x6350,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x6359, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x635b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x635c, 0x0000, 0x0000, 0x0000, 0x635d, 0x0000, 0x0000, 0x6360, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6362, 0x0000, 0x0000, 0x6363, 0x0000,
+ 0x6366, 0x0000, 0x0000, 0x6369, 0x0000, 0x0000, 0x0000, 0x636a, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x636c, 0x0000, 0x636d, 0x636e, 0x636f, 0x0000, 0x0000, 0x0000,
+ 0x6370, 0x0000, 0x6371, 0x0000, 0x0000, 0x0000, 0x6373, 0x0000, 0x6375, 0x0000,
+ 0x637c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x637d,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x637f, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6382, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6383, 0x0000, 0x0000, 0x0000, 0x0000, 0x6385, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x638b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x638c, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x638d,
+ 0x0000, 0x6399, 0x0000, 0x0000, 0x639a, 0x0000, 0x63a0, 0x0000, 0x63a6, 0x0000,
+ 0x63a8, 0x0000, 0x0000, 0x63a9, 0x63aa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x63ad, 0x63ae, 0x63af, 0x0000, 0x63b0, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x63b1, 0x0000, 0x63b2, 0x63b7, 0x63be, 0x0000, 0x63c0,
+ 0x0000, 0x63c1, 0x0000, 0x0000, 0x63cc, 0x63ce, 0x0000, 0x0000, 0x63cf, 0x0000,
+ 0x63d0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x63d2, 0x0000, 0x63d3, 0x0000,
+ 0x63d4, 0x63d5, 0x63e0, 0x0000, 0x0000, 0x0000, 0x63e2, 0x63e3, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x63e6, 0x0000, 0x0000, 0x0000, 0x0000, 0x63eb,
+ 0x0000, 0x0000, 0x0000, 0x63ed, 0x0000, 0x0000, 0x0000, 0x63ee, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x63f4, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x63f5, 0x0000, 0x0000, 0x0000, 0x0000, 0x63f6, 0x0000, 0x63f7,
+ 0x63f8, 0x63f9, 0x0000, 0x63fa, 0x0000, 0x0000, 0x0000, 0x63fc, 0x0000, 0x63fd,
+ 0x640f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6412, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6413, 0x6417, 0x0000, 0x0000, 0x641d, 0x0000, 0x0000, 0x641f, 0x0000,
+ 0x0000, 0x0000, 0x6423, 0x6424, 0x0000, 0x0000, 0x6431, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6436, 0x0000, 0x0000, 0x0000, 0x643d, 0x643f, 0x0000, 0x0000, 0x6447,
+ 0x0000, 0x0000, 0x644e, 0x6462, 0x0000, 0x6463, 0x6466, 0x6467, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6468, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x646a, 0x0000, 0x0000, 0x646e, 0x0000, 0x646f, 0x0000, 0x6470,
+ 0x0000, 0x6473, 0x6474, 0x6475, 0x0000, 0x0000, 0x6476, 0x6480, 0x6484, 0x0000,
+ 0x0000, 0x0000, 0x6486, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6489, 0x0000, 0x0000, 0x648b, 0x0000, 0x0000, 0x0000, 0x648c,
+ 0x0000, 0x648d, 0x6491, 0x0000, 0x6492, 0x0000, 0x6494, 0x64ac, 0x64b2, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x64b4, 0x0000, 0x0000, 0x0000, 0x0000, 0x64b5,
+ 0x0000, 0x64b6, 0x64b8, 0x64b9, 0x0000, 0x0000, 0x0000, 0x64bd, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x64c5, 0x64c9, 0x0000, 0x0000, 0x0000, 0x64d0,
+ 0x64d1, 0x0000, 0x0000, 0x64d3, 0x64d6, 0x64d7, 0x0000, 0x0000, 0x64d9, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x64dc, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x64e8, 0x64e9, 0x0000, 0x0000, 0x0000, 0x64f6, 0x0000, 0x0000,
+ 0x0000, 0x64f7, 0x64f8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x64f9, 0x64fa, 0x0000, 0x0000, 0x64fb, 0x0000, 0x0000, 0x64fc,
+ 0x0000, 0x6506, 0x0000, 0x0000, 0x0000, 0x6507, 0x6509, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x650b, 0x650c, 0x0000, 0x650d, 0x6512, 0x0000,
+ 0x6513, 0x0000, 0x6514, 0x6515, 0x0000, 0x0000, 0x0000, 0x0000, 0x6516, 0x652e,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x652f, 0x6530, 0x6531,
+ 0x0000, 0x0000, 0x0000, 0x6534, 0x6535, 0x0000, 0x0000, 0x0000, 0x0000, 0x6536,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6538, 0x0000, 0x6539,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x653a, 0x0000,
+ 0x0000, 0x653c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x653d, 0x6547, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6548, 0x0000, 0x0000, 0x654a, 0x0000, 0x0000, 0x0000,
+ 0x654d, 0x0000, 0x0000, 0x6552, 0x6556, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6559, 0x0000, 0x655e, 0x0000, 0x6564, 0x0000, 0x0000, 0x6569,
+ 0x656a, 0x0000, 0x0000, 0x656b, 0x0000, 0x656c, 0x656d, 0x656e, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x656f, 0x0000, 0x0000, 0x0000, 0x0000, 0x6570, 0x0000,
+ 0x0000, 0x0000, 0x6571, 0x6573, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6575,
+ 0x6577, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x657a, 0x0000,
+ 0x657d, 0x0000, 0x0000, 0x0000, 0x657e, 0x0000, 0x0000, 0x0000, 0x6580, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6589, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6592, 0x0000, 0x0000, 0x0000, 0x6595, 0x0000, 0x0000, 0x0000, 0x6596, 0x6597,
+ 0x0000, 0x0000, 0x659e, 0x659f, 0x65a0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x65a1, 0x65a2, 0x65a4, 0x0000, 0x65a6, 0x65a7, 0x0000, 0x0000, 0x0000,
+ 0x65a8, 0x65ac, 0x0000, 0x65ad, 0x65b1, 0x65b2, 0x65bc, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x65be, 0x0000, 0x0000, 0x65bf, 0x0000, 0x0000, 0x65c1, 0x0000,
+ 0x65c2, 0x0000, 0x65c3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x65c5, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x65c6, 0x65cb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x65cc, 0x0000, 0x65d2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x65d3, 0x0000, 0x65d5, 0x0000,
+ 0x0000, 0x65d7, 0x0000, 0x0000, 0x0000, 0x65d9, 0x0000, 0x65da, 0x65dd, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x65de, 0x0000, 0x0000, 0x0000, 0x65df, 0x0000, 0x65ea,
+ 0x0000, 0x0000, 0x65ee, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x65ef, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x65f0, 0x65f5, 0x0000, 0x65fb, 0x660a, 0x0000, 0x660c,
+ 0x0000, 0x0000, 0x660d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6618,
+ 0x661d, 0x662b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6634, 0x6636, 0x0000, 0x0000, 0x0000, 0x6637, 0x0000, 0x663a, 0x663b,
+ 0x0000, 0x0000, 0x663c, 0x0000, 0x0000, 0x663e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x663f,
+ 0x0000, 0x0000, 0x0000, 0x6640, 0x6641, 0x0000, 0x66d1, 0x66d2, 0x0000, 0x66d3,
+ 0x0000, 0x0000, 0x66d4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x66d5, 0x0000, 0x66db, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x66df,
+ 0x0000, 0x0000, 0x0000, 0x66ee, 0x0000, 0x0000, 0x0000, 0x670b, 0x0000, 0x0000,
+ 0x670e, 0x670f, 0x6711, 0x0000, 0x0000, 0x6718, 0x6726, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x672b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x672c, 0x0000, 0x0000,
+ 0x6734, 0x0000, 0x0000, 0x6737, 0x0000, 0x6738, 0x673a, 0x6740, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x6743, 0x0000, 0x6744, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6749, 0x0000, 0x674c, 0x0000, 0x0000, 0x0000, 0x674e, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x674f, 0x0000, 0x0000, 0x0000, 0x0000, 0x6751, 0x0000,
+ 0x6752, 0x6754, 0x0000, 0x6755, 0x6756, 0x0000, 0x0000, 0x0000, 0x6757, 0x0000,
+ 0x0000, 0x0000, 0x6758, 0x0000, 0x0000, 0x675a, 0x0000, 0x0000, 0x675c, 0x0000,
+ 0x675f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6760,
+ 0x6766, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6769, 0x0000, 0x0000, 0x676a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x676b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x676d,
+ 0x0000, 0x6775, 0x0000, 0x0000, 0x6776, 0x0000, 0x6777, 0x0000, 0x0000, 0x6778,
+ 0x677d, 0x677e, 0x0000, 0x0000, 0x677f, 0x0000, 0x6781, 0x6788, 0x678a, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x678b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x678d, 0x0000, 0x0000, 0x678e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6790, 0x0000, 0x6791,
+ 0x6793, 0x0000, 0x0000, 0x0000, 0x6796, 0x0000, 0x0000, 0x0000, 0x6797, 0x0000,
+ 0x679c, 0x679e, 0x0000, 0x0000, 0x0000, 0x679f, 0x0000, 0x67a4, 0x0000, 0x67a5,
+ 0x67a9, 0x67be, 0x0000, 0x0000, 0x0000, 0x67bf, 0x0000, 0x0000, 0x0000, 0x67cb,
+ 0x0000, 0x0000, 0x67cd, 0x0000, 0x67dc, 0x0000, 0x67e1, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x67eb, 0x0000, 0x67ec, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x67ee, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x67ef, 0x67f1, 0x67f3, 0x67f6, 0x0000, 0x0000,
+ 0x0000, 0x67f8, 0x67fc, 0x0000, 0x67fd, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6803, 0x0000, 0x6805, 0x0000, 0x0000, 0x6806, 0x0000, 0x0000, 0x6808, 0x6813,
+ 0x0000, 0x0000, 0x0000, 0x6814, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6816, 0x6817, 0x0000, 0x0000, 0x0000, 0x681a, 0x0000,
+ 0x0000, 0x6820, 0x0000, 0x0000, 0x0000, 0x0000, 0x6827, 0x682e, 0x682f, 0x0000,
+ 0x0000, 0x0000, 0x683d, 0x683e, 0x683f, 0x0000, 0x6841, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6878, 0x0000, 0x6879, 0x0000, 0x687b, 0x687c, 0x0000, 0x687d, 0x687e,
+ 0x687f, 0x0000, 0x0000, 0x0000, 0x0000, 0x6880, 0x6883, 0x0000, 0x0000, 0x0000,
+ 0x6884, 0x6891, 0x0000, 0x0000, 0x0000, 0x6896, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6897, 0x0000, 0x6899, 0x689a, 0x0000, 0x68a2, 0x0000, 0x0000, 0x0000,
+ 0x68a3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x68a4, 0x0000, 0x0000, 0x68a5, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x68a7, 0x0000, 0x68a8, 0x68a9, 0x0000, 0x0000, 0x0000,
+ 0x68aa, 0x0000, 0x68ad, 0x68ae, 0x0000, 0x0000, 0x0000, 0x68b0, 0x0000, 0x0000,
+ 0x68b3, 0x0000, 0x68b4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x68b5, 0x0000, 0x0000, 0x68b8, 0x0000, 0x0000, 0x68b9, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x68bc, 0x0000, 0x68c9, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x68ca, 0x0000, 0x0000, 0x68cb,
+ 0x68cd, 0x68d2, 0x0000, 0x0000, 0x0000, 0x0000, 0x68d3, 0x0000, 0x0000, 0x68e1,
+ 0x0000, 0x68e3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x68e4, 0x0000, 0x68e5, 0x68e9, 0x0000, 0x68ea, 0x0000, 0x68eb, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x68fc, 0x0000, 0x68fe, 0x6902,
+ 0x6903, 0x0000, 0x0000, 0x0000, 0x0000, 0x690a, 0x690e, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x690f, 0x6910, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6914, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x691f, 0x6921, 0x6922, 0x6923,
+ 0x6924, 0x6927, 0x0000, 0x0000, 0x0000, 0x6929, 0x692a, 0x0000, 0x0000, 0x692d,
+ 0x0000, 0x0000, 0x0000, 0x6930, 0x0000, 0x0000, 0x6931, 0x6932, 0x0000, 0x0000,
+ 0x0000, 0x6933, 0x0000, 0x6934, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6935,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6939, 0x0000, 0x0000, 0x693f,
+ 0x0000, 0x0000, 0x6940, 0x0000, 0x0000, 0x0000, 0x6942, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x694c, 0x0000, 0x694e, 0x0000, 0x0000, 0x6953,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6955, 0x0000, 0x6959,
+ 0x695a, 0x695c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x695d, 0x0000, 0x695e,
+ 0x0000, 0x6962, 0x0000, 0x6964, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6966, 0x0000, 0x696a, 0x696b, 0x0000, 0x696e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x697b, 0x697e, 0x0000, 0x0000, 0x697f, 0x6982, 0x6984, 0x6985, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6986, 0x6987, 0x698a, 0x0000,
+ 0x698b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6991, 0x0000, 0x0000, 0x0000,
+ 0x6992, 0x0000, 0x0000, 0x0000, 0x0000, 0x6995, 0x6996, 0x6997, 0x699a, 0x0000,
+ 0x0000, 0x699c, 0x699d, 0x0000, 0x0000, 0x0000, 0x699e, 0x69a2, 0x0000, 0x0000,
+ 0x0000, 0x69a4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x69a5, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x69a6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x69a7, 0x69a9, 0x0000, 0x69aa, 0x0000, 0x0000, 0x0000, 0x69ab,
+ 0x69ac, 0x0000, 0x69af, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x69b0, 0x69b2, 0x69b3, 0x0000, 0x69b5, 0x0000, 0x69b8, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x69bd, 0x0000, 0x0000, 0x69be, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x69c0, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x69c4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x69c6, 0x0000, 0x69c7, 0x0000, 0x0000, 0x0000, 0x69c9, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x69ca, 0x0000, 0x69cb, 0x69ce, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x69cf, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x69d0, 0x69d2, 0x0000,
+ 0x69d6, 0x0000, 0x0000, 0x69d7, 0x0000, 0x69db, 0x69de, 0x0000, 0x0000, 0x0000,
+ 0x69df, 0x0000, 0x0000, 0x0000, 0x0000, 0x69e1, 0x0000, 0x0000, 0x0000, 0x69e2,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x69e3, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x69e4, 0x69ed, 0x0000, 0x0000, 0x0000, 0x0000, 0x69ee, 0x0000, 0x0000,
+ 0x69f4, 0x0000, 0x69f6, 0x0000, 0x0000, 0x69fa, 0x69fb, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6a0b, 0x0000, 0x0000, 0x0000, 0x0000, 0x6a0c, 0x6a0d,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x6a0e, 0x6a0f, 0x0000, 0x6a10, 0x0000, 0x6a17,
+ 0x0000, 0x0000, 0x0000, 0x6a1c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6a27, 0x0000, 0x6a35, 0x0000, 0x0000, 0x6a37, 0x0000, 0x6a39, 0x0000,
+ 0x6a3b, 0x0000, 0x6a3e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6a40, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6a42, 0x0000, 0x0000, 0x0000, 0x0000, 0x6a43, 0x0000,
+ 0x0000, 0x6a44, 0x0000, 0x0000, 0x6a46, 0x0000, 0x6a47, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6a49, 0x0000, 0x0000, 0x0000, 0x6a4d, 0x0000, 0x0000, 0x6a50, 0x6a53,
+ 0x6a54, 0x6a56, 0x6a57, 0x0000, 0x6a58, 0x0000, 0x6a59, 0x6a5a, 0x0000, 0x0000,
+ 0x6a61, 0x0000, 0x0000, 0x0000, 0x0000, 0x6a63, 0x0000, 0x6a65, 0x0000, 0x6a66,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x6a67, 0x0000, 0x6a6a, 0x6a6b, 0x0000, 0x6a72,
+ 0x0000, 0x0000, 0x0000, 0x6a73, 0x0000, 0x6a75, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6a76, 0x6a77, 0x6a7a,
+ 0x0000, 0x0000, 0x0000, 0x6a7b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6a83, 0x0000, 0x6a8c, 0x6a8e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6aa0, 0x6aa1, 0x6aa5, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6aa6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6ab0,
+ 0x6ab1, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6ab6, 0x0000, 0x6ab8, 0x0000,
+ 0x6ac1, 0x0000, 0x6ac2, 0x6ac3, 0x0000, 0x6ac4, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6acc, 0x0000, 0x0000, 0x0000, 0x6ad4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6ad6, 0x0000, 0x6ad7, 0x0000, 0x0000, 0x0000, 0x0000, 0x6adb, 0x0000,
+ 0x0000, 0x6ade, 0x6adf, 0x6ae1, 0x0000, 0x0000, 0x0000, 0x6ae5, 0x0000, 0x6ae7,
+ 0x0000, 0x6af0, 0x6af2, 0x0000, 0x0000, 0x6af3, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6b04, 0x0000, 0x6b05, 0x6b0c, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6b10, 0x0000, 0x0000, 0x0000, 0x0000, 0x6b3d, 0x0000, 0x0000, 0x0000,
+ 0x6b40, 0x0000, 0x0000, 0x0000, 0x6b42, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6b43, 0x0000, 0x0000, 0x0000, 0x6b44, 0x0000, 0x0000, 0x6b45,
+ 0x0000, 0x6b49, 0x6b4b, 0x0000, 0x0000, 0x6b4d, 0x0000, 0x6b4e, 0x0000, 0x6b4f,
+ 0x0000, 0x6b55, 0x6b5a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6b5c,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6b5d, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6b65, 0x0000, 0x6b66, 0x6b6e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6b77, 0x6b8c,
+ 0x0000, 0x0000, 0x0000, 0x6b8d, 0x6b99, 0x0000, 0x0000, 0x0000, 0x6b9a, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6b9b,
+ 0x0000, 0x0000, 0x6b9d, 0x6b9e, 0x0000, 0x6b9f, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6ba3, 0x0000, 0x0000, 0x6bb3, 0x0000, 0x6bb5, 0x6bb6,
+ 0x6bb7, 0x6bb9, 0x0000, 0x6bba, 0x0000, 0x0000, 0x6bbb, 0x6bc1, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6bc2, 0x0000, 0x0000, 0x6bc4, 0x6bc5, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6bcc, 0x0000, 0x0000, 0x6bd0, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6bd8, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6bda,
+ 0x0000, 0x0000, 0x0000, 0x6be2, 0x0000, 0x0000, 0x6be4, 0x0000, 0x0000, 0x0000,
+ 0x6bef, 0x0000, 0x0000, 0x6bf0, 0x6bf2, 0x0000, 0x6bf4, 0x6bf6, 0x0000, 0x0000,
+ 0x0000, 0x6bfb, 0x0000, 0x6bfc, 0x6c01, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6c03, 0x6c0c,
+ 0x0000, 0x6c0d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6c0e,
+ 0x0000, 0x0000, 0x6c10, 0x0000, 0x6c11, 0x0000, 0x0000, 0x0000, 0x6c15, 0x0000,
+ 0x6c17, 0x0000, 0x0000, 0x0000, 0x6c19, 0x6c1a, 0x0000, 0x0000, 0x0000, 0x6c22,
+ 0x0000, 0x0000, 0x0000, 0x6c3f, 0x0000, 0x6c40, 0x6c41, 0x6c47, 0x6c48, 0x0000,
+ 0x0000, 0x6c50, 0x0000, 0x6c51, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6c53, 0x0000, 0x0000, 0x6c54, 0x0000, 0x6c55, 0x0000,
+ 0x6c5a, 0x0000, 0x0000, 0x0000, 0x6c5e, 0x0000, 0x0000, 0x0000, 0x6c5f, 0x6c60,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6c61, 0x6c62, 0x0000, 0x0000,
+ 0x0000, 0x6c63, 0x6c64, 0x6c67, 0x6c68, 0x0000, 0x0000, 0x0000, 0x6c78, 0x6c7a,
+ 0x0000, 0x0000, 0x0000, 0x6c7e, 0x6c7f, 0x0000, 0x6c80, 0x6c81, 0x0000, 0x0000,
+ 0x6c85, 0x0000, 0x6c88, 0x0000, 0x6c8a, 0x0000, 0x0000, 0x6c8f, 0x0000, 0x6c90,
+ 0x6c91, 0x6c9c, 0x0000, 0x6ca4, 0x6ca5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6ca6, 0x0000, 0x6cb1, 0x0000, 0x6cb3, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6cb4, 0x6cd5, 0x6cd6, 0x0000, 0x0000, 0x0000, 0x6cd8, 0x0000,
+ 0x0000, 0x0000, 0x6cd9, 0x6cec, 0x0000, 0x6cf1, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6cf2, 0x0000, 0x6cf3, 0x0000, 0x0000, 0x0000, 0x6cf4, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6cf9, 0x6cfa, 0x0000, 0x0000, 0x6cfb, 0x0000, 0x0000,
+ 0x0000, 0x6cfd, 0x6d01, 0x0000, 0x0000, 0x6d10, 0x0000, 0x0000, 0x6d11, 0x0000,
+ 0x6d12, 0x0000, 0x0000, 0x0000, 0x6d1b, 0x6d1e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6d25, 0x0000, 0x6d26, 0x0000,
+ 0x6d29, 0x0000, 0x6d2b, 0x6d32, 0x0000, 0x0000, 0x0000, 0x0000, 0x6d38, 0x6d3b,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6d3c, 0x6d3d,
+ 0x0000, 0x0000, 0x0000, 0x6d3f, 0x0000, 0x6d41, 0x6d47, 0x0000, 0x6d48, 0x6d49,
+ 0x0000, 0x6d4d, 0x0000, 0x6d4f, 0x6d93, 0x6d94, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6d98, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6d9a, 0x6d9b,
+ 0x0000, 0x0000, 0x6d9d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6d9f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6da2, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x6da5, 0x6da6, 0x6da8, 0x0000, 0x6da9, 0x0000,
+ 0x0000, 0x6daa, 0x0000, 0x0000, 0x0000, 0x0000, 0x6dab, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x6dae, 0x0000, 0x0000, 0x0000, 0x0000, 0x6db5,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x6db6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6db8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6dba, 0x0000, 0x6dc1, 0x6dd2, 0x6dd3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6dd4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6dd6, 0x0000,
+ 0x6de1, 0x0000, 0x6de3, 0x0000, 0x0000, 0x6de7, 0x0000, 0x0000, 0x0000, 0x6dec,
+ 0x6ded, 0x0000, 0x0000, 0x0000, 0x6df2, 0x0000, 0x0000, 0x0000, 0x0000, 0x6df8,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x6dfb, 0x6dfd, 0x6e01, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6e06, 0x0000, 0x6e07, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6e0c, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6e0d, 0x0000, 0x0000, 0x6e0f, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6e12, 0x6e1c, 0x0000, 0x6e1e, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x6e1f, 0x0000, 0x6e21, 0x6e2e, 0x0000, 0x0000,
+ 0x6e2f, 0x6e31, 0x0000, 0x6e33, 0x0000, 0x6e35, 0x0000, 0x0000, 0x0000, 0x6e37,
+ 0x6e38, 0x6e39, 0x0000, 0x6e3e, 0x0000, 0x6e3f, 0x6e41, 0x0000, 0x0000, 0x0000,
+ 0x6e42, 0x0000, 0x6e43, 0x6e45, 0x6e48, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x6e4b, 0x0000, 0x6e51, 0x0000, 0x0000, 0x6e52,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x6e53, 0x0000, 0x0000, 0x0000, 0x6e55, 0x0000,
+ 0x0000, 0x0000, 0x6e58, 0x6e5a, 0x0000, 0x6e5b, 0x6e5c, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6e5d, 0x0000, 0x0000, 0x6e5e, 0x6e5f, 0x0000, 0x0000,
+ 0x6e60, 0x0000, 0x0000, 0x6e62, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6e63,
+ 0x0000, 0x0000, 0x6e64, 0x0000, 0x0000, 0x6e65, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6e66, 0x6e67, 0x0000, 0x0000, 0x6e68, 0x0000, 0x0000, 0x0000, 0x6e6a, 0x0000,
+ 0x6e6c, 0x6e6d, 0x0000, 0x6e6e, 0x6e70, 0x6e72, 0x0000, 0x6e75, 0x6e76, 0x0000,
+ 0x0000, 0x0000, 0x6e77, 0x0000, 0x6e78, 0x6e79, 0x6e7b, 0x0000, 0x6e84, 0x0000,
+ 0x6e86, 0x0000, 0x6e89, 0x0000, 0x0000, 0x0000, 0x0000, 0x6e8b, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6e8c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6e8d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6e8e, 0x6e8f, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6e90, 0x0000, 0x0000, 0x6e91, 0x0000, 0x6e98, 0x0000, 0x6e99, 0x6e9a,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6e9b, 0x0000, 0x0000, 0x0000,
+ 0x6ea0, 0x6ea1, 0x0000, 0x0000, 0x6ea8, 0x0000, 0x0000, 0x0000, 0x6ea9, 0x6eb2,
+ 0x0000, 0x6eb3, 0x0000, 0x0000, 0x6eb8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6ebb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6ebc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6efb, 0x0000,
+ 0x6efc, 0x6efd, 0x0000, 0x6f00, 0x0000, 0x0000, 0x0000, 0x6f04, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6f05, 0x0000, 0x0000, 0x0000, 0x0000, 0x6f07, 0x0000,
+ 0x0000, 0x0000, 0x6f08, 0x0000, 0x0000, 0x6f0c, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6f0d, 0x0000, 0x0000, 0x0000, 0x6f0f, 0x6f12, 0x0000, 0x6f2a, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6f30, 0x0000, 0x0000, 0x0000, 0x0000, 0x6f31, 0x0000, 0x6f33, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x6f37, 0x0000, 0x0000, 0x0000, 0x0000, 0x6f3a,
+ 0x0000, 0x6f40, 0x0000, 0x6f41, 0x0000, 0x0000, 0x6f45, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6f46, 0x6f48, 0x0000, 0x0000, 0x6f49, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6f4c, 0x0000, 0x0000, 0x0000, 0x6f4f, 0x0000, 0x6f51, 0x0000, 0x6f53, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x6f54, 0x0000, 0x0000, 0x6f56, 0x6f57, 0x0000, 0x0000,
+ 0x0000, 0x6f5c, 0x0000, 0x0000, 0x0000, 0x6f5e, 0x0000, 0x0000, 0x6f60, 0x6f61,
+ 0x6f62, 0x6f69, 0x0000, 0x6f6e, 0x0000, 0x6f6f, 0x6f70, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x6f71, 0x0000, 0x0000, 0x6f74, 0x0000, 0x0000, 0x6f79, 0x6f7a, 0x0000,
+ 0x0000, 0x0000, 0x6f7b, 0x0000, 0x6f84, 0x0000, 0x6f89, 0x6f8a, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6f90, 0x6f93, 0x0000, 0x0000, 0x6f94, 0x0000, 0x0000, 0x0000, 0x0000, 0x6f95,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6f96, 0x6f98, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6f99, 0x0000, 0x0000, 0x0000, 0x6f9a,
+ 0x0000, 0x6f9c, 0x6f9d, 0x0000, 0x0000, 0x0000, 0x0000, 0x6f9f, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x6fa0, 0x6fa5, 0x6fac, 0x0000, 0x0000, 0x6fad, 0x0000, 0x0000,
+ 0x0000, 0x6fae, 0x6fb3, 0x0000, 0x6fb6, 0x0000, 0x0000, 0x6fb9, 0x0000, 0x0000,
+ 0x6fbd, 0x0000, 0x0000, 0x0000, 0x0000, 0x6fc6, 0x6fc7, 0x6fcb, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x6fcc, 0x0000, 0x6fd2, 0x0000, 0x0000, 0x6fd4,
+ 0x0000, 0x6fd7, 0x0000, 0x6fd8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x6fdb, 0x0000, 0x0000, 0x0000, 0x6fdd, 0x6fde, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6fdf, 0x0000, 0x6fe3,
+ 0x0000, 0x0000, 0x6fec, 0x0000, 0x0000, 0x0000, 0x6ff6, 0x0000, 0x6ffe, 0x6fff,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7000,
+ 0x7001, 0x7003, 0x7004, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7013, 0x0000, 0x0000, 0x0000, 0x7017, 0x0000, 0x0000, 0x0000, 0x7018, 0x0000,
+ 0x7019, 0x701a, 0x0000, 0x7021, 0x0000, 0x7023, 0x7024, 0x7026, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7027, 0x7038, 0x0000, 0x0000, 0x0000,
+ 0x7040, 0x0000, 0x0000, 0x0000, 0x7041, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7042, 0x0000, 0x7043, 0x0000, 0x7045, 0x0000,
+ 0x0000, 0x7046, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x7049, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x704d, 0x704e, 0x7050, 0x7052, 0x7054, 0x0000, 0x7055, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x7057, 0x7058, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x705a,
+ 0x0000, 0x0000, 0x0000, 0x705c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x705e, 0x0000, 0x705f, 0x7060, 0x0000, 0x0000, 0x0000, 0x0000, 0x7061, 0x7062,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x7063, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7064,
+ 0x0000, 0x7065, 0x0000, 0x706e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7070, 0x0000, 0x7071, 0x0000, 0x7072, 0x0000, 0x0000, 0x0000, 0x7073, 0x0000,
+ 0x0000, 0x0000, 0x707d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x707f,
+ 0x0000, 0x0000, 0x7081, 0x0000, 0x0000, 0x0000, 0x0000, 0x7082, 0x0000, 0x7085,
+ 0x0000, 0x0000, 0x7086, 0x0000, 0x0000, 0x7087, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x7088, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x708a,
+ 0x708c, 0x0000, 0x0000, 0x7090, 0x7093, 0x0000, 0x0000, 0x7095, 0x0000, 0x709a,
+ 0x0000, 0x0000, 0x0000, 0x70aa, 0x70b4, 0x0000, 0x0000, 0x70b5, 0x0000, 0x70b6,
+ 0x70b7, 0x0000, 0x0000, 0x0000, 0x70b9, 0x0000, 0x0000, 0x0000, 0x70ba, 0x0000,
+ 0x70c3, 0x70c4, 0x70c5, 0x0000, 0x0000, 0x0000, 0x70ca, 0x70d0, 0x70d2, 0x70da,
+ 0x70dc, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x70df, 0x0000,
+ 0x0000, 0x0000, 0x70e2, 0x70e3, 0x0000, 0x0000, 0x0000, 0x70e4, 0x0000, 0x0000,
+ 0x70e8, 0x0000, 0x70ea, 0x0000, 0x0000, 0x0000, 0x0000, 0x70eb, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x70ec, 0x0000, 0x0000, 0x0000, 0x70ee, 0x0000,
+ 0x70f2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x70f3, 0x70f4,
+ 0x70f7, 0x0000, 0x0000, 0x70f8, 0x0000, 0x70f9, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x70fc, 0x0000, 0x0000, 0x0000, 0x0000, 0x70fe,
+ 0x7101, 0x0000, 0x0000, 0x0000, 0x7102, 0x0000, 0x7108, 0x0000, 0x710b, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x710e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x711c, 0x0000, 0x0000, 0x0000, 0x7126, 0x0000, 0x0000, 0x0000, 0x0000, 0x7127,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7128,
+ 0x0000, 0x712b, 0x0000, 0x712f, 0x7130, 0x0000, 0x7136, 0x7137, 0x0000, 0x0000,
+ 0x7138, 0x713d, 0x7144, 0x7145, 0x7146, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x7147, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7148, 0x0000, 0x7149,
+ 0x0000, 0x0000, 0x0000, 0x7151, 0x0000, 0x0000, 0x7153, 0x0000, 0x0000, 0x715d,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7160, 0x0000, 0x7161, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x7162, 0x0000, 0x0000, 0x0000, 0x716c, 0x0000, 0x0000, 0x0000,
+ 0x716d, 0x0000, 0x0000, 0x0000, 0x0000, 0x716e, 0x0000, 0x7175, 0x0000, 0x7177,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x717b,
+ 0x0000, 0x0000, 0x0000, 0x717e, 0x7180, 0x7186, 0x0000, 0x718e, 0x719a, 0x0000,
+ 0x0000, 0x0000, 0x719b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x719c,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x719d, 0x71a0, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x71a2, 0x71a9, 0x0000, 0x0000, 0x0000, 0x71af, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x71b1, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x71b3, 0x0000, 0x71b5, 0x0000, 0x0000, 0x0000, 0x71bb,
+ 0x0000, 0x0000, 0x71c0, 0x0000, 0x0000, 0x71d2, 0x71d4, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x71e0, 0x0000, 0x71e8, 0x71f6,
+ 0x0000, 0x71f8, 0x0000, 0x0000, 0x71fc, 0x0000, 0x71fd, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x722c, 0x0000, 0x0000, 0x722d, 0x0000,
+ 0x0000, 0x722e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x7232, 0x0000, 0x0000, 0x0000, 0x7239, 0x0000, 0x723d, 0x0000,
+ 0x7240, 0x0000, 0x7242, 0x7248, 0x7260, 0x0000, 0x7262, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x7265, 0x0000, 0x0000, 0x7266, 0x726b, 0x726c, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x726e, 0x0000, 0x726f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7270, 0x7271, 0x7272, 0x7274, 0x0000, 0x7276, 0x0000, 0x0000, 0x7278, 0x727b,
+ 0x0000, 0x7280, 0x0000, 0x0000, 0x0000, 0x728a, 0x0000, 0x0000, 0x728b, 0x0000,
+ 0x0000, 0x728c, 0x728e, 0x7290, 0x0000, 0x7297, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x729a, 0x729b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x729d, 0x729f, 0x0000, 0x0000, 0x0000, 0x0000, 0x72a0, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x72a1, 0x0000, 0x0000, 0x0000, 0x0000, 0x72a2, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x72a3, 0x72a4, 0x72a5, 0x0000, 0x0000, 0x72aa,
+ 0x0000, 0x0000, 0x72ab, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x72ad, 0x0000, 0x0000, 0x0000, 0x0000, 0x72b4, 0x0000, 0x72b5, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x72b6, 0x0000, 0x0000, 0x72b8,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x72c2, 0x0000,
+ 0x72c5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x72ca,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x72cd, 0x0000, 0x0000, 0x0000,
+ 0x72ce, 0x0000, 0x0000, 0x72cf, 0x72d5, 0x0000, 0x72d6, 0x72e4, 0x72e6, 0x72ea,
+ 0x72eb, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x72ec, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x72ef, 0x0000, 0x0000, 0x0000,
+ 0x72fb, 0x0000, 0x0000, 0x0000, 0x72fd, 0x0000, 0x0000, 0x72ff, 0x0000, 0x7301,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7303, 0x0000, 0x7306, 0x730a, 0x730c, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7310, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7315, 0x0000, 0x0000, 0x0000, 0x7318, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x731c, 0x0000, 0x7321, 0x0000, 0x0000, 0x0000, 0x732e,
+ 0x0000, 0x0000, 0x0000, 0x7332, 0x0000, 0x0000, 0x0000, 0x7333, 0x7334, 0x0000,
+ 0x0000, 0x7339, 0x0000, 0x0000, 0x0000, 0x733a, 0x0000, 0x733b, 0x0000, 0x733e,
+ 0x7341, 0x0000, 0x7345, 0x0000, 0x0000, 0x0000, 0x7346, 0x0000, 0x0000, 0x0000,
+ 0x7348, 0x0000, 0x0000, 0x0000, 0x734c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x734e, 0x0000, 0x734f, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x7350, 0x7351, 0x7359, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x735a, 0x0000, 0x0000, 0x735b, 0x7362, 0x0000, 0x7364, 0x0000,
+ 0x0000, 0x0000, 0x7366, 0x0000, 0x7367, 0x7368, 0x736b, 0x0000, 0x0000, 0x736c,
+ 0x0000, 0x0000, 0x0000, 0x736d, 0x0000, 0x0000, 0x0000, 0x736e, 0x0000, 0x0000,
+ 0x7370, 0x0000, 0x0000, 0x0000, 0x0000, 0x7376, 0x7379, 0x0000, 0x737a, 0x737c,
+ 0x0000, 0x0000, 0x737d, 0x0000, 0x0000, 0x737e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x738a, 0x7390, 0x7392, 0x7397,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7399, 0x739a, 0x0000, 0x0000, 0x739d, 0x0000,
+ 0x0000, 0x73ad, 0x0000, 0x73ae, 0x0000, 0x73af, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x73b0, 0x73b1, 0x0000, 0x0000, 0x73b9, 0x0000, 0x0000, 0x0000, 0x73c0, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x73c1, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x73c2, 0x73c3, 0x73c5, 0x0000, 0x73c6, 0x0000, 0x73c9, 0x73cb,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x73cc, 0x0000, 0x73cd, 0x0000,
+ 0x73d1, 0x0000, 0x0000, 0x0000, 0x73d2, 0x0000, 0x73d5, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x73d8, 0x73db, 0x0000, 0x0000, 0x73dc, 0x0000, 0x0000, 0x0000, 0x73dd,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x73e0, 0x0000, 0x0000, 0x0000, 0x73e7,
+ 0x73e9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x73eb, 0x0000,
+ 0x73ed, 0x73ef, 0x0000, 0x0000, 0x73f4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x73f5, 0x0000, 0x0000, 0x0000, 0x73f7, 0x0000, 0x0000, 0x0000, 0x73f8, 0x0000,
+ 0x73f9, 0x73fa, 0x7404, 0x0000, 0x7405, 0x0000, 0x0000, 0x0000, 0x7406, 0x0000,
+ 0x740a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7418, 0x0000,
+ 0x7419, 0x0000, 0x741f, 0x0000, 0x7425, 0x7426, 0x0000, 0x7436, 0x7441, 0x0000,
+ 0x7443, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7444, 0x0000, 0x0000, 0x7445,
+ 0x0000, 0x0000, 0x0000, 0x744b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x744c, 0x0000, 0x0000, 0x0000,
+ 0x744d, 0x744e, 0x744f, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x747e, 0x0000, 0x0000, 0x0000, 0x7480, 0x0000,
+ 0x7481, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7483, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7485, 0x0000, 0x7488, 0x748a, 0x0000,
+ 0x0000, 0x748b, 0x0000, 0x0000, 0x748d, 0x748e, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7493, 0x0000, 0x0000, 0x0000, 0x0000, 0x7494,
+ 0x7495, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7499, 0x0000, 0x0000, 0x74ad, 0x74b0, 0x74c2, 0x74d1, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x74d3, 0x74e1, 0x0000, 0x74e2, 0x0000, 0x0000, 0x74e3, 0x74e6,
+ 0x74f8, 0x74fa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x74fb,
+ 0x74fc, 0x0000, 0x0000, 0x0000, 0x74ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7501, 0x0000, 0x0000, 0x7504, 0x0000, 0x7505, 0x0000, 0x0000, 0x750a, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x7513, 0x0000, 0x0000, 0x0000, 0x7514, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x751a, 0x0000, 0x751b, 0x7528, 0x7537, 0x7538, 0x753a,
+ 0x0000, 0x0000, 0x0000, 0x753d, 0x0000, 0x0000, 0x0000, 0x0000, 0x753e, 0x7540,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x7541, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7547, 0x754f, 0x0000,
+ 0x0000, 0x7551, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x7552, 0x0000, 0x7556, 0x0000, 0x7557, 0x0000, 0x7558, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7573, 0x7574, 0x0000, 0x0000, 0x0000,
+ 0x7575, 0x0000, 0x7578, 0x0000, 0x0000, 0x0000, 0x7579, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x757b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x757f, 0x0000,
+ 0x0000, 0x7580, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7582, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7584,
+ 0x758a, 0x0000, 0x0000, 0x758b, 0x0000, 0x0000, 0x0000, 0x0000, 0x7592, 0x75a6,
+ 0x0000, 0x75a7, 0x0000, 0x75a9, 0x75b2, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x75b3, 0x75b4,
+ 0x75b5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x75b7, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x75b8,
+ 0x0000, 0x0000, 0x75b9, 0x75ba, 0x0000, 0x0000, 0x0000, 0x75bb, 0x75c2, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x75c3, 0x0000, 0x0000, 0x75c4, 0x75c7, 0x0000,
+ 0x0000, 0x0000, 0x75d8, 0x0000, 0x75dc, 0x75dd, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x75e4, 0x75e5, 0x0000, 0x75f0, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x75f2, 0x75f4, 0x0000, 0x0000, 0x75f7,
+ 0x0000, 0x0000, 0x75fa, 0x0000, 0x0000, 0x0000, 0x0000, 0x75fb, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7605, 0x0000,
+ 0x0000, 0x0000, 0x7608, 0x0000, 0x0000, 0x7609, 0x0000, 0x0000, 0x0000, 0x760a,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x760b, 0x0000, 0x760c, 0x0000, 0x760e, 0x7613,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7617, 0x0000, 0x0000, 0x7619, 0x761b,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x761e, 0x0000, 0x7620, 0x7623, 0x7625, 0x0000,
+ 0x762a, 0x762c, 0x0000, 0x0000, 0x0000, 0x763d, 0x0000, 0x0000, 0x763f, 0x7640,
+ 0x0000, 0x0000, 0x0000, 0x7646, 0x7648, 0x0000, 0x0000, 0x764a, 0x0000, 0x764c,
+ 0x0000, 0x7656, 0x0000, 0x0000, 0x0000, 0x0000, 0x7657, 0x7658, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x765a, 0x765b, 0x765e, 0x7660, 0x7662, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x766c, 0x766d, 0x0000, 0x0000, 0x0000, 0x766e,
+ 0x0000, 0x0000, 0x0000, 0x766f, 0x0000, 0x7670, 0x7672, 0x7676, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x7677, 0x0000, 0x767c, 0x768c, 0x768d, 0x0000, 0x0000,
+ 0x7694, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7695,
+ 0x0000, 0x7696, 0x0000, 0x7697, 0x7698, 0x0000, 0x0000, 0x769d, 0x769e, 0x76aa,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x76ab, 0x0000, 0x0000, 0x76ad, 0x0000, 0x76b1,
+ 0x0000, 0x76b4, 0x76bd, 0x0000, 0x0000, 0x0000, 0x76c1, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x76c3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x76c4, 0x0000, 0x0000,
+ 0x76c5, 0x0000, 0x76c6, 0x76c8, 0x0000, 0x76c9, 0x0000, 0x76ca, 0x0000, 0x0000,
+ 0x0000, 0x76d1, 0x0000, 0x0000, 0x76d2, 0x76d3, 0x0000, 0x76d4, 0x0000, 0x76d8,
+ 0x0000, 0x0000, 0x0000, 0x76db, 0x76de, 0x76e0, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x76e1, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x76e4, 0x0000, 0x76e5, 0x76e6, 0x0000, 0x76e9, 0x76ea,
+ 0x0000, 0x0000, 0x0000, 0x76ed, 0x0000, 0x0000, 0x0000, 0x0000, 0x76f4, 0x76f8,
+ 0x76f9, 0x0000, 0x0000, 0x0000, 0x76fa, 0x0000, 0x7700, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x7703, 0x0000, 0x7705, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x770d, 0x0000, 0x0000, 0x7714, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7715, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7716, 0x7717, 0x7721, 0x7722,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7729, 0x0000, 0x772c, 0x0000, 0x0000, 0x0000, 0x772d, 0x772e, 0x0000, 0x7732,
+ 0x7734, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x773b, 0x0000, 0x773c, 0x0000, 0x773d, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x7749, 0x0000, 0x0000, 0x774a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7759, 0x0000, 0x0000, 0x775b, 0x775c, 0x775e, 0x775f, 0x7760, 0x0000, 0x0000,
+ 0x7761, 0x0000, 0x7762, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x7763, 0x776a, 0x776b, 0x0000, 0x777a, 0x777b, 0x0000, 0x0000, 0x777e,
+ 0x0000, 0x0000, 0x7782, 0x0000, 0x0000, 0x0000, 0x0000, 0x7793, 0x7794, 0x779f,
+ 0x77aa, 0x0000, 0x0000, 0x77ac, 0x77b0, 0x77bf, 0x77c0, 0x0000, 0x77c1, 0x0000,
+ 0x0000, 0x77c2, 0x77cd, 0x0000, 0x77ce, 0x0000, 0x77d4, 0x77d6, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x77d7, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x77e7, 0x0000, 0x0000,
+ 0x77ea, 0x0000, 0x0000, 0x0000, 0x0000, 0x77ec, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x77ed, 0x0000, 0x77ee, 0x77ef, 0x0000, 0x0000, 0x0000, 0x0000, 0x77f3, 0x0000,
+ 0x0000, 0x0000, 0x77f5, 0x0000, 0x0000, 0x77f6, 0x77ff, 0x7809, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x780b, 0x0000, 0x0000,
+ 0x780d, 0x0000, 0x0000, 0x0000, 0x780e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7810, 0x7811, 0x0000, 0x0000, 0x0000, 0x7814, 0x0000, 0x0000, 0x0000, 0x7817,
+ 0x0000, 0x781a, 0x0000, 0x781b, 0x781c, 0x0000, 0x0000, 0x781f, 0x7820, 0x7821,
+ 0x0000, 0x0000, 0x0000, 0x7822, 0x0000, 0x0000, 0x7828, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x782b, 0x0000, 0x782c, 0x0000, 0x0000, 0x782e,
+ 0x0000, 0x7831, 0x7832, 0x7833, 0x7836, 0x7839, 0x0000, 0x0000, 0x783b, 0x783c,
+ 0x783d, 0x0000, 0x0000, 0x0000, 0x0000, 0x7846, 0x0000, 0x0000, 0x0000, 0x7848,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x785a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x785c, 0x7863, 0x0000, 0x0000, 0x7867, 0x7868, 0x0000, 0x7869,
+ 0x0000, 0x786b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x786c, 0x0000,
+ 0x0000, 0x786e, 0x0000, 0x0000, 0x0000, 0x7872, 0x0000, 0x7873, 0x0000, 0x7875,
+ 0x7876, 0x0000, 0x787d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x787e, 0x787f,
+ 0x0000, 0x0000, 0x7881, 0x0000, 0x7883, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7884, 0x788a, 0x0000, 0x0000, 0x788b, 0x0000, 0x7891, 0x0000, 0x0000, 0x7892,
+ 0x0000, 0x0000, 0x7894, 0x0000, 0x0000, 0x7895, 0x0000, 0x0000, 0x0000, 0x78a1,
+ 0x78a3, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x78a9, 0x0000, 0x78ab, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x78ae, 0x0000, 0x78af, 0x0000, 0x78b1, 0x0000, 0x78b2,
+ 0x0000, 0x0000, 0x0000, 0x78b8, 0x78ba, 0x0000, 0x78bd, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x78be, 0x0000, 0x0000, 0x0000, 0x78c3, 0x78d5, 0x78de,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x78df, 0x0000, 0x0000, 0x78e1, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x78e2, 0x0000, 0x0000, 0x78e3, 0x0000, 0x0000,
+ 0x78eb, 0x78ec, 0x0000, 0x0000, 0x78f0, 0x0000, 0x0000, 0x78f1, 0x78f2, 0x78f6,
+ 0x0000, 0x0000, 0x78f9, 0x78fe, 0x0000, 0x0000, 0x0000, 0x7900, 0x0000, 0x0000,
+ 0x7901, 0x0000, 0x7902, 0x7906, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x7912, 0x7913, 0x7916, 0x0000, 0x7918, 0x0000, 0x0000, 0x7919, 0x0000,
+ 0x0000, 0x791b, 0x791d, 0x0000, 0x0000, 0x791e, 0x7923, 0x0000, 0x0000, 0x7926,
+ 0x0000, 0x7928, 0x0000, 0x0000, 0x0000, 0x0000, 0x792a, 0x0000, 0x0000, 0x792c,
+ 0x792f, 0x7930, 0x7931, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7933, 0x7934, 0x7935,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7938, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x793c, 0x793d,
+ 0x793e, 0x0000, 0x0000, 0x0000, 0x7941, 0x7943, 0x7945, 0x0000, 0x7947, 0x0000,
+ 0x0000, 0x0000, 0x7948, 0x0000, 0x7949, 0x0000, 0x0000, 0x0000, 0x794d, 0x794e,
+ 0x794f, 0x0000, 0x0000, 0x7957, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x795a,
+ 0x0000, 0x795c, 0x795f, 0x0000, 0x0000, 0x0000, 0x7960, 0x7961, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x7963, 0x0000, 0x0000, 0x7964, 0x0000, 0x0000, 0x0000, 0x7965,
+ 0x7967, 0x0000, 0x7968, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x796f, 0x0000, 0x79a6, 0x0000, 0x79a8, 0x0000, 0x0000,
+ 0x79a9, 0x79aa, 0x79ab, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x79ad, 0x0000, 0x79af,
+ 0x79b0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x79ba, 0x79c3,
+ 0x79c6, 0x79c7, 0x0000, 0x0000, 0x0000, 0x79c8, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x79cb, 0x0000, 0x0000, 0x0000, 0x79d2, 0x0000, 0x0000,
+ 0x0000, 0x79d8, 0x79db, 0x0000, 0x0000, 0x79dc, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x79de, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x79df, 0x0000, 0x0000, 0x0000, 0x79e5, 0x0000, 0x0000, 0x0000, 0x0000, 0x79eb,
+ 0x79ef, 0x0000, 0x0000, 0x0000, 0x0000, 0x79ff, 0x0000, 0x7a00, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7a01, 0x7a04,
+ 0x7a15, 0x0000, 0x7a16, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7a17,
+ 0x0000, 0x0000, 0x7a19, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x7a1a, 0x7a1b, 0x0000, 0x0000, 0x7a1c, 0x0000, 0x7a1d, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7a1e, 0x7a1f, 0x0000, 0x0000, 0x7a20, 0x0000,
+ 0x7a22, 0x0000, 0x7a23, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7a31, 0x0000,
+ 0x7a32, 0x0000, 0x7a34, 0x0000, 0x0000, 0x7a35, 0x7a37, 0x7a38, 0x0000, 0x0000,
+ 0x7a3a, 0x0000, 0x0000, 0x0000, 0x7a3c, 0x7a3f, 0x0000, 0x7a43, 0x0000, 0x7a44,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7a46, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7a47, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7a48, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x7a49, 0x7a4c, 0x7a4d, 0x7a53, 0x0000, 0x7a55, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7a5b, 0x0000, 0x7a5c, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x7a5d, 0x7a5f, 0x0000, 0x0000, 0x7a63, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x7a65, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7a68, 0x0000,
+ 0x0000, 0x7a69, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7a6a, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x7a6b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7a6e,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7a71, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x7a73, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7a74, 0x0000, 0x0000, 0x7a76, 0x7a77, 0x0000, 0x7a78, 0x0000, 0x0000, 0x7a7a,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7a7b, 0x0000, 0x0000, 0x7a7c, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7a83, 0x0000,
+ 0x7a8c, 0x0000, 0x0000, 0x7a8d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x7a90, 0x0000, 0x7a9c, 0x0000, 0x7a9d, 0x0000, 0x7aa0,
+ 0x0000, 0x7aa9, 0x0000, 0x7aad, 0x7aaf, 0x7ab0, 0x0000, 0x7ab1, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7ab5, 0x7ab7, 0x0000, 0x0000, 0x0000, 0x7ab8,
+ 0x7aba, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7abe, 0x7abf, 0x0000,
+ 0x0000, 0x7ac0, 0x0000, 0x7ac1, 0x7ac8, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7ac9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x7aca, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7acb, 0x0000, 0x0000, 0x0000, 0x0000, 0x7ace, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7ad2, 0x0000, 0x7ad4, 0x0000, 0x7ad8, 0x0000,
+ 0x0000, 0x7adb, 0x0000, 0x0000, 0x0000, 0x0000, 0x7adc, 0x0000, 0x7ae5, 0x7ae9,
+ 0x0000, 0x0000, 0x7aea, 0x0000, 0x0000, 0x7aeb, 0x0000, 0x0000, 0x7aec, 0x0000,
+ 0x0000, 0x0000, 0x7aed, 0x7af1, 0x0000, 0x7af4, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7b01, 0x7b02, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7b04,
+ 0x7b05, 0x7b06, 0x0000, 0x0000, 0x0000, 0x0000, 0x7b0d, 0x7b10, 0x7b11, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7b15, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x7b16, 0x0000, 0x0000, 0x7b17, 0x0000, 0x0000, 0x7b19,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7b1a,
+ 0x0000, 0x7b22, 0x7b30, 0x7b33, 0x7b34, 0x0000, 0x7b35, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x7b3a, 0x7b41, 0x7b47, 0x0000, 0x0000, 0x0000, 0x7b48,
+ 0x7b49, 0x7b4a, 0x0000, 0x0000, 0x7b4c, 0x7b4f, 0x0000, 0x7b51, 0x0000, 0x0000,
+ 0x0000, 0x7b52, 0x0000, 0x0000, 0x0000, 0x0000, 0x7b53, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x7b54, 0x7b56, 0x7b5c, 0x7b5d, 0x0000, 0x0000, 0x7b5e,
+ 0x7b60, 0x7b61, 0x7b62, 0x7b6b, 0x0000, 0x7b6c, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7b6d, 0x0000, 0x7b6f, 0x0000, 0x7b70, 0x7b71, 0x0000, 0x0000, 0x7b73, 0x7b74,
+ 0x0000, 0x0000, 0x7b78, 0x7b7a, 0x0000, 0x0000, 0x0000, 0x7b7b, 0x0000, 0x7b7f,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7b80, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x7b81, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7b82, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7b85, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7b86, 0x7b89, 0x0000, 0x0000, 0x0000, 0x0000,
+ 0x7b8b, 0x0000, 0x7b99, 0x0000, 0x0000, 0x7b9a, 0x0000, 0x0000, 0x7b9b, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7b9c, 0x0000,
+ 0x7b9e, 0x0000, 0x0000, 0x0000, 0x0000, 0x7ba0, 0x0000, 0x0000, 0x0000, 0x7ba4,
+ 0x0000, 0x0000, 0x0000, 0x7ba9, 0x0000, 0x0000, 0x7bbc, 0x0000, 0x0000, 0x0000,
+ 0x0000, 0x0000, 0x0000, 0x0000, 0x7bc9, 0x7bcb, 0x7bcc, 0x0000, 0x7bce, 0x0000,
+ 0x0000, 0x0000, 0x7bd0, 0x0000, 0x7bd6, 0x0000, 0x7bd7, 0x0000};
-static const DictWord kStaticDictionaryWords[] = {
- { 8, 0, 1002 }, { 8, 0, 1015 }, { 4, 0, 683 }, { 4, 10, 325 },
- { 10, 10, 125 }, { 7, 11, 572 }, { 9, 11, 592 }, { 11, 11, 680 },
- { 11, 11, 842 }, { 11, 11, 924 }, { 12, 11, 356 }, { 12, 11, 550 },
- { 13, 11, 317 }, { 13, 11, 370 }, { 13, 11, 469 }, { 13, 11, 471 },
- { 14, 11, 397 }, { 18, 11, 69 }, { 18, 11, 145 }, { 6, 0, 1265 },
- { 8, 11, 534 }, { 6, 0, 1431 }, { 11, 0, 138 }, { 12, 0, 40 },
- { 4, 0, 155 }, { 7, 0, 1689 }, { 4, 10, 718 }, { 7, 10, 1216 },
- { 4, 0, 245 }, { 5, 0, 151 }, { 5, 0, 741 }, { 6, 0, 1147 },
- { 7, 0, 498 }, { 7, 0, 870 }, { 7, 0, 1542 }, { 12, 0, 213 },
- { 14, 0, 36 }, { 14, 0, 391 }, { 17, 0, 111 }, { 18, 0, 6 },
- { 18, 0, 46 }, { 18, 0, 151 }, { 19, 0, 36 }, { 20, 0, 32 },
- { 20, 0, 56 }, { 20, 0, 69 }, { 20, 0, 102 }, { 21, 0, 4 },
- { 22, 0, 8 }, { 22, 0, 10 }, { 22, 0, 14 }, { 22, 0, 31 },
- { 4, 0, 624 }, { 7, 0, 1752 }, { 5, 10, 124 }, { 5, 10, 144 },
- { 6, 10, 548 }, { 7, 10, 15 }, { 7, 10, 153 }, { 9, 10, 629 },
- { 6, 0, 503 }, { 9, 0, 586 }, { 13, 0, 468 }, { 14, 0, 66 },
- { 16, 0, 58 }, { 7, 10, 1531 }, { 8, 10, 416 }, { 9, 10, 275 },
- { 10, 10, 100 }, { 11, 10, 658 }, { 11, 10, 979 }, { 12, 10, 86 },
- { 14, 10, 207 }, { 15, 10, 20 }, { 15, 10, 25 }, { 5, 0, 603 },
- { 7, 0, 1212 }, { 9, 0, 565 }, { 14, 0, 301 }, { 5, 10, 915 },
- { 6, 10, 1783 }, { 7, 10, 211 }, { 7, 10, 1353 }, { 9, 10, 83 },
- { 10, 10, 376 }, { 10, 10, 431 }, { 11, 10, 543 }, { 12, 10, 664 },
- { 13, 10, 280 }, { 13, 10, 428 }, { 14, 10, 128 }, { 17, 10, 52 },
- { 17, 10, 81 }, { 4, 0, 492 }, { 5, 0, 451 }, { 7, 0, 835 },
- { 13, 0, 70 }, { 4, 0, 539 }, { 7, 11, 748 }, { 11, 11, 700 },
- { 7, 11, 1517 }, { 11, 11, 597 }, { 14, 11, 76 }, { 14, 11, 335 },
- { 20, 11, 33 }, { 6, 0, 113 }, { 7, 0, 436 }, { 4, 10, 338 },
- { 5, 10, 400 }, { 8, 0, 718 }, { 5, 11, 127 }, { 5, 11, 418 },
- { 6, 0, 1505 }, { 7, 0, 520 }, { 6, 11, 198 }, { 11, 10, 892 },
- { 12, 11, 83 }, { 4, 10, 221 }, { 5, 10, 659 }, { 5, 10, 989 },
- { 7, 10, 697 }, { 7, 10, 1211 }, { 10, 10, 284 }, { 7, 0, 1070 },
- { 5, 11, 276 }, { 6, 11, 55 }, { 7, 11, 1369 }, { 6, 0, 1515 },
- { 6, 11, 1752 }, { 8, 11, 726 }, { 10, 10, 507 }, { 15, 0, 78 },
- { 4, 10, 188 }, { 7, 10, 805 }, { 5, 10, 884 }, { 11, 10, 991 },
- { 5, 11, 764 }, { 6, 10, 1653 }, { 6, 11, 309 }, { 7, 11, 331 },
- { 10, 11, 550 }, { 7, 11, 1861 }, { 4, 11, 348 }, { 7, 11, 986 },
- { 7, 11, 1573 }, { 12, 0, 610 }, { 13, 0, 431 }, { 16, 0, 59 },
- { 9, 11, 799 }, { 12, 10, 166 }, { 6, 0, 1530 }, { 4, 0, 750 },
- { 4, 0, 307 }, { 5, 0, 964 }, { 6, 11, 194 }, { 7, 11, 133 },
- { 10, 11, 493 }, { 10, 11, 570 }, { 11, 11, 664 }, { 5, 11, 24 },
- { 5, 11, 569 }, { 6, 11, 3 }, { 6, 11, 119 }, { 6, 11, 143 },
- { 6, 11, 440 }, { 7, 11, 295 }, { 7, 11, 599 }, { 7, 11, 1686 },
- { 7, 11, 1854 }, { 8, 11, 424 }, { 9, 11, 43 }, { 9, 11, 584 },
- { 9, 11, 760 }, { 10, 11, 148 }, { 10, 11, 328 }, { 11, 11, 159 },
- { 11, 11, 253 }, { 11, 11, 506 }, { 12, 11, 487 }, { 12, 11, 531 },
- { 16, 11, 33 }, { 8, 10, 760 }, { 5, 11, 14 }, { 5, 11, 892 },
- { 6, 11, 283 }, { 7, 11, 234 }, { 8, 11, 537 }, { 7, 11, 1251 },
- { 4, 11, 126 }, { 8, 11, 635 }, { 19, 11, 34 }, { 4, 11, 316 },
- { 7, 11, 1561 }, { 6, 0, 999 }, { 6, 0, 1310 }, { 9, 11, 861 },
- { 4, 11, 64 }, { 5, 11, 352 }, { 5, 11, 720 }, { 6, 11, 368 },
- { 11, 11, 359 }, { 4, 0, 75 }, { 5, 0, 180 }, { 6, 0, 500 },
- { 7, 0, 58 }, { 7, 0, 710 }, { 10, 0, 645 }, { 8, 10, 770 },
- { 5, 0, 649 }, { 6, 0, 276 }, { 7, 0, 282 }, { 7, 0, 879 },
- { 7, 0, 924 }, { 8, 0, 459 }, { 9, 0, 599 }, { 9, 0, 754 },
- { 11, 0, 574 }, { 12, 0, 128 }, { 12, 0, 494 }, { 13, 0, 52 },
- { 13, 0, 301 }, { 15, 0, 30 }, { 15, 0, 132 }, { 4, 0, 200 },
- { 4, 10, 89 }, { 5, 10, 489 }, { 6, 10, 315 }, { 7, 10, 553 },
- { 7, 10, 1745 }, { 10, 10, 243 }, { 7, 11, 1050 }, { 7, 0, 1621 },
- { 6, 10, 1658 }, { 9, 10, 3 }, { 10, 10, 154 }, { 11, 10, 641 },
- { 13, 10, 85 }, { 13, 10, 201 }, { 13, 10, 346 }, { 6, 11, 175 },
- { 9, 11, 289 }, { 5, 11, 432 }, { 5, 11, 913 }, { 6, 0, 225 },
- { 9, 0, 211 }, { 7, 0, 718 }, { 8, 0, 687 }, { 11, 0, 374 },
- { 4, 10, 166 }, { 5, 10, 505 }, { 9, 0, 110 }, { 6, 10, 1670 },
- { 8, 0, 58 }, { 9, 0, 724 }, { 11, 0, 809 }, { 13, 0, 113 },
- { 17, 0, 72 }, { 6, 0, 345 }, { 7, 0, 1247 }, { 16, 11, 82 },
- { 5, 11, 931 }, { 6, 11, 1698 }, { 8, 0, 767 }, { 8, 0, 803 },
- { 9, 0, 301 }, { 9, 0, 903 }, { 11, 0, 203 }, { 6, 0, 1154 },
- { 7, 0, 1949 }, { 8, 0, 674 }, { 6, 0, 259 }, { 7, 0, 1275 },
- { 5, 11, 774 }, { 6, 11, 1637 }, { 6, 11, 1686 }, { 6, 11, 1751 },
- { 6, 0, 1231 }, { 7, 10, 445 }, { 8, 10, 307 }, { 8, 10, 704 },
- { 10, 10, 41 }, { 10, 10, 439 }, { 11, 10, 237 }, { 11, 10, 622 },
- { 12, 10, 201 }, { 8, 0, 254 }, { 6, 11, 260 }, { 7, 11, 1484 },
- { 11, 0, 277 }, { 7, 10, 1977 }, { 4, 10, 189 }, { 5, 10, 713 },
- { 6, 11, 573 }, { 8, 10, 57 }, { 10, 10, 371 }, { 4, 10, 552 },
- { 6, 11, 344 }, { 5, 0, 248 }, { 9, 0, 800 }, { 10, 0, 693 },
- { 11, 0, 482 }, { 11, 0, 734 }, { 11, 0, 789 }, { 6, 11, 240 },
- { 4, 0, 116 }, { 5, 0, 95 }, { 5, 0, 445 }, { 7, 0, 1688 },
- { 8, 0, 29 }, { 9, 0, 272 }, { 11, 0, 509 }, { 11, 0, 915 },
- { 4, 11, 292 }, { 4, 11, 736 }, { 5, 11, 871 }, { 6, 11, 171 },
- { 6, 11, 1689 }, { 7, 11, 1324 }, { 7, 11, 1944 }, { 9, 11, 415 },
- { 9, 11, 580 }, { 14, 11, 230 }, { 18, 11, 68 }, { 7, 0, 490 },
- { 13, 0, 100 }, { 15, 0, 75 }, { 7, 0, 1641 }, { 5, 0, 543 },
- { 7, 11, 209 }, { 8, 11, 661 }, { 10, 11, 42 }, { 11, 11, 58 },
- { 12, 11, 58 }, { 12, 11, 118 }, { 13, 11, 32 }, { 5, 0, 181 },
- { 8, 0, 41 }, { 6, 11, 63 }, { 7, 11, 920 }, { 5, 0, 657 },
- { 5, 11, 793 }, { 10, 0, 709 }, { 7, 0, 25 }, { 8, 0, 202 },
- { 10, 0, 536 }, { 5, 11, 665 }, { 7, 10, 1788 }, { 17, 10, 49 },
- { 9, 0, 423 }, { 12, 0, 89 }, { 5, 11, 67 }, { 6, 11, 62 },
- { 6, 11, 374 }, { 7, 11, 1391 }, { 8, 0, 113 }, { 9, 0, 877 },
- { 10, 0, 554 }, { 11, 0, 83 }, { 12, 0, 136 }, { 19, 0, 109 },
- { 9, 11, 790 }, { 12, 11, 47 }, { 10, 10, 661 }, { 4, 0, 963 },
- { 10, 0, 927 }, { 14, 0, 442 }, { 7, 10, 1945 }, { 5, 0, 976 },
- { 4, 0, 206 }, { 4, 11, 391 }, { 7, 11, 1169 }, { 6, 0, 2002 },
- { 6, 0, 696 }, { 6, 0, 1008 }, { 6, 0, 1170 }, { 4, 11, 271 },
- { 7, 0, 13 }, { 8, 0, 226 }, { 10, 0, 537 }, { 11, 0, 570 },
- { 11, 0, 605 }, { 11, 0, 799 }, { 11, 0, 804 }, { 12, 0, 85 },
- { 12, 0, 516 }, { 12, 0, 623 }, { 13, 0, 112 }, { 13, 0, 361 },
- { 14, 0, 77 }, { 14, 0, 78 }, { 17, 0, 28 }, { 19, 0, 110 },
- { 12, 11, 314 }, { 4, 0, 769 }, { 6, 0, 1544 }, { 4, 0, 551 },
- { 9, 0, 678 }, { 5, 10, 84 }, { 6, 10, 163 }, { 9, 0, 57 },
- { 9, 0, 459 }, { 10, 0, 425 }, { 11, 0, 119 }, { 12, 0, 184 },
- { 12, 0, 371 }, { 13, 0, 358 }, { 17, 0, 51 }, { 5, 0, 188 },
- { 5, 0, 814 }, { 8, 0, 10 }, { 9, 0, 421 }, { 9, 0, 729 },
- { 10, 0, 609 }, { 11, 0, 689 }, { 4, 11, 253 }, { 5, 10, 410 },
- { 5, 11, 544 }, { 7, 11, 300 }, { 9, 11, 340 }, { 6, 0, 624 },
- { 10, 11, 321 }, { 7, 0, 1941 }, { 18, 0, 130 }, { 5, 10, 322 },
- { 8, 10, 186 }, { 9, 10, 262 }, { 10, 10, 187 }, { 14, 10, 208 },
- { 5, 11, 53 }, { 5, 11, 541 }, { 6, 11, 94 }, { 6, 11, 499 },
- { 7, 11, 230 }, { 11, 11, 321 }, { 5, 10, 227 }, { 4, 0, 378 },
- { 4, 11, 920 }, { 5, 11, 25 }, { 5, 11, 790 }, { 6, 11, 457 },
- { 7, 11, 853 }, { 9, 0, 269 }, { 4, 0, 528 }, { 6, 0, 1146 },
- { 7, 10, 1395 }, { 8, 10, 486 }, { 9, 10, 236 }, { 9, 10, 878 },
- { 10, 10, 218 }, { 11, 10, 95 }, { 19, 10, 17 }, { 19, 10, 31 },
- { 7, 10, 2043 }, { 8, 10, 672 }, { 13, 10, 448 }, { 6, 0, 1105 },
- { 6, 0, 1616 }, { 6, 11, 1765 }, { 12, 11, 163 }, { 5, 10, 412 },
- { 5, 11, 822 }, { 4, 11, 634 }, { 6, 0, 656 }, { 6, 11, 1730 },
- { 6, 0, 1940 }, { 5, 0, 104 }, { 6, 0, 173 }, { 7, 0, 1631 },
- { 8, 10, 562 }, { 6, 11, 36 }, { 7, 11, 658 }, { 8, 11, 454 },
- { 19, 11, 86 }, { 5, 0, 457 }, { 6, 10, 1771 }, { 7, 0, 810 },
- { 8, 0, 138 }, { 8, 0, 342 }, { 9, 0, 84 }, { 10, 0, 193 },
- { 11, 0, 883 }, { 12, 0, 359 }, { 9, 0, 620 }, { 7, 10, 1190 },
- { 9, 10, 132 }, { 7, 11, 975 }, { 9, 11, 789 }, { 6, 0, 95 },
- { 6, 0, 1934 }, { 8, 0, 967 }, { 13, 11, 335 }, { 6, 0, 406 },
- { 10, 0, 409 }, { 10, 0, 447 }, { 11, 0, 44 }, { 12, 0, 100 },
- { 4, 10, 317 }, { 7, 10, 1279 }, { 4, 0, 477 }, { 6, 0, 1268 },
- { 6, 0, 1941 }, { 8, 0, 944 }, { 5, 10, 63 }, { 5, 10, 509 },
- { 4, 0, 629 }, { 4, 11, 104 }, { 4, 0, 246 }, { 5, 0, 375 },
- { 6, 0, 1636 }, { 4, 10, 288 }, { 7, 11, 1614 }, { 9, 0, 49 },
- { 10, 0, 774 }, { 8, 10, 89 }, { 8, 10, 620 }, { 11, 10, 628 },
- { 12, 10, 322 }, { 15, 10, 124 }, { 4, 0, 282 }, { 7, 0, 1034 },
- { 11, 0, 398 }, { 11, 0, 634 }, { 12, 0, 1 }, { 12, 0, 79 },
- { 12, 0, 544 }, { 14, 0, 237 }, { 17, 0, 10 }, { 18, 0, 20 },
- { 4, 0, 824 }, { 7, 11, 45 }, { 9, 11, 542 }, { 9, 11, 566 },
- { 10, 11, 728 }, { 5, 0, 118 }, { 5, 0, 499 }, { 6, 0, 476 },
- { 6, 0, 665 }, { 6, 0, 1176 }, { 6, 0, 1196 }, { 7, 0, 600 },
- { 7, 0, 888 }, { 7, 0, 1096 }, { 7, 0, 296 }, { 7, 0, 596 },
- { 8, 0, 560 }, { 8, 0, 586 }, { 9, 0, 612 }, { 11, 0, 304 },
- { 12, 0, 46 }, { 13, 0, 89 }, { 14, 0, 112 }, { 17, 0, 122 },
- { 5, 0, 894 }, { 6, 0, 1772 }, { 9, 0, 1009 }, { 10, 10, 120 },
- { 5, 11, 533 }, { 7, 11, 755 }, { 10, 11, 780 }, { 23, 10, 1 },
- { 6, 0, 1474 }, { 7, 11, 87 }, { 14, 11, 288 }, { 11, 0, 366 },
- { 9, 10, 461 }, { 7, 11, 988 }, { 7, 11, 1939 }, { 9, 11, 64 },
- { 9, 11, 502 }, { 12, 11, 7 }, { 12, 11, 34 }, { 13, 11, 12 },
- { 13, 11, 234 }, { 19, 11, 77 }, { 7, 0, 1599 }, { 7, 0, 1723 },
- { 8, 0, 79 }, { 8, 0, 106 }, { 8, 0, 190 }, { 8, 0, 302 },
- { 8, 0, 383 }, { 8, 0, 713 }, { 9, 0, 119 }, { 9, 0, 233 },
- { 9, 0, 419 }, { 9, 0, 471 }, { 10, 0, 181 }, { 10, 0, 406 },
- { 11, 0, 57 }, { 11, 0, 85 }, { 11, 0, 120 }, { 11, 0, 177 },
- { 11, 0, 296 }, { 11, 0, 382 }, { 11, 0, 454 }, { 11, 0, 758 },
- { 11, 0, 999 }, { 12, 0, 27 }, { 12, 0, 98 }, { 12, 0, 131 },
- { 12, 0, 245 }, { 12, 0, 312 }, { 12, 0, 446 }, { 12, 0, 454 },
- { 13, 0, 25 }, { 13, 0, 98 }, { 13, 0, 426 }, { 13, 0, 508 },
- { 14, 0, 70 }, { 14, 0, 163 }, { 14, 0, 272 }, { 14, 0, 277 },
- { 14, 0, 370 }, { 15, 0, 95 }, { 15, 0, 138 }, { 15, 0, 167 },
- { 17, 0, 38 }, { 20, 0, 96 }, { 7, 10, 1346 }, { 10, 0, 200 },
- { 19, 0, 2 }, { 23, 0, 22 }, { 7, 11, 141 }, { 6, 10, 85 },
- { 6, 0, 1759 }, { 10, 0, 372 }, { 17, 0, 16 }, { 8, 0, 943 },
- { 4, 11, 619 }, { 11, 11, 88 }, { 5, 11, 246 }, { 8, 11, 189 },
- { 9, 11, 355 }, { 9, 11, 512 }, { 10, 11, 124 }, { 10, 11, 453 },
- { 11, 11, 143 }, { 11, 11, 416 }, { 11, 11, 859 }, { 13, 11, 341 },
- { 5, 0, 258 }, { 6, 0, 719 }, { 6, 0, 1798 }, { 6, 0, 1839 },
- { 8, 0, 900 }, { 10, 0, 874 }, { 10, 0, 886 }, { 12, 0, 698 },
- { 12, 0, 732 }, { 12, 0, 770 }, { 16, 0, 106 }, { 18, 0, 163 },
- { 18, 0, 170 }, { 18, 0, 171 }, { 24, 0, 20 }, { 9, 0, 707 },
- { 11, 0, 326 }, { 11, 0, 339 }, { 12, 0, 423 }, { 12, 0, 502 },
- { 20, 0, 62 }, { 9, 11, 707 }, { 11, 11, 326 }, { 11, 11, 339 },
- { 12, 11, 423 }, { 12, 11, 502 }, { 20, 11, 62 }, { 5, 0, 30 },
- { 7, 0, 495 }, { 8, 0, 134 }, { 9, 0, 788 }, { 12, 0, 438 },
- { 5, 11, 678 }, { 5, 10, 279 }, { 6, 10, 235 }, { 7, 10, 468 },
- { 8, 10, 446 }, { 9, 10, 637 }, { 10, 10, 717 }, { 11, 10, 738 },
- { 12, 10, 514 }, { 5, 11, 35 }, { 6, 11, 287 }, { 7, 11, 862 },
- { 7, 11, 1886 }, { 10, 11, 179 }, { 7, 0, 1948 }, { 7, 0, 2004 },
- { 4, 11, 517 }, { 5, 10, 17 }, { 6, 10, 371 }, { 9, 10, 528 },
- { 4, 0, 115 }, { 5, 0, 669 }, { 6, 0, 407 }, { 8, 0, 311 },
- { 11, 0, 10 }, { 13, 0, 5 }, { 9, 0, 381 }, { 5, 0, 50 },
- { 6, 0, 439 }, { 7, 0, 780 }, { 7, 0, 1040 }, { 8, 11, 667 },
- { 11, 11, 403 }, { 18, 11, 83 }, { 5, 0, 1 }, { 6, 0, 81 },
- { 10, 0, 520 }, { 6, 0, 738 }, { 5, 0, 482 }, { 8, 0, 98 },
- { 9, 0, 172 }, { 10, 0, 360 }, { 10, 0, 700 }, { 10, 0, 822 },
- { 11, 0, 302 }, { 11, 0, 778 }, { 12, 0, 50 }, { 12, 0, 127 },
- { 12, 0, 396 }, { 13, 0, 62 }, { 13, 0, 328 }, { 14, 0, 122 },
- { 19, 0, 72 }, { 9, 11, 157 }, { 10, 11, 131 }, { 12, 11, 72 },
- { 7, 11, 714 }, { 7, 11, 539 }, { 5, 0, 2 }, { 6, 0, 512 },
- { 7, 0, 797 }, { 7, 0, 1494 }, { 8, 0, 253 }, { 8, 0, 589 },
- { 9, 0, 77 }, { 10, 0, 1 }, { 10, 0, 129 }, { 10, 0, 225 },
- { 11, 0, 118 }, { 11, 0, 226 }, { 11, 0, 251 }, { 11, 0, 430 },
- { 11, 0, 701 }, { 11, 0, 974 }, { 11, 0, 982 }, { 12, 0, 64 },
- { 12, 0, 260 }, { 12, 0, 488 }, { 12, 0, 690 }, { 5, 11, 394 },
- { 7, 11, 367 }, { 7, 11, 487 }, { 7, 11, 857 }, { 7, 11, 1713 },
- { 8, 11, 246 }, { 9, 11, 537 }, { 10, 11, 165 }, { 12, 11, 219 },
- { 12, 11, 561 }, { 8, 0, 557 }, { 5, 10, 779 }, { 5, 10, 807 },
- { 6, 10, 1655 }, { 6, 10, 1676 }, { 4, 10, 196 }, { 5, 10, 558 },
- { 5, 10, 949 }, { 11, 11, 827 }, { 12, 11, 56 }, { 14, 11, 34 },
- { 15, 11, 148 }, { 9, 0, 347 }, { 5, 0, 572 }, { 6, 0, 832 },
- { 4, 0, 12 }, { 7, 0, 504 }, { 7, 0, 522 }, { 7, 0, 809 },
- { 8, 0, 797 }, { 13, 0, 88 }, { 4, 10, 752 }, { 5, 11, 449 },
- { 7, 11, 86 }, { 8, 11, 103 }, { 17, 11, 69 }, { 7, 11, 2028 },
- { 10, 11, 641 }, { 5, 0, 528 }, { 6, 11, 1 }, { 14, 11, 2 },
- { 6, 0, 861 }, { 10, 0, 294 }, { 4, 10, 227 }, { 5, 10, 159 },
- { 5, 10, 409 }, { 7, 10, 80 }, { 10, 10, 479 }, { 12, 10, 418 },
- { 14, 10, 50 }, { 14, 10, 249 }, { 14, 10, 295 }, { 7, 10, 1470 },
- { 8, 10, 66 }, { 8, 10, 137 }, { 8, 10, 761 }, { 9, 10, 638 },
- { 11, 10, 80 }, { 11, 10, 212 }, { 11, 10, 368 }, { 11, 10, 418 },
- { 12, 10, 8 }, { 13, 10, 15 }, { 16, 10, 61 }, { 17, 10, 59 },
- { 19, 10, 28 }, { 20, 10, 84 }, { 20, 0, 109 }, { 7, 11, 1148 },
- { 6, 11, 277 }, { 7, 11, 1274 }, { 7, 11, 1386 }, { 7, 11, 1392 },
- { 12, 11, 129 }, { 18, 11, 87 }, { 6, 11, 187 }, { 7, 11, 39 },
- { 7, 11, 1203 }, { 8, 11, 380 }, { 8, 11, 542 }, { 14, 11, 117 },
- { 21, 11, 28 }, { 6, 0, 1187 }, { 5, 0, 266 }, { 9, 0, 290 },
- { 9, 0, 364 }, { 10, 0, 293 }, { 11, 0, 606 }, { 14, 0, 45 },
- { 6, 11, 297 }, { 7, 11, 793 }, { 11, 11, 938 }, { 4, 0, 50 },
- { 6, 0, 594 }, { 9, 0, 121 }, { 10, 0, 49 }, { 10, 0, 412 },
- { 11, 0, 834 }, { 8, 0, 748 }, { 7, 11, 464 }, { 8, 11, 438 },
- { 11, 11, 105 }, { 11, 11, 363 }, { 12, 11, 231 }, { 14, 11, 386 },
- { 15, 11, 102 }, { 20, 11, 75 }, { 4, 0, 466 }, { 13, 0, 399 },
- { 14, 0, 337 }, { 6, 10, 38 }, { 7, 10, 1220 }, { 8, 10, 185 },
- { 8, 10, 256 }, { 9, 10, 22 }, { 9, 10, 331 }, { 10, 10, 738 },
- { 11, 10, 205 }, { 11, 10, 540 }, { 11, 10, 746 }, { 13, 10, 465 },
- { 14, 10, 194 }, { 9, 0, 378 }, { 13, 0, 162 }, { 9, 0, 519 },
- { 4, 10, 159 }, { 6, 10, 115 }, { 7, 10, 252 }, { 7, 10, 257 },
- { 7, 10, 1928 }, { 8, 10, 69 }, { 9, 10, 384 }, { 10, 10, 91 },
- { 10, 10, 615 }, { 12, 10, 375 }, { 14, 10, 235 }, { 18, 10, 117 },
- { 19, 10, 123 }, { 5, 11, 604 }, { 5, 10, 911 }, { 8, 10, 278 },
- { 4, 0, 667 }, { 8, 0, 351 }, { 9, 0, 322 }, { 4, 10, 151 },
- { 7, 10, 1567 }, { 6, 0, 902 }, { 5, 10, 990 }, { 12, 0, 180 },
- { 5, 10, 194 }, { 7, 10, 1662 }, { 9, 10, 90 }, { 4, 0, 869 },
- { 6, 0, 1996 }, { 6, 0, 813 }, { 5, 10, 425 }, { 9, 11, 761 },
- { 4, 0, 260 }, { 5, 10, 971 }, { 5, 11, 20 }, { 6, 11, 298 },
- { 7, 11, 659 }, { 7, 11, 1366 }, { 9, 11, 219 }, { 4, 0, 39 },
- { 5, 0, 36 }, { 7, 0, 1843 }, { 8, 0, 407 }, { 11, 0, 144 },
- { 12, 0, 523 }, { 4, 0, 510 }, { 10, 0, 587 }, { 11, 10, 752 },
- { 7, 0, 29 }, { 7, 0, 66 }, { 7, 0, 1980 }, { 10, 0, 487 },
- { 10, 0, 809 }, { 13, 0, 260 }, { 14, 0, 82 }, { 18, 0, 63 },
- { 9, 10, 662 }, { 5, 10, 72 }, { 6, 10, 264 }, { 7, 10, 21 },
- { 7, 10, 46 }, { 7, 10, 2013 }, { 8, 10, 215 }, { 8, 10, 513 },
- { 10, 10, 266 }, { 11, 10, 22 }, { 6, 0, 570 }, { 6, 0, 565 },
- { 7, 0, 1667 }, { 4, 11, 439 }, { 10, 10, 95 }, { 11, 10, 603 },
- { 12, 11, 242 }, { 13, 10, 443 }, { 14, 10, 160 }, { 15, 10, 4 },
- { 6, 0, 1464 }, { 6, 10, 431 }, { 9, 0, 372 }, { 15, 0, 2 },
- { 19, 0, 10 }, { 19, 0, 18 }, { 5, 10, 874 }, { 6, 10, 1677 },
- { 15, 10, 0 }, { 4, 0, 787 }, { 6, 0, 380 }, { 12, 0, 399 },
- { 21, 0, 19 }, { 7, 10, 939 }, { 7, 10, 1172 }, { 7, 10, 1671 },
- { 9, 10, 540 }, { 10, 10, 696 }, { 11, 10, 265 }, { 11, 10, 732 },
- { 11, 10, 928 }, { 11, 10, 937 }, { 13, 10, 438 }, { 9, 0, 200 },
- { 4, 11, 233 }, { 4, 0, 516 }, { 6, 11, 577 }, { 4, 0, 844 },
- { 11, 0, 887 }, { 14, 0, 365 }, { 14, 0, 375 }, { 4, 11, 482 },
- { 8, 0, 821 }, { 12, 0, 44 }, { 7, 0, 1655 }, { 8, 0, 305 },
- { 5, 10, 682 }, { 7, 10, 1887 }, { 7, 11, 346 }, { 4, 10, 696 },
- { 4, 0, 10 }, { 7, 0, 917 }, { 11, 0, 786 }, { 5, 11, 795 },
- { 6, 11, 1741 }, { 8, 11, 417 }, { 9, 11, 782 }, { 4, 0, 1016 },
- { 6, 0, 2031 }, { 5, 0, 684 }, { 4, 10, 726 }, { 5, 10, 630 },
- { 6, 0, 1021 }, { 6, 0, 1480 }, { 8, 10, 802 }, { 8, 10, 838 },
- { 6, 0, 27 }, { 6, 0, 395 }, { 7, 11, 622 }, { 7, 11, 625 },
- { 7, 11, 1750 }, { 4, 11, 203 }, { 7, 11, 1936 }, { 6, 10, 118 },
- { 7, 10, 215 }, { 7, 10, 1521 }, { 12, 10, 11 }, { 4, 0, 813 },
- { 8, 0, 511 }, { 7, 10, 615 }, { 10, 10, 251 }, { 7, 10, 1044 },
- { 17, 0, 56 }, { 5, 10, 225 }, { 6, 0, 342 }, { 6, 0, 496 },
- { 8, 0, 275 }, { 9, 0, 206 }, { 4, 0, 909 }, { 5, 0, 940 },
- { 4, 0, 891 }, { 7, 11, 311 }, { 9, 11, 308 }, { 12, 11, 255 },
- { 4, 10, 370 }, { 5, 10, 756 }, { 7, 10, 1326 }, { 4, 0, 687 },
- { 6, 0, 1596 }, { 6, 0, 1342 }, { 6, 10, 1662 }, { 7, 10, 48 },
- { 8, 10, 771 }, { 10, 10, 116 }, { 13, 10, 104 }, { 14, 10, 105 },
- { 14, 10, 184 }, { 15, 10, 168 }, { 19, 10, 92 }, { 20, 10, 68 },
- { 10, 10, 209 }, { 4, 11, 400 }, { 5, 11, 267 }, { 7, 11, 232 },
- { 23, 11, 12 }, { 6, 0, 41 }, { 13, 0, 160 }, { 13, 11, 314 },
- { 6, 0, 1718 }, { 8, 0, 778 }, { 14, 11, 261 }, { 6, 0, 1610 },
- { 5, 0, 115 }, { 4, 0, 294 }, { 14, 0, 314 }, { 4, 10, 120 },
- { 4, 0, 983 }, { 5, 0, 193 }, { 12, 0, 178 }, { 10, 10, 429 },
- { 5, 10, 820 }, { 7, 10, 931 }, { 6, 0, 994 }, { 6, 0, 1051 },
- { 6, 0, 1439 }, { 7, 0, 174 }, { 5, 11, 732 }, { 4, 11, 100 },
- { 7, 11, 679 }, { 8, 11, 313 }, { 10, 10, 199 }, { 6, 10, 151 },
- { 6, 10, 1675 }, { 7, 10, 383 }, { 23, 10, 10 }, { 6, 0, 1796 },
- { 8, 0, 848 }, { 8, 0, 867 }, { 8, 0, 907 }, { 10, 0, 855 },
- { 12, 0, 703 }, { 12, 0, 221 }, { 4, 0, 122 }, { 5, 0, 796 },
- { 5, 0, 952 }, { 6, 0, 1660 }, { 6, 0, 1671 }, { 8, 0, 567 },
- { 9, 0, 687 }, { 9, 0, 742 }, { 10, 0, 686 }, { 11, 0, 682 },
- { 11, 0, 909 }, { 12, 0, 281 }, { 5, 11, 362 }, { 5, 11, 443 },
- { 6, 11, 318 }, { 7, 11, 1019 }, { 11, 11, 623 }, { 5, 11, 463 },
- { 8, 11, 296 }, { 11, 0, 583 }, { 13, 0, 262 }, { 6, 10, 1624 },
- { 12, 10, 422 }, { 14, 10, 360 }, { 5, 0, 179 }, { 7, 0, 1095 },
- { 7, 0, 1213 }, { 4, 10, 43 }, { 4, 11, 454 }, { 5, 10, 344 },
- { 5, 10, 357 }, { 4, 0, 66 }, { 7, 0, 722 }, { 7, 0, 904 },
- { 6, 0, 773 }, { 7, 0, 352 }, { 5, 10, 888 }, { 5, 11, 48 },
- { 5, 11, 404 }, { 6, 11, 557 }, { 7, 11, 458 }, { 8, 11, 597 },
- { 10, 11, 455 }, { 10, 11, 606 }, { 11, 11, 49 }, { 11, 11, 548 },
- { 12, 11, 476 }, { 13, 11, 18 }, { 13, 11, 450 }, { 6, 11, 418 },
- { 4, 10, 711 }, { 5, 11, 442 }, { 7, 11, 1984 }, { 13, 0, 35 },
- { 9, 0, 152 }, { 6, 0, 1197 }, { 7, 11, 1093 }, { 9, 11, 203 },
- { 9, 10, 440 }, { 10, 0, 592 }, { 10, 0, 753 }, { 12, 0, 317 },
- { 12, 0, 355 }, { 12, 0, 465 }, { 12, 0, 469 }, { 12, 0, 560 },
- { 12, 0, 578 }, { 13, 0, 243 }, { 5, 0, 564 }, { 6, 0, 797 },
- { 5, 10, 958 }, { 5, 10, 987 }, { 5, 11, 55 }, { 7, 11, 376 },
- { 12, 11, 161 }, { 5, 11, 450 }, { 6, 0, 556 }, { 6, 0, 819 },
- { 11, 10, 276 }, { 14, 10, 293 }, { 7, 0, 544 }, { 10, 0, 61 },
- { 8, 0, 719 }, { 4, 10, 65 }, { 5, 10, 479 }, { 5, 10, 1004 },
- { 7, 10, 1913 }, { 8, 10, 317 }, { 9, 10, 302 }, { 10, 10, 612 },
- { 13, 10, 22 }, { 4, 0, 5 }, { 5, 0, 498 }, { 8, 0, 637 },
- { 9, 0, 521 }, { 4, 11, 213 }, { 4, 10, 261 }, { 7, 11, 223 },
- { 7, 10, 510 }, { 8, 11, 80 }, { 5, 0, 927 }, { 7, 0, 101 },
- { 4, 10, 291 }, { 7, 11, 381 }, { 7, 11, 806 }, { 7, 11, 820 },
- { 8, 11, 354 }, { 8, 11, 437 }, { 8, 11, 787 }, { 9, 10, 515 },
- { 9, 11, 657 }, { 10, 11, 58 }, { 10, 11, 339 }, { 10, 11, 749 },
- { 11, 11, 914 }, { 12, 10, 152 }, { 12, 11, 162 }, { 12, 10, 443 },
- { 13, 11, 75 }, { 13, 10, 392 }, { 14, 11, 106 }, { 14, 11, 198 },
- { 14, 11, 320 }, { 14, 10, 357 }, { 14, 11, 413 }, { 18, 11, 43 },
- { 6, 0, 1153 }, { 7, 0, 1441 }, { 8, 11, 747 }, { 4, 0, 893 },
- { 5, 0, 780 }, { 5, 0, 893 }, { 10, 11, 654 }, { 5, 11, 692 },
- { 5, 0, 238 }, { 6, 11, 191 }, { 4, 10, 130 }, { 7, 10, 843 },
- { 6, 0, 1296 }, { 5, 10, 42 }, { 5, 10, 879 }, { 7, 10, 245 },
- { 7, 10, 324 }, { 7, 10, 1532 }, { 11, 10, 463 }, { 11, 10, 472 },
- { 13, 10, 363 }, { 16, 10, 52 }, { 6, 0, 1729 }, { 6, 0, 1999 },
- { 8, 0, 969 }, { 4, 10, 134 }, { 5, 10, 372 }, { 4, 0, 60 },
- { 7, 0, 941 }, { 7, 0, 1800 }, { 8, 0, 314 }, { 9, 0, 700 },
- { 11, 0, 487 }, { 6, 0, 1144 }, { 6, 11, 162 }, { 7, 11, 1960 },
- { 8, 11, 831 }, { 4, 11, 706 }, { 7, 0, 1147 }, { 10, 11, 426 },
- { 10, 11, 89 }, { 7, 0, 1853 }, { 10, 0, 437 }, { 8, 0, 419 },
- { 7, 10, 1634 }, { 5, 0, 828 }, { 5, 0, 806 }, { 7, 0, 176 },
- { 7, 0, 178 }, { 7, 0, 1240 }, { 7, 0, 1976 }, { 4, 10, 644 },
- { 7, 11, 1877 }, { 5, 11, 420 }, { 7, 11, 1449 }, { 4, 0, 51 },
- { 5, 0, 39 }, { 6, 0, 4 }, { 7, 0, 591 }, { 7, 0, 849 },
- { 7, 0, 951 }, { 7, 0, 1613 }, { 7, 0, 1760 }, { 7, 0, 1988 },
- { 9, 0, 434 }, { 10, 0, 754 }, { 11, 0, 25 }, { 11, 0, 37 },
- { 10, 11, 57 }, { 10, 11, 277 }, { 7, 10, 540 }, { 4, 11, 204 },
- { 7, 0, 159 }, { 11, 11, 231 }, { 5, 0, 902 }, { 7, 0, 928 },
- { 7, 11, 366 }, { 9, 11, 287 }, { 12, 11, 199 }, { 12, 11, 556 },
- { 12, 11, 577 }, { 6, 10, 623 }, { 8, 10, 789 }, { 4, 10, 908 },
- { 5, 10, 359 }, { 5, 10, 508 }, { 6, 10, 1723 }, { 7, 10, 343 },
- { 7, 10, 1996 }, { 7, 10, 2026 }, { 6, 0, 270 }, { 4, 10, 341 },
- { 7, 10, 480 }, { 5, 11, 356 }, { 7, 11, 224 }, { 11, 11, 588 },
- { 11, 11, 864 }, { 11, 11, 968 }, { 15, 11, 160 }, { 4, 0, 556 },
- { 9, 0, 801 }, { 4, 0, 416 }, { 14, 0, 372 }, { 5, 0, 152 },
- { 5, 0, 197 }, { 7, 0, 340 }, { 7, 0, 867 }, { 10, 0, 548 },
- { 10, 0, 581 }, { 11, 0, 6 }, { 12, 0, 3 }, { 12, 0, 19 },
- { 14, 0, 110 }, { 14, 0, 289 }, { 11, 0, 369 }, { 7, 11, 630 },
- { 9, 11, 567 }, { 11, 11, 150 }, { 11, 11, 444 }, { 13, 11, 119 },
- { 6, 11, 539 }, { 7, 10, 1995 }, { 8, 10, 299 }, { 11, 10, 890 },
- { 12, 10, 674 }, { 7, 0, 34 }, { 7, 0, 190 }, { 8, 0, 28 },
- { 8, 0, 141 }, { 8, 0, 444 }, { 8, 0, 811 }, { 9, 0, 468 },
- { 11, 0, 334 }, { 12, 0, 24 }, { 12, 0, 386 }, { 12, 0, 576 },
- { 5, 0, 757 }, { 7, 0, 1553 }, { 8, 0, 898 }, { 5, 0, 721 },
- { 8, 0, 1012 }, { 4, 0, 789 }, { 5, 0, 647 }, { 7, 0, 1102 },
- { 4, 0, 898 }, { 10, 0, 183 }, { 4, 10, 238 }, { 5, 10, 503 },
- { 6, 10, 179 }, { 7, 10, 2003 }, { 8, 10, 381 }, { 8, 10, 473 },
- { 9, 10, 149 }, { 10, 10, 788 }, { 15, 10, 45 }, { 15, 10, 86 },
- { 20, 10, 110 }, { 22, 10, 57 }, { 9, 0, 136 }, { 19, 0, 107 },
- { 4, 10, 121 }, { 5, 10, 156 }, { 5, 10, 349 }, { 10, 10, 605 },
- { 14, 10, 342 }, { 4, 11, 235 }, { 7, 11, 255 }, { 4, 11, 194 },
- { 5, 11, 584 }, { 6, 11, 384 }, { 7, 11, 583 }, { 10, 11, 761 },
- { 11, 11, 760 }, { 11, 11, 851 }, { 6, 10, 80 }, { 6, 10, 1694 },
- { 7, 10, 173 }, { 7, 10, 1974 }, { 9, 10, 547 }, { 10, 10, 730 },
- { 14, 10, 18 }, { 22, 10, 39 }, { 4, 10, 923 }, { 6, 10, 1711 },
- { 5, 0, 277 }, { 13, 0, 247 }, { 4, 0, 435 }, { 5, 11, 562 },
- { 6, 0, 1311 }, { 5, 11, 191 }, { 9, 11, 271 }, { 4, 10, 595 },
- { 7, 11, 1537 }, { 14, 11, 96 }, { 15, 11, 73 }, { 5, 0, 437 },
- { 7, 0, 502 }, { 7, 0, 519 }, { 7, 0, 1122 }, { 7, 0, 1751 },
- { 14, 0, 211 }, { 6, 10, 459 }, { 7, 10, 1753 }, { 7, 10, 1805 },
- { 8, 10, 658 }, { 9, 10, 1 }, { 11, 10, 959 }, { 13, 10, 446 },
- { 6, 0, 814 }, { 4, 11, 470 }, { 5, 11, 473 }, { 6, 11, 153 },
- { 7, 11, 1503 }, { 7, 11, 1923 }, { 10, 11, 701 }, { 11, 11, 132 },
- { 11, 11, 168 }, { 11, 11, 227 }, { 11, 11, 320 }, { 11, 11, 436 },
- { 11, 11, 525 }, { 11, 11, 855 }, { 12, 11, 41 }, { 12, 11, 286 },
- { 13, 11, 103 }, { 13, 11, 284 }, { 14, 11, 255 }, { 14, 11, 262 },
- { 15, 11, 117 }, { 15, 11, 127 }, { 5, 0, 265 }, { 6, 0, 212 },
- { 7, 0, 28 }, { 10, 0, 750 }, { 5, 11, 327 }, { 6, 11, 552 },
- { 7, 11, 1754 }, { 9, 11, 604 }, { 6, 0, 2012 }, { 4, 0, 702 },
- { 5, 11, 80 }, { 6, 11, 405 }, { 7, 11, 403 }, { 7, 11, 1502 },
- { 7, 11, 1626 }, { 8, 11, 456 }, { 9, 11, 487 }, { 9, 11, 853 },
- { 9, 11, 889 }, { 10, 11, 309 }, { 11, 11, 721 }, { 11, 11, 994 },
- { 12, 11, 430 }, { 13, 11, 165 }, { 5, 0, 808 }, { 7, 0, 2045 },
- { 5, 0, 166 }, { 8, 0, 739 }, { 12, 0, 511 }, { 6, 10, 490 },
- { 4, 11, 453 }, { 5, 11, 887 }, { 6, 11, 535 }, { 8, 11, 6 },
- { 8, 11, 543 }, { 4, 0, 119 }, { 5, 0, 170 }, { 5, 0, 447 },
- { 7, 0, 1708 }, { 7, 0, 1889 }, { 9, 0, 357 }, { 9, 0, 719 },
- { 12, 0, 486 }, { 12, 0, 596 }, { 9, 0, 500 }, { 7, 10, 250 },
- { 8, 10, 507 }, { 4, 10, 158 }, { 6, 0, 809 }, { 6, 0, 1500 },
- { 9, 0, 327 }, { 11, 0, 350 }, { 11, 0, 831 }, { 13, 0, 352 },
- { 4, 10, 140 }, { 7, 10, 362 }, { 8, 10, 209 }, { 9, 10, 10 },
- { 9, 10, 503 }, { 9, 10, 614 }, { 10, 10, 689 }, { 11, 10, 327 },
- { 11, 10, 725 }, { 12, 10, 252 }, { 12, 10, 583 }, { 13, 10, 192 },
- { 14, 10, 269 }, { 14, 10, 356 }, { 20, 10, 50 }, { 7, 11, 741 },
- { 4, 0, 450 }, { 7, 0, 1158 }, { 19, 10, 1 }, { 19, 10, 26 },
- { 22, 10, 9 }, { 6, 0, 597 }, { 7, 0, 1318 }, { 6, 0, 1602 },
- { 6, 10, 228 }, { 7, 10, 1341 }, { 9, 10, 408 }, { 10, 10, 343 },
- { 7, 0, 1375 }, { 7, 0, 1466 }, { 10, 0, 331 }, { 4, 0, 754 },
- { 4, 10, 557 }, { 5, 11, 101 }, { 6, 11, 88 }, { 6, 11, 543 },
- { 7, 11, 1677 }, { 9, 11, 100 }, { 10, 11, 677 }, { 14, 11, 169 },
- { 14, 11, 302 }, { 14, 11, 313 }, { 15, 11, 48 }, { 15, 11, 84 },
- { 6, 0, 1368 }, { 4, 11, 310 }, { 9, 11, 795 }, { 10, 11, 733 },
- { 11, 11, 451 }, { 12, 11, 249 }, { 14, 11, 115 }, { 14, 11, 286 },
- { 15, 11, 100 }, { 4, 10, 548 }, { 10, 0, 557 }, { 7, 10, 197 },
- { 8, 10, 142 }, { 8, 10, 325 }, { 9, 10, 150 }, { 9, 10, 596 },
- { 10, 10, 353 }, { 11, 10, 74 }, { 11, 10, 315 }, { 12, 10, 662 },
- { 12, 10, 681 }, { 14, 10, 423 }, { 15, 10, 141 }, { 5, 11, 587 },
- { 5, 0, 850 }, { 8, 0, 799 }, { 10, 0, 908 }, { 12, 0, 701 },
- { 12, 0, 757 }, { 14, 0, 466 }, { 4, 0, 62 }, { 5, 0, 275 },
- { 18, 0, 19 }, { 6, 10, 399 }, { 6, 10, 579 }, { 7, 10, 692 },
- { 7, 10, 846 }, { 7, 10, 1015 }, { 7, 10, 1799 }, { 8, 10, 403 },
- { 9, 10, 394 }, { 10, 10, 133 }, { 12, 10, 4 }, { 12, 10, 297 },
- { 12, 10, 452 }, { 16, 10, 81 }, { 18, 10, 25 }, { 21, 10, 14 },
- { 22, 10, 12 }, { 23, 10, 18 }, { 12, 0, 459 }, { 7, 10, 1546 },
- { 11, 10, 299 }, { 14, 10, 407 }, { 4, 10, 177 }, { 4, 11, 498 },
- { 7, 11, 217 }, { 8, 11, 140 }, { 10, 11, 610 }, { 5, 10, 411 },
- { 7, 10, 653 }, { 6, 0, 1802 }, { 7, 10, 439 }, { 10, 10, 727 },
- { 11, 10, 260 }, { 11, 10, 684 }, { 5, 11, 905 }, { 11, 11, 580 },
- { 14, 11, 201 }, { 6, 0, 1397 }, { 5, 10, 208 }, { 7, 10, 753 },
- { 7, 10, 1528 }, { 7, 0, 238 }, { 7, 0, 2033 }, { 8, 0, 120 },
- { 8, 0, 188 }, { 8, 0, 659 }, { 9, 0, 598 }, { 10, 0, 466 },
- { 12, 0, 342 }, { 12, 0, 588 }, { 13, 0, 503 }, { 14, 0, 246 },
- { 15, 0, 92 }, { 7, 11, 1041 }, { 4, 11, 456 }, { 7, 11, 105 },
- { 7, 11, 358 }, { 7, 11, 1637 }, { 8, 11, 643 }, { 11, 11, 483 },
- { 6, 0, 1318 }, { 6, 0, 1324 }, { 4, 0, 201 }, { 7, 0, 1744 },
- { 8, 0, 602 }, { 11, 0, 247 }, { 11, 0, 826 }, { 17, 0, 65 },
- { 5, 10, 242 }, { 8, 0, 164 }, { 18, 0, 62 }, { 5, 10, 953 },
- { 11, 10, 802 }, { 5, 0, 615 }, { 7, 11, 1566 }, { 8, 11, 269 },
- { 9, 11, 212 }, { 9, 11, 718 }, { 14, 11, 15 }, { 14, 11, 132 },
- { 14, 11, 227 }, { 5, 10, 290 }, { 4, 10, 380 }, { 5, 10, 52 },
- { 7, 10, 277 }, { 9, 10, 368 }, { 11, 10, 791 }, { 7, 0, 1243 },
- { 5, 11, 539 }, { 11, 11, 919 }, { 13, 11, 409 }, { 8, 0, 968 },
- { 5, 11, 470 }, { 6, 0, 882 }, { 4, 0, 907 }, { 5, 0, 100 },
- { 10, 0, 329 }, { 12, 0, 416 }, { 21, 0, 29 }, { 10, 10, 138 },
- { 11, 10, 476 }, { 5, 10, 725 }, { 5, 10, 727 }, { 6, 11, 91 },
- { 7, 11, 435 }, { 7, 10, 1811 }, { 4, 11, 16 }, { 5, 11, 316 },
- { 5, 11, 842 }, { 6, 11, 370 }, { 6, 11, 1778 }, { 8, 11, 166 },
- { 11, 11, 812 }, { 12, 11, 206 }, { 12, 11, 351 }, { 14, 11, 418 },
- { 16, 11, 15 }, { 16, 11, 34 }, { 18, 11, 3 }, { 19, 11, 3 },
- { 19, 11, 7 }, { 20, 11, 4 }, { 21, 11, 21 }, { 4, 0, 176 },
- { 5, 0, 636 }, { 5, 0, 998 }, { 7, 0, 9 }, { 7, 0, 1508 },
- { 8, 0, 26 }, { 9, 0, 317 }, { 9, 0, 358 }, { 10, 0, 210 },
- { 10, 0, 292 }, { 10, 0, 533 }, { 11, 0, 555 }, { 12, 0, 526 },
- { 12, 0, 607 }, { 13, 0, 263 }, { 13, 0, 459 }, { 14, 0, 271 },
- { 6, 0, 256 }, { 8, 0, 265 }, { 4, 10, 38 }, { 7, 10, 307 },
- { 7, 10, 999 }, { 7, 10, 1481 }, { 7, 10, 1732 }, { 7, 10, 1738 },
- { 9, 10, 414 }, { 11, 10, 316 }, { 12, 10, 52 }, { 13, 10, 420 },
- { 19, 10, 100 }, { 7, 10, 1296 }, { 4, 11, 611 }, { 5, 11, 606 },
- { 4, 0, 643 }, { 14, 11, 21 }, { 5, 11, 715 }, { 5, 10, 723 },
- { 6, 0, 610 }, { 7, 11, 597 }, { 10, 0, 127 }, { 13, 0, 27 },
- { 6, 0, 1995 }, { 6, 0, 2001 }, { 8, 0, 119 }, { 8, 0, 973 },
- { 4, 11, 149 }, { 10, 11, 368 }, { 12, 0, 522 }, { 4, 11, 154 },
- { 5, 10, 109 }, { 6, 10, 1784 }, { 7, 11, 1134 }, { 7, 10, 1895 },
- { 8, 11, 105 }, { 12, 10, 296 }, { 12, 10, 302 }, { 4, 11, 31 },
- { 6, 11, 429 }, { 7, 11, 962 }, { 9, 11, 458 }, { 11, 11, 691 },
- { 10, 0, 553 }, { 11, 0, 876 }, { 13, 0, 193 }, { 13, 0, 423 },
- { 14, 0, 166 }, { 19, 0, 84 }, { 4, 11, 312 }, { 5, 10, 216 },
- { 7, 10, 1879 }, { 9, 10, 141 }, { 9, 10, 270 }, { 9, 10, 679 },
- { 10, 10, 159 }, { 11, 10, 197 }, { 12, 10, 538 }, { 12, 10, 559 },
- { 14, 10, 144 }, { 14, 10, 167 }, { 15, 10, 67 }, { 6, 0, 1582 },
- { 7, 0, 1578 }, { 7, 11, 1578 }, { 9, 10, 81 }, { 4, 11, 236 },
- { 6, 10, 391 }, { 6, 0, 795 }, { 7, 10, 322 }, { 8, 10, 249 },
- { 5, 11, 836 }, { 5, 11, 857 }, { 6, 11, 1680 }, { 7, 11, 59 },
- { 19, 11, 53 }, { 7, 0, 432 }, { 10, 11, 68 }, { 11, 11, 494 },
- { 4, 11, 81 }, { 11, 11, 867 }, { 7, 0, 126 }, { 8, 0, 84 },
- { 14, 11, 280 }, { 5, 11, 282 }, { 8, 11, 650 }, { 9, 11, 295 },
- { 9, 11, 907 }, { 10, 11, 443 }, { 8, 0, 790 }, { 5, 10, 632 },
- { 10, 10, 526 }, { 6, 0, 64 }, { 12, 0, 377 }, { 13, 0, 309 },
- { 14, 0, 141 }, { 14, 0, 429 }, { 14, 11, 141 }, { 14, 11, 429 },
- { 6, 0, 1529 }, { 6, 0, 321 }, { 7, 0, 1857 }, { 9, 0, 530 },
- { 19, 0, 99 }, { 7, 10, 948 }, { 7, 10, 1042 }, { 8, 10, 235 },
- { 8, 10, 461 }, { 9, 10, 453 }, { 10, 10, 354 }, { 17, 10, 77 },
- { 7, 0, 1104 }, { 11, 0, 269 }, { 11, 0, 539 }, { 11, 0, 627 },
- { 11, 0, 706 }, { 11, 0, 975 }, { 12, 0, 248 }, { 12, 0, 434 },
- { 12, 0, 600 }, { 12, 0, 622 }, { 13, 0, 297 }, { 13, 0, 485 },
- { 14, 0, 69 }, { 14, 0, 409 }, { 15, 0, 108 }, { 4, 10, 362 },
- { 7, 10, 52 }, { 7, 10, 303 }, { 10, 11, 70 }, { 12, 11, 26 },
- { 14, 11, 17 }, { 14, 11, 178 }, { 15, 11, 34 }, { 21, 11, 12 },
- { 11, 0, 977 }, { 13, 0, 507 }, { 9, 0, 34 }, { 11, 0, 484 },
- { 5, 10, 196 }, { 6, 10, 486 }, { 7, 10, 212 }, { 8, 10, 309 },
- { 8, 10, 346 }, { 6, 0, 1700 }, { 7, 0, 26 }, { 7, 0, 293 },
- { 7, 0, 382 }, { 7, 0, 1026 }, { 7, 0, 1087 }, { 7, 0, 2027 },
- { 8, 0, 24 }, { 8, 0, 114 }, { 8, 0, 252 }, { 8, 0, 727 },
- { 8, 0, 729 }, { 9, 0, 30 }, { 9, 0, 199 }, { 9, 0, 231 },
- { 9, 0, 251 }, { 9, 0, 334 }, { 9, 0, 361 }, { 9, 0, 712 },
- { 10, 0, 55 }, { 10, 0, 60 }, { 10, 0, 232 }, { 10, 0, 332 },
- { 10, 0, 384 }, { 10, 0, 396 }, { 10, 0, 504 }, { 10, 0, 542 },
- { 10, 0, 652 }, { 11, 0, 20 }, { 11, 0, 48 }, { 11, 0, 207 },
- { 11, 0, 291 }, { 11, 0, 298 }, { 11, 0, 342 }, { 11, 0, 365 },
- { 11, 0, 394 }, { 11, 0, 620 }, { 11, 0, 705 }, { 11, 0, 1017 },
- { 12, 0, 123 }, { 12, 0, 340 }, { 12, 0, 406 }, { 12, 0, 643 },
- { 13, 0, 61 }, { 13, 0, 269 }, { 13, 0, 311 }, { 13, 0, 319 },
- { 13, 0, 486 }, { 14, 0, 234 }, { 15, 0, 62 }, { 15, 0, 85 },
- { 16, 0, 71 }, { 18, 0, 119 }, { 20, 0, 105 }, { 7, 10, 1912 },
- { 4, 11, 71 }, { 5, 11, 376 }, { 7, 11, 119 }, { 10, 11, 665 },
- { 10, 0, 918 }, { 10, 0, 926 }, { 4, 10, 686 }, { 8, 11, 55 },
- { 10, 10, 625 }, { 8, 10, 706 }, { 4, 11, 479 }, { 4, 10, 30 },
- { 5, 10, 43 }, { 6, 0, 379 }, { 7, 0, 270 }, { 8, 0, 176 },
- { 8, 0, 183 }, { 9, 0, 432 }, { 9, 0, 661 }, { 12, 0, 247 },
- { 12, 0, 617 }, { 18, 0, 125 }, { 7, 11, 607 }, { 8, 11, 99 },
- { 24, 11, 4 }, { 5, 0, 792 }, { 5, 0, 900 }, { 4, 11, 612 },
- { 5, 11, 561 }, { 4, 11, 41 }, { 4, 10, 220 }, { 5, 11, 74 },
- { 7, 10, 1535 }, { 7, 11, 1627 }, { 11, 11, 871 }, { 12, 11, 619 },
- { 7, 0, 1920 }, { 7, 11, 94 }, { 11, 11, 329 }, { 11, 11, 965 },
- { 12, 11, 241 }, { 14, 11, 354 }, { 15, 11, 22 }, { 20, 11, 63 },
- { 9, 11, 209 }, { 9, 11, 300 }, { 6, 0, 771 }, { 7, 0, 1979 },
- { 4, 0, 901 }, { 5, 0, 776 }, { 14, 0, 254 }, { 5, 11, 98 },
- { 9, 11, 16 }, { 13, 11, 386 }, { 5, 11, 984 }, { 4, 11, 182 },
- { 6, 11, 205 }, { 7, 11, 220 }, { 7, 10, 1725 }, { 7, 10, 1774 },
- { 10, 10, 393 }, { 5, 10, 263 }, { 6, 10, 414 }, { 4, 11, 42 },
- { 9, 11, 205 }, { 9, 11, 786 }, { 10, 11, 659 }, { 14, 0, 140 },
- { 20, 0, 41 }, { 8, 0, 440 }, { 10, 0, 359 }, { 6, 10, 178 },
- { 6, 11, 289 }, { 6, 10, 1750 }, { 7, 11, 1670 }, { 9, 10, 690 },
- { 10, 10, 155 }, { 10, 10, 373 }, { 11, 10, 698 }, { 12, 11, 57 },
- { 13, 10, 155 }, { 20, 10, 93 }, { 23, 11, 4 }, { 4, 0, 37 },
- { 5, 0, 334 }, { 7, 0, 1253 }, { 23, 11, 25 }, { 4, 0, 508 },
- { 4, 11, 635 }, { 5, 10, 97 }, { 9, 10, 393 }, { 11, 11, 533 },
- { 4, 0, 640 }, { 5, 0, 513 }, { 6, 10, 1639 }, { 4, 11, 371 },
- { 4, 11, 272 }, { 7, 11, 836 }, { 7, 11, 1651 }, { 17, 11, 89 },
- { 5, 11, 825 }, { 6, 11, 444 }, { 6, 11, 1640 }, { 8, 11, 308 },
- { 4, 10, 191 }, { 7, 10, 934 }, { 8, 10, 647 }, { 17, 10, 97 },
- { 12, 0, 246 }, { 15, 0, 162 }, { 19, 0, 64 }, { 20, 0, 8 },
- { 20, 0, 95 }, { 22, 0, 24 }, { 24, 0, 17 }, { 4, 0, 533 },
- { 5, 10, 165 }, { 9, 10, 346 }, { 10, 10, 655 }, { 5, 11, 737 },
- { 11, 10, 885 }, { 5, 10, 877 }, { 8, 10, 128 }, { 11, 10, 179 },
- { 9, 11, 307 }, { 12, 0, 752 }, { 5, 0, 920 }, { 7, 0, 1048 },
- { 5, 0, 153 }, { 6, 0, 580 }, { 6, 10, 1663 }, { 7, 10, 132 },
- { 7, 10, 1154 }, { 7, 10, 1415 }, { 7, 10, 1507 }, { 12, 10, 493 },
- { 15, 10, 105 }, { 23, 10, 15 }, { 5, 10, 459 }, { 7, 10, 1073 },
- { 8, 10, 241 }, { 8, 10, 334 }, { 10, 0, 391 }, { 7, 0, 1952 },
- { 5, 11, 525 }, { 8, 11, 641 }, { 11, 11, 388 }, { 12, 11, 580 },
- { 14, 0, 126 }, { 6, 0, 640 }, { 4, 0, 483 }, { 7, 0, 1616 },
- { 9, 0, 69 }, { 6, 10, 324 }, { 6, 10, 520 }, { 7, 10, 338 },
- { 7, 10, 1729 }, { 8, 10, 228 }, { 11, 10, 750 }, { 5, 11, 493 },
- { 6, 11, 528 }, { 7, 0, 734 }, { 4, 11, 174 }, { 7, 11, 911 },
- { 10, 0, 480 }, { 9, 0, 495 }, { 18, 0, 104 }, { 7, 10, 705 },
- { 9, 0, 472 }, { 4, 10, 73 }, { 6, 10, 612 }, { 7, 10, 927 },
- { 7, 10, 1330 }, { 7, 10, 1822 }, { 8, 10, 217 }, { 9, 10, 765 },
- { 9, 10, 766 }, { 10, 10, 408 }, { 11, 10, 51 }, { 11, 10, 793 },
- { 12, 10, 266 }, { 15, 10, 158 }, { 20, 10, 89 }, { 22, 10, 32 },
- { 7, 11, 548 }, { 9, 11, 58 }, { 4, 11, 32 }, { 5, 11, 215 },
- { 6, 11, 269 }, { 7, 11, 1782 }, { 7, 11, 1892 }, { 10, 11, 16 },
- { 11, 11, 822 }, { 11, 11, 954 }, { 13, 11, 481 }, { 4, 0, 874 },
- { 9, 0, 229 }, { 5, 10, 389 }, { 8, 10, 636 }, { 7, 11, 1749 },
- { 8, 11, 477 }, { 6, 0, 948 }, { 5, 11, 308 }, { 7, 11, 1088 },
- { 4, 0, 748 }, { 11, 0, 1009 }, { 8, 10, 21 }, { 6, 0, 555 },
- { 7, 0, 485 }, { 5, 11, 126 }, { 8, 11, 297 }, { 9, 11, 366 },
- { 9, 11, 445 }, { 12, 11, 53 }, { 12, 11, 374 }, { 13, 11, 492 },
- { 7, 11, 1551 }, { 11, 11, 361 }, { 8, 0, 193 }, { 8, 0, 472 },
- { 8, 0, 653 }, { 13, 0, 93 }, { 19, 0, 14 }, { 4, 0, 984 },
- { 4, 11, 175 }, { 5, 0, 172 }, { 6, 0, 1971 }, { 4, 11, 685 },
- { 21, 11, 8 }, { 5, 11, 797 }, { 13, 0, 83 }, { 5, 10, 189 },
- { 7, 10, 442 }, { 7, 10, 443 }, { 8, 10, 281 }, { 12, 10, 174 },
- { 13, 10, 261 }, { 6, 0, 1568 }, { 5, 11, 565 }, { 11, 0, 384 },
- { 5, 0, 260 }, { 7, 0, 758 }, { 7, 0, 880 }, { 7, 0, 1359 },
- { 9, 0, 164 }, { 9, 0, 167 }, { 10, 0, 156 }, { 10, 0, 588 },
- { 12, 0, 101 }, { 14, 0, 48 }, { 15, 0, 70 }, { 6, 10, 2 },
- { 7, 10, 1262 }, { 7, 10, 1737 }, { 8, 10, 22 }, { 8, 10, 270 },
- { 8, 10, 612 }, { 9, 10, 312 }, { 9, 10, 436 }, { 10, 10, 311 },
- { 10, 10, 623 }, { 11, 10, 72 }, { 11, 10, 330 }, { 11, 10, 455 },
- { 12, 10, 321 }, { 12, 10, 504 }, { 12, 10, 530 }, { 12, 10, 543 },
- { 13, 10, 17 }, { 13, 10, 156 }, { 13, 10, 334 }, { 17, 10, 60 },
- { 20, 10, 64 }, { 4, 11, 252 }, { 7, 11, 1068 }, { 10, 11, 434 },
- { 11, 11, 228 }, { 11, 11, 426 }, { 13, 11, 231 }, { 18, 11, 106 },
- { 20, 11, 87 }, { 7, 10, 354 }, { 10, 10, 410 }, { 11, 10, 815 },
- { 6, 0, 367 }, { 7, 10, 670 }, { 7, 10, 1327 }, { 8, 10, 411 },
- { 8, 10, 435 }, { 9, 10, 653 }, { 9, 10, 740 }, { 10, 10, 385 },
- { 11, 10, 222 }, { 11, 10, 324 }, { 11, 10, 829 }, { 12, 10, 611 },
- { 7, 0, 1174 }, { 6, 10, 166 }, { 7, 10, 374 }, { 18, 0, 121 },
- { 4, 0, 828 }, { 5, 11, 231 }, { 10, 11, 509 }, { 7, 11, 601 },
- { 9, 11, 277 }, { 9, 11, 674 }, { 10, 11, 178 }, { 10, 11, 257 },
- { 10, 11, 418 }, { 11, 11, 531 }, { 11, 11, 544 }, { 11, 11, 585 },
- { 12, 11, 113 }, { 12, 11, 475 }, { 13, 11, 99 }, { 14, 11, 428 },
- { 6, 0, 1541 }, { 7, 11, 1779 }, { 5, 0, 343 }, { 6, 10, 398 },
- { 7, 10, 50 }, { 7, 11, 1683 }, { 4, 0, 440 }, { 7, 0, 57 },
- { 8, 0, 167 }, { 8, 0, 375 }, { 9, 0, 82 }, { 9, 0, 561 },
- { 9, 0, 744 }, { 10, 0, 620 }, { 9, 11, 744 }, { 6, 0, 926 },
- { 6, 10, 517 }, { 7, 10, 1159 }, { 10, 10, 621 }, { 11, 10, 192 },
- { 9, 0, 827 }, { 8, 0, 194 }, { 8, 0, 756 }, { 10, 10, 223 },
- { 11, 10, 645 }, { 7, 10, 64 }, { 8, 10, 245 }, { 4, 11, 399 },
- { 5, 11, 119 }, { 5, 11, 494 }, { 7, 11, 751 }, { 9, 11, 556 },
- { 4, 0, 808 }, { 7, 0, 22 }, { 7, 10, 1763 }, { 12, 10, 310 },
- { 5, 0, 639 }, { 7, 0, 1249 }, { 11, 0, 896 }, { 6, 11, 584 },
- { 6, 0, 1614 }, { 7, 0, 860 }, { 7, 11, 1121 }, { 5, 10, 129 },
- { 6, 10, 61 }, { 7, 10, 947 }, { 4, 0, 102 }, { 7, 0, 815 },
- { 7, 0, 1699 }, { 11, 0, 964 }, { 13, 10, 505 }, { 13, 10, 506 },
- { 11, 10, 1000 }, { 4, 11, 679 }, { 4, 0, 899 }, { 4, 0, 569 },
- { 5, 11, 694 }, { 9, 11, 714 }, { 8, 0, 795 }, { 6, 0, 2045 },
- { 11, 11, 7 }, { 6, 0, 52 }, { 9, 0, 104 }, { 9, 0, 559 },
- { 12, 0, 308 }, { 19, 0, 87 }, { 4, 0, 301 }, { 4, 0, 604 },
- { 5, 10, 637 }, { 8, 0, 779 }, { 5, 11, 143 }, { 5, 11, 769 },
- { 6, 11, 1760 }, { 7, 11, 682 }, { 7, 11, 1992 }, { 8, 11, 736 },
- { 9, 10, 590 }, { 19, 0, 32 }, { 9, 11, 527 }, { 5, 10, 280 },
- { 7, 10, 1226 }, { 6, 0, 494 }, { 6, 0, 677 }, { 6, 0, 682 },
- { 6, 0, 1044 }, { 5, 10, 281 }, { 7, 10, 1064 }, { 7, 0, 508 },
- { 5, 11, 860 }, { 6, 11, 422 }, { 7, 11, 0 }, { 7, 11, 1544 },
- { 9, 11, 577 }, { 11, 11, 990 }, { 12, 11, 141 }, { 12, 11, 453 },
- { 13, 11, 47 }, { 13, 11, 266 }, { 6, 0, 1014 }, { 5, 11, 515 },
- { 9, 11, 131 }, { 6, 0, 957 }, { 4, 11, 646 }, { 6, 0, 310 },
- { 7, 0, 1849 }, { 8, 0, 72 }, { 8, 0, 272 }, { 8, 0, 431 },
- { 9, 0, 12 }, { 9, 0, 376 }, { 10, 0, 563 }, { 10, 0, 630 },
- { 10, 0, 796 }, { 10, 0, 810 }, { 11, 0, 367 }, { 11, 0, 599 },
- { 11, 0, 686 }, { 12, 0, 672 }, { 7, 0, 570 }, { 4, 11, 396 },
- { 7, 10, 120 }, { 7, 11, 728 }, { 8, 10, 489 }, { 9, 11, 117 },
- { 9, 10, 319 }, { 10, 10, 820 }, { 11, 10, 1004 }, { 12, 10, 379 },
- { 12, 10, 679 }, { 13, 10, 117 }, { 13, 11, 202 }, { 13, 10, 412 },
- { 14, 10, 25 }, { 15, 10, 52 }, { 15, 10, 161 }, { 16, 10, 47 },
- { 20, 11, 51 }, { 21, 10, 2 }, { 6, 11, 121 }, { 6, 11, 124 },
- { 6, 11, 357 }, { 7, 11, 1138 }, { 7, 11, 1295 }, { 8, 11, 162 },
- { 11, 11, 655 }, { 8, 0, 449 }, { 4, 10, 937 }, { 5, 10, 801 },
- { 8, 11, 449 }, { 11, 11, 958 }, { 6, 0, 181 }, { 7, 0, 537 },
- { 8, 0, 64 }, { 9, 0, 127 }, { 10, 0, 496 }, { 12, 0, 510 },
- { 13, 0, 384 }, { 10, 11, 253 }, { 4, 0, 244 }, { 7, 0, 233 },
- { 5, 11, 237 }, { 4, 10, 365 }, { 6, 0, 1650 }, { 10, 0, 702 },
- { 11, 0, 245 }, { 5, 10, 7 }, { 11, 10, 774 }, { 13, 0, 463 },
- { 20, 0, 49 }, { 13, 11, 463 }, { 20, 11, 49 }, { 4, 10, 734 },
- { 5, 10, 662 }, { 6, 10, 430 }, { 4, 10, 746 }, { 7, 10, 1090 },
- { 5, 10, 360 }, { 8, 10, 237 }, { 9, 0, 338 }, { 15, 11, 10 },
- { 7, 11, 571 }, { 10, 11, 366 }, { 6, 0, 1279 }, { 9, 11, 513 },
- { 10, 11, 22 }, { 10, 11, 39 }, { 12, 11, 122 }, { 12, 11, 187 },
- { 5, 0, 896 }, { 18, 0, 178 }, { 6, 0, 695 }, { 9, 0, 808 },
- { 6, 11, 587 }, { 7, 11, 107 }, { 7, 11, 838 }, { 8, 11, 550 },
- { 10, 11, 401 }, { 7, 0, 1117 }, { 8, 0, 539 }, { 4, 10, 277 },
- { 5, 10, 608 }, { 6, 10, 493 }, { 7, 10, 457 }, { 12, 10, 384 },
- { 5, 11, 768 }, { 12, 0, 257 }, { 7, 10, 27 }, { 7, 10, 316 },
- { 12, 0, 1003 }, { 4, 0, 207 }, { 5, 0, 586 }, { 5, 0, 676 },
- { 6, 0, 448 }, { 8, 0, 244 }, { 11, 0, 1 }, { 13, 0, 3 },
- { 16, 0, 54 }, { 17, 0, 4 }, { 18, 0, 13 }, { 5, 10, 552 },
- { 4, 10, 401 }, { 9, 10, 264 }, { 5, 0, 516 }, { 7, 0, 1883 },
- { 7, 11, 1883 }, { 12, 0, 960 }, { 4, 11, 894 }, { 5, 0, 4 },
- { 5, 0, 810 }, { 6, 0, 13 }, { 6, 0, 538 }, { 6, 0, 1690 },
- { 6, 0, 1726 }, { 7, 0, 499 }, { 7, 0, 1819 }, { 8, 0, 148 },
- { 8, 0, 696 }, { 8, 0, 791 }, { 12, 0, 125 }, { 15, 0, 9 },
- { 7, 0, 1268 }, { 11, 0, 30 }, { 14, 0, 315 }, { 9, 10, 543 },
- { 10, 10, 524 }, { 12, 10, 524 }, { 16, 10, 18 }, { 20, 10, 26 },
- { 20, 10, 65 }, { 6, 0, 748 }, { 4, 10, 205 }, { 5, 10, 623 },
- { 7, 10, 104 }, { 8, 10, 519 }, { 11, 0, 542 }, { 11, 0, 852 },
- { 12, 0, 6 }, { 4, 0, 848 }, { 7, 0, 1385 }, { 11, 0, 582 },
- { 11, 0, 650 }, { 11, 0, 901 }, { 11, 0, 949 }, { 12, 0, 232 },
- { 12, 0, 236 }, { 13, 0, 413 }, { 13, 0, 501 }, { 18, 0, 116 },
- { 7, 10, 579 }, { 9, 10, 41 }, { 9, 10, 244 }, { 9, 10, 669 },
- { 10, 10, 5 }, { 11, 10, 861 }, { 11, 10, 951 }, { 11, 10, 980 },
- { 4, 0, 945 }, { 6, 0, 1811 }, { 6, 0, 1845 }, { 6, 0, 1853 },
- { 6, 0, 1858 }, { 8, 0, 862 }, { 12, 0, 782 }, { 12, 0, 788 },
- { 18, 0, 160 }, { 20, 0, 117 }, { 4, 10, 717 }, { 4, 0, 925 },
- { 5, 0, 803 }, { 8, 0, 698 }, { 10, 0, 828 }, { 6, 0, 1416 },
- { 4, 0, 610 }, { 11, 0, 992 }, { 6, 0, 878 }, { 6, 0, 1477 },
- { 7, 0, 1847 }, { 10, 11, 531 }, { 9, 11, 539 }, { 6, 11, 272 },
- { 5, 0, 383 }, { 6, 0, 1404 }, { 4, 10, 489 }, { 4, 11, 9 },
- { 5, 11, 128 }, { 7, 11, 368 }, { 11, 11, 480 }, { 20, 11, 3 },
- { 8, 0, 986 }, { 9, 0, 660 }, { 10, 0, 347 }, { 7, 10, 892 },
- { 8, 11, 682 }, { 7, 0, 572 }, { 9, 0, 592 }, { 11, 0, 680 },
- { 12, 0, 356 }, { 12, 0, 550 }, { 7, 0, 1411 }, { 10, 11, 527 },
- { 4, 11, 2 }, { 7, 11, 545 }, { 7, 11, 894 }, { 9, 10, 473 },
- { 11, 0, 64 }, { 7, 11, 481 }, { 7, 10, 819 }, { 9, 10, 26 },
- { 9, 10, 392 }, { 9, 11, 792 }, { 10, 10, 152 }, { 10, 10, 226 },
- { 12, 10, 276 }, { 12, 10, 426 }, { 12, 10, 589 }, { 13, 10, 460 },
- { 15, 10, 97 }, { 19, 10, 48 }, { 20, 10, 104 }, { 7, 10, 51 },
- { 8, 11, 445 }, { 8, 11, 646 }, { 7, 0, 606 }, { 4, 10, 674 },
- { 6, 0, 1829 }, { 6, 0, 1830 }, { 4, 10, 770 }, { 5, 10, 79 },
- { 7, 10, 1027 }, { 7, 10, 1477 }, { 11, 10, 52 }, { 5, 11, 530 },
- { 14, 11, 113 }, { 6, 10, 1666 }, { 7, 0, 748 }, { 11, 0, 700 },
- { 6, 10, 195 }, { 5, 10, 789 }, { 9, 0, 87 }, { 10, 0, 365 },
- { 4, 10, 251 }, { 4, 10, 688 }, { 7, 10, 513 }, { 7, 10, 1284 },
- { 8, 11, 111 }, { 5, 0, 127 }, { 6, 0, 198 }, { 12, 0, 83 },
- { 5, 11, 556 }, { 5, 10, 889 }, { 4, 10, 160 }, { 5, 10, 330 },
- { 7, 10, 1434 }, { 8, 10, 174 }, { 5, 0, 276 }, { 6, 0, 55 },
- { 7, 0, 1369 }, { 10, 0, 864 }, { 8, 11, 16 }, { 12, 11, 568 },
- { 6, 0, 1752 }, { 8, 0, 726 }, { 7, 0, 1066 }, { 5, 0, 764 },
- { 6, 11, 186 }, { 9, 11, 426 }, { 11, 0, 683 }, { 11, 11, 683 },
- { 6, 0, 309 }, { 7, 0, 331 }, { 10, 0, 550 }, { 5, 10, 374 },
- { 6, 0, 1212 }, { 6, 0, 1852 }, { 7, 0, 1062 }, { 8, 0, 874 },
- { 8, 0, 882 }, { 10, 0, 936 }, { 4, 11, 585 }, { 6, 0, 1364 },
- { 7, 0, 986 }, { 5, 10, 731 }, { 6, 0, 723 }, { 6, 0, 1408 },
- { 10, 0, 381 }, { 7, 0, 1573 }, { 6, 0, 1025 }, { 4, 10, 626 },
- { 5, 10, 642 }, { 6, 10, 425 }, { 10, 10, 202 }, { 11, 10, 141 },
- { 4, 11, 93 }, { 5, 11, 252 }, { 6, 11, 229 }, { 7, 11, 291 },
- { 9, 11, 550 }, { 11, 11, 644 }, { 9, 11, 749 }, { 9, 11, 162 },
- { 4, 11, 381 }, { 7, 0, 1559 }, { 6, 0, 194 }, { 7, 0, 133 },
- { 10, 0, 493 }, { 10, 0, 570 }, { 11, 0, 664 }, { 5, 0, 24 },
- { 5, 0, 569 }, { 6, 0, 3 }, { 6, 0, 119 }, { 6, 0, 143 },
- { 6, 0, 440 }, { 7, 0, 295 }, { 7, 0, 599 }, { 7, 0, 1686 },
- { 7, 0, 1854 }, { 8, 0, 424 }, { 9, 0, 43 }, { 9, 0, 584 },
- { 9, 0, 760 }, { 10, 0, 148 }, { 10, 0, 328 }, { 11, 0, 159 },
- { 11, 0, 253 }, { 11, 0, 506 }, { 12, 0, 487 }, { 12, 0, 531 },
- { 6, 0, 661 }, { 6, 0, 1517 }, { 8, 10, 835 }, { 23, 10, 17 },
- { 5, 0, 14 }, { 5, 0, 892 }, { 6, 0, 283 }, { 7, 0, 234 },
- { 8, 0, 537 }, { 11, 0, 541 }, { 4, 0, 126 }, { 8, 0, 635 },
- { 19, 0, 34 }, { 4, 0, 316 }, { 4, 0, 495 }, { 7, 0, 1561 },
- { 4, 11, 187 }, { 5, 11, 184 }, { 5, 11, 690 }, { 7, 11, 1869 },
- { 10, 11, 756 }, { 11, 11, 783 }, { 4, 0, 998 }, { 9, 0, 861 },
- { 8, 0, 1009 }, { 11, 11, 292 }, { 5, 11, 21 }, { 6, 11, 77 },
- { 6, 11, 157 }, { 7, 11, 974 }, { 7, 11, 1301 }, { 7, 11, 1339 },
- { 7, 11, 1490 }, { 7, 11, 1873 }, { 9, 11, 628 }, { 7, 11, 1283 },
- { 9, 11, 227 }, { 9, 11, 499 }, { 10, 11, 341 }, { 11, 11, 325 },
- { 11, 11, 408 }, { 14, 11, 180 }, { 15, 11, 144 }, { 18, 11, 47 },
- { 19, 11, 49 }, { 4, 0, 64 }, { 5, 0, 352 }, { 5, 0, 720 },
- { 6, 0, 368 }, { 11, 0, 359 }, { 5, 10, 384 }, { 8, 10, 455 },
- { 12, 10, 48 }, { 5, 10, 264 }, { 6, 10, 184 }, { 7, 0, 1577 },
- { 10, 0, 304 }, { 10, 0, 549 }, { 12, 0, 365 }, { 13, 0, 220 },
- { 13, 0, 240 }, { 14, 0, 33 }, { 6, 0, 1107 }, { 6, 0, 929 },
- { 7, 0, 1142 }, { 6, 0, 175 }, { 9, 0, 289 }, { 5, 0, 432 },
- { 5, 0, 913 }, { 6, 0, 279 }, { 7, 0, 219 }, { 5, 10, 633 },
- { 7, 10, 1323 }, { 7, 0, 785 }, { 7, 10, 359 }, { 8, 10, 243 },
- { 12, 10, 175 }, { 11, 0, 595 }, { 4, 10, 105 }, { 8, 11, 398 },
- { 9, 11, 681 }, { 11, 11, 632 }, { 12, 0, 80 }, { 5, 0, 931 },
- { 6, 0, 1698 }, { 14, 11, 241 }, { 6, 11, 20 }, { 6, 0, 1323 },
- { 11, 0, 526 }, { 11, 0, 939 }, { 13, 0, 290 }, { 5, 0, 774 },
- { 6, 0, 780 }, { 6, 0, 1637 }, { 6, 0, 1686 }, { 6, 0, 1751 },
- { 8, 0, 559 }, { 13, 0, 109 }, { 13, 0, 127 }, { 7, 0, 1167 },
- { 11, 0, 934 }, { 13, 0, 391 }, { 17, 0, 76 }, { 7, 11, 709 },
- { 7, 0, 963 }, { 6, 0, 260 }, { 7, 0, 1484 }, { 6, 0, 573 },
- { 4, 10, 758 }, { 11, 11, 941 }, { 7, 10, 1649 }, { 17, 11, 36 },
- { 4, 0, 292 }, { 9, 0, 580 }, { 4, 0, 736 }, { 5, 0, 871 },
- { 6, 0, 1689 }, { 7, 0, 1944 }, { 7, 11, 945 }, { 11, 11, 713 },
- { 11, 11, 744 }, { 6, 0, 1164 }, { 7, 11, 937 }, { 6, 0, 1922 },
- { 9, 0, 982 }, { 15, 0, 173 }, { 15, 0, 178 }, { 15, 0, 200 },
- { 18, 0, 189 }, { 18, 0, 207 }, { 21, 0, 47 }, { 7, 11, 1652 },
- { 7, 0, 1695 }, { 11, 10, 128 }, { 6, 0, 63 }, { 7, 0, 920 },
- { 5, 0, 793 }, { 15, 11, 134 }, { 5, 10, 918 }, { 5, 0, 67 },
- { 6, 0, 62 }, { 6, 0, 374 }, { 7, 0, 1391 }, { 9, 0, 790 },
- { 12, 0, 47 }, { 4, 11, 579 }, { 5, 11, 226 }, { 5, 11, 323 },
- { 7, 11, 960 }, { 10, 11, 784 }, { 13, 11, 191 }, { 4, 0, 391 },
- { 7, 0, 1169 }, { 9, 0, 443 }, { 13, 11, 232 }, { 18, 11, 35 },
- { 4, 10, 340 }, { 4, 0, 271 }, { 9, 11, 313 }, { 5, 11, 973 },
- { 9, 11, 659 }, { 6, 0, 1140 }, { 6, 11, 135 }, { 7, 11, 1176 },
- { 4, 0, 253 }, { 5, 0, 544 }, { 7, 0, 300 }, { 9, 0, 340 },
- { 7, 0, 897 }, { 5, 10, 985 }, { 7, 10, 509 }, { 17, 10, 96 },
- { 10, 11, 735 }, { 7, 10, 1919 }, { 10, 0, 890 }, { 5, 0, 818 },
- { 6, 0, 1122 }, { 5, 0, 53 }, { 5, 0, 541 }, { 6, 0, 94 },
- { 6, 0, 499 }, { 7, 0, 230 }, { 11, 0, 321 }, { 4, 0, 920 },
- { 5, 0, 25 }, { 5, 0, 790 }, { 6, 0, 457 }, { 7, 0, 853 },
- { 8, 0, 788 }, { 14, 11, 31 }, { 4, 10, 247 }, { 7, 11, 314 },
- { 4, 0, 468 }, { 7, 0, 243 }, { 6, 10, 337 }, { 7, 10, 494 },
- { 8, 10, 27 }, { 8, 10, 599 }, { 10, 10, 153 }, { 4, 10, 184 },
- { 5, 10, 390 }, { 7, 10, 618 }, { 7, 10, 1456 }, { 11, 10, 710 },
- { 6, 0, 870 }, { 6, 0, 1238 }, { 6, 0, 1765 }, { 10, 0, 853 },
- { 10, 0, 943 }, { 14, 0, 437 }, { 14, 0, 439 }, { 14, 0, 443 },
- { 14, 0, 446 }, { 14, 0, 452 }, { 14, 0, 469 }, { 14, 0, 471 },
- { 14, 0, 473 }, { 16, 0, 93 }, { 16, 0, 102 }, { 16, 0, 110 },
- { 20, 0, 121 }, { 4, 0, 605 }, { 7, 0, 518 }, { 7, 0, 1282 },
- { 7, 0, 1918 }, { 10, 0, 180 }, { 11, 0, 218 }, { 5, 0, 822 },
- { 4, 0, 634 }, { 11, 0, 916 }, { 14, 0, 419 }, { 6, 11, 281 },
- { 7, 11, 6 }, { 8, 11, 282 }, { 8, 11, 480 }, { 8, 11, 499 },
- { 9, 11, 198 }, { 10, 11, 143 }, { 10, 11, 169 }, { 10, 11, 211 },
- { 10, 11, 417 }, { 10, 11, 574 }, { 11, 11, 147 }, { 11, 11, 395 },
- { 12, 11, 75 }, { 12, 11, 407 }, { 12, 11, 608 }, { 13, 11, 500 },
- { 14, 11, 251 }, { 6, 0, 898 }, { 6, 0, 36 }, { 7, 0, 658 },
- { 8, 0, 454 }, { 22, 11, 48 }, { 5, 11, 674 }, { 7, 11, 1776 },
- { 4, 11, 419 }, { 10, 10, 227 }, { 11, 10, 497 }, { 11, 10, 709 },
- { 12, 10, 415 }, { 6, 10, 360 }, { 7, 10, 1664 }, { 8, 10, 478 },
- { 9, 0, 806 }, { 12, 11, 508 }, { 14, 11, 102 }, { 14, 11, 226 },
- { 16, 11, 57 }, { 7, 11, 1123 }, { 4, 11, 138 }, { 7, 11, 1012 },
- { 7, 11, 1280 }, { 9, 11, 76 }, { 5, 11, 29 }, { 12, 11, 638 },
- { 8, 10, 699 }, { 6, 0, 1326 }, { 4, 0, 104 }, { 7, 11, 735 },
- { 4, 10, 739 }, { 6, 0, 1331 }, { 7, 0, 260 }, { 7, 11, 260 },
- { 7, 11, 1063 }, { 7, 0, 45 }, { 9, 0, 542 }, { 9, 0, 566 },
- { 10, 0, 728 }, { 9, 10, 869 }, { 4, 10, 67 }, { 5, 10, 422 },
- { 7, 10, 1037 }, { 7, 10, 1289 }, { 7, 10, 1555 }, { 9, 10, 741 },
- { 17, 10, 108 }, { 11, 0, 263 }, { 6, 0, 1516 }, { 14, 0, 146 },
- { 15, 0, 42 }, { 16, 0, 23 }, { 17, 0, 86 }, { 18, 0, 17 },
- { 10, 0, 468 }, { 8, 0, 1005 }, { 4, 11, 17 }, { 5, 11, 23 },
- { 7, 11, 995 }, { 11, 11, 383 }, { 11, 11, 437 }, { 12, 11, 460 },
- { 12, 11, 532 }, { 7, 0, 87 }, { 14, 0, 288 }, { 10, 10, 96 },
- { 7, 11, 626 }, { 16, 10, 26 }, { 7, 0, 988 }, { 7, 0, 1939 },
- { 9, 0, 64 }, { 9, 0, 502 }, { 12, 0, 22 }, { 12, 0, 34 },
- { 13, 0, 12 }, { 13, 0, 234 }, { 19, 0, 77 }, { 13, 0, 133 },
- { 8, 10, 203 }, { 11, 10, 823 }, { 11, 10, 846 }, { 12, 10, 482 },
- { 13, 10, 277 }, { 13, 10, 302 }, { 13, 10, 464 }, { 14, 10, 205 },
- { 14, 10, 221 }, { 4, 10, 449 }, { 5, 10, 718 }, { 7, 0, 141 },
- { 6, 0, 1842 }, { 8, 0, 872 }, { 8, 11, 70 }, { 12, 11, 171 },
- { 13, 11, 272 }, { 4, 10, 355 }, { 6, 10, 311 }, { 9, 10, 256 },
- { 10, 10, 404 }, { 4, 0, 619 }, { 9, 0, 261 }, { 10, 11, 233 },
- { 10, 10, 758 }, { 11, 11, 76 }, { 5, 0, 246 }, { 8, 0, 189 },
- { 9, 0, 355 }, { 9, 0, 512 }, { 10, 0, 124 }, { 10, 0, 453 },
- { 11, 0, 143 }, { 11, 0, 416 }, { 11, 0, 859 }, { 13, 0, 341 },
- { 6, 11, 442 }, { 5, 10, 827 }, { 5, 10, 64 }, { 12, 10, 581 },
- { 4, 10, 442 }, { 7, 10, 1047 }, { 7, 10, 1352 }, { 7, 10, 1643 },
- { 6, 11, 1709 }, { 5, 0, 678 }, { 6, 0, 305 }, { 7, 0, 775 },
- { 7, 0, 1065 }, { 5, 10, 977 }, { 11, 11, 69 }, { 12, 11, 105 },
- { 12, 11, 117 }, { 13, 11, 213 }, { 14, 11, 13 }, { 14, 11, 62 },
- { 14, 11, 177 }, { 14, 11, 421 }, { 15, 11, 19 }, { 18, 11, 141 },
- { 9, 11, 309 }, { 5, 0, 35 }, { 7, 0, 862 }, { 7, 0, 1886 },
- { 10, 0, 179 }, { 8, 0, 285 }, { 4, 0, 517 }, { 7, 11, 976 },
- { 9, 11, 146 }, { 10, 11, 206 }, { 10, 11, 596 }, { 13, 11, 218 },
- { 14, 11, 153 }, { 4, 10, 254 }, { 6, 0, 214 }, { 12, 0, 540 },
- { 4, 10, 275 }, { 7, 10, 1219 }, { 12, 10, 376 }, { 8, 0, 667 },
- { 11, 0, 403 }, { 18, 0, 83 }, { 12, 0, 74 }, { 10, 11, 648 },
- { 11, 11, 671 }, { 15, 11, 46 }, { 7, 0, 125 }, { 6, 10, 1753 },
- { 5, 0, 761 }, { 6, 0, 912 }, { 4, 11, 518 }, { 6, 10, 369 },
- { 6, 10, 502 }, { 7, 10, 1036 }, { 7, 11, 1136 }, { 8, 10, 348 },
- { 9, 10, 452 }, { 10, 10, 26 }, { 11, 10, 224 }, { 11, 10, 387 },
- { 11, 10, 772 }, { 12, 10, 95 }, { 12, 10, 629 }, { 13, 10, 195 },
- { 13, 10, 207 }, { 13, 10, 241 }, { 14, 10, 260 }, { 14, 10, 270 },
- { 15, 10, 140 }, { 10, 0, 131 }, { 12, 0, 72 }, { 4, 10, 269 },
- { 5, 10, 480 }, { 7, 10, 532 }, { 7, 10, 1197 }, { 7, 10, 1358 },
- { 8, 10, 291 }, { 11, 10, 349 }, { 14, 10, 396 }, { 8, 11, 689 },
- { 9, 11, 863 }, { 8, 0, 333 }, { 10, 0, 182 }, { 4, 11, 18 },
- { 7, 11, 145 }, { 7, 11, 444 }, { 7, 11, 1278 }, { 8, 11, 49 },
- { 8, 11, 400 }, { 9, 11, 71 }, { 9, 11, 250 }, { 10, 11, 459 },
- { 12, 11, 160 }, { 16, 11, 24 }, { 14, 11, 35 }, { 14, 11, 191 },
- { 7, 11, 1864 }, { 7, 0, 1338 }, { 20, 10, 15 }, { 14, 0, 94 },
- { 15, 0, 65 }, { 16, 0, 4 }, { 16, 0, 77 }, { 16, 0, 80 },
- { 17, 0, 5 }, { 12, 11, 82 }, { 15, 11, 36 }, { 5, 11, 1010 },
- { 5, 0, 449 }, { 5, 0, 646 }, { 7, 0, 86 }, { 8, 0, 103 },
- { 7, 10, 657 }, { 7, 0, 2028 }, { 10, 0, 641 }, { 8, 10, 533 },
- { 6, 0, 1 }, { 11, 11, 970 }, { 5, 11, 87 }, { 7, 11, 313 },
- { 7, 11, 1103 }, { 10, 11, 112 }, { 10, 11, 582 }, { 11, 11, 389 },
- { 11, 11, 813 }, { 12, 11, 385 }, { 13, 11, 286 }, { 14, 11, 124 },
- { 18, 11, 108 }, { 6, 0, 869 }, { 4, 11, 267 }, { 6, 0, 277 },
- { 7, 0, 1274 }, { 7, 0, 1386 }, { 18, 0, 87 }, { 6, 0, 187 },
- { 7, 0, 39 }, { 7, 0, 1203 }, { 8, 0, 380 }, { 14, 0, 117 },
- { 21, 0, 28 }, { 4, 10, 211 }, { 4, 10, 332 }, { 5, 10, 335 },
- { 6, 10, 238 }, { 7, 10, 269 }, { 7, 10, 811 }, { 7, 10, 1797 },
- { 8, 10, 836 }, { 9, 10, 507 }, { 13, 10, 242 }, { 4, 0, 785 },
- { 5, 0, 368 }, { 6, 0, 297 }, { 7, 0, 793 }, { 11, 0, 938 },
- { 7, 0, 464 }, { 8, 0, 558 }, { 11, 0, 105 }, { 12, 0, 231 },
- { 14, 0, 386 }, { 15, 0, 102 }, { 20, 0, 75 }, { 5, 10, 1009 },
- { 8, 0, 877 }, { 12, 0, 731 }, { 11, 11, 289 }, { 10, 11, 249 },
- { 11, 11, 209 }, { 4, 11, 561 }, { 6, 0, 1608 }, { 4, 11, 760 },
- { 6, 0, 1429 }, { 9, 11, 154 }, { 12, 11, 485 }, { 5, 10, 228 },
- { 6, 10, 203 }, { 7, 10, 156 }, { 8, 10, 347 }, { 9, 10, 265 },
- { 7, 0, 1010 }, { 11, 0, 733 }, { 11, 0, 759 }, { 13, 0, 34 },
- { 14, 0, 427 }, { 18, 0, 45 }, { 7, 10, 1131 }, { 7, 10, 1468 },
- { 8, 11, 255 }, { 7, 0, 1656 }, { 9, 0, 369 }, { 10, 0, 338 },
- { 10, 0, 490 }, { 11, 0, 154 }, { 11, 0, 545 }, { 11, 0, 775 },
- { 13, 0, 77 }, { 13, 0, 274 }, { 5, 11, 621 }, { 6, 0, 1038 },
- { 4, 11, 368 }, { 7, 11, 641 }, { 6, 0, 2010 }, { 8, 0, 979 },
- { 8, 0, 985 }, { 10, 0, 951 }, { 10, 0, 1011 }, { 6, 0, 1005 },
- { 19, 0, 121 }, { 5, 10, 291 }, { 5, 10, 318 }, { 7, 10, 765 },
- { 9, 10, 389 }, { 12, 10, 548 }, { 5, 0, 20 }, { 6, 0, 298 },
- { 7, 0, 659 }, { 9, 0, 219 }, { 7, 0, 1440 }, { 11, 0, 854 },
- { 11, 0, 872 }, { 11, 0, 921 }, { 12, 0, 551 }, { 13, 0, 472 },
- { 14, 0, 367 }, { 5, 0, 490 }, { 6, 0, 615 }, { 6, 0, 620 },
- { 7, 0, 683 }, { 6, 0, 1070 }, { 6, 0, 1597 }, { 11, 0, 522 },
- { 4, 0, 439 }, { 8, 0, 669 }, { 6, 0, 766 }, { 6, 0, 1143 },
- { 6, 0, 1245 }, { 10, 10, 525 }, { 11, 10, 82 }, { 9, 11, 92 },
- { 19, 11, 91 }, { 6, 0, 668 }, { 6, 0, 1218 }, { 6, 11, 525 },
- { 9, 11, 876 }, { 12, 11, 284 }, { 4, 0, 233 }, { 8, 0, 547 },
- { 4, 10, 422 }, { 5, 10, 355 }, { 17, 10, 0 }, { 6, 11, 300 },
- { 7, 11, 1515 }, { 4, 0, 482 }, { 9, 10, 905 }, { 4, 0, 886 },
- { 7, 0, 346 }, { 5, 11, 594 }, { 5, 10, 865 }, { 5, 10, 914 },
- { 6, 10, 1625 }, { 7, 0, 334 }, { 5, 0, 795 }, { 6, 0, 1741 },
- { 5, 10, 234 }, { 7, 10, 1383 }, { 6, 11, 1641 }, { 8, 11, 820 },
- { 7, 0, 371 }, { 7, 11, 1313 }, { 10, 11, 660 }, { 7, 10, 1312 },
- { 7, 0, 622 }, { 7, 0, 625 }, { 7, 0, 1750 }, { 7, 0, 339 },
- { 4, 0, 203 }, { 7, 0, 1936 }, { 15, 0, 29 }, { 16, 0, 38 },
- { 15, 11, 29 }, { 16, 11, 38 }, { 5, 0, 338 }, { 7, 0, 1256 },
- { 7, 10, 1493 }, { 10, 0, 130 }, { 6, 10, 421 }, { 7, 10, 61 },
- { 7, 10, 1540 }, { 10, 10, 501 }, { 6, 11, 389 }, { 7, 11, 149 },
- { 9, 11, 142 }, { 10, 11, 94 }, { 9, 10, 341 }, { 11, 0, 678 },
- { 12, 0, 307 }, { 14, 10, 98 }, { 6, 11, 8 }, { 7, 11, 1881 },
- { 8, 11, 91 }, { 7, 0, 2044 }, { 6, 0, 770 }, { 6, 0, 802 },
- { 6, 0, 812 }, { 7, 0, 311 }, { 9, 0, 308 }, { 12, 0, 255 },
- { 6, 10, 102 }, { 7, 10, 72 }, { 15, 10, 142 }, { 19, 10, 67 },
- { 23, 10, 30 }, { 7, 10, 823 }, { 7, 0, 1266 }, { 7, 11, 1746 },
- { 7, 10, 1870 }, { 4, 0, 400 }, { 5, 0, 267 }, { 7, 0, 232 },
- { 7, 11, 24 }, { 11, 11, 542 }, { 11, 11, 852 }, { 7, 11, 1739 },
- { 4, 11, 503 }, { 7, 11, 1661 }, { 5, 11, 130 }, { 7, 11, 1314 },
- { 9, 11, 610 }, { 10, 11, 718 }, { 11, 11, 601 }, { 11, 11, 819 },
- { 11, 11, 946 }, { 12, 11, 536 }, { 10, 11, 149 }, { 11, 11, 280 },
- { 14, 11, 336 }, { 7, 0, 739 }, { 11, 0, 690 }, { 7, 11, 1946 },
- { 8, 10, 48 }, { 8, 10, 88 }, { 8, 10, 582 }, { 8, 10, 681 },
- { 9, 10, 373 }, { 9, 10, 864 }, { 11, 10, 157 }, { 11, 10, 843 },
- { 20, 10, 27 }, { 6, 0, 990 }, { 4, 10, 88 }, { 5, 10, 137 },
- { 5, 10, 174 }, { 5, 10, 777 }, { 6, 10, 1664 }, { 6, 10, 1725 },
- { 7, 10, 77 }, { 7, 10, 426 }, { 7, 10, 1317 }, { 7, 10, 1355 },
- { 8, 10, 126 }, { 8, 10, 563 }, { 9, 10, 523 }, { 9, 10, 750 },
- { 10, 10, 310 }, { 10, 10, 836 }, { 11, 10, 42 }, { 11, 10, 318 },
- { 11, 10, 731 }, { 12, 10, 68 }, { 12, 10, 92 }, { 12, 10, 507 },
- { 12, 10, 692 }, { 13, 10, 81 }, { 13, 10, 238 }, { 13, 10, 374 },
- { 14, 10, 436 }, { 18, 10, 138 }, { 19, 10, 78 }, { 19, 10, 111 },
- { 20, 10, 55 }, { 20, 10, 77 }, { 20, 10, 92 }, { 13, 10, 418 },
- { 7, 0, 1831 }, { 4, 10, 938 }, { 6, 0, 776 }, { 6, 0, 915 },
- { 10, 10, 351 }, { 5, 11, 348 }, { 6, 11, 522 }, { 6, 10, 1668 },
- { 7, 10, 1499 }, { 8, 10, 117 }, { 9, 10, 314 }, { 10, 10, 174 },
- { 7, 10, 707 }, { 4, 0, 613 }, { 5, 10, 403 }, { 4, 11, 392 },
- { 5, 11, 433 }, { 9, 11, 633 }, { 11, 11, 629 }, { 5, 0, 763 },
- { 4, 0, 878 }, { 4, 0, 977 }, { 4, 0, 100 }, { 6, 0, 463 },
- { 4, 10, 44 }, { 5, 10, 311 }, { 7, 10, 639 }, { 7, 10, 762 },
- { 7, 10, 1827 }, { 9, 10, 8 }, { 9, 10, 462 }, { 20, 10, 83 },
- { 6, 11, 234 }, { 4, 10, 346 }, { 7, 10, 115 }, { 9, 10, 180 },
- { 9, 10, 456 }, { 10, 10, 363 }, { 5, 0, 362 }, { 5, 0, 443 },
- { 6, 0, 318 }, { 7, 0, 1019 }, { 11, 0, 623 }, { 5, 0, 463 },
- { 8, 0, 296 }, { 7, 11, 140 }, { 7, 11, 1950 }, { 8, 11, 680 },
- { 11, 11, 817 }, { 19, 11, 88 }, { 7, 11, 1222 }, { 10, 11, 386 },
- { 14, 0, 137 }, { 4, 0, 454 }, { 7, 0, 1914 }, { 6, 11, 5 },
- { 7, 10, 1051 }, { 9, 10, 545 }, { 11, 11, 249 }, { 12, 11, 313 },
- { 16, 11, 66 }, { 17, 11, 26 }, { 7, 0, 1527 }, { 17, 0, 58 },
- { 20, 11, 59 }, { 5, 0, 48 }, { 5, 0, 404 }, { 6, 0, 557 },
- { 7, 0, 458 }, { 8, 0, 597 }, { 10, 0, 455 }, { 10, 0, 606 },
- { 11, 0, 49 }, { 11, 0, 548 }, { 12, 0, 476 }, { 13, 0, 18 },
- { 13, 0, 450 }, { 5, 11, 963 }, { 6, 11, 1773 }, { 5, 0, 729 },
- { 10, 11, 586 }, { 5, 0, 442 }, { 7, 0, 1984 }, { 6, 0, 449 },
- { 16, 0, 40 }, { 4, 0, 853 }, { 7, 11, 180 }, { 8, 11, 509 },
- { 8, 11, 792 }, { 6, 10, 185 }, { 7, 10, 1899 }, { 9, 10, 875 },
- { 11, 10, 673 }, { 6, 11, 524 }, { 12, 0, 227 }, { 4, 10, 327 },
- { 5, 10, 478 }, { 7, 10, 1332 }, { 8, 10, 753 }, { 6, 0, 1491 },
- { 5, 10, 1020 }, { 5, 10, 1022 }, { 4, 10, 103 }, { 5, 10, 401 },
- { 4, 11, 931 }, { 4, 10, 499 }, { 7, 10, 1421 }, { 5, 0, 55 },
- { 7, 0, 376 }, { 12, 0, 161 }, { 5, 0, 450 }, { 6, 0, 1174 },
- { 6, 0, 1562 }, { 10, 0, 62 }, { 13, 0, 400 }, { 7, 11, 1837 },
- { 12, 0, 207 }, { 7, 0, 869 }, { 4, 11, 773 }, { 5, 11, 618 },
- { 9, 11, 756 }, { 4, 10, 96 }, { 4, 0, 213 }, { 7, 0, 223 },
- { 8, 0, 80 }, { 7, 10, 968 }, { 4, 11, 90 }, { 5, 11, 337 },
- { 5, 11, 545 }, { 7, 11, 754 }, { 9, 11, 186 }, { 10, 11, 72 },
- { 10, 11, 782 }, { 11, 11, 513 }, { 11, 11, 577 }, { 11, 11, 610 },
- { 11, 11, 889 }, { 11, 11, 961 }, { 12, 11, 354 }, { 12, 11, 362 },
- { 12, 11, 461 }, { 12, 11, 595 }, { 13, 11, 79 }, { 15, 11, 121 },
- { 7, 0, 381 }, { 7, 0, 806 }, { 7, 0, 820 }, { 8, 0, 354 },
- { 8, 0, 437 }, { 8, 0, 787 }, { 9, 0, 657 }, { 10, 0, 58 },
- { 10, 0, 339 }, { 10, 0, 749 }, { 11, 0, 914 }, { 12, 0, 162 },
- { 13, 0, 75 }, { 14, 0, 106 }, { 14, 0, 198 }, { 14, 0, 320 },
- { 14, 0, 413 }, { 18, 0, 43 }, { 8, 0, 747 }, { 8, 0, 954 },
- { 6, 0, 1073 }, { 7, 0, 556 }, { 7, 11, 151 }, { 9, 11, 329 },
- { 11, 11, 254 }, { 5, 0, 692 }, { 6, 0, 1395 }, { 6, 10, 563 },
- { 9, 10, 224 }, { 6, 0, 191 }, { 4, 0, 804 }, { 9, 11, 187 },
- { 10, 11, 36 }, { 17, 11, 44 }, { 18, 11, 64 }, { 7, 11, 165 },
- { 7, 11, 919 }, { 8, 11, 517 }, { 4, 11, 506 }, { 5, 11, 295 },
- { 7, 11, 1680 }, { 15, 11, 14 }, { 16, 11, 5 }, { 4, 0, 706 },
- { 6, 0, 162 }, { 7, 0, 1960 }, { 8, 0, 831 }, { 7, 11, 1376 },
- { 7, 11, 987 }, { 9, 11, 688 }, { 10, 11, 522 }, { 11, 11, 788 },
- { 12, 11, 566 }, { 22, 0, 35 }, { 10, 0, 426 }, { 7, 0, 1235 },
- { 7, 11, 1741 }, { 7, 11, 389 }, { 7, 11, 700 }, { 7, 11, 940 },
- { 8, 11, 514 }, { 9, 11, 116 }, { 9, 11, 535 }, { 10, 11, 118 },
- { 11, 11, 107 }, { 11, 11, 148 }, { 11, 11, 922 }, { 12, 11, 254 },
- { 12, 11, 421 }, { 14, 11, 238 }, { 6, 0, 1234 }, { 4, 11, 743 },
- { 4, 10, 910 }, { 5, 10, 832 }, { 7, 11, 1335 }, { 13, 0, 96 },
- { 7, 11, 185 }, { 18, 0, 149 }, { 4, 0, 204 }, { 9, 0, 902 },
- { 4, 11, 784 }, { 5, 11, 745 }, { 8, 0, 833 }, { 8, 0, 949 },
- { 7, 0, 366 }, { 9, 0, 287 }, { 12, 0, 199 }, { 12, 0, 556 },
- { 12, 0, 577 }, { 5, 11, 81 }, { 7, 11, 146 }, { 7, 11, 1342 },
- { 7, 11, 1446 }, { 8, 11, 53 }, { 8, 11, 561 }, { 8, 11, 694 },
- { 8, 11, 754 }, { 9, 11, 97 }, { 9, 11, 115 }, { 9, 11, 894 },
- { 10, 11, 462 }, { 10, 11, 813 }, { 11, 11, 230 }, { 11, 11, 657 },
- { 11, 11, 699 }, { 11, 11, 748 }, { 12, 11, 119 }, { 12, 11, 200 },
- { 12, 11, 283 }, { 14, 11, 273 }, { 17, 11, 15 }, { 5, 11, 408 },
- { 9, 11, 747 }, { 9, 11, 498 }, { 12, 11, 181 }, { 6, 0, 2020 },
- { 8, 0, 992 }, { 5, 0, 356 }, { 7, 0, 224 }, { 6, 0, 784 },
- { 7, 0, 630 }, { 9, 0, 567 }, { 11, 0, 150 }, { 11, 0, 444 },
- { 13, 0, 119 }, { 8, 10, 528 }, { 9, 10, 348 }, { 6, 0, 539 },
- { 4, 10, 20 }, { 5, 10, 616 }, { 14, 0, 27 }, { 7, 11, 30 },
- { 8, 11, 86 }, { 8, 11, 315 }, { 8, 11, 700 }, { 9, 11, 576 },
- { 9, 11, 858 }, { 11, 11, 310 }, { 11, 11, 888 }, { 11, 11, 904 },
- { 12, 11, 361 }, { 13, 11, 248 }, { 10, 11, 839 }, { 6, 0, 755 },
- { 6, 0, 1063 }, { 7, 10, 1091 }, { 7, 10, 1765 }, { 6, 11, 428 },
- { 7, 11, 524 }, { 8, 11, 169 }, { 8, 11, 234 }, { 9, 11, 480 },
- { 10, 11, 646 }, { 11, 0, 814 }, { 7, 11, 1462 }, { 11, 11, 659 },
- { 4, 10, 26 }, { 5, 10, 429 }, { 6, 10, 245 }, { 7, 10, 704 },
- { 7, 10, 1379 }, { 7, 10, 1474 }, { 7, 11, 1205 }, { 10, 11, 637 },
- { 11, 11, 803 }, { 4, 10, 621 }, { 8, 0, 987 }, { 4, 11, 266 },
- { 8, 11, 4 }, { 9, 11, 39 }, { 10, 11, 166 }, { 11, 11, 918 },
- { 12, 11, 635 }, { 20, 11, 10 }, { 22, 11, 27 }, { 22, 11, 43 },
- { 4, 0, 235 }, { 7, 0, 255 }, { 4, 0, 194 }, { 5, 0, 584 },
- { 6, 0, 384 }, { 7, 0, 583 }, { 10, 0, 761 }, { 11, 0, 760 },
- { 11, 0, 851 }, { 5, 10, 542 }, { 6, 0, 1086 }, { 5, 10, 868 },
- { 8, 0, 1016 }, { 8, 0, 1018 }, { 7, 0, 1396 }, { 7, 11, 1396 },
- { 8, 10, 433 }, { 7, 10, 1495 }, { 10, 10, 215 }, { 13, 10, 124 },
- { 7, 11, 157 }, { 8, 11, 279 }, { 9, 11, 759 }, { 16, 11, 31 },
- { 16, 11, 39 }, { 16, 11, 75 }, { 18, 11, 24 }, { 20, 11, 42 },
- { 24, 11, 1 }, { 5, 0, 562 }, { 6, 11, 604 }, { 6, 0, 913 },
- { 5, 0, 191 }, { 9, 0, 271 }, { 4, 0, 470 }, { 6, 0, 153 },
- { 7, 0, 1503 }, { 7, 0, 1923 }, { 10, 0, 701 }, { 11, 0, 132 },
- { 11, 0, 227 }, { 11, 0, 320 }, { 11, 0, 436 }, { 11, 0, 525 },
- { 11, 0, 855 }, { 11, 0, 873 }, { 12, 0, 41 }, { 12, 0, 286 },
- { 13, 0, 103 }, { 13, 0, 284 }, { 14, 0, 255 }, { 14, 0, 262 },
- { 15, 0, 117 }, { 15, 0, 127 }, { 7, 0, 475 }, { 12, 0, 45 },
- { 19, 10, 112 }, { 4, 11, 567 }, { 9, 11, 859 }, { 6, 0, 713 },
- { 6, 0, 969 }, { 6, 0, 1290 }, { 6, 0, 1551 }, { 5, 0, 327 },
- { 6, 0, 552 }, { 6, 0, 1292 }, { 7, 0, 1754 }, { 9, 0, 604 },
- { 4, 0, 223 }, { 6, 0, 359 }, { 11, 0, 3 }, { 13, 0, 108 },
- { 14, 0, 89 }, { 16, 0, 22 }, { 5, 11, 762 }, { 7, 11, 1880 },
- { 9, 11, 680 }, { 11, 11, 798 }, { 5, 0, 80 }, { 6, 0, 405 },
- { 7, 0, 403 }, { 7, 0, 1502 }, { 8, 0, 456 }, { 9, 0, 487 },
- { 9, 0, 853 }, { 9, 0, 889 }, { 10, 0, 309 }, { 11, 0, 721 },
- { 11, 0, 994 }, { 12, 0, 430 }, { 13, 0, 165 }, { 5, 11, 298 },
- { 4, 10, 647 }, { 6, 0, 2016 }, { 18, 10, 10 }, { 18, 11, 10 },
- { 4, 0, 453 }, { 5, 0, 887 }, { 6, 0, 535 }, { 8, 0, 6 },
- { 8, 0, 543 }, { 8, 0, 826 }, { 8, 0, 975 }, { 10, 0, 961 },
- { 10, 0, 962 }, { 10, 10, 220 }, { 6, 0, 1891 }, { 6, 0, 1893 },
- { 9, 0, 916 }, { 9, 0, 965 }, { 9, 0, 972 }, { 12, 0, 801 },
- { 12, 0, 859 }, { 12, 0, 883 }, { 15, 0, 226 }, { 21, 0, 51 },
- { 4, 10, 109 }, { 7, 11, 267 }, { 7, 11, 92 }, { 7, 11, 182 },
- { 8, 11, 453 }, { 9, 11, 204 }, { 11, 11, 950 }, { 12, 11, 94 },
- { 12, 11, 644 }, { 16, 11, 20 }, { 16, 11, 70 }, { 16, 11, 90 },
- { 19, 11, 55 }, { 6, 10, 1746 }, { 6, 11, 71 }, { 7, 11, 845 },
- { 7, 11, 1308 }, { 8, 11, 160 }, { 9, 11, 318 }, { 5, 0, 101 },
- { 6, 0, 88 }, { 7, 0, 263 }, { 7, 0, 628 }, { 7, 0, 1677 },
- { 8, 0, 349 }, { 9, 0, 100 }, { 10, 0, 677 }, { 14, 0, 169 },
- { 14, 0, 302 }, { 14, 0, 313 }, { 15, 0, 48 }, { 15, 0, 84 },
- { 7, 11, 237 }, { 8, 11, 664 }, { 9, 11, 42 }, { 9, 11, 266 },
- { 9, 11, 380 }, { 9, 11, 645 }, { 10, 11, 177 }, { 10, 11, 276 },
- { 10, 11, 69 }, { 4, 0, 310 }, { 7, 0, 708 }, { 7, 0, 996 },
- { 9, 0, 795 }, { 10, 0, 390 }, { 10, 0, 733 }, { 11, 0, 451 },
- { 12, 0, 249 }, { 14, 0, 115 }, { 14, 0, 286 }, { 15, 0, 100 },
- { 5, 0, 587 }, { 4, 10, 40 }, { 10, 10, 67 }, { 11, 10, 117 },
- { 11, 10, 768 }, { 11, 10, 935 }, { 6, 0, 1942 }, { 7, 0, 512 },
- { 8, 0, 983 }, { 7, 10, 992 }, { 8, 10, 301 }, { 9, 10, 722 },
- { 12, 10, 63 }, { 13, 10, 29 }, { 14, 10, 161 }, { 15, 10, 18 },
- { 8, 11, 76 }, { 11, 10, 923 }, { 6, 0, 645 }, { 6, 0, 851 },
- { 4, 0, 498 }, { 4, 11, 293 }, { 7, 0, 217 }, { 8, 0, 140 },
- { 10, 0, 610 }, { 14, 11, 352 }, { 17, 11, 53 }, { 18, 11, 146 },
- { 18, 11, 152 }, { 19, 11, 11 }, { 22, 11, 54 }, { 6, 0, 1448 },
- { 10, 11, 841 }, { 5, 0, 905 }, { 4, 11, 605 }, { 7, 11, 518 },
- { 7, 11, 1282 }, { 7, 11, 1918 }, { 10, 11, 180 }, { 11, 11, 218 },
- { 11, 11, 917 }, { 7, 10, 825 }, { 12, 10, 328 }, { 4, 0, 456 },
- { 7, 0, 105 }, { 7, 0, 358 }, { 7, 0, 1637 }, { 8, 0, 643 },
- { 11, 0, 483 }, { 6, 0, 792 }, { 6, 11, 96 }, { 7, 11, 1426 },
- { 9, 11, 691 }, { 4, 11, 651 }, { 5, 11, 289 }, { 7, 11, 688 },
- { 8, 11, 35 }, { 9, 11, 511 }, { 10, 11, 767 }, { 19, 11, 118 },
- { 22, 0, 56 }, { 5, 0, 243 }, { 5, 0, 535 }, { 6, 10, 204 },
- { 10, 10, 320 }, { 10, 10, 583 }, { 13, 10, 502 }, { 14, 10, 72 },
- { 14, 10, 274 }, { 14, 10, 312 }, { 14, 10, 344 }, { 15, 10, 159 },
- { 16, 10, 62 }, { 16, 10, 69 }, { 17, 10, 30 }, { 18, 10, 42 },
- { 18, 10, 53 }, { 18, 10, 84 }, { 18, 10, 140 }, { 19, 10, 68 },
- { 19, 10, 85 }, { 20, 10, 5 }, { 20, 10, 45 }, { 20, 10, 101 },
- { 22, 10, 7 }, { 22, 10, 20 }, { 4, 10, 558 }, { 6, 10, 390 },
- { 7, 10, 162 }, { 7, 10, 689 }, { 9, 10, 360 }, { 10, 10, 653 },
- { 18, 11, 23 }, { 7, 0, 1748 }, { 5, 10, 856 }, { 6, 10, 1672 },
- { 6, 10, 1757 }, { 6, 10, 1781 }, { 5, 0, 539 }, { 5, 0, 754 },
- { 6, 0, 876 }, { 4, 11, 704 }, { 7, 11, 1078 }, { 5, 10, 92 },
- { 10, 10, 736 }, { 12, 10, 102 }, { 17, 0, 91 }, { 5, 10, 590 },
- { 9, 10, 213 }, { 6, 0, 1565 }, { 6, 0, 91 }, { 7, 0, 435 },
- { 4, 0, 939 }, { 12, 0, 792 }, { 6, 0, 1399 }, { 4, 0, 16 },
- { 5, 0, 316 }, { 5, 0, 842 }, { 6, 0, 370 }, { 6, 0, 1778 },
- { 8, 0, 166 }, { 11, 0, 812 }, { 12, 0, 206 }, { 12, 0, 351 },
- { 14, 0, 418 }, { 16, 0, 15 }, { 16, 0, 34 }, { 18, 0, 3 },
- { 19, 0, 3 }, { 19, 0, 7 }, { 20, 0, 4 }, { 21, 0, 21 },
- { 4, 11, 720 }, { 5, 11, 306 }, { 16, 0, 95 }, { 5, 11, 431 },
- { 4, 11, 234 }, { 7, 0, 551 }, { 4, 0, 999 }, { 6, 0, 1966 },
- { 6, 0, 2042 }, { 7, 0, 619 }, { 10, 0, 547 }, { 11, 0, 122 },
- { 12, 0, 601 }, { 15, 0, 7 }, { 20, 0, 20 }, { 5, 11, 464 },
- { 6, 11, 236 }, { 7, 11, 276 }, { 7, 11, 696 }, { 7, 11, 914 },
- { 7, 11, 1108 }, { 7, 11, 1448 }, { 9, 11, 15 }, { 9, 11, 564 },
- { 10, 11, 14 }, { 12, 11, 565 }, { 13, 11, 449 }, { 14, 11, 53 },
- { 15, 11, 13 }, { 16, 11, 64 }, { 17, 11, 41 }, { 6, 0, 884 },
- { 6, 0, 1019 }, { 6, 0, 1150 }, { 6, 11, 1767 }, { 12, 11, 194 },
- { 17, 11, 107 }, { 8, 10, 503 }, { 5, 11, 840 }, { 7, 0, 671 },
- { 6, 10, 466 }, { 4, 0, 888 }, { 4, 0, 149 }, { 10, 0, 368 },
- { 4, 0, 154 }, { 7, 0, 1134 }, { 8, 0, 105 }, { 7, 0, 983 },
- { 9, 11, 642 }, { 11, 11, 236 }, { 14, 11, 193 }, { 4, 0, 31 },
- { 6, 0, 429 }, { 7, 0, 962 }, { 9, 0, 458 }, { 11, 0, 691 },
- { 6, 0, 643 }, { 6, 0, 1102 }, { 4, 0, 312 }, { 4, 11, 68 },
- { 5, 11, 634 }, { 6, 11, 386 }, { 7, 11, 794 }, { 8, 11, 273 },
- { 9, 11, 563 }, { 10, 11, 105 }, { 10, 11, 171 }, { 11, 11, 94 },
- { 11, 11, 354 }, { 5, 0, 740 }, { 7, 0, 1642 }, { 4, 11, 95 },
- { 7, 11, 416 }, { 8, 11, 211 }, { 11, 11, 830 }, { 4, 0, 236 },
- { 10, 10, 241 }, { 7, 11, 731 }, { 13, 11, 20 }, { 15, 11, 11 },
- { 5, 0, 836 }, { 5, 0, 857 }, { 6, 0, 1680 }, { 7, 0, 59 },
- { 10, 0, 68 }, { 11, 0, 494 }, { 24, 11, 6 }, { 4, 0, 81 },
- { 11, 0, 867 }, { 7, 0, 795 }, { 5, 11, 689 }, { 4, 0, 1001 },
- { 5, 0, 282 }, { 6, 0, 1932 }, { 6, 0, 1977 }, { 6, 0, 1987 },
- { 6, 0, 1992 }, { 8, 0, 650 }, { 8, 0, 919 }, { 8, 0, 920 },
- { 8, 0, 923 }, { 8, 0, 926 }, { 8, 0, 927 }, { 8, 0, 931 },
- { 8, 0, 939 }, { 8, 0, 947 }, { 8, 0, 956 }, { 8, 0, 997 },
- { 9, 0, 907 }, { 10, 0, 950 }, { 10, 0, 953 }, { 10, 0, 954 },
- { 10, 0, 956 }, { 10, 0, 958 }, { 10, 0, 959 }, { 10, 0, 964 },
- { 10, 0, 970 }, { 10, 0, 972 }, { 10, 0, 973 }, { 10, 0, 975 },
- { 10, 0, 976 }, { 10, 0, 980 }, { 10, 0, 981 }, { 10, 0, 984 },
- { 10, 0, 988 }, { 10, 0, 990 }, { 10, 0, 995 }, { 10, 0, 999 },
- { 10, 0, 1002 }, { 10, 0, 1003 }, { 10, 0, 1005 }, { 10, 0, 1006 },
- { 10, 0, 1008 }, { 10, 0, 1009 }, { 10, 0, 1012 }, { 10, 0, 1014 },
- { 10, 0, 1015 }, { 10, 0, 1019 }, { 10, 0, 1020 }, { 10, 0, 1022 },
- { 12, 0, 959 }, { 12, 0, 961 }, { 12, 0, 962 }, { 12, 0, 963 },
- { 12, 0, 964 }, { 12, 0, 965 }, { 12, 0, 967 }, { 12, 0, 968 },
- { 12, 0, 969 }, { 12, 0, 970 }, { 12, 0, 971 }, { 12, 0, 972 },
- { 12, 0, 973 }, { 12, 0, 974 }, { 12, 0, 975 }, { 12, 0, 976 },
- { 12, 0, 977 }, { 12, 0, 979 }, { 12, 0, 981 }, { 12, 0, 982 },
- { 12, 0, 983 }, { 12, 0, 984 }, { 12, 0, 985 }, { 12, 0, 986 },
- { 12, 0, 987 }, { 12, 0, 989 }, { 12, 0, 990 }, { 12, 0, 992 },
- { 12, 0, 993 }, { 12, 0, 995 }, { 12, 0, 998 }, { 12, 0, 999 },
- { 12, 0, 1000 }, { 12, 0, 1001 }, { 12, 0, 1002 }, { 12, 0, 1004 },
- { 12, 0, 1005 }, { 12, 0, 1006 }, { 12, 0, 1007 }, { 12, 0, 1008 },
- { 12, 0, 1009 }, { 12, 0, 1010 }, { 12, 0, 1011 }, { 12, 0, 1012 },
- { 12, 0, 1014 }, { 12, 0, 1015 }, { 12, 0, 1016 }, { 12, 0, 1017 },
- { 12, 0, 1018 }, { 12, 0, 1019 }, { 12, 0, 1022 }, { 12, 0, 1023 },
- { 14, 0, 475 }, { 14, 0, 477 }, { 14, 0, 478 }, { 14, 0, 479 },
- { 14, 0, 480 }, { 14, 0, 482 }, { 14, 0, 483 }, { 14, 0, 484 },
- { 14, 0, 485 }, { 14, 0, 486 }, { 14, 0, 487 }, { 14, 0, 488 },
- { 14, 0, 489 }, { 14, 0, 490 }, { 14, 0, 491 }, { 14, 0, 492 },
- { 14, 0, 493 }, { 14, 0, 494 }, { 14, 0, 495 }, { 14, 0, 496 },
- { 14, 0, 497 }, { 14, 0, 498 }, { 14, 0, 499 }, { 14, 0, 500 },
- { 14, 0, 501 }, { 14, 0, 502 }, { 14, 0, 503 }, { 14, 0, 504 },
- { 14, 0, 506 }, { 14, 0, 507 }, { 14, 0, 508 }, { 14, 0, 509 },
- { 14, 0, 510 }, { 14, 0, 511 }, { 16, 0, 113 }, { 16, 0, 114 },
- { 16, 0, 115 }, { 16, 0, 117 }, { 16, 0, 118 }, { 16, 0, 119 },
- { 16, 0, 121 }, { 16, 0, 122 }, { 16, 0, 123 }, { 16, 0, 124 },
- { 16, 0, 125 }, { 16, 0, 126 }, { 16, 0, 127 }, { 18, 0, 242 },
- { 18, 0, 243 }, { 18, 0, 244 }, { 18, 0, 245 }, { 18, 0, 248 },
- { 18, 0, 249 }, { 18, 0, 250 }, { 18, 0, 251 }, { 18, 0, 252 },
- { 18, 0, 253 }, { 18, 0, 254 }, { 18, 0, 255 }, { 20, 0, 125 },
- { 20, 0, 126 }, { 20, 0, 127 }, { 7, 11, 1717 }, { 7, 11, 1769 },
- { 10, 11, 546 }, { 7, 11, 1127 }, { 7, 11, 1572 }, { 10, 11, 297 },
- { 10, 11, 422 }, { 11, 11, 764 }, { 11, 11, 810 }, { 12, 11, 264 },
- { 13, 11, 102 }, { 13, 11, 300 }, { 13, 11, 484 }, { 14, 11, 147 },
- { 14, 11, 229 }, { 17, 11, 71 }, { 18, 11, 118 }, { 19, 11, 120 },
- { 6, 0, 1148 }, { 6, 0, 1586 }, { 4, 0, 775 }, { 7, 10, 954 },
- { 5, 11, 864 }, { 5, 11, 928 }, { 10, 11, 189 }, { 7, 10, 1958 },
- { 6, 10, 549 }, { 8, 10, 34 }, { 8, 10, 283 }, { 9, 10, 165 },
- { 10, 10, 475 }, { 5, 10, 652 }, { 5, 10, 701 }, { 7, 10, 449 },
- { 7, 11, 695 }, { 4, 10, 655 }, { 7, 10, 850 }, { 17, 10, 75 },
- { 18, 10, 137 }, { 12, 11, 682 }, { 5, 11, 523 }, { 8, 0, 970 },
- { 8, 10, 670 }, { 8, 11, 555 }, { 7, 11, 76 }, { 8, 11, 44 },
- { 9, 11, 884 }, { 10, 11, 580 }, { 11, 11, 399 }, { 11, 11, 894 },
- { 15, 11, 122 }, { 18, 11, 144 }, { 19, 11, 61 }, { 6, 10, 159 },
- { 6, 10, 364 }, { 7, 10, 516 }, { 7, 10, 1439 }, { 9, 10, 518 },
- { 4, 0, 71 }, { 5, 0, 376 }, { 7, 0, 119 }, { 10, 0, 665 },
- { 13, 10, 151 }, { 11, 0, 827 }, { 14, 0, 34 }, { 15, 0, 148 },
- { 5, 11, 518 }, { 4, 0, 479 }, { 7, 11, 1787 }, { 7, 11, 1852 },
- { 7, 10, 993 }, { 7, 0, 607 }, { 8, 0, 99 }, { 6, 0, 1960 },
- { 4, 0, 793 }, { 4, 0, 41 }, { 5, 0, 74 }, { 7, 0, 1627 },
- { 11, 0, 871 }, { 12, 0, 619 }, { 7, 0, 94 }, { 11, 0, 329 },
- { 11, 0, 965 }, { 12, 0, 241 }, { 14, 0, 354 }, { 15, 0, 22 },
- { 20, 0, 63 }, { 7, 10, 501 }, { 9, 10, 111 }, { 10, 10, 141 },
- { 11, 10, 332 }, { 13, 10, 43 }, { 13, 10, 429 }, { 14, 10, 130 },
- { 14, 10, 415 }, { 17, 10, 102 }, { 9, 0, 209 }, { 9, 0, 300 },
- { 6, 0, 1497 }, { 10, 11, 255 }, { 4, 11, 934 }, { 5, 11, 138 },
- { 8, 11, 610 }, { 5, 0, 98 }, { 6, 0, 1316 }, { 10, 11, 804 },
- { 10, 11, 832 }, { 8, 11, 96 }, { 9, 11, 36 }, { 10, 11, 607 },
- { 11, 11, 423 }, { 11, 11, 442 }, { 12, 11, 309 }, { 14, 11, 199 },
- { 15, 11, 90 }, { 17, 11, 110 }, { 4, 0, 463 }, { 5, 10, 149 },
- { 8, 10, 233 }, { 5, 10, 935 }, { 4, 11, 652 }, { 8, 11, 320 },
- { 9, 11, 13 }, { 9, 11, 398 }, { 9, 11, 727 }, { 10, 11, 75 },
- { 10, 11, 184 }, { 10, 11, 230 }, { 10, 11, 564 }, { 10, 11, 569 },
- { 11, 11, 973 }, { 12, 11, 70 }, { 12, 11, 189 }, { 13, 11, 57 },
- { 13, 11, 257 }, { 22, 11, 6 }, { 22, 11, 16 }, { 14, 0, 291 },
- { 12, 10, 582 }, { 18, 10, 131 }, { 8, 10, 801 }, { 5, 0, 984 },
- { 17, 11, 116 }, { 4, 11, 692 }, { 5, 11, 321 }, { 4, 0, 182 },
- { 6, 0, 205 }, { 7, 0, 220 }, { 4, 0, 42 }, { 9, 0, 205 },
- { 9, 0, 786 }, { 10, 0, 659 }, { 6, 0, 801 }, { 11, 11, 130 },
- { 12, 11, 609 }, { 4, 0, 635 }, { 5, 11, 345 }, { 7, 11, 1016 },
- { 11, 0, 533 }, { 4, 0, 371 }, { 4, 0, 272 }, { 7, 0, 836 },
- { 6, 0, 1282 }, { 7, 11, 1100 }, { 5, 0, 825 }, { 6, 0, 1640 },
- { 7, 11, 1325 }, { 5, 11, 673 }, { 4, 11, 287 }, { 5, 11, 1018 },
- { 7, 0, 357 }, { 6, 0, 467 }, { 9, 0, 879 }, { 7, 0, 317 },
- { 7, 0, 569 }, { 6, 0, 924 }, { 6, 0, 1588 }, { 5, 11, 34 },
- { 5, 10, 406 }, { 10, 11, 724 }, { 12, 11, 444 }, { 13, 11, 354 },
- { 18, 11, 32 }, { 23, 11, 24 }, { 23, 11, 31 }, { 24, 11, 5 },
- { 6, 0, 1795 }, { 6, 0, 1835 }, { 6, 0, 1836 }, { 6, 0, 1856 },
- { 8, 0, 844 }, { 8, 0, 849 }, { 8, 0, 854 }, { 8, 0, 870 },
- { 8, 0, 887 }, { 10, 0, 852 }, { 10, 0, 942 }, { 6, 10, 69 },
- { 7, 10, 117 }, { 9, 0, 307 }, { 4, 0, 944 }, { 6, 0, 1799 },
- { 6, 0, 1825 }, { 10, 0, 848 }, { 10, 0, 875 }, { 10, 0, 895 },
- { 10, 0, 899 }, { 10, 0, 902 }, { 12, 0, 773 }, { 11, 0, 43 },
- { 13, 0, 72 }, { 13, 0, 142 }, { 7, 10, 1830 }, { 6, 11, 382 },
- { 4, 10, 432 }, { 7, 10, 824 }, { 4, 11, 329 }, { 7, 0, 1820 },
- { 11, 11, 124 }, { 5, 10, 826 }, { 5, 0, 525 }, { 4, 11, 906 },
- { 7, 11, 1940 }, { 8, 11, 366 }, { 10, 11, 10 }, { 4, 11, 123 },
- { 4, 11, 649 }, { 5, 11, 605 }, { 7, 11, 1509 }, { 8, 11, 36 },
- { 6, 0, 110 }, { 7, 0, 1681 }, { 5, 0, 493 }, { 5, 11, 767 },
- { 4, 0, 174 }, { 7, 0, 911 }, { 10, 11, 786 }, { 8, 0, 417 },
- { 9, 0, 782 }, { 5, 10, 1000 }, { 7, 0, 733 }, { 9, 0, 583 },
- { 4, 10, 297 }, { 6, 10, 529 }, { 7, 10, 152 }, { 7, 10, 713 },
- { 7, 10, 1845 }, { 8, 10, 710 }, { 8, 10, 717 }, { 12, 10, 639 },
- { 12, 10, 685 }, { 4, 0, 32 }, { 5, 0, 215 }, { 6, 0, 269 },
- { 7, 0, 1782 }, { 7, 0, 1892 }, { 10, 0, 16 }, { 11, 0, 822 },
- { 11, 0, 954 }, { 13, 0, 481 }, { 4, 11, 273 }, { 5, 11, 658 },
- { 5, 11, 995 }, { 8, 0, 477 }, { 6, 11, 72 }, { 7, 11, 1345 },
- { 5, 0, 308 }, { 7, 0, 1088 }, { 4, 10, 520 }, { 7, 10, 575 },
- { 5, 11, 589 }, { 5, 0, 126 }, { 8, 0, 297 }, { 9, 0, 366 },
- { 12, 0, 374 }, { 7, 0, 1551 }, { 11, 0, 361 }, { 5, 11, 117 },
- { 6, 11, 514 }, { 6, 11, 541 }, { 7, 11, 1164 }, { 7, 11, 1436 },
- { 8, 11, 220 }, { 8, 11, 648 }, { 10, 11, 688 }, { 11, 11, 560 },
- { 5, 11, 686 }, { 4, 0, 946 }, { 6, 0, 1807 }, { 8, 0, 871 },
- { 10, 0, 854 }, { 10, 0, 870 }, { 10, 0, 888 }, { 10, 0, 897 },
- { 10, 0, 920 }, { 12, 0, 722 }, { 12, 0, 761 }, { 12, 0, 763 },
- { 12, 0, 764 }, { 14, 0, 454 }, { 14, 0, 465 }, { 16, 0, 107 },
- { 18, 0, 167 }, { 18, 0, 168 }, { 18, 0, 172 }, { 4, 0, 175 },
- { 7, 0, 1307 }, { 4, 0, 685 }, { 7, 11, 1834 }, { 5, 0, 797 },
- { 6, 0, 745 }, { 6, 0, 858 }, { 6, 0, 963 }, { 5, 0, 565 },
- { 5, 10, 397 }, { 6, 10, 154 }, { 7, 11, 196 }, { 7, 10, 676 },
- { 8, 10, 443 }, { 8, 10, 609 }, { 9, 10, 24 }, { 9, 10, 325 },
- { 10, 10, 35 }, { 10, 11, 765 }, { 11, 11, 347 }, { 11, 10, 535 },
- { 11, 11, 552 }, { 11, 11, 576 }, { 11, 10, 672 }, { 11, 11, 790 },
- { 11, 10, 1018 }, { 12, 11, 263 }, { 12, 10, 637 }, { 13, 11, 246 },
- { 13, 11, 270 }, { 13, 11, 395 }, { 14, 11, 74 }, { 14, 11, 176 },
- { 14, 11, 190 }, { 14, 11, 398 }, { 14, 11, 412 }, { 15, 11, 32 },
- { 15, 11, 63 }, { 16, 10, 30 }, { 16, 11, 88 }, { 19, 11, 105 },
- { 13, 11, 84 }, { 13, 11, 122 }, { 4, 0, 252 }, { 7, 0, 1068 },
- { 10, 0, 434 }, { 11, 0, 228 }, { 11, 0, 426 }, { 13, 0, 231 },
- { 18, 0, 106 }, { 20, 0, 87 }, { 9, 0, 826 }, { 4, 11, 589 },
- { 11, 11, 282 }, { 5, 11, 381 }, { 7, 11, 1792 }, { 4, 0, 791 },
- { 5, 0, 231 }, { 10, 0, 509 }, { 5, 10, 981 }, { 7, 0, 601 },
- { 9, 0, 277 }, { 9, 0, 674 }, { 10, 0, 178 }, { 10, 0, 418 },
- { 10, 0, 571 }, { 11, 0, 531 }, { 12, 0, 113 }, { 12, 0, 475 },
- { 13, 0, 99 }, { 14, 0, 428 }, { 4, 10, 56 }, { 7, 11, 616 },
- { 7, 10, 1791 }, { 8, 10, 607 }, { 8, 10, 651 }, { 10, 11, 413 },
- { 11, 10, 465 }, { 11, 10, 835 }, { 12, 10, 337 }, { 13, 10, 480 },
- { 7, 0, 1591 }, { 16, 0, 43 }, { 9, 10, 158 }, { 10, 10, 411 },
- { 7, 0, 1683 }, { 8, 0, 289 }, { 11, 0, 45 }, { 12, 0, 278 },
- { 12, 0, 537 }, { 6, 11, 120 }, { 7, 11, 1188 }, { 7, 11, 1710 },
- { 8, 11, 286 }, { 9, 11, 667 }, { 11, 11, 592 }, { 11, 11, 730 },
- { 8, 10, 617 }, { 7, 0, 1120 }, { 7, 11, 1146 }, { 11, 10, 563 },
- { 4, 11, 352 }, { 4, 10, 369 }, { 7, 11, 687 }, { 15, 11, 38 },
- { 4, 0, 399 }, { 5, 0, 119 }, { 5, 0, 494 }, { 7, 0, 751 },
- { 9, 0, 556 }, { 14, 11, 179 }, { 15, 11, 151 }, { 22, 11, 11 },
- { 4, 11, 192 }, { 5, 11, 49 }, { 6, 11, 200 }, { 6, 11, 293 },
- { 6, 11, 1696 }, { 7, 11, 488 }, { 4, 0, 398 }, { 5, 0, 660 },
- { 7, 0, 1030 }, { 6, 10, 622 }, { 7, 11, 595 }, { 13, 0, 168 },
- { 4, 11, 147 }, { 7, 0, 973 }, { 10, 10, 624 }, { 14, 10, 279 },
- { 4, 10, 363 }, { 4, 0, 642 }, { 5, 11, 934 }, { 6, 0, 1615 },
- { 7, 11, 505 }, { 7, 11, 523 }, { 7, 0, 594 }, { 7, 0, 851 },
- { 7, 0, 1858 }, { 9, 0, 411 }, { 9, 0, 574 }, { 9, 0, 666 },
- { 9, 0, 737 }, { 10, 0, 346 }, { 10, 0, 712 }, { 11, 0, 246 },
- { 11, 0, 432 }, { 11, 0, 517 }, { 11, 0, 647 }, { 11, 0, 679 },
- { 11, 0, 727 }, { 12, 0, 304 }, { 12, 0, 305 }, { 12, 0, 323 },
- { 12, 0, 483 }, { 12, 0, 572 }, { 12, 0, 593 }, { 12, 0, 602 },
- { 13, 0, 95 }, { 13, 0, 101 }, { 13, 0, 171 }, { 13, 0, 315 },
- { 13, 0, 378 }, { 13, 0, 425 }, { 13, 0, 475 }, { 14, 0, 63 },
- { 14, 0, 380 }, { 14, 0, 384 }, { 15, 0, 133 }, { 18, 0, 112 },
- { 20, 0, 72 }, { 7, 0, 1093 }, { 4, 0, 679 }, { 8, 0, 913 },
- { 10, 0, 903 }, { 10, 0, 915 }, { 12, 0, 648 }, { 12, 0, 649 },
- { 14, 0, 455 }, { 16, 0, 112 }, { 10, 11, 438 }, { 9, 0, 203 },
- { 6, 10, 292 }, { 6, 0, 1492 }, { 7, 0, 1374 }, { 8, 0, 540 },
- { 5, 10, 177 }, { 6, 10, 616 }, { 7, 10, 827 }, { 9, 10, 525 },
- { 10, 10, 656 }, { 7, 0, 1486 }, { 9, 0, 714 }, { 10, 10, 31 },
- { 8, 0, 825 }, { 6, 0, 1511 }, { 4, 11, 637 }, { 6, 0, 952 },
- { 4, 10, 161 }, { 5, 10, 631 }, { 5, 0, 143 }, { 5, 0, 769 },
- { 6, 0, 1760 }, { 7, 0, 682 }, { 7, 0, 1992 }, { 8, 0, 736 },
- { 4, 0, 700 }, { 6, 0, 1540 }, { 4, 11, 777 }, { 9, 11, 867 },
- { 10, 11, 837 }, { 7, 0, 1557 }, { 7, 10, 1684 }, { 5, 0, 860 },
- { 6, 0, 422 }, { 7, 0, 0 }, { 7, 0, 1544 }, { 9, 0, 605 },
- { 11, 0, 990 }, { 12, 0, 235 }, { 12, 0, 453 }, { 13, 0, 47 },
- { 13, 0, 266 }, { 9, 10, 469 }, { 9, 10, 709 }, { 12, 10, 512 },
- { 14, 10, 65 }, { 17, 10, 12 }, { 11, 0, 807 }, { 10, 10, 229 },
- { 11, 10, 73 }, { 11, 10, 376 }, { 6, 11, 170 }, { 7, 11, 1080 },
- { 8, 11, 395 }, { 8, 11, 487 }, { 11, 11, 125 }, { 13, 11, 147 },
- { 5, 0, 515 }, { 9, 0, 131 }, { 7, 0, 1605 }, { 11, 0, 962 },
- { 18, 0, 139 }, { 4, 0, 646 }, { 4, 0, 396 }, { 7, 0, 728 },
- { 9, 0, 117 }, { 13, 0, 202 }, { 20, 0, 51 }, { 6, 0, 121 },
- { 6, 0, 124 }, { 6, 0, 357 }, { 7, 0, 1138 }, { 7, 0, 1295 },
- { 8, 0, 162 }, { 8, 0, 508 }, { 11, 0, 655 }, { 4, 11, 535 },
- { 6, 10, 558 }, { 7, 10, 651 }, { 8, 11, 618 }, { 9, 10, 0 },
- { 10, 10, 34 }, { 11, 10, 1008 }, { 7, 11, 1245 }, { 10, 0, 357 },
- { 22, 11, 23 }, { 5, 0, 237 }, { 7, 0, 1784 }, { 7, 10, 1832 },
- { 10, 10, 374 }, { 4, 0, 713 }, { 4, 11, 46 }, { 6, 0, 1536 },
- { 10, 0, 348 }, { 5, 11, 811 }, { 6, 11, 1679 }, { 6, 11, 1714 },
- { 7, 11, 2032 }, { 11, 11, 182 }, { 14, 11, 195 }, { 6, 0, 523 },
- { 7, 0, 738 }, { 7, 10, 771 }, { 7, 10, 1731 }, { 9, 10, 405 },
- { 10, 10, 421 }, { 7, 11, 1458 }, { 9, 11, 407 }, { 11, 11, 15 },
- { 6, 11, 34 }, { 7, 11, 69 }, { 7, 11, 640 }, { 7, 11, 1089 },
- { 8, 11, 708 }, { 8, 11, 721 }, { 9, 11, 363 }, { 9, 11, 643 },
- { 10, 11, 628 }, { 20, 11, 98 }, { 5, 0, 434 }, { 7, 0, 1877 },
- { 7, 0, 571 }, { 10, 0, 366 }, { 5, 10, 881 }, { 5, 10, 885 },
- { 9, 0, 513 }, { 10, 0, 25 }, { 10, 0, 39 }, { 12, 0, 122 },
- { 12, 0, 187 }, { 4, 0, 580 }, { 5, 10, 142 }, { 6, 10, 546 },
- { 4, 11, 462 }, { 9, 0, 873 }, { 5, 10, 466 }, { 11, 10, 571 },
- { 12, 10, 198 }, { 13, 10, 283 }, { 14, 10, 186 }, { 15, 10, 21 },
- { 15, 10, 103 }, { 7, 0, 171 }, { 4, 10, 185 }, { 5, 10, 257 },
- { 5, 10, 839 }, { 5, 10, 936 }, { 9, 10, 399 }, { 10, 10, 258 },
- { 10, 10, 395 }, { 10, 10, 734 }, { 11, 10, 1014 }, { 12, 10, 23 },
- { 13, 10, 350 }, { 14, 10, 150 }, { 19, 10, 6 }, { 6, 0, 625 },
- { 7, 0, 107 }, { 7, 0, 838 }, { 8, 0, 550 }, { 10, 0, 401 },
- { 5, 11, 73 }, { 6, 11, 23 }, { 6, 11, 338 }, { 4, 0, 943 },
- { 6, 0, 1850 }, { 12, 0, 713 }, { 14, 0, 434 }, { 11, 0, 588 },
- { 11, 0, 864 }, { 11, 0, 936 }, { 11, 0, 968 }, { 12, 0, 73 },
- { 12, 0, 343 }, { 12, 0, 394 }, { 13, 0, 275 }, { 14, 0, 257 },
- { 15, 0, 160 }, { 7, 10, 404 }, { 7, 10, 1377 }, { 7, 10, 1430 },
- { 7, 10, 2017 }, { 8, 10, 149 }, { 8, 10, 239 }, { 8, 10, 512 },
- { 8, 10, 793 }, { 8, 10, 818 }, { 9, 10, 474 }, { 9, 10, 595 },
- { 10, 10, 122 }, { 10, 10, 565 }, { 10, 10, 649 }, { 10, 10, 783 },
- { 11, 10, 239 }, { 11, 10, 295 }, { 11, 10, 447 }, { 11, 10, 528 },
- { 11, 10, 639 }, { 11, 10, 800 }, { 12, 10, 25 }, { 12, 10, 157 },
- { 12, 10, 316 }, { 12, 10, 390 }, { 12, 10, 391 }, { 12, 10, 395 },
- { 12, 10, 478 }, { 12, 10, 503 }, { 12, 10, 592 }, { 12, 10, 680 },
- { 13, 10, 50 }, { 13, 10, 53 }, { 13, 10, 132 }, { 13, 10, 198 },
- { 13, 10, 322 }, { 13, 10, 415 }, { 13, 10, 511 }, { 14, 10, 71 },
- { 14, 10, 395 }, { 15, 10, 71 }, { 15, 10, 136 }, { 17, 10, 123 },
- { 18, 10, 93 }, { 19, 10, 58 }, { 5, 0, 768 }, { 11, 0, 103 },
- { 14, 0, 0 }, { 8, 10, 712 }, { 4, 0, 799 }, { 4, 0, 894 },
- { 7, 11, 725 }, { 8, 11, 498 }, { 11, 11, 268 }, { 7, 11, 1798 },
- { 7, 11, 773 }, { 13, 11, 360 }, { 4, 10, 377 }, { 24, 10, 13 },
- { 7, 0, 1673 }, { 4, 11, 583 }, { 6, 0, 1052 }, { 5, 11, 220 },
- { 12, 11, 69 }, { 4, 11, 544 }, { 4, 10, 180 }, { 7, 10, 1906 },
- { 6, 0, 272 }, { 4, 0, 441 }, { 6, 0, 1421 }, { 4, 0, 9 },
- { 5, 0, 128 }, { 7, 0, 368 }, { 11, 0, 480 }, { 20, 0, 3 },
- { 5, 11, 176 }, { 6, 11, 437 }, { 6, 11, 564 }, { 11, 11, 181 },
- { 13, 11, 183 }, { 4, 10, 491 }, { 7, 0, 1182 }, { 13, 11, 67 },
- { 6, 0, 1346 }, { 4, 10, 171 }, { 10, 10, 234 }, { 4, 10, 586 },
- { 7, 10, 1186 }, { 10, 10, 631 }, { 8, 0, 682 }, { 6, 0, 1004 },
- { 15, 0, 24 }, { 15, 11, 24 }, { 6, 0, 968 }, { 4, 0, 2 },
- { 6, 0, 742 }, { 6, 0, 793 }, { 7, 0, 545 }, { 7, 0, 894 },
- { 9, 10, 931 }, { 10, 10, 334 }, { 20, 10, 71 }, { 8, 11, 600 },
- { 5, 10, 765 }, { 9, 0, 769 }, { 12, 0, 185 }, { 4, 11, 790 },
- { 5, 11, 273 }, { 6, 11, 394 }, { 7, 0, 474 }, { 9, 0, 578 },
- { 4, 11, 135 }, { 6, 11, 127 }, { 7, 11, 1185 }, { 7, 11, 1511 },
- { 8, 11, 613 }, { 11, 11, 5 }, { 12, 11, 133 }, { 12, 11, 495 },
- { 12, 11, 586 }, { 14, 11, 385 }, { 15, 11, 118 }, { 17, 11, 20 },
- { 18, 11, 98 }, { 5, 10, 424 }, { 5, 0, 530 }, { 14, 0, 113 },
- { 6, 11, 230 }, { 7, 11, 961 }, { 7, 11, 1085 }, { 8, 11, 462 },
- { 7, 11, 1954 }, { 9, 11, 636 }, { 8, 10, 714 }, { 21, 11, 6 },
- { 7, 10, 685 }, { 9, 10, 420 }, { 10, 10, 269 }, { 10, 10, 285 },
- { 10, 10, 576 }, { 11, 10, 397 }, { 13, 10, 175 }, { 17, 10, 90 },
- { 4, 10, 429 }, { 5, 0, 556 }, { 5, 11, 162 }, { 8, 11, 68 },
- { 4, 11, 654 }, { 4, 11, 156 }, { 7, 11, 998 }, { 7, 11, 1045 },
- { 7, 11, 1860 }, { 9, 11, 48 }, { 9, 11, 692 }, { 11, 11, 419 },
- { 11, 11, 602 }, { 6, 0, 1317 }, { 8, 0, 16 }, { 9, 0, 825 },
- { 12, 0, 568 }, { 7, 11, 1276 }, { 8, 11, 474 }, { 9, 11, 652 },
- { 18, 0, 97 }, { 7, 10, 18 }, { 7, 10, 699 }, { 7, 10, 1966 },
- { 8, 10, 752 }, { 9, 10, 273 }, { 9, 10, 412 }, { 9, 10, 703 },
- { 10, 10, 71 }, { 10, 10, 427 }, { 10, 10, 508 }, { 10, 0, 703 },
- { 7, 11, 1454 }, { 10, 11, 703 }, { 4, 10, 53 }, { 5, 10, 186 },
- { 7, 10, 752 }, { 6, 0, 892 }, { 6, 0, 1571 }, { 8, 10, 575 },
- { 10, 10, 289 }, { 11, 10, 319 }, { 6, 0, 186 }, { 9, 0, 426 },
- { 6, 0, 1101 }, { 4, 10, 675 }, { 4, 0, 585 }, { 6, 0, 1870 },
- { 9, 0, 937 }, { 24, 11, 10 }, { 9, 11, 197 }, { 10, 11, 300 },
- { 12, 11, 473 }, { 13, 11, 90 }, { 13, 11, 405 }, { 4, 0, 93 },
- { 5, 0, 252 }, { 6, 0, 229 }, { 7, 0, 291 }, { 9, 0, 550 },
- { 11, 0, 644 }, { 9, 0, 749 }, { 9, 0, 162 }, { 6, 10, 209 },
- { 8, 10, 468 }, { 9, 10, 210 }, { 11, 10, 36 }, { 12, 10, 28 },
- { 12, 10, 630 }, { 13, 10, 21 }, { 13, 10, 349 }, { 14, 10, 7 },
- { 17, 10, 13 }, { 4, 0, 381 }, { 4, 11, 606 }, { 4, 10, 342 },
- { 7, 10, 1179 }, { 7, 11, 1587 }, { 7, 11, 1707 }, { 10, 11, 528 },
- { 11, 11, 504 }, { 12, 11, 39 }, { 13, 11, 265 }, { 13, 11, 439 },
- { 4, 10, 928 }, { 5, 10, 910 }, { 7, 10, 1838 }, { 7, 11, 1978 },
- { 8, 11, 676 }, { 6, 0, 762 }, { 6, 0, 796 }, { 6, 0, 956 },
- { 4, 10, 318 }, { 4, 10, 496 }, { 7, 10, 856 }, { 11, 10, 654 },
- { 9, 11, 242 }, { 4, 11, 361 }, { 5, 11, 315 }, { 4, 11, 461 },
- { 4, 11, 472 }, { 4, 0, 857 }, { 5, 0, 21 }, { 6, 0, 77 },
- { 6, 0, 157 }, { 7, 0, 974 }, { 7, 0, 1301 }, { 7, 0, 1339 },
- { 7, 0, 1490 }, { 7, 0, 1873 }, { 9, 0, 628 }, { 7, 10, 915 },
- { 8, 10, 247 }, { 19, 10, 0 }, { 4, 10, 202 }, { 5, 10, 382 },
- { 6, 10, 454 }, { 7, 10, 936 }, { 7, 10, 1803 }, { 8, 10, 758 },
- { 9, 10, 375 }, { 9, 10, 895 }, { 10, 10, 743 }, { 10, 10, 792 },
- { 11, 10, 978 }, { 11, 10, 1012 }, { 14, 10, 109 }, { 7, 11, 617 },
- { 10, 11, 498 }, { 11, 11, 501 }, { 12, 11, 16 }, { 12, 11, 150 },
- { 7, 10, 1150 }, { 7, 10, 1425 }, { 7, 10, 1453 }, { 10, 11, 747 },
- { 12, 10, 513 }, { 5, 11, 155 }, { 11, 0, 919 }, { 13, 0, 409 },
- { 10, 10, 791 }, { 10, 0, 633 }, { 11, 11, 729 }, { 7, 11, 163 },
- { 8, 11, 319 }, { 9, 11, 402 }, { 10, 11, 24 }, { 10, 11, 681 },
- { 11, 11, 200 }, { 11, 11, 567 }, { 12, 11, 253 }, { 12, 11, 410 },
- { 14, 11, 219 }, { 5, 11, 475 }, { 7, 11, 1780 }, { 9, 11, 230 },
- { 11, 11, 297 }, { 11, 11, 558 }, { 14, 11, 322 }, { 19, 11, 76 },
- { 7, 0, 332 }, { 6, 10, 445 }, { 9, 10, 909 }, { 7, 11, 1956 },
- { 8, 11, 274 }, { 6, 10, 578 }, { 7, 0, 1489 }, { 7, 11, 1848 },
- { 5, 11, 944 }, { 6, 11, 1769 }, { 4, 11, 144 }, { 8, 10, 766 },
- { 4, 0, 832 }, { 7, 10, 541 }, { 8, 0, 398 }, { 9, 0, 681 },
- { 11, 0, 632 }, { 8, 0, 645 }, { 9, 0, 791 }, { 10, 0, 93 },
- { 16, 0, 13 }, { 17, 0, 23 }, { 18, 0, 135 }, { 19, 0, 12 },
- { 20, 0, 1 }, { 20, 0, 12 }, { 20, 0, 14 }, { 6, 11, 247 },
- { 9, 11, 555 }, { 6, 0, 20 }, { 4, 0, 800 }, { 7, 0, 1841 },
- { 11, 10, 983 }, { 9, 10, 768 }, { 4, 10, 584 }, { 13, 11, 51 },
- { 6, 0, 1993 }, { 4, 11, 620 }, { 10, 11, 280 }, { 8, 0, 769 },
- { 11, 0, 290 }, { 11, 0, 665 }, { 7, 11, 1810 }, { 11, 11, 866 },
- { 12, 11, 103 }, { 13, 11, 495 }, { 17, 11, 67 }, { 19, 11, 74 },
- { 6, 0, 1426 }, { 11, 0, 60 }, { 4, 10, 326 }, { 7, 10, 1770 },
- { 7, 0, 1874 }, { 9, 0, 641 }, { 4, 10, 226 }, { 6, 0, 644 },
- { 5, 10, 426 }, { 8, 10, 30 }, { 9, 10, 2 }, { 11, 10, 549 },
- { 19, 10, 122 }, { 5, 11, 428 }, { 10, 11, 442 }, { 7, 11, 1871 },
- { 7, 0, 1757 }, { 19, 10, 117 }, { 7, 0, 937 }, { 7, 0, 1652 },
- { 6, 0, 654 }, { 6, 0, 1476 }, { 5, 11, 99 }, { 7, 0, 527 },
- { 4, 10, 345 }, { 4, 10, 385 }, { 4, 11, 397 }, { 7, 10, 265 },
- { 7, 10, 587 }, { 4, 0, 579 }, { 5, 0, 226 }, { 5, 0, 323 },
- { 7, 0, 960 }, { 6, 0, 1486 }, { 8, 11, 502 }, { 16, 11, 9 },
- { 4, 10, 347 }, { 5, 10, 423 }, { 5, 10, 996 }, { 7, 10, 1329 },
- { 7, 11, 727 }, { 18, 11, 73 }, { 4, 11, 485 }, { 7, 11, 353 },
- { 7, 10, 1259 }, { 7, 11, 1523 }, { 9, 10, 125 }, { 11, 10, 65 },
- { 6, 0, 325 }, { 5, 10, 136 }, { 6, 11, 366 }, { 7, 11, 1384 },
- { 7, 11, 1601 }, { 8, 10, 644 }, { 10, 11, 160 }, { 6, 0, 1345 },
- { 9, 11, 282 }, { 18, 0, 91 }, { 19, 0, 70 }, { 8, 0, 404 },
- { 4, 11, 157 }, { 5, 11, 471 }, { 5, 0, 973 }, { 6, 0, 135 },
- { 7, 0, 1176 }, { 8, 11, 116 }, { 11, 11, 551 }, { 14, 11, 159 },
- { 4, 0, 549 }, { 4, 10, 433 }, { 5, 10, 719 }, { 8, 0, 976 },
- { 5, 11, 160 }, { 7, 11, 363 }, { 7, 11, 589 }, { 10, 11, 170 },
- { 13, 11, 55 }, { 16, 0, 21 }, { 16, 0, 51 }, { 7, 0, 314 },
- { 7, 10, 1363 }, { 4, 11, 108 }, { 7, 11, 405 }, { 10, 11, 491 },
- { 11, 11, 498 }, { 18, 0, 4 }, { 4, 10, 555 }, { 8, 10, 536 },
- { 10, 10, 288 }, { 11, 10, 1005 }, { 7, 11, 1005 }, { 6, 0, 281 },
- { 7, 0, 6 }, { 8, 0, 282 }, { 8, 0, 480 }, { 8, 0, 499 },
- { 9, 0, 198 }, { 10, 0, 143 }, { 10, 0, 169 }, { 10, 0, 211 },
- { 10, 0, 417 }, { 10, 0, 574 }, { 11, 0, 147 }, { 11, 0, 395 },
- { 12, 0, 75 }, { 12, 0, 407 }, { 12, 0, 608 }, { 13, 0, 500 },
- { 14, 0, 251 }, { 6, 0, 1093 }, { 6, 0, 1405 }, { 9, 10, 370 },
- { 10, 10, 90 }, { 4, 11, 926 }, { 5, 11, 983 }, { 7, 0, 1776 },
- { 6, 0, 1528 }, { 4, 0, 419 }, { 4, 11, 538 }, { 6, 11, 294 },
- { 7, 11, 1267 }, { 8, 11, 624 }, { 7, 11, 1772 }, { 10, 11, 301 },
- { 4, 10, 257 }, { 7, 10, 2031 }, { 4, 0, 138 }, { 7, 0, 1012 },
- { 7, 0, 1280 }, { 9, 0, 76 }, { 7, 10, 1768 }, { 4, 11, 757 },
- { 5, 0, 29 }, { 12, 0, 638 }, { 7, 11, 655 }, { 7, 11, 1844 },
- { 7, 0, 1418 }, { 6, 11, 257 }, { 7, 11, 1522 }, { 8, 11, 469 },
- { 10, 11, 47 }, { 14, 11, 278 }, { 6, 10, 83 }, { 6, 10, 1733 },
- { 7, 10, 1389 }, { 11, 11, 204 }, { 11, 11, 243 }, { 12, 11, 293 },
- { 7, 11, 1875 }, { 6, 0, 1710 }, { 7, 0, 2038 }, { 9, 11, 299 },
- { 4, 0, 17 }, { 5, 0, 23 }, { 7, 0, 995 }, { 11, 0, 383 },
- { 11, 0, 437 }, { 12, 0, 460 }, { 12, 0, 532 }, { 5, 0, 862 },
- { 9, 10, 696 }, { 6, 0, 592 }, { 10, 0, 946 }, { 10, 11, 599 },
- { 7, 10, 1718 }, { 9, 10, 95 }, { 9, 10, 274 }, { 10, 10, 279 },
- { 10, 10, 317 }, { 10, 10, 420 }, { 11, 10, 303 }, { 11, 10, 808 },
- { 12, 10, 134 }, { 12, 10, 367 }, { 13, 10, 149 }, { 13, 10, 347 },
- { 14, 10, 349 }, { 14, 10, 406 }, { 18, 10, 22 }, { 18, 10, 89 },
- { 18, 10, 122 }, { 19, 10, 47 }, { 8, 0, 70 }, { 12, 0, 171 },
- { 13, 0, 272 }, { 5, 10, 26 }, { 4, 10, 550 }, { 9, 0, 812 },
- { 10, 0, 233 }, { 11, 0, 76 }, { 6, 0, 988 }, { 6, 0, 442 },
- { 8, 10, 822 }, { 7, 0, 896 }, { 4, 10, 902 }, { 5, 10, 809 },
- { 6, 10, 122 }, { 5, 11, 150 }, { 7, 11, 106 }, { 8, 11, 603 },
- { 9, 11, 593 }, { 9, 11, 634 }, { 10, 11, 44 }, { 10, 11, 173 },
- { 11, 11, 462 }, { 11, 11, 515 }, { 13, 11, 216 }, { 13, 11, 288 },
- { 14, 11, 400 }, { 8, 0, 483 }, { 7, 10, 262 }, { 6, 0, 1709 },
- { 5, 10, 620 }, { 4, 10, 34 }, { 5, 10, 574 }, { 7, 10, 279 },
- { 7, 10, 1624 }, { 8, 10, 601 }, { 9, 10, 170 }, { 19, 0, 119 },
- { 12, 11, 108 }, { 13, 11, 291 }, { 11, 0, 69 }, { 12, 0, 105 },
- { 12, 0, 117 }, { 13, 0, 213 }, { 14, 0, 13 }, { 14, 0, 62 },
- { 14, 0, 177 }, { 14, 0, 421 }, { 15, 0, 19 }, { 18, 0, 141 },
- { 9, 0, 309 }, { 11, 11, 278 }, { 14, 11, 73 }, { 7, 0, 608 },
- { 7, 0, 976 }, { 9, 0, 146 }, { 10, 0, 206 }, { 10, 0, 596 },
- { 13, 0, 218 }, { 14, 0, 153 }, { 5, 10, 332 }, { 6, 10, 261 },
- { 8, 10, 182 }, { 11, 10, 943 }, { 4, 11, 493 }, { 16, 11, 55 },
- { 6, 10, 1721 }, { 4, 0, 768 }, { 4, 10, 933 }, { 5, 10, 880 },
- { 7, 11, 555 }, { 7, 11, 1316 }, { 7, 11, 1412 }, { 7, 11, 1839 },
- { 9, 11, 192 }, { 9, 11, 589 }, { 11, 11, 241 }, { 11, 11, 676 },
- { 11, 11, 811 }, { 11, 11, 891 }, { 12, 11, 140 }, { 12, 11, 346 },
- { 12, 11, 479 }, { 13, 11, 30 }, { 13, 11, 49 }, { 13, 11, 381 },
- { 14, 11, 188 }, { 15, 11, 150 }, { 16, 11, 76 }, { 18, 11, 30 },
- { 20, 11, 52 }, { 4, 0, 518 }, { 7, 0, 1136 }, { 6, 11, 568 },
- { 7, 11, 112 }, { 7, 11, 1804 }, { 8, 11, 362 }, { 8, 11, 410 },
- { 8, 11, 830 }, { 9, 11, 514 }, { 11, 11, 649 }, { 14, 11, 157 },
- { 7, 11, 673 }, { 8, 0, 689 }, { 9, 0, 863 }, { 4, 0, 18 },
- { 7, 0, 145 }, { 7, 0, 444 }, { 7, 0, 1278 }, { 8, 0, 49 },
- { 8, 0, 400 }, { 9, 0, 71 }, { 9, 0, 250 }, { 10, 0, 459 },
- { 12, 0, 160 }, { 16, 0, 24 }, { 4, 11, 625 }, { 12, 0, 1020 },
- { 4, 0, 997 }, { 6, 0, 1946 }, { 6, 0, 1984 }, { 6, 0, 1998 },
- { 6, 11, 16 }, { 6, 11, 158 }, { 7, 11, 43 }, { 7, 11, 129 },
- { 7, 11, 181 }, { 8, 11, 276 }, { 8, 11, 377 }, { 10, 11, 523 },
- { 11, 11, 816 }, { 12, 11, 455 }, { 13, 11, 303 }, { 14, 11, 135 },
- { 5, 10, 812 }, { 6, 0, 658 }, { 4, 11, 1 }, { 7, 11, 1143 },
- { 7, 11, 1463 }, { 8, 11, 61 }, { 9, 11, 207 }, { 9, 11, 390 },
- { 9, 11, 467 }, { 11, 11, 836 }, { 22, 11, 26 }, { 12, 0, 106 },
- { 6, 0, 1827 }, { 10, 0, 931 }, { 18, 0, 166 }, { 20, 0, 114 },
- { 4, 10, 137 }, { 7, 10, 1178 }, { 7, 11, 1319 }, { 7, 10, 1520 },
- { 5, 0, 1010 }, { 4, 11, 723 }, { 5, 11, 895 }, { 7, 11, 1031 },
- { 8, 11, 199 }, { 8, 11, 340 }, { 9, 11, 153 }, { 9, 11, 215 },
- { 10, 11, 21 }, { 10, 11, 59 }, { 10, 11, 80 }, { 10, 11, 224 },
- { 11, 11, 229 }, { 11, 11, 652 }, { 12, 11, 192 }, { 13, 11, 146 },
- { 14, 11, 91 }, { 4, 11, 295 }, { 6, 11, 619 }, { 7, 11, 898 },
- { 7, 11, 1092 }, { 8, 11, 485 }, { 18, 11, 28 }, { 19, 11, 116 },
- { 9, 11, 51 }, { 6, 10, 1661 }, { 7, 10, 1975 }, { 7, 10, 2009 },
- { 7, 10, 2011 }, { 5, 11, 309 }, { 12, 11, 211 }, { 5, 0, 87 },
- { 7, 0, 313 }, { 7, 0, 1103 }, { 10, 0, 208 }, { 10, 0, 582 },
- { 11, 0, 389 }, { 11, 0, 813 }, { 12, 0, 385 }, { 13, 0, 286 },
- { 14, 0, 124 }, { 18, 0, 108 }, { 5, 11, 125 }, { 8, 11, 77 },
- { 10, 11, 15 }, { 4, 0, 267 }, { 5, 0, 703 }, { 9, 11, 155 },
- { 5, 11, 439 }, { 11, 11, 164 }, { 12, 11, 76 }, { 9, 0, 496 },
- { 5, 10, 89 }, { 7, 10, 1915 }, { 9, 10, 185 }, { 9, 10, 235 },
- { 10, 10, 64 }, { 10, 10, 270 }, { 10, 10, 403 }, { 10, 10, 469 },
- { 10, 10, 529 }, { 10, 10, 590 }, { 11, 10, 140 }, { 11, 10, 860 },
- { 13, 10, 1 }, { 13, 10, 422 }, { 14, 10, 341 }, { 14, 10, 364 },
- { 17, 10, 93 }, { 18, 10, 113 }, { 19, 10, 97 }, { 19, 10, 113 },
- { 5, 10, 695 }, { 7, 0, 1121 }, { 5, 10, 6 }, { 6, 10, 183 },
- { 7, 10, 680 }, { 7, 10, 978 }, { 7, 10, 1013 }, { 7, 10, 1055 },
- { 12, 10, 230 }, { 13, 10, 172 }, { 18, 10, 29 }, { 4, 11, 8 },
- { 7, 11, 1152 }, { 7, 11, 1153 }, { 7, 11, 1715 }, { 9, 11, 374 },
- { 10, 11, 478 }, { 11, 11, 648 }, { 7, 11, 1099 }, { 6, 10, 29 },
- { 11, 10, 63 }, { 4, 0, 561 }, { 10, 0, 249 }, { 11, 0, 209 },
- { 4, 0, 760 }, { 7, 11, 799 }, { 10, 11, 511 }, { 8, 11, 87 },
- { 9, 0, 154 }, { 12, 0, 485 }, { 8, 0, 255 }, { 4, 0, 323 },
- { 12, 0, 419 }, { 4, 10, 311 }, { 6, 10, 1740 }, { 4, 0, 368 },
- { 7, 0, 641 }, { 7, 10, 170 }, { 8, 10, 90 }, { 8, 10, 177 },
- { 8, 10, 415 }, { 11, 10, 714 }, { 14, 10, 281 }, { 4, 11, 69 },
- { 5, 11, 122 }, { 9, 11, 656 }, { 10, 11, 464 }, { 5, 11, 849 },
- { 6, 11, 1633 }, { 8, 0, 522 }, { 14, 0, 328 }, { 11, 10, 91 },
- { 13, 10, 129 }, { 15, 10, 101 }, { 17, 10, 125 }, { 7, 0, 562 },
- { 8, 0, 551 }, { 4, 10, 494 }, { 6, 10, 74 }, { 7, 10, 44 },
- { 11, 11, 499 }, { 12, 10, 17 }, { 15, 10, 5 }, { 20, 10, 11 },
- { 4, 10, 276 }, { 5, 10, 296 }, { 9, 0, 92 }, { 19, 0, 91 },
- { 4, 10, 7 }, { 5, 10, 90 }, { 5, 10, 158 }, { 6, 10, 542 },
- { 7, 10, 221 }, { 7, 10, 1574 }, { 9, 10, 490 }, { 10, 10, 540 },
- { 11, 10, 443 }, { 11, 10, 757 }, { 6, 0, 525 }, { 6, 0, 1976 },
- { 8, 0, 806 }, { 9, 0, 876 }, { 12, 0, 284 }, { 5, 11, 859 },
- { 7, 10, 588 }, { 7, 11, 1160 }, { 8, 11, 107 }, { 9, 10, 175 },
- { 9, 11, 291 }, { 9, 11, 439 }, { 10, 10, 530 }, { 10, 11, 663 },
- { 11, 11, 609 }, { 12, 11, 197 }, { 7, 11, 168 }, { 13, 11, 196 },
- { 13, 11, 237 }, { 11, 0, 958 }, { 5, 0, 594 }, { 7, 10, 580 },
- { 7, 10, 88 }, { 8, 10, 627 }, { 6, 0, 479 }, { 6, 0, 562 },
- { 7, 0, 1060 }, { 13, 0, 6 }, { 5, 10, 872 }, { 6, 10, 57 },
- { 7, 10, 471 }, { 9, 10, 447 }, { 9, 10, 454 }, { 8, 11, 413 },
- { 17, 11, 19 }, { 4, 11, 117 }, { 6, 11, 372 }, { 7, 11, 1905 },
- { 14, 11, 323 }, { 4, 11, 722 }, { 11, 11, 471 }, { 17, 0, 61 },
- { 5, 10, 31 }, { 6, 10, 614 }, { 8, 10, 330 }, { 12, 10, 477 },
- { 7, 10, 1200 }, { 10, 10, 460 }, { 6, 10, 424 }, { 7, 10, 1866 },
- { 6, 0, 1641 }, { 8, 0, 820 }, { 6, 0, 1556 }, { 6, 0, 1618 },
- { 9, 11, 5 }, { 12, 11, 216 }, { 12, 11, 294 }, { 12, 11, 298 },
- { 12, 11, 400 }, { 12, 11, 518 }, { 13, 11, 229 }, { 15, 11, 139 },
- { 15, 11, 155 }, { 16, 11, 79 }, { 4, 0, 302 }, { 7, 0, 1766 },
- { 5, 10, 13 }, { 6, 10, 142 }, { 6, 0, 148 }, { 7, 0, 1313 },
- { 7, 10, 116 }, { 8, 10, 322 }, { 8, 10, 755 }, { 9, 10, 548 },
- { 10, 10, 714 }, { 11, 10, 884 }, { 13, 10, 324 }, { 9, 0, 676 },
- { 9, 11, 88 }, { 11, 11, 270 }, { 5, 11, 12 }, { 7, 11, 375 },
- { 9, 11, 438 }, { 6, 0, 1674 }, { 7, 10, 1472 }, { 7, 10, 1554 },
- { 11, 0, 178 }, { 7, 10, 1071 }, { 7, 10, 1541 }, { 7, 10, 1767 },
- { 7, 10, 1806 }, { 11, 10, 162 }, { 11, 10, 242 }, { 12, 10, 605 },
- { 15, 10, 26 }, { 16, 10, 44 }, { 6, 0, 389 }, { 7, 0, 149 },
- { 9, 0, 142 }, { 10, 0, 94 }, { 12, 11, 71 }, { 17, 10, 115 },
- { 6, 0, 8 }, { 7, 0, 1881 }, { 8, 0, 91 }, { 11, 11, 966 },
- { 12, 11, 287 }, { 13, 11, 342 }, { 13, 11, 402 }, { 15, 11, 110 },
- { 15, 11, 163 }, { 4, 11, 258 }, { 8, 11, 639 }, { 6, 11, 22 },
- { 7, 11, 903 }, { 10, 11, 577 }, { 5, 11, 681 }, { 7, 10, 1111 },
- { 7, 11, 1286 }, { 9, 0, 112 }, { 8, 10, 1 }, { 10, 10, 326 },
- { 5, 10, 488 }, { 6, 10, 527 }, { 7, 10, 489 }, { 7, 10, 1636 },
- { 8, 10, 121 }, { 8, 10, 144 }, { 8, 10, 359 }, { 9, 10, 193 },
- { 9, 10, 241 }, { 9, 10, 336 }, { 9, 10, 882 }, { 11, 10, 266 },
- { 11, 10, 372 }, { 11, 10, 944 }, { 12, 10, 401 }, { 12, 10, 641 },
- { 4, 11, 664 }, { 5, 11, 804 }, { 6, 0, 747 }, { 6, 0, 1015 },
- { 7, 0, 1746 }, { 9, 10, 31 }, { 10, 10, 244 }, { 10, 10, 699 },
- { 12, 10, 149 }, { 13, 10, 497 }, { 5, 10, 377 }, { 7, 0, 24 },
- { 6, 0, 1352 }, { 5, 11, 32 }, { 17, 10, 101 }, { 7, 0, 1530 },
- { 10, 0, 158 }, { 13, 0, 13 }, { 13, 0, 137 }, { 13, 0, 258 },
- { 14, 0, 111 }, { 14, 0, 225 }, { 14, 0, 253 }, { 14, 0, 304 },
- { 14, 0, 339 }, { 14, 0, 417 }, { 18, 0, 33 }, { 4, 0, 503 },
- { 7, 0, 1661 }, { 5, 0, 130 }, { 6, 0, 845 }, { 7, 0, 1314 },
- { 9, 0, 610 }, { 10, 0, 718 }, { 11, 0, 601 }, { 11, 0, 819 },
- { 11, 0, 946 }, { 12, 0, 536 }, { 10, 0, 149 }, { 11, 0, 280 },
- { 14, 0, 336 }, { 6, 0, 1401 }, { 7, 0, 1946 }, { 8, 0, 663 },
- { 16, 0, 8 }, { 6, 0, 1607 }, { 7, 10, 2023 }, { 4, 11, 289 },
- { 7, 11, 629 }, { 7, 11, 1698 }, { 7, 11, 1711 }, { 12, 11, 215 },
- { 6, 11, 450 }, { 8, 11, 109 }, { 10, 0, 882 }, { 10, 0, 883 },
- { 10, 0, 914 }, { 10, 0, 928 }, { 5, 10, 843 }, { 8, 11, 705 },
- { 4, 10, 554 }, { 5, 10, 536 }, { 5, 0, 417 }, { 9, 10, 79 },
- { 11, 10, 625 }, { 17, 10, 7 }, { 7, 11, 1238 }, { 14, 11, 37 },
- { 4, 0, 392 }, { 7, 0, 1597 }, { 5, 0, 433 }, { 9, 0, 633 },
- { 11, 0, 629 }, { 4, 10, 424 }, { 7, 10, 336 }, { 8, 10, 785 },
- { 6, 11, 355 }, { 6, 0, 234 }, { 7, 0, 769 }, { 9, 0, 18 },
- { 10, 0, 358 }, { 4, 10, 896 }, { 6, 10, 1777 }, { 10, 11, 323 },
- { 7, 0, 140 }, { 7, 0, 1950 }, { 8, 0, 680 }, { 11, 0, 817 },
- { 19, 0, 88 }, { 7, 0, 1222 }, { 10, 0, 386 }, { 11, 11, 908 },
- { 11, 0, 249 }, { 12, 0, 313 }, { 16, 0, 66 }, { 17, 0, 26 },
- { 6, 0, 5 }, { 7, 10, 750 }, { 9, 10, 223 }, { 11, 10, 27 },
- { 11, 10, 466 }, { 12, 10, 624 }, { 14, 10, 265 }, { 18, 10, 61 },
- { 6, 11, 26 }, { 6, 0, 1216 }, { 5, 0, 963 }, { 6, 0, 1773 },
- { 4, 11, 414 }, { 5, 11, 467 }, { 9, 11, 654 }, { 10, 11, 451 },
- { 12, 11, 59 }, { 13, 11, 375 }, { 7, 11, 17 }, { 4, 10, 603 },
- { 5, 10, 661 }, { 4, 10, 11 }, { 6, 10, 128 }, { 7, 10, 231 },
- { 7, 10, 1533 }, { 10, 10, 725 }, { 7, 11, 955 }, { 7, 0, 180 },
- { 8, 0, 509 }, { 8, 0, 792 }, { 4, 10, 476 }, { 4, 0, 1002 },
- { 5, 11, 538 }, { 7, 10, 1807 }, { 4, 0, 931 }, { 7, 0, 943 },
- { 11, 0, 614 }, { 12, 0, 747 }, { 7, 0, 1837 }, { 9, 10, 20 },
- { 10, 10, 324 }, { 10, 10, 807 }, { 11, 10, 488 }, { 6, 0, 641 },
- { 6, 11, 280 }, { 10, 11, 502 }, { 11, 11, 344 }, { 12, 11, 38 },
- { 5, 11, 45 }, { 7, 11, 1161 }, { 11, 11, 448 }, { 11, 11, 880 },
- { 13, 11, 139 }, { 13, 11, 407 }, { 15, 11, 16 }, { 17, 11, 95 },
- { 18, 11, 66 }, { 18, 11, 88 }, { 18, 11, 123 }, { 21, 11, 7 },
- { 9, 0, 280 }, { 10, 0, 134 }, { 22, 0, 22 }, { 23, 0, 5 },
- { 23, 0, 29 }, { 8, 11, 777 }, { 4, 0, 90 }, { 5, 0, 545 },
- { 7, 0, 754 }, { 9, 0, 186 }, { 10, 0, 72 }, { 10, 0, 782 },
- { 11, 0, 577 }, { 11, 0, 610 }, { 11, 0, 960 }, { 12, 0, 354 },
- { 12, 0, 362 }, { 12, 0, 595 }, { 4, 11, 410 }, { 7, 11, 521 },
- { 7, 11, 1778 }, { 5, 10, 112 }, { 6, 10, 103 }, { 6, 10, 150 },
- { 10, 10, 356 }, { 4, 0, 742 }, { 7, 0, 151 }, { 9, 0, 329 },
- { 11, 0, 254 }, { 8, 0, 853 }, { 8, 0, 881 }, { 8, 0, 911 },
- { 8, 0, 912 }, { 10, 0, 872 }, { 12, 0, 741 }, { 12, 0, 742 },
- { 24, 0, 18 }, { 4, 11, 573 }, { 8, 11, 655 }, { 6, 0, 921 },
- { 6, 0, 934 }, { 9, 0, 187 }, { 10, 0, 36 }, { 11, 0, 1016 },
- { 17, 0, 44 }, { 18, 0, 64 }, { 7, 0, 833 }, { 8, 0, 517 },
- { 4, 0, 506 }, { 5, 0, 295 }, { 7, 0, 1680 }, { 4, 10, 708 },
- { 8, 10, 15 }, { 9, 10, 50 }, { 9, 10, 386 }, { 11, 10, 18 },
- { 11, 10, 529 }, { 12, 10, 228 }, { 7, 0, 251 }, { 7, 0, 1701 },
- { 8, 0, 436 }, { 4, 10, 563 }, { 7, 10, 592 }, { 7, 10, 637 },
- { 7, 10, 770 }, { 8, 10, 463 }, { 9, 10, 60 }, { 9, 10, 335 },
- { 9, 10, 904 }, { 10, 10, 73 }, { 11, 10, 434 }, { 12, 10, 585 },
- { 13, 10, 331 }, { 18, 10, 110 }, { 20, 10, 60 }, { 4, 10, 502 },
- { 8, 0, 584 }, { 6, 10, 347 }, { 10, 10, 161 }, { 7, 0, 987 },
- { 9, 0, 688 }, { 10, 0, 522 }, { 11, 0, 788 }, { 12, 0, 137 },
- { 12, 0, 566 }, { 14, 0, 9 }, { 14, 0, 24 }, { 14, 0, 64 },
- { 7, 11, 899 }, { 14, 11, 325 }, { 4, 0, 214 }, { 5, 0, 500 },
- { 5, 10, 102 }, { 6, 10, 284 }, { 7, 10, 1079 }, { 7, 10, 1423 },
- { 7, 10, 1702 }, { 8, 10, 470 }, { 9, 10, 554 }, { 9, 10, 723 },
- { 11, 10, 333 }, { 7, 10, 246 }, { 7, 10, 840 }, { 6, 10, 10 },
- { 8, 10, 571 }, { 9, 10, 739 }, { 15, 10, 91 }, { 5, 10, 626 },
- { 18, 0, 195 }, { 6, 0, 1775 }, { 7, 0, 389 }, { 7, 0, 700 },
- { 7, 0, 940 }, { 8, 0, 514 }, { 9, 0, 116 }, { 9, 0, 535 },
- { 10, 0, 118 }, { 11, 0, 107 }, { 11, 0, 148 }, { 11, 0, 922 },
- { 12, 0, 254 }, { 12, 0, 421 }, { 14, 0, 238 }, { 5, 10, 18 },
- { 6, 10, 526 }, { 13, 10, 24 }, { 13, 10, 110 }, { 19, 10, 5 },
- { 19, 10, 44 }, { 4, 0, 743 }, { 11, 0, 292 }, { 4, 10, 309 },
- { 5, 10, 462 }, { 7, 10, 970 }, { 7, 10, 1097 }, { 22, 10, 30 },
- { 22, 10, 33 }, { 11, 11, 338 }, { 7, 11, 1598 }, { 7, 0, 1283 },
- { 9, 0, 227 }, { 11, 0, 325 }, { 11, 0, 408 }, { 14, 0, 180 },
- { 18, 0, 47 }, { 4, 0, 953 }, { 6, 0, 1805 }, { 6, 0, 1814 },
- { 6, 0, 1862 }, { 12, 0, 774 }, { 6, 11, 611 }, { 7, 11, 1733 },
- { 7, 11, 1464 }, { 5, 0, 81 }, { 7, 0, 146 }, { 7, 0, 1342 },
- { 8, 0, 53 }, { 8, 0, 561 }, { 8, 0, 694 }, { 8, 0, 754 },
- { 9, 0, 115 }, { 9, 0, 179 }, { 9, 0, 894 }, { 10, 0, 462 },
- { 10, 0, 813 }, { 11, 0, 230 }, { 11, 0, 657 }, { 11, 0, 699 },
- { 11, 0, 748 }, { 12, 0, 119 }, { 12, 0, 200 }, { 12, 0, 283 },
- { 14, 0, 273 }, { 5, 0, 408 }, { 6, 0, 789 }, { 6, 0, 877 },
- { 6, 0, 1253 }, { 6, 0, 1413 }, { 9, 0, 747 }, { 6, 10, 1704 },
- { 7, 11, 663 }, { 6, 0, 1910 }, { 6, 0, 1915 }, { 6, 0, 1923 },
- { 9, 0, 913 }, { 9, 0, 928 }, { 9, 0, 950 }, { 9, 0, 954 },
- { 9, 0, 978 }, { 9, 0, 993 }, { 12, 0, 812 }, { 12, 0, 819 },
- { 12, 0, 831 }, { 12, 0, 833 }, { 12, 0, 838 }, { 12, 0, 909 },
- { 12, 0, 928 }, { 12, 0, 931 }, { 12, 0, 950 }, { 15, 0, 186 },
- { 15, 0, 187 }, { 15, 0, 195 }, { 15, 0, 196 }, { 15, 0, 209 },
- { 15, 0, 215 }, { 15, 0, 236 }, { 15, 0, 241 }, { 15, 0, 249 },
- { 15, 0, 253 }, { 18, 0, 180 }, { 18, 0, 221 }, { 18, 0, 224 },
- { 18, 0, 227 }, { 18, 0, 229 }, { 21, 0, 60 }, { 7, 0, 1826 },
- { 7, 0, 1938 }, { 11, 0, 490 }, { 18, 0, 143 }, { 5, 10, 86 },
- { 7, 10, 743 }, { 9, 10, 85 }, { 10, 10, 281 }, { 10, 10, 432 },
- { 12, 10, 251 }, { 13, 10, 118 }, { 14, 10, 378 }, { 5, 10, 524 },
- { 5, 10, 744 }, { 13, 11, 442 }, { 10, 10, 107 }, { 12, 10, 436 },
- { 7, 11, 503 }, { 6, 0, 1162 }, { 4, 10, 927 }, { 7, 0, 30 },
- { 8, 0, 86 }, { 8, 0, 315 }, { 8, 0, 700 }, { 9, 0, 576 },
- { 9, 0, 858 }, { 10, 0, 414 }, { 11, 0, 310 }, { 11, 0, 888 },
- { 11, 0, 904 }, { 12, 0, 361 }, { 13, 0, 248 }, { 13, 0, 371 },
- { 14, 0, 142 }, { 12, 10, 670 }, { 18, 10, 94 }, { 6, 0, 721 },
- { 4, 11, 113 }, { 5, 11, 163 }, { 5, 11, 735 }, { 7, 11, 1009 },
- { 7, 10, 1149 }, { 9, 11, 9 }, { 9, 10, 156 }, { 9, 11, 771 },
- { 12, 11, 90 }, { 13, 11, 138 }, { 13, 11, 410 }, { 15, 11, 128 },
- { 10, 0, 839 }, { 5, 10, 778 }, { 9, 0, 617 }, { 5, 10, 502 },
- { 8, 10, 196 }, { 10, 10, 283 }, { 11, 10, 406 }, { 6, 0, 428 },
- { 7, 0, 524 }, { 8, 0, 169 }, { 8, 0, 234 }, { 9, 0, 480 },
- { 10, 0, 646 }, { 5, 10, 855 }, { 6, 0, 1648 }, { 7, 0, 1205 },
- { 10, 0, 637 }, { 7, 0, 1596 }, { 4, 11, 935 }, { 5, 11, 823 },
- { 5, 11, 269 }, { 7, 11, 434 }, { 7, 11, 891 }, { 8, 11, 339 },
- { 9, 11, 702 }, { 11, 11, 594 }, { 11, 11, 718 }, { 17, 11, 100 },
- { 7, 11, 878 }, { 9, 11, 485 }, { 13, 11, 264 }, { 4, 0, 266 },
- { 8, 0, 4 }, { 9, 0, 39 }, { 10, 0, 166 }, { 11, 0, 918 },
- { 12, 0, 635 }, { 20, 0, 10 }, { 22, 0, 27 }, { 22, 0, 43 },
- { 22, 0, 52 }, { 6, 11, 1713 }, { 7, 10, 1400 }, { 9, 10, 446 },
- { 10, 10, 45 }, { 7, 11, 900 }, { 4, 0, 862 }, { 6, 0, 1554 },
- { 7, 11, 1033 }, { 19, 0, 16 }, { 19, 11, 16 }, { 7, 11, 1208 },
- { 7, 0, 157 }, { 8, 0, 279 }, { 6, 0, 604 }, { 8, 0, 391 },
- { 13, 10, 455 }, { 15, 10, 99 }, { 15, 10, 129 }, { 16, 10, 68 },
- { 7, 10, 172 }, { 7, 0, 945 }, { 11, 0, 713 }, { 11, 0, 744 },
- { 4, 0, 973 }, { 10, 0, 877 }, { 10, 0, 937 }, { 10, 0, 938 },
- { 12, 0, 711 }, { 11, 0, 1022 }, { 4, 10, 568 }, { 14, 11, 143 },
- { 4, 0, 567 }, { 9, 0, 859 }, { 4, 10, 732 }, { 7, 0, 1846 },
- { 8, 0, 628 }, { 8, 10, 733 }, { 5, 0, 762 }, { 4, 10, 428 },
- { 7, 10, 1789 }, { 10, 0, 784 }, { 13, 0, 191 }, { 7, 10, 2015 },
- { 12, 10, 665 }, { 5, 0, 298 }, { 7, 0, 633 }, { 7, 0, 905 },
- { 7, 0, 909 }, { 7, 0, 1538 }, { 9, 0, 767 }, { 12, 0, 636 },
- { 10, 10, 806 }, { 4, 0, 795 }, { 11, 0, 301 }, { 7, 0, 1970 },
- { 5, 11, 625 }, { 7, 11, 1617 }, { 7, 11, 275 }, { 7, 11, 37 },
- { 8, 11, 425 }, { 8, 11, 693 }, { 9, 11, 720 }, { 10, 11, 380 },
- { 10, 11, 638 }, { 11, 11, 273 }, { 11, 11, 307 }, { 11, 11, 473 },
- { 12, 11, 61 }, { 15, 11, 43 }, { 7, 11, 198 }, { 6, 0, 1236 },
- { 7, 0, 369 }, { 12, 0, 644 }, { 12, 0, 645 }, { 16, 0, 90 },
- { 19, 0, 15 }, { 21, 0, 27 }, { 6, 0, 71 }, { 7, 0, 845 },
- { 8, 0, 160 }, { 9, 0, 318 }, { 6, 10, 1623 }, { 6, 10, 1681 },
- { 6, 0, 1447 }, { 6, 0, 1255 }, { 10, 0, 735 }, { 8, 0, 76 },
- { 4, 11, 168 }, { 6, 10, 1748 }, { 8, 10, 715 }, { 9, 10, 802 },
- { 10, 10, 46 }, { 10, 10, 819 }, { 13, 10, 308 }, { 14, 10, 351 },
- { 14, 10, 363 }, { 18, 10, 67 }, { 7, 11, 91 }, { 6, 0, 474 },
- { 4, 10, 63 }, { 5, 10, 347 }, { 5, 10, 749 }, { 10, 0, 841 },
- { 5, 10, 366 }, { 6, 0, 836 }, { 4, 11, 225 }, { 7, 0, 1622 },
- { 7, 10, 89 }, { 12, 0, 735 }, { 6, 0, 1601 }, { 10, 11, 145 },
- { 6, 0, 1390 }, { 9, 0, 804 }, { 14, 0, 394 }, { 6, 11, 15 },
- { 7, 11, 70 }, { 10, 11, 240 }, { 19, 11, 93 }, { 6, 0, 96 },
- { 7, 0, 1426 }, { 4, 0, 651 }, { 5, 0, 289 }, { 7, 11, 956 },
- { 7, 10, 977 }, { 7, 11, 1157 }, { 7, 11, 1506 }, { 7, 11, 1606 },
- { 7, 11, 1615 }, { 7, 11, 1619 }, { 7, 11, 1736 }, { 7, 11, 1775 },
- { 8, 11, 590 }, { 9, 11, 324 }, { 9, 11, 736 }, { 9, 11, 774 },
- { 9, 11, 776 }, { 9, 11, 784 }, { 10, 11, 567 }, { 10, 11, 708 },
- { 11, 11, 518 }, { 11, 11, 613 }, { 11, 11, 695 }, { 11, 11, 716 },
- { 11, 11, 739 }, { 11, 11, 770 }, { 11, 11, 771 }, { 11, 11, 848 },
- { 11, 11, 857 }, { 11, 11, 931 }, { 11, 11, 947 }, { 12, 11, 326 },
- { 12, 11, 387 }, { 12, 11, 484 }, { 12, 11, 528 }, { 12, 11, 552 },
- { 12, 11, 613 }, { 13, 11, 189 }, { 13, 11, 256 }, { 13, 11, 340 },
- { 13, 11, 432 }, { 13, 11, 436 }, { 13, 11, 440 }, { 13, 11, 454 },
- { 14, 11, 174 }, { 14, 11, 220 }, { 14, 11, 284 }, { 14, 11, 390 },
- { 17, 11, 121 }, { 7, 0, 688 }, { 8, 0, 35 }, { 9, 0, 511 },
- { 10, 0, 767 }, { 19, 0, 118 }, { 6, 0, 667 }, { 4, 0, 513 },
- { 5, 10, 824 }, { 5, 10, 941 }, { 7, 10, 440 }, { 8, 10, 230 },
- { 11, 10, 106 }, { 6, 0, 2034 }, { 7, 11, 1399 }, { 15, 11, 66 },
- { 7, 11, 1529 }, { 4, 11, 145 }, { 6, 11, 176 }, { 7, 11, 395 },
- { 9, 11, 562 }, { 16, 11, 28 }, { 4, 11, 501 }, { 4, 0, 704 },
- { 6, 0, 1524 }, { 7, 0, 1078 }, { 6, 11, 464 }, { 6, 11, 509 },
- { 10, 11, 82 }, { 20, 11, 91 }, { 23, 11, 13 }, { 4, 0, 720 },
- { 5, 0, 306 }, { 5, 0, 431 }, { 7, 0, 1196 }, { 4, 10, 914 },
- { 5, 10, 800 }, { 5, 10, 852 }, { 7, 11, 1189 }, { 10, 0, 54 },
- { 13, 10, 115 }, { 7, 10, 564 }, { 14, 10, 168 }, { 5, 0, 464 },
- { 6, 0, 236 }, { 7, 0, 696 }, { 7, 0, 914 }, { 7, 0, 1108 },
- { 7, 0, 1448 }, { 9, 0, 15 }, { 9, 0, 564 }, { 10, 0, 14 },
- { 12, 0, 565 }, { 13, 0, 449 }, { 14, 0, 53 }, { 15, 0, 13 },
- { 16, 0, 64 }, { 17, 0, 41 }, { 4, 10, 918 }, { 5, 10, 876 },
- { 6, 0, 1418 }, { 6, 10, 1764 }, { 4, 10, 92 }, { 5, 10, 274 },
- { 6, 0, 907 }, { 4, 11, 114 }, { 8, 10, 501 }, { 9, 11, 492 },
- { 13, 11, 462 }, { 14, 11, 215 }, { 4, 11, 77 }, { 5, 11, 361 },
- { 6, 11, 139 }, { 6, 11, 401 }, { 6, 11, 404 }, { 7, 11, 413 },
- { 7, 11, 715 }, { 7, 11, 1716 }, { 11, 11, 279 }, { 12, 11, 179 },
- { 12, 11, 258 }, { 13, 11, 244 }, { 14, 11, 358 }, { 6, 0, 1767 },
- { 12, 0, 194 }, { 17, 0, 107 }, { 6, 11, 1717 }, { 5, 10, 743 },
- { 14, 11, 329 }, { 4, 10, 49 }, { 7, 10, 280 }, { 7, 10, 1633 },
- { 5, 0, 840 }, { 7, 11, 1061 }, { 8, 11, 82 }, { 11, 11, 250 },
- { 12, 11, 420 }, { 13, 11, 184 }, { 7, 11, 724 }, { 6, 0, 900 },
- { 8, 10, 47 }, { 6, 0, 1436 }, { 16, 11, 0 }, { 6, 0, 675 },
- { 7, 0, 1008 }, { 7, 0, 1560 }, { 9, 0, 642 }, { 11, 0, 236 },
- { 14, 0, 193 }, { 5, 10, 272 }, { 5, 10, 908 }, { 5, 10, 942 },
- { 8, 10, 197 }, { 9, 10, 47 }, { 11, 10, 538 }, { 11, 10, 742 },
- { 4, 0, 68 }, { 5, 0, 628 }, { 5, 0, 634 }, { 6, 0, 386 },
- { 7, 0, 794 }, { 8, 0, 273 }, { 9, 0, 563 }, { 10, 0, 105 },
- { 10, 0, 171 }, { 11, 0, 94 }, { 11, 0, 354 }, { 7, 10, 1911 },
- { 9, 10, 891 }, { 4, 0, 95 }, { 6, 0, 1297 }, { 6, 0, 1604 },
- { 7, 0, 416 }, { 11, 0, 830 }, { 6, 11, 513 }, { 7, 11, 1052 },
- { 7, 0, 731 }, { 13, 0, 20 }, { 15, 0, 11 }, { 9, 11, 899 },
- { 10, 0, 850 }, { 12, 0, 697 }, { 4, 0, 662 }, { 7, 11, 1417 },
- { 12, 11, 382 }, { 17, 11, 48 }, { 24, 11, 12 }, { 5, 0, 736 },
- { 4, 0, 861 }, { 4, 10, 407 }, { 4, 10, 560 }, { 13, 10, 490 },
- { 6, 11, 545 }, { 7, 11, 565 }, { 7, 11, 1669 }, { 10, 11, 114 },
- { 11, 11, 642 }, { 12, 11, 618 }, { 6, 0, 871 }, { 6, 0, 1000 },
- { 5, 0, 864 }, { 10, 0, 648 }, { 11, 0, 671 }, { 15, 0, 46 },
- { 5, 11, 5 }, { 5, 0, 928 }, { 11, 0, 90 }, { 13, 0, 7 },
- { 4, 10, 475 }, { 11, 10, 35 }, { 13, 10, 71 }, { 13, 10, 177 },
- { 14, 10, 422 }, { 8, 0, 332 }, { 7, 11, 192 }, { 6, 0, 1055 },
- { 8, 11, 763 }, { 11, 0, 986 }, { 12, 0, 682 }, { 7, 0, 76 },
- { 8, 0, 44 }, { 9, 0, 884 }, { 10, 0, 580 }, { 11, 0, 399 },
- { 11, 0, 894 }, { 15, 0, 122 }, { 7, 11, 1237 }, { 7, 10, 636 },
- { 11, 0, 300 }, { 6, 10, 222 }, { 7, 10, 1620 }, { 8, 10, 409 },
- { 9, 10, 693 }, { 4, 11, 87 }, { 5, 11, 250 }, { 10, 11, 601 },
- { 13, 11, 298 }, { 13, 11, 353 }, { 13, 11, 376 }, { 5, 0, 518 },
- { 10, 0, 340 }, { 11, 0, 175 }, { 21, 0, 16 }, { 12, 0, 771 },
- { 6, 0, 1108 }, { 9, 0, 831 }, { 4, 0, 836 }, { 7, 0, 1852 },
- { 4, 0, 957 }, { 6, 0, 1804 }, { 8, 0, 842 }, { 8, 0, 843 },
- { 8, 0, 851 }, { 8, 0, 855 }, { 12, 0, 767 }, { 7, 11, 814 },
- { 4, 11, 57 }, { 7, 11, 1195 }, { 7, 11, 1438 }, { 7, 11, 1548 },
- { 7, 11, 1835 }, { 7, 11, 1904 }, { 9, 11, 757 }, { 10, 11, 604 },
- { 11, 11, 519 }, { 5, 10, 882 }, { 10, 0, 246 }, { 4, 0, 934 },
- { 5, 0, 202 }, { 8, 0, 610 }, { 7, 11, 1897 }, { 12, 11, 290 },
- { 13, 11, 80 }, { 13, 11, 437 }, { 17, 11, 74 }, { 8, 0, 96 },
- { 9, 0, 36 }, { 10, 0, 607 }, { 10, 0, 804 }, { 10, 0, 832 },
- { 11, 0, 423 }, { 11, 0, 442 }, { 12, 0, 309 }, { 14, 0, 199 },
- { 15, 0, 90 }, { 17, 0, 110 }, { 4, 10, 426 }, { 7, 0, 654 },
- { 8, 0, 240 }, { 6, 10, 58 }, { 7, 10, 745 }, { 7, 10, 1969 },
- { 8, 10, 675 }, { 9, 10, 479 }, { 9, 10, 731 }, { 10, 10, 330 },
- { 10, 10, 593 }, { 10, 10, 817 }, { 11, 10, 32 }, { 11, 10, 133 },
- { 11, 10, 221 }, { 17, 10, 68 }, { 9, 0, 13 }, { 9, 0, 398 },
- { 9, 0, 727 }, { 10, 0, 75 }, { 10, 0, 184 }, { 10, 0, 230 },
- { 10, 0, 564 }, { 10, 0, 569 }, { 11, 0, 973 }, { 12, 0, 70 },
- { 12, 0, 189 }, { 13, 0, 57 }, { 13, 0, 257 }, { 4, 11, 209 },
- { 7, 11, 902 }, { 7, 0, 391 }, { 9, 10, 538 }, { 6, 0, 403 },
- { 6, 11, 303 }, { 7, 11, 335 }, { 7, 11, 1437 }, { 7, 11, 1668 },
- { 8, 11, 553 }, { 8, 11, 652 }, { 8, 11, 656 }, { 9, 11, 558 },
- { 11, 11, 743 }, { 21, 11, 18 }, { 4, 11, 559 }, { 11, 0, 75 },
- { 14, 0, 267 }, { 6, 0, 815 }, { 13, 11, 2 }, { 13, 0, 366 },
- { 9, 0, 631 }, { 5, 11, 1017 }, { 5, 0, 345 }, { 7, 0, 1016 },
- { 5, 11, 709 }, { 6, 11, 1745 }, { 5, 10, 566 }, { 7, 0, 952 },
- { 6, 10, 48 }, { 9, 10, 139 }, { 10, 10, 399 }, { 11, 10, 469 },
- { 12, 10, 634 }, { 13, 10, 223 }, { 5, 0, 673 }, { 9, 0, 850 },
- { 7, 11, 8 }, { 8, 11, 206 }, { 6, 0, 662 }, { 21, 0, 35 },
- { 4, 0, 287 }, { 5, 0, 1018 }, { 6, 10, 114 }, { 7, 10, 1224 },
- { 7, 10, 1556 }, { 8, 10, 3 }, { 8, 10, 576 }, { 9, 10, 267 },
- { 4, 0, 884 }, { 5, 0, 34 }, { 10, 0, 724 }, { 12, 0, 444 },
- { 13, 0, 354 }, { 18, 0, 32 }, { 23, 0, 24 }, { 23, 0, 31 },
- { 24, 0, 5 }, { 5, 10, 933 }, { 4, 11, 776 }, { 10, 0, 151 },
- { 8, 0, 427 }, { 6, 0, 382 }, { 4, 0, 329 }, { 9, 0, 846 },
- { 10, 0, 827 }, { 10, 11, 33 }, { 9, 0, 279 }, { 10, 0, 407 },
- { 14, 0, 84 }, { 22, 0, 18 }, { 7, 11, 1297 }, { 8, 11, 406 },
- { 4, 0, 906 }, { 8, 0, 366 }, { 6, 0, 843 }, { 6, 0, 1443 },
- { 7, 0, 1372 }, { 10, 0, 992 }, { 4, 0, 123 }, { 5, 0, 605 },
- { 7, 0, 1509 }, { 8, 0, 36 }, { 4, 0, 649 }, { 8, 11, 175 },
- { 10, 11, 168 }, { 10, 11, 573 }, { 5, 0, 767 }, { 6, 0, 1018 },
- { 7, 11, 1305 }, { 12, 10, 30 }, { 13, 10, 148 }, { 14, 10, 87 },
- { 14, 10, 182 }, { 16, 10, 42 }, { 20, 10, 70 }, { 6, 11, 607 },
- { 4, 0, 273 }, { 5, 0, 658 }, { 5, 0, 995 }, { 6, 0, 72 },
- { 11, 11, 174 }, { 10, 0, 483 }, { 12, 0, 368 }, { 7, 10, 56 },
- { 7, 10, 1989 }, { 8, 10, 337 }, { 8, 10, 738 }, { 9, 10, 600 },
- { 13, 10, 447 }, { 14, 10, 92 }, { 5, 11, 784 }, { 10, 10, 666 },
- { 7, 0, 1345 }, { 11, 11, 882 }, { 6, 0, 1293 }, { 5, 0, 589 },
- { 6, 0, 1988 }, { 5, 0, 117 }, { 6, 0, 514 }, { 6, 0, 541 },
- { 7, 0, 1164 }, { 7, 0, 1436 }, { 8, 0, 220 }, { 8, 0, 648 },
- { 10, 0, 688 }, { 11, 0, 560 }, { 8, 0, 379 }, { 5, 0, 686 },
- { 7, 10, 866 }, { 7, 10, 1163 }, { 4, 10, 328 }, { 9, 11, 14 },
- { 9, 11, 441 }, { 10, 11, 306 }, { 11, 11, 9 }, { 4, 10, 101 },
- { 7, 10, 1171 }, { 5, 10, 833 }, { 8, 10, 744 }, { 5, 11, 161 },
- { 7, 11, 839 }, { 7, 11, 887 }, { 7, 0, 196 }, { 10, 0, 765 },
- { 11, 0, 347 }, { 11, 0, 552 }, { 11, 0, 790 }, { 12, 0, 263 },
- { 13, 0, 246 }, { 13, 0, 270 }, { 13, 0, 395 }, { 14, 0, 176 },
- { 14, 0, 190 }, { 14, 0, 398 }, { 14, 0, 412 }, { 15, 0, 32 },
- { 15, 0, 63 }, { 16, 0, 88 }, { 19, 0, 105 }, { 6, 10, 9 },
- { 6, 10, 397 }, { 7, 10, 53 }, { 7, 10, 1742 }, { 10, 10, 632 },
- { 11, 10, 828 }, { 12, 10, 146 }, { 5, 0, 381 }, { 7, 0, 1792 },
- { 6, 0, 1452 }, { 7, 11, 429 }, { 8, 0, 367 }, { 10, 0, 760 },
- { 14, 0, 79 }, { 20, 0, 17 }, { 24, 0, 0 }, { 7, 0, 616 },
- { 10, 0, 413 }, { 11, 10, 417 }, { 12, 10, 223 }, { 12, 10, 265 },
- { 7, 11, 1611 }, { 13, 11, 14 }, { 15, 11, 44 }, { 19, 11, 13 },
- { 20, 11, 76 }, { 7, 0, 1229 }, { 6, 0, 120 }, { 7, 0, 1188 },
- { 7, 0, 1710 }, { 8, 0, 286 }, { 9, 0, 667 }, { 11, 0, 592 },
- { 11, 0, 730 }, { 7, 11, 1814 }, { 7, 0, 1146 }, { 4, 10, 186 },
- { 5, 10, 157 }, { 8, 10, 168 }, { 10, 10, 6 }, { 4, 0, 352 },
- { 7, 0, 687 }, { 4, 0, 192 }, { 5, 0, 49 }, { 6, 0, 200 },
- { 6, 0, 293 }, { 6, 0, 1696 }, { 7, 0, 1151 }, { 5, 10, 875 },
- { 5, 10, 773 }, { 5, 10, 991 }, { 6, 10, 1635 }, { 6, 10, 1788 },
- { 7, 10, 111 }, { 8, 10, 581 }, { 6, 0, 935 }, { 6, 0, 1151 },
- { 6, 0, 1050 }, { 4, 0, 650 }, { 4, 0, 147 }, { 11, 0, 194 },
- { 12, 0, 62 }, { 12, 0, 88 }, { 11, 11, 194 }, { 12, 11, 62 },
- { 12, 11, 88 }, { 6, 0, 339 }, { 7, 0, 923 }, { 6, 10, 1747 },
- { 7, 11, 643 }, { 8, 11, 236 }, { 5, 0, 934 }, { 7, 10, 1364 },
- { 7, 10, 1907 }, { 13, 10, 158 }, { 4, 10, 659 }, { 4, 10, 404 },
- { 7, 10, 675 }, { 7, 11, 581 }, { 9, 11, 644 }, { 9, 11, 699 },
- { 13, 0, 211 }, { 14, 0, 133 }, { 14, 0, 204 }, { 15, 0, 64 },
- { 15, 0, 69 }, { 15, 0, 114 }, { 16, 0, 10 }, { 19, 0, 23 },
- { 19, 0, 35 }, { 19, 0, 39 }, { 19, 0, 51 }, { 19, 0, 71 },
- { 19, 0, 75 }, { 24, 0, 15 }, { 5, 10, 391 }, { 5, 11, 54 },
- { 7, 11, 1513 }, { 7, 0, 222 }, { 8, 0, 341 }, { 5, 10, 540 },
- { 6, 10, 1697 }, { 6, 10, 78 }, { 4, 11, 744 }, { 8, 0, 293 },
- { 9, 11, 701 }, { 7, 11, 930 }, { 10, 11, 402 }, { 10, 11, 476 },
- { 13, 11, 452 }, { 18, 11, 55 }, { 19, 11, 104 }, { 4, 0, 637 },
- { 5, 10, 460 }, { 8, 11, 50 }, { 9, 11, 624 }, { 4, 11, 572 },
- { 6, 0, 1159 }, { 4, 10, 199 }, { 11, 10, 34 }, { 6, 0, 847 },
- { 6, 10, 388 }, { 6, 11, 43 }, { 7, 11, 38 }, { 8, 11, 248 },
- { 9, 11, 504 }, { 10, 11, 513 }, { 9, 0, 683 }, { 4, 10, 511 },
- { 6, 10, 608 }, { 9, 10, 333 }, { 10, 10, 602 }, { 11, 10, 441 },
- { 11, 10, 723 }, { 11, 10, 976 }, { 12, 10, 357 }, { 9, 0, 867 },
- { 10, 0, 837 }, { 6, 0, 944 }, { 7, 11, 326 }, { 7, 0, 1809 },
- { 5, 10, 938 }, { 7, 11, 783 }, { 8, 10, 707 }, { 5, 11, 766 },
- { 5, 11, 363 }, { 6, 0, 170 }, { 7, 0, 1080 }, { 8, 0, 395 },
- { 8, 0, 487 }, { 13, 0, 147 }, { 6, 11, 258 }, { 12, 11, 409 },
- { 4, 0, 535 }, { 8, 0, 618 }, { 5, 11, 249 }, { 20, 11, 82 },
- { 6, 0, 1379 }, { 21, 11, 15 }, { 7, 0, 1625 }, { 22, 0, 23 },
- { 5, 11, 393 }, { 6, 11, 378 }, { 7, 11, 1981 }, { 9, 11, 32 },
- { 9, 11, 591 }, { 10, 11, 685 }, { 10, 11, 741 }, { 14, 11, 382 },
- { 5, 11, 788 }, { 7, 11, 1968 }, { 10, 11, 19 }, { 11, 11, 911 },
- { 7, 11, 1401 }, { 7, 11, 1476 }, { 4, 11, 61 }, { 5, 11, 58 },
- { 5, 11, 171 }, { 5, 11, 635 }, { 5, 11, 683 }, { 5, 11, 700 },
- { 6, 11, 291 }, { 6, 11, 566 }, { 7, 11, 1650 }, { 11, 11, 523 },
- { 12, 11, 273 }, { 12, 11, 303 }, { 15, 11, 39 }, { 15, 11, 111 },
- { 6, 10, 469 }, { 7, 10, 1709 }, { 10, 10, 515 }, { 4, 0, 778 },
- { 6, 11, 589 }, { 4, 0, 46 }, { 5, 0, 811 }, { 6, 0, 1679 },
- { 6, 0, 1714 }, { 7, 0, 2032 }, { 7, 0, 1458 }, { 9, 0, 407 },
- { 11, 0, 15 }, { 12, 0, 651 }, { 21, 0, 37 }, { 7, 0, 938 },
- { 4, 10, 500 }, { 6, 0, 34 }, { 7, 0, 69 }, { 7, 0, 1089 },
- { 7, 0, 1281 }, { 8, 0, 708 }, { 8, 0, 721 }, { 9, 0, 363 },
- { 20, 0, 98 }, { 10, 11, 231 }, { 19, 11, 124 }, { 7, 11, 726 },
- { 24, 11, 9 }, { 5, 10, 68 }, { 6, 10, 383 }, { 8, 11, 583 },
- { 4, 11, 917 }, { 5, 11, 1005 }, { 11, 10, 216 }, { 11, 10, 340 },
- { 7, 11, 1675 }, { 8, 0, 441 }, { 10, 0, 314 }, { 15, 0, 3 },
- { 4, 11, 919 }, { 4, 10, 337 }, { 6, 10, 353 }, { 7, 10, 1934 },
- { 8, 10, 488 }, { 9, 10, 429 }, { 7, 0, 889 }, { 7, 10, 1795 },
- { 8, 10, 259 }, { 9, 10, 135 }, { 9, 10, 177 }, { 9, 10, 860 },
- { 10, 10, 825 }, { 11, 10, 115 }, { 11, 10, 370 }, { 11, 10, 405 },
- { 11, 10, 604 }, { 12, 10, 10 }, { 12, 10, 667 }, { 12, 10, 669 },
- { 13, 10, 76 }, { 14, 10, 310 }, { 15, 10, 76 }, { 15, 10, 147 },
- { 20, 10, 23 }, { 4, 10, 15 }, { 4, 11, 255 }, { 5, 10, 22 },
- { 5, 11, 302 }, { 6, 11, 132 }, { 6, 10, 244 }, { 7, 10, 40 },
- { 7, 11, 128 }, { 7, 10, 200 }, { 7, 11, 283 }, { 7, 10, 906 },
- { 7, 10, 1199 }, { 7, 11, 1299 }, { 9, 10, 616 }, { 10, 11, 52 },
- { 10, 11, 514 }, { 10, 10, 716 }, { 11, 10, 635 }, { 11, 10, 801 },
- { 11, 11, 925 }, { 12, 10, 458 }, { 13, 11, 92 }, { 14, 11, 309 },
- { 4, 0, 462 }, { 9, 11, 173 }, { 7, 10, 1735 }, { 8, 0, 525 },
- { 5, 10, 598 }, { 7, 10, 791 }, { 8, 10, 108 }, { 9, 10, 123 },
- { 5, 0, 73 }, { 6, 0, 23 }, { 6, 0, 338 }, { 4, 0, 676 },
- { 4, 10, 683 }, { 7, 0, 725 }, { 8, 0, 498 }, { 11, 0, 268 },
- { 12, 0, 21 }, { 23, 0, 7 }, { 7, 0, 773 }, { 4, 10, 155 },
- { 7, 10, 1689 }, { 4, 0, 164 }, { 5, 0, 730 }, { 5, 10, 151 },
- { 5, 10, 741 }, { 6, 11, 210 }, { 7, 10, 498 }, { 7, 10, 870 },
- { 7, 10, 1542 }, { 12, 10, 213 }, { 14, 10, 36 }, { 14, 10, 391 },
- { 17, 10, 111 }, { 18, 10, 6 }, { 18, 10, 46 }, { 18, 10, 151 },
- { 19, 10, 36 }, { 20, 10, 32 }, { 20, 10, 56 }, { 20, 10, 69 },
- { 20, 10, 102 }, { 21, 10, 4 }, { 22, 10, 8 }, { 22, 10, 10 },
- { 22, 10, 14 }, { 22, 10, 31 }, { 4, 10, 624 }, { 7, 10, 1752 },
- { 4, 0, 583 }, { 9, 0, 936 }, { 15, 0, 214 }, { 18, 0, 199 },
- { 24, 0, 26 }, { 6, 11, 588 }, { 7, 0, 1462 }, { 11, 0, 659 },
- { 4, 11, 284 }, { 6, 11, 223 }, { 5, 0, 220 }, { 11, 0, 803 },
- { 4, 0, 544 }, { 4, 10, 492 }, { 5, 10, 451 }, { 16, 0, 98 },
- { 20, 0, 119 }, { 4, 11, 218 }, { 7, 11, 526 }, { 15, 11, 137 },
- { 7, 10, 835 }, { 4, 11, 270 }, { 5, 11, 192 }, { 6, 11, 332 },
- { 7, 11, 1322 }, { 13, 11, 9 }, { 13, 10, 70 }, { 14, 11, 104 },
- { 14, 11, 311 }, { 4, 10, 539 }, { 12, 11, 661 }, { 5, 0, 176 },
- { 6, 0, 437 }, { 6, 0, 564 }, { 11, 0, 181 }, { 13, 0, 183 },
- { 7, 0, 1192 }, { 6, 10, 113 }, { 7, 10, 436 }, { 8, 10, 718 },
- { 7, 10, 520 }, { 7, 0, 1878 }, { 12, 11, 196 }, { 7, 11, 379 },
- { 8, 11, 481 }, { 9, 11, 377 }, { 5, 11, 1003 }, { 6, 11, 149 },
- { 9, 11, 746 }, { 8, 11, 262 }, { 9, 11, 627 }, { 10, 11, 18 },
- { 11, 11, 214 }, { 11, 11, 404 }, { 11, 11, 457 }, { 11, 11, 780 },
- { 11, 11, 849 }, { 11, 11, 913 }, { 13, 11, 330 }, { 13, 11, 401 },
- { 14, 11, 200 }, { 21, 0, 26 }, { 8, 11, 304 }, { 4, 11, 142 },
- { 7, 0, 944 }, { 4, 0, 790 }, { 5, 0, 273 }, { 6, 0, 394 },
- { 6, 0, 855 }, { 4, 0, 135 }, { 6, 0, 127 }, { 7, 0, 1185 },
- { 7, 0, 1511 }, { 8, 0, 613 }, { 11, 0, 5 }, { 12, 0, 336 },
- { 12, 0, 495 }, { 12, 0, 586 }, { 12, 0, 660 }, { 12, 0, 668 },
- { 14, 0, 385 }, { 15, 0, 118 }, { 17, 0, 20 }, { 18, 0, 98 },
- { 6, 0, 230 }, { 9, 0, 752 }, { 18, 0, 109 }, { 12, 10, 610 },
- { 13, 10, 431 }, { 16, 10, 59 }, { 7, 0, 1954 }, { 7, 11, 925 },
- { 4, 11, 471 }, { 5, 11, 51 }, { 6, 11, 602 }, { 8, 11, 484 },
- { 10, 11, 195 }, { 12, 11, 159 }, { 4, 10, 307 }, { 8, 11, 688 },
- { 4, 11, 697 }, { 7, 11, 812 }, { 7, 11, 1261 }, { 7, 11, 1360 },
- { 9, 11, 632 }, { 12, 11, 352 }, { 5, 0, 162 }, { 8, 0, 68 },
- { 5, 10, 964 }, { 4, 0, 654 }, { 8, 11, 212 }, { 4, 0, 156 },
- { 7, 0, 998 }, { 7, 0, 1045 }, { 7, 0, 1860 }, { 9, 0, 48 },
- { 9, 0, 692 }, { 11, 0, 419 }, { 11, 0, 602 }, { 5, 11, 221 },
- { 4, 11, 373 }, { 5, 11, 283 }, { 6, 11, 480 }, { 7, 11, 609 },
- { 14, 11, 216 }, { 4, 0, 240 }, { 6, 11, 192 }, { 9, 11, 793 },
- { 17, 11, 55 }, { 4, 10, 75 }, { 5, 10, 180 }, { 6, 10, 500 },
- { 7, 10, 58 }, { 7, 10, 710 }, { 10, 10, 645 }, { 4, 11, 132 },
- { 5, 11, 69 }, { 5, 10, 649 }, { 7, 11, 1242 }, { 6, 10, 276 },
- { 7, 10, 282 }, { 7, 10, 879 }, { 7, 10, 924 }, { 8, 10, 459 },
- { 9, 10, 599 }, { 9, 10, 754 }, { 11, 10, 574 }, { 12, 10, 128 },
- { 12, 10, 494 }, { 13, 10, 52 }, { 13, 10, 301 }, { 15, 10, 30 },
- { 15, 10, 132 }, { 4, 10, 200 }, { 4, 11, 111 }, { 7, 11, 302 },
- { 9, 0, 197 }, { 10, 0, 300 }, { 12, 0, 473 }, { 13, 0, 90 },
- { 13, 0, 405 }, { 4, 11, 767 }, { 6, 11, 42 }, { 7, 11, 1416 },
- { 7, 11, 1590 }, { 7, 11, 2005 }, { 8, 11, 131 }, { 8, 11, 466 },
- { 9, 11, 672 }, { 13, 11, 252 }, { 20, 11, 103 }, { 8, 0, 958 },
- { 8, 0, 999 }, { 10, 0, 963 }, { 10, 0, 1001 }, { 7, 10, 1621 },
- { 7, 0, 858 }, { 4, 0, 606 }, { 9, 11, 444 }, { 6, 11, 44 },
- { 8, 11, 368 }, { 11, 11, 172 }, { 4, 11, 570 }, { 5, 11, 120 },
- { 11, 11, 624 }, { 7, 0, 1978 }, { 8, 0, 676 }, { 6, 10, 225 },
- { 9, 10, 211 }, { 7, 0, 972 }, { 11, 0, 102 }, { 8, 10, 687 },
- { 6, 11, 227 }, { 7, 11, 1589 }, { 8, 10, 58 }, { 9, 10, 724 },
- { 11, 10, 809 }, { 13, 10, 113 }, { 17, 10, 72 }, { 4, 0, 361 },
- { 5, 0, 315 }, { 4, 0, 461 }, { 6, 10, 345 }, { 7, 10, 1247 },
- { 4, 0, 472 }, { 8, 10, 767 }, { 8, 10, 803 }, { 9, 10, 301 },
- { 9, 10, 903 }, { 7, 11, 1333 }, { 7, 11, 477 }, { 7, 10, 1949 },
- { 8, 10, 674 }, { 6, 0, 905 }, { 10, 0, 747 }, { 5, 0, 155 },
- { 6, 10, 259 }, { 7, 0, 163 }, { 8, 0, 319 }, { 9, 0, 402 },
- { 10, 0, 24 }, { 10, 0, 681 }, { 11, 0, 200 }, { 12, 0, 253 },
- { 12, 0, 410 }, { 14, 0, 219 }, { 5, 0, 475 }, { 7, 0, 1780 },
- { 9, 0, 230 }, { 11, 0, 297 }, { 11, 0, 558 }, { 14, 0, 322 },
- { 19, 0, 76 }, { 6, 11, 1667 }, { 7, 11, 2036 }, { 10, 11, 600 },
- { 8, 10, 254 }, { 6, 0, 848 }, { 7, 0, 1956 }, { 6, 11, 511 },
- { 12, 11, 132 }, { 5, 11, 568 }, { 6, 11, 138 }, { 7, 11, 1293 },
- { 6, 0, 631 }, { 9, 0, 838 }, { 21, 0, 36 }, { 4, 11, 565 },
- { 8, 11, 23 }, { 8, 11, 827 }, { 5, 0, 944 }, { 6, 0, 1769 },
- { 4, 0, 144 }, { 6, 0, 842 }, { 6, 0, 1400 }, { 4, 11, 922 },
- { 5, 11, 1023 }, { 5, 10, 248 }, { 9, 10, 800 }, { 10, 10, 693 },
- { 11, 10, 482 }, { 11, 10, 734 }, { 11, 10, 789 }, { 7, 11, 1002 },
- { 11, 11, 145 }, { 4, 10, 116 }, { 5, 10, 95 }, { 5, 10, 445 },
- { 7, 10, 1688 }, { 8, 10, 29 }, { 9, 10, 272 }, { 11, 10, 509 },
- { 11, 10, 915 }, { 14, 0, 369 }, { 18, 0, 72 }, { 7, 10, 1641 },
- { 4, 11, 740 }, { 5, 10, 543 }, { 12, 11, 116 }, { 6, 0, 247 },
- { 9, 0, 555 }, { 5, 10, 181 }, { 8, 10, 41 }, { 5, 10, 657 },
- { 8, 0, 996 }, { 10, 10, 709 }, { 7, 0, 189 }, { 8, 10, 202 },
- { 10, 10, 536 }, { 8, 11, 402 }, { 4, 11, 716 }, { 13, 11, 31 },
- { 10, 0, 280 }, { 10, 0, 797 }, { 9, 10, 423 }, { 12, 10, 89 },
- { 8, 10, 113 }, { 9, 10, 877 }, { 10, 10, 554 }, { 11, 10, 83 },
- { 12, 10, 136 }, { 19, 10, 109 }, { 5, 10, 976 }, { 7, 0, 746 },
- { 4, 10, 206 }, { 8, 0, 526 }, { 11, 0, 345 }, { 8, 0, 1017 },
- { 8, 11, 152 }, { 9, 11, 53 }, { 9, 11, 268 }, { 9, 11, 901 },
- { 10, 11, 518 }, { 10, 11, 829 }, { 11, 11, 188 }, { 13, 11, 74 },
- { 14, 11, 46 }, { 15, 11, 17 }, { 15, 11, 33 }, { 17, 11, 40 },
- { 18, 11, 36 }, { 19, 11, 20 }, { 22, 11, 1 }, { 24, 11, 2 },
- { 5, 11, 736 }, { 8, 11, 532 }, { 5, 0, 428 }, { 10, 0, 651 },
- { 7, 11, 681 }, { 7, 0, 1162 }, { 7, 0, 327 }, { 13, 0, 230 },
- { 17, 0, 113 }, { 8, 10, 226 }, { 10, 10, 537 }, { 11, 10, 570 },
- { 11, 10, 605 }, { 11, 10, 799 }, { 11, 10, 804 }, { 12, 10, 85 },
- { 12, 10, 516 }, { 12, 10, 623 }, { 12, 11, 677 }, { 13, 10, 361 },
- { 14, 10, 77 }, { 14, 10, 78 }, { 19, 10, 110 }, { 4, 0, 792 },
- { 7, 0, 1717 }, { 10, 0, 546 }, { 4, 10, 769 }, { 4, 11, 684 },
- { 8, 11, 384 }, { 4, 10, 551 }, { 6, 0, 1203 }, { 9, 10, 57 },
- { 9, 10, 459 }, { 10, 10, 425 }, { 11, 10, 119 }, { 12, 10, 184 },
- { 12, 10, 371 }, { 13, 10, 358 }, { 17, 10, 51 }, { 5, 0, 672 },
- { 5, 10, 814 }, { 8, 10, 10 }, { 9, 10, 421 }, { 9, 10, 729 },
- { 10, 10, 609 }, { 11, 10, 689 }, { 10, 0, 189 }, { 6, 10, 624 },
- { 7, 11, 110 }, { 7, 11, 188 }, { 8, 11, 290 }, { 8, 11, 591 },
- { 9, 11, 382 }, { 9, 11, 649 }, { 11, 11, 71 }, { 11, 11, 155 },
- { 11, 11, 313 }, { 12, 11, 5 }, { 13, 11, 325 }, { 14, 11, 287 },
- { 5, 0, 99 }, { 6, 0, 1053 }, { 7, 0, 298 }, { 7, 11, 360 },
- { 7, 11, 425 }, { 9, 11, 66 }, { 9, 11, 278 }, { 10, 11, 644 },
- { 4, 0, 397 }, { 8, 0, 555 }, { 9, 10, 269 }, { 4, 10, 528 },
- { 4, 11, 900 }, { 5, 11, 861 }, { 6, 0, 1157 }, { 5, 11, 254 },
- { 7, 11, 985 }, { 8, 11, 73 }, { 7, 11, 1959 }, { 8, 11, 683 },
- { 12, 0, 398 }, { 20, 0, 39 }, { 21, 0, 11 }, { 22, 0, 41 },
- { 4, 0, 485 }, { 7, 0, 353 }, { 7, 0, 1523 }, { 6, 0, 366 },
- { 7, 0, 1384 }, { 7, 0, 1601 }, { 10, 0, 787 }, { 9, 0, 282 },
- { 5, 10, 104 }, { 6, 10, 173 }, { 7, 10, 1631 }, { 11, 11, 146 },
- { 4, 0, 157 }, { 5, 0, 471 }, { 6, 0, 941 }, { 4, 11, 725 },
- { 7, 0, 1336 }, { 8, 10, 138 }, { 8, 10, 342 }, { 9, 10, 84 },
- { 10, 10, 193 }, { 11, 10, 883 }, { 12, 10, 359 }, { 6, 11, 196 },
- { 8, 0, 116 }, { 5, 11, 831 }, { 6, 0, 787 }, { 6, 10, 95 },
- { 6, 10, 406 }, { 10, 10, 409 }, { 10, 10, 447 }, { 11, 10, 44 },
- { 12, 10, 100 }, { 5, 0, 160 }, { 7, 0, 363 }, { 7, 0, 589 },
- { 10, 0, 170 }, { 13, 0, 55 }, { 6, 0, 1815 }, { 4, 0, 866 },
- { 6, 0, 889 }, { 6, 0, 1067 }, { 6, 0, 1183 }, { 4, 11, 321 },
- { 6, 11, 569 }, { 5, 11, 848 }, { 6, 11, 66 }, { 4, 11, 36 },
- { 6, 10, 1636 }, { 7, 11, 1387 }, { 10, 11, 205 }, { 11, 11, 755 },
- { 13, 11, 271 }, { 4, 0, 689 }, { 9, 0, 820 }, { 4, 10, 282 },
- { 7, 10, 1034 }, { 11, 10, 398 }, { 11, 10, 634 }, { 12, 10, 1 },
- { 12, 10, 79 }, { 12, 10, 544 }, { 14, 10, 237 }, { 17, 10, 10 },
- { 18, 10, 20 }, { 4, 0, 108 }, { 7, 0, 804 }, { 11, 0, 498 },
- { 4, 11, 887 }, { 6, 0, 1119 }, { 7, 11, 620 }, { 6, 11, 165 },
- { 10, 11, 388 }, { 5, 0, 244 }, { 5, 10, 499 }, { 6, 10, 476 },
- { 7, 10, 600 }, { 7, 10, 888 }, { 7, 10, 1096 }, { 12, 0, 609 },
- { 7, 0, 1005 }, { 4, 0, 412 }, { 5, 0, 581 }, { 4, 11, 719 },
- { 7, 11, 155 }, { 7, 10, 296 }, { 7, 10, 596 }, { 8, 10, 560 },
- { 8, 10, 586 }, { 9, 10, 612 }, { 11, 10, 304 }, { 12, 10, 46 },
- { 13, 10, 89 }, { 14, 10, 112 }, { 17, 10, 122 }, { 4, 0, 895 },
- { 5, 0, 772 }, { 14, 11, 307 }, { 7, 0, 1898 }, { 4, 0, 926 },
- { 5, 0, 983 }, { 4, 11, 353 }, { 6, 11, 146 }, { 6, 11, 1789 },
- { 7, 11, 288 }, { 7, 11, 990 }, { 7, 11, 1348 }, { 9, 11, 665 },
- { 9, 11, 898 }, { 11, 11, 893 }, { 14, 11, 212 }, { 4, 0, 538 },
- { 5, 11, 532 }, { 6, 0, 294 }, { 7, 0, 1267 }, { 8, 0, 624 },
- { 13, 0, 496 }, { 7, 0, 1325 }, { 4, 11, 45 }, { 7, 11, 1257 },
- { 10, 0, 301 }, { 9, 0, 298 }, { 12, 0, 291 }, { 13, 0, 276 },
- { 14, 0, 6 }, { 17, 0, 18 }, { 21, 0, 32 }, { 7, 10, 1599 },
- { 7, 10, 1723 }, { 8, 10, 79 }, { 8, 10, 106 }, { 8, 10, 190 },
- { 8, 10, 302 }, { 8, 10, 383 }, { 8, 10, 713 }, { 9, 10, 119 },
- { 9, 10, 233 }, { 9, 10, 419 }, { 9, 10, 471 }, { 10, 10, 181 },
- { 10, 10, 406 }, { 11, 10, 57 }, { 11, 10, 85 }, { 11, 10, 120 },
- { 11, 10, 177 }, { 11, 10, 296 }, { 11, 10, 382 }, { 11, 10, 454 },
- { 11, 10, 758 }, { 11, 10, 999 }, { 12, 10, 27 }, { 12, 10, 131 },
- { 12, 10, 245 }, { 12, 10, 312 }, { 12, 10, 446 }, { 12, 10, 454 },
- { 13, 10, 98 }, { 13, 10, 426 }, { 13, 10, 508 }, { 14, 10, 163 },
- { 14, 10, 272 }, { 14, 10, 277 }, { 14, 10, 370 }, { 15, 10, 95 },
- { 15, 10, 138 }, { 15, 10, 167 }, { 17, 10, 38 }, { 20, 10, 96 },
- { 4, 0, 757 }, { 6, 0, 1263 }, { 4, 0, 820 }, { 6, 10, 1759 },
- { 5, 0, 722 }, { 8, 11, 816 }, { 10, 10, 372 }, { 17, 10, 16 },
- { 6, 0, 1039 }, { 4, 0, 991 }, { 6, 0, 2028 }, { 5, 10, 258 },
- { 7, 0, 1875 }, { 11, 0, 124 }, { 6, 11, 559 }, { 6, 11, 1691 },
- { 7, 11, 586 }, { 5, 0, 324 }, { 7, 0, 881 }, { 8, 10, 134 },
- { 9, 10, 788 }, { 12, 10, 438 }, { 7, 11, 1823 }, { 11, 11, 693 },
- { 6, 0, 1348 }, { 6, 0, 1545 }, { 6, 0, 911 }, { 4, 0, 954 },
- { 8, 0, 329 }, { 8, 0, 414 }, { 7, 10, 1948 }, { 7, 10, 2004 },
- { 5, 0, 517 }, { 6, 10, 439 }, { 7, 10, 780 }, { 7, 10, 1040 },
- { 4, 0, 816 }, { 5, 10, 1 }, { 6, 10, 81 }, { 10, 10, 520 },
- { 9, 0, 713 }, { 10, 0, 222 }, { 5, 10, 482 }, { 8, 10, 98 },
- { 10, 10, 700 }, { 10, 10, 822 }, { 11, 10, 302 }, { 11, 10, 778 },
- { 12, 10, 50 }, { 12, 10, 127 }, { 12, 10, 396 }, { 13, 10, 62 },
- { 13, 10, 328 }, { 14, 10, 122 }, { 19, 10, 72 }, { 9, 0, 33 },
- { 5, 10, 2 }, { 7, 10, 1494 }, { 8, 10, 589 }, { 6, 10, 512 },
- { 7, 10, 797 }, { 8, 10, 253 }, { 9, 10, 77 }, { 10, 10, 1 },
- { 10, 11, 108 }, { 10, 10, 129 }, { 10, 10, 225 }, { 11, 11, 116 },
- { 11, 10, 118 }, { 11, 10, 226 }, { 11, 10, 251 }, { 11, 10, 430 },
- { 11, 10, 701 }, { 11, 10, 974 }, { 11, 10, 982 }, { 12, 10, 64 },
- { 12, 10, 260 }, { 12, 10, 488 }, { 12, 10, 690 }, { 6, 11, 456 },
- { 5, 11, 925 }, { 5, 0, 150 }, { 7, 0, 106 }, { 7, 0, 774 },
- { 8, 0, 603 }, { 9, 0, 593 }, { 9, 0, 634 }, { 10, 0, 44 },
- { 10, 0, 173 }, { 11, 0, 462 }, { 11, 0, 515 }, { 13, 0, 216 },
- { 13, 0, 288 }, { 14, 0, 400 }, { 9, 10, 347 }, { 5, 0, 748 },
- { 6, 0, 553 }, { 12, 0, 108 }, { 13, 0, 291 }, { 7, 0, 420 },
- { 4, 10, 12 }, { 7, 10, 522 }, { 7, 10, 809 }, { 8, 10, 797 },
- { 13, 10, 88 }, { 6, 11, 193 }, { 7, 11, 240 }, { 7, 11, 1682 },
- { 10, 11, 51 }, { 10, 11, 640 }, { 11, 11, 410 }, { 13, 11, 82 },
- { 14, 11, 247 }, { 14, 11, 331 }, { 14, 11, 377 }, { 5, 10, 528 },
- { 7, 0, 1777 }, { 4, 0, 493 }, { 16, 0, 55 }, { 8, 11, 633 },
- { 11, 0, 81 }, { 6, 0, 980 }, { 8, 0, 321 }, { 20, 10, 109 },
- { 5, 10, 266 }, { 9, 10, 290 }, { 9, 10, 364 }, { 10, 10, 293 },
- { 11, 10, 606 }, { 14, 10, 45 }, { 6, 0, 568 }, { 7, 0, 112 },
- { 7, 0, 1804 }, { 8, 0, 362 }, { 8, 0, 410 }, { 8, 0, 830 },
- { 9, 0, 514 }, { 11, 0, 649 }, { 14, 0, 157 }, { 4, 0, 74 },
- { 6, 0, 510 }, { 6, 10, 594 }, { 9, 10, 121 }, { 10, 10, 49 },
- { 10, 10, 412 }, { 11, 10, 834 }, { 6, 0, 838 }, { 8, 10, 748 },
- { 4, 10, 466 }, { 4, 0, 625 }, { 7, 11, 1443 }, { 4, 11, 237 },
- { 7, 11, 514 }, { 9, 10, 378 }, { 13, 10, 162 }, { 6, 0, 16 },
- { 6, 0, 158 }, { 7, 0, 43 }, { 7, 0, 129 }, { 7, 0, 181 },
- { 8, 0, 276 }, { 8, 0, 377 }, { 10, 0, 523 }, { 11, 0, 816 },
- { 12, 0, 455 }, { 13, 0, 303 }, { 14, 0, 135 }, { 7, 0, 281 },
- { 4, 0, 1 }, { 7, 0, 1143 }, { 7, 0, 1463 }, { 8, 0, 61 },
- { 9, 0, 207 }, { 9, 0, 390 }, { 9, 0, 467 }, { 11, 0, 836 },
- { 6, 11, 392 }, { 7, 11, 65 }, { 7, 11, 2019 }, { 4, 10, 667 },
- { 4, 0, 723 }, { 5, 0, 895 }, { 7, 0, 1031 }, { 8, 0, 199 },
- { 8, 0, 340 }, { 9, 0, 153 }, { 9, 0, 215 }, { 10, 0, 21 },
- { 10, 0, 59 }, { 10, 0, 80 }, { 10, 0, 224 }, { 10, 0, 838 },
- { 11, 0, 229 }, { 11, 0, 652 }, { 12, 0, 192 }, { 13, 0, 146 },
- { 14, 0, 91 }, { 4, 0, 295 }, { 9, 0, 51 }, { 9, 11, 222 },
- { 10, 11, 43 }, { 11, 11, 900 }, { 5, 0, 309 }, { 12, 0, 211 },
- { 5, 0, 125 }, { 8, 0, 77 }, { 10, 0, 15 }, { 8, 11, 604 },
- { 10, 0, 789 }, { 5, 0, 173 }, { 4, 10, 39 }, { 7, 10, 1843 },
- { 8, 10, 407 }, { 11, 10, 144 }, { 12, 10, 523 }, { 10, 11, 265 },
- { 5, 0, 439 }, { 4, 10, 510 }, { 7, 0, 648 }, { 7, 0, 874 },
- { 11, 0, 164 }, { 12, 0, 76 }, { 18, 0, 9 }, { 7, 10, 1980 },
- { 10, 10, 487 }, { 10, 10, 809 }, { 12, 0, 111 }, { 14, 0, 294 },
- { 19, 0, 45 }, { 13, 10, 260 }, { 18, 10, 63 }, { 5, 11, 549 },
- { 6, 10, 570 }, { 4, 0, 8 }, { 7, 0, 1152 }, { 7, 0, 1153 },
- { 7, 0, 1715 }, { 9, 0, 374 }, { 10, 0, 478 }, { 11, 0, 648 },
- { 7, 0, 1099 }, { 5, 0, 575 }, { 6, 0, 354 }, { 7, 0, 701 },
- { 7, 11, 36 }, { 8, 11, 201 }, { 8, 11, 605 }, { 4, 10, 787 },
- { 8, 11, 156 }, { 6, 0, 518 }, { 21, 11, 13 }, { 12, 11, 224 },
- { 6, 0, 702 }, { 4, 10, 516 }, { 5, 11, 724 }, { 10, 11, 305 },
- { 11, 11, 151 }, { 12, 11, 33 }, { 12, 11, 121 }, { 12, 11, 381 },
- { 17, 11, 3 }, { 17, 11, 27 }, { 17, 11, 78 }, { 18, 11, 18 },
- { 19, 11, 54 }, { 21, 11, 5 }, { 8, 0, 87 }, { 4, 11, 523 },
- { 5, 11, 638 }, { 11, 10, 887 }, { 14, 10, 365 }, { 14, 10, 375 },
- { 10, 0, 438 }, { 8, 10, 821 }, { 7, 11, 1908 }, { 6, 11, 242 },
- { 7, 11, 227 }, { 7, 11, 1581 }, { 8, 11, 104 }, { 9, 11, 113 },
- { 9, 11, 220 }, { 9, 11, 427 }, { 10, 11, 74 }, { 10, 11, 239 },
- { 11, 11, 579 }, { 11, 11, 1023 }, { 13, 11, 4 }, { 13, 11, 204 },
- { 13, 11, 316 }, { 18, 11, 95 }, { 20, 11, 86 }, { 4, 0, 69 },
- { 5, 0, 122 }, { 5, 0, 849 }, { 6, 0, 1633 }, { 9, 0, 656 },
- { 10, 0, 464 }, { 7, 0, 1802 }, { 4, 10, 10 }, { 11, 10, 786 },
- { 7, 11, 861 }, { 11, 0, 499 }, { 7, 0, 476 }, { 7, 0, 1592 },
- { 10, 0, 87 }, { 5, 10, 684 }, { 4, 0, 840 }, { 6, 10, 27 },
- { 14, 0, 283 }, { 6, 0, 1620 }, { 7, 11, 1328 }, { 8, 11, 494 },
- { 5, 0, 859 }, { 7, 0, 1160 }, { 8, 0, 107 }, { 9, 0, 291 },
- { 9, 0, 439 }, { 10, 0, 663 }, { 11, 0, 609 }, { 12, 0, 197 },
- { 7, 11, 1306 }, { 8, 11, 505 }, { 9, 11, 482 }, { 10, 11, 126 },
- { 11, 11, 225 }, { 12, 11, 347 }, { 12, 11, 449 }, { 13, 11, 19 },
- { 14, 11, 218 }, { 5, 11, 268 }, { 10, 11, 764 }, { 12, 11, 120 },
- { 13, 11, 39 }, { 17, 11, 127 }, { 17, 10, 56 }, { 7, 11, 1672 },
- { 10, 11, 472 }, { 11, 11, 189 }, { 15, 11, 51 }, { 6, 10, 342 },
- { 6, 10, 496 }, { 8, 10, 275 }, { 9, 10, 206 }, { 5, 0, 600 },
- { 4, 0, 117 }, { 6, 0, 372 }, { 7, 0, 1905 }, { 14, 0, 323 },
- { 4, 10, 909 }, { 5, 10, 940 }, { 7, 11, 1471 }, { 4, 10, 891 },
- { 4, 0, 722 }, { 11, 0, 471 }, { 4, 11, 384 }, { 7, 11, 1022 },
- { 4, 10, 687 }, { 9, 0, 5 }, { 12, 0, 216 }, { 12, 0, 294 },
- { 12, 0, 298 }, { 12, 0, 400 }, { 12, 0, 518 }, { 13, 0, 229 },
- { 15, 0, 139 }, { 7, 11, 1703 }, { 7, 11, 1602 }, { 10, 11, 698 },
- { 12, 11, 212 }, { 13, 11, 307 }, { 6, 10, 41 }, { 13, 10, 160 },
- { 7, 11, 1077 }, { 9, 11, 159 }, { 11, 11, 28 }, { 12, 11, 603 },
- { 4, 0, 514 }, { 7, 0, 1304 }, { 10, 0, 477 }, { 6, 0, 1774 },
- { 9, 0, 88 }, { 11, 0, 270 }, { 5, 0, 12 }, { 7, 0, 375 },
- { 9, 0, 438 }, { 6, 10, 1718 }, { 4, 11, 515 }, { 8, 10, 778 },
- { 8, 11, 632 }, { 8, 11, 697 }, { 9, 11, 854 }, { 6, 0, 362 },
- { 6, 0, 997 }, { 18, 0, 51 }, { 7, 0, 816 }, { 7, 0, 1241 },
- { 9, 0, 283 }, { 9, 0, 520 }, { 10, 0, 213 }, { 10, 0, 307 },
- { 10, 0, 463 }, { 10, 0, 671 }, { 10, 0, 746 }, { 11, 0, 401 },
- { 11, 0, 794 }, { 12, 0, 517 }, { 18, 0, 107 }, { 19, 0, 115 },
- { 5, 10, 115 }, { 22, 11, 28 }, { 4, 11, 136 }, { 5, 11, 551 },
- { 14, 10, 314 }, { 4, 0, 258 }, { 6, 0, 22 }, { 7, 0, 903 },
- { 7, 0, 1963 }, { 8, 0, 639 }, { 10, 0, 577 }, { 5, 0, 681 },
- { 8, 0, 782 }, { 13, 0, 130 }, { 17, 0, 84 }, { 5, 10, 193 },
- { 12, 10, 178 }, { 9, 11, 17 }, { 10, 11, 291 }, { 7, 11, 1287 },
- { 9, 11, 44 }, { 10, 11, 552 }, { 10, 11, 642 }, { 11, 11, 839 },
- { 12, 11, 274 }, { 12, 11, 275 }, { 12, 11, 372 }, { 13, 11, 91 },
- { 14, 11, 125 }, { 7, 10, 174 }, { 4, 0, 664 }, { 5, 0, 804 },
- { 11, 0, 1013 }, { 6, 0, 942 }, { 6, 0, 1349 }, { 6, 0, 1353 },
- { 6, 0, 1450 }, { 7, 11, 1518 }, { 11, 11, 694 }, { 11, 0, 356 },
- { 4, 10, 122 }, { 5, 10, 796 }, { 5, 10, 952 }, { 6, 10, 1660 },
- { 6, 10, 1671 }, { 8, 10, 567 }, { 9, 10, 687 }, { 9, 10, 742 },
- { 10, 10, 686 }, { 11, 10, 682 }, { 12, 10, 281 }, { 5, 0, 32 },
- { 6, 11, 147 }, { 7, 11, 886 }, { 9, 11, 753 }, { 10, 11, 268 },
- { 5, 10, 179 }, { 7, 10, 1095 }, { 7, 10, 1213 }, { 4, 10, 66 },
- { 7, 10, 722 }, { 7, 10, 904 }, { 7, 10, 352 }, { 9, 11, 245 },
- { 10, 11, 137 }, { 4, 0, 289 }, { 7, 0, 629 }, { 7, 0, 1698 },
- { 7, 0, 1711 }, { 12, 0, 215 }, { 5, 11, 414 }, { 6, 0, 1975 },
- { 7, 11, 1762 }, { 6, 0, 450 }, { 8, 0, 109 }, { 13, 10, 35 },
- { 6, 11, 599 }, { 8, 0, 705 }, { 5, 0, 664 }, { 6, 11, 1749 },
- { 11, 11, 402 }, { 12, 11, 109 }, { 12, 11, 431 }, { 13, 11, 179 },
- { 13, 11, 206 }, { 14, 11, 175 }, { 14, 11, 217 }, { 16, 11, 3 },
- { 20, 11, 53 }, { 7, 0, 1238 }, { 6, 11, 1627 }, { 4, 11, 488 },
- { 13, 0, 318 }, { 10, 10, 592 }, { 10, 10, 753 }, { 12, 10, 317 },
- { 12, 10, 355 }, { 12, 10, 465 }, { 12, 10, 469 }, { 12, 10, 560 },
- { 12, 10, 578 }, { 5, 10, 564 }, { 4, 11, 83 }, { 12, 11, 676 },
- { 6, 0, 1872 }, { 6, 0, 1906 }, { 6, 0, 1907 }, { 9, 0, 934 },
- { 9, 0, 956 }, { 9, 0, 960 }, { 9, 0, 996 }, { 12, 0, 794 },
- { 12, 0, 876 }, { 12, 0, 880 }, { 12, 0, 918 }, { 15, 0, 230 },
- { 18, 0, 234 }, { 18, 0, 238 }, { 21, 0, 38 }, { 21, 0, 62 },
- { 6, 10, 556 }, { 6, 11, 278 }, { 9, 0, 103 }, { 7, 10, 544 },
- { 8, 10, 719 }, { 10, 10, 61 }, { 4, 10, 5 }, { 5, 10, 498 },
- { 8, 10, 637 }, { 9, 10, 521 }, { 7, 0, 777 }, { 12, 0, 229 },
- { 12, 0, 239 }, { 15, 0, 12 }, { 12, 11, 229 }, { 12, 11, 239 },
- { 15, 11, 12 }, { 6, 0, 26 }, { 7, 11, 388 }, { 7, 11, 644 },
- { 11, 11, 781 }, { 7, 11, 229 }, { 8, 11, 59 }, { 9, 11, 190 },
- { 9, 11, 257 }, { 10, 11, 378 }, { 12, 11, 191 }, { 5, 10, 927 },
- { 7, 10, 1441 }, { 4, 10, 893 }, { 5, 10, 780 }, { 5, 10, 893 },
- { 4, 0, 414 }, { 5, 0, 467 }, { 9, 0, 654 }, { 10, 0, 451 },
- { 12, 0, 59 }, { 13, 0, 375 }, { 14, 0, 173 }, { 7, 0, 17 },
- { 7, 0, 1350 }, { 5, 10, 238 }, { 7, 0, 955 }, { 4, 0, 960 },
- { 10, 0, 887 }, { 12, 0, 753 }, { 18, 0, 161 }, { 18, 0, 162 },
- { 24, 0, 19 }, { 8, 11, 344 }, { 6, 10, 1729 }, { 9, 11, 288 },
- { 4, 11, 660 }, { 4, 0, 217 }, { 5, 0, 710 }, { 7, 0, 760 },
- { 7, 0, 1926 }, { 9, 0, 428 }, { 9, 0, 708 }, { 10, 0, 254 },
- { 10, 0, 296 }, { 10, 0, 720 }, { 11, 0, 109 }, { 11, 0, 255 },
- { 12, 0, 165 }, { 12, 0, 315 }, { 13, 0, 107 }, { 13, 0, 203 },
- { 14, 0, 54 }, { 14, 0, 99 }, { 14, 0, 114 }, { 14, 0, 388 },
- { 16, 0, 85 }, { 17, 0, 9 }, { 17, 0, 33 }, { 20, 0, 25 },
- { 20, 0, 28 }, { 20, 0, 29 }, { 21, 0, 9 }, { 21, 0, 10 },
- { 21, 0, 34 }, { 22, 0, 17 }, { 4, 10, 60 }, { 7, 10, 1800 },
- { 8, 10, 314 }, { 9, 10, 700 }, { 11, 10, 487 }, { 7, 11, 1035 },
- { 10, 11, 737 }, { 7, 11, 690 }, { 9, 11, 217 }, { 9, 11, 587 },
- { 12, 11, 521 }, { 6, 0, 919 }, { 7, 11, 706 }, { 7, 11, 1058 },
- { 10, 11, 538 }, { 7, 10, 1853 }, { 10, 10, 437 }, { 8, 10, 419 },
- { 6, 0, 280 }, { 10, 0, 502 }, { 11, 0, 344 }, { 12, 0, 38 },
- { 5, 0, 45 }, { 7, 0, 1161 }, { 11, 0, 448 }, { 11, 0, 880 },
- { 13, 0, 139 }, { 13, 0, 407 }, { 15, 0, 16 }, { 17, 0, 95 },
- { 18, 0, 66 }, { 18, 0, 88 }, { 18, 0, 123 }, { 21, 0, 7 },
- { 11, 11, 92 }, { 11, 11, 196 }, { 11, 11, 409 }, { 11, 11, 450 },
- { 11, 11, 666 }, { 11, 11, 777 }, { 12, 11, 262 }, { 13, 11, 385 },
- { 13, 11, 393 }, { 15, 11, 115 }, { 16, 11, 45 }, { 17, 11, 82 },
- { 8, 0, 777 }, { 6, 11, 1744 }, { 4, 0, 410 }, { 7, 0, 521 },
- { 5, 10, 828 }, { 6, 0, 673 }, { 7, 0, 1110 }, { 7, 0, 1778 },
- { 7, 10, 176 }, { 7, 10, 178 }, { 5, 10, 806 }, { 7, 11, 268 },
- { 7, 10, 1976 }, { 8, 11, 569 }, { 4, 11, 733 }, { 9, 11, 194 },
- { 10, 11, 92 }, { 11, 11, 198 }, { 12, 11, 84 }, { 12, 11, 87 },
- { 13, 11, 128 }, { 16, 11, 74 }, { 5, 0, 341 }, { 7, 0, 1129 },
- { 11, 0, 414 }, { 4, 10, 51 }, { 6, 10, 4 }, { 7, 10, 591 },
- { 7, 10, 849 }, { 7, 10, 951 }, { 7, 10, 1613 }, { 7, 10, 1760 },
- { 7, 10, 1988 }, { 9, 10, 434 }, { 10, 10, 754 }, { 11, 10, 25 },
- { 11, 10, 37 }, { 5, 10, 902 }, { 7, 10, 928 }, { 7, 0, 787 },
- { 4, 0, 436 }, { 6, 10, 270 }, { 7, 0, 1587 }, { 7, 0, 1707 },
- { 6, 0, 377 }, { 7, 0, 1025 }, { 9, 0, 613 }, { 17, 0, 104 },
- { 7, 11, 982 }, { 7, 11, 1361 }, { 10, 11, 32 }, { 15, 11, 56 },
- { 11, 0, 96 }, { 4, 0, 451 }, { 4, 10, 416 }, { 14, 10, 372 },
- { 5, 10, 152 }, { 5, 10, 197 }, { 7, 11, 306 }, { 7, 10, 340 },
- { 7, 10, 867 }, { 10, 10, 548 }, { 10, 10, 581 }, { 11, 10, 6 },
- { 12, 10, 3 }, { 12, 10, 19 }, { 14, 10, 110 }, { 14, 10, 289 },
- { 6, 0, 680 }, { 6, 11, 609 }, { 7, 0, 483 }, { 7, 10, 190 },
- { 8, 10, 28 }, { 8, 10, 141 }, { 8, 10, 444 }, { 8, 10, 811 },
- { 9, 10, 468 }, { 11, 10, 334 }, { 12, 10, 24 }, { 12, 10, 386 },
- { 12, 10, 576 }, { 10, 0, 916 }, { 5, 10, 757 }, { 5, 10, 721 },
- { 7, 10, 1553 }, { 5, 11, 178 }, { 6, 0, 937 }, { 4, 10, 898 },
- { 5, 0, 739 }, { 19, 0, 82 }, { 7, 0, 663 }, { 18, 0, 128 },
- { 5, 10, 277 }, { 13, 10, 247 }, { 6, 0, 1087 }, { 4, 10, 435 },
- { 6, 11, 381 }, { 7, 11, 645 }, { 7, 11, 694 }, { 8, 11, 546 },
- { 7, 0, 503 }, { 7, 0, 1885 }, { 6, 0, 1965 }, { 8, 0, 925 },
- { 10, 0, 955 }, { 4, 0, 113 }, { 5, 0, 163 }, { 5, 0, 735 },
- { 7, 0, 1009 }, { 9, 0, 9 }, { 9, 0, 771 }, { 12, 0, 90 },
- { 13, 0, 138 }, { 13, 0, 410 }, { 15, 0, 128 }, { 4, 0, 324 },
- { 10, 0, 104 }, { 7, 0, 460 }, { 5, 10, 265 }, { 6, 10, 212 },
- { 5, 11, 105 }, { 7, 11, 261 }, { 7, 11, 1107 }, { 7, 11, 1115 },
- { 7, 11, 1354 }, { 7, 11, 1588 }, { 7, 11, 1705 }, { 7, 11, 1902 },
- { 9, 11, 465 }, { 10, 11, 248 }, { 10, 11, 349 }, { 10, 11, 647 },
- { 11, 11, 527 }, { 11, 11, 660 }, { 11, 11, 669 }, { 12, 11, 529 },
- { 13, 11, 305 }, { 5, 11, 438 }, { 9, 11, 694 }, { 12, 11, 627 },
- { 13, 11, 210 }, { 24, 11, 11 }, { 4, 0, 935 }, { 5, 0, 823 },
- { 4, 10, 702 }, { 5, 0, 269 }, { 7, 0, 434 }, { 7, 0, 891 },
- { 8, 0, 339 }, { 9, 0, 702 }, { 11, 0, 594 }, { 11, 0, 718 },
- { 17, 0, 100 }, { 5, 10, 808 }, { 7, 10, 2045 }, { 7, 0, 1014 },
- { 9, 0, 485 }, { 13, 0, 264 }, { 6, 0, 1713 }, { 7, 0, 1810 },
- { 11, 0, 866 }, { 12, 0, 103 }, { 13, 0, 495 }, { 12, 11, 233 },
- { 4, 0, 423 }, { 10, 0, 949 }, { 10, 0, 1013 }, { 7, 0, 900 },
- { 8, 11, 25 }, { 10, 11, 826 }, { 5, 10, 166 }, { 8, 10, 739 },
- { 12, 10, 511 }, { 6, 0, 2018 }, { 7, 11, 1270 }, { 11, 11, 612 },
- { 4, 10, 119 }, { 5, 10, 170 }, { 5, 10, 447 }, { 7, 10, 1708 },
- { 7, 10, 1889 }, { 9, 10, 357 }, { 9, 10, 719 }, { 12, 10, 486 },
- { 12, 10, 596 }, { 12, 0, 574 }, { 12, 11, 574 }, { 4, 11, 308 },
- { 6, 0, 964 }, { 6, 0, 1206 }, { 6, 0, 1302 }, { 4, 10, 450 },
- { 7, 10, 1158 }, { 7, 11, 150 }, { 8, 11, 649 }, { 14, 0, 213 },
- { 20, 0, 38 }, { 9, 11, 45 }, { 9, 11, 311 }, { 13, 11, 42 },
- { 6, 11, 521 }, { 7, 10, 1375 }, { 7, 10, 1466 }, { 10, 10, 331 },
- { 4, 10, 754 }, { 5, 11, 339 }, { 7, 11, 1442 }, { 14, 11, 3 },
- { 15, 11, 41 }, { 19, 11, 66 }, { 8, 11, 378 }, { 6, 0, 1022 },
- { 5, 10, 850 }, { 8, 10, 799 }, { 14, 0, 143 }, { 7, 0, 2029 },
- { 6, 11, 1628 }, { 8, 0, 523 }, { 22, 0, 34 }, { 5, 0, 625 },
- { 7, 0, 1617 }, { 7, 0, 275 }, { 7, 10, 238 }, { 7, 10, 2033 },
- { 8, 10, 120 }, { 8, 10, 188 }, { 8, 10, 659 }, { 9, 10, 598 },
- { 10, 10, 466 }, { 12, 10, 342 }, { 12, 10, 588 }, { 13, 10, 503 },
- { 14, 10, 246 }, { 15, 10, 92 }, { 7, 0, 37 }, { 8, 0, 425 },
- { 8, 0, 693 }, { 9, 0, 720 }, { 10, 0, 380 }, { 10, 0, 638 },
- { 11, 0, 273 }, { 11, 0, 473 }, { 12, 0, 61 }, { 15, 0, 43 },
- { 7, 11, 829 }, { 7, 0, 1943 }, { 4, 0, 765 }, { 5, 11, 486 },
- { 7, 11, 1349 }, { 7, 11, 1635 }, { 8, 11, 17 }, { 10, 11, 217 },
- { 10, 11, 295 }, { 4, 10, 201 }, { 7, 10, 1744 }, { 8, 10, 602 },
- { 11, 10, 247 }, { 11, 10, 826 }, { 17, 10, 65 }, { 10, 11, 558 },
- { 11, 0, 551 }, { 14, 0, 159 }, { 8, 10, 164 }, { 18, 10, 62 },
- { 11, 11, 176 }, { 4, 0, 168 }, { 8, 0, 1010 }, { 6, 0, 1994 },
- { 7, 0, 91 }, { 10, 0, 532 }, { 7, 10, 1243 }, { 7, 0, 1884 },
- { 4, 10, 907 }, { 5, 10, 100 }, { 10, 10, 329 }, { 12, 10, 416 },
- { 21, 10, 29 }, { 6, 11, 447 }, { 4, 10, 176 }, { 5, 10, 636 },
- { 5, 10, 998 }, { 7, 10, 9 }, { 7, 10, 1508 }, { 8, 10, 26 },
- { 9, 10, 317 }, { 9, 10, 358 }, { 10, 10, 210 }, { 10, 10, 292 },
- { 10, 10, 533 }, { 11, 10, 555 }, { 12, 10, 526 }, { 12, 10, 607 },
- { 13, 10, 263 }, { 13, 10, 459 }, { 14, 10, 271 }, { 4, 11, 609 },
- { 7, 11, 756 }, { 6, 0, 15 }, { 7, 0, 70 }, { 10, 0, 240 },
- { 19, 0, 93 }, { 4, 11, 930 }, { 5, 11, 947 }, { 6, 0, 1227 },
- { 6, 0, 1534 }, { 5, 11, 939 }, { 5, 11, 962 }, { 5, 11, 651 },
- { 8, 11, 170 }, { 9, 11, 61 }, { 9, 11, 63 }, { 10, 11, 23 },
- { 10, 11, 37 }, { 10, 11, 834 }, { 11, 11, 4 }, { 11, 11, 187 },
- { 11, 11, 281 }, { 11, 11, 503 }, { 11, 11, 677 }, { 12, 11, 96 },
- { 12, 11, 130 }, { 12, 11, 244 }, { 14, 11, 5 }, { 14, 11, 40 },
- { 14, 11, 162 }, { 14, 11, 202 }, { 18, 11, 133 }, { 4, 11, 406 },
- { 5, 11, 579 }, { 12, 11, 492 }, { 22, 11, 15 }, { 11, 0, 392 },
- { 6, 10, 610 }, { 10, 10, 127 }, { 13, 10, 27 }, { 7, 0, 655 },
- { 7, 0, 1844 }, { 8, 10, 119 }, { 4, 0, 145 }, { 6, 0, 176 },
- { 7, 0, 395 }, { 9, 0, 562 }, { 4, 0, 501 }, { 12, 11, 145 },
- { 8, 0, 1019 }, { 6, 0, 509 }, { 11, 0, 267 }, { 6, 11, 17 },
- { 7, 11, 16 }, { 7, 11, 1001 }, { 7, 11, 1982 }, { 9, 11, 886 },
- { 10, 11, 489 }, { 10, 11, 800 }, { 11, 11, 782 }, { 12, 11, 320 },
- { 13, 11, 467 }, { 14, 11, 145 }, { 14, 11, 387 }, { 15, 11, 119 },
- { 17, 11, 17 }, { 6, 0, 1099 }, { 5, 11, 458 }, { 7, 11, 1983 },
- { 8, 11, 0 }, { 8, 11, 171 }, { 9, 11, 120 }, { 9, 11, 732 },
- { 10, 11, 473 }, { 11, 11, 656 }, { 11, 11, 998 }, { 18, 11, 0 },
- { 18, 11, 2 }, { 19, 11, 21 }, { 12, 11, 427 }, { 18, 11, 38 },
- { 10, 0, 948 }, { 10, 0, 968 }, { 7, 10, 126 }, { 8, 10, 84 },
- { 8, 10, 790 }, { 4, 0, 114 }, { 9, 0, 492 }, { 13, 0, 462 },
- { 14, 0, 215 }, { 6, 10, 64 }, { 12, 10, 377 }, { 13, 10, 309 },
- { 4, 0, 77 }, { 5, 0, 361 }, { 6, 0, 139 }, { 6, 0, 401 },
- { 6, 0, 404 }, { 7, 0, 413 }, { 7, 0, 715 }, { 7, 0, 1716 },
- { 11, 0, 279 }, { 12, 0, 179 }, { 12, 0, 258 }, { 13, 0, 244 },
- { 14, 0, 358 }, { 6, 0, 1717 }, { 7, 0, 772 }, { 7, 0, 1061 },
- { 7, 0, 1647 }, { 8, 0, 82 }, { 11, 0, 250 }, { 11, 0, 607 },
- { 12, 0, 311 }, { 12, 0, 420 }, { 13, 0, 184 }, { 13, 0, 367 },
- { 7, 10, 1104 }, { 11, 10, 269 }, { 11, 10, 539 }, { 11, 10, 627 },
- { 11, 10, 706 }, { 11, 10, 975 }, { 12, 10, 248 }, { 12, 10, 434 },
- { 12, 10, 600 }, { 12, 10, 622 }, { 13, 10, 297 }, { 13, 10, 485 },
- { 14, 10, 69 }, { 14, 10, 409 }, { 15, 10, 108 }, { 7, 0, 724 },
- { 4, 11, 512 }, { 4, 11, 519 }, { 5, 11, 342 }, { 6, 0, 1133 },
- { 17, 11, 29 }, { 11, 10, 977 }, { 13, 10, 507 }, { 6, 0, 841 },
- { 6, 0, 1042 }, { 6, 0, 1194 }, { 10, 0, 993 }, { 12, 0, 1021 },
- { 6, 11, 31 }, { 7, 11, 491 }, { 7, 11, 530 }, { 8, 11, 592 },
- { 9, 10, 34 }, { 11, 11, 53 }, { 11, 10, 484 }, { 11, 11, 779 },
- { 12, 11, 167 }, { 12, 11, 411 }, { 14, 11, 14 }, { 14, 11, 136 },
- { 15, 11, 72 }, { 16, 11, 17 }, { 16, 11, 72 }, { 4, 0, 1021 },
- { 6, 0, 2037 }, { 5, 11, 907 }, { 7, 0, 373 }, { 8, 0, 335 },
- { 8, 0, 596 }, { 9, 0, 488 }, { 6, 10, 1700 }, { 7, 10, 293 },
- { 7, 10, 382 }, { 7, 10, 1026 }, { 7, 10, 1087 }, { 7, 10, 2027 },
- { 8, 10, 252 }, { 8, 10, 727 }, { 8, 10, 729 }, { 9, 10, 30 },
- { 9, 10, 199 }, { 9, 10, 231 }, { 9, 10, 251 }, { 9, 10, 334 },
- { 9, 10, 361 }, { 9, 10, 712 }, { 10, 10, 55 }, { 10, 10, 60 },
- { 10, 10, 232 }, { 10, 10, 332 }, { 10, 10, 384 }, { 10, 10, 396 },
- { 10, 10, 504 }, { 10, 10, 542 }, { 10, 10, 652 }, { 11, 10, 20 },
- { 11, 10, 48 }, { 11, 10, 207 }, { 11, 10, 291 }, { 11, 10, 298 },
- { 11, 10, 342 }, { 11, 10, 365 }, { 11, 10, 394 }, { 11, 10, 620 },
- { 11, 10, 705 }, { 11, 10, 1017 }, { 12, 10, 123 }, { 12, 10, 340 },
- { 12, 10, 406 }, { 12, 10, 643 }, { 13, 10, 61 }, { 13, 10, 269 },
- { 13, 10, 311 }, { 13, 10, 319 }, { 13, 10, 486 }, { 14, 10, 234 },
- { 15, 10, 62 }, { 15, 10, 85 }, { 16, 10, 71 }, { 18, 10, 119 },
- { 20, 10, 105 }, { 22, 0, 37 }, { 4, 11, 208 }, { 5, 11, 106 },
- { 6, 11, 531 }, { 8, 11, 408 }, { 9, 11, 188 }, { 10, 11, 572 },
- { 4, 0, 564 }, { 6, 0, 513 }, { 7, 0, 1052 }, { 4, 0, 825 },
- { 9, 0, 899 }, { 12, 11, 441 }, { 6, 0, 778 }, { 5, 11, 379 },
- { 7, 0, 1417 }, { 12, 0, 382 }, { 17, 0, 48 }, { 24, 0, 12 },
- { 4, 11, 241 }, { 7, 0, 1116 }, { 6, 10, 379 }, { 7, 10, 270 },
- { 8, 10, 176 }, { 8, 10, 183 }, { 9, 10, 432 }, { 9, 10, 661 },
- { 12, 10, 247 }, { 12, 10, 617 }, { 18, 10, 125 }, { 5, 10, 792 },
- { 5, 10, 900 }, { 6, 0, 545 }, { 7, 0, 565 }, { 7, 0, 1669 },
- { 10, 0, 114 }, { 11, 0, 642 }, { 12, 0, 618 }, { 5, 0, 5 },
- { 10, 11, 7 }, { 4, 11, 259 }, { 7, 0, 192 }, { 6, 0, 701 },
- { 8, 0, 763 }, { 7, 10, 1979 }, { 4, 10, 901 }, { 5, 10, 776 },
- { 10, 0, 755 }, { 19, 0, 29 }, { 5, 0, 759 }, { 4, 11, 173 },
- { 5, 11, 312 }, { 5, 11, 512 }, { 7, 11, 1285 }, { 7, 11, 1603 },
- { 7, 11, 1691 }, { 9, 11, 464 }, { 11, 11, 195 }, { 12, 11, 279 },
- { 12, 11, 448 }, { 14, 11, 11 }, { 19, 11, 102 }, { 7, 0, 370 },
- { 7, 0, 1007 }, { 7, 0, 1177 }, { 7, 0, 1565 }, { 7, 0, 1237 },
- { 4, 0, 87 }, { 5, 0, 250 }, { 13, 0, 298 }, { 4, 11, 452 },
- { 5, 11, 583 }, { 5, 11, 817 }, { 6, 11, 433 }, { 7, 11, 593 },
- { 7, 11, 720 }, { 7, 11, 1378 }, { 8, 11, 161 }, { 9, 11, 284 },
- { 10, 11, 313 }, { 11, 11, 886 }, { 4, 11, 547 }, { 7, 11, 1409 },
- { 8, 11, 722 }, { 4, 10, 37 }, { 5, 10, 334 }, { 7, 10, 1253 },
- { 4, 10, 508 }, { 12, 0, 107 }, { 18, 0, 31 }, { 8, 11, 420 },
- { 11, 11, 193 }, { 7, 0, 814 }, { 7, 11, 409 }, { 12, 0, 991 },
- { 4, 0, 57 }, { 7, 0, 1195 }, { 7, 0, 1438 }, { 7, 0, 1548 },
- { 7, 0, 1835 }, { 7, 0, 1904 }, { 9, 0, 757 }, { 10, 0, 604 },
- { 11, 0, 519 }, { 4, 0, 540 }, { 10, 11, 308 }, { 4, 10, 533 },
- { 8, 0, 608 }, { 16, 11, 65 }, { 4, 0, 1014 }, { 6, 0, 2029 },
- { 4, 0, 209 }, { 7, 0, 902 }, { 5, 11, 1002 }, { 8, 11, 745 },
- { 6, 0, 2030 }, { 6, 0, 303 }, { 7, 0, 335 }, { 7, 0, 1437 },
- { 7, 0, 1668 }, { 8, 0, 553 }, { 8, 0, 652 }, { 8, 0, 656 },
- { 9, 0, 558 }, { 11, 0, 743 }, { 21, 0, 18 }, { 5, 11, 575 },
- { 6, 11, 354 }, { 7, 11, 701 }, { 4, 11, 239 }, { 6, 11, 477 },
- { 7, 11, 1607 }, { 11, 11, 68 }, { 11, 11, 617 }, { 4, 0, 559 },
- { 8, 0, 527 }, { 18, 0, 60 }, { 19, 0, 24 }, { 5, 10, 920 },
- { 10, 0, 511 }, { 5, 0, 1017 }, { 5, 0, 675 }, { 10, 10, 391 },
- { 11, 0, 156 }, { 7, 10, 1952 }, { 10, 11, 369 }, { 4, 11, 367 },
- { 5, 0, 709 }, { 6, 0, 698 }, { 6, 0, 887 }, { 14, 10, 126 },
- { 6, 0, 1745 }, { 4, 10, 483 }, { 13, 11, 299 }, { 14, 11, 75 },
- { 5, 0, 714 }, { 7, 0, 8 }, { 8, 0, 206 }, { 10, 10, 480 },
- { 4, 11, 694 }, { 9, 10, 495 }, { 18, 10, 104 }, { 7, 11, 1248 },
- { 11, 11, 621 }, { 11, 11, 702 }, { 12, 11, 687 }, { 4, 0, 776 },
- { 11, 10, 1009 }, { 7, 0, 1272 }, { 6, 0, 1059 }, { 8, 10, 653 },
- { 13, 10, 93 }, { 19, 10, 14 }, { 7, 11, 213 }, { 8, 0, 406 },
- { 5, 10, 172 }, { 4, 0, 947 }, { 8, 0, 175 }, { 10, 0, 168 },
- { 10, 0, 573 }, { 4, 0, 870 }, { 6, 0, 1567 }, { 23, 11, 28 },
- { 6, 11, 472 }, { 5, 10, 260 }, { 8, 11, 132 }, { 4, 11, 751 },
- { 11, 11, 390 }, { 12, 11, 32 }, { 4, 11, 409 }, { 5, 11, 78 },
- { 12, 0, 554 }, { 6, 11, 473 }, { 17, 11, 105 }, { 5, 0, 784 },
- { 8, 0, 908 }, { 8, 11, 306 }, { 11, 0, 882 }, { 6, 0, 358 },
- { 7, 0, 1393 }, { 8, 0, 396 }, { 10, 0, 263 }, { 14, 0, 154 },
- { 16, 0, 48 }, { 17, 0, 8 }, { 7, 11, 1759 }, { 8, 11, 396 },
- { 10, 11, 263 }, { 14, 11, 154 }, { 16, 11, 48 }, { 17, 11, 8 },
- { 13, 11, 163 }, { 13, 11, 180 }, { 18, 11, 78 }, { 20, 11, 35 },
- { 14, 0, 32 }, { 18, 0, 85 }, { 20, 0, 2 }, { 24, 0, 16 },
- { 7, 0, 228 }, { 10, 0, 770 }, { 8, 10, 167 }, { 8, 10, 375 },
- { 9, 10, 82 }, { 9, 10, 561 }, { 10, 10, 620 }, { 4, 0, 845 },
- { 9, 0, 14 }, { 9, 0, 441 }, { 10, 0, 306 }, { 11, 0, 9 },
- { 11, 0, 966 }, { 12, 0, 287 }, { 13, 0, 342 }, { 13, 0, 402 },
- { 15, 0, 110 }, { 15, 0, 163 }, { 8, 10, 194 }, { 8, 10, 756 },
- { 6, 0, 1578 }, { 4, 0, 967 }, { 6, 0, 1820 }, { 6, 0, 1847 },
- { 12, 0, 716 }, { 8, 0, 594 }, { 7, 0, 1428 }, { 7, 0, 1640 },
- { 7, 0, 1867 }, { 9, 0, 169 }, { 9, 0, 182 }, { 9, 0, 367 },
- { 9, 0, 478 }, { 9, 0, 506 }, { 9, 0, 551 }, { 9, 0, 557 },
- { 9, 0, 648 }, { 9, 0, 697 }, { 9, 0, 705 }, { 9, 0, 725 },
- { 9, 0, 787 }, { 9, 0, 794 }, { 10, 0, 198 }, { 10, 0, 214 },
- { 10, 0, 267 }, { 10, 0, 275 }, { 10, 0, 456 }, { 10, 0, 551 },
- { 10, 0, 561 }, { 10, 0, 613 }, { 10, 0, 627 }, { 10, 0, 668 },
- { 10, 0, 675 }, { 10, 0, 691 }, { 10, 0, 695 }, { 10, 0, 707 },
- { 10, 0, 715 }, { 11, 0, 183 }, { 11, 0, 201 }, { 11, 0, 244 },
- { 11, 0, 262 }, { 11, 0, 352 }, { 11, 0, 439 }, { 11, 0, 493 },
- { 11, 0, 572 }, { 11, 0, 591 }, { 11, 0, 608 }, { 11, 0, 611 },
- { 11, 0, 646 }, { 11, 0, 674 }, { 11, 0, 711 }, { 11, 0, 751 },
- { 11, 0, 761 }, { 11, 0, 776 }, { 11, 0, 785 }, { 11, 0, 850 },
- { 11, 0, 853 }, { 11, 0, 862 }, { 11, 0, 865 }, { 11, 0, 868 },
- { 11, 0, 875 }, { 11, 0, 898 }, { 11, 0, 902 }, { 11, 0, 903 },
- { 11, 0, 910 }, { 11, 0, 932 }, { 11, 0, 942 }, { 11, 0, 957 },
- { 11, 0, 967 }, { 11, 0, 972 }, { 12, 0, 148 }, { 12, 0, 195 },
- { 12, 0, 220 }, { 12, 0, 237 }, { 12, 0, 318 }, { 12, 0, 339 },
- { 12, 0, 393 }, { 12, 0, 445 }, { 12, 0, 450 }, { 12, 0, 474 },
- { 12, 0, 505 }, { 12, 0, 509 }, { 12, 0, 533 }, { 12, 0, 591 },
- { 12, 0, 594 }, { 12, 0, 597 }, { 12, 0, 621 }, { 12, 0, 633 },
- { 12, 0, 642 }, { 13, 0, 59 }, { 13, 0, 60 }, { 13, 0, 145 },
- { 13, 0, 239 }, { 13, 0, 250 }, { 13, 0, 329 }, { 13, 0, 344 },
- { 13, 0, 365 }, { 13, 0, 372 }, { 13, 0, 387 }, { 13, 0, 403 },
- { 13, 0, 414 }, { 13, 0, 456 }, { 13, 0, 470 }, { 13, 0, 478 },
- { 13, 0, 483 }, { 13, 0, 489 }, { 14, 0, 55 }, { 14, 0, 57 },
- { 14, 0, 81 }, { 14, 0, 90 }, { 14, 0, 148 }, { 14, 0, 239 },
- { 14, 0, 266 }, { 14, 0, 321 }, { 14, 0, 326 }, { 14, 0, 327 },
- { 14, 0, 330 }, { 14, 0, 347 }, { 14, 0, 355 }, { 14, 0, 401 },
- { 14, 0, 404 }, { 14, 0, 411 }, { 14, 0, 414 }, { 14, 0, 416 },
- { 14, 0, 420 }, { 15, 0, 61 }, { 15, 0, 74 }, { 15, 0, 87 },
- { 15, 0, 88 }, { 15, 0, 94 }, { 15, 0, 96 }, { 15, 0, 116 },
- { 15, 0, 149 }, { 15, 0, 154 }, { 16, 0, 50 }, { 16, 0, 63 },
- { 16, 0, 73 }, { 17, 0, 2 }, { 17, 0, 66 }, { 17, 0, 92 },
- { 17, 0, 103 }, { 17, 0, 112 }, { 17, 0, 120 }, { 18, 0, 50 },
- { 18, 0, 54 }, { 18, 0, 82 }, { 18, 0, 86 }, { 18, 0, 90 },
- { 18, 0, 111 }, { 18, 0, 115 }, { 18, 0, 156 }, { 19, 0, 40 },
- { 19, 0, 79 }, { 20, 0, 78 }, { 21, 0, 22 }, { 7, 11, 883 },
- { 5, 0, 161 }, { 7, 0, 839 }, { 4, 0, 782 }, { 13, 11, 293 },
- { 14, 11, 56 }, { 5, 11, 617 }, { 11, 11, 50 }, { 7, 10, 22 },
- { 17, 0, 64 }, { 5, 10, 639 }, { 7, 10, 1249 }, { 11, 10, 896 },
- { 10, 0, 998 }, { 7, 11, 2042 }, { 4, 11, 546 }, { 14, 11, 233 },
- { 6, 0, 1043 }, { 6, 0, 1574 }, { 6, 0, 1496 }, { 4, 10, 102 },
- { 7, 10, 815 }, { 7, 10, 1699 }, { 11, 10, 964 }, { 12, 0, 781 },
- { 14, 0, 461 }, { 4, 11, 313 }, { 5, 11, 577 }, { 6, 0, 639 },
- { 6, 0, 1114 }, { 9, 0, 817 }, { 8, 11, 184 }, { 13, 11, 433 },
- { 7, 0, 1814 }, { 7, 11, 935 }, { 10, 0, 997 }, { 12, 0, 958 },
- { 4, 0, 812 }, { 9, 11, 625 }, { 4, 10, 899 }, { 8, 10, 795 },
- { 5, 11, 886 }, { 6, 11, 46 }, { 6, 11, 1790 }, { 7, 11, 14 },
- { 7, 11, 732 }, { 7, 11, 1654 }, { 8, 11, 95 }, { 8, 11, 327 },
- { 8, 11, 616 }, { 10, 11, 598 }, { 10, 11, 769 }, { 11, 11, 134 },
- { 11, 11, 747 }, { 12, 11, 378 }, { 14, 11, 97 }, { 8, 0, 139 },
- { 6, 10, 52 }, { 9, 10, 104 }, { 9, 10, 559 }, { 12, 10, 308 },
- { 19, 10, 87 }, { 5, 11, 1021 }, { 4, 10, 604 }, { 4, 10, 301 },
- { 8, 10, 779 }, { 7, 0, 643 }, { 8, 0, 236 }, { 4, 11, 153 },
- { 6, 0, 1172 }, { 19, 10, 32 }, { 5, 11, 798 }, { 6, 0, 1338 },
- { 4, 11, 587 }, { 6, 11, 598 }, { 7, 11, 42 }, { 8, 11, 695 },
- { 10, 11, 212 }, { 11, 11, 158 }, { 14, 11, 196 }, { 17, 11, 85 },
- { 7, 10, 508 }, { 5, 11, 957 }, { 5, 11, 1008 }, { 7, 11, 249 },
- { 4, 11, 129 }, { 7, 11, 465 }, { 5, 0, 54 }, { 7, 11, 470 },
- { 7, 11, 1057 }, { 7, 11, 1201 }, { 9, 11, 755 }, { 11, 11, 906 },
- { 12, 11, 527 }, { 7, 11, 908 }, { 18, 11, 7 }, { 5, 11, 148 },
- { 8, 11, 450 }, { 16, 11, 1 }, { 4, 0, 256 }, { 7, 0, 1488 },
- { 9, 0, 351 }, { 6, 10, 310 }, { 7, 10, 1849 }, { 8, 10, 72 },
- { 8, 10, 272 }, { 8, 10, 431 }, { 9, 10, 12 }, { 10, 10, 563 },
- { 10, 10, 630 }, { 10, 10, 796 }, { 10, 10, 810 }, { 11, 10, 367 },
- { 11, 10, 599 }, { 11, 10, 686 }, { 12, 10, 672 }, { 6, 0, 1885 },
- { 6, 0, 1898 }, { 6, 0, 1899 }, { 12, 0, 955 }, { 4, 0, 714 },
- { 5, 0, 469 }, { 6, 0, 1270 }, { 6, 0, 1456 }, { 4, 0, 744 },
- { 6, 0, 313 }, { 7, 10, 537 }, { 8, 10, 64 }, { 9, 10, 127 },
- { 10, 10, 496 }, { 12, 10, 510 }, { 13, 10, 384 }, { 4, 11, 217 },
- { 4, 10, 244 }, { 5, 11, 710 }, { 7, 10, 233 }, { 7, 11, 1926 },
- { 9, 11, 428 }, { 9, 11, 708 }, { 10, 11, 254 }, { 10, 11, 296 },
- { 10, 11, 720 }, { 11, 11, 109 }, { 11, 11, 255 }, { 12, 11, 165 },
- { 12, 11, 315 }, { 13, 11, 107 }, { 13, 11, 203 }, { 14, 11, 54 },
- { 14, 11, 99 }, { 14, 11, 114 }, { 14, 11, 388 }, { 16, 11, 85 },
- { 17, 11, 9 }, { 17, 11, 33 }, { 20, 11, 25 }, { 20, 11, 28 },
- { 20, 11, 29 }, { 21, 11, 9 }, { 21, 11, 10 }, { 21, 11, 34 },
- { 22, 11, 17 }, { 10, 0, 402 }, { 7, 0, 969 }, { 18, 0, 55 },
- { 8, 0, 50 }, { 9, 0, 624 }, { 6, 0, 1355 }, { 4, 0, 572 },
- { 6, 10, 1650 }, { 10, 10, 702 }, { 11, 10, 245 }, { 10, 0, 847 },
- { 14, 0, 445 }, { 6, 0, 43 }, { 7, 0, 38 }, { 8, 0, 248 },
- { 10, 0, 513 }, { 5, 0, 369 }, { 9, 10, 338 }, { 5, 0, 766 },
- { 5, 0, 363 }, { 5, 10, 896 }, { 8, 11, 392 }, { 11, 11, 54 },
- { 13, 11, 173 }, { 13, 11, 294 }, { 20, 11, 7 }, { 6, 0, 678 },
- { 7, 11, 1230 }, { 8, 11, 531 }, { 6, 0, 258 }, { 12, 0, 409 },
- { 5, 0, 249 }, { 20, 0, 82 }, { 7, 10, 1117 }, { 8, 10, 539 },
- { 5, 0, 393 }, { 6, 0, 378 }, { 7, 0, 1981 }, { 9, 0, 32 },
- { 9, 0, 591 }, { 10, 0, 685 }, { 10, 0, 741 }, { 14, 0, 382 },
- { 5, 0, 788 }, { 6, 0, 1281 }, { 6, 0, 1295 }, { 7, 0, 1968 },
- { 13, 0, 509 }, { 4, 0, 61 }, { 5, 0, 58 }, { 5, 0, 171 },
- { 5, 0, 683 }, { 6, 0, 291 }, { 6, 0, 566 }, { 7, 0, 1650 },
- { 11, 0, 523 }, { 12, 0, 273 }, { 12, 0, 303 }, { 15, 0, 39 },
- { 15, 0, 111 }, { 6, 0, 706 }, { 6, 0, 1283 }, { 6, 0, 589 },
- { 7, 11, 1433 }, { 5, 11, 435 }, { 7, 0, 1059 }, { 13, 0, 54 },
- { 5, 10, 4 }, { 5, 10, 810 }, { 6, 10, 13 }, { 6, 10, 538 },
- { 6, 10, 1690 }, { 6, 10, 1726 }, { 7, 10, 1819 }, { 8, 10, 148 },
- { 8, 10, 696 }, { 8, 10, 791 }, { 12, 10, 125 }, { 15, 10, 9 },
- { 7, 10, 1268 }, { 5, 11, 85 }, { 6, 11, 419 }, { 7, 11, 134 },
- { 7, 11, 305 }, { 7, 11, 361 }, { 7, 11, 1337 }, { 8, 11, 71 },
- { 12, 11, 519 }, { 9, 0, 824 }, { 12, 11, 688 }, { 5, 11, 691 },
- { 7, 11, 345 }, { 7, 10, 1385 }, { 9, 11, 94 }, { 11, 10, 582 },
- { 11, 10, 650 }, { 11, 10, 901 }, { 11, 10, 949 }, { 12, 11, 169 },
- { 12, 10, 232 }, { 12, 10, 236 }, { 13, 10, 413 }, { 13, 10, 501 },
- { 18, 10, 116 }, { 4, 0, 917 }, { 5, 0, 1005 }, { 7, 0, 1598 },
- { 5, 11, 183 }, { 6, 11, 582 }, { 9, 11, 344 }, { 10, 11, 679 },
- { 12, 11, 435 }, { 4, 10, 925 }, { 5, 10, 803 }, { 8, 10, 698 },
- { 10, 10, 828 }, { 4, 0, 919 }, { 7, 11, 511 }, { 11, 10, 992 },
- { 4, 0, 255 }, { 5, 0, 302 }, { 6, 0, 132 }, { 7, 0, 128 },
- { 7, 0, 283 }, { 7, 0, 1299 }, { 10, 0, 52 }, { 10, 0, 514 },
- { 11, 0, 925 }, { 13, 0, 92 }, { 14, 0, 309 }, { 6, 0, 1369 },
- { 7, 10, 1847 }, { 6, 0, 328 }, { 7, 11, 1993 }, { 8, 11, 684 },
- { 5, 10, 383 }, { 9, 0, 173 }, { 6, 11, 583 }, { 6, 0, 1411 },
- { 19, 0, 65 }, { 5, 11, 704 }, { 8, 11, 357 }, { 10, 11, 745 },
- { 14, 11, 426 }, { 17, 11, 94 }, { 19, 11, 57 }, { 9, 10, 660 },
- { 10, 10, 347 }, { 4, 11, 179 }, { 5, 11, 198 }, { 5, 11, 697 },
- { 7, 11, 347 }, { 7, 11, 971 }, { 8, 11, 181 }, { 10, 11, 711 },
- { 13, 0, 442 }, { 11, 0, 842 }, { 11, 0, 924 }, { 13, 0, 317 },
- { 13, 0, 370 }, { 13, 0, 469 }, { 13, 0, 471 }, { 14, 0, 397 },
- { 18, 0, 69 }, { 18, 0, 145 }, { 7, 10, 572 }, { 9, 10, 592 },
- { 11, 10, 680 }, { 12, 10, 356 }, { 12, 10, 550 }, { 14, 11, 19 },
- { 14, 11, 28 }, { 16, 11, 29 }, { 8, 0, 534 }, { 4, 11, 243 },
- { 5, 11, 203 }, { 7, 11, 19 }, { 7, 11, 71 }, { 7, 11, 113 },
- { 10, 11, 405 }, { 11, 11, 357 }, { 14, 11, 240 }, { 6, 0, 210 },
- { 10, 0, 845 }, { 10, 0, 862 }, { 7, 11, 1351 }, { 9, 11, 581 },
- { 10, 11, 639 }, { 11, 11, 453 }, { 12, 11, 584 }, { 7, 11, 1450 },
- { 11, 11, 99 }, { 10, 0, 892 }, { 12, 0, 719 }, { 16, 0, 105 },
- { 4, 0, 284 }, { 6, 0, 223 }, { 6, 11, 492 }, { 5, 11, 134 },
- { 6, 11, 408 }, { 6, 11, 495 }, { 7, 11, 1593 }, { 8, 0, 529 },
- { 9, 0, 807 }, { 4, 0, 218 }, { 7, 0, 526 }, { 15, 0, 137 },
- { 6, 0, 1444 }, { 14, 11, 4 }, { 4, 11, 665 }, { 4, 0, 270 },
- { 5, 0, 192 }, { 6, 0, 332 }, { 7, 0, 1322 }, { 4, 11, 248 },
- { 7, 11, 137 }, { 9, 11, 349 }, { 12, 0, 661 }, { 7, 0, 1517 },
- { 11, 0, 597 }, { 14, 0, 76 }, { 14, 0, 335 }, { 20, 0, 33 },
- { 7, 10, 748 }, { 11, 10, 700 }, { 5, 11, 371 }, { 7, 11, 563 },
- { 18, 11, 57 }, { 5, 10, 127 }, { 5, 0, 418 }, { 4, 11, 374 },
- { 7, 11, 547 }, { 7, 11, 1700 }, { 7, 11, 1833 }, { 11, 11, 858 },
- { 6, 10, 198 }, { 12, 10, 83 }, { 7, 11, 1812 }, { 13, 11, 259 },
- { 13, 11, 356 }, { 14, 11, 242 }, { 19, 11, 114 }, { 7, 0, 379 },
- { 8, 0, 481 }, { 9, 0, 377 }, { 5, 10, 276 }, { 6, 10, 55 },
- { 7, 10, 1369 }, { 10, 11, 286 }, { 5, 0, 1003 }, { 6, 0, 149 },
- { 6, 10, 1752 }, { 8, 10, 726 }, { 8, 0, 262 }, { 9, 0, 627 },
- { 10, 0, 18 }, { 11, 0, 214 }, { 11, 0, 404 }, { 11, 0, 457 },
- { 11, 0, 780 }, { 11, 0, 913 }, { 13, 0, 401 }, { 14, 0, 200 },
- { 6, 11, 1647 }, { 7, 11, 1552 }, { 7, 11, 2010 }, { 9, 11, 494 },
- { 9, 11, 509 }, { 7, 0, 742 }, { 8, 0, 304 }, { 4, 0, 142 },
- { 5, 10, 764 }, { 6, 10, 309 }, { 7, 10, 331 }, { 10, 10, 550 },
- { 7, 10, 1062 }, { 6, 11, 123 }, { 7, 11, 214 }, { 7, 10, 986 },
- { 9, 11, 728 }, { 10, 11, 157 }, { 11, 11, 346 }, { 11, 11, 662 },
- { 15, 11, 106 }, { 7, 10, 1573 }, { 7, 0, 925 }, { 9, 0, 799 },
- { 4, 0, 471 }, { 5, 0, 51 }, { 6, 0, 602 }, { 8, 0, 484 },
- { 10, 0, 195 }, { 8, 0, 688 }, { 4, 0, 697 }, { 6, 0, 1169 },
- { 6, 0, 1241 }, { 6, 10, 194 }, { 7, 10, 133 }, { 10, 10, 493 },
- { 10, 10, 570 }, { 11, 10, 664 }, { 12, 0, 751 }, { 7, 0, 929 },
- { 10, 0, 452 }, { 11, 0, 878 }, { 16, 0, 33 }, { 5, 10, 24 },
- { 5, 10, 569 }, { 6, 10, 3 }, { 6, 10, 119 }, { 6, 10, 143 },
- { 6, 10, 440 }, { 7, 10, 599 }, { 7, 10, 1686 }, { 7, 10, 1854 },
- { 8, 10, 424 }, { 9, 10, 43 }, { 9, 10, 584 }, { 9, 10, 760 },
- { 10, 10, 328 }, { 11, 10, 159 }, { 11, 10, 253 }, { 12, 10, 487 },
- { 12, 10, 531 }, { 4, 11, 707 }, { 13, 11, 106 }, { 18, 11, 49 },
- { 19, 11, 41 }, { 5, 0, 221 }, { 5, 11, 588 }, { 6, 11, 393 },
- { 6, 0, 1437 }, { 6, 11, 211 }, { 7, 11, 1690 }, { 11, 11, 486 },
- { 12, 11, 369 }, { 5, 10, 14 }, { 5, 10, 892 }, { 6, 10, 283 },
- { 7, 10, 234 }, { 8, 10, 537 }, { 4, 0, 988 }, { 8, 0, 955 },
- { 7, 0, 1251 }, { 4, 10, 126 }, { 8, 10, 635 }, { 19, 10, 34 },
- { 4, 10, 316 }, { 7, 10, 1561 }, { 9, 10, 861 }, { 4, 10, 64 },
- { 5, 10, 352 }, { 5, 10, 720 }, { 6, 10, 368 }, { 11, 10, 359 },
- { 6, 0, 192 }, { 4, 0, 132 }, { 5, 0, 69 }, { 7, 0, 1242 },
- { 7, 10, 1577 }, { 10, 10, 304 }, { 10, 10, 549 }, { 12, 10, 365 },
- { 13, 10, 220 }, { 13, 10, 240 }, { 14, 10, 33 }, { 4, 0, 111 },
- { 7, 0, 865 }, { 6, 11, 219 }, { 5, 11, 582 }, { 6, 11, 1646 },
- { 7, 11, 99 }, { 7, 11, 1962 }, { 7, 11, 1986 }, { 8, 11, 515 },
- { 8, 11, 773 }, { 9, 11, 23 }, { 9, 11, 491 }, { 12, 11, 620 },
- { 14, 11, 52 }, { 17, 11, 50 }, { 4, 0, 767 }, { 7, 11, 568 },
- { 20, 11, 21 }, { 6, 0, 42 }, { 7, 0, 1416 }, { 7, 0, 2005 },
- { 8, 0, 131 }, { 8, 0, 466 }, { 9, 0, 672 }, { 13, 0, 252 },
- { 20, 0, 103 }, { 5, 11, 851 }, { 7, 0, 1050 }, { 6, 10, 175 },
- { 9, 10, 289 }, { 5, 10, 432 }, { 5, 10, 913 }, { 6, 0, 44 },
- { 8, 0, 368 }, { 7, 11, 784 }, { 4, 0, 570 }, { 5, 0, 120 },
- { 11, 10, 595 }, { 12, 0, 29 }, { 6, 0, 227 }, { 7, 0, 1589 },
- { 4, 11, 98 }, { 7, 11, 1365 }, { 9, 11, 422 }, { 9, 11, 670 },
- { 10, 11, 775 }, { 11, 11, 210 }, { 13, 11, 26 }, { 13, 11, 457 },
- { 13, 11, 476 }, { 12, 10, 80 }, { 5, 10, 931 }, { 6, 10, 1698 },
- { 5, 0, 522 }, { 6, 0, 1120 }, { 7, 0, 1529 }, { 12, 0, 739 },
- { 14, 0, 448 }, { 14, 0, 467 }, { 11, 10, 526 }, { 11, 10, 939 },
- { 13, 10, 290 }, { 5, 10, 774 }, { 6, 10, 1637 }, { 6, 10, 1686 },
- { 6, 10, 1751 }, { 6, 0, 1667 }, { 7, 0, 2036 }, { 7, 10, 1167 },
- { 11, 10, 934 }, { 13, 10, 391 }, { 17, 10, 76 }, { 9, 11, 147 },
- { 6, 10, 260 }, { 7, 10, 1484 }, { 11, 11, 821 }, { 12, 11, 110 },
- { 12, 11, 153 }, { 18, 11, 41 }, { 22, 11, 19 }, { 6, 0, 511 },
- { 12, 0, 132 }, { 6, 10, 573 }, { 5, 0, 568 }, { 6, 0, 138 },
- { 7, 0, 1293 }, { 4, 0, 1020 }, { 8, 0, 258 }, { 9, 0, 208 },
- { 9, 0, 359 }, { 4, 0, 565 }, { 8, 0, 23 }, { 8, 0, 827 },
- { 6, 0, 344 }, { 4, 0, 922 }, { 5, 0, 1023 }, { 13, 11, 477 },
- { 14, 11, 120 }, { 20, 11, 61 }, { 6, 0, 240 }, { 5, 11, 209 },
- { 6, 11, 30 }, { 11, 11, 56 }, { 11, 11, 305 }, { 6, 0, 171 },
- { 7, 0, 1002 }, { 7, 0, 1324 }, { 9, 0, 415 }, { 14, 0, 230 },
- { 18, 0, 68 }, { 4, 10, 292 }, { 4, 10, 736 }, { 5, 10, 871 },
- { 6, 10, 1689 }, { 7, 10, 1944 }, { 9, 10, 580 }, { 9, 11, 635 },
- { 11, 11, 559 }, { 4, 11, 150 }, { 5, 11, 303 }, { 6, 11, 327 },
- { 6, 10, 63 }, { 7, 10, 920 }, { 5, 10, 793 }, { 8, 11, 192 },
- { 10, 11, 78 }, { 10, 11, 555 }, { 11, 11, 308 }, { 13, 11, 359 },
- { 19, 11, 95 }, { 7, 11, 786 }, { 7, 11, 1712 }, { 8, 0, 402 },
- { 6, 0, 754 }, { 6, 11, 1638 }, { 7, 11, 79 }, { 7, 11, 496 },
- { 9, 11, 138 }, { 10, 11, 336 }, { 11, 11, 12 }, { 12, 11, 412 },
- { 12, 11, 440 }, { 14, 11, 305 }, { 4, 0, 716 }, { 13, 0, 31 },
- { 5, 0, 982 }, { 8, 0, 691 }, { 8, 0, 731 }, { 5, 10, 67 },
- { 6, 10, 62 }, { 6, 10, 374 }, { 7, 10, 1391 }, { 9, 10, 790 },
- { 12, 10, 47 }, { 11, 11, 556 }, { 23, 11, 1 }, { 7, 11, 204 },
- { 7, 11, 415 }, { 8, 11, 42 }, { 10, 11, 85 }, { 11, 11, 33 },
- { 11, 11, 564 }, { 12, 11, 571 }, { 21, 11, 1 }, { 8, 0, 888 },
- { 7, 11, 610 }, { 7, 11, 1501 }, { 4, 10, 391 }, { 7, 10, 1169 },
- { 5, 0, 847 }, { 9, 0, 840 }, { 10, 0, 803 }, { 9, 0, 823 },
- { 6, 0, 785 }, { 8, 0, 152 }, { 9, 0, 53 }, { 9, 0, 268 },
- { 9, 0, 901 }, { 10, 0, 518 }, { 10, 0, 829 }, { 11, 0, 188 },
- { 13, 0, 74 }, { 14, 0, 46 }, { 15, 0, 17 }, { 15, 0, 33 },
- { 17, 0, 40 }, { 18, 0, 36 }, { 19, 0, 20 }, { 22, 0, 1 },
- { 24, 0, 2 }, { 4, 11, 3 }, { 5, 11, 247 }, { 5, 11, 644 },
- { 7, 11, 744 }, { 7, 11, 1207 }, { 7, 11, 1225 }, { 7, 11, 1909 },
- { 18, 11, 147 }, { 8, 0, 532 }, { 7, 0, 681 }, { 4, 10, 271 },
- { 12, 0, 314 }, { 12, 0, 677 }, { 4, 0, 684 }, { 8, 0, 384 },
- { 5, 11, 285 }, { 9, 11, 67 }, { 13, 11, 473 }, { 15, 11, 82 },
- { 4, 10, 253 }, { 5, 10, 544 }, { 7, 10, 300 }, { 9, 10, 340 },
- { 7, 0, 110 }, { 7, 0, 447 }, { 8, 0, 290 }, { 8, 0, 591 },
- { 9, 0, 382 }, { 9, 0, 649 }, { 11, 0, 71 }, { 11, 0, 155 },
- { 11, 0, 313 }, { 12, 0, 5 }, { 13, 0, 325 }, { 14, 0, 287 },
- { 6, 0, 1818 }, { 8, 0, 1007 }, { 10, 0, 321 }, { 7, 0, 360 },
- { 7, 0, 425 }, { 9, 0, 66 }, { 9, 0, 278 }, { 10, 0, 644 },
- { 5, 10, 818 }, { 5, 0, 385 }, { 5, 10, 541 }, { 6, 10, 94 },
- { 6, 10, 499 }, { 7, 10, 230 }, { 11, 10, 321 }, { 4, 10, 920 },
- { 5, 10, 25 }, { 5, 10, 790 }, { 6, 10, 457 }, { 7, 10, 853 },
- { 8, 10, 788 }, { 4, 0, 900 }, { 5, 0, 861 }, { 5, 0, 254 },
- { 7, 0, 985 }, { 8, 0, 73 }, { 7, 0, 1959 }, { 8, 0, 683 },
- { 6, 10, 1765 }, { 5, 10, 822 }, { 4, 10, 634 }, { 4, 11, 29 },
- { 6, 11, 532 }, { 7, 11, 1628 }, { 7, 11, 1648 }, { 9, 11, 303 },
- { 9, 11, 350 }, { 10, 11, 433 }, { 11, 11, 97 }, { 11, 11, 557 },
- { 11, 11, 745 }, { 12, 11, 289 }, { 12, 11, 335 }, { 12, 11, 348 },
- { 12, 11, 606 }, { 13, 11, 116 }, { 13, 11, 233 }, { 13, 11, 466 },
- { 14, 11, 181 }, { 14, 11, 209 }, { 14, 11, 232 }, { 14, 11, 236 },
- { 14, 11, 300 }, { 16, 11, 41 }, { 20, 11, 97 }, { 19, 0, 86 },
- { 6, 10, 36 }, { 7, 10, 658 }, { 8, 10, 454 }, { 7, 11, 1692 },
- { 4, 0, 725 }, { 5, 11, 501 }, { 7, 11, 1704 }, { 9, 11, 553 },
- { 11, 11, 520 }, { 12, 11, 557 }, { 13, 11, 249 }, { 6, 0, 196 },
- { 5, 0, 831 }, { 8, 0, 723 }, { 7, 0, 1897 }, { 13, 0, 80 },
- { 13, 0, 437 }, { 17, 0, 74 }, { 4, 0, 992 }, { 6, 0, 627 },
- { 8, 0, 994 }, { 7, 11, 1294 }, { 4, 10, 104 }, { 5, 0, 848 },
- { 6, 0, 66 }, { 8, 0, 764 }, { 4, 0, 36 }, { 7, 0, 1387 },
- { 10, 0, 205 }, { 11, 0, 755 }, { 6, 0, 1046 }, { 6, 0, 1485 },
- { 6, 0, 950 }, { 4, 0, 887 }, { 14, 0, 450 }, { 20, 0, 111 },
- { 7, 0, 620 }, { 7, 0, 831 }, { 9, 10, 542 }, { 9, 10, 566 },
- { 10, 10, 728 }, { 6, 0, 165 }, { 10, 0, 388 }, { 11, 10, 263 },
- { 4, 0, 719 }, { 7, 0, 155 }, { 10, 10, 468 }, { 6, 11, 453 },
- { 16, 11, 36 }, { 6, 11, 129 }, { 5, 0, 533 }, { 7, 0, 755 },
- { 10, 0, 780 }, { 6, 0, 1465 }, { 4, 0, 353 }, { 6, 0, 146 },
- { 6, 0, 1789 }, { 7, 0, 427 }, { 7, 0, 990 }, { 7, 0, 1348 },
- { 9, 0, 665 }, { 9, 0, 898 }, { 11, 0, 893 }, { 14, 0, 212 },
- { 7, 10, 87 }, { 14, 10, 288 }, { 4, 0, 45 }, { 7, 0, 1257 },
- { 12, 0, 7 }, { 7, 10, 988 }, { 7, 10, 1939 }, { 9, 10, 64 },
- { 9, 10, 502 }, { 12, 10, 34 }, { 13, 10, 12 }, { 13, 10, 234 },
- { 19, 10, 77 }, { 4, 0, 607 }, { 5, 11, 60 }, { 6, 11, 504 },
- { 7, 11, 614 }, { 7, 11, 1155 }, { 12, 11, 0 }, { 7, 10, 141 },
- { 8, 11, 198 }, { 11, 11, 29 }, { 12, 11, 534 }, { 12, 0, 65 },
- { 8, 0, 816 }, { 4, 10, 619 }, { 11, 0, 88 }, { 5, 10, 246 },
- { 8, 10, 189 }, { 9, 10, 355 }, { 9, 10, 512 }, { 10, 10, 124 },
- { 10, 10, 453 }, { 11, 10, 143 }, { 11, 10, 416 }, { 11, 10, 859 },
- { 13, 10, 341 }, { 4, 11, 379 }, { 7, 11, 1397 }, { 4, 0, 600 },
- { 9, 0, 621 }, { 5, 0, 367 }, { 6, 0, 561 }, { 6, 0, 559 },
- { 6, 0, 1691 }, { 6, 0, 585 }, { 6, 11, 585 }, { 7, 11, 1228 },
- { 4, 11, 118 }, { 5, 10, 678 }, { 6, 11, 274 }, { 6, 11, 361 },
- { 7, 11, 75 }, { 13, 11, 441 }, { 7, 11, 1818 }, { 9, 11, 841 },
- { 5, 0, 573 }, { 6, 0, 287 }, { 7, 10, 862 }, { 7, 10, 1886 },
- { 10, 10, 179 }, { 4, 10, 517 }, { 12, 11, 693 }, { 5, 11, 314 },
- { 6, 11, 221 }, { 7, 11, 419 }, { 10, 11, 650 }, { 11, 11, 396 },
- { 12, 11, 156 }, { 13, 11, 369 }, { 14, 11, 333 }, { 17, 11, 47 },
- { 12, 10, 540 }, { 8, 10, 667 }, { 11, 10, 403 }, { 18, 10, 83 },
- { 6, 0, 672 }, { 5, 10, 761 }, { 9, 0, 157 }, { 10, 10, 131 },
- { 12, 10, 72 }, { 7, 0, 714 }, { 6, 11, 460 }, { 6, 0, 456 },
- { 5, 0, 925 }, { 5, 11, 682 }, { 7, 11, 1887 }, { 8, 11, 510 },
- { 8, 11, 475 }, { 5, 11, 1016 }, { 9, 0, 19 }, { 7, 11, 602 },
- { 8, 11, 179 }, { 10, 11, 781 }, { 12, 11, 126 }, { 6, 11, 329 },
- { 10, 11, 111 }, { 6, 0, 822 }, { 6, 0, 1473 }, { 16, 11, 86 },
- { 11, 0, 113 }, { 11, 11, 113 }, { 5, 11, 821 }, { 6, 11, 1687 },
- { 5, 10, 449 }, { 7, 0, 463 }, { 17, 0, 69 }, { 8, 10, 103 },
- { 7, 10, 2028 }, { 10, 10, 641 }, { 6, 0, 193 }, { 7, 0, 240 },
- { 7, 0, 1682 }, { 10, 0, 51 }, { 10, 0, 640 }, { 11, 0, 410 },
- { 13, 0, 82 }, { 14, 0, 247 }, { 14, 0, 331 }, { 14, 0, 377 },
- { 6, 0, 471 }, { 11, 0, 411 }, { 14, 0, 2 }, { 5, 11, 71 },
- { 7, 11, 1407 }, { 9, 11, 388 }, { 9, 11, 704 }, { 10, 11, 261 },
- { 10, 11, 619 }, { 11, 11, 547 }, { 11, 11, 619 }, { 15, 11, 157 },
- { 8, 0, 633 }, { 7, 0, 1148 }, { 6, 0, 554 }, { 7, 0, 1392 },
- { 12, 0, 129 }, { 7, 10, 1274 }, { 7, 10, 1386 }, { 7, 11, 2008 },
- { 9, 11, 337 }, { 10, 11, 517 }, { 18, 10, 87 }, { 7, 0, 803 },
- { 8, 0, 542 }, { 6, 10, 187 }, { 7, 10, 1203 }, { 8, 10, 380 },
- { 14, 10, 117 }, { 21, 10, 28 }, { 6, 10, 297 }, { 7, 10, 793 },
- { 11, 10, 938 }, { 8, 0, 438 }, { 11, 0, 363 }, { 7, 10, 464 },
- { 11, 10, 105 }, { 12, 10, 231 }, { 14, 10, 386 }, { 15, 10, 102 },
- { 20, 10, 75 }, { 5, 11, 16 }, { 6, 11, 86 }, { 6, 11, 603 },
- { 7, 11, 292 }, { 7, 11, 561 }, { 8, 11, 257 }, { 8, 11, 382 },
- { 9, 11, 721 }, { 9, 11, 778 }, { 11, 11, 581 }, { 12, 11, 466 },
- { 6, 0, 717 }, { 4, 11, 486 }, { 5, 11, 491 }, { 4, 0, 875 },
- { 4, 11, 72 }, { 6, 11, 265 }, { 7, 11, 847 }, { 4, 0, 237 },
- { 7, 0, 514 }, { 6, 0, 392 }, { 7, 0, 65 }, { 7, 0, 2019 },
- { 12, 11, 261 }, { 7, 11, 922 }, { 9, 11, 404 }, { 12, 0, 563 },
- { 14, 0, 101 }, { 18, 0, 129 }, { 7, 10, 1010 }, { 11, 10, 733 },
- { 11, 10, 759 }, { 13, 10, 34 }, { 18, 10, 45 }, { 7, 10, 1656 },
- { 9, 10, 369 }, { 10, 10, 338 }, { 10, 10, 490 }, { 11, 10, 154 },
- { 11, 10, 545 }, { 11, 10, 775 }, { 13, 10, 77 }, { 13, 10, 274 },
- { 4, 0, 444 }, { 10, 0, 146 }, { 12, 0, 9 }, { 11, 11, 163 },
- { 7, 0, 1260 }, { 7, 0, 1790 }, { 9, 0, 222 }, { 10, 0, 43 },
- { 11, 0, 900 }, { 9, 11, 234 }, { 10, 0, 971 }, { 9, 0, 761 },
- { 6, 0, 699 }, { 8, 11, 434 }, { 6, 0, 1116 }, { 7, 0, 1366 },
- { 5, 10, 20 }, { 6, 11, 197 }, { 6, 10, 298 }, { 7, 10, 659 },
- { 8, 11, 205 }, { 9, 10, 219 }, { 4, 11, 490 }, { 11, 11, 820 },
- { 22, 11, 51 }, { 7, 10, 1440 }, { 11, 10, 854 }, { 11, 10, 872 },
- { 11, 10, 921 }, { 12, 10, 551 }, { 13, 10, 472 }, { 14, 10, 367 },
- { 12, 11, 13 }, { 4, 0, 829 }, { 12, 0, 242 }, { 4, 10, 439 },
- { 8, 10, 669 }, { 6, 0, 593 }, { 6, 11, 452 }, { 7, 11, 312 },
- { 10, 11, 219 }, { 4, 11, 333 }, { 9, 11, 176 }, { 12, 11, 353 },
- { 13, 11, 187 }, { 7, 0, 36 }, { 8, 0, 201 }, { 8, 0, 605 },
- { 12, 0, 224 }, { 4, 10, 233 }, { 6, 0, 1430 }, { 6, 0, 1806 },
- { 4, 0, 523 }, { 5, 0, 638 }, { 6, 0, 1889 }, { 9, 0, 958 },
- { 9, 0, 971 }, { 9, 0, 976 }, { 12, 0, 796 }, { 12, 0, 799 },
- { 12, 0, 808 }, { 12, 0, 835 }, { 12, 0, 836 }, { 12, 0, 914 },
- { 12, 0, 946 }, { 15, 0, 216 }, { 15, 0, 232 }, { 18, 0, 183 },
- { 18, 0, 187 }, { 18, 0, 194 }, { 18, 0, 212 }, { 18, 0, 232 },
- { 21, 0, 49 }, { 4, 10, 482 }, { 6, 0, 827 }, { 6, 0, 1434 },
- { 7, 10, 346 }, { 6, 0, 2043 }, { 6, 0, 242 }, { 7, 0, 227 },
- { 7, 0, 1581 }, { 8, 0, 104 }, { 9, 0, 113 }, { 9, 0, 220 },
- { 9, 0, 427 }, { 10, 0, 136 }, { 10, 0, 239 }, { 11, 0, 579 },
- { 11, 0, 1023 }, { 13, 0, 4 }, { 13, 0, 204 }, { 13, 0, 316 },
- { 20, 0, 86 }, { 6, 11, 1685 }, { 7, 0, 148 }, { 8, 0, 284 },
- { 13, 0, 63 }, { 14, 0, 10 }, { 7, 11, 584 }, { 6, 0, 1249 },
- { 7, 0, 861 }, { 7, 10, 334 }, { 5, 10, 795 }, { 6, 10, 1741 },
- { 9, 11, 70 }, { 4, 0, 807 }, { 7, 11, 135 }, { 8, 11, 7 },
- { 8, 11, 62 }, { 9, 11, 243 }, { 10, 11, 658 }, { 10, 11, 697 },
- { 11, 11, 456 }, { 11, 11, 756 }, { 9, 11, 395 }, { 10, 11, 79 },
- { 9, 11, 108 }, { 19, 0, 94 }, { 8, 0, 494 }, { 7, 11, 631 },
- { 7, 10, 622 }, { 7, 0, 1510 }, { 7, 10, 1750 }, { 4, 10, 203 },
- { 7, 10, 1936 }, { 7, 11, 406 }, { 7, 11, 459 }, { 8, 11, 606 },
- { 11, 11, 726 }, { 7, 0, 1306 }, { 8, 0, 505 }, { 9, 0, 482 },
- { 10, 0, 126 }, { 11, 0, 225 }, { 12, 0, 347 }, { 12, 0, 449 },
- { 13, 0, 19 }, { 14, 0, 218 }, { 14, 0, 435 }, { 5, 0, 268 },
- { 10, 0, 764 }, { 12, 0, 120 }, { 13, 0, 39 }, { 17, 0, 127 },
- { 14, 11, 68 }, { 11, 10, 678 }, { 12, 10, 307 }, { 12, 11, 268 },
- { 12, 11, 640 }, { 14, 11, 119 }, { 7, 10, 2044 }, { 5, 11, 612 },
- { 4, 11, 372 }, { 7, 11, 482 }, { 8, 11, 158 }, { 9, 11, 602 },
- { 9, 11, 615 }, { 10, 11, 245 }, { 10, 11, 678 }, { 10, 11, 744 },
- { 11, 11, 248 }, { 11, 11, 806 }, { 7, 10, 311 }, { 9, 10, 308 },
- { 12, 10, 255 }, { 4, 0, 384 }, { 7, 0, 1022 }, { 5, 11, 854 },
- { 7, 11, 1991 }, { 7, 10, 1266 }, { 4, 10, 400 }, { 5, 10, 267 },
- { 7, 10, 232 }, { 7, 0, 1703 }, { 9, 0, 159 }, { 11, 0, 661 },
- { 12, 0, 603 }, { 4, 0, 964 }, { 14, 0, 438 }, { 14, 0, 444 },
- { 14, 0, 456 }, { 22, 0, 60 }, { 22, 0, 63 }, { 9, 11, 106 },
- { 9, 11, 163 }, { 9, 11, 296 }, { 10, 11, 167 }, { 10, 11, 172 },
- { 10, 11, 777 }, { 11, 11, 16 }, { 8, 0, 583 }, { 4, 0, 515 },
- { 8, 0, 632 }, { 8, 0, 697 }, { 9, 0, 854 }, { 5, 11, 195 },
- { 7, 11, 1685 }, { 6, 0, 1123 }, { 6, 0, 1365 }, { 6, 11, 328 },
- { 7, 11, 1997 }, { 8, 11, 730 }, { 11, 11, 1006 }, { 4, 0, 136 },
- { 5, 0, 551 }, { 6, 0, 1782 }, { 7, 0, 1287 }, { 9, 0, 44 },
- { 10, 0, 552 }, { 10, 0, 642 }, { 11, 0, 839 }, { 12, 0, 274 },
- { 12, 0, 275 }, { 12, 0, 372 }, { 13, 0, 91 }, { 14, 0, 125 },
- { 5, 11, 751 }, { 11, 11, 797 }, { 12, 11, 203 }, { 5, 0, 732 },
- { 7, 0, 679 }, { 8, 0, 313 }, { 4, 10, 100 }, { 7, 11, 821 },
- { 10, 0, 361 }, { 14, 0, 316 }, { 6, 0, 595 }, { 6, 0, 147 },
- { 7, 0, 886 }, { 9, 0, 753 }, { 10, 0, 268 }, { 5, 10, 362 },
- { 5, 10, 443 }, { 6, 10, 318 }, { 7, 10, 1019 }, { 11, 10, 623 },
- { 5, 10, 463 }, { 8, 10, 296 }, { 4, 10, 454 }, { 5, 11, 950 },
- { 5, 11, 994 }, { 6, 11, 351 }, { 10, 0, 137 }, { 5, 10, 48 },
- { 5, 10, 404 }, { 6, 10, 557 }, { 7, 10, 458 }, { 8, 10, 597 },
- { 10, 10, 455 }, { 10, 10, 606 }, { 11, 10, 49 }, { 11, 10, 548 },
- { 12, 10, 476 }, { 13, 10, 18 }, { 13, 10, 450 }, { 5, 0, 414 },
- { 7, 0, 1762 }, { 5, 11, 421 }, { 7, 11, 47 }, { 5, 10, 442 },
- { 7, 10, 1984 }, { 6, 0, 599 }, { 6, 0, 1749 }, { 6, 0, 1627 },
- { 4, 0, 488 }, { 4, 11, 350 }, { 9, 11, 751 }, { 4, 0, 83 },
- { 12, 0, 676 }, { 5, 11, 967 }, { 7, 0, 1639 }, { 5, 10, 55 },
- { 12, 10, 161 }, { 4, 11, 473 }, { 7, 11, 623 }, { 8, 11, 808 },
- { 9, 11, 871 }, { 9, 11, 893 }, { 11, 11, 38 }, { 11, 11, 431 },
- { 12, 11, 112 }, { 12, 11, 217 }, { 12, 11, 243 }, { 12, 11, 562 },
- { 12, 11, 683 }, { 13, 11, 141 }, { 13, 11, 197 }, { 13, 11, 227 },
- { 13, 11, 406 }, { 13, 11, 487 }, { 14, 11, 156 }, { 14, 11, 203 },
- { 14, 11, 224 }, { 14, 11, 256 }, { 18, 11, 58 }, { 22, 11, 0 },
- { 5, 10, 450 }, { 7, 11, 736 }, { 11, 11, 264 }, { 6, 0, 278 },
- { 4, 11, 222 }, { 7, 11, 286 }, { 8, 11, 629 }, { 7, 10, 869 },
- { 12, 0, 97 }, { 16, 0, 14 }, { 6, 0, 1085 }, { 4, 10, 213 },
- { 7, 10, 223 }, { 8, 10, 80 }, { 7, 0, 388 }, { 7, 0, 644 },
- { 11, 0, 781 }, { 4, 0, 849 }, { 7, 0, 229 }, { 8, 0, 59 },
- { 9, 0, 190 }, { 10, 0, 378 }, { 12, 0, 191 }, { 7, 10, 381 },
- { 7, 10, 806 }, { 7, 10, 820 }, { 8, 10, 354 }, { 8, 10, 437 },
- { 8, 10, 787 }, { 9, 10, 657 }, { 10, 10, 58 }, { 10, 10, 339 },
- { 10, 10, 749 }, { 11, 10, 914 }, { 12, 10, 162 }, { 13, 10, 75 },
- { 14, 10, 106 }, { 14, 10, 198 }, { 14, 10, 320 }, { 14, 10, 413 },
- { 18, 10, 43 }, { 13, 11, 306 }, { 8, 10, 747 }, { 6, 0, 1115 },
- { 16, 0, 94 }, { 16, 0, 108 }, { 8, 11, 146 }, { 6, 0, 700 },
- { 6, 0, 817 }, { 6, 0, 1002 }, { 5, 10, 692 }, { 4, 11, 465 },
- { 7, 11, 1663 }, { 6, 10, 191 }, { 6, 0, 1414 }, { 7, 11, 913 },
- { 4, 0, 660 }, { 7, 0, 1035 }, { 10, 0, 737 }, { 6, 10, 162 },
- { 7, 10, 1960 }, { 8, 10, 831 }, { 4, 10, 706 }, { 7, 0, 690 },
- { 9, 0, 217 }, { 9, 0, 587 }, { 12, 0, 521 }, { 10, 10, 426 },
- { 7, 10, 1235 }, { 6, 11, 82 }, { 7, 11, 138 }, { 7, 11, 517 },
- { 9, 11, 673 }, { 11, 11, 238 }, { 10, 0, 272 }, { 5, 11, 495 },
- { 7, 11, 834 }, { 9, 11, 733 }, { 11, 11, 378 }, { 6, 0, 1744 },
- { 4, 0, 1011 }, { 7, 11, 828 }, { 14, 11, 116 }, { 4, 0, 733 },
- { 9, 0, 194 }, { 10, 0, 92 }, { 11, 0, 198 }, { 12, 0, 84 },
- { 13, 0, 128 }, { 5, 11, 559 }, { 10, 0, 57 }, { 10, 0, 277 },
- { 6, 11, 21 }, { 6, 11, 1737 }, { 7, 11, 1444 }, { 8, 11, 224 },
- { 4, 10, 204 }, { 9, 10, 902 }, { 8, 10, 833 }, { 11, 0, 348 },
- { 12, 0, 99 }, { 18, 0, 1 }, { 18, 0, 11 }, { 19, 0, 4 },
- { 7, 10, 366 }, { 9, 10, 287 }, { 12, 10, 199 }, { 12, 10, 556 },
- { 12, 10, 577 }, { 6, 0, 1981 }, { 8, 0, 936 }, { 21, 0, 33 },
- { 22, 0, 40 }, { 5, 11, 519 }, { 10, 11, 204 }, { 5, 10, 356 },
- { 7, 10, 224 }, { 6, 0, 775 }, { 7, 0, 306 }, { 7, 10, 630 },
- { 9, 10, 567 }, { 11, 10, 150 }, { 11, 10, 444 }, { 13, 10, 119 },
- { 5, 0, 979 }, { 6, 10, 539 }, { 5, 0, 611 }, { 4, 11, 402 },
- { 7, 11, 1679 }, { 5, 0, 178 }, { 7, 11, 2 }, { 8, 11, 323 },
- { 8, 11, 479 }, { 5, 11, 59 }, { 7, 11, 672 }, { 4, 0, 1010 },
- { 6, 0, 1969 }, { 10, 11, 237 }, { 5, 11, 412 }, { 18, 11, 34 },
- { 7, 11, 1740 }, { 18, 11, 48 }, { 6, 0, 664 }, { 11, 10, 814 },
- { 4, 11, 85 }, { 7, 11, 549 }, { 5, 11, 94 }, { 5, 11, 457 },
- { 4, 0, 390 }, { 6, 0, 1510 }, { 4, 10, 235 }, { 7, 10, 255 },
- { 4, 10, 194 }, { 5, 10, 584 }, { 6, 11, 11 }, { 6, 10, 384 },
- { 7, 11, 187 }, { 7, 10, 583 }, { 10, 10, 761 }, { 11, 10, 760 },
- { 11, 10, 851 }, { 4, 11, 522 }, { 11, 11, 802 }, { 7, 0, 493 },
- { 10, 11, 776 }, { 13, 11, 345 }, { 14, 11, 425 }, { 18, 0, 37 },
- { 4, 11, 52 }, { 7, 11, 661 }, { 6, 0, 724 }, { 6, 0, 829 },
- { 5, 11, 520 }, { 5, 10, 562 }, { 4, 11, 281 }, { 5, 11, 38 },
- { 7, 11, 194 }, { 7, 11, 668 }, { 7, 11, 1893 }, { 9, 11, 397 },
- { 5, 10, 191 }, { 9, 10, 271 }, { 7, 0, 1537 }, { 14, 0, 96 },
- { 15, 0, 73 }, { 5, 0, 473 }, { 11, 0, 168 }, { 4, 10, 470 },
- { 6, 10, 153 }, { 7, 10, 1503 }, { 7, 10, 1923 }, { 10, 10, 701 },
- { 11, 10, 132 }, { 11, 10, 227 }, { 11, 10, 320 }, { 11, 10, 436 },
- { 11, 10, 525 }, { 11, 10, 855 }, { 12, 10, 41 }, { 12, 10, 286 },
- { 13, 10, 103 }, { 13, 10, 284 }, { 14, 10, 255 }, { 14, 10, 262 },
- { 15, 10, 117 }, { 15, 10, 127 }, { 5, 0, 105 }, { 5, 0, 438 },
- { 9, 0, 694 }, { 12, 0, 627 }, { 13, 0, 210 }, { 5, 10, 327 },
- { 6, 10, 552 }, { 7, 10, 1754 }, { 9, 10, 604 }, { 6, 0, 1256 },
- { 24, 0, 11 }, { 5, 11, 448 }, { 11, 11, 98 }, { 11, 11, 524 },
- { 7, 0, 1626 }, { 5, 10, 80 }, { 6, 10, 405 }, { 7, 10, 403 },
- { 7, 10, 1502 }, { 8, 10, 456 }, { 9, 10, 487 }, { 9, 10, 853 },
- { 9, 10, 889 }, { 10, 10, 309 }, { 11, 10, 721 }, { 11, 10, 994 },
- { 12, 10, 430 }, { 13, 10, 165 }, { 14, 11, 16 }, { 18, 11, 44 },
- { 4, 0, 779 }, { 8, 0, 25 }, { 10, 0, 826 }, { 4, 10, 453 },
- { 5, 10, 887 }, { 6, 10, 535 }, { 8, 10, 6 }, { 8, 10, 543 },
- { 8, 10, 826 }, { 9, 11, 461 }, { 12, 11, 632 }, { 4, 0, 308 },
- { 7, 0, 741 }, { 4, 0, 671 }, { 7, 0, 150 }, { 8, 0, 649 },
- { 8, 0, 1020 }, { 9, 0, 99 }, { 6, 11, 336 }, { 8, 11, 552 },
- { 9, 11, 285 }, { 10, 11, 99 }, { 11, 11, 568 }, { 6, 0, 521 },
- { 5, 0, 339 }, { 14, 0, 3 }, { 15, 0, 41 }, { 15, 0, 166 },
- { 19, 0, 66 }, { 6, 11, 423 }, { 7, 11, 665 }, { 7, 11, 1210 },
- { 9, 11, 218 }, { 13, 11, 222 }, { 6, 0, 543 }, { 5, 10, 101 },
- { 5, 11, 256 }, { 6, 10, 88 }, { 7, 10, 1677 }, { 9, 10, 100 },
- { 10, 10, 677 }, { 14, 10, 169 }, { 14, 10, 302 }, { 14, 10, 313 },
- { 15, 10, 48 }, { 15, 10, 84 }, { 4, 10, 310 }, { 7, 10, 708 },
- { 7, 10, 996 }, { 9, 10, 795 }, { 10, 10, 390 }, { 10, 10, 733 },
- { 11, 10, 451 }, { 12, 10, 249 }, { 14, 10, 115 }, { 14, 10, 286 },
- { 15, 10, 100 }, { 5, 10, 587 }, { 13, 11, 417 }, { 14, 11, 129 },
- { 15, 11, 15 }, { 6, 0, 1358 }, { 8, 11, 554 }, { 4, 10, 498 },
- { 7, 10, 217 }, { 8, 10, 140 }, { 10, 10, 610 }, { 7, 11, 989 },
- { 7, 11, 634 }, { 6, 0, 155 }, { 12, 0, 234 }, { 7, 11, 462 },
- { 4, 11, 618 }, { 6, 0, 1628 }, { 4, 0, 766 }, { 4, 11, 339 },
- { 5, 10, 905 }, { 7, 11, 259 }, { 7, 0, 829 }, { 4, 11, 759 },
- { 13, 11, 169 }, { 7, 0, 1445 }, { 4, 10, 456 }, { 7, 10, 358 },
- { 7, 10, 1637 }, { 8, 10, 643 }, { 11, 10, 483 }, { 5, 0, 486 },
- { 7, 0, 1349 }, { 5, 11, 688 }, { 7, 11, 712 }, { 7, 0, 1635 },
- { 8, 0, 17 }, { 10, 0, 217 }, { 10, 0, 295 }, { 12, 0, 2 },
- { 12, 11, 2 }, { 10, 0, 558 }, { 22, 10, 56 }, { 4, 11, 278 },
- { 5, 11, 465 }, { 7, 11, 1367 }, { 8, 11, 482 }, { 5, 10, 535 },
- { 6, 0, 1362 }, { 6, 0, 1461 }, { 10, 11, 274 }, { 10, 11, 625 },
- { 11, 11, 530 }, { 5, 0, 599 }, { 5, 11, 336 }, { 6, 11, 341 },
- { 6, 11, 478 }, { 6, 11, 1763 }, { 8, 11, 386 }, { 7, 10, 1748 },
- { 9, 11, 151 }, { 6, 0, 1376 }, { 5, 10, 539 }, { 7, 11, 73 },
- { 7, 11, 1971 }, { 11, 11, 283 }, { 9, 0, 93 }, { 11, 0, 474 },
- { 6, 10, 91 }, { 7, 10, 435 }, { 6, 0, 447 }, { 5, 11, 396 },
- { 6, 11, 501 }, { 4, 10, 16 }, { 5, 10, 316 }, { 5, 10, 842 },
- { 6, 10, 370 }, { 6, 10, 1778 }, { 8, 10, 166 }, { 11, 10, 812 },
- { 12, 10, 206 }, { 12, 10, 351 }, { 14, 10, 418 }, { 16, 10, 15 },
- { 16, 10, 34 }, { 18, 10, 3 }, { 19, 10, 3 }, { 19, 10, 7 },
- { 20, 10, 4 }, { 21, 10, 21 }, { 7, 0, 577 }, { 7, 0, 1432 },
- { 9, 0, 475 }, { 9, 0, 505 }, { 9, 0, 526 }, { 9, 0, 609 },
- { 9, 0, 689 }, { 9, 0, 726 }, { 9, 0, 735 }, { 9, 0, 738 },
- { 10, 0, 556 }, { 10, 0, 674 }, { 10, 0, 684 }, { 11, 0, 89 },
- { 11, 0, 202 }, { 11, 0, 272 }, { 11, 0, 380 }, { 11, 0, 415 },
- { 11, 0, 505 }, { 11, 0, 537 }, { 11, 0, 550 }, { 11, 0, 562 },
- { 11, 0, 640 }, { 11, 0, 667 }, { 11, 0, 688 }, { 11, 0, 847 },
- { 11, 0, 927 }, { 11, 0, 930 }, { 11, 0, 940 }, { 12, 0, 144 },
- { 12, 0, 325 }, { 12, 0, 329 }, { 12, 0, 389 }, { 12, 0, 403 },
- { 12, 0, 451 }, { 12, 0, 515 }, { 12, 0, 604 }, { 12, 0, 616 },
- { 12, 0, 626 }, { 13, 0, 66 }, { 13, 0, 131 }, { 13, 0, 167 },
- { 13, 0, 236 }, { 13, 0, 368 }, { 13, 0, 411 }, { 13, 0, 434 },
- { 13, 0, 453 }, { 13, 0, 461 }, { 13, 0, 474 }, { 14, 0, 59 },
- { 14, 0, 60 }, { 14, 0, 139 }, { 14, 0, 152 }, { 14, 0, 276 },
- { 14, 0, 353 }, { 14, 0, 402 }, { 15, 0, 28 }, { 15, 0, 81 },
- { 15, 0, 123 }, { 15, 0, 152 }, { 18, 0, 136 }, { 20, 0, 88 },
- { 4, 11, 929 }, { 5, 11, 799 }, { 8, 11, 46 }, { 14, 0, 307 },
- { 4, 0, 609 }, { 7, 0, 756 }, { 9, 0, 544 }, { 11, 0, 413 },
- { 16, 0, 25 }, { 10, 0, 687 }, { 7, 10, 619 }, { 10, 10, 547 },
- { 11, 10, 122 }, { 12, 10, 601 }, { 4, 0, 930 }, { 5, 0, 947 },
- { 5, 0, 939 }, { 14, 0, 21 }, { 4, 11, 892 }, { 5, 11, 770 },
- { 5, 0, 962 }, { 5, 0, 651 }, { 8, 0, 170 }, { 9, 0, 61 },
- { 9, 0, 63 }, { 10, 0, 23 }, { 10, 0, 37 }, { 10, 0, 834 },
- { 11, 0, 4 }, { 11, 0, 187 }, { 11, 0, 281 }, { 11, 0, 503 },
- { 11, 0, 677 }, { 12, 0, 96 }, { 12, 0, 130 }, { 12, 0, 244 },
- { 14, 0, 5 }, { 14, 0, 40 }, { 14, 0, 162 }, { 14, 0, 202 },
- { 18, 0, 133 }, { 4, 0, 406 }, { 5, 0, 579 }, { 12, 0, 492 },
- { 22, 0, 15 }, { 7, 11, 158 }, { 7, 0, 597 }, { 4, 0, 981 },
- { 4, 10, 888 }, { 4, 10, 149 }, { 10, 10, 368 }, { 4, 0, 545 },
- { 4, 10, 154 }, { 7, 10, 1134 }, { 8, 10, 105 }, { 7, 11, 2001 },
- { 6, 0, 1558 }, { 4, 10, 31 }, { 6, 10, 429 }, { 7, 10, 962 },
- { 9, 10, 458 }, { 11, 10, 691 }, { 4, 10, 312 }, { 7, 10, 1642 },
- { 6, 0, 17 }, { 6, 0, 1304 }, { 7, 0, 16 }, { 7, 0, 1001 },
- { 9, 0, 886 }, { 10, 0, 489 }, { 10, 0, 800 }, { 11, 0, 782 },
- { 12, 0, 320 }, { 13, 0, 467 }, { 14, 0, 145 }, { 14, 0, 387 },
- { 15, 0, 119 }, { 7, 0, 1982 }, { 17, 0, 17 }, { 7, 11, 1461 },
- { 12, 11, 91 }, { 4, 10, 236 }, { 4, 11, 602 }, { 10, 0, 907 },
- { 8, 0, 110 }, { 7, 0, 272 }, { 19, 0, 53 }, { 5, 10, 836 },
- { 5, 10, 857 }, { 6, 10, 1680 }, { 5, 0, 458 }, { 7, 11, 1218 },
- { 8, 11, 303 }, { 7, 0, 1983 }, { 8, 0, 0 }, { 8, 0, 171 },
- { 9, 0, 120 }, { 9, 0, 732 }, { 10, 0, 473 }, { 11, 0, 656 },
- { 11, 0, 998 }, { 18, 0, 0 }, { 18, 0, 2 }, { 19, 0, 21 },
- { 10, 10, 68 }, { 11, 10, 494 }, { 9, 11, 662 }, { 4, 11, 13 },
- { 5, 11, 567 }, { 7, 11, 1498 }, { 9, 11, 124 }, { 11, 11, 521 },
- { 12, 11, 405 }, { 4, 10, 81 }, { 11, 10, 867 }, { 7, 11, 1006 },
- { 7, 11, 800 }, { 7, 11, 1783 }, { 10, 11, 12 }, { 9, 0, 295 },
- { 10, 0, 443 }, { 5, 10, 282 }, { 8, 10, 650 }, { 9, 10, 907 },
- { 4, 11, 735 }, { 4, 11, 170 }, { 4, 10, 775 }, { 7, 11, 323 },
- { 6, 0, 1844 }, { 10, 0, 924 }, { 11, 11, 844 }, { 12, 11, 104 },
- { 12, 11, 625 }, { 5, 11, 304 }, { 7, 11, 1403 }, { 12, 11, 498 },
- { 6, 0, 1232 }, { 4, 0, 519 }, { 10, 0, 70 }, { 12, 0, 26 },
- { 14, 0, 17 }, { 14, 0, 178 }, { 15, 0, 34 }, { 21, 0, 12 },
- { 4, 0, 993 }, { 4, 11, 148 }, { 5, 11, 742 }, { 6, 0, 31 },
- { 7, 0, 491 }, { 7, 0, 530 }, { 8, 0, 592 }, { 11, 0, 53 },
- { 11, 0, 779 }, { 12, 0, 167 }, { 12, 0, 411 }, { 14, 0, 14 },
- { 14, 0, 136 }, { 15, 0, 72 }, { 16, 0, 17 }, { 16, 0, 72 },
- { 5, 0, 907 }, { 6, 0, 733 }, { 5, 11, 111 }, { 4, 10, 71 },
- { 5, 10, 376 }, { 7, 10, 119 }, { 10, 10, 665 }, { 8, 0, 55 },
- { 8, 0, 430 }, { 8, 11, 430 }, { 4, 0, 208 }, { 5, 0, 106 },
- { 6, 0, 531 }, { 8, 0, 408 }, { 9, 0, 188 }, { 10, 0, 572 },
- { 12, 0, 56 }, { 11, 10, 827 }, { 14, 10, 34 }, { 15, 10, 148 },
- { 6, 0, 1693 }, { 5, 11, 444 }, { 4, 10, 479 }, { 12, 0, 441 },
- { 9, 0, 449 }, { 10, 0, 192 }, { 10, 0, 740 }, { 6, 0, 928 },
- { 4, 0, 241 }, { 7, 10, 607 }, { 8, 10, 99 }, { 8, 11, 123 },
- { 15, 11, 6 }, { 16, 11, 7 }, { 6, 11, 285 }, { 8, 11, 654 },
- { 11, 11, 749 }, { 12, 11, 190 }, { 12, 11, 327 }, { 13, 11, 120 },
- { 13, 11, 121 }, { 13, 11, 327 }, { 15, 11, 47 }, { 18, 11, 40 },
- { 4, 10, 41 }, { 5, 10, 74 }, { 7, 10, 1627 }, { 11, 10, 871 },
- { 12, 10, 619 }, { 7, 0, 1525 }, { 11, 10, 329 }, { 11, 10, 965 },
- { 12, 10, 241 }, { 14, 10, 354 }, { 15, 10, 22 }, { 20, 10, 63 },
- { 4, 0, 259 }, { 7, 11, 183 }, { 9, 10, 209 }, { 9, 10, 300 },
- { 5, 11, 937 }, { 7, 11, 100 }, { 5, 10, 98 }, { 4, 0, 173 },
- { 5, 0, 312 }, { 5, 0, 512 }, { 7, 0, 1285 }, { 13, 0, 185 },
- { 7, 0, 1603 }, { 7, 0, 1691 }, { 9, 0, 464 }, { 11, 0, 195 },
- { 12, 0, 279 }, { 12, 0, 448 }, { 14, 0, 11 }, { 19, 0, 102 },
- { 7, 0, 1113 }, { 5, 10, 984 }, { 4, 0, 452 }, { 5, 0, 583 },
- { 7, 0, 720 }, { 4, 0, 547 }, { 5, 0, 817 }, { 6, 0, 433 },
- { 7, 0, 593 }, { 7, 0, 1378 }, { 8, 0, 161 }, { 9, 0, 284 },
- { 10, 0, 313 }, { 11, 0, 886 }, { 8, 0, 722 }, { 4, 10, 182 },
- { 6, 10, 205 }, { 7, 10, 220 }, { 22, 0, 13 }, { 4, 10, 42 },
- { 9, 10, 205 }, { 9, 10, 786 }, { 10, 10, 659 }, { 6, 0, 289 },
- { 7, 0, 1670 }, { 12, 0, 57 }, { 23, 0, 4 }, { 4, 10, 635 },
- { 14, 0, 43 }, { 18, 0, 21 }, { 11, 10, 533 }, { 7, 0, 1694 },
- { 8, 0, 420 }, { 11, 0, 193 }, { 7, 0, 409 }, { 4, 10, 371 },
- { 4, 10, 272 }, { 7, 10, 836 }, { 5, 10, 825 }, { 6, 10, 1640 },
- { 5, 11, 251 }, { 5, 11, 956 }, { 8, 11, 268 }, { 9, 11, 214 },
- { 18, 11, 142 }, { 10, 0, 308 }, { 6, 0, 1863 }, { 13, 11, 37 },
- { 9, 10, 879 }, { 7, 10, 317 }, { 7, 10, 569 }, { 4, 11, 294 },
- { 6, 0, 790 }, { 5, 0, 1002 }, { 8, 0, 745 }, { 5, 11, 346 },
- { 5, 11, 711 }, { 8, 11, 390 }, { 7, 0, 289 }, { 5, 0, 504 },
- { 11, 0, 68 }, { 9, 10, 307 }, { 4, 0, 239 }, { 6, 0, 477 },
- { 7, 0, 1607 }, { 11, 0, 617 }, { 21, 0, 13 }, { 5, 0, 609 },
- { 5, 11, 624 }, { 5, 11, 783 }, { 7, 11, 1998 }, { 7, 11, 2047 },
- { 5, 10, 525 }, { 4, 0, 367 }, { 4, 11, 594 }, { 6, 0, 528 },
- { 5, 10, 493 }, { 4, 10, 174 }, { 7, 10, 911 }, { 8, 10, 417 },
- { 9, 10, 782 }, { 4, 0, 694 }, { 7, 0, 548 }, { 9, 0, 58 },
- { 4, 10, 32 }, { 5, 10, 215 }, { 6, 10, 269 }, { 7, 10, 1782 },
- { 7, 10, 1892 }, { 10, 10, 16 }, { 11, 10, 822 }, { 11, 10, 954 },
- { 13, 10, 481 }, { 12, 0, 687 }, { 7, 0, 1749 }, { 8, 10, 477 },
- { 4, 11, 569 }, { 5, 10, 308 }, { 7, 10, 1088 }, { 4, 0, 661 },
- { 10, 0, 1004 }, { 5, 11, 37 }, { 6, 11, 39 }, { 6, 11, 451 },
- { 7, 11, 218 }, { 7, 11, 667 }, { 7, 11, 1166 }, { 7, 11, 1687 },
- { 8, 11, 662 }, { 16, 11, 2 }, { 9, 0, 445 }, { 12, 0, 53 },
- { 13, 0, 492 }, { 5, 10, 126 }, { 8, 10, 297 }, { 9, 10, 366 },
- { 12, 10, 374 }, { 7, 10, 1551 }, { 11, 10, 361 }, { 20, 0, 74 },
- { 6, 11, 508 }, { 7, 0, 213 }, { 4, 10, 175 }, { 4, 10, 685 },
- { 6, 0, 760 }, { 6, 0, 834 }, { 6, 0, 1248 }, { 7, 11, 453 },
- { 7, 11, 635 }, { 7, 11, 796 }, { 8, 11, 331 }, { 9, 11, 328 },
- { 9, 11, 330 }, { 9, 11, 865 }, { 10, 11, 119 }, { 10, 11, 235 },
- { 11, 11, 111 }, { 11, 11, 129 }, { 11, 11, 240 }, { 12, 11, 31 },
- { 12, 11, 66 }, { 12, 11, 222 }, { 12, 11, 269 }, { 12, 11, 599 },
- { 12, 11, 689 }, { 13, 11, 186 }, { 13, 11, 364 }, { 14, 11, 345 },
- { 7, 0, 1672 }, { 11, 0, 189 }, { 5, 10, 797 }, { 5, 10, 565 },
- { 6, 0, 1548 }, { 6, 11, 98 }, { 7, 11, 585 }, { 7, 11, 702 },
- { 9, 0, 968 }, { 15, 0, 192 }, { 21, 0, 56 }, { 4, 10, 252 },
- { 6, 11, 37 }, { 7, 11, 299 }, { 7, 10, 1068 }, { 7, 11, 1666 },
- { 8, 11, 195 }, { 8, 11, 316 }, { 9, 11, 178 }, { 9, 11, 276 },
- { 9, 11, 339 }, { 9, 11, 536 }, { 10, 11, 102 }, { 10, 11, 362 },
- { 10, 10, 434 }, { 10, 11, 785 }, { 11, 11, 55 }, { 11, 11, 149 },
- { 11, 10, 228 }, { 11, 10, 426 }, { 11, 11, 773 }, { 13, 10, 231 },
- { 13, 11, 416 }, { 13, 11, 419 }, { 14, 11, 38 }, { 14, 11, 41 },
- { 14, 11, 210 }, { 18, 10, 106 }, { 20, 10, 87 }, { 4, 0, 751 },
- { 11, 0, 390 }, { 12, 0, 32 }, { 4, 0, 409 }, { 5, 0, 78 },
- { 11, 11, 458 }, { 12, 11, 15 }, { 12, 11, 432 }, { 7, 0, 1602 },
- { 10, 0, 257 }, { 10, 0, 698 }, { 11, 0, 544 }, { 11, 0, 585 },
- { 12, 0, 212 }, { 13, 0, 307 }, { 5, 10, 231 }, { 7, 10, 601 },
- { 9, 10, 277 }, { 9, 10, 674 }, { 10, 10, 178 }, { 10, 10, 418 },
- { 10, 10, 509 }, { 11, 10, 531 }, { 12, 10, 113 }, { 12, 10, 475 },
- { 13, 10, 99 }, { 14, 10, 428 }, { 6, 0, 473 }, { 17, 0, 105 },
- { 6, 0, 1949 }, { 15, 0, 156 }, { 5, 11, 645 }, { 7, 10, 1591 },
- { 16, 10, 43 }, { 7, 0, 1779 }, { 7, 10, 1683 }, { 4, 11, 290 },
- { 7, 11, 1356 }, { 6, 0, 763 }, { 6, 11, 70 }, { 7, 11, 1292 },
- { 10, 11, 762 }, { 11, 11, 288 }, { 14, 0, 29 }, { 12, 11, 428 },
- { 7, 0, 883 }, { 7, 11, 131 }, { 7, 11, 422 }, { 8, 11, 210 },
- { 12, 11, 573 }, { 6, 0, 488 }, { 4, 10, 399 }, { 5, 10, 119 },
- { 5, 10, 494 }, { 7, 10, 751 }, { 9, 10, 556 }, { 5, 0, 617 },
- { 4, 11, 936 }, { 11, 0, 50 }, { 7, 0, 1518 }, { 11, 0, 694 },
- { 9, 0, 785 }, { 4, 0, 546 }, { 7, 0, 2042 }, { 7, 11, 716 },
- { 13, 11, 97 }, { 13, 11, 251 }, { 4, 11, 653 }, { 17, 0, 22 },
- { 6, 0, 1016 }, { 4, 0, 313 }, { 5, 0, 577 }, { 8, 11, 657 },
- { 8, 0, 184 }, { 13, 0, 433 }, { 7, 0, 935 }, { 6, 0, 720 },
- { 9, 0, 114 }, { 18, 11, 80 }, { 12, 0, 186 }, { 12, 0, 292 },
- { 14, 0, 100 }, { 18, 0, 70 }, { 7, 10, 594 }, { 7, 10, 851 },
- { 7, 10, 1858 }, { 9, 10, 411 }, { 9, 10, 574 }, { 9, 10, 666 },
- { 9, 10, 737 }, { 10, 10, 346 }, { 10, 10, 712 }, { 11, 10, 246 },
- { 11, 10, 432 }, { 11, 10, 517 }, { 11, 10, 647 }, { 11, 10, 679 },
- { 11, 10, 727 }, { 12, 10, 304 }, { 12, 10, 305 }, { 12, 10, 323 },
- { 12, 10, 483 }, { 12, 10, 572 }, { 12, 10, 593 }, { 12, 10, 602 },
- { 13, 10, 95 }, { 13, 10, 101 }, { 13, 10, 171 }, { 13, 10, 315 },
- { 13, 10, 378 }, { 13, 10, 425 }, { 13, 10, 475 }, { 14, 10, 63 },
- { 14, 10, 380 }, { 14, 10, 384 }, { 15, 10, 133 }, { 18, 10, 112 },
- { 20, 10, 72 }, { 7, 10, 1093 }, { 7, 11, 1836 }, { 4, 10, 679 },
- { 9, 10, 203 }, { 11, 0, 402 }, { 12, 0, 109 }, { 12, 0, 431 },
- { 13, 0, 179 }, { 13, 0, 206 }, { 14, 0, 217 }, { 16, 0, 3 },
- { 20, 0, 53 }, { 7, 11, 1368 }, { 8, 11, 232 }, { 8, 11, 361 },
- { 10, 11, 682 }, { 10, 11, 742 }, { 9, 10, 714 }, { 5, 0, 886 },
- { 6, 0, 46 }, { 6, 0, 1790 }, { 7, 0, 14 }, { 7, 0, 732 },
- { 7, 0, 1654 }, { 8, 0, 95 }, { 8, 0, 327 }, { 8, 0, 616 },
- { 9, 0, 892 }, { 10, 0, 598 }, { 10, 0, 769 }, { 11, 0, 134 },
- { 11, 0, 747 }, { 12, 0, 378 }, { 14, 0, 97 }, { 9, 11, 534 },
- { 4, 0, 969 }, { 8, 10, 825 }, { 9, 11, 27 }, { 6, 0, 727 },
- { 14, 11, 12 }, { 5, 0, 1021 }, { 6, 0, 1190 }, { 6, 11, 1657 },
- { 5, 10, 143 }, { 5, 10, 769 }, { 6, 10, 1760 }, { 7, 10, 682 },
- { 7, 10, 1992 }, { 8, 10, 736 }, { 4, 0, 153 }, { 7, 11, 127 },
- { 5, 0, 798 }, { 4, 0, 587 }, { 6, 0, 598 }, { 7, 0, 42 },
- { 8, 0, 695 }, { 10, 0, 212 }, { 11, 0, 158 }, { 14, 0, 196 },
- { 17, 0, 85 }, { 5, 10, 860 }, { 6, 0, 1929 }, { 6, 0, 1933 },
- { 5, 0, 957 }, { 5, 0, 1008 }, { 9, 0, 577 }, { 12, 0, 141 },
- { 6, 10, 422 }, { 7, 10, 0 }, { 7, 10, 1544 }, { 8, 11, 364 },
- { 11, 10, 990 }, { 12, 10, 453 }, { 13, 10, 47 }, { 13, 10, 266 },
- { 6, 0, 1319 }, { 4, 0, 129 }, { 7, 0, 465 }, { 7, 0, 470 },
- { 7, 0, 1057 }, { 7, 0, 1201 }, { 9, 0, 755 }, { 11, 0, 906 },
- { 12, 0, 527 }, { 7, 0, 908 }, { 18, 0, 7 }, { 5, 0, 148 },
- { 8, 0, 450 }, { 5, 10, 515 }, { 9, 10, 131 }, { 7, 10, 1605 },
- { 11, 10, 962 }, { 18, 10, 139 }, { 4, 10, 646 }, { 6, 0, 1166 },
- { 4, 10, 396 }, { 7, 10, 728 }, { 9, 10, 117 }, { 13, 10, 202 },
- { 20, 10, 51 }, { 6, 10, 121 }, { 6, 10, 124 }, { 6, 10, 357 },
- { 7, 10, 1138 }, { 7, 10, 1295 }, { 8, 10, 162 }, { 11, 10, 655 },
- { 14, 0, 374 }, { 14, 11, 374 }, { 10, 0, 253 }, { 11, 0, 1003 },
- { 5, 11, 909 }, { 9, 11, 849 }, { 10, 11, 805 }, { 5, 10, 237 },
- { 7, 11, 525 }, { 7, 11, 1579 }, { 8, 11, 497 }, { 8, 11, 573 },
- { 9, 0, 46 }, { 4, 0, 879 }, { 6, 0, 806 }, { 7, 0, 1868 },
- { 6, 0, 1837 }, { 6, 0, 1846 }, { 6, 0, 730 }, { 6, 0, 881 },
- { 7, 0, 965 }, { 7, 0, 1460 }, { 7, 0, 1604 }, { 7, 11, 193 },
- { 7, 11, 397 }, { 7, 11, 1105 }, { 8, 11, 124 }, { 8, 11, 619 },
- { 9, 11, 305 }, { 10, 11, 264 }, { 11, 11, 40 }, { 12, 11, 349 },
- { 13, 11, 134 }, { 13, 11, 295 }, { 14, 11, 155 }, { 15, 11, 120 },
- { 18, 11, 105 }, { 8, 0, 506 }, { 15, 0, 10 }, { 4, 11, 262 },
- { 7, 11, 342 }, { 7, 10, 571 }, { 7, 10, 1877 }, { 10, 10, 366 },
- { 13, 11, 23 }, { 5, 11, 641 }, { 10, 0, 22 }, { 9, 10, 513 },
- { 10, 10, 39 }, { 12, 10, 122 }, { 12, 10, 187 }, { 7, 11, 1431 },
- { 22, 11, 49 }, { 4, 11, 99 }, { 6, 11, 250 }, { 6, 11, 346 },
- { 8, 11, 127 }, { 10, 11, 81 }, { 6, 0, 2014 }, { 8, 0, 928 },
- { 10, 0, 960 }, { 10, 0, 979 }, { 12, 0, 996 }, { 6, 0, 296 },
- { 4, 11, 915 }, { 5, 11, 75 }, { 9, 11, 517 }, { 10, 11, 470 },
- { 12, 11, 155 }, { 13, 11, 224 }, { 9, 10, 873 }, { 4, 0, 854 },
- { 12, 11, 18 }, { 6, 0, 587 }, { 7, 10, 107 }, { 7, 10, 838 },
- { 8, 10, 550 }, { 10, 10, 401 }, { 11, 0, 636 }, { 15, 0, 145 },
- { 17, 0, 34 }, { 19, 0, 50 }, { 23, 0, 20 }, { 11, 10, 588 },
- { 11, 10, 864 }, { 11, 10, 968 }, { 15, 10, 160 }, { 7, 11, 216 },
- { 7, 0, 982 }, { 10, 0, 32 }, { 15, 0, 56 }, { 5, 10, 768 },
- { 5, 11, 954 }, { 6, 11, 304 }, { 7, 11, 1114 }, { 8, 11, 418 },
- { 10, 11, 345 }, { 11, 11, 341 }, { 11, 11, 675 }, { 13, 11, 40 },
- { 9, 11, 410 }, { 11, 11, 425 }, { 8, 0, 941 }, { 5, 0, 435 },
- { 4, 10, 894 }, { 5, 0, 85 }, { 6, 0, 419 }, { 7, 0, 134 },
- { 7, 0, 305 }, { 7, 0, 361 }, { 7, 0, 1337 }, { 8, 0, 71 },
- { 12, 0, 519 }, { 12, 0, 688 }, { 7, 0, 740 }, { 5, 0, 691 },
- { 7, 0, 345 }, { 9, 0, 94 }, { 12, 0, 169 }, { 5, 0, 183 },
- { 6, 0, 582 }, { 10, 0, 679 }, { 12, 0, 435 }, { 6, 11, 14 },
- { 6, 0, 945 }, { 7, 0, 511 }, { 6, 11, 1708 }, { 5, 11, 113 },
- { 6, 11, 243 }, { 7, 11, 1865 }, { 11, 11, 161 }, { 16, 11, 37 },
- { 17, 11, 99 }, { 4, 11, 274 }, { 9, 0, 539 }, { 7, 0, 1993 },
- { 8, 0, 684 }, { 6, 10, 272 }, { 6, 0, 659 }, { 6, 0, 982 },
- { 4, 10, 9 }, { 5, 10, 128 }, { 7, 10, 368 }, { 11, 10, 480 },
- { 20, 10, 3 }, { 6, 0, 583 }, { 4, 0, 803 }, { 5, 0, 704 },
- { 4, 0, 179 }, { 5, 0, 198 }, { 5, 0, 697 }, { 7, 0, 347 },
- { 7, 0, 971 }, { 8, 0, 181 }, { 10, 0, 711 }, { 7, 11, 166 },
- { 8, 10, 682 }, { 4, 10, 2 }, { 7, 10, 545 }, { 7, 10, 894 },
- { 8, 11, 521 }, { 7, 0, 481 }, { 4, 0, 243 }, { 5, 0, 203 },
- { 7, 0, 19 }, { 7, 0, 71 }, { 7, 0, 113 }, { 10, 0, 405 },
- { 11, 0, 357 }, { 14, 0, 240 }, { 5, 11, 725 }, { 5, 11, 727 },
- { 7, 11, 1811 }, { 6, 0, 826 }, { 9, 11, 304 }, { 7, 0, 1450 },
- { 11, 0, 99 }, { 5, 11, 654 }, { 6, 0, 492 }, { 5, 0, 134 },
- { 6, 0, 408 }, { 6, 0, 495 }, { 7, 0, 1593 }, { 6, 11, 273 },
- { 10, 11, 188 }, { 13, 11, 377 }, { 18, 11, 77 }, { 9, 10, 769 },
- { 12, 10, 185 }, { 7, 11, 410 }, { 14, 0, 4 }, { 4, 0, 665 },
- { 6, 11, 1785 }, { 4, 0, 248 }, { 7, 0, 137 }, { 9, 0, 349 },
- { 5, 10, 530 }, { 14, 10, 113 }, { 7, 0, 1270 }, { 11, 0, 612 },
- { 4, 11, 780 }, { 5, 0, 371 }, { 7, 0, 563 }, { 7, 0, 826 },
- { 6, 0, 1535 }, { 23, 0, 21 }, { 23, 0, 23 }, { 4, 0, 374 },
- { 7, 0, 547 }, { 7, 0, 1700 }, { 7, 0, 1833 }, { 11, 0, 858 },
- { 5, 10, 556 }, { 7, 11, 612 }, { 8, 11, 545 }, { 8, 11, 568 },
- { 8, 11, 642 }, { 9, 11, 717 }, { 10, 11, 541 }, { 10, 11, 763 },
- { 11, 11, 449 }, { 12, 11, 489 }, { 13, 11, 153 }, { 13, 11, 296 },
- { 14, 11, 138 }, { 14, 11, 392 }, { 15, 11, 50 }, { 16, 11, 6 },
- { 16, 11, 12 }, { 20, 11, 9 }, { 9, 0, 311 }, { 13, 0, 42 },
- { 8, 10, 16 }, { 12, 10, 568 }, { 6, 0, 1968 }, { 6, 0, 2027 },
- { 10, 0, 991 }, { 6, 0, 1647 }, { 7, 0, 1552 }, { 7, 0, 2010 },
- { 9, 0, 494 }, { 9, 0, 509 }, { 5, 11, 948 }, { 6, 10, 186 },
- { 9, 10, 426 }, { 6, 0, 769 }, { 6, 0, 642 }, { 4, 10, 585 },
- { 6, 0, 123 }, { 7, 0, 214 }, { 9, 0, 728 }, { 10, 0, 157 },
- { 11, 0, 346 }, { 11, 0, 662 }, { 15, 0, 106 }, { 14, 11, 381 },
- { 7, 0, 1435 }, { 4, 11, 532 }, { 5, 11, 706 }, { 7, 11, 662 },
- { 5, 11, 837 }, { 6, 11, 1651 }, { 4, 10, 93 }, { 5, 10, 252 },
- { 6, 10, 229 }, { 7, 10, 291 }, { 9, 10, 550 }, { 11, 10, 644 },
- { 20, 0, 79 }, { 9, 10, 749 }, { 6, 0, 1425 }, { 9, 10, 162 },
- { 4, 11, 362 }, { 7, 11, 52 }, { 7, 11, 303 }, { 12, 11, 166 },
- { 4, 10, 381 }, { 4, 11, 330 }, { 7, 11, 933 }, { 7, 11, 2012 },
- { 8, 11, 292 }, { 7, 11, 767 }, { 4, 0, 707 }, { 5, 0, 588 },
- { 6, 0, 393 }, { 13, 0, 106 }, { 18, 0, 49 }, { 19, 0, 41 },
- { 6, 0, 211 }, { 7, 0, 1690 }, { 11, 0, 486 }, { 12, 0, 369 },
- { 9, 11, 883 }, { 4, 11, 703 }, { 7, 11, 207 }, { 4, 0, 187 },
- { 5, 0, 184 }, { 5, 0, 690 }, { 7, 0, 1869 }, { 10, 0, 756 },
- { 11, 0, 783 }, { 4, 11, 571 }, { 6, 0, 1382 }, { 5, 0, 175 },
- { 6, 10, 77 }, { 6, 10, 157 }, { 7, 10, 974 }, { 7, 10, 1301 },
- { 7, 10, 1339 }, { 7, 10, 1490 }, { 7, 10, 1873 }, { 9, 10, 628 },
- { 6, 0, 1493 }, { 5, 11, 873 }, { 5, 11, 960 }, { 6, 0, 1007 },
- { 12, 11, 93 }, { 12, 11, 501 }, { 13, 11, 362 }, { 14, 11, 151 },
- { 15, 11, 40 }, { 15, 11, 59 }, { 16, 11, 46 }, { 17, 11, 25 },
- { 18, 11, 14 }, { 18, 11, 134 }, { 19, 11, 25 }, { 19, 11, 69 },
- { 20, 11, 16 }, { 20, 11, 19 }, { 20, 11, 66 }, { 21, 11, 23 },
- { 21, 11, 25 }, { 22, 11, 42 }, { 11, 10, 919 }, { 13, 10, 409 },
- { 6, 0, 219 }, { 5, 0, 582 }, { 6, 0, 1646 }, { 7, 0, 99 },
- { 7, 0, 1962 }, { 7, 0, 1986 }, { 8, 0, 515 }, { 8, 0, 773 },
- { 9, 0, 23 }, { 9, 0, 491 }, { 12, 0, 620 }, { 14, 0, 93 },
- { 5, 0, 851 }, { 5, 11, 33 }, { 6, 11, 470 }, { 7, 11, 1291 },
- { 6, 0, 1278 }, { 7, 11, 1882 }, { 7, 10, 1489 }, { 4, 0, 1000 },
- { 10, 0, 982 }, { 8, 0, 762 }, { 8, 0, 812 }, { 9, 0, 910 },
- { 6, 11, 47 }, { 7, 11, 90 }, { 7, 11, 664 }, { 7, 11, 830 },
- { 7, 11, 1380 }, { 7, 11, 2025 }, { 8, 11, 448 }, { 8, 11, 828 },
- { 4, 0, 98 }, { 4, 0, 940 }, { 6, 0, 1819 }, { 6, 0, 1834 },
- { 6, 0, 1841 }, { 7, 0, 1365 }, { 8, 0, 859 }, { 8, 0, 897 },
- { 8, 0, 918 }, { 9, 0, 422 }, { 9, 0, 670 }, { 10, 0, 775 },
- { 10, 0, 894 }, { 10, 0, 909 }, { 10, 0, 910 }, { 10, 0, 935 },
- { 11, 0, 210 }, { 12, 0, 750 }, { 12, 0, 755 }, { 13, 0, 26 },
- { 13, 0, 457 }, { 13, 0, 476 }, { 16, 0, 100 }, { 16, 0, 109 },
- { 18, 0, 173 }, { 18, 0, 175 }, { 8, 10, 398 }, { 9, 10, 681 },
- { 11, 10, 632 }, { 9, 11, 417 }, { 9, 11, 493 }, { 8, 10, 645 },
- { 10, 0, 906 }, { 6, 0, 1730 }, { 6, 10, 20 }, { 5, 11, 1019 },
- { 6, 0, 1185 }, { 10, 0, 40 }, { 8, 10, 769 }, { 9, 0, 147 },
- { 6, 11, 208 }, { 12, 0, 650 }, { 5, 0, 209 }, { 6, 0, 30 },
- { 11, 0, 56 }, { 11, 0, 305 }, { 4, 0, 553 }, { 10, 11, 344 },
- { 6, 11, 68 }, { 7, 11, 398 }, { 7, 11, 448 }, { 7, 11, 1629 },
- { 7, 11, 1813 }, { 8, 11, 387 }, { 8, 11, 442 }, { 9, 11, 710 },
- { 10, 11, 282 }, { 10, 11, 722 }, { 5, 0, 597 }, { 14, 0, 20 },
- { 14, 11, 20 }, { 7, 0, 1614 }, { 7, 10, 1757 }, { 4, 0, 150 },
- { 5, 0, 303 }, { 6, 0, 327 }, { 7, 10, 937 }, { 16, 0, 49 },
- { 7, 10, 1652 }, { 16, 11, 49 }, { 8, 0, 192 }, { 10, 0, 78 },
- { 13, 0, 359 }, { 7, 0, 786 }, { 15, 0, 134 }, { 6, 0, 1638 },
- { 7, 0, 79 }, { 7, 0, 496 }, { 9, 0, 138 }, { 10, 0, 336 },
- { 11, 0, 12 }, { 12, 0, 412 }, { 12, 0, 440 }, { 14, 0, 305 },
- { 8, 11, 491 }, { 4, 10, 579 }, { 5, 10, 226 }, { 5, 10, 323 },
- { 7, 10, 960 }, { 7, 0, 204 }, { 7, 0, 415 }, { 8, 0, 42 },
- { 10, 0, 85 }, { 11, 0, 564 }, { 4, 0, 614 }, { 4, 11, 403 },
- { 5, 11, 441 }, { 7, 11, 450 }, { 11, 11, 101 }, { 12, 11, 193 },
- { 13, 11, 430 }, { 7, 11, 1927 }, { 7, 11, 1330 }, { 4, 0, 3 },
- { 5, 0, 247 }, { 5, 0, 644 }, { 7, 0, 744 }, { 7, 0, 1207 },
- { 7, 0, 1225 }, { 7, 0, 1909 }, { 18, 0, 147 }, { 8, 0, 942 },
- { 4, 0, 1019 }, { 6, 0, 2023 }, { 5, 11, 679 }, { 5, 10, 973 },
- { 5, 0, 285 }, { 9, 0, 67 }, { 13, 0, 473 }, { 15, 0, 82 },
- { 7, 11, 328 }, { 9, 11, 326 }, { 23, 0, 8 }, { 6, 10, 135 },
- { 7, 10, 1176 }, { 7, 11, 1128 }, { 6, 0, 1309 }, { 7, 11, 1796 },
- { 7, 10, 314 }, { 4, 11, 574 }, { 7, 11, 350 }, { 7, 11, 1024 },
- { 8, 11, 338 }, { 9, 11, 677 }, { 10, 11, 808 }, { 11, 11, 508 },
- { 7, 11, 818 }, { 17, 11, 14 }, { 17, 11, 45 }, { 18, 11, 75 },
- { 20, 11, 18 }, { 18, 10, 4 }, { 7, 11, 1081 }, { 4, 0, 29 },
- { 6, 0, 532 }, { 7, 0, 1628 }, { 7, 0, 1648 }, { 9, 0, 350 },
- { 10, 0, 433 }, { 11, 0, 97 }, { 11, 0, 557 }, { 11, 0, 745 },
- { 12, 0, 289 }, { 12, 0, 335 }, { 12, 0, 348 }, { 12, 0, 606 },
- { 13, 0, 116 }, { 13, 0, 233 }, { 13, 0, 466 }, { 14, 0, 181 },
- { 14, 0, 209 }, { 14, 0, 232 }, { 14, 0, 236 }, { 14, 0, 300 },
- { 16, 0, 41 }, { 20, 0, 97 }, { 7, 0, 318 }, { 6, 10, 281 },
- { 8, 10, 282 }, { 8, 10, 480 }, { 8, 10, 499 }, { 9, 10, 198 },
- { 10, 10, 143 }, { 10, 10, 169 }, { 10, 10, 211 }, { 10, 10, 417 },
- { 10, 10, 574 }, { 11, 10, 147 }, { 11, 10, 395 }, { 12, 10, 75 },
- { 12, 10, 407 }, { 12, 10, 608 }, { 13, 10, 500 }, { 14, 10, 251 },
- { 7, 11, 1676 }, { 7, 11, 2037 }, { 7, 0, 1692 }, { 5, 0, 501 },
- { 7, 0, 1704 }, { 9, 0, 553 }, { 11, 0, 520 }, { 12, 0, 557 },
- { 13, 0, 249 }, { 6, 0, 1527 }, { 14, 0, 324 }, { 15, 0, 55 },
- { 15, 0, 80 }, { 14, 11, 324 }, { 15, 11, 55 }, { 15, 11, 80 },
- { 7, 10, 1776 }, { 8, 0, 988 }, { 9, 11, 297 }, { 4, 10, 419 },
- { 14, 0, 223 }, { 11, 11, 234 }, { 7, 0, 1123 }, { 12, 0, 508 },
- { 14, 0, 102 }, { 14, 0, 226 }, { 16, 0, 57 }, { 4, 10, 138 },
- { 7, 10, 1012 }, { 7, 10, 1280 }, { 9, 10, 76 }, { 7, 0, 1764 },
- { 5, 10, 29 }, { 12, 10, 638 }, { 6, 0, 2015 }, { 6, 0, 1599 },
- { 10, 11, 56 }, { 6, 11, 306 }, { 7, 11, 1140 }, { 7, 11, 1340 },
- { 8, 11, 133 }, { 10, 11, 449 }, { 11, 11, 1011 }, { 6, 10, 1710 },
- { 7, 10, 2038 }, { 7, 11, 1763 }, { 12, 11, 310 }, { 6, 0, 129 },
- { 4, 10, 17 }, { 5, 10, 23 }, { 7, 10, 995 }, { 11, 10, 383 },
- { 11, 10, 437 }, { 12, 10, 460 }, { 12, 10, 532 }, { 5, 11, 329 },
- { 8, 11, 260 }, { 5, 10, 862 }, { 4, 0, 534 }, { 6, 0, 811 },
- { 7, 0, 626 }, { 4, 11, 657 }, { 4, 0, 25 }, { 5, 0, 60 },
- { 6, 0, 504 }, { 7, 0, 614 }, { 7, 0, 1155 }, { 12, 0, 0 },
- { 24, 11, 7 }, { 7, 0, 1248 }, { 11, 0, 621 }, { 11, 0, 702 },
- { 9, 0, 321 }, { 8, 10, 70 }, { 12, 10, 171 }, { 13, 10, 272 },
- { 10, 10, 233 }, { 11, 10, 76 }, { 4, 0, 379 }, { 7, 0, 1397 },
- { 6, 10, 442 }, { 5, 11, 66 }, { 7, 11, 1896 }, { 8, 11, 288 },
- { 6, 11, 1643 }, { 6, 10, 1709 }, { 4, 11, 21 }, { 5, 11, 91 },
- { 5, 11, 570 }, { 5, 11, 648 }, { 5, 11, 750 }, { 5, 11, 781 },
- { 6, 11, 54 }, { 6, 11, 112 }, { 6, 11, 402 }, { 6, 11, 1732 },
- { 7, 11, 315 }, { 7, 11, 749 }, { 7, 11, 1347 }, { 7, 11, 1900 },
- { 9, 11, 78 }, { 9, 11, 508 }, { 10, 11, 611 }, { 11, 11, 510 },
- { 11, 11, 728 }, { 13, 11, 36 }, { 14, 11, 39 }, { 16, 11, 83 },
- { 17, 11, 124 }, { 20, 11, 30 }, { 4, 0, 118 }, { 6, 0, 274 },
- { 6, 0, 361 }, { 7, 0, 75 }, { 13, 0, 441 }, { 10, 11, 322 },
- { 10, 11, 719 }, { 11, 11, 407 }, { 19, 10, 119 }, { 12, 11, 549 },
- { 14, 11, 67 }, { 19, 11, 60 }, { 11, 10, 69 }, { 12, 10, 105 },
- { 12, 10, 117 }, { 13, 10, 213 }, { 14, 10, 13 }, { 14, 10, 62 },
- { 14, 10, 177 }, { 14, 10, 421 }, { 15, 10, 19 }, { 18, 10, 141 },
- { 9, 0, 841 }, { 9, 10, 309 }, { 7, 10, 608 }, { 7, 10, 976 },
- { 8, 11, 125 }, { 8, 11, 369 }, { 8, 11, 524 }, { 9, 10, 146 },
- { 10, 10, 206 }, { 10, 11, 486 }, { 10, 10, 596 }, { 11, 11, 13 },
- { 11, 11, 381 }, { 11, 11, 736 }, { 11, 11, 766 }, { 11, 11, 845 },
- { 13, 11, 114 }, { 13, 10, 218 }, { 13, 11, 292 }, { 14, 11, 47 },
- { 14, 10, 153 }, { 12, 0, 693 }, { 7, 11, 759 }, { 5, 0, 314 },
- { 6, 0, 221 }, { 7, 0, 419 }, { 10, 0, 650 }, { 11, 0, 396 },
- { 12, 0, 156 }, { 13, 0, 369 }, { 14, 0, 333 }, { 17, 0, 47 },
- { 6, 11, 1684 }, { 6, 11, 1731 }, { 7, 11, 356 }, { 7, 11, 1932 },
- { 8, 11, 54 }, { 8, 11, 221 }, { 9, 11, 225 }, { 9, 11, 356 },
- { 10, 11, 77 }, { 10, 11, 446 }, { 10, 11, 731 }, { 12, 11, 404 },
- { 13, 11, 491 }, { 4, 11, 375 }, { 4, 10, 518 }, { 7, 10, 1136 },
- { 4, 0, 913 }, { 4, 11, 411 }, { 11, 11, 643 }, { 12, 11, 115 },
- { 4, 11, 80 }, { 5, 11, 44 }, { 8, 10, 689 }, { 9, 10, 863 },
- { 10, 0, 880 }, { 4, 10, 18 }, { 7, 10, 145 }, { 7, 10, 444 },
- { 7, 10, 1278 }, { 8, 10, 49 }, { 8, 10, 400 }, { 9, 10, 71 },
- { 9, 10, 250 }, { 10, 10, 459 }, { 12, 10, 160 }, { 16, 10, 24 },
- { 8, 0, 475 }, { 5, 0, 1016 }, { 5, 11, 299 }, { 7, 11, 1083 },
- { 7, 0, 602 }, { 8, 0, 179 }, { 10, 0, 781 }, { 12, 0, 126 },
- { 6, 0, 329 }, { 10, 0, 111 }, { 7, 0, 1864 }, { 4, 11, 219 },
- { 7, 11, 1761 }, { 9, 11, 86 }, { 6, 0, 1888 }, { 6, 0, 1892 },
- { 6, 0, 1901 }, { 6, 0, 1904 }, { 9, 0, 953 }, { 9, 0, 985 },
- { 9, 0, 991 }, { 9, 0, 1001 }, { 12, 0, 818 }, { 12, 0, 846 },
- { 12, 0, 847 }, { 12, 0, 861 }, { 12, 0, 862 }, { 12, 0, 873 },
- { 12, 0, 875 }, { 12, 0, 877 }, { 12, 0, 879 }, { 12, 0, 881 },
- { 12, 0, 884 }, { 12, 0, 903 }, { 12, 0, 915 }, { 12, 0, 926 },
- { 12, 0, 939 }, { 15, 0, 182 }, { 15, 0, 219 }, { 15, 0, 255 },
- { 18, 0, 191 }, { 18, 0, 209 }, { 18, 0, 211 }, { 21, 0, 41 },
- { 5, 11, 328 }, { 7, 11, 918 }, { 9, 0, 780 }, { 12, 0, 82 },
- { 15, 0, 36 }, { 5, 10, 1010 }, { 5, 0, 821 }, { 6, 0, 1687 },
- { 5, 11, 514 }, { 4, 0, 956 }, { 6, 0, 1180 }, { 10, 0, 112 },
- { 5, 10, 87 }, { 7, 10, 313 }, { 7, 10, 1103 }, { 10, 10, 582 },
- { 11, 10, 389 }, { 11, 10, 813 }, { 12, 10, 385 }, { 13, 10, 286 },
- { 14, 10, 124 }, { 18, 10, 108 }, { 5, 0, 71 }, { 7, 0, 1407 },
- { 9, 0, 704 }, { 10, 0, 261 }, { 10, 0, 619 }, { 11, 0, 547 },
- { 11, 0, 619 }, { 15, 0, 157 }, { 4, 0, 531 }, { 5, 0, 455 },
- { 5, 11, 301 }, { 6, 11, 571 }, { 14, 11, 49 }, { 18, 11, 102 },
- { 4, 10, 267 }, { 6, 0, 385 }, { 7, 0, 2008 }, { 9, 0, 337 },
- { 10, 0, 517 }, { 5, 11, 726 }, { 5, 11, 364 }, { 4, 11, 76 },
- { 7, 11, 1550 }, { 9, 11, 306 }, { 9, 11, 430 }, { 9, 11, 663 },
- { 10, 11, 683 }, { 11, 11, 427 }, { 11, 11, 753 }, { 12, 11, 334 },
- { 12, 11, 442 }, { 14, 11, 258 }, { 14, 11, 366 }, { 15, 11, 131 },
- { 6, 0, 1865 }, { 6, 0, 1879 }, { 6, 0, 1881 }, { 6, 0, 1894 },
- { 6, 0, 1908 }, { 9, 0, 915 }, { 9, 0, 926 }, { 9, 0, 940 },
- { 9, 0, 943 }, { 9, 0, 966 }, { 9, 0, 980 }, { 9, 0, 989 },
- { 9, 0, 1005 }, { 9, 0, 1010 }, { 12, 0, 813 }, { 12, 0, 817 },
- { 12, 0, 840 }, { 12, 0, 843 }, { 12, 0, 855 }, { 12, 0, 864 },
- { 12, 0, 871 }, { 12, 0, 872 }, { 12, 0, 899 }, { 12, 0, 905 },
- { 12, 0, 924 }, { 15, 0, 171 }, { 15, 0, 181 }, { 15, 0, 224 },
- { 15, 0, 235 }, { 15, 0, 251 }, { 18, 0, 184 }, { 9, 11, 52 },
- { 5, 0, 16 }, { 6, 0, 86 }, { 6, 0, 603 }, { 7, 0, 292 },
- { 7, 0, 561 }, { 8, 0, 257 }, { 8, 0, 382 }, { 9, 0, 721 },
- { 9, 0, 778 }, { 11, 0, 581 }, { 12, 0, 466 }, { 4, 0, 486 },
- { 5, 0, 491 }, { 7, 10, 1121 }, { 4, 0, 72 }, { 6, 0, 265 },
- { 7, 0, 1300 }, { 7, 11, 1183 }, { 10, 10, 249 }, { 11, 10, 209 },
- { 4, 10, 561 }, { 9, 11, 519 }, { 4, 11, 656 }, { 4, 10, 760 },
- { 7, 11, 779 }, { 9, 10, 154 }, { 12, 10, 485 }, { 7, 11, 1793 },
- { 7, 11, 144 }, { 8, 10, 255 }, { 5, 0, 621 }, { 4, 10, 368 },
- { 7, 10, 641 }, { 7, 11, 1373 }, { 7, 11, 554 }, { 7, 11, 605 },
- { 13, 11, 10 }, { 9, 0, 234 }, { 5, 0, 815 }, { 6, 0, 1688 },
- { 6, 0, 1755 }, { 5, 11, 838 }, { 5, 11, 841 }, { 6, 11, 1649 },
- { 7, 0, 1987 }, { 7, 0, 2040 }, { 8, 0, 743 }, { 5, 11, 1012 },
- { 6, 0, 197 }, { 8, 0, 205 }, { 6, 0, 314 }, { 6, 11, 314 },
- { 16, 11, 53 }, { 6, 11, 251 }, { 7, 11, 365 }, { 7, 11, 1357 },
- { 7, 11, 1497 }, { 8, 11, 154 }, { 13, 11, 281 }, { 5, 11, 340 },
- { 6, 0, 452 }, { 7, 0, 312 }, { 10, 0, 219 }, { 10, 0, 589 },
- { 4, 0, 333 }, { 9, 0, 176 }, { 12, 0, 353 }, { 13, 0, 187 },
- { 9, 10, 92 }, { 19, 10, 91 }, { 6, 0, 1110 }, { 11, 0, 47 },
- { 11, 11, 495 }, { 6, 10, 525 }, { 8, 10, 806 }, { 9, 10, 876 },
- { 12, 10, 284 }, { 8, 11, 261 }, { 9, 11, 144 }, { 9, 11, 466 },
- { 10, 11, 370 }, { 12, 11, 470 }, { 13, 11, 144 }, { 14, 11, 348 },
- { 9, 11, 897 }, { 8, 0, 863 }, { 8, 0, 864 }, { 8, 0, 868 },
- { 8, 0, 884 }, { 10, 0, 866 }, { 10, 0, 868 }, { 10, 0, 873 },
- { 10, 0, 911 }, { 10, 0, 912 }, { 10, 0, 944 }, { 12, 0, 727 },
- { 6, 11, 248 }, { 9, 11, 546 }, { 10, 11, 535 }, { 11, 11, 681 },
- { 13, 11, 135 }, { 6, 0, 300 }, { 7, 0, 1515 }, { 6, 0, 1237 },
- { 11, 10, 958 }, { 5, 10, 594 }, { 12, 11, 250 }, { 6, 0, 1685 },
- { 6, 11, 567 }, { 7, 0, 135 }, { 8, 0, 7 }, { 8, 0, 62 },
- { 9, 0, 243 }, { 10, 0, 658 }, { 10, 0, 697 }, { 11, 0, 456 },
- { 11, 0, 756 }, { 9, 0, 395 }, { 10, 0, 79 }, { 6, 10, 1641 },
- { 8, 10, 820 }, { 4, 10, 302 }, { 7, 10, 1766 }, { 6, 11, 174 },
- { 7, 10, 1313 }, { 7, 0, 631 }, { 6, 10, 1674 }, { 6, 11, 395 },
- { 10, 0, 835 }, { 7, 0, 406 }, { 7, 0, 459 }, { 8, 0, 606 },
- { 11, 0, 726 }, { 6, 11, 617 }, { 6, 0, 979 }, { 6, 10, 389 },
- { 7, 10, 149 }, { 9, 10, 142 }, { 10, 10, 94 }, { 5, 11, 878 },
- { 5, 11, 972 }, { 6, 10, 8 }, { 7, 10, 1881 }, { 8, 10, 91 },
- { 8, 11, 511 }, { 5, 0, 612 }, { 4, 11, 351 }, { 4, 0, 372 },
- { 7, 0, 482 }, { 8, 0, 158 }, { 9, 0, 602 }, { 9, 0, 615 },
- { 10, 0, 245 }, { 10, 0, 678 }, { 10, 0, 744 }, { 11, 0, 248 },
- { 11, 0, 806 }, { 5, 0, 854 }, { 7, 0, 1991 }, { 4, 11, 286 },
- { 7, 11, 344 }, { 7, 11, 438 }, { 7, 11, 627 }, { 7, 11, 1516 },
- { 8, 11, 40 }, { 9, 11, 56 }, { 9, 11, 294 }, { 10, 11, 30 },
- { 10, 11, 259 }, { 11, 11, 969 }, { 18, 11, 148 }, { 7, 0, 1492 },
- { 5, 11, 259 }, { 7, 11, 414 }, { 7, 11, 854 }, { 14, 11, 107 },
- { 7, 10, 1746 }, { 6, 0, 833 }, { 6, 0, 998 }, { 7, 10, 24 },
- { 6, 0, 750 }, { 7, 0, 1739 }, { 4, 10, 503 }, { 7, 10, 1661 },
- { 5, 10, 130 }, { 7, 10, 1314 }, { 9, 10, 610 }, { 10, 10, 718 },
- { 11, 10, 601 }, { 11, 10, 819 }, { 11, 10, 946 }, { 12, 10, 536 },
- { 10, 10, 149 }, { 11, 10, 280 }, { 14, 10, 336 }, { 4, 11, 738 },
- { 7, 10, 1946 }, { 5, 0, 195 }, { 7, 0, 1685 }, { 7, 0, 1997 },
- { 8, 0, 730 }, { 11, 0, 1006 }, { 23, 11, 17 }, { 5, 11, 866 },
- { 14, 0, 463 }, { 14, 0, 470 }, { 22, 0, 61 }, { 5, 0, 751 },
- { 8, 0, 266 }, { 11, 0, 578 }, { 4, 10, 392 }, { 7, 10, 1597 },
- { 5, 10, 433 }, { 9, 10, 633 }, { 11, 10, 629 }, { 7, 0, 821 },
- { 6, 0, 715 }, { 6, 0, 1325 }, { 5, 11, 116 }, { 6, 0, 868 },
- { 4, 11, 457 }, { 6, 0, 959 }, { 6, 10, 234 }, { 10, 11, 199 },
- { 7, 0, 1053 }, { 7, 10, 1950 }, { 8, 10, 680 }, { 11, 10, 817 },
- { 19, 10, 88 }, { 7, 10, 1222 }, { 10, 10, 386 }, { 5, 0, 950 },
- { 5, 0, 994 }, { 6, 0, 351 }, { 6, 0, 1124 }, { 6, 0, 1081 },
- { 7, 0, 1595 }, { 6, 10, 5 }, { 11, 10, 249 }, { 12, 10, 313 },
- { 16, 10, 66 }, { 17, 10, 26 }, { 20, 0, 59 }, { 5, 11, 527 },
- { 6, 11, 189 }, { 7, 11, 859 }, { 5, 10, 963 }, { 6, 10, 1773 },
- { 11, 11, 104 }, { 11, 11, 554 }, { 15, 11, 60 }, { 15, 11, 125 },
- { 7, 0, 47 }, { 9, 0, 684 }, { 6, 11, 116 }, { 6, 0, 1606 },
- { 6, 0, 777 }, { 7, 0, 1020 }, { 8, 10, 509 }, { 8, 10, 792 },
- { 7, 0, 1094 }, { 4, 0, 350 }, { 5, 11, 487 }, { 4, 11, 86 },
- { 5, 11, 667 }, { 5, 11, 753 }, { 6, 11, 316 }, { 6, 11, 455 },
- { 7, 11, 946 }, { 7, 0, 1812 }, { 13, 0, 259 }, { 13, 0, 356 },
- { 14, 0, 242 }, { 19, 0, 114 }, { 4, 10, 931 }, { 5, 0, 967 },
- { 4, 0, 473 }, { 7, 0, 623 }, { 8, 0, 808 }, { 9, 0, 871 },
- { 9, 0, 893 }, { 11, 0, 38 }, { 11, 0, 431 }, { 12, 0, 112 },
- { 12, 0, 217 }, { 12, 0, 243 }, { 12, 0, 562 }, { 12, 0, 663 },
- { 12, 0, 683 }, { 13, 0, 141 }, { 13, 0, 197 }, { 13, 0, 227 },
- { 13, 0, 406 }, { 13, 0, 487 }, { 14, 0, 156 }, { 14, 0, 203 },
- { 14, 0, 224 }, { 14, 0, 256 }, { 18, 0, 58 }, { 22, 0, 0 },
- { 10, 0, 286 }, { 7, 10, 943 }, { 11, 10, 614 }, { 7, 10, 1837 },
- { 22, 11, 45 }, { 4, 0, 798 }, { 4, 0, 222 }, { 7, 0, 286 },
- { 8, 0, 629 }, { 4, 11, 79 }, { 7, 11, 1773 }, { 10, 11, 450 },
- { 11, 11, 589 }, { 13, 11, 332 }, { 13, 11, 493 }, { 14, 11, 183 },
- { 14, 11, 334 }, { 14, 11, 362 }, { 14, 11, 368 }, { 14, 11, 376 },
- { 14, 11, 379 }, { 19, 11, 90 }, { 19, 11, 103 }, { 19, 11, 127 },
- { 20, 11, 90 }, { 5, 0, 337 }, { 11, 0, 513 }, { 11, 0, 889 },
- { 11, 0, 961 }, { 12, 0, 461 }, { 13, 0, 79 }, { 15, 0, 121 },
- { 4, 10, 90 }, { 5, 10, 545 }, { 7, 10, 754 }, { 9, 10, 186 },
- { 10, 10, 72 }, { 10, 10, 782 }, { 11, 10, 577 }, { 11, 10, 610 },
- { 12, 10, 354 }, { 12, 10, 362 }, { 12, 10, 595 }, { 13, 0, 306 },
- { 8, 0, 146 }, { 7, 0, 1646 }, { 9, 10, 329 }, { 11, 10, 254 },
- { 13, 11, 124 }, { 4, 0, 465 }, { 7, 0, 1663 }, { 4, 0, 525 },
- { 5, 11, 663 }, { 10, 0, 299 }, { 18, 0, 74 }, { 9, 10, 187 },
- { 11, 10, 1016 }, { 17, 10, 44 }, { 7, 0, 165 }, { 7, 0, 919 },
- { 4, 10, 506 }, { 8, 10, 517 }, { 5, 10, 295 }, { 7, 10, 1680 },
- { 5, 11, 846 }, { 6, 0, 1064 }, { 5, 11, 378 }, { 7, 11, 1402 },
- { 7, 11, 1414 }, { 8, 11, 465 }, { 9, 11, 286 }, { 10, 11, 185 },
- { 10, 11, 562 }, { 10, 11, 635 }, { 11, 11, 31 }, { 11, 11, 393 },
- { 12, 11, 456 }, { 13, 11, 312 }, { 18, 11, 65 }, { 18, 11, 96 },
- { 19, 11, 89 }, { 4, 0, 596 }, { 7, 10, 987 }, { 9, 10, 688 },
- { 10, 10, 522 }, { 11, 10, 788 }, { 12, 10, 566 }, { 6, 0, 82 },
- { 7, 0, 138 }, { 7, 0, 517 }, { 7, 0, 1741 }, { 11, 0, 238 },
- { 4, 11, 648 }, { 6, 10, 1775 }, { 7, 0, 1233 }, { 7, 10, 700 },
- { 7, 10, 940 }, { 8, 10, 514 }, { 9, 10, 116 }, { 9, 10, 535 },
- { 10, 10, 118 }, { 11, 10, 107 }, { 11, 10, 148 }, { 11, 10, 922 },
- { 12, 10, 254 }, { 12, 10, 421 }, { 14, 10, 238 }, { 4, 0, 962 },
- { 6, 0, 1824 }, { 8, 0, 894 }, { 12, 0, 708 }, { 12, 0, 725 },
- { 14, 0, 451 }, { 20, 0, 94 }, { 22, 0, 59 }, { 22, 0, 62 },
- { 5, 11, 945 }, { 6, 11, 1656 }, { 6, 11, 1787 }, { 7, 11, 167 },
- { 8, 11, 824 }, { 9, 11, 391 }, { 10, 11, 375 }, { 11, 11, 185 },
- { 5, 0, 495 }, { 7, 0, 834 }, { 9, 0, 733 }, { 11, 0, 378 },
- { 4, 10, 743 }, { 7, 11, 1273 }, { 6, 0, 1204 }, { 7, 11, 1645 },
- { 8, 11, 352 }, { 9, 11, 249 }, { 11, 10, 292 }, { 5, 0, 559 },
- { 4, 11, 152 }, { 9, 0, 499 }, { 10, 0, 341 }, { 15, 0, 144 },
- { 19, 0, 49 }, { 7, 10, 1283 }, { 9, 10, 227 }, { 11, 10, 325 },
- { 11, 10, 408 }, { 14, 10, 180 }, { 18, 10, 47 }, { 6, 0, 21 },
- { 6, 0, 1737 }, { 7, 0, 1444 }, { 8, 0, 224 }, { 5, 11, 1006 },
- { 7, 0, 1446 }, { 9, 0, 97 }, { 17, 0, 15 }, { 5, 10, 81 },
- { 7, 10, 146 }, { 7, 10, 1342 }, { 8, 10, 53 }, { 8, 10, 561 },
- { 8, 10, 694 }, { 8, 10, 754 }, { 9, 10, 115 }, { 9, 10, 894 },
- { 10, 10, 462 }, { 10, 10, 813 }, { 11, 10, 230 }, { 11, 10, 657 },
- { 11, 10, 699 }, { 11, 10, 748 }, { 12, 10, 119 }, { 12, 10, 200 },
- { 12, 10, 283 }, { 14, 10, 273 }, { 5, 10, 408 }, { 9, 10, 747 },
- { 7, 11, 431 }, { 7, 11, 832 }, { 6, 0, 729 }, { 6, 0, 953 },
- { 4, 0, 727 }, { 8, 0, 565 }, { 5, 11, 351 }, { 7, 11, 264 },
- { 8, 11, 565 }, { 6, 0, 1948 }, { 5, 0, 519 }, { 5, 11, 40 },
- { 7, 11, 598 }, { 7, 11, 1638 }, { 8, 11, 78 }, { 9, 11, 166 },
- { 9, 11, 640 }, { 9, 11, 685 }, { 9, 11, 773 }, { 11, 11, 215 },
- { 13, 11, 65 }, { 14, 11, 172 }, { 14, 11, 317 }, { 17, 11, 6 },
- { 8, 11, 60 }, { 9, 11, 343 }, { 11, 11, 769 }, { 9, 11, 455 },
- { 6, 0, 1193 }, { 12, 0, 790 }, { 7, 11, 1951 }, { 8, 11, 765 },
- { 8, 11, 772 }, { 12, 11, 671 }, { 7, 11, 108 }, { 8, 11, 219 },
- { 8, 11, 388 }, { 9, 11, 639 }, { 9, 11, 775 }, { 11, 11, 275 },
- { 12, 11, 464 }, { 4, 11, 468 }, { 7, 10, 30 }, { 8, 10, 86 },
- { 8, 10, 315 }, { 8, 10, 700 }, { 9, 10, 576 }, { 9, 10, 858 },
- { 11, 10, 310 }, { 11, 10, 888 }, { 11, 10, 904 }, { 12, 10, 361 },
- { 13, 10, 248 }, { 5, 11, 15 }, { 6, 11, 56 }, { 7, 11, 1758 },
- { 8, 11, 500 }, { 9, 11, 730 }, { 11, 11, 331 }, { 13, 11, 150 },
- { 14, 11, 282 }, { 4, 0, 402 }, { 7, 0, 2 }, { 8, 0, 323 },
- { 8, 0, 479 }, { 10, 10, 839 }, { 11, 0, 580 }, { 14, 0, 201 },
- { 5, 0, 59 }, { 7, 0, 672 }, { 9, 10, 617 }, { 18, 0, 34 },
- { 6, 11, 1886 }, { 4, 0, 961 }, { 8, 0, 896 }, { 6, 0, 1285 },
- { 5, 11, 205 }, { 6, 11, 438 }, { 9, 11, 711 }, { 6, 10, 428 },
- { 7, 10, 524 }, { 8, 10, 169 }, { 8, 10, 234 }, { 9, 10, 480 },
- { 10, 10, 646 }, { 20, 0, 46 }, { 13, 0, 479 }, { 5, 11, 534 },
- { 6, 0, 2019 }, { 6, 10, 1648 }, { 4, 0, 85 }, { 7, 0, 549 },
- { 7, 10, 1205 }, { 10, 10, 637 }, { 4, 0, 663 }, { 5, 0, 94 },
- { 7, 11, 235 }, { 7, 11, 1475 }, { 15, 11, 68 }, { 18, 11, 120 },
- { 6, 11, 443 }, { 9, 11, 237 }, { 9, 11, 571 }, { 9, 11, 695 },
- { 10, 11, 139 }, { 11, 11, 715 }, { 12, 11, 417 }, { 13, 11, 421 },
- { 4, 0, 783 }, { 4, 0, 682 }, { 8, 0, 65 }, { 9, 10, 39 },
- { 10, 10, 166 }, { 11, 10, 918 }, { 12, 10, 635 }, { 20, 10, 10 },
- { 22, 10, 27 }, { 22, 10, 43 }, { 22, 10, 52 }, { 6, 0, 11 },
- { 7, 0, 187 }, { 4, 0, 522 }, { 4, 0, 52 }, { 7, 0, 661 },
- { 4, 0, 383 }, { 5, 0, 520 }, { 7, 11, 546 }, { 11, 0, 343 },
- { 14, 0, 127 }, { 4, 11, 578 }, { 7, 10, 157 }, { 7, 11, 624 },
- { 7, 11, 916 }, { 8, 10, 279 }, { 10, 11, 256 }, { 11, 11, 87 },
- { 11, 11, 703 }, { 6, 10, 604 }, { 4, 0, 281 }, { 5, 0, 38 },
- { 7, 0, 194 }, { 7, 0, 668 }, { 7, 0, 1893 }, { 9, 0, 397 },
- { 7, 10, 945 }, { 11, 10, 713 }, { 11, 10, 744 }, { 11, 10, 1022 },
- { 9, 0, 635 }, { 11, 0, 559 }, { 5, 11, 923 }, { 7, 11, 490 },
- { 12, 11, 553 }, { 13, 11, 100 }, { 14, 11, 118 }, { 15, 11, 75 },
- { 4, 0, 975 }, { 4, 10, 567 }, { 9, 10, 859 }, { 7, 10, 1846 },
- { 7, 11, 1846 }, { 8, 10, 628 }, { 8, 11, 628 }, { 20, 0, 116 },
- { 10, 11, 750 }, { 14, 0, 51 }, { 14, 11, 51 }, { 15, 11, 7 },
- { 20, 11, 20 }, { 4, 0, 858 }, { 6, 0, 1075 }, { 4, 11, 924 },
- { 5, 10, 762 }, { 8, 0, 535 }, { 5, 0, 448 }, { 10, 10, 784 },
- { 13, 10, 191 }, { 5, 10, 298 }, { 7, 0, 610 }, { 7, 0, 1501 },
- { 7, 10, 633 }, { 7, 10, 905 }, { 7, 10, 909 }, { 7, 10, 1538 },
- { 9, 10, 767 }, { 12, 10, 636 }, { 4, 11, 265 }, { 7, 11, 807 },
- { 7, 11, 950 }, { 5, 11, 93 }, { 12, 11, 267 }, { 16, 11, 26 },
- { 8, 0, 191 }, { 11, 10, 301 }, { 7, 10, 1970 }, { 7, 0, 267 },
- { 4, 0, 319 }, { 5, 0, 699 }, { 10, 0, 673 }, { 6, 0, 336 },
- { 7, 0, 92 }, { 7, 0, 182 }, { 8, 0, 453 }, { 8, 0, 552 },
- { 9, 0, 204 }, { 9, 0, 285 }, { 10, 0, 99 }, { 11, 0, 568 },
- { 11, 0, 950 }, { 12, 0, 94 }, { 16, 0, 20 }, { 16, 0, 70 },
- { 19, 0, 55 }, { 12, 10, 644 }, { 16, 10, 90 }, { 6, 0, 551 },
- { 7, 0, 1308 }, { 7, 10, 845 }, { 7, 11, 994 }, { 8, 10, 160 },
- { 9, 10, 318 }, { 19, 11, 1 }, { 19, 11, 26 }, { 22, 11, 9 },
- { 7, 0, 1406 }, { 9, 0, 218 }, { 13, 0, 222 }, { 5, 0, 256 },
- { 10, 0, 69 }, { 5, 11, 233 }, { 5, 11, 320 }, { 6, 11, 140 },
- { 7, 11, 330 }, { 8, 11, 295 }, { 6, 0, 1980 }, { 8, 0, 952 },
- { 4, 0, 833 }, { 9, 11, 678 }, { 5, 11, 978 }, { 4, 11, 905 },
- { 6, 11, 1701 }, { 9, 11, 843 }, { 10, 10, 735 }, { 8, 10, 76 },
- { 17, 0, 39 }, { 20, 0, 36 }, { 18, 0, 81 }, { 18, 11, 81 },
- { 14, 0, 352 }, { 17, 0, 53 }, { 18, 0, 146 }, { 18, 0, 152 },
- { 19, 0, 11 }, { 22, 0, 54 }, { 7, 0, 634 }, { 10, 10, 841 },
- { 4, 0, 618 }, { 4, 0, 339 }, { 7, 0, 259 }, { 17, 0, 73 },
- { 4, 11, 275 }, { 12, 11, 376 }, { 4, 11, 509 }, { 7, 11, 273 },
- { 11, 11, 377 }, { 4, 0, 759 }, { 13, 0, 169 }, { 9, 10, 804 },
- { 6, 10, 96 }, { 7, 10, 1426 }, { 4, 10, 651 }, { 5, 10, 289 },
- { 7, 0, 1075 }, { 8, 10, 35 }, { 9, 10, 511 }, { 10, 10, 767 },
- { 19, 10, 118 }, { 6, 0, 649 }, { 6, 0, 670 }, { 8, 0, 482 },
- { 5, 0, 336 }, { 6, 0, 341 }, { 6, 0, 478 }, { 6, 0, 1763 },
- { 8, 0, 386 }, { 5, 11, 802 }, { 7, 11, 2021 }, { 8, 11, 805 },
- { 14, 11, 94 }, { 15, 11, 65 }, { 16, 11, 4 }, { 16, 11, 77 },
- { 16, 11, 80 }, { 17, 11, 5 }, { 6, 0, 1035 }, { 5, 11, 167 },
- { 5, 11, 899 }, { 6, 11, 410 }, { 9, 11, 777 }, { 6, 11, 1705 },
- { 5, 0, 924 }, { 5, 0, 969 }, { 4, 10, 704 }, { 7, 0, 73 },
- { 7, 11, 10 }, { 7, 10, 1078 }, { 5, 11, 11 }, { 6, 11, 117 },
- { 6, 11, 485 }, { 7, 11, 1133 }, { 9, 11, 582 }, { 9, 11, 594 },
- { 11, 11, 21 }, { 11, 11, 818 }, { 12, 11, 535 }, { 13, 11, 86 },
- { 7, 0, 1971 }, { 4, 11, 264 }, { 7, 11, 1067 }, { 8, 11, 204 },
- { 8, 11, 385 }, { 11, 11, 953 }, { 6, 0, 1458 }, { 7, 0, 1344 },
- { 5, 0, 396 }, { 6, 0, 501 }, { 4, 10, 720 }, { 5, 10, 306 },
- { 4, 0, 929 }, { 5, 0, 799 }, { 8, 0, 46 }, { 8, 0, 740 },
- { 5, 10, 431 }, { 7, 11, 646 }, { 7, 11, 1730 }, { 11, 11, 446 },
- { 13, 11, 178 }, { 7, 0, 276 }, { 5, 10, 464 }, { 6, 10, 236 },
- { 7, 10, 696 }, { 7, 10, 914 }, { 7, 10, 1108 }, { 7, 10, 1448 },
- { 9, 10, 15 }, { 9, 10, 564 }, { 10, 10, 14 }, { 12, 10, 565 },
- { 13, 10, 449 }, { 14, 10, 53 }, { 15, 10, 13 }, { 16, 10, 64 },
- { 17, 10, 41 }, { 4, 0, 892 }, { 5, 0, 770 }, { 6, 10, 1767 },
- { 12, 10, 194 }, { 17, 10, 107 }, { 7, 0, 158 }, { 5, 10, 840 },
- { 10, 11, 608 }, { 6, 0, 1432 }, { 10, 11, 250 }, { 8, 11, 794 },
- { 9, 11, 400 }, { 10, 11, 298 }, { 14, 11, 228 }, { 23, 0, 25 },
- { 7, 11, 1131 }, { 7, 11, 1468 }, { 7, 0, 2001 }, { 9, 10, 642 },
- { 11, 10, 236 }, { 14, 10, 193 }, { 4, 10, 68 }, { 5, 10, 634 },
- { 6, 10, 386 }, { 7, 10, 794 }, { 8, 10, 273 }, { 9, 10, 563 },
- { 10, 10, 105 }, { 10, 10, 171 }, { 11, 10, 94 }, { 11, 10, 354 },
- { 8, 11, 724 }, { 4, 0, 478 }, { 11, 11, 512 }, { 13, 11, 205 },
- { 19, 11, 30 }, { 22, 11, 36 }, { 23, 11, 19 }, { 7, 0, 1461 },
- { 12, 0, 91 }, { 6, 11, 190 }, { 7, 11, 768 }, { 7, 11, 1170 },
- { 4, 0, 602 }, { 8, 0, 211 }, { 4, 10, 95 }, { 7, 10, 416 },
- { 11, 10, 830 }, { 7, 10, 731 }, { 13, 10, 20 }, { 15, 10, 11 },
- { 6, 0, 1068 }, { 7, 0, 1872 }, { 4, 0, 13 }, { 5, 0, 567 },
- { 7, 0, 1498 }, { 9, 0, 124 }, { 11, 0, 521 }, { 12, 0, 405 },
- { 7, 11, 1023 }, { 7, 0, 1006 }, { 4, 0, 735 }, { 10, 0, 812 },
- { 4, 0, 170 }, { 7, 0, 323 }, { 6, 11, 137 }, { 9, 11, 75 },
- { 9, 11, 253 }, { 10, 11, 194 }, { 10, 11, 444 }, { 5, 0, 304 },
- { 7, 0, 1403 }, { 5, 10, 864 }, { 10, 10, 648 }, { 11, 10, 671 },
- { 15, 10, 46 }, { 7, 11, 1180 }, { 5, 10, 928 }, { 4, 0, 148 },
- { 5, 0, 742 }, { 11, 10, 986 }, { 12, 10, 682 }, { 5, 0, 523 },
- { 7, 11, 1743 }, { 7, 0, 730 }, { 18, 0, 144 }, { 19, 0, 61 },
- { 8, 10, 44 }, { 9, 10, 884 }, { 10, 10, 580 }, { 11, 10, 399 },
- { 11, 10, 894 }, { 15, 10, 122 }, { 5, 11, 760 }, { 7, 11, 542 },
- { 8, 11, 135 }, { 8, 11, 496 }, { 8, 0, 981 }, { 5, 0, 111 },
- { 10, 0, 132 }, { 11, 0, 191 }, { 11, 0, 358 }, { 11, 0, 460 },
- { 7, 11, 319 }, { 7, 11, 355 }, { 7, 11, 763 }, { 10, 11, 389 },
- { 17, 11, 43 }, { 6, 0, 890 }, { 6, 0, 1420 }, { 8, 11, 557 },
- { 5, 10, 518 }, { 5, 0, 444 }, { 7, 0, 1787 }, { 7, 10, 1852 },
- { 8, 0, 123 }, { 15, 0, 6 }, { 16, 0, 7 }, { 6, 0, 2041 },
- { 10, 11, 38 }, { 11, 11, 784 }, { 8, 0, 932 }, { 5, 0, 937 },
- { 7, 0, 100 }, { 6, 0, 995 }, { 4, 11, 58 }, { 5, 11, 286 },
- { 6, 11, 319 }, { 7, 11, 402 }, { 7, 11, 1254 }, { 7, 11, 1903 },
- { 8, 11, 356 }, { 12, 11, 408 }, { 4, 11, 389 }, { 9, 11, 181 },
- { 9, 11, 255 }, { 10, 11, 8 }, { 10, 11, 29 }, { 10, 11, 816 },
- { 11, 11, 311 }, { 11, 11, 561 }, { 12, 11, 67 }, { 13, 11, 181 },
- { 10, 0, 255 }, { 5, 0, 138 }, { 4, 10, 934 }, { 8, 10, 610 },
- { 4, 0, 965 }, { 10, 0, 863 }, { 10, 0, 898 }, { 10, 10, 804 },
- { 10, 10, 832 }, { 12, 0, 631 }, { 8, 10, 96 }, { 9, 10, 36 },
- { 10, 10, 607 }, { 11, 10, 423 }, { 11, 10, 442 }, { 12, 10, 309 },
- { 14, 10, 199 }, { 15, 10, 90 }, { 17, 10, 110 }, { 6, 0, 1394 },
- { 4, 0, 652 }, { 8, 0, 320 }, { 22, 0, 6 }, { 22, 0, 16 },
- { 9, 10, 13 }, { 9, 10, 398 }, { 9, 10, 727 }, { 10, 10, 75 },
- { 10, 10, 184 }, { 10, 10, 230 }, { 10, 10, 564 }, { 10, 10, 569 },
- { 11, 10, 973 }, { 12, 10, 70 }, { 12, 10, 189 }, { 13, 10, 57 },
- { 13, 10, 257 }, { 6, 0, 897 }, { 6, 0, 1333 }, { 4, 0, 692 },
- { 5, 0, 321 }, { 5, 11, 373 }, { 7, 0, 922 }, { 5, 0, 619 },
- { 5, 0, 698 }, { 9, 10, 631 }, { 5, 10, 345 }, { 7, 10, 1016 },
- { 9, 0, 957 }, { 9, 0, 1018 }, { 12, 0, 828 }, { 12, 0, 844 },
- { 12, 0, 897 }, { 12, 0, 901 }, { 12, 0, 943 }, { 15, 0, 180 },
- { 18, 0, 197 }, { 18, 0, 200 }, { 18, 0, 213 }, { 18, 0, 214 },
- { 18, 0, 226 }, { 5, 0, 917 }, { 6, 0, 1659 }, { 7, 0, 1100 },
- { 6, 0, 1173 }, { 6, 0, 1930 }, { 5, 0, 251 }, { 5, 0, 956 },
- { 8, 0, 268 }, { 9, 0, 214 }, { 18, 0, 142 }, { 5, 10, 673 },
- { 9, 10, 850 }, { 4, 10, 287 }, { 5, 10, 1018 }, { 4, 11, 672 },
- { 5, 0, 346 }, { 5, 0, 711 }, { 8, 0, 390 }, { 11, 11, 752 },
- { 11, 11, 885 }, { 5, 10, 34 }, { 10, 10, 724 }, { 12, 10, 444 },
- { 13, 10, 354 }, { 18, 10, 32 }, { 23, 10, 24 }, { 23, 10, 31 },
- { 24, 10, 5 }, { 4, 11, 710 }, { 6, 11, 606 }, { 6, 0, 744 },
- { 6, 10, 382 }, { 5, 11, 145 }, { 4, 10, 329 }, { 7, 11, 884 },
- { 12, 11, 124 }, { 4, 11, 467 }, { 5, 11, 405 }, { 6, 11, 544 },
- { 9, 10, 846 }, { 10, 10, 827 }, { 5, 0, 624 }, { 9, 11, 372 },
- { 15, 11, 2 }, { 19, 11, 10 }, { 19, 11, 18 }, { 4, 11, 387 },
- { 7, 11, 1288 }, { 5, 0, 783 }, { 7, 0, 1998 }, { 7, 0, 2047 },
- { 4, 10, 906 }, { 8, 10, 366 }, { 7, 11, 550 }, { 4, 10, 123 },
- { 4, 10, 649 }, { 5, 10, 605 }, { 7, 10, 1509 }, { 8, 10, 36 },
- { 6, 0, 1125 }, { 4, 0, 594 }, { 5, 10, 767 }, { 7, 11, 1227 },
- { 8, 11, 467 }, { 4, 11, 576 }, { 7, 11, 1263 }, { 4, 0, 268 },
- { 7, 0, 1534 }, { 7, 11, 1534 }, { 4, 10, 273 }, { 5, 10, 658 },
- { 5, 11, 919 }, { 5, 10, 995 }, { 6, 11, 1673 }, { 5, 0, 563 },
- { 6, 10, 72 }, { 7, 10, 1345 }, { 4, 11, 82 }, { 5, 11, 333 },
- { 5, 11, 904 }, { 6, 11, 207 }, { 7, 11, 325 }, { 7, 11, 1726 },
- { 8, 11, 101 }, { 10, 11, 778 }, { 11, 11, 220 }, { 5, 0, 37 },
- { 6, 0, 39 }, { 6, 0, 451 }, { 7, 0, 218 }, { 7, 0, 667 },
- { 7, 0, 1166 }, { 7, 0, 1687 }, { 8, 0, 662 }, { 16, 0, 2 },
- { 5, 10, 589 }, { 6, 0, 1332 }, { 5, 11, 903 }, { 6, 0, 508 },
- { 5, 10, 117 }, { 6, 10, 514 }, { 6, 10, 541 }, { 7, 10, 1164 },
- { 7, 10, 1436 }, { 8, 10, 220 }, { 8, 10, 648 }, { 10, 10, 688 },
- { 11, 10, 560 }, { 12, 11, 147 }, { 6, 11, 555 }, { 7, 11, 485 },
- { 5, 10, 686 }, { 7, 0, 453 }, { 7, 0, 635 }, { 7, 0, 796 },
- { 8, 0, 331 }, { 9, 0, 330 }, { 9, 0, 865 }, { 10, 0, 119 },
- { 10, 0, 235 }, { 11, 0, 111 }, { 11, 0, 129 }, { 11, 0, 240 },
- { 12, 0, 31 }, { 12, 0, 66 }, { 12, 0, 222 }, { 12, 0, 269 },
- { 12, 0, 599 }, { 12, 0, 684 }, { 12, 0, 689 }, { 12, 0, 691 },
- { 14, 0, 345 }, { 7, 0, 1834 }, { 4, 11, 705 }, { 7, 11, 615 },
- { 10, 11, 251 }, { 8, 11, 345 }, { 9, 0, 527 }, { 6, 0, 98 },
- { 7, 0, 702 }, { 7, 0, 991 }, { 11, 0, 576 }, { 14, 0, 74 },
- { 7, 10, 196 }, { 10, 10, 765 }, { 11, 10, 347 }, { 11, 10, 552 },
- { 11, 10, 790 }, { 12, 10, 263 }, { 13, 10, 246 }, { 13, 10, 270 },
- { 13, 10, 395 }, { 14, 10, 176 }, { 14, 10, 190 }, { 14, 10, 398 },
- { 14, 10, 412 }, { 15, 10, 32 }, { 15, 10, 63 }, { 16, 10, 88 },
- { 19, 10, 105 }, { 6, 11, 90 }, { 13, 0, 84 }, { 13, 0, 122 },
- { 6, 0, 37 }, { 7, 0, 299 }, { 7, 0, 1666 }, { 8, 0, 195 },
- { 8, 0, 316 }, { 9, 0, 178 }, { 9, 0, 276 }, { 9, 0, 339 },
- { 9, 0, 536 }, { 10, 0, 102 }, { 10, 0, 362 }, { 10, 0, 785 },
- { 11, 0, 55 }, { 11, 0, 149 }, { 11, 0, 773 }, { 13, 0, 416 },
- { 13, 0, 419 }, { 14, 0, 38 }, { 14, 0, 41 }, { 14, 0, 210 },
- { 5, 10, 381 }, { 7, 10, 1792 }, { 7, 11, 813 }, { 12, 11, 497 },
- { 13, 11, 56 }, { 7, 10, 616 }, { 10, 10, 413 }, { 5, 0, 645 },
- { 6, 11, 125 }, { 7, 11, 1277 }, { 4, 0, 290 }, { 6, 0, 70 },
- { 7, 0, 1292 }, { 10, 0, 762 }, { 11, 0, 288 }, { 6, 10, 120 },
- { 7, 10, 1188 }, { 7, 10, 1710 }, { 8, 10, 286 }, { 9, 10, 667 },
- { 11, 10, 592 }, { 11, 10, 730 }, { 7, 11, 1784 }, { 7, 0, 1315 },
- { 7, 11, 1315 }, { 6, 0, 1955 }, { 7, 10, 1146 }, { 7, 0, 131 },
- { 7, 0, 422 }, { 8, 0, 210 }, { 12, 0, 573 }, { 4, 10, 352 },
- { 7, 10, 687 }, { 11, 0, 797 }, { 15, 0, 38 }, { 14, 0, 179 },
- { 15, 0, 151 }, { 22, 0, 11 }, { 7, 0, 488 }, { 4, 10, 192 },
- { 5, 10, 49 }, { 6, 10, 200 }, { 6, 10, 293 }, { 6, 10, 1696 },
- { 4, 0, 936 }, { 7, 11, 703 }, { 6, 11, 160 }, { 7, 11, 1106 },
- { 9, 11, 770 }, { 10, 11, 618 }, { 11, 11, 112 }, { 12, 11, 413 },
- { 5, 0, 453 }, { 6, 0, 441 }, { 7, 0, 595 }, { 4, 10, 650 },
- { 4, 10, 147 }, { 6, 0, 991 }, { 6, 0, 1182 }, { 12, 11, 271 },
- { 17, 11, 109 }, { 5, 10, 934 }, { 12, 11, 221 }, { 4, 0, 653 },
- { 7, 0, 505 }, { 7, 0, 523 }, { 6, 0, 903 }, { 7, 11, 479 },
- { 7, 11, 304 }, { 9, 11, 646 }, { 9, 11, 862 }, { 10, 11, 262 },
- { 11, 11, 696 }, { 12, 11, 208 }, { 15, 11, 79 }, { 19, 11, 108 },
- { 18, 0, 80 }, { 7, 11, 981 }, { 14, 0, 432 }, { 4, 0, 314 },
- { 9, 11, 152 }, { 7, 0, 1368 }, { 8, 0, 232 }, { 8, 0, 361 },
- { 10, 0, 682 }, { 10, 0, 742 }, { 7, 11, 1586 }, { 9, 0, 534 },
- { 4, 11, 434 }, { 11, 11, 663 }, { 12, 11, 210 }, { 13, 11, 166 },
- { 13, 11, 310 }, { 14, 11, 373 }, { 19, 11, 43 }, { 7, 11, 1091 },
- { 7, 11, 1765 }, { 6, 11, 550 }, { 7, 11, 652 }, { 9, 0, 27 },
- { 14, 0, 12 }, { 4, 10, 637 }, { 5, 11, 553 }, { 7, 11, 766 },
- { 10, 11, 824 }, { 7, 11, 737 }, { 8, 11, 298 }, { 8, 11, 452 },
- { 7, 0, 736 }, { 11, 0, 264 }, { 6, 0, 1657 }, { 5, 11, 292 },
- { 10, 11, 135 }, { 6, 0, 844 }, { 6, 0, 1117 }, { 7, 0, 127 },
- { 9, 10, 867 }, { 10, 10, 837 }, { 6, 0, 1184 }, { 6, 0, 1208 },
- { 6, 0, 1294 }, { 8, 0, 364 }, { 6, 0, 1415 }, { 7, 0, 1334 },
- { 11, 0, 125 }, { 6, 10, 170 }, { 7, 11, 393 }, { 8, 10, 395 },
- { 8, 10, 487 }, { 10, 11, 603 }, { 11, 11, 206 }, { 13, 10, 147 },
- { 9, 11, 748 }, { 4, 11, 912 }, { 9, 11, 232 }, { 4, 10, 535 },
- { 8, 10, 618 }, { 9, 0, 792 }, { 7, 11, 1973 }, { 8, 11, 716 },
- { 7, 11, 98 }, { 5, 0, 909 }, { 9, 0, 849 }, { 10, 0, 805 },
- { 4, 0, 630 }, { 4, 0, 699 }, { 5, 11, 733 }, { 14, 11, 103 },
- { 22, 10, 23 }, { 12, 11, 158 }, { 18, 11, 8 }, { 19, 11, 62 },
- { 20, 11, 6 }, { 22, 11, 4 }, { 23, 11, 2 }, { 23, 11, 9 },
- { 4, 0, 968 }, { 4, 10, 778 }, { 4, 10, 46 }, { 5, 10, 811 },
- { 6, 10, 1679 }, { 6, 10, 1714 }, { 7, 10, 2032 }, { 6, 0, 1446 },
- { 7, 10, 1458 }, { 9, 10, 407 }, { 11, 10, 15 }, { 7, 0, 206 },
- { 7, 0, 397 }, { 7, 0, 621 }, { 7, 0, 640 }, { 8, 0, 124 },
- { 8, 0, 619 }, { 9, 0, 305 }, { 9, 0, 643 }, { 10, 0, 264 },
- { 10, 0, 628 }, { 11, 0, 40 }, { 12, 0, 349 }, { 13, 0, 134 },
- { 13, 0, 295 }, { 14, 0, 155 }, { 15, 0, 120 }, { 18, 0, 105 },
- { 6, 10, 34 }, { 7, 10, 1089 }, { 8, 10, 708 }, { 8, 10, 721 },
- { 9, 10, 363 }, { 20, 10, 98 }, { 4, 0, 262 }, { 5, 0, 641 },
- { 7, 0, 342 }, { 9, 11, 72 }, { 4, 0, 99 }, { 6, 0, 250 },
- { 6, 0, 346 }, { 8, 0, 127 }, { 10, 0, 81 }, { 4, 0, 915 },
- { 5, 0, 75 }, { 9, 0, 517 }, { 10, 0, 470 }, { 12, 0, 155 },
- { 13, 0, 224 }, { 4, 10, 462 }, { 11, 11, 600 }, { 11, 11, 670 },
- { 13, 11, 245 }, { 14, 0, 83 }, { 5, 10, 73 }, { 6, 10, 23 },
- { 6, 10, 338 }, { 6, 0, 1031 }, { 11, 11, 923 }, { 7, 11, 164 },
- { 7, 11, 1571 }, { 9, 11, 107 }, { 12, 11, 225 }, { 6, 0, 1470 },
- { 5, 0, 954 }, { 6, 0, 304 }, { 8, 0, 418 }, { 10, 0, 345 },
- { 11, 0, 341 }, { 11, 0, 675 }, { 9, 0, 410 }, { 11, 0, 425 },
- { 4, 11, 27 }, { 5, 11, 484 }, { 5, 11, 510 }, { 6, 11, 434 },
- { 7, 11, 1000 }, { 7, 11, 1098 }, { 8, 11, 2 }, { 8, 11, 200 },
- { 6, 0, 734 }, { 12, 11, 257 }, { 7, 10, 725 }, { 8, 10, 498 },
- { 11, 10, 268 }, { 6, 0, 1822 }, { 7, 0, 1798 }, { 7, 10, 773 },
- { 4, 11, 460 }, { 4, 11, 932 }, { 5, 11, 891 }, { 6, 0, 14 },
- { 4, 10, 583 }, { 7, 10, 1462 }, { 8, 11, 625 }, { 11, 10, 659 },
- { 5, 0, 113 }, { 6, 0, 243 }, { 6, 0, 1708 }, { 7, 0, 1865 },
- { 11, 0, 161 }, { 16, 0, 37 }, { 17, 0, 99 }, { 5, 10, 220 },
- { 6, 11, 76 }, { 5, 11, 461 }, { 7, 11, 1925 }, { 12, 0, 69 },
- { 8, 11, 92 }, { 9, 11, 221 }, { 11, 10, 803 }, { 4, 10, 544 },
- { 4, 0, 274 }, { 6, 0, 922 }, { 4, 0, 541 }, { 5, 0, 627 },
- { 6, 10, 437 }, { 6, 10, 564 }, { 11, 10, 181 }, { 13, 10, 183 },
- { 7, 10, 1192 }, { 7, 0, 166 }, { 4, 11, 763 }, { 5, 11, 253 },
- { 6, 0, 849 }, { 9, 11, 73 }, { 10, 11, 110 }, { 14, 11, 185 },
- { 17, 11, 119 }, { 5, 11, 212 }, { 12, 11, 35 }, { 13, 11, 382 },
- { 5, 0, 717 }, { 9, 0, 304 }, { 8, 0, 600 }, { 5, 0, 654 },
- { 6, 0, 273 }, { 10, 0, 188 }, { 13, 0, 377 }, { 18, 0, 77 },
- { 4, 10, 790 }, { 5, 10, 273 }, { 6, 10, 394 }, { 4, 0, 543 },
- { 7, 0, 410 }, { 11, 0, 98 }, { 11, 0, 524 }, { 13, 0, 87 },
- { 4, 0, 941 }, { 7, 11, 1175 }, { 4, 0, 250 }, { 7, 0, 1612 },
- { 11, 0, 186 }, { 12, 0, 133 }, { 6, 10, 127 }, { 7, 10, 1511 },
- { 8, 10, 613 }, { 12, 10, 495 }, { 12, 10, 586 }, { 12, 10, 660 },
- { 12, 10, 668 }, { 14, 10, 385 }, { 15, 10, 118 }, { 17, 10, 20 },
- { 18, 10, 98 }, { 6, 0, 1785 }, { 5, 11, 816 }, { 6, 0, 1339 },
- { 7, 0, 961 }, { 7, 0, 1085 }, { 7, 0, 1727 }, { 8, 0, 462 },
- { 6, 10, 230 }, { 7, 11, 1727 }, { 9, 0, 636 }, { 7, 10, 1954 },
- { 4, 0, 780 }, { 5, 11, 869 }, { 5, 11, 968 }, { 6, 11, 1626 },
- { 8, 11, 734 }, { 8, 11, 784 }, { 4, 11, 542 }, { 6, 11, 1716 },
- { 6, 11, 1727 }, { 7, 11, 1082 }, { 7, 11, 1545 }, { 8, 11, 56 },
- { 8, 11, 118 }, { 8, 11, 412 }, { 8, 11, 564 }, { 9, 11, 888 },
- { 9, 11, 908 }, { 10, 11, 50 }, { 10, 11, 423 }, { 11, 11, 685 },
- { 11, 11, 697 }, { 11, 11, 933 }, { 12, 11, 299 }, { 13, 11, 126 },
- { 13, 11, 136 }, { 13, 11, 170 }, { 13, 11, 190 }, { 6, 11, 226 },
- { 4, 11, 232 }, { 9, 11, 202 }, { 10, 11, 474 }, { 12, 11, 433 },
- { 9, 11, 500 }, { 5, 0, 529 }, { 8, 10, 68 }, { 4, 10, 654 },
- { 4, 10, 156 }, { 7, 10, 998 }, { 7, 10, 1045 }, { 7, 10, 1860 },
- { 9, 10, 48 }, { 9, 10, 692 }, { 11, 10, 419 }, { 11, 10, 602 },
- { 7, 0, 1276 }, { 8, 0, 474 }, { 9, 0, 652 }, { 6, 11, 108 },
- { 7, 11, 1003 }, { 7, 11, 1181 }, { 8, 11, 343 }, { 7, 11, 1264 },
- { 7, 11, 1678 }, { 11, 11, 945 }, { 12, 11, 341 }, { 12, 11, 471 },
- { 12, 11, 569 }, { 6, 11, 1712 }, { 5, 0, 948 }, { 12, 0, 468 },
- { 19, 0, 96 }, { 20, 0, 24 }, { 4, 11, 133 }, { 7, 11, 711 },
- { 7, 11, 1298 }, { 7, 11, 1585 }, { 7, 11, 1929 }, { 6, 0, 753 },
- { 12, 0, 657 }, { 11, 0, 941 }, { 6, 11, 99 }, { 7, 11, 1808 },
- { 17, 11, 57 }, { 6, 11, 574 }, { 7, 11, 428 }, { 7, 11, 1250 },
- { 10, 11, 669 }, { 11, 11, 485 }, { 11, 11, 840 }, { 12, 11, 300 },
- { 14, 11, 250 }, { 4, 0, 532 }, { 5, 0, 706 }, { 7, 0, 662 },
- { 5, 0, 837 }, { 6, 0, 1651 }, { 11, 0, 985 }, { 7, 0, 1861 },
- { 9, 10, 197 }, { 10, 10, 300 }, { 12, 10, 473 }, { 13, 10, 90 },
- { 13, 10, 405 }, { 9, 11, 252 }, { 6, 11, 323 }, { 7, 11, 1564 },
- { 4, 0, 330 }, { 4, 0, 863 }, { 7, 0, 933 }, { 7, 0, 2012 },
- { 8, 0, 292 }, { 7, 11, 461 }, { 8, 11, 775 }, { 10, 11, 435 },
- { 4, 10, 606 }, { 4, 11, 655 }, { 7, 11, 850 }, { 17, 11, 75 },
- { 18, 11, 137 }, { 7, 0, 767 }, { 7, 10, 1978 }, { 8, 10, 676 },
- { 4, 0, 641 }, { 7, 11, 1559 }, { 6, 0, 1233 }, { 9, 0, 242 },
- { 17, 0, 114 }, { 4, 10, 361 }, { 5, 10, 315 }, { 9, 0, 883 },
- { 4, 10, 461 }, { 10, 0, 274 }, { 6, 0, 2008 }, { 6, 0, 1794 },
- { 4, 0, 703 }, { 7, 0, 207 }, { 12, 0, 285 }, { 4, 10, 472 },
- { 4, 0, 571 }, { 5, 0, 873 }, { 5, 0, 960 }, { 8, 0, 823 },
- { 9, 0, 881 }, { 8, 11, 577 }, { 7, 0, 617 }, { 10, 0, 498 },
- { 11, 0, 501 }, { 12, 0, 16 }, { 12, 0, 150 }, { 10, 10, 747 },
- { 4, 0, 431 }, { 5, 10, 155 }, { 11, 0, 283 }, { 11, 0, 567 },
- { 7, 10, 163 }, { 8, 10, 319 }, { 9, 10, 402 }, { 10, 10, 24 },
- { 10, 10, 681 }, { 11, 10, 200 }, { 12, 10, 253 }, { 12, 10, 410 },
- { 14, 10, 219 }, { 4, 11, 413 }, { 5, 11, 677 }, { 8, 11, 432 },
- { 12, 11, 280 }, { 9, 0, 401 }, { 5, 10, 475 }, { 7, 10, 1780 },
- { 11, 10, 297 }, { 11, 10, 558 }, { 14, 10, 322 }, { 19, 10, 76 },
- { 6, 0, 781 }, { 9, 0, 134 }, { 10, 0, 2 }, { 10, 0, 27 },
- { 10, 0, 333 }, { 11, 0, 722 }, { 15, 0, 1 }, { 5, 0, 33 },
- { 6, 0, 470 }, { 11, 0, 424 }, { 7, 0, 2006 }, { 12, 0, 783 },
- { 7, 10, 1956 }, { 8, 0, 274 }, { 7, 0, 1882 }, { 4, 0, 794 },
- { 7, 0, 1848 }, { 5, 10, 944 }, { 6, 10, 1769 }, { 6, 0, 47 },
- { 7, 0, 90 }, { 7, 0, 664 }, { 7, 0, 830 }, { 7, 0, 1380 },
- { 7, 0, 2025 }, { 8, 0, 448 }, { 8, 0, 828 }, { 4, 10, 144 },
- { 6, 0, 1199 }, { 4, 11, 395 }, { 11, 11, 762 }, { 7, 11, 1504 },
- { 9, 0, 417 }, { 9, 0, 493 }, { 9, 11, 174 }, { 10, 11, 164 },
- { 11, 11, 440 }, { 11, 11, 841 }, { 15, 11, 98 }, { 6, 11, 426 },
- { 11, 11, 1002 }, { 6, 0, 295 }, { 6, 0, 816 }, { 6, 10, 247 },
- { 9, 10, 555 }, { 5, 0, 1019 }, { 4, 0, 620 }, { 5, 11, 476 },
- { 10, 10, 280 }, { 10, 10, 797 }, { 11, 0, 464 }, { 5, 11, 76 },
- { 6, 11, 458 }, { 6, 11, 497 }, { 7, 11, 764 }, { 7, 11, 868 },
- { 9, 11, 658 }, { 10, 11, 594 }, { 11, 11, 173 }, { 11, 11, 566 },
- { 12, 11, 20 }, { 12, 11, 338 }, { 13, 11, 200 }, { 6, 0, 208 },
- { 4, 11, 526 }, { 7, 11, 1029 }, { 7, 11, 1054 }, { 4, 11, 636 },
- { 6, 11, 233 }, { 7, 11, 660 }, { 7, 11, 1124 }, { 17, 11, 31 },
- { 19, 11, 22 }, { 23, 11, 14 }, { 10, 0, 442 }, { 5, 10, 428 },
- { 10, 0, 930 }, { 12, 0, 778 }, { 6, 0, 68 }, { 7, 0, 448 },
- { 7, 0, 1629 }, { 7, 0, 1769 }, { 7, 0, 1813 }, { 8, 0, 442 },
- { 8, 0, 516 }, { 9, 0, 710 }, { 10, 0, 282 }, { 10, 0, 722 },
- { 7, 10, 1717 }, { 10, 10, 546 }, { 6, 0, 1128 }, { 11, 0, 844 },
- { 12, 0, 104 }, { 12, 0, 625 }, { 4, 11, 432 }, { 7, 11, 824 },
- { 10, 10, 189 }, { 5, 0, 787 }, { 5, 10, 99 }, { 4, 11, 279 },
- { 7, 11, 301 }, { 9, 11, 362 }, { 8, 0, 491 }, { 4, 10, 397 },
- { 8, 10, 555 }, { 4, 11, 178 }, { 5, 11, 399 }, { 6, 0, 711 },
- { 16, 0, 9 }, { 4, 0, 403 }, { 5, 0, 441 }, { 7, 0, 450 },
- { 10, 0, 840 }, { 11, 0, 101 }, { 12, 0, 193 }, { 13, 0, 430 },
- { 7, 11, 1246 }, { 12, 10, 398 }, { 20, 10, 39 }, { 21, 10, 11 },
- { 22, 10, 41 }, { 4, 10, 485 }, { 7, 10, 353 }, { 7, 10, 1523 },
- { 6, 10, 366 }, { 7, 10, 1384 }, { 7, 10, 1601 }, { 7, 11, 1912 },
- { 7, 0, 396 }, { 10, 0, 160 }, { 7, 11, 396 }, { 9, 10, 282 },
- { 6, 11, 1692 }, { 4, 10, 157 }, { 5, 10, 471 }, { 6, 11, 202 },
- { 10, 11, 448 }, { 11, 11, 208 }, { 12, 11, 360 }, { 17, 11, 117 },
- { 17, 11, 118 }, { 18, 11, 27 }, { 20, 11, 67 }, { 5, 0, 679 },
- { 9, 0, 326 }, { 8, 10, 116 }, { 7, 11, 872 }, { 10, 11, 516 },
- { 11, 11, 167 }, { 4, 11, 224 }, { 5, 11, 546 }, { 7, 11, 35 },
- { 8, 11, 11 }, { 8, 11, 12 }, { 9, 11, 315 }, { 9, 11, 533 },
- { 10, 11, 802 }, { 11, 11, 166 }, { 12, 11, 525 }, { 14, 11, 243 },
- { 7, 0, 1128 }, { 7, 11, 1920 }, { 5, 11, 241 }, { 8, 11, 242 },
- { 9, 11, 451 }, { 10, 11, 667 }, { 11, 11, 598 }, { 12, 11, 429 },
- { 6, 0, 737 }, { 5, 10, 160 }, { 7, 10, 363 }, { 7, 10, 589 },
- { 10, 10, 170 }, { 13, 10, 55 }, { 7, 0, 1796 }, { 14, 11, 254 },
- { 4, 0, 574 }, { 7, 0, 350 }, { 7, 0, 1024 }, { 8, 0, 338 },
- { 9, 0, 677 }, { 10, 0, 808 }, { 6, 0, 1096 }, { 9, 11, 516 },
- { 7, 0, 405 }, { 10, 0, 491 }, { 4, 10, 108 }, { 4, 11, 366 },
- { 11, 10, 498 }, { 11, 11, 337 }, { 14, 11, 303 }, { 6, 11, 1736 },
- { 7, 0, 1081 }, { 12, 11, 364 }, { 7, 10, 1005 }, { 12, 10, 609 },
- { 7, 0, 1676 }, { 4, 10, 895 }, { 5, 10, 772 }, { 7, 0, 2037 },
- { 6, 0, 1207 }, { 11, 11, 916 }, { 14, 11, 419 }, { 14, 11, 140 },
- { 20, 11, 41 }, { 6, 11, 331 }, { 8, 11, 623 }, { 9, 0, 944 },
- { 9, 0, 969 }, { 9, 0, 1022 }, { 12, 0, 913 }, { 12, 0, 936 },
- { 15, 0, 177 }, { 15, 0, 193 }, { 4, 10, 926 }, { 5, 10, 983 },
- { 5, 0, 354 }, { 7, 11, 506 }, { 8, 0, 598 }, { 9, 0, 664 },
- { 10, 0, 441 }, { 4, 11, 640 }, { 5, 11, 513 }, { 9, 0, 297 },
- { 4, 10, 538 }, { 6, 10, 294 }, { 7, 10, 1267 }, { 8, 10, 624 },
- { 7, 0, 1772 }, { 7, 11, 1888 }, { 8, 11, 289 }, { 11, 11, 45 },
- { 12, 11, 278 }, { 12, 11, 537 }, { 7, 10, 1325 }, { 10, 0, 751 },
- { 13, 0, 37 }, { 6, 0, 1828 }, { 4, 10, 757 }, { 4, 11, 394 },
- { 6, 0, 257 }, { 7, 0, 1522 }, { 4, 0, 582 }, { 9, 0, 191 },
- { 7, 11, 1931 }, { 7, 11, 574 }, { 7, 11, 1719 }, { 9, 11, 145 },
- { 4, 11, 658 }, { 10, 0, 790 }, { 4, 11, 369 }, { 9, 11, 781 },
- { 10, 11, 144 }, { 11, 11, 385 }, { 13, 11, 161 }, { 13, 11, 228 },
- { 13, 11, 268 }, { 20, 11, 107 }, { 8, 0, 469 }, { 10, 0, 47 },
- { 8, 11, 374 }, { 6, 0, 306 }, { 7, 0, 1140 }, { 7, 0, 1340 },
- { 8, 0, 133 }, { 10, 0, 449 }, { 11, 0, 1011 }, { 7, 10, 1875 },
- { 11, 10, 124 }, { 4, 11, 344 }, { 6, 11, 498 }, { 11, 11, 323 },
- { 9, 0, 299 }, { 4, 0, 837 }, { 5, 11, 906 }, { 5, 0, 329 },
- { 8, 0, 260 }, { 10, 0, 10 }, { 6, 0, 1320 }, { 4, 0, 657 },
- { 18, 0, 158 }, { 7, 0, 1191 }, { 24, 0, 7 }, { 6, 0, 1939 },
- { 8, 0, 974 }, { 10, 0, 996 }, { 7, 0, 1665 }, { 11, 11, 126 },
- { 11, 11, 287 }, { 15, 0, 8 }, { 14, 11, 149 }, { 14, 11, 399 },
- { 15, 11, 57 }, { 5, 0, 66 }, { 7, 0, 1896 }, { 8, 0, 288 },
- { 7, 0, 175 }, { 10, 0, 494 }, { 5, 10, 150 }, { 8, 10, 603 },
- { 9, 10, 593 }, { 9, 10, 634 }, { 10, 10, 173 }, { 11, 10, 462 },
- { 11, 10, 515 }, { 13, 10, 216 }, { 13, 10, 288 }, { 14, 10, 400 },
- { 6, 0, 1643 }, { 8, 11, 21 }, { 4, 0, 21 }, { 5, 0, 91 },
- { 5, 0, 648 }, { 5, 0, 750 }, { 5, 0, 781 }, { 6, 0, 54 },
- { 6, 0, 112 }, { 6, 0, 402 }, { 6, 0, 1732 }, { 7, 0, 315 },
- { 7, 0, 749 }, { 7, 0, 1427 }, { 7, 0, 1900 }, { 9, 0, 78 },
- { 9, 0, 508 }, { 10, 0, 611 }, { 10, 0, 811 }, { 11, 0, 510 },
- { 11, 0, 728 }, { 13, 0, 36 }, { 14, 0, 39 }, { 16, 0, 83 },
- { 17, 0, 124 }, { 20, 0, 30 }, { 4, 0, 668 }, { 8, 0, 570 },
- { 10, 0, 322 }, { 10, 0, 719 }, { 11, 0, 407 }, { 7, 11, 1381 },
- { 8, 11, 193 }, { 12, 10, 108 }, { 13, 10, 291 }, { 4, 11, 616 },
- { 8, 11, 692 }, { 8, 0, 125 }, { 8, 0, 369 }, { 8, 0, 524 },
- { 10, 0, 486 }, { 11, 0, 13 }, { 11, 0, 381 }, { 11, 0, 736 },
- { 11, 0, 766 }, { 11, 0, 845 }, { 13, 0, 114 }, { 13, 0, 292 },
- { 14, 0, 47 }, { 6, 0, 1247 }, { 6, 0, 1684 }, { 6, 0, 1731 },
- { 7, 0, 356 }, { 8, 0, 54 }, { 8, 0, 221 }, { 9, 0, 225 },
- { 9, 0, 356 }, { 10, 0, 77 }, { 10, 0, 446 }, { 10, 0, 731 },
- { 12, 0, 404 }, { 13, 0, 491 }, { 7, 10, 1777 }, { 4, 11, 305 },
- { 4, 10, 493 }, { 16, 10, 55 }, { 4, 0, 951 }, { 6, 0, 1809 },
- { 6, 0, 1849 }, { 8, 0, 846 }, { 8, 0, 866 }, { 8, 0, 899 },
- { 10, 0, 896 }, { 12, 0, 694 }, { 14, 0, 468 }, { 5, 11, 214 },
- { 7, 11, 603 }, { 8, 11, 611 }, { 9, 11, 686 }, { 10, 11, 88 },
- { 11, 11, 459 }, { 11, 11, 496 }, { 12, 11, 463 }, { 12, 11, 590 },
- { 13, 11, 0 }, { 14, 11, 214 }, { 4, 0, 411 }, { 4, 0, 80 },
- { 5, 0, 44 }, { 12, 11, 74 }, { 15, 0, 31 }, { 7, 0, 669 },
- { 6, 10, 568 }, { 7, 10, 1804 }, { 8, 10, 362 }, { 8, 10, 410 },
- { 8, 10, 830 }, { 9, 10, 514 }, { 11, 10, 649 }, { 14, 10, 157 },
- { 7, 0, 673 }, { 6, 11, 1703 }, { 4, 10, 625 }, { 6, 0, 1303 },
- { 5, 0, 299 }, { 7, 0, 1083 }, { 10, 0, 704 }, { 6, 0, 275 },
- { 7, 0, 408 }, { 6, 10, 158 }, { 7, 10, 129 }, { 7, 10, 181 },
- { 8, 10, 276 }, { 8, 10, 377 }, { 10, 10, 523 }, { 11, 10, 816 },
- { 12, 10, 455 }, { 13, 10, 303 }, { 14, 10, 135 }, { 4, 0, 219 },
- { 7, 0, 367 }, { 7, 0, 1713 }, { 7, 0, 1761 }, { 9, 0, 86 },
- { 9, 0, 537 }, { 10, 0, 165 }, { 12, 0, 219 }, { 12, 0, 561 },
- { 8, 0, 216 }, { 4, 10, 1 }, { 4, 11, 737 }, { 6, 11, 317 },
- { 7, 10, 1143 }, { 7, 10, 1463 }, { 9, 10, 207 }, { 9, 10, 390 },
- { 9, 10, 467 }, { 10, 11, 98 }, { 11, 11, 294 }, { 11, 10, 836 },
- { 12, 11, 60 }, { 12, 11, 437 }, { 13, 11, 64 }, { 13, 11, 380 },
- { 14, 11, 430 }, { 6, 11, 1758 }, { 8, 11, 520 }, { 9, 11, 345 },
- { 9, 11, 403 }, { 14, 11, 350 }, { 5, 11, 47 }, { 10, 11, 242 },
- { 10, 11, 579 }, { 5, 11, 139 }, { 7, 11, 1168 }, { 10, 11, 539 },
- { 7, 0, 1319 }, { 4, 10, 295 }, { 4, 10, 723 }, { 5, 10, 895 },
- { 7, 10, 1031 }, { 8, 10, 199 }, { 8, 10, 340 }, { 9, 10, 153 },
- { 9, 10, 215 }, { 10, 10, 21 }, { 10, 10, 59 }, { 10, 10, 80 },
- { 10, 10, 224 }, { 10, 10, 838 }, { 11, 10, 229 }, { 11, 10, 652 },
- { 12, 10, 192 }, { 13, 10, 146 }, { 14, 10, 91 }, { 12, 0, 428 },
- { 9, 10, 51 }, { 5, 0, 514 }, { 5, 10, 309 }, { 12, 10, 211 },
- { 6, 0, 1010 }, { 5, 10, 125 }, { 8, 10, 77 }, { 10, 10, 15 },
- { 4, 0, 55 }, { 5, 0, 301 }, { 6, 0, 571 }, { 14, 0, 49 },
- { 18, 0, 102 }, { 8, 11, 370 }, { 4, 11, 107 }, { 7, 11, 613 },
- { 8, 11, 358 }, { 8, 11, 439 }, { 8, 11, 504 }, { 9, 11, 501 },
- { 10, 11, 383 }, { 11, 11, 477 }, { 4, 11, 229 }, { 5, 0, 364 },
- { 5, 10, 439 }, { 4, 11, 903 }, { 7, 11, 1816 }, { 11, 0, 379 },
- { 12, 10, 76 }, { 4, 0, 76 }, { 4, 0, 971 }, { 7, 0, 1550 },
- { 9, 0, 306 }, { 9, 0, 430 }, { 9, 0, 663 }, { 10, 0, 683 },
- { 10, 0, 921 }, { 11, 0, 427 }, { 11, 0, 753 }, { 12, 0, 334 },
- { 12, 0, 442 }, { 14, 0, 258 }, { 14, 0, 366 }, { 15, 0, 131 },
- { 9, 0, 52 }, { 4, 11, 47 }, { 6, 11, 373 }, { 7, 11, 452 },
- { 7, 11, 543 }, { 7, 11, 1714 }, { 7, 11, 1856 }, { 9, 11, 6 },
- { 11, 11, 257 }, { 11, 11, 391 }, { 4, 10, 8 }, { 7, 10, 1152 },
- { 7, 10, 1153 }, { 7, 10, 1715 }, { 9, 10, 374 }, { 10, 10, 478 },
- { 11, 10, 648 }, { 4, 11, 785 }, { 5, 11, 368 }, { 7, 10, 1099 },
- { 7, 11, 860 }, { 5, 11, 980 }, { 6, 11, 1754 }, { 6, 0, 1258 },
- { 6, 0, 1058 }, { 6, 0, 1359 }, { 7, 11, 536 }, { 7, 11, 1331 },
- { 8, 11, 143 }, { 4, 0, 656 }, { 7, 0, 779 }, { 8, 10, 87 },
- { 5, 11, 19 }, { 6, 11, 533 }, { 18, 11, 126 }, { 7, 0, 144 },
- { 10, 10, 438 }, { 5, 11, 395 }, { 5, 11, 951 }, { 6, 11, 1776 },
- { 7, 0, 1373 }, { 7, 0, 554 }, { 7, 0, 605 }, { 13, 0, 10 },
- { 4, 10, 69 }, { 5, 10, 122 }, { 9, 10, 656 }, { 10, 10, 464 },
- { 5, 10, 849 }, { 6, 10, 1633 }, { 5, 0, 838 }, { 5, 0, 841 },
- { 6, 0, 1649 }, { 5, 0, 1012 }, { 11, 10, 499 }, { 7, 10, 476 },
- { 7, 10, 1592 }, { 10, 10, 87 }, { 6, 0, 251 }, { 7, 0, 365 },
- { 7, 0, 1357 }, { 7, 0, 1497 }, { 8, 0, 154 }, { 13, 0, 281 },
- { 4, 11, 441 }, { 4, 11, 695 }, { 7, 11, 497 }, { 9, 11, 387 },
- { 19, 11, 81 }, { 5, 0, 340 }, { 14, 10, 283 }, { 14, 11, 283 },
- { 6, 0, 810 }, { 7, 11, 1894 }, { 11, 0, 495 }, { 5, 11, 284 },
- { 6, 11, 49 }, { 6, 11, 350 }, { 7, 11, 1 }, { 7, 11, 377 },
- { 7, 11, 1693 }, { 8, 11, 18 }, { 8, 11, 678 }, { 9, 11, 161 },
- { 9, 11, 585 }, { 9, 11, 671 }, { 9, 11, 839 }, { 11, 11, 912 },
- { 13, 11, 427 }, { 5, 10, 859 }, { 7, 10, 1160 }, { 8, 10, 107 },
- { 9, 10, 291 }, { 9, 10, 439 }, { 10, 10, 663 }, { 11, 10, 609 },
- { 12, 10, 197 }, { 8, 0, 261 }, { 9, 0, 144 }, { 9, 0, 466 },
- { 10, 0, 370 }, { 12, 0, 470 }, { 13, 0, 144 }, { 14, 0, 348 },
- { 9, 0, 897 }, { 6, 0, 248 }, { 9, 0, 546 }, { 10, 0, 535 },
- { 11, 0, 681 }, { 13, 0, 135 }, { 4, 0, 358 }, { 7, 0, 1496 },
- { 6, 0, 567 }, { 8, 0, 445 }, { 4, 10, 117 }, { 6, 10, 372 },
- { 7, 10, 1905 }, { 14, 10, 323 }, { 4, 10, 722 }, { 11, 10, 471 },
- { 6, 0, 697 }, { 6, 0, 996 }, { 7, 11, 2007 }, { 9, 11, 101 },
- { 9, 11, 450 }, { 10, 11, 66 }, { 10, 11, 842 }, { 11, 11, 536 },
- { 12, 11, 587 }, { 4, 0, 577 }, { 6, 0, 1336 }, { 9, 10, 5 },
- { 12, 10, 216 }, { 12, 10, 294 }, { 12, 10, 298 }, { 12, 10, 400 },
- { 12, 10, 518 }, { 13, 10, 229 }, { 15, 10, 139 }, { 6, 0, 174 },
- { 10, 0, 917 }, { 6, 10, 1774 }, { 5, 10, 12 }, { 7, 10, 375 },
- { 9, 10, 88 }, { 9, 10, 438 }, { 11, 11, 62 }, { 11, 10, 270 },
- { 6, 11, 1766 }, { 6, 11, 0 }, { 7, 11, 84 }, { 7, 10, 816 },
- { 7, 10, 1241 }, { 9, 10, 283 }, { 9, 10, 520 }, { 10, 10, 213 },
- { 10, 10, 307 }, { 10, 10, 463 }, { 10, 10, 671 }, { 10, 10, 746 },
- { 11, 10, 401 }, { 11, 10, 794 }, { 11, 11, 895 }, { 12, 10, 517 },
- { 17, 11, 11 }, { 18, 10, 107 }, { 19, 10, 115 }, { 5, 0, 878 },
- { 5, 0, 972 }, { 6, 11, 1665 }, { 7, 11, 256 }, { 7, 11, 1388 },
- { 10, 11, 499 }, { 4, 10, 258 }, { 8, 10, 639 }, { 4, 11, 22 },
- { 5, 11, 10 }, { 6, 10, 22 }, { 7, 11, 848 }, { 7, 10, 903 },
- { 7, 10, 1963 }, { 8, 11, 97 }, { 10, 10, 577 }, { 5, 10, 681 },
- { 8, 10, 782 }, { 5, 11, 481 }, { 4, 0, 351 }, { 4, 10, 664 },
- { 5, 10, 804 }, { 11, 10, 1013 }, { 6, 11, 134 }, { 7, 11, 437 },
- { 7, 11, 959 }, { 9, 11, 37 }, { 14, 11, 285 }, { 14, 11, 371 },
- { 16, 11, 60 }, { 7, 11, 486 }, { 8, 11, 155 }, { 11, 11, 93 },
- { 12, 11, 164 }, { 4, 0, 286 }, { 7, 0, 438 }, { 7, 0, 627 },
- { 7, 0, 1516 }, { 8, 0, 40 }, { 9, 0, 56 }, { 9, 0, 294 },
- { 10, 0, 30 }, { 11, 0, 969 }, { 11, 0, 995 }, { 18, 0, 148 },
- { 5, 11, 591 }, { 7, 11, 337 }, { 6, 0, 1950 }, { 5, 10, 32 },
- { 10, 11, 500 }, { 5, 11, 380 }, { 5, 11, 650 }, { 8, 11, 310 },
- { 4, 11, 364 }, { 7, 11, 1156 }, { 7, 11, 1187 }, { 9, 11, 409 },
- { 4, 0, 738 }, { 6, 11, 482 }, { 4, 11, 781 }, { 6, 11, 487 },
- { 7, 11, 926 }, { 8, 11, 263 }, { 11, 11, 500 }, { 7, 11, 418 },
- { 6, 0, 2047 }, { 10, 0, 969 }, { 4, 10, 289 }, { 7, 10, 629 },
- { 7, 10, 1698 }, { 7, 10, 1711 }, { 12, 10, 215 }, { 6, 10, 450 },
- { 8, 10, 109 }, { 6, 0, 818 }, { 8, 10, 705 }, { 5, 0, 866 },
- { 4, 11, 94 }, { 7, 11, 1265 }, { 4, 11, 417 }, { 6, 0, 1467 },
- { 7, 10, 1238 }, { 4, 0, 972 }, { 6, 0, 1851 }, { 6, 0, 1857 },
- { 6, 0, 355 }, { 5, 0, 116 }, { 4, 0, 457 }, { 7, 11, 1411 },
- { 4, 11, 408 }, { 4, 11, 741 }, { 7, 11, 500 }, { 6, 10, 26 },
- { 14, 11, 137 }, { 5, 0, 527 }, { 6, 0, 189 }, { 7, 0, 859 },
- { 8, 0, 267 }, { 11, 0, 104 }, { 11, 0, 554 }, { 15, 0, 60 },
- { 15, 0, 125 }, { 6, 0, 1613 }, { 4, 10, 414 }, { 5, 10, 467 },
- { 9, 10, 654 }, { 10, 10, 451 }, { 12, 10, 59 }, { 13, 10, 375 },
- { 7, 10, 17 }, { 6, 0, 116 }, { 7, 11, 541 }, { 7, 10, 955 },
- { 6, 11, 73 }, { 7, 11, 177 }, { 5, 11, 576 }, { 6, 0, 886 },
- { 5, 0, 487 }, { 4, 0, 86 }, { 5, 0, 667 }, { 5, 0, 753 },
- { 6, 0, 316 }, { 6, 0, 455 }, { 7, 0, 946 }, { 14, 11, 231 },
- { 22, 0, 45 }, { 6, 0, 863 }, { 6, 0, 1953 }, { 6, 10, 280 },
- { 10, 10, 502 }, { 11, 10, 344 }, { 12, 10, 38 }, { 4, 0, 79 },
- { 7, 0, 1773 }, { 10, 0, 450 }, { 11, 0, 589 }, { 13, 0, 332 },
- { 13, 0, 493 }, { 14, 0, 183 }, { 14, 0, 334 }, { 14, 0, 362 },
- { 14, 0, 368 }, { 14, 0, 376 }, { 14, 0, 379 }, { 19, 0, 90 },
- { 19, 0, 103 }, { 19, 0, 127 }, { 20, 0, 90 }, { 5, 10, 45 },
- { 7, 10, 1161 }, { 11, 10, 448 }, { 11, 10, 880 }, { 13, 10, 139 },
- { 13, 10, 407 }, { 15, 10, 16 }, { 17, 10, 95 }, { 18, 10, 66 },
- { 18, 10, 88 }, { 18, 10, 123 }, { 21, 10, 7 }, { 8, 10, 777 },
- { 4, 10, 410 }, { 7, 10, 521 }, { 7, 10, 1778 }, { 7, 11, 538 },
- { 14, 0, 381 }, { 5, 11, 413 }, { 6, 0, 1142 }, { 6, 0, 1189 },
- { 8, 11, 495 }, { 5, 0, 663 }, { 6, 0, 1962 }, { 6, 0, 2003 },
- { 7, 11, 54 }, { 8, 11, 312 }, { 10, 11, 191 }, { 10, 11, 614 },
- { 12, 11, 567 }, { 4, 10, 436 }, { 5, 0, 846 }, { 10, 0, 528 },
- { 11, 0, 504 }, { 7, 10, 1587 }, { 7, 10, 1707 }, { 5, 0, 378 },
- { 8, 0, 465 }, { 9, 0, 286 }, { 10, 0, 185 }, { 10, 0, 562 },
- { 10, 0, 635 }, { 11, 0, 31 }, { 11, 0, 393 }, { 13, 0, 312 },
- { 18, 0, 65 }, { 18, 0, 96 }, { 19, 0, 89 }, { 7, 0, 899 },
- { 14, 0, 325 }, { 6, 11, 468 }, { 7, 11, 567 }, { 7, 11, 1478 },
- { 8, 11, 530 }, { 14, 11, 290 }, { 7, 0, 1880 }, { 9, 0, 680 },
- { 11, 0, 798 }, { 6, 0, 1770 }, { 4, 0, 648 }, { 22, 11, 35 },
- { 5, 0, 945 }, { 6, 0, 1656 }, { 6, 0, 1787 }, { 7, 0, 167 },
- { 8, 0, 824 }, { 9, 0, 391 }, { 10, 0, 375 }, { 11, 0, 185 },
- { 6, 11, 484 }, { 7, 11, 822 }, { 6, 0, 2046 }, { 7, 0, 1645 },
- { 8, 0, 352 }, { 9, 0, 249 }, { 4, 0, 152 }, { 6, 0, 611 },
- { 7, 0, 1733 }, { 6, 11, 1724 }, { 7, 11, 2022 }, { 5, 0, 1006 },
- { 13, 11, 96 }, { 5, 0, 420 }, { 7, 0, 1449 }, { 18, 11, 149 },
- { 7, 0, 832 }, { 7, 10, 663 }, { 5, 0, 351 }, { 5, 0, 40 },
- { 7, 0, 598 }, { 7, 0, 1638 }, { 8, 0, 78 }, { 9, 0, 166 },
- { 9, 0, 640 }, { 9, 0, 685 }, { 9, 0, 773 }, { 11, 0, 215 },
- { 13, 0, 65 }, { 14, 0, 172 }, { 14, 0, 317 }, { 17, 0, 6 },
- { 8, 0, 60 }, { 9, 0, 343 }, { 11, 0, 769 }, { 6, 0, 1354 },
- { 4, 0, 724 }, { 9, 0, 745 }, { 4, 11, 474 }, { 7, 0, 1951 },
- { 8, 0, 765 }, { 8, 0, 772 }, { 12, 0, 671 }, { 7, 0, 108 },
- { 8, 0, 219 }, { 8, 0, 388 }, { 9, 0, 775 }, { 11, 0, 275 },
- { 12, 0, 464 }, { 9, 0, 639 }, { 7, 10, 503 }, { 5, 11, 366 },
- { 5, 0, 15 }, { 6, 0, 56 }, { 7, 0, 1758 }, { 8, 0, 500 },
- { 9, 0, 730 }, { 11, 0, 331 }, { 13, 0, 150 }, { 14, 0, 282 },
- { 5, 11, 305 }, { 9, 11, 560 }, { 13, 11, 208 }, { 4, 10, 113 },
- { 5, 10, 163 }, { 5, 10, 735 }, { 7, 10, 1009 }, { 9, 10, 9 },
- { 9, 10, 771 }, { 12, 10, 90 }, { 13, 10, 138 }, { 13, 10, 410 },
- { 15, 10, 128 }, { 4, 10, 324 }, { 10, 10, 104 }, { 7, 11, 466 },
- { 14, 11, 27 }, { 6, 0, 1886 }, { 5, 0, 205 }, { 6, 0, 438 },
- { 9, 0, 711 }, { 4, 11, 480 }, { 6, 11, 167 }, { 6, 11, 302 },
- { 6, 11, 1642 }, { 7, 11, 130 }, { 7, 11, 656 }, { 7, 11, 837 },
- { 7, 11, 1547 }, { 7, 11, 1657 }, { 8, 11, 429 }, { 9, 11, 228 },
- { 10, 11, 643 }, { 13, 11, 289 }, { 13, 11, 343 }, { 19, 11, 101 },
- { 6, 0, 865 }, { 6, 0, 2025 }, { 8, 0, 965 }, { 7, 11, 278 },
- { 10, 11, 739 }, { 11, 11, 708 }, { 13, 11, 348 }, { 5, 0, 534 },
- { 7, 11, 1922 }, { 9, 0, 691 }, { 4, 10, 935 }, { 5, 10, 823 },
- { 6, 0, 443 }, { 9, 0, 237 }, { 9, 0, 571 }, { 9, 0, 695 },
- { 10, 0, 139 }, { 11, 0, 715 }, { 12, 0, 417 }, { 13, 0, 421 },
- { 5, 10, 269 }, { 7, 10, 434 }, { 7, 10, 891 }, { 8, 10, 339 },
- { 9, 10, 702 }, { 11, 10, 594 }, { 11, 10, 718 }, { 17, 10, 100 },
- { 6, 0, 1555 }, { 7, 0, 878 }, { 9, 10, 485 }, { 13, 10, 264 },
- { 6, 10, 1713 }, { 7, 10, 1810 }, { 11, 10, 866 }, { 12, 10, 103 },
- { 13, 10, 495 }, { 7, 10, 900 }, { 6, 0, 1410 }, { 9, 11, 316 },
- { 11, 11, 256 }, { 4, 0, 995 }, { 7, 0, 1033 }, { 4, 0, 578 },
- { 10, 0, 881 }, { 12, 0, 740 }, { 12, 0, 743 }, { 12, 0, 759 },
- { 4, 0, 822 }, { 5, 0, 923 }, { 14, 10, 143 }, { 7, 11, 1696 },
- { 6, 11, 363 }, { 7, 11, 1955 }, { 8, 11, 725 }, { 4, 0, 924 },
- { 5, 0, 665 }, { 7, 10, 2029 }, { 7, 0, 1901 }, { 4, 0, 265 },
- { 6, 0, 1092 }, { 6, 0, 1417 }, { 7, 0, 807 }, { 7, 0, 950 },
- { 5, 0, 93 }, { 12, 0, 267 }, { 13, 0, 498 }, { 7, 0, 1451 },
- { 5, 11, 813 }, { 7, 11, 2046 }, { 5, 10, 625 }, { 7, 10, 1617 },
- { 7, 0, 747 }, { 6, 0, 788 }, { 9, 0, 828 }, { 7, 0, 184 },
- { 11, 0, 307 }, { 11, 0, 400 }, { 15, 0, 130 }, { 5, 11, 712 },
- { 7, 11, 1855 }, { 8, 10, 425 }, { 8, 10, 693 }, { 9, 10, 720 },
- { 10, 10, 380 }, { 10, 10, 638 }, { 11, 11, 17 }, { 11, 10, 473 },
- { 12, 10, 61 }, { 13, 11, 321 }, { 16, 11, 67 }, { 7, 0, 198 },
- { 6, 11, 320 }, { 7, 11, 781 }, { 7, 11, 1921 }, { 9, 11, 55 },
- { 10, 11, 186 }, { 10, 11, 273 }, { 10, 11, 664 }, { 10, 11, 801 },
- { 11, 11, 996 }, { 11, 11, 997 }, { 13, 11, 157 }, { 14, 11, 170 },
- { 8, 11, 271 }, { 7, 0, 994 }, { 7, 11, 103 }, { 7, 11, 863 },
- { 11, 11, 184 }, { 14, 11, 299 }, { 17, 11, 62 }, { 11, 10, 551 },
- { 14, 10, 159 }, { 5, 0, 233 }, { 5, 0, 320 }, { 6, 0, 140 },
- { 8, 0, 295 }, { 8, 0, 615 }, { 8, 11, 615 }, { 5, 0, 978 },
- { 4, 0, 905 }, { 6, 0, 1701 }, { 9, 0, 843 }, { 4, 10, 168 },
- { 4, 0, 974 }, { 8, 0, 850 }, { 12, 0, 709 }, { 12, 0, 768 },
- { 12, 0, 786 }, { 7, 10, 91 }, { 24, 0, 6 }, { 10, 10, 532 },
- { 7, 10, 1884 }, { 4, 0, 509 }, { 6, 0, 1307 }, { 7, 0, 273 },
- { 5, 11, 77 }, { 7, 11, 1455 }, { 10, 11, 843 }, { 19, 11, 73 },
- { 22, 11, 5 }, { 4, 11, 458 }, { 7, 11, 1420 }, { 6, 11, 109 },
- { 10, 11, 382 }, { 6, 0, 201 }, { 6, 11, 330 }, { 7, 10, 70 },
- { 7, 11, 1084 }, { 10, 10, 240 }, { 11, 11, 142 }, { 19, 10, 93 },
- { 7, 0, 1041 }, { 12, 11, 328 }, { 5, 11, 354 }, { 6, 0, 1040 },
- { 5, 0, 693 }, { 6, 0, 774 }, { 11, 0, 234 }, { 4, 0, 336 },
- { 7, 0, 1399 }, { 11, 10, 392 }, { 20, 0, 22 }, { 20, 11, 22 },
- { 5, 0, 802 }, { 7, 0, 2021 }, { 8, 0, 805 }, { 5, 0, 167 },
- { 5, 0, 899 }, { 6, 0, 410 }, { 9, 0, 777 }, { 9, 0, 789 },
- { 6, 0, 1705 }, { 7, 10, 655 }, { 7, 10, 1844 }, { 4, 10, 145 },
- { 6, 10, 176 }, { 7, 10, 395 }, { 9, 10, 562 }, { 4, 10, 501 },
- { 7, 0, 10 }, { 5, 0, 11 }, { 6, 0, 117 }, { 6, 0, 485 },
- { 7, 0, 1133 }, { 9, 0, 582 }, { 9, 0, 594 }, { 10, 0, 82 },
- { 11, 0, 21 }, { 11, 0, 818 }, { 12, 0, 535 }, { 13, 0, 86 },
- { 20, 0, 91 }, { 23, 0, 13 }, { 6, 10, 509 }, { 4, 0, 264 },
- { 7, 0, 1067 }, { 8, 0, 204 }, { 8, 0, 385 }, { 11, 0, 953 },
- { 11, 11, 737 }, { 10, 0, 56 }, { 6, 0, 1917 }, { 5, 0, 470 },
- { 10, 11, 657 }, { 14, 11, 297 }, { 14, 11, 361 }, { 7, 11, 412 },
- { 7, 0, 1198 }, { 7, 11, 1198 }, { 8, 11, 556 }, { 14, 11, 123 },
- { 14, 11, 192 }, { 15, 11, 27 }, { 7, 11, 1985 }, { 14, 11, 146 },
- { 15, 11, 42 }, { 16, 11, 23 }, { 17, 11, 86 }, { 18, 11, 17 },
- { 11, 0, 1015 }, { 8, 11, 122 }, { 4, 10, 114 }, { 9, 10, 492 },
- { 13, 10, 462 }, { 14, 10, 215 }, { 4, 10, 77 }, { 5, 10, 361 },
- { 6, 10, 139 }, { 6, 10, 401 }, { 6, 10, 404 }, { 7, 10, 413 },
- { 7, 10, 715 }, { 7, 10, 1716 }, { 11, 10, 279 }, { 12, 10, 179 },
- { 12, 10, 258 }, { 13, 10, 244 }, { 14, 10, 358 }, { 6, 10, 1717 },
- { 7, 10, 1061 }, { 8, 10, 82 }, { 11, 10, 250 }, { 12, 10, 420 },
- { 13, 10, 184 }, { 5, 0, 715 }, { 7, 10, 724 }, { 9, 0, 919 },
- { 9, 0, 922 }, { 9, 0, 927 }, { 9, 0, 933 }, { 9, 0, 962 },
- { 9, 0, 1000 }, { 9, 0, 1002 }, { 9, 0, 1021 }, { 12, 0, 890 },
- { 12, 0, 907 }, { 12, 0, 930 }, { 15, 0, 207 }, { 15, 0, 228 },
- { 15, 0, 238 }, { 21, 0, 61 }, { 8, 0, 794 }, { 9, 0, 400 },
- { 10, 0, 298 }, { 14, 0, 228 }, { 5, 11, 430 }, { 5, 11, 932 },
- { 6, 11, 131 }, { 7, 11, 417 }, { 9, 11, 522 }, { 11, 11, 314 },
- { 13, 11, 390 }, { 4, 0, 867 }, { 8, 0, 724 }, { 4, 11, 507 },
- { 9, 11, 261 }, { 4, 11, 343 }, { 5, 11, 511 }, { 6, 0, 190 },
- { 7, 0, 768 }, { 7, 0, 1170 }, { 6, 10, 513 }, { 7, 10, 1052 },
- { 7, 11, 455 }, { 10, 11, 591 }, { 6, 0, 1066 }, { 9, 10, 899 },
- { 14, 0, 67 }, { 19, 0, 60 }, { 4, 0, 948 }, { 18, 0, 174 },
- { 18, 0, 176 }, { 7, 0, 1023 }, { 7, 10, 1417 }, { 12, 10, 382 },
- { 17, 10, 48 }, { 24, 10, 12 }, { 6, 11, 575 }, { 4, 0, 764 },
- { 6, 10, 545 }, { 7, 10, 565 }, { 7, 10, 1669 }, { 10, 10, 114 },
- { 11, 10, 642 }, { 12, 10, 618 }, { 6, 0, 137 }, { 9, 0, 75 },
- { 9, 0, 253 }, { 10, 0, 194 }, { 10, 0, 444 }, { 4, 0, 756 },
- { 5, 10, 5 }, { 8, 0, 1008 }, { 7, 10, 192 }, { 4, 0, 842 },
- { 11, 0, 643 }, { 12, 0, 115 }, { 8, 10, 763 }, { 11, 0, 67 },
- { 5, 10, 759 }, { 4, 0, 821 }, { 5, 0, 760 }, { 7, 0, 542 },
- { 8, 0, 135 }, { 8, 0, 496 }, { 7, 11, 580 }, { 7, 10, 370 },
- { 7, 10, 1007 }, { 7, 10, 1177 }, { 7, 10, 1565 }, { 7, 10, 1237 },
- { 12, 0, 736 }, { 7, 0, 319 }, { 7, 0, 355 }, { 7, 0, 763 },
- { 10, 0, 389 }, { 17, 0, 43 }, { 8, 11, 333 }, { 10, 11, 182 },
- { 4, 10, 87 }, { 5, 10, 250 }, { 13, 10, 298 }, { 10, 0, 786 },
- { 6, 0, 2044 }, { 8, 11, 330 }, { 12, 11, 477 }, { 7, 11, 1338 },
- { 4, 11, 125 }, { 6, 0, 1030 }, { 6, 0, 1083 }, { 4, 11, 721 },
- { 7, 10, 814 }, { 7, 11, 776 }, { 8, 11, 145 }, { 19, 11, 56 },
- { 6, 0, 1226 }, { 4, 10, 57 }, { 7, 10, 1195 }, { 7, 10, 1438 },
- { 7, 10, 1548 }, { 7, 10, 1835 }, { 7, 10, 1904 }, { 9, 10, 757 },
- { 10, 10, 604 }, { 11, 10, 519 }, { 7, 11, 792 }, { 8, 11, 147 },
- { 10, 11, 821 }, { 11, 11, 1021 }, { 9, 11, 797 }, { 4, 0, 58 },
- { 5, 0, 286 }, { 6, 0, 319 }, { 7, 0, 402 }, { 7, 0, 1254 },
- { 7, 0, 1903 }, { 8, 0, 356 }, { 12, 0, 408 }, { 4, 0, 389 },
- { 4, 0, 815 }, { 9, 0, 181 }, { 9, 0, 255 }, { 10, 0, 8 },
- { 10, 0, 29 }, { 10, 0, 816 }, { 11, 0, 311 }, { 11, 0, 561 },
- { 12, 0, 67 }, { 13, 0, 181 }, { 7, 11, 1472 }, { 7, 11, 1554 },
- { 7, 11, 1071 }, { 7, 11, 1541 }, { 7, 11, 1767 }, { 7, 11, 1806 },
- { 7, 11, 1999 }, { 9, 11, 248 }, { 10, 11, 400 }, { 11, 11, 162 },
- { 11, 11, 178 }, { 11, 11, 242 }, { 12, 11, 605 }, { 15, 11, 26 },
- { 16, 11, 44 }, { 5, 11, 168 }, { 5, 11, 930 }, { 8, 11, 74 },
- { 9, 11, 623 }, { 12, 11, 500 }, { 12, 11, 579 }, { 13, 11, 41 },
- { 15, 11, 93 }, { 6, 11, 220 }, { 7, 11, 1101 }, { 13, 11, 105 },
- { 5, 0, 474 }, { 7, 0, 507 }, { 4, 10, 209 }, { 7, 11, 507 },
- { 7, 10, 902 }, { 4, 0, 427 }, { 6, 0, 413 }, { 7, 10, 335 },
- { 7, 10, 1437 }, { 7, 10, 1668 }, { 8, 10, 553 }, { 8, 10, 652 },
- { 8, 10, 656 }, { 9, 10, 558 }, { 11, 10, 743 }, { 21, 10, 18 },
- { 4, 0, 730 }, { 6, 11, 19 }, { 7, 11, 1413 }, { 11, 11, 428 },
- { 5, 0, 373 }, { 4, 10, 559 }, { 7, 11, 96 }, { 8, 11, 401 },
- { 9, 11, 896 }, { 7, 0, 799 }, { 7, 0, 1972 }, { 5, 10, 1017 },
- { 10, 10, 511 }, { 7, 0, 1793 }, { 7, 11, 1961 }, { 7, 11, 1965 },
- { 8, 11, 702 }, { 8, 11, 750 }, { 8, 11, 150 }, { 8, 11, 737 },
- { 12, 11, 366 }, { 4, 0, 322 }, { 5, 10, 709 }, { 8, 11, 800 },
- { 9, 11, 148 }, { 9, 11, 872 }, { 9, 11, 890 }, { 11, 11, 309 },
- { 11, 11, 1001 }, { 13, 11, 267 }, { 13, 11, 323 }, { 6, 10, 1745 },
- { 7, 0, 290 }, { 8, 10, 206 }, { 7, 0, 1651 }, { 17, 0, 89 },
- { 11, 0, 2 }, { 4, 0, 672 }, { 6, 0, 1860 }, { 8, 0, 905 },
- { 10, 0, 844 }, { 10, 0, 846 }, { 10, 0, 858 }, { 12, 0, 699 },
- { 12, 0, 746 }, { 12, 0, 772 }, { 7, 11, 424 }, { 5, 11, 547 },
- { 5, 0, 737 }, { 5, 11, 490 }, { 6, 11, 615 }, { 6, 11, 620 },
- { 7, 11, 683 }, { 6, 0, 746 }, { 6, 0, 1612 }, { 4, 10, 776 },
- { 9, 11, 385 }, { 21, 11, 17 }, { 5, 0, 145 }, { 7, 10, 1272 },
- { 7, 0, 884 }, { 12, 0, 124 }, { 4, 0, 387 }, { 7, 0, 1288 },
- { 5, 11, 133 }, { 8, 10, 406 }, { 8, 11, 187 }, { 6, 0, 679 },
- { 8, 11, 8 }, { 10, 11, 0 }, { 7, 0, 550 }, { 7, 11, 798 },
- { 8, 11, 685 }, { 7, 11, 1086 }, { 17, 11, 46 }, { 8, 10, 175 },
- { 10, 10, 168 }, { 10, 10, 573 }, { 7, 0, 1305 }, { 4, 0, 576 },
- { 7, 0, 1263 }, { 6, 0, 686 }, { 6, 0, 1563 }, { 6, 0, 607 },
- { 5, 0, 919 }, { 6, 0, 1673 }, { 20, 0, 37 }, { 8, 11, 774 },
- { 10, 11, 670 }, { 12, 11, 51 }, { 5, 10, 784 }, { 11, 10, 882 },
- { 4, 0, 82 }, { 5, 0, 333 }, { 5, 0, 904 }, { 6, 0, 207 },
- { 7, 0, 325 }, { 7, 0, 1726 }, { 8, 0, 101 }, { 10, 0, 778 },
- { 11, 0, 220 }, { 7, 11, 371 }, { 4, 0, 958 }, { 5, 0, 903 },
- { 4, 11, 127 }, { 5, 11, 350 }, { 6, 11, 356 }, { 8, 11, 426 },
- { 9, 11, 572 }, { 10, 11, 247 }, { 11, 11, 312 }, { 12, 0, 147 },
- { 6, 11, 59 }, { 7, 11, 885 }, { 9, 11, 603 }, { 13, 11, 397 },
- { 10, 0, 367 }, { 9, 10, 14 }, { 9, 10, 441 }, { 11, 10, 9 },
- { 11, 10, 966 }, { 12, 10, 287 }, { 13, 10, 342 }, { 13, 10, 402 },
- { 15, 10, 110 }, { 15, 10, 163 }, { 6, 0, 690 }, { 4, 0, 705 },
- { 9, 0, 651 }, { 11, 0, 971 }, { 13, 0, 273 }, { 7, 10, 1428 },
- { 7, 10, 1640 }, { 7, 10, 1867 }, { 9, 10, 169 }, { 9, 10, 182 },
- { 9, 10, 367 }, { 9, 10, 478 }, { 9, 10, 506 }, { 9, 10, 551 },
- { 9, 10, 557 }, { 9, 10, 648 }, { 9, 10, 697 }, { 9, 10, 705 },
- { 9, 10, 725 }, { 9, 10, 787 }, { 9, 10, 794 }, { 10, 10, 198 },
- { 10, 10, 214 }, { 10, 10, 267 }, { 10, 10, 275 }, { 10, 10, 456 },
- { 10, 10, 551 }, { 10, 10, 561 }, { 10, 10, 613 }, { 10, 10, 627 },
- { 10, 10, 668 }, { 10, 10, 675 }, { 10, 10, 691 }, { 10, 10, 695 },
- { 10, 10, 707 }, { 10, 10, 715 }, { 11, 10, 183 }, { 11, 10, 201 },
- { 11, 10, 262 }, { 11, 10, 352 }, { 11, 10, 439 }, { 11, 10, 493 },
- { 11, 10, 572 }, { 11, 10, 591 }, { 11, 10, 608 }, { 11, 10, 611 },
- { 11, 10, 646 }, { 11, 10, 674 }, { 11, 10, 711 }, { 11, 10, 751 },
- { 11, 10, 761 }, { 11, 10, 776 }, { 11, 10, 785 }, { 11, 10, 850 },
- { 11, 10, 853 }, { 11, 10, 862 }, { 11, 10, 865 }, { 11, 10, 868 },
- { 11, 10, 875 }, { 11, 10, 898 }, { 11, 10, 902 }, { 11, 10, 903 },
- { 11, 10, 910 }, { 11, 10, 932 }, { 11, 10, 942 }, { 11, 10, 957 },
- { 11, 10, 967 }, { 11, 10, 972 }, { 12, 10, 148 }, { 12, 10, 195 },
- { 12, 10, 220 }, { 12, 10, 237 }, { 12, 10, 318 }, { 12, 10, 339 },
- { 12, 10, 393 }, { 12, 10, 445 }, { 12, 10, 450 }, { 12, 10, 474 },
- { 12, 10, 505 }, { 12, 10, 509 }, { 12, 10, 533 }, { 12, 10, 591 },
- { 12, 10, 594 }, { 12, 10, 597 }, { 12, 10, 621 }, { 12, 10, 633 },
- { 12, 10, 642 }, { 13, 10, 59 }, { 13, 10, 60 }, { 13, 10, 145 },
- { 13, 10, 239 }, { 13, 10, 250 }, { 13, 10, 329 }, { 13, 10, 344 },
- { 13, 10, 365 }, { 13, 10, 372 }, { 13, 10, 387 }, { 13, 10, 403 },
- { 13, 10, 414 }, { 13, 10, 456 }, { 13, 10, 470 }, { 13, 10, 478 },
- { 13, 10, 483 }, { 13, 10, 489 }, { 14, 10, 55 }, { 14, 10, 57 },
- { 14, 10, 81 }, { 14, 10, 90 }, { 14, 10, 148 }, { 14, 10, 239 },
- { 14, 10, 266 }, { 14, 10, 321 }, { 14, 10, 326 }, { 14, 10, 327 },
- { 14, 10, 330 }, { 14, 10, 347 }, { 14, 10, 355 }, { 14, 10, 401 },
- { 14, 10, 404 }, { 14, 10, 411 }, { 14, 10, 414 }, { 14, 10, 416 },
- { 14, 10, 420 }, { 15, 10, 61 }, { 15, 10, 74 }, { 15, 10, 87 },
- { 15, 10, 88 }, { 15, 10, 94 }, { 15, 10, 96 }, { 15, 10, 116 },
- { 15, 10, 149 }, { 15, 10, 154 }, { 16, 10, 50 }, { 16, 10, 63 },
- { 16, 10, 73 }, { 17, 10, 2 }, { 17, 10, 66 }, { 17, 10, 92 },
- { 17, 10, 103 }, { 17, 10, 112 }, { 17, 10, 120 }, { 18, 10, 50 },
- { 18, 10, 54 }, { 18, 10, 82 }, { 18, 10, 86 }, { 18, 10, 90 },
- { 18, 10, 111 }, { 18, 10, 115 }, { 18, 10, 156 }, { 19, 10, 40 },
- { 19, 10, 79 }, { 20, 10, 78 }, { 21, 10, 22 }, { 7, 0, 887 },
- { 5, 10, 161 }, { 7, 10, 839 }, { 14, 11, 98 }, { 6, 0, 90 },
- { 10, 11, 356 }, { 7, 11, 441 }, { 6, 11, 111 }, { 7, 11, 4 },
- { 8, 11, 163 }, { 8, 11, 776 }, { 10, 11, 566 }, { 6, 0, 908 },
- { 6, 0, 1261 }, { 7, 0, 813 }, { 12, 0, 497 }, { 13, 0, 56 },
- { 6, 0, 1235 }, { 7, 0, 429 }, { 7, 11, 1994 }, { 10, 0, 904 },
- { 6, 0, 125 }, { 7, 0, 1277 }, { 9, 0, 772 }, { 23, 0, 12 },
- { 4, 0, 841 }, { 5, 0, 386 }, { 5, 11, 386 }, { 5, 11, 297 },
- { 7, 11, 1038 }, { 6, 0, 860 }, { 6, 0, 1069 }, { 7, 11, 309 },
- { 8, 0, 946 }, { 7, 10, 1814 }, { 13, 11, 418 }, { 8, 11, 363 },
- { 10, 0, 768 }, { 11, 0, 787 }, { 22, 11, 30 }, { 22, 11, 33 },
- { 6, 0, 160 }, { 7, 0, 1106 }, { 9, 0, 770 }, { 11, 0, 112 },
- { 12, 0, 413 }, { 11, 11, 216 }, { 11, 11, 340 }, { 8, 10, 139 },
- { 7, 11, 1390 }, { 7, 11, 808 }, { 4, 11, 280 }, { 12, 0, 271 },
- { 17, 0, 109 }, { 7, 10, 643 }, { 8, 10, 236 }, { 12, 11, 54 },
- { 4, 11, 421 }, { 5, 11, 548 }, { 11, 0, 719 }, { 12, 0, 36 },
- { 13, 0, 337 }, { 7, 0, 581 }, { 9, 0, 644 }, { 9, 0, 699 },
- { 11, 11, 511 }, { 13, 11, 394 }, { 14, 11, 298 }, { 14, 11, 318 },
- { 18, 11, 103 }, { 7, 0, 304 }, { 9, 0, 646 }, { 9, 0, 862 },
- { 11, 0, 696 }, { 12, 0, 208 }, { 15, 0, 79 }, { 19, 0, 108 },
- { 4, 0, 631 }, { 7, 0, 1126 }, { 7, 0, 1536 }, { 7, 11, 1527 },
- { 8, 0, 880 }, { 10, 0, 869 }, { 10, 0, 913 }, { 7, 0, 1513 },
- { 5, 10, 54 }, { 6, 11, 254 }, { 9, 11, 109 }, { 10, 11, 103 },
- { 7, 0, 981 }, { 5, 11, 729 }, { 4, 10, 744 }, { 4, 0, 434 },
- { 6, 0, 550 }, { 7, 0, 930 }, { 10, 0, 476 }, { 13, 0, 452 },
- { 19, 0, 104 }, { 6, 11, 1630 }, { 10, 10, 402 }, { 18, 10, 55 },
- { 5, 0, 553 }, { 10, 0, 824 }, { 8, 0, 452 }, { 8, 0, 151 },
- { 9, 10, 624 }, { 4, 10, 572 }, { 4, 0, 772 }, { 5, 11, 671 },
- { 5, 0, 292 }, { 10, 0, 135 }, { 4, 11, 889 }, { 12, 11, 207 },
- { 9, 0, 504 }, { 6, 10, 43 }, { 7, 10, 38 }, { 8, 10, 248 },
- { 10, 10, 513 }, { 6, 0, 1089 }, { 7, 11, 1910 }, { 4, 11, 627 },
- { 5, 11, 775 }, { 7, 0, 783 }, { 5, 10, 766 }, { 5, 10, 363 },
- { 7, 0, 387 }, { 7, 11, 387 }, { 7, 0, 393 }, { 10, 0, 603 },
- { 11, 0, 206 }, { 7, 11, 202 }, { 11, 11, 362 }, { 11, 11, 948 },
- { 12, 11, 388 }, { 6, 11, 507 }, { 7, 11, 451 }, { 8, 11, 389 },
- { 12, 11, 490 }, { 13, 11, 16 }, { 13, 11, 215 }, { 13, 11, 351 },
- { 18, 11, 132 }, { 19, 11, 125 }, { 4, 0, 912 }, { 9, 0, 232 },
- { 7, 11, 841 }, { 6, 10, 258 }, { 12, 10, 409 }, { 5, 10, 249 },
- { 20, 10, 82 }, { 8, 11, 566 }, { 6, 0, 977 }, { 7, 11, 1214 },
- { 7, 0, 1973 }, { 8, 0, 716 }, { 7, 0, 98 }, { 5, 0, 733 },
- { 5, 11, 912 }, { 6, 11, 1695 }, { 5, 10, 393 }, { 6, 10, 378 },
- { 7, 10, 1981 }, { 9, 10, 32 }, { 9, 10, 591 }, { 10, 10, 685 },
- { 10, 10, 741 }, { 14, 10, 382 }, { 5, 10, 788 }, { 10, 0, 19 },
- { 11, 0, 911 }, { 7, 10, 1968 }, { 13, 10, 509 }, { 5, 0, 668 },
- { 5, 11, 236 }, { 6, 11, 572 }, { 8, 11, 492 }, { 11, 11, 618 },
- { 16, 11, 56 }, { 7, 11, 1789 }, { 4, 0, 360 }, { 5, 0, 635 },
- { 5, 0, 700 }, { 5, 10, 58 }, { 5, 10, 171 }, { 5, 10, 683 },
- { 6, 10, 291 }, { 6, 10, 566 }, { 7, 10, 1650 }, { 11, 10, 523 },
- { 12, 10, 273 }, { 12, 10, 303 }, { 15, 10, 39 }, { 15, 10, 111 },
- { 5, 0, 901 }, { 6, 10, 589 }, { 5, 11, 190 }, { 8, 11, 318 },
- { 12, 0, 656 }, { 7, 0, 726 }, { 24, 0, 9 }, { 4, 10, 917 },
- { 5, 10, 1005 }, { 7, 10, 1598 }, { 6, 11, 491 }, { 4, 10, 919 },
- { 5, 11, 434 }, { 9, 0, 72 }, { 6, 0, 1269 }, { 6, 0, 1566 },
- { 6, 0, 1621 }, { 9, 0, 463 }, { 10, 0, 595 }, { 4, 10, 255 },
- { 5, 10, 302 }, { 6, 10, 132 }, { 7, 10, 128 }, { 7, 10, 283 },
- { 7, 10, 1299 }, { 10, 10, 52 }, { 10, 10, 514 }, { 11, 10, 925 },
- { 13, 10, 92 }, { 14, 10, 309 }, { 7, 0, 1454 }, { 6, 0, 1287 },
- { 11, 0, 600 }, { 13, 0, 245 }, { 9, 10, 173 }, { 8, 0, 989 },
- { 7, 0, 164 }, { 7, 0, 1571 }, { 9, 0, 107 }, { 12, 0, 225 },
- { 6, 0, 1061 }, { 13, 10, 442 }, { 4, 0, 27 }, { 5, 0, 484 },
- { 5, 0, 510 }, { 6, 0, 434 }, { 7, 0, 1000 }, { 7, 0, 1098 },
- { 8, 0, 2 }, { 7, 11, 85 }, { 7, 11, 247 }, { 8, 11, 585 },
- { 10, 11, 163 }, { 10, 11, 316 }, { 11, 11, 103 }, { 14, 11, 0 },
- { 6, 0, 1127 }, { 4, 0, 460 }, { 6, 0, 852 }, { 6, 10, 210 },
- { 4, 0, 932 }, { 5, 0, 891 }, { 6, 0, 588 }, { 19, 11, 83 },
- { 8, 0, 625 }, { 4, 10, 284 }, { 6, 10, 223 }, { 6, 0, 76 },
- { 8, 0, 92 }, { 9, 0, 221 }, { 4, 11, 124 }, { 10, 11, 457 },
- { 11, 11, 121 }, { 11, 11, 169 }, { 11, 11, 422 }, { 11, 11, 870 },
- { 12, 11, 214 }, { 13, 11, 389 }, { 14, 11, 187 }, { 15, 11, 77 },
- { 9, 11, 618 }, { 10, 11, 482 }, { 4, 10, 218 }, { 7, 10, 526 },
- { 15, 10, 137 }, { 13, 0, 9 }, { 14, 0, 104 }, { 14, 0, 311 },
- { 4, 10, 270 }, { 5, 10, 192 }, { 6, 10, 332 }, { 7, 10, 1322 },
- { 12, 10, 661 }, { 7, 11, 1193 }, { 6, 11, 107 }, { 7, 11, 638 },
- { 7, 11, 1632 }, { 9, 11, 396 }, { 4, 0, 763 }, { 4, 0, 622 },
- { 5, 11, 370 }, { 6, 11, 1756 }, { 5, 0, 253 }, { 7, 0, 546 },
- { 9, 0, 73 }, { 10, 0, 110 }, { 14, 0, 185 }, { 17, 0, 119 },
- { 5, 11, 204 }, { 7, 0, 624 }, { 7, 0, 916 }, { 10, 0, 256 },
- { 11, 0, 87 }, { 7, 10, 379 }, { 8, 10, 481 }, { 9, 10, 377 },
- { 5, 0, 212 }, { 12, 0, 35 }, { 13, 0, 382 }, { 5, 11, 970 },
- { 6, 11, 1706 }, { 9, 0, 746 }, { 5, 10, 1003 }, { 6, 10, 149 },
- { 10, 0, 150 }, { 11, 0, 849 }, { 13, 0, 330 }, { 8, 10, 262 },
- { 9, 10, 627 }, { 11, 10, 214 }, { 11, 10, 404 }, { 11, 10, 457 },
- { 11, 10, 780 }, { 11, 10, 913 }, { 13, 10, 401 }, { 14, 10, 200 },
- { 6, 0, 1466 }, { 7, 11, 3 }, { 6, 0, 1299 }, { 4, 11, 35 },
- { 5, 11, 121 }, { 5, 11, 483 }, { 5, 11, 685 }, { 6, 11, 489 },
- { 7, 11, 1204 }, { 8, 11, 394 }, { 7, 10, 742 }, { 4, 10, 142 },
- { 8, 10, 304 }, { 4, 11, 921 }, { 5, 11, 1007 }, { 6, 0, 1518 },
- { 6, 0, 1229 }, { 7, 0, 1175 }, { 5, 0, 816 }, { 12, 0, 159 },
- { 4, 10, 471 }, { 4, 11, 712 }, { 5, 10, 51 }, { 6, 10, 602 },
- { 7, 10, 925 }, { 8, 10, 484 }, { 10, 10, 195 }, { 6, 11, 1629 },
- { 5, 0, 869 }, { 5, 0, 968 }, { 6, 0, 1626 }, { 8, 0, 734 },
- { 8, 0, 784 }, { 4, 0, 542 }, { 6, 0, 1716 }, { 6, 0, 1727 },
- { 7, 0, 1082 }, { 7, 0, 1545 }, { 8, 0, 56 }, { 8, 0, 118 },
- { 8, 0, 412 }, { 8, 0, 564 }, { 9, 0, 888 }, { 9, 0, 908 },
- { 10, 0, 50 }, { 10, 0, 423 }, { 11, 0, 685 }, { 11, 0, 697 },
- { 11, 0, 933 }, { 12, 0, 299 }, { 13, 0, 126 }, { 13, 0, 136 },
- { 13, 0, 170 }, { 13, 0, 190 }, { 8, 10, 688 }, { 4, 10, 697 },
- { 4, 0, 232 }, { 9, 0, 202 }, { 10, 0, 474 }, { 12, 0, 433 },
- { 8, 0, 212 }, { 6, 0, 108 }, { 7, 0, 1003 }, { 7, 0, 1181 },
- { 8, 0, 111 }, { 8, 0, 343 }, { 5, 10, 221 }, { 7, 11, 1255 },
- { 5, 11, 485 }, { 6, 0, 1712 }, { 14, 0, 216 }, { 5, 0, 643 },
- { 6, 0, 516 }, { 4, 11, 285 }, { 5, 11, 317 }, { 6, 11, 301 },
- { 7, 11, 7 }, { 8, 11, 153 }, { 10, 11, 766 }, { 11, 11, 468 },
- { 12, 11, 467 }, { 13, 11, 143 }, { 4, 0, 133 }, { 7, 0, 711 },
- { 7, 0, 1298 }, { 7, 0, 1585 }, { 6, 0, 650 }, { 7, 11, 512 },
- { 6, 0, 99 }, { 7, 0, 1808 }, { 17, 0, 57 }, { 6, 0, 246 },
- { 6, 0, 574 }, { 7, 0, 428 }, { 9, 0, 793 }, { 10, 0, 669 },
- { 11, 0, 485 }, { 11, 0, 840 }, { 12, 0, 300 }, { 14, 0, 250 },
- { 17, 0, 55 }, { 4, 10, 132 }, { 5, 10, 69 }, { 7, 10, 1242 },
- { 8, 0, 1023 }, { 7, 0, 302 }, { 4, 10, 111 }, { 7, 0, 1871 },
- { 4, 0, 728 }, { 9, 0, 252 }, { 4, 10, 767 }, { 6, 0, 461 },
- { 7, 0, 1590 }, { 7, 10, 1416 }, { 7, 10, 2005 }, { 8, 10, 131 },
- { 8, 10, 466 }, { 9, 10, 672 }, { 13, 10, 252 }, { 20, 10, 103 },
- { 6, 0, 323 }, { 7, 0, 1564 }, { 7, 0, 461 }, { 8, 0, 775 },
- { 6, 10, 44 }, { 8, 10, 368 }, { 11, 0, 172 }, { 4, 0, 464 },
- { 4, 10, 570 }, { 5, 10, 120 }, { 9, 11, 269 }, { 6, 10, 227 },
- { 7, 10, 1589 }, { 6, 11, 1719 }, { 6, 11, 1735 }, { 7, 11, 2016 },
- { 7, 11, 2020 }, { 8, 11, 837 }, { 9, 11, 852 }, { 7, 0, 727 },
- { 18, 0, 73 }, { 4, 0, 1023 }, { 7, 11, 852 }, { 7, 10, 1529 },
- { 8, 0, 577 }, { 10, 11, 568 }, { 6, 0, 1037 }, { 8, 11, 67 },
- { 10, 11, 419 }, { 4, 0, 413 }, { 5, 0, 677 }, { 8, 0, 432 },
- { 12, 0, 280 }, { 10, 0, 600 }, { 6, 10, 1667 }, { 7, 11, 967 },
- { 7, 10, 2036 }, { 13, 11, 11 }, { 6, 10, 511 }, { 12, 10, 132 },
- { 6, 0, 799 }, { 5, 10, 568 }, { 6, 10, 138 }, { 7, 10, 1293 },
- { 8, 0, 159 }, { 4, 10, 565 }, { 8, 10, 827 }, { 7, 0, 646 },
- { 7, 0, 1730 }, { 11, 0, 446 }, { 13, 0, 178 }, { 4, 10, 922 },
- { 5, 10, 1023 }, { 7, 11, 11 }, { 4, 0, 395 }, { 11, 0, 145 },
- { 7, 10, 1002 }, { 9, 0, 174 }, { 10, 0, 164 }, { 11, 0, 440 },
- { 11, 0, 514 }, { 11, 0, 841 }, { 15, 0, 98 }, { 21, 0, 20 },
- { 6, 0, 426 }, { 10, 0, 608 }, { 11, 0, 1002 }, { 7, 11, 320 },
- { 8, 11, 51 }, { 12, 11, 481 }, { 12, 11, 570 }, { 20, 11, 106 },
- { 9, 0, 977 }, { 9, 0, 983 }, { 4, 11, 445 }, { 10, 0, 250 },
- { 11, 0, 100 }, { 6, 0, 1982 }, { 8, 10, 402 }, { 5, 11, 239 },
- { 4, 10, 716 }, { 13, 10, 31 }, { 5, 0, 476 }, { 7, 11, 83 },
- { 7, 11, 1990 }, { 8, 11, 130 }, { 11, 11, 720 }, { 8, 10, 691 },
- { 8, 10, 731 }, { 5, 11, 123 }, { 6, 11, 530 }, { 7, 11, 348 },
- { 7, 11, 1419 }, { 5, 0, 76 }, { 6, 0, 458 }, { 6, 0, 497 },
- { 7, 0, 868 }, { 9, 0, 658 }, { 10, 0, 594 }, { 11, 0, 173 },
- { 11, 0, 566 }, { 12, 0, 20 }, { 12, 0, 338 }, { 13, 0, 200 },
- { 9, 11, 139 }, { 10, 11, 399 }, { 11, 11, 469 }, { 12, 11, 634 },
- { 13, 11, 223 }, { 9, 10, 840 }, { 10, 10, 803 }, { 5, 10, 847 },
- { 11, 11, 223 }, { 12, 11, 168 }, { 4, 11, 210 }, { 8, 0, 447 },
- { 9, 10, 53 }, { 9, 10, 268 }, { 9, 10, 901 }, { 10, 10, 518 },
- { 10, 10, 829 }, { 11, 10, 188 }, { 13, 10, 74 }, { 14, 10, 46 },
- { 15, 10, 17 }, { 15, 10, 33 }, { 17, 10, 40 }, { 18, 10, 36 },
- { 19, 10, 20 }, { 22, 10, 1 }, { 24, 10, 2 }, { 4, 0, 526 },
- { 7, 0, 1029 }, { 7, 0, 1054 }, { 19, 11, 59 }, { 22, 11, 2 },
- { 4, 0, 636 }, { 6, 0, 1875 }, { 6, 0, 1920 }, { 9, 0, 999 },
- { 12, 0, 807 }, { 12, 0, 825 }, { 15, 0, 179 }, { 15, 0, 190 },
- { 18, 0, 182 }, { 8, 10, 532 }, { 6, 0, 1699 }, { 7, 0, 660 },
- { 7, 0, 1124 }, { 17, 0, 31 }, { 19, 0, 22 }, { 23, 0, 14 },
- { 7, 10, 681 }, { 4, 11, 430 }, { 12, 10, 677 }, { 4, 10, 684 },
- { 8, 10, 384 }, { 4, 11, 756 }, { 5, 11, 213 }, { 7, 0, 188 },
- { 7, 10, 110 }, { 8, 10, 290 }, { 8, 10, 591 }, { 9, 10, 382 },
- { 9, 10, 649 }, { 11, 10, 71 }, { 11, 10, 155 }, { 11, 10, 313 },
- { 12, 10, 5 }, { 13, 10, 325 }, { 14, 10, 287 }, { 7, 10, 360 },
- { 7, 10, 425 }, { 9, 10, 66 }, { 9, 10, 278 }, { 10, 10, 644 },
- { 14, 11, 164 }, { 4, 0, 279 }, { 7, 0, 301 }, { 9, 0, 362 },
- { 6, 11, 586 }, { 7, 0, 1743 }, { 4, 0, 178 }, { 5, 0, 399 },
- { 4, 10, 900 }, { 5, 10, 861 }, { 5, 10, 254 }, { 7, 10, 985 },
- { 8, 10, 73 }, { 5, 11, 108 }, { 7, 10, 1959 }, { 8, 10, 683 },
- { 5, 11, 219 }, { 4, 11, 193 }, { 5, 11, 916 }, { 7, 11, 364 },
- { 10, 11, 398 }, { 10, 11, 726 }, { 11, 11, 317 }, { 11, 11, 626 },
- { 12, 11, 142 }, { 12, 11, 288 }, { 12, 11, 678 }, { 13, 11, 313 },
- { 15, 11, 113 }, { 18, 11, 114 }, { 21, 11, 30 }, { 22, 11, 53 },
- { 6, 11, 241 }, { 7, 11, 907 }, { 8, 11, 832 }, { 9, 11, 342 },
- { 10, 11, 729 }, { 11, 11, 284 }, { 11, 11, 445 }, { 11, 11, 651 },
- { 11, 11, 863 }, { 13, 11, 398 }, { 18, 11, 99 }, { 4, 0, 872 },
- { 6, 0, 831 }, { 6, 0, 1692 }, { 6, 0, 202 }, { 6, 0, 1006 },
- { 9, 0, 832 }, { 10, 0, 636 }, { 11, 0, 208 }, { 12, 0, 360 },
- { 17, 0, 118 }, { 18, 0, 27 }, { 20, 0, 67 }, { 9, 11, 734 },
- { 4, 10, 725 }, { 7, 11, 993 }, { 10, 11, 666 }, { 6, 0, 1954 },
- { 6, 10, 196 }, { 7, 0, 872 }, { 10, 0, 516 }, { 11, 0, 167 },
- { 5, 10, 831 }, { 4, 11, 562 }, { 9, 11, 254 }, { 11, 11, 879 },
- { 9, 0, 313 }, { 4, 0, 224 }, { 4, 11, 786 }, { 11, 0, 24 },
- { 12, 0, 170 }, { 8, 10, 723 }, { 5, 0, 546 }, { 7, 0, 35 },
- { 8, 0, 11 }, { 8, 0, 12 }, { 9, 0, 315 }, { 9, 0, 533 },
- { 10, 0, 802 }, { 11, 0, 166 }, { 12, 0, 525 }, { 14, 0, 243 },
- { 7, 0, 1937 }, { 13, 10, 80 }, { 13, 10, 437 }, { 17, 10, 74 },
- { 5, 0, 241 }, { 8, 0, 242 }, { 9, 0, 451 }, { 10, 0, 667 },
- { 11, 0, 598 }, { 12, 0, 429 }, { 22, 0, 46 }, { 6, 0, 1273 },
- { 9, 0, 830 }, { 5, 10, 848 }, { 6, 10, 66 }, { 8, 10, 764 },
- { 6, 0, 825 }, { 6, 0, 993 }, { 4, 0, 1006 }, { 10, 0, 327 },
- { 13, 0, 271 }, { 4, 10, 36 }, { 7, 10, 1387 }, { 11, 10, 755 },
- { 6, 0, 1023 }, { 7, 0, 1580 }, { 4, 0, 366 }, { 9, 0, 516 },
- { 4, 10, 887 }, { 6, 0, 1736 }, { 7, 0, 1891 }, { 6, 11, 216 },
- { 7, 11, 901 }, { 7, 11, 1343 }, { 8, 11, 493 }, { 6, 10, 165 },
- { 10, 10, 388 }, { 7, 11, 341 }, { 11, 11, 219 }, { 4, 10, 719 },
- { 7, 10, 155 }, { 6, 0, 1935 }, { 4, 0, 826 }, { 6, 0, 331 },
- { 6, 0, 1605 }, { 8, 0, 623 }, { 11, 0, 139 }, { 11, 0, 171 },
- { 7, 11, 1734 }, { 10, 11, 115 }, { 11, 11, 420 }, { 12, 11, 154 },
- { 13, 11, 404 }, { 14, 11, 346 }, { 15, 11, 54 }, { 15, 11, 112 },
- { 7, 0, 288 }, { 4, 10, 353 }, { 6, 10, 146 }, { 6, 10, 1789 },
- { 7, 10, 990 }, { 7, 10, 1348 }, { 9, 10, 665 }, { 9, 10, 898 },
- { 11, 10, 893 }, { 14, 10, 212 }, { 6, 0, 916 }, { 6, 0, 1592 },
- { 7, 0, 1888 }, { 4, 10, 45 }, { 7, 10, 1257 }, { 5, 11, 1011 },
- { 8, 11, 701 }, { 11, 11, 596 }, { 4, 11, 54 }, { 5, 11, 666 },
- { 7, 11, 1039 }, { 7, 11, 1130 }, { 9, 11, 195 }, { 10, 11, 302 },
- { 6, 0, 1471 }, { 6, 0, 1570 }, { 4, 0, 394 }, { 12, 10, 65 },
- { 8, 10, 816 }, { 7, 0, 1931 }, { 7, 0, 574 }, { 7, 0, 1719 },
- { 6, 11, 467 }, { 4, 0, 658 }, { 9, 0, 781 }, { 10, 0, 144 },
- { 11, 0, 385 }, { 13, 0, 161 }, { 13, 0, 228 }, { 13, 0, 268 },
- { 20, 0, 107 }, { 6, 11, 1669 }, { 8, 0, 374 }, { 7, 0, 735 },
- { 4, 0, 344 }, { 6, 0, 498 }, { 11, 0, 323 }, { 7, 0, 586 },
- { 7, 0, 1063 }, { 6, 10, 559 }, { 6, 10, 1691 }, { 9, 0, 155 },
- { 5, 0, 906 }, { 7, 11, 122 }, { 9, 11, 259 }, { 10, 11, 84 },
- { 11, 11, 470 }, { 12, 11, 541 }, { 13, 11, 379 }, { 6, 0, 1139 },
- { 10, 0, 108 }, { 11, 0, 116 }, { 6, 10, 456 }, { 5, 10, 925 },
- { 5, 11, 82 }, { 5, 11, 131 }, { 7, 11, 1755 }, { 8, 11, 31 },
- { 9, 11, 168 }, { 9, 11, 764 }, { 11, 11, 869 }, { 6, 11, 605 },
- { 5, 11, 278 }, { 9, 11, 68 }, { 4, 11, 163 }, { 5, 11, 201 },
- { 5, 11, 307 }, { 5, 11, 310 }, { 6, 11, 335 }, { 7, 11, 284 },
- { 8, 11, 165 }, { 7, 11, 1660 }, { 6, 11, 33 }, { 7, 11, 1244 },
- { 4, 0, 616 }, { 8, 11, 483 }, { 8, 0, 857 }, { 8, 0, 902 },
- { 8, 0, 910 }, { 10, 0, 879 }, { 12, 0, 726 }, { 4, 11, 199 },
- { 11, 11, 34 }, { 8, 0, 692 }, { 6, 10, 193 }, { 7, 10, 240 },
- { 7, 10, 1682 }, { 10, 10, 51 }, { 10, 10, 640 }, { 11, 10, 410 },
- { 13, 10, 82 }, { 14, 10, 247 }, { 14, 10, 331 }, { 14, 10, 377 },
- { 6, 0, 823 }, { 6, 0, 983 }, { 11, 10, 411 }, { 4, 0, 305 },
- { 8, 10, 633 }, { 10, 11, 203 }, { 6, 0, 681 }, { 6, 11, 326 },
- { 7, 11, 677 }, { 9, 11, 425 }, { 5, 0, 214 }, { 7, 0, 603 },
- { 8, 0, 611 }, { 9, 0, 686 }, { 10, 0, 88 }, { 11, 0, 459 },
- { 11, 0, 496 }, { 12, 0, 463 }, { 12, 0, 590 }, { 13, 0, 0 },
- { 8, 0, 1004 }, { 14, 0, 23 }, { 6, 0, 1703 }, { 19, 11, 8 },
- { 17, 11, 56 }, { 7, 0, 1443 }, { 4, 10, 237 }, { 7, 10, 514 },
- { 6, 0, 714 }, { 17, 0, 19 }, { 5, 11, 358 }, { 7, 11, 473 },
- { 7, 11, 1184 }, { 10, 11, 662 }, { 13, 11, 212 }, { 13, 11, 304 },
- { 13, 11, 333 }, { 17, 11, 98 }, { 4, 0, 737 }, { 10, 0, 98 },
- { 11, 0, 294 }, { 12, 0, 60 }, { 12, 0, 437 }, { 13, 0, 64 },
- { 13, 0, 380 }, { 14, 0, 430 }, { 6, 10, 392 }, { 7, 10, 65 },
- { 7, 10, 2019 }, { 6, 0, 1758 }, { 8, 0, 520 }, { 9, 0, 345 },
- { 9, 0, 403 }, { 14, 0, 350 }, { 5, 0, 47 }, { 10, 0, 242 },
- { 10, 0, 579 }, { 5, 0, 139 }, { 7, 0, 1168 }, { 10, 0, 539 },
- { 6, 0, 1459 }, { 13, 0, 388 }, { 13, 11, 388 }, { 6, 0, 253 },
- { 7, 10, 1260 }, { 7, 10, 1790 }, { 10, 0, 252 }, { 9, 10, 222 },
- { 11, 10, 900 }, { 12, 0, 745 }, { 5, 11, 946 }, { 4, 0, 107 },
- { 7, 0, 613 }, { 8, 0, 439 }, { 8, 0, 504 }, { 9, 0, 501 },
- { 10, 0, 383 }, { 11, 0, 477 }, { 7, 11, 1485 }, { 4, 0, 871 },
- { 7, 11, 411 }, { 7, 11, 590 }, { 8, 11, 631 }, { 9, 11, 323 },
- { 10, 11, 355 }, { 11, 11, 491 }, { 12, 11, 143 }, { 12, 11, 402 },
- { 13, 11, 73 }, { 14, 11, 408 }, { 15, 11, 107 }, { 18, 11, 71 },
- { 4, 0, 229 }, { 4, 0, 903 }, { 12, 0, 71 }, { 5, 0, 549 },
- { 4, 0, 47 }, { 6, 0, 373 }, { 7, 0, 452 }, { 7, 0, 543 },
- { 7, 0, 1828 }, { 7, 0, 1856 }, { 9, 0, 6 }, { 11, 0, 257 },
- { 11, 0, 391 }, { 7, 11, 1467 }, { 8, 11, 328 }, { 10, 11, 544 },
- { 11, 11, 955 }, { 13, 11, 320 }, { 17, 11, 83 }, { 5, 0, 980 },
- { 6, 0, 1754 }, { 8, 0, 865 }, { 5, 0, 705 }, { 9, 0, 606 },
- { 7, 0, 161 }, { 8, 10, 201 }, { 8, 10, 605 }, { 15, 11, 35 },
- { 5, 11, 835 }, { 6, 11, 483 }, { 12, 10, 224 }, { 7, 0, 536 },
- { 7, 0, 1331 }, { 8, 0, 143 }, { 6, 0, 1388 }, { 5, 0, 724 },
- { 10, 0, 305 }, { 11, 0, 151 }, { 12, 0, 33 }, { 12, 0, 121 },
- { 12, 0, 381 }, { 17, 0, 3 }, { 17, 0, 27 }, { 17, 0, 78 },
- { 18, 0, 18 }, { 19, 0, 54 }, { 21, 0, 5 }, { 4, 10, 523 },
- { 5, 10, 638 }, { 5, 0, 19 }, { 6, 0, 533 }, { 5, 0, 395 },
- { 5, 0, 951 }, { 6, 0, 1776 }, { 7, 0, 1908 }, { 4, 0, 846 },
- { 10, 0, 74 }, { 11, 0, 663 }, { 12, 0, 210 }, { 13, 0, 166 },
- { 13, 0, 310 }, { 14, 0, 373 }, { 18, 0, 95 }, { 19, 0, 43 },
- { 6, 10, 242 }, { 7, 10, 227 }, { 7, 10, 1581 }, { 8, 10, 104 },
- { 9, 10, 113 }, { 9, 10, 220 }, { 9, 10, 427 }, { 10, 10, 239 },
- { 11, 10, 579 }, { 11, 10, 1023 }, { 13, 10, 4 }, { 13, 10, 204 },
- { 13, 10, 316 }, { 20, 10, 86 }, { 9, 11, 716 }, { 11, 11, 108 },
- { 13, 11, 123 }, { 14, 11, 252 }, { 19, 11, 38 }, { 21, 11, 3 },
- { 23, 11, 11 }, { 8, 0, 372 }, { 9, 0, 122 }, { 10, 0, 175 },
- { 4, 11, 677 }, { 7, 11, 1374 }, { 8, 11, 540 }, { 7, 10, 861 },
- { 4, 0, 695 }, { 7, 0, 497 }, { 9, 0, 387 }, { 19, 0, 81 },
- { 8, 0, 937 }, { 6, 0, 718 }, { 7, 0, 1328 }, { 8, 10, 494 },
- { 4, 11, 331 }, { 6, 0, 1581 }, { 5, 11, 747 }, { 5, 0, 284 },
- { 6, 0, 49 }, { 6, 0, 350 }, { 7, 0, 1 }, { 7, 0, 377 },
- { 7, 0, 1693 }, { 8, 0, 18 }, { 8, 0, 678 }, { 9, 0, 161 },
- { 9, 0, 585 }, { 9, 0, 671 }, { 9, 0, 839 }, { 11, 0, 912 },
- { 13, 0, 427 }, { 7, 10, 1306 }, { 8, 10, 505 }, { 9, 10, 482 },
- { 10, 10, 126 }, { 11, 10, 225 }, { 12, 10, 347 }, { 12, 10, 449 },
- { 13, 10, 19 }, { 14, 10, 218 }, { 14, 10, 435 }, { 10, 10, 764 },
- { 12, 10, 120 }, { 13, 10, 39 }, { 17, 10, 127 }, { 4, 0, 597 },
- { 5, 10, 268 }, { 6, 0, 1094 }, { 4, 0, 1008 }, { 6, 0, 1973 },
- { 4, 0, 811 }, { 11, 0, 908 }, { 7, 0, 1471 }, { 5, 11, 326 },
- { 4, 10, 384 }, { 7, 10, 1022 }, { 7, 0, 1935 }, { 8, 0, 324 },
- { 12, 0, 42 }, { 4, 11, 691 }, { 7, 11, 1935 }, { 8, 11, 324 },
- { 9, 11, 35 }, { 10, 11, 680 }, { 11, 11, 364 }, { 12, 11, 42 },
- { 13, 11, 357 }, { 18, 11, 16 }, { 7, 0, 2014 }, { 7, 0, 2007 },
- { 9, 0, 101 }, { 9, 0, 450 }, { 10, 0, 66 }, { 10, 0, 842 },
- { 11, 0, 536 }, { 12, 0, 587 }, { 6, 11, 32 }, { 7, 11, 385 },
- { 7, 11, 757 }, { 7, 11, 1916 }, { 8, 11, 37 }, { 8, 11, 94 },
- { 8, 11, 711 }, { 9, 11, 541 }, { 10, 11, 162 }, { 10, 11, 795 },
- { 11, 11, 989 }, { 11, 11, 1010 }, { 12, 11, 14 }, { 14, 11, 308 },
- { 11, 0, 586 }, { 7, 10, 1703 }, { 7, 0, 1077 }, { 11, 0, 28 },
- { 9, 10, 159 }, { 12, 10, 603 }, { 6, 0, 1221 }, { 8, 10, 583 },
- { 6, 11, 152 }, { 6, 11, 349 }, { 6, 11, 1682 }, { 7, 11, 1252 },
- { 8, 11, 112 }, { 9, 11, 435 }, { 9, 11, 668 }, { 10, 11, 290 },
- { 10, 11, 319 }, { 10, 11, 815 }, { 11, 11, 180 }, { 11, 11, 837 },
- { 12, 11, 240 }, { 13, 11, 152 }, { 13, 11, 219 }, { 14, 11, 158 },
- { 11, 0, 62 }, { 4, 10, 515 }, { 8, 10, 632 }, { 8, 10, 697 },
- { 9, 10, 854 }, { 6, 0, 1766 }, { 4, 11, 581 }, { 6, 11, 126 },
- { 7, 11, 573 }, { 8, 11, 397 }, { 14, 11, 44 }, { 22, 0, 28 },
- { 11, 0, 670 }, { 22, 0, 25 }, { 4, 10, 136 }, { 5, 10, 551 },
- { 6, 0, 1665 }, { 7, 0, 256 }, { 7, 0, 1388 }, { 10, 0, 499 },
- { 4, 0, 22 }, { 5, 0, 10 }, { 7, 0, 1576 }, { 8, 0, 97 },
- { 6, 10, 1782 }, { 5, 0, 481 }, { 7, 10, 1287 }, { 9, 10, 44 },
- { 10, 10, 552 }, { 10, 10, 642 }, { 11, 10, 839 }, { 12, 10, 274 },
- { 12, 10, 275 }, { 12, 10, 372 }, { 13, 10, 91 }, { 14, 10, 125 },
- { 5, 11, 926 }, { 7, 11, 1232 }, { 9, 11, 531 }, { 6, 0, 134 },
- { 7, 0, 437 }, { 7, 0, 1824 }, { 9, 0, 37 }, { 14, 0, 285 },
- { 14, 0, 371 }, { 7, 0, 486 }, { 8, 0, 155 }, { 11, 0, 93 },
- { 12, 0, 164 }, { 6, 0, 1391 }, { 6, 0, 1442 }, { 5, 11, 670 },
- { 5, 0, 591 }, { 6, 10, 147 }, { 7, 10, 886 }, { 7, 11, 1957 },
- { 9, 10, 753 }, { 10, 10, 268 }, { 5, 0, 380 }, { 5, 0, 650 },
- { 7, 0, 1173 }, { 8, 0, 310 }, { 4, 0, 364 }, { 7, 0, 1156 },
- { 7, 0, 1187 }, { 9, 0, 409 }, { 7, 11, 1621 }, { 6, 0, 482 },
- { 5, 11, 506 }, { 4, 0, 781 }, { 6, 0, 487 }, { 7, 0, 926 },
- { 8, 0, 263 }, { 11, 0, 500 }, { 10, 10, 137 }, { 7, 11, 242 },
- { 11, 11, 96 }, { 5, 10, 414 }, { 7, 10, 1762 }, { 6, 0, 804 },
- { 5, 11, 834 }, { 7, 11, 1202 }, { 8, 11, 14 }, { 9, 11, 481 },
- { 9, 11, 880 }, { 6, 10, 599 }, { 4, 0, 94 }, { 7, 0, 1265 },
- { 4, 0, 415 }, { 4, 0, 417 }, { 5, 0, 348 }, { 6, 0, 522 },
- { 6, 10, 1749 }, { 7, 11, 1526 }, { 10, 11, 465 }, { 6, 10, 1627 },
- { 4, 0, 1012 }, { 4, 10, 488 }, { 4, 11, 357 }, { 6, 11, 172 },
- { 7, 11, 143 }, { 9, 11, 413 }, { 4, 10, 83 }, { 4, 11, 590 },
- { 18, 11, 76 }, { 12, 10, 676 }, { 7, 11, 287 }, { 8, 11, 355 },
- { 9, 11, 293 }, { 9, 11, 743 }, { 6, 10, 278 }, { 6, 0, 1803 },
- { 18, 0, 165 }, { 24, 0, 21 }, { 5, 11, 169 }, { 7, 11, 333 },
- { 8, 11, 45 }, { 12, 10, 97 }, { 12, 11, 97 }, { 4, 0, 408 },
- { 4, 0, 741 }, { 7, 0, 500 }, { 4, 11, 198 }, { 7, 10, 388 },
- { 7, 10, 644 }, { 11, 10, 781 }, { 4, 11, 24 }, { 5, 11, 140 },
- { 5, 11, 185 }, { 7, 11, 1500 }, { 11, 11, 565 }, { 11, 11, 838 },
- { 6, 0, 1321 }, { 9, 0, 257 }, { 7, 10, 229 }, { 8, 10, 59 },
- { 9, 10, 190 }, { 10, 10, 378 }, { 12, 10, 191 }, { 4, 11, 334 },
- { 5, 11, 593 }, { 7, 11, 1885 }, { 6, 0, 1138 }, { 4, 0, 249 },
- { 6, 0, 73 }, { 7, 0, 177 }, { 5, 0, 576 }, { 14, 0, 231 },
- { 9, 0, 288 }, { 4, 10, 660 }, { 7, 10, 1035 }, { 10, 10, 737 },
- { 7, 0, 1487 }, { 6, 0, 989 }, { 9, 0, 433 }, { 7, 10, 690 },
- { 9, 10, 587 }, { 12, 10, 521 }, { 7, 0, 1264 }, { 7, 0, 1678 },
- { 11, 0, 945 }, { 12, 0, 341 }, { 12, 0, 471 }, { 12, 0, 569 },
- { 4, 11, 709 }, { 5, 11, 897 }, { 5, 11, 224 }, { 13, 11, 174 },
- { 18, 11, 52 }, { 7, 11, 1840 }, { 6, 10, 1744 }, { 12, 0, 87 },
- { 16, 0, 74 }, { 4, 10, 733 }, { 9, 10, 194 }, { 10, 10, 92 },
- { 11, 10, 198 }, { 12, 10, 84 }, { 13, 10, 128 }, { 12, 0, 779 },
- { 7, 0, 538 }, { 4, 11, 608 }, { 5, 11, 497 }, { 5, 0, 413 },
- { 7, 11, 1375 }, { 7, 11, 1466 }, { 10, 11, 331 }, { 8, 0, 495 },
- { 6, 11, 540 }, { 8, 11, 136 }, { 7, 0, 54 }, { 8, 0, 312 },
- { 10, 0, 191 }, { 10, 0, 614 }, { 12, 0, 567 }, { 6, 0, 468 },
- { 7, 0, 567 }, { 7, 0, 1478 }, { 8, 0, 530 }, { 14, 0, 290 },
- { 5, 11, 999 }, { 4, 11, 299 }, { 7, 10, 306 }, { 7, 11, 1004 },
- { 14, 11, 296 }, { 6, 0, 1484 }, { 5, 10, 979 }, { 6, 0, 609 },
- { 9, 0, 815 }, { 12, 11, 137 }, { 14, 11, 9 }, { 14, 11, 24 },
- { 14, 11, 64 }, { 5, 11, 456 }, { 6, 0, 484 }, { 7, 0, 822 },
- { 5, 10, 178 }, { 8, 11, 180 }, { 4, 11, 755 }, { 9, 0, 900 },
- { 7, 0, 1335 }, { 6, 0, 1724 }, { 7, 0, 2022 }, { 7, 11, 1139 },
- { 5, 0, 640 }, { 4, 10, 390 }, { 6, 0, 1831 }, { 10, 11, 633 },
- { 7, 11, 566 }, { 4, 11, 890 }, { 5, 11, 805 }, { 5, 11, 819 },
- { 5, 11, 961 }, { 6, 11, 396 }, { 6, 11, 1631 }, { 6, 11, 1678 },
- { 7, 11, 1967 }, { 7, 11, 2041 }, { 9, 11, 630 }, { 11, 11, 8 },
- { 11, 11, 1019 }, { 12, 11, 176 }, { 13, 11, 225 }, { 14, 11, 292 },
- { 21, 11, 24 }, { 4, 0, 474 }, { 6, 0, 1103 }, { 7, 0, 1504 },
- { 6, 0, 1576 }, { 6, 0, 961 }, { 6, 0, 1034 }, { 12, 0, 655 },
- { 11, 11, 514 }, { 21, 11, 20 }, { 5, 0, 305 }, { 7, 11, 1815 },
- { 7, 11, 1505 }, { 10, 11, 190 }, { 10, 11, 634 }, { 11, 11, 792 },
- { 12, 11, 358 }, { 12, 11, 447 }, { 5, 11, 0 }, { 6, 11, 536 },
- { 7, 11, 604 }, { 13, 11, 445 }, { 17, 11, 126 }, { 7, 0, 1236 },
- { 5, 10, 105 }, { 4, 0, 480 }, { 6, 0, 217 }, { 6, 0, 302 },
- { 6, 0, 1642 }, { 7, 0, 130 }, { 7, 0, 837 }, { 7, 0, 1321 },
- { 7, 0, 1547 }, { 7, 0, 1657 }, { 8, 0, 429 }, { 9, 0, 228 },
- { 13, 0, 289 }, { 13, 0, 343 }, { 19, 0, 101 }, { 6, 11, 232 },
- { 6, 11, 412 }, { 7, 11, 1074 }, { 8, 11, 9 }, { 8, 11, 157 },
- { 8, 11, 786 }, { 9, 11, 196 }, { 9, 11, 352 }, { 9, 11, 457 },
- { 10, 11, 337 }, { 11, 11, 232 }, { 11, 11, 877 }, { 12, 11, 480 },
- { 12, 11, 546 }, { 5, 10, 438 }, { 7, 11, 958 }, { 9, 10, 694 },
- { 12, 10, 627 }, { 13, 11, 38 }, { 13, 10, 210 }, { 4, 11, 382 },
- { 8, 11, 579 }, { 7, 0, 278 }, { 10, 0, 739 }, { 11, 0, 708 },
- { 13, 0, 348 }, { 4, 11, 212 }, { 7, 11, 1206 }, { 7, 11, 1898 },
- { 6, 0, 708 }, { 6, 0, 1344 }, { 24, 10, 11 }, { 9, 11, 768 },
- { 6, 0, 1840 }, { 12, 0, 233 }, { 8, 10, 25 }, { 10, 10, 826 },
- { 6, 0, 2017 }, { 5, 11, 655 }, { 6, 0, 1488 }, { 11, 11, 290 },
- { 4, 10, 308 }, { 6, 0, 1590 }, { 6, 0, 1800 }, { 6, 0, 1259 },
- { 16, 0, 28 }, { 6, 11, 231 }, { 7, 11, 95 }, { 8, 11, 423 },
- { 5, 11, 300 }, { 7, 10, 150 }, { 8, 10, 649 }, { 7, 11, 1874 },
- { 9, 11, 641 }, { 6, 11, 237 }, { 7, 11, 611 }, { 8, 11, 100 },
- { 9, 11, 416 }, { 11, 11, 335 }, { 12, 11, 173 }, { 18, 11, 101 },
- { 9, 0, 45 }, { 6, 10, 521 }, { 17, 0, 36 }, { 14, 11, 26 },
- { 18, 11, 150 }, { 7, 0, 1442 }, { 14, 0, 22 }, { 5, 10, 339 },
- { 15, 10, 41 }, { 15, 10, 166 }, { 19, 10, 66 }, { 8, 0, 378 },
- { 6, 11, 581 }, { 7, 11, 1119 }, { 6, 0, 1507 }, { 19, 11, 117 },
- { 11, 0, 39 }, { 6, 0, 1054 }, { 6, 0, 363 }, { 7, 0, 1955 },
- { 8, 0, 725 }, { 6, 0, 2036 }, { 5, 11, 199 }, { 6, 0, 1871 },
- { 9, 0, 935 }, { 9, 0, 961 }, { 9, 0, 1004 }, { 9, 0, 1016 },
- { 12, 0, 805 }, { 12, 0, 852 }, { 12, 0, 853 }, { 12, 0, 869 },
- { 12, 0, 882 }, { 12, 0, 896 }, { 12, 0, 906 }, { 12, 0, 917 },
- { 12, 0, 940 }, { 15, 0, 170 }, { 15, 0, 176 }, { 15, 0, 188 },
- { 15, 0, 201 }, { 15, 0, 205 }, { 15, 0, 212 }, { 15, 0, 234 },
- { 15, 0, 244 }, { 18, 0, 181 }, { 18, 0, 193 }, { 18, 0, 196 },
- { 18, 0, 201 }, { 18, 0, 202 }, { 18, 0, 210 }, { 18, 0, 217 },
- { 18, 0, 235 }, { 18, 0, 236 }, { 18, 0, 237 }, { 21, 0, 54 },
- { 21, 0, 55 }, { 21, 0, 58 }, { 21, 0, 59 }, { 24, 0, 22 },
- { 6, 10, 1628 }, { 9, 0, 805 }, { 5, 0, 813 }, { 7, 0, 2046 },
- { 14, 11, 42 }, { 5, 0, 712 }, { 6, 0, 1240 }, { 11, 0, 17 },
- { 13, 0, 321 }, { 16, 0, 67 }, { 4, 0, 617 }, { 7, 10, 829 },
- { 6, 0, 320 }, { 7, 0, 781 }, { 7, 0, 1921 }, { 9, 0, 55 },
- { 10, 0, 186 }, { 10, 0, 273 }, { 10, 0, 664 }, { 10, 0, 801 },
- { 11, 0, 996 }, { 11, 0, 997 }, { 13, 0, 157 }, { 14, 0, 170 },
- { 8, 0, 271 }, { 5, 10, 486 }, { 7, 10, 1349 }, { 18, 11, 91 },
- { 19, 11, 70 }, { 10, 0, 445 }, { 7, 10, 1635 }, { 8, 10, 17 },
- { 10, 10, 295 }, { 8, 11, 404 }, { 7, 0, 103 }, { 7, 0, 863 },
- { 11, 0, 184 }, { 17, 0, 62 }, { 10, 10, 558 }, { 9, 0, 659 },
- { 6, 11, 312 }, { 6, 11, 1715 }, { 10, 11, 584 }, { 11, 11, 546 },
- { 11, 11, 692 }, { 12, 11, 259 }, { 12, 11, 295 }, { 13, 11, 46 },
- { 13, 11, 154 }, { 6, 0, 676 }, { 4, 11, 588 }, { 4, 11, 231 },
- { 5, 11, 61 }, { 6, 11, 104 }, { 7, 11, 729 }, { 7, 11, 964 },
- { 7, 11, 1658 }, { 12, 11, 414 }, { 6, 11, 263 }, { 10, 11, 757 },
- { 11, 0, 337 }, { 14, 0, 303 }, { 7, 11, 1363 }, { 4, 11, 320 },
- { 12, 0, 506 }, { 6, 10, 447 }, { 5, 0, 77 }, { 7, 0, 1455 },
- { 10, 0, 843 }, { 19, 0, 73 }, { 7, 10, 577 }, { 7, 10, 1432 },
- { 9, 10, 475 }, { 9, 10, 505 }, { 9, 10, 526 }, { 9, 10, 609 },
- { 9, 10, 689 }, { 9, 10, 726 }, { 9, 10, 735 }, { 9, 10, 738 },
- { 10, 10, 556 }, { 10, 10, 674 }, { 10, 10, 684 }, { 11, 10, 89 },
- { 11, 10, 202 }, { 11, 10, 272 }, { 11, 10, 380 }, { 11, 10, 415 },
- { 11, 10, 505 }, { 11, 10, 537 }, { 11, 10, 550 }, { 11, 10, 562 },
- { 11, 10, 640 }, { 11, 10, 667 }, { 11, 10, 688 }, { 11, 10, 847 },
- { 11, 10, 927 }, { 11, 10, 930 }, { 11, 10, 940 }, { 12, 10, 144 },
- { 12, 10, 325 }, { 12, 10, 329 }, { 12, 10, 389 }, { 12, 10, 403 },
- { 12, 10, 451 }, { 12, 10, 515 }, { 12, 10, 604 }, { 12, 10, 616 },
- { 12, 10, 626 }, { 13, 10, 66 }, { 13, 10, 131 }, { 13, 10, 167 },
- { 13, 10, 236 }, { 13, 10, 368 }, { 13, 10, 411 }, { 13, 10, 434 },
- { 13, 10, 453 }, { 13, 10, 461 }, { 13, 10, 474 }, { 14, 10, 59 },
- { 14, 10, 60 }, { 14, 10, 139 }, { 14, 10, 152 }, { 14, 10, 276 },
- { 14, 10, 353 }, { 14, 10, 402 }, { 15, 10, 28 }, { 15, 10, 81 },
- { 15, 10, 123 }, { 15, 10, 152 }, { 18, 10, 136 }, { 20, 10, 88 },
- { 4, 0, 458 }, { 7, 0, 1420 }, { 6, 0, 109 }, { 10, 0, 382 },
- { 4, 11, 405 }, { 4, 10, 609 }, { 7, 10, 756 }, { 7, 11, 817 },
- { 9, 10, 544 }, { 11, 10, 413 }, { 14, 11, 58 }, { 14, 10, 307 },
- { 16, 10, 25 }, { 17, 11, 37 }, { 18, 11, 124 }, { 6, 0, 330 },
- { 7, 0, 1084 }, { 11, 0, 142 }, { 5, 11, 974 }, { 4, 10, 930 },
- { 5, 10, 947 }, { 5, 10, 939 }, { 14, 11, 394 }, { 16, 0, 91 },
- { 17, 0, 87 }, { 5, 11, 235 }, { 5, 10, 962 }, { 7, 11, 1239 },
- { 11, 11, 131 }, { 12, 11, 370 }, { 11, 0, 492 }, { 5, 10, 651 },
- { 8, 10, 170 }, { 9, 10, 61 }, { 9, 10, 63 }, { 10, 10, 23 },
- { 10, 10, 37 }, { 10, 10, 834 }, { 11, 10, 4 }, { 11, 10, 281 },
- { 11, 10, 503 }, { 11, 10, 677 }, { 12, 10, 96 }, { 12, 10, 130 },
- { 12, 10, 244 }, { 14, 10, 5 }, { 14, 10, 40 }, { 14, 10, 162 },
- { 14, 10, 202 }, { 18, 10, 133 }, { 4, 10, 406 }, { 5, 10, 579 },
- { 12, 10, 492 }, { 22, 10, 15 }, { 9, 11, 137 }, { 10, 11, 221 },
- { 6, 0, 1239 }, { 11, 0, 211 }, { 12, 0, 145 }, { 7, 11, 390 },
- { 10, 11, 140 }, { 7, 11, 1418 }, { 7, 11, 1144 }, { 6, 0, 1049 },
- { 7, 0, 321 }, { 6, 10, 17 }, { 7, 10, 1001 }, { 7, 10, 1982 },
- { 9, 10, 886 }, { 10, 10, 489 }, { 10, 10, 800 }, { 11, 10, 782 },
- { 12, 10, 320 }, { 13, 10, 467 }, { 14, 10, 145 }, { 14, 10, 387 },
- { 15, 10, 119 }, { 17, 10, 17 }, { 5, 11, 407 }, { 11, 11, 489 },
- { 19, 11, 37 }, { 20, 11, 73 }, { 22, 11, 38 }, { 5, 10, 458 },
- { 7, 0, 1985 }, { 7, 10, 1983 }, { 8, 10, 0 }, { 8, 10, 171 },
- { 9, 10, 120 }, { 9, 10, 732 }, { 10, 10, 473 }, { 11, 10, 656 },
- { 11, 10, 998 }, { 18, 10, 0 }, { 18, 10, 2 }, { 19, 10, 21 },
- { 5, 11, 325 }, { 7, 11, 1483 }, { 8, 11, 5 }, { 8, 11, 227 },
- { 9, 11, 105 }, { 10, 11, 585 }, { 12, 11, 614 }, { 8, 0, 122 },
- { 4, 0, 234 }, { 7, 11, 1196 }, { 6, 0, 976 }, { 6, 0, 1098 },
- { 6, 0, 1441 }, { 7, 0, 253 }, { 8, 0, 549 }, { 6, 11, 621 },
- { 13, 11, 504 }, { 16, 11, 19 }, { 4, 10, 519 }, { 5, 0, 430 },
- { 5, 0, 932 }, { 6, 0, 131 }, { 7, 0, 417 }, { 9, 0, 522 },
- { 11, 0, 314 }, { 13, 0, 390 }, { 14, 0, 149 }, { 14, 0, 399 },
- { 15, 0, 57 }, { 5, 10, 907 }, { 6, 10, 31 }, { 6, 11, 218 },
- { 7, 10, 491 }, { 7, 10, 530 }, { 8, 10, 592 }, { 11, 10, 53 },
- { 11, 10, 779 }, { 12, 10, 167 }, { 12, 10, 411 }, { 14, 10, 14 },
- { 14, 10, 136 }, { 15, 10, 72 }, { 16, 10, 17 }, { 16, 10, 72 },
- { 12, 11, 330 }, { 7, 11, 454 }, { 7, 11, 782 }, { 8, 11, 768 },
- { 4, 0, 507 }, { 10, 11, 676 }, { 12, 11, 462 }, { 6, 0, 630 },
- { 9, 0, 811 }, { 4, 10, 208 }, { 5, 10, 106 }, { 6, 10, 531 },
- { 8, 10, 408 }, { 9, 10, 188 }, { 10, 10, 572 }, { 4, 0, 343 },
- { 5, 0, 511 }, { 6, 10, 1693 }, { 6, 11, 164 }, { 4, 0, 448 },
- { 7, 0, 455 }, { 10, 0, 591 }, { 7, 0, 1381 }, { 12, 10, 441 },
- { 22, 11, 50 }, { 9, 10, 449 }, { 10, 10, 192 }, { 10, 10, 740 },
- { 6, 0, 575 }, { 4, 10, 241 }, { 6, 0, 1175 }, { 6, 0, 653 },
- { 6, 0, 1761 }, { 6, 0, 1198 }, { 4, 10, 259 }, { 6, 11, 343 },
- { 7, 11, 195 }, { 9, 11, 226 }, { 10, 11, 197 }, { 10, 11, 575 },
- { 11, 11, 502 }, { 11, 11, 899 }, { 7, 0, 1127 }, { 7, 0, 1572 },
- { 10, 0, 297 }, { 10, 0, 422 }, { 11, 0, 764 }, { 11, 0, 810 },
- { 12, 0, 264 }, { 13, 0, 102 }, { 13, 0, 300 }, { 13, 0, 484 },
- { 14, 0, 147 }, { 14, 0, 229 }, { 17, 0, 71 }, { 18, 0, 118 },
- { 19, 0, 120 }, { 7, 11, 666 }, { 4, 0, 678 }, { 4, 10, 173 },
- { 5, 10, 312 }, { 5, 10, 512 }, { 7, 10, 1285 }, { 7, 10, 1603 },
- { 7, 10, 1691 }, { 9, 10, 464 }, { 11, 10, 195 }, { 12, 10, 279 },
- { 12, 10, 448 }, { 14, 10, 11 }, { 19, 10, 102 }, { 16, 0, 99 },
- { 18, 0, 164 }, { 7, 11, 1125 }, { 9, 11, 143 }, { 11, 11, 61 },
- { 14, 11, 405 }, { 22, 11, 21 }, { 9, 11, 260 }, { 4, 10, 452 },
- { 5, 10, 583 }, { 5, 10, 817 }, { 6, 10, 433 }, { 7, 10, 593 },
- { 7, 10, 720 }, { 7, 10, 1378 }, { 8, 10, 161 }, { 9, 10, 284 },
- { 10, 10, 313 }, { 11, 10, 886 }, { 4, 10, 547 }, { 8, 10, 722 },
- { 14, 0, 35 }, { 14, 0, 191 }, { 13, 0, 45 }, { 10, 0, 121 },
- { 4, 0, 125 }, { 6, 0, 1622 }, { 5, 11, 959 }, { 8, 10, 420 },
- { 11, 10, 193 }, { 4, 0, 721 }, { 7, 10, 409 }, { 8, 0, 145 },
- { 7, 0, 792 }, { 8, 0, 147 }, { 10, 0, 821 }, { 11, 0, 970 },
- { 11, 0, 1021 }, { 8, 11, 173 }, { 6, 11, 266 }, { 4, 0, 715 },
- { 7, 0, 1999 }, { 10, 10, 308 }, { 5, 0, 531 }, { 5, 0, 168 },
- { 5, 0, 930 }, { 8, 0, 74 }, { 9, 0, 623 }, { 12, 0, 500 },
- { 12, 0, 579 }, { 16, 0, 65 }, { 10, 11, 246 }, { 6, 0, 220 },
- { 7, 0, 1101 }, { 13, 0, 105 }, { 14, 11, 314 }, { 5, 10, 1002 },
- { 8, 10, 745 }, { 6, 0, 960 }, { 20, 0, 0 }, { 20, 11, 0 },
- { 4, 0, 1005 }, { 4, 10, 239 }, { 6, 10, 477 }, { 7, 10, 1607 },
- { 11, 10, 68 }, { 11, 10, 617 }, { 6, 0, 19 }, { 7, 0, 1413 },
- { 11, 0, 428 }, { 21, 10, 13 }, { 7, 0, 96 }, { 8, 0, 401 },
- { 8, 0, 703 }, { 9, 0, 896 }, { 8, 11, 300 }, { 6, 0, 1595 },
- { 17, 0, 116 }, { 8, 0, 1021 }, { 7, 0, 1961 }, { 7, 0, 1965 },
- { 7, 0, 2030 }, { 8, 0, 150 }, { 8, 0, 702 }, { 8, 0, 737 },
- { 8, 0, 750 }, { 12, 0, 366 }, { 11, 11, 75 }, { 14, 11, 267 },
- { 4, 10, 367 }, { 8, 0, 800 }, { 9, 0, 148 }, { 9, 0, 872 },
- { 9, 0, 890 }, { 11, 0, 309 }, { 11, 0, 1001 }, { 13, 0, 267 },
- { 13, 0, 323 }, { 5, 11, 427 }, { 5, 11, 734 }, { 7, 11, 478 },
- { 8, 11, 52 }, { 7, 11, 239 }, { 11, 11, 217 }, { 14, 11, 165 },
- { 4, 11, 323 }, { 12, 11, 419 }, { 13, 0, 299 }, { 14, 0, 75 },
- { 6, 11, 87 }, { 6, 11, 1734 }, { 7, 11, 20 }, { 7, 11, 1056 },
- { 8, 11, 732 }, { 9, 11, 406 }, { 9, 11, 911 }, { 10, 11, 694 },
- { 6, 0, 1383 }, { 4, 10, 694 }, { 5, 11, 613 }, { 9, 0, 779 },
- { 4, 0, 598 }, { 12, 10, 687 }, { 6, 0, 970 }, { 7, 0, 424 },
- { 5, 0, 547 }, { 7, 11, 32 }, { 7, 11, 984 }, { 8, 11, 85 },
- { 8, 11, 709 }, { 9, 11, 579 }, { 9, 11, 847 }, { 9, 11, 856 },
- { 10, 11, 799 }, { 11, 11, 258 }, { 11, 11, 1007 }, { 12, 11, 331 },
- { 12, 11, 615 }, { 13, 11, 188 }, { 13, 11, 435 }, { 14, 11, 8 },
- { 15, 11, 165 }, { 16, 11, 27 }, { 20, 11, 40 }, { 6, 0, 1222 },
- { 6, 0, 1385 }, { 4, 0, 876 }, { 10, 11, 151 }, { 7, 10, 213 },
- { 4, 11, 167 }, { 7, 11, 82 }, { 5, 0, 133 }, { 6, 11, 24 },
- { 7, 11, 74 }, { 7, 11, 678 }, { 9, 11, 258 }, { 5, 11, 62 },
- { 6, 11, 534 }, { 7, 11, 684 }, { 7, 11, 1043 }, { 7, 11, 1072 },
- { 8, 11, 280 }, { 8, 11, 541 }, { 8, 11, 686 }, { 10, 11, 519 },
- { 11, 11, 252 }, { 12, 11, 282 }, { 8, 0, 187 }, { 8, 0, 8 },
- { 10, 0, 0 }, { 10, 0, 818 }, { 11, 0, 988 }, { 4, 11, 359 },
- { 11, 0, 429 }, { 15, 0, 51 }, { 7, 10, 1672 }, { 8, 0, 685 },
- { 5, 11, 211 }, { 7, 11, 88 }, { 8, 11, 627 }, { 6, 0, 472 },
- { 8, 0, 132 }, { 6, 11, 145 }, { 13, 11, 336 }, { 4, 10, 751 },
- { 11, 10, 390 }, { 12, 10, 32 }, { 6, 0, 938 }, { 6, 0, 1060 },
- { 4, 11, 263 }, { 4, 10, 409 }, { 5, 10, 78 }, { 9, 0, 874 },
- { 8, 0, 774 }, { 10, 0, 670 }, { 12, 0, 51 }, { 4, 11, 916 },
- { 6, 10, 473 }, { 7, 10, 1602 }, { 10, 10, 698 }, { 12, 10, 212 },
- { 13, 10, 307 }, { 17, 10, 105 }, { 18, 0, 92 }, { 15, 10, 156 },
- { 4, 0, 830 }, { 9, 0, 701 }, { 4, 11, 599 }, { 6, 11, 1634 },
- { 7, 11, 5 }, { 7, 11, 55 }, { 7, 11, 67 }, { 7, 11, 97 },
- { 7, 11, 691 }, { 7, 11, 979 }, { 7, 11, 1697 }, { 8, 11, 207 },
- { 8, 11, 214 }, { 8, 11, 231 }, { 8, 11, 294 }, { 8, 11, 336 },
- { 8, 11, 428 }, { 8, 11, 451 }, { 8, 11, 460 }, { 8, 11, 471 },
- { 8, 11, 622 }, { 8, 11, 626 }, { 8, 11, 679 }, { 8, 11, 759 },
- { 8, 11, 829 }, { 9, 11, 11 }, { 9, 11, 246 }, { 9, 11, 484 },
- { 9, 11, 573 }, { 9, 11, 706 }, { 9, 11, 762 }, { 9, 11, 798 },
- { 9, 11, 855 }, { 9, 11, 870 }, { 9, 11, 912 }, { 10, 11, 303 },
- { 10, 11, 335 }, { 10, 11, 424 }, { 10, 11, 461 }, { 10, 11, 543 },
- { 10, 11, 759 }, { 10, 11, 814 }, { 11, 11, 59 }, { 11, 11, 199 },
- { 11, 11, 235 }, { 11, 11, 475 }, { 11, 11, 590 }, { 11, 11, 929 },
- { 11, 11, 963 }, { 12, 11, 114 }, { 12, 11, 182 }, { 12, 11, 226 },
- { 12, 11, 332 }, { 12, 11, 439 }, { 12, 11, 575 }, { 12, 11, 598 },
- { 13, 11, 8 }, { 13, 11, 125 }, { 13, 11, 194 }, { 13, 11, 287 },
- { 14, 11, 197 }, { 14, 11, 383 }, { 15, 11, 53 }, { 17, 11, 63 },
- { 19, 11, 46 }, { 19, 11, 98 }, { 19, 11, 106 }, { 20, 11, 85 },
- { 4, 0, 127 }, { 5, 0, 350 }, { 6, 0, 356 }, { 8, 0, 426 },
- { 9, 0, 572 }, { 10, 0, 247 }, { 11, 0, 312 }, { 6, 0, 1215 },
- { 6, 0, 59 }, { 9, 0, 603 }, { 13, 0, 397 }, { 7, 11, 1853 },
- { 10, 11, 437 }, { 6, 0, 1762 }, { 19, 11, 126 }, { 7, 10, 883 },
- { 13, 0, 293 }, { 14, 0, 56 }, { 5, 10, 617 }, { 11, 10, 50 },
- { 5, 11, 187 }, { 7, 10, 1518 }, { 11, 10, 694 }, { 7, 0, 441 },
- { 6, 0, 111 }, { 7, 0, 4 }, { 8, 0, 163 }, { 8, 0, 776 },
- { 10, 0, 566 }, { 4, 0, 806 }, { 4, 11, 215 }, { 9, 11, 38 },
- { 10, 11, 3 }, { 11, 11, 23 }, { 11, 11, 127 }, { 11, 11, 796 },
- { 14, 0, 233 }, { 4, 10, 546 }, { 7, 10, 2042 }, { 7, 0, 1994 },
- { 6, 0, 1739 }, { 7, 11, 1530 }, { 8, 0, 393 }, { 5, 0, 297 },
- { 7, 0, 1038 }, { 14, 0, 359 }, { 19, 0, 52 }, { 20, 0, 47 },
- { 7, 0, 309 }, { 4, 10, 313 }, { 5, 10, 577 }, { 8, 10, 184 },
- { 13, 10, 433 }, { 7, 10, 935 }, { 12, 10, 186 }, { 12, 10, 292 },
- { 14, 10, 100 }, { 18, 10, 70 }, { 8, 0, 363 }, { 14, 0, 175 },
- { 11, 10, 402 }, { 12, 10, 109 }, { 12, 10, 431 }, { 13, 10, 179 },
- { 13, 10, 206 }, { 14, 10, 217 }, { 16, 10, 3 }, { 20, 10, 53 },
- { 5, 10, 886 }, { 6, 10, 46 }, { 6, 10, 1790 }, { 7, 10, 14 },
- { 7, 10, 732 }, { 7, 10, 1654 }, { 8, 10, 95 }, { 8, 10, 327 },
- { 8, 10, 616 }, { 9, 10, 892 }, { 10, 10, 598 }, { 10, 10, 769 },
- { 11, 10, 134 }, { 11, 10, 747 }, { 12, 10, 378 }, { 14, 10, 97 },
- { 8, 0, 666 }, { 7, 0, 1675 }, { 6, 0, 655 }, { 6, 0, 1600 },
- { 7, 0, 808 }, { 5, 10, 1021 }, { 4, 11, 28 }, { 5, 11, 440 },
- { 7, 11, 248 }, { 11, 11, 833 }, { 12, 11, 344 }, { 6, 11, 1654 },
- { 4, 0, 280 }, { 12, 0, 54 }, { 4, 0, 421 }, { 5, 0, 548 },
- { 4, 10, 153 }, { 6, 11, 339 }, { 7, 11, 923 }, { 5, 11, 853 },
- { 5, 10, 798 }, { 4, 10, 587 }, { 6, 11, 249 }, { 7, 11, 1234 },
- { 11, 11, 573 }, { 6, 10, 598 }, { 7, 10, 42 }, { 8, 10, 695 },
- { 10, 10, 212 }, { 11, 10, 158 }, { 14, 10, 196 }, { 17, 10, 85 },
- { 7, 0, 249 }, { 5, 10, 957 }, { 5, 10, 1008 }, { 4, 10, 129 },
- { 7, 10, 465 }, { 6, 0, 254 }, { 7, 0, 842 }, { 7, 0, 1659 },
- { 9, 0, 109 }, { 10, 0, 103 }, { 7, 10, 908 }, { 7, 10, 1201 },
- { 9, 10, 755 }, { 11, 10, 906 }, { 12, 10, 527 }, { 18, 10, 7 },
- { 5, 0, 262 }, { 8, 10, 450 }, { 16, 0, 1 }, { 10, 11, 201 },
- { 14, 11, 319 }, { 7, 11, 49 }, { 7, 11, 392 }, { 8, 11, 20 },
- { 8, 11, 172 }, { 8, 11, 690 }, { 9, 11, 383 }, { 9, 11, 845 },
- { 10, 11, 48 }, { 11, 11, 293 }, { 11, 11, 832 }, { 11, 11, 920 },
- { 13, 11, 221 }, { 5, 11, 858 }, { 5, 11, 992 }, { 6, 0, 805 },
- { 11, 10, 1003 }, { 6, 0, 1630 }, { 6, 11, 307 }, { 7, 11, 1512 },
- { 7, 11, 1794 }, { 6, 11, 268 }, { 9, 11, 62 }, { 7, 10, 1868 },
- { 5, 0, 671 }, { 4, 0, 989 }, { 8, 0, 972 }, { 8, 0, 998 },
- { 4, 11, 423 }, { 4, 0, 889 }, { 7, 0, 1382 }, { 7, 0, 1910 },
- { 7, 10, 965 }, { 7, 10, 1460 }, { 7, 10, 1604 }, { 4, 0, 627 },
- { 5, 0, 775 }, { 10, 11, 106 }, { 6, 11, 348 }, { 7, 0, 202 },
- { 11, 0, 362 }, { 11, 0, 948 }, { 12, 0, 388 }, { 10, 11, 771 },
- { 6, 11, 613 }, { 8, 11, 223 }, { 6, 0, 560 }, { 7, 0, 451 },
- { 8, 0, 389 }, { 12, 0, 490 }, { 13, 0, 16 }, { 13, 0, 215 },
- { 13, 0, 351 }, { 18, 0, 132 }, { 19, 0, 125 }, { 7, 0, 841 },
- { 8, 0, 566 }, { 8, 0, 938 }, { 4, 11, 670 }, { 5, 0, 912 },
- { 6, 0, 1695 }, { 12, 11, 55 }, { 9, 11, 40 }, { 11, 11, 136 },
- { 7, 0, 1361 }, { 7, 10, 982 }, { 10, 10, 32 }, { 15, 10, 56 },
- { 11, 11, 259 }, { 12, 11, 270 }, { 5, 0, 236 }, { 6, 0, 572 },
- { 8, 0, 492 }, { 11, 0, 618 }, { 16, 0, 56 }, { 8, 11, 572 },
- { 9, 11, 310 }, { 9, 11, 682 }, { 9, 11, 698 }, { 6, 0, 1854 },
- { 5, 0, 190 }, { 8, 0, 318 }, { 5, 10, 435 }, { 7, 0, 1376 },
- { 4, 11, 296 }, { 6, 11, 352 }, { 7, 11, 401 }, { 7, 11, 1410 },
- { 7, 11, 1594 }, { 7, 11, 1674 }, { 8, 11, 63 }, { 8, 11, 660 },
- { 9, 11, 74 }, { 7, 0, 349 }, { 5, 10, 85 }, { 6, 10, 419 },
- { 7, 10, 305 }, { 7, 10, 361 }, { 7, 10, 1337 }, { 8, 10, 71 },
- { 12, 10, 519 }, { 4, 11, 139 }, { 4, 11, 388 }, { 12, 11, 188 },
- { 6, 0, 1972 }, { 6, 0, 2013 }, { 8, 0, 951 }, { 10, 0, 947 },
- { 10, 0, 974 }, { 10, 0, 1018 }, { 14, 0, 476 }, { 12, 10, 688 },
- { 7, 10, 740 }, { 5, 10, 691 }, { 7, 10, 345 }, { 9, 10, 94 },
- { 12, 10, 169 }, { 9, 0, 344 }, { 5, 10, 183 }, { 6, 10, 582 },
- { 10, 10, 679 }, { 12, 10, 435 }, { 7, 10, 511 }, { 4, 0, 850 },
- { 8, 11, 441 }, { 10, 11, 314 }, { 15, 11, 3 }, { 7, 10, 1993 },
- { 8, 10, 684 }, { 4, 11, 747 }, { 6, 11, 290 }, { 6, 10, 583 },
- { 7, 11, 649 }, { 7, 11, 1479 }, { 7, 11, 1583 }, { 5, 11, 232 },
- { 5, 10, 704 }, { 6, 0, 910 }, { 4, 10, 179 }, { 5, 10, 198 },
- { 5, 10, 697 }, { 7, 10, 347 }, { 7, 10, 971 }, { 8, 10, 181 },
- { 10, 10, 711 }, { 8, 11, 525 }, { 14, 0, 19 }, { 14, 0, 28 },
- { 16, 0, 29 }, { 7, 0, 85 }, { 7, 0, 247 }, { 8, 0, 585 },
- { 10, 0, 163 }, { 4, 0, 487 }, { 7, 11, 472 }, { 7, 11, 1801 },
- { 10, 11, 748 }, { 13, 11, 458 }, { 4, 10, 243 }, { 5, 10, 203 },
- { 7, 10, 19 }, { 7, 10, 71 }, { 7, 10, 113 }, { 10, 10, 405 },
- { 11, 10, 357 }, { 14, 10, 240 }, { 7, 10, 1450 }, { 11, 10, 99 },
- { 4, 11, 425 }, { 10, 0, 145 }, { 19, 0, 83 }, { 6, 10, 492 },
- { 9, 11, 247 }, { 4, 0, 1013 }, { 6, 0, 2033 }, { 5, 10, 134 },
- { 6, 10, 408 }, { 6, 10, 495 }, { 7, 10, 1593 }, { 7, 0, 1922 },
- { 6, 11, 1768 }, { 4, 0, 124 }, { 10, 0, 457 }, { 11, 0, 121 },
- { 11, 0, 169 }, { 11, 0, 870 }, { 11, 0, 874 }, { 12, 0, 214 },
- { 14, 0, 187 }, { 15, 0, 77 }, { 5, 0, 557 }, { 7, 0, 1457 },
- { 11, 0, 66 }, { 5, 11, 943 }, { 6, 11, 1779 }, { 14, 10, 4 },
- { 4, 10, 248 }, { 4, 10, 665 }, { 7, 10, 137 }, { 9, 10, 349 },
- { 7, 0, 1193 }, { 5, 11, 245 }, { 6, 11, 576 }, { 7, 11, 582 },
- { 8, 11, 225 }, { 16, 0, 82 }, { 7, 10, 1270 }, { 11, 10, 612 },
- { 5, 0, 454 }, { 10, 0, 352 }, { 10, 11, 352 }, { 18, 0, 57 },
- { 5, 10, 371 }, { 7, 10, 563 }, { 7, 0, 1333 }, { 6, 0, 107 },
- { 7, 0, 638 }, { 7, 0, 1632 }, { 9, 0, 396 }, { 6, 11, 610 },
- { 5, 0, 370 }, { 6, 0, 1756 }, { 4, 10, 374 }, { 7, 10, 547 },
- { 7, 10, 1700 }, { 7, 10, 1833 }, { 11, 10, 858 }, { 5, 0, 204 },
- { 6, 0, 1305 }, { 9, 10, 311 }, { 13, 10, 42 }, { 5, 0, 970 },
- { 6, 0, 1706 }, { 6, 10, 1647 }, { 7, 10, 1552 }, { 7, 10, 2010 },
- { 9, 10, 494 }, { 9, 10, 509 }, { 13, 11, 455 }, { 15, 11, 99 },
- { 15, 11, 129 }, { 16, 11, 68 }, { 7, 0, 3 }, { 4, 0, 35 },
- { 5, 0, 121 }, { 5, 0, 483 }, { 5, 0, 685 }, { 6, 0, 489 },
- { 6, 0, 782 }, { 6, 0, 1032 }, { 7, 0, 1204 }, { 8, 0, 394 },
- { 4, 0, 921 }, { 5, 0, 1007 }, { 8, 11, 360 }, { 10, 11, 63 },
- { 7, 0, 1696 }, { 6, 0, 1519 }, { 4, 11, 443 }, { 7, 11, 944 },
- { 6, 10, 123 }, { 7, 10, 214 }, { 9, 10, 728 }, { 10, 10, 157 },
- { 11, 10, 346 }, { 11, 10, 662 }, { 15, 10, 106 }, { 9, 0, 981 },
- { 7, 10, 1435 }, { 6, 0, 1072 }, { 4, 0, 712 }, { 6, 0, 1629 },
- { 6, 0, 728 }, { 4, 11, 298 }, { 9, 11, 483 }, { 6, 0, 1177 },
- { 6, 0, 1271 }, { 5, 11, 164 }, { 7, 11, 121 }, { 14, 11, 189 },
- { 7, 0, 1608 }, { 4, 10, 707 }, { 5, 10, 588 }, { 6, 10, 393 },
- { 13, 10, 106 }, { 18, 10, 49 }, { 19, 10, 41 }, { 23, 0, 16 },
- { 23, 11, 16 }, { 6, 10, 211 }, { 7, 10, 1690 }, { 11, 10, 486 },
- { 12, 10, 369 }, { 5, 0, 485 }, { 19, 11, 15 }, { 21, 11, 27 },
- { 4, 11, 172 }, { 9, 11, 611 }, { 10, 11, 436 }, { 12, 11, 673 },
- { 13, 11, 255 }, { 5, 11, 844 }, { 10, 11, 484 }, { 11, 11, 754 },
- { 12, 11, 457 }, { 14, 11, 171 }, { 14, 11, 389 }, { 18, 11, 153 },
- { 4, 0, 285 }, { 5, 0, 27 }, { 5, 0, 317 }, { 6, 0, 301 },
- { 7, 0, 7 }, { 8, 0, 153 }, { 10, 0, 766 }, { 11, 0, 468 },
- { 12, 0, 467 }, { 13, 0, 143 }, { 6, 0, 1462 }, { 9, 11, 263 },
- { 10, 11, 147 }, { 10, 11, 492 }, { 5, 11, 537 }, { 6, 0, 1945 },
- { 6, 0, 1986 }, { 6, 0, 1991 }, { 6, 0, 2038 }, { 6, 10, 219 },
- { 9, 11, 842 }, { 14, 0, 52 }, { 17, 0, 50 }, { 5, 10, 582 },
- { 6, 10, 1646 }, { 7, 10, 99 }, { 7, 10, 1962 }, { 7, 10, 1986 },
- { 8, 10, 515 }, { 8, 10, 773 }, { 9, 10, 23 }, { 9, 10, 491 },
- { 12, 10, 620 }, { 14, 10, 93 }, { 10, 11, 97 }, { 20, 0, 21 },
- { 20, 0, 44 }, { 5, 10, 851 }, { 8, 0, 819 }, { 11, 0, 917 },
- { 5, 11, 230 }, { 5, 11, 392 }, { 6, 11, 420 }, { 8, 10, 762 },
- { 8, 10, 812 }, { 9, 11, 568 }, { 9, 10, 910 }, { 12, 11, 612 },
- { 7, 0, 784 }, { 15, 0, 135 }, { 15, 11, 135 }, { 10, 0, 454 },
- { 12, 0, 324 }, { 4, 11, 0 }, { 5, 11, 41 }, { 7, 11, 1459 },
- { 7, 11, 1469 }, { 7, 11, 1618 }, { 7, 11, 1859 }, { 9, 11, 549 },
- { 11, 11, 905 }, { 4, 10, 98 }, { 7, 10, 1365 }, { 9, 10, 422 },
- { 9, 10, 670 }, { 10, 10, 775 }, { 11, 10, 210 }, { 13, 10, 26 },
- { 13, 10, 457 }, { 13, 10, 476 }, { 6, 0, 1719 }, { 6, 0, 1735 },
- { 7, 0, 2016 }, { 7, 0, 2020 }, { 8, 0, 837 }, { 9, 0, 852 },
- { 5, 11, 696 }, { 7, 0, 852 }, { 4, 0, 952 }, { 6, 10, 1730 },
- { 4, 11, 771 }, { 10, 0, 568 }, { 9, 0, 448 }, { 11, 0, 146 },
- { 8, 0, 67 }, { 10, 0, 419 }, { 5, 11, 921 }, { 9, 10, 147 },
- { 6, 0, 1826 }, { 10, 0, 657 }, { 14, 0, 297 }, { 14, 0, 361 },
- { 6, 0, 666 }, { 6, 0, 767 }, { 6, 0, 1542 }, { 11, 0, 729 },
- { 6, 11, 180 }, { 7, 11, 1137 }, { 8, 11, 751 }, { 11, 11, 805 },
- { 4, 11, 183 }, { 7, 11, 271 }, { 11, 11, 824 }, { 11, 11, 952 },
- { 13, 11, 278 }, { 13, 11, 339 }, { 13, 11, 482 }, { 14, 11, 424 },
- { 20, 11, 99 }, { 4, 0, 669 }, { 5, 11, 477 }, { 5, 11, 596 },
- { 6, 11, 505 }, { 7, 11, 1221 }, { 11, 11, 907 }, { 12, 11, 209 },
- { 13, 11, 214 }, { 7, 11, 1215 }, { 5, 0, 402 }, { 6, 10, 30 },
- { 11, 10, 56 }, { 11, 10, 305 }, { 7, 11, 564 }, { 14, 11, 168 },
- { 11, 0, 152 }, { 7, 0, 912 }, { 7, 10, 1614 }, { 4, 10, 150 },
- { 5, 10, 303 }, { 6, 10, 327 }, { 7, 0, 320 }, { 8, 0, 51 },
- { 9, 0, 868 }, { 10, 0, 833 }, { 12, 0, 481 }, { 12, 0, 570 },
- { 20, 0, 106 }, { 4, 0, 445 }, { 7, 11, 274 }, { 11, 11, 263 },
- { 11, 11, 479 }, { 11, 11, 507 }, { 12, 11, 277 }, { 10, 0, 555 },
- { 11, 0, 308 }, { 19, 0, 95 }, { 6, 11, 1645 }, { 8, 10, 192 },
- { 10, 10, 78 }, { 13, 10, 359 }, { 7, 10, 786 }, { 6, 11, 92 },
- { 6, 11, 188 }, { 7, 11, 1269 }, { 7, 11, 1524 }, { 7, 11, 1876 },
- { 10, 11, 228 }, { 11, 11, 1020 }, { 4, 11, 459 }, { 5, 11, 966 },
- { 11, 0, 386 }, { 6, 10, 1638 }, { 7, 10, 79 }, { 7, 10, 496 },
- { 9, 10, 138 }, { 10, 10, 336 }, { 12, 10, 412 }, { 12, 10, 440 },
- { 14, 10, 305 }, { 5, 0, 239 }, { 7, 0, 83 }, { 7, 0, 1990 },
- { 8, 0, 130 }, { 11, 0, 720 }, { 10, 11, 709 }, { 4, 0, 143 },
- { 5, 0, 550 }, { 5, 0, 752 }, { 5, 0, 123 }, { 6, 0, 530 },
- { 7, 0, 348 }, { 7, 0, 1419 }, { 7, 0, 2024 }, { 6, 11, 18 },
- { 7, 11, 179 }, { 7, 11, 721 }, { 7, 11, 932 }, { 8, 11, 548 },
- { 8, 11, 757 }, { 9, 11, 54 }, { 9, 11, 65 }, { 9, 11, 532 },
- { 9, 11, 844 }, { 10, 11, 113 }, { 10, 11, 117 }, { 10, 11, 236 },
- { 10, 11, 315 }, { 10, 11, 430 }, { 10, 11, 798 }, { 11, 11, 153 },
- { 11, 11, 351 }, { 11, 11, 375 }, { 12, 11, 78 }, { 12, 11, 151 },
- { 12, 11, 392 }, { 14, 11, 248 }, { 15, 11, 23 }, { 7, 10, 204 },
- { 7, 10, 415 }, { 8, 10, 42 }, { 10, 10, 85 }, { 11, 10, 564 },
- { 6, 0, 958 }, { 5, 11, 965 }, { 4, 0, 210 }, { 7, 11, 1429 },
- { 10, 11, 480 }, { 6, 11, 182 }, { 11, 11, 345 }, { 10, 11, 65 },
- { 10, 11, 488 }, { 10, 11, 497 }, { 4, 10, 3 }, { 5, 10, 247 },
- { 5, 10, 644 }, { 7, 10, 744 }, { 7, 10, 1207 }, { 7, 10, 1225 },
- { 7, 10, 1909 }, { 18, 10, 147 }, { 4, 0, 430 }, { 5, 10, 285 },
- { 9, 10, 67 }, { 13, 10, 473 }, { 15, 10, 82 }, { 16, 11, 16 },
- { 7, 11, 1162 }, { 9, 11, 588 }, { 10, 11, 260 }, { 23, 10, 8 },
- { 5, 0, 213 }, { 10, 0, 7 }, { 7, 0, 801 }, { 6, 11, 1786 },
- { 7, 11, 308 }, { 6, 0, 936 }, { 6, 0, 1289 }, { 5, 0, 108 },
- { 4, 0, 885 }, { 5, 0, 219 }, { 11, 0, 587 }, { 4, 0, 193 },
- { 5, 0, 916 }, { 6, 0, 1041 }, { 7, 0, 364 }, { 10, 0, 398 },
- { 10, 0, 726 }, { 11, 0, 317 }, { 11, 0, 626 }, { 12, 0, 142 },
- { 12, 0, 288 }, { 12, 0, 678 }, { 13, 0, 313 }, { 15, 0, 113 },
- { 18, 0, 114 }, { 7, 0, 1165 }, { 6, 0, 241 }, { 9, 0, 342 },
- { 10, 0, 729 }, { 11, 0, 284 }, { 11, 0, 445 }, { 11, 0, 651 },
- { 11, 0, 863 }, { 13, 0, 398 }, { 18, 0, 99 }, { 7, 0, 907 },
- { 8, 0, 832 }, { 9, 0, 303 }, { 4, 10, 29 }, { 6, 10, 532 },
- { 7, 10, 1628 }, { 7, 10, 1648 }, { 9, 10, 350 }, { 10, 10, 433 },
- { 11, 10, 97 }, { 11, 10, 557 }, { 11, 10, 745 }, { 12, 10, 289 },
- { 12, 10, 335 }, { 12, 10, 348 }, { 12, 10, 606 }, { 13, 10, 116 },
- { 13, 10, 233 }, { 13, 10, 466 }, { 14, 10, 181 }, { 14, 10, 209 },
- { 14, 10, 232 }, { 14, 10, 236 }, { 14, 10, 300 }, { 16, 10, 41 },
- { 20, 10, 97 }, { 7, 11, 423 }, { 7, 10, 1692 }, { 8, 11, 588 },
- { 6, 0, 931 }, { 6, 0, 1454 }, { 5, 10, 501 }, { 7, 10, 1704 },
- { 9, 10, 553 }, { 11, 10, 520 }, { 12, 10, 557 }, { 13, 10, 249 },
- { 8, 11, 287 }, { 4, 0, 562 }, { 9, 0, 254 }, { 11, 0, 879 },
- { 4, 0, 786 }, { 14, 11, 32 }, { 18, 11, 85 }, { 20, 11, 2 },
- { 24, 11, 16 }, { 7, 0, 1294 }, { 7, 11, 723 }, { 7, 11, 1135 },
- { 6, 0, 216 }, { 7, 0, 901 }, { 7, 0, 1343 }, { 8, 0, 493 },
- { 6, 11, 403 }, { 7, 11, 719 }, { 8, 11, 809 }, { 8, 11, 834 },
- { 5, 11, 210 }, { 6, 11, 213 }, { 7, 11, 60 }, { 10, 11, 364 },
- { 11, 11, 135 }, { 7, 0, 341 }, { 11, 0, 219 }, { 5, 11, 607 },
- { 8, 11, 326 }, { 8, 11, 490 }, { 4, 11, 701 }, { 5, 11, 472 },
- { 5, 11, 639 }, { 7, 11, 1249 }, { 9, 11, 758 }, { 11, 11, 896 },
- { 7, 11, 380 }, { 7, 11, 1947 }, { 11, 0, 130 }, { 7, 0, 1734 },
- { 10, 0, 115 }, { 11, 0, 420 }, { 12, 0, 154 }, { 13, 0, 404 },
- { 14, 0, 346 }, { 15, 0, 54 }, { 6, 10, 129 }, { 4, 11, 386 },
- { 7, 11, 41 }, { 8, 11, 405 }, { 9, 11, 497 }, { 11, 11, 110 },
- { 11, 11, 360 }, { 15, 11, 37 }, { 16, 11, 84 }, { 13, 11, 282 },
- { 5, 11, 46 }, { 7, 11, 1452 }, { 7, 11, 1480 }, { 8, 11, 634 },
- { 12, 11, 472 }, { 4, 11, 524 }, { 8, 11, 810 }, { 10, 11, 238 },
- { 13, 11, 33 }, { 5, 0, 604 }, { 5, 0, 1011 }, { 8, 0, 701 },
- { 8, 0, 856 }, { 8, 0, 858 }, { 8, 0, 879 }, { 12, 0, 702 },
- { 14, 0, 447 }, { 4, 0, 54 }, { 5, 0, 666 }, { 7, 0, 1039 },
- { 7, 0, 1130 }, { 9, 0, 195 }, { 10, 0, 302 }, { 4, 10, 25 },
- { 5, 10, 60 }, { 6, 10, 504 }, { 7, 10, 614 }, { 7, 10, 1155 },
- { 12, 10, 0 }, { 7, 10, 1248 }, { 11, 10, 621 }, { 11, 10, 702 },
- { 5, 11, 997 }, { 9, 10, 321 }, { 6, 0, 1669 }, { 6, 0, 1791 },
- { 4, 10, 379 }, { 7, 10, 1397 }, { 10, 11, 372 }, { 5, 11, 782 },
- { 5, 11, 829 }, { 6, 11, 1738 }, { 7, 0, 1228 }, { 4, 10, 118 },
- { 6, 10, 274 }, { 6, 10, 361 }, { 7, 10, 75 }, { 13, 10, 441 },
- { 4, 0, 623 }, { 9, 11, 279 }, { 10, 11, 407 }, { 14, 11, 84 },
- { 22, 11, 18 }, { 9, 10, 841 }, { 7, 0, 798 }, { 12, 10, 693 },
- { 5, 10, 314 }, { 6, 10, 221 }, { 7, 10, 419 }, { 10, 10, 650 },
- { 11, 10, 396 }, { 12, 10, 156 }, { 13, 10, 369 }, { 14, 10, 333 },
- { 17, 10, 47 }, { 7, 11, 1372 }, { 7, 0, 122 }, { 9, 0, 259 },
- { 10, 0, 84 }, { 11, 0, 470 }, { 12, 0, 541 }, { 13, 0, 379 },
- { 6, 0, 837 }, { 8, 0, 1013 }, { 4, 11, 78 }, { 5, 11, 96 },
- { 5, 11, 182 }, { 7, 11, 1724 }, { 7, 11, 1825 }, { 10, 11, 394 },
- { 10, 11, 471 }, { 11, 11, 532 }, { 14, 11, 340 }, { 17, 11, 88 },
- { 6, 0, 577 }, { 7, 11, 1964 }, { 4, 10, 913 }, { 6, 0, 460 },
- { 8, 0, 891 }, { 10, 0, 901 }, { 10, 0, 919 }, { 10, 0, 932 },
- { 12, 0, 715 }, { 12, 0, 728 }, { 12, 0, 777 }, { 14, 0, 457 },
- { 16, 0, 103 }, { 5, 0, 82 }, { 5, 0, 131 }, { 7, 0, 1755 },
- { 8, 0, 31 }, { 9, 0, 168 }, { 9, 0, 764 }, { 11, 0, 869 },
- { 8, 10, 475 }, { 6, 0, 605 }, { 5, 10, 1016 }, { 9, 11, 601 },
- { 9, 11, 619 }, { 10, 11, 505 }, { 10, 11, 732 }, { 11, 11, 355 },
- { 12, 11, 139 }, { 7, 10, 602 }, { 8, 10, 179 }, { 10, 10, 781 },
- { 12, 10, 126 }, { 6, 0, 1246 }, { 6, 10, 329 }, { 10, 10, 111 },
- { 6, 11, 215 }, { 7, 11, 1028 }, { 7, 11, 1473 }, { 7, 11, 1721 },
- { 9, 11, 424 }, { 10, 11, 779 }, { 5, 0, 278 }, { 9, 0, 68 },
- { 6, 0, 932 }, { 6, 0, 1084 }, { 16, 0, 86 }, { 4, 0, 163 },
- { 5, 0, 201 }, { 5, 0, 307 }, { 5, 0, 310 }, { 6, 0, 335 },
- { 7, 0, 284 }, { 7, 0, 1660 }, { 8, 0, 165 }, { 8, 0, 781 },
- { 6, 0, 707 }, { 6, 0, 33 }, { 7, 0, 1244 }, { 5, 10, 821 },
- { 6, 11, 67 }, { 6, 10, 1687 }, { 7, 11, 258 }, { 7, 11, 1630 },
- { 9, 11, 354 }, { 9, 11, 675 }, { 10, 11, 830 }, { 14, 11, 80 },
- { 17, 11, 80 }, { 6, 11, 141 }, { 7, 11, 225 }, { 9, 11, 59 },
- { 9, 11, 607 }, { 10, 11, 312 }, { 11, 11, 687 }, { 12, 11, 555 },
- { 13, 11, 373 }, { 13, 11, 494 }, { 20, 11, 58 }, { 6, 0, 1113 },
- { 9, 0, 388 }, { 5, 10, 71 }, { 7, 10, 1407 }, { 9, 10, 704 },
- { 10, 10, 261 }, { 10, 10, 619 }, { 11, 10, 547 }, { 11, 10, 619 },
- { 15, 10, 157 }, { 7, 0, 1953 }, { 8, 0, 720 }, { 10, 0, 203 },
- { 7, 10, 2008 }, { 9, 10, 337 }, { 10, 10, 517 }, { 6, 0, 326 },
- { 7, 0, 677 }, { 9, 0, 425 }, { 11, 11, 81 }, { 7, 0, 1316 },
- { 7, 0, 1412 }, { 7, 0, 1839 }, { 9, 0, 589 }, { 11, 0, 241 },
- { 11, 0, 676 }, { 11, 0, 811 }, { 11, 0, 891 }, { 12, 0, 140 },
- { 12, 0, 346 }, { 12, 0, 479 }, { 13, 0, 140 }, { 13, 0, 381 },
- { 14, 0, 188 }, { 18, 0, 30 }, { 20, 0, 108 }, { 5, 0, 416 },
- { 6, 10, 86 }, { 6, 10, 603 }, { 7, 10, 292 }, { 7, 10, 561 },
- { 8, 10, 257 }, { 8, 10, 382 }, { 9, 10, 721 }, { 9, 10, 778 },
- { 11, 10, 581 }, { 12, 10, 466 }, { 4, 10, 486 }, { 5, 10, 491 },
- { 6, 0, 1300 }, { 4, 10, 72 }, { 7, 0, 847 }, { 6, 10, 265 },
- { 7, 11, 430 }, { 11, 11, 46 }, { 5, 11, 602 }, { 6, 11, 106 },
- { 7, 11, 1786 }, { 7, 11, 1821 }, { 7, 11, 2018 }, { 9, 11, 418 },
- { 9, 11, 763 }, { 5, 0, 358 }, { 7, 0, 535 }, { 7, 0, 1184 },
- { 10, 0, 662 }, { 13, 0, 212 }, { 13, 0, 304 }, { 13, 0, 333 },
- { 17, 0, 98 }, { 5, 11, 65 }, { 6, 11, 416 }, { 7, 11, 1720 },
- { 7, 11, 1924 }, { 8, 11, 677 }, { 10, 11, 109 }, { 11, 11, 14 },
- { 11, 11, 70 }, { 11, 11, 569 }, { 11, 11, 735 }, { 15, 11, 153 },
- { 20, 11, 80 }, { 6, 0, 1823 }, { 8, 0, 839 }, { 8, 0, 852 },
- { 8, 0, 903 }, { 10, 0, 940 }, { 12, 0, 707 }, { 12, 0, 775 },
- { 7, 11, 1229 }, { 6, 0, 1522 }, { 12, 0, 654 }, { 8, 11, 595 },
- { 11, 0, 163 }, { 13, 0, 314 }, { 4, 0, 978 }, { 4, 0, 601 },
- { 6, 0, 2035 }, { 9, 10, 234 }, { 5, 10, 815 }, { 6, 10, 1688 },
- { 6, 10, 1755 }, { 5, 0, 946 }, { 8, 0, 434 }, { 6, 10, 197 },
- { 8, 10, 205 }, { 7, 0, 411 }, { 7, 0, 590 }, { 8, 0, 631 },
- { 9, 0, 323 }, { 10, 0, 355 }, { 11, 0, 491 }, { 12, 0, 143 },
- { 12, 0, 402 }, { 13, 0, 73 }, { 14, 0, 408 }, { 15, 0, 107 },
- { 18, 0, 71 }, { 7, 0, 1467 }, { 8, 0, 328 }, { 10, 0, 544 },
- { 11, 0, 955 }, { 12, 0, 13 }, { 13, 0, 320 }, { 17, 0, 83 },
- { 14, 0, 410 }, { 11, 0, 511 }, { 13, 0, 394 }, { 14, 0, 298 },
- { 14, 0, 318 }, { 18, 0, 103 }, { 6, 10, 452 }, { 7, 10, 312 },
- { 10, 10, 219 }, { 10, 10, 589 }, { 4, 10, 333 }, { 9, 10, 176 },
- { 12, 10, 353 }, { 13, 10, 187 }, { 7, 11, 329 }, { 4, 11, 469 },
- { 5, 0, 835 }, { 6, 0, 483 }, { 6, 11, 1743 }, { 5, 11, 929 },
- { 6, 11, 340 }, { 8, 11, 376 }, { 8, 11, 807 }, { 6, 10, 1685 },
- { 4, 0, 677 }, { 5, 11, 218 }, { 7, 11, 1610 }, { 10, 11, 83 },
- { 5, 11, 571 }, { 7, 11, 1842 }, { 4, 11, 455 }, { 9, 0, 70 },
- { 7, 0, 1405 }, { 7, 10, 135 }, { 8, 10, 7 }, { 8, 10, 62 },
- { 9, 10, 243 }, { 10, 10, 658 }, { 10, 10, 697 }, { 11, 10, 456 },
- { 11, 10, 756 }, { 9, 10, 395 }, { 10, 10, 79 }, { 9, 0, 108 },
- { 6, 11, 161 }, { 7, 11, 372 }, { 9, 11, 597 }, { 4, 11, 349 },
- { 4, 0, 777 }, { 4, 0, 331 }, { 7, 10, 631 }, { 5, 0, 747 },
- { 6, 11, 432 }, { 6, 11, 608 }, { 11, 11, 322 }, { 10, 10, 835 },
- { 5, 11, 468 }, { 7, 11, 1809 }, { 10, 11, 325 }, { 11, 11, 856 },
- { 12, 11, 345 }, { 15, 11, 104 }, { 5, 11, 223 }, { 7, 10, 406 },
- { 7, 10, 459 }, { 8, 10, 606 }, { 11, 10, 726 }, { 4, 11, 566 },
- { 14, 0, 68 }, { 4, 11, 59 }, { 7, 11, 1394 }, { 6, 11, 436 },
- { 11, 11, 481 }, { 4, 11, 48 }, { 5, 11, 271 }, { 7, 11, 953 },
- { 11, 11, 170 }, { 5, 11, 610 }, { 8, 11, 457 }, { 5, 11, 755 },
- { 7, 11, 1217 }, { 5, 10, 612 }, { 4, 11, 197 }, { 4, 0, 505 },
- { 4, 10, 372 }, { 7, 10, 482 }, { 8, 10, 158 }, { 9, 10, 602 },
- { 9, 10, 615 }, { 10, 10, 245 }, { 10, 10, 678 }, { 10, 10, 744 },
- { 11, 10, 248 }, { 11, 10, 806 }, { 5, 0, 326 }, { 5, 10, 854 },
- { 7, 10, 1991 }, { 4, 0, 691 }, { 18, 0, 16 }, { 6, 0, 628 },
- { 9, 0, 35 }, { 10, 0, 680 }, { 10, 0, 793 }, { 11, 0, 364 },
- { 13, 0, 357 }, { 15, 0, 164 }, { 10, 0, 654 }, { 6, 0, 32 },
- { 7, 0, 385 }, { 7, 0, 757 }, { 7, 0, 1916 }, { 8, 0, 37 },
- { 8, 0, 94 }, { 8, 0, 711 }, { 9, 0, 541 }, { 10, 0, 162 },
- { 10, 0, 795 }, { 11, 0, 989 }, { 11, 0, 1010 }, { 12, 0, 14 },
- { 14, 0, 308 }, { 5, 11, 217 }, { 6, 0, 152 }, { 6, 0, 349 },
- { 6, 0, 1682 }, { 7, 0, 1252 }, { 8, 0, 112 }, { 9, 0, 435 },
- { 9, 0, 668 }, { 10, 0, 290 }, { 10, 0, 319 }, { 10, 0, 815 },
- { 11, 0, 180 }, { 11, 0, 837 }, { 12, 0, 240 }, { 13, 0, 152 },
- { 13, 0, 219 }, { 14, 0, 158 }, { 4, 0, 581 }, { 6, 0, 726 },
- { 5, 10, 195 }, { 7, 10, 1685 }, { 6, 0, 126 }, { 7, 0, 573 },
- { 8, 0, 397 }, { 14, 0, 44 }, { 10, 0, 89 }, { 7, 10, 1997 },
- { 8, 10, 730 }, { 11, 10, 1006 }, { 6, 0, 1531 }, { 6, 0, 1167 },
- { 5, 0, 926 }, { 12, 0, 203 }, { 5, 10, 751 }, { 4, 11, 165 },
- { 7, 11, 1398 }, { 7, 11, 1829 }, { 7, 0, 1232 }, { 9, 0, 531 },
- { 7, 10, 821 }, { 6, 0, 943 }, { 5, 0, 670 }, { 4, 0, 880 },
- { 11, 0, 231 }, { 6, 0, 1617 }, { 7, 0, 1957 }, { 5, 11, 9 },
- { 7, 11, 297 }, { 7, 11, 966 }, { 12, 11, 306 }, { 6, 0, 975 },
- { 6, 0, 985 }, { 5, 10, 950 }, { 5, 10, 994 }, { 6, 10, 351 },
- { 12, 11, 21 }, { 23, 11, 7 }, { 5, 11, 146 }, { 6, 11, 411 },
- { 10, 11, 721 }, { 7, 0, 242 }, { 7, 0, 1942 }, { 6, 11, 177 },
- { 7, 11, 467 }, { 5, 0, 421 }, { 7, 10, 47 }, { 9, 10, 684 },
- { 5, 0, 834 }, { 7, 0, 1202 }, { 8, 0, 14 }, { 9, 0, 481 },
- { 9, 0, 880 }, { 10, 0, 465 }, { 6, 0, 688 }, { 9, 0, 834 },
- { 4, 10, 350 }, { 4, 0, 855 }, { 4, 0, 357 }, { 6, 0, 172 },
- { 7, 0, 143 }, { 9, 0, 413 }, { 5, 11, 200 }, { 4, 0, 590 },
- { 7, 10, 1812 }, { 13, 10, 259 }, { 13, 10, 356 }, { 14, 10, 242 },
- { 19, 10, 114 }, { 5, 10, 967 }, { 11, 0, 114 }, { 4, 10, 473 },
- { 7, 10, 623 }, { 8, 10, 808 }, { 9, 10, 871 }, { 9, 10, 893 },
- { 11, 10, 431 }, { 12, 10, 112 }, { 12, 10, 217 }, { 12, 10, 243 },
- { 12, 10, 562 }, { 12, 10, 663 }, { 12, 10, 683 }, { 13, 10, 141 },
- { 13, 10, 197 }, { 13, 10, 227 }, { 13, 10, 406 }, { 13, 10, 487 },
- { 14, 10, 156 }, { 14, 10, 203 }, { 14, 10, 224 }, { 14, 10, 256 },
- { 18, 10, 58 }, { 22, 10, 0 }, { 10, 10, 286 }, { 4, 10, 222 },
- { 7, 10, 286 }, { 8, 10, 629 }, { 5, 0, 169 }, { 7, 0, 333 },
- { 8, 0, 45 }, { 6, 11, 481 }, { 4, 0, 198 }, { 4, 0, 24 },
- { 5, 0, 140 }, { 5, 0, 185 }, { 7, 0, 1500 }, { 11, 0, 565 },
- { 11, 0, 838 }, { 4, 11, 84 }, { 7, 11, 1482 }, { 10, 11, 76 },
- { 10, 11, 142 }, { 5, 0, 585 }, { 13, 10, 306 }, { 5, 11, 1015 },
- { 4, 11, 315 }, { 5, 11, 507 }, { 7, 11, 1370 }, { 8, 10, 146 },
- { 6, 0, 691 }, { 6, 0, 1503 }, { 4, 0, 334 }, { 5, 0, 593 },
- { 4, 10, 465 }, { 7, 10, 1663 }, { 14, 11, 173 }, { 7, 0, 913 },
- { 12, 0, 116 }, { 6, 11, 1722 }, { 6, 0, 1360 }, { 4, 0, 802 },
- { 8, 11, 222 }, { 8, 11, 476 }, { 9, 11, 238 }, { 11, 11, 516 },
- { 11, 11, 575 }, { 15, 11, 109 }, { 18, 11, 100 }, { 6, 0, 308 },
- { 9, 0, 673 }, { 7, 10, 138 }, { 7, 10, 517 }, { 11, 10, 238 },
- { 4, 0, 709 }, { 6, 0, 1876 }, { 6, 0, 1895 }, { 9, 0, 994 },
- { 9, 0, 1006 }, { 12, 0, 829 }, { 12, 0, 888 }, { 12, 0, 891 },
- { 18, 0, 185 }, { 20, 10, 94 }, { 4, 0, 228 }, { 5, 0, 897 },
- { 7, 0, 1840 }, { 5, 10, 495 }, { 7, 10, 834 }, { 9, 10, 733 },
- { 11, 10, 378 }, { 5, 10, 559 }, { 6, 10, 21 }, { 6, 10, 1737 },
- { 7, 10, 1444 }, { 8, 10, 224 }, { 4, 0, 608 }, { 5, 0, 497 },
- { 6, 11, 40 }, { 7, 11, 1781 }, { 6, 0, 1573 }, { 7, 0, 2039 },
- { 6, 0, 540 }, { 8, 0, 136 }, { 4, 0, 897 }, { 5, 0, 786 },
- { 5, 10, 519 }, { 6, 0, 1878 }, { 6, 0, 1884 }, { 9, 0, 938 },
- { 9, 0, 948 }, { 9, 0, 955 }, { 9, 0, 973 }, { 9, 0, 1012 },
- { 12, 0, 895 }, { 12, 0, 927 }, { 15, 0, 254 }, { 6, 0, 1469 },
- { 5, 0, 999 }, { 4, 0, 299 }, { 7, 0, 1004 }, { 4, 0, 745 },
- { 5, 0, 578 }, { 8, 11, 574 }, { 5, 0, 456 }, { 6, 0, 1457 },
- { 7, 0, 1679 }, { 4, 10, 402 }, { 7, 0, 693 }, { 8, 0, 180 },
- { 12, 0, 163 }, { 8, 10, 323 }, { 8, 10, 479 }, { 11, 10, 580 },
- { 14, 10, 201 }, { 5, 10, 59 }, { 7, 10, 672 }, { 4, 11, 354 },
- { 18, 10, 34 }, { 4, 0, 755 }, { 7, 11, 1558 }, { 7, 0, 1740 },
- { 18, 0, 48 }, { 4, 10, 85 }, { 7, 10, 549 }, { 11, 0, 338 },
- { 5, 10, 94 }, { 6, 0, 1091 }, { 7, 11, 469 }, { 12, 0, 695 },
- { 12, 0, 704 }, { 20, 0, 113 }, { 5, 11, 830 }, { 14, 11, 338 },
- { 20, 11, 81 }, { 7, 0, 1464 }, { 6, 10, 11 }, { 7, 10, 187 },
- { 7, 0, 975 }, { 13, 0, 335 }, { 4, 10, 522 }, { 6, 0, 1979 },
- { 5, 11, 496 }, { 7, 11, 203 }, { 4, 10, 52 }, { 7, 10, 661 },
- { 7, 0, 1566 }, { 8, 0, 269 }, { 9, 0, 212 }, { 9, 0, 718 },
- { 14, 0, 15 }, { 14, 0, 132 }, { 14, 0, 227 }, { 4, 0, 890 },
- { 5, 0, 805 }, { 5, 0, 819 }, { 5, 0, 961 }, { 6, 0, 396 },
- { 6, 0, 1631 }, { 6, 0, 1678 }, { 7, 0, 1967 }, { 7, 0, 2041 },
- { 9, 0, 630 }, { 11, 0, 8 }, { 11, 0, 1019 }, { 12, 0, 176 },
- { 13, 0, 225 }, { 14, 0, 292 }, { 21, 0, 24 }, { 4, 10, 383 },
- { 5, 10, 520 }, { 6, 11, 547 }, { 7, 11, 1748 }, { 5, 11, 88 },
- { 9, 11, 239 }, { 18, 11, 128 }, { 7, 11, 650 }, { 7, 11, 1310 },
- { 4, 10, 281 }, { 5, 10, 38 }, { 7, 10, 194 }, { 7, 10, 668 },
- { 7, 10, 1893 }, { 9, 10, 397 }, { 7, 0, 1815 }, { 9, 10, 635 },
- { 11, 10, 559 }, { 7, 0, 1505 }, { 10, 0, 190 }, { 10, 0, 634 },
- { 11, 0, 792 }, { 12, 0, 358 }, { 12, 0, 447 }, { 5, 0, 0 },
- { 6, 0, 536 }, { 7, 0, 604 }, { 13, 0, 445 }, { 17, 0, 126 },
- { 7, 11, 1076 }, { 9, 11, 80 }, { 11, 11, 78 }, { 11, 11, 421 },
- { 11, 11, 534 }, { 12, 11, 545 }, { 8, 0, 966 }, { 10, 0, 1023 },
- { 14, 11, 369 }, { 18, 11, 72 }, { 7, 11, 1641 }, { 6, 0, 232 },
- { 6, 0, 412 }, { 7, 0, 1074 }, { 8, 0, 9 }, { 8, 0, 157 },
- { 8, 0, 786 }, { 9, 0, 196 }, { 9, 0, 352 }, { 9, 0, 457 },
- { 10, 0, 337 }, { 11, 0, 232 }, { 11, 0, 877 }, { 12, 0, 480 },
- { 12, 0, 546 }, { 7, 0, 958 }, { 4, 0, 382 }, { 8, 0, 579 },
- { 4, 0, 212 }, { 7, 0, 1206 }, { 4, 11, 497 }, { 5, 11, 657 },
- { 7, 11, 1584 }, { 4, 0, 681 }, { 8, 0, 971 }, { 10, 0, 965 },
- { 5, 10, 448 }, { 8, 10, 535 }, { 14, 0, 16 }, { 18, 0, 44 },
- { 11, 0, 584 }, { 11, 0, 616 }, { 14, 0, 275 }, { 11, 11, 584 },
- { 11, 11, 616 }, { 14, 11, 275 }, { 8, 11, 13 }, { 7, 10, 610 },
- { 7, 10, 1501 }, { 7, 11, 642 }, { 8, 11, 250 }, { 11, 11, 123 },
- { 11, 11, 137 }, { 13, 11, 48 }, { 14, 11, 95 }, { 5, 0, 655 },
- { 17, 0, 67 }, { 19, 0, 74 }, { 6, 0, 751 }, { 6, 0, 1967 },
- { 6, 0, 231 }, { 8, 0, 423 }, { 5, 0, 300 }, { 10, 0, 1016 },
- { 4, 10, 319 }, { 5, 10, 699 }, { 10, 10, 673 }, { 6, 0, 237 },
- { 7, 0, 611 }, { 8, 0, 100 }, { 9, 0, 416 }, { 11, 0, 335 },
- { 12, 0, 173 }, { 18, 0, 101 }, { 6, 10, 336 }, { 8, 10, 552 },
- { 9, 10, 285 }, { 10, 10, 99 }, { 11, 10, 568 }, { 6, 0, 1370 },
- { 7, 10, 1406 }, { 9, 10, 218 }, { 13, 10, 222 }, { 5, 10, 256 },
- { 7, 0, 1208 }, { 14, 11, 213 }, { 20, 11, 38 }, { 6, 0, 1219 },
- { 7, 11, 1642 }, { 13, 0, 417 }, { 14, 0, 129 }, { 15, 0, 15 },
- { 10, 11, 545 }, { 12, 11, 301 }, { 17, 10, 39 }, { 20, 10, 36 },
- { 5, 0, 199 }, { 4, 11, 904 }, { 5, 11, 794 }, { 12, 0, 427 },
- { 18, 0, 38 }, { 6, 0, 949 }, { 8, 0, 665 }, { 7, 10, 634 },
- { 4, 10, 618 }, { 7, 10, 259 }, { 4, 10, 339 }, { 5, 11, 761 },
- { 13, 10, 169 }, { 4, 10, 759 }, { 5, 0, 688 }, { 7, 0, 539 },
- { 7, 0, 712 }, { 7, 11, 386 }, { 10, 11, 713 }, { 6, 0, 1186 },
- { 6, 11, 7 }, { 6, 11, 35 }, { 7, 11, 147 }, { 7, 11, 1069 },
- { 7, 11, 1568 }, { 7, 11, 1575 }, { 7, 11, 1917 }, { 8, 11, 43 },
- { 8, 11, 208 }, { 9, 11, 128 }, { 9, 11, 866 }, { 10, 11, 20 },
- { 11, 11, 981 }, { 19, 11, 33 }, { 7, 11, 893 }, { 8, 10, 482 },
- { 13, 11, 424 }, { 6, 0, 312 }, { 6, 0, 1715 }, { 10, 0, 584 },
- { 11, 0, 546 }, { 11, 0, 692 }, { 12, 0, 259 }, { 12, 0, 295 },
- { 13, 0, 46 }, { 13, 0, 154 }, { 5, 10, 336 }, { 6, 10, 341 },
- { 6, 10, 478 }, { 6, 10, 1763 }, { 8, 10, 386 }, { 9, 0, 151 },
- { 4, 0, 588 }, { 24, 0, 4 }, { 6, 11, 322 }, { 9, 11, 552 },
- { 11, 11, 274 }, { 13, 11, 209 }, { 13, 11, 499 }, { 14, 11, 85 },
- { 15, 11, 126 }, { 17, 11, 70 }, { 7, 10, 73 }, { 4, 0, 231 },
- { 5, 0, 61 }, { 6, 0, 104 }, { 7, 0, 729 }, { 7, 0, 964 },
- { 7, 0, 1658 }, { 12, 0, 414 }, { 6, 0, 263 }, { 10, 0, 757 },
- { 7, 10, 1971 }, { 4, 0, 612 }, { 5, 0, 561 }, { 4, 0, 320 },
- { 7, 10, 1344 }, { 8, 11, 83 }, { 8, 11, 817 }, { 9, 11, 28 },
- { 9, 11, 29 }, { 9, 11, 885 }, { 10, 11, 387 }, { 11, 11, 633 },
- { 11, 11, 740 }, { 13, 11, 235 }, { 13, 11, 254 }, { 15, 11, 143 },
- { 15, 11, 146 }, { 5, 10, 396 }, { 6, 10, 501 }, { 12, 11, 49 },
- { 4, 0, 225 }, { 4, 10, 929 }, { 5, 10, 799 }, { 8, 10, 46 },
- { 8, 10, 740 }, { 4, 0, 405 }, { 7, 0, 817 }, { 14, 0, 58 },
- { 17, 0, 37 }, { 18, 0, 124 }, { 5, 0, 974 }, { 4, 11, 412 },
- { 5, 11, 581 }, { 4, 10, 892 }, { 5, 10, 770 }, { 4, 0, 996 },
- { 6, 0, 2026 }, { 4, 0, 527 }, { 5, 0, 235 }, { 7, 0, 1239 },
- { 11, 0, 131 }, { 12, 0, 370 }, { 9, 0, 16 }, { 13, 0, 386 },
- { 7, 11, 421 }, { 7, 0, 956 }, { 7, 0, 1157 }, { 7, 0, 1506 },
- { 7, 0, 1606 }, { 7, 0, 1615 }, { 7, 0, 1619 }, { 7, 0, 1736 },
- { 7, 0, 1775 }, { 8, 0, 590 }, { 9, 0, 324 }, { 9, 0, 736 },
- { 9, 0, 774 }, { 9, 0, 776 }, { 9, 0, 784 }, { 10, 0, 567 },
- { 10, 0, 708 }, { 11, 0, 518 }, { 11, 0, 613 }, { 11, 0, 695 },
- { 11, 0, 716 }, { 11, 0, 739 }, { 11, 0, 770 }, { 11, 0, 771 },
- { 11, 0, 848 }, { 11, 0, 857 }, { 11, 0, 931 }, { 11, 0, 947 },
- { 12, 0, 326 }, { 12, 0, 387 }, { 12, 0, 484 }, { 12, 0, 528 },
- { 12, 0, 552 }, { 12, 0, 613 }, { 13, 0, 189 }, { 13, 0, 256 },
- { 13, 0, 340 }, { 13, 0, 432 }, { 13, 0, 436 }, { 13, 0, 440 },
- { 13, 0, 454 }, { 14, 0, 174 }, { 14, 0, 220 }, { 14, 0, 284 },
- { 14, 0, 390 }, { 17, 0, 121 }, { 7, 10, 158 }, { 9, 0, 137 },
- { 10, 0, 221 }, { 4, 11, 110 }, { 10, 11, 415 }, { 10, 11, 597 },
- { 14, 11, 206 }, { 13, 11, 496 }, { 7, 11, 205 }, { 23, 10, 25 },
- { 7, 11, 778 }, { 7, 11, 1656 }, { 7, 10, 2001 }, { 9, 11, 369 },
- { 10, 11, 338 }, { 10, 11, 490 }, { 11, 11, 154 }, { 11, 11, 545 },
- { 11, 11, 775 }, { 13, 11, 77 }, { 13, 11, 274 }, { 4, 11, 444 },
- { 10, 11, 146 }, { 12, 11, 9 }, { 7, 0, 390 }, { 10, 0, 140 },
- { 7, 0, 1144 }, { 6, 0, 464 }, { 7, 10, 1461 }, { 12, 10, 91 },
- { 4, 10, 602 }, { 4, 11, 283 }, { 7, 11, 1194 }, { 5, 0, 407 },
- { 11, 0, 204 }, { 11, 0, 243 }, { 11, 0, 489 }, { 12, 0, 293 },
- { 19, 0, 37 }, { 20, 0, 73 }, { 22, 0, 38 }, { 7, 0, 1218 },
- { 8, 0, 303 }, { 5, 0, 325 }, { 8, 0, 5 }, { 8, 0, 227 },
- { 9, 0, 105 }, { 10, 0, 585 }, { 12, 0, 614 }, { 4, 10, 13 },
- { 5, 10, 567 }, { 7, 10, 1498 }, { 9, 10, 124 }, { 11, 10, 521 },
- { 12, 10, 405 }, { 7, 10, 1006 }, { 7, 0, 800 }, { 10, 0, 12 },
- { 6, 11, 1720 }, { 7, 0, 1783 }, { 4, 10, 735 }, { 10, 10, 812 },
- { 4, 10, 170 }, { 7, 10, 323 }, { 6, 0, 621 }, { 13, 0, 504 },
- { 16, 0, 89 }, { 5, 10, 304 }, { 7, 10, 1403 }, { 9, 11, 216 },
- { 6, 0, 920 }, { 6, 0, 1104 }, { 9, 11, 183 }, { 11, 11, 286 },
- { 4, 0, 376 }, { 5, 10, 742 }, { 6, 0, 218 }, { 8, 0, 641 },
- { 11, 0, 388 }, { 12, 0, 580 }, { 7, 0, 454 }, { 7, 0, 782 },
- { 8, 0, 768 }, { 12, 0, 686 }, { 9, 11, 33 }, { 5, 10, 111 },
- { 16, 0, 0 }, { 10, 0, 676 }, { 12, 0, 462 }, { 6, 0, 164 },
- { 8, 11, 735 }, { 5, 10, 444 }, { 22, 0, 50 }, { 7, 11, 1862 },
- { 12, 11, 491 }, { 12, 11, 520 }, { 13, 11, 383 }, { 14, 11, 244 },
- { 18, 11, 12 }, { 5, 11, 132 }, { 9, 11, 486 }, { 9, 11, 715 },
- { 10, 11, 458 }, { 11, 11, 373 }, { 11, 11, 668 }, { 11, 11, 795 },
- { 11, 11, 897 }, { 12, 11, 272 }, { 12, 11, 424 }, { 12, 11, 539 },
- { 12, 11, 558 }, { 14, 11, 245 }, { 14, 11, 263 }, { 14, 11, 264 },
- { 14, 11, 393 }, { 14, 11, 403 }, { 8, 10, 123 }, { 15, 10, 6 },
- { 16, 10, 7 }, { 6, 0, 285 }, { 8, 0, 654 }, { 11, 0, 749 },
- { 12, 0, 190 }, { 12, 0, 327 }, { 13, 0, 120 }, { 13, 0, 121 },
- { 13, 0, 327 }, { 15, 0, 47 }, { 18, 0, 40 }, { 5, 11, 8 },
- { 6, 11, 89 }, { 6, 11, 400 }, { 7, 11, 1569 }, { 7, 11, 1623 },
- { 7, 11, 1850 }, { 8, 11, 218 }, { 8, 11, 422 }, { 9, 11, 570 },
- { 10, 11, 626 }, { 6, 11, 387 }, { 7, 11, 882 }, { 13, 11, 111 },
- { 6, 0, 343 }, { 7, 0, 195 }, { 9, 0, 226 }, { 10, 0, 197 },
- { 10, 0, 575 }, { 11, 0, 502 }, { 11, 0, 899 }, { 6, 11, 224 },
- { 7, 11, 877 }, { 9, 11, 647 }, { 5, 10, 937 }, { 7, 10, 100 },
- { 7, 11, 790 }, { 22, 0, 29 }, { 19, 0, 8 }, { 6, 0, 1812 },
- { 21, 0, 8 }, { 7, 11, 394 }, { 7, 0, 1125 }, { 9, 0, 143 },
- { 11, 0, 61 }, { 14, 0, 405 }, { 22, 0, 21 }, { 10, 11, 755 },
- { 19, 11, 29 }, { 9, 11, 378 }, { 13, 11, 162 }, { 7, 10, 922 },
- { 5, 10, 619 }, { 5, 10, 698 }, { 6, 0, 1327 }, { 6, 0, 1598 },
- { 9, 0, 575 }, { 9, 11, 569 }, { 12, 11, 12 }, { 12, 11, 81 },
- { 12, 11, 319 }, { 13, 11, 69 }, { 14, 11, 259 }, { 16, 11, 87 },
- { 17, 11, 1 }, { 17, 11, 21 }, { 17, 11, 24 }, { 18, 11, 15 },
- { 18, 11, 56 }, { 18, 11, 59 }, { 18, 11, 127 }, { 18, 11, 154 },
- { 19, 11, 19 }, { 20, 11, 31 }, { 6, 0, 895 }, { 7, 11, 1231 },
- { 5, 0, 959 }, { 7, 11, 124 }, { 8, 11, 38 }, { 5, 11, 261 },
- { 7, 11, 78 }, { 7, 11, 199 }, { 8, 11, 815 }, { 9, 11, 126 },
- { 10, 11, 342 }, { 5, 10, 917 }, { 6, 10, 1659 }, { 7, 0, 1759 },
- { 5, 11, 595 }, { 7, 11, 1863 }, { 8, 0, 173 }, { 6, 0, 266 },
- { 14, 0, 261 }, { 4, 11, 628 }, { 5, 10, 251 }, { 5, 10, 956 },
- { 8, 10, 268 }, { 9, 10, 214 }, { 18, 10, 142 }, { 7, 11, 266 },
- { 8, 11, 804 }, { 7, 11, 208 }, { 6, 11, 79 }, { 7, 11, 1021 },
- { 7, 11, 1519 }, { 11, 11, 704 }, { 13, 11, 396 }, { 5, 10, 346 },
- { 5, 10, 711 }, { 8, 10, 390 }, { 8, 11, 741 }, { 6, 11, 376 },
- { 6, 0, 1427 }, { 6, 0, 1033 }, { 6, 0, 1217 }, { 8, 0, 300 },
- { 5, 10, 624 }, { 6, 11, 100 }, { 7, 11, 244 }, { 7, 11, 632 },
- { 7, 11, 1609 }, { 8, 11, 178 }, { 8, 11, 638 }, { 13, 11, 58 },
- { 6, 0, 584 }, { 5, 10, 783 }, { 7, 10, 1998 }, { 7, 10, 2047 },
- { 5, 0, 427 }, { 5, 0, 734 }, { 7, 0, 478 }, { 8, 0, 52 },
- { 7, 0, 239 }, { 11, 0, 217 }, { 14, 0, 165 }, { 6, 0, 1129 },
- { 6, 0, 168 }, { 6, 0, 1734 }, { 7, 0, 20 }, { 7, 0, 1056 },
- { 8, 0, 732 }, { 9, 0, 406 }, { 9, 0, 911 }, { 10, 0, 694 },
- { 4, 10, 594 }, { 5, 11, 791 }, { 7, 11, 686 }, { 8, 11, 33 },
- { 8, 11, 238 }, { 10, 11, 616 }, { 11, 11, 467 }, { 11, 11, 881 },
- { 13, 11, 217 }, { 13, 11, 253 }, { 14, 11, 268 }, { 9, 11, 476 },
- { 6, 0, 418 }, { 5, 0, 613 }, { 4, 0, 632 }, { 4, 11, 447 },
- { 7, 0, 32 }, { 7, 0, 984 }, { 8, 0, 85 }, { 8, 0, 709 },
- { 9, 0, 579 }, { 9, 0, 847 }, { 9, 0, 856 }, { 10, 0, 799 },
- { 11, 0, 258 }, { 11, 0, 1007 }, { 12, 0, 331 }, { 12, 0, 615 },
- { 13, 0, 188 }, { 13, 0, 435 }, { 14, 0, 8 }, { 15, 0, 165 },
- { 16, 0, 27 }, { 20, 0, 40 }, { 16, 11, 35 }, { 4, 11, 128 },
- { 5, 11, 415 }, { 6, 11, 462 }, { 7, 11, 294 }, { 7, 11, 578 },
- { 10, 11, 710 }, { 11, 11, 86 }, { 5, 0, 694 }, { 8, 0, 909 },
- { 7, 0, 1109 }, { 11, 0, 7 }, { 5, 10, 37 }, { 6, 10, 39 },
- { 6, 10, 451 }, { 7, 10, 218 }, { 7, 10, 1166 }, { 7, 10, 1687 },
- { 8, 10, 662 }, { 16, 10, 2 }, { 8, 11, 587 }, { 6, 11, 427 },
- { 7, 11, 1018 }, { 10, 11, 692 }, { 4, 11, 195 }, { 6, 10, 508 },
- { 7, 11, 802 }, { 4, 0, 167 }, { 7, 0, 82 }, { 5, 0, 62 },
- { 6, 0, 24 }, { 6, 0, 534 }, { 7, 0, 74 }, { 7, 0, 678 },
- { 7, 0, 684 }, { 7, 0, 1043 }, { 7, 0, 1072 }, { 8, 0, 280 },
- { 8, 0, 541 }, { 8, 0, 686 }, { 9, 0, 258 }, { 10, 0, 519 },
- { 11, 0, 252 }, { 12, 0, 282 }, { 10, 0, 33 }, { 4, 0, 359 },
- { 5, 11, 738 }, { 7, 0, 980 }, { 9, 0, 328 }, { 13, 0, 186 },
- { 13, 0, 364 }, { 7, 10, 635 }, { 7, 10, 796 }, { 8, 10, 331 },
- { 9, 10, 330 }, { 9, 10, 865 }, { 10, 10, 119 }, { 10, 10, 235 },
- { 11, 10, 111 }, { 11, 10, 129 }, { 11, 10, 240 }, { 12, 10, 31 },
- { 12, 10, 66 }, { 12, 10, 222 }, { 12, 10, 269 }, { 12, 10, 599 },
- { 12, 10, 684 }, { 12, 10, 689 }, { 12, 10, 691 }, { 14, 10, 345 },
- { 9, 10, 527 }, { 6, 0, 596 }, { 7, 0, 585 }, { 7, 10, 702 },
- { 6, 11, 1683 }, { 5, 0, 211 }, { 6, 0, 145 }, { 13, 0, 336 },
- { 6, 0, 1130 }, { 7, 0, 873 }, { 6, 10, 37 }, { 7, 10, 1666 },
- { 8, 10, 195 }, { 8, 10, 316 }, { 9, 10, 178 }, { 9, 10, 276 },
- { 9, 10, 339 }, { 9, 10, 536 }, { 10, 10, 102 }, { 10, 10, 362 },
- { 10, 10, 785 }, { 11, 10, 55 }, { 11, 10, 149 }, { 11, 10, 773 },
- { 13, 10, 416 }, { 13, 10, 419 }, { 14, 10, 38 }, { 14, 10, 41 },
- { 14, 10, 210 }, { 8, 0, 840 }, { 8, 0, 841 }, { 4, 0, 263 },
- { 5, 11, 3 }, { 8, 11, 578 }, { 9, 11, 118 }, { 10, 11, 705 },
- { 12, 11, 383 }, { 13, 11, 279 }, { 4, 0, 916 }, { 5, 11, 229 },
- { 5, 10, 645 }, { 15, 0, 155 }, { 16, 0, 79 }, { 8, 11, 102 },
- { 10, 11, 578 }, { 10, 11, 672 }, { 12, 11, 496 }, { 13, 11, 408 },
- { 14, 11, 121 }, { 17, 11, 106 }, { 4, 0, 599 }, { 5, 0, 592 },
- { 6, 0, 1634 }, { 7, 0, 5 }, { 7, 0, 55 }, { 7, 0, 67 },
- { 7, 0, 97 }, { 7, 0, 691 }, { 7, 0, 979 }, { 7, 0, 1600 },
- { 7, 0, 1697 }, { 8, 0, 207 }, { 8, 0, 214 }, { 8, 0, 231 },
- { 8, 0, 294 }, { 8, 0, 336 }, { 8, 0, 428 }, { 8, 0, 471 },
- { 8, 0, 622 }, { 8, 0, 626 }, { 8, 0, 679 }, { 8, 0, 759 },
- { 8, 0, 829 }, { 9, 0, 11 }, { 9, 0, 246 }, { 9, 0, 484 },
- { 9, 0, 573 }, { 9, 0, 706 }, { 9, 0, 762 }, { 9, 0, 798 },
- { 9, 0, 855 }, { 9, 0, 870 }, { 9, 0, 912 }, { 10, 0, 303 },
- { 10, 0, 335 }, { 10, 0, 424 }, { 10, 0, 461 }, { 10, 0, 543 },
- { 10, 0, 759 }, { 10, 0, 814 }, { 11, 0, 59 }, { 11, 0, 199 },
- { 11, 0, 235 }, { 11, 0, 590 }, { 11, 0, 631 }, { 11, 0, 929 },
- { 11, 0, 963 }, { 11, 0, 987 }, { 12, 0, 114 }, { 12, 0, 182 },
- { 12, 0, 226 }, { 12, 0, 332 }, { 12, 0, 439 }, { 12, 0, 575 },
- { 12, 0, 598 }, { 12, 0, 675 }, { 13, 0, 8 }, { 13, 0, 125 },
- { 13, 0, 194 }, { 13, 0, 287 }, { 14, 0, 197 }, { 14, 0, 383 },
- { 15, 0, 53 }, { 17, 0, 63 }, { 19, 0, 46 }, { 19, 0, 98 },
- { 19, 0, 106 }, { 20, 0, 85 }, { 7, 0, 1356 }, { 4, 10, 290 },
- { 6, 10, 70 }, { 7, 10, 1292 }, { 10, 10, 762 }, { 11, 10, 288 },
- { 22, 11, 55 }, { 4, 0, 593 }, { 8, 11, 115 }, { 8, 11, 350 },
- { 9, 11, 489 }, { 10, 11, 128 }, { 11, 11, 306 }, { 12, 11, 373 },
- { 14, 11, 30 }, { 17, 11, 79 }, { 19, 11, 80 }, { 7, 11, 1235 },
- { 6, 0, 1392 }, { 4, 11, 230 }, { 5, 11, 702 }, { 19, 0, 126 },
- { 7, 10, 131 }, { 7, 10, 422 }, { 8, 10, 210 }, { 12, 10, 573 },
- { 6, 0, 1179 }, { 11, 11, 435 }, { 11, 10, 797 }, { 6, 11, 1728 },
- { 4, 0, 162 }, { 18, 11, 26 }, { 19, 11, 42 }, { 20, 11, 43 },
- { 21, 11, 0 }, { 23, 11, 27 }, { 24, 11, 14 }, { 4, 10, 936 },
- { 6, 0, 765 }, { 5, 10, 453 }, { 6, 10, 441 }, { 5, 0, 187 },
- { 7, 0, 1286 }, { 6, 0, 635 }, { 6, 0, 904 }, { 6, 0, 1210 },
- { 6, 0, 1489 }, { 4, 0, 215 }, { 8, 0, 890 }, { 9, 0, 38 },
- { 10, 0, 923 }, { 11, 0, 23 }, { 11, 0, 127 }, { 11, 0, 796 },
- { 6, 0, 1165 }, { 6, 0, 1306 }, { 7, 0, 716 }, { 13, 0, 97 },
- { 13, 0, 251 }, { 4, 10, 653 }, { 8, 0, 657 }, { 18, 10, 80 },
- { 5, 11, 622 }, { 7, 11, 1032 }, { 11, 11, 26 }, { 11, 11, 213 },
- { 11, 11, 707 }, { 12, 11, 380 }, { 13, 11, 226 }, { 13, 11, 355 },
- { 6, 0, 299 }, { 5, 11, 70 }, { 6, 11, 334 }, { 9, 11, 171 },
- { 11, 11, 637 }, { 12, 11, 202 }, { 14, 11, 222 }, { 17, 11, 42 },
- { 14, 0, 134 }, { 4, 11, 23 }, { 5, 11, 313 }, { 5, 11, 1014 },
- { 6, 11, 50 }, { 6, 11, 51 }, { 7, 11, 142 }, { 7, 11, 384 },
- { 9, 11, 783 }, { 11, 11, 741 }, { 4, 11, 141 }, { 7, 11, 559 },
- { 8, 11, 640 }, { 9, 11, 460 }, { 12, 11, 183 }, { 13, 11, 488 },
- { 8, 11, 614 }, { 7, 10, 1368 }, { 8, 10, 232 }, { 8, 10, 361 },
- { 10, 10, 682 }, { 10, 10, 742 }, { 9, 10, 534 }, { 6, 0, 1082 },
- { 12, 0, 658 }, { 9, 10, 27 }, { 7, 0, 2002 }, { 14, 10, 12 },
- { 4, 0, 28 }, { 5, 0, 440 }, { 7, 0, 248 }, { 11, 0, 833 },
- { 12, 0, 344 }, { 7, 10, 736 }, { 11, 10, 264 }, { 6, 10, 1657 },
- { 6, 0, 1654 }, { 10, 0, 531 }, { 5, 11, 222 }, { 9, 11, 140 },
- { 10, 11, 534 }, { 6, 0, 634 }, { 6, 0, 798 }, { 6, 0, 840 },
- { 10, 11, 503 }, { 7, 10, 127 }, { 5, 0, 853 }, { 5, 11, 154 },
- { 7, 11, 1491 }, { 10, 11, 379 }, { 10, 11, 485 }, { 6, 0, 249 },
- { 7, 0, 1234 }, { 11, 0, 573 }, { 5, 11, 716 }, { 7, 11, 1570 },
- { 12, 11, 542 }, { 8, 10, 364 }, { 10, 0, 527 }, { 4, 11, 91 },
- { 5, 11, 388 }, { 5, 11, 845 }, { 6, 11, 206 }, { 6, 11, 252 },
- { 6, 11, 365 }, { 7, 11, 136 }, { 7, 11, 531 }, { 8, 11, 264 },
- { 8, 11, 621 }, { 6, 0, 1419 }, { 7, 11, 1441 }, { 7, 0, 49 },
- { 7, 0, 392 }, { 8, 0, 20 }, { 8, 0, 172 }, { 8, 0, 690 },
- { 9, 0, 383 }, { 9, 0, 845 }, { 10, 0, 48 }, { 11, 0, 293 },
- { 11, 0, 832 }, { 11, 0, 920 }, { 11, 0, 984 }, { 13, 0, 221 },
- { 5, 0, 858 }, { 5, 0, 992 }, { 5, 0, 728 }, { 9, 10, 792 },
- { 5, 10, 909 }, { 9, 10, 849 }, { 10, 10, 805 }, { 7, 0, 525 },
- { 7, 0, 1579 }, { 8, 0, 497 }, { 8, 0, 573 }, { 6, 0, 268 },
- { 9, 0, 62 }, { 7, 11, 576 }, { 6, 0, 1201 }, { 5, 11, 771 },
- { 5, 11, 863 }, { 5, 11, 898 }, { 6, 11, 1632 }, { 6, 11, 1644 },
- { 6, 11, 1780 }, { 5, 11, 331 }, { 7, 0, 193 }, { 7, 0, 1105 },
- { 10, 0, 495 }, { 7, 10, 397 }, { 8, 10, 124 }, { 8, 10, 619 },
- { 9, 10, 305 }, { 11, 10, 40 }, { 12, 10, 349 }, { 13, 10, 134 },
- { 13, 10, 295 }, { 14, 10, 155 }, { 15, 10, 120 }, { 18, 10, 105 },
- { 10, 0, 106 }, { 6, 0, 859 }, { 5, 11, 107 }, { 7, 11, 201 },
- { 8, 11, 518 }, { 6, 11, 446 }, { 7, 11, 1817 }, { 13, 0, 23 },
- { 4, 10, 262 }, { 7, 10, 342 }, { 5, 10, 641 }, { 9, 11, 851 },
- { 6, 0, 925 }, { 9, 0, 813 }, { 4, 11, 504 }, { 6, 0, 613 },
- { 8, 0, 223 }, { 4, 10, 99 }, { 6, 10, 250 }, { 6, 10, 346 },
- { 8, 10, 127 }, { 10, 10, 81 }, { 8, 0, 953 }, { 4, 10, 915 },
- { 11, 11, 892 }, { 5, 10, 75 }, { 9, 10, 517 }, { 10, 10, 470 },
- { 12, 10, 155 }, { 13, 10, 224 }, { 4, 0, 666 }, { 7, 0, 1017 },
- { 7, 11, 996 }, { 10, 11, 390 }, { 5, 11, 883 }, { 5, 11, 975 },
- { 14, 10, 83 }, { 14, 11, 83 }, { 4, 0, 670 }, { 5, 11, 922 },
- { 6, 11, 1707 }, { 7, 0, 216 }, { 9, 0, 40 }, { 11, 0, 136 },
- { 7, 11, 787 }, { 5, 10, 954 }, { 5, 11, 993 }, { 7, 11, 515 },
- { 9, 11, 91 }, { 11, 0, 259 }, { 7, 0, 1114 }, { 9, 0, 310 },
- { 9, 0, 682 }, { 10, 0, 440 }, { 13, 0, 40 }, { 6, 10, 304 },
- { 8, 10, 418 }, { 11, 10, 341 }, { 11, 10, 675 }, { 14, 0, 296 },
- { 9, 10, 410 }, { 11, 10, 425 }, { 10, 11, 377 }, { 12, 11, 363 },
- { 13, 11, 68 }, { 13, 11, 94 }, { 14, 11, 108 }, { 14, 11, 306 },
- { 7, 0, 1401 }, { 7, 0, 1476 }, { 4, 0, 296 }, { 6, 0, 475 },
- { 7, 0, 401 }, { 7, 0, 1410 }, { 7, 0, 1594 }, { 7, 0, 1674 },
- { 8, 0, 63 }, { 8, 0, 660 }, { 9, 0, 74 }, { 4, 0, 139 },
- { 4, 0, 388 }, { 12, 0, 188 }, { 4, 0, 797 }, { 4, 11, 766 },
- { 5, 11, 103 }, { 7, 11, 921 }, { 8, 11, 580 }, { 8, 11, 593 },
- { 8, 11, 630 }, { 10, 11, 28 }, { 4, 11, 911 }, { 5, 11, 867 },
- { 5, 11, 1013 }, { 6, 10, 14 }, { 6, 0, 1572 }, { 6, 10, 1708 },
- { 21, 0, 39 }, { 5, 10, 113 }, { 6, 10, 243 }, { 7, 10, 1865 },
- { 11, 10, 161 }, { 16, 10, 37 }, { 17, 10, 99 }, { 7, 11, 1563 },
- { 13, 11, 182 }, { 5, 11, 135 }, { 6, 11, 519 }, { 7, 11, 1722 },
- { 10, 11, 271 }, { 11, 11, 261 }, { 17, 11, 54 }, { 4, 10, 274 },
- { 6, 0, 1594 }, { 4, 11, 300 }, { 5, 11, 436 }, { 7, 11, 484 },
- { 4, 0, 747 }, { 6, 0, 290 }, { 7, 0, 649 }, { 7, 0, 1479 },
- { 7, 0, 1583 }, { 5, 11, 535 }, { 19, 11, 82 }, { 5, 0, 232 },
- { 9, 0, 887 }, { 7, 10, 166 }, { 8, 0, 521 }, { 4, 0, 14 },
- { 7, 0, 472 }, { 7, 0, 1801 }, { 10, 0, 748 }, { 13, 0, 458 },
- { 6, 0, 741 }, { 6, 0, 992 }, { 16, 0, 111 }, { 9, 10, 304 },
- { 4, 0, 425 }, { 5, 11, 387 }, { 7, 11, 557 }, { 12, 11, 547 },
- { 14, 11, 86 }, { 7, 11, 1747 }, { 5, 10, 654 }, { 7, 11, 1489 },
- { 7, 0, 789 }, { 4, 11, 6 }, { 5, 11, 708 }, { 8, 11, 75 },
- { 6, 10, 273 }, { 10, 10, 188 }, { 13, 10, 377 }, { 18, 10, 77 },
- { 6, 0, 1593 }, { 4, 11, 303 }, { 7, 11, 619 }, { 10, 11, 547 },
- { 10, 11, 687 }, { 11, 11, 122 }, { 12, 11, 601 }, { 6, 0, 1768 },
- { 7, 10, 410 }, { 10, 11, 772 }, { 11, 0, 233 }, { 11, 10, 524 },
- { 5, 0, 943 }, { 6, 0, 1779 }, { 6, 10, 1785 }, { 8, 11, 529 },
- { 4, 0, 955 }, { 5, 0, 245 }, { 6, 0, 576 }, { 7, 0, 582 },
- { 8, 0, 225 }, { 4, 10, 780 }, { 14, 0, 241 }, { 6, 0, 1943 },
- { 4, 11, 106 }, { 7, 11, 310 }, { 7, 11, 1785 }, { 10, 11, 690 },
- { 11, 11, 717 }, { 6, 0, 1284 }, { 5, 11, 890 }, { 5, 11, 988 },
- { 6, 11, 626 }, { 14, 11, 431 }, { 10, 11, 706 }, { 17, 11, 32 },
- { 9, 11, 332 }, { 4, 11, 698 }, { 7, 0, 709 }, { 5, 10, 948 },
- { 10, 11, 17 }, { 8, 0, 554 }, { 6, 0, 1564 }, { 11, 10, 941 },
- { 4, 0, 443 }, { 6, 0, 909 }, { 6, 11, 84 }, { 14, 0, 280 },
- { 4, 10, 532 }, { 5, 10, 706 }, { 7, 10, 662 }, { 4, 0, 729 },
- { 5, 10, 837 }, { 6, 10, 1651 }, { 11, 10, 985 }, { 7, 10, 1861 },
- { 4, 0, 348 }, { 24, 11, 3 }, { 5, 11, 986 }, { 6, 11, 130 },
- { 7, 11, 1582 }, { 8, 11, 458 }, { 10, 11, 101 }, { 10, 11, 318 },
- { 10, 11, 823 }, { 6, 0, 758 }, { 4, 0, 298 }, { 9, 0, 848 },
- { 4, 10, 330 }, { 7, 10, 933 }, { 7, 10, 2012 }, { 8, 10, 292 },
- { 7, 11, 1644 }, { 9, 11, 129 }, { 6, 0, 1422 }, { 9, 0, 829 },
- { 7, 10, 767 }, { 5, 0, 164 }, { 7, 0, 121 }, { 14, 0, 189 },
- { 7, 0, 812 }, { 7, 0, 1261 }, { 7, 0, 1360 }, { 9, 0, 632 },
- { 12, 0, 352 }, { 7, 11, 1788 }, { 11, 0, 556 }, { 7, 11, 997 },
- { 17, 10, 114 }, { 4, 0, 172 }, { 9, 0, 611 }, { 10, 0, 436 },
- { 12, 0, 673 }, { 13, 0, 255 }, { 9, 10, 883 }, { 11, 0, 530 },
- { 10, 10, 274 }, { 5, 0, 844 }, { 6, 0, 984 }, { 13, 0, 232 },
- { 18, 0, 35 }, { 4, 10, 703 }, { 7, 10, 207 }, { 4, 10, 571 },
- { 9, 0, 263 }, { 10, 0, 147 }, { 10, 0, 492 }, { 7, 11, 1756 },
- { 9, 11, 98 }, { 5, 10, 873 }, { 5, 10, 960 }, { 8, 10, 823 },
- { 9, 10, 881 }, { 5, 0, 537 }, { 4, 0, 859 }, { 7, 11, 1046 },
- { 11, 11, 160 }, { 9, 0, 842 }, { 11, 10, 283 }, { 5, 10, 33 },
- { 6, 10, 470 }, { 11, 10, 424 }, { 6, 11, 45 }, { 7, 11, 433 },
- { 8, 11, 129 }, { 9, 11, 21 }, { 10, 11, 392 }, { 11, 11, 79 },
- { 12, 11, 499 }, { 13, 11, 199 }, { 13, 11, 451 }, { 7, 0, 1291 },
- { 7, 10, 1882 }, { 7, 11, 558 }, { 8, 11, 353 }, { 6, 0, 1482 },
- { 5, 0, 230 }, { 5, 0, 392 }, { 6, 0, 420 }, { 9, 0, 568 },
- { 12, 0, 612 }, { 6, 0, 262 }, { 7, 10, 90 }, { 7, 10, 664 },
- { 7, 10, 830 }, { 7, 10, 1380 }, { 7, 10, 2025 }, { 8, 11, 81 },
- { 8, 10, 448 }, { 8, 10, 828 }, { 9, 11, 189 }, { 9, 11, 201 },
- { 11, 11, 478 }, { 11, 11, 712 }, { 13, 11, 338 }, { 14, 0, 31 },
- { 5, 11, 353 }, { 23, 11, 26 }, { 4, 0, 753 }, { 4, 0, 0 },
- { 5, 0, 41 }, { 7, 0, 1459 }, { 7, 0, 1469 }, { 7, 0, 1859 },
- { 9, 0, 549 }, { 11, 0, 905 }, { 9, 10, 417 }, { 9, 10, 493 },
- { 7, 11, 1113 }, { 5, 0, 696 }, { 13, 11, 448 }, { 6, 10, 295 },
- { 4, 0, 834 }, { 4, 0, 771 }, { 5, 10, 1019 }, { 6, 11, 25 },
- { 7, 11, 855 }, { 7, 11, 1258 }, { 16, 11, 32 }, { 6, 0, 1076 },
- { 5, 0, 921 }, { 5, 0, 674 }, { 4, 11, 4 }, { 7, 11, 1118 },
- { 7, 11, 1320 }, { 7, 11, 1706 }, { 8, 11, 277 }, { 9, 11, 622 },
- { 10, 11, 9 }, { 11, 11, 724 }, { 12, 11, 350 }, { 12, 11, 397 },
- { 13, 11, 28 }, { 13, 11, 159 }, { 15, 11, 89 }, { 18, 11, 5 },
- { 19, 11, 9 }, { 20, 11, 34 }, { 22, 11, 47 }, { 6, 10, 208 },
- { 6, 0, 444 }, { 8, 0, 308 }, { 6, 0, 180 }, { 7, 0, 1137 },
- { 8, 0, 751 }, { 11, 0, 805 }, { 4, 0, 183 }, { 7, 0, 271 },
- { 11, 0, 824 }, { 11, 0, 952 }, { 13, 0, 278 }, { 13, 0, 339 },
- { 13, 0, 482 }, { 14, 0, 424 }, { 20, 0, 99 }, { 7, 11, 317 },
- { 7, 11, 569 }, { 4, 0, 19 }, { 5, 0, 477 }, { 5, 0, 596 },
- { 6, 0, 505 }, { 7, 0, 1221 }, { 11, 0, 907 }, { 12, 0, 209 },
- { 13, 0, 214 }, { 7, 0, 1215 }, { 6, 0, 271 }, { 7, 0, 398 },
- { 8, 0, 387 }, { 10, 0, 344 }, { 7, 10, 448 }, { 7, 10, 1629 },
- { 7, 10, 1813 }, { 8, 10, 442 }, { 9, 10, 710 }, { 10, 10, 282 },
- { 10, 10, 722 }, { 11, 10, 844 }, { 12, 10, 104 }, { 12, 10, 625 },
- { 6, 11, 255 }, { 5, 10, 787 }, { 6, 0, 1645 }, { 11, 11, 956 },
- { 23, 11, 3 }, { 6, 0, 92 }, { 6, 0, 188 }, { 7, 0, 209 },
- { 7, 0, 1269 }, { 7, 0, 1524 }, { 7, 0, 1876 }, { 8, 0, 661 },
- { 10, 0, 42 }, { 10, 0, 228 }, { 11, 0, 58 }, { 11, 0, 1020 },
- { 12, 0, 58 }, { 12, 0, 118 }, { 13, 0, 32 }, { 4, 0, 459 },
- { 5, 0, 966 }, { 4, 11, 536 }, { 7, 11, 1141 }, { 10, 11, 723 },
- { 11, 11, 371 }, { 12, 0, 330 }, { 6, 0, 1557 }, { 7, 11, 285 },
- { 7, 11, 876 }, { 8, 10, 491 }, { 7, 11, 560 }, { 6, 0, 18 },
- { 7, 0, 179 }, { 7, 0, 932 }, { 8, 0, 548 }, { 8, 0, 757 },
- { 9, 0, 54 }, { 9, 0, 65 }, { 9, 0, 532 }, { 9, 0, 844 },
- { 10, 0, 113 }, { 10, 0, 117 }, { 10, 0, 315 }, { 10, 0, 560 },
- { 10, 0, 622 }, { 10, 0, 798 }, { 11, 0, 153 }, { 11, 0, 351 },
- { 11, 0, 375 }, { 12, 0, 78 }, { 12, 0, 151 }, { 12, 0, 392 },
- { 12, 0, 666 }, { 14, 0, 248 }, { 15, 0, 23 }, { 6, 0, 1742 },
- { 4, 11, 690 }, { 4, 10, 403 }, { 5, 10, 441 }, { 7, 10, 450 },
- { 10, 10, 840 }, { 11, 10, 101 }, { 12, 10, 193 }, { 13, 10, 430 },
- { 5, 0, 965 }, { 6, 0, 182 }, { 10, 0, 65 }, { 10, 0, 488 },
- { 10, 0, 497 }, { 7, 11, 1346 }, { 6, 0, 973 }, { 6, 0, 1158 },
- { 10, 11, 200 }, { 19, 11, 2 }, { 23, 11, 22 }, { 4, 11, 190 },
- { 5, 11, 554 }, { 5, 10, 679 }, { 7, 0, 328 }, { 9, 10, 326 },
- { 5, 11, 1001 }, { 9, 0, 588 }, { 10, 0, 260 }, { 5, 11, 446 },
- { 7, 10, 1128 }, { 7, 10, 1796 }, { 19, 11, 119 }, { 6, 0, 1786 },
- { 6, 0, 1328 }, { 6, 0, 1985 }, { 8, 0, 962 }, { 10, 0, 1017 },
- { 7, 0, 308 }, { 11, 0, 508 }, { 4, 10, 574 }, { 7, 10, 350 },
- { 7, 10, 1024 }, { 8, 10, 338 }, { 9, 10, 677 }, { 10, 10, 808 },
- { 10, 11, 752 }, { 7, 10, 1081 }, { 9, 11, 96 }, { 7, 10, 1676 },
- { 7, 10, 2037 }, { 8, 0, 588 }, { 4, 11, 304 }, { 5, 0, 614 },
- { 12, 0, 793 }, { 8, 0, 287 }, { 9, 10, 297 }, { 13, 10, 37 },
- { 6, 11, 53 }, { 6, 11, 199 }, { 7, 11, 1408 }, { 8, 11, 32 },
- { 8, 11, 93 }, { 9, 11, 437 }, { 10, 11, 397 }, { 10, 11, 629 },
- { 11, 11, 593 }, { 11, 11, 763 }, { 13, 11, 326 }, { 17, 11, 35 },
- { 6, 11, 105 }, { 9, 11, 320 }, { 10, 11, 506 }, { 10, 11, 794 },
- { 5, 11, 114 }, { 5, 11, 255 }, { 13, 11, 285 }, { 12, 0, 290 },
- { 7, 11, 2035 }, { 8, 11, 19 }, { 9, 11, 89 }, { 10, 11, 831 },
- { 6, 0, 1136 }, { 7, 0, 719 }, { 8, 0, 796 }, { 8, 0, 809 },
- { 8, 0, 834 }, { 6, 10, 306 }, { 7, 10, 1140 }, { 7, 10, 1340 },
- { 8, 10, 133 }, { 10, 10, 449 }, { 11, 10, 1011 }, { 5, 0, 210 },
- { 6, 0, 213 }, { 7, 0, 60 }, { 10, 0, 364 }, { 11, 0, 135 },
- { 5, 0, 607 }, { 8, 0, 326 }, { 8, 0, 490 }, { 10, 11, 176 },
- { 4, 0, 701 }, { 5, 0, 472 }, { 7, 0, 380 }, { 9, 0, 758 },
- { 7, 0, 1947 }, { 6, 0, 1079 }, { 10, 0, 278 }, { 10, 11, 391 },
- { 5, 10, 329 }, { 8, 10, 260 }, { 11, 11, 156 }, { 4, 0, 386 },
- { 7, 0, 41 }, { 8, 0, 405 }, { 8, 0, 728 }, { 9, 0, 497 },
- { 11, 0, 110 }, { 11, 0, 360 }, { 15, 0, 37 }, { 16, 0, 84 },
- { 5, 0, 46 }, { 7, 0, 1452 }, { 7, 0, 1480 }, { 8, 0, 634 },
- { 12, 0, 472 }, { 8, 0, 961 }, { 4, 0, 524 }, { 8, 0, 810 },
- { 10, 0, 238 }, { 13, 0, 33 }, { 4, 10, 657 }, { 24, 10, 7 },
- { 5, 0, 532 }, { 5, 0, 997 }, { 7, 10, 1665 }, { 7, 11, 594 },
- { 7, 11, 851 }, { 7, 11, 1858 }, { 9, 11, 411 }, { 9, 11, 574 },
- { 9, 11, 666 }, { 9, 11, 737 }, { 10, 11, 346 }, { 10, 11, 712 },
- { 11, 11, 246 }, { 11, 11, 432 }, { 11, 11, 517 }, { 11, 11, 647 },
- { 11, 11, 679 }, { 11, 11, 727 }, { 12, 11, 304 }, { 12, 11, 305 },
- { 12, 11, 323 }, { 12, 11, 483 }, { 12, 11, 572 }, { 12, 11, 593 },
- { 12, 11, 602 }, { 13, 11, 95 }, { 13, 11, 101 }, { 13, 11, 171 },
- { 13, 11, 315 }, { 13, 11, 378 }, { 13, 11, 425 }, { 13, 11, 475 },
- { 14, 11, 63 }, { 14, 11, 380 }, { 14, 11, 384 }, { 15, 11, 133 },
- { 18, 11, 112 }, { 20, 11, 72 }, { 5, 11, 955 }, { 8, 11, 814 },
- { 6, 0, 1301 }, { 5, 10, 66 }, { 7, 10, 1896 }, { 8, 10, 288 },
- { 5, 11, 56 }, { 6, 10, 1643 }, { 6, 0, 1298 }, { 20, 11, 100 },
- { 5, 0, 782 }, { 5, 0, 829 }, { 6, 0, 671 }, { 6, 0, 1156 },
- { 6, 0, 1738 }, { 9, 11, 621 }, { 4, 0, 306 }, { 5, 0, 570 },
- { 7, 0, 1347 }, { 5, 10, 91 }, { 5, 10, 648 }, { 5, 10, 750 },
- { 5, 10, 781 }, { 6, 10, 54 }, { 6, 10, 112 }, { 6, 10, 402 },
- { 6, 10, 1732 }, { 7, 10, 315 }, { 7, 10, 749 }, { 7, 10, 1900 },
- { 9, 10, 78 }, { 9, 10, 508 }, { 10, 10, 611 }, { 10, 10, 811 },
- { 11, 10, 510 }, { 11, 10, 728 }, { 13, 10, 36 }, { 14, 10, 39 },
- { 16, 10, 83 }, { 17, 10, 124 }, { 20, 10, 30 }, { 8, 10, 570 },
- { 9, 11, 477 }, { 13, 11, 78 }, { 4, 11, 639 }, { 10, 11, 4 },
- { 10, 10, 322 }, { 10, 10, 719 }, { 11, 10, 407 }, { 11, 11, 638 },
- { 12, 11, 177 }, { 20, 11, 57 }, { 7, 0, 1823 }, { 11, 0, 693 },
- { 7, 0, 759 }, { 5, 11, 758 }, { 8, 10, 125 }, { 8, 10, 369 },
- { 8, 10, 524 }, { 10, 10, 486 }, { 11, 10, 13 }, { 11, 10, 381 },
- { 11, 10, 736 }, { 11, 10, 766 }, { 11, 10, 845 }, { 13, 10, 114 },
- { 13, 10, 292 }, { 14, 10, 47 }, { 7, 0, 1932 }, { 6, 10, 1684 },
- { 6, 10, 1731 }, { 7, 10, 356 }, { 8, 10, 54 }, { 8, 10, 221 },
- { 9, 10, 225 }, { 9, 10, 356 }, { 10, 10, 77 }, { 10, 10, 446 },
- { 10, 10, 731 }, { 12, 10, 404 }, { 13, 10, 491 }, { 7, 11, 552 },
- { 7, 11, 1112 }, { 4, 0, 78 }, { 5, 0, 96 }, { 5, 0, 182 },
- { 6, 0, 1257 }, { 7, 0, 1724 }, { 7, 0, 1825 }, { 10, 0, 394 },
- { 10, 0, 471 }, { 11, 0, 532 }, { 14, 0, 340 }, { 17, 0, 88 },
- { 11, 11, 328 }, { 7, 0, 1964 }, { 4, 10, 411 }, { 4, 10, 80 },
- { 5, 10, 44 }, { 9, 11, 133 }, { 5, 11, 110 }, { 6, 11, 169 },
- { 6, 11, 1702 }, { 7, 11, 400 }, { 8, 11, 538 }, { 9, 11, 184 },
- { 9, 11, 524 }, { 12, 11, 218 }, { 4, 0, 521 }, { 5, 10, 299 },
- { 7, 10, 1083 }, { 12, 11, 554 }, { 6, 11, 133 }, { 9, 11, 353 },
- { 12, 11, 628 }, { 18, 11, 79 }, { 6, 0, 215 }, { 7, 0, 584 },
- { 7, 0, 1028 }, { 7, 0, 1473 }, { 7, 0, 1721 }, { 9, 0, 424 },
- { 10, 0, 779 }, { 7, 0, 857 }, { 7, 0, 1209 }, { 7, 10, 1713 },
- { 9, 10, 537 }, { 10, 10, 165 }, { 12, 10, 219 }, { 12, 10, 561 },
- { 4, 10, 219 }, { 6, 11, 93 }, { 7, 11, 1422 }, { 7, 10, 1761 },
- { 7, 11, 1851 }, { 8, 11, 673 }, { 9, 10, 86 }, { 9, 11, 529 },
- { 12, 11, 43 }, { 9, 11, 371 }, { 8, 0, 671 }, { 5, 0, 328 },
- { 7, 0, 918 }, { 4, 0, 529 }, { 9, 11, 25 }, { 10, 11, 467 },
- { 10, 11, 559 }, { 4, 11, 335 }, { 7, 11, 942 }, { 6, 0, 716 },
- { 6, 0, 1509 }, { 6, 0, 67 }, { 7, 0, 258 }, { 7, 0, 1630 },
- { 9, 0, 354 }, { 9, 0, 675 }, { 10, 0, 830 }, { 14, 0, 80 },
- { 17, 0, 80 }, { 12, 10, 428 }, { 6, 0, 1112 }, { 6, 0, 141 },
- { 7, 0, 225 }, { 9, 0, 59 }, { 9, 0, 607 }, { 10, 0, 312 },
- { 11, 0, 687 }, { 12, 0, 555 }, { 13, 0, 373 }, { 13, 0, 494 },
- { 20, 0, 58 }, { 5, 10, 514 }, { 8, 11, 39 }, { 10, 11, 773 },
- { 11, 11, 84 }, { 12, 11, 205 }, { 14, 11, 1 }, { 8, 0, 783 },
- { 5, 11, 601 }, { 5, 11, 870 }, { 8, 11, 594 }, { 4, 10, 55 },
- { 5, 10, 301 }, { 6, 10, 571 }, { 14, 10, 49 }, { 18, 10, 102 },
- { 4, 11, 181 }, { 6, 11, 1652 }, { 5, 10, 364 }, { 4, 11, 97 },
- { 5, 11, 147 }, { 6, 11, 286 }, { 7, 11, 1362 }, { 13, 11, 176 },
- { 4, 10, 76 }, { 7, 10, 1550 }, { 9, 10, 306 }, { 9, 10, 430 },
- { 9, 10, 663 }, { 10, 10, 683 }, { 11, 10, 427 }, { 11, 10, 753 },
- { 12, 10, 334 }, { 12, 10, 442 }, { 14, 10, 258 }, { 14, 10, 366 },
- { 15, 10, 131 }, { 9, 10, 52 }, { 6, 0, 955 }, { 6, 0, 1498 },
- { 6, 11, 375 }, { 7, 11, 169 }, { 7, 11, 254 }, { 8, 11, 780 },
- { 7, 0, 430 }, { 11, 0, 46 }, { 14, 0, 343 }, { 14, 11, 343 },
- { 7, 0, 1183 }, { 5, 0, 602 }, { 7, 0, 2018 }, { 9, 0, 418 },
- { 9, 0, 803 }, { 7, 11, 1447 }, { 8, 0, 677 }, { 7, 11, 1044 },
- { 11, 11, 285 }, { 4, 10, 656 }, { 7, 10, 779 }, { 7, 10, 144 },
- { 5, 11, 629 }, { 7, 11, 1549 }, { 7, 10, 1373 }, { 10, 11, 209 },
- { 7, 10, 554 }, { 7, 10, 605 }, { 13, 10, 10 }, { 5, 10, 838 },
- { 5, 10, 841 }, { 6, 10, 1649 }, { 5, 10, 1012 }, { 6, 0, 1357 },
- { 6, 0, 1380 }, { 16, 0, 53 }, { 6, 0, 590 }, { 7, 10, 365 },
- { 7, 10, 1357 }, { 7, 10, 1497 }, { 8, 10, 154 }, { 13, 10, 281 },
- { 5, 10, 340 }, { 4, 11, 420 }, { 7, 0, 329 }, { 19, 11, 32 },
- { 4, 0, 469 }, { 10, 11, 429 }, { 11, 10, 495 }, { 8, 10, 261 },
- { 9, 10, 144 }, { 9, 10, 466 }, { 10, 10, 370 }, { 12, 10, 470 },
- { 13, 10, 144 }, { 14, 10, 348 }, { 14, 0, 460 }, { 4, 11, 325 },
- { 9, 10, 897 }, { 10, 11, 125 }, { 6, 0, 1743 }, { 6, 10, 248 },
- { 9, 10, 546 }, { 10, 10, 535 }, { 11, 10, 681 }, { 13, 10, 135 },
- { 4, 0, 990 }, { 5, 0, 929 }, { 6, 0, 340 }, { 8, 0, 376 },
- { 8, 0, 807 }, { 8, 0, 963 }, { 8, 0, 980 }, { 10, 0, 1007 },
- { 6, 0, 1603 }, { 12, 0, 250 }, { 4, 11, 714 }, { 5, 11, 469 },
- { 6, 10, 567 }, { 8, 10, 445 }, { 5, 0, 218 }, { 7, 0, 1610 },
- { 8, 0, 646 }, { 10, 0, 83 }, { 11, 11, 138 }, { 12, 11, 40 },
- { 7, 0, 1512 }, { 7, 0, 1794 }, { 7, 11, 1216 }, { 11, 0, 0 },
- { 16, 0, 78 }, { 4, 11, 718 }, { 5, 0, 571 }, { 4, 0, 455 },
- { 6, 0, 1012 }, { 5, 11, 124 }, { 5, 11, 144 }, { 6, 11, 548 },
- { 7, 11, 15 }, { 7, 11, 153 }, { 9, 11, 629 }, { 14, 11, 10 },
- { 6, 11, 75 }, { 7, 11, 1531 }, { 8, 11, 416 }, { 9, 11, 240 },
- { 9, 11, 275 }, { 10, 11, 100 }, { 11, 11, 658 }, { 11, 11, 979 },
- { 12, 11, 86 }, { 13, 11, 468 }, { 14, 11, 66 }, { 14, 11, 207 },
- { 15, 11, 20 }, { 15, 11, 25 }, { 16, 11, 58 }, { 4, 10, 577 },
- { 5, 11, 141 }, { 5, 11, 915 }, { 6, 11, 1783 }, { 7, 11, 211 },
- { 7, 11, 698 }, { 7, 11, 1353 }, { 9, 11, 83 }, { 9, 11, 281 },
- { 10, 11, 376 }, { 10, 11, 431 }, { 11, 11, 543 }, { 12, 11, 664 },
- { 13, 11, 280 }, { 13, 11, 428 }, { 14, 11, 61 }, { 14, 11, 128 },
- { 17, 11, 52 }, { 17, 11, 81 }, { 6, 0, 161 }, { 7, 0, 372 },
- { 9, 0, 597 }, { 4, 0, 349 }, { 10, 11, 702 }, { 11, 11, 245 },
- { 6, 0, 524 }, { 6, 10, 174 }, { 6, 0, 432 }, { 9, 0, 751 },
- { 11, 0, 322 }, { 19, 11, 94 }, { 4, 11, 338 }, { 5, 11, 400 },
- { 5, 0, 468 }, { 10, 0, 325 }, { 11, 0, 856 }, { 12, 0, 345 },
- { 15, 0, 104 }, { 5, 0, 223 }, { 4, 0, 566 }, { 4, 11, 221 },
- { 5, 11, 659 }, { 5, 11, 989 }, { 7, 11, 697 }, { 7, 11, 1211 },
- { 10, 11, 284 }, { 7, 11, 1070 }, { 4, 0, 59 }, { 7, 0, 1394 },
- { 6, 0, 436 }, { 11, 0, 481 }, { 5, 10, 878 }, { 5, 10, 972 },
- { 4, 0, 48 }, { 5, 0, 271 }, { 7, 0, 953 }, { 5, 0, 610 },
- { 8, 0, 457 }, { 4, 0, 773 }, { 5, 0, 618 }, { 9, 0, 756 },
- { 5, 0, 755 }, { 7, 0, 1217 }, { 10, 11, 507 }, { 4, 10, 351 },
- { 4, 0, 197 }, { 15, 11, 78 }, { 4, 11, 188 }, { 7, 11, 805 },
- { 11, 11, 276 }, { 14, 11, 293 }, { 5, 11, 884 }, { 11, 11, 991 },
- { 4, 10, 286 }, { 10, 0, 259 }, { 10, 0, 428 }, { 7, 10, 438 },
- { 7, 10, 627 }, { 7, 10, 1516 }, { 8, 10, 40 }, { 9, 10, 56 },
- { 9, 10, 294 }, { 11, 10, 969 }, { 11, 10, 995 }, { 18, 10, 148 },
- { 4, 0, 356 }, { 5, 0, 217 }, { 5, 0, 492 }, { 5, 0, 656 },
- { 8, 0, 544 }, { 8, 11, 544 }, { 5, 0, 259 }, { 6, 0, 1230 },
- { 7, 0, 414 }, { 7, 0, 854 }, { 14, 0, 107 }, { 4, 0, 1007 },
- { 15, 0, 14 }, { 16, 0, 5 }, { 6, 0, 1580 }, { 4, 10, 738 },
- { 4, 11, 596 }, { 4, 0, 673 }, { 5, 10, 866 }, { 6, 0, 1843 },
- { 7, 11, 1847 }, { 4, 0, 165 }, { 7, 0, 1398 }, { 7, 0, 1829 },
- { 7, 11, 1634 }, { 19, 11, 65 }, { 6, 0, 885 }, { 6, 0, 1009 },
- { 9, 0, 809 }, { 5, 10, 116 }, { 4, 10, 457 }, { 8, 11, 770 },
- { 9, 0, 498 }, { 12, 0, 181 }, { 10, 11, 361 }, { 14, 11, 316 },
- { 6, 11, 595 }, { 5, 0, 9 }, { 7, 0, 297 }, { 7, 0, 966 },
- { 12, 0, 306 }, { 4, 11, 89 }, { 5, 11, 489 }, { 6, 11, 315 },
- { 7, 11, 553 }, { 7, 11, 1745 }, { 10, 11, 243 }, { 6, 0, 1487 },
- { 4, 0, 437 }, { 5, 0, 146 }, { 6, 0, 411 }, { 10, 0, 721 },
- { 5, 10, 527 }, { 6, 10, 189 }, { 7, 10, 859 }, { 11, 10, 104 },
- { 11, 10, 554 }, { 15, 10, 60 }, { 15, 10, 125 }, { 6, 11, 1658 },
- { 9, 11, 3 }, { 10, 11, 154 }, { 11, 11, 641 }, { 13, 11, 85 },
- { 13, 11, 201 }, { 13, 11, 346 }, { 6, 0, 177 }, { 7, 0, 467 },
- { 6, 0, 1377 }, { 6, 10, 116 }, { 8, 11, 645 }, { 4, 11, 166 },
- { 5, 11, 505 }, { 6, 11, 1670 }, { 9, 11, 110 }, { 5, 10, 487 },
- { 4, 10, 86 }, { 5, 10, 667 }, { 5, 10, 753 }, { 6, 10, 316 },
- { 6, 10, 455 }, { 7, 10, 946 }, { 5, 0, 200 }, { 4, 0, 959 },
- { 6, 0, 1928 }, { 6, 0, 1957 }, { 11, 11, 203 }, { 22, 10, 45 },
- { 4, 10, 79 }, { 7, 10, 1773 }, { 10, 10, 450 }, { 11, 10, 589 },
- { 13, 10, 332 }, { 13, 10, 493 }, { 14, 10, 183 }, { 14, 10, 334 },
- { 14, 10, 362 }, { 14, 10, 368 }, { 14, 10, 376 }, { 14, 10, 379 },
- { 19, 10, 90 }, { 19, 10, 103 }, { 19, 10, 127 }, { 20, 10, 90 },
- { 6, 0, 1435 }, { 7, 11, 1275 }, { 6, 0, 481 }, { 7, 11, 445 },
- { 8, 11, 307 }, { 8, 11, 704 }, { 10, 11, 41 }, { 10, 11, 439 },
- { 11, 11, 237 }, { 11, 11, 622 }, { 12, 11, 201 }, { 7, 11, 869 },
- { 4, 0, 84 }, { 7, 0, 1482 }, { 10, 0, 76 }, { 10, 0, 142 },
- { 11, 11, 277 }, { 16, 11, 14 }, { 7, 11, 1977 }, { 4, 11, 189 },
- { 5, 11, 713 }, { 8, 11, 57 }, { 5, 0, 1015 }, { 10, 11, 371 },
- { 4, 0, 315 }, { 5, 0, 507 }, { 7, 0, 1370 }, { 4, 11, 552 },
- { 14, 10, 381 }, { 9, 0, 759 }, { 16, 0, 31 }, { 16, 0, 39 },
- { 16, 0, 75 }, { 18, 0, 24 }, { 20, 0, 42 }, { 24, 0, 1 },
- { 6, 0, 712 }, { 6, 0, 1722 }, { 5, 10, 663 }, { 5, 10, 846 },
- { 8, 0, 222 }, { 8, 0, 476 }, { 9, 0, 238 }, { 11, 0, 516 },
- { 11, 0, 575 }, { 15, 0, 109 }, { 18, 0, 100 }, { 7, 0, 1402 },
- { 7, 0, 1414 }, { 12, 0, 456 }, { 5, 10, 378 }, { 8, 10, 465 },
- { 9, 10, 286 }, { 10, 10, 185 }, { 10, 10, 562 }, { 10, 10, 635 },
- { 11, 10, 31 }, { 11, 10, 393 }, { 13, 10, 312 }, { 18, 10, 65 },
- { 18, 10, 96 }, { 19, 10, 89 }, { 4, 0, 986 }, { 6, 0, 1958 },
- { 6, 0, 2032 }, { 8, 0, 934 }, { 10, 0, 985 }, { 7, 10, 1880 },
- { 9, 10, 680 }, { 11, 10, 798 }, { 6, 10, 1770 }, { 17, 11, 49 },
- { 4, 11, 614 }, { 4, 10, 648 }, { 5, 10, 945 }, { 6, 10, 1656 },
- { 6, 10, 1787 }, { 7, 10, 167 }, { 8, 10, 824 }, { 9, 10, 391 },
- { 10, 10, 375 }, { 11, 10, 185 }, { 10, 11, 661 }, { 7, 0, 1273 },
- { 7, 11, 1945 }, { 7, 0, 706 }, { 7, 0, 1058 }, { 10, 0, 538 },
- { 7, 10, 1645 }, { 8, 10, 352 }, { 9, 10, 249 }, { 4, 10, 152 },
- { 11, 0, 92 }, { 11, 0, 196 }, { 11, 0, 409 }, { 11, 0, 450 },
- { 11, 0, 666 }, { 11, 0, 777 }, { 12, 0, 262 }, { 13, 0, 385 },
- { 13, 0, 393 }, { 15, 0, 115 }, { 16, 0, 45 }, { 17, 0, 82 },
- { 5, 10, 1006 }, { 6, 0, 40 }, { 7, 0, 1781 }, { 9, 11, 614 },
- { 11, 11, 327 }, { 5, 10, 420 }, { 7, 10, 1449 }, { 7, 0, 431 },
- { 10, 0, 97 }, { 7, 10, 832 }, { 6, 0, 423 }, { 7, 0, 665 },
- { 7, 0, 1210 }, { 7, 0, 237 }, { 8, 0, 664 }, { 9, 0, 42 },
- { 9, 0, 266 }, { 9, 0, 380 }, { 9, 0, 645 }, { 10, 0, 177 },
- { 10, 0, 276 }, { 7, 0, 264 }, { 5, 10, 351 }, { 8, 0, 213 },
- { 5, 10, 40 }, { 7, 10, 598 }, { 7, 10, 1638 }, { 9, 10, 166 },
- { 9, 10, 640 }, { 9, 10, 685 }, { 9, 10, 773 }, { 11, 10, 215 },
- { 13, 10, 65 }, { 14, 10, 172 }, { 14, 10, 317 }, { 17, 10, 6 },
- { 5, 11, 84 }, { 6, 11, 163 }, { 8, 10, 60 }, { 9, 10, 343 },
- { 11, 10, 769 }, { 9, 0, 455 }, { 5, 11, 410 }, { 8, 0, 906 },
- { 12, 0, 700 }, { 12, 0, 706 }, { 12, 0, 729 }, { 21, 11, 33 },
- { 22, 11, 40 }, { 7, 10, 1951 }, { 8, 10, 765 }, { 8, 10, 772 },
- { 12, 10, 671 }, { 7, 10, 108 }, { 8, 10, 219 }, { 8, 10, 388 },
- { 9, 10, 639 }, { 9, 10, 775 }, { 11, 10, 275 }, { 12, 10, 464 },
- { 5, 11, 322 }, { 7, 11, 1941 }, { 8, 11, 186 }, { 9, 11, 262 },
- { 10, 11, 187 }, { 14, 11, 208 }, { 18, 11, 130 }, { 11, 0, 624 },
- { 8, 0, 574 }, { 5, 11, 227 }, { 12, 11, 29 }, { 7, 11, 1546 },
- { 11, 11, 299 }, { 14, 11, 407 }, { 5, 10, 15 }, { 6, 10, 56 },
- { 7, 10, 1758 }, { 8, 10, 500 }, { 9, 10, 730 }, { 11, 10, 331 },
- { 13, 10, 150 }, { 14, 10, 282 }, { 7, 11, 1395 }, { 8, 11, 486 },
- { 9, 11, 236 }, { 9, 11, 878 }, { 10, 11, 218 }, { 11, 11, 95 },
- { 19, 11, 17 }, { 19, 11, 31 }, { 7, 11, 2043 }, { 4, 0, 354 },
- { 18, 11, 4 }, { 12, 11, 80 }, { 7, 0, 1558 }, { 6, 10, 1886 },
- { 5, 10, 205 }, { 6, 10, 438 }, { 9, 10, 711 }, { 5, 11, 522 },
- { 5, 10, 534 }, { 7, 0, 235 }, { 7, 0, 1475 }, { 15, 0, 68 },
- { 18, 0, 120 }, { 9, 10, 691 }, { 4, 0, 942 }, { 6, 0, 1813 },
- { 8, 0, 917 }, { 10, 0, 884 }, { 12, 0, 696 }, { 12, 0, 717 },
- { 12, 0, 723 }, { 12, 0, 738 }, { 12, 0, 749 }, { 12, 0, 780 },
- { 16, 0, 97 }, { 18, 0, 169 }, { 6, 10, 443 }, { 8, 11, 562 },
- { 9, 10, 237 }, { 9, 10, 571 }, { 9, 10, 695 }, { 10, 10, 139 },
- { 11, 10, 715 }, { 12, 10, 417 }, { 13, 10, 421 }, { 7, 0, 957 },
- { 5, 0, 830 }, { 6, 11, 1771 }, { 18, 0, 23 }, { 5, 0, 496 },
- { 6, 0, 694 }, { 7, 0, 203 }, { 7, 11, 1190 }, { 9, 11, 620 },
- { 9, 11, 132 }, { 6, 0, 547 }, { 6, 0, 1549 }, { 8, 11, 258 },
- { 9, 11, 208 }, { 9, 11, 359 }, { 4, 0, 864 }, { 5, 0, 88 },
- { 9, 0, 239 }, { 7, 11, 493 }, { 4, 11, 317 }, { 7, 11, 1279 },
- { 4, 11, 477 }, { 4, 10, 578 }, { 5, 11, 63 }, { 5, 11, 509 },
- { 7, 0, 650 }, { 7, 0, 1310 }, { 7, 0, 1076 }, { 9, 0, 80 },
- { 11, 0, 78 }, { 11, 0, 421 }, { 11, 0, 534 }, { 12, 0, 545 },
- { 4, 11, 288 }, { 12, 0, 553 }, { 14, 0, 118 }, { 5, 10, 923 },
- { 7, 0, 274 }, { 11, 0, 479 }, { 11, 0, 507 }, { 8, 11, 89 },
- { 8, 11, 620 }, { 9, 11, 49 }, { 10, 11, 774 }, { 11, 11, 628 },
- { 12, 11, 322 }, { 15, 11, 124 }, { 4, 0, 497 }, { 7, 0, 1584 },
- { 7, 0, 261 }, { 7, 0, 1115 }, { 7, 0, 1354 }, { 7, 0, 1404 },
- { 7, 0, 1588 }, { 7, 0, 1705 }, { 7, 0, 1902 }, { 9, 0, 465 },
- { 10, 0, 248 }, { 10, 0, 349 }, { 10, 0, 647 }, { 11, 0, 527 },
- { 11, 0, 660 }, { 11, 0, 669 }, { 12, 0, 529 }, { 13, 0, 305 },
- { 4, 10, 924 }, { 5, 10, 665 }, { 8, 0, 13 }, { 6, 0, 791 },
- { 10, 11, 120 }, { 7, 0, 642 }, { 8, 0, 250 }, { 11, 0, 123 },
- { 11, 0, 137 }, { 13, 0, 48 }, { 14, 0, 95 }, { 4, 10, 265 },
- { 7, 10, 807 }, { 7, 10, 950 }, { 5, 10, 93 }, { 12, 10, 267 },
- { 7, 0, 1429 }, { 4, 0, 949 }, { 10, 0, 885 }, { 10, 0, 891 },
- { 10, 0, 900 }, { 10, 0, 939 }, { 12, 0, 760 }, { 14, 0, 449 },
- { 11, 11, 366 }, { 4, 0, 818 }, { 6, 11, 85 }, { 7, 10, 994 },
- { 7, 0, 330 }, { 5, 10, 233 }, { 5, 10, 320 }, { 6, 10, 140 },
- { 8, 10, 295 }, { 4, 0, 1004 }, { 8, 0, 982 }, { 8, 0, 993 },
- { 5, 10, 978 }, { 4, 10, 905 }, { 6, 10, 1701 }, { 9, 10, 843 },
- { 10, 0, 545 }, { 12, 0, 301 }, { 6, 0, 947 }, { 6, 0, 1062 },
- { 6, 0, 1188 }, { 4, 0, 904 }, { 5, 0, 794 }, { 24, 10, 6 },
- { 6, 0, 1372 }, { 7, 11, 608 }, { 5, 11, 279 }, { 6, 11, 235 },
- { 7, 11, 468 }, { 8, 11, 446 }, { 9, 11, 637 }, { 10, 11, 717 },
- { 11, 11, 738 }, { 12, 11, 514 }, { 4, 10, 509 }, { 5, 11, 17 },
- { 6, 11, 371 }, { 9, 11, 528 }, { 4, 0, 693 }, { 4, 11, 115 },
- { 5, 11, 669 }, { 6, 11, 407 }, { 8, 11, 311 }, { 11, 11, 10 },
- { 13, 11, 5 }, { 11, 0, 377 }, { 7, 10, 273 }, { 9, 11, 381 },
- { 7, 0, 695 }, { 7, 0, 386 }, { 10, 0, 713 }, { 7, 10, 1041 },
- { 6, 0, 1291 }, { 6, 0, 7 }, { 6, 0, 35 }, { 7, 0, 147 },
- { 7, 0, 1069 }, { 7, 0, 1568 }, { 7, 0, 1575 }, { 7, 0, 1917 },
- { 8, 0, 43 }, { 8, 0, 208 }, { 9, 0, 128 }, { 9, 0, 866 },
- { 10, 0, 20 }, { 11, 0, 981 }, { 19, 0, 33 }, { 7, 0, 893 },
- { 13, 0, 424 }, { 11, 10, 234 }, { 22, 11, 56 }, { 5, 11, 779 },
- { 5, 11, 807 }, { 6, 11, 1655 }, { 6, 11, 1676 }, { 5, 10, 802 },
- { 7, 10, 2021 }, { 8, 10, 805 }, { 4, 11, 196 }, { 5, 10, 167 },
- { 5, 11, 558 }, { 5, 10, 899 }, { 5, 11, 949 }, { 6, 10, 410 },
- { 9, 10, 777 }, { 9, 10, 789 }, { 6, 10, 1705 }, { 8, 0, 904 },
- { 12, 0, 787 }, { 6, 0, 322 }, { 9, 0, 552 }, { 11, 0, 274 },
- { 13, 0, 209 }, { 13, 0, 499 }, { 14, 0, 85 }, { 15, 0, 126 },
- { 17, 0, 70 }, { 7, 10, 10 }, { 5, 10, 11 }, { 6, 10, 117 },
- { 6, 10, 485 }, { 7, 10, 1133 }, { 9, 10, 582 }, { 9, 10, 594 },
- { 11, 10, 21 }, { 11, 10, 818 }, { 12, 10, 535 }, { 13, 10, 86 },
- { 4, 10, 264 }, { 7, 10, 1067 }, { 8, 10, 204 }, { 8, 10, 385 },
- { 11, 10, 953 }, { 4, 11, 752 }, { 10, 10, 56 }, { 5, 10, 470 },
- { 6, 0, 1808 }, { 8, 0, 83 }, { 8, 0, 742 }, { 8, 0, 817 },
- { 9, 0, 28 }, { 9, 0, 29 }, { 9, 0, 885 }, { 10, 0, 387 },
- { 11, 0, 633 }, { 11, 0, 740 }, { 13, 0, 235 }, { 13, 0, 254 },
- { 15, 0, 143 }, { 15, 0, 146 }, { 12, 0, 49 }, { 6, 0, 1832 },
- { 4, 11, 227 }, { 5, 11, 159 }, { 5, 11, 409 }, { 7, 11, 80 },
- { 10, 11, 294 }, { 10, 11, 479 }, { 12, 11, 418 }, { 14, 11, 50 },
- { 14, 11, 249 }, { 14, 11, 295 }, { 7, 11, 1470 }, { 8, 11, 66 },
- { 8, 11, 137 }, { 8, 11, 761 }, { 9, 11, 638 }, { 11, 11, 80 },
- { 11, 11, 212 }, { 11, 11, 368 }, { 11, 11, 418 }, { 12, 11, 8 },
- { 13, 11, 15 }, { 16, 11, 61 }, { 17, 11, 59 }, { 19, 11, 28 },
- { 20, 11, 84 }, { 11, 10, 1015 }, { 10, 11, 468 }, { 7, 0, 421 },
- { 6, 0, 415 }, { 7, 0, 1049 }, { 9, 0, 442 }, { 6, 11, 38 },
- { 7, 11, 1220 }, { 8, 11, 185 }, { 8, 11, 256 }, { 9, 11, 22 },
- { 9, 11, 331 }, { 10, 11, 738 }, { 11, 11, 205 }, { 11, 11, 540 },
- { 11, 11, 746 }, { 13, 11, 399 }, { 13, 11, 465 }, { 14, 11, 88 },
- { 14, 11, 194 }, { 11, 0, 289 }, { 5, 10, 715 }, { 4, 0, 110 },
- { 10, 0, 415 }, { 10, 0, 597 }, { 14, 0, 206 }, { 4, 11, 159 },
- { 6, 11, 115 }, { 7, 11, 252 }, { 7, 11, 257 }, { 7, 11, 1928 },
- { 8, 11, 69 }, { 9, 11, 384 }, { 10, 11, 91 }, { 10, 11, 615 },
- { 12, 11, 375 }, { 14, 11, 235 }, { 18, 11, 117 }, { 19, 11, 123 },
- { 5, 11, 911 }, { 8, 11, 278 }, { 7, 0, 205 }, { 7, 0, 2000 },
- { 8, 10, 794 }, { 9, 10, 400 }, { 10, 10, 298 }, { 14, 10, 228 },
- { 7, 11, 1774 }, { 4, 11, 151 }, { 7, 11, 1567 }, { 8, 11, 351 },
- { 9, 11, 322 }, { 8, 10, 724 }, { 5, 11, 990 }, { 7, 0, 1539 },
- { 11, 0, 512 }, { 13, 0, 205 }, { 19, 0, 30 }, { 22, 0, 36 },
- { 23, 0, 19 }, { 7, 11, 1539 }, { 5, 11, 194 }, { 7, 11, 1662 },
- { 9, 11, 90 }, { 12, 11, 180 }, { 6, 10, 190 }, { 7, 10, 768 },
- { 7, 10, 1170 }, { 6, 0, 1340 }, { 4, 0, 283 }, { 7, 0, 1194 },
- { 5, 11, 425 }, { 5, 11, 971 }, { 12, 0, 549 }, { 14, 10, 67 },
- { 19, 10, 60 }, { 7, 10, 1023 }, { 6, 0, 1720 }, { 10, 11, 587 },
- { 5, 11, 72 }, { 6, 11, 264 }, { 7, 11, 21 }, { 7, 11, 46 },
- { 7, 11, 2013 }, { 8, 11, 215 }, { 8, 11, 513 }, { 10, 11, 266 },
- { 11, 11, 22 }, { 5, 0, 319 }, { 7, 0, 534 }, { 6, 10, 137 },
- { 9, 10, 75 }, { 9, 10, 253 }, { 10, 10, 194 }, { 10, 10, 444 },
- { 7, 0, 1180 }, { 20, 0, 112 }, { 6, 11, 239 }, { 7, 11, 118 },
- { 10, 11, 95 }, { 11, 11, 603 }, { 13, 11, 443 }, { 14, 11, 160 },
- { 15, 11, 4 }, { 6, 11, 431 }, { 5, 11, 874 }, { 6, 11, 1677 },
- { 11, 10, 643 }, { 12, 10, 115 }, { 15, 11, 0 }, { 6, 0, 967 },
- { 6, 11, 65 }, { 7, 11, 939 }, { 7, 11, 1172 }, { 7, 11, 1671 },
- { 9, 11, 540 }, { 10, 11, 696 }, { 11, 11, 265 }, { 11, 11, 732 },
- { 11, 11, 928 }, { 11, 11, 937 }, { 12, 11, 399 }, { 13, 11, 438 },
- { 21, 11, 19 }, { 9, 11, 200 }, { 7, 0, 1940 }, { 5, 10, 760 },
- { 7, 10, 542 }, { 8, 10, 135 }, { 8, 10, 496 }, { 12, 11, 44 },
- { 7, 11, 1655 }, { 8, 11, 305 }, { 7, 10, 319 }, { 7, 10, 355 },
- { 7, 10, 763 }, { 10, 10, 389 }, { 17, 10, 43 }, { 8, 0, 735 },
- { 10, 10, 786 }, { 9, 11, 19 }, { 4, 11, 696 }, { 5, 0, 132 },
- { 9, 0, 486 }, { 9, 0, 715 }, { 10, 0, 458 }, { 11, 0, 373 },
- { 11, 0, 668 }, { 11, 0, 795 }, { 11, 0, 897 }, { 12, 0, 272 },
- { 12, 0, 424 }, { 12, 0, 539 }, { 12, 0, 558 }, { 14, 0, 245 },
- { 14, 0, 263 }, { 14, 0, 264 }, { 14, 0, 393 }, { 14, 0, 403 },
- { 10, 0, 38 }, { 11, 0, 784 }, { 4, 0, 838 }, { 4, 11, 302 },
- { 7, 11, 1766 }, { 5, 0, 379 }, { 5, 0, 8 }, { 6, 0, 89 },
- { 6, 0, 400 }, { 7, 0, 1569 }, { 7, 0, 1623 }, { 7, 0, 1850 },
- { 8, 0, 218 }, { 8, 0, 422 }, { 9, 0, 570 }, { 10, 0, 626 },
- { 4, 11, 726 }, { 5, 11, 630 }, { 4, 0, 1017 }, { 10, 0, 660 },
- { 6, 0, 387 }, { 7, 0, 882 }, { 13, 0, 111 }, { 6, 0, 224 },
- { 7, 0, 877 }, { 9, 0, 647 }, { 4, 10, 58 }, { 5, 10, 286 },
- { 6, 10, 319 }, { 7, 10, 402 }, { 7, 10, 1254 }, { 7, 10, 1903 },
- { 8, 10, 356 }, { 12, 10, 408 }, { 7, 0, 790 }, { 9, 0, 510 },
- { 10, 0, 53 }, { 4, 10, 389 }, { 9, 10, 181 }, { 10, 10, 29 },
- { 10, 10, 816 }, { 11, 10, 311 }, { 11, 10, 561 }, { 12, 10, 67 },
- { 13, 10, 181 }, { 14, 0, 458 }, { 6, 11, 118 }, { 7, 11, 215 },
- { 7, 11, 1521 }, { 12, 11, 11 }, { 6, 0, 954 }, { 7, 0, 394 },
- { 6, 0, 1367 }, { 5, 11, 225 }, { 5, 10, 373 }, { 4, 0, 882 },
- { 7, 0, 1409 }, { 7, 10, 1972 }, { 7, 10, 1793 }, { 4, 11, 370 },
- { 5, 11, 756 }, { 7, 11, 1326 }, { 22, 11, 13 }, { 7, 11, 354 },
- { 10, 11, 410 }, { 11, 11, 815 }, { 6, 11, 1662 }, { 7, 11, 48 },
- { 8, 11, 771 }, { 10, 11, 116 }, { 13, 11, 104 }, { 14, 11, 105 },
- { 14, 11, 184 }, { 15, 11, 168 }, { 19, 11, 92 }, { 20, 11, 68 },
- { 7, 0, 124 }, { 8, 0, 38 }, { 5, 0, 261 }, { 7, 0, 78 },
- { 7, 0, 199 }, { 8, 0, 815 }, { 9, 0, 126 }, { 10, 0, 342 },
- { 12, 0, 647 }, { 4, 0, 628 }, { 12, 0, 724 }, { 7, 0, 266 },
- { 8, 0, 804 }, { 7, 10, 1651 }, { 17, 10, 89 }, { 7, 0, 208 },
- { 6, 0, 1178 }, { 6, 0, 79 }, { 7, 0, 1519 }, { 4, 10, 672 },
- { 5, 10, 737 }, { 8, 0, 741 }, { 4, 11, 120 }, { 4, 0, 710 },
- { 6, 0, 376 }, { 6, 0, 606 }, { 6, 0, 1347 }, { 6, 0, 1494 },
- { 6, 0, 850 }, { 6, 0, 1553 }, { 9, 0, 821 }, { 5, 10, 145 },
- { 6, 11, 593 }, { 7, 0, 1311 }, { 12, 0, 135 }, { 4, 0, 467 },
- { 5, 0, 405 }, { 6, 0, 544 }, { 5, 11, 820 }, { 7, 11, 931 },
- { 6, 0, 100 }, { 7, 0, 244 }, { 7, 0, 632 }, { 7, 0, 1609 },
- { 8, 0, 178 }, { 8, 0, 638 }, { 13, 0, 58 }, { 4, 10, 387 },
- { 7, 10, 1288 }, { 6, 11, 151 }, { 6, 11, 1675 }, { 7, 11, 383 },
- { 23, 11, 10 }, { 4, 0, 481 }, { 7, 10, 550 }, { 6, 0, 1378 },
- { 6, 11, 1624 }, { 11, 11, 11 }, { 12, 11, 422 }, { 13, 11, 262 },
- { 14, 11, 360 }, { 5, 0, 791 }, { 4, 11, 43 }, { 5, 11, 344 },
- { 5, 11, 357 }, { 7, 0, 1227 }, { 12, 0, 978 }, { 7, 0, 686 },
- { 8, 0, 33 }, { 8, 0, 238 }, { 10, 0, 616 }, { 11, 0, 467 },
- { 11, 0, 881 }, { 13, 0, 217 }, { 13, 0, 253 }, { 14, 0, 268 },
- { 9, 0, 857 }, { 8, 0, 467 }, { 8, 0, 1006 }, { 7, 11, 148 },
- { 8, 11, 284 }, { 13, 11, 63 }, { 4, 10, 576 }, { 7, 10, 1263 },
- { 5, 11, 888 }, { 5, 10, 919 }, { 6, 10, 1673 }, { 20, 10, 37 },
- { 20, 11, 37 }, { 4, 0, 447 }, { 4, 11, 711 }, { 4, 0, 128 },
- { 5, 0, 415 }, { 6, 0, 462 }, { 7, 0, 294 }, { 7, 0, 578 },
- { 10, 0, 710 }, { 11, 0, 86 }, { 4, 10, 82 }, { 5, 10, 333 },
- { 5, 10, 904 }, { 6, 10, 207 }, { 7, 10, 325 }, { 7, 10, 1726 },
- { 8, 10, 101 }, { 10, 10, 778 }, { 11, 10, 220 }, { 8, 0, 587 },
- { 9, 11, 440 }, { 5, 10, 903 }, { 6, 0, 427 }, { 7, 0, 1018 },
- { 10, 0, 692 }, { 4, 0, 195 }, { 7, 0, 802 }, { 12, 10, 147 },
- { 6, 0, 1546 }, { 6, 0, 684 }, { 4, 10, 705 }, { 8, 0, 345 },
- { 11, 11, 678 }, { 12, 11, 307 }, { 5, 0, 365 }, { 6, 0, 1683 },
- { 4, 11, 65 }, { 5, 11, 479 }, { 5, 11, 1004 }, { 7, 11, 1913 },
- { 8, 11, 317 }, { 9, 11, 302 }, { 10, 11, 612 }, { 13, 11, 22 },
- { 10, 0, 472 }, { 4, 11, 261 }, { 7, 11, 510 }, { 6, 10, 90 },
- { 14, 0, 433 }, { 23, 0, 28 }, { 4, 11, 291 }, { 7, 11, 101 },
- { 9, 11, 515 }, { 12, 11, 152 }, { 12, 11, 443 }, { 13, 11, 392 },
- { 14, 11, 357 }, { 12, 0, 997 }, { 5, 0, 3 }, { 8, 0, 578 },
- { 9, 0, 118 }, { 10, 0, 705 }, { 13, 0, 279 }, { 7, 11, 1266 },
- { 7, 10, 813 }, { 12, 10, 497 }, { 13, 10, 56 }, { 5, 0, 229 },
- { 6, 10, 125 }, { 7, 10, 1277 }, { 8, 0, 102 }, { 10, 0, 578 },
- { 10, 0, 672 }, { 12, 0, 496 }, { 13, 0, 408 }, { 14, 0, 121 },
- { 17, 0, 106 }, { 23, 10, 12 }, { 6, 0, 866 }, { 6, 0, 1080 },
- { 8, 0, 1022 }, { 4, 11, 130 }, { 7, 11, 843 }, { 5, 11, 42 },
- { 5, 11, 879 }, { 7, 11, 245 }, { 7, 11, 324 }, { 7, 11, 1532 },
- { 11, 11, 463 }, { 11, 11, 472 }, { 13, 11, 363 }, { 16, 11, 52 },
- { 22, 0, 55 }, { 8, 0, 115 }, { 8, 0, 350 }, { 9, 0, 489 },
- { 10, 0, 128 }, { 11, 0, 306 }, { 12, 0, 373 }, { 14, 0, 30 },
- { 17, 0, 79 }, { 19, 0, 80 }, { 4, 11, 134 }, { 5, 11, 372 },
- { 6, 0, 657 }, { 6, 0, 933 }, { 7, 11, 1147 }, { 4, 0, 230 },
- { 5, 0, 702 }, { 6, 0, 1728 }, { 4, 0, 484 }, { 18, 0, 26 },
- { 19, 0, 42 }, { 20, 0, 43 }, { 21, 0, 0 }, { 23, 0, 27 },
- { 24, 0, 14 }, { 7, 0, 185 }, { 7, 0, 703 }, { 6, 0, 417 },
- { 10, 0, 618 }, { 7, 10, 1106 }, { 9, 10, 770 }, { 11, 10, 112 },
- { 12, 10, 413 }, { 6, 0, 803 }, { 4, 11, 644 }, { 6, 0, 1262 },
- { 7, 11, 540 }, { 12, 10, 271 }, { 17, 10, 109 }, { 7, 11, 123 },
- { 4, 0, 633 }, { 6, 11, 623 }, { 4, 11, 908 }, { 5, 11, 359 },
- { 5, 11, 508 }, { 6, 11, 1723 }, { 7, 11, 343 }, { 7, 11, 1996 },
- { 7, 11, 2026 }, { 7, 0, 479 }, { 10, 0, 262 }, { 7, 10, 304 },
- { 9, 10, 646 }, { 9, 10, 862 }, { 11, 10, 696 }, { 12, 10, 208 },
- { 15, 10, 79 }, { 19, 10, 108 }, { 4, 11, 341 }, { 7, 11, 480 },
- { 6, 0, 830 }, { 5, 0, 70 }, { 5, 0, 622 }, { 6, 0, 334 },
- { 7, 0, 1032 }, { 9, 0, 171 }, { 11, 0, 26 }, { 11, 0, 213 },
- { 11, 0, 637 }, { 11, 0, 707 }, { 12, 0, 202 }, { 12, 0, 380 },
- { 13, 0, 226 }, { 13, 0, 355 }, { 14, 0, 222 }, { 17, 0, 42 },
- { 7, 10, 981 }, { 15, 0, 217 }, { 9, 11, 114 }, { 4, 0, 23 },
- { 4, 0, 141 }, { 5, 0, 313 }, { 5, 0, 1014 }, { 6, 0, 50 },
- { 6, 0, 51 }, { 7, 0, 142 }, { 7, 0, 384 }, { 7, 0, 559 },
- { 8, 0, 640 }, { 9, 0, 460 }, { 9, 0, 783 }, { 11, 0, 741 },
- { 12, 0, 183 }, { 13, 0, 488 }, { 13, 0, 360 }, { 7, 0, 1586 },
- { 7, 11, 1995 }, { 8, 11, 299 }, { 11, 11, 890 }, { 12, 11, 674 },
- { 4, 10, 434 }, { 7, 0, 652 }, { 6, 10, 550 }, { 7, 0, 766 },
- { 5, 10, 553 }, { 10, 10, 824 }, { 7, 0, 737 }, { 8, 0, 298 },
- { 8, 10, 452 }, { 4, 11, 238 }, { 5, 11, 503 }, { 6, 11, 179 },
- { 7, 11, 2003 }, { 8, 11, 381 }, { 8, 11, 473 }, { 9, 11, 149 },
- { 10, 11, 183 }, { 15, 11, 45 }, { 15, 11, 86 }, { 5, 10, 292 },
- { 5, 0, 222 }, { 9, 0, 655 }, { 10, 0, 534 }, { 10, 10, 135 },
- { 4, 11, 121 }, { 5, 11, 156 }, { 5, 11, 349 }, { 9, 11, 136 },
- { 10, 11, 605 }, { 14, 11, 342 }, { 19, 11, 107 }, { 9, 0, 906 },
- { 6, 0, 1013 }, { 6, 0, 1250 }, { 6, 0, 1956 }, { 6, 0, 2009 },
- { 8, 0, 991 }, { 16, 0, 120 }, { 7, 11, 1192 }, { 10, 0, 503 },
- { 5, 0, 154 }, { 7, 0, 1491 }, { 10, 0, 379 }, { 10, 0, 485 },
- { 6, 0, 1867 }, { 6, 0, 1914 }, { 6, 0, 1925 }, { 9, 0, 917 },
- { 9, 0, 925 }, { 9, 0, 932 }, { 9, 0, 951 }, { 9, 0, 1007 },
- { 9, 0, 1013 }, { 12, 0, 806 }, { 12, 0, 810 }, { 12, 0, 814 },
- { 12, 0, 816 }, { 12, 0, 824 }, { 12, 0, 832 }, { 12, 0, 837 },
- { 12, 0, 863 }, { 12, 0, 868 }, { 12, 0, 870 }, { 12, 0, 889 },
- { 12, 0, 892 }, { 12, 0, 900 }, { 12, 0, 902 }, { 12, 0, 908 },
- { 12, 0, 933 }, { 12, 0, 942 }, { 12, 0, 949 }, { 12, 0, 954 },
- { 15, 0, 175 }, { 15, 0, 203 }, { 15, 0, 213 }, { 15, 0, 218 },
- { 15, 0, 225 }, { 15, 0, 231 }, { 15, 0, 239 }, { 15, 0, 248 },
- { 15, 0, 252 }, { 18, 0, 190 }, { 18, 0, 204 }, { 18, 0, 215 },
- { 18, 0, 216 }, { 18, 0, 222 }, { 18, 0, 225 }, { 18, 0, 230 },
- { 18, 0, 239 }, { 18, 0, 241 }, { 21, 0, 42 }, { 21, 0, 43 },
- { 21, 0, 44 }, { 21, 0, 45 }, { 21, 0, 46 }, { 21, 0, 53 },
- { 24, 0, 27 }, { 24, 0, 31 }, { 5, 0, 716 }, { 7, 0, 844 },
- { 4, 0, 91 }, { 5, 0, 388 }, { 5, 0, 845 }, { 6, 0, 206 },
- { 6, 0, 252 }, { 6, 0, 365 }, { 7, 0, 136 }, { 7, 0, 531 },
- { 8, 0, 621 }, { 7, 10, 393 }, { 10, 10, 603 }, { 11, 10, 206 },
- { 6, 11, 80 }, { 6, 11, 1694 }, { 7, 11, 173 }, { 7, 11, 1974 },
- { 9, 11, 547 }, { 10, 11, 730 }, { 14, 11, 18 }, { 22, 11, 39 },
- { 9, 0, 748 }, { 4, 11, 923 }, { 6, 11, 1711 }, { 4, 10, 912 },
- { 9, 10, 232 }, { 7, 10, 98 }, { 7, 10, 1973 }, { 8, 10, 716 },
- { 14, 0, 103 }, { 5, 10, 733 }, { 4, 11, 595 }, { 12, 0, 158 },
- { 18, 0, 8 }, { 19, 0, 62 }, { 20, 0, 6 }, { 22, 0, 4 },
- { 23, 0, 2 }, { 23, 0, 9 }, { 5, 11, 240 }, { 6, 11, 459 },
- { 7, 11, 12 }, { 7, 11, 114 }, { 7, 11, 502 }, { 7, 11, 1751 },
- { 7, 11, 1753 }, { 7, 11, 1805 }, { 8, 11, 658 }, { 9, 11, 1 },
- { 11, 11, 959 }, { 13, 11, 446 }, { 14, 11, 211 }, { 7, 0, 576 },
- { 5, 0, 771 }, { 5, 0, 863 }, { 5, 0, 898 }, { 6, 0, 648 },
- { 6, 0, 1632 }, { 6, 0, 1644 }, { 6, 0, 1780 }, { 5, 0, 331 },
- { 7, 11, 633 }, { 7, 11, 905 }, { 7, 11, 909 }, { 7, 11, 1538 },
- { 9, 11, 767 }, { 12, 11, 636 }, { 12, 0, 632 }, { 5, 0, 107 },
- { 7, 0, 201 }, { 8, 0, 518 }, { 6, 0, 446 }, { 7, 0, 1817 },
- { 6, 11, 490 }, { 9, 0, 851 }, { 13, 0, 510 }, { 7, 11, 250 },
- { 8, 11, 506 }, { 8, 11, 507 }, { 4, 0, 504 }, { 9, 10, 72 },
- { 4, 11, 158 }, { 4, 11, 140 }, { 7, 11, 362 }, { 8, 11, 209 },
- { 9, 11, 10 }, { 9, 11, 160 }, { 9, 11, 503 }, { 10, 11, 689 },
- { 11, 11, 350 }, { 11, 11, 553 }, { 11, 11, 725 }, { 12, 11, 252 },
- { 12, 11, 583 }, { 13, 11, 192 }, { 13, 11, 352 }, { 14, 11, 269 },
- { 14, 11, 356 }, { 20, 11, 50 }, { 6, 11, 597 }, { 7, 11, 1318 },
- { 7, 10, 1454 }, { 5, 0, 883 }, { 5, 0, 975 }, { 8, 0, 392 },
- { 20, 0, 7 }, { 6, 11, 228 }, { 7, 11, 1341 }, { 9, 11, 408 },
- { 10, 11, 343 }, { 11, 11, 348 }, { 11, 10, 600 }, { 12, 11, 99 },
- { 13, 10, 245 }, { 18, 11, 1 }, { 18, 11, 11 }, { 19, 11, 4 },
- { 6, 11, 296 }, { 5, 0, 922 }, { 6, 0, 1707 }, { 4, 11, 557 },
- { 4, 11, 548 }, { 7, 10, 164 }, { 7, 10, 1571 }, { 9, 10, 107 },
- { 12, 10, 225 }, { 7, 11, 197 }, { 8, 11, 142 }, { 8, 11, 325 },
- { 9, 11, 150 }, { 9, 11, 596 }, { 10, 11, 350 }, { 10, 11, 353 },
- { 11, 11, 74 }, { 11, 11, 315 }, { 14, 11, 423 }, { 15, 11, 141 },
- { 5, 0, 993 }, { 7, 0, 515 }, { 9, 0, 91 }, { 4, 0, 131 },
- { 8, 0, 200 }, { 5, 10, 484 }, { 5, 10, 510 }, { 6, 10, 434 },
- { 7, 10, 1000 }, { 7, 10, 1098 }, { 8, 10, 2 }, { 24, 0, 10 },
- { 4, 11, 62 }, { 5, 11, 83 }, { 6, 11, 399 }, { 6, 11, 579 },
- { 7, 11, 692 }, { 7, 11, 846 }, { 7, 11, 1015 }, { 7, 11, 1799 },
- { 8, 11, 403 }, { 9, 11, 394 }, { 10, 11, 133 }, { 12, 11, 4 },
- { 12, 11, 297 }, { 12, 11, 452 }, { 16, 11, 81 }, { 18, 11, 19 },
- { 18, 11, 25 }, { 21, 11, 14 }, { 22, 11, 12 }, { 23, 11, 18 },
- { 12, 11, 459 }, { 4, 11, 177 }, { 7, 0, 1433 }, { 9, 0, 365 },
- { 9, 11, 365 }, { 4, 10, 460 }, { 5, 0, 103 }, { 6, 0, 2004 },
- { 7, 0, 921 }, { 8, 0, 580 }, { 8, 0, 593 }, { 8, 0, 630 },
- { 10, 0, 28 }, { 5, 11, 411 }, { 7, 11, 653 }, { 4, 10, 932 },
- { 5, 10, 891 }, { 4, 0, 911 }, { 5, 0, 867 }, { 5, 0, 1013 },
- { 7, 0, 2034 }, { 8, 0, 798 }, { 8, 0, 813 }, { 7, 11, 439 },
- { 10, 11, 727 }, { 11, 11, 260 }, { 11, 11, 684 }, { 8, 10, 625 },
- { 5, 11, 208 }, { 7, 11, 753 }, { 7, 11, 1528 }, { 5, 0, 461 },
- { 7, 0, 1925 }, { 12, 0, 39 }, { 13, 0, 265 }, { 13, 0, 439 },
- { 6, 10, 76 }, { 6, 0, 853 }, { 8, 10, 92 }, { 9, 10, 221 },
- { 5, 0, 135 }, { 6, 0, 519 }, { 7, 0, 1722 }, { 10, 0, 271 },
- { 11, 0, 261 }, { 17, 0, 54 }, { 11, 11, 814 }, { 14, 0, 338 },
- { 20, 0, 81 }, { 4, 0, 300 }, { 5, 0, 436 }, { 5, 0, 419 },
- { 5, 0, 687 }, { 7, 0, 864 }, { 9, 0, 470 }, { 7, 11, 864 },
- { 9, 0, 836 }, { 5, 11, 242 }, { 6, 0, 1937 }, { 4, 10, 763 },
- { 5, 11, 953 }, { 4, 10, 622 }, { 4, 0, 393 }, { 5, 10, 253 },
- { 8, 0, 357 }, { 10, 0, 745 }, { 14, 0, 426 }, { 17, 0, 94 },
- { 19, 0, 57 }, { 7, 10, 546 }, { 5, 11, 615 }, { 18, 11, 37 },
- { 9, 10, 73 }, { 10, 10, 110 }, { 14, 10, 185 }, { 17, 10, 119 },
- { 11, 0, 703 }, { 7, 10, 624 }, { 7, 10, 916 }, { 10, 10, 256 },
- { 11, 10, 87 }, { 5, 11, 290 }, { 5, 10, 212 }, { 12, 10, 35 },
- { 13, 10, 382 }, { 4, 11, 380 }, { 5, 11, 52 }, { 7, 11, 277 },
- { 9, 11, 368 }, { 11, 11, 791 }, { 5, 0, 387 }, { 10, 11, 138 },
- { 11, 11, 476 }, { 4, 0, 6 }, { 5, 0, 708 }, { 8, 0, 75 },
- { 7, 0, 1351 }, { 9, 0, 581 }, { 10, 0, 639 }, { 11, 0, 453 },
- { 12, 0, 584 }, { 4, 0, 303 }, { 10, 0, 772 }, { 7, 10, 1175 },
- { 4, 0, 749 }, { 5, 10, 816 }, { 6, 11, 256 }, { 7, 11, 307 },
- { 7, 11, 999 }, { 7, 11, 1481 }, { 7, 11, 1732 }, { 7, 11, 1738 },
- { 8, 11, 265 }, { 9, 11, 414 }, { 11, 11, 316 }, { 12, 11, 52 },
- { 13, 11, 420 }, { 19, 11, 100 }, { 7, 11, 1296 }, { 6, 0, 1065 },
- { 5, 10, 869 }, { 5, 10, 968 }, { 6, 10, 1626 }, { 8, 10, 734 },
- { 8, 10, 784 }, { 4, 10, 542 }, { 6, 10, 1716 }, { 6, 10, 1727 },
- { 7, 10, 1082 }, { 7, 10, 1545 }, { 8, 10, 56 }, { 8, 10, 118 },
- { 8, 10, 412 }, { 8, 10, 564 }, { 9, 10, 888 }, { 9, 10, 908 },
- { 10, 10, 50 }, { 10, 10, 423 }, { 11, 10, 685 }, { 11, 10, 697 },
- { 11, 10, 933 }, { 12, 10, 299 }, { 13, 10, 126 }, { 13, 10, 136 },
- { 13, 10, 170 }, { 13, 10, 190 }, { 6, 0, 226 }, { 4, 0, 106 },
- { 7, 0, 310 }, { 11, 0, 717 }, { 5, 11, 723 }, { 5, 0, 890 },
- { 5, 0, 988 }, { 4, 10, 232 }, { 9, 10, 202 }, { 10, 10, 474 },
- { 12, 10, 433 }, { 6, 0, 626 }, { 14, 0, 431 }, { 10, 0, 706 },
- { 22, 0, 44 }, { 13, 0, 51 }, { 6, 10, 108 }, { 7, 10, 1003 },
- { 7, 10, 1181 }, { 8, 10, 111 }, { 8, 10, 343 }, { 4, 0, 698 },
- { 5, 11, 109 }, { 6, 11, 1784 }, { 7, 11, 1895 }, { 12, 11, 296 },
- { 12, 11, 302 }, { 6, 0, 828 }, { 6, 10, 1712 }, { 10, 0, 17 },
- { 7, 0, 1929 }, { 4, 10, 133 }, { 5, 11, 216 }, { 7, 10, 711 },
- { 7, 10, 1298 }, { 7, 10, 1585 }, { 7, 11, 1879 }, { 9, 11, 141 },
- { 9, 11, 270 }, { 9, 11, 679 }, { 10, 11, 159 }, { 10, 11, 553 },
- { 11, 11, 197 }, { 11, 11, 438 }, { 12, 11, 538 }, { 12, 11, 559 },
- { 13, 11, 193 }, { 13, 11, 423 }, { 14, 11, 144 }, { 14, 11, 166 },
- { 14, 11, 167 }, { 15, 11, 67 }, { 19, 11, 84 }, { 13, 11, 127 },
- { 7, 11, 1872 }, { 9, 11, 81 }, { 6, 10, 99 }, { 7, 10, 1808 },
- { 17, 10, 57 }, { 6, 11, 391 }, { 5, 0, 689 }, { 6, 0, 84 },
- { 7, 0, 1250 }, { 6, 10, 574 }, { 7, 10, 428 }, { 10, 10, 669 },
- { 11, 10, 485 }, { 11, 10, 840 }, { 12, 10, 300 }, { 14, 10, 250 },
- { 7, 11, 322 }, { 8, 11, 249 }, { 7, 11, 432 }, { 7, 11, 1649 },
- { 7, 10, 1871 }, { 9, 10, 252 }, { 6, 11, 155 }, { 12, 11, 234 },
- { 7, 0, 871 }, { 19, 0, 27 }, { 19, 11, 27 }, { 12, 0, 498 },
- { 5, 0, 986 }, { 6, 0, 130 }, { 10, 0, 823 }, { 6, 0, 1793 },
- { 7, 0, 1582 }, { 8, 0, 458 }, { 10, 0, 101 }, { 10, 0, 318 },
- { 10, 0, 945 }, { 12, 0, 734 }, { 16, 0, 104 }, { 18, 0, 177 },
- { 6, 10, 323 }, { 7, 10, 1564 }, { 5, 11, 632 }, { 10, 11, 526 },
- { 10, 0, 435 }, { 7, 10, 461 }, { 8, 10, 775 }, { 6, 11, 144 },
- { 7, 11, 948 }, { 7, 11, 1042 }, { 7, 11, 1857 }, { 8, 11, 235 },
- { 8, 11, 461 }, { 9, 11, 453 }, { 9, 11, 530 }, { 10, 11, 354 },
- { 17, 11, 77 }, { 19, 11, 99 }, { 20, 11, 79 }, { 10, 0, 966 },
- { 7, 0, 1644 }, { 9, 0, 129 }, { 7, 0, 997 }, { 8, 0, 502 },
- { 5, 11, 196 }, { 6, 11, 486 }, { 7, 11, 212 }, { 8, 11, 309 },
- { 8, 11, 346 }, { 7, 10, 727 }, { 18, 10, 73 }, { 4, 0, 823 },
- { 4, 11, 686 }, { 7, 0, 1927 }, { 4, 0, 762 }, { 7, 0, 1756 },
- { 9, 0, 98 }, { 8, 10, 577 }, { 24, 0, 8 }, { 4, 11, 30 },
- { 5, 11, 43 }, { 24, 11, 8 }, { 7, 0, 1046 }, { 11, 0, 160 },
- { 7, 0, 492 }, { 4, 10, 413 }, { 5, 10, 677 }, { 7, 11, 492 },
- { 8, 10, 432 }, { 12, 10, 280 }, { 6, 0, 45 }, { 7, 0, 433 },
- { 8, 0, 129 }, { 9, 0, 21 }, { 10, 0, 392 }, { 11, 0, 79 },
- { 12, 0, 499 }, { 13, 0, 199 }, { 13, 0, 451 }, { 7, 0, 558 },
- { 8, 0, 353 }, { 4, 11, 220 }, { 7, 11, 1535 }, { 9, 11, 93 },
- { 11, 11, 474 }, { 7, 10, 646 }, { 7, 10, 1730 }, { 11, 10, 446 },
- { 13, 10, 178 }, { 5, 0, 785 }, { 6, 0, 1145 }, { 8, 0, 81 },
- { 9, 0, 189 }, { 9, 0, 201 }, { 11, 0, 478 }, { 11, 0, 712 },
- { 13, 0, 338 }, { 5, 0, 353 }, { 23, 0, 26 }, { 11, 0, 762 },
- { 4, 10, 395 }, { 6, 0, 2024 }, { 4, 0, 611 }, { 5, 0, 606 },
- { 9, 10, 174 }, { 10, 10, 164 }, { 11, 10, 440 }, { 11, 10, 841 },
- { 15, 10, 98 }, { 6, 10, 426 }, { 10, 10, 608 }, { 11, 10, 1002 },
- { 10, 10, 250 }, { 6, 0, 25 }, { 7, 0, 855 }, { 7, 0, 1258 },
- { 16, 0, 32 }, { 7, 11, 1725 }, { 10, 11, 393 }, { 5, 11, 263 },
- { 6, 11, 414 }, { 6, 0, 2011 }, { 5, 10, 476 }, { 4, 0, 4 },
- { 7, 0, 1118 }, { 7, 0, 1320 }, { 7, 0, 1706 }, { 8, 0, 277 },
- { 9, 0, 622 }, { 10, 0, 9 }, { 11, 0, 724 }, { 12, 0, 350 },
- { 12, 0, 397 }, { 13, 0, 28 }, { 13, 0, 159 }, { 15, 0, 89 },
- { 18, 0, 5 }, { 19, 0, 9 }, { 20, 0, 34 }, { 22, 0, 47 },
- { 6, 11, 178 }, { 6, 11, 1750 }, { 8, 11, 251 }, { 9, 11, 690 },
- { 10, 11, 155 }, { 10, 11, 196 }, { 10, 11, 373 }, { 11, 11, 698 },
- { 13, 11, 155 }, { 20, 11, 93 }, { 5, 11, 97 }, { 9, 11, 393 },
- { 7, 0, 764 }, { 11, 0, 461 }, { 12, 0, 172 }, { 5, 10, 76 },
- { 6, 10, 458 }, { 6, 10, 497 }, { 7, 10, 868 }, { 9, 10, 658 },
- { 10, 10, 594 }, { 11, 10, 566 }, { 12, 10, 338 }, { 13, 10, 200 },
- { 6, 0, 1449 }, { 10, 11, 40 }, { 6, 11, 1639 }, { 6, 0, 1445 },
- { 6, 0, 1168 }, { 4, 10, 526 }, { 7, 10, 1029 }, { 7, 10, 1054 },
- { 4, 11, 191 }, { 7, 11, 934 }, { 8, 11, 647 }, { 17, 11, 97 },
- { 4, 10, 636 }, { 6, 0, 233 }, { 7, 10, 660 }, { 7, 10, 1124 },
- { 17, 10, 31 }, { 19, 10, 22 }, { 23, 10, 14 }, { 6, 10, 1699 },
- { 8, 11, 110 }, { 12, 11, 246 }, { 15, 11, 162 }, { 19, 11, 64 },
- { 20, 11, 8 }, { 20, 11, 95 }, { 22, 11, 24 }, { 24, 11, 17 },
- { 5, 11, 165 }, { 9, 11, 346 }, { 10, 11, 655 }, { 5, 11, 319 },
- { 7, 11, 534 }, { 6, 0, 255 }, { 9, 0, 216 }, { 8, 11, 128 },
- { 11, 11, 179 }, { 9, 0, 183 }, { 11, 0, 286 }, { 11, 0, 956 },
- { 23, 0, 3 }, { 4, 0, 536 }, { 7, 0, 1141 }, { 10, 0, 723 },
- { 11, 0, 371 }, { 4, 10, 279 }, { 7, 10, 301 }, { 9, 10, 362 },
- { 7, 0, 285 }, { 5, 11, 57 }, { 6, 11, 101 }, { 6, 11, 1663 },
- { 7, 11, 132 }, { 7, 11, 1048 }, { 7, 11, 1154 }, { 7, 11, 1415 },
- { 7, 11, 1507 }, { 12, 11, 493 }, { 15, 11, 105 }, { 23, 11, 15 },
- { 5, 11, 459 }, { 7, 11, 1073 }, { 7, 10, 1743 }, { 8, 11, 241 },
- { 8, 11, 334 }, { 4, 10, 178 }, { 5, 10, 399 }, { 7, 0, 560 },
- { 4, 0, 690 }, { 7, 0, 1246 }, { 18, 0, 157 }, { 19, 0, 63 },
- { 10, 0, 599 }, { 11, 0, 33 }, { 12, 0, 571 }, { 21, 0, 1 },
- { 6, 11, 324 }, { 6, 11, 520 }, { 7, 11, 338 }, { 7, 11, 1616 },
- { 7, 11, 1729 }, { 8, 11, 228 }, { 9, 11, 69 }, { 11, 11, 750 },
- { 7, 0, 1862 }, { 12, 0, 491 }, { 12, 0, 520 }, { 13, 0, 383 },
- { 14, 0, 244 }, { 7, 11, 734 }, { 6, 10, 1692 }, { 10, 0, 448 },
- { 11, 0, 630 }, { 17, 0, 117 }, { 6, 10, 202 }, { 7, 11, 705 },
- { 12, 10, 360 }, { 17, 10, 118 }, { 18, 10, 27 }, { 20, 10, 67 },
- { 4, 11, 73 }, { 6, 11, 612 }, { 7, 11, 927 }, { 7, 11, 1822 },
- { 8, 11, 217 }, { 9, 11, 472 }, { 9, 11, 765 }, { 9, 11, 766 },
- { 10, 11, 408 }, { 11, 11, 51 }, { 11, 11, 793 }, { 12, 11, 266 },
- { 15, 11, 158 }, { 20, 11, 89 }, { 22, 11, 32 }, { 4, 0, 190 },
- { 5, 0, 554 }, { 5, 0, 1001 }, { 5, 11, 389 }, { 8, 11, 636 },
- { 9, 11, 229 }, { 5, 0, 446 }, { 7, 10, 872 }, { 10, 10, 516 },
- { 11, 10, 167 }, { 9, 10, 313 }, { 4, 10, 224 }, { 6, 0, 1313 },
- { 5, 10, 546 }, { 7, 10, 35 }, { 8, 10, 11 }, { 8, 10, 12 },
- { 9, 10, 315 }, { 9, 10, 533 }, { 10, 10, 802 }, { 11, 10, 166 },
- { 12, 10, 525 }, { 14, 10, 243 }, { 6, 0, 636 }, { 9, 0, 837 },
- { 5, 10, 241 }, { 8, 10, 242 }, { 9, 10, 451 }, { 10, 10, 667 },
- { 11, 10, 598 }, { 12, 10, 429 }, { 22, 10, 46 }, { 22, 11, 46 },
- { 8, 11, 472 }, { 11, 0, 278 }, { 14, 0, 73 }, { 13, 11, 185 },
- { 4, 0, 868 }, { 6, 0, 972 }, { 4, 10, 366 }, { 9, 10, 516 },
- { 10, 0, 1010 }, { 5, 11, 189 }, { 6, 10, 1736 }, { 7, 11, 442 },
- { 7, 11, 443 }, { 8, 11, 281 }, { 12, 11, 174 }, { 13, 11, 83 },
- { 13, 11, 261 }, { 11, 11, 384 }, { 6, 11, 2 }, { 7, 11, 191 },
- { 7, 11, 446 }, { 7, 11, 758 }, { 7, 11, 1262 }, { 7, 11, 1737 },
- { 8, 11, 22 }, { 8, 11, 270 }, { 8, 11, 612 }, { 9, 11, 4 },
- { 9, 11, 167 }, { 9, 11, 312 }, { 9, 11, 436 }, { 10, 11, 156 },
- { 10, 11, 216 }, { 10, 11, 311 }, { 10, 11, 623 }, { 11, 11, 72 },
- { 11, 11, 330 }, { 11, 11, 455 }, { 12, 11, 101 }, { 12, 11, 321 },
- { 12, 11, 504 }, { 12, 11, 530 }, { 12, 11, 543 }, { 13, 11, 17 },
- { 13, 11, 156 }, { 13, 11, 334 }, { 14, 11, 48 }, { 15, 11, 70 },
- { 17, 11, 60 }, { 20, 11, 64 }, { 6, 10, 331 }, { 8, 10, 623 },
- { 7, 0, 1231 }, { 4, 0, 304 }, { 6, 11, 60 }, { 7, 11, 670 },
- { 7, 11, 1327 }, { 8, 11, 411 }, { 8, 11, 435 }, { 9, 11, 653 },
- { 9, 11, 740 }, { 10, 11, 385 }, { 11, 11, 222 }, { 11, 11, 324 },
- { 11, 11, 829 }, { 12, 11, 611 }, { 7, 0, 506 }, { 6, 11, 166 },
- { 7, 11, 374 }, { 7, 11, 1174 }, { 14, 11, 43 }, { 18, 11, 21 },
- { 7, 11, 1694 }, { 7, 10, 1888 }, { 5, 11, 206 }, { 6, 11, 398 },
- { 7, 11, 50 }, { 22, 0, 26 }, { 6, 0, 53 }, { 6, 0, 199 },
- { 7, 0, 1408 }, { 8, 0, 32 }, { 8, 0, 93 }, { 10, 0, 397 },
- { 10, 0, 629 }, { 11, 0, 593 }, { 11, 0, 763 }, { 13, 0, 326 },
- { 17, 0, 35 }, { 6, 0, 105 }, { 4, 10, 394 }, { 4, 0, 843 },
- { 10, 0, 794 }, { 11, 0, 704 }, { 13, 0, 396 }, { 5, 0, 114 },
- { 5, 0, 255 }, { 13, 0, 285 }, { 6, 0, 619 }, { 7, 0, 898 },
- { 7, 0, 1092 }, { 8, 0, 485 }, { 18, 0, 28 }, { 19, 0, 116 },
- { 7, 10, 1931 }, { 9, 0, 145 }, { 7, 10, 574 }, { 7, 10, 1719 },
- { 7, 0, 2035 }, { 8, 0, 19 }, { 9, 0, 89 }, { 10, 0, 831 },
- { 4, 10, 658 }, { 6, 11, 517 }, { 7, 11, 1159 }, { 10, 11, 621 },
- { 11, 11, 192 }, { 7, 0, 1933 }, { 7, 11, 1933 }, { 9, 10, 781 },
- { 10, 10, 144 }, { 11, 10, 385 }, { 13, 10, 161 }, { 13, 10, 228 },
- { 13, 10, 268 }, { 20, 10, 107 }, { 8, 10, 374 }, { 10, 11, 223 },
- { 11, 11, 645 }, { 7, 0, 1728 }, { 7, 11, 64 }, { 7, 11, 289 },
- { 8, 11, 245 }, { 4, 10, 344 }, { 6, 10, 498 }, { 11, 10, 323 },
- { 8, 0, 746 }, { 7, 10, 1063 }, { 9, 10, 155 }, { 4, 0, 987 },
- { 6, 0, 1964 }, { 6, 0, 1974 }, { 6, 0, 1990 }, { 8, 0, 995 },
- { 5, 11, 609 }, { 5, 10, 906 }, { 6, 0, 1550 }, { 6, 0, 874 },
- { 5, 11, 129 }, { 6, 11, 61 }, { 7, 11, 947 }, { 4, 0, 1018 },
- { 6, 0, 1938 }, { 6, 0, 2021 }, { 6, 0, 2039 }, { 4, 0, 814 },
- { 11, 0, 126 }, { 11, 0, 287 }, { 6, 0, 1264 }, { 5, 0, 955 },
- { 8, 0, 814 }, { 13, 11, 506 }, { 4, 11, 314 }, { 6, 0, 981 },
- { 11, 11, 1000 }, { 5, 0, 56 }, { 8, 0, 892 }, { 8, 0, 915 },
- { 12, 0, 776 }, { 20, 0, 100 }, { 10, 0, 4 }, { 10, 0, 13 },
- { 11, 0, 638 }, { 20, 0, 57 }, { 20, 11, 74 }, { 5, 0, 738 },
- { 4, 10, 616 }, { 5, 11, 637 }, { 8, 10, 692 }, { 5, 0, 758 },
- { 4, 10, 305 }, { 9, 11, 590 }, { 5, 11, 280 }, { 7, 11, 1226 },
- { 6, 11, 494 }, { 7, 0, 1112 }, { 5, 11, 281 }, { 13, 0, 44 },
- { 14, 0, 214 }, { 5, 10, 214 }, { 7, 10, 603 }, { 8, 10, 611 },
- { 9, 10, 686 }, { 10, 10, 88 }, { 11, 10, 459 }, { 11, 10, 496 },
- { 12, 10, 463 }, { 12, 10, 590 }, { 11, 0, 328 }, { 7, 11, 1064 },
- { 9, 0, 133 }, { 7, 0, 168 }, { 13, 0, 196 }, { 13, 0, 237 },
- { 6, 10, 1703 }, { 6, 0, 1152 }, { 7, 0, 1245 }, { 5, 0, 110 },
- { 6, 0, 169 }, { 6, 0, 1702 }, { 7, 0, 400 }, { 8, 0, 538 },
- { 9, 0, 184 }, { 9, 0, 524 }, { 12, 0, 218 }, { 6, 0, 1816 },
- { 10, 0, 871 }, { 12, 0, 769 }, { 12, 0, 785 }, { 4, 11, 630 },
- { 7, 11, 33 }, { 7, 11, 120 }, { 8, 11, 489 }, { 9, 11, 319 },
- { 10, 11, 820 }, { 11, 11, 1004 }, { 12, 11, 379 }, { 13, 11, 117 },
- { 13, 11, 412 }, { 14, 11, 25 }, { 15, 11, 52 }, { 15, 11, 161 },
- { 16, 11, 47 }, { 21, 11, 2 }, { 6, 0, 133 }, { 8, 0, 413 },
- { 9, 0, 353 }, { 11, 0, 993 }, { 17, 10, 19 }, { 4, 11, 937 },
- { 5, 11, 801 }, { 6, 0, 978 }, { 6, 0, 93 }, { 6, 0, 1508 },
- { 7, 0, 1422 }, { 7, 0, 1851 }, { 8, 0, 673 }, { 9, 0, 529 },
- { 12, 0, 43 }, { 6, 0, 317 }, { 10, 0, 512 }, { 4, 10, 737 },
- { 11, 10, 294 }, { 12, 10, 60 }, { 12, 10, 437 }, { 13, 10, 64 },
- { 13, 10, 380 }, { 14, 10, 430 }, { 9, 0, 371 }, { 7, 11, 1591 },
- { 16, 11, 43 }, { 6, 10, 1758 }, { 8, 10, 520 }, { 9, 10, 345 },
- { 9, 10, 403 }, { 14, 10, 350 }, { 5, 0, 526 }, { 10, 10, 242 },
- { 10, 10, 579 }, { 9, 0, 25 }, { 10, 0, 467 }, { 10, 0, 559 },
- { 5, 10, 139 }, { 7, 10, 1168 }, { 10, 10, 539 }, { 4, 0, 335 },
- { 7, 0, 942 }, { 12, 0, 754 }, { 4, 11, 365 }, { 11, 0, 182 },
- { 14, 0, 195 }, { 14, 11, 29 }, { 5, 11, 7 }, { 11, 11, 774 },
- { 4, 11, 746 }, { 7, 11, 1090 }, { 8, 0, 39 }, { 10, 0, 773 },
- { 11, 0, 84 }, { 12, 0, 205 }, { 14, 0, 1 }, { 5, 0, 601 },
- { 5, 0, 870 }, { 5, 11, 360 }, { 8, 11, 237 }, { 4, 0, 181 },
- { 8, 0, 370 }, { 6, 0, 1652 }, { 8, 0, 358 }, { 4, 10, 107 },
- { 7, 10, 613 }, { 8, 10, 439 }, { 8, 10, 504 }, { 9, 10, 501 },
- { 10, 10, 383 }, { 11, 10, 477 }, { 4, 10, 229 }, { 9, 11, 785 },
- { 4, 0, 97 }, { 5, 0, 147 }, { 6, 0, 286 }, { 7, 0, 1362 },
- { 13, 0, 176 }, { 6, 0, 537 }, { 7, 0, 788 }, { 7, 0, 1816 },
- { 4, 10, 903 }, { 12, 10, 71 }, { 6, 0, 743 }, { 6, 0, 1223 },
- { 6, 0, 375 }, { 7, 0, 169 }, { 7, 0, 254 }, { 8, 0, 780 },
- { 7, 11, 1493 }, { 7, 0, 1714 }, { 4, 10, 47 }, { 6, 10, 373 },
- { 7, 10, 452 }, { 7, 10, 543 }, { 7, 10, 1856 }, { 9, 10, 6 },
- { 11, 10, 257 }, { 11, 10, 391 }, { 6, 0, 896 }, { 8, 0, 1003 },
- { 7, 0, 1447 }, { 9, 11, 341 }, { 5, 10, 980 }, { 6, 10, 1754 },
- { 17, 11, 22 }, { 4, 11, 277 }, { 5, 11, 608 }, { 6, 11, 493 },
- { 7, 11, 457 }, { 12, 11, 384 }, { 7, 10, 536 }, { 7, 10, 1331 },
- { 8, 10, 143 }, { 12, 0, 744 }, { 7, 11, 27 }, { 7, 11, 316 },
- { 18, 0, 126 }, { 5, 10, 19 }, { 6, 10, 533 }, { 4, 0, 788 },
- { 11, 0, 41 }, { 5, 11, 552 }, { 5, 11, 586 }, { 5, 11, 676 },
- { 6, 11, 448 }, { 8, 11, 244 }, { 11, 11, 1 }, { 11, 11, 41 },
- { 13, 11, 3 }, { 16, 11, 54 }, { 17, 11, 4 }, { 18, 11, 13 },
- { 4, 0, 985 }, { 6, 0, 1801 }, { 4, 11, 401 }, { 9, 11, 264 },
- { 5, 10, 395 }, { 5, 10, 951 }, { 6, 10, 1776 }, { 5, 0, 629 },
- { 7, 0, 1549 }, { 11, 10, 663 }, { 12, 10, 210 }, { 13, 10, 166 },
- { 13, 10, 310 }, { 14, 10, 373 }, { 19, 10, 43 }, { 9, 11, 543 },
- { 10, 11, 524 }, { 11, 11, 30 }, { 12, 11, 524 }, { 14, 11, 315 },
- { 16, 11, 18 }, { 20, 11, 26 }, { 20, 11, 65 }, { 4, 11, 205 },
- { 5, 11, 623 }, { 7, 11, 104 }, { 8, 11, 519 }, { 5, 0, 293 },
- { 6, 0, 601 }, { 7, 11, 579 }, { 9, 11, 41 }, { 9, 11, 244 },
- { 9, 11, 669 }, { 10, 11, 5 }, { 11, 11, 861 }, { 11, 11, 951 },
- { 11, 11, 980 }, { 4, 11, 717 }, { 4, 10, 695 }, { 7, 10, 497 },
- { 9, 10, 387 }, { 19, 10, 81 }, { 4, 0, 420 }, { 14, 0, 37 },
- { 6, 0, 1134 }, { 6, 0, 1900 }, { 12, 0, 830 }, { 12, 0, 878 },
- { 12, 0, 894 }, { 15, 0, 221 }, { 15, 0, 245 }, { 4, 11, 489 },
- { 7, 0, 1570 }, { 12, 0, 542 }, { 8, 0, 933 }, { 8, 0, 957 },
- { 6, 0, 1371 }, { 7, 0, 31 }, { 8, 0, 373 }, { 5, 10, 284 },
- { 6, 10, 49 }, { 6, 10, 350 }, { 7, 10, 377 }, { 7, 10, 1693 },
- { 8, 10, 678 }, { 9, 10, 161 }, { 9, 10, 585 }, { 9, 10, 671 },
- { 9, 10, 839 }, { 11, 10, 912 }, { 13, 10, 427 }, { 7, 11, 892 },
- { 4, 0, 325 }, { 10, 0, 125 }, { 11, 11, 47 }, { 4, 10, 597 },
- { 10, 0, 323 }, { 6, 0, 1547 }, { 7, 11, 1605 }, { 9, 11, 473 },
- { 11, 11, 962 }, { 18, 11, 139 }, { 11, 10, 908 }, { 7, 11, 819 },
- { 9, 11, 26 }, { 9, 11, 392 }, { 10, 11, 152 }, { 10, 11, 226 },
- { 11, 11, 19 }, { 12, 11, 276 }, { 12, 11, 426 }, { 12, 11, 589 },
- { 13, 11, 460 }, { 15, 11, 97 }, { 19, 11, 48 }, { 20, 11, 104 },
- { 7, 11, 51 }, { 4, 0, 718 }, { 7, 0, 1216 }, { 6, 0, 1896 },
- { 6, 0, 1905 }, { 6, 0, 1912 }, { 9, 0, 947 }, { 9, 0, 974 },
- { 12, 0, 809 }, { 12, 0, 850 }, { 12, 0, 858 }, { 12, 0, 874 },
- { 12, 0, 887 }, { 12, 0, 904 }, { 12, 0, 929 }, { 12, 0, 948 },
- { 12, 0, 952 }, { 15, 0, 198 }, { 15, 0, 206 }, { 15, 0, 220 },
- { 15, 0, 227 }, { 15, 0, 247 }, { 18, 0, 188 }, { 21, 0, 48 },
- { 21, 0, 50 }, { 24, 0, 25 }, { 24, 0, 29 }, { 7, 11, 761 },
- { 7, 11, 1051 }, { 9, 11, 545 }, { 5, 0, 124 }, { 5, 0, 144 },
- { 6, 0, 548 }, { 7, 0, 15 }, { 7, 0, 153 }, { 9, 0, 629 },
- { 7, 11, 606 }, { 7, 10, 2014 }, { 7, 10, 2007 }, { 9, 11, 46 },
- { 9, 10, 101 }, { 9, 10, 450 }, { 10, 10, 66 }, { 10, 10, 842 },
- { 11, 10, 536 }, { 12, 10, 587 }, { 6, 0, 75 }, { 7, 0, 1531 },
- { 8, 0, 416 }, { 9, 0, 240 }, { 9, 0, 275 }, { 10, 0, 100 },
- { 11, 0, 658 }, { 11, 0, 979 }, { 12, 0, 86 }, { 14, 0, 207 },
- { 15, 0, 20 }, { 15, 0, 25 }, { 5, 0, 141 }, { 5, 0, 915 },
- { 6, 0, 1783 }, { 7, 0, 211 }, { 7, 0, 698 }, { 7, 0, 1353 },
- { 9, 0, 83 }, { 9, 0, 281 }, { 10, 0, 376 }, { 10, 0, 431 },
- { 11, 0, 543 }, { 12, 0, 664 }, { 13, 0, 280 }, { 13, 0, 428 },
- { 14, 0, 61 }, { 14, 0, 128 }, { 17, 0, 52 }, { 17, 0, 81 },
- { 4, 11, 674 }, { 7, 0, 533 }, { 21, 0, 6 }, { 4, 11, 770 },
- { 5, 0, 538 }, { 5, 11, 79 }, { 7, 11, 1027 }, { 7, 11, 1477 },
- { 11, 11, 52 }, { 11, 10, 62 }, { 4, 0, 338 }, { 5, 0, 400 },
- { 5, 11, 789 }, { 6, 11, 195 }, { 4, 11, 251 }, { 4, 11, 688 },
- { 7, 11, 513 }, { 7, 11, 1284 }, { 9, 11, 87 }, { 10, 11, 365 },
- { 6, 10, 1766 }, { 6, 0, 0 }, { 7, 0, 84 }, { 11, 0, 895 },
- { 17, 0, 11 }, { 11, 0, 892 }, { 4, 0, 221 }, { 5, 0, 659 },
- { 7, 0, 697 }, { 7, 0, 1211 }, { 10, 0, 284 }, { 5, 0, 989 },
- { 5, 11, 889 }, { 4, 11, 160 }, { 5, 11, 330 }, { 7, 11, 1434 },
- { 8, 11, 174 }, { 6, 10, 1665 }, { 7, 10, 256 }, { 7, 10, 1388 },
- { 10, 10, 499 }, { 11, 10, 670 }, { 7, 0, 848 }, { 4, 10, 22 },
- { 5, 10, 10 }, { 8, 10, 97 }, { 10, 0, 507 }, { 5, 10, 481 },
- { 4, 0, 188 }, { 7, 0, 805 }, { 5, 0, 884 }, { 6, 0, 732 },
- { 11, 0, 991 }, { 7, 11, 968 }, { 11, 11, 636 }, { 15, 11, 145 },
- { 17, 11, 34 }, { 19, 11, 50 }, { 23, 11, 20 }, { 7, 0, 959 },
- { 16, 0, 60 }, { 6, 10, 134 }, { 7, 10, 437 }, { 9, 10, 37 },
- { 14, 10, 285 }, { 14, 10, 371 }, { 7, 10, 486 }, { 8, 10, 155 },
- { 11, 10, 93 }, { 12, 10, 164 }, { 6, 0, 1653 }, { 7, 0, 337 },
- { 5, 10, 591 }, { 6, 0, 1989 }, { 8, 0, 922 }, { 8, 0, 978 },
- { 5, 11, 374 }, { 4, 0, 638 }, { 10, 0, 500 }, { 5, 11, 731 },
- { 5, 10, 380 }, { 5, 10, 650 }, { 8, 10, 310 }, { 10, 11, 381 },
- { 4, 10, 364 }, { 7, 10, 1156 }, { 7, 10, 1187 }, { 9, 10, 409 },
- { 9, 11, 224 }, { 12, 0, 166 }, { 6, 10, 482 }, { 4, 11, 626 },
- { 5, 11, 642 }, { 6, 11, 425 }, { 10, 11, 202 }, { 11, 11, 141 },
- { 4, 10, 781 }, { 6, 10, 487 }, { 7, 10, 926 }, { 8, 10, 263 },
- { 11, 10, 500 }, { 7, 0, 418 }, { 4, 10, 94 }, { 7, 10, 1265 },
- { 8, 0, 760 }, { 4, 10, 417 }, { 8, 11, 835 }, { 5, 10, 348 },
- { 6, 10, 522 }, { 6, 0, 1277 }, { 6, 0, 1538 }, { 11, 11, 541 },
- { 7, 11, 1597 }, { 5, 11, 384 }, { 8, 11, 455 }, { 12, 11, 48 },
- { 8, 0, 770 }, { 5, 11, 264 }, { 6, 11, 184 }, { 4, 0, 89 },
- { 5, 0, 489 }, { 6, 0, 315 }, { 7, 0, 553 }, { 7, 0, 1745 },
- { 10, 0, 243 }, { 4, 10, 408 }, { 4, 10, 741 }, { 7, 10, 500 },
- { 6, 0, 1396 }, { 5, 0, 560 }, { 6, 0, 1658 }, { 9, 0, 3 },
- { 10, 0, 154 }, { 11, 0, 641 }, { 13, 0, 85 }, { 13, 0, 201 },
- { 13, 0, 346 }, { 7, 11, 1595 }, { 5, 11, 633 }, { 6, 11, 28 },
- { 7, 11, 219 }, { 7, 11, 1323 }, { 9, 11, 769 }, { 12, 11, 185 },
- { 7, 11, 785 }, { 7, 11, 359 }, { 8, 11, 243 }, { 12, 11, 175 },
- { 10, 0, 586 }, { 7, 0, 1271 }, { 6, 10, 73 }, { 4, 11, 105 },
- { 4, 0, 166 }, { 5, 0, 505 }, { 6, 0, 1670 }, { 5, 10, 576 },
- { 4, 11, 324 }, { 10, 11, 104 }, { 14, 10, 231 }, { 6, 0, 637 },
- { 7, 10, 1264 }, { 7, 10, 1678 }, { 11, 10, 945 }, { 12, 10, 341 },
- { 12, 10, 471 }, { 12, 10, 569 }, { 23, 11, 21 }, { 23, 11, 23 },
- { 8, 11, 559 }, { 13, 11, 109 }, { 6, 0, 1947 }, { 7, 0, 445 },
- { 8, 0, 307 }, { 8, 0, 704 }, { 10, 0, 41 }, { 10, 0, 439 },
- { 11, 0, 237 }, { 11, 0, 622 }, { 12, 0, 201 }, { 7, 11, 963 },
- { 7, 0, 1977 }, { 4, 0, 189 }, { 5, 0, 713 }, { 8, 0, 57 },
- { 10, 0, 371 }, { 7, 10, 538 }, { 4, 0, 552 }, { 6, 0, 883 },
- { 5, 10, 413 }, { 6, 0, 923 }, { 4, 11, 758 }, { 10, 11, 215 },
- { 8, 10, 495 }, { 7, 10, 54 }, { 8, 10, 312 }, { 10, 10, 191 },
- { 10, 10, 614 }, { 12, 10, 567 }, { 7, 11, 351 }, { 11, 11, 128 },
- { 7, 0, 875 }, { 6, 10, 468 }, { 7, 10, 1478 }, { 8, 10, 530 },
- { 14, 10, 290 }, { 7, 0, 1788 }, { 17, 0, 49 }, { 5, 11, 918 },
- { 12, 11, 398 }, { 20, 11, 39 }, { 21, 11, 11 }, { 22, 11, 41 },
- { 10, 0, 661 }, { 6, 10, 484 }, { 7, 10, 822 }, { 7, 0, 1945 },
- { 6, 0, 794 }, { 9, 10, 900 }, { 7, 10, 1335 }, { 6, 10, 1724 },
- { 7, 10, 2022 }, { 4, 11, 340 }, { 6, 0, 1135 }, { 4, 0, 784 },
- { 5, 0, 745 }, { 5, 0, 84 }, { 6, 0, 163 }, { 5, 0, 410 },
- { 4, 0, 976 }, { 5, 11, 985 }, { 7, 11, 509 }, { 7, 11, 529 },
- { 17, 11, 96 }, { 4, 10, 474 }, { 6, 0, 703 }, { 7, 11, 1919 },
- { 5, 0, 322 }, { 8, 0, 186 }, { 9, 0, 262 }, { 10, 0, 187 },
- { 14, 0, 208 }, { 7, 10, 1504 }, { 5, 0, 227 }, { 9, 0, 560 },
- { 13, 0, 208 }, { 5, 10, 305 }, { 4, 11, 247 }, { 7, 0, 1395 },
- { 8, 0, 486 }, { 9, 0, 236 }, { 9, 0, 878 }, { 10, 0, 218 },
- { 11, 0, 95 }, { 19, 0, 17 }, { 19, 0, 31 }, { 7, 0, 2043 },
- { 8, 0, 672 }, { 13, 0, 448 }, { 4, 11, 184 }, { 5, 11, 390 },
- { 6, 11, 337 }, { 7, 11, 23 }, { 7, 11, 494 }, { 7, 11, 618 },
- { 7, 11, 1456 }, { 8, 11, 27 }, { 8, 11, 599 }, { 10, 11, 153 },
- { 11, 11, 710 }, { 7, 0, 466 }, { 7, 10, 1236 }, { 6, 0, 167 },
- { 7, 0, 186 }, { 7, 0, 656 }, { 10, 0, 643 }, { 4, 10, 480 },
- { 6, 10, 302 }, { 6, 10, 1642 }, { 7, 10, 837 }, { 7, 10, 1547 },
- { 7, 10, 1657 }, { 8, 10, 429 }, { 9, 10, 228 }, { 13, 10, 289 },
- { 13, 10, 343 }, { 19, 10, 101 }, { 6, 0, 1428 }, { 6, 0, 1440 },
- { 5, 0, 412 }, { 7, 10, 278 }, { 10, 10, 739 }, { 11, 10, 708 },
- { 13, 10, 348 }, { 6, 0, 1118 }, { 8, 0, 562 }, { 20, 11, 46 },
- { 9, 0, 316 }, { 11, 0, 256 }, { 6, 0, 1771 }, { 7, 0, 1190 },
- { 9, 0, 132 }, { 10, 11, 227 }, { 11, 11, 497 }, { 11, 11, 709 },
- { 12, 11, 415 }, { 15, 0, 66 }, { 6, 11, 360 }, { 7, 11, 1664 },
- { 8, 11, 478 }, { 16, 10, 28 }, { 4, 0, 317 }, { 7, 0, 1279 },
- { 5, 0, 63 }, { 5, 0, 509 }, { 8, 11, 699 }, { 17, 10, 36 },
- { 6, 0, 1475 }, { 11, 11, 343 }, { 14, 11, 127 }, { 4, 11, 739 },
- { 4, 0, 288 }, { 7, 11, 1757 }, { 8, 0, 89 }, { 8, 0, 620 },
- { 9, 0, 608 }, { 11, 0, 628 }, { 12, 0, 322 }, { 15, 0, 124 },
- { 6, 0, 1225 }, { 7, 0, 1189 }, { 4, 11, 67 }, { 5, 11, 422 },
- { 6, 10, 363 }, { 7, 11, 1037 }, { 7, 11, 1289 }, { 7, 11, 1555 },
- { 7, 10, 1955 }, { 8, 10, 725 }, { 9, 11, 741 }, { 17, 11, 108 },
- { 6, 0, 1468 }, { 6, 0, 689 }, { 6, 0, 1451 }, { 10, 0, 120 },
- { 23, 0, 1 }, { 9, 10, 805 }, { 14, 0, 329 }, { 5, 10, 813 },
- { 7, 10, 2046 }, { 7, 0, 226 }, { 10, 11, 96 }, { 7, 0, 1855 },
- { 5, 10, 712 }, { 11, 10, 17 }, { 13, 10, 321 }, { 16, 10, 67 },
- { 9, 0, 461 }, { 6, 10, 320 }, { 7, 10, 781 }, { 7, 10, 1921 },
- { 9, 10, 55 }, { 10, 10, 186 }, { 10, 10, 273 }, { 10, 10, 664 },
- { 10, 10, 801 }, { 11, 10, 996 }, { 11, 10, 997 }, { 13, 10, 157 },
- { 14, 10, 170 }, { 8, 11, 203 }, { 8, 10, 271 }, { 11, 11, 823 },
- { 11, 11, 846 }, { 12, 11, 482 }, { 13, 11, 133 }, { 13, 11, 277 },
- { 13, 11, 302 }, { 13, 11, 464 }, { 14, 11, 205 }, { 14, 11, 221 },
- { 7, 0, 1346 }, { 4, 11, 449 }, { 5, 11, 718 }, { 6, 0, 85 },
- { 14, 0, 299 }, { 7, 10, 103 }, { 7, 10, 863 }, { 11, 10, 184 },
- { 17, 10, 62 }, { 4, 11, 355 }, { 6, 11, 311 }, { 9, 11, 256 },
- { 10, 11, 404 }, { 9, 10, 659 }, { 10, 11, 758 }, { 5, 11, 827 },
- { 5, 11, 64 }, { 12, 11, 581 }, { 6, 0, 1171 }, { 4, 11, 442 },
- { 7, 11, 1047 }, { 7, 11, 1352 }, { 7, 11, 1643 }, { 4, 0, 980 },
- { 5, 11, 977 }, { 6, 11, 288 }, { 7, 11, 528 }, { 7, 11, 1065 },
- { 5, 0, 279 }, { 6, 0, 235 }, { 7, 0, 468 }, { 8, 0, 446 },
- { 9, 0, 637 }, { 10, 0, 717 }, { 11, 0, 738 }, { 12, 0, 514 },
- { 4, 0, 293 }, { 11, 10, 337 }, { 14, 10, 303 }, { 8, 11, 285 },
- { 5, 0, 17 }, { 6, 0, 371 }, { 9, 0, 528 }, { 12, 0, 364 },
- { 4, 11, 254 }, { 5, 10, 77 }, { 7, 10, 1455 }, { 10, 10, 843 },
- { 19, 10, 73 }, { 22, 0, 5 }, { 4, 10, 458 }, { 6, 11, 12 },
- { 7, 11, 1219 }, { 17, 11, 73 }, { 7, 10, 1420 }, { 6, 10, 109 },
- { 10, 10, 382 }, { 7, 11, 125 }, { 6, 10, 330 }, { 7, 10, 1084 },
- { 11, 10, 142 }, { 6, 11, 369 }, { 6, 11, 502 }, { 7, 11, 1036 },
- { 8, 11, 348 }, { 9, 11, 452 }, { 10, 11, 26 }, { 11, 11, 224 },
- { 11, 11, 387 }, { 11, 11, 772 }, { 12, 11, 95 }, { 12, 11, 629 },
- { 13, 11, 195 }, { 13, 11, 207 }, { 13, 11, 241 }, { 14, 11, 260 },
- { 14, 11, 270 }, { 15, 11, 140 }, { 4, 11, 269 }, { 5, 11, 480 },
- { 7, 11, 532 }, { 7, 11, 1197 }, { 7, 11, 1358 }, { 8, 11, 291 },
- { 11, 11, 349 }, { 14, 11, 396 }, { 22, 0, 48 }, { 10, 0, 601 },
- { 13, 0, 353 }, { 13, 0, 376 }, { 5, 0, 779 }, { 5, 0, 807 },
- { 6, 0, 1655 }, { 6, 0, 1676 }, { 14, 11, 223 }, { 4, 0, 196 },
- { 5, 0, 558 }, { 5, 0, 949 }, { 20, 11, 15 }, { 7, 11, 1764 },
- { 6, 0, 1322 }, { 4, 0, 752 }, { 11, 0, 737 }, { 7, 11, 657 },
- { 8, 11, 533 }, { 7, 0, 412 }, { 4, 0, 227 }, { 5, 0, 159 },
- { 5, 0, 409 }, { 7, 0, 80 }, { 8, 0, 556 }, { 10, 0, 479 },
- { 12, 0, 418 }, { 14, 0, 50 }, { 14, 0, 123 }, { 14, 0, 192 },
- { 14, 0, 249 }, { 14, 0, 295 }, { 15, 0, 27 }, { 7, 0, 1470 },
- { 8, 0, 66 }, { 8, 0, 137 }, { 8, 0, 761 }, { 9, 0, 638 },
- { 11, 0, 80 }, { 11, 0, 212 }, { 11, 0, 368 }, { 11, 0, 418 },
- { 12, 0, 8 }, { 13, 0, 15 }, { 16, 0, 61 }, { 17, 0, 59 },
- { 19, 0, 28 }, { 20, 0, 84 }, { 7, 10, 1985 }, { 4, 11, 211 },
- { 4, 11, 332 }, { 5, 11, 335 }, { 6, 11, 238 }, { 7, 11, 269 },
- { 7, 11, 811 }, { 7, 11, 1797 }, { 8, 10, 122 }, { 8, 11, 836 },
- { 9, 11, 507 }, { 13, 11, 242 }, { 6, 0, 683 }, { 6, 0, 1252 },
- { 4, 0, 873 }, { 4, 10, 234 }, { 6, 0, 835 }, { 6, 0, 38 },
- { 7, 0, 1220 }, { 8, 0, 185 }, { 8, 0, 256 }, { 9, 0, 22 },
- { 9, 0, 331 }, { 10, 0, 738 }, { 11, 0, 205 }, { 11, 0, 540 },
- { 11, 0, 746 }, { 13, 0, 465 }, { 14, 0, 88 }, { 14, 0, 194 },
- { 10, 0, 986 }, { 5, 11, 1009 }, { 12, 11, 582 }, { 18, 11, 131 },
- { 4, 0, 159 }, { 6, 0, 115 }, { 7, 0, 252 }, { 7, 0, 257 },
- { 7, 0, 1928 }, { 8, 0, 69 }, { 9, 0, 384 }, { 10, 0, 91 },
- { 10, 0, 615 }, { 12, 0, 375 }, { 14, 0, 235 }, { 18, 0, 117 },
- { 19, 0, 123 }, { 5, 0, 911 }, { 8, 0, 278 }, { 5, 10, 430 },
- { 5, 10, 932 }, { 6, 10, 131 }, { 7, 10, 417 }, { 9, 10, 522 },
- { 11, 10, 314 }, { 13, 10, 390 }, { 14, 10, 149 }, { 14, 10, 399 },
- { 15, 10, 57 }, { 4, 0, 151 }, { 7, 0, 1567 }, { 8, 0, 749 },
- { 5, 11, 228 }, { 6, 11, 203 }, { 7, 11, 156 }, { 8, 11, 347 },
- { 9, 11, 265 }, { 4, 10, 507 }, { 10, 0, 989 }, { 12, 0, 956 },
- { 5, 0, 990 }, { 5, 0, 194 }, { 6, 0, 927 }, { 7, 0, 1662 },
- { 9, 0, 90 }, { 12, 0, 564 }, { 4, 10, 343 }, { 5, 10, 511 },
- { 5, 0, 425 }, { 7, 10, 455 }, { 10, 10, 591 }, { 4, 0, 774 },
- { 7, 11, 476 }, { 7, 11, 1592 }, { 10, 11, 87 }, { 5, 0, 971 },
- { 7, 10, 1381 }, { 5, 11, 318 }, { 19, 11, 121 }, { 5, 11, 291 },
- { 7, 11, 765 }, { 9, 11, 389 }, { 12, 11, 548 }, { 6, 10, 575 },
- { 4, 0, 827 }, { 12, 0, 646 }, { 12, 0, 705 }, { 12, 0, 712 },
- { 12, 0, 714 }, { 11, 0, 752 }, { 9, 0, 662 }, { 5, 0, 72 },
- { 6, 0, 264 }, { 7, 0, 21 }, { 7, 0, 46 }, { 7, 0, 2013 },
- { 8, 0, 215 }, { 8, 0, 513 }, { 10, 0, 266 }, { 11, 0, 22 },
- { 11, 11, 522 }, { 6, 0, 239 }, { 7, 0, 118 }, { 10, 0, 95 },
- { 11, 0, 603 }, { 13, 0, 443 }, { 14, 0, 160 }, { 15, 0, 4 },
- { 6, 0, 431 }, { 6, 0, 669 }, { 7, 10, 1127 }, { 7, 10, 1572 },
- { 10, 10, 297 }, { 10, 10, 422 }, { 11, 10, 764 }, { 11, 10, 810 },
- { 12, 10, 264 }, { 13, 10, 102 }, { 13, 10, 300 }, { 13, 10, 484 },
- { 14, 10, 147 }, { 14, 10, 229 }, { 17, 10, 71 }, { 18, 10, 118 },
- { 19, 10, 120 }, { 5, 0, 874 }, { 6, 0, 1677 }, { 15, 0, 0 },
- { 10, 11, 525 }, { 11, 11, 82 }, { 6, 0, 65 }, { 7, 0, 939 },
- { 7, 0, 1172 }, { 7, 0, 1671 }, { 9, 0, 540 }, { 10, 0, 696 },
- { 11, 0, 265 }, { 11, 0, 732 }, { 11, 0, 928 }, { 11, 0, 937 },
- { 13, 0, 438 }, { 6, 0, 1350 }, { 8, 11, 547 }, { 4, 11, 422 },
- { 5, 11, 355 }, { 17, 11, 0 }, { 9, 11, 905 }, { 5, 0, 682 },
- { 7, 0, 1887 }, { 4, 0, 809 }, { 4, 0, 696 }, { 5, 11, 865 },
- { 6, 0, 1074 }, { 6, 0, 1472 }, { 14, 10, 35 }, { 14, 10, 191 },
- { 5, 11, 914 }, { 6, 11, 1625 }, { 5, 11, 234 }, { 7, 11, 1383 },
- { 9, 11, 780 }, { 4, 10, 125 }, { 4, 0, 726 }, { 5, 0, 630 },
- { 8, 0, 802 }, { 8, 0, 838 }, { 4, 10, 721 }, { 6, 0, 1337 },
- { 7, 0, 776 }, { 19, 0, 56 }, { 8, 10, 145 }, { 4, 0, 970 },
- { 7, 10, 792 }, { 8, 10, 147 }, { 10, 10, 821 }, { 11, 10, 1021 },
- { 11, 10, 970 }, { 8, 0, 940 }, { 9, 0, 797 }, { 7, 11, 1312 },
- { 9, 0, 248 }, { 10, 0, 400 }, { 7, 11, 816 }, { 7, 11, 1241 },
- { 7, 10, 1999 }, { 9, 11, 283 }, { 9, 11, 520 }, { 10, 11, 213 },
- { 10, 11, 307 }, { 10, 11, 463 }, { 10, 11, 671 }, { 10, 11, 746 },
- { 11, 11, 401 }, { 11, 11, 794 }, { 12, 11, 517 }, { 18, 11, 107 },
- { 19, 11, 115 }, { 6, 0, 1951 }, { 6, 0, 2040 }, { 7, 11, 339 },
- { 13, 0, 41 }, { 15, 0, 93 }, { 5, 10, 168 }, { 5, 10, 930 },
- { 8, 10, 74 }, { 9, 10, 623 }, { 12, 10, 500 }, { 12, 10, 579 },
- { 6, 0, 118 }, { 7, 0, 215 }, { 7, 0, 1521 }, { 12, 0, 11 },
- { 6, 10, 220 }, { 7, 10, 1101 }, { 13, 10, 105 }, { 6, 11, 421 },
- { 7, 11, 61 }, { 7, 11, 1540 }, { 10, 11, 11 }, { 10, 11, 501 },
- { 7, 0, 615 }, { 10, 0, 251 }, { 12, 11, 631 }, { 7, 0, 1044 },
- { 6, 10, 19 }, { 7, 10, 1413 }, { 11, 10, 428 }, { 5, 0, 225 },
- { 7, 10, 96 }, { 8, 10, 401 }, { 8, 10, 703 }, { 9, 10, 896 },
- { 17, 10, 116 }, { 6, 11, 102 }, { 7, 11, 72 }, { 15, 11, 142 },
- { 19, 11, 67 }, { 7, 10, 1961 }, { 7, 10, 1965 }, { 8, 10, 702 },
- { 8, 10, 750 }, { 7, 10, 2030 }, { 8, 10, 150 }, { 8, 10, 737 },
- { 12, 10, 366 }, { 23, 11, 30 }, { 4, 0, 370 }, { 5, 0, 756 },
- { 7, 0, 1326 }, { 7, 11, 823 }, { 8, 10, 800 }, { 9, 10, 148 },
- { 9, 10, 872 }, { 9, 10, 890 }, { 11, 10, 309 }, { 11, 10, 1001 },
- { 13, 10, 267 }, { 13, 10, 323 }, { 6, 0, 1662 }, { 7, 0, 48 },
- { 8, 0, 771 }, { 10, 0, 116 }, { 13, 0, 104 }, { 14, 0, 105 },
- { 14, 0, 184 }, { 15, 0, 168 }, { 19, 0, 92 }, { 20, 0, 68 },
- { 10, 0, 209 }, { 7, 11, 1870 }, { 7, 11, 68 }, { 8, 11, 48 },
- { 8, 11, 88 }, { 8, 11, 582 }, { 8, 11, 681 }, { 9, 11, 373 },
- { 9, 11, 864 }, { 11, 11, 157 }, { 11, 11, 336 }, { 11, 11, 843 },
- { 20, 11, 27 }, { 6, 0, 930 }, { 4, 11, 88 }, { 5, 11, 137 },
- { 5, 11, 174 }, { 5, 11, 777 }, { 6, 11, 1664 }, { 6, 11, 1725 },
- { 7, 11, 77 }, { 7, 11, 426 }, { 7, 11, 1317 }, { 7, 11, 1355 },
- { 8, 11, 126 }, { 8, 11, 563 }, { 9, 11, 523 }, { 9, 11, 750 },
- { 10, 11, 310 }, { 10, 11, 836 }, { 11, 11, 42 }, { 11, 11, 318 },
- { 11, 11, 731 }, { 12, 11, 68 }, { 12, 11, 92 }, { 12, 11, 507 },
- { 12, 11, 692 }, { 13, 11, 81 }, { 13, 11, 238 }, { 13, 11, 374 },
- { 18, 11, 138 }, { 19, 11, 78 }, { 19, 11, 111 }, { 20, 11, 55 },
- { 20, 11, 77 }, { 20, 11, 92 }, { 4, 11, 938 }, { 7, 11, 1831 },
- { 5, 10, 547 }, { 7, 10, 424 }, { 8, 11, 617 }, { 10, 11, 351 },
- { 6, 0, 1286 }, { 6, 11, 1668 }, { 7, 11, 1499 }, { 8, 11, 117 },
- { 9, 11, 314 }, { 10, 11, 174 }, { 6, 0, 759 }, { 6, 0, 894 },
- { 7, 11, 707 }, { 11, 11, 563 }, { 4, 0, 120 }, { 7, 0, 1894 },
- { 9, 0, 385 }, { 21, 0, 17 }, { 10, 0, 429 }, { 5, 11, 403 },
- { 5, 0, 820 }, { 7, 0, 931 }, { 10, 0, 199 }, { 5, 10, 133 },
- { 6, 0, 151 }, { 6, 0, 1675 }, { 7, 0, 383 }, { 23, 0, 10 },
- { 6, 0, 761 }, { 8, 10, 187 }, { 8, 0, 365 }, { 10, 10, 0 },
- { 10, 10, 818 }, { 11, 10, 988 }, { 4, 11, 44 }, { 5, 11, 311 },
- { 6, 11, 156 }, { 7, 11, 639 }, { 7, 11, 762 }, { 7, 11, 1827 },
- { 9, 11, 8 }, { 9, 11, 462 }, { 20, 11, 83 }, { 4, 11, 346 },
- { 7, 11, 115 }, { 9, 11, 180 }, { 9, 11, 456 }, { 10, 11, 363 },
- { 8, 10, 685 }, { 7, 0, 1086 }, { 17, 0, 46 }, { 6, 0, 1624 },
- { 11, 0, 11 }, { 12, 0, 422 }, { 13, 0, 444 }, { 14, 0, 360 },
- { 6, 0, 1020 }, { 6, 0, 1260 }, { 6, 0, 1589 }, { 4, 0, 43 },
- { 5, 0, 344 }, { 5, 0, 357 }, { 14, 0, 472 }, { 22, 0, 58 },
- { 6, 0, 1864 }, { 6, 0, 1866 }, { 6, 0, 1868 }, { 6, 0, 1869 },
- { 6, 0, 1874 }, { 6, 0, 1877 }, { 6, 0, 1903 }, { 6, 0, 1911 },
- { 9, 0, 920 }, { 9, 0, 921 }, { 9, 0, 924 }, { 9, 0, 946 },
- { 9, 0, 959 }, { 9, 0, 963 }, { 9, 0, 970 }, { 9, 0, 997 },
- { 9, 0, 1008 }, { 9, 0, 1017 }, { 12, 0, 795 }, { 12, 0, 797 },
- { 12, 0, 798 }, { 12, 0, 800 }, { 12, 0, 803 }, { 12, 0, 811 },
- { 12, 0, 820 }, { 12, 0, 821 }, { 12, 0, 839 }, { 12, 0, 841 },
- { 12, 0, 848 }, { 12, 0, 911 }, { 12, 0, 921 }, { 12, 0, 922 },
- { 12, 0, 925 }, { 12, 0, 937 }, { 12, 0, 944 }, { 12, 0, 945 },
- { 12, 0, 953 }, { 15, 0, 184 }, { 15, 0, 191 }, { 15, 0, 199 },
- { 15, 0, 237 }, { 15, 0, 240 }, { 15, 0, 243 }, { 15, 0, 246 },
- { 18, 0, 203 }, { 21, 0, 40 }, { 21, 0, 52 }, { 21, 0, 57 },
- { 24, 0, 23 }, { 24, 0, 28 }, { 24, 0, 30 }, { 6, 0, 725 },
- { 17, 11, 58 }, { 5, 0, 888 }, { 9, 10, 874 }, { 4, 0, 711 },
- { 8, 10, 774 }, { 10, 10, 670 }, { 12, 10, 51 }, { 16, 11, 40 },
- { 6, 11, 185 }, { 7, 11, 1899 }, { 11, 11, 673 }, { 9, 10, 701 },
- { 9, 0, 440 }, { 4, 11, 327 }, { 5, 11, 478 }, { 7, 11, 1332 },
- { 8, 11, 753 }, { 12, 11, 227 }, { 4, 10, 127 }, { 5, 10, 350 },
- { 6, 10, 356 }, { 8, 10, 426 }, { 9, 10, 572 }, { 10, 10, 247 },
- { 11, 10, 312 }, { 5, 11, 1020 }, { 5, 11, 1022 }, { 4, 11, 103 },
- { 5, 11, 401 }, { 6, 0, 1913 }, { 6, 0, 1926 }, { 6, 0, 1959 },
- { 9, 0, 914 }, { 9, 0, 939 }, { 9, 0, 952 }, { 9, 0, 979 },
- { 9, 0, 990 }, { 9, 0, 998 }, { 9, 0, 1003 }, { 9, 0, 1023 },
- { 12, 0, 827 }, { 12, 0, 834 }, { 12, 0, 845 }, { 12, 0, 912 },
- { 12, 0, 935 }, { 12, 0, 951 }, { 15, 0, 172 }, { 15, 0, 174 },
- { 18, 0, 198 }, { 21, 0, 63 }, { 5, 0, 958 }, { 5, 0, 987 },
- { 4, 11, 499 }, { 7, 11, 1421 }, { 7, 0, 885 }, { 6, 10, 59 },
- { 6, 10, 1762 }, { 9, 10, 603 }, { 13, 10, 397 }, { 10, 11, 62 },
- { 13, 11, 164 }, { 4, 0, 847 }, { 7, 0, 326 }, { 11, 0, 276 },
- { 14, 0, 293 }, { 4, 0, 65 }, { 5, 0, 479 }, { 5, 0, 1004 },
- { 7, 0, 1913 }, { 8, 0, 317 }, { 9, 0, 302 }, { 10, 0, 612 },
- { 13, 0, 22 }, { 4, 11, 96 }, { 4, 0, 261 }, { 7, 0, 510 },
- { 7, 0, 1514 }, { 6, 10, 111 }, { 7, 10, 4 }, { 8, 10, 163 },
- { 8, 10, 776 }, { 10, 10, 566 }, { 4, 0, 291 }, { 9, 0, 515 },
- { 12, 0, 152 }, { 12, 0, 443 }, { 13, 0, 392 }, { 14, 0, 357 },
- { 7, 11, 399 }, { 7, 11, 1492 }, { 4, 0, 589 }, { 11, 0, 282 },
- { 6, 11, 563 }, { 7, 10, 1994 }, { 5, 10, 297 }, { 7, 10, 1038 },
- { 4, 0, 130 }, { 7, 0, 843 }, { 7, 0, 1562 }, { 5, 0, 42 },
- { 5, 0, 879 }, { 7, 0, 245 }, { 7, 0, 324 }, { 7, 0, 1532 },
- { 11, 0, 463 }, { 11, 0, 472 }, { 13, 0, 363 }, { 16, 0, 52 },
- { 4, 0, 134 }, { 5, 0, 372 }, { 5, 0, 680 }, { 8, 10, 363 },
- { 6, 0, 1997 }, { 8, 0, 935 }, { 8, 0, 977 }, { 4, 0, 810 },
- { 7, 0, 1634 }, { 7, 10, 1675 }, { 7, 0, 1390 }, { 4, 11, 910 },
- { 5, 11, 832 }, { 7, 10, 808 }, { 8, 11, 266 }, { 11, 11, 578 },
- { 4, 0, 644 }, { 4, 0, 982 }, { 10, 0, 867 }, { 4, 10, 280 },
- { 7, 0, 540 }, { 12, 10, 54 }, { 7, 0, 123 }, { 6, 0, 1978 },
- { 4, 10, 421 }, { 5, 10, 548 }, { 6, 0, 623 }, { 8, 0, 789 },
- { 4, 0, 908 }, { 5, 0, 359 }, { 5, 0, 508 }, { 6, 0, 1723 },
- { 7, 0, 343 }, { 7, 0, 1996 }, { 7, 0, 2026 }, { 6, 0, 1220 },
- { 4, 0, 341 }, { 7, 0, 480 }, { 6, 10, 254 }, { 9, 10, 109 },
- { 10, 10, 103 }, { 6, 0, 888 }, { 8, 11, 528 }, { 9, 11, 348 },
- { 7, 0, 1995 }, { 8, 0, 299 }, { 11, 0, 890 }, { 12, 0, 674 },
- { 4, 11, 20 }, { 5, 11, 616 }, { 7, 11, 1094 }, { 6, 10, 1630 },
- { 4, 0, 238 }, { 5, 0, 503 }, { 6, 0, 179 }, { 7, 0, 2003 },
- { 8, 0, 381 }, { 8, 0, 473 }, { 9, 0, 149 }, { 10, 0, 788 },
- { 15, 0, 45 }, { 15, 0, 86 }, { 20, 0, 110 }, { 22, 0, 57 },
- { 5, 10, 671 }, { 4, 11, 26 }, { 5, 11, 429 }, { 6, 11, 245 },
- { 7, 11, 704 }, { 7, 11, 1379 }, { 7, 11, 1474 }, { 4, 0, 121 },
- { 5, 0, 156 }, { 5, 0, 349 }, { 9, 0, 431 }, { 10, 0, 605 },
- { 14, 0, 342 }, { 7, 11, 943 }, { 11, 11, 614 }, { 4, 10, 889 },
- { 4, 11, 621 }, { 7, 10, 1382 }, { 7, 11, 1382 }, { 7, 10, 1910 },
- { 4, 10, 627 }, { 5, 10, 775 }, { 5, 11, 542 }, { 5, 11, 868 },
- { 8, 11, 433 }, { 6, 0, 1373 }, { 7, 0, 1011 }, { 11, 10, 362 },
- { 11, 10, 948 }, { 12, 10, 388 }, { 6, 0, 80 }, { 7, 0, 173 },
- { 9, 0, 547 }, { 10, 0, 730 }, { 14, 0, 18 }, { 22, 0, 39 },
- { 7, 11, 1495 }, { 6, 0, 1694 }, { 7, 0, 1974 }, { 12, 0, 196 },
- { 4, 0, 923 }, { 6, 0, 507 }, { 6, 0, 1711 }, { 7, 10, 451 },
- { 8, 10, 389 }, { 12, 10, 490 }, { 13, 10, 16 }, { 13, 10, 215 },
- { 13, 10, 351 }, { 18, 10, 132 }, { 19, 10, 125 }, { 6, 0, 646 },
- { 6, 0, 1047 }, { 7, 10, 841 }, { 8, 10, 566 }, { 6, 0, 1611 },
- { 7, 0, 1214 }, { 11, 0, 926 }, { 4, 11, 525 }, { 4, 0, 595 },
- { 5, 0, 240 }, { 6, 0, 459 }, { 7, 0, 12 }, { 7, 0, 114 },
- { 7, 0, 949 }, { 7, 0, 1753 }, { 7, 0, 1805 }, { 8, 0, 658 },
- { 9, 0, 1 }, { 11, 0, 959 }, { 13, 0, 446 }, { 5, 10, 912 },
- { 6, 10, 1695 }, { 4, 0, 446 }, { 7, 11, 62 }, { 12, 11, 45 },
- { 19, 11, 112 }, { 5, 10, 236 }, { 6, 10, 572 }, { 8, 10, 492 },
- { 11, 10, 618 }, { 16, 10, 56 }, { 5, 10, 190 }, { 8, 10, 318 },
- { 7, 10, 1376 }, { 4, 11, 223 }, { 6, 11, 359 }, { 11, 11, 3 },
- { 13, 11, 108 }, { 14, 11, 89 }, { 16, 11, 22 }, { 4, 11, 647 },
- { 6, 0, 490 }, { 6, 0, 491 }, { 6, 0, 1584 }, { 7, 11, 685 },
- { 10, 11, 220 }, { 7, 0, 250 }, { 8, 0, 507 }, { 4, 0, 158 },
- { 4, 0, 140 }, { 7, 0, 362 }, { 8, 0, 209 }, { 9, 0, 10 },
- { 9, 0, 160 }, { 9, 0, 503 }, { 9, 0, 614 }, { 10, 0, 689 },
- { 11, 0, 327 }, { 11, 0, 553 }, { 11, 0, 725 }, { 11, 0, 767 },
- { 12, 0, 252 }, { 12, 0, 583 }, { 13, 0, 192 }, { 14, 0, 269 },
- { 14, 0, 356 }, { 20, 0, 50 }, { 19, 0, 1 }, { 19, 0, 26 },
- { 22, 0, 9 }, { 4, 11, 109 }, { 6, 0, 228 }, { 7, 0, 1341 },
- { 9, 0, 408 }, { 10, 0, 343 }, { 4, 0, 373 }, { 5, 0, 283 },
- { 6, 0, 480 }, { 7, 0, 609 }, { 10, 0, 860 }, { 10, 0, 878 },
- { 6, 0, 779 }, { 6, 0, 1209 }, { 4, 0, 557 }, { 7, 11, 263 },
- { 7, 11, 628 }, { 8, 11, 349 }, { 4, 0, 548 }, { 7, 0, 197 },
- { 8, 0, 142 }, { 8, 0, 325 }, { 9, 0, 150 }, { 9, 0, 596 },
- { 10, 0, 350 }, { 10, 0, 353 }, { 11, 0, 74 }, { 11, 0, 315 },
- { 12, 0, 662 }, { 12, 0, 681 }, { 14, 0, 423 }, { 15, 0, 141 },
- { 4, 11, 40 }, { 10, 11, 67 }, { 11, 11, 117 }, { 11, 11, 768 },
- { 11, 11, 935 }, { 7, 11, 992 }, { 8, 11, 301 }, { 9, 11, 722 },
- { 12, 11, 63 }, { 13, 11, 29 }, { 14, 11, 161 }, { 15, 11, 18 },
- { 6, 0, 1490 }, { 10, 11, 532 }, { 5, 0, 580 }, { 7, 0, 378 },
- { 7, 0, 674 }, { 7, 0, 1424 }, { 15, 0, 83 }, { 16, 0, 11 },
- { 15, 11, 83 }, { 16, 11, 11 }, { 6, 0, 1057 }, { 6, 0, 1335 },
- { 10, 0, 316 }, { 7, 10, 85 }, { 7, 10, 247 }, { 8, 10, 585 },
- { 10, 10, 163 }, { 4, 0, 169 }, { 5, 0, 83 }, { 6, 0, 399 },
- { 6, 0, 579 }, { 6, 0, 1513 }, { 7, 0, 692 }, { 7, 0, 846 },
- { 7, 0, 1015 }, { 7, 0, 1799 }, { 8, 0, 403 }, { 9, 0, 394 },
- { 10, 0, 133 }, { 12, 0, 4 }, { 12, 0, 297 }, { 12, 0, 452 },
- { 16, 0, 81 }, { 18, 0, 25 }, { 21, 0, 14 }, { 22, 0, 12 },
- { 23, 0, 18 }, { 6, 0, 1106 }, { 7, 0, 1546 }, { 11, 0, 299 },
- { 14, 0, 407 }, { 6, 0, 1192 }, { 4, 0, 177 }, { 5, 0, 411 },
- { 7, 0, 653 }, { 7, 0, 439 }, { 10, 0, 727 }, { 11, 0, 260 },
- { 11, 0, 684 }, { 10, 10, 145 }, { 19, 10, 83 }, { 5, 0, 208 },
- { 7, 0, 753 }, { 7, 0, 1528 }, { 9, 11, 617 }, { 7, 10, 1922 },
- { 7, 11, 825 }, { 11, 0, 422 }, { 13, 0, 389 }, { 4, 10, 124 },
- { 10, 10, 457 }, { 11, 10, 121 }, { 11, 10, 169 }, { 11, 10, 870 },
- { 12, 10, 214 }, { 14, 10, 187 }, { 15, 10, 77 }, { 11, 0, 615 },
- { 15, 0, 58 }, { 11, 11, 615 }, { 15, 11, 58 }, { 9, 0, 618 },
- { 10, 0, 482 }, { 6, 0, 1952 }, { 6, 0, 1970 }, { 14, 0, 505 },
- { 7, 10, 1193 }, { 7, 11, 1838 }, { 5, 0, 242 }, { 7, 10, 1333 },
- { 6, 10, 107 }, { 7, 10, 638 }, { 7, 10, 1632 }, { 9, 10, 396 },
- { 5, 0, 953 }, { 5, 10, 370 }, { 6, 10, 1756 }, { 5, 11, 28 },
- { 6, 11, 204 }, { 10, 11, 320 }, { 10, 11, 583 }, { 13, 11, 502 },
- { 14, 11, 72 }, { 14, 11, 274 }, { 14, 11, 312 }, { 14, 11, 344 },
- { 15, 11, 159 }, { 16, 11, 62 }, { 16, 11, 69 }, { 17, 11, 30 },
- { 18, 11, 42 }, { 18, 11, 53 }, { 18, 11, 84 }, { 18, 11, 140 },
- { 19, 11, 68 }, { 19, 11, 85 }, { 20, 11, 5 }, { 20, 11, 45 },
- { 20, 11, 101 }, { 22, 11, 7 }, { 22, 11, 20 }, { 4, 11, 558 },
- { 6, 11, 390 }, { 7, 11, 162 }, { 7, 11, 689 }, { 9, 11, 360 },
- { 10, 11, 653 }, { 11, 0, 802 }, { 13, 0, 67 }, { 5, 10, 204 },
- { 5, 0, 290 }, { 5, 10, 970 }, { 6, 10, 1706 }, { 4, 0, 380 },
- { 5, 0, 52 }, { 7, 0, 277 }, { 9, 0, 368 }, { 11, 0, 791 },
- { 5, 11, 856 }, { 6, 11, 1672 }, { 6, 11, 1757 }, { 6, 11, 1781 },
- { 7, 11, 1150 }, { 7, 11, 1425 }, { 7, 11, 1453 }, { 12, 11, 513 },
- { 5, 11, 92 }, { 7, 10, 3 }, { 10, 11, 736 }, { 12, 11, 102 },
- { 4, 0, 112 }, { 5, 0, 653 }, { 5, 10, 483 }, { 5, 10, 685 },
- { 6, 10, 489 }, { 7, 10, 1204 }, { 8, 10, 394 }, { 4, 10, 921 },
- { 6, 0, 1028 }, { 5, 10, 1007 }, { 5, 11, 590 }, { 9, 11, 213 },
- { 17, 11, 91 }, { 7, 10, 1696 }, { 10, 0, 138 }, { 11, 0, 476 },
- { 5, 0, 725 }, { 5, 0, 727 }, { 7, 0, 1811 }, { 4, 0, 979 },
- { 6, 0, 1821 }, { 6, 0, 1838 }, { 8, 0, 876 }, { 8, 0, 883 },
- { 8, 0, 889 }, { 8, 0, 893 }, { 8, 0, 895 }, { 10, 0, 934 },
- { 12, 0, 720 }, { 14, 0, 459 }, { 20, 0, 123 }, { 7, 11, 551 },
- { 4, 0, 38 }, { 6, 0, 435 }, { 7, 0, 307 }, { 7, 0, 999 },
- { 7, 0, 1481 }, { 7, 0, 1732 }, { 7, 0, 1738 }, { 8, 0, 371 },
- { 9, 0, 414 }, { 11, 0, 316 }, { 12, 0, 52 }, { 13, 0, 420 },
- { 19, 0, 100 }, { 7, 0, 1296 }, { 4, 10, 712 }, { 6, 10, 1629 },
- { 5, 0, 723 }, { 6, 0, 651 }, { 8, 11, 191 }, { 9, 11, 791 },
- { 10, 11, 93 }, { 11, 11, 301 }, { 16, 11, 13 }, { 17, 11, 23 },
- { 18, 11, 135 }, { 19, 11, 12 }, { 20, 11, 1 }, { 20, 11, 12 },
- { 20, 11, 14 }, { 8, 11, 503 }, { 6, 11, 466 }, { 7, 11, 671 },
- { 6, 0, 1200 }, { 6, 0, 1330 }, { 7, 0, 1255 }, { 6, 0, 986 },
- { 5, 0, 109 }, { 6, 0, 1784 }, { 7, 0, 1895 }, { 12, 0, 296 },
- { 12, 0, 302 }, { 7, 11, 983 }, { 5, 10, 485 }, { 6, 0, 660 },
- { 6, 0, 800 }, { 5, 0, 216 }, { 5, 0, 294 }, { 6, 0, 591 },
- { 7, 0, 1879 }, { 9, 0, 141 }, { 9, 0, 270 }, { 9, 0, 679 },
- { 10, 0, 159 }, { 11, 0, 197 }, { 11, 0, 438 }, { 12, 0, 538 },
- { 12, 0, 559 }, { 14, 0, 144 }, { 14, 0, 167 }, { 15, 0, 67 },
- { 4, 10, 285 }, { 5, 10, 317 }, { 6, 10, 301 }, { 7, 10, 7 },
- { 8, 10, 153 }, { 10, 10, 766 }, { 11, 10, 468 }, { 12, 10, 467 },
- { 13, 10, 143 }, { 8, 0, 945 }, { 6, 0, 1090 }, { 9, 0, 81 },
- { 12, 11, 468 }, { 19, 11, 96 }, { 20, 11, 24 }, { 6, 0, 391 },
- { 10, 11, 241 }, { 7, 0, 322 }, { 8, 0, 249 }, { 6, 0, 1412 },
- { 7, 11, 795 }, { 5, 0, 632 }, { 10, 0, 526 }, { 8, 10, 819 },
- { 6, 0, 144 }, { 7, 0, 948 }, { 7, 0, 1042 }, { 8, 0, 235 },
- { 8, 0, 461 }, { 9, 0, 453 }, { 9, 0, 796 }, { 10, 0, 354 },
- { 17, 0, 77 }, { 7, 11, 954 }, { 11, 10, 917 }, { 6, 0, 940 },
- { 6, 0, 1228 }, { 4, 0, 362 }, { 7, 0, 52 }, { 7, 0, 303 },
- { 6, 11, 549 }, { 8, 11, 34 }, { 8, 11, 283 }, { 9, 11, 165 },
- { 10, 11, 475 }, { 7, 11, 370 }, { 7, 11, 1007 }, { 7, 11, 1177 },
- { 7, 11, 1565 }, { 5, 11, 652 }, { 5, 11, 701 }, { 7, 11, 449 },
- { 5, 0, 196 }, { 6, 0, 486 }, { 7, 0, 212 }, { 8, 0, 309 },
- { 8, 0, 346 }, { 6, 10, 1719 }, { 6, 10, 1735 }, { 7, 10, 2016 },
- { 7, 10, 2020 }, { 8, 10, 837 }, { 9, 10, 852 }, { 6, 11, 159 },
- { 6, 11, 364 }, { 7, 11, 516 }, { 7, 11, 1439 }, { 9, 11, 518 },
- { 7, 0, 1912 }, { 7, 0, 1290 }, { 4, 0, 686 }, { 13, 11, 151 },
- { 10, 0, 625 }, { 8, 0, 706 }, { 10, 10, 568 }, { 11, 0, 412 },
- { 4, 0, 30 }, { 5, 0, 43 }, { 8, 10, 67 }, { 10, 10, 419 },
- { 7, 0, 967 }, { 13, 0, 11 }, { 12, 0, 758 }, { 14, 0, 441 },
- { 14, 0, 462 }, { 10, 10, 657 }, { 14, 10, 297 }, { 14, 10, 361 },
- { 11, 10, 729 }, { 4, 0, 220 }, { 7, 0, 1535 }, { 7, 11, 501 },
- { 9, 11, 111 }, { 10, 11, 141 }, { 11, 11, 332 }, { 13, 11, 43 },
- { 13, 11, 429 }, { 14, 11, 130 }, { 14, 11, 415 }, { 17, 11, 102 },
- { 4, 0, 950 }, { 6, 0, 1859 }, { 7, 0, 11 }, { 8, 0, 873 },
- { 12, 0, 710 }, { 12, 0, 718 }, { 12, 0, 748 }, { 12, 0, 765 },
- { 20, 0, 124 }, { 5, 11, 149 }, { 5, 11, 935 }, { 8, 11, 233 },
- { 14, 11, 291 }, { 6, 0, 1579 }, { 7, 0, 890 }, { 8, 10, 51 },
- { 9, 10, 868 }, { 10, 10, 833 }, { 12, 10, 481 }, { 12, 10, 570 },
- { 20, 10, 106 }, { 13, 0, 2 }, { 4, 10, 445 }, { 8, 11, 801 },
- { 7, 0, 1774 }, { 7, 0, 1725 }, { 10, 0, 393 }, { 5, 0, 263 },
- { 6, 0, 414 }, { 4, 11, 322 }, { 5, 10, 239 }, { 7, 0, 456 },
- { 7, 10, 1990 }, { 8, 10, 130 }, { 11, 10, 720 }, { 9, 0, 818 },
- { 5, 10, 123 }, { 6, 10, 530 }, { 7, 10, 348 }, { 7, 10, 1419 },
- { 7, 10, 2024 }, { 6, 0, 178 }, { 6, 0, 1750 }, { 8, 0, 251 },
- { 9, 0, 690 }, { 10, 0, 155 }, { 10, 0, 196 }, { 10, 0, 373 },
- { 11, 0, 698 }, { 13, 0, 155 }, { 20, 0, 93 }, { 5, 0, 97 },
- { 9, 0, 393 }, { 6, 0, 674 }, { 11, 0, 223 }, { 12, 0, 168 },
- { 4, 10, 210 }, { 11, 11, 464 }, { 6, 0, 1639 }, { 18, 0, 159 },
- { 11, 11, 2 }, { 7, 0, 934 }, { 8, 0, 647 }, { 17, 0, 97 },
- { 19, 0, 59 }, { 22, 0, 2 }, { 4, 0, 191 }, { 5, 0, 165 },
- { 9, 0, 346 }, { 10, 0, 655 }, { 11, 0, 885 }, { 4, 10, 430 },
- { 7, 11, 357 }, { 5, 0, 877 }, { 5, 10, 213 }, { 5, 11, 406 },
- { 8, 0, 128 }, { 11, 0, 179 }, { 6, 11, 69 }, { 7, 11, 117 },
- { 7, 0, 1297 }, { 11, 11, 43 }, { 13, 11, 72 }, { 13, 11, 142 },
- { 7, 11, 1830 }, { 14, 0, 164 }, { 5, 0, 57 }, { 6, 0, 101 },
- { 6, 0, 586 }, { 6, 0, 1663 }, { 7, 0, 132 }, { 7, 0, 1154 },
- { 7, 0, 1415 }, { 7, 0, 1507 }, { 12, 0, 493 }, { 15, 0, 105 },
- { 23, 0, 15 }, { 5, 0, 459 }, { 7, 0, 1073 }, { 8, 0, 241 },
- { 8, 0, 334 }, { 5, 11, 826 }, { 5, 10, 108 }, { 5, 10, 219 },
- { 10, 11, 132 }, { 11, 11, 191 }, { 11, 11, 358 }, { 11, 11, 460 },
- { 6, 0, 324 }, { 6, 0, 520 }, { 7, 0, 338 }, { 7, 0, 1729 },
- { 8, 0, 228 }, { 11, 0, 750 }, { 21, 0, 30 }, { 22, 0, 53 },
- { 4, 10, 193 }, { 5, 10, 916 }, { 7, 10, 364 }, { 10, 10, 398 },
- { 10, 10, 726 }, { 11, 10, 317 }, { 11, 10, 626 }, { 12, 10, 142 },
- { 12, 10, 288 }, { 12, 10, 678 }, { 13, 10, 313 }, { 15, 10, 113 },
- { 18, 10, 114 }, { 6, 11, 110 }, { 7, 11, 1681 }, { 7, 0, 910 },
- { 6, 10, 241 }, { 7, 10, 907 }, { 8, 10, 832 }, { 9, 10, 342 },
- { 10, 10, 729 }, { 11, 10, 284 }, { 11, 10, 445 }, { 11, 10, 651 },
- { 11, 10, 863 }, { 13, 10, 398 }, { 18, 10, 99 }, { 7, 0, 705 },
- { 9, 0, 734 }, { 5, 11, 1000 }, { 7, 11, 733 }, { 9, 11, 583 },
- { 4, 0, 73 }, { 6, 0, 612 }, { 7, 0, 927 }, { 7, 0, 1822 },
- { 8, 0, 217 }, { 9, 0, 765 }, { 9, 0, 766 }, { 10, 0, 408 },
- { 11, 0, 51 }, { 11, 0, 793 }, { 12, 0, 266 }, { 15, 0, 158 },
- { 20, 0, 89 }, { 22, 0, 32 }, { 7, 0, 1330 }, { 4, 11, 297 },
- { 6, 11, 529 }, { 7, 11, 152 }, { 7, 11, 713 }, { 7, 11, 1845 },
- { 8, 11, 710 }, { 8, 11, 717 }, { 12, 11, 639 }, { 5, 0, 389 },
- { 8, 0, 636 }, { 6, 0, 1409 }, { 4, 10, 562 }, { 9, 10, 254 },
- { 11, 10, 879 }, { 6, 0, 893 }, { 4, 10, 786 }, { 4, 11, 520 },
- { 7, 11, 575 }, { 8, 0, 21 }, { 12, 0, 721 }, { 8, 0, 959 },
- { 7, 11, 1428 }, { 7, 11, 1640 }, { 9, 11, 169 }, { 9, 11, 182 },
- { 9, 11, 367 }, { 9, 11, 478 }, { 9, 11, 506 }, { 9, 11, 551 },
- { 9, 11, 648 }, { 9, 11, 651 }, { 9, 11, 697 }, { 9, 11, 705 },
- { 9, 11, 725 }, { 9, 11, 787 }, { 9, 11, 794 }, { 10, 11, 198 },
- { 10, 11, 214 }, { 10, 11, 267 }, { 10, 11, 275 }, { 10, 11, 456 },
- { 10, 11, 551 }, { 10, 11, 561 }, { 10, 11, 613 }, { 10, 11, 627 },
- { 10, 11, 668 }, { 10, 11, 675 }, { 10, 11, 691 }, { 10, 11, 695 },
- { 10, 11, 707 }, { 10, 11, 715 }, { 11, 11, 183 }, { 11, 11, 201 },
- { 11, 11, 244 }, { 11, 11, 262 }, { 11, 11, 352 }, { 11, 11, 439 },
- { 11, 11, 493 }, { 11, 11, 572 }, { 11, 11, 591 }, { 11, 11, 608 },
- { 11, 11, 611 }, { 11, 11, 646 }, { 11, 11, 674 }, { 11, 11, 711 },
- { 11, 11, 751 }, { 11, 11, 761 }, { 11, 11, 776 }, { 11, 11, 785 },
- { 11, 11, 850 }, { 11, 11, 853 }, { 11, 11, 862 }, { 11, 11, 865 },
- { 11, 11, 868 }, { 11, 11, 898 }, { 11, 11, 902 }, { 11, 11, 903 },
- { 11, 11, 910 }, { 11, 11, 932 }, { 11, 11, 942 }, { 11, 11, 957 },
- { 11, 11, 967 }, { 11, 11, 972 }, { 12, 11, 148 }, { 12, 11, 195 },
- { 12, 11, 220 }, { 12, 11, 237 }, { 12, 11, 318 }, { 12, 11, 339 },
- { 12, 11, 393 }, { 12, 11, 445 }, { 12, 11, 450 }, { 12, 11, 474 },
- { 12, 11, 509 }, { 12, 11, 533 }, { 12, 11, 591 }, { 12, 11, 594 },
- { 12, 11, 597 }, { 12, 11, 621 }, { 12, 11, 633 }, { 12, 11, 642 },
- { 13, 11, 59 }, { 13, 11, 60 }, { 13, 11, 145 }, { 13, 11, 239 },
- { 13, 11, 250 }, { 13, 11, 273 }, { 13, 11, 329 }, { 13, 11, 344 },
- { 13, 11, 365 }, { 13, 11, 372 }, { 13, 11, 387 }, { 13, 11, 403 },
- { 13, 11, 414 }, { 13, 11, 456 }, { 13, 11, 478 }, { 13, 11, 483 },
- { 13, 11, 489 }, { 14, 11, 55 }, { 14, 11, 57 }, { 14, 11, 81 },
- { 14, 11, 90 }, { 14, 11, 148 }, { 14, 11, 239 }, { 14, 11, 266 },
- { 14, 11, 321 }, { 14, 11, 326 }, { 14, 11, 327 }, { 14, 11, 330 },
- { 14, 11, 347 }, { 14, 11, 355 }, { 14, 11, 401 }, { 14, 11, 411 },
- { 14, 11, 414 }, { 14, 11, 416 }, { 14, 11, 420 }, { 15, 11, 61 },
- { 15, 11, 74 }, { 15, 11, 87 }, { 15, 11, 88 }, { 15, 11, 94 },
- { 15, 11, 96 }, { 15, 11, 116 }, { 15, 11, 149 }, { 15, 11, 154 },
- { 16, 11, 50 }, { 16, 11, 63 }, { 16, 11, 73 }, { 17, 11, 2 },
- { 17, 11, 66 }, { 17, 11, 92 }, { 17, 11, 103 }, { 17, 11, 112 },
- { 18, 11, 50 }, { 18, 11, 54 }, { 18, 11, 82 }, { 18, 11, 86 },
- { 18, 11, 90 }, { 18, 11, 111 }, { 18, 11, 115 }, { 18, 11, 156 },
- { 19, 11, 40 }, { 19, 11, 79 }, { 20, 11, 78 }, { 21, 11, 22 },
- { 9, 11, 170 }, { 6, 0, 1433 }, { 7, 11, 1307 }, { 11, 11, 411 },
- { 5, 0, 189 }, { 7, 0, 442 }, { 7, 0, 443 }, { 8, 0, 281 },
- { 12, 0, 174 }, { 13, 0, 261 }, { 6, 10, 216 }, { 7, 10, 901 },
- { 7, 10, 1343 }, { 8, 10, 493 }, { 5, 11, 397 }, { 6, 11, 154 },
- { 7, 10, 341 }, { 7, 11, 676 }, { 8, 11, 443 }, { 8, 11, 609 },
- { 9, 11, 24 }, { 9, 11, 325 }, { 10, 11, 35 }, { 11, 10, 219 },
- { 11, 11, 535 }, { 11, 11, 672 }, { 11, 11, 1018 }, { 12, 11, 637 },
- { 16, 11, 30 }, { 6, 0, 2 }, { 7, 0, 191 }, { 7, 0, 446 },
- { 7, 0, 1262 }, { 7, 0, 1737 }, { 8, 0, 22 }, { 8, 0, 270 },
- { 8, 0, 612 }, { 9, 0, 4 }, { 9, 0, 312 }, { 9, 0, 436 },
- { 9, 0, 626 }, { 10, 0, 216 }, { 10, 0, 311 }, { 10, 0, 521 },
- { 10, 0, 623 }, { 11, 0, 72 }, { 11, 0, 330 }, { 11, 0, 455 },
- { 12, 0, 321 }, { 12, 0, 504 }, { 12, 0, 530 }, { 12, 0, 543 },
- { 13, 0, 17 }, { 13, 0, 156 }, { 13, 0, 334 }, { 14, 0, 131 },
- { 17, 0, 60 }, { 20, 0, 64 }, { 7, 0, 354 }, { 10, 0, 410 },
- { 11, 0, 815 }, { 11, 10, 130 }, { 7, 10, 1734 }, { 9, 11, 631 },
- { 12, 0, 425 }, { 15, 0, 112 }, { 10, 10, 115 }, { 11, 10, 420 },
- { 13, 10, 404 }, { 14, 10, 346 }, { 15, 10, 54 }, { 6, 0, 60 },
- { 6, 0, 166 }, { 7, 0, 374 }, { 7, 0, 670 }, { 7, 0, 1327 },
- { 8, 0, 411 }, { 8, 0, 435 }, { 9, 0, 653 }, { 9, 0, 740 },
- { 10, 0, 385 }, { 11, 0, 222 }, { 11, 0, 324 }, { 11, 0, 829 },
- { 12, 0, 611 }, { 7, 0, 1611 }, { 13, 0, 14 }, { 15, 0, 44 },
- { 19, 0, 13 }, { 20, 0, 76 }, { 5, 11, 981 }, { 4, 11, 56 },
- { 7, 11, 1791 }, { 8, 11, 607 }, { 8, 11, 651 }, { 11, 11, 465 },
- { 11, 11, 835 }, { 12, 11, 337 }, { 13, 11, 480 }, { 6, 0, 1478 },
- { 5, 10, 1011 }, { 8, 10, 701 }, { 11, 0, 596 }, { 5, 0, 206 },
- { 6, 0, 398 }, { 4, 10, 54 }, { 5, 10, 666 }, { 7, 10, 1039 },
- { 7, 10, 1130 }, { 9, 10, 195 }, { 10, 10, 302 }, { 7, 0, 50 },
- { 9, 11, 158 }, { 10, 11, 411 }, { 7, 11, 1120 }, { 6, 0, 517 },
- { 7, 0, 1159 }, { 10, 0, 621 }, { 11, 0, 192 }, { 6, 10, 1669 },
- { 4, 0, 592 }, { 6, 0, 600 }, { 7, 0, 1653 }, { 10, 0, 223 },
- { 11, 0, 645 }, { 8, 11, 139 }, { 7, 0, 64 }, { 8, 0, 245 },
- { 14, 0, 278 }, { 6, 11, 622 }, { 7, 11, 1030 }, { 8, 0, 604 },
- { 6, 0, 1502 }, { 10, 0, 265 }, { 13, 11, 168 }, { 7, 0, 1763 },
- { 12, 0, 310 }, { 7, 10, 798 }, { 11, 11, 719 }, { 7, 11, 160 },
- { 10, 11, 624 }, { 14, 11, 279 }, { 4, 11, 363 }, { 7, 10, 122 },
- { 9, 10, 259 }, { 10, 10, 84 }, { 11, 10, 470 }, { 12, 10, 541 },
- { 13, 10, 379 }, { 5, 0, 129 }, { 6, 0, 61 }, { 7, 0, 947 },
- { 6, 0, 1356 }, { 7, 11, 1191 }, { 13, 0, 505 }, { 13, 0, 506 },
- { 11, 0, 1000 }, { 5, 10, 82 }, { 5, 10, 131 }, { 7, 10, 1755 },
- { 8, 10, 31 }, { 9, 10, 168 }, { 9, 10, 764 }, { 11, 10, 869 },
- { 6, 0, 966 }, { 6, 10, 605 }, { 6, 11, 292 }, { 5, 11, 177 },
- { 6, 11, 616 }, { 7, 11, 827 }, { 9, 11, 525 }, { 10, 11, 656 },
- { 7, 11, 1486 }, { 10, 11, 31 }, { 5, 10, 278 }, { 9, 10, 68 },
- { 4, 10, 163 }, { 5, 10, 201 }, { 5, 10, 307 }, { 5, 10, 310 },
- { 6, 10, 335 }, { 7, 10, 284 }, { 8, 10, 165 }, { 6, 0, 839 },
- { 7, 10, 1660 }, { 8, 10, 781 }, { 6, 10, 33 }, { 7, 10, 1244 },
- { 5, 0, 637 }, { 4, 11, 161 }, { 5, 11, 631 }, { 9, 0, 590 },
- { 7, 10, 1953 }, { 8, 10, 720 }, { 5, 0, 280 }, { 7, 0, 1226 },
- { 10, 10, 203 }, { 6, 0, 1386 }, { 5, 0, 281 }, { 6, 0, 1026 },
- { 6, 10, 326 }, { 7, 10, 677 }, { 9, 10, 425 }, { 7, 11, 1557 },
- { 7, 11, 1684 }, { 7, 0, 1064 }, { 9, 11, 469 }, { 9, 11, 709 },
- { 12, 11, 512 }, { 14, 11, 65 }, { 17, 11, 12 }, { 6, 0, 917 },
- { 10, 11, 229 }, { 11, 11, 73 }, { 11, 11, 376 }, { 11, 11, 433 },
- { 7, 0, 555 }, { 9, 0, 192 }, { 13, 0, 30 }, { 13, 0, 49 },
- { 15, 0, 150 }, { 16, 0, 76 }, { 20, 0, 52 }, { 7, 10, 1316 },
- { 7, 10, 1412 }, { 7, 10, 1839 }, { 9, 10, 589 }, { 11, 10, 241 },
- { 11, 10, 676 }, { 11, 10, 811 }, { 11, 10, 891 }, { 12, 10, 140 },
- { 12, 10, 346 }, { 12, 10, 479 }, { 13, 10, 381 }, { 14, 10, 188 },
- { 18, 10, 30 }, { 21, 0, 15 }, { 6, 0, 1882 }, { 6, 0, 1883 },
- { 6, 0, 1897 }, { 9, 0, 945 }, { 9, 0, 1014 }, { 9, 0, 1020 },
- { 12, 0, 823 }, { 12, 0, 842 }, { 12, 0, 866 }, { 12, 0, 934 },
- { 15, 0, 242 }, { 18, 0, 208 }, { 6, 0, 965 }, { 6, 0, 1499 },
- { 7, 0, 33 }, { 7, 0, 120 }, { 8, 0, 489 }, { 9, 0, 319 },
- { 10, 0, 820 }, { 11, 0, 1004 }, { 12, 0, 379 }, { 12, 0, 679 },
- { 13, 0, 117 }, { 13, 0, 412 }, { 14, 0, 25 }, { 15, 0, 52 },
- { 15, 0, 161 }, { 16, 0, 47 }, { 21, 0, 2 }, { 6, 11, 558 },
- { 7, 11, 651 }, { 8, 11, 421 }, { 9, 11, 0 }, { 10, 11, 34 },
- { 4, 0, 937 }, { 5, 0, 801 }, { 7, 0, 473 }, { 5, 10, 358 },
- { 7, 10, 1184 }, { 10, 10, 662 }, { 13, 10, 212 }, { 13, 10, 304 },
- { 13, 10, 333 }, { 17, 10, 98 }, { 4, 0, 877 }, { 6, 0, 693 },
- { 6, 0, 824 }, { 4, 0, 365 }, { 7, 11, 1832 }, { 10, 11, 374 },
- { 5, 0, 7 }, { 11, 0, 774 }, { 4, 0, 734 }, { 5, 0, 662 },
- { 6, 0, 430 }, { 4, 0, 746 }, { 7, 0, 1090 }, { 5, 0, 360 },
- { 8, 0, 237 }, { 10, 0, 231 }, { 19, 0, 124 }, { 10, 11, 348 },
- { 6, 11, 6 }, { 7, 11, 81 }, { 7, 11, 771 }, { 7, 11, 1731 },
- { 9, 11, 405 }, { 10, 11, 421 }, { 6, 0, 740 }, { 9, 0, 822 },
- { 5, 10, 946 }, { 7, 0, 1485 }, { 8, 0, 929 }, { 7, 10, 411 },
- { 8, 10, 631 }, { 9, 10, 323 }, { 10, 10, 355 }, { 11, 10, 491 },
- { 12, 10, 143 }, { 12, 10, 402 }, { 13, 10, 73 }, { 14, 10, 408 },
- { 15, 10, 107 }, { 18, 10, 71 }, { 7, 10, 590 }, { 5, 11, 881 },
- { 5, 11, 885 }, { 22, 11, 25 }, { 4, 0, 852 }, { 5, 11, 142 },
- { 6, 11, 546 }, { 7, 10, 1467 }, { 8, 10, 328 }, { 10, 10, 544 },
- { 11, 10, 955 }, { 13, 10, 320 }, { 17, 10, 83 }, { 9, 0, 17 },
- { 10, 0, 291 }, { 11, 10, 511 }, { 13, 10, 394 }, { 14, 10, 298 },
- { 14, 10, 318 }, { 18, 10, 103 }, { 5, 11, 466 }, { 11, 11, 571 },
- { 12, 11, 198 }, { 13, 11, 283 }, { 14, 11, 186 }, { 15, 11, 21 },
- { 15, 11, 103 }, { 6, 0, 1001 }, { 4, 11, 185 }, { 5, 11, 257 },
- { 5, 11, 839 }, { 5, 11, 936 }, { 7, 11, 171 }, { 9, 11, 399 },
- { 10, 11, 258 }, { 10, 11, 395 }, { 10, 11, 734 }, { 11, 11, 1014 },
- { 12, 11, 23 }, { 13, 11, 350 }, { 14, 11, 150 }, { 19, 11, 6 },
- { 15, 0, 35 }, { 4, 0, 831 }, { 5, 10, 835 }, { 6, 10, 483 },
- { 4, 0, 277 }, { 5, 0, 608 }, { 6, 0, 493 }, { 7, 0, 457 },
- { 12, 0, 384 }, { 7, 11, 404 }, { 7, 11, 1377 }, { 7, 11, 1430 },
- { 7, 11, 2017 }, { 8, 11, 149 }, { 8, 11, 239 }, { 8, 11, 512 },
- { 8, 11, 793 }, { 8, 11, 818 }, { 9, 11, 474 }, { 9, 11, 595 },
- { 10, 11, 122 }, { 10, 11, 565 }, { 10, 11, 649 }, { 10, 11, 783 },
- { 11, 11, 239 }, { 11, 11, 295 }, { 11, 11, 447 }, { 11, 11, 528 },
- { 11, 11, 639 }, { 11, 11, 800 }, { 11, 11, 936 }, { 12, 11, 25 },
- { 12, 11, 73 }, { 12, 11, 77 }, { 12, 11, 157 }, { 12, 11, 316 },
- { 12, 11, 390 }, { 12, 11, 391 }, { 12, 11, 394 }, { 12, 11, 395 },
- { 12, 11, 478 }, { 12, 11, 503 }, { 12, 11, 592 }, { 12, 11, 680 },
- { 13, 11, 50 }, { 13, 11, 53 }, { 13, 11, 132 }, { 13, 11, 198 },
- { 13, 11, 275 }, { 13, 11, 322 }, { 13, 11, 415 }, { 14, 11, 71 },
- { 14, 11, 257 }, { 14, 11, 395 }, { 15, 11, 71 }, { 15, 11, 136 },
- { 17, 11, 123 }, { 18, 11, 93 }, { 19, 11, 58 }, { 6, 0, 1351 },
- { 7, 0, 27 }, { 7, 0, 316 }, { 8, 11, 712 }, { 8, 0, 984 },
- { 5, 0, 552 }, { 9, 0, 264 }, { 4, 0, 401 }, { 6, 0, 710 },
- { 6, 0, 1111 }, { 6, 0, 1343 }, { 6, 0, 1211 }, { 9, 0, 543 },
- { 10, 0, 524 }, { 11, 0, 108 }, { 11, 0, 653 }, { 12, 0, 524 },
- { 13, 0, 123 }, { 14, 0, 252 }, { 16, 0, 18 }, { 19, 0, 38 },
- { 20, 0, 26 }, { 20, 0, 65 }, { 21, 0, 3 }, { 23, 0, 11 },
- { 4, 0, 205 }, { 5, 0, 623 }, { 7, 0, 104 }, { 8, 0, 519 },
- { 9, 0, 716 }, { 4, 10, 677 }, { 4, 11, 377 }, { 24, 11, 13 },
- { 7, 11, 1673 }, { 7, 0, 579 }, { 9, 0, 41 }, { 9, 0, 244 },
- { 9, 0, 669 }, { 10, 0, 5 }, { 11, 0, 861 }, { 11, 0, 951 },
- { 11, 0, 980 }, { 4, 0, 717 }, { 8, 0, 1011 }, { 4, 0, 805 },
- { 4, 11, 180 }, { 7, 11, 1906 }, { 4, 10, 777 }, { 4, 10, 331 },
- { 4, 0, 489 }, { 6, 0, 1024 }, { 4, 11, 491 }, { 5, 10, 747 },
- { 7, 11, 1182 }, { 4, 11, 171 }, { 10, 11, 234 }, { 4, 11, 586 },
- { 7, 11, 1186 }, { 10, 11, 631 }, { 7, 0, 892 }, { 7, 11, 336 },
- { 9, 11, 931 }, { 10, 11, 334 }, { 20, 11, 71 }, { 9, 0, 473 },
- { 6, 0, 864 }, { 12, 0, 659 }, { 11, 11, 926 }, { 7, 0, 819 },
- { 9, 0, 26 }, { 9, 0, 392 }, { 10, 0, 152 }, { 10, 0, 226 },
- { 11, 0, 19 }, { 12, 0, 276 }, { 12, 0, 426 }, { 12, 0, 589 },
- { 13, 0, 460 }, { 15, 0, 97 }, { 19, 0, 48 }, { 20, 0, 104 },
- { 7, 0, 51 }, { 5, 10, 326 }, { 4, 10, 691 }, { 18, 10, 16 },
- { 9, 0, 130 }, { 11, 0, 765 }, { 10, 10, 680 }, { 10, 10, 793 },
- { 13, 10, 357 }, { 5, 11, 765 }, { 8, 0, 229 }, { 6, 10, 32 },
- { 7, 10, 385 }, { 7, 10, 757 }, { 7, 10, 1916 }, { 8, 10, 94 },
- { 8, 10, 711 }, { 9, 10, 541 }, { 10, 10, 162 }, { 10, 10, 795 },
- { 11, 10, 989 }, { 11, 10, 1010 }, { 12, 10, 14 }, { 14, 10, 308 },
- { 7, 11, 474 }, { 9, 11, 578 }, { 4, 0, 674 }, { 4, 0, 770 },
- { 5, 0, 79 }, { 7, 0, 1027 }, { 7, 0, 1477 }, { 11, 0, 52 },
- { 5, 11, 424 }, { 6, 0, 1666 }, { 6, 0, 409 }, { 6, 10, 349 },
- { 6, 10, 1682 }, { 7, 10, 1252 }, { 8, 10, 112 }, { 8, 11, 714 },
- { 9, 10, 435 }, { 9, 10, 668 }, { 10, 10, 290 }, { 10, 10, 319 },
- { 10, 10, 815 }, { 11, 10, 180 }, { 11, 10, 837 }, { 12, 10, 240 },
- { 13, 10, 152 }, { 13, 10, 219 }, { 14, 10, 158 }, { 5, 0, 789 },
- { 6, 0, 195 }, { 4, 0, 251 }, { 4, 0, 688 }, { 7, 0, 513 },
- { 7, 0, 1284 }, { 4, 10, 581 }, { 9, 11, 420 }, { 10, 11, 269 },
- { 10, 11, 285 }, { 10, 11, 576 }, { 11, 11, 397 }, { 13, 11, 175 },
- { 17, 11, 90 }, { 6, 10, 126 }, { 7, 10, 573 }, { 8, 10, 397 },
- { 14, 10, 44 }, { 4, 11, 429 }, { 5, 0, 889 }, { 4, 0, 160 },
- { 5, 0, 330 }, { 7, 0, 1434 }, { 8, 0, 174 }, { 7, 11, 18 },
- { 7, 11, 699 }, { 7, 11, 1966 }, { 8, 11, 752 }, { 9, 11, 273 },
- { 9, 11, 412 }, { 9, 11, 703 }, { 10, 11, 71 }, { 10, 11, 427 },
- { 10, 11, 508 }, { 18, 11, 97 }, { 6, 0, 872 }, { 6, 0, 899 },
- { 5, 10, 926 }, { 6, 0, 1126 }, { 6, 0, 918 }, { 4, 11, 53 },
- { 5, 11, 186 }, { 7, 11, 752 }, { 7, 0, 268 }, { 8, 0, 569 },
- { 6, 0, 1224 }, { 6, 0, 1361 }, { 7, 10, 1232 }, { 9, 10, 531 },
- { 8, 11, 575 }, { 10, 11, 289 }, { 11, 11, 319 }, { 5, 10, 670 },
- { 4, 11, 675 }, { 5, 0, 374 }, { 7, 10, 1957 }, { 5, 0, 731 },
- { 11, 0, 190 }, { 15, 0, 49 }, { 11, 11, 190 }, { 15, 11, 49 },
- { 4, 0, 626 }, { 5, 0, 506 }, { 5, 0, 642 }, { 6, 0, 425 },
- { 10, 0, 202 }, { 11, 0, 141 }, { 9, 0, 444 }, { 7, 10, 242 },
- { 7, 10, 1942 }, { 6, 11, 209 }, { 8, 11, 468 }, { 9, 11, 210 },
- { 11, 11, 36 }, { 12, 11, 28 }, { 12, 11, 630 }, { 13, 11, 21 },
- { 13, 11, 349 }, { 14, 11, 7 }, { 17, 11, 13 }, { 4, 11, 342 },
- { 7, 11, 1179 }, { 5, 10, 834 }, { 7, 10, 1202 }, { 8, 10, 14 },
- { 9, 10, 481 }, { 9, 10, 880 }, { 4, 11, 928 }, { 5, 11, 910 },
- { 4, 11, 318 }, { 4, 11, 496 }, { 7, 11, 856 }, { 11, 11, 654 },
- { 8, 0, 835 }, { 7, 0, 1526 }, { 10, 10, 465 }, { 23, 0, 17 },
- { 7, 0, 477 }, { 4, 10, 357 }, { 6, 10, 172 }, { 7, 10, 143 },
- { 9, 10, 413 }, { 6, 0, 1374 }, { 10, 0, 994 }, { 18, 0, 76 },
- { 4, 10, 590 }, { 7, 0, 287 }, { 8, 0, 355 }, { 9, 0, 293 },
- { 9, 0, 743 }, { 6, 0, 1389 }, { 7, 11, 915 }, { 8, 11, 247 },
- { 19, 11, 0 }, { 4, 11, 202 }, { 5, 11, 382 }, { 6, 11, 454 },
- { 7, 11, 936 }, { 7, 11, 1803 }, { 8, 11, 758 }, { 9, 11, 375 },
- { 9, 11, 895 }, { 10, 11, 743 }, { 10, 11, 792 }, { 11, 11, 978 },
- { 11, 11, 1012 }, { 14, 11, 109 }, { 5, 0, 384 }, { 8, 0, 455 },
- { 12, 0, 48 }, { 4, 11, 390 }, { 5, 10, 169 }, { 7, 10, 333 },
- { 8, 10, 45 }, { 5, 0, 264 }, { 6, 0, 184 }, { 10, 11, 791 },
- { 5, 11, 717 }, { 4, 10, 198 }, { 6, 11, 445 }, { 7, 11, 332 },
- { 9, 11, 909 }, { 8, 0, 1001 }, { 4, 10, 24 }, { 5, 10, 140 },
- { 5, 10, 185 }, { 7, 10, 1500 }, { 11, 10, 565 }, { 11, 10, 838 },
- { 6, 11, 578 }, { 5, 0, 633 }, { 6, 0, 28 }, { 7, 0, 1323 },
- { 4, 0, 851 }, { 8, 11, 267 }, { 7, 0, 359 }, { 8, 0, 243 },
- { 12, 0, 175 }, { 4, 10, 334 }, { 5, 10, 593 }, { 13, 11, 87 },
- { 8, 11, 766 }, { 10, 0, 287 }, { 12, 0, 138 }, { 10, 11, 287 },
- { 12, 11, 138 }, { 4, 0, 105 }, { 4, 0, 740 }, { 12, 10, 116 },
- { 6, 0, 857 }, { 7, 11, 1841 }, { 6, 0, 1402 }, { 9, 0, 819 },
- { 4, 11, 584 }, { 4, 10, 709 }, { 5, 10, 897 }, { 5, 0, 224 },
- { 13, 0, 174 }, { 18, 0, 52 }, { 7, 10, 1840 }, { 4, 10, 608 },
- { 5, 10, 497 }, { 11, 11, 60 }, { 4, 0, 758 }, { 7, 0, 1649 },
- { 4, 11, 226 }, { 4, 11, 326 }, { 7, 11, 1770 }, { 5, 11, 426 },
- { 8, 11, 30 }, { 9, 11, 2 }, { 11, 11, 549 }, { 19, 11, 122 },
- { 7, 10, 2039 }, { 6, 10, 540 }, { 8, 10, 136 }, { 4, 0, 573 },
- { 8, 0, 655 }, { 4, 10, 897 }, { 5, 10, 786 }, { 7, 0, 351 },
- { 11, 0, 128 }, { 5, 10, 999 }, { 4, 10, 299 }, { 7, 10, 1004 },
- { 5, 0, 918 }, { 4, 11, 345 }, { 4, 11, 385 }, { 7, 11, 265 },
- { 7, 11, 587 }, { 5, 10, 456 }, { 8, 10, 180 }, { 6, 0, 687 },
- { 6, 0, 1537 }, { 4, 11, 347 }, { 5, 11, 423 }, { 5, 11, 996 },
- { 7, 11, 1329 }, { 4, 10, 755 }, { 7, 11, 1259 }, { 9, 11, 125 },
- { 11, 11, 65 }, { 12, 11, 285 }, { 5, 11, 136 }, { 6, 11, 136 },
- { 8, 11, 644 }, { 6, 0, 1525 }, { 4, 0, 1009 }, { 7, 0, 1139 },
- { 11, 10, 338 }, { 4, 0, 340 }, { 7, 10, 1464 }, { 8, 0, 847 },
- { 10, 0, 861 }, { 10, 0, 876 }, { 10, 0, 889 }, { 10, 0, 922 },
- { 10, 0, 929 }, { 10, 0, 933 }, { 12, 0, 784 }, { 12, 0, 791 },
- { 11, 0, 176 }, { 9, 11, 134 }, { 10, 11, 2 }, { 10, 11, 27 },
- { 10, 11, 333 }, { 11, 11, 722 }, { 15, 11, 1 }, { 4, 11, 433 },
- { 5, 11, 719 }, { 5, 0, 985 }, { 7, 0, 509 }, { 7, 0, 529 },
- { 17, 0, 96 }, { 4, 0, 615 }, { 4, 10, 890 }, { 5, 10, 805 },
- { 5, 10, 819 }, { 5, 10, 961 }, { 6, 10, 396 }, { 6, 10, 1631 },
- { 6, 10, 1678 }, { 7, 10, 1967 }, { 7, 10, 2041 }, { 9, 10, 630 },
- { 11, 10, 8 }, { 11, 10, 1019 }, { 12, 10, 176 }, { 13, 10, 225 },
- { 14, 10, 292 }, { 21, 10, 24 }, { 7, 0, 1919 }, { 6, 0, 1131 },
- { 16, 11, 21 }, { 16, 11, 51 }, { 7, 10, 1815 }, { 4, 0, 247 },
- { 7, 10, 1505 }, { 10, 10, 190 }, { 10, 10, 634 }, { 11, 10, 792 },
- { 12, 10, 358 }, { 12, 10, 447 }, { 5, 10, 0 }, { 6, 10, 536 },
- { 7, 10, 604 }, { 13, 10, 445 }, { 17, 10, 126 }, { 4, 0, 184 },
- { 5, 0, 390 }, { 6, 0, 337 }, { 7, 0, 23 }, { 7, 0, 494 },
- { 7, 0, 618 }, { 7, 0, 1456 }, { 8, 0, 27 }, { 8, 0, 599 },
- { 10, 0, 153 }, { 11, 0, 710 }, { 6, 10, 232 }, { 6, 10, 412 },
- { 7, 10, 1074 }, { 8, 10, 9 }, { 8, 10, 157 }, { 8, 10, 786 },
- { 9, 10, 196 }, { 9, 10, 352 }, { 9, 10, 457 }, { 10, 10, 337 },
- { 11, 10, 232 }, { 11, 10, 877 }, { 12, 10, 480 }, { 12, 10, 546 },
- { 13, 0, 38 }, { 7, 10, 958 }, { 4, 10, 382 }, { 8, 10, 579 },
- { 4, 10, 212 }, { 7, 10, 1206 }, { 4, 11, 555 }, { 8, 11, 536 },
- { 10, 11, 288 }, { 11, 11, 139 }, { 11, 11, 171 }, { 9, 11, 370 },
- { 10, 11, 90 }, { 4, 0, 1015 }, { 6, 0, 1088 }, { 5, 10, 655 },
- { 7, 11, 977 }, { 6, 0, 1585 }, { 17, 10, 67 }, { 19, 10, 74 },
- { 10, 0, 227 }, { 11, 0, 497 }, { 11, 0, 709 }, { 12, 0, 415 },
- { 6, 0, 360 }, { 7, 0, 1664 }, { 8, 0, 478 }, { 7, 0, 95 },
- { 6, 10, 231 }, { 8, 10, 423 }, { 12, 11, 65 }, { 4, 11, 257 },
- { 7, 11, 2031 }, { 7, 11, 1768 }, { 5, 10, 300 }, { 11, 11, 211 },
- { 8, 0, 699 }, { 6, 10, 237 }, { 7, 10, 611 }, { 8, 10, 100 },
- { 9, 10, 416 }, { 11, 10, 335 }, { 12, 10, 173 }, { 18, 10, 101 },
- { 14, 0, 26 }, { 18, 0, 150 }, { 6, 0, 581 }, { 7, 0, 1119 },
- { 7, 10, 1208 }, { 4, 0, 739 }, { 6, 11, 83 }, { 6, 11, 1733 },
- { 7, 11, 1389 }, { 9, 0, 869 }, { 4, 0, 67 }, { 5, 0, 422 },
- { 7, 0, 1037 }, { 7, 0, 1289 }, { 7, 0, 1555 }, { 9, 0, 741 },
- { 17, 0, 108 }, { 5, 10, 199 }, { 12, 10, 427 }, { 18, 10, 38 },
- { 8, 0, 464 }, { 14, 0, 42 }, { 10, 0, 96 }, { 8, 11, 501 },
- { 9, 11, 696 }, { 6, 11, 592 }, { 4, 0, 512 }, { 4, 0, 966 },
- { 5, 0, 342 }, { 6, 0, 1855 }, { 8, 0, 869 }, { 8, 0, 875 },
- { 8, 0, 901 }, { 16, 0, 26 }, { 8, 0, 203 }, { 11, 0, 823 },
- { 11, 0, 846 }, { 12, 0, 482 }, { 13, 0, 277 }, { 13, 0, 302 },
- { 13, 0, 464 }, { 14, 0, 205 }, { 14, 0, 221 }, { 4, 0, 449 },
- { 5, 0, 718 }, { 7, 11, 1718 }, { 9, 11, 95 }, { 9, 11, 274 },
- { 10, 11, 279 }, { 10, 11, 317 }, { 10, 11, 420 }, { 11, 11, 303 },
- { 11, 11, 808 }, { 12, 11, 134 }, { 12, 11, 367 }, { 13, 11, 149 },
- { 13, 11, 347 }, { 14, 11, 349 }, { 14, 11, 406 }, { 18, 11, 22 },
- { 18, 11, 89 }, { 18, 11, 122 }, { 19, 11, 47 }, { 5, 11, 26 },
- { 4, 0, 355 }, { 6, 0, 311 }, { 9, 0, 256 }, { 10, 0, 404 },
- { 4, 11, 550 }, { 10, 0, 758 }, { 6, 10, 312 }, { 6, 10, 1715 },
- { 10, 10, 584 }, { 11, 10, 546 }, { 11, 10, 692 }, { 12, 10, 259 },
- { 12, 10, 295 }, { 13, 10, 46 }, { 13, 10, 154 }, { 8, 11, 822 },
- { 5, 0, 827 }, { 4, 11, 902 }, { 5, 11, 809 }, { 6, 11, 122 },
- { 7, 11, 896 }, { 5, 0, 64 }, { 12, 0, 581 }, { 4, 0, 442 },
- { 6, 0, 739 }, { 7, 0, 1047 }, { 7, 0, 1352 }, { 7, 0, 1643 },
- { 7, 11, 1911 }, { 9, 11, 449 }, { 10, 11, 192 }, { 10, 11, 740 },
- { 7, 11, 262 }, { 4, 10, 588 }, { 5, 11, 620 }, { 5, 0, 977 },
- { 6, 0, 288 }, { 7, 0, 528 }, { 4, 11, 34 }, { 5, 11, 574 },
- { 7, 11, 279 }, { 7, 11, 1624 }, { 8, 11, 601 }, { 6, 0, 1375 },
- { 4, 10, 231 }, { 5, 10, 61 }, { 6, 10, 104 }, { 7, 10, 729 },
- { 7, 10, 964 }, { 7, 10, 1658 }, { 12, 10, 414 }, { 6, 10, 263 },
- { 10, 10, 757 }, { 4, 10, 320 }, { 4, 0, 254 }, { 7, 0, 1309 },
- { 5, 11, 332 }, { 7, 11, 1309 }, { 6, 11, 261 }, { 8, 11, 182 },
- { 11, 11, 943 }, { 4, 10, 225 }, { 6, 0, 12 }, { 7, 0, 1219 },
- { 4, 0, 275 }, { 12, 0, 376 }, { 6, 11, 1721 }, { 13, 11, 490 },
- { 4, 11, 933 }, { 5, 11, 880 }, { 6, 0, 951 }, { 6, 0, 1109 },
- { 6, 0, 1181 }, { 7, 0, 154 }, { 4, 10, 405 }, { 7, 10, 817 },
- { 14, 10, 58 }, { 17, 10, 37 }, { 18, 10, 124 }, { 6, 0, 1520 },
- { 5, 10, 974 }, { 6, 0, 1753 }, { 6, 0, 369 }, { 6, 0, 502 },
- { 7, 0, 1036 }, { 8, 0, 348 }, { 9, 0, 452 }, { 10, 0, 26 },
- { 11, 0, 224 }, { 11, 0, 387 }, { 11, 0, 772 }, { 12, 0, 95 },
- { 12, 0, 629 }, { 13, 0, 195 }, { 13, 0, 207 }, { 13, 0, 241 },
- { 14, 0, 260 }, { 14, 0, 270 }, { 15, 0, 140 }, { 4, 0, 269 },
- { 5, 0, 480 }, { 7, 0, 532 }, { 7, 0, 1197 }, { 7, 0, 1358 },
- { 8, 0, 291 }, { 11, 0, 349 }, { 14, 0, 396 }, { 5, 10, 235 },
- { 7, 10, 1239 }, { 11, 10, 131 }, { 12, 10, 370 }, { 7, 10, 956 },
- { 7, 10, 1157 }, { 7, 10, 1506 }, { 7, 10, 1606 }, { 7, 10, 1615 },
- { 7, 10, 1619 }, { 7, 10, 1736 }, { 7, 10, 1775 }, { 8, 10, 590 },
- { 9, 10, 324 }, { 9, 10, 736 }, { 9, 10, 774 }, { 9, 10, 776 },
- { 9, 10, 784 }, { 10, 10, 567 }, { 10, 10, 708 }, { 11, 10, 518 },
- { 11, 10, 613 }, { 11, 10, 695 }, { 11, 10, 716 }, { 11, 10, 739 },
- { 11, 10, 770 }, { 11, 10, 771 }, { 11, 10, 848 }, { 11, 10, 857 },
- { 11, 10, 931 }, { 11, 10, 947 }, { 12, 10, 326 }, { 12, 10, 387 },
- { 12, 10, 484 }, { 12, 10, 528 }, { 12, 10, 552 }, { 12, 10, 613 },
- { 13, 10, 189 }, { 13, 10, 256 }, { 13, 10, 340 }, { 13, 10, 432 },
- { 13, 10, 436 }, { 13, 10, 440 }, { 13, 10, 454 }, { 14, 10, 174 },
- { 14, 10, 220 }, { 14, 10, 284 }, { 14, 10, 390 }, { 17, 10, 121 },
- { 8, 11, 598 }, { 9, 11, 664 }, { 10, 11, 441 }, { 9, 10, 137 },
- { 10, 10, 221 }, { 5, 11, 812 }, { 20, 0, 15 }, { 6, 0, 1341 },
- { 6, 0, 1017 }, { 4, 11, 137 }, { 7, 11, 1178 }, { 7, 11, 1520 },
- { 7, 10, 390 }, { 10, 10, 140 }, { 7, 11, 1260 }, { 7, 11, 1790 },
- { 9, 11, 191 }, { 7, 10, 1144 }, { 6, 0, 1810 }, { 7, 0, 657 },
- { 8, 0, 886 }, { 10, 0, 857 }, { 14, 0, 440 }, { 16, 0, 96 },
- { 8, 0, 533 }, { 6, 11, 1661 }, { 7, 11, 1975 }, { 7, 11, 2009 },
- { 7, 11, 2011 }, { 6, 0, 1453 }, { 6, 10, 464 }, { 4, 11, 715 },
- { 5, 10, 407 }, { 11, 10, 204 }, { 11, 10, 243 }, { 11, 10, 489 },
- { 12, 10, 293 }, { 19, 10, 37 }, { 20, 10, 73 }, { 22, 10, 38 },
- { 5, 11, 703 }, { 4, 0, 211 }, { 7, 0, 1483 }, { 5, 10, 325 },
- { 8, 10, 5 }, { 8, 10, 227 }, { 9, 10, 105 }, { 10, 10, 585 },
- { 12, 10, 614 }, { 4, 0, 332 }, { 5, 0, 335 }, { 6, 0, 238 },
- { 7, 0, 269 }, { 7, 0, 811 }, { 7, 0, 1797 }, { 8, 0, 836 },
- { 9, 0, 507 }, { 13, 0, 242 }, { 5, 11, 89 }, { 7, 11, 1915 },
- { 9, 11, 185 }, { 9, 11, 235 }, { 9, 11, 496 }, { 10, 11, 64 },
- { 10, 11, 270 }, { 10, 11, 403 }, { 10, 11, 469 }, { 10, 11, 529 },
- { 10, 11, 590 }, { 11, 11, 140 }, { 11, 11, 860 }, { 13, 11, 1 },
- { 13, 11, 422 }, { 14, 11, 341 }, { 14, 11, 364 }, { 17, 11, 93 },
- { 18, 11, 113 }, { 19, 11, 97 }, { 19, 11, 113 }, { 5, 11, 695 },
- { 16, 0, 19 }, { 5, 11, 6 }, { 6, 11, 183 }, { 6, 10, 621 },
- { 7, 11, 680 }, { 7, 11, 978 }, { 7, 11, 1013 }, { 7, 11, 1055 },
- { 12, 11, 230 }, { 13, 11, 172 }, { 13, 10, 504 }, { 18, 11, 29 },
- { 8, 0, 156 }, { 5, 0, 1009 }, { 6, 11, 29 }, { 11, 11, 63 },
- { 6, 0, 820 }, { 6, 10, 218 }, { 7, 10, 454 }, { 7, 10, 782 },
- { 8, 10, 768 }, { 12, 10, 686 }, { 5, 0, 228 }, { 6, 0, 203 },
- { 7, 0, 156 }, { 8, 0, 347 }, { 9, 0, 265 }, { 18, 0, 39 },
- { 20, 0, 54 }, { 21, 0, 31 }, { 22, 0, 3 }, { 23, 0, 0 },
- { 15, 11, 8 }, { 18, 11, 39 }, { 20, 11, 54 }, { 21, 11, 31 },
- { 22, 11, 3 }, { 23, 11, 0 }, { 7, 0, 1131 }, { 7, 0, 1468 },
- { 16, 10, 0 }, { 6, 0, 1276 }, { 10, 10, 676 }, { 12, 10, 462 },
- { 4, 11, 311 }, { 6, 11, 1740 }, { 7, 11, 170 }, { 8, 11, 90 },
- { 8, 11, 177 }, { 8, 11, 415 }, { 11, 11, 714 }, { 14, 11, 281 },
- { 6, 10, 164 }, { 6, 0, 1792 }, { 10, 0, 849 }, { 22, 10, 50 },
- { 5, 0, 291 }, { 5, 0, 318 }, { 7, 0, 765 }, { 9, 0, 389 },
- { 12, 0, 548 }, { 8, 11, 522 }, { 14, 11, 328 }, { 11, 11, 91 },
- { 13, 11, 129 }, { 15, 11, 101 }, { 17, 11, 125 }, { 4, 11, 494 },
- { 6, 11, 74 }, { 7, 11, 44 }, { 7, 11, 407 }, { 8, 11, 551 },
- { 12, 11, 17 }, { 15, 11, 5 }, { 20, 11, 11 }, { 4, 11, 276 },
- { 5, 11, 296 }, { 6, 10, 343 }, { 7, 10, 195 }, { 7, 11, 1777 },
- { 9, 10, 226 }, { 10, 10, 197 }, { 10, 10, 575 }, { 11, 10, 502 },
- { 11, 10, 899 }, { 10, 0, 525 }, { 11, 0, 82 }, { 14, 0, 453 },
- { 4, 11, 7 }, { 5, 11, 90 }, { 5, 11, 158 }, { 6, 11, 542 },
- { 7, 11, 221 }, { 7, 11, 1574 }, { 9, 11, 490 }, { 10, 11, 540 },
- { 11, 11, 443 }, { 11, 11, 757 }, { 7, 0, 666 }, { 22, 10, 29 },
- { 22, 11, 29 }, { 4, 0, 422 }, { 19, 10, 8 }, { 5, 0, 355 },
- { 17, 0, 0 }, { 6, 0, 1873 }, { 9, 0, 918 }, { 7, 11, 588 },
- { 9, 11, 175 }, { 10, 11, 530 }, { 15, 11, 31 }, { 11, 0, 165 },
- { 7, 10, 1125 }, { 9, 10, 143 }, { 14, 10, 405 }, { 22, 10, 21 },
- { 9, 0, 260 }, { 9, 0, 905 }, { 5, 11, 872 }, { 6, 11, 57 },
- { 6, 11, 479 }, { 6, 11, 562 }, { 7, 11, 471 }, { 7, 11, 1060 },
- { 9, 11, 447 }, { 9, 11, 454 }, { 13, 11, 6 }, { 10, 11, 704 },
- { 5, 0, 865 }, { 5, 0, 914 }, { 6, 0, 1625 }, { 5, 0, 234 },
- { 7, 0, 1383 }, { 5, 11, 31 }, { 6, 11, 614 }, { 17, 11, 61 },
- { 7, 11, 1200 }, { 10, 11, 460 }, { 6, 11, 424 }, { 7, 11, 1866 },
- { 8, 0, 306 }, { 5, 10, 959 }, { 12, 11, 30 }, { 13, 11, 148 },
- { 14, 11, 87 }, { 14, 11, 182 }, { 16, 11, 42 }, { 18, 11, 92 },
- { 20, 11, 70 }, { 6, 0, 1919 }, { 6, 0, 1921 }, { 9, 0, 923 },
- { 9, 0, 930 }, { 9, 0, 941 }, { 9, 0, 949 }, { 9, 0, 987 },
- { 9, 0, 988 }, { 9, 0, 992 }, { 12, 0, 802 }, { 12, 0, 815 },
- { 12, 0, 856 }, { 12, 0, 885 }, { 12, 0, 893 }, { 12, 0, 898 },
- { 12, 0, 919 }, { 12, 0, 920 }, { 12, 0, 941 }, { 12, 0, 947 },
- { 15, 0, 183 }, { 15, 0, 185 }, { 15, 0, 189 }, { 15, 0, 197 },
- { 15, 0, 202 }, { 15, 0, 233 }, { 18, 0, 218 }, { 18, 0, 219 },
- { 18, 0, 233 }, { 15, 11, 156 }, { 7, 10, 1759 }, { 8, 10, 173 },
- { 13, 0, 163 }, { 13, 0, 180 }, { 18, 0, 78 }, { 20, 0, 35 },
- { 5, 11, 13 }, { 6, 11, 142 }, { 6, 10, 266 }, { 6, 11, 97 },
- { 7, 11, 116 }, { 8, 11, 322 }, { 8, 11, 755 }, { 9, 11, 548 },
- { 10, 11, 714 }, { 11, 11, 884 }, { 13, 11, 324 }, { 7, 0, 1312 },
- { 9, 0, 814 }, { 9, 11, 676 }, { 5, 0, 707 }, { 7, 0, 1493 },
- { 6, 0, 421 }, { 7, 0, 61 }, { 7, 0, 1540 }, { 10, 0, 11 },
- { 10, 0, 501 }, { 12, 0, 733 }, { 12, 0, 766 }, { 7, 11, 866 },
- { 7, 11, 1163 }, { 9, 0, 341 }, { 14, 0, 98 }, { 17, 11, 115 },
- { 7, 11, 1111 }, { 8, 10, 300 }, { 8, 0, 1014 }, { 8, 11, 1 },
- { 9, 11, 112 }, { 10, 11, 326 }, { 4, 11, 730 }, { 5, 11, 488 },
- { 6, 11, 527 }, { 7, 11, 489 }, { 7, 11, 1636 }, { 8, 11, 121 },
- { 8, 11, 144 }, { 8, 11, 359 }, { 9, 11, 193 }, { 9, 11, 241 },
- { 9, 11, 336 }, { 9, 11, 882 }, { 11, 11, 266 }, { 11, 11, 372 },
- { 11, 11, 944 }, { 12, 11, 401 }, { 12, 11, 641 }, { 6, 0, 971 },
- { 6, 0, 1121 }, { 6, 0, 102 }, { 7, 0, 72 }, { 15, 0, 142 },
- { 19, 0, 67 }, { 23, 0, 30 }, { 7, 0, 823 }, { 6, 0, 1045 },
- { 5, 10, 427 }, { 5, 10, 734 }, { 7, 10, 478 }, { 8, 10, 52 },
- { 7, 0, 1930 }, { 11, 10, 217 }, { 14, 10, 165 }, { 6, 0, 1512 },
- { 7, 0, 1870 }, { 9, 11, 31 }, { 10, 11, 244 }, { 10, 11, 699 },
- { 12, 11, 149 }, { 13, 11, 497 }, { 5, 11, 377 }, { 17, 11, 101 },
- { 10, 11, 158 }, { 13, 11, 13 }, { 13, 11, 137 }, { 13, 11, 258 },
- { 14, 11, 111 }, { 14, 11, 225 }, { 14, 11, 253 }, { 14, 11, 304 },
- { 14, 11, 339 }, { 14, 11, 417 }, { 18, 11, 33 }, { 6, 0, 87 },
- { 6, 10, 1734 }, { 7, 10, 20 }, { 7, 10, 1056 }, { 8, 10, 732 },
- { 9, 10, 406 }, { 9, 10, 911 }, { 10, 10, 694 }, { 6, 0, 1243 },
- { 9, 0, 245 }, { 7, 0, 68 }, { 8, 0, 48 }, { 8, 0, 88 },
- { 8, 0, 582 }, { 8, 0, 681 }, { 9, 0, 373 }, { 9, 0, 864 },
- { 11, 0, 157 }, { 11, 0, 336 }, { 11, 0, 843 }, { 20, 0, 27 },
- { 8, 11, 663 }, { 16, 11, 8 }, { 5, 10, 613 }, { 4, 0, 88 },
- { 5, 0, 137 }, { 5, 0, 174 }, { 5, 0, 777 }, { 6, 0, 1664 },
- { 6, 0, 1725 }, { 7, 0, 77 }, { 7, 0, 426 }, { 7, 0, 1317 },
- { 7, 0, 1355 }, { 8, 0, 126 }, { 8, 0, 563 }, { 9, 0, 523 },
- { 9, 0, 750 }, { 10, 0, 310 }, { 10, 0, 836 }, { 11, 0, 42 },
- { 11, 0, 318 }, { 11, 0, 731 }, { 12, 0, 68 }, { 12, 0, 92 },
- { 12, 0, 507 }, { 12, 0, 692 }, { 13, 0, 81 }, { 13, 0, 238 },
- { 13, 0, 374 }, { 14, 0, 436 }, { 18, 0, 138 }, { 19, 0, 78 },
- { 19, 0, 111 }, { 20, 0, 55 }, { 20, 0, 77 }, { 20, 0, 92 },
- { 13, 0, 418 }, { 4, 0, 938 }, { 9, 0, 625 }, { 10, 0, 351 },
- { 5, 11, 843 }, { 7, 10, 32 }, { 7, 10, 984 }, { 8, 10, 85 },
- { 8, 10, 709 }, { 9, 10, 579 }, { 9, 10, 847 }, { 9, 10, 856 },
- { 10, 10, 799 }, { 11, 10, 258 }, { 11, 10, 1007 }, { 12, 10, 331 },
- { 12, 10, 615 }, { 13, 10, 188 }, { 13, 10, 435 }, { 14, 10, 8 },
- { 15, 10, 165 }, { 16, 10, 27 }, { 20, 10, 40 }, { 6, 0, 1668 },
- { 7, 0, 1499 }, { 8, 0, 117 }, { 9, 0, 314 }, { 10, 0, 174 },
- { 7, 0, 707 }, { 4, 11, 554 }, { 5, 11, 536 }, { 5, 0, 403 },
- { 5, 11, 207 }, { 9, 11, 79 }, { 11, 11, 625 }, { 17, 11, 7 },
- { 4, 11, 424 }, { 8, 11, 785 }, { 4, 10, 167 }, { 7, 10, 82 },
- { 9, 0, 7 }, { 23, 0, 6 }, { 9, 11, 7 }, { 23, 11, 6 },
- { 6, 0, 282 }, { 5, 10, 62 }, { 6, 10, 534 }, { 7, 10, 74 },
- { 7, 10, 678 }, { 7, 10, 684 }, { 7, 10, 1043 }, { 7, 10, 1072 },
- { 8, 10, 280 }, { 8, 10, 541 }, { 8, 10, 686 }, { 9, 10, 258 },
- { 10, 10, 519 }, { 11, 10, 252 }, { 12, 10, 282 }, { 10, 10, 33 },
- { 4, 10, 359 }, { 4, 0, 44 }, { 5, 0, 311 }, { 6, 0, 156 },
- { 7, 0, 639 }, { 7, 0, 762 }, { 7, 0, 1827 }, { 9, 0, 8 },
- { 9, 0, 462 }, { 20, 0, 83 }, { 7, 11, 769 }, { 9, 11, 18 },
- { 10, 11, 358 }, { 4, 0, 346 }, { 7, 0, 115 }, { 9, 0, 180 },
- { 9, 0, 456 }, { 10, 0, 363 }, { 4, 11, 896 }, { 6, 11, 1777 },
- { 5, 10, 211 }, { 7, 0, 761 }, { 7, 0, 1051 }, { 9, 0, 545 },
- { 6, 10, 145 }, { 13, 10, 336 }, { 7, 11, 750 }, { 9, 11, 223 },
- { 11, 11, 27 }, { 11, 11, 466 }, { 12, 11, 624 }, { 14, 11, 265 },
- { 18, 11, 61 }, { 6, 0, 752 }, { 6, 0, 768 }, { 6, 0, 1195 },
- { 6, 0, 1254 }, { 6, 0, 1619 }, { 9, 0, 835 }, { 6, 0, 1936 },
- { 8, 0, 930 }, { 8, 0, 960 }, { 4, 10, 263 }, { 4, 11, 249 },
- { 12, 0, 653 }, { 4, 10, 916 }, { 4, 11, 603 }, { 5, 11, 661 },
- { 8, 0, 344 }, { 4, 11, 11 }, { 6, 11, 128 }, { 7, 11, 231 },
- { 7, 11, 1533 }, { 10, 11, 725 }, { 6, 0, 1483 }, { 6, 0, 875 },
- { 6, 0, 185 }, { 7, 0, 1899 }, { 9, 0, 875 }, { 11, 0, 673 },
- { 15, 10, 155 }, { 16, 10, 79 }, { 7, 0, 93 }, { 7, 0, 210 },
- { 7, 0, 1223 }, { 8, 0, 451 }, { 8, 0, 460 }, { 11, 0, 353 },
- { 11, 0, 475 }, { 4, 10, 599 }, { 6, 10, 1634 }, { 7, 10, 67 },
- { 7, 10, 691 }, { 7, 10, 979 }, { 7, 10, 1697 }, { 8, 10, 207 },
- { 8, 10, 214 }, { 8, 10, 231 }, { 8, 10, 294 }, { 8, 10, 336 },
- { 8, 10, 428 }, { 8, 10, 471 }, { 8, 10, 622 }, { 8, 10, 626 },
- { 8, 10, 679 }, { 8, 10, 759 }, { 8, 10, 829 }, { 9, 10, 11 },
- { 9, 10, 246 }, { 9, 10, 484 }, { 9, 10, 573 }, { 9, 10, 706 },
- { 9, 10, 762 }, { 9, 10, 798 }, { 9, 10, 855 }, { 9, 10, 870 },
- { 9, 10, 912 }, { 10, 10, 303 }, { 10, 10, 335 }, { 10, 10, 424 },
- { 10, 10, 461 }, { 10, 10, 543 }, { 10, 10, 759 }, { 10, 10, 814 },
- { 11, 10, 59 }, { 11, 10, 235 }, { 11, 10, 590 }, { 11, 10, 929 },
- { 11, 10, 963 }, { 11, 10, 987 }, { 12, 10, 114 }, { 12, 10, 182 },
- { 12, 10, 226 }, { 12, 10, 332 }, { 12, 10, 439 }, { 12, 10, 575 },
- { 12, 10, 598 }, { 12, 10, 675 }, { 13, 10, 8 }, { 13, 10, 125 },
- { 13, 10, 194 }, { 13, 10, 287 }, { 14, 10, 197 }, { 14, 10, 383 },
- { 15, 10, 53 }, { 17, 10, 63 }, { 19, 10, 46 }, { 19, 10, 98 },
- { 19, 10, 106 }, { 20, 10, 85 }, { 4, 11, 476 }, { 4, 0, 327 },
- { 5, 0, 478 }, { 7, 0, 1332 }, { 8, 0, 753 }, { 5, 0, 1020 },
- { 5, 0, 1022 }, { 7, 11, 1807 }, { 4, 0, 103 }, { 5, 0, 401 },
- { 4, 0, 499 }, { 7, 0, 1421 }, { 10, 0, 207 }, { 13, 0, 164 },
- { 19, 10, 126 }, { 9, 11, 20 }, { 10, 11, 324 }, { 11, 11, 488 },
- { 4, 0, 96 }, { 9, 11, 280 }, { 10, 11, 134 }, { 7, 0, 968 },
- { 5, 10, 187 }, { 7, 10, 1286 }, { 5, 11, 112 }, { 6, 11, 103 },
- { 6, 11, 150 }, { 8, 0, 914 }, { 10, 0, 3 }, { 4, 10, 215 },
- { 9, 10, 38 }, { 11, 10, 23 }, { 11, 10, 127 }, { 11, 10, 796 },
- { 7, 0, 399 }, { 6, 0, 563 }, { 9, 0, 224 }, { 6, 0, 704 },
- { 6, 0, 1214 }, { 4, 11, 708 }, { 8, 11, 15 }, { 9, 11, 50 },
- { 9, 11, 386 }, { 11, 11, 18 }, { 11, 11, 529 }, { 12, 11, 228 },
- { 4, 11, 563 }, { 7, 11, 109 }, { 7, 11, 592 }, { 7, 11, 637 },
- { 7, 11, 770 }, { 7, 11, 1701 }, { 8, 11, 436 }, { 8, 11, 463 },
- { 9, 11, 60 }, { 9, 11, 335 }, { 9, 11, 904 }, { 10, 11, 73 },
- { 11, 11, 434 }, { 12, 11, 585 }, { 13, 11, 331 }, { 18, 11, 110 },
- { 20, 11, 60 }, { 6, 0, 1559 }, { 4, 11, 502 }, { 6, 11, 347 },
- { 10, 11, 161 }, { 4, 11, 33 }, { 5, 11, 102 }, { 5, 11, 500 },
- { 6, 11, 284 }, { 7, 11, 1079 }, { 7, 11, 1423 }, { 7, 11, 1702 },
- { 8, 11, 470 }, { 9, 11, 554 }, { 9, 11, 723 }, { 11, 11, 333 },
- { 7, 11, 246 }, { 7, 11, 840 }, { 6, 11, 10 }, { 8, 11, 571 },
- { 9, 11, 739 }, { 15, 11, 91 }, { 8, 0, 861 }, { 10, 0, 905 },
- { 12, 0, 730 }, { 12, 0, 789 }, { 5, 11, 626 }, { 6, 0, 946 },
- { 5, 0, 746 }, { 12, 0, 333 }, { 14, 0, 332 }, { 12, 11, 333 },
- { 14, 11, 332 }, { 5, 11, 18 }, { 6, 11, 526 }, { 13, 11, 24 },
- { 13, 11, 110 }, { 19, 11, 5 }, { 19, 11, 44 }, { 4, 0, 910 },
- { 5, 0, 832 }, { 7, 10, 2002 }, { 10, 11, 768 }, { 11, 11, 787 },
- { 4, 11, 309 }, { 5, 11, 462 }, { 7, 11, 970 }, { 7, 11, 1097 },
- { 4, 10, 28 }, { 5, 10, 440 }, { 7, 10, 248 }, { 11, 10, 833 },
- { 12, 10, 344 }, { 6, 10, 1654 }, { 6, 0, 632 }, { 6, 0, 652 },
- { 6, 0, 1272 }, { 6, 0, 1384 }, { 6, 0, 1560 }, { 6, 11, 1704 },
- { 6, 0, 1393 }, { 5, 10, 853 }, { 6, 10, 249 }, { 7, 10, 1234 },
- { 11, 10, 573 }, { 5, 11, 86 }, { 7, 11, 743 }, { 9, 11, 85 },
- { 10, 11, 281 }, { 10, 11, 432 }, { 11, 11, 490 }, { 12, 11, 251 },
- { 13, 11, 118 }, { 14, 11, 378 }, { 18, 11, 143 }, { 5, 11, 524 },
- { 5, 11, 744 }, { 6, 0, 1514 }, { 10, 0, 201 }, { 14, 0, 319 },
- { 7, 0, 717 }, { 10, 0, 510 }, { 7, 10, 392 }, { 8, 10, 20 },
- { 8, 10, 172 }, { 8, 10, 690 }, { 9, 10, 383 }, { 9, 10, 845 },
- { 11, 10, 293 }, { 11, 10, 832 }, { 11, 10, 920 }, { 11, 10, 984 },
- { 13, 10, 221 }, { 6, 0, 1381 }, { 5, 10, 858 }, { 5, 10, 992 },
- { 8, 0, 528 }, { 9, 0, 348 }, { 10, 11, 107 }, { 12, 11, 436 },
- { 4, 0, 20 }, { 5, 0, 616 }, { 6, 0, 1251 }, { 4, 11, 927 },
- { 10, 11, 123 }, { 12, 11, 670 }, { 13, 11, 371 }, { 14, 11, 142 },
- { 18, 11, 94 }, { 6, 0, 1163 }, { 7, 11, 1149 }, { 9, 11, 156 },
- { 6, 0, 307 }, { 5, 11, 778 }, { 7, 0, 1091 }, { 7, 0, 1765 },
- { 5, 11, 502 }, { 6, 10, 268 }, { 9, 10, 62 }, { 8, 11, 196 },
- { 10, 11, 283 }, { 11, 11, 406 }, { 4, 0, 26 }, { 5, 0, 429 },
- { 6, 0, 245 }, { 7, 0, 704 }, { 7, 0, 1379 }, { 7, 0, 1474 },
- { 5, 11, 855 }, { 4, 0, 881 }, { 4, 0, 621 }, { 7, 11, 1596 },
- { 7, 11, 1400 }, { 9, 11, 446 }, { 10, 11, 45 }, { 6, 0, 736 },
- { 10, 10, 106 }, { 5, 0, 542 }, { 6, 0, 348 }, { 5, 0, 868 },
- { 8, 0, 433 }, { 7, 0, 1495 }, { 10, 0, 771 }, { 6, 10, 613 },
- { 8, 10, 223 }, { 10, 0, 215 }, { 13, 0, 124 }, { 8, 11, 391 },
- { 7, 11, 172 }, { 4, 10, 670 }, { 12, 0, 55 }, { 9, 10, 40 },
- { 11, 10, 136 }, { 7, 0, 62 }, { 19, 0, 112 }, { 4, 0, 856 },
- { 4, 11, 568 }, { 12, 0, 270 }, { 11, 10, 259 }, { 8, 0, 572 },
- { 9, 0, 698 }, { 4, 11, 732 }, { 9, 10, 310 }, { 9, 10, 682 },
- { 14, 10, 296 }, { 6, 0, 939 }, { 8, 11, 733 }, { 7, 11, 1435 },
- { 7, 10, 1401 }, { 7, 10, 1476 }, { 6, 0, 352 }, { 4, 10, 296 },
- { 7, 10, 401 }, { 7, 10, 1410 }, { 7, 10, 1594 }, { 7, 10, 1674 },
- { 8, 10, 63 }, { 8, 10, 660 }, { 9, 10, 74 }, { 4, 11, 428 },
- { 5, 11, 668 }, { 4, 10, 139 }, { 4, 10, 388 }, { 12, 10, 188 },
- { 7, 11, 2015 }, { 12, 11, 665 }, { 4, 0, 647 }, { 18, 0, 10 },
- { 10, 0, 220 }, { 14, 0, 464 }, { 4, 0, 109 }, { 6, 0, 1746 },
- { 6, 0, 515 }, { 4, 10, 747 }, { 6, 11, 1623 }, { 6, 11, 1681 },
- { 7, 10, 649 }, { 7, 10, 1479 }, { 7, 10, 1583 }, { 5, 10, 232 },
- { 7, 0, 566 }, { 9, 10, 887 }, { 4, 0, 40 }, { 10, 0, 67 },
- { 11, 0, 117 }, { 11, 0, 768 }, { 11, 0, 935 }, { 4, 0, 801 },
- { 7, 0, 992 }, { 8, 0, 301 }, { 9, 0, 722 }, { 12, 0, 63 },
- { 13, 0, 29 }, { 14, 0, 161 }, { 15, 0, 18 }, { 11, 0, 923 },
- { 6, 11, 1748 }, { 8, 11, 715 }, { 9, 11, 802 }, { 10, 11, 46 },
- { 10, 11, 819 }, { 13, 11, 308 }, { 14, 11, 351 }, { 14, 11, 363 },
- { 18, 11, 67 }, { 9, 11, 745 }, { 7, 0, 1145 }, { 4, 10, 14 },
- { 7, 10, 1801 }, { 10, 10, 748 }, { 13, 10, 458 }, { 4, 11, 63 },
- { 5, 11, 347 }, { 6, 11, 474 }, { 7, 0, 568 }, { 4, 10, 425 },
- { 7, 11, 577 }, { 7, 11, 1432 }, { 9, 11, 475 }, { 9, 11, 505 },
- { 9, 11, 526 }, { 9, 11, 609 }, { 9, 11, 689 }, { 9, 11, 726 },
- { 9, 11, 735 }, { 9, 11, 738 }, { 10, 11, 556 }, { 10, 11, 674 },
- { 10, 11, 684 }, { 11, 11, 89 }, { 11, 11, 202 }, { 11, 11, 272 },
- { 11, 11, 380 }, { 11, 11, 415 }, { 11, 11, 505 }, { 11, 11, 537 },
- { 11, 11, 550 }, { 11, 11, 562 }, { 11, 11, 640 }, { 11, 11, 667 },
- { 11, 11, 688 }, { 11, 11, 847 }, { 11, 11, 927 }, { 11, 11, 930 },
- { 11, 11, 940 }, { 12, 11, 144 }, { 12, 11, 325 }, { 12, 11, 329 },
- { 12, 11, 389 }, { 12, 11, 403 }, { 12, 11, 451 }, { 12, 11, 515 },
- { 12, 11, 604 }, { 12, 11, 616 }, { 12, 11, 626 }, { 13, 11, 66 },
- { 13, 11, 131 }, { 13, 11, 167 }, { 13, 11, 236 }, { 13, 11, 368 },
- { 13, 11, 411 }, { 13, 11, 434 }, { 13, 11, 453 }, { 13, 11, 461 },
- { 13, 11, 474 }, { 14, 11, 59 }, { 14, 11, 60 }, { 14, 11, 139 },
- { 14, 11, 152 }, { 14, 11, 276 }, { 14, 11, 353 }, { 14, 11, 402 },
- { 15, 11, 28 }, { 15, 11, 81 }, { 15, 11, 123 }, { 15, 11, 152 },
- { 18, 11, 136 }, { 20, 11, 88 }, { 9, 0, 247 }, { 7, 11, 1622 },
- { 9, 11, 544 }, { 11, 11, 413 }, { 16, 11, 25 }, { 4, 0, 645 },
- { 7, 0, 825 }, { 6, 10, 1768 }, { 7, 11, 89 }, { 12, 0, 328 },
- { 5, 10, 943 }, { 6, 10, 1779 }, { 6, 0, 1363 }, { 5, 10, 245 },
- { 6, 10, 576 }, { 7, 10, 582 }, { 8, 10, 225 }, { 6, 0, 1280 },
- { 5, 11, 824 }, { 5, 11, 941 }, { 7, 11, 440 }, { 8, 11, 230 },
- { 11, 11, 106 }, { 5, 0, 28 }, { 6, 0, 204 }, { 10, 0, 320 },
- { 10, 0, 583 }, { 13, 0, 502 }, { 14, 0, 72 }, { 14, 0, 274 },
- { 14, 0, 312 }, { 14, 0, 344 }, { 15, 0, 159 }, { 16, 0, 62 },
- { 16, 0, 69 }, { 17, 0, 30 }, { 18, 0, 42 }, { 18, 0, 53 },
- { 18, 0, 84 }, { 18, 0, 140 }, { 19, 0, 68 }, { 19, 0, 85 },
- { 20, 0, 5 }, { 20, 0, 45 }, { 20, 0, 101 }, { 22, 0, 7 },
- { 22, 0, 20 }, { 4, 0, 558 }, { 6, 0, 390 }, { 7, 0, 162 },
- { 7, 0, 689 }, { 9, 0, 360 }, { 10, 0, 653 }, { 6, 0, 764 },
- { 6, 0, 862 }, { 9, 0, 833 }, { 5, 0, 856 }, { 6, 0, 1672 },
- { 6, 0, 1757 }, { 6, 0, 1781 }, { 5, 0, 92 }, { 10, 0, 736 },
- { 12, 0, 102 }, { 6, 0, 1927 }, { 6, 0, 1944 }, { 8, 0, 924 },
- { 8, 0, 948 }, { 10, 0, 967 }, { 10, 0, 978 }, { 6, 0, 1479 },
- { 5, 0, 590 }, { 8, 0, 360 }, { 9, 0, 213 }, { 10, 0, 63 },
- { 6, 0, 1521 }, { 6, 0, 709 }, { 6, 0, 891 }, { 4, 10, 443 },
- { 13, 0, 477 }, { 14, 0, 120 }, { 20, 0, 61 }, { 4, 11, 914 },
- { 5, 11, 800 }, { 5, 11, 852 }, { 10, 11, 54 }, { 13, 11, 115 },
- { 4, 11, 918 }, { 5, 11, 876 }, { 11, 11, 152 }, { 4, 11, 92 },
- { 5, 11, 274 }, { 7, 11, 1901 }, { 9, 11, 800 }, { 10, 11, 693 },
- { 11, 11, 482 }, { 11, 11, 734 }, { 11, 11, 789 }, { 9, 0, 483 },
- { 4, 10, 298 }, { 6, 0, 1213 }, { 13, 11, 498 }, { 7, 11, 1451 },
- { 5, 11, 743 }, { 4, 0, 1022 }, { 10, 0, 1000 }, { 12, 0, 957 },
- { 12, 0, 980 }, { 12, 0, 1013 }, { 14, 0, 481 }, { 16, 0, 116 },
- { 8, 0, 503 }, { 17, 0, 29 }, { 4, 11, 49 }, { 7, 11, 280 },
- { 7, 11, 1633 }, { 7, 0, 1712 }, { 6, 0, 466 }, { 8, 11, 47 },
- { 5, 10, 164 }, { 7, 10, 121 }, { 14, 10, 189 }, { 7, 10, 812 },
- { 7, 10, 1261 }, { 7, 10, 1360 }, { 9, 10, 632 }, { 12, 10, 352 },
- { 11, 10, 556 }, { 4, 0, 731 }, { 5, 11, 272 }, { 5, 11, 908 },
- { 5, 11, 942 }, { 7, 11, 1008 }, { 7, 11, 1560 }, { 8, 11, 197 },
- { 9, 11, 47 }, { 11, 11, 538 }, { 11, 11, 742 }, { 4, 10, 172 },
- { 9, 10, 611 }, { 10, 10, 436 }, { 12, 10, 673 }, { 13, 10, 255 },
- { 5, 10, 844 }, { 10, 0, 484 }, { 11, 0, 754 }, { 12, 0, 457 },
- { 14, 0, 171 }, { 14, 0, 389 }, { 18, 0, 153 }, { 9, 10, 263 },
- { 10, 10, 147 }, { 10, 10, 492 }, { 9, 11, 891 }, { 10, 0, 241 },
- { 5, 10, 537 }, { 6, 0, 2005 }, { 8, 0, 964 }, { 9, 10, 842 },
- { 23, 11, 8 }, { 4, 11, 407 }, { 4, 11, 560 }, { 7, 11, 1884 },
- { 6, 0, 1100 }, { 6, 0, 1242 }, { 7, 0, 954 }, { 5, 10, 230 },
- { 5, 10, 392 }, { 6, 10, 420 }, { 9, 10, 568 }, { 12, 10, 612 },
- { 4, 11, 475 }, { 11, 11, 35 }, { 11, 11, 90 }, { 13, 11, 7 },
- { 13, 11, 71 }, { 13, 11, 177 }, { 14, 11, 422 }, { 8, 11, 332 },
- { 7, 0, 1958 }, { 6, 0, 549 }, { 8, 0, 34 }, { 8, 0, 283 },
- { 9, 0, 165 }, { 10, 0, 475 }, { 10, 0, 952 }, { 12, 0, 966 },
- { 12, 0, 994 }, { 5, 0, 652 }, { 5, 0, 701 }, { 7, 0, 449 },
- { 4, 0, 655 }, { 7, 0, 850 }, { 17, 0, 75 }, { 18, 0, 137 },
- { 4, 0, 146 }, { 7, 0, 1618 }, { 8, 0, 670 }, { 5, 10, 41 },
- { 7, 10, 1459 }, { 7, 10, 1469 }, { 7, 10, 1859 }, { 9, 10, 549 },
- { 11, 10, 905 }, { 5, 10, 696 }, { 6, 0, 159 }, { 6, 0, 364 },
- { 7, 0, 516 }, { 9, 0, 518 }, { 7, 0, 1439 }, { 6, 11, 222 },
- { 7, 11, 636 }, { 7, 11, 1620 }, { 8, 11, 409 }, { 9, 11, 693 },
- { 11, 11, 77 }, { 13, 0, 151 }, { 13, 11, 45 }, { 6, 0, 1027 },
- { 4, 11, 336 }, { 4, 10, 771 }, { 11, 11, 392 }, { 10, 11, 121 },
- { 11, 11, 175 }, { 21, 11, 16 }, { 8, 0, 950 }, { 10, 0, 983 },
- { 5, 10, 921 }, { 7, 0, 993 }, { 6, 10, 180 }, { 7, 10, 1137 },
- { 8, 10, 751 }, { 11, 10, 805 }, { 7, 0, 501 }, { 9, 0, 111 },
- { 10, 0, 141 }, { 11, 0, 332 }, { 13, 0, 43 }, { 13, 0, 429 },
- { 14, 0, 130 }, { 14, 0, 415 }, { 17, 0, 102 }, { 4, 10, 183 },
- { 5, 11, 882 }, { 7, 10, 271 }, { 11, 10, 824 }, { 11, 10, 952 },
- { 13, 10, 278 }, { 13, 10, 339 }, { 13, 10, 482 }, { 14, 10, 424 },
- { 20, 10, 99 }, { 4, 10, 19 }, { 5, 10, 477 }, { 5, 10, 596 },
- { 6, 10, 505 }, { 7, 10, 1221 }, { 11, 10, 907 }, { 12, 10, 209 },
- { 13, 10, 214 }, { 7, 10, 1215 }, { 5, 0, 452 }, { 4, 11, 426 },
- { 5, 0, 149 }, { 8, 0, 233 }, { 5, 0, 935 }, { 6, 11, 58 },
- { 7, 11, 654 }, { 7, 11, 745 }, { 7, 11, 1969 }, { 8, 11, 240 },
- { 8, 11, 675 }, { 9, 11, 479 }, { 9, 11, 731 }, { 10, 11, 330 },
- { 10, 11, 593 }, { 10, 11, 817 }, { 11, 11, 32 }, { 11, 11, 133 },
- { 11, 11, 221 }, { 17, 11, 68 }, { 12, 0, 582 }, { 18, 0, 131 },
- { 7, 11, 102 }, { 9, 11, 538 }, { 8, 0, 801 }, { 6, 10, 1645 },
- { 4, 0, 70 }, { 6, 10, 92 }, { 6, 10, 188 }, { 7, 10, 1269 },
- { 7, 10, 1524 }, { 7, 10, 1876 }, { 10, 10, 228 }, { 11, 10, 1020 },
- { 4, 10, 459 }, { 5, 10, 966 }, { 10, 0, 369 }, { 16, 0, 36 },
- { 12, 10, 330 }, { 13, 11, 366 }, { 7, 0, 721 }, { 10, 0, 236 },
- { 12, 0, 204 }, { 6, 10, 18 }, { 7, 10, 932 }, { 8, 10, 757 },
- { 9, 10, 54 }, { 9, 10, 65 }, { 9, 10, 844 }, { 10, 10, 113 },
- { 10, 10, 315 }, { 10, 10, 798 }, { 11, 10, 153 }, { 12, 10, 151 },
- { 12, 10, 392 }, { 12, 10, 666 }, { 14, 10, 248 }, { 7, 0, 241 },
- { 10, 0, 430 }, { 8, 10, 548 }, { 9, 10, 532 }, { 10, 10, 117 },
- { 11, 10, 351 }, { 11, 10, 375 }, { 15, 10, 23 }, { 6, 10, 1742 },
- { 5, 10, 965 }, { 5, 11, 566 }, { 6, 11, 48 }, { 7, 11, 63 },
- { 6, 10, 182 }, { 10, 10, 65 }, { 10, 10, 488 }, { 10, 10, 497 },
- { 6, 11, 114 }, { 7, 11, 1224 }, { 7, 11, 1556 }, { 8, 11, 3 },
- { 6, 0, 1817 }, { 8, 11, 576 }, { 9, 11, 267 }, { 6, 0, 1078 },
- { 16, 0, 16 }, { 9, 10, 588 }, { 10, 10, 260 }, { 10, 0, 1021 },
- { 5, 0, 406 }, { 6, 0, 2022 }, { 5, 11, 933 }, { 6, 0, 69 },
- { 7, 0, 117 }, { 7, 0, 1830 }, { 8, 11, 427 }, { 4, 0, 432 },
- { 7, 0, 824 }, { 6, 10, 1786 }, { 5, 0, 826 }, { 11, 11, 67 },
- { 5, 11, 759 }, { 7, 10, 308 }, { 9, 0, 816 }, { 5, 0, 1000 },
- { 4, 0, 297 }, { 6, 0, 529 }, { 7, 0, 152 }, { 7, 0, 713 },
- { 7, 0, 1845 }, { 8, 0, 710 }, { 8, 0, 717 }, { 12, 0, 639 },
- { 12, 0, 685 }, { 7, 0, 423 }, { 8, 10, 588 }, { 8, 10, 287 },
- { 8, 0, 510 }, { 6, 0, 1048 }, { 6, 0, 618 }, { 7, 11, 56 },
- { 7, 11, 1989 }, { 8, 11, 337 }, { 8, 11, 738 }, { 9, 11, 600 },
- { 10, 11, 483 }, { 12, 11, 37 }, { 13, 11, 447 }, { 14, 11, 92 },
- { 4, 0, 520 }, { 7, 0, 575 }, { 8, 0, 990 }, { 10, 0, 977 },
- { 7, 11, 774 }, { 9, 11, 347 }, { 11, 11, 24 }, { 12, 11, 170 },
- { 8, 11, 379 }, { 12, 10, 290 }, { 4, 11, 328 }, { 4, 0, 321 },
- { 6, 0, 569 }, { 4, 11, 101 }, { 7, 11, 1171 }, { 7, 0, 723 },
- { 7, 0, 1135 }, { 5, 11, 833 }, { 8, 11, 744 }, { 7, 10, 719 },
- { 8, 10, 809 }, { 8, 10, 834 }, { 8, 0, 921 }, { 8, 10, 796 },
- { 5, 10, 210 }, { 6, 10, 213 }, { 7, 10, 60 }, { 10, 10, 364 },
- { 11, 10, 135 }, { 5, 0, 397 }, { 6, 0, 154 }, { 7, 0, 676 },
- { 8, 0, 443 }, { 8, 0, 609 }, { 9, 0, 24 }, { 9, 0, 325 },
- { 10, 0, 35 }, { 11, 0, 535 }, { 11, 0, 672 }, { 11, 0, 1018 },
- { 12, 0, 637 }, { 16, 0, 30 }, { 5, 10, 607 }, { 8, 10, 326 },
- { 8, 10, 490 }, { 4, 10, 701 }, { 5, 10, 472 }, { 6, 11, 9 },
- { 6, 11, 397 }, { 7, 11, 53 }, { 7, 11, 1742 }, { 9, 10, 758 },
- { 10, 11, 632 }, { 11, 11, 828 }, { 12, 11, 146 }, { 7, 10, 380 },
- { 7, 10, 1947 }, { 20, 11, 109 }, { 10, 10, 278 }, { 10, 11, 278 },
- { 6, 0, 856 }, { 7, 0, 139 }, { 4, 10, 386 }, { 8, 10, 405 },
- { 8, 10, 728 }, { 9, 10, 497 }, { 11, 10, 110 }, { 11, 10, 360 },
- { 15, 10, 37 }, { 16, 10, 84 }, { 13, 0, 282 }, { 5, 0, 981 },
- { 5, 0, 288 }, { 7, 10, 1452 }, { 7, 10, 1480 }, { 8, 10, 634 },
- { 12, 10, 472 }, { 7, 0, 1890 }, { 8, 11, 367 }, { 10, 11, 760 },
- { 14, 11, 79 }, { 20, 11, 17 }, { 24, 11, 0 }, { 4, 10, 524 },
- { 8, 10, 810 }, { 4, 0, 56 }, { 7, 0, 1791 }, { 8, 0, 607 },
- { 8, 0, 651 }, { 11, 0, 465 }, { 11, 0, 835 }, { 12, 0, 337 },
- { 13, 0, 480 }, { 10, 10, 238 }, { 13, 10, 33 }, { 11, 11, 417 },
- { 12, 11, 223 }, { 12, 11, 265 }, { 9, 0, 158 }, { 10, 0, 411 },
- { 12, 0, 261 }, { 5, 10, 532 }, { 5, 10, 997 }, { 12, 11, 186 },
- { 12, 11, 292 }, { 14, 11, 100 }, { 18, 11, 70 }, { 6, 0, 1403 },
- { 8, 0, 617 }, { 6, 0, 1205 }, { 11, 0, 563 }, { 4, 0, 242 },
- { 6, 0, 333 }, { 4, 11, 186 }, { 5, 11, 157 }, { 8, 11, 168 },
- { 10, 11, 6 }, { 4, 0, 369 }, { 5, 11, 875 }, { 5, 10, 782 },
- { 5, 10, 829 }, { 6, 10, 1738 }, { 6, 0, 622 }, { 7, 11, 1272 },
- { 6, 0, 1407 }, { 7, 11, 111 }, { 8, 11, 581 }, { 7, 10, 1823 },
- { 11, 10, 693 }, { 7, 0, 160 }, { 10, 0, 624 }, { 14, 0, 279 },
- { 4, 0, 363 }, { 10, 11, 589 }, { 12, 11, 111 }, { 13, 11, 260 },
- { 14, 11, 82 }, { 18, 11, 63 }, { 19, 11, 45 }, { 7, 11, 1364 },
- { 7, 11, 1907 }, { 13, 11, 158 }, { 4, 11, 404 }, { 4, 11, 659 },
- { 7, 11, 675 }, { 13, 11, 211 }, { 14, 11, 133 }, { 14, 11, 204 },
- { 15, 11, 64 }, { 15, 11, 69 }, { 15, 11, 114 }, { 16, 11, 10 },
- { 19, 11, 23 }, { 19, 11, 35 }, { 19, 11, 39 }, { 19, 11, 51 },
- { 19, 11, 71 }, { 19, 11, 75 }, { 24, 11, 15 }, { 4, 10, 78 },
- { 5, 10, 96 }, { 5, 10, 182 }, { 7, 10, 1724 }, { 7, 10, 1825 },
- { 10, 10, 394 }, { 10, 10, 471 }, { 11, 10, 532 }, { 14, 10, 340 },
- { 17, 10, 88 }, { 7, 10, 1964 }, { 5, 11, 391 }, { 11, 11, 887 },
- { 14, 11, 365 }, { 14, 11, 375 }, { 5, 11, 540 }, { 6, 11, 1697 },
- { 7, 11, 222 }, { 8, 11, 341 }, { 6, 11, 78 }, { 9, 0, 601 },
- { 9, 0, 619 }, { 10, 0, 505 }, { 10, 0, 732 }, { 11, 0, 355 },
- { 12, 0, 139 }, { 6, 0, 292 }, { 11, 0, 174 }, { 5, 0, 177 },
- { 6, 0, 616 }, { 7, 0, 827 }, { 9, 0, 525 }, { 10, 0, 656 },
- { 10, 0, 31 }, { 6, 10, 215 }, { 7, 10, 1028 }, { 7, 10, 1473 },
- { 7, 10, 1721 }, { 9, 10, 424 }, { 10, 10, 779 }, { 7, 10, 584 },
- { 8, 11, 293 }, { 6, 0, 685 }, { 7, 11, 1868 }, { 5, 11, 460 },
- { 7, 0, 647 }, { 6, 10, 67 }, { 7, 10, 1630 }, { 9, 10, 354 },
- { 9, 10, 675 }, { 10, 10, 830 }, { 14, 10, 80 }, { 17, 10, 80 },
- { 4, 0, 161 }, { 5, 0, 631 }, { 6, 10, 141 }, { 7, 10, 225 },
- { 9, 10, 59 }, { 9, 10, 607 }, { 10, 10, 312 }, { 11, 10, 687 },
- { 12, 10, 555 }, { 13, 10, 373 }, { 13, 10, 494 }, { 20, 10, 58 },
- { 7, 11, 965 }, { 7, 11, 1460 }, { 7, 11, 1604 }, { 8, 10, 783 },
- { 6, 11, 388 }, { 6, 0, 722 }, { 6, 0, 1267 }, { 4, 11, 511 },
- { 9, 11, 333 }, { 9, 11, 379 }, { 10, 11, 602 }, { 11, 11, 441 },
- { 11, 11, 723 }, { 11, 11, 976 }, { 12, 11, 357 }, { 6, 0, 1797 },
- { 7, 0, 1684 }, { 9, 0, 469 }, { 9, 0, 709 }, { 12, 0, 512 },
- { 14, 0, 65 }, { 17, 0, 12 }, { 5, 11, 938 }, { 8, 11, 707 },
- { 7, 0, 1230 }, { 8, 0, 531 }, { 10, 0, 229 }, { 11, 0, 73 },
- { 11, 0, 376 }, { 11, 0, 433 }, { 12, 0, 268 }, { 12, 0, 640 },
- { 14, 0, 119 }, { 7, 10, 430 }, { 11, 10, 46 }, { 6, 0, 558 },
- { 7, 0, 651 }, { 8, 0, 421 }, { 9, 0, 0 }, { 10, 0, 34 },
- { 11, 0, 1008 }, { 6, 0, 106 }, { 7, 0, 1786 }, { 7, 0, 1821 },
- { 9, 0, 102 }, { 9, 0, 763 }, { 5, 10, 602 }, { 7, 10, 2018 },
- { 9, 10, 418 }, { 5, 0, 65 }, { 6, 0, 416 }, { 7, 0, 1720 },
- { 7, 0, 1924 }, { 10, 0, 109 }, { 11, 0, 14 }, { 11, 0, 70 },
- { 11, 0, 569 }, { 11, 0, 735 }, { 15, 0, 153 }, { 20, 0, 80 },
- { 8, 10, 677 }, { 7, 11, 1625 }, { 9, 11, 772 }, { 8, 0, 595 },
- { 6, 11, 469 }, { 7, 11, 1709 }, { 10, 11, 515 }, { 7, 0, 1832 },
- { 10, 0, 374 }, { 9, 0, 106 }, { 9, 0, 163 }, { 9, 0, 296 },
- { 10, 0, 167 }, { 10, 0, 172 }, { 10, 0, 777 }, { 11, 0, 16 },
- { 6, 0, 6 }, { 7, 0, 81 }, { 7, 0, 771 }, { 7, 0, 1731 },
- { 9, 0, 405 }, { 10, 0, 421 }, { 4, 11, 500 }, { 7, 11, 938 },
- { 5, 11, 68 }, { 6, 11, 383 }, { 5, 0, 881 }, { 5, 0, 885 },
- { 6, 0, 854 }, { 6, 0, 1132 }, { 6, 0, 1495 }, { 6, 0, 1526 },
- { 6, 0, 1533 }, { 6, 0, 1577 }, { 4, 11, 337 }, { 6, 11, 353 },
- { 7, 11, 1934 }, { 8, 11, 488 }, { 9, 11, 429 }, { 7, 11, 236 },
- { 7, 11, 1795 }, { 8, 11, 259 }, { 9, 11, 135 }, { 9, 11, 177 },
- { 10, 11, 825 }, { 11, 11, 115 }, { 11, 11, 370 }, { 11, 11, 405 },
- { 11, 11, 604 }, { 12, 11, 10 }, { 12, 11, 667 }, { 12, 11, 669 },
- { 13, 11, 76 }, { 14, 11, 310 }, { 15, 11, 76 }, { 15, 11, 147 },
- { 20, 11, 23 }, { 5, 0, 142 }, { 6, 0, 546 }, { 4, 11, 15 },
- { 5, 11, 22 }, { 6, 11, 244 }, { 7, 11, 40 }, { 7, 11, 200 },
- { 7, 11, 906 }, { 7, 11, 1199 }, { 9, 11, 616 }, { 10, 11, 716 },
- { 11, 11, 635 }, { 11, 11, 801 }, { 12, 11, 458 }, { 5, 0, 466 },
- { 11, 0, 571 }, { 12, 0, 198 }, { 13, 0, 283 }, { 14, 0, 186 },
- { 15, 0, 21 }, { 15, 0, 103 }, { 7, 10, 329 }, { 4, 0, 185 },
- { 5, 0, 257 }, { 5, 0, 839 }, { 5, 0, 936 }, { 9, 0, 399 },
- { 10, 0, 258 }, { 10, 0, 395 }, { 10, 0, 734 }, { 11, 0, 1014 },
- { 12, 0, 23 }, { 13, 0, 350 }, { 14, 0, 150 }, { 19, 0, 6 },
- { 7, 11, 1735 }, { 12, 11, 36 }, { 13, 11, 337 }, { 5, 11, 598 },
- { 7, 11, 791 }, { 8, 11, 108 }, { 9, 11, 123 }, { 4, 10, 469 },
- { 7, 0, 404 }, { 7, 0, 1377 }, { 7, 0, 1430 }, { 7, 0, 2017 },
- { 8, 0, 149 }, { 8, 0, 239 }, { 8, 0, 512 }, { 8, 0, 793 },
- { 8, 0, 818 }, { 9, 0, 474 }, { 9, 0, 595 }, { 10, 0, 122 },
- { 10, 0, 565 }, { 10, 0, 649 }, { 10, 0, 783 }, { 11, 0, 239 },
- { 11, 0, 295 }, { 11, 0, 447 }, { 11, 0, 528 }, { 11, 0, 639 },
- { 11, 0, 800 }, { 12, 0, 25 }, { 12, 0, 77 }, { 12, 0, 157 },
- { 12, 0, 256 }, { 12, 0, 316 }, { 12, 0, 390 }, { 12, 0, 391 },
- { 12, 0, 395 }, { 12, 0, 478 }, { 12, 0, 503 }, { 12, 0, 592 },
- { 12, 0, 680 }, { 13, 0, 50 }, { 13, 0, 53 }, { 13, 0, 132 },
- { 13, 0, 198 }, { 13, 0, 322 }, { 13, 0, 415 }, { 13, 0, 511 },
- { 14, 0, 71 }, { 14, 0, 395 }, { 15, 0, 71 }, { 15, 0, 136 },
- { 17, 0, 123 }, { 18, 0, 93 }, { 19, 0, 58 }, { 8, 0, 712 },
- { 6, 10, 1743 }, { 5, 10, 929 }, { 6, 10, 340 }, { 8, 10, 376 },
- { 8, 10, 807 }, { 6, 0, 1848 }, { 8, 0, 860 }, { 10, 0, 856 },
- { 10, 0, 859 }, { 10, 0, 925 }, { 10, 0, 941 }, { 12, 0, 762 },
- { 6, 0, 629 }, { 6, 0, 906 }, { 9, 0, 810 }, { 12, 0, 652 },
- { 5, 10, 218 }, { 7, 10, 1610 }, { 10, 10, 83 }, { 7, 10, 1512 },
- { 7, 10, 1794 }, { 4, 0, 377 }, { 24, 0, 13 }, { 4, 11, 155 },
- { 7, 11, 1689 }, { 11, 10, 0 }, { 16, 10, 78 }, { 4, 11, 164 },
- { 5, 11, 151 }, { 5, 11, 730 }, { 5, 11, 741 }, { 7, 11, 498 },
- { 7, 11, 870 }, { 7, 11, 1542 }, { 12, 11, 213 }, { 14, 11, 36 },
- { 14, 11, 391 }, { 17, 11, 111 }, { 18, 11, 6 }, { 18, 11, 46 },
- { 18, 11, 151 }, { 19, 11, 36 }, { 20, 11, 32 }, { 20, 11, 56 },
- { 20, 11, 69 }, { 20, 11, 102 }, { 21, 11, 4 }, { 22, 11, 8 },
- { 22, 11, 10 }, { 22, 11, 14 }, { 22, 11, 31 }, { 7, 0, 1842 },
- { 5, 10, 571 }, { 4, 10, 455 }, { 4, 11, 624 }, { 7, 11, 1752 },
- { 6, 0, 1501 }, { 4, 11, 492 }, { 5, 11, 451 }, { 6, 10, 161 },
- { 7, 10, 372 }, { 9, 10, 597 }, { 4, 10, 349 }, { 4, 0, 180 },
- { 7, 0, 1906 }, { 7, 11, 835 }, { 13, 11, 70 }, { 4, 0, 491 },
- { 9, 10, 751 }, { 6, 10, 432 }, { 11, 10, 322 }, { 4, 0, 171 },
- { 10, 0, 234 }, { 6, 11, 113 }, { 7, 11, 436 }, { 4, 0, 586 },
- { 7, 0, 1186 }, { 10, 0, 631 }, { 5, 10, 468 }, { 10, 10, 325 },
- { 11, 10, 856 }, { 12, 10, 345 }, { 15, 10, 104 }, { 5, 10, 223 },
- { 10, 11, 592 }, { 10, 11, 753 }, { 12, 11, 317 }, { 12, 11, 355 },
- { 12, 11, 465 }, { 12, 11, 469 }, { 12, 11, 560 }, { 12, 11, 578 },
- { 13, 11, 243 }, { 4, 10, 566 }, { 7, 11, 520 }, { 4, 10, 59 },
- { 7, 10, 1394 }, { 6, 10, 436 }, { 11, 10, 481 }, { 9, 0, 931 },
- { 10, 0, 334 }, { 20, 0, 71 }, { 4, 10, 48 }, { 5, 10, 271 },
- { 7, 10, 953 }, { 7, 11, 1878 }, { 11, 0, 170 }, { 5, 10, 610 },
- { 8, 10, 457 }, { 5, 10, 755 }, { 6, 0, 1587 }, { 7, 10, 1217 },
- { 4, 10, 197 }, { 21, 11, 26 }, { 5, 11, 585 }, { 9, 11, 521 },
- { 5, 0, 765 }, { 5, 10, 217 }, { 11, 11, 586 }, { 5, 0, 424 },
- { 9, 11, 752 }, { 12, 11, 610 }, { 13, 11, 431 }, { 16, 11, 59 },
- { 18, 11, 109 }, { 8, 0, 714 }, { 7, 0, 685 }, { 4, 11, 307 },
- { 9, 0, 420 }, { 10, 0, 269 }, { 10, 0, 285 }, { 10, 0, 576 },
- { 11, 0, 397 }, { 13, 0, 175 }, { 17, 0, 90 }, { 4, 0, 429 },
- { 5, 11, 964 }, { 9, 11, 463 }, { 10, 11, 595 }, { 7, 0, 18 },
- { 7, 0, 699 }, { 7, 0, 1966 }, { 8, 0, 752 }, { 9, 0, 273 },
- { 9, 0, 412 }, { 9, 0, 703 }, { 10, 0, 71 }, { 10, 0, 427 },
- { 10, 0, 508 }, { 4, 10, 165 }, { 7, 10, 1398 }, { 7, 10, 1829 },
- { 4, 0, 53 }, { 5, 0, 186 }, { 7, 0, 752 }, { 7, 0, 828 },
- { 14, 0, 116 }, { 8, 0, 575 }, { 10, 0, 289 }, { 11, 0, 319 },
- { 4, 0, 675 }, { 6, 0, 1424 }, { 4, 11, 75 }, { 5, 11, 180 },
- { 6, 11, 500 }, { 7, 11, 58 }, { 7, 11, 710 }, { 10, 11, 645 },
- { 5, 11, 649 }, { 6, 11, 276 }, { 7, 11, 282 }, { 7, 11, 879 },
- { 7, 11, 924 }, { 8, 11, 459 }, { 9, 11, 599 }, { 9, 11, 754 },
- { 11, 11, 574 }, { 12, 11, 128 }, { 12, 11, 494 }, { 13, 11, 52 },
- { 13, 11, 301 }, { 15, 11, 30 }, { 15, 11, 132 }, { 6, 0, 647 },
- { 6, 0, 1095 }, { 5, 10, 9 }, { 7, 10, 297 }, { 7, 10, 966 },
- { 12, 10, 306 }, { 4, 11, 200 }, { 6, 0, 1334 }, { 5, 10, 146 },
- { 6, 10, 411 }, { 10, 10, 721 }, { 6, 0, 209 }, { 6, 0, 1141 },
- { 6, 0, 1288 }, { 8, 0, 468 }, { 9, 0, 210 }, { 11, 0, 36 },
- { 12, 0, 28 }, { 12, 0, 630 }, { 13, 0, 21 }, { 13, 0, 349 },
- { 14, 0, 7 }, { 17, 0, 13 }, { 6, 10, 177 }, { 7, 10, 467 },
- { 4, 0, 342 }, { 7, 0, 1179 }, { 10, 11, 454 }, { 12, 11, 324 },
- { 4, 0, 928 }, { 5, 0, 910 }, { 7, 0, 1838 }, { 6, 11, 225 },
- { 9, 11, 211 }, { 16, 0, 101 }, { 20, 0, 115 }, { 20, 0, 118 },
- { 20, 0, 122 }, { 4, 0, 496 }, { 7, 0, 856 }, { 4, 0, 318 },
- { 11, 0, 654 }, { 7, 11, 718 }, { 11, 11, 102 }, { 8, 11, 58 },
- { 9, 11, 724 }, { 11, 11, 809 }, { 13, 11, 113 }, { 17, 11, 72 },
- { 5, 10, 200 }, { 6, 11, 345 }, { 7, 11, 1247 }, { 8, 11, 767 },
- { 8, 11, 803 }, { 9, 11, 301 }, { 9, 11, 903 }, { 7, 0, 915 },
- { 8, 0, 247 }, { 19, 0, 0 }, { 7, 11, 1949 }, { 8, 11, 674 },
- { 4, 0, 202 }, { 5, 0, 382 }, { 6, 0, 454 }, { 7, 0, 936 },
- { 7, 0, 1803 }, { 8, 0, 758 }, { 9, 0, 375 }, { 9, 0, 895 },
- { 10, 0, 743 }, { 10, 0, 792 }, { 11, 0, 978 }, { 11, 0, 1012 },
- { 14, 0, 109 }, { 7, 0, 1150 }, { 7, 0, 1425 }, { 7, 0, 1453 },
- { 12, 0, 513 }, { 6, 11, 259 }, { 10, 0, 791 }, { 11, 0, 821 },
- { 12, 0, 110 }, { 12, 0, 153 }, { 18, 0, 41 }, { 22, 0, 19 },
- { 6, 10, 481 }, { 4, 0, 796 }, { 6, 0, 445 }, { 9, 0, 909 },
- { 8, 11, 254 }, { 10, 0, 776 }, { 13, 0, 345 }, { 14, 0, 425 },
- { 4, 10, 84 }, { 7, 10, 1482 }, { 10, 10, 76 }, { 10, 10, 142 },
- { 7, 11, 742 }, { 6, 0, 578 }, { 5, 10, 1015 }, { 6, 0, 1387 },
- { 4, 10, 315 }, { 5, 10, 507 }, { 7, 10, 1370 }, { 4, 0, 438 },
- { 5, 0, 555 }, { 8, 0, 766 }, { 5, 11, 248 }, { 6, 10, 1722 },
- { 4, 11, 116 }, { 5, 11, 95 }, { 5, 11, 445 }, { 7, 11, 1688 },
- { 8, 11, 29 }, { 9, 11, 272 }, { 11, 11, 509 }, { 11, 11, 915 },
- { 7, 0, 541 }, { 5, 11, 543 }, { 8, 10, 222 }, { 8, 10, 476 },
- { 9, 10, 238 }, { 11, 10, 516 }, { 11, 10, 575 }, { 15, 10, 109 },
- { 18, 10, 100 }, { 6, 0, 880 }, { 6, 0, 1191 }, { 5, 11, 181 },
- { 8, 11, 41 }, { 6, 0, 1506 }, { 4, 11, 681 }, { 7, 11, 25 },
- { 8, 11, 202 }, { 10, 11, 536 }, { 11, 0, 983 }, { 9, 0, 768 },
- { 4, 0, 584 }, { 9, 11, 423 }, { 12, 11, 89 }, { 8, 11, 113 },
- { 9, 11, 877 }, { 10, 11, 554 }, { 11, 11, 83 }, { 12, 11, 136 },
- { 19, 11, 109 }, { 7, 10, 706 }, { 7, 10, 1058 }, { 10, 10, 538 },
- { 5, 11, 976 }, { 4, 11, 206 }, { 7, 11, 746 }, { 8, 11, 526 },
- { 12, 0, 737 }, { 11, 10, 92 }, { 11, 10, 196 }, { 11, 10, 409 },
- { 11, 10, 450 }, { 11, 10, 666 }, { 11, 10, 777 }, { 12, 10, 262 },
- { 13, 10, 385 }, { 13, 10, 393 }, { 15, 10, 115 }, { 16, 10, 45 },
- { 17, 10, 82 }, { 4, 0, 226 }, { 4, 0, 326 }, { 7, 0, 1770 },
- { 4, 11, 319 }, { 5, 11, 699 }, { 10, 11, 673 }, { 6, 10, 40 },
- { 7, 10, 1781 }, { 5, 0, 426 }, { 8, 0, 30 }, { 9, 0, 2 },
- { 11, 0, 549 }, { 19, 0, 122 }, { 6, 0, 1161 }, { 6, 0, 1329 },
- { 10, 10, 97 }, { 6, 10, 423 }, { 7, 10, 665 }, { 7, 10, 1210 },
- { 7, 11, 13 }, { 8, 11, 226 }, { 10, 11, 537 }, { 11, 11, 570 },
- { 11, 11, 605 }, { 11, 11, 799 }, { 11, 11, 804 }, { 12, 11, 85 },
- { 12, 11, 516 }, { 12, 11, 623 }, { 13, 11, 112 }, { 13, 11, 361 },
- { 14, 11, 77 }, { 14, 11, 78 }, { 17, 11, 28 }, { 19, 11, 110 },
- { 4, 11, 769 }, { 4, 11, 551 }, { 4, 11, 728 }, { 19, 0, 117 },
- { 9, 11, 57 }, { 9, 11, 459 }, { 10, 11, 425 }, { 11, 11, 119 },
- { 12, 11, 184 }, { 12, 11, 371 }, { 13, 11, 358 }, { 17, 11, 51 },
- { 5, 11, 188 }, { 5, 11, 814 }, { 8, 11, 10 }, { 9, 11, 421 },
- { 9, 11, 729 }, { 10, 11, 609 }, { 11, 11, 689 }, { 6, 11, 624 },
- { 7, 11, 298 }, { 7, 0, 462 }, { 4, 0, 345 }, { 11, 10, 624 },
- { 8, 10, 574 }, { 4, 0, 385 }, { 7, 0, 265 }, { 7, 0, 587 },
- { 6, 0, 808 }, { 4, 11, 528 }, { 5, 0, 398 }, { 4, 10, 354 },
- { 4, 0, 347 }, { 5, 0, 423 }, { 5, 0, 996 }, { 7, 0, 1329 },
- { 7, 10, 1558 }, { 7, 0, 1259 }, { 9, 0, 125 }, { 11, 0, 65 },
- { 5, 0, 136 }, { 6, 0, 136 }, { 8, 0, 644 }, { 5, 11, 104 },
- { 6, 11, 173 }, { 7, 11, 1631 }, { 7, 0, 469 }, { 5, 10, 830 },
- { 4, 0, 278 }, { 5, 0, 465 }, { 7, 0, 1367 }, { 7, 11, 810 },
- { 8, 11, 138 }, { 8, 11, 342 }, { 9, 11, 84 }, { 10, 11, 193 },
- { 11, 11, 883 }, { 12, 11, 359 }, { 5, 10, 496 }, { 7, 10, 203 },
- { 4, 0, 433 }, { 5, 0, 719 }, { 6, 11, 95 }, { 6, 10, 547 },
- { 5, 10, 88 }, { 9, 10, 239 }, { 6, 11, 406 }, { 10, 11, 409 },
- { 10, 11, 447 }, { 11, 11, 44 }, { 12, 11, 100 }, { 6, 0, 1423 },
- { 7, 10, 650 }, { 7, 10, 1310 }, { 6, 0, 749 }, { 7, 11, 1243 },
- { 7, 0, 1363 }, { 6, 0, 381 }, { 7, 0, 645 }, { 7, 0, 694 },
- { 8, 0, 546 }, { 7, 10, 1076 }, { 9, 10, 80 }, { 11, 10, 78 },
- { 11, 10, 421 }, { 11, 10, 534 }, { 12, 10, 545 }, { 6, 11, 1636 },
- { 7, 11, 1344 }, { 12, 0, 277 }, { 7, 10, 274 }, { 11, 10, 479 },
- { 11, 10, 507 }, { 6, 0, 705 }, { 6, 0, 783 }, { 6, 0, 1275 },
- { 6, 0, 1481 }, { 4, 11, 282 }, { 7, 11, 1034 }, { 11, 11, 398 },
- { 11, 11, 634 }, { 12, 11, 1 }, { 12, 11, 79 }, { 12, 11, 544 },
- { 14, 11, 237 }, { 17, 11, 10 }, { 18, 11, 20 }, { 6, 0, 453 },
- { 4, 0, 555 }, { 8, 0, 536 }, { 10, 0, 288 }, { 11, 0, 1005 },
- { 4, 10, 497 }, { 7, 10, 1584 }, { 5, 11, 118 }, { 5, 11, 499 },
- { 6, 11, 476 }, { 7, 11, 600 }, { 7, 11, 888 }, { 7, 11, 1096 },
- { 10, 0, 987 }, { 7, 0, 1107 }, { 7, 10, 261 }, { 7, 10, 1115 },
- { 7, 10, 1354 }, { 7, 10, 1588 }, { 7, 10, 1705 }, { 7, 10, 1902 },
- { 9, 10, 465 }, { 10, 10, 248 }, { 10, 10, 349 }, { 10, 10, 647 },
- { 11, 10, 527 }, { 11, 10, 660 }, { 11, 10, 669 }, { 12, 10, 529 },
- { 13, 10, 305 }, { 7, 11, 296 }, { 7, 11, 596 }, { 8, 11, 560 },
- { 8, 11, 586 }, { 9, 11, 612 }, { 11, 11, 100 }, { 11, 11, 304 },
- { 12, 11, 46 }, { 13, 11, 89 }, { 14, 11, 112 }, { 17, 11, 122 },
- { 9, 0, 370 }, { 10, 0, 90 }, { 8, 10, 13 }, { 4, 0, 860 },
- { 7, 10, 642 }, { 8, 10, 250 }, { 11, 10, 123 }, { 11, 10, 137 },
- { 13, 10, 48 }, { 14, 10, 95 }, { 7, 10, 1429 }, { 9, 11, 321 },
- { 4, 0, 257 }, { 7, 0, 2031 }, { 7, 0, 1768 }, { 7, 11, 1599 },
- { 7, 11, 1723 }, { 8, 11, 79 }, { 8, 11, 106 }, { 8, 11, 190 },
- { 8, 11, 302 }, { 8, 11, 383 }, { 9, 11, 119 }, { 9, 11, 233 },
- { 9, 11, 298 }, { 9, 11, 419 }, { 9, 11, 471 }, { 10, 11, 181 },
- { 10, 11, 406 }, { 11, 11, 57 }, { 11, 11, 85 }, { 11, 11, 120 },
- { 11, 11, 177 }, { 11, 11, 296 }, { 11, 11, 382 }, { 11, 11, 454 },
- { 11, 11, 758 }, { 11, 11, 999 }, { 12, 11, 27 }, { 12, 11, 98 },
- { 12, 11, 131 }, { 12, 11, 245 }, { 12, 11, 312 }, { 12, 11, 446 },
- { 12, 11, 454 }, { 13, 11, 25 }, { 13, 11, 98 }, { 13, 11, 426 },
- { 13, 11, 508 }, { 14, 11, 6 }, { 14, 11, 163 }, { 14, 11, 272 },
- { 14, 11, 277 }, { 14, 11, 370 }, { 15, 11, 95 }, { 15, 11, 138 },
- { 15, 11, 167 }, { 17, 11, 18 }, { 17, 11, 38 }, { 20, 11, 96 },
- { 21, 11, 32 }, { 5, 11, 722 }, { 6, 11, 1759 }, { 17, 11, 16 },
- { 6, 0, 1071 }, { 6, 0, 1561 }, { 10, 10, 545 }, { 12, 10, 301 },
- { 6, 0, 83 }, { 6, 0, 1733 }, { 7, 0, 1389 }, { 4, 0, 835 },
- { 7, 0, 1818 }, { 5, 11, 258 }, { 4, 10, 904 }, { 5, 10, 794 },
- { 6, 0, 2006 }, { 5, 11, 30 }, { 7, 11, 495 }, { 8, 11, 134 },
- { 9, 11, 788 }, { 12, 11, 438 }, { 7, 11, 2004 }, { 9, 0, 696 },
- { 5, 11, 50 }, { 6, 11, 439 }, { 7, 11, 780 }, { 7, 11, 1040 },
- { 7, 11, 772 }, { 7, 11, 1104 }, { 7, 11, 1647 }, { 11, 11, 269 },
- { 11, 11, 539 }, { 11, 11, 607 }, { 11, 11, 627 }, { 11, 11, 706 },
- { 11, 11, 975 }, { 12, 11, 248 }, { 12, 11, 311 }, { 12, 11, 434 },
- { 12, 11, 600 }, { 12, 11, 622 }, { 13, 11, 297 }, { 13, 11, 367 },
- { 13, 11, 485 }, { 14, 11, 69 }, { 14, 11, 409 }, { 15, 11, 108 },
- { 5, 11, 1 }, { 6, 11, 81 }, { 10, 11, 520 }, { 7, 0, 1718 },
- { 9, 0, 95 }, { 9, 0, 274 }, { 10, 0, 279 }, { 10, 0, 317 },
- { 10, 0, 420 }, { 11, 0, 303 }, { 11, 0, 808 }, { 12, 0, 134 },
- { 12, 0, 367 }, { 13, 0, 149 }, { 13, 0, 347 }, { 14, 0, 349 },
- { 14, 0, 406 }, { 18, 0, 22 }, { 18, 0, 89 }, { 18, 0, 122 },
- { 19, 0, 47 }, { 5, 11, 482 }, { 8, 11, 98 }, { 9, 11, 172 },
- { 10, 11, 222 }, { 10, 11, 700 }, { 10, 11, 822 }, { 11, 11, 302 },
- { 11, 11, 778 }, { 12, 11, 50 }, { 12, 11, 127 }, { 12, 11, 396 },
- { 13, 11, 62 }, { 13, 11, 328 }, { 14, 11, 122 }, { 19, 11, 72 },
- { 7, 10, 386 }, { 10, 10, 713 }, { 6, 10, 7 }, { 6, 10, 35 },
- { 7, 10, 147 }, { 7, 10, 1069 }, { 7, 10, 1568 }, { 7, 10, 1575 },
- { 7, 10, 1917 }, { 8, 10, 43 }, { 8, 10, 208 }, { 9, 10, 128 },
- { 9, 10, 866 }, { 10, 10, 20 }, { 11, 10, 981 }, { 19, 10, 33 },
- { 5, 0, 26 }, { 4, 0, 550 }, { 5, 11, 2 }, { 7, 11, 1494 },
- { 8, 11, 589 }, { 6, 11, 512 }, { 7, 11, 797 }, { 8, 11, 253 },
- { 9, 11, 77 }, { 10, 11, 1 }, { 10, 11, 129 }, { 10, 11, 225 },
- { 11, 11, 118 }, { 11, 11, 226 }, { 11, 11, 251 }, { 11, 11, 430 },
- { 11, 11, 701 }, { 11, 11, 974 }, { 11, 11, 982 }, { 12, 11, 64 },
- { 12, 11, 260 }, { 12, 11, 488 }, { 12, 11, 690 }, { 7, 10, 893 },
- { 13, 10, 424 }, { 6, 0, 901 }, { 8, 0, 822 }, { 4, 0, 902 },
- { 5, 0, 809 }, { 6, 0, 122 }, { 6, 0, 807 }, { 6, 0, 1366 },
- { 7, 0, 262 }, { 5, 11, 748 }, { 6, 11, 553 }, { 5, 0, 620 },
- { 4, 0, 34 }, { 5, 0, 574 }, { 7, 0, 279 }, { 7, 0, 1624 },
- { 8, 0, 601 }, { 9, 0, 170 }, { 6, 10, 322 }, { 9, 10, 552 },
- { 11, 10, 274 }, { 13, 10, 209 }, { 13, 10, 499 }, { 14, 10, 85 },
- { 15, 10, 126 }, { 17, 10, 70 }, { 4, 0, 537 }, { 4, 11, 12 },
- { 7, 11, 420 }, { 7, 11, 522 }, { 7, 11, 809 }, { 8, 11, 797 },
- { 13, 11, 88 }, { 5, 0, 332 }, { 8, 10, 83 }, { 8, 10, 742 },
- { 8, 10, 817 }, { 9, 10, 28 }, { 9, 10, 29 }, { 9, 10, 885 },
- { 10, 10, 387 }, { 11, 10, 633 }, { 11, 10, 740 }, { 13, 10, 235 },
- { 13, 10, 254 }, { 15, 10, 143 }, { 15, 10, 146 }, { 6, 0, 1909 },
- { 9, 0, 964 }, { 12, 0, 822 }, { 12, 0, 854 }, { 12, 0, 865 },
- { 12, 0, 910 }, { 12, 0, 938 }, { 15, 0, 169 }, { 15, 0, 208 },
- { 15, 0, 211 }, { 18, 0, 205 }, { 18, 0, 206 }, { 18, 0, 220 },
- { 18, 0, 223 }, { 24, 0, 24 }, { 12, 10, 49 }, { 5, 11, 528 },
- { 7, 11, 1580 }, { 6, 0, 261 }, { 8, 0, 182 }, { 11, 0, 943 },
- { 6, 0, 1721 }, { 4, 0, 933 }, { 5, 0, 880 }, { 8, 11, 321 },
- { 5, 11, 266 }, { 9, 11, 290 }, { 9, 11, 364 }, { 10, 11, 293 },
- { 11, 11, 606 }, { 14, 11, 45 }, { 6, 0, 1609 }, { 4, 11, 50 },
- { 6, 11, 510 }, { 6, 11, 594 }, { 9, 11, 121 }, { 10, 11, 49 },
- { 10, 11, 412 }, { 11, 11, 834 }, { 7, 0, 895 }, { 8, 11, 748 },
- { 4, 11, 466 }, { 4, 10, 110 }, { 10, 10, 415 }, { 10, 10, 597 },
- { 14, 10, 206 }, { 5, 0, 812 }, { 7, 11, 281 }, { 6, 0, 1890 },
- { 6, 0, 1902 }, { 6, 0, 1916 }, { 9, 0, 929 }, { 9, 0, 942 },
- { 9, 0, 975 }, { 9, 0, 984 }, { 9, 0, 986 }, { 9, 0, 1011 },
- { 9, 0, 1019 }, { 12, 0, 804 }, { 12, 0, 851 }, { 12, 0, 867 },
- { 12, 0, 916 }, { 12, 0, 923 }, { 15, 0, 194 }, { 15, 0, 204 },
- { 15, 0, 210 }, { 15, 0, 222 }, { 15, 0, 223 }, { 15, 0, 229 },
- { 15, 0, 250 }, { 18, 0, 179 }, { 18, 0, 186 }, { 18, 0, 192 },
- { 7, 10, 205 }, { 7, 10, 2000 }, { 4, 11, 667 }, { 7, 0, 778 },
- { 4, 0, 137 }, { 7, 0, 1178 }, { 7, 0, 1520 }, { 6, 0, 1314 },
- { 4, 11, 242 }, { 6, 11, 333 }, { 6, 0, 1661 }, { 7, 0, 1975 },
- { 7, 0, 2009 }, { 7, 0, 2011 }, { 6, 0, 1591 }, { 4, 10, 283 },
- { 7, 10, 1194 }, { 11, 0, 820 }, { 22, 0, 51 }, { 4, 11, 39 },
- { 5, 11, 36 }, { 7, 11, 1843 }, { 8, 11, 407 }, { 11, 11, 144 },
- { 12, 11, 523 }, { 6, 10, 1720 }, { 4, 11, 510 }, { 7, 11, 29 },
- { 7, 11, 66 }, { 7, 11, 1980 }, { 10, 11, 487 }, { 10, 11, 809 },
- { 18, 11, 9 }, { 5, 0, 89 }, { 7, 0, 1915 }, { 9, 0, 185 },
- { 9, 0, 235 }, { 10, 0, 64 }, { 10, 0, 270 }, { 10, 0, 403 },
- { 10, 0, 469 }, { 10, 0, 529 }, { 10, 0, 590 }, { 11, 0, 140 },
- { 11, 0, 860 }, { 13, 0, 1 }, { 13, 0, 422 }, { 14, 0, 341 },
- { 14, 0, 364 }, { 17, 0, 93 }, { 18, 0, 113 }, { 19, 0, 97 },
- { 19, 0, 113 }, { 5, 0, 695 }, { 6, 0, 987 }, { 6, 0, 1160 },
- { 5, 0, 6 }, { 6, 0, 183 }, { 7, 0, 680 }, { 7, 0, 978 },
- { 7, 0, 1013 }, { 7, 0, 1055 }, { 12, 0, 230 }, { 13, 0, 172 },
- { 18, 0, 29 }, { 6, 11, 570 }, { 4, 11, 787 }, { 6, 11, 518 },
- { 6, 0, 29 }, { 11, 0, 63 }, { 4, 11, 516 }, { 8, 11, 821 },
- { 4, 0, 311 }, { 6, 0, 1740 }, { 7, 0, 170 }, { 8, 0, 90 },
- { 8, 0, 177 }, { 8, 0, 415 }, { 11, 0, 714 }, { 14, 0, 281 },
- { 8, 10, 735 }, { 6, 0, 1961 }, { 7, 11, 1405 }, { 4, 11, 10 },
- { 7, 11, 917 }, { 11, 11, 786 }, { 5, 10, 132 }, { 9, 10, 486 },
- { 9, 10, 715 }, { 10, 10, 458 }, { 11, 10, 373 }, { 11, 10, 668 },
- { 11, 10, 795 }, { 11, 10, 897 }, { 12, 10, 272 }, { 12, 10, 424 },
- { 12, 10, 539 }, { 12, 10, 558 }, { 14, 10, 245 }, { 14, 10, 263 },
- { 14, 10, 264 }, { 14, 10, 393 }, { 14, 10, 403 }, { 11, 0, 91 },
- { 13, 0, 129 }, { 15, 0, 101 }, { 17, 0, 125 }, { 7, 0, 1132 },
- { 4, 0, 494 }, { 6, 0, 74 }, { 7, 0, 44 }, { 7, 0, 407 },
- { 12, 0, 17 }, { 15, 0, 5 }, { 20, 0, 11 }, { 5, 10, 379 },
- { 5, 0, 270 }, { 5, 11, 684 }, { 6, 10, 89 }, { 6, 10, 400 },
- { 7, 10, 1569 }, { 7, 10, 1623 }, { 7, 10, 1850 }, { 8, 10, 218 },
- { 8, 10, 422 }, { 9, 10, 570 }, { 10, 10, 626 }, { 4, 0, 276 },
- { 5, 0, 296 }, { 6, 0, 1523 }, { 6, 11, 27 }, { 6, 10, 387 },
- { 7, 10, 882 }, { 13, 10, 111 }, { 6, 10, 224 }, { 7, 10, 877 },
- { 9, 10, 647 }, { 7, 10, 790 }, { 4, 0, 7 }, { 5, 0, 90 },
- { 5, 0, 158 }, { 6, 0, 542 }, { 7, 0, 221 }, { 7, 0, 1574 },
- { 9, 0, 490 }, { 10, 0, 540 }, { 11, 0, 443 }, { 11, 0, 757 },
- { 7, 0, 588 }, { 9, 0, 175 }, { 10, 0, 530 }, { 7, 10, 394 },
- { 14, 11, 23 }, { 6, 0, 786 }, { 7, 0, 580 }, { 7, 0, 88 },
- { 8, 0, 627 }, { 5, 0, 872 }, { 6, 0, 57 }, { 7, 0, 471 },
- { 9, 0, 447 }, { 9, 0, 454 }, { 6, 11, 342 }, { 6, 11, 496 },
- { 8, 11, 275 }, { 9, 11, 206 }, { 4, 11, 909 }, { 5, 11, 940 },
- { 6, 0, 735 }, { 4, 11, 891 }, { 8, 0, 845 }, { 8, 0, 916 },
- { 7, 10, 1409 }, { 5, 0, 31 }, { 6, 0, 614 }, { 11, 0, 458 },
- { 12, 0, 15 }, { 12, 0, 432 }, { 8, 0, 330 }, { 12, 0, 477 },
- { 4, 0, 530 }, { 5, 0, 521 }, { 7, 0, 1200 }, { 10, 0, 460 },
- { 4, 11, 687 }, { 6, 0, 424 }, { 7, 0, 1866 }, { 9, 0, 569 },
- { 12, 0, 12 }, { 12, 0, 81 }, { 12, 0, 319 }, { 13, 0, 69 },
- { 14, 0, 259 }, { 16, 0, 87 }, { 17, 0, 1 }, { 17, 0, 21 },
- { 17, 0, 24 }, { 18, 0, 15 }, { 18, 0, 56 }, { 18, 0, 59 },
- { 18, 0, 127 }, { 18, 0, 154 }, { 19, 0, 19 }, { 20, 0, 31 },
- { 7, 0, 1302 }, { 8, 10, 38 }, { 6, 11, 253 }, { 5, 10, 261 },
- { 7, 10, 78 }, { 7, 10, 199 }, { 8, 10, 815 }, { 9, 10, 126 },
- { 10, 10, 342 }, { 5, 0, 595 }, { 7, 0, 1863 }, { 6, 11, 41 },
- { 13, 11, 160 }, { 5, 0, 13 }, { 6, 0, 142 }, { 6, 0, 97 },
- { 7, 0, 116 }, { 8, 0, 322 }, { 8, 0, 755 }, { 9, 0, 548 },
- { 10, 0, 714 }, { 11, 0, 884 }, { 13, 0, 324 }, { 7, 11, 1304 },
- { 10, 11, 477 }, { 4, 10, 628 }, { 6, 11, 1718 }, { 7, 10, 266 },
- { 8, 10, 804 }, { 7, 10, 208 }, { 7, 0, 1021 }, { 6, 10, 79 },
- { 7, 10, 1519 }, { 7, 0, 1472 }, { 7, 0, 1554 }, { 6, 11, 362 },
- { 18, 11, 51 }, { 7, 0, 1071 }, { 7, 0, 1541 }, { 7, 0, 1767 },
- { 7, 0, 1806 }, { 11, 0, 162 }, { 11, 0, 242 }, { 11, 0, 452 },
- { 12, 0, 605 }, { 15, 0, 26 }, { 16, 0, 44 }, { 8, 10, 741 },
- { 5, 11, 115 }, { 17, 0, 115 }, { 6, 10, 376 }, { 6, 0, 1406 },
- { 6, 0, 1543 }, { 5, 11, 193 }, { 12, 11, 178 }, { 13, 11, 130 },
- { 17, 11, 84 }, { 7, 0, 1111 }, { 8, 0, 1 }, { 9, 0, 650 },
- { 10, 0, 326 }, { 5, 11, 705 }, { 9, 11, 606 }, { 5, 0, 488 },
- { 6, 0, 527 }, { 7, 0, 489 }, { 7, 0, 1636 }, { 8, 0, 121 },
- { 8, 0, 144 }, { 8, 0, 359 }, { 9, 0, 193 }, { 9, 0, 241 },
- { 9, 0, 336 }, { 9, 0, 882 }, { 11, 0, 266 }, { 11, 0, 372 },
- { 11, 0, 944 }, { 12, 0, 401 }, { 12, 0, 641 }, { 7, 11, 174 },
- { 6, 0, 267 }, { 7, 10, 244 }, { 7, 10, 632 }, { 7, 10, 1609 },
- { 8, 10, 178 }, { 8, 10, 638 }, { 13, 10, 58 }, { 6, 0, 1983 },
- { 6, 0, 1155 }, { 6, 0, 1575 }, { 6, 0, 1438 }, { 9, 0, 31 },
- { 10, 0, 244 }, { 10, 0, 699 }, { 12, 0, 149 }, { 13, 0, 497 },
- { 5, 0, 377 }, { 4, 11, 122 }, { 5, 11, 796 }, { 5, 11, 952 },
- { 6, 11, 1660 }, { 6, 11, 1671 }, { 8, 11, 567 }, { 9, 11, 687 },
- { 9, 11, 742 }, { 10, 11, 686 }, { 11, 11, 356 }, { 11, 11, 682 },
- { 12, 11, 281 }, { 17, 0, 101 }, { 11, 11, 0 }, { 16, 11, 78 },
- { 5, 11, 179 }, { 5, 10, 791 }, { 7, 11, 1095 }, { 7, 11, 1213 },
- { 8, 11, 372 }, { 9, 11, 122 }, { 10, 11, 175 }, { 7, 10, 686 },
- { 8, 10, 33 }, { 8, 10, 238 }, { 10, 10, 616 }, { 11, 10, 467 },
- { 11, 10, 881 }, { 13, 10, 217 }, { 13, 10, 253 }, { 14, 10, 268 },
- { 9, 0, 476 }, { 4, 11, 66 }, { 7, 11, 722 }, { 7, 11, 904 },
- { 7, 11, 352 }, { 9, 11, 684 }, { 7, 0, 2023 }, { 7, 0, 1836 },
- { 4, 10, 447 }, { 5, 0, 843 }, { 16, 0, 35 }, { 9, 11, 779 },
- { 13, 11, 35 }, { 4, 10, 128 }, { 5, 10, 415 }, { 6, 10, 462 },
- { 7, 10, 294 }, { 7, 10, 578 }, { 10, 10, 710 }, { 11, 10, 86 },
- { 4, 0, 554 }, { 5, 0, 536 }, { 8, 10, 587 }, { 5, 0, 207 },
- { 9, 0, 79 }, { 11, 0, 625 }, { 17, 0, 7 }, { 7, 0, 1371 },
- { 6, 10, 427 }, { 10, 10, 692 }, { 4, 0, 424 }, { 4, 10, 195 },
- { 7, 10, 802 }, { 8, 0, 785 }, { 5, 11, 564 }, { 7, 0, 336 },
- { 4, 0, 896 }, { 6, 0, 1777 }, { 6, 11, 556 }, { 9, 11, 103 },
- { 6, 10, 1683 }, { 7, 11, 544 }, { 8, 11, 719 }, { 10, 11, 61 },
- { 10, 10, 472 }, { 4, 11, 5 }, { 5, 11, 498 }, { 8, 11, 637 },
- { 7, 0, 750 }, { 9, 0, 223 }, { 11, 0, 27 }, { 11, 0, 466 },
- { 12, 0, 624 }, { 14, 0, 265 }, { 18, 0, 61 }, { 12, 0, 238 },
- { 18, 0, 155 }, { 12, 11, 238 }, { 18, 11, 155 }, { 23, 10, 28 },
- { 5, 11, 927 }, { 12, 0, 383 }, { 5, 10, 3 }, { 8, 10, 578 },
- { 9, 10, 118 }, { 10, 10, 705 }, { 13, 10, 279 }, { 4, 11, 893 },
- { 5, 11, 780 }, { 5, 11, 893 }, { 4, 0, 603 }, { 5, 0, 661 },
- { 4, 0, 11 }, { 6, 0, 128 }, { 7, 0, 231 }, { 7, 0, 1533 },
- { 10, 0, 725 }, { 5, 10, 229 }, { 5, 11, 238 }, { 7, 11, 1350 },
- { 8, 10, 102 }, { 10, 10, 578 }, { 10, 10, 672 }, { 12, 10, 496 },
- { 13, 10, 408 }, { 14, 10, 121 }, { 17, 10, 106 }, { 4, 0, 476 },
- { 6, 0, 1552 }, { 6, 11, 1729 }, { 8, 10, 115 }, { 8, 10, 350 },
- { 9, 10, 489 }, { 10, 10, 128 }, { 11, 10, 306 }, { 12, 10, 373 },
- { 14, 10, 30 }, { 17, 10, 79 }, { 19, 10, 80 }, { 22, 10, 55 },
- { 7, 0, 1807 }, { 4, 0, 680 }, { 4, 11, 60 }, { 7, 11, 760 },
- { 7, 11, 1800 }, { 8, 11, 314 }, { 9, 11, 700 }, { 11, 11, 487 },
- { 4, 10, 230 }, { 5, 10, 702 }, { 20, 11, 94 }, { 4, 11, 228 },
- { 11, 0, 435 }, { 9, 0, 20 }, { 10, 0, 324 }, { 10, 0, 807 },
- { 11, 0, 488 }, { 6, 10, 1728 }, { 8, 11, 419 }, { 4, 10, 484 },
- { 18, 10, 26 }, { 19, 10, 42 }, { 20, 10, 43 }, { 21, 10, 0 },
- { 23, 10, 27 }, { 24, 10, 14 }, { 7, 0, 1431 }, { 5, 11, 828 },
- { 5, 0, 112 }, { 6, 0, 103 }, { 6, 0, 150 }, { 7, 0, 1303 },
- { 9, 0, 292 }, { 10, 0, 481 }, { 20, 0, 13 }, { 7, 11, 176 },
- { 7, 11, 178 }, { 7, 11, 1110 }, { 10, 11, 481 }, { 20, 11, 13 },
- { 10, 0, 356 }, { 4, 11, 51 }, { 5, 11, 39 }, { 6, 11, 4 },
- { 7, 11, 591 }, { 7, 11, 849 }, { 7, 11, 951 }, { 7, 11, 1129 },
- { 7, 11, 1613 }, { 7, 11, 1760 }, { 7, 11, 1988 }, { 9, 11, 434 },
- { 10, 11, 754 }, { 11, 11, 25 }, { 11, 11, 37 }, { 11, 11, 414 },
- { 6, 0, 1963 }, { 6, 0, 2000 }, { 4, 10, 633 }, { 6, 0, 1244 },
- { 5, 11, 902 }, { 7, 11, 928 }, { 12, 0, 18 }, { 10, 0, 204 },
- { 7, 11, 1173 }, { 6, 0, 867 }, { 4, 0, 708 }, { 8, 0, 15 },
- { 9, 0, 50 }, { 9, 0, 386 }, { 11, 0, 18 }, { 11, 0, 529 },
- { 12, 0, 228 }, { 6, 11, 270 }, { 4, 0, 563 }, { 7, 0, 109 },
- { 7, 0, 592 }, { 7, 0, 637 }, { 7, 0, 770 }, { 8, 0, 463 },
- { 9, 0, 60 }, { 9, 0, 335 }, { 9, 0, 904 }, { 10, 0, 73 },
- { 11, 0, 434 }, { 12, 0, 585 }, { 13, 0, 331 }, { 18, 0, 110 },
- { 20, 0, 60 }, { 4, 0, 502 }, { 14, 11, 359 }, { 19, 11, 52 },
- { 20, 11, 47 }, { 6, 11, 377 }, { 7, 11, 1025 }, { 9, 11, 613 },
- { 17, 11, 104 }, { 6, 0, 347 }, { 10, 0, 161 }, { 5, 10, 70 },
- { 5, 10, 622 }, { 6, 10, 334 }, { 7, 10, 1032 }, { 9, 10, 171 },
- { 11, 10, 26 }, { 11, 10, 213 }, { 11, 10, 637 }, { 11, 10, 707 },
- { 12, 10, 202 }, { 12, 10, 380 }, { 13, 10, 226 }, { 13, 10, 355 },
- { 14, 10, 222 }, { 17, 10, 42 }, { 4, 11, 416 }, { 4, 0, 33 },
- { 5, 0, 102 }, { 6, 0, 284 }, { 7, 0, 1079 }, { 7, 0, 1423 },
- { 7, 0, 1702 }, { 8, 0, 470 }, { 9, 0, 554 }, { 9, 0, 723 },
- { 11, 0, 333 }, { 14, 11, 372 }, { 5, 11, 152 }, { 5, 11, 197 },
- { 7, 11, 340 }, { 7, 11, 867 }, { 10, 11, 548 }, { 10, 11, 581 },
- { 11, 11, 6 }, { 12, 11, 3 }, { 12, 11, 19 }, { 14, 11, 110 },
- { 14, 11, 289 }, { 7, 0, 246 }, { 7, 0, 840 }, { 6, 0, 10 },
- { 8, 0, 571 }, { 9, 0, 739 }, { 15, 0, 91 }, { 6, 0, 465 },
- { 7, 0, 1465 }, { 4, 10, 23 }, { 4, 10, 141 }, { 5, 10, 313 },
- { 5, 10, 1014 }, { 6, 10, 50 }, { 7, 10, 142 }, { 7, 10, 559 },
- { 8, 10, 640 }, { 9, 10, 460 }, { 9, 10, 783 }, { 11, 10, 741 },
- { 12, 10, 183 }, { 13, 10, 488 }, { 5, 0, 626 }, { 8, 0, 614 },
- { 10, 0, 237 }, { 7, 11, 34 }, { 7, 11, 190 }, { 8, 11, 28 },
- { 8, 11, 141 }, { 8, 11, 444 }, { 8, 11, 811 }, { 9, 11, 468 },
- { 11, 11, 334 }, { 12, 11, 24 }, { 12, 11, 386 }, { 12, 11, 576 },
- { 5, 11, 757 }, { 5, 0, 18 }, { 6, 0, 526 }, { 13, 0, 24 },
- { 13, 0, 110 }, { 19, 0, 5 }, { 19, 0, 44 }, { 6, 0, 506 },
- { 6, 11, 506 }, { 7, 11, 1553 }, { 4, 0, 309 }, { 5, 0, 462 },
- { 7, 0, 970 }, { 7, 0, 1097 }, { 22, 0, 30 }, { 22, 0, 33 },
- { 7, 11, 1385 }, { 11, 11, 582 }, { 11, 11, 650 }, { 11, 11, 901 },
- { 11, 11, 949 }, { 12, 11, 232 }, { 12, 11, 236 }, { 13, 11, 413 },
- { 13, 11, 501 }, { 18, 11, 116 }, { 9, 0, 140 }, { 5, 10, 222 },
- { 10, 10, 534 }, { 6, 0, 1056 }, { 9, 10, 906 }, { 6, 0, 1704 },
- { 10, 10, 503 }, { 6, 0, 1036 }, { 5, 10, 154 }, { 7, 10, 1491 },
- { 10, 10, 379 }, { 10, 10, 485 }, { 4, 11, 383 }, { 5, 10, 716 },
- { 6, 0, 1315 }, { 5, 0, 86 }, { 7, 0, 743 }, { 9, 0, 85 },
- { 10, 0, 281 }, { 10, 0, 432 }, { 11, 0, 825 }, { 12, 0, 251 },
- { 13, 0, 118 }, { 14, 0, 378 }, { 8, 0, 264 }, { 4, 10, 91 },
- { 5, 10, 388 }, { 5, 10, 845 }, { 6, 10, 206 }, { 6, 10, 252 },
- { 6, 10, 365 }, { 7, 10, 136 }, { 7, 10, 531 }, { 8, 10, 621 },
- { 5, 0, 524 }, { 5, 0, 744 }, { 5, 11, 277 }, { 13, 11, 247 },
- { 4, 11, 435 }, { 10, 0, 107 }, { 12, 0, 436 }, { 4, 0, 927 },
- { 10, 0, 123 }, { 12, 0, 670 }, { 18, 0, 94 }, { 7, 0, 1149 },
- { 9, 0, 156 }, { 10, 0, 957 }, { 5, 11, 265 }, { 6, 11, 212 },
- { 7, 11, 28 }, { 5, 0, 778 }, { 5, 0, 502 }, { 8, 0, 196 },
- { 10, 0, 283 }, { 11, 0, 406 }, { 7, 10, 576 }, { 8, 11, 535 },
- { 6, 0, 1312 }, { 5, 10, 771 }, { 5, 10, 863 }, { 5, 10, 898 },
- { 6, 10, 1632 }, { 6, 10, 1644 }, { 6, 10, 1780 }, { 5, 0, 855 },
- { 5, 10, 331 }, { 7, 11, 1487 }, { 4, 11, 702 }, { 5, 11, 808 },
- { 7, 11, 2045 }, { 7, 0, 1400 }, { 9, 0, 446 }, { 10, 0, 45 },
- { 12, 10, 632 }, { 4, 0, 1003 }, { 5, 11, 166 }, { 8, 11, 739 },
- { 12, 11, 511 }, { 5, 10, 107 }, { 7, 10, 201 }, { 8, 10, 518 },
- { 6, 10, 446 }, { 7, 10, 1817 }, { 6, 0, 1532 }, { 6, 0, 1097 },
- { 4, 11, 119 }, { 5, 11, 170 }, { 5, 11, 447 }, { 7, 11, 1708 },
- { 7, 11, 1889 }, { 9, 11, 357 }, { 9, 11, 719 }, { 12, 11, 486 },
- { 12, 11, 596 }, { 9, 10, 851 }, { 13, 10, 510 }, { 7, 0, 612 },
- { 8, 0, 545 }, { 8, 0, 568 }, { 8, 0, 642 }, { 9, 0, 717 },
- { 10, 0, 541 }, { 10, 0, 763 }, { 11, 0, 449 }, { 12, 0, 489 },
- { 13, 0, 153 }, { 13, 0, 296 }, { 14, 0, 138 }, { 14, 0, 392 },
- { 15, 0, 50 }, { 16, 0, 6 }, { 16, 0, 12 }, { 20, 0, 9 },
- { 4, 10, 504 }, { 4, 11, 450 }, { 7, 11, 1158 }, { 11, 0, 54 },
- { 13, 0, 173 }, { 13, 0, 294 }, { 5, 10, 883 }, { 5, 10, 975 },
- { 8, 10, 392 }, { 20, 10, 7 }, { 13, 0, 455 }, { 15, 0, 99 },
- { 15, 0, 129 }, { 16, 0, 68 }, { 7, 0, 172 }, { 4, 11, 754 },
- { 5, 10, 922 }, { 6, 10, 1707 }, { 6, 0, 1029 }, { 17, 11, 39 },
- { 20, 11, 36 }, { 4, 0, 568 }, { 5, 10, 993 }, { 7, 10, 515 },
- { 9, 10, 91 }, { 4, 0, 732 }, { 10, 0, 617 }, { 10, 11, 617 },
- { 6, 0, 974 }, { 7, 0, 989 }, { 10, 0, 377 }, { 12, 0, 363 },
- { 13, 0, 68 }, { 13, 0, 94 }, { 14, 0, 108 }, { 14, 0, 306 },
- { 8, 0, 733 }, { 4, 0, 428 }, { 7, 0, 1789 }, { 7, 11, 1062 },
- { 7, 0, 2015 }, { 12, 0, 665 }, { 7, 10, 1433 }, { 5, 0, 287 },
- { 7, 10, 921 }, { 8, 10, 580 }, { 8, 10, 593 }, { 8, 10, 630 },
- { 10, 10, 28 }, { 10, 0, 806 }, { 4, 10, 911 }, { 5, 10, 867 },
- { 5, 10, 1013 }, { 7, 10, 2034 }, { 8, 10, 798 }, { 8, 10, 813 },
- { 6, 0, 1539 }, { 8, 11, 523 }, { 22, 11, 34 }, { 7, 11, 740 },
- { 7, 11, 238 }, { 7, 11, 2033 }, { 8, 11, 120 }, { 8, 11, 188 },
- { 8, 11, 659 }, { 9, 11, 598 }, { 10, 11, 466 }, { 12, 11, 342 },
- { 12, 11, 588 }, { 13, 11, 503 }, { 14, 11, 246 }, { 15, 11, 92 },
- { 7, 0, 1563 }, { 13, 0, 182 }, { 5, 10, 135 }, { 6, 10, 519 },
- { 7, 10, 1722 }, { 10, 10, 271 }, { 11, 10, 261 }, { 17, 10, 54 },
- { 14, 10, 338 }, { 20, 10, 81 }, { 7, 0, 484 }, { 4, 10, 300 },
- { 5, 10, 436 }, { 17, 11, 114 }, { 6, 0, 1623 }, { 6, 0, 1681 },
- { 5, 11, 640 }, { 4, 11, 201 }, { 7, 11, 1744 }, { 8, 11, 602 },
- { 11, 11, 247 }, { 11, 11, 826 }, { 17, 11, 65 }, { 8, 11, 164 },
- { 18, 11, 62 }, { 6, 0, 1833 }, { 6, 0, 1861 }, { 8, 0, 878 },
- { 6, 0, 1569 }, { 8, 10, 357 }, { 10, 10, 745 }, { 14, 10, 426 },
- { 17, 10, 94 }, { 19, 10, 57 }, { 12, 0, 93 }, { 12, 0, 501 },
- { 13, 0, 362 }, { 14, 0, 151 }, { 15, 0, 40 }, { 15, 0, 59 },
- { 16, 0, 46 }, { 17, 0, 25 }, { 18, 0, 14 }, { 18, 0, 134 },
- { 19, 0, 25 }, { 19, 0, 69 }, { 20, 0, 16 }, { 20, 0, 19 },
- { 20, 0, 66 }, { 21, 0, 23 }, { 21, 0, 25 }, { 22, 0, 42 },
- { 6, 0, 1748 }, { 8, 0, 715 }, { 9, 0, 802 }, { 10, 0, 46 },
- { 10, 0, 819 }, { 13, 0, 308 }, { 14, 0, 351 }, { 14, 0, 363 },
- { 18, 0, 67 }, { 4, 0, 994 }, { 4, 0, 63 }, { 5, 0, 347 },
- { 4, 0, 591 }, { 5, 0, 749 }, { 7, 11, 1577 }, { 10, 11, 304 },
- { 10, 11, 549 }, { 11, 11, 424 }, { 12, 11, 365 }, { 13, 11, 220 },
- { 13, 11, 240 }, { 14, 11, 33 }, { 5, 0, 366 }, { 7, 0, 557 },
- { 12, 0, 547 }, { 14, 0, 86 }, { 5, 10, 387 }, { 7, 0, 1747 },
- { 4, 11, 907 }, { 5, 11, 100 }, { 10, 11, 329 }, { 12, 11, 416 },
- { 21, 11, 29 }, { 4, 10, 6 }, { 5, 10, 708 }, { 8, 10, 75 },
- { 7, 10, 1351 }, { 9, 10, 581 }, { 10, 10, 639 }, { 11, 10, 453 },
- { 12, 10, 584 }, { 7, 0, 89 }, { 4, 10, 303 }, { 10, 10, 772 },
- { 4, 11, 176 }, { 5, 11, 636 }, { 5, 11, 998 }, { 8, 11, 26 },
- { 9, 11, 358 }, { 7, 11, 9 }, { 7, 11, 1508 }, { 9, 11, 317 },
- { 10, 11, 210 }, { 10, 11, 292 }, { 10, 11, 533 }, { 11, 11, 555 },
- { 12, 11, 526 }, { 12, 11, 607 }, { 13, 11, 263 }, { 13, 11, 459 },
- { 14, 11, 271 }, { 6, 0, 1463 }, { 6, 0, 772 }, { 6, 0, 1137 },
- { 11, 11, 595 }, { 7, 0, 977 }, { 11, 11, 66 }, { 10, 0, 893 },
- { 20, 0, 48 }, { 20, 11, 48 }, { 5, 0, 824 }, { 5, 0, 941 },
- { 6, 11, 295 }, { 7, 0, 1543 }, { 7, 0, 1785 }, { 10, 0, 690 },
- { 4, 10, 106 }, { 11, 10, 717 }, { 7, 0, 440 }, { 8, 0, 230 },
- { 11, 0, 106 }, { 5, 10, 890 }, { 5, 10, 988 }, { 6, 10, 626 },
- { 14, 10, 431 }, { 10, 11, 127 }, { 13, 11, 27 }, { 17, 0, 32 },
- { 10, 10, 706 }, { 22, 10, 44 }, { 4, 0, 216 }, { 9, 0, 332 },
- { 4, 10, 698 }, { 8, 11, 119 }, { 11, 11, 267 }, { 10, 10, 17 },
- { 11, 11, 526 }, { 11, 11, 939 }, { 13, 11, 290 }, { 7, 11, 1167 },
- { 11, 11, 934 }, { 13, 11, 391 }, { 17, 11, 76 }, { 11, 11, 39 },
- { 6, 10, 84 }, { 4, 0, 914 }, { 5, 0, 800 }, { 5, 0, 852 },
- { 10, 0, 416 }, { 13, 0, 115 }, { 7, 0, 564 }, { 14, 0, 168 },
- { 4, 0, 918 }, { 5, 0, 876 }, { 6, 0, 1764 }, { 24, 0, 3 },
- { 4, 0, 92 }, { 5, 0, 274 }, { 7, 11, 126 }, { 8, 11, 84 },
- { 12, 10, 498 }, { 8, 11, 790 }, { 8, 0, 501 }, { 5, 10, 986 },
- { 6, 10, 130 }, { 7, 10, 1582 }, { 8, 10, 458 }, { 10, 10, 101 },
- { 10, 10, 318 }, { 10, 10, 823 }, { 6, 11, 64 }, { 12, 11, 377 },
- { 13, 11, 309 }, { 5, 0, 743 }, { 10, 0, 851 }, { 4, 0, 49 },
- { 7, 0, 280 }, { 7, 0, 1633 }, { 6, 0, 879 }, { 8, 0, 47 },
- { 7, 10, 1644 }, { 9, 10, 129 }, { 4, 0, 865 }, { 6, 0, 1202 },
- { 9, 11, 34 }, { 11, 11, 484 }, { 7, 10, 997 }, { 5, 0, 272 },
- { 5, 0, 908 }, { 5, 0, 942 }, { 8, 0, 197 }, { 9, 0, 47 },
- { 11, 0, 538 }, { 11, 0, 742 }, { 6, 11, 1700 }, { 7, 11, 26 },
- { 7, 11, 293 }, { 7, 11, 382 }, { 7, 11, 1026 }, { 7, 11, 1087 },
- { 7, 11, 2027 }, { 8, 11, 24 }, { 8, 11, 114 }, { 8, 11, 252 },
- { 8, 11, 727 }, { 8, 11, 729 }, { 9, 11, 30 }, { 9, 11, 199 },
- { 9, 11, 231 }, { 9, 11, 251 }, { 9, 11, 334 }, { 9, 11, 361 },
- { 9, 11, 488 }, { 9, 11, 712 }, { 10, 11, 55 }, { 10, 11, 60 },
- { 10, 11, 232 }, { 10, 11, 332 }, { 10, 11, 384 }, { 10, 11, 396 },
- { 10, 11, 504 }, { 10, 11, 542 }, { 10, 11, 652 }, { 11, 11, 20 },
- { 11, 11, 48 }, { 11, 11, 207 }, { 11, 11, 291 }, { 11, 11, 298 },
- { 11, 11, 342 }, { 11, 11, 365 }, { 11, 11, 394 }, { 11, 11, 620 },
- { 11, 11, 705 }, { 11, 11, 1017 }, { 12, 11, 123 }, { 12, 11, 340 },
- { 12, 11, 406 }, { 12, 11, 643 }, { 13, 11, 61 }, { 13, 11, 269 },
- { 13, 11, 311 }, { 13, 11, 319 }, { 13, 11, 486 }, { 14, 11, 234 },
- { 15, 11, 62 }, { 15, 11, 85 }, { 16, 11, 71 }, { 18, 11, 119 },
- { 20, 11, 105 }, { 6, 0, 1455 }, { 22, 11, 37 }, { 7, 10, 1927 },
- { 7, 0, 1911 }, { 9, 0, 891 }, { 7, 10, 1756 }, { 9, 10, 98 },
- { 7, 10, 1046 }, { 11, 10, 160 }, { 4, 0, 761 }, { 6, 11, 379 },
- { 7, 11, 270 }, { 7, 11, 1116 }, { 8, 11, 176 }, { 8, 11, 183 },
- { 9, 11, 432 }, { 9, 11, 661 }, { 12, 11, 247 }, { 12, 11, 617 },
- { 18, 11, 125 }, { 6, 10, 45 }, { 7, 10, 433 }, { 8, 10, 129 },
- { 9, 10, 21 }, { 10, 10, 392 }, { 11, 10, 79 }, { 12, 10, 499 },
- { 13, 10, 199 }, { 13, 10, 451 }, { 4, 0, 407 }, { 5, 11, 792 },
- { 5, 11, 900 }, { 4, 0, 560 }, { 7, 0, 183 }, { 13, 0, 490 },
- { 7, 10, 558 }, { 8, 10, 353 }, { 4, 0, 475 }, { 6, 0, 731 },
- { 11, 0, 35 }, { 13, 0, 71 }, { 13, 0, 177 }, { 14, 0, 422 },
- { 5, 10, 785 }, { 8, 10, 81 }, { 9, 10, 189 }, { 9, 10, 201 },
- { 11, 10, 478 }, { 11, 10, 712 }, { 13, 10, 338 }, { 4, 0, 418 },
- { 4, 0, 819 }, { 5, 10, 353 }, { 23, 10, 26 }, { 4, 11, 901 },
- { 5, 11, 776 }, { 4, 0, 575 }, { 7, 0, 818 }, { 16, 0, 92 },
- { 17, 0, 14 }, { 17, 0, 45 }, { 18, 0, 75 }, { 20, 0, 18 },
- { 6, 0, 222 }, { 7, 0, 636 }, { 7, 0, 1620 }, { 8, 0, 409 },
- { 9, 0, 693 }, { 11, 0, 77 }, { 6, 10, 25 }, { 7, 10, 855 },
- { 7, 10, 1258 }, { 16, 10, 32 }, { 6, 0, 1880 }, { 6, 0, 1887 },
- { 6, 0, 1918 }, { 6, 0, 1924 }, { 9, 0, 967 }, { 9, 0, 995 },
- { 9, 0, 1015 }, { 12, 0, 826 }, { 12, 0, 849 }, { 12, 0, 857 },
- { 12, 0, 860 }, { 12, 0, 886 }, { 12, 0, 932 }, { 18, 0, 228 },
- { 18, 0, 231 }, { 18, 0, 240 }, { 6, 0, 633 }, { 6, 0, 1308 },
- { 4, 11, 37 }, { 5, 11, 334 }, { 7, 11, 1253 }, { 10, 0, 86 },
- { 4, 10, 4 }, { 7, 10, 1118 }, { 7, 10, 1320 }, { 7, 10, 1706 },
- { 8, 10, 277 }, { 9, 10, 622 }, { 11, 10, 724 }, { 12, 10, 350 },
- { 12, 10, 397 }, { 13, 10, 28 }, { 13, 10, 159 }, { 15, 10, 89 },
- { 18, 10, 5 }, { 19, 10, 9 }, { 20, 10, 34 }, { 22, 10, 47 },
- { 4, 11, 508 }, { 9, 11, 448 }, { 12, 11, 107 }, { 18, 11, 31 },
- { 4, 0, 817 }, { 6, 0, 663 }, { 5, 0, 882 }, { 6, 0, 914 },
- { 4, 11, 540 }, { 4, 11, 533 }, { 8, 11, 608 }, { 8, 0, 885 },
- { 10, 0, 865 }, { 4, 0, 426 }, { 6, 0, 58 }, { 7, 0, 745 },
- { 7, 0, 1969 }, { 8, 0, 399 }, { 8, 0, 675 }, { 9, 0, 479 },
- { 9, 0, 731 }, { 10, 0, 330 }, { 10, 0, 593 }, { 10, 0, 817 },
- { 11, 0, 32 }, { 11, 0, 133 }, { 11, 0, 221 }, { 17, 0, 68 },
- { 6, 10, 255 }, { 7, 0, 102 }, { 9, 0, 538 }, { 9, 10, 216 },
- { 7, 11, 253 }, { 8, 11, 549 }, { 7, 11, 912 }, { 9, 10, 183 },
- { 11, 10, 286 }, { 11, 10, 956 }, { 23, 10, 3 }, { 8, 11, 527 },
- { 18, 11, 60 }, { 19, 11, 24 }, { 4, 10, 536 }, { 7, 10, 1141 },
- { 10, 10, 723 }, { 11, 10, 371 }, { 5, 11, 920 }, { 7, 0, 876 },
- { 7, 10, 285 }, { 7, 10, 560 }, { 4, 10, 690 }, { 14, 11, 126 },
- { 11, 10, 33 }, { 12, 10, 571 }, { 21, 10, 1 }, { 5, 0, 566 },
- { 9, 0, 139 }, { 10, 0, 399 }, { 11, 0, 469 }, { 12, 0, 634 },
- { 13, 0, 223 }, { 4, 11, 483 }, { 6, 0, 48 }, { 7, 0, 63 },
- { 18, 0, 12 }, { 7, 10, 1862 }, { 12, 10, 491 }, { 12, 10, 520 },
- { 13, 10, 383 }, { 14, 10, 244 }, { 7, 11, 1665 }, { 4, 11, 448 },
- { 9, 11, 495 }, { 18, 11, 104 }, { 6, 0, 114 }, { 7, 0, 1224 },
- { 7, 0, 1556 }, { 8, 0, 3 }, { 4, 10, 190 }, { 5, 10, 554 },
- { 8, 0, 576 }, { 9, 0, 267 }, { 5, 10, 1001 }, { 5, 10, 446 },
- { 5, 0, 933 }, { 11, 11, 1009 }, { 8, 11, 653 }, { 13, 11, 93 },
- { 19, 11, 14 }, { 6, 0, 692 }, { 6, 0, 821 }, { 6, 0, 1077 },
- { 5, 11, 172 }, { 7, 11, 801 }, { 10, 0, 752 }, { 4, 0, 375 },
- { 6, 0, 638 }, { 6, 0, 1011 }, { 12, 11, 540 }, { 9, 0, 96 },
- { 5, 11, 260 }, { 11, 11, 587 }, { 7, 10, 1231 }, { 12, 0, 30 },
- { 13, 0, 148 }, { 14, 0, 87 }, { 14, 0, 182 }, { 16, 0, 42 },
- { 20, 0, 70 }, { 4, 10, 304 }, { 6, 0, 1398 }, { 7, 0, 56 },
- { 7, 0, 1989 }, { 8, 0, 337 }, { 8, 0, 738 }, { 9, 0, 600 },
- { 12, 0, 37 }, { 13, 0, 447 }, { 14, 0, 92 }, { 10, 0, 666 },
- { 5, 0, 394 }, { 7, 0, 487 }, { 8, 0, 246 }, { 9, 0, 437 },
- { 6, 10, 53 }, { 6, 10, 199 }, { 7, 10, 1408 }, { 8, 10, 32 },
- { 8, 10, 93 }, { 10, 10, 397 }, { 10, 10, 629 }, { 11, 10, 593 },
- { 11, 10, 763 }, { 13, 10, 326 }, { 17, 10, 35 }, { 6, 10, 105 },
- { 9, 0, 320 }, { 10, 0, 506 }, { 10, 10, 794 }, { 7, 11, 57 },
- { 8, 11, 167 }, { 8, 11, 375 }, { 9, 11, 82 }, { 9, 11, 561 },
- { 10, 11, 620 }, { 10, 11, 770 }, { 11, 10, 704 }, { 13, 10, 396 },
- { 6, 0, 1003 }, { 5, 10, 114 }, { 5, 10, 255 }, { 13, 10, 285 },
- { 7, 0, 866 }, { 7, 0, 1163 }, { 5, 11, 531 }, { 4, 0, 328 },
- { 7, 10, 2035 }, { 8, 10, 19 }, { 9, 10, 89 }, { 10, 10, 831 },
- { 8, 11, 194 }, { 8, 11, 756 }, { 8, 0, 1000 }, { 5, 11, 453 },
- { 6, 11, 441 }, { 4, 0, 101 }, { 5, 0, 833 }, { 7, 0, 1171 },
- { 8, 0, 744 }, { 5, 0, 726 }, { 8, 10, 746 }, { 10, 0, 176 },
- { 6, 0, 9 }, { 6, 0, 397 }, { 7, 0, 53 }, { 7, 0, 1742 },
- { 10, 0, 632 }, { 11, 0, 828 }, { 12, 0, 146 }, { 7, 11, 22 },
- { 17, 11, 64 }, { 4, 0, 839 }, { 11, 0, 417 }, { 12, 0, 223 },
- { 12, 0, 265 }, { 4, 11, 102 }, { 7, 11, 815 }, { 7, 11, 1699 },
- { 11, 11, 964 }, { 5, 10, 955 }, { 8, 10, 814 }, { 6, 0, 1931 },
- { 6, 0, 2007 }, { 18, 0, 246 }, { 18, 0, 247 }, { 8, 0, 198 },
- { 11, 0, 29 }, { 12, 0, 534 }, { 7, 0, 1771 }, { 6, 0, 846 },
- { 7, 11, 1010 }, { 11, 11, 733 }, { 11, 11, 759 }, { 12, 11, 563 },
- { 13, 11, 34 }, { 14, 11, 101 }, { 18, 11, 45 }, { 18, 11, 129 },
- { 4, 0, 186 }, { 5, 0, 157 }, { 8, 0, 168 }, { 10, 0, 6 },
- { 4, 11, 899 }, { 5, 10, 56 }, { 20, 10, 100 }, { 5, 0, 875 },
- { 5, 0, 773 }, { 5, 0, 991 }, { 6, 0, 1635 }, { 6, 0, 1788 },
- { 6, 0, 1274 }, { 9, 0, 477 }, { 13, 0, 78 }, { 4, 0, 639 },
- { 7, 0, 111 }, { 8, 0, 581 }, { 12, 0, 177 }, { 6, 11, 52 },
- { 9, 11, 104 }, { 9, 11, 559 }, { 10, 10, 4 }, { 10, 10, 13 },
- { 11, 10, 638 }, { 12, 11, 308 }, { 19, 11, 87 }, { 20, 10, 57 },
- { 4, 11, 604 }, { 4, 11, 301 }, { 5, 10, 738 }, { 5, 10, 758 },
- { 6, 0, 1747 }, { 7, 11, 1440 }, { 11, 11, 854 }, { 11, 11, 872 },
- { 11, 11, 921 }, { 12, 11, 551 }, { 13, 11, 472 }, { 14, 11, 367 },
- { 7, 0, 1364 }, { 7, 0, 1907 }, { 13, 0, 158 }, { 6, 0, 873 },
- { 4, 0, 404 }, { 4, 0, 659 }, { 7, 0, 552 }, { 7, 0, 675 },
- { 7, 10, 1112 }, { 11, 10, 328 }, { 7, 11, 508 }, { 9, 10, 133 },
- { 5, 0, 391 }, { 5, 10, 110 }, { 6, 10, 169 }, { 6, 10, 1702 },
- { 7, 10, 400 }, { 8, 10, 538 }, { 9, 10, 184 }, { 9, 10, 524 },
- { 12, 10, 218 }, { 6, 11, 310 }, { 7, 11, 1849 }, { 8, 11, 72 },
- { 8, 11, 272 }, { 8, 11, 431 }, { 9, 11, 12 }, { 9, 11, 351 },
- { 10, 11, 563 }, { 10, 11, 630 }, { 10, 11, 810 }, { 11, 11, 367 },
- { 11, 11, 599 }, { 11, 11, 686 }, { 12, 11, 672 }, { 5, 0, 540 },
- { 6, 0, 1697 }, { 8, 0, 668 }, { 4, 0, 883 }, { 6, 0, 78 },
- { 12, 0, 628 }, { 18, 0, 79 }, { 6, 10, 133 }, { 9, 10, 353 },
- { 11, 10, 993 }, { 6, 11, 181 }, { 7, 11, 537 }, { 8, 11, 64 },
- { 9, 11, 127 }, { 10, 11, 496 }, { 12, 11, 510 }, { 13, 11, 384 },
- { 6, 10, 93 }, { 7, 10, 1422 }, { 7, 10, 1851 }, { 8, 10, 673 },
- { 9, 10, 529 }, { 12, 10, 43 }, { 9, 10, 371 }, { 6, 0, 1460 },
- { 6, 0, 962 }, { 4, 11, 244 }, { 7, 11, 233 }, { 9, 10, 25 },
- { 10, 10, 467 }, { 10, 10, 559 }, { 4, 10, 335 }, { 7, 10, 942 },
- { 5, 0, 460 }, { 7, 11, 334 }, { 6, 11, 1650 }, { 4, 0, 199 },
- { 11, 0, 34 }, { 5, 10, 601 }, { 8, 10, 39 }, { 10, 10, 773 },
- { 11, 10, 84 }, { 12, 10, 205 }, { 14, 10, 1 }, { 5, 10, 870 },
- { 6, 0, 388 }, { 14, 0, 474 }, { 20, 0, 120 }, { 5, 11, 369 },
- { 11, 0, 271 }, { 4, 0, 511 }, { 9, 0, 333 }, { 9, 0, 379 },
- { 10, 0, 602 }, { 11, 0, 441 }, { 11, 0, 723 }, { 11, 0, 976 },
- { 12, 0, 357 }, { 4, 10, 181 }, { 6, 0, 608 }, { 6, 10, 1652 },
- { 22, 0, 49 }, { 9, 11, 338 }, { 12, 0, 988 }, { 6, 0, 617 },
- { 5, 0, 938 }, { 8, 0, 707 }, { 4, 10, 97 }, { 5, 10, 147 },
- { 6, 10, 286 }, { 7, 10, 1362 }, { 13, 10, 176 }, { 6, 0, 756 },
- { 6, 0, 1149 }, { 5, 11, 896 }, { 6, 10, 375 }, { 7, 10, 169 },
- { 7, 10, 254 }, { 8, 10, 780 }, { 6, 0, 1583 }, { 7, 10, 1447 },
- { 11, 0, 285 }, { 7, 11, 1117 }, { 8, 11, 393 }, { 8, 11, 539 },
- { 7, 0, 344 }, { 6, 0, 469 }, { 7, 0, 1709 }, { 10, 0, 515 },
- { 5, 10, 629 }, { 7, 10, 1549 }, { 5, 11, 4 }, { 5, 11, 810 },
- { 6, 11, 13 }, { 6, 11, 538 }, { 6, 11, 1690 }, { 6, 11, 1726 },
- { 7, 11, 499 }, { 7, 11, 1819 }, { 8, 11, 148 }, { 8, 11, 696 },
- { 8, 11, 791 }, { 12, 11, 125 }, { 13, 11, 54 }, { 15, 11, 9 },
- { 7, 11, 1268 }, { 9, 0, 404 }, { 4, 0, 500 }, { 5, 0, 68 },
- { 6, 0, 383 }, { 11, 0, 216 }, { 11, 0, 340 }, { 4, 11, 925 },
- { 5, 11, 803 }, { 8, 11, 698 }, { 10, 11, 828 }, { 4, 0, 337 },
- { 6, 0, 353 }, { 7, 0, 1934 }, { 8, 0, 488 }, { 9, 0, 429 },
- { 7, 0, 236 }, { 7, 0, 1795 }, { 8, 0, 259 }, { 9, 0, 135 },
- { 9, 0, 177 }, { 9, 0, 860 }, { 10, 0, 825 }, { 11, 0, 115 },
- { 11, 0, 370 }, { 11, 0, 405 }, { 11, 0, 604 }, { 12, 0, 10 },
- { 12, 0, 667 }, { 12, 0, 669 }, { 13, 0, 76 }, { 14, 0, 310 },
- { 15, 0, 76 }, { 15, 0, 147 }, { 20, 0, 23 }, { 4, 0, 15 },
- { 4, 0, 490 }, { 5, 0, 22 }, { 6, 0, 244 }, { 7, 0, 40 },
- { 7, 0, 200 }, { 7, 0, 906 }, { 7, 0, 1199 }, { 9, 0, 616 },
- { 10, 0, 716 }, { 11, 0, 635 }, { 11, 0, 801 }, { 12, 0, 458 },
- { 12, 0, 756 }, { 4, 10, 420 }, { 6, 0, 1504 }, { 6, 0, 757 },
- { 5, 11, 383 }, { 6, 0, 1266 }, { 7, 0, 1735 }, { 5, 0, 598 },
- { 7, 0, 791 }, { 8, 0, 108 }, { 9, 0, 123 }, { 7, 10, 1570 },
- { 12, 10, 542 }, { 14, 11, 410 }, { 9, 11, 660 }, { 10, 11, 347 },
+static const DictWord kStaticDictionaryWords[31705] = {
+ { 0, 0, 0 }, { 8, 0, 1002 }, { 136, 0, 1015 }, { 4, 0, 683 },
+ { 4, 10, 325 }, { 138, 10, 125 }, { 7, 11, 572 }, { 9, 11, 592 },
+ { 11, 11, 680 }, { 11, 11, 842 }, { 11, 11, 924 }, { 12, 11, 356 },
+ { 12, 11, 550 }, { 13, 11, 317 }, { 13, 11, 370 }, { 13, 11, 469 },
+ { 13, 11, 471 }, { 14, 11, 397 }, { 18, 11, 69 }, { 146, 11, 145 },
+ { 134, 0, 1265 }, { 136, 11, 534 }, { 134, 0, 1431 }, { 11, 0, 138 },
+ { 140, 0, 40 }, { 4, 0, 155 }, { 7, 0, 1689 }, { 4, 10, 718 },
+ { 135, 10, 1216 }, { 4, 0, 245 }, { 5, 0, 151 }, { 5, 0, 741 },
+ { 6, 0, 1147 }, { 7, 0, 498 }, { 7, 0, 870 }, { 7, 0, 1542 },
+ { 12, 0, 213 }, { 14, 0, 36 }, { 14, 0, 391 }, { 17, 0, 111 },
+ { 18, 0, 6 }, { 18, 0, 46 }, { 18, 0, 151 }, { 19, 0, 36 },
+ { 20, 0, 32 }, { 20, 0, 56 }, { 20, 0, 69 }, { 20, 0, 102 },
+ { 21, 0, 4 }, { 22, 0, 8 }, { 22, 0, 10 }, { 22, 0, 14 },
+ { 150, 0, 31 }, { 4, 0, 624 }, { 135, 0, 1752 }, { 5, 10, 124 },
+ { 5, 10, 144 }, { 6, 10, 548 }, { 7, 10, 15 }, { 7, 10, 153 },
+ { 137, 10, 629 }, { 6, 0, 503 }, { 9, 0, 586 }, { 13, 0, 468 },
+ { 14, 0, 66 }, { 16, 0, 58 }, { 7, 10, 1531 }, { 8, 10, 416 },
+ { 9, 10, 275 }, { 10, 10, 100 }, { 11, 10, 658 }, { 11, 10, 979 },
+ { 12, 10, 86 }, { 14, 10, 207 }, { 15, 10, 20 }, { 143, 10, 25 },
+ { 5, 0, 603 }, { 7, 0, 1212 }, { 9, 0, 565 }, { 14, 0, 301 },
+ { 5, 10, 915 }, { 6, 10, 1783 }, { 7, 10, 211 }, { 7, 10, 1353 },
+ { 9, 10, 83 }, { 10, 10, 376 }, { 10, 10, 431 }, { 11, 10, 543 },
+ { 12, 10, 664 }, { 13, 10, 280 }, { 13, 10, 428 }, { 14, 10, 128 },
+ { 17, 10, 52 }, { 145, 10, 81 }, { 4, 0, 492 }, { 133, 0, 451 },
+ { 135, 0, 835 }, { 141, 0, 70 }, { 132, 0, 539 }, { 7, 11, 748 },
+ { 139, 11, 700 }, { 7, 11, 1517 }, { 11, 11, 597 }, { 14, 11, 76 },
+ { 14, 11, 335 }, { 148, 11, 33 }, { 6, 0, 113 }, { 135, 0, 436 },
+ { 4, 10, 338 }, { 133, 10, 400 }, { 136, 0, 718 }, { 133, 11, 127 },
+ { 133, 11, 418 }, { 6, 0, 1505 }, { 7, 0, 520 }, { 6, 11, 198 },
+ { 11, 10, 892 }, { 140, 11, 83 }, { 4, 10, 221 }, { 5, 10, 659 },
+ { 5, 10, 989 }, { 7, 10, 697 }, { 7, 10, 1211 }, { 138, 10, 284 },
+ { 135, 0, 1070 }, { 5, 11, 276 }, { 6, 11, 55 }, { 135, 11, 1369 },
+ { 134, 0, 1515 }, { 6, 11, 1752 }, { 136, 11, 726 }, { 138, 10, 507 },
+ { 15, 0, 78 }, { 4, 10, 188 }, { 135, 10, 805 }, { 5, 10, 884 },
+ { 139, 10, 991 }, { 133, 11, 764 }, { 134, 10, 1653 }, { 6, 11, 309 },
+ { 7, 11, 331 }, { 138, 11, 550 }, { 135, 11, 1861 }, { 132, 11, 348 },
+ { 135, 11, 986 }, { 135, 11, 1573 }, { 12, 0, 610 }, { 13, 0, 431 },
+ { 144, 0, 59 }, { 9, 11, 799 }, { 140, 10, 166 }, { 134, 0, 1530 },
+ { 132, 0, 750 }, { 132, 0, 307 }, { 133, 0, 964 }, { 6, 11, 194 },
+ { 7, 11, 133 }, { 10, 11, 493 }, { 10, 11, 570 }, { 139, 11, 664 },
+ { 5, 11, 24 }, { 5, 11, 569 }, { 6, 11, 3 }, { 6, 11, 119 },
+ { 6, 11, 143 }, { 6, 11, 440 }, { 7, 11, 295 }, { 7, 11, 599 },
+ { 7, 11, 1686 }, { 7, 11, 1854 }, { 8, 11, 424 }, { 9, 11, 43 },
+ { 9, 11, 584 }, { 9, 11, 760 }, { 10, 11, 148 }, { 10, 11, 328 },
+ { 11, 11, 159 }, { 11, 11, 253 }, { 11, 11, 506 }, { 12, 11, 487 },
+ { 12, 11, 531 }, { 144, 11, 33 }, { 136, 10, 760 }, { 5, 11, 14 },
+ { 5, 11, 892 }, { 6, 11, 283 }, { 7, 11, 234 }, { 136, 11, 537 },
+ { 135, 11, 1251 }, { 4, 11, 126 }, { 8, 11, 635 }, { 147, 11, 34 },
+ { 4, 11, 316 }, { 135, 11, 1561 }, { 6, 0, 999 }, { 6, 0, 1310 },
+ { 137, 11, 861 }, { 4, 11, 64 }, { 5, 11, 352 }, { 5, 11, 720 },
+ { 6, 11, 368 }, { 139, 11, 359 }, { 4, 0, 75 }, { 5, 0, 180 },
+ { 6, 0, 500 }, { 7, 0, 58 }, { 7, 0, 710 }, { 10, 0, 645 },
+ { 136, 10, 770 }, { 133, 0, 649 }, { 6, 0, 276 }, { 7, 0, 282 },
+ { 7, 0, 879 }, { 7, 0, 924 }, { 8, 0, 459 }, { 9, 0, 599 },
+ { 9, 0, 754 }, { 11, 0, 574 }, { 12, 0, 128 }, { 12, 0, 494 },
+ { 13, 0, 52 }, { 13, 0, 301 }, { 15, 0, 30 }, { 143, 0, 132 },
+ { 132, 0, 200 }, { 4, 10, 89 }, { 5, 10, 489 }, { 6, 10, 315 },
+ { 7, 10, 553 }, { 7, 10, 1745 }, { 138, 10, 243 }, { 135, 11, 1050 },
+ { 7, 0, 1621 }, { 6, 10, 1658 }, { 9, 10, 3 }, { 10, 10, 154 },
+ { 11, 10, 641 }, { 13, 10, 85 }, { 13, 10, 201 }, { 141, 10, 346 },
+ { 6, 11, 175 }, { 137, 11, 289 }, { 5, 11, 432 }, { 133, 11, 913 },
+ { 6, 0, 225 }, { 137, 0, 211 }, { 7, 0, 718 }, { 8, 0, 687 },
+ { 139, 0, 374 }, { 4, 10, 166 }, { 133, 10, 505 }, { 9, 0, 110 },
+ { 134, 10, 1670 }, { 8, 0, 58 }, { 9, 0, 724 }, { 11, 0, 809 },
+ { 13, 0, 113 }, { 145, 0, 72 }, { 6, 0, 345 }, { 7, 0, 1247 },
+ { 144, 11, 82 }, { 5, 11, 931 }, { 134, 11, 1698 }, { 8, 0, 767 },
+ { 8, 0, 803 }, { 9, 0, 301 }, { 137, 0, 903 }, { 139, 0, 203 },
+ { 134, 0, 1154 }, { 7, 0, 1949 }, { 136, 0, 674 }, { 134, 0, 259 },
+ { 135, 0, 1275 }, { 5, 11, 774 }, { 6, 11, 1637 }, { 6, 11, 1686 },
+ { 134, 11, 1751 }, { 134, 0, 1231 }, { 7, 10, 445 }, { 8, 10, 307 },
+ { 8, 10, 704 }, { 10, 10, 41 }, { 10, 10, 439 }, { 11, 10, 237 },
+ { 11, 10, 622 }, { 140, 10, 201 }, { 136, 0, 254 }, { 6, 11, 260 },
+ { 135, 11, 1484 }, { 139, 0, 277 }, { 135, 10, 1977 }, { 4, 10, 189 },
+ { 5, 10, 713 }, { 6, 11, 573 }, { 136, 10, 57 }, { 138, 10, 371 },
+ { 132, 10, 552 }, { 134, 11, 344 }, { 133, 0, 248 }, { 9, 0, 800 },
+ { 10, 0, 693 }, { 11, 0, 482 }, { 11, 0, 734 }, { 11, 0, 789 },
+ { 134, 11, 240 }, { 4, 0, 116 }, { 5, 0, 95 }, { 5, 0, 445 },
+ { 7, 0, 1688 }, { 8, 0, 29 }, { 9, 0, 272 }, { 11, 0, 509 },
+ { 11, 0, 915 }, { 4, 11, 292 }, { 4, 11, 736 }, { 5, 11, 871 },
+ { 6, 11, 171 }, { 6, 11, 1689 }, { 7, 11, 1324 }, { 7, 11, 1944 },
+ { 9, 11, 415 }, { 9, 11, 580 }, { 14, 11, 230 }, { 146, 11, 68 },
+ { 7, 0, 490 }, { 13, 0, 100 }, { 143, 0, 75 }, { 135, 0, 1641 },
+ { 133, 0, 543 }, { 7, 11, 209 }, { 8, 11, 661 }, { 10, 11, 42 },
+ { 11, 11, 58 }, { 12, 11, 58 }, { 12, 11, 118 }, { 141, 11, 32 },
+ { 5, 0, 181 }, { 8, 0, 41 }, { 6, 11, 63 }, { 135, 11, 920 },
+ { 133, 0, 657 }, { 133, 11, 793 }, { 138, 0, 709 }, { 7, 0, 25 },
+ { 8, 0, 202 }, { 138, 0, 536 }, { 5, 11, 665 }, { 135, 10, 1788 },
+ { 145, 10, 49 }, { 9, 0, 423 }, { 140, 0, 89 }, { 5, 11, 67 },
+ { 6, 11, 62 }, { 6, 11, 374 }, { 135, 11, 1391 }, { 8, 0, 113 },
+ { 9, 0, 877 }, { 10, 0, 554 }, { 11, 0, 83 }, { 12, 0, 136 },
+ { 19, 0, 109 }, { 9, 11, 790 }, { 140, 11, 47 }, { 138, 10, 661 },
+ { 4, 0, 963 }, { 10, 0, 927 }, { 14, 0, 442 }, { 135, 10, 1945 },
+ { 133, 0, 976 }, { 132, 0, 206 }, { 4, 11, 391 }, { 135, 11, 1169 },
+ { 134, 0, 2002 }, { 6, 0, 696 }, { 134, 0, 1008 }, { 134, 0, 1170 },
+ { 132, 11, 271 }, { 7, 0, 13 }, { 8, 0, 226 }, { 10, 0, 537 },
+ { 11, 0, 570 }, { 11, 0, 605 }, { 11, 0, 799 }, { 11, 0, 804 },
+ { 12, 0, 85 }, { 12, 0, 516 }, { 12, 0, 623 }, { 13, 0, 112 },
+ { 13, 0, 361 }, { 14, 0, 77 }, { 14, 0, 78 }, { 17, 0, 28 },
+ { 19, 0, 110 }, { 140, 11, 314 }, { 132, 0, 769 }, { 134, 0, 1544 },
+ { 4, 0, 551 }, { 137, 0, 678 }, { 5, 10, 84 }, { 134, 10, 163 },
+ { 9, 0, 57 }, { 9, 0, 459 }, { 10, 0, 425 }, { 11, 0, 119 },
+ { 12, 0, 184 }, { 12, 0, 371 }, { 13, 0, 358 }, { 145, 0, 51 },
+ { 5, 0, 188 }, { 5, 0, 814 }, { 8, 0, 10 }, { 9, 0, 421 },
+ { 9, 0, 729 }, { 10, 0, 609 }, { 11, 0, 689 }, { 4, 11, 253 },
+ { 5, 10, 410 }, { 5, 11, 544 }, { 7, 11, 300 }, { 137, 11, 340 },
+ { 134, 0, 624 }, { 138, 11, 321 }, { 135, 0, 1941 }, { 18, 0, 130 },
+ { 5, 10, 322 }, { 8, 10, 186 }, { 9, 10, 262 }, { 10, 10, 187 },
+ { 142, 10, 208 }, { 5, 11, 53 }, { 5, 11, 541 }, { 6, 11, 94 },
+ { 6, 11, 499 }, { 7, 11, 230 }, { 139, 11, 321 }, { 133, 10, 227 },
+ { 4, 0, 378 }, { 4, 11, 920 }, { 5, 11, 25 }, { 5, 11, 790 },
+ { 6, 11, 457 }, { 135, 11, 853 }, { 137, 0, 269 }, { 132, 0, 528 },
+ { 134, 0, 1146 }, { 7, 10, 1395 }, { 8, 10, 486 }, { 9, 10, 236 },
+ { 9, 10, 878 }, { 10, 10, 218 }, { 11, 10, 95 }, { 19, 10, 17 },
+ { 147, 10, 31 }, { 7, 10, 2043 }, { 8, 10, 672 }, { 141, 10, 448 },
+ { 134, 0, 1105 }, { 134, 0, 1616 }, { 134, 11, 1765 }, { 140, 11, 163 },
+ { 5, 10, 412 }, { 133, 11, 822 }, { 132, 11, 634 }, { 6, 0, 656 },
+ { 134, 11, 1730 }, { 134, 0, 1940 }, { 5, 0, 104 }, { 6, 0, 173 },
+ { 135, 0, 1631 }, { 136, 10, 562 }, { 6, 11, 36 }, { 7, 11, 658 },
+ { 8, 11, 454 }, { 147, 11, 86 }, { 5, 0, 457 }, { 134, 10, 1771 },
+ { 7, 0, 810 }, { 8, 0, 138 }, { 8, 0, 342 }, { 9, 0, 84 },
+ { 10, 0, 193 }, { 11, 0, 883 }, { 140, 0, 359 }, { 9, 0, 620 },
+ { 135, 10, 1190 }, { 137, 10, 132 }, { 7, 11, 975 }, { 137, 11, 789 },
+ { 6, 0, 95 }, { 6, 0, 1934 }, { 136, 0, 967 }, { 141, 11, 335 },
+ { 6, 0, 406 }, { 10, 0, 409 }, { 10, 0, 447 }, { 11, 0, 44 },
+ { 140, 0, 100 }, { 4, 10, 317 }, { 135, 10, 1279 }, { 132, 0, 477 },
+ { 134, 0, 1268 }, { 6, 0, 1941 }, { 8, 0, 944 }, { 5, 10, 63 },
+ { 133, 10, 509 }, { 132, 0, 629 }, { 132, 11, 104 }, { 4, 0, 246 },
+ { 133, 0, 375 }, { 6, 0, 1636 }, { 132, 10, 288 }, { 135, 11, 1614 },
+ { 9, 0, 49 }, { 10, 0, 774 }, { 8, 10, 89 }, { 8, 10, 620 },
+ { 11, 10, 628 }, { 12, 10, 322 }, { 143, 10, 124 }, { 4, 0, 282 },
+ { 7, 0, 1034 }, { 11, 0, 398 }, { 11, 0, 634 }, { 12, 0, 1 },
+ { 12, 0, 79 }, { 12, 0, 544 }, { 14, 0, 237 }, { 17, 0, 10 },
+ { 146, 0, 20 }, { 132, 0, 824 }, { 7, 11, 45 }, { 9, 11, 542 },
+ { 9, 11, 566 }, { 138, 11, 728 }, { 5, 0, 118 }, { 5, 0, 499 },
+ { 6, 0, 476 }, { 6, 0, 665 }, { 6, 0, 1176 }, { 6, 0, 1196 },
+ { 7, 0, 600 }, { 7, 0, 888 }, { 135, 0, 1096 }, { 7, 0, 296 },
+ { 7, 0, 596 }, { 8, 0, 560 }, { 8, 0, 586 }, { 9, 0, 612 },
+ { 11, 0, 304 }, { 12, 0, 46 }, { 13, 0, 89 }, { 14, 0, 112 },
+ { 145, 0, 122 }, { 5, 0, 894 }, { 6, 0, 1772 }, { 9, 0, 1009 },
+ { 138, 10, 120 }, { 5, 11, 533 }, { 7, 11, 755 }, { 138, 11, 780 },
+ { 151, 10, 1 }, { 6, 0, 1474 }, { 7, 11, 87 }, { 142, 11, 288 },
+ { 139, 0, 366 }, { 137, 10, 461 }, { 7, 11, 988 }, { 7, 11, 1939 },
+ { 9, 11, 64 }, { 9, 11, 502 }, { 12, 11, 7 }, { 12, 11, 34 },
+ { 13, 11, 12 }, { 13, 11, 234 }, { 147, 11, 77 }, { 7, 0, 1599 },
+ { 7, 0, 1723 }, { 8, 0, 79 }, { 8, 0, 106 }, { 8, 0, 190 },
+ { 8, 0, 302 }, { 8, 0, 383 }, { 8, 0, 713 }, { 9, 0, 119 },
+ { 9, 0, 233 }, { 9, 0, 419 }, { 9, 0, 471 }, { 10, 0, 181 },
+ { 10, 0, 406 }, { 11, 0, 57 }, { 11, 0, 85 }, { 11, 0, 120 },
+ { 11, 0, 177 }, { 11, 0, 296 }, { 11, 0, 382 }, { 11, 0, 454 },
+ { 11, 0, 758 }, { 11, 0, 999 }, { 12, 0, 27 }, { 12, 0, 98 },
+ { 12, 0, 131 }, { 12, 0, 245 }, { 12, 0, 312 }, { 12, 0, 446 },
+ { 12, 0, 454 }, { 13, 0, 25 }, { 13, 0, 98 }, { 13, 0, 426 },
+ { 13, 0, 508 }, { 14, 0, 70 }, { 14, 0, 163 }, { 14, 0, 272 },
+ { 14, 0, 277 }, { 14, 0, 370 }, { 15, 0, 95 }, { 15, 0, 138 },
+ { 15, 0, 167 }, { 17, 0, 38 }, { 148, 0, 96 }, { 135, 10, 1346 },
+ { 10, 0, 200 }, { 19, 0, 2 }, { 151, 0, 22 }, { 135, 11, 141 },
+ { 134, 10, 85 }, { 134, 0, 1759 }, { 138, 0, 372 }, { 145, 0, 16 },
+ { 8, 0, 943 }, { 132, 11, 619 }, { 139, 11, 88 }, { 5, 11, 246 },
+ { 8, 11, 189 }, { 9, 11, 355 }, { 9, 11, 512 }, { 10, 11, 124 },
+ { 10, 11, 453 }, { 11, 11, 143 }, { 11, 11, 416 }, { 11, 11, 859 },
+ { 141, 11, 341 }, { 5, 0, 258 }, { 134, 0, 719 }, { 6, 0, 1798 },
+ { 6, 0, 1839 }, { 8, 0, 900 }, { 10, 0, 874 }, { 10, 0, 886 },
+ { 12, 0, 698 }, { 12, 0, 732 }, { 12, 0, 770 }, { 16, 0, 106 },
+ { 18, 0, 163 }, { 18, 0, 170 }, { 18, 0, 171 }, { 152, 0, 20 },
+ { 9, 0, 707 }, { 11, 0, 326 }, { 11, 0, 339 }, { 12, 0, 423 },
+ { 12, 0, 502 }, { 20, 0, 62 }, { 9, 11, 707 }, { 11, 11, 326 },
+ { 11, 11, 339 }, { 12, 11, 423 }, { 12, 11, 502 }, { 148, 11, 62 },
+ { 5, 0, 30 }, { 7, 0, 495 }, { 8, 0, 134 }, { 9, 0, 788 },
+ { 140, 0, 438 }, { 133, 11, 678 }, { 5, 10, 279 }, { 6, 10, 235 },
+ { 7, 10, 468 }, { 8, 10, 446 }, { 9, 10, 637 }, { 10, 10, 717 },
+ { 11, 10, 738 }, { 140, 10, 514 }, { 5, 11, 35 }, { 6, 11, 287 },
+ { 7, 11, 862 }, { 7, 11, 1886 }, { 138, 11, 179 }, { 7, 0, 1948 },
+ { 7, 0, 2004 }, { 132, 11, 517 }, { 5, 10, 17 }, { 6, 10, 371 },
+ { 137, 10, 528 }, { 4, 0, 115 }, { 5, 0, 669 }, { 6, 0, 407 },
+ { 8, 0, 311 }, { 11, 0, 10 }, { 141, 0, 5 }, { 137, 0, 381 },
+ { 5, 0, 50 }, { 6, 0, 439 }, { 7, 0, 780 }, { 135, 0, 1040 },
+ { 136, 11, 667 }, { 11, 11, 403 }, { 146, 11, 83 }, { 5, 0, 1 },
+ { 6, 0, 81 }, { 138, 0, 520 }, { 134, 0, 738 }, { 5, 0, 482 },
+ { 8, 0, 98 }, { 9, 0, 172 }, { 10, 0, 360 }, { 10, 0, 700 },
+ { 10, 0, 822 }, { 11, 0, 302 }, { 11, 0, 778 }, { 12, 0, 50 },
+ { 12, 0, 127 }, { 12, 0, 396 }, { 13, 0, 62 }, { 13, 0, 328 },
+ { 14, 0, 122 }, { 147, 0, 72 }, { 9, 11, 157 }, { 10, 11, 131 },
+ { 140, 11, 72 }, { 135, 11, 714 }, { 135, 11, 539 }, { 5, 0, 2 },
+ { 6, 0, 512 }, { 7, 0, 797 }, { 7, 0, 1494 }, { 8, 0, 253 },
+ { 8, 0, 589 }, { 9, 0, 77 }, { 10, 0, 1 }, { 10, 0, 129 },
+ { 10, 0, 225 }, { 11, 0, 118 }, { 11, 0, 226 }, { 11, 0, 251 },
+ { 11, 0, 430 }, { 11, 0, 701 }, { 11, 0, 974 }, { 11, 0, 982 },
+ { 12, 0, 64 }, { 12, 0, 260 }, { 12, 0, 488 }, { 140, 0, 690 },
+ { 5, 11, 394 }, { 7, 11, 367 }, { 7, 11, 487 }, { 7, 11, 857 },
+ { 7, 11, 1713 }, { 8, 11, 246 }, { 9, 11, 537 }, { 10, 11, 165 },
+ { 12, 11, 219 }, { 140, 11, 561 }, { 136, 0, 557 }, { 5, 10, 779 },
+ { 5, 10, 807 }, { 6, 10, 1655 }, { 134, 10, 1676 }, { 4, 10, 196 },
+ { 5, 10, 558 }, { 133, 10, 949 }, { 11, 11, 827 }, { 12, 11, 56 },
+ { 14, 11, 34 }, { 143, 11, 148 }, { 137, 0, 347 }, { 133, 0, 572 },
+ { 134, 0, 832 }, { 4, 0, 12 }, { 7, 0, 504 }, { 7, 0, 522 },
+ { 7, 0, 809 }, { 8, 0, 797 }, { 141, 0, 88 }, { 4, 10, 752 },
+ { 133, 11, 449 }, { 7, 11, 86 }, { 8, 11, 103 }, { 145, 11, 69 },
+ { 7, 11, 2028 }, { 138, 11, 641 }, { 5, 0, 528 }, { 6, 11, 1 },
+ { 142, 11, 2 }, { 134, 0, 861 }, { 10, 0, 294 }, { 4, 10, 227 },
+ { 5, 10, 159 }, { 5, 10, 409 }, { 7, 10, 80 }, { 10, 10, 479 },
+ { 12, 10, 418 }, { 14, 10, 50 }, { 14, 10, 249 }, { 142, 10, 295 },
+ { 7, 10, 1470 }, { 8, 10, 66 }, { 8, 10, 137 }, { 8, 10, 761 },
+ { 9, 10, 638 }, { 11, 10, 80 }, { 11, 10, 212 }, { 11, 10, 368 },
+ { 11, 10, 418 }, { 12, 10, 8 }, { 13, 10, 15 }, { 16, 10, 61 },
+ { 17, 10, 59 }, { 19, 10, 28 }, { 148, 10, 84 }, { 20, 0, 109 },
+ { 135, 11, 1148 }, { 6, 11, 277 }, { 7, 11, 1274 }, { 7, 11, 1386 },
+ { 7, 11, 1392 }, { 12, 11, 129 }, { 146, 11, 87 }, { 6, 11, 187 },
+ { 7, 11, 39 }, { 7, 11, 1203 }, { 8, 11, 380 }, { 8, 11, 542 },
+ { 14, 11, 117 }, { 149, 11, 28 }, { 134, 0, 1187 }, { 5, 0, 266 },
+ { 9, 0, 290 }, { 9, 0, 364 }, { 10, 0, 293 }, { 11, 0, 606 },
+ { 142, 0, 45 }, { 6, 11, 297 }, { 7, 11, 793 }, { 139, 11, 938 },
+ { 4, 0, 50 }, { 6, 0, 594 }, { 9, 0, 121 }, { 10, 0, 49 },
+ { 10, 0, 412 }, { 139, 0, 834 }, { 136, 0, 748 }, { 7, 11, 464 },
+ { 8, 11, 438 }, { 11, 11, 105 }, { 11, 11, 363 }, { 12, 11, 231 },
+ { 14, 11, 386 }, { 15, 11, 102 }, { 148, 11, 75 }, { 132, 0, 466 },
+ { 13, 0, 399 }, { 14, 0, 337 }, { 6, 10, 38 }, { 7, 10, 1220 },
+ { 8, 10, 185 }, { 8, 10, 256 }, { 9, 10, 22 }, { 9, 10, 331 },
+ { 10, 10, 738 }, { 11, 10, 205 }, { 11, 10, 540 }, { 11, 10, 746 },
+ { 13, 10, 465 }, { 142, 10, 194 }, { 9, 0, 378 }, { 141, 0, 162 },
+ { 137, 0, 519 }, { 4, 10, 159 }, { 6, 10, 115 }, { 7, 10, 252 },
+ { 7, 10, 257 }, { 7, 10, 1928 }, { 8, 10, 69 }, { 9, 10, 384 },
+ { 10, 10, 91 }, { 10, 10, 615 }, { 12, 10, 375 }, { 14, 10, 235 },
+ { 18, 10, 117 }, { 147, 10, 123 }, { 5, 11, 604 }, { 5, 10, 911 },
+ { 136, 10, 278 }, { 132, 0, 667 }, { 8, 0, 351 }, { 9, 0, 322 },
+ { 4, 10, 151 }, { 135, 10, 1567 }, { 134, 0, 902 }, { 133, 10, 990 },
+ { 12, 0, 180 }, { 5, 10, 194 }, { 7, 10, 1662 }, { 137, 10, 90 },
+ { 4, 0, 869 }, { 134, 0, 1996 }, { 134, 0, 813 }, { 133, 10, 425 },
+ { 137, 11, 761 }, { 132, 0, 260 }, { 133, 10, 971 }, { 5, 11, 20 },
+ { 6, 11, 298 }, { 7, 11, 659 }, { 7, 11, 1366 }, { 137, 11, 219 },
+ { 4, 0, 39 }, { 5, 0, 36 }, { 7, 0, 1843 }, { 8, 0, 407 },
+ { 11, 0, 144 }, { 140, 0, 523 }, { 4, 0, 510 }, { 10, 0, 587 },
+ { 139, 10, 752 }, { 7, 0, 29 }, { 7, 0, 66 }, { 7, 0, 1980 },
+ { 10, 0, 487 }, { 138, 0, 809 }, { 13, 0, 260 }, { 14, 0, 82 },
+ { 18, 0, 63 }, { 137, 10, 662 }, { 5, 10, 72 }, { 6, 10, 264 },
+ { 7, 10, 21 }, { 7, 10, 46 }, { 7, 10, 2013 }, { 8, 10, 215 },
+ { 8, 10, 513 }, { 10, 10, 266 }, { 139, 10, 22 }, { 134, 0, 570 },
+ { 6, 0, 565 }, { 7, 0, 1667 }, { 4, 11, 439 }, { 10, 10, 95 },
+ { 11, 10, 603 }, { 12, 11, 242 }, { 13, 10, 443 }, { 14, 10, 160 },
+ { 143, 10, 4 }, { 134, 0, 1464 }, { 134, 10, 431 }, { 9, 0, 372 },
+ { 15, 0, 2 }, { 19, 0, 10 }, { 19, 0, 18 }, { 5, 10, 874 },
+ { 6, 10, 1677 }, { 143, 10, 0 }, { 132, 0, 787 }, { 6, 0, 380 },
+ { 12, 0, 399 }, { 21, 0, 19 }, { 7, 10, 939 }, { 7, 10, 1172 },
+ { 7, 10, 1671 }, { 9, 10, 540 }, { 10, 10, 696 }, { 11, 10, 265 },
+ { 11, 10, 732 }, { 11, 10, 928 }, { 11, 10, 937 }, { 141, 10, 438 },
+ { 137, 0, 200 }, { 132, 11, 233 }, { 132, 0, 516 }, { 134, 11, 577 },
+ { 132, 0, 844 }, { 11, 0, 887 }, { 14, 0, 365 }, { 142, 0, 375 },
+ { 132, 11, 482 }, { 8, 0, 821 }, { 140, 0, 44 }, { 7, 0, 1655 },
+ { 136, 0, 305 }, { 5, 10, 682 }, { 135, 10, 1887 }, { 135, 11, 346 },
+ { 132, 10, 696 }, { 4, 0, 10 }, { 7, 0, 917 }, { 139, 0, 786 },
+ { 5, 11, 795 }, { 6, 11, 1741 }, { 8, 11, 417 }, { 137, 11, 782 },
+ { 4, 0, 1016 }, { 134, 0, 2031 }, { 5, 0, 684 }, { 4, 10, 726 },
+ { 133, 10, 630 }, { 6, 0, 1021 }, { 134, 0, 1480 }, { 8, 10, 802 },
+ { 136, 10, 838 }, { 134, 0, 27 }, { 134, 0, 395 }, { 135, 11, 622 },
+ { 7, 11, 625 }, { 135, 11, 1750 }, { 4, 11, 203 }, { 135, 11, 1936 },
+ { 6, 10, 118 }, { 7, 10, 215 }, { 7, 10, 1521 }, { 140, 10, 11 },
+ { 132, 0, 813 }, { 136, 0, 511 }, { 7, 10, 615 }, { 138, 10, 251 },
+ { 135, 10, 1044 }, { 145, 0, 56 }, { 133, 10, 225 }, { 6, 0, 342 },
+ { 6, 0, 496 }, { 8, 0, 275 }, { 137, 0, 206 }, { 4, 0, 909 },
+ { 133, 0, 940 }, { 132, 0, 891 }, { 7, 11, 311 }, { 9, 11, 308 },
+ { 140, 11, 255 }, { 4, 10, 370 }, { 5, 10, 756 }, { 135, 10, 1326 },
+ { 4, 0, 687 }, { 134, 0, 1596 }, { 134, 0, 1342 }, { 6, 10, 1662 },
+ { 7, 10, 48 }, { 8, 10, 771 }, { 10, 10, 116 }, { 13, 10, 104 },
+ { 14, 10, 105 }, { 14, 10, 184 }, { 15, 10, 168 }, { 19, 10, 92 },
+ { 148, 10, 68 }, { 138, 10, 209 }, { 4, 11, 400 }, { 5, 11, 267 },
+ { 135, 11, 232 }, { 151, 11, 12 }, { 6, 0, 41 }, { 141, 0, 160 },
+ { 141, 11, 314 }, { 134, 0, 1718 }, { 136, 0, 778 }, { 142, 11, 261 },
+ { 134, 0, 1610 }, { 133, 0, 115 }, { 132, 0, 294 }, { 14, 0, 314 },
+ { 132, 10, 120 }, { 132, 0, 983 }, { 5, 0, 193 }, { 140, 0, 178 },
+ { 138, 10, 429 }, { 5, 10, 820 }, { 135, 10, 931 }, { 6, 0, 994 },
+ { 6, 0, 1051 }, { 6, 0, 1439 }, { 7, 0, 174 }, { 133, 11, 732 },
+ { 4, 11, 100 }, { 7, 11, 679 }, { 8, 11, 313 }, { 138, 10, 199 },
+ { 6, 10, 151 }, { 6, 10, 1675 }, { 7, 10, 383 }, { 151, 10, 10 },
+ { 6, 0, 1796 }, { 8, 0, 848 }, { 8, 0, 867 }, { 8, 0, 907 },
+ { 10, 0, 855 }, { 140, 0, 703 }, { 140, 0, 221 }, { 4, 0, 122 },
+ { 5, 0, 796 }, { 5, 0, 952 }, { 6, 0, 1660 }, { 6, 0, 1671 },
+ { 8, 0, 567 }, { 9, 0, 687 }, { 9, 0, 742 }, { 10, 0, 686 },
+ { 11, 0, 682 }, { 11, 0, 909 }, { 140, 0, 281 }, { 5, 11, 362 },
+ { 5, 11, 443 }, { 6, 11, 318 }, { 7, 11, 1019 }, { 139, 11, 623 },
+ { 5, 11, 463 }, { 136, 11, 296 }, { 11, 0, 583 }, { 13, 0, 262 },
+ { 6, 10, 1624 }, { 12, 10, 422 }, { 142, 10, 360 }, { 5, 0, 179 },
+ { 7, 0, 1095 }, { 135, 0, 1213 }, { 4, 10, 43 }, { 4, 11, 454 },
+ { 5, 10, 344 }, { 133, 10, 357 }, { 4, 0, 66 }, { 7, 0, 722 },
+ { 135, 0, 904 }, { 134, 0, 773 }, { 7, 0, 352 }, { 133, 10, 888 },
+ { 5, 11, 48 }, { 5, 11, 404 }, { 6, 11, 557 }, { 7, 11, 458 },
+ { 8, 11, 597 }, { 10, 11, 455 }, { 10, 11, 606 }, { 11, 11, 49 },
+ { 11, 11, 548 }, { 12, 11, 476 }, { 13, 11, 18 }, { 141, 11, 450 },
+ { 134, 11, 418 }, { 132, 10, 711 }, { 5, 11, 442 }, { 135, 11, 1984 },
+ { 141, 0, 35 }, { 137, 0, 152 }, { 134, 0, 1197 }, { 135, 11, 1093 },
+ { 137, 11, 203 }, { 137, 10, 440 }, { 10, 0, 592 }, { 10, 0, 753 },
+ { 12, 0, 317 }, { 12, 0, 355 }, { 12, 0, 465 }, { 12, 0, 469 },
+ { 12, 0, 560 }, { 12, 0, 578 }, { 141, 0, 243 }, { 133, 0, 564 },
+ { 134, 0, 797 }, { 5, 10, 958 }, { 133, 10, 987 }, { 5, 11, 55 },
+ { 7, 11, 376 }, { 140, 11, 161 }, { 133, 11, 450 }, { 134, 0, 556 },
+ { 134, 0, 819 }, { 11, 10, 276 }, { 142, 10, 293 }, { 7, 0, 544 },
+ { 138, 0, 61 }, { 8, 0, 719 }, { 4, 10, 65 }, { 5, 10, 479 },
+ { 5, 10, 1004 }, { 7, 10, 1913 }, { 8, 10, 317 }, { 9, 10, 302 },
+ { 10, 10, 612 }, { 141, 10, 22 }, { 4, 0, 5 }, { 5, 0, 498 },
+ { 8, 0, 637 }, { 9, 0, 521 }, { 4, 11, 213 }, { 4, 10, 261 },
+ { 7, 11, 223 }, { 7, 10, 510 }, { 136, 11, 80 }, { 5, 0, 927 },
+ { 7, 0, 101 }, { 4, 10, 291 }, { 7, 11, 381 }, { 7, 11, 806 },
+ { 7, 11, 820 }, { 8, 11, 354 }, { 8, 11, 437 }, { 8, 11, 787 },
+ { 9, 10, 515 }, { 9, 11, 657 }, { 10, 11, 58 }, { 10, 11, 339 },
+ { 10, 11, 749 }, { 11, 11, 914 }, { 12, 10, 152 }, { 12, 11, 162 },
+ { 12, 10, 443 }, { 13, 11, 75 }, { 13, 10, 392 }, { 14, 11, 106 },
+ { 14, 11, 198 }, { 14, 11, 320 }, { 14, 10, 357 }, { 14, 11, 413 },
+ { 146, 11, 43 }, { 6, 0, 1153 }, { 7, 0, 1441 }, { 136, 11, 747 },
+ { 4, 0, 893 }, { 5, 0, 780 }, { 133, 0, 893 }, { 138, 11, 654 },
+ { 133, 11, 692 }, { 133, 0, 238 }, { 134, 11, 191 }, { 4, 10, 130 },
+ { 135, 10, 843 }, { 6, 0, 1296 }, { 5, 10, 42 }, { 5, 10, 879 },
+ { 7, 10, 245 }, { 7, 10, 324 }, { 7, 10, 1532 }, { 11, 10, 463 },
+ { 11, 10, 472 }, { 13, 10, 363 }, { 144, 10, 52 }, { 134, 0, 1729 },
+ { 6, 0, 1999 }, { 136, 0, 969 }, { 4, 10, 134 }, { 133, 10, 372 },
+ { 4, 0, 60 }, { 7, 0, 941 }, { 7, 0, 1800 }, { 8, 0, 314 },
+ { 9, 0, 700 }, { 139, 0, 487 }, { 134, 0, 1144 }, { 6, 11, 162 },
+ { 7, 11, 1960 }, { 136, 11, 831 }, { 132, 11, 706 }, { 135, 0, 1147 },
+ { 138, 11, 426 }, { 138, 11, 89 }, { 7, 0, 1853 }, { 138, 0, 437 },
+ { 136, 0, 419 }, { 135, 10, 1634 }, { 133, 0, 828 }, { 5, 0, 806 },
+ { 7, 0, 176 }, { 7, 0, 178 }, { 7, 0, 1240 }, { 7, 0, 1976 },
+ { 132, 10, 644 }, { 135, 11, 1877 }, { 5, 11, 420 }, { 135, 11, 1449 },
+ { 4, 0, 51 }, { 5, 0, 39 }, { 6, 0, 4 }, { 7, 0, 591 },
+ { 7, 0, 849 }, { 7, 0, 951 }, { 7, 0, 1613 }, { 7, 0, 1760 },
+ { 7, 0, 1988 }, { 9, 0, 434 }, { 10, 0, 754 }, { 11, 0, 25 },
+ { 139, 0, 37 }, { 10, 11, 57 }, { 138, 11, 277 }, { 135, 10, 540 },
+ { 132, 11, 204 }, { 135, 0, 159 }, { 139, 11, 231 }, { 133, 0, 902 },
+ { 7, 0, 928 }, { 7, 11, 366 }, { 9, 11, 287 }, { 12, 11, 199 },
+ { 12, 11, 556 }, { 140, 11, 577 }, { 6, 10, 623 }, { 136, 10, 789 },
+ { 4, 10, 908 }, { 5, 10, 359 }, { 5, 10, 508 }, { 6, 10, 1723 },
+ { 7, 10, 343 }, { 7, 10, 1996 }, { 135, 10, 2026 }, { 134, 0, 270 },
+ { 4, 10, 341 }, { 135, 10, 480 }, { 5, 11, 356 }, { 135, 11, 224 },
+ { 11, 11, 588 }, { 11, 11, 864 }, { 11, 11, 968 }, { 143, 11, 160 },
+ { 132, 0, 556 }, { 137, 0, 801 }, { 132, 0, 416 }, { 142, 0, 372 },
+ { 5, 0, 152 }, { 5, 0, 197 }, { 7, 0, 340 }, { 7, 0, 867 },
+ { 10, 0, 548 }, { 10, 0, 581 }, { 11, 0, 6 }, { 12, 0, 3 },
+ { 12, 0, 19 }, { 14, 0, 110 }, { 142, 0, 289 }, { 139, 0, 369 },
+ { 7, 11, 630 }, { 9, 11, 567 }, { 11, 11, 150 }, { 11, 11, 444 },
+ { 141, 11, 119 }, { 134, 11, 539 }, { 7, 10, 1995 }, { 8, 10, 299 },
+ { 11, 10, 890 }, { 140, 10, 674 }, { 7, 0, 34 }, { 7, 0, 190 },
+ { 8, 0, 28 }, { 8, 0, 141 }, { 8, 0, 444 }, { 8, 0, 811 },
+ { 9, 0, 468 }, { 11, 0, 334 }, { 12, 0, 24 }, { 12, 0, 386 },
+ { 140, 0, 576 }, { 133, 0, 757 }, { 7, 0, 1553 }, { 136, 0, 898 },
+ { 133, 0, 721 }, { 136, 0, 1012 }, { 4, 0, 789 }, { 5, 0, 647 },
+ { 135, 0, 1102 }, { 132, 0, 898 }, { 10, 0, 183 }, { 4, 10, 238 },
+ { 5, 10, 503 }, { 6, 10, 179 }, { 7, 10, 2003 }, { 8, 10, 381 },
+ { 8, 10, 473 }, { 9, 10, 149 }, { 10, 10, 788 }, { 15, 10, 45 },
+ { 15, 10, 86 }, { 20, 10, 110 }, { 150, 10, 57 }, { 9, 0, 136 },
+ { 19, 0, 107 }, { 4, 10, 121 }, { 5, 10, 156 }, { 5, 10, 349 },
+ { 10, 10, 605 }, { 142, 10, 342 }, { 4, 11, 235 }, { 135, 11, 255 },
+ { 4, 11, 194 }, { 5, 11, 584 }, { 6, 11, 384 }, { 7, 11, 583 },
+ { 10, 11, 761 }, { 11, 11, 760 }, { 139, 11, 851 }, { 6, 10, 80 },
+ { 6, 10, 1694 }, { 7, 10, 173 }, { 7, 10, 1974 }, { 9, 10, 547 },
+ { 10, 10, 730 }, { 14, 10, 18 }, { 150, 10, 39 }, { 4, 10, 923 },
+ { 134, 10, 1711 }, { 5, 0, 277 }, { 141, 0, 247 }, { 132, 0, 435 },
+ { 133, 11, 562 }, { 134, 0, 1311 }, { 5, 11, 191 }, { 137, 11, 271 },
+ { 132, 10, 595 }, { 7, 11, 1537 }, { 14, 11, 96 }, { 143, 11, 73 },
+ { 5, 0, 437 }, { 7, 0, 502 }, { 7, 0, 519 }, { 7, 0, 1122 },
+ { 7, 0, 1751 }, { 14, 0, 211 }, { 6, 10, 459 }, { 7, 10, 1753 },
+ { 7, 10, 1805 }, { 8, 10, 658 }, { 9, 10, 1 }, { 11, 10, 959 },
+ { 141, 10, 446 }, { 6, 0, 814 }, { 4, 11, 470 }, { 5, 11, 473 },
+ { 6, 11, 153 }, { 7, 11, 1503 }, { 7, 11, 1923 }, { 10, 11, 701 },
+ { 11, 11, 132 }, { 11, 11, 168 }, { 11, 11, 227 }, { 11, 11, 320 },
+ { 11, 11, 436 }, { 11, 11, 525 }, { 11, 11, 855 }, { 12, 11, 41 },
+ { 12, 11, 286 }, { 13, 11, 103 }, { 13, 11, 284 }, { 14, 11, 255 },
+ { 14, 11, 262 }, { 15, 11, 117 }, { 143, 11, 127 }, { 5, 0, 265 },
+ { 6, 0, 212 }, { 135, 0, 28 }, { 138, 0, 750 }, { 133, 11, 327 },
+ { 6, 11, 552 }, { 7, 11, 1754 }, { 137, 11, 604 }, { 134, 0, 2012 },
+ { 132, 0, 702 }, { 5, 11, 80 }, { 6, 11, 405 }, { 7, 11, 403 },
+ { 7, 11, 1502 }, { 7, 11, 1626 }, { 8, 11, 456 }, { 9, 11, 487 },
+ { 9, 11, 853 }, { 9, 11, 889 }, { 10, 11, 309 }, { 11, 11, 721 },
+ { 11, 11, 994 }, { 12, 11, 430 }, { 141, 11, 165 }, { 5, 0, 808 },
+ { 135, 0, 2045 }, { 5, 0, 166 }, { 8, 0, 739 }, { 140, 0, 511 },
+ { 134, 10, 490 }, { 4, 11, 453 }, { 5, 11, 887 }, { 6, 11, 535 },
+ { 8, 11, 6 }, { 136, 11, 543 }, { 4, 0, 119 }, { 5, 0, 170 },
+ { 5, 0, 447 }, { 7, 0, 1708 }, { 7, 0, 1889 }, { 9, 0, 357 },
+ { 9, 0, 719 }, { 12, 0, 486 }, { 140, 0, 596 }, { 137, 0, 500 },
+ { 7, 10, 250 }, { 136, 10, 507 }, { 132, 10, 158 }, { 6, 0, 809 },
+ { 134, 0, 1500 }, { 9, 0, 327 }, { 11, 0, 350 }, { 11, 0, 831 },
+ { 13, 0, 352 }, { 4, 10, 140 }, { 7, 10, 362 }, { 8, 10, 209 },
+ { 9, 10, 10 }, { 9, 10, 503 }, { 9, 10, 614 }, { 10, 10, 689 },
+ { 11, 10, 327 }, { 11, 10, 725 }, { 12, 10, 252 }, { 12, 10, 583 },
+ { 13, 10, 192 }, { 14, 10, 269 }, { 14, 10, 356 }, { 148, 10, 50 },
+ { 135, 11, 741 }, { 4, 0, 450 }, { 7, 0, 1158 }, { 19, 10, 1 },
+ { 19, 10, 26 }, { 150, 10, 9 }, { 6, 0, 597 }, { 135, 0, 1318 },
+ { 134, 0, 1602 }, { 6, 10, 228 }, { 7, 10, 1341 }, { 9, 10, 408 },
+ { 138, 10, 343 }, { 7, 0, 1375 }, { 7, 0, 1466 }, { 138, 0, 331 },
+ { 132, 0, 754 }, { 132, 10, 557 }, { 5, 11, 101 }, { 6, 11, 88 },
+ { 6, 11, 543 }, { 7, 11, 1677 }, { 9, 11, 100 }, { 10, 11, 677 },
+ { 14, 11, 169 }, { 14, 11, 302 }, { 14, 11, 313 }, { 15, 11, 48 },
+ { 143, 11, 84 }, { 134, 0, 1368 }, { 4, 11, 310 }, { 9, 11, 795 },
+ { 10, 11, 733 }, { 11, 11, 451 }, { 12, 11, 249 }, { 14, 11, 115 },
+ { 14, 11, 286 }, { 143, 11, 100 }, { 132, 10, 548 }, { 10, 0, 557 },
+ { 7, 10, 197 }, { 8, 10, 142 }, { 8, 10, 325 }, { 9, 10, 150 },
+ { 9, 10, 596 }, { 10, 10, 353 }, { 11, 10, 74 }, { 11, 10, 315 },
+ { 12, 10, 662 }, { 12, 10, 681 }, { 14, 10, 423 }, { 143, 10, 141 },
+ { 133, 11, 587 }, { 5, 0, 850 }, { 136, 0, 799 }, { 10, 0, 908 },
+ { 12, 0, 701 }, { 12, 0, 757 }, { 142, 0, 466 }, { 4, 0, 62 },
+ { 5, 0, 275 }, { 18, 0, 19 }, { 6, 10, 399 }, { 6, 10, 579 },
+ { 7, 10, 692 }, { 7, 10, 846 }, { 7, 10, 1015 }, { 7, 10, 1799 },
+ { 8, 10, 403 }, { 9, 10, 394 }, { 10, 10, 133 }, { 12, 10, 4 },
+ { 12, 10, 297 }, { 12, 10, 452 }, { 16, 10, 81 }, { 18, 10, 25 },
+ { 21, 10, 14 }, { 22, 10, 12 }, { 151, 10, 18 }, { 12, 0, 459 },
+ { 7, 10, 1546 }, { 11, 10, 299 }, { 142, 10, 407 }, { 132, 10, 177 },
+ { 132, 11, 498 }, { 7, 11, 217 }, { 8, 11, 140 }, { 138, 11, 610 },
+ { 5, 10, 411 }, { 135, 10, 653 }, { 134, 0, 1802 }, { 7, 10, 439 },
+ { 10, 10, 727 }, { 11, 10, 260 }, { 139, 10, 684 }, { 133, 11, 905 },
+ { 11, 11, 580 }, { 142, 11, 201 }, { 134, 0, 1397 }, { 5, 10, 208 },
+ { 7, 10, 753 }, { 135, 10, 1528 }, { 7, 0, 238 }, { 7, 0, 2033 },
+ { 8, 0, 120 }, { 8, 0, 188 }, { 8, 0, 659 }, { 9, 0, 598 },
+ { 10, 0, 466 }, { 12, 0, 342 }, { 12, 0, 588 }, { 13, 0, 503 },
+ { 14, 0, 246 }, { 143, 0, 92 }, { 135, 11, 1041 }, { 4, 11, 456 },
+ { 7, 11, 105 }, { 7, 11, 358 }, { 7, 11, 1637 }, { 8, 11, 643 },
+ { 139, 11, 483 }, { 6, 0, 1318 }, { 134, 0, 1324 }, { 4, 0, 201 },
+ { 7, 0, 1744 }, { 8, 0, 602 }, { 11, 0, 247 }, { 11, 0, 826 },
+ { 17, 0, 65 }, { 133, 10, 242 }, { 8, 0, 164 }, { 146, 0, 62 },
+ { 133, 10, 953 }, { 139, 10, 802 }, { 133, 0, 615 }, { 7, 11, 1566 },
+ { 8, 11, 269 }, { 9, 11, 212 }, { 9, 11, 718 }, { 14, 11, 15 },
+ { 14, 11, 132 }, { 142, 11, 227 }, { 133, 10, 290 }, { 132, 10, 380 },
+ { 5, 10, 52 }, { 7, 10, 277 }, { 9, 10, 368 }, { 139, 10, 791 },
+ { 135, 0, 1243 }, { 133, 11, 539 }, { 11, 11, 919 }, { 141, 11, 409 },
+ { 136, 0, 968 }, { 133, 11, 470 }, { 134, 0, 882 }, { 132, 0, 907 },
+ { 5, 0, 100 }, { 10, 0, 329 }, { 12, 0, 416 }, { 149, 0, 29 },
+ { 10, 10, 138 }, { 139, 10, 476 }, { 5, 10, 725 }, { 5, 10, 727 },
+ { 6, 11, 91 }, { 7, 11, 435 }, { 135, 10, 1811 }, { 4, 11, 16 },
+ { 5, 11, 316 }, { 5, 11, 842 }, { 6, 11, 370 }, { 6, 11, 1778 },
+ { 8, 11, 166 }, { 11, 11, 812 }, { 12, 11, 206 }, { 12, 11, 351 },
+ { 14, 11, 418 }, { 16, 11, 15 }, { 16, 11, 34 }, { 18, 11, 3 },
+ { 19, 11, 3 }, { 19, 11, 7 }, { 20, 11, 4 }, { 149, 11, 21 },
+ { 132, 0, 176 }, { 5, 0, 636 }, { 5, 0, 998 }, { 7, 0, 9 },
+ { 7, 0, 1508 }, { 8, 0, 26 }, { 9, 0, 317 }, { 9, 0, 358 },
+ { 10, 0, 210 }, { 10, 0, 292 }, { 10, 0, 533 }, { 11, 0, 555 },
+ { 12, 0, 526 }, { 12, 0, 607 }, { 13, 0, 263 }, { 13, 0, 459 },
+ { 142, 0, 271 }, { 6, 0, 256 }, { 8, 0, 265 }, { 4, 10, 38 },
+ { 7, 10, 307 }, { 7, 10, 999 }, { 7, 10, 1481 }, { 7, 10, 1732 },
+ { 7, 10, 1738 }, { 9, 10, 414 }, { 11, 10, 316 }, { 12, 10, 52 },
+ { 13, 10, 420 }, { 147, 10, 100 }, { 135, 10, 1296 }, { 4, 11, 611 },
+ { 133, 11, 606 }, { 4, 0, 643 }, { 142, 11, 21 }, { 133, 11, 715 },
+ { 133, 10, 723 }, { 6, 0, 610 }, { 135, 11, 597 }, { 10, 0, 127 },
+ { 141, 0, 27 }, { 6, 0, 1995 }, { 6, 0, 2001 }, { 8, 0, 119 },
+ { 136, 0, 973 }, { 4, 11, 149 }, { 138, 11, 368 }, { 12, 0, 522 },
+ { 4, 11, 154 }, { 5, 10, 109 }, { 6, 10, 1784 }, { 7, 11, 1134 },
+ { 7, 10, 1895 }, { 8, 11, 105 }, { 12, 10, 296 }, { 140, 10, 302 },
+ { 4, 11, 31 }, { 6, 11, 429 }, { 7, 11, 962 }, { 9, 11, 458 },
+ { 139, 11, 691 }, { 10, 0, 553 }, { 11, 0, 876 }, { 13, 0, 193 },
+ { 13, 0, 423 }, { 14, 0, 166 }, { 19, 0, 84 }, { 4, 11, 312 },
+ { 5, 10, 216 }, { 7, 10, 1879 }, { 9, 10, 141 }, { 9, 10, 270 },
+ { 9, 10, 679 }, { 10, 10, 159 }, { 11, 10, 197 }, { 12, 10, 538 },
+ { 12, 10, 559 }, { 14, 10, 144 }, { 14, 10, 167 }, { 143, 10, 67 },
+ { 134, 0, 1582 }, { 7, 0, 1578 }, { 135, 11, 1578 }, { 137, 10, 81 },
+ { 132, 11, 236 }, { 134, 10, 391 }, { 134, 0, 795 }, { 7, 10, 322 },
+ { 136, 10, 249 }, { 5, 11, 836 }, { 5, 11, 857 }, { 6, 11, 1680 },
+ { 7, 11, 59 }, { 147, 11, 53 }, { 135, 0, 432 }, { 10, 11, 68 },
+ { 139, 11, 494 }, { 4, 11, 81 }, { 139, 11, 867 }, { 7, 0, 126 },
+ { 136, 0, 84 }, { 142, 11, 280 }, { 5, 11, 282 }, { 8, 11, 650 },
+ { 9, 11, 295 }, { 9, 11, 907 }, { 138, 11, 443 }, { 136, 0, 790 },
+ { 5, 10, 632 }, { 138, 10, 526 }, { 6, 0, 64 }, { 12, 0, 377 },
+ { 13, 0, 309 }, { 14, 0, 141 }, { 14, 0, 429 }, { 14, 11, 141 },
+ { 142, 11, 429 }, { 134, 0, 1529 }, { 6, 0, 321 }, { 7, 0, 1857 },
+ { 9, 0, 530 }, { 19, 0, 99 }, { 7, 10, 948 }, { 7, 10, 1042 },
+ { 8, 10, 235 }, { 8, 10, 461 }, { 9, 10, 453 }, { 10, 10, 354 },
+ { 145, 10, 77 }, { 7, 0, 1104 }, { 11, 0, 269 }, { 11, 0, 539 },
+ { 11, 0, 627 }, { 11, 0, 706 }, { 11, 0, 975 }, { 12, 0, 248 },
+ { 12, 0, 434 }, { 12, 0, 600 }, { 12, 0, 622 }, { 13, 0, 297 },
+ { 13, 0, 485 }, { 14, 0, 69 }, { 14, 0, 409 }, { 143, 0, 108 },
+ { 4, 10, 362 }, { 7, 10, 52 }, { 7, 10, 303 }, { 10, 11, 70 },
+ { 12, 11, 26 }, { 14, 11, 17 }, { 14, 11, 178 }, { 15, 11, 34 },
+ { 149, 11, 12 }, { 11, 0, 977 }, { 141, 0, 507 }, { 9, 0, 34 },
+ { 139, 0, 484 }, { 5, 10, 196 }, { 6, 10, 486 }, { 7, 10, 212 },
+ { 8, 10, 309 }, { 136, 10, 346 }, { 6, 0, 1700 }, { 7, 0, 26 },
+ { 7, 0, 293 }, { 7, 0, 382 }, { 7, 0, 1026 }, { 7, 0, 1087 },
+ { 7, 0, 2027 }, { 8, 0, 24 }, { 8, 0, 114 }, { 8, 0, 252 },
+ { 8, 0, 727 }, { 8, 0, 729 }, { 9, 0, 30 }, { 9, 0, 199 },
+ { 9, 0, 231 }, { 9, 0, 251 }, { 9, 0, 334 }, { 9, 0, 361 },
+ { 9, 0, 712 }, { 10, 0, 55 }, { 10, 0, 60 }, { 10, 0, 232 },
+ { 10, 0, 332 }, { 10, 0, 384 }, { 10, 0, 396 }, { 10, 0, 504 },
+ { 10, 0, 542 }, { 10, 0, 652 }, { 11, 0, 20 }, { 11, 0, 48 },
+ { 11, 0, 207 }, { 11, 0, 291 }, { 11, 0, 298 }, { 11, 0, 342 },
+ { 11, 0, 365 }, { 11, 0, 394 }, { 11, 0, 620 }, { 11, 0, 705 },
+ { 11, 0, 1017 }, { 12, 0, 123 }, { 12, 0, 340 }, { 12, 0, 406 },
+ { 12, 0, 643 }, { 13, 0, 61 }, { 13, 0, 269 }, { 13, 0, 311 },
+ { 13, 0, 319 }, { 13, 0, 486 }, { 14, 0, 234 }, { 15, 0, 62 },
+ { 15, 0, 85 }, { 16, 0, 71 }, { 18, 0, 119 }, { 20, 0, 105 },
+ { 135, 10, 1912 }, { 4, 11, 71 }, { 5, 11, 376 }, { 7, 11, 119 },
+ { 138, 11, 665 }, { 10, 0, 918 }, { 10, 0, 926 }, { 4, 10, 686 },
+ { 136, 11, 55 }, { 138, 10, 625 }, { 136, 10, 706 }, { 132, 11, 479 },
+ { 4, 10, 30 }, { 133, 10, 43 }, { 6, 0, 379 }, { 7, 0, 270 },
+ { 8, 0, 176 }, { 8, 0, 183 }, { 9, 0, 432 }, { 9, 0, 661 },
+ { 12, 0, 247 }, { 12, 0, 617 }, { 18, 0, 125 }, { 7, 11, 607 },
+ { 8, 11, 99 }, { 152, 11, 4 }, { 5, 0, 792 }, { 133, 0, 900 },
+ { 4, 11, 612 }, { 133, 11, 561 }, { 4, 11, 41 }, { 4, 10, 220 },
+ { 5, 11, 74 }, { 7, 10, 1535 }, { 7, 11, 1627 }, { 11, 11, 871 },
+ { 140, 11, 619 }, { 135, 0, 1920 }, { 7, 11, 94 }, { 11, 11, 329 },
+ { 11, 11, 965 }, { 12, 11, 241 }, { 14, 11, 354 }, { 15, 11, 22 },
+ { 148, 11, 63 }, { 9, 11, 209 }, { 137, 11, 300 }, { 134, 0, 771 },
+ { 135, 0, 1979 }, { 4, 0, 901 }, { 133, 0, 776 }, { 142, 0, 254 },
+ { 133, 11, 98 }, { 9, 11, 16 }, { 141, 11, 386 }, { 133, 11, 984 },
+ { 4, 11, 182 }, { 6, 11, 205 }, { 135, 11, 220 }, { 7, 10, 1725 },
+ { 7, 10, 1774 }, { 138, 10, 393 }, { 5, 10, 263 }, { 134, 10, 414 },
+ { 4, 11, 42 }, { 9, 11, 205 }, { 9, 11, 786 }, { 138, 11, 659 },
+ { 14, 0, 140 }, { 148, 0, 41 }, { 8, 0, 440 }, { 10, 0, 359 },
+ { 6, 10, 178 }, { 6, 11, 289 }, { 6, 10, 1750 }, { 7, 11, 1670 },
+ { 9, 10, 690 }, { 10, 10, 155 }, { 10, 10, 373 }, { 11, 10, 698 },
+ { 12, 11, 57 }, { 13, 10, 155 }, { 20, 10, 93 }, { 151, 11, 4 },
+ { 4, 0, 37 }, { 5, 0, 334 }, { 7, 0, 1253 }, { 151, 11, 25 },
+ { 4, 0, 508 }, { 4, 11, 635 }, { 5, 10, 97 }, { 137, 10, 393 },
+ { 139, 11, 533 }, { 4, 0, 640 }, { 133, 0, 513 }, { 134, 10, 1639 },
+ { 132, 11, 371 }, { 4, 11, 272 }, { 7, 11, 836 }, { 7, 11, 1651 },
+ { 145, 11, 89 }, { 5, 11, 825 }, { 6, 11, 444 }, { 6, 11, 1640 },
+ { 136, 11, 308 }, { 4, 10, 191 }, { 7, 10, 934 }, { 8, 10, 647 },
+ { 145, 10, 97 }, { 12, 0, 246 }, { 15, 0, 162 }, { 19, 0, 64 },
+ { 20, 0, 8 }, { 20, 0, 95 }, { 22, 0, 24 }, { 152, 0, 17 },
+ { 4, 0, 533 }, { 5, 10, 165 }, { 9, 10, 346 }, { 138, 10, 655 },
+ { 5, 11, 737 }, { 139, 10, 885 }, { 133, 10, 877 }, { 8, 10, 128 },
+ { 139, 10, 179 }, { 137, 11, 307 }, { 140, 0, 752 }, { 133, 0, 920 },
+ { 135, 0, 1048 }, { 5, 0, 153 }, { 6, 0, 580 }, { 6, 10, 1663 },
+ { 7, 10, 132 }, { 7, 10, 1154 }, { 7, 10, 1415 }, { 7, 10, 1507 },
+ { 12, 10, 493 }, { 15, 10, 105 }, { 151, 10, 15 }, { 5, 10, 459 },
+ { 7, 10, 1073 }, { 8, 10, 241 }, { 136, 10, 334 }, { 138, 0, 391 },
+ { 135, 0, 1952 }, { 133, 11, 525 }, { 8, 11, 641 }, { 11, 11, 388 },
+ { 140, 11, 580 }, { 142, 0, 126 }, { 134, 0, 640 }, { 132, 0, 483 },
+ { 7, 0, 1616 }, { 9, 0, 69 }, { 6, 10, 324 }, { 6, 10, 520 },
+ { 7, 10, 338 }, { 7, 10, 1729 }, { 8, 10, 228 }, { 139, 10, 750 },
+ { 5, 11, 493 }, { 134, 11, 528 }, { 135, 0, 734 }, { 4, 11, 174 },
+ { 135, 11, 911 }, { 138, 0, 480 }, { 9, 0, 495 }, { 146, 0, 104 },
+ { 135, 10, 705 }, { 9, 0, 472 }, { 4, 10, 73 }, { 6, 10, 612 },
+ { 7, 10, 927 }, { 7, 10, 1330 }, { 7, 10, 1822 }, { 8, 10, 217 },
+ { 9, 10, 765 }, { 9, 10, 766 }, { 10, 10, 408 }, { 11, 10, 51 },
+ { 11, 10, 793 }, { 12, 10, 266 }, { 15, 10, 158 }, { 20, 10, 89 },
+ { 150, 10, 32 }, { 7, 11, 548 }, { 137, 11, 58 }, { 4, 11, 32 },
+ { 5, 11, 215 }, { 6, 11, 269 }, { 7, 11, 1782 }, { 7, 11, 1892 },
+ { 10, 11, 16 }, { 11, 11, 822 }, { 11, 11, 954 }, { 141, 11, 481 },
+ { 132, 0, 874 }, { 9, 0, 229 }, { 5, 10, 389 }, { 136, 10, 636 },
+ { 7, 11, 1749 }, { 136, 11, 477 }, { 134, 0, 948 }, { 5, 11, 308 },
+ { 135, 11, 1088 }, { 4, 0, 748 }, { 139, 0, 1009 }, { 136, 10, 21 },
+ { 6, 0, 555 }, { 135, 0, 485 }, { 5, 11, 126 }, { 8, 11, 297 },
+ { 9, 11, 366 }, { 9, 11, 445 }, { 12, 11, 53 }, { 12, 11, 374 },
+ { 141, 11, 492 }, { 7, 11, 1551 }, { 139, 11, 361 }, { 136, 0, 193 },
+ { 136, 0, 472 }, { 8, 0, 653 }, { 13, 0, 93 }, { 147, 0, 14 },
+ { 132, 0, 984 }, { 132, 11, 175 }, { 5, 0, 172 }, { 6, 0, 1971 },
+ { 132, 11, 685 }, { 149, 11, 8 }, { 133, 11, 797 }, { 13, 0, 83 },
+ { 5, 10, 189 }, { 7, 10, 442 }, { 7, 10, 443 }, { 8, 10, 281 },
+ { 12, 10, 174 }, { 141, 10, 261 }, { 134, 0, 1568 }, { 133, 11, 565 },
+ { 139, 0, 384 }, { 133, 0, 260 }, { 7, 0, 758 }, { 7, 0, 880 },
+ { 7, 0, 1359 }, { 9, 0, 164 }, { 9, 0, 167 }, { 10, 0, 156 },
+ { 10, 0, 588 }, { 12, 0, 101 }, { 14, 0, 48 }, { 15, 0, 70 },
+ { 6, 10, 2 }, { 7, 10, 1262 }, { 7, 10, 1737 }, { 8, 10, 22 },
+ { 8, 10, 270 }, { 8, 10, 612 }, { 9, 10, 312 }, { 9, 10, 436 },
+ { 10, 10, 311 }, { 10, 10, 623 }, { 11, 10, 72 }, { 11, 10, 330 },
+ { 11, 10, 455 }, { 12, 10, 321 }, { 12, 10, 504 }, { 12, 10, 530 },
+ { 12, 10, 543 }, { 13, 10, 17 }, { 13, 10, 156 }, { 13, 10, 334 },
+ { 17, 10, 60 }, { 148, 10, 64 }, { 4, 11, 252 }, { 7, 11, 1068 },
+ { 10, 11, 434 }, { 11, 11, 228 }, { 11, 11, 426 }, { 13, 11, 231 },
+ { 18, 11, 106 }, { 148, 11, 87 }, { 7, 10, 354 }, { 10, 10, 410 },
+ { 139, 10, 815 }, { 6, 0, 367 }, { 7, 10, 670 }, { 7, 10, 1327 },
+ { 8, 10, 411 }, { 8, 10, 435 }, { 9, 10, 653 }, { 9, 10, 740 },
+ { 10, 10, 385 }, { 11, 10, 222 }, { 11, 10, 324 }, { 11, 10, 829 },
+ { 140, 10, 611 }, { 7, 0, 1174 }, { 6, 10, 166 }, { 135, 10, 374 },
+ { 146, 0, 121 }, { 132, 0, 828 }, { 5, 11, 231 }, { 138, 11, 509 },
+ { 7, 11, 601 }, { 9, 11, 277 }, { 9, 11, 674 }, { 10, 11, 178 },
+ { 10, 11, 257 }, { 10, 11, 418 }, { 11, 11, 531 }, { 11, 11, 544 },
+ { 11, 11, 585 }, { 12, 11, 113 }, { 12, 11, 475 }, { 13, 11, 99 },
+ { 142, 11, 428 }, { 134, 0, 1541 }, { 135, 11, 1779 }, { 5, 0, 343 },
+ { 134, 10, 398 }, { 135, 10, 50 }, { 135, 11, 1683 }, { 4, 0, 440 },
+ { 7, 0, 57 }, { 8, 0, 167 }, { 8, 0, 375 }, { 9, 0, 82 },
+ { 9, 0, 561 }, { 9, 0, 744 }, { 10, 0, 620 }, { 137, 11, 744 },
+ { 134, 0, 926 }, { 6, 10, 517 }, { 7, 10, 1159 }, { 10, 10, 621 },
+ { 139, 10, 192 }, { 137, 0, 827 }, { 8, 0, 194 }, { 136, 0, 756 },
+ { 10, 10, 223 }, { 139, 10, 645 }, { 7, 10, 64 }, { 136, 10, 245 },
+ { 4, 11, 399 }, { 5, 11, 119 }, { 5, 11, 494 }, { 7, 11, 751 },
+ { 137, 11, 556 }, { 132, 0, 808 }, { 135, 0, 22 }, { 7, 10, 1763 },
+ { 140, 10, 310 }, { 5, 0, 639 }, { 7, 0, 1249 }, { 11, 0, 896 },
+ { 134, 11, 584 }, { 134, 0, 1614 }, { 135, 0, 860 }, { 135, 11, 1121 },
+ { 5, 10, 129 }, { 6, 10, 61 }, { 135, 10, 947 }, { 4, 0, 102 },
+ { 7, 0, 815 }, { 7, 0, 1699 }, { 139, 0, 964 }, { 13, 10, 505 },
+ { 141, 10, 506 }, { 139, 10, 1000 }, { 132, 11, 679 }, { 132, 0, 899 },
+ { 132, 0, 569 }, { 5, 11, 694 }, { 137, 11, 714 }, { 136, 0, 795 },
+ { 6, 0, 2045 }, { 139, 11, 7 }, { 6, 0, 52 }, { 9, 0, 104 },
+ { 9, 0, 559 }, { 12, 0, 308 }, { 147, 0, 87 }, { 4, 0, 301 },
+ { 132, 0, 604 }, { 133, 10, 637 }, { 136, 0, 779 }, { 5, 11, 143 },
+ { 5, 11, 769 }, { 6, 11, 1760 }, { 7, 11, 682 }, { 7, 11, 1992 },
+ { 136, 11, 736 }, { 137, 10, 590 }, { 147, 0, 32 }, { 137, 11, 527 },
+ { 5, 10, 280 }, { 135, 10, 1226 }, { 134, 0, 494 }, { 6, 0, 677 },
+ { 6, 0, 682 }, { 134, 0, 1044 }, { 133, 10, 281 }, { 135, 10, 1064 },
+ { 7, 0, 508 }, { 133, 11, 860 }, { 6, 11, 422 }, { 7, 11, 0 },
+ { 7, 11, 1544 }, { 9, 11, 577 }, { 11, 11, 990 }, { 12, 11, 141 },
+ { 12, 11, 453 }, { 13, 11, 47 }, { 141, 11, 266 }, { 134, 0, 1014 },
+ { 5, 11, 515 }, { 137, 11, 131 }, { 134, 0, 957 }, { 132, 11, 646 },
+ { 6, 0, 310 }, { 7, 0, 1849 }, { 8, 0, 72 }, { 8, 0, 272 },
+ { 8, 0, 431 }, { 9, 0, 12 }, { 9, 0, 376 }, { 10, 0, 563 },
+ { 10, 0, 630 }, { 10, 0, 796 }, { 10, 0, 810 }, { 11, 0, 367 },
+ { 11, 0, 599 }, { 11, 0, 686 }, { 140, 0, 672 }, { 7, 0, 570 },
+ { 4, 11, 396 }, { 7, 10, 120 }, { 7, 11, 728 }, { 8, 10, 489 },
+ { 9, 11, 117 }, { 9, 10, 319 }, { 10, 10, 820 }, { 11, 10, 1004 },
+ { 12, 10, 379 }, { 12, 10, 679 }, { 13, 10, 117 }, { 13, 11, 202 },
+ { 13, 10, 412 }, { 14, 10, 25 }, { 15, 10, 52 }, { 15, 10, 161 },
+ { 16, 10, 47 }, { 20, 11, 51 }, { 149, 10, 2 }, { 6, 11, 121 },
+ { 6, 11, 124 }, { 6, 11, 357 }, { 7, 11, 1138 }, { 7, 11, 1295 },
+ { 8, 11, 162 }, { 139, 11, 655 }, { 8, 0, 449 }, { 4, 10, 937 },
+ { 5, 10, 801 }, { 136, 11, 449 }, { 139, 11, 958 }, { 6, 0, 181 },
+ { 7, 0, 537 }, { 8, 0, 64 }, { 9, 0, 127 }, { 10, 0, 496 },
+ { 12, 0, 510 }, { 141, 0, 384 }, { 138, 11, 253 }, { 4, 0, 244 },
+ { 135, 0, 233 }, { 133, 11, 237 }, { 132, 10, 365 }, { 6, 0, 1650 },
+ { 10, 0, 702 }, { 139, 0, 245 }, { 5, 10, 7 }, { 139, 10, 774 },
+ { 13, 0, 463 }, { 20, 0, 49 }, { 13, 11, 463 }, { 148, 11, 49 },
+ { 4, 10, 734 }, { 5, 10, 662 }, { 134, 10, 430 }, { 4, 10, 746 },
+ { 135, 10, 1090 }, { 5, 10, 360 }, { 136, 10, 237 }, { 137, 0, 338 },
+ { 143, 11, 10 }, { 7, 11, 571 }, { 138, 11, 366 }, { 134, 0, 1279 },
+ { 9, 11, 513 }, { 10, 11, 22 }, { 10, 11, 39 }, { 12, 11, 122 },
+ { 140, 11, 187 }, { 133, 0, 896 }, { 146, 0, 178 }, { 134, 0, 695 },
+ { 137, 0, 808 }, { 134, 11, 587 }, { 7, 11, 107 }, { 7, 11, 838 },
+ { 8, 11, 550 }, { 138, 11, 401 }, { 7, 0, 1117 }, { 136, 0, 539 },
+ { 4, 10, 277 }, { 5, 10, 608 }, { 6, 10, 493 }, { 7, 10, 457 },
+ { 140, 10, 384 }, { 133, 11, 768 }, { 12, 0, 257 }, { 7, 10, 27 },
+ { 135, 10, 316 }, { 140, 0, 1003 }, { 4, 0, 207 }, { 5, 0, 586 },
+ { 5, 0, 676 }, { 6, 0, 448 }, { 8, 0, 244 }, { 11, 0, 1 },
+ { 13, 0, 3 }, { 16, 0, 54 }, { 17, 0, 4 }, { 18, 0, 13 },
+ { 133, 10, 552 }, { 4, 10, 401 }, { 137, 10, 264 }, { 5, 0, 516 },
+ { 7, 0, 1883 }, { 135, 11, 1883 }, { 12, 0, 960 }, { 132, 11, 894 },
+ { 5, 0, 4 }, { 5, 0, 810 }, { 6, 0, 13 }, { 6, 0, 538 },
+ { 6, 0, 1690 }, { 6, 0, 1726 }, { 7, 0, 499 }, { 7, 0, 1819 },
+ { 8, 0, 148 }, { 8, 0, 696 }, { 8, 0, 791 }, { 12, 0, 125 },
+ { 143, 0, 9 }, { 135, 0, 1268 }, { 11, 0, 30 }, { 14, 0, 315 },
+ { 9, 10, 543 }, { 10, 10, 524 }, { 12, 10, 524 }, { 16, 10, 18 },
+ { 20, 10, 26 }, { 148, 10, 65 }, { 6, 0, 748 }, { 4, 10, 205 },
+ { 5, 10, 623 }, { 7, 10, 104 }, { 136, 10, 519 }, { 11, 0, 542 },
+ { 139, 0, 852 }, { 140, 0, 6 }, { 132, 0, 848 }, { 7, 0, 1385 },
+ { 11, 0, 582 }, { 11, 0, 650 }, { 11, 0, 901 }, { 11, 0, 949 },
+ { 12, 0, 232 }, { 12, 0, 236 }, { 13, 0, 413 }, { 13, 0, 501 },
+ { 18, 0, 116 }, { 7, 10, 579 }, { 9, 10, 41 }, { 9, 10, 244 },
+ { 9, 10, 669 }, { 10, 10, 5 }, { 11, 10, 861 }, { 11, 10, 951 },
+ { 139, 10, 980 }, { 4, 0, 945 }, { 6, 0, 1811 }, { 6, 0, 1845 },
+ { 6, 0, 1853 }, { 6, 0, 1858 }, { 8, 0, 862 }, { 12, 0, 782 },
+ { 12, 0, 788 }, { 18, 0, 160 }, { 148, 0, 117 }, { 132, 10, 717 },
+ { 4, 0, 925 }, { 5, 0, 803 }, { 8, 0, 698 }, { 138, 0, 828 },
+ { 134, 0, 1416 }, { 132, 0, 610 }, { 139, 0, 992 }, { 6, 0, 878 },
+ { 134, 0, 1477 }, { 135, 0, 1847 }, { 138, 11, 531 }, { 137, 11, 539 },
+ { 134, 11, 272 }, { 133, 0, 383 }, { 134, 0, 1404 }, { 132, 10, 489 },
+ { 4, 11, 9 }, { 5, 11, 128 }, { 7, 11, 368 }, { 11, 11, 480 },
+ { 148, 11, 3 }, { 136, 0, 986 }, { 9, 0, 660 }, { 138, 0, 347 },
+ { 135, 10, 892 }, { 136, 11, 682 }, { 7, 0, 572 }, { 9, 0, 592 },
+ { 11, 0, 680 }, { 12, 0, 356 }, { 140, 0, 550 }, { 7, 0, 1411 },
+ { 138, 11, 527 }, { 4, 11, 2 }, { 7, 11, 545 }, { 135, 11, 894 },
+ { 137, 10, 473 }, { 11, 0, 64 }, { 7, 11, 481 }, { 7, 10, 819 },
+ { 9, 10, 26 }, { 9, 10, 392 }, { 9, 11, 792 }, { 10, 10, 152 },
+ { 10, 10, 226 }, { 12, 10, 276 }, { 12, 10, 426 }, { 12, 10, 589 },
+ { 13, 10, 460 }, { 15, 10, 97 }, { 19, 10, 48 }, { 148, 10, 104 },
+ { 135, 10, 51 }, { 136, 11, 445 }, { 136, 11, 646 }, { 135, 0, 606 },
+ { 132, 10, 674 }, { 6, 0, 1829 }, { 134, 0, 1830 }, { 132, 10, 770 },
+ { 5, 10, 79 }, { 7, 10, 1027 }, { 7, 10, 1477 }, { 139, 10, 52 },
+ { 5, 11, 530 }, { 142, 11, 113 }, { 134, 10, 1666 }, { 7, 0, 748 },
+ { 139, 0, 700 }, { 134, 10, 195 }, { 133, 10, 789 }, { 9, 0, 87 },
+ { 10, 0, 365 }, { 4, 10, 251 }, { 4, 10, 688 }, { 7, 10, 513 },
+ { 135, 10, 1284 }, { 136, 11, 111 }, { 133, 0, 127 }, { 6, 0, 198 },
+ { 140, 0, 83 }, { 133, 11, 556 }, { 133, 10, 889 }, { 4, 10, 160 },
+ { 5, 10, 330 }, { 7, 10, 1434 }, { 136, 10, 174 }, { 5, 0, 276 },
+ { 6, 0, 55 }, { 7, 0, 1369 }, { 138, 0, 864 }, { 8, 11, 16 },
+ { 140, 11, 568 }, { 6, 0, 1752 }, { 136, 0, 726 }, { 135, 0, 1066 },
+ { 133, 0, 764 }, { 6, 11, 186 }, { 137, 11, 426 }, { 11, 0, 683 },
+ { 139, 11, 683 }, { 6, 0, 309 }, { 7, 0, 331 }, { 138, 0, 550 },
+ { 133, 10, 374 }, { 6, 0, 1212 }, { 6, 0, 1852 }, { 7, 0, 1062 },
+ { 8, 0, 874 }, { 8, 0, 882 }, { 138, 0, 936 }, { 132, 11, 585 },
+ { 134, 0, 1364 }, { 7, 0, 986 }, { 133, 10, 731 }, { 6, 0, 723 },
+ { 6, 0, 1408 }, { 138, 0, 381 }, { 135, 0, 1573 }, { 134, 0, 1025 },
+ { 4, 10, 626 }, { 5, 10, 642 }, { 6, 10, 425 }, { 10, 10, 202 },
+ { 139, 10, 141 }, { 4, 11, 93 }, { 5, 11, 252 }, { 6, 11, 229 },
+ { 7, 11, 291 }, { 9, 11, 550 }, { 139, 11, 644 }, { 137, 11, 749 },
+ { 137, 11, 162 }, { 132, 11, 381 }, { 135, 0, 1559 }, { 6, 0, 194 },
+ { 7, 0, 133 }, { 10, 0, 493 }, { 10, 0, 570 }, { 139, 0, 664 },
+ { 5, 0, 24 }, { 5, 0, 569 }, { 6, 0, 3 }, { 6, 0, 119 },
+ { 6, 0, 143 }, { 6, 0, 440 }, { 7, 0, 295 }, { 7, 0, 599 },
+ { 7, 0, 1686 }, { 7, 0, 1854 }, { 8, 0, 424 }, { 9, 0, 43 },
+ { 9, 0, 584 }, { 9, 0, 760 }, { 10, 0, 148 }, { 10, 0, 328 },
+ { 11, 0, 159 }, { 11, 0, 253 }, { 11, 0, 506 }, { 12, 0, 487 },
+ { 140, 0, 531 }, { 6, 0, 661 }, { 134, 0, 1517 }, { 136, 10, 835 },
+ { 151, 10, 17 }, { 5, 0, 14 }, { 5, 0, 892 }, { 6, 0, 283 },
+ { 7, 0, 234 }, { 136, 0, 537 }, { 139, 0, 541 }, { 4, 0, 126 },
+ { 8, 0, 635 }, { 147, 0, 34 }, { 4, 0, 316 }, { 4, 0, 495 },
+ { 135, 0, 1561 }, { 4, 11, 187 }, { 5, 11, 184 }, { 5, 11, 690 },
+ { 7, 11, 1869 }, { 138, 11, 756 }, { 139, 11, 783 }, { 4, 0, 998 },
+ { 137, 0, 861 }, { 136, 0, 1009 }, { 139, 11, 292 }, { 5, 11, 21 },
+ { 6, 11, 77 }, { 6, 11, 157 }, { 7, 11, 974 }, { 7, 11, 1301 },
+ { 7, 11, 1339 }, { 7, 11, 1490 }, { 7, 11, 1873 }, { 137, 11, 628 },
+ { 7, 11, 1283 }, { 9, 11, 227 }, { 9, 11, 499 }, { 10, 11, 341 },
+ { 11, 11, 325 }, { 11, 11, 408 }, { 14, 11, 180 }, { 15, 11, 144 },
+ { 18, 11, 47 }, { 147, 11, 49 }, { 4, 0, 64 }, { 5, 0, 352 },
+ { 5, 0, 720 }, { 6, 0, 368 }, { 139, 0, 359 }, { 5, 10, 384 },
+ { 8, 10, 455 }, { 140, 10, 48 }, { 5, 10, 264 }, { 134, 10, 184 },
+ { 7, 0, 1577 }, { 10, 0, 304 }, { 10, 0, 549 }, { 12, 0, 365 },
+ { 13, 0, 220 }, { 13, 0, 240 }, { 142, 0, 33 }, { 134, 0, 1107 },
+ { 134, 0, 929 }, { 135, 0, 1142 }, { 6, 0, 175 }, { 137, 0, 289 },
+ { 5, 0, 432 }, { 133, 0, 913 }, { 6, 0, 279 }, { 7, 0, 219 },
+ { 5, 10, 633 }, { 135, 10, 1323 }, { 7, 0, 785 }, { 7, 10, 359 },
+ { 8, 10, 243 }, { 140, 10, 175 }, { 139, 0, 595 }, { 132, 10, 105 },
+ { 8, 11, 398 }, { 9, 11, 681 }, { 139, 11, 632 }, { 140, 0, 80 },
+ { 5, 0, 931 }, { 134, 0, 1698 }, { 142, 11, 241 }, { 134, 11, 20 },
+ { 134, 0, 1323 }, { 11, 0, 526 }, { 11, 0, 939 }, { 141, 0, 290 },
+ { 5, 0, 774 }, { 6, 0, 780 }, { 6, 0, 1637 }, { 6, 0, 1686 },
+ { 6, 0, 1751 }, { 8, 0, 559 }, { 141, 0, 109 }, { 141, 0, 127 },
+ { 7, 0, 1167 }, { 11, 0, 934 }, { 13, 0, 391 }, { 17, 0, 76 },
+ { 135, 11, 709 }, { 135, 0, 963 }, { 6, 0, 260 }, { 135, 0, 1484 },
+ { 134, 0, 573 }, { 4, 10, 758 }, { 139, 11, 941 }, { 135, 10, 1649 },
+ { 145, 11, 36 }, { 4, 0, 292 }, { 137, 0, 580 }, { 4, 0, 736 },
+ { 5, 0, 871 }, { 6, 0, 1689 }, { 135, 0, 1944 }, { 7, 11, 945 },
+ { 11, 11, 713 }, { 139, 11, 744 }, { 134, 0, 1164 }, { 135, 11, 937 },
+ { 6, 0, 1922 }, { 9, 0, 982 }, { 15, 0, 173 }, { 15, 0, 178 },
+ { 15, 0, 200 }, { 18, 0, 189 }, { 18, 0, 207 }, { 21, 0, 47 },
+ { 135, 11, 1652 }, { 7, 0, 1695 }, { 139, 10, 128 }, { 6, 0, 63 },
+ { 135, 0, 920 }, { 133, 0, 793 }, { 143, 11, 134 }, { 133, 10, 918 },
+ { 5, 0, 67 }, { 6, 0, 62 }, { 6, 0, 374 }, { 135, 0, 1391 },
+ { 9, 0, 790 }, { 12, 0, 47 }, { 4, 11, 579 }, { 5, 11, 226 },
+ { 5, 11, 323 }, { 135, 11, 960 }, { 10, 11, 784 }, { 141, 11, 191 },
+ { 4, 0, 391 }, { 135, 0, 1169 }, { 137, 0, 443 }, { 13, 11, 232 },
+ { 146, 11, 35 }, { 132, 10, 340 }, { 132, 0, 271 }, { 137, 11, 313 },
+ { 5, 11, 973 }, { 137, 11, 659 }, { 134, 0, 1140 }, { 6, 11, 135 },
+ { 135, 11, 1176 }, { 4, 0, 253 }, { 5, 0, 544 }, { 7, 0, 300 },
+ { 137, 0, 340 }, { 7, 0, 897 }, { 5, 10, 985 }, { 7, 10, 509 },
+ { 145, 10, 96 }, { 138, 11, 735 }, { 135, 10, 1919 }, { 138, 0, 890 },
+ { 5, 0, 818 }, { 134, 0, 1122 }, { 5, 0, 53 }, { 5, 0, 541 },
+ { 6, 0, 94 }, { 6, 0, 499 }, { 7, 0, 230 }, { 139, 0, 321 },
+ { 4, 0, 920 }, { 5, 0, 25 }, { 5, 0, 790 }, { 6, 0, 457 },
+ { 7, 0, 853 }, { 8, 0, 788 }, { 142, 11, 31 }, { 132, 10, 247 },
+ { 135, 11, 314 }, { 132, 0, 468 }, { 7, 0, 243 }, { 6, 10, 337 },
+ { 7, 10, 494 }, { 8, 10, 27 }, { 8, 10, 599 }, { 138, 10, 153 },
+ { 4, 10, 184 }, { 5, 10, 390 }, { 7, 10, 618 }, { 7, 10, 1456 },
+ { 139, 10, 710 }, { 134, 0, 870 }, { 134, 0, 1238 }, { 134, 0, 1765 },
+ { 10, 0, 853 }, { 10, 0, 943 }, { 14, 0, 437 }, { 14, 0, 439 },
+ { 14, 0, 443 }, { 14, 0, 446 }, { 14, 0, 452 }, { 14, 0, 469 },
+ { 14, 0, 471 }, { 14, 0, 473 }, { 16, 0, 93 }, { 16, 0, 102 },
+ { 16, 0, 110 }, { 148, 0, 121 }, { 4, 0, 605 }, { 7, 0, 518 },
+ { 7, 0, 1282 }, { 7, 0, 1918 }, { 10, 0, 180 }, { 139, 0, 218 },
+ { 133, 0, 822 }, { 4, 0, 634 }, { 11, 0, 916 }, { 142, 0, 419 },
+ { 6, 11, 281 }, { 7, 11, 6 }, { 8, 11, 282 }, { 8, 11, 480 },
+ { 8, 11, 499 }, { 9, 11, 198 }, { 10, 11, 143 }, { 10, 11, 169 },
+ { 10, 11, 211 }, { 10, 11, 417 }, { 10, 11, 574 }, { 11, 11, 147 },
+ { 11, 11, 395 }, { 12, 11, 75 }, { 12, 11, 407 }, { 12, 11, 608 },
+ { 13, 11, 500 }, { 142, 11, 251 }, { 134, 0, 898 }, { 6, 0, 36 },
+ { 7, 0, 658 }, { 8, 0, 454 }, { 150, 11, 48 }, { 133, 11, 674 },
+ { 135, 11, 1776 }, { 4, 11, 419 }, { 10, 10, 227 }, { 11, 10, 497 },
+ { 11, 10, 709 }, { 140, 10, 415 }, { 6, 10, 360 }, { 7, 10, 1664 },
+ { 136, 10, 478 }, { 137, 0, 806 }, { 12, 11, 508 }, { 14, 11, 102 },
+ { 14, 11, 226 }, { 144, 11, 57 }, { 135, 11, 1123 }, { 4, 11, 138 },
+ { 7, 11, 1012 }, { 7, 11, 1280 }, { 137, 11, 76 }, { 5, 11, 29 },
+ { 140, 11, 638 }, { 136, 10, 699 }, { 134, 0, 1326 }, { 132, 0, 104 },
+ { 135, 11, 735 }, { 132, 10, 739 }, { 134, 0, 1331 }, { 7, 0, 260 },
+ { 135, 11, 260 }, { 135, 11, 1063 }, { 7, 0, 45 }, { 9, 0, 542 },
+ { 9, 0, 566 }, { 10, 0, 728 }, { 137, 10, 869 }, { 4, 10, 67 },
+ { 5, 10, 422 }, { 7, 10, 1037 }, { 7, 10, 1289 }, { 7, 10, 1555 },
+ { 9, 10, 741 }, { 145, 10, 108 }, { 139, 0, 263 }, { 134, 0, 1516 },
+ { 14, 0, 146 }, { 15, 0, 42 }, { 16, 0, 23 }, { 17, 0, 86 },
+ { 146, 0, 17 }, { 138, 0, 468 }, { 136, 0, 1005 }, { 4, 11, 17 },
+ { 5, 11, 23 }, { 7, 11, 995 }, { 11, 11, 383 }, { 11, 11, 437 },
+ { 12, 11, 460 }, { 140, 11, 532 }, { 7, 0, 87 }, { 142, 0, 288 },
+ { 138, 10, 96 }, { 135, 11, 626 }, { 144, 10, 26 }, { 7, 0, 988 },
+ { 7, 0, 1939 }, { 9, 0, 64 }, { 9, 0, 502 }, { 12, 0, 22 },
+ { 12, 0, 34 }, { 13, 0, 12 }, { 13, 0, 234 }, { 147, 0, 77 },
+ { 13, 0, 133 }, { 8, 10, 203 }, { 11, 10, 823 }, { 11, 10, 846 },
+ { 12, 10, 482 }, { 13, 10, 277 }, { 13, 10, 302 }, { 13, 10, 464 },
+ { 14, 10, 205 }, { 142, 10, 221 }, { 4, 10, 449 }, { 133, 10, 718 },
+ { 135, 0, 141 }, { 6, 0, 1842 }, { 136, 0, 872 }, { 8, 11, 70 },
+ { 12, 11, 171 }, { 141, 11, 272 }, { 4, 10, 355 }, { 6, 10, 311 },
+ { 9, 10, 256 }, { 138, 10, 404 }, { 132, 0, 619 }, { 137, 0, 261 },
+ { 10, 11, 233 }, { 10, 10, 758 }, { 139, 11, 76 }, { 5, 0, 246 },
+ { 8, 0, 189 }, { 9, 0, 355 }, { 9, 0, 512 }, { 10, 0, 124 },
+ { 10, 0, 453 }, { 11, 0, 143 }, { 11, 0, 416 }, { 11, 0, 859 },
+ { 141, 0, 341 }, { 134, 11, 442 }, { 133, 10, 827 }, { 5, 10, 64 },
+ { 140, 10, 581 }, { 4, 10, 442 }, { 7, 10, 1047 }, { 7, 10, 1352 },
+ { 135, 10, 1643 }, { 134, 11, 1709 }, { 5, 0, 678 }, { 6, 0, 305 },
+ { 7, 0, 775 }, { 7, 0, 1065 }, { 133, 10, 977 }, { 11, 11, 69 },
+ { 12, 11, 105 }, { 12, 11, 117 }, { 13, 11, 213 }, { 14, 11, 13 },
+ { 14, 11, 62 }, { 14, 11, 177 }, { 14, 11, 421 }, { 15, 11, 19 },
+ { 146, 11, 141 }, { 137, 11, 309 }, { 5, 0, 35 }, { 7, 0, 862 },
+ { 7, 0, 1886 }, { 138, 0, 179 }, { 136, 0, 285 }, { 132, 0, 517 },
+ { 7, 11, 976 }, { 9, 11, 146 }, { 10, 11, 206 }, { 10, 11, 596 },
+ { 13, 11, 218 }, { 142, 11, 153 }, { 132, 10, 254 }, { 6, 0, 214 },
+ { 12, 0, 540 }, { 4, 10, 275 }, { 7, 10, 1219 }, { 140, 10, 376 },
+ { 8, 0, 667 }, { 11, 0, 403 }, { 146, 0, 83 }, { 12, 0, 74 },
+ { 10, 11, 648 }, { 11, 11, 671 }, { 143, 11, 46 }, { 135, 0, 125 },
+ { 134, 10, 1753 }, { 133, 0, 761 }, { 6, 0, 912 }, { 4, 11, 518 },
+ { 6, 10, 369 }, { 6, 10, 502 }, { 7, 10, 1036 }, { 7, 11, 1136 },
+ { 8, 10, 348 }, { 9, 10, 452 }, { 10, 10, 26 }, { 11, 10, 224 },
+ { 11, 10, 387 }, { 11, 10, 772 }, { 12, 10, 95 }, { 12, 10, 629 },
+ { 13, 10, 195 }, { 13, 10, 207 }, { 13, 10, 241 }, { 14, 10, 260 },
+ { 14, 10, 270 }, { 143, 10, 140 }, { 10, 0, 131 }, { 140, 0, 72 },
+ { 132, 10, 269 }, { 5, 10, 480 }, { 7, 10, 532 }, { 7, 10, 1197 },
+ { 7, 10, 1358 }, { 8, 10, 291 }, { 11, 10, 349 }, { 142, 10, 396 },
+ { 8, 11, 689 }, { 137, 11, 863 }, { 8, 0, 333 }, { 138, 0, 182 },
+ { 4, 11, 18 }, { 7, 11, 145 }, { 7, 11, 444 }, { 7, 11, 1278 },
+ { 8, 11, 49 }, { 8, 11, 400 }, { 9, 11, 71 }, { 9, 11, 250 },
+ { 10, 11, 459 }, { 12, 11, 160 }, { 144, 11, 24 }, { 14, 11, 35 },
+ { 142, 11, 191 }, { 135, 11, 1864 }, { 135, 0, 1338 }, { 148, 10, 15 },
+ { 14, 0, 94 }, { 15, 0, 65 }, { 16, 0, 4 }, { 16, 0, 77 },
+ { 16, 0, 80 }, { 145, 0, 5 }, { 12, 11, 82 }, { 143, 11, 36 },
+ { 133, 11, 1010 }, { 133, 0, 449 }, { 133, 0, 646 }, { 7, 0, 86 },
+ { 8, 0, 103 }, { 135, 10, 657 }, { 7, 0, 2028 }, { 138, 0, 641 },
+ { 136, 10, 533 }, { 134, 0, 1 }, { 139, 11, 970 }, { 5, 11, 87 },
+ { 7, 11, 313 }, { 7, 11, 1103 }, { 10, 11, 112 }, { 10, 11, 582 },
+ { 11, 11, 389 }, { 11, 11, 813 }, { 12, 11, 385 }, { 13, 11, 286 },
+ { 14, 11, 124 }, { 146, 11, 108 }, { 6, 0, 869 }, { 132, 11, 267 },
+ { 6, 0, 277 }, { 7, 0, 1274 }, { 7, 0, 1386 }, { 146, 0, 87 },
+ { 6, 0, 187 }, { 7, 0, 39 }, { 7, 0, 1203 }, { 8, 0, 380 },
+ { 14, 0, 117 }, { 149, 0, 28 }, { 4, 10, 211 }, { 4, 10, 332 },
+ { 5, 10, 335 }, { 6, 10, 238 }, { 7, 10, 269 }, { 7, 10, 811 },
+ { 7, 10, 1797 }, { 8, 10, 836 }, { 9, 10, 507 }, { 141, 10, 242 },
+ { 4, 0, 785 }, { 5, 0, 368 }, { 6, 0, 297 }, { 7, 0, 793 },
+ { 139, 0, 938 }, { 7, 0, 464 }, { 8, 0, 558 }, { 11, 0, 105 },
+ { 12, 0, 231 }, { 14, 0, 386 }, { 15, 0, 102 }, { 148, 0, 75 },
+ { 133, 10, 1009 }, { 8, 0, 877 }, { 140, 0, 731 }, { 139, 11, 289 },
+ { 10, 11, 249 }, { 139, 11, 209 }, { 132, 11, 561 }, { 134, 0, 1608 },
+ { 132, 11, 760 }, { 134, 0, 1429 }, { 9, 11, 154 }, { 140, 11, 485 },
+ { 5, 10, 228 }, { 6, 10, 203 }, { 7, 10, 156 }, { 8, 10, 347 },
+ { 137, 10, 265 }, { 7, 0, 1010 }, { 11, 0, 733 }, { 11, 0, 759 },
+ { 13, 0, 34 }, { 14, 0, 427 }, { 146, 0, 45 }, { 7, 10, 1131 },
+ { 135, 10, 1468 }, { 136, 11, 255 }, { 7, 0, 1656 }, { 9, 0, 369 },
+ { 10, 0, 338 }, { 10, 0, 490 }, { 11, 0, 154 }, { 11, 0, 545 },
+ { 11, 0, 775 }, { 13, 0, 77 }, { 141, 0, 274 }, { 133, 11, 621 },
+ { 134, 0, 1038 }, { 4, 11, 368 }, { 135, 11, 641 }, { 6, 0, 2010 },
+ { 8, 0, 979 }, { 8, 0, 985 }, { 10, 0, 951 }, { 138, 0, 1011 },
+ { 134, 0, 1005 }, { 19, 0, 121 }, { 5, 10, 291 }, { 5, 10, 318 },
+ { 7, 10, 765 }, { 9, 10, 389 }, { 140, 10, 548 }, { 5, 0, 20 },
+ { 6, 0, 298 }, { 7, 0, 659 }, { 137, 0, 219 }, { 7, 0, 1440 },
+ { 11, 0, 854 }, { 11, 0, 872 }, { 11, 0, 921 }, { 12, 0, 551 },
+ { 13, 0, 472 }, { 142, 0, 367 }, { 5, 0, 490 }, { 6, 0, 615 },
+ { 6, 0, 620 }, { 135, 0, 683 }, { 6, 0, 1070 }, { 134, 0, 1597 },
+ { 139, 0, 522 }, { 132, 0, 439 }, { 136, 0, 669 }, { 6, 0, 766 },
+ { 6, 0, 1143 }, { 6, 0, 1245 }, { 10, 10, 525 }, { 139, 10, 82 },
+ { 9, 11, 92 }, { 147, 11, 91 }, { 6, 0, 668 }, { 134, 0, 1218 },
+ { 6, 11, 525 }, { 9, 11, 876 }, { 140, 11, 284 }, { 132, 0, 233 },
+ { 136, 0, 547 }, { 132, 10, 422 }, { 5, 10, 355 }, { 145, 10, 0 },
+ { 6, 11, 300 }, { 135, 11, 1515 }, { 4, 0, 482 }, { 137, 10, 905 },
+ { 4, 0, 886 }, { 7, 0, 346 }, { 133, 11, 594 }, { 133, 10, 865 },
+ { 5, 10, 914 }, { 134, 10, 1625 }, { 135, 0, 334 }, { 5, 0, 795 },
+ { 6, 0, 1741 }, { 133, 10, 234 }, { 135, 10, 1383 }, { 6, 11, 1641 },
+ { 136, 11, 820 }, { 135, 0, 371 }, { 7, 11, 1313 }, { 138, 11, 660 },
+ { 135, 10, 1312 }, { 135, 0, 622 }, { 7, 0, 625 }, { 135, 0, 1750 },
+ { 135, 0, 339 }, { 4, 0, 203 }, { 135, 0, 1936 }, { 15, 0, 29 },
+ { 16, 0, 38 }, { 15, 11, 29 }, { 144, 11, 38 }, { 5, 0, 338 },
+ { 135, 0, 1256 }, { 135, 10, 1493 }, { 10, 0, 130 }, { 6, 10, 421 },
+ { 7, 10, 61 }, { 7, 10, 1540 }, { 138, 10, 501 }, { 6, 11, 389 },
+ { 7, 11, 149 }, { 9, 11, 142 }, { 138, 11, 94 }, { 137, 10, 341 },
+ { 11, 0, 678 }, { 12, 0, 307 }, { 142, 10, 98 }, { 6, 11, 8 },
+ { 7, 11, 1881 }, { 136, 11, 91 }, { 135, 0, 2044 }, { 6, 0, 770 },
+ { 6, 0, 802 }, { 6, 0, 812 }, { 7, 0, 311 }, { 9, 0, 308 },
+ { 12, 0, 255 }, { 6, 10, 102 }, { 7, 10, 72 }, { 15, 10, 142 },
+ { 147, 10, 67 }, { 151, 10, 30 }, { 135, 10, 823 }, { 135, 0, 1266 },
+ { 135, 11, 1746 }, { 135, 10, 1870 }, { 4, 0, 400 }, { 5, 0, 267 },
+ { 135, 0, 232 }, { 7, 11, 24 }, { 11, 11, 542 }, { 139, 11, 852 },
+ { 135, 11, 1739 }, { 4, 11, 503 }, { 135, 11, 1661 }, { 5, 11, 130 },
+ { 7, 11, 1314 }, { 9, 11, 610 }, { 10, 11, 718 }, { 11, 11, 601 },
+ { 11, 11, 819 }, { 11, 11, 946 }, { 140, 11, 536 }, { 10, 11, 149 },
+ { 11, 11, 280 }, { 142, 11, 336 }, { 7, 0, 739 }, { 11, 0, 690 },
+ { 7, 11, 1946 }, { 8, 10, 48 }, { 8, 10, 88 }, { 8, 10, 582 },
+ { 8, 10, 681 }, { 9, 10, 373 }, { 9, 10, 864 }, { 11, 10, 157 },
+ { 11, 10, 843 }, { 148, 10, 27 }, { 134, 0, 990 }, { 4, 10, 88 },
+ { 5, 10, 137 }, { 5, 10, 174 }, { 5, 10, 777 }, { 6, 10, 1664 },
+ { 6, 10, 1725 }, { 7, 10, 77 }, { 7, 10, 426 }, { 7, 10, 1317 },
+ { 7, 10, 1355 }, { 8, 10, 126 }, { 8, 10, 563 }, { 9, 10, 523 },
+ { 9, 10, 750 }, { 10, 10, 310 }, { 10, 10, 836 }, { 11, 10, 42 },
+ { 11, 10, 318 }, { 11, 10, 731 }, { 12, 10, 68 }, { 12, 10, 92 },
+ { 12, 10, 507 }, { 12, 10, 692 }, { 13, 10, 81 }, { 13, 10, 238 },
+ { 13, 10, 374 }, { 14, 10, 436 }, { 18, 10, 138 }, { 19, 10, 78 },
+ { 19, 10, 111 }, { 20, 10, 55 }, { 20, 10, 77 }, { 148, 10, 92 },
+ { 141, 10, 418 }, { 7, 0, 1831 }, { 132, 10, 938 }, { 6, 0, 776 },
+ { 134, 0, 915 }, { 138, 10, 351 }, { 5, 11, 348 }, { 6, 11, 522 },
+ { 6, 10, 1668 }, { 7, 10, 1499 }, { 8, 10, 117 }, { 9, 10, 314 },
+ { 138, 10, 174 }, { 135, 10, 707 }, { 132, 0, 613 }, { 133, 10, 403 },
+ { 132, 11, 392 }, { 5, 11, 433 }, { 9, 11, 633 }, { 139, 11, 629 },
+ { 133, 0, 763 }, { 132, 0, 878 }, { 132, 0, 977 }, { 132, 0, 100 },
+ { 6, 0, 463 }, { 4, 10, 44 }, { 5, 10, 311 }, { 7, 10, 639 },
+ { 7, 10, 762 }, { 7, 10, 1827 }, { 9, 10, 8 }, { 9, 10, 462 },
+ { 148, 10, 83 }, { 134, 11, 234 }, { 4, 10, 346 }, { 7, 10, 115 },
+ { 9, 10, 180 }, { 9, 10, 456 }, { 138, 10, 363 }, { 5, 0, 362 },
+ { 5, 0, 443 }, { 6, 0, 318 }, { 7, 0, 1019 }, { 139, 0, 623 },
+ { 5, 0, 463 }, { 8, 0, 296 }, { 7, 11, 140 }, { 7, 11, 1950 },
+ { 8, 11, 680 }, { 11, 11, 817 }, { 147, 11, 88 }, { 7, 11, 1222 },
+ { 138, 11, 386 }, { 142, 0, 137 }, { 132, 0, 454 }, { 7, 0, 1914 },
+ { 6, 11, 5 }, { 7, 10, 1051 }, { 9, 10, 545 }, { 11, 11, 249 },
+ { 12, 11, 313 }, { 16, 11, 66 }, { 145, 11, 26 }, { 135, 0, 1527 },
+ { 145, 0, 58 }, { 148, 11, 59 }, { 5, 0, 48 }, { 5, 0, 404 },
+ { 6, 0, 557 }, { 7, 0, 458 }, { 8, 0, 597 }, { 10, 0, 455 },
+ { 10, 0, 606 }, { 11, 0, 49 }, { 11, 0, 548 }, { 12, 0, 476 },
+ { 13, 0, 18 }, { 141, 0, 450 }, { 5, 11, 963 }, { 134, 11, 1773 },
+ { 133, 0, 729 }, { 138, 11, 586 }, { 5, 0, 442 }, { 135, 0, 1984 },
+ { 134, 0, 449 }, { 144, 0, 40 }, { 4, 0, 853 }, { 7, 11, 180 },
+ { 8, 11, 509 }, { 136, 11, 792 }, { 6, 10, 185 }, { 7, 10, 1899 },
+ { 9, 10, 875 }, { 139, 10, 673 }, { 134, 11, 524 }, { 12, 0, 227 },
+ { 4, 10, 327 }, { 5, 10, 478 }, { 7, 10, 1332 }, { 136, 10, 753 },
+ { 6, 0, 1491 }, { 5, 10, 1020 }, { 133, 10, 1022 }, { 4, 10, 103 },
+ { 133, 10, 401 }, { 132, 11, 931 }, { 4, 10, 499 }, { 135, 10, 1421 },
+ { 5, 0, 55 }, { 7, 0, 376 }, { 140, 0, 161 }, { 133, 0, 450 },
+ { 6, 0, 1174 }, { 134, 0, 1562 }, { 10, 0, 62 }, { 13, 0, 400 },
+ { 135, 11, 1837 }, { 140, 0, 207 }, { 135, 0, 869 }, { 4, 11, 773 },
+ { 5, 11, 618 }, { 137, 11, 756 }, { 132, 10, 96 }, { 4, 0, 213 },
+ { 7, 0, 223 }, { 8, 0, 80 }, { 135, 10, 968 }, { 4, 11, 90 },
+ { 5, 11, 337 }, { 5, 11, 545 }, { 7, 11, 754 }, { 9, 11, 186 },
+ { 10, 11, 72 }, { 10, 11, 782 }, { 11, 11, 513 }, { 11, 11, 577 },
+ { 11, 11, 610 }, { 11, 11, 889 }, { 11, 11, 961 }, { 12, 11, 354 },
+ { 12, 11, 362 }, { 12, 11, 461 }, { 12, 11, 595 }, { 13, 11, 79 },
+ { 143, 11, 121 }, { 7, 0, 381 }, { 7, 0, 806 }, { 7, 0, 820 },
+ { 8, 0, 354 }, { 8, 0, 437 }, { 8, 0, 787 }, { 9, 0, 657 },
+ { 10, 0, 58 }, { 10, 0, 339 }, { 10, 0, 749 }, { 11, 0, 914 },
+ { 12, 0, 162 }, { 13, 0, 75 }, { 14, 0, 106 }, { 14, 0, 198 },
+ { 14, 0, 320 }, { 14, 0, 413 }, { 146, 0, 43 }, { 136, 0, 747 },
+ { 136, 0, 954 }, { 134, 0, 1073 }, { 135, 0, 556 }, { 7, 11, 151 },
+ { 9, 11, 329 }, { 139, 11, 254 }, { 5, 0, 692 }, { 134, 0, 1395 },
+ { 6, 10, 563 }, { 137, 10, 224 }, { 134, 0, 191 }, { 132, 0, 804 },
+ { 9, 11, 187 }, { 10, 11, 36 }, { 17, 11, 44 }, { 146, 11, 64 },
+ { 7, 11, 165 }, { 7, 11, 919 }, { 136, 11, 517 }, { 4, 11, 506 },
+ { 5, 11, 295 }, { 7, 11, 1680 }, { 15, 11, 14 }, { 144, 11, 5 },
+ { 4, 0, 706 }, { 6, 0, 162 }, { 7, 0, 1960 }, { 136, 0, 831 },
+ { 135, 11, 1376 }, { 7, 11, 987 }, { 9, 11, 688 }, { 10, 11, 522 },
+ { 11, 11, 788 }, { 140, 11, 566 }, { 150, 0, 35 }, { 138, 0, 426 },
+ { 135, 0, 1235 }, { 135, 11, 1741 }, { 7, 11, 389 }, { 7, 11, 700 },
+ { 7, 11, 940 }, { 8, 11, 514 }, { 9, 11, 116 }, { 9, 11, 535 },
+ { 10, 11, 118 }, { 11, 11, 107 }, { 11, 11, 148 }, { 11, 11, 922 },
+ { 12, 11, 254 }, { 12, 11, 421 }, { 142, 11, 238 }, { 134, 0, 1234 },
+ { 132, 11, 743 }, { 4, 10, 910 }, { 5, 10, 832 }, { 135, 11, 1335 },
+ { 141, 0, 96 }, { 135, 11, 185 }, { 146, 0, 149 }, { 4, 0, 204 },
+ { 137, 0, 902 }, { 4, 11, 784 }, { 133, 11, 745 }, { 136, 0, 833 },
+ { 136, 0, 949 }, { 7, 0, 366 }, { 9, 0, 287 }, { 12, 0, 199 },
+ { 12, 0, 556 }, { 12, 0, 577 }, { 5, 11, 81 }, { 7, 11, 146 },
+ { 7, 11, 1342 }, { 7, 11, 1446 }, { 8, 11, 53 }, { 8, 11, 561 },
+ { 8, 11, 694 }, { 8, 11, 754 }, { 9, 11, 97 }, { 9, 11, 115 },
+ { 9, 11, 894 }, { 10, 11, 462 }, { 10, 11, 813 }, { 11, 11, 230 },
+ { 11, 11, 657 }, { 11, 11, 699 }, { 11, 11, 748 }, { 12, 11, 119 },
+ { 12, 11, 200 }, { 12, 11, 283 }, { 14, 11, 273 }, { 145, 11, 15 },
+ { 5, 11, 408 }, { 137, 11, 747 }, { 9, 11, 498 }, { 140, 11, 181 },
+ { 6, 0, 2020 }, { 136, 0, 992 }, { 5, 0, 356 }, { 135, 0, 224 },
+ { 134, 0, 784 }, { 7, 0, 630 }, { 9, 0, 567 }, { 11, 0, 150 },
+ { 11, 0, 444 }, { 13, 0, 119 }, { 8, 10, 528 }, { 137, 10, 348 },
+ { 134, 0, 539 }, { 4, 10, 20 }, { 133, 10, 616 }, { 142, 0, 27 },
+ { 7, 11, 30 }, { 8, 11, 86 }, { 8, 11, 315 }, { 8, 11, 700 },
+ { 9, 11, 576 }, { 9, 11, 858 }, { 11, 11, 310 }, { 11, 11, 888 },
+ { 11, 11, 904 }, { 12, 11, 361 }, { 141, 11, 248 }, { 138, 11, 839 },
+ { 134, 0, 755 }, { 134, 0, 1063 }, { 7, 10, 1091 }, { 135, 10, 1765 },
+ { 134, 11, 428 }, { 7, 11, 524 }, { 8, 11, 169 }, { 8, 11, 234 },
+ { 9, 11, 480 }, { 138, 11, 646 }, { 139, 0, 814 }, { 7, 11, 1462 },
+ { 139, 11, 659 }, { 4, 10, 26 }, { 5, 10, 429 }, { 6, 10, 245 },
+ { 7, 10, 704 }, { 7, 10, 1379 }, { 135, 10, 1474 }, { 7, 11, 1205 },
+ { 138, 11, 637 }, { 139, 11, 803 }, { 132, 10, 621 }, { 136, 0, 987 },
+ { 4, 11, 266 }, { 8, 11, 4 }, { 9, 11, 39 }, { 10, 11, 166 },
+ { 11, 11, 918 }, { 12, 11, 635 }, { 20, 11, 10 }, { 22, 11, 27 },
+ { 150, 11, 43 }, { 4, 0, 235 }, { 135, 0, 255 }, { 4, 0, 194 },
+ { 5, 0, 584 }, { 6, 0, 384 }, { 7, 0, 583 }, { 10, 0, 761 },
+ { 11, 0, 760 }, { 139, 0, 851 }, { 133, 10, 542 }, { 134, 0, 1086 },
+ { 133, 10, 868 }, { 8, 0, 1016 }, { 136, 0, 1018 }, { 7, 0, 1396 },
+ { 7, 11, 1396 }, { 136, 10, 433 }, { 135, 10, 1495 }, { 138, 10, 215 },
+ { 141, 10, 124 }, { 7, 11, 157 }, { 8, 11, 279 }, { 9, 11, 759 },
+ { 16, 11, 31 }, { 16, 11, 39 }, { 16, 11, 75 }, { 18, 11, 24 },
+ { 20, 11, 42 }, { 152, 11, 1 }, { 5, 0, 562 }, { 134, 11, 604 },
+ { 134, 0, 913 }, { 5, 0, 191 }, { 137, 0, 271 }, { 4, 0, 470 },
+ { 6, 0, 153 }, { 7, 0, 1503 }, { 7, 0, 1923 }, { 10, 0, 701 },
+ { 11, 0, 132 }, { 11, 0, 227 }, { 11, 0, 320 }, { 11, 0, 436 },
+ { 11, 0, 525 }, { 11, 0, 855 }, { 11, 0, 873 }, { 12, 0, 41 },
+ { 12, 0, 286 }, { 13, 0, 103 }, { 13, 0, 284 }, { 14, 0, 255 },
+ { 14, 0, 262 }, { 15, 0, 117 }, { 143, 0, 127 }, { 7, 0, 475 },
+ { 12, 0, 45 }, { 147, 10, 112 }, { 132, 11, 567 }, { 137, 11, 859 },
+ { 6, 0, 713 }, { 6, 0, 969 }, { 6, 0, 1290 }, { 134, 0, 1551 },
+ { 133, 0, 327 }, { 6, 0, 552 }, { 6, 0, 1292 }, { 7, 0, 1754 },
+ { 137, 0, 604 }, { 4, 0, 223 }, { 6, 0, 359 }, { 11, 0, 3 },
+ { 13, 0, 108 }, { 14, 0, 89 }, { 16, 0, 22 }, { 5, 11, 762 },
+ { 7, 11, 1880 }, { 9, 11, 680 }, { 139, 11, 798 }, { 5, 0, 80 },
+ { 6, 0, 405 }, { 7, 0, 403 }, { 7, 0, 1502 }, { 8, 0, 456 },
+ { 9, 0, 487 }, { 9, 0, 853 }, { 9, 0, 889 }, { 10, 0, 309 },
+ { 11, 0, 721 }, { 11, 0, 994 }, { 12, 0, 430 }, { 141, 0, 165 },
+ { 133, 11, 298 }, { 132, 10, 647 }, { 134, 0, 2016 }, { 18, 10, 10 },
+ { 146, 11, 10 }, { 4, 0, 453 }, { 5, 0, 887 }, { 6, 0, 535 },
+ { 8, 0, 6 }, { 8, 0, 543 }, { 136, 0, 826 }, { 136, 0, 975 },
+ { 10, 0, 961 }, { 138, 0, 962 }, { 138, 10, 220 }, { 6, 0, 1891 },
+ { 6, 0, 1893 }, { 9, 0, 916 }, { 9, 0, 965 }, { 9, 0, 972 },
+ { 12, 0, 801 }, { 12, 0, 859 }, { 12, 0, 883 }, { 15, 0, 226 },
+ { 149, 0, 51 }, { 132, 10, 109 }, { 135, 11, 267 }, { 7, 11, 92 },
+ { 7, 11, 182 }, { 8, 11, 453 }, { 9, 11, 204 }, { 11, 11, 950 },
+ { 12, 11, 94 }, { 12, 11, 644 }, { 16, 11, 20 }, { 16, 11, 70 },
+ { 16, 11, 90 }, { 147, 11, 55 }, { 134, 10, 1746 }, { 6, 11, 71 },
+ { 7, 11, 845 }, { 7, 11, 1308 }, { 8, 11, 160 }, { 137, 11, 318 },
+ { 5, 0, 101 }, { 6, 0, 88 }, { 7, 0, 263 }, { 7, 0, 628 },
+ { 7, 0, 1677 }, { 8, 0, 349 }, { 9, 0, 100 }, { 10, 0, 677 },
+ { 14, 0, 169 }, { 14, 0, 302 }, { 14, 0, 313 }, { 15, 0, 48 },
+ { 15, 0, 84 }, { 7, 11, 237 }, { 8, 11, 664 }, { 9, 11, 42 },
+ { 9, 11, 266 }, { 9, 11, 380 }, { 9, 11, 645 }, { 10, 11, 177 },
+ { 138, 11, 276 }, { 138, 11, 69 }, { 4, 0, 310 }, { 7, 0, 708 },
+ { 7, 0, 996 }, { 9, 0, 795 }, { 10, 0, 390 }, { 10, 0, 733 },
+ { 11, 0, 451 }, { 12, 0, 249 }, { 14, 0, 115 }, { 14, 0, 286 },
+ { 143, 0, 100 }, { 5, 0, 587 }, { 4, 10, 40 }, { 10, 10, 67 },
+ { 11, 10, 117 }, { 11, 10, 768 }, { 139, 10, 935 }, { 6, 0, 1942 },
+ { 7, 0, 512 }, { 136, 0, 983 }, { 7, 10, 992 }, { 8, 10, 301 },
+ { 9, 10, 722 }, { 12, 10, 63 }, { 13, 10, 29 }, { 14, 10, 161 },
+ { 143, 10, 18 }, { 136, 11, 76 }, { 139, 10, 923 }, { 134, 0, 645 },
+ { 134, 0, 851 }, { 4, 0, 498 }, { 132, 11, 293 }, { 7, 0, 217 },
+ { 8, 0, 140 }, { 10, 0, 610 }, { 14, 11, 352 }, { 17, 11, 53 },
+ { 18, 11, 146 }, { 18, 11, 152 }, { 19, 11, 11 }, { 150, 11, 54 },
+ { 134, 0, 1448 }, { 138, 11, 841 }, { 133, 0, 905 }, { 4, 11, 605 },
+ { 7, 11, 518 }, { 7, 11, 1282 }, { 7, 11, 1918 }, { 10, 11, 180 },
+ { 139, 11, 218 }, { 139, 11, 917 }, { 135, 10, 825 }, { 140, 10, 328 },
+ { 4, 0, 456 }, { 7, 0, 105 }, { 7, 0, 358 }, { 7, 0, 1637 },
+ { 8, 0, 643 }, { 139, 0, 483 }, { 134, 0, 792 }, { 6, 11, 96 },
+ { 135, 11, 1426 }, { 137, 11, 691 }, { 4, 11, 651 }, { 133, 11, 289 },
+ { 7, 11, 688 }, { 8, 11, 35 }, { 9, 11, 511 }, { 10, 11, 767 },
+ { 147, 11, 118 }, { 150, 0, 56 }, { 5, 0, 243 }, { 5, 0, 535 },
+ { 6, 10, 204 }, { 10, 10, 320 }, { 10, 10, 583 }, { 13, 10, 502 },
+ { 14, 10, 72 }, { 14, 10, 274 }, { 14, 10, 312 }, { 14, 10, 344 },
+ { 15, 10, 159 }, { 16, 10, 62 }, { 16, 10, 69 }, { 17, 10, 30 },
+ { 18, 10, 42 }, { 18, 10, 53 }, { 18, 10, 84 }, { 18, 10, 140 },
+ { 19, 10, 68 }, { 19, 10, 85 }, { 20, 10, 5 }, { 20, 10, 45 },
+ { 20, 10, 101 }, { 22, 10, 7 }, { 150, 10, 20 }, { 4, 10, 558 },
+ { 6, 10, 390 }, { 7, 10, 162 }, { 7, 10, 689 }, { 9, 10, 360 },
+ { 138, 10, 653 }, { 146, 11, 23 }, { 135, 0, 1748 }, { 5, 10, 856 },
+ { 6, 10, 1672 }, { 6, 10, 1757 }, { 134, 10, 1781 }, { 5, 0, 539 },
+ { 5, 0, 754 }, { 6, 0, 876 }, { 132, 11, 704 }, { 135, 11, 1078 },
+ { 5, 10, 92 }, { 10, 10, 736 }, { 140, 10, 102 }, { 17, 0, 91 },
+ { 5, 10, 590 }, { 137, 10, 213 }, { 134, 0, 1565 }, { 6, 0, 91 },
+ { 135, 0, 435 }, { 4, 0, 939 }, { 140, 0, 792 }, { 134, 0, 1399 },
+ { 4, 0, 16 }, { 5, 0, 316 }, { 5, 0, 842 }, { 6, 0, 370 },
+ { 6, 0, 1778 }, { 8, 0, 166 }, { 11, 0, 812 }, { 12, 0, 206 },
+ { 12, 0, 351 }, { 14, 0, 418 }, { 16, 0, 15 }, { 16, 0, 34 },
+ { 18, 0, 3 }, { 19, 0, 3 }, { 19, 0, 7 }, { 20, 0, 4 },
+ { 21, 0, 21 }, { 4, 11, 720 }, { 133, 11, 306 }, { 144, 0, 95 },
+ { 133, 11, 431 }, { 132, 11, 234 }, { 135, 0, 551 }, { 4, 0, 999 },
+ { 6, 0, 1966 }, { 134, 0, 2042 }, { 7, 0, 619 }, { 10, 0, 547 },
+ { 11, 0, 122 }, { 12, 0, 601 }, { 15, 0, 7 }, { 148, 0, 20 },
+ { 5, 11, 464 }, { 6, 11, 236 }, { 7, 11, 276 }, { 7, 11, 696 },
+ { 7, 11, 914 }, { 7, 11, 1108 }, { 7, 11, 1448 }, { 9, 11, 15 },
+ { 9, 11, 564 }, { 10, 11, 14 }, { 12, 11, 565 }, { 13, 11, 449 },
+ { 14, 11, 53 }, { 15, 11, 13 }, { 16, 11, 64 }, { 145, 11, 41 },
+ { 6, 0, 884 }, { 6, 0, 1019 }, { 134, 0, 1150 }, { 6, 11, 1767 },
+ { 12, 11, 194 }, { 145, 11, 107 }, { 136, 10, 503 }, { 133, 11, 840 },
+ { 7, 0, 671 }, { 134, 10, 466 }, { 132, 0, 888 }, { 4, 0, 149 },
+ { 138, 0, 368 }, { 4, 0, 154 }, { 7, 0, 1134 }, { 136, 0, 105 },
+ { 135, 0, 983 }, { 9, 11, 642 }, { 11, 11, 236 }, { 142, 11, 193 },
+ { 4, 0, 31 }, { 6, 0, 429 }, { 7, 0, 962 }, { 9, 0, 458 },
+ { 139, 0, 691 }, { 6, 0, 643 }, { 134, 0, 1102 }, { 132, 0, 312 },
+ { 4, 11, 68 }, { 5, 11, 634 }, { 6, 11, 386 }, { 7, 11, 794 },
+ { 8, 11, 273 }, { 9, 11, 563 }, { 10, 11, 105 }, { 10, 11, 171 },
+ { 11, 11, 94 }, { 139, 11, 354 }, { 133, 0, 740 }, { 135, 0, 1642 },
+ { 4, 11, 95 }, { 7, 11, 416 }, { 8, 11, 211 }, { 139, 11, 830 },
+ { 132, 0, 236 }, { 138, 10, 241 }, { 7, 11, 731 }, { 13, 11, 20 },
+ { 143, 11, 11 }, { 5, 0, 836 }, { 5, 0, 857 }, { 6, 0, 1680 },
+ { 135, 0, 59 }, { 10, 0, 68 }, { 11, 0, 494 }, { 152, 11, 6 },
+ { 4, 0, 81 }, { 139, 0, 867 }, { 135, 0, 795 }, { 133, 11, 689 },
+ { 4, 0, 1001 }, { 5, 0, 282 }, { 6, 0, 1932 }, { 6, 0, 1977 },
+ { 6, 0, 1987 }, { 6, 0, 1992 }, { 8, 0, 650 }, { 8, 0, 919 },
+ { 8, 0, 920 }, { 8, 0, 923 }, { 8, 0, 926 }, { 8, 0, 927 },
+ { 8, 0, 931 }, { 8, 0, 939 }, { 8, 0, 947 }, { 8, 0, 956 },
+ { 8, 0, 997 }, { 9, 0, 907 }, { 10, 0, 950 }, { 10, 0, 953 },
+ { 10, 0, 954 }, { 10, 0, 956 }, { 10, 0, 958 }, { 10, 0, 959 },
+ { 10, 0, 964 }, { 10, 0, 970 }, { 10, 0, 972 }, { 10, 0, 973 },
+ { 10, 0, 975 }, { 10, 0, 976 }, { 10, 0, 980 }, { 10, 0, 981 },
+ { 10, 0, 984 }, { 10, 0, 988 }, { 10, 0, 990 }, { 10, 0, 995 },
+ { 10, 0, 999 }, { 10, 0, 1002 }, { 10, 0, 1003 }, { 10, 0, 1005 },
+ { 10, 0, 1006 }, { 10, 0, 1008 }, { 10, 0, 1009 }, { 10, 0, 1012 },
+ { 10, 0, 1014 }, { 10, 0, 1015 }, { 10, 0, 1019 }, { 10, 0, 1020 },
+ { 10, 0, 1022 }, { 12, 0, 959 }, { 12, 0, 961 }, { 12, 0, 962 },
+ { 12, 0, 963 }, { 12, 0, 964 }, { 12, 0, 965 }, { 12, 0, 967 },
+ { 12, 0, 968 }, { 12, 0, 969 }, { 12, 0, 970 }, { 12, 0, 971 },
+ { 12, 0, 972 }, { 12, 0, 973 }, { 12, 0, 974 }, { 12, 0, 975 },
+ { 12, 0, 976 }, { 12, 0, 977 }, { 12, 0, 979 }, { 12, 0, 981 },
+ { 12, 0, 982 }, { 12, 0, 983 }, { 12, 0, 984 }, { 12, 0, 985 },
+ { 12, 0, 986 }, { 12, 0, 987 }, { 12, 0, 989 }, { 12, 0, 990 },
+ { 12, 0, 992 }, { 12, 0, 993 }, { 12, 0, 995 }, { 12, 0, 998 },
+ { 12, 0, 999 }, { 12, 0, 1000 }, { 12, 0, 1001 }, { 12, 0, 1002 },
+ { 12, 0, 1004 }, { 12, 0, 1005 }, { 12, 0, 1006 }, { 12, 0, 1007 },
+ { 12, 0, 1008 }, { 12, 0, 1009 }, { 12, 0, 1010 }, { 12, 0, 1011 },
+ { 12, 0, 1012 }, { 12, 0, 1014 }, { 12, 0, 1015 }, { 12, 0, 1016 },
+ { 12, 0, 1017 }, { 12, 0, 1018 }, { 12, 0, 1019 }, { 12, 0, 1022 },
+ { 12, 0, 1023 }, { 14, 0, 475 }, { 14, 0, 477 }, { 14, 0, 478 },
+ { 14, 0, 479 }, { 14, 0, 480 }, { 14, 0, 482 }, { 14, 0, 483 },
+ { 14, 0, 484 }, { 14, 0, 485 }, { 14, 0, 486 }, { 14, 0, 487 },
+ { 14, 0, 488 }, { 14, 0, 489 }, { 14, 0, 490 }, { 14, 0, 491 },
+ { 14, 0, 492 }, { 14, 0, 493 }, { 14, 0, 494 }, { 14, 0, 495 },
+ { 14, 0, 496 }, { 14, 0, 497 }, { 14, 0, 498 }, { 14, 0, 499 },
+ { 14, 0, 500 }, { 14, 0, 501 }, { 14, 0, 502 }, { 14, 0, 503 },
+ { 14, 0, 504 }, { 14, 0, 506 }, { 14, 0, 507 }, { 14, 0, 508 },
+ { 14, 0, 509 }, { 14, 0, 510 }, { 14, 0, 511 }, { 16, 0, 113 },
+ { 16, 0, 114 }, { 16, 0, 115 }, { 16, 0, 117 }, { 16, 0, 118 },
+ { 16, 0, 119 }, { 16, 0, 121 }, { 16, 0, 122 }, { 16, 0, 123 },
+ { 16, 0, 124 }, { 16, 0, 125 }, { 16, 0, 126 }, { 16, 0, 127 },
+ { 18, 0, 242 }, { 18, 0, 243 }, { 18, 0, 244 }, { 18, 0, 245 },
+ { 18, 0, 248 }, { 18, 0, 249 }, { 18, 0, 250 }, { 18, 0, 251 },
+ { 18, 0, 252 }, { 18, 0, 253 }, { 18, 0, 254 }, { 18, 0, 255 },
+ { 20, 0, 125 }, { 20, 0, 126 }, { 148, 0, 127 }, { 7, 11, 1717 },
+ { 7, 11, 1769 }, { 138, 11, 546 }, { 7, 11, 1127 }, { 7, 11, 1572 },
+ { 10, 11, 297 }, { 10, 11, 422 }, { 11, 11, 764 }, { 11, 11, 810 },
+ { 12, 11, 264 }, { 13, 11, 102 }, { 13, 11, 300 }, { 13, 11, 484 },
+ { 14, 11, 147 }, { 14, 11, 229 }, { 17, 11, 71 }, { 18, 11, 118 },
+ { 147, 11, 120 }, { 6, 0, 1148 }, { 134, 0, 1586 }, { 132, 0, 775 },
+ { 135, 10, 954 }, { 133, 11, 864 }, { 133, 11, 928 }, { 138, 11, 189 },
+ { 135, 10, 1958 }, { 6, 10, 549 }, { 8, 10, 34 }, { 8, 10, 283 },
+ { 9, 10, 165 }, { 138, 10, 475 }, { 5, 10, 652 }, { 5, 10, 701 },
+ { 135, 10, 449 }, { 135, 11, 695 }, { 4, 10, 655 }, { 7, 10, 850 },
+ { 17, 10, 75 }, { 146, 10, 137 }, { 140, 11, 682 }, { 133, 11, 523 },
+ { 8, 0, 970 }, { 136, 10, 670 }, { 136, 11, 555 }, { 7, 11, 76 },
+ { 8, 11, 44 }, { 9, 11, 884 }, { 10, 11, 580 }, { 11, 11, 399 },
+ { 11, 11, 894 }, { 15, 11, 122 }, { 18, 11, 144 }, { 147, 11, 61 },
+ { 6, 10, 159 }, { 6, 10, 364 }, { 7, 10, 516 }, { 7, 10, 1439 },
+ { 137, 10, 518 }, { 4, 0, 71 }, { 5, 0, 376 }, { 7, 0, 119 },
+ { 138, 0, 665 }, { 141, 10, 151 }, { 11, 0, 827 }, { 14, 0, 34 },
+ { 143, 0, 148 }, { 133, 11, 518 }, { 4, 0, 479 }, { 135, 11, 1787 },
+ { 135, 11, 1852 }, { 135, 10, 993 }, { 7, 0, 607 }, { 136, 0, 99 },
+ { 134, 0, 1960 }, { 132, 0, 793 }, { 4, 0, 41 }, { 5, 0, 74 },
+ { 7, 0, 1627 }, { 11, 0, 871 }, { 140, 0, 619 }, { 7, 0, 94 },
+ { 11, 0, 329 }, { 11, 0, 965 }, { 12, 0, 241 }, { 14, 0, 354 },
+ { 15, 0, 22 }, { 148, 0, 63 }, { 7, 10, 501 }, { 9, 10, 111 },
+ { 10, 10, 141 }, { 11, 10, 332 }, { 13, 10, 43 }, { 13, 10, 429 },
+ { 14, 10, 130 }, { 14, 10, 415 }, { 145, 10, 102 }, { 9, 0, 209 },
+ { 137, 0, 300 }, { 134, 0, 1497 }, { 138, 11, 255 }, { 4, 11, 934 },
+ { 5, 11, 138 }, { 136, 11, 610 }, { 133, 0, 98 }, { 6, 0, 1316 },
+ { 10, 11, 804 }, { 138, 11, 832 }, { 8, 11, 96 }, { 9, 11, 36 },
+ { 10, 11, 607 }, { 11, 11, 423 }, { 11, 11, 442 }, { 12, 11, 309 },
+ { 14, 11, 199 }, { 15, 11, 90 }, { 145, 11, 110 }, { 132, 0, 463 },
+ { 5, 10, 149 }, { 136, 10, 233 }, { 133, 10, 935 }, { 4, 11, 652 },
+ { 8, 11, 320 }, { 9, 11, 13 }, { 9, 11, 398 }, { 9, 11, 727 },
+ { 10, 11, 75 }, { 10, 11, 184 }, { 10, 11, 230 }, { 10, 11, 564 },
+ { 10, 11, 569 }, { 11, 11, 973 }, { 12, 11, 70 }, { 12, 11, 189 },
+ { 13, 11, 57 }, { 13, 11, 257 }, { 22, 11, 6 }, { 150, 11, 16 },
+ { 142, 0, 291 }, { 12, 10, 582 }, { 146, 10, 131 }, { 136, 10, 801 },
+ { 133, 0, 984 }, { 145, 11, 116 }, { 4, 11, 692 }, { 133, 11, 321 },
+ { 4, 0, 182 }, { 6, 0, 205 }, { 135, 0, 220 }, { 4, 0, 42 },
+ { 9, 0, 205 }, { 9, 0, 786 }, { 138, 0, 659 }, { 6, 0, 801 },
+ { 11, 11, 130 }, { 140, 11, 609 }, { 132, 0, 635 }, { 5, 11, 345 },
+ { 135, 11, 1016 }, { 139, 0, 533 }, { 132, 0, 371 }, { 4, 0, 272 },
+ { 135, 0, 836 }, { 6, 0, 1282 }, { 135, 11, 1100 }, { 5, 0, 825 },
+ { 134, 0, 1640 }, { 135, 11, 1325 }, { 133, 11, 673 }, { 4, 11, 287 },
+ { 133, 11, 1018 }, { 135, 0, 357 }, { 6, 0, 467 }, { 137, 0, 879 },
+ { 7, 0, 317 }, { 135, 0, 569 }, { 6, 0, 924 }, { 134, 0, 1588 },
+ { 5, 11, 34 }, { 5, 10, 406 }, { 10, 11, 724 }, { 12, 11, 444 },
+ { 13, 11, 354 }, { 18, 11, 32 }, { 23, 11, 24 }, { 23, 11, 31 },
+ { 152, 11, 5 }, { 6, 0, 1795 }, { 6, 0, 1835 }, { 6, 0, 1836 },
+ { 6, 0, 1856 }, { 8, 0, 844 }, { 8, 0, 849 }, { 8, 0, 854 },
+ { 8, 0, 870 }, { 8, 0, 887 }, { 10, 0, 852 }, { 138, 0, 942 },
+ { 6, 10, 69 }, { 135, 10, 117 }, { 137, 0, 307 }, { 4, 0, 944 },
+ { 6, 0, 1799 }, { 6, 0, 1825 }, { 10, 0, 848 }, { 10, 0, 875 },
+ { 10, 0, 895 }, { 10, 0, 899 }, { 10, 0, 902 }, { 140, 0, 773 },
+ { 11, 0, 43 }, { 13, 0, 72 }, { 141, 0, 142 }, { 135, 10, 1830 },
+ { 134, 11, 382 }, { 4, 10, 432 }, { 135, 10, 824 }, { 132, 11, 329 },
+ { 7, 0, 1820 }, { 139, 11, 124 }, { 133, 10, 826 }, { 133, 0, 525 },
+ { 132, 11, 906 }, { 7, 11, 1940 }, { 136, 11, 366 }, { 138, 11, 10 },
+ { 4, 11, 123 }, { 4, 11, 649 }, { 5, 11, 605 }, { 7, 11, 1509 },
+ { 136, 11, 36 }, { 6, 0, 110 }, { 135, 0, 1681 }, { 133, 0, 493 },
+ { 133, 11, 767 }, { 4, 0, 174 }, { 135, 0, 911 }, { 138, 11, 786 },
+ { 8, 0, 417 }, { 137, 0, 782 }, { 133, 10, 1000 }, { 7, 0, 733 },
+ { 137, 0, 583 }, { 4, 10, 297 }, { 6, 10, 529 }, { 7, 10, 152 },
+ { 7, 10, 713 }, { 7, 10, 1845 }, { 8, 10, 710 }, { 8, 10, 717 },
+ { 12, 10, 639 }, { 140, 10, 685 }, { 4, 0, 32 }, { 5, 0, 215 },
+ { 6, 0, 269 }, { 7, 0, 1782 }, { 7, 0, 1892 }, { 10, 0, 16 },
+ { 11, 0, 822 }, { 11, 0, 954 }, { 141, 0, 481 }, { 4, 11, 273 },
+ { 5, 11, 658 }, { 133, 11, 995 }, { 136, 0, 477 }, { 134, 11, 72 },
+ { 135, 11, 1345 }, { 5, 0, 308 }, { 7, 0, 1088 }, { 4, 10, 520 },
+ { 135, 10, 575 }, { 133, 11, 589 }, { 5, 0, 126 }, { 8, 0, 297 },
+ { 9, 0, 366 }, { 140, 0, 374 }, { 7, 0, 1551 }, { 139, 0, 361 },
+ { 5, 11, 117 }, { 6, 11, 514 }, { 6, 11, 541 }, { 7, 11, 1164 },
+ { 7, 11, 1436 }, { 8, 11, 220 }, { 8, 11, 648 }, { 10, 11, 688 },
+ { 139, 11, 560 }, { 133, 11, 686 }, { 4, 0, 946 }, { 6, 0, 1807 },
+ { 8, 0, 871 }, { 10, 0, 854 }, { 10, 0, 870 }, { 10, 0, 888 },
+ { 10, 0, 897 }, { 10, 0, 920 }, { 12, 0, 722 }, { 12, 0, 761 },
+ { 12, 0, 763 }, { 12, 0, 764 }, { 14, 0, 454 }, { 14, 0, 465 },
+ { 16, 0, 107 }, { 18, 0, 167 }, { 18, 0, 168 }, { 146, 0, 172 },
+ { 132, 0, 175 }, { 135, 0, 1307 }, { 132, 0, 685 }, { 135, 11, 1834 },
+ { 133, 0, 797 }, { 6, 0, 745 }, { 6, 0, 858 }, { 134, 0, 963 },
+ { 133, 0, 565 }, { 5, 10, 397 }, { 6, 10, 154 }, { 7, 11, 196 },
+ { 7, 10, 676 }, { 8, 10, 443 }, { 8, 10, 609 }, { 9, 10, 24 },
+ { 9, 10, 325 }, { 10, 10, 35 }, { 10, 11, 765 }, { 11, 11, 347 },
+ { 11, 10, 535 }, { 11, 11, 552 }, { 11, 11, 576 }, { 11, 10, 672 },
+ { 11, 11, 790 }, { 11, 10, 1018 }, { 12, 11, 263 }, { 12, 10, 637 },
+ { 13, 11, 246 }, { 13, 11, 270 }, { 13, 11, 395 }, { 14, 11, 74 },
+ { 14, 11, 176 }, { 14, 11, 190 }, { 14, 11, 398 }, { 14, 11, 412 },
+ { 15, 11, 32 }, { 15, 11, 63 }, { 16, 10, 30 }, { 16, 11, 88 },
+ { 147, 11, 105 }, { 13, 11, 84 }, { 141, 11, 122 }, { 4, 0, 252 },
+ { 7, 0, 1068 }, { 10, 0, 434 }, { 11, 0, 228 }, { 11, 0, 426 },
+ { 13, 0, 231 }, { 18, 0, 106 }, { 148, 0, 87 }, { 137, 0, 826 },
+ { 4, 11, 589 }, { 139, 11, 282 }, { 5, 11, 381 }, { 135, 11, 1792 },
+ { 132, 0, 791 }, { 5, 0, 231 }, { 10, 0, 509 }, { 133, 10, 981 },
+ { 7, 0, 601 }, { 9, 0, 277 }, { 9, 0, 674 }, { 10, 0, 178 },
+ { 10, 0, 418 }, { 10, 0, 571 }, { 11, 0, 531 }, { 12, 0, 113 },
+ { 12, 0, 475 }, { 13, 0, 99 }, { 142, 0, 428 }, { 4, 10, 56 },
+ { 7, 11, 616 }, { 7, 10, 1791 }, { 8, 10, 607 }, { 8, 10, 651 },
+ { 10, 11, 413 }, { 11, 10, 465 }, { 11, 10, 835 }, { 12, 10, 337 },
+ { 141, 10, 480 }, { 7, 0, 1591 }, { 144, 0, 43 }, { 9, 10, 158 },
+ { 138, 10, 411 }, { 135, 0, 1683 }, { 8, 0, 289 }, { 11, 0, 45 },
+ { 12, 0, 278 }, { 140, 0, 537 }, { 6, 11, 120 }, { 7, 11, 1188 },
+ { 7, 11, 1710 }, { 8, 11, 286 }, { 9, 11, 667 }, { 11, 11, 592 },
+ { 139, 11, 730 }, { 136, 10, 617 }, { 135, 0, 1120 }, { 135, 11, 1146 },
+ { 139, 10, 563 }, { 4, 11, 352 }, { 4, 10, 369 }, { 135, 11, 687 },
+ { 143, 11, 38 }, { 4, 0, 399 }, { 5, 0, 119 }, { 5, 0, 494 },
+ { 7, 0, 751 }, { 9, 0, 556 }, { 14, 11, 179 }, { 15, 11, 151 },
+ { 150, 11, 11 }, { 4, 11, 192 }, { 5, 11, 49 }, { 6, 11, 200 },
+ { 6, 11, 293 }, { 6, 11, 1696 }, { 135, 11, 488 }, { 4, 0, 398 },
+ { 133, 0, 660 }, { 7, 0, 1030 }, { 134, 10, 622 }, { 135, 11, 595 },
+ { 141, 0, 168 }, { 132, 11, 147 }, { 7, 0, 973 }, { 10, 10, 624 },
+ { 142, 10, 279 }, { 132, 10, 363 }, { 132, 0, 642 }, { 133, 11, 934 },
+ { 134, 0, 1615 }, { 7, 11, 505 }, { 135, 11, 523 }, { 7, 0, 594 },
+ { 7, 0, 851 }, { 7, 0, 1858 }, { 9, 0, 411 }, { 9, 0, 574 },
+ { 9, 0, 666 }, { 9, 0, 737 }, { 10, 0, 346 }, { 10, 0, 712 },
+ { 11, 0, 246 }, { 11, 0, 432 }, { 11, 0, 517 }, { 11, 0, 647 },
+ { 11, 0, 679 }, { 11, 0, 727 }, { 12, 0, 304 }, { 12, 0, 305 },
+ { 12, 0, 323 }, { 12, 0, 483 }, { 12, 0, 572 }, { 12, 0, 593 },
+ { 12, 0, 602 }, { 13, 0, 95 }, { 13, 0, 101 }, { 13, 0, 171 },
+ { 13, 0, 315 }, { 13, 0, 378 }, { 13, 0, 425 }, { 13, 0, 475 },
+ { 14, 0, 63 }, { 14, 0, 380 }, { 14, 0, 384 }, { 15, 0, 133 },
+ { 18, 0, 112 }, { 148, 0, 72 }, { 135, 0, 1093 }, { 132, 0, 679 },
+ { 8, 0, 913 }, { 10, 0, 903 }, { 10, 0, 915 }, { 12, 0, 648 },
+ { 12, 0, 649 }, { 14, 0, 455 }, { 16, 0, 112 }, { 138, 11, 438 },
+ { 137, 0, 203 }, { 134, 10, 292 }, { 134, 0, 1492 }, { 7, 0, 1374 },
+ { 8, 0, 540 }, { 5, 10, 177 }, { 6, 10, 616 }, { 7, 10, 827 },
+ { 9, 10, 525 }, { 138, 10, 656 }, { 135, 0, 1486 }, { 9, 0, 714 },
+ { 138, 10, 31 }, { 136, 0, 825 }, { 134, 0, 1511 }, { 132, 11, 637 },
+ { 134, 0, 952 }, { 4, 10, 161 }, { 133, 10, 631 }, { 5, 0, 143 },
+ { 5, 0, 769 }, { 6, 0, 1760 }, { 7, 0, 682 }, { 7, 0, 1992 },
+ { 136, 0, 736 }, { 132, 0, 700 }, { 134, 0, 1540 }, { 132, 11, 777 },
+ { 9, 11, 867 }, { 138, 11, 837 }, { 7, 0, 1557 }, { 135, 10, 1684 },
+ { 133, 0, 860 }, { 6, 0, 422 }, { 7, 0, 0 }, { 7, 0, 1544 },
+ { 9, 0, 605 }, { 11, 0, 990 }, { 12, 0, 235 }, { 12, 0, 453 },
+ { 13, 0, 47 }, { 13, 0, 266 }, { 9, 10, 469 }, { 9, 10, 709 },
+ { 12, 10, 512 }, { 14, 10, 65 }, { 145, 10, 12 }, { 11, 0, 807 },
+ { 10, 10, 229 }, { 11, 10, 73 }, { 139, 10, 376 }, { 6, 11, 170 },
+ { 7, 11, 1080 }, { 8, 11, 395 }, { 8, 11, 487 }, { 11, 11, 125 },
+ { 141, 11, 147 }, { 5, 0, 515 }, { 137, 0, 131 }, { 7, 0, 1605 },
+ { 11, 0, 962 }, { 146, 0, 139 }, { 132, 0, 646 }, { 4, 0, 396 },
+ { 7, 0, 728 }, { 9, 0, 117 }, { 13, 0, 202 }, { 148, 0, 51 },
+ { 6, 0, 121 }, { 6, 0, 124 }, { 6, 0, 357 }, { 7, 0, 1138 },
+ { 7, 0, 1295 }, { 8, 0, 162 }, { 8, 0, 508 }, { 11, 0, 655 },
+ { 4, 11, 535 }, { 6, 10, 558 }, { 7, 10, 651 }, { 8, 11, 618 },
+ { 9, 10, 0 }, { 10, 10, 34 }, { 139, 10, 1008 }, { 135, 11, 1245 },
+ { 138, 0, 357 }, { 150, 11, 23 }, { 133, 0, 237 }, { 135, 0, 1784 },
+ { 7, 10, 1832 }, { 138, 10, 374 }, { 132, 0, 713 }, { 132, 11, 46 },
+ { 6, 0, 1536 }, { 10, 0, 348 }, { 5, 11, 811 }, { 6, 11, 1679 },
+ { 6, 11, 1714 }, { 135, 11, 2032 }, { 11, 11, 182 }, { 142, 11, 195 },
+ { 6, 0, 523 }, { 7, 0, 738 }, { 7, 10, 771 }, { 7, 10, 1731 },
+ { 9, 10, 405 }, { 138, 10, 421 }, { 7, 11, 1458 }, { 9, 11, 407 },
+ { 139, 11, 15 }, { 6, 11, 34 }, { 7, 11, 69 }, { 7, 11, 640 },
+ { 7, 11, 1089 }, { 8, 11, 708 }, { 8, 11, 721 }, { 9, 11, 363 },
+ { 9, 11, 643 }, { 10, 11, 628 }, { 148, 11, 98 }, { 133, 0, 434 },
+ { 135, 0, 1877 }, { 7, 0, 571 }, { 138, 0, 366 }, { 5, 10, 881 },
+ { 133, 10, 885 }, { 9, 0, 513 }, { 10, 0, 25 }, { 10, 0, 39 },
+ { 12, 0, 122 }, { 140, 0, 187 }, { 132, 0, 580 }, { 5, 10, 142 },
+ { 134, 10, 546 }, { 132, 11, 462 }, { 137, 0, 873 }, { 5, 10, 466 },
+ { 11, 10, 571 }, { 12, 10, 198 }, { 13, 10, 283 }, { 14, 10, 186 },
+ { 15, 10, 21 }, { 143, 10, 103 }, { 7, 0, 171 }, { 4, 10, 185 },
+ { 5, 10, 257 }, { 5, 10, 839 }, { 5, 10, 936 }, { 9, 10, 399 },
+ { 10, 10, 258 }, { 10, 10, 395 }, { 10, 10, 734 }, { 11, 10, 1014 },
+ { 12, 10, 23 }, { 13, 10, 350 }, { 14, 10, 150 }, { 147, 10, 6 },
+ { 134, 0, 625 }, { 7, 0, 107 }, { 7, 0, 838 }, { 8, 0, 550 },
+ { 138, 0, 401 }, { 5, 11, 73 }, { 6, 11, 23 }, { 134, 11, 338 },
+ { 4, 0, 943 }, { 6, 0, 1850 }, { 12, 0, 713 }, { 142, 0, 434 },
+ { 11, 0, 588 }, { 11, 0, 864 }, { 11, 0, 936 }, { 11, 0, 968 },
+ { 12, 0, 73 }, { 12, 0, 343 }, { 12, 0, 394 }, { 13, 0, 275 },
+ { 14, 0, 257 }, { 15, 0, 160 }, { 7, 10, 404 }, { 7, 10, 1377 },
+ { 7, 10, 1430 }, { 7, 10, 2017 }, { 8, 10, 149 }, { 8, 10, 239 },
+ { 8, 10, 512 }, { 8, 10, 793 }, { 8, 10, 818 }, { 9, 10, 474 },
+ { 9, 10, 595 }, { 10, 10, 122 }, { 10, 10, 565 }, { 10, 10, 649 },
+ { 10, 10, 783 }, { 11, 10, 239 }, { 11, 10, 295 }, { 11, 10, 447 },
+ { 11, 10, 528 }, { 11, 10, 639 }, { 11, 10, 800 }, { 12, 10, 25 },
+ { 12, 10, 157 }, { 12, 10, 316 }, { 12, 10, 390 }, { 12, 10, 391 },
+ { 12, 10, 395 }, { 12, 10, 478 }, { 12, 10, 503 }, { 12, 10, 592 },
+ { 12, 10, 680 }, { 13, 10, 50 }, { 13, 10, 53 }, { 13, 10, 132 },
+ { 13, 10, 198 }, { 13, 10, 322 }, { 13, 10, 415 }, { 13, 10, 511 },
+ { 14, 10, 71 }, { 14, 10, 395 }, { 15, 10, 71 }, { 15, 10, 136 },
+ { 17, 10, 123 }, { 18, 10, 93 }, { 147, 10, 58 }, { 133, 0, 768 },
+ { 11, 0, 103 }, { 142, 0, 0 }, { 136, 10, 712 }, { 132, 0, 799 },
+ { 132, 0, 894 }, { 7, 11, 725 }, { 8, 11, 498 }, { 139, 11, 268 },
+ { 135, 11, 1798 }, { 135, 11, 773 }, { 141, 11, 360 }, { 4, 10, 377 },
+ { 152, 10, 13 }, { 135, 0, 1673 }, { 132, 11, 583 }, { 134, 0, 1052 },
+ { 133, 11, 220 }, { 140, 11, 69 }, { 132, 11, 544 }, { 4, 10, 180 },
+ { 135, 10, 1906 }, { 134, 0, 272 }, { 4, 0, 441 }, { 134, 0, 1421 },
+ { 4, 0, 9 }, { 5, 0, 128 }, { 7, 0, 368 }, { 11, 0, 480 },
+ { 148, 0, 3 }, { 5, 11, 176 }, { 6, 11, 437 }, { 6, 11, 564 },
+ { 11, 11, 181 }, { 141, 11, 183 }, { 132, 10, 491 }, { 7, 0, 1182 },
+ { 141, 11, 67 }, { 6, 0, 1346 }, { 4, 10, 171 }, { 138, 10, 234 },
+ { 4, 10, 586 }, { 7, 10, 1186 }, { 138, 10, 631 }, { 136, 0, 682 },
+ { 134, 0, 1004 }, { 15, 0, 24 }, { 143, 11, 24 }, { 134, 0, 968 },
+ { 4, 0, 2 }, { 6, 0, 742 }, { 6, 0, 793 }, { 7, 0, 545 },
+ { 7, 0, 894 }, { 9, 10, 931 }, { 10, 10, 334 }, { 148, 10, 71 },
+ { 136, 11, 600 }, { 133, 10, 765 }, { 9, 0, 769 }, { 140, 0, 185 },
+ { 4, 11, 790 }, { 5, 11, 273 }, { 134, 11, 394 }, { 7, 0, 474 },
+ { 137, 0, 578 }, { 4, 11, 135 }, { 6, 11, 127 }, { 7, 11, 1185 },
+ { 7, 11, 1511 }, { 8, 11, 613 }, { 11, 11, 5 }, { 12, 11, 133 },
+ { 12, 11, 495 }, { 12, 11, 586 }, { 14, 11, 385 }, { 15, 11, 118 },
+ { 17, 11, 20 }, { 146, 11, 98 }, { 133, 10, 424 }, { 5, 0, 530 },
+ { 142, 0, 113 }, { 6, 11, 230 }, { 7, 11, 961 }, { 7, 11, 1085 },
+ { 136, 11, 462 }, { 7, 11, 1954 }, { 137, 11, 636 }, { 136, 10, 714 },
+ { 149, 11, 6 }, { 135, 10, 685 }, { 9, 10, 420 }, { 10, 10, 269 },
+ { 10, 10, 285 }, { 10, 10, 576 }, { 11, 10, 397 }, { 13, 10, 175 },
+ { 145, 10, 90 }, { 132, 10, 429 }, { 5, 0, 556 }, { 5, 11, 162 },
+ { 136, 11, 68 }, { 132, 11, 654 }, { 4, 11, 156 }, { 7, 11, 998 },
+ { 7, 11, 1045 }, { 7, 11, 1860 }, { 9, 11, 48 }, { 9, 11, 692 },
+ { 11, 11, 419 }, { 139, 11, 602 }, { 6, 0, 1317 }, { 8, 0, 16 },
+ { 9, 0, 825 }, { 12, 0, 568 }, { 7, 11, 1276 }, { 8, 11, 474 },
+ { 137, 11, 652 }, { 18, 0, 97 }, { 7, 10, 18 }, { 7, 10, 699 },
+ { 7, 10, 1966 }, { 8, 10, 752 }, { 9, 10, 273 }, { 9, 10, 412 },
+ { 9, 10, 703 }, { 10, 10, 71 }, { 10, 10, 427 }, { 138, 10, 508 },
+ { 10, 0, 703 }, { 7, 11, 1454 }, { 138, 11, 703 }, { 4, 10, 53 },
+ { 5, 10, 186 }, { 135, 10, 752 }, { 134, 0, 892 }, { 134, 0, 1571 },
+ { 8, 10, 575 }, { 10, 10, 289 }, { 139, 10, 319 }, { 6, 0, 186 },
+ { 137, 0, 426 }, { 134, 0, 1101 }, { 132, 10, 675 }, { 132, 0, 585 },
+ { 6, 0, 1870 }, { 137, 0, 937 }, { 152, 11, 10 }, { 9, 11, 197 },
+ { 10, 11, 300 }, { 12, 11, 473 }, { 13, 11, 90 }, { 141, 11, 405 },
+ { 4, 0, 93 }, { 5, 0, 252 }, { 6, 0, 229 }, { 7, 0, 291 },
+ { 9, 0, 550 }, { 139, 0, 644 }, { 137, 0, 749 }, { 9, 0, 162 },
+ { 6, 10, 209 }, { 8, 10, 468 }, { 9, 10, 210 }, { 11, 10, 36 },
+ { 12, 10, 28 }, { 12, 10, 630 }, { 13, 10, 21 }, { 13, 10, 349 },
+ { 14, 10, 7 }, { 145, 10, 13 }, { 132, 0, 381 }, { 132, 11, 606 },
+ { 4, 10, 342 }, { 135, 10, 1179 }, { 7, 11, 1587 }, { 7, 11, 1707 },
+ { 10, 11, 528 }, { 139, 11, 504 }, { 12, 11, 39 }, { 13, 11, 265 },
+ { 141, 11, 439 }, { 4, 10, 928 }, { 133, 10, 910 }, { 7, 10, 1838 },
+ { 7, 11, 1978 }, { 136, 11, 676 }, { 6, 0, 762 }, { 6, 0, 796 },
+ { 134, 0, 956 }, { 4, 10, 318 }, { 4, 10, 496 }, { 7, 10, 856 },
+ { 139, 10, 654 }, { 137, 11, 242 }, { 4, 11, 361 }, { 133, 11, 315 },
+ { 132, 11, 461 }, { 132, 11, 472 }, { 132, 0, 857 }, { 5, 0, 21 },
+ { 6, 0, 77 }, { 6, 0, 157 }, { 7, 0, 974 }, { 7, 0, 1301 },
+ { 7, 0, 1339 }, { 7, 0, 1490 }, { 7, 0, 1873 }, { 9, 0, 628 },
+ { 7, 10, 915 }, { 8, 10, 247 }, { 147, 10, 0 }, { 4, 10, 202 },
+ { 5, 10, 382 }, { 6, 10, 454 }, { 7, 10, 936 }, { 7, 10, 1803 },
+ { 8, 10, 758 }, { 9, 10, 375 }, { 9, 10, 895 }, { 10, 10, 743 },
+ { 10, 10, 792 }, { 11, 10, 978 }, { 11, 10, 1012 }, { 142, 10, 109 },
+ { 7, 11, 617 }, { 10, 11, 498 }, { 11, 11, 501 }, { 12, 11, 16 },
+ { 140, 11, 150 }, { 7, 10, 1150 }, { 7, 10, 1425 }, { 7, 10, 1453 },
+ { 10, 11, 747 }, { 140, 10, 513 }, { 133, 11, 155 }, { 11, 0, 919 },
+ { 141, 0, 409 }, { 138, 10, 791 }, { 10, 0, 633 }, { 139, 11, 729 },
+ { 7, 11, 163 }, { 8, 11, 319 }, { 9, 11, 402 }, { 10, 11, 24 },
+ { 10, 11, 681 }, { 11, 11, 200 }, { 11, 11, 567 }, { 12, 11, 253 },
+ { 12, 11, 410 }, { 142, 11, 219 }, { 5, 11, 475 }, { 7, 11, 1780 },
+ { 9, 11, 230 }, { 11, 11, 297 }, { 11, 11, 558 }, { 14, 11, 322 },
+ { 147, 11, 76 }, { 7, 0, 332 }, { 6, 10, 445 }, { 137, 10, 909 },
+ { 135, 11, 1956 }, { 136, 11, 274 }, { 134, 10, 578 }, { 135, 0, 1489 },
+ { 135, 11, 1848 }, { 5, 11, 944 }, { 134, 11, 1769 }, { 132, 11, 144 },
+ { 136, 10, 766 }, { 4, 0, 832 }, { 135, 10, 541 }, { 8, 0, 398 },
+ { 9, 0, 681 }, { 139, 0, 632 }, { 136, 0, 645 }, { 9, 0, 791 },
+ { 10, 0, 93 }, { 16, 0, 13 }, { 17, 0, 23 }, { 18, 0, 135 },
+ { 19, 0, 12 }, { 20, 0, 1 }, { 20, 0, 12 }, { 148, 0, 14 },
+ { 6, 11, 247 }, { 137, 11, 555 }, { 134, 0, 20 }, { 132, 0, 800 },
+ { 135, 0, 1841 }, { 139, 10, 983 }, { 137, 10, 768 }, { 132, 10, 584 },
+ { 141, 11, 51 }, { 6, 0, 1993 }, { 4, 11, 620 }, { 138, 11, 280 },
+ { 136, 0, 769 }, { 11, 0, 290 }, { 11, 0, 665 }, { 7, 11, 1810 },
+ { 11, 11, 866 }, { 12, 11, 103 }, { 13, 11, 495 }, { 17, 11, 67 },
+ { 147, 11, 74 }, { 134, 0, 1426 }, { 139, 0, 60 }, { 4, 10, 326 },
+ { 135, 10, 1770 }, { 7, 0, 1874 }, { 9, 0, 641 }, { 132, 10, 226 },
+ { 6, 0, 644 }, { 5, 10, 426 }, { 8, 10, 30 }, { 9, 10, 2 },
+ { 11, 10, 549 }, { 147, 10, 122 }, { 5, 11, 428 }, { 138, 11, 442 },
+ { 135, 11, 1871 }, { 135, 0, 1757 }, { 147, 10, 117 }, { 135, 0, 937 },
+ { 135, 0, 1652 }, { 6, 0, 654 }, { 134, 0, 1476 }, { 133, 11, 99 },
+ { 135, 0, 527 }, { 132, 10, 345 }, { 4, 10, 385 }, { 4, 11, 397 },
+ { 7, 10, 265 }, { 135, 10, 587 }, { 4, 0, 579 }, { 5, 0, 226 },
+ { 5, 0, 323 }, { 135, 0, 960 }, { 134, 0, 1486 }, { 8, 11, 502 },
+ { 144, 11, 9 }, { 4, 10, 347 }, { 5, 10, 423 }, { 5, 10, 996 },
+ { 135, 10, 1329 }, { 7, 11, 727 }, { 146, 11, 73 }, { 4, 11, 485 },
+ { 7, 11, 353 }, { 7, 10, 1259 }, { 7, 11, 1523 }, { 9, 10, 125 },
+ { 139, 10, 65 }, { 6, 0, 325 }, { 5, 10, 136 }, { 6, 11, 366 },
+ { 7, 11, 1384 }, { 7, 11, 1601 }, { 136, 10, 644 }, { 138, 11, 160 },
+ { 6, 0, 1345 }, { 137, 11, 282 }, { 18, 0, 91 }, { 147, 0, 70 },
+ { 136, 0, 404 }, { 4, 11, 157 }, { 133, 11, 471 }, { 133, 0, 973 },
+ { 6, 0, 135 }, { 135, 0, 1176 }, { 8, 11, 116 }, { 11, 11, 551 },
+ { 142, 11, 159 }, { 4, 0, 549 }, { 4, 10, 433 }, { 133, 10, 719 },
+ { 136, 0, 976 }, { 5, 11, 160 }, { 7, 11, 363 }, { 7, 11, 589 },
+ { 10, 11, 170 }, { 141, 11, 55 }, { 144, 0, 21 }, { 144, 0, 51 },
+ { 135, 0, 314 }, { 135, 10, 1363 }, { 4, 11, 108 }, { 7, 11, 405 },
+ { 10, 11, 491 }, { 139, 11, 498 }, { 146, 0, 4 }, { 4, 10, 555 },
+ { 8, 10, 536 }, { 10, 10, 288 }, { 139, 10, 1005 }, { 135, 11, 1005 },
+ { 6, 0, 281 }, { 7, 0, 6 }, { 8, 0, 282 }, { 8, 0, 480 },
+ { 8, 0, 499 }, { 9, 0, 198 }, { 10, 0, 143 }, { 10, 0, 169 },
+ { 10, 0, 211 }, { 10, 0, 417 }, { 10, 0, 574 }, { 11, 0, 147 },
+ { 11, 0, 395 }, { 12, 0, 75 }, { 12, 0, 407 }, { 12, 0, 608 },
+ { 13, 0, 500 }, { 142, 0, 251 }, { 6, 0, 1093 }, { 6, 0, 1405 },
+ { 9, 10, 370 }, { 138, 10, 90 }, { 4, 11, 926 }, { 133, 11, 983 },
+ { 135, 0, 1776 }, { 134, 0, 1528 }, { 132, 0, 419 }, { 132, 11, 538 },
+ { 6, 11, 294 }, { 7, 11, 1267 }, { 136, 11, 624 }, { 135, 11, 1772 },
+ { 138, 11, 301 }, { 4, 10, 257 }, { 135, 10, 2031 }, { 4, 0, 138 },
+ { 7, 0, 1012 }, { 7, 0, 1280 }, { 9, 0, 76 }, { 135, 10, 1768 },
+ { 132, 11, 757 }, { 5, 0, 29 }, { 140, 0, 638 }, { 7, 11, 655 },
+ { 135, 11, 1844 }, { 7, 0, 1418 }, { 6, 11, 257 }, { 135, 11, 1522 },
+ { 8, 11, 469 }, { 138, 11, 47 }, { 142, 11, 278 }, { 6, 10, 83 },
+ { 6, 10, 1733 }, { 135, 10, 1389 }, { 11, 11, 204 }, { 11, 11, 243 },
+ { 140, 11, 293 }, { 135, 11, 1875 }, { 6, 0, 1710 }, { 135, 0, 2038 },
+ { 137, 11, 299 }, { 4, 0, 17 }, { 5, 0, 23 }, { 7, 0, 995 },
+ { 11, 0, 383 }, { 11, 0, 437 }, { 12, 0, 460 }, { 140, 0, 532 },
+ { 133, 0, 862 }, { 137, 10, 696 }, { 6, 0, 592 }, { 138, 0, 946 },
+ { 138, 11, 599 }, { 7, 10, 1718 }, { 9, 10, 95 }, { 9, 10, 274 },
+ { 10, 10, 279 }, { 10, 10, 317 }, { 10, 10, 420 }, { 11, 10, 303 },
+ { 11, 10, 808 }, { 12, 10, 134 }, { 12, 10, 367 }, { 13, 10, 149 },
+ { 13, 10, 347 }, { 14, 10, 349 }, { 14, 10, 406 }, { 18, 10, 22 },
+ { 18, 10, 89 }, { 18, 10, 122 }, { 147, 10, 47 }, { 8, 0, 70 },
+ { 12, 0, 171 }, { 141, 0, 272 }, { 133, 10, 26 }, { 132, 10, 550 },
+ { 137, 0, 812 }, { 10, 0, 233 }, { 139, 0, 76 }, { 134, 0, 988 },
+ { 134, 0, 442 }, { 136, 10, 822 }, { 7, 0, 896 }, { 4, 10, 902 },
+ { 5, 10, 809 }, { 134, 10, 122 }, { 5, 11, 150 }, { 7, 11, 106 },
+ { 8, 11, 603 }, { 9, 11, 593 }, { 9, 11, 634 }, { 10, 11, 44 },
+ { 10, 11, 173 }, { 11, 11, 462 }, { 11, 11, 515 }, { 13, 11, 216 },
+ { 13, 11, 288 }, { 142, 11, 400 }, { 136, 0, 483 }, { 135, 10, 262 },
+ { 6, 0, 1709 }, { 133, 10, 620 }, { 4, 10, 34 }, { 5, 10, 574 },
+ { 7, 10, 279 }, { 7, 10, 1624 }, { 136, 10, 601 }, { 137, 10, 170 },
+ { 147, 0, 119 }, { 12, 11, 108 }, { 141, 11, 291 }, { 11, 0, 69 },
+ { 12, 0, 105 }, { 12, 0, 117 }, { 13, 0, 213 }, { 14, 0, 13 },
+ { 14, 0, 62 }, { 14, 0, 177 }, { 14, 0, 421 }, { 15, 0, 19 },
+ { 146, 0, 141 }, { 137, 0, 309 }, { 11, 11, 278 }, { 142, 11, 73 },
+ { 7, 0, 608 }, { 7, 0, 976 }, { 9, 0, 146 }, { 10, 0, 206 },
+ { 10, 0, 596 }, { 13, 0, 218 }, { 142, 0, 153 }, { 133, 10, 332 },
+ { 6, 10, 261 }, { 8, 10, 182 }, { 139, 10, 943 }, { 4, 11, 493 },
+ { 144, 11, 55 }, { 134, 10, 1721 }, { 132, 0, 768 }, { 4, 10, 933 },
+ { 133, 10, 880 }, { 7, 11, 555 }, { 7, 11, 1316 }, { 7, 11, 1412 },
+ { 7, 11, 1839 }, { 9, 11, 192 }, { 9, 11, 589 }, { 11, 11, 241 },
+ { 11, 11, 676 }, { 11, 11, 811 }, { 11, 11, 891 }, { 12, 11, 140 },
+ { 12, 11, 346 }, { 12, 11, 479 }, { 13, 11, 30 }, { 13, 11, 49 },
+ { 13, 11, 381 }, { 14, 11, 188 }, { 15, 11, 150 }, { 16, 11, 76 },
+ { 18, 11, 30 }, { 148, 11, 52 }, { 4, 0, 518 }, { 135, 0, 1136 },
+ { 6, 11, 568 }, { 7, 11, 112 }, { 7, 11, 1804 }, { 8, 11, 362 },
+ { 8, 11, 410 }, { 8, 11, 830 }, { 9, 11, 514 }, { 11, 11, 649 },
+ { 142, 11, 157 }, { 135, 11, 673 }, { 8, 0, 689 }, { 137, 0, 863 },
+ { 4, 0, 18 }, { 7, 0, 145 }, { 7, 0, 444 }, { 7, 0, 1278 },
+ { 8, 0, 49 }, { 8, 0, 400 }, { 9, 0, 71 }, { 9, 0, 250 },
+ { 10, 0, 459 }, { 12, 0, 160 }, { 16, 0, 24 }, { 132, 11, 625 },
+ { 140, 0, 1020 }, { 4, 0, 997 }, { 6, 0, 1946 }, { 6, 0, 1984 },
+ { 134, 0, 1998 }, { 6, 11, 16 }, { 6, 11, 158 }, { 7, 11, 43 },
+ { 7, 11, 129 }, { 7, 11, 181 }, { 8, 11, 276 }, { 8, 11, 377 },
+ { 10, 11, 523 }, { 11, 11, 816 }, { 12, 11, 455 }, { 13, 11, 303 },
+ { 142, 11, 135 }, { 133, 10, 812 }, { 134, 0, 658 }, { 4, 11, 1 },
+ { 7, 11, 1143 }, { 7, 11, 1463 }, { 8, 11, 61 }, { 9, 11, 207 },
+ { 9, 11, 390 }, { 9, 11, 467 }, { 139, 11, 836 }, { 150, 11, 26 },
+ { 140, 0, 106 }, { 6, 0, 1827 }, { 10, 0, 931 }, { 18, 0, 166 },
+ { 20, 0, 114 }, { 4, 10, 137 }, { 7, 10, 1178 }, { 7, 11, 1319 },
+ { 135, 10, 1520 }, { 133, 0, 1010 }, { 4, 11, 723 }, { 5, 11, 895 },
+ { 7, 11, 1031 }, { 8, 11, 199 }, { 8, 11, 340 }, { 9, 11, 153 },
+ { 9, 11, 215 }, { 10, 11, 21 }, { 10, 11, 59 }, { 10, 11, 80 },
+ { 10, 11, 224 }, { 11, 11, 229 }, { 11, 11, 652 }, { 12, 11, 192 },
+ { 13, 11, 146 }, { 142, 11, 91 }, { 132, 11, 295 }, { 6, 11, 619 },
+ { 7, 11, 898 }, { 7, 11, 1092 }, { 8, 11, 485 }, { 18, 11, 28 },
+ { 147, 11, 116 }, { 137, 11, 51 }, { 6, 10, 1661 }, { 7, 10, 1975 },
+ { 7, 10, 2009 }, { 135, 10, 2011 }, { 5, 11, 309 }, { 140, 11, 211 },
+ { 5, 0, 87 }, { 7, 0, 313 }, { 7, 0, 1103 }, { 10, 0, 208 },
+ { 10, 0, 582 }, { 11, 0, 389 }, { 11, 0, 813 }, { 12, 0, 385 },
+ { 13, 0, 286 }, { 14, 0, 124 }, { 146, 0, 108 }, { 5, 11, 125 },
+ { 8, 11, 77 }, { 138, 11, 15 }, { 132, 0, 267 }, { 133, 0, 703 },
+ { 137, 11, 155 }, { 133, 11, 439 }, { 11, 11, 164 }, { 140, 11, 76 },
+ { 9, 0, 496 }, { 5, 10, 89 }, { 7, 10, 1915 }, { 9, 10, 185 },
+ { 9, 10, 235 }, { 10, 10, 64 }, { 10, 10, 270 }, { 10, 10, 403 },
+ { 10, 10, 469 }, { 10, 10, 529 }, { 10, 10, 590 }, { 11, 10, 140 },
+ { 11, 10, 860 }, { 13, 10, 1 }, { 13, 10, 422 }, { 14, 10, 341 },
+ { 14, 10, 364 }, { 17, 10, 93 }, { 18, 10, 113 }, { 19, 10, 97 },
+ { 147, 10, 113 }, { 133, 10, 695 }, { 135, 0, 1121 }, { 5, 10, 6 },
+ { 6, 10, 183 }, { 7, 10, 680 }, { 7, 10, 978 }, { 7, 10, 1013 },
+ { 7, 10, 1055 }, { 12, 10, 230 }, { 13, 10, 172 }, { 146, 10, 29 },
+ { 4, 11, 8 }, { 7, 11, 1152 }, { 7, 11, 1153 }, { 7, 11, 1715 },
+ { 9, 11, 374 }, { 10, 11, 478 }, { 139, 11, 648 }, { 135, 11, 1099 },
+ { 6, 10, 29 }, { 139, 10, 63 }, { 4, 0, 561 }, { 10, 0, 249 },
+ { 139, 0, 209 }, { 132, 0, 760 }, { 7, 11, 799 }, { 138, 11, 511 },
+ { 136, 11, 87 }, { 9, 0, 154 }, { 140, 0, 485 }, { 136, 0, 255 },
+ { 132, 0, 323 }, { 140, 0, 419 }, { 132, 10, 311 }, { 134, 10, 1740 },
+ { 4, 0, 368 }, { 135, 0, 641 }, { 7, 10, 170 }, { 8, 10, 90 },
+ { 8, 10, 177 }, { 8, 10, 415 }, { 11, 10, 714 }, { 142, 10, 281 },
+ { 4, 11, 69 }, { 5, 11, 122 }, { 9, 11, 656 }, { 138, 11, 464 },
+ { 5, 11, 849 }, { 134, 11, 1633 }, { 8, 0, 522 }, { 142, 0, 328 },
+ { 11, 10, 91 }, { 13, 10, 129 }, { 15, 10, 101 }, { 145, 10, 125 },
+ { 7, 0, 562 }, { 8, 0, 551 }, { 4, 10, 494 }, { 6, 10, 74 },
+ { 7, 10, 44 }, { 11, 11, 499 }, { 12, 10, 17 }, { 15, 10, 5 },
+ { 148, 10, 11 }, { 4, 10, 276 }, { 133, 10, 296 }, { 9, 0, 92 },
+ { 147, 0, 91 }, { 4, 10, 7 }, { 5, 10, 90 }, { 5, 10, 158 },
+ { 6, 10, 542 }, { 7, 10, 221 }, { 7, 10, 1574 }, { 9, 10, 490 },
+ { 10, 10, 540 }, { 11, 10, 443 }, { 139, 10, 757 }, { 6, 0, 525 },
+ { 6, 0, 1976 }, { 8, 0, 806 }, { 9, 0, 876 }, { 140, 0, 284 },
+ { 5, 11, 859 }, { 7, 10, 588 }, { 7, 11, 1160 }, { 8, 11, 107 },
+ { 9, 10, 175 }, { 9, 11, 291 }, { 9, 11, 439 }, { 10, 10, 530 },
+ { 10, 11, 663 }, { 11, 11, 609 }, { 140, 11, 197 }, { 7, 11, 168 },
+ { 13, 11, 196 }, { 141, 11, 237 }, { 139, 0, 958 }, { 133, 0, 594 },
+ { 135, 10, 580 }, { 7, 10, 88 }, { 136, 10, 627 }, { 6, 0, 479 },
+ { 6, 0, 562 }, { 7, 0, 1060 }, { 13, 0, 6 }, { 5, 10, 872 },
+ { 6, 10, 57 }, { 7, 10, 471 }, { 9, 10, 447 }, { 137, 10, 454 },
+ { 136, 11, 413 }, { 145, 11, 19 }, { 4, 11, 117 }, { 6, 11, 372 },
+ { 7, 11, 1905 }, { 142, 11, 323 }, { 4, 11, 722 }, { 139, 11, 471 },
+ { 17, 0, 61 }, { 5, 10, 31 }, { 134, 10, 614 }, { 8, 10, 330 },
+ { 140, 10, 477 }, { 7, 10, 1200 }, { 138, 10, 460 }, { 6, 10, 424 },
+ { 135, 10, 1866 }, { 6, 0, 1641 }, { 136, 0, 820 }, { 6, 0, 1556 },
+ { 134, 0, 1618 }, { 9, 11, 5 }, { 12, 11, 216 }, { 12, 11, 294 },
+ { 12, 11, 298 }, { 12, 11, 400 }, { 12, 11, 518 }, { 13, 11, 229 },
+ { 143, 11, 139 }, { 15, 11, 155 }, { 144, 11, 79 }, { 4, 0, 302 },
+ { 135, 0, 1766 }, { 5, 10, 13 }, { 134, 10, 142 }, { 6, 0, 148 },
+ { 7, 0, 1313 }, { 7, 10, 116 }, { 8, 10, 322 }, { 8, 10, 755 },
+ { 9, 10, 548 }, { 10, 10, 714 }, { 11, 10, 884 }, { 141, 10, 324 },
+ { 137, 0, 676 }, { 9, 11, 88 }, { 139, 11, 270 }, { 5, 11, 12 },
+ { 7, 11, 375 }, { 137, 11, 438 }, { 134, 0, 1674 }, { 7, 10, 1472 },
+ { 135, 10, 1554 }, { 11, 0, 178 }, { 7, 10, 1071 }, { 7, 10, 1541 },
+ { 7, 10, 1767 }, { 7, 10, 1806 }, { 11, 10, 162 }, { 11, 10, 242 },
+ { 12, 10, 605 }, { 15, 10, 26 }, { 144, 10, 44 }, { 6, 0, 389 },
+ { 7, 0, 149 }, { 9, 0, 142 }, { 138, 0, 94 }, { 140, 11, 71 },
+ { 145, 10, 115 }, { 6, 0, 8 }, { 7, 0, 1881 }, { 8, 0, 91 },
+ { 11, 11, 966 }, { 12, 11, 287 }, { 13, 11, 342 }, { 13, 11, 402 },
+ { 15, 11, 110 }, { 143, 11, 163 }, { 4, 11, 258 }, { 136, 11, 639 },
+ { 6, 11, 22 }, { 7, 11, 903 }, { 138, 11, 577 }, { 133, 11, 681 },
+ { 135, 10, 1111 }, { 135, 11, 1286 }, { 9, 0, 112 }, { 8, 10, 1 },
+ { 138, 10, 326 }, { 5, 10, 488 }, { 6, 10, 527 }, { 7, 10, 489 },
+ { 7, 10, 1636 }, { 8, 10, 121 }, { 8, 10, 144 }, { 8, 10, 359 },
+ { 9, 10, 193 }, { 9, 10, 241 }, { 9, 10, 336 }, { 9, 10, 882 },
+ { 11, 10, 266 }, { 11, 10, 372 }, { 11, 10, 944 }, { 12, 10, 401 },
+ { 140, 10, 641 }, { 4, 11, 664 }, { 133, 11, 804 }, { 6, 0, 747 },
+ { 134, 0, 1015 }, { 135, 0, 1746 }, { 9, 10, 31 }, { 10, 10, 244 },
+ { 10, 10, 699 }, { 12, 10, 149 }, { 141, 10, 497 }, { 133, 10, 377 },
+ { 135, 0, 24 }, { 6, 0, 1352 }, { 5, 11, 32 }, { 145, 10, 101 },
+ { 7, 0, 1530 }, { 10, 0, 158 }, { 13, 0, 13 }, { 13, 0, 137 },
+ { 13, 0, 258 }, { 14, 0, 111 }, { 14, 0, 225 }, { 14, 0, 253 },
+ { 14, 0, 304 }, { 14, 0, 339 }, { 14, 0, 417 }, { 146, 0, 33 },
+ { 4, 0, 503 }, { 135, 0, 1661 }, { 5, 0, 130 }, { 6, 0, 845 },
+ { 7, 0, 1314 }, { 9, 0, 610 }, { 10, 0, 718 }, { 11, 0, 601 },
+ { 11, 0, 819 }, { 11, 0, 946 }, { 140, 0, 536 }, { 10, 0, 149 },
+ { 11, 0, 280 }, { 142, 0, 336 }, { 134, 0, 1401 }, { 135, 0, 1946 },
+ { 8, 0, 663 }, { 144, 0, 8 }, { 134, 0, 1607 }, { 135, 10, 2023 },
+ { 4, 11, 289 }, { 7, 11, 629 }, { 7, 11, 1698 }, { 7, 11, 1711 },
+ { 140, 11, 215 }, { 6, 11, 450 }, { 136, 11, 109 }, { 10, 0, 882 },
+ { 10, 0, 883 }, { 10, 0, 914 }, { 138, 0, 928 }, { 133, 10, 843 },
+ { 136, 11, 705 }, { 132, 10, 554 }, { 133, 10, 536 }, { 5, 0, 417 },
+ { 9, 10, 79 }, { 11, 10, 625 }, { 145, 10, 7 }, { 7, 11, 1238 },
+ { 142, 11, 37 }, { 4, 0, 392 }, { 135, 0, 1597 }, { 5, 0, 433 },
+ { 9, 0, 633 }, { 11, 0, 629 }, { 132, 10, 424 }, { 7, 10, 336 },
+ { 136, 10, 785 }, { 134, 11, 355 }, { 6, 0, 234 }, { 7, 0, 769 },
+ { 9, 0, 18 }, { 138, 0, 358 }, { 4, 10, 896 }, { 134, 10, 1777 },
+ { 138, 11, 323 }, { 7, 0, 140 }, { 7, 0, 1950 }, { 8, 0, 680 },
+ { 11, 0, 817 }, { 147, 0, 88 }, { 7, 0, 1222 }, { 138, 0, 386 },
+ { 139, 11, 908 }, { 11, 0, 249 }, { 12, 0, 313 }, { 16, 0, 66 },
+ { 145, 0, 26 }, { 134, 0, 5 }, { 7, 10, 750 }, { 9, 10, 223 },
+ { 11, 10, 27 }, { 11, 10, 466 }, { 12, 10, 624 }, { 14, 10, 265 },
+ { 146, 10, 61 }, { 134, 11, 26 }, { 134, 0, 1216 }, { 5, 0, 963 },
+ { 134, 0, 1773 }, { 4, 11, 414 }, { 5, 11, 467 }, { 9, 11, 654 },
+ { 10, 11, 451 }, { 12, 11, 59 }, { 141, 11, 375 }, { 135, 11, 17 },
+ { 4, 10, 603 }, { 133, 10, 661 }, { 4, 10, 11 }, { 6, 10, 128 },
+ { 7, 10, 231 }, { 7, 10, 1533 }, { 138, 10, 725 }, { 135, 11, 955 },
+ { 7, 0, 180 }, { 8, 0, 509 }, { 136, 0, 792 }, { 132, 10, 476 },
+ { 132, 0, 1002 }, { 133, 11, 538 }, { 135, 10, 1807 }, { 132, 0, 931 },
+ { 7, 0, 943 }, { 11, 0, 614 }, { 140, 0, 747 }, { 135, 0, 1837 },
+ { 9, 10, 20 }, { 10, 10, 324 }, { 10, 10, 807 }, { 139, 10, 488 },
+ { 134, 0, 641 }, { 6, 11, 280 }, { 10, 11, 502 }, { 11, 11, 344 },
+ { 140, 11, 38 }, { 5, 11, 45 }, { 7, 11, 1161 }, { 11, 11, 448 },
+ { 11, 11, 880 }, { 13, 11, 139 }, { 13, 11, 407 }, { 15, 11, 16 },
+ { 17, 11, 95 }, { 18, 11, 66 }, { 18, 11, 88 }, { 18, 11, 123 },
+ { 149, 11, 7 }, { 9, 0, 280 }, { 138, 0, 134 }, { 22, 0, 22 },
+ { 23, 0, 5 }, { 151, 0, 29 }, { 136, 11, 777 }, { 4, 0, 90 },
+ { 5, 0, 545 }, { 7, 0, 754 }, { 9, 0, 186 }, { 10, 0, 72 },
+ { 10, 0, 782 }, { 11, 0, 577 }, { 11, 0, 610 }, { 11, 0, 960 },
+ { 12, 0, 354 }, { 12, 0, 362 }, { 12, 0, 595 }, { 4, 11, 410 },
+ { 135, 11, 521 }, { 135, 11, 1778 }, { 5, 10, 112 }, { 6, 10, 103 },
+ { 134, 10, 150 }, { 138, 10, 356 }, { 132, 0, 742 }, { 7, 0, 151 },
+ { 9, 0, 329 }, { 139, 0, 254 }, { 8, 0, 853 }, { 8, 0, 881 },
+ { 8, 0, 911 }, { 8, 0, 912 }, { 10, 0, 872 }, { 12, 0, 741 },
+ { 12, 0, 742 }, { 152, 0, 18 }, { 4, 11, 573 }, { 136, 11, 655 },
+ { 6, 0, 921 }, { 134, 0, 934 }, { 9, 0, 187 }, { 10, 0, 36 },
+ { 11, 0, 1016 }, { 17, 0, 44 }, { 146, 0, 64 }, { 7, 0, 833 },
+ { 136, 0, 517 }, { 4, 0, 506 }, { 5, 0, 295 }, { 135, 0, 1680 },
+ { 4, 10, 708 }, { 8, 10, 15 }, { 9, 10, 50 }, { 9, 10, 386 },
+ { 11, 10, 18 }, { 11, 10, 529 }, { 140, 10, 228 }, { 7, 0, 251 },
+ { 7, 0, 1701 }, { 8, 0, 436 }, { 4, 10, 563 }, { 7, 10, 592 },
+ { 7, 10, 637 }, { 7, 10, 770 }, { 8, 10, 463 }, { 9, 10, 60 },
+ { 9, 10, 335 }, { 9, 10, 904 }, { 10, 10, 73 }, { 11, 10, 434 },
+ { 12, 10, 585 }, { 13, 10, 331 }, { 18, 10, 110 }, { 148, 10, 60 },
+ { 132, 10, 502 }, { 136, 0, 584 }, { 6, 10, 347 }, { 138, 10, 161 },
+ { 7, 0, 987 }, { 9, 0, 688 }, { 10, 0, 522 }, { 11, 0, 788 },
+ { 12, 0, 137 }, { 12, 0, 566 }, { 14, 0, 9 }, { 14, 0, 24 },
+ { 14, 0, 64 }, { 7, 11, 899 }, { 142, 11, 325 }, { 4, 0, 214 },
+ { 5, 0, 500 }, { 5, 10, 102 }, { 6, 10, 284 }, { 7, 10, 1079 },
+ { 7, 10, 1423 }, { 7, 10, 1702 }, { 8, 10, 470 }, { 9, 10, 554 },
+ { 9, 10, 723 }, { 139, 10, 333 }, { 7, 10, 246 }, { 135, 10, 840 },
+ { 6, 10, 10 }, { 8, 10, 571 }, { 9, 10, 739 }, { 143, 10, 91 },
+ { 133, 10, 626 }, { 146, 0, 195 }, { 134, 0, 1775 }, { 7, 0, 389 },
+ { 7, 0, 700 }, { 7, 0, 940 }, { 8, 0, 514 }, { 9, 0, 116 },
+ { 9, 0, 535 }, { 10, 0, 118 }, { 11, 0, 107 }, { 11, 0, 148 },
+ { 11, 0, 922 }, { 12, 0, 254 }, { 12, 0, 421 }, { 142, 0, 238 },
+ { 5, 10, 18 }, { 6, 10, 526 }, { 13, 10, 24 }, { 13, 10, 110 },
+ { 19, 10, 5 }, { 147, 10, 44 }, { 132, 0, 743 }, { 11, 0, 292 },
+ { 4, 10, 309 }, { 5, 10, 462 }, { 7, 10, 970 }, { 135, 10, 1097 },
+ { 22, 10, 30 }, { 150, 10, 33 }, { 139, 11, 338 }, { 135, 11, 1598 },
+ { 7, 0, 1283 }, { 9, 0, 227 }, { 11, 0, 325 }, { 11, 0, 408 },
+ { 14, 0, 180 }, { 146, 0, 47 }, { 4, 0, 953 }, { 6, 0, 1805 },
+ { 6, 0, 1814 }, { 6, 0, 1862 }, { 140, 0, 774 }, { 6, 11, 611 },
+ { 135, 11, 1733 }, { 135, 11, 1464 }, { 5, 0, 81 }, { 7, 0, 146 },
+ { 7, 0, 1342 }, { 8, 0, 53 }, { 8, 0, 561 }, { 8, 0, 694 },
+ { 8, 0, 754 }, { 9, 0, 115 }, { 9, 0, 179 }, { 9, 0, 894 },
+ { 10, 0, 462 }, { 10, 0, 813 }, { 11, 0, 230 }, { 11, 0, 657 },
+ { 11, 0, 699 }, { 11, 0, 748 }, { 12, 0, 119 }, { 12, 0, 200 },
+ { 12, 0, 283 }, { 142, 0, 273 }, { 5, 0, 408 }, { 6, 0, 789 },
+ { 6, 0, 877 }, { 6, 0, 1253 }, { 6, 0, 1413 }, { 137, 0, 747 },
+ { 134, 10, 1704 }, { 135, 11, 663 }, { 6, 0, 1910 }, { 6, 0, 1915 },
+ { 6, 0, 1923 }, { 9, 0, 913 }, { 9, 0, 928 }, { 9, 0, 950 },
+ { 9, 0, 954 }, { 9, 0, 978 }, { 9, 0, 993 }, { 12, 0, 812 },
+ { 12, 0, 819 }, { 12, 0, 831 }, { 12, 0, 833 }, { 12, 0, 838 },
+ { 12, 0, 909 }, { 12, 0, 928 }, { 12, 0, 931 }, { 12, 0, 950 },
+ { 15, 0, 186 }, { 15, 0, 187 }, { 15, 0, 195 }, { 15, 0, 196 },
+ { 15, 0, 209 }, { 15, 0, 215 }, { 15, 0, 236 }, { 15, 0, 241 },
+ { 15, 0, 249 }, { 15, 0, 253 }, { 18, 0, 180 }, { 18, 0, 221 },
+ { 18, 0, 224 }, { 18, 0, 227 }, { 18, 0, 229 }, { 149, 0, 60 },
+ { 7, 0, 1826 }, { 135, 0, 1938 }, { 11, 0, 490 }, { 18, 0, 143 },
+ { 5, 10, 86 }, { 7, 10, 743 }, { 9, 10, 85 }, { 10, 10, 281 },
+ { 10, 10, 432 }, { 12, 10, 251 }, { 13, 10, 118 }, { 142, 10, 378 },
+ { 5, 10, 524 }, { 133, 10, 744 }, { 141, 11, 442 }, { 10, 10, 107 },
+ { 140, 10, 436 }, { 135, 11, 503 }, { 134, 0, 1162 }, { 132, 10, 927 },
+ { 7, 0, 30 }, { 8, 0, 86 }, { 8, 0, 315 }, { 8, 0, 700 },
+ { 9, 0, 576 }, { 9, 0, 858 }, { 10, 0, 414 }, { 11, 0, 310 },
+ { 11, 0, 888 }, { 11, 0, 904 }, { 12, 0, 361 }, { 13, 0, 248 },
+ { 13, 0, 371 }, { 14, 0, 142 }, { 12, 10, 670 }, { 146, 10, 94 },
+ { 134, 0, 721 }, { 4, 11, 113 }, { 5, 11, 163 }, { 5, 11, 735 },
+ { 7, 11, 1009 }, { 7, 10, 1149 }, { 9, 11, 9 }, { 9, 10, 156 },
+ { 9, 11, 771 }, { 12, 11, 90 }, { 13, 11, 138 }, { 13, 11, 410 },
+ { 143, 11, 128 }, { 138, 0, 839 }, { 133, 10, 778 }, { 137, 0, 617 },
+ { 133, 10, 502 }, { 8, 10, 196 }, { 10, 10, 283 }, { 139, 10, 406 },
+ { 6, 0, 428 }, { 7, 0, 524 }, { 8, 0, 169 }, { 8, 0, 234 },
+ { 9, 0, 480 }, { 138, 0, 646 }, { 133, 10, 855 }, { 134, 0, 1648 },
+ { 7, 0, 1205 }, { 138, 0, 637 }, { 7, 0, 1596 }, { 4, 11, 935 },
+ { 133, 11, 823 }, { 5, 11, 269 }, { 7, 11, 434 }, { 7, 11, 891 },
+ { 8, 11, 339 }, { 9, 11, 702 }, { 11, 11, 594 }, { 11, 11, 718 },
+ { 145, 11, 100 }, { 7, 11, 878 }, { 9, 11, 485 }, { 141, 11, 264 },
+ { 4, 0, 266 }, { 8, 0, 4 }, { 9, 0, 39 }, { 10, 0, 166 },
+ { 11, 0, 918 }, { 12, 0, 635 }, { 20, 0, 10 }, { 22, 0, 27 },
+ { 22, 0, 43 }, { 22, 0, 52 }, { 134, 11, 1713 }, { 7, 10, 1400 },
+ { 9, 10, 446 }, { 138, 10, 45 }, { 135, 11, 900 }, { 132, 0, 862 },
+ { 134, 0, 1554 }, { 135, 11, 1033 }, { 19, 0, 16 }, { 147, 11, 16 },
+ { 135, 11, 1208 }, { 7, 0, 157 }, { 136, 0, 279 }, { 6, 0, 604 },
+ { 136, 0, 391 }, { 13, 10, 455 }, { 15, 10, 99 }, { 15, 10, 129 },
+ { 144, 10, 68 }, { 135, 10, 172 }, { 7, 0, 945 }, { 11, 0, 713 },
+ { 139, 0, 744 }, { 4, 0, 973 }, { 10, 0, 877 }, { 10, 0, 937 },
+ { 10, 0, 938 }, { 140, 0, 711 }, { 139, 0, 1022 }, { 132, 10, 568 },
+ { 142, 11, 143 }, { 4, 0, 567 }, { 9, 0, 859 }, { 132, 10, 732 },
+ { 7, 0, 1846 }, { 136, 0, 628 }, { 136, 10, 733 }, { 133, 0, 762 },
+ { 4, 10, 428 }, { 135, 10, 1789 }, { 10, 0, 784 }, { 13, 0, 191 },
+ { 7, 10, 2015 }, { 140, 10, 665 }, { 133, 0, 298 }, { 7, 0, 633 },
+ { 7, 0, 905 }, { 7, 0, 909 }, { 7, 0, 1538 }, { 9, 0, 767 },
+ { 140, 0, 636 }, { 138, 10, 806 }, { 132, 0, 795 }, { 139, 0, 301 },
+ { 135, 0, 1970 }, { 5, 11, 625 }, { 135, 11, 1617 }, { 135, 11, 275 },
+ { 7, 11, 37 }, { 8, 11, 425 }, { 8, 11, 693 }, { 9, 11, 720 },
+ { 10, 11, 380 }, { 10, 11, 638 }, { 11, 11, 273 }, { 11, 11, 307 },
+ { 11, 11, 473 }, { 12, 11, 61 }, { 143, 11, 43 }, { 135, 11, 198 },
+ { 134, 0, 1236 }, { 7, 0, 369 }, { 12, 0, 644 }, { 12, 0, 645 },
+ { 144, 0, 90 }, { 19, 0, 15 }, { 149, 0, 27 }, { 6, 0, 71 },
+ { 7, 0, 845 }, { 8, 0, 160 }, { 9, 0, 318 }, { 6, 10, 1623 },
+ { 134, 10, 1681 }, { 134, 0, 1447 }, { 134, 0, 1255 }, { 138, 0, 735 },
+ { 8, 0, 76 }, { 132, 11, 168 }, { 6, 10, 1748 }, { 8, 10, 715 },
+ { 9, 10, 802 }, { 10, 10, 46 }, { 10, 10, 819 }, { 13, 10, 308 },
+ { 14, 10, 351 }, { 14, 10, 363 }, { 146, 10, 67 }, { 135, 11, 91 },
+ { 6, 0, 474 }, { 4, 10, 63 }, { 133, 10, 347 }, { 133, 10, 749 },
+ { 138, 0, 841 }, { 133, 10, 366 }, { 6, 0, 836 }, { 132, 11, 225 },
+ { 135, 0, 1622 }, { 135, 10, 89 }, { 140, 0, 735 }, { 134, 0, 1601 },
+ { 138, 11, 145 }, { 6, 0, 1390 }, { 137, 0, 804 }, { 142, 0, 394 },
+ { 6, 11, 15 }, { 7, 11, 70 }, { 10, 11, 240 }, { 147, 11, 93 },
+ { 6, 0, 96 }, { 135, 0, 1426 }, { 4, 0, 651 }, { 133, 0, 289 },
+ { 7, 11, 956 }, { 7, 10, 977 }, { 7, 11, 1157 }, { 7, 11, 1506 },
+ { 7, 11, 1606 }, { 7, 11, 1615 }, { 7, 11, 1619 }, { 7, 11, 1736 },
+ { 7, 11, 1775 }, { 8, 11, 590 }, { 9, 11, 324 }, { 9, 11, 736 },
+ { 9, 11, 774 }, { 9, 11, 776 }, { 9, 11, 784 }, { 10, 11, 567 },
+ { 10, 11, 708 }, { 11, 11, 518 }, { 11, 11, 613 }, { 11, 11, 695 },
+ { 11, 11, 716 }, { 11, 11, 739 }, { 11, 11, 770 }, { 11, 11, 771 },
+ { 11, 11, 848 }, { 11, 11, 857 }, { 11, 11, 931 }, { 11, 11, 947 },
+ { 12, 11, 326 }, { 12, 11, 387 }, { 12, 11, 484 }, { 12, 11, 528 },
+ { 12, 11, 552 }, { 12, 11, 613 }, { 13, 11, 189 }, { 13, 11, 256 },
+ { 13, 11, 340 }, { 13, 11, 432 }, { 13, 11, 436 }, { 13, 11, 440 },
+ { 13, 11, 454 }, { 14, 11, 174 }, { 14, 11, 220 }, { 14, 11, 284 },
+ { 14, 11, 390 }, { 145, 11, 121 }, { 7, 0, 688 }, { 8, 0, 35 },
+ { 9, 0, 511 }, { 10, 0, 767 }, { 147, 0, 118 }, { 134, 0, 667 },
+ { 4, 0, 513 }, { 5, 10, 824 }, { 133, 10, 941 }, { 7, 10, 440 },
+ { 8, 10, 230 }, { 139, 10, 106 }, { 134, 0, 2034 }, { 135, 11, 1399 },
+ { 143, 11, 66 }, { 135, 11, 1529 }, { 4, 11, 145 }, { 6, 11, 176 },
+ { 7, 11, 395 }, { 9, 11, 562 }, { 144, 11, 28 }, { 132, 11, 501 },
+ { 132, 0, 704 }, { 134, 0, 1524 }, { 7, 0, 1078 }, { 134, 11, 464 },
+ { 6, 11, 509 }, { 10, 11, 82 }, { 20, 11, 91 }, { 151, 11, 13 },
+ { 4, 0, 720 }, { 133, 0, 306 }, { 133, 0, 431 }, { 7, 0, 1196 },
+ { 4, 10, 914 }, { 5, 10, 800 }, { 133, 10, 852 }, { 135, 11, 1189 },
+ { 10, 0, 54 }, { 141, 10, 115 }, { 7, 10, 564 }, { 142, 10, 168 },
+ { 5, 0, 464 }, { 6, 0, 236 }, { 7, 0, 696 }, { 7, 0, 914 },
+ { 7, 0, 1108 }, { 7, 0, 1448 }, { 9, 0, 15 }, { 9, 0, 564 },
+ { 10, 0, 14 }, { 12, 0, 565 }, { 13, 0, 449 }, { 14, 0, 53 },
+ { 15, 0, 13 }, { 16, 0, 64 }, { 17, 0, 41 }, { 4, 10, 918 },
+ { 133, 10, 876 }, { 6, 0, 1418 }, { 134, 10, 1764 }, { 4, 10, 92 },
+ { 133, 10, 274 }, { 134, 0, 907 }, { 4, 11, 114 }, { 8, 10, 501 },
+ { 9, 11, 492 }, { 13, 11, 462 }, { 142, 11, 215 }, { 4, 11, 77 },
+ { 5, 11, 361 }, { 6, 11, 139 }, { 6, 11, 401 }, { 6, 11, 404 },
+ { 7, 11, 413 }, { 7, 11, 715 }, { 7, 11, 1716 }, { 11, 11, 279 },
+ { 12, 11, 179 }, { 12, 11, 258 }, { 13, 11, 244 }, { 142, 11, 358 },
+ { 6, 0, 1767 }, { 12, 0, 194 }, { 145, 0, 107 }, { 134, 11, 1717 },
+ { 5, 10, 743 }, { 142, 11, 329 }, { 4, 10, 49 }, { 7, 10, 280 },
+ { 135, 10, 1633 }, { 5, 0, 840 }, { 7, 11, 1061 }, { 8, 11, 82 },
+ { 11, 11, 250 }, { 12, 11, 420 }, { 141, 11, 184 }, { 135, 11, 724 },
+ { 134, 0, 900 }, { 136, 10, 47 }, { 134, 0, 1436 }, { 144, 11, 0 },
+ { 6, 0, 675 }, { 7, 0, 1008 }, { 7, 0, 1560 }, { 9, 0, 642 },
+ { 11, 0, 236 }, { 14, 0, 193 }, { 5, 10, 272 }, { 5, 10, 908 },
+ { 5, 10, 942 }, { 8, 10, 197 }, { 9, 10, 47 }, { 11, 10, 538 },
+ { 139, 10, 742 }, { 4, 0, 68 }, { 5, 0, 628 }, { 5, 0, 634 },
+ { 6, 0, 386 }, { 7, 0, 794 }, { 8, 0, 273 }, { 9, 0, 563 },
+ { 10, 0, 105 }, { 10, 0, 171 }, { 11, 0, 94 }, { 139, 0, 354 },
+ { 135, 10, 1911 }, { 137, 10, 891 }, { 4, 0, 95 }, { 6, 0, 1297 },
+ { 6, 0, 1604 }, { 7, 0, 416 }, { 139, 0, 830 }, { 6, 11, 513 },
+ { 135, 11, 1052 }, { 7, 0, 731 }, { 13, 0, 20 }, { 143, 0, 11 },
+ { 137, 11, 899 }, { 10, 0, 850 }, { 140, 0, 697 }, { 4, 0, 662 },
+ { 7, 11, 1417 }, { 12, 11, 382 }, { 17, 11, 48 }, { 152, 11, 12 },
+ { 133, 0, 736 }, { 132, 0, 861 }, { 4, 10, 407 }, { 132, 10, 560 },
+ { 141, 10, 490 }, { 6, 11, 545 }, { 7, 11, 565 }, { 7, 11, 1669 },
+ { 10, 11, 114 }, { 11, 11, 642 }, { 140, 11, 618 }, { 6, 0, 871 },
+ { 134, 0, 1000 }, { 5, 0, 864 }, { 10, 0, 648 }, { 11, 0, 671 },
+ { 15, 0, 46 }, { 133, 11, 5 }, { 133, 0, 928 }, { 11, 0, 90 },
+ { 13, 0, 7 }, { 4, 10, 475 }, { 11, 10, 35 }, { 13, 10, 71 },
+ { 13, 10, 177 }, { 142, 10, 422 }, { 136, 0, 332 }, { 135, 11, 192 },
+ { 134, 0, 1055 }, { 136, 11, 763 }, { 11, 0, 986 }, { 140, 0, 682 },
+ { 7, 0, 76 }, { 8, 0, 44 }, { 9, 0, 884 }, { 10, 0, 580 },
+ { 11, 0, 399 }, { 11, 0, 894 }, { 143, 0, 122 }, { 135, 11, 1237 },
+ { 135, 10, 636 }, { 11, 0, 300 }, { 6, 10, 222 }, { 7, 10, 1620 },
+ { 8, 10, 409 }, { 137, 10, 693 }, { 4, 11, 87 }, { 5, 11, 250 },
+ { 10, 11, 601 }, { 13, 11, 298 }, { 13, 11, 353 }, { 141, 11, 376 },
+ { 5, 0, 518 }, { 10, 0, 340 }, { 11, 0, 175 }, { 149, 0, 16 },
+ { 140, 0, 771 }, { 6, 0, 1108 }, { 137, 0, 831 }, { 132, 0, 836 },
+ { 135, 0, 1852 }, { 4, 0, 957 }, { 6, 0, 1804 }, { 8, 0, 842 },
+ { 8, 0, 843 }, { 8, 0, 851 }, { 8, 0, 855 }, { 140, 0, 767 },
+ { 135, 11, 814 }, { 4, 11, 57 }, { 7, 11, 1195 }, { 7, 11, 1438 },
+ { 7, 11, 1548 }, { 7, 11, 1835 }, { 7, 11, 1904 }, { 9, 11, 757 },
+ { 10, 11, 604 }, { 139, 11, 519 }, { 133, 10, 882 }, { 138, 0, 246 },
+ { 4, 0, 934 }, { 5, 0, 202 }, { 8, 0, 610 }, { 7, 11, 1897 },
+ { 12, 11, 290 }, { 13, 11, 80 }, { 13, 11, 437 }, { 145, 11, 74 },
+ { 8, 0, 96 }, { 9, 0, 36 }, { 10, 0, 607 }, { 10, 0, 804 },
+ { 10, 0, 832 }, { 11, 0, 423 }, { 11, 0, 442 }, { 12, 0, 309 },
+ { 14, 0, 199 }, { 15, 0, 90 }, { 145, 0, 110 }, { 132, 10, 426 },
+ { 7, 0, 654 }, { 8, 0, 240 }, { 6, 10, 58 }, { 7, 10, 745 },
+ { 7, 10, 1969 }, { 8, 10, 675 }, { 9, 10, 479 }, { 9, 10, 731 },
+ { 10, 10, 330 }, { 10, 10, 593 }, { 10, 10, 817 }, { 11, 10, 32 },
+ { 11, 10, 133 }, { 11, 10, 221 }, { 145, 10, 68 }, { 9, 0, 13 },
+ { 9, 0, 398 }, { 9, 0, 727 }, { 10, 0, 75 }, { 10, 0, 184 },
+ { 10, 0, 230 }, { 10, 0, 564 }, { 10, 0, 569 }, { 11, 0, 973 },
+ { 12, 0, 70 }, { 12, 0, 189 }, { 13, 0, 57 }, { 141, 0, 257 },
+ { 4, 11, 209 }, { 135, 11, 902 }, { 7, 0, 391 }, { 137, 10, 538 },
+ { 134, 0, 403 }, { 6, 11, 303 }, { 7, 11, 335 }, { 7, 11, 1437 },
+ { 7, 11, 1668 }, { 8, 11, 553 }, { 8, 11, 652 }, { 8, 11, 656 },
+ { 9, 11, 558 }, { 11, 11, 743 }, { 149, 11, 18 }, { 132, 11, 559 },
+ { 11, 0, 75 }, { 142, 0, 267 }, { 6, 0, 815 }, { 141, 11, 2 },
+ { 141, 0, 366 }, { 137, 0, 631 }, { 133, 11, 1017 }, { 5, 0, 345 },
+ { 135, 0, 1016 }, { 133, 11, 709 }, { 134, 11, 1745 }, { 133, 10, 566 },
+ { 7, 0, 952 }, { 6, 10, 48 }, { 9, 10, 139 }, { 10, 10, 399 },
+ { 11, 10, 469 }, { 12, 10, 634 }, { 141, 10, 223 }, { 133, 0, 673 },
+ { 9, 0, 850 }, { 7, 11, 8 }, { 136, 11, 206 }, { 6, 0, 662 },
+ { 149, 0, 35 }, { 4, 0, 287 }, { 133, 0, 1018 }, { 6, 10, 114 },
+ { 7, 10, 1224 }, { 7, 10, 1556 }, { 136, 10, 3 }, { 8, 10, 576 },
+ { 137, 10, 267 }, { 4, 0, 884 }, { 5, 0, 34 }, { 10, 0, 724 },
+ { 12, 0, 444 }, { 13, 0, 354 }, { 18, 0, 32 }, { 23, 0, 24 },
+ { 23, 0, 31 }, { 152, 0, 5 }, { 133, 10, 933 }, { 132, 11, 776 },
+ { 138, 0, 151 }, { 136, 0, 427 }, { 134, 0, 382 }, { 132, 0, 329 },
+ { 9, 0, 846 }, { 10, 0, 827 }, { 138, 11, 33 }, { 9, 0, 279 },
+ { 10, 0, 407 }, { 14, 0, 84 }, { 22, 0, 18 }, { 135, 11, 1297 },
+ { 136, 11, 406 }, { 132, 0, 906 }, { 136, 0, 366 }, { 134, 0, 843 },
+ { 134, 0, 1443 }, { 135, 0, 1372 }, { 138, 0, 992 }, { 4, 0, 123 },
+ { 5, 0, 605 }, { 7, 0, 1509 }, { 136, 0, 36 }, { 132, 0, 649 },
+ { 8, 11, 175 }, { 10, 11, 168 }, { 138, 11, 573 }, { 133, 0, 767 },
+ { 134, 0, 1018 }, { 135, 11, 1305 }, { 12, 10, 30 }, { 13, 10, 148 },
+ { 14, 10, 87 }, { 14, 10, 182 }, { 16, 10, 42 }, { 148, 10, 70 },
+ { 134, 11, 607 }, { 4, 0, 273 }, { 5, 0, 658 }, { 133, 0, 995 },
+ { 6, 0, 72 }, { 139, 11, 174 }, { 10, 0, 483 }, { 12, 0, 368 },
+ { 7, 10, 56 }, { 7, 10, 1989 }, { 8, 10, 337 }, { 8, 10, 738 },
+ { 9, 10, 600 }, { 13, 10, 447 }, { 142, 10, 92 }, { 5, 11, 784 },
+ { 138, 10, 666 }, { 135, 0, 1345 }, { 139, 11, 882 }, { 134, 0, 1293 },
+ { 133, 0, 589 }, { 134, 0, 1988 }, { 5, 0, 117 }, { 6, 0, 514 },
+ { 6, 0, 541 }, { 7, 0, 1164 }, { 7, 0, 1436 }, { 8, 0, 220 },
+ { 8, 0, 648 }, { 10, 0, 688 }, { 139, 0, 560 }, { 136, 0, 379 },
+ { 5, 0, 686 }, { 7, 10, 866 }, { 135, 10, 1163 }, { 132, 10, 328 },
+ { 9, 11, 14 }, { 9, 11, 441 }, { 10, 11, 306 }, { 139, 11, 9 },
+ { 4, 10, 101 }, { 135, 10, 1171 }, { 5, 10, 833 }, { 136, 10, 744 },
+ { 5, 11, 161 }, { 7, 11, 839 }, { 135, 11, 887 }, { 7, 0, 196 },
+ { 10, 0, 765 }, { 11, 0, 347 }, { 11, 0, 552 }, { 11, 0, 790 },
+ { 12, 0, 263 }, { 13, 0, 246 }, { 13, 0, 270 }, { 13, 0, 395 },
+ { 14, 0, 176 }, { 14, 0, 190 }, { 14, 0, 398 }, { 14, 0, 412 },
+ { 15, 0, 32 }, { 15, 0, 63 }, { 16, 0, 88 }, { 147, 0, 105 },
+ { 6, 10, 9 }, { 6, 10, 397 }, { 7, 10, 53 }, { 7, 10, 1742 },
+ { 10, 10, 632 }, { 11, 10, 828 }, { 140, 10, 146 }, { 5, 0, 381 },
+ { 135, 0, 1792 }, { 134, 0, 1452 }, { 135, 11, 429 }, { 8, 0, 367 },
+ { 10, 0, 760 }, { 14, 0, 79 }, { 20, 0, 17 }, { 152, 0, 0 },
+ { 7, 0, 616 }, { 138, 0, 413 }, { 11, 10, 417 }, { 12, 10, 223 },
+ { 140, 10, 265 }, { 7, 11, 1611 }, { 13, 11, 14 }, { 15, 11, 44 },
+ { 19, 11, 13 }, { 148, 11, 76 }, { 135, 0, 1229 }, { 6, 0, 120 },
+ { 7, 0, 1188 }, { 7, 0, 1710 }, { 8, 0, 286 }, { 9, 0, 667 },
+ { 11, 0, 592 }, { 139, 0, 730 }, { 135, 11, 1814 }, { 135, 0, 1146 },
+ { 4, 10, 186 }, { 5, 10, 157 }, { 8, 10, 168 }, { 138, 10, 6 },
+ { 4, 0, 352 }, { 135, 0, 687 }, { 4, 0, 192 }, { 5, 0, 49 },
+ { 6, 0, 200 }, { 6, 0, 293 }, { 6, 0, 1696 }, { 135, 0, 1151 },
+ { 133, 10, 875 }, { 5, 10, 773 }, { 5, 10, 991 }, { 6, 10, 1635 },
+ { 134, 10, 1788 }, { 7, 10, 111 }, { 136, 10, 581 }, { 6, 0, 935 },
+ { 134, 0, 1151 }, { 134, 0, 1050 }, { 132, 0, 650 }, { 132, 0, 147 },
+ { 11, 0, 194 }, { 12, 0, 62 }, { 12, 0, 88 }, { 11, 11, 194 },
+ { 12, 11, 62 }, { 140, 11, 88 }, { 6, 0, 339 }, { 135, 0, 923 },
+ { 134, 10, 1747 }, { 7, 11, 643 }, { 136, 11, 236 }, { 133, 0, 934 },
+ { 7, 10, 1364 }, { 7, 10, 1907 }, { 141, 10, 158 }, { 132, 10, 659 },
+ { 4, 10, 404 }, { 135, 10, 675 }, { 7, 11, 581 }, { 9, 11, 644 },
+ { 137, 11, 699 }, { 13, 0, 211 }, { 14, 0, 133 }, { 14, 0, 204 },
+ { 15, 0, 64 }, { 15, 0, 69 }, { 15, 0, 114 }, { 16, 0, 10 },
+ { 19, 0, 23 }, { 19, 0, 35 }, { 19, 0, 39 }, { 19, 0, 51 },
+ { 19, 0, 71 }, { 19, 0, 75 }, { 152, 0, 15 }, { 133, 10, 391 },
+ { 5, 11, 54 }, { 135, 11, 1513 }, { 7, 0, 222 }, { 8, 0, 341 },
+ { 5, 10, 540 }, { 134, 10, 1697 }, { 134, 10, 78 }, { 132, 11, 744 },
+ { 136, 0, 293 }, { 137, 11, 701 }, { 7, 11, 930 }, { 10, 11, 402 },
+ { 10, 11, 476 }, { 13, 11, 452 }, { 18, 11, 55 }, { 147, 11, 104 },
+ { 132, 0, 637 }, { 133, 10, 460 }, { 8, 11, 50 }, { 137, 11, 624 },
+ { 132, 11, 572 }, { 134, 0, 1159 }, { 4, 10, 199 }, { 139, 10, 34 },
+ { 134, 0, 847 }, { 134, 10, 388 }, { 6, 11, 43 }, { 7, 11, 38 },
+ { 8, 11, 248 }, { 9, 11, 504 }, { 138, 11, 513 }, { 9, 0, 683 },
+ { 4, 10, 511 }, { 6, 10, 608 }, { 9, 10, 333 }, { 10, 10, 602 },
+ { 11, 10, 441 }, { 11, 10, 723 }, { 11, 10, 976 }, { 140, 10, 357 },
+ { 9, 0, 867 }, { 138, 0, 837 }, { 6, 0, 944 }, { 135, 11, 326 },
+ { 135, 0, 1809 }, { 5, 10, 938 }, { 7, 11, 783 }, { 136, 10, 707 },
+ { 133, 11, 766 }, { 133, 11, 363 }, { 6, 0, 170 }, { 7, 0, 1080 },
+ { 8, 0, 395 }, { 8, 0, 487 }, { 141, 0, 147 }, { 6, 11, 258 },
+ { 140, 11, 409 }, { 4, 0, 535 }, { 8, 0, 618 }, { 5, 11, 249 },
+ { 148, 11, 82 }, { 6, 0, 1379 }, { 149, 11, 15 }, { 135, 0, 1625 },
+ { 150, 0, 23 }, { 5, 11, 393 }, { 6, 11, 378 }, { 7, 11, 1981 },
+ { 9, 11, 32 }, { 9, 11, 591 }, { 10, 11, 685 }, { 10, 11, 741 },
+ { 142, 11, 382 }, { 133, 11, 788 }, { 7, 11, 1968 }, { 10, 11, 19 },
+ { 139, 11, 911 }, { 7, 11, 1401 }, { 135, 11, 1476 }, { 4, 11, 61 },
+ { 5, 11, 58 }, { 5, 11, 171 }, { 5, 11, 635 }, { 5, 11, 683 },
+ { 5, 11, 700 }, { 6, 11, 291 }, { 6, 11, 566 }, { 7, 11, 1650 },
+ { 11, 11, 523 }, { 12, 11, 273 }, { 12, 11, 303 }, { 15, 11, 39 },
+ { 143, 11, 111 }, { 6, 10, 469 }, { 7, 10, 1709 }, { 138, 10, 515 },
+ { 4, 0, 778 }, { 134, 11, 589 }, { 132, 0, 46 }, { 5, 0, 811 },
+ { 6, 0, 1679 }, { 6, 0, 1714 }, { 135, 0, 2032 }, { 7, 0, 1458 },
+ { 9, 0, 407 }, { 11, 0, 15 }, { 12, 0, 651 }, { 149, 0, 37 },
+ { 7, 0, 938 }, { 132, 10, 500 }, { 6, 0, 34 }, { 7, 0, 69 },
+ { 7, 0, 1089 }, { 7, 0, 1281 }, { 8, 0, 708 }, { 8, 0, 721 },
+ { 9, 0, 363 }, { 148, 0, 98 }, { 10, 11, 231 }, { 147, 11, 124 },
+ { 7, 11, 726 }, { 152, 11, 9 }, { 5, 10, 68 }, { 134, 10, 383 },
+ { 136, 11, 583 }, { 4, 11, 917 }, { 133, 11, 1005 }, { 11, 10, 216 },
+ { 139, 10, 340 }, { 135, 11, 1675 }, { 8, 0, 441 }, { 10, 0, 314 },
+ { 143, 0, 3 }, { 132, 11, 919 }, { 4, 10, 337 }, { 6, 10, 353 },
+ { 7, 10, 1934 }, { 8, 10, 488 }, { 137, 10, 429 }, { 7, 0, 889 },
+ { 7, 10, 1795 }, { 8, 10, 259 }, { 9, 10, 135 }, { 9, 10, 177 },
+ { 9, 10, 860 }, { 10, 10, 825 }, { 11, 10, 115 }, { 11, 10, 370 },
+ { 11, 10, 405 }, { 11, 10, 604 }, { 12, 10, 10 }, { 12, 10, 667 },
+ { 12, 10, 669 }, { 13, 10, 76 }, { 14, 10, 310 }, { 15, 10, 76 },
+ { 15, 10, 147 }, { 148, 10, 23 }, { 4, 10, 15 }, { 4, 11, 255 },
+ { 5, 10, 22 }, { 5, 11, 302 }, { 6, 11, 132 }, { 6, 10, 244 },
+ { 7, 10, 40 }, { 7, 11, 128 }, { 7, 10, 200 }, { 7, 11, 283 },
+ { 7, 10, 906 }, { 7, 10, 1199 }, { 7, 11, 1299 }, { 9, 10, 616 },
+ { 10, 11, 52 }, { 10, 11, 514 }, { 10, 10, 716 }, { 11, 10, 635 },
+ { 11, 10, 801 }, { 11, 11, 925 }, { 12, 10, 458 }, { 13, 11, 92 },
+ { 142, 11, 309 }, { 132, 0, 462 }, { 137, 11, 173 }, { 135, 10, 1735 },
+ { 8, 0, 525 }, { 5, 10, 598 }, { 7, 10, 791 }, { 8, 10, 108 },
+ { 137, 10, 123 }, { 5, 0, 73 }, { 6, 0, 23 }, { 134, 0, 338 },
+ { 132, 0, 676 }, { 132, 10, 683 }, { 7, 0, 725 }, { 8, 0, 498 },
+ { 139, 0, 268 }, { 12, 0, 21 }, { 151, 0, 7 }, { 135, 0, 773 },
+ { 4, 10, 155 }, { 135, 10, 1689 }, { 4, 0, 164 }, { 5, 0, 730 },
+ { 5, 10, 151 }, { 5, 10, 741 }, { 6, 11, 210 }, { 7, 10, 498 },
+ { 7, 10, 870 }, { 7, 10, 1542 }, { 12, 10, 213 }, { 14, 10, 36 },
+ { 14, 10, 391 }, { 17, 10, 111 }, { 18, 10, 6 }, { 18, 10, 46 },
+ { 18, 10, 151 }, { 19, 10, 36 }, { 20, 10, 32 }, { 20, 10, 56 },
+ { 20, 10, 69 }, { 20, 10, 102 }, { 21, 10, 4 }, { 22, 10, 8 },
+ { 22, 10, 10 }, { 22, 10, 14 }, { 150, 10, 31 }, { 4, 10, 624 },
+ { 135, 10, 1752 }, { 4, 0, 583 }, { 9, 0, 936 }, { 15, 0, 214 },
+ { 18, 0, 199 }, { 24, 0, 26 }, { 134, 11, 588 }, { 7, 0, 1462 },
+ { 11, 0, 659 }, { 4, 11, 284 }, { 134, 11, 223 }, { 133, 0, 220 },
+ { 139, 0, 803 }, { 132, 0, 544 }, { 4, 10, 492 }, { 133, 10, 451 },
+ { 16, 0, 98 }, { 148, 0, 119 }, { 4, 11, 218 }, { 7, 11, 526 },
+ { 143, 11, 137 }, { 135, 10, 835 }, { 4, 11, 270 }, { 5, 11, 192 },
+ { 6, 11, 332 }, { 7, 11, 1322 }, { 13, 11, 9 }, { 13, 10, 70 },
+ { 14, 11, 104 }, { 142, 11, 311 }, { 132, 10, 539 }, { 140, 11, 661 },
+ { 5, 0, 176 }, { 6, 0, 437 }, { 6, 0, 564 }, { 11, 0, 181 },
+ { 141, 0, 183 }, { 135, 0, 1192 }, { 6, 10, 113 }, { 135, 10, 436 },
+ { 136, 10, 718 }, { 135, 10, 520 }, { 135, 0, 1878 }, { 140, 11, 196 },
+ { 7, 11, 379 }, { 8, 11, 481 }, { 137, 11, 377 }, { 5, 11, 1003 },
+ { 6, 11, 149 }, { 137, 11, 746 }, { 8, 11, 262 }, { 9, 11, 627 },
+ { 10, 11, 18 }, { 11, 11, 214 }, { 11, 11, 404 }, { 11, 11, 457 },
+ { 11, 11, 780 }, { 11, 11, 849 }, { 11, 11, 913 }, { 13, 11, 330 },
+ { 13, 11, 401 }, { 142, 11, 200 }, { 149, 0, 26 }, { 136, 11, 304 },
+ { 132, 11, 142 }, { 135, 0, 944 }, { 4, 0, 790 }, { 5, 0, 273 },
+ { 134, 0, 394 }, { 134, 0, 855 }, { 4, 0, 135 }, { 6, 0, 127 },
+ { 7, 0, 1185 }, { 7, 0, 1511 }, { 8, 0, 613 }, { 11, 0, 5 },
+ { 12, 0, 336 }, { 12, 0, 495 }, { 12, 0, 586 }, { 12, 0, 660 },
+ { 12, 0, 668 }, { 14, 0, 385 }, { 15, 0, 118 }, { 17, 0, 20 },
+ { 146, 0, 98 }, { 6, 0, 230 }, { 9, 0, 752 }, { 18, 0, 109 },
+ { 12, 10, 610 }, { 13, 10, 431 }, { 144, 10, 59 }, { 7, 0, 1954 },
+ { 135, 11, 925 }, { 4, 11, 471 }, { 5, 11, 51 }, { 6, 11, 602 },
+ { 8, 11, 484 }, { 10, 11, 195 }, { 140, 11, 159 }, { 132, 10, 307 },
+ { 136, 11, 688 }, { 132, 11, 697 }, { 7, 11, 812 }, { 7, 11, 1261 },
+ { 7, 11, 1360 }, { 9, 11, 632 }, { 140, 11, 352 }, { 5, 0, 162 },
+ { 8, 0, 68 }, { 133, 10, 964 }, { 4, 0, 654 }, { 136, 11, 212 },
+ { 4, 0, 156 }, { 7, 0, 998 }, { 7, 0, 1045 }, { 7, 0, 1860 },
+ { 9, 0, 48 }, { 9, 0, 692 }, { 11, 0, 419 }, { 139, 0, 602 },
+ { 133, 11, 221 }, { 4, 11, 373 }, { 5, 11, 283 }, { 6, 11, 480 },
+ { 135, 11, 609 }, { 142, 11, 216 }, { 132, 0, 240 }, { 6, 11, 192 },
+ { 9, 11, 793 }, { 145, 11, 55 }, { 4, 10, 75 }, { 5, 10, 180 },
+ { 6, 10, 500 }, { 7, 10, 58 }, { 7, 10, 710 }, { 138, 10, 645 },
+ { 4, 11, 132 }, { 5, 11, 69 }, { 5, 10, 649 }, { 135, 11, 1242 },
+ { 6, 10, 276 }, { 7, 10, 282 }, { 7, 10, 879 }, { 7, 10, 924 },
+ { 8, 10, 459 }, { 9, 10, 599 }, { 9, 10, 754 }, { 11, 10, 574 },
+ { 12, 10, 128 }, { 12, 10, 494 }, { 13, 10, 52 }, { 13, 10, 301 },
+ { 15, 10, 30 }, { 143, 10, 132 }, { 132, 10, 200 }, { 4, 11, 111 },
+ { 135, 11, 302 }, { 9, 0, 197 }, { 10, 0, 300 }, { 12, 0, 473 },
+ { 13, 0, 90 }, { 141, 0, 405 }, { 132, 11, 767 }, { 6, 11, 42 },
+ { 7, 11, 1416 }, { 7, 11, 1590 }, { 7, 11, 2005 }, { 8, 11, 131 },
+ { 8, 11, 466 }, { 9, 11, 672 }, { 13, 11, 252 }, { 148, 11, 103 },
+ { 8, 0, 958 }, { 8, 0, 999 }, { 10, 0, 963 }, { 138, 0, 1001 },
+ { 135, 10, 1621 }, { 135, 0, 858 }, { 4, 0, 606 }, { 137, 11, 444 },
+ { 6, 11, 44 }, { 136, 11, 368 }, { 139, 11, 172 }, { 4, 11, 570 },
+ { 133, 11, 120 }, { 139, 11, 624 }, { 7, 0, 1978 }, { 8, 0, 676 },
+ { 6, 10, 225 }, { 137, 10, 211 }, { 7, 0, 972 }, { 11, 0, 102 },
+ { 136, 10, 687 }, { 6, 11, 227 }, { 135, 11, 1589 }, { 8, 10, 58 },
+ { 9, 10, 724 }, { 11, 10, 809 }, { 13, 10, 113 }, { 145, 10, 72 },
+ { 4, 0, 361 }, { 133, 0, 315 }, { 132, 0, 461 }, { 6, 10, 345 },
+ { 135, 10, 1247 }, { 132, 0, 472 }, { 8, 10, 767 }, { 8, 10, 803 },
+ { 9, 10, 301 }, { 137, 10, 903 }, { 135, 11, 1333 }, { 135, 11, 477 },
+ { 7, 10, 1949 }, { 136, 10, 674 }, { 6, 0, 905 }, { 138, 0, 747 },
+ { 133, 0, 155 }, { 134, 10, 259 }, { 7, 0, 163 }, { 8, 0, 319 },
+ { 9, 0, 402 }, { 10, 0, 24 }, { 10, 0, 681 }, { 11, 0, 200 },
+ { 12, 0, 253 }, { 12, 0, 410 }, { 142, 0, 219 }, { 5, 0, 475 },
+ { 7, 0, 1780 }, { 9, 0, 230 }, { 11, 0, 297 }, { 11, 0, 558 },
+ { 14, 0, 322 }, { 19, 0, 76 }, { 6, 11, 1667 }, { 7, 11, 2036 },
+ { 138, 11, 600 }, { 136, 10, 254 }, { 6, 0, 848 }, { 135, 0, 1956 },
+ { 6, 11, 511 }, { 140, 11, 132 }, { 5, 11, 568 }, { 6, 11, 138 },
+ { 135, 11, 1293 }, { 6, 0, 631 }, { 137, 0, 838 }, { 149, 0, 36 },
+ { 4, 11, 565 }, { 8, 11, 23 }, { 136, 11, 827 }, { 5, 0, 944 },
+ { 134, 0, 1769 }, { 4, 0, 144 }, { 6, 0, 842 }, { 6, 0, 1400 },
+ { 4, 11, 922 }, { 133, 11, 1023 }, { 133, 10, 248 }, { 9, 10, 800 },
+ { 10, 10, 693 }, { 11, 10, 482 }, { 11, 10, 734 }, { 139, 10, 789 },
+ { 7, 11, 1002 }, { 139, 11, 145 }, { 4, 10, 116 }, { 5, 10, 95 },
+ { 5, 10, 445 }, { 7, 10, 1688 }, { 8, 10, 29 }, { 9, 10, 272 },
+ { 11, 10, 509 }, { 139, 10, 915 }, { 14, 0, 369 }, { 146, 0, 72 },
+ { 135, 10, 1641 }, { 132, 11, 740 }, { 133, 10, 543 }, { 140, 11, 116 },
+ { 6, 0, 247 }, { 9, 0, 555 }, { 5, 10, 181 }, { 136, 10, 41 },
+ { 133, 10, 657 }, { 136, 0, 996 }, { 138, 10, 709 }, { 7, 0, 189 },
+ { 8, 10, 202 }, { 138, 10, 536 }, { 136, 11, 402 }, { 4, 11, 716 },
+ { 141, 11, 31 }, { 10, 0, 280 }, { 138, 0, 797 }, { 9, 10, 423 },
+ { 140, 10, 89 }, { 8, 10, 113 }, { 9, 10, 877 }, { 10, 10, 554 },
+ { 11, 10, 83 }, { 12, 10, 136 }, { 147, 10, 109 }, { 133, 10, 976 },
+ { 7, 0, 746 }, { 132, 10, 206 }, { 136, 0, 526 }, { 139, 0, 345 },
+ { 136, 0, 1017 }, { 8, 11, 152 }, { 9, 11, 53 }, { 9, 11, 268 },
+ { 9, 11, 901 }, { 10, 11, 518 }, { 10, 11, 829 }, { 11, 11, 188 },
+ { 13, 11, 74 }, { 14, 11, 46 }, { 15, 11, 17 }, { 15, 11, 33 },
+ { 17, 11, 40 }, { 18, 11, 36 }, { 19, 11, 20 }, { 22, 11, 1 },
+ { 152, 11, 2 }, { 133, 11, 736 }, { 136, 11, 532 }, { 5, 0, 428 },
+ { 138, 0, 651 }, { 135, 11, 681 }, { 135, 0, 1162 }, { 7, 0, 327 },
+ { 13, 0, 230 }, { 17, 0, 113 }, { 8, 10, 226 }, { 10, 10, 537 },
+ { 11, 10, 570 }, { 11, 10, 605 }, { 11, 10, 799 }, { 11, 10, 804 },
+ { 12, 10, 85 }, { 12, 10, 516 }, { 12, 10, 623 }, { 12, 11, 677 },
+ { 13, 10, 361 }, { 14, 10, 77 }, { 14, 10, 78 }, { 147, 10, 110 },
+ { 4, 0, 792 }, { 7, 0, 1717 }, { 10, 0, 546 }, { 132, 10, 769 },
+ { 4, 11, 684 }, { 136, 11, 384 }, { 132, 10, 551 }, { 134, 0, 1203 },
+ { 9, 10, 57 }, { 9, 10, 459 }, { 10, 10, 425 }, { 11, 10, 119 },
+ { 12, 10, 184 }, { 12, 10, 371 }, { 13, 10, 358 }, { 145, 10, 51 },
+ { 5, 0, 672 }, { 5, 10, 814 }, { 8, 10, 10 }, { 9, 10, 421 },
+ { 9, 10, 729 }, { 10, 10, 609 }, { 139, 10, 689 }, { 138, 0, 189 },
+ { 134, 10, 624 }, { 7, 11, 110 }, { 7, 11, 188 }, { 8, 11, 290 },
+ { 8, 11, 591 }, { 9, 11, 382 }, { 9, 11, 649 }, { 11, 11, 71 },
+ { 11, 11, 155 }, { 11, 11, 313 }, { 12, 11, 5 }, { 13, 11, 325 },
+ { 142, 11, 287 }, { 133, 0, 99 }, { 6, 0, 1053 }, { 135, 0, 298 },
+ { 7, 11, 360 }, { 7, 11, 425 }, { 9, 11, 66 }, { 9, 11, 278 },
+ { 138, 11, 644 }, { 4, 0, 397 }, { 136, 0, 555 }, { 137, 10, 269 },
+ { 132, 10, 528 }, { 4, 11, 900 }, { 133, 11, 861 }, { 6, 0, 1157 },
+ { 5, 11, 254 }, { 7, 11, 985 }, { 136, 11, 73 }, { 7, 11, 1959 },
+ { 136, 11, 683 }, { 12, 0, 398 }, { 20, 0, 39 }, { 21, 0, 11 },
+ { 150, 0, 41 }, { 4, 0, 485 }, { 7, 0, 353 }, { 135, 0, 1523 },
+ { 6, 0, 366 }, { 7, 0, 1384 }, { 135, 0, 1601 }, { 138, 0, 787 },
+ { 137, 0, 282 }, { 5, 10, 104 }, { 6, 10, 173 }, { 135, 10, 1631 },
+ { 139, 11, 146 }, { 4, 0, 157 }, { 133, 0, 471 }, { 134, 0, 941 },
+ { 132, 11, 725 }, { 7, 0, 1336 }, { 8, 10, 138 }, { 8, 10, 342 },
+ { 9, 10, 84 }, { 10, 10, 193 }, { 11, 10, 883 }, { 140, 10, 359 },
+ { 134, 11, 196 }, { 136, 0, 116 }, { 133, 11, 831 }, { 134, 0, 787 },
+ { 134, 10, 95 }, { 6, 10, 406 }, { 10, 10, 409 }, { 10, 10, 447 },
+ { 11, 10, 44 }, { 140, 10, 100 }, { 5, 0, 160 }, { 7, 0, 363 },
+ { 7, 0, 589 }, { 10, 0, 170 }, { 141, 0, 55 }, { 134, 0, 1815 },
+ { 132, 0, 866 }, { 6, 0, 889 }, { 6, 0, 1067 }, { 6, 0, 1183 },
+ { 4, 11, 321 }, { 134, 11, 569 }, { 5, 11, 848 }, { 134, 11, 66 },
+ { 4, 11, 36 }, { 6, 10, 1636 }, { 7, 11, 1387 }, { 10, 11, 205 },
+ { 11, 11, 755 }, { 141, 11, 271 }, { 132, 0, 689 }, { 9, 0, 820 },
+ { 4, 10, 282 }, { 7, 10, 1034 }, { 11, 10, 398 }, { 11, 10, 634 },
+ { 12, 10, 1 }, { 12, 10, 79 }, { 12, 10, 544 }, { 14, 10, 237 },
+ { 17, 10, 10 }, { 146, 10, 20 }, { 4, 0, 108 }, { 7, 0, 804 },
+ { 139, 0, 498 }, { 132, 11, 887 }, { 6, 0, 1119 }, { 135, 11, 620 },
+ { 6, 11, 165 }, { 138, 11, 388 }, { 5, 0, 244 }, { 5, 10, 499 },
+ { 6, 10, 476 }, { 7, 10, 600 }, { 7, 10, 888 }, { 135, 10, 1096 },
+ { 140, 0, 609 }, { 135, 0, 1005 }, { 4, 0, 412 }, { 133, 0, 581 },
+ { 4, 11, 719 }, { 135, 11, 155 }, { 7, 10, 296 }, { 7, 10, 596 },
+ { 8, 10, 560 }, { 8, 10, 586 }, { 9, 10, 612 }, { 11, 10, 304 },
+ { 12, 10, 46 }, { 13, 10, 89 }, { 14, 10, 112 }, { 145, 10, 122 },
+ { 4, 0, 895 }, { 133, 0, 772 }, { 142, 11, 307 }, { 135, 0, 1898 },
+ { 4, 0, 926 }, { 133, 0, 983 }, { 4, 11, 353 }, { 6, 11, 146 },
+ { 6, 11, 1789 }, { 7, 11, 288 }, { 7, 11, 990 }, { 7, 11, 1348 },
+ { 9, 11, 665 }, { 9, 11, 898 }, { 11, 11, 893 }, { 142, 11, 212 },
+ { 132, 0, 538 }, { 133, 11, 532 }, { 6, 0, 294 }, { 7, 0, 1267 },
+ { 8, 0, 624 }, { 141, 0, 496 }, { 7, 0, 1325 }, { 4, 11, 45 },
+ { 135, 11, 1257 }, { 138, 0, 301 }, { 9, 0, 298 }, { 12, 0, 291 },
+ { 13, 0, 276 }, { 14, 0, 6 }, { 17, 0, 18 }, { 21, 0, 32 },
+ { 7, 10, 1599 }, { 7, 10, 1723 }, { 8, 10, 79 }, { 8, 10, 106 },
+ { 8, 10, 190 }, { 8, 10, 302 }, { 8, 10, 383 }, { 8, 10, 713 },
+ { 9, 10, 119 }, { 9, 10, 233 }, { 9, 10, 419 }, { 9, 10, 471 },
+ { 10, 10, 181 }, { 10, 10, 406 }, { 11, 10, 57 }, { 11, 10, 85 },
+ { 11, 10, 120 }, { 11, 10, 177 }, { 11, 10, 296 }, { 11, 10, 382 },
+ { 11, 10, 454 }, { 11, 10, 758 }, { 11, 10, 999 }, { 12, 10, 27 },
+ { 12, 10, 131 }, { 12, 10, 245 }, { 12, 10, 312 }, { 12, 10, 446 },
+ { 12, 10, 454 }, { 13, 10, 98 }, { 13, 10, 426 }, { 13, 10, 508 },
+ { 14, 10, 163 }, { 14, 10, 272 }, { 14, 10, 277 }, { 14, 10, 370 },
+ { 15, 10, 95 }, { 15, 10, 138 }, { 15, 10, 167 }, { 17, 10, 38 },
+ { 148, 10, 96 }, { 132, 0, 757 }, { 134, 0, 1263 }, { 4, 0, 820 },
+ { 134, 10, 1759 }, { 133, 0, 722 }, { 136, 11, 816 }, { 138, 10, 372 },
+ { 145, 10, 16 }, { 134, 0, 1039 }, { 4, 0, 991 }, { 134, 0, 2028 },
+ { 133, 10, 258 }, { 7, 0, 1875 }, { 139, 0, 124 }, { 6, 11, 559 },
+ { 6, 11, 1691 }, { 135, 11, 586 }, { 5, 0, 324 }, { 7, 0, 881 },
+ { 8, 10, 134 }, { 9, 10, 788 }, { 140, 10, 438 }, { 7, 11, 1823 },
+ { 139, 11, 693 }, { 6, 0, 1348 }, { 134, 0, 1545 }, { 134, 0, 911 },
+ { 132, 0, 954 }, { 8, 0, 329 }, { 8, 0, 414 }, { 7, 10, 1948 },
+ { 135, 10, 2004 }, { 5, 0, 517 }, { 6, 10, 439 }, { 7, 10, 780 },
+ { 135, 10, 1040 }, { 132, 0, 816 }, { 5, 10, 1 }, { 6, 10, 81 },
+ { 138, 10, 520 }, { 9, 0, 713 }, { 10, 0, 222 }, { 5, 10, 482 },
+ { 8, 10, 98 }, { 10, 10, 700 }, { 10, 10, 822 }, { 11, 10, 302 },
+ { 11, 10, 778 }, { 12, 10, 50 }, { 12, 10, 127 }, { 12, 10, 396 },
+ { 13, 10, 62 }, { 13, 10, 328 }, { 14, 10, 122 }, { 147, 10, 72 },
+ { 137, 0, 33 }, { 5, 10, 2 }, { 7, 10, 1494 }, { 136, 10, 589 },
+ { 6, 10, 512 }, { 7, 10, 797 }, { 8, 10, 253 }, { 9, 10, 77 },
+ { 10, 10, 1 }, { 10, 11, 108 }, { 10, 10, 129 }, { 10, 10, 225 },
+ { 11, 11, 116 }, { 11, 10, 118 }, { 11, 10, 226 }, { 11, 10, 251 },
+ { 11, 10, 430 }, { 11, 10, 701 }, { 11, 10, 974 }, { 11, 10, 982 },
+ { 12, 10, 64 }, { 12, 10, 260 }, { 12, 10, 488 }, { 140, 10, 690 },
+ { 134, 11, 456 }, { 133, 11, 925 }, { 5, 0, 150 }, { 7, 0, 106 },
+ { 7, 0, 774 }, { 8, 0, 603 }, { 9, 0, 593 }, { 9, 0, 634 },
+ { 10, 0, 44 }, { 10, 0, 173 }, { 11, 0, 462 }, { 11, 0, 515 },
+ { 13, 0, 216 }, { 13, 0, 288 }, { 142, 0, 400 }, { 137, 10, 347 },
+ { 5, 0, 748 }, { 134, 0, 553 }, { 12, 0, 108 }, { 141, 0, 291 },
+ { 7, 0, 420 }, { 4, 10, 12 }, { 7, 10, 522 }, { 7, 10, 809 },
+ { 8, 10, 797 }, { 141, 10, 88 }, { 6, 11, 193 }, { 7, 11, 240 },
+ { 7, 11, 1682 }, { 10, 11, 51 }, { 10, 11, 640 }, { 11, 11, 410 },
+ { 13, 11, 82 }, { 14, 11, 247 }, { 14, 11, 331 }, { 142, 11, 377 },
+ { 133, 10, 528 }, { 135, 0, 1777 }, { 4, 0, 493 }, { 144, 0, 55 },
+ { 136, 11, 633 }, { 139, 0, 81 }, { 6, 0, 980 }, { 136, 0, 321 },
+ { 148, 10, 109 }, { 5, 10, 266 }, { 9, 10, 290 }, { 9, 10, 364 },
+ { 10, 10, 293 }, { 11, 10, 606 }, { 142, 10, 45 }, { 6, 0, 568 },
+ { 7, 0, 112 }, { 7, 0, 1804 }, { 8, 0, 362 }, { 8, 0, 410 },
+ { 8, 0, 830 }, { 9, 0, 514 }, { 11, 0, 649 }, { 142, 0, 157 },
+ { 4, 0, 74 }, { 6, 0, 510 }, { 6, 10, 594 }, { 9, 10, 121 },
+ { 10, 10, 49 }, { 10, 10, 412 }, { 139, 10, 834 }, { 134, 0, 838 },
+ { 136, 10, 748 }, { 132, 10, 466 }, { 132, 0, 625 }, { 135, 11, 1443 },
+ { 4, 11, 237 }, { 135, 11, 514 }, { 9, 10, 378 }, { 141, 10, 162 },
+ { 6, 0, 16 }, { 6, 0, 158 }, { 7, 0, 43 }, { 7, 0, 129 },
+ { 7, 0, 181 }, { 8, 0, 276 }, { 8, 0, 377 }, { 10, 0, 523 },
+ { 11, 0, 816 }, { 12, 0, 455 }, { 13, 0, 303 }, { 142, 0, 135 },
+ { 135, 0, 281 }, { 4, 0, 1 }, { 7, 0, 1143 }, { 7, 0, 1463 },
+ { 8, 0, 61 }, { 9, 0, 207 }, { 9, 0, 390 }, { 9, 0, 467 },
+ { 139, 0, 836 }, { 6, 11, 392 }, { 7, 11, 65 }, { 135, 11, 2019 },
+ { 132, 10, 667 }, { 4, 0, 723 }, { 5, 0, 895 }, { 7, 0, 1031 },
+ { 8, 0, 199 }, { 8, 0, 340 }, { 9, 0, 153 }, { 9, 0, 215 },
+ { 10, 0, 21 }, { 10, 0, 59 }, { 10, 0, 80 }, { 10, 0, 224 },
+ { 10, 0, 838 }, { 11, 0, 229 }, { 11, 0, 652 }, { 12, 0, 192 },
+ { 13, 0, 146 }, { 142, 0, 91 }, { 132, 0, 295 }, { 137, 0, 51 },
+ { 9, 11, 222 }, { 10, 11, 43 }, { 139, 11, 900 }, { 5, 0, 309 },
+ { 140, 0, 211 }, { 5, 0, 125 }, { 8, 0, 77 }, { 138, 0, 15 },
+ { 136, 11, 604 }, { 138, 0, 789 }, { 5, 0, 173 }, { 4, 10, 39 },
+ { 7, 10, 1843 }, { 8, 10, 407 }, { 11, 10, 144 }, { 140, 10, 523 },
+ { 138, 11, 265 }, { 133, 0, 439 }, { 132, 10, 510 }, { 7, 0, 648 },
+ { 7, 0, 874 }, { 11, 0, 164 }, { 12, 0, 76 }, { 18, 0, 9 },
+ { 7, 10, 1980 }, { 10, 10, 487 }, { 138, 10, 809 }, { 12, 0, 111 },
+ { 14, 0, 294 }, { 19, 0, 45 }, { 13, 10, 260 }, { 146, 10, 63 },
+ { 133, 11, 549 }, { 134, 10, 570 }, { 4, 0, 8 }, { 7, 0, 1152 },
+ { 7, 0, 1153 }, { 7, 0, 1715 }, { 9, 0, 374 }, { 10, 0, 478 },
+ { 139, 0, 648 }, { 135, 0, 1099 }, { 5, 0, 575 }, { 6, 0, 354 },
+ { 135, 0, 701 }, { 7, 11, 36 }, { 8, 11, 201 }, { 136, 11, 605 },
+ { 4, 10, 787 }, { 136, 11, 156 }, { 6, 0, 518 }, { 149, 11, 13 },
+ { 140, 11, 224 }, { 134, 0, 702 }, { 132, 10, 516 }, { 5, 11, 724 },
+ { 10, 11, 305 }, { 11, 11, 151 }, { 12, 11, 33 }, { 12, 11, 121 },
+ { 12, 11, 381 }, { 17, 11, 3 }, { 17, 11, 27 }, { 17, 11, 78 },
+ { 18, 11, 18 }, { 19, 11, 54 }, { 149, 11, 5 }, { 8, 0, 87 },
+ { 4, 11, 523 }, { 5, 11, 638 }, { 11, 10, 887 }, { 14, 10, 365 },
+ { 142, 10, 375 }, { 138, 0, 438 }, { 136, 10, 821 }, { 135, 11, 1908 },
+ { 6, 11, 242 }, { 7, 11, 227 }, { 7, 11, 1581 }, { 8, 11, 104 },
+ { 9, 11, 113 }, { 9, 11, 220 }, { 9, 11, 427 }, { 10, 11, 74 },
+ { 10, 11, 239 }, { 11, 11, 579 }, { 11, 11, 1023 }, { 13, 11, 4 },
+ { 13, 11, 204 }, { 13, 11, 316 }, { 18, 11, 95 }, { 148, 11, 86 },
+ { 4, 0, 69 }, { 5, 0, 122 }, { 5, 0, 849 }, { 6, 0, 1633 },
+ { 9, 0, 656 }, { 138, 0, 464 }, { 7, 0, 1802 }, { 4, 10, 10 },
+ { 139, 10, 786 }, { 135, 11, 861 }, { 139, 0, 499 }, { 7, 0, 476 },
+ { 7, 0, 1592 }, { 138, 0, 87 }, { 133, 10, 684 }, { 4, 0, 840 },
+ { 134, 10, 27 }, { 142, 0, 283 }, { 6, 0, 1620 }, { 7, 11, 1328 },
+ { 136, 11, 494 }, { 5, 0, 859 }, { 7, 0, 1160 }, { 8, 0, 107 },
+ { 9, 0, 291 }, { 9, 0, 439 }, { 10, 0, 663 }, { 11, 0, 609 },
+ { 140, 0, 197 }, { 7, 11, 1306 }, { 8, 11, 505 }, { 9, 11, 482 },
+ { 10, 11, 126 }, { 11, 11, 225 }, { 12, 11, 347 }, { 12, 11, 449 },
+ { 13, 11, 19 }, { 142, 11, 218 }, { 5, 11, 268 }, { 10, 11, 764 },
+ { 12, 11, 120 }, { 13, 11, 39 }, { 145, 11, 127 }, { 145, 10, 56 },
+ { 7, 11, 1672 }, { 10, 11, 472 }, { 11, 11, 189 }, { 143, 11, 51 },
+ { 6, 10, 342 }, { 6, 10, 496 }, { 8, 10, 275 }, { 137, 10, 206 },
+ { 133, 0, 600 }, { 4, 0, 117 }, { 6, 0, 372 }, { 7, 0, 1905 },
+ { 142, 0, 323 }, { 4, 10, 909 }, { 5, 10, 940 }, { 135, 11, 1471 },
+ { 132, 10, 891 }, { 4, 0, 722 }, { 139, 0, 471 }, { 4, 11, 384 },
+ { 135, 11, 1022 }, { 132, 10, 687 }, { 9, 0, 5 }, { 12, 0, 216 },
+ { 12, 0, 294 }, { 12, 0, 298 }, { 12, 0, 400 }, { 12, 0, 518 },
+ { 13, 0, 229 }, { 143, 0, 139 }, { 135, 11, 1703 }, { 7, 11, 1602 },
+ { 10, 11, 698 }, { 12, 11, 212 }, { 141, 11, 307 }, { 6, 10, 41 },
+ { 141, 10, 160 }, { 135, 11, 1077 }, { 9, 11, 159 }, { 11, 11, 28 },
+ { 140, 11, 603 }, { 4, 0, 514 }, { 7, 0, 1304 }, { 138, 0, 477 },
+ { 134, 0, 1774 }, { 9, 0, 88 }, { 139, 0, 270 }, { 5, 0, 12 },
+ { 7, 0, 375 }, { 9, 0, 438 }, { 134, 10, 1718 }, { 132, 11, 515 },
+ { 136, 10, 778 }, { 8, 11, 632 }, { 8, 11, 697 }, { 137, 11, 854 },
+ { 6, 0, 362 }, { 6, 0, 997 }, { 146, 0, 51 }, { 7, 0, 816 },
+ { 7, 0, 1241 }, { 9, 0, 283 }, { 9, 0, 520 }, { 10, 0, 213 },
+ { 10, 0, 307 }, { 10, 0, 463 }, { 10, 0, 671 }, { 10, 0, 746 },
+ { 11, 0, 401 }, { 11, 0, 794 }, { 12, 0, 517 }, { 18, 0, 107 },
+ { 147, 0, 115 }, { 133, 10, 115 }, { 150, 11, 28 }, { 4, 11, 136 },
+ { 133, 11, 551 }, { 142, 10, 314 }, { 132, 0, 258 }, { 6, 0, 22 },
+ { 7, 0, 903 }, { 7, 0, 1963 }, { 8, 0, 639 }, { 138, 0, 577 },
+ { 5, 0, 681 }, { 8, 0, 782 }, { 13, 0, 130 }, { 17, 0, 84 },
+ { 5, 10, 193 }, { 140, 10, 178 }, { 9, 11, 17 }, { 138, 11, 291 },
+ { 7, 11, 1287 }, { 9, 11, 44 }, { 10, 11, 552 }, { 10, 11, 642 },
+ { 11, 11, 839 }, { 12, 11, 274 }, { 12, 11, 275 }, { 12, 11, 372 },
+ { 13, 11, 91 }, { 142, 11, 125 }, { 135, 10, 174 }, { 4, 0, 664 },
+ { 5, 0, 804 }, { 139, 0, 1013 }, { 134, 0, 942 }, { 6, 0, 1349 },
+ { 6, 0, 1353 }, { 6, 0, 1450 }, { 7, 11, 1518 }, { 139, 11, 694 },
+ { 11, 0, 356 }, { 4, 10, 122 }, { 5, 10, 796 }, { 5, 10, 952 },
+ { 6, 10, 1660 }, { 6, 10, 1671 }, { 8, 10, 567 }, { 9, 10, 687 },
+ { 9, 10, 742 }, { 10, 10, 686 }, { 11, 10, 682 }, { 140, 10, 281 },
+ { 5, 0, 32 }, { 6, 11, 147 }, { 7, 11, 886 }, { 9, 11, 753 },
+ { 138, 11, 268 }, { 5, 10, 179 }, { 7, 10, 1095 }, { 135, 10, 1213 },
+ { 4, 10, 66 }, { 7, 10, 722 }, { 135, 10, 904 }, { 135, 10, 352 },
+ { 9, 11, 245 }, { 138, 11, 137 }, { 4, 0, 289 }, { 7, 0, 629 },
+ { 7, 0, 1698 }, { 7, 0, 1711 }, { 12, 0, 215 }, { 133, 11, 414 },
+ { 6, 0, 1975 }, { 135, 11, 1762 }, { 6, 0, 450 }, { 136, 0, 109 },
+ { 141, 10, 35 }, { 134, 11, 599 }, { 136, 0, 705 }, { 133, 0, 664 },
+ { 134, 11, 1749 }, { 11, 11, 402 }, { 12, 11, 109 }, { 12, 11, 431 },
+ { 13, 11, 179 }, { 13, 11, 206 }, { 14, 11, 175 }, { 14, 11, 217 },
+ { 16, 11, 3 }, { 148, 11, 53 }, { 135, 0, 1238 }, { 134, 11, 1627 },
+ { 132, 11, 488 }, { 13, 0, 318 }, { 10, 10, 592 }, { 10, 10, 753 },
+ { 12, 10, 317 }, { 12, 10, 355 }, { 12, 10, 465 }, { 12, 10, 469 },
+ { 12, 10, 560 }, { 140, 10, 578 }, { 133, 10, 564 }, { 132, 11, 83 },
+ { 140, 11, 676 }, { 6, 0, 1872 }, { 6, 0, 1906 }, { 6, 0, 1907 },
+ { 9, 0, 934 }, { 9, 0, 956 }, { 9, 0, 960 }, { 9, 0, 996 },
+ { 12, 0, 794 }, { 12, 0, 876 }, { 12, 0, 880 }, { 12, 0, 918 },
+ { 15, 0, 230 }, { 18, 0, 234 }, { 18, 0, 238 }, { 21, 0, 38 },
+ { 149, 0, 62 }, { 134, 10, 556 }, { 134, 11, 278 }, { 137, 0, 103 },
+ { 7, 10, 544 }, { 8, 10, 719 }, { 138, 10, 61 }, { 4, 10, 5 },
+ { 5, 10, 498 }, { 8, 10, 637 }, { 137, 10, 521 }, { 7, 0, 777 },
+ { 12, 0, 229 }, { 12, 0, 239 }, { 15, 0, 12 }, { 12, 11, 229 },
+ { 12, 11, 239 }, { 143, 11, 12 }, { 6, 0, 26 }, { 7, 11, 388 },
+ { 7, 11, 644 }, { 139, 11, 781 }, { 7, 11, 229 }, { 8, 11, 59 },
+ { 9, 11, 190 }, { 9, 11, 257 }, { 10, 11, 378 }, { 140, 11, 191 },
+ { 133, 10, 927 }, { 135, 10, 1441 }, { 4, 10, 893 }, { 5, 10, 780 },
+ { 133, 10, 893 }, { 4, 0, 414 }, { 5, 0, 467 }, { 9, 0, 654 },
+ { 10, 0, 451 }, { 12, 0, 59 }, { 141, 0, 375 }, { 142, 0, 173 },
+ { 135, 0, 17 }, { 7, 0, 1350 }, { 133, 10, 238 }, { 135, 0, 955 },
+ { 4, 0, 960 }, { 10, 0, 887 }, { 12, 0, 753 }, { 18, 0, 161 },
+ { 18, 0, 162 }, { 152, 0, 19 }, { 136, 11, 344 }, { 6, 10, 1729 },
+ { 137, 11, 288 }, { 132, 11, 660 }, { 4, 0, 217 }, { 5, 0, 710 },
+ { 7, 0, 760 }, { 7, 0, 1926 }, { 9, 0, 428 }, { 9, 0, 708 },
+ { 10, 0, 254 }, { 10, 0, 296 }, { 10, 0, 720 }, { 11, 0, 109 },
+ { 11, 0, 255 }, { 12, 0, 165 }, { 12, 0, 315 }, { 13, 0, 107 },
+ { 13, 0, 203 }, { 14, 0, 54 }, { 14, 0, 99 }, { 14, 0, 114 },
+ { 14, 0, 388 }, { 16, 0, 85 }, { 17, 0, 9 }, { 17, 0, 33 },
+ { 20, 0, 25 }, { 20, 0, 28 }, { 20, 0, 29 }, { 21, 0, 9 },
+ { 21, 0, 10 }, { 21, 0, 34 }, { 22, 0, 17 }, { 4, 10, 60 },
+ { 7, 10, 1800 }, { 8, 10, 314 }, { 9, 10, 700 }, { 139, 10, 487 },
+ { 7, 11, 1035 }, { 138, 11, 737 }, { 7, 11, 690 }, { 9, 11, 217 },
+ { 9, 11, 587 }, { 140, 11, 521 }, { 6, 0, 919 }, { 7, 11, 706 },
+ { 7, 11, 1058 }, { 138, 11, 538 }, { 7, 10, 1853 }, { 138, 10, 437 },
+ { 136, 10, 419 }, { 6, 0, 280 }, { 10, 0, 502 }, { 11, 0, 344 },
+ { 140, 0, 38 }, { 5, 0, 45 }, { 7, 0, 1161 }, { 11, 0, 448 },
+ { 11, 0, 880 }, { 13, 0, 139 }, { 13, 0, 407 }, { 15, 0, 16 },
+ { 17, 0, 95 }, { 18, 0, 66 }, { 18, 0, 88 }, { 18, 0, 123 },
+ { 149, 0, 7 }, { 11, 11, 92 }, { 11, 11, 196 }, { 11, 11, 409 },
+ { 11, 11, 450 }, { 11, 11, 666 }, { 11, 11, 777 }, { 12, 11, 262 },
+ { 13, 11, 385 }, { 13, 11, 393 }, { 15, 11, 115 }, { 16, 11, 45 },
+ { 145, 11, 82 }, { 136, 0, 777 }, { 134, 11, 1744 }, { 4, 0, 410 },
+ { 7, 0, 521 }, { 133, 10, 828 }, { 134, 0, 673 }, { 7, 0, 1110 },
+ { 7, 0, 1778 }, { 7, 10, 176 }, { 135, 10, 178 }, { 5, 10, 806 },
+ { 7, 11, 268 }, { 7, 10, 1976 }, { 136, 11, 569 }, { 4, 11, 733 },
+ { 9, 11, 194 }, { 10, 11, 92 }, { 11, 11, 198 }, { 12, 11, 84 },
+ { 12, 11, 87 }, { 13, 11, 128 }, { 144, 11, 74 }, { 5, 0, 341 },
+ { 7, 0, 1129 }, { 11, 0, 414 }, { 4, 10, 51 }, { 6, 10, 4 },
+ { 7, 10, 591 }, { 7, 10, 849 }, { 7, 10, 951 }, { 7, 10, 1613 },
+ { 7, 10, 1760 }, { 7, 10, 1988 }, { 9, 10, 434 }, { 10, 10, 754 },
+ { 11, 10, 25 }, { 139, 10, 37 }, { 133, 10, 902 }, { 135, 10, 928 },
+ { 135, 0, 787 }, { 132, 0, 436 }, { 134, 10, 270 }, { 7, 0, 1587 },
+ { 135, 0, 1707 }, { 6, 0, 377 }, { 7, 0, 1025 }, { 9, 0, 613 },
+ { 145, 0, 104 }, { 7, 11, 982 }, { 7, 11, 1361 }, { 10, 11, 32 },
+ { 143, 11, 56 }, { 139, 0, 96 }, { 132, 0, 451 }, { 132, 10, 416 },
+ { 142, 10, 372 }, { 5, 10, 152 }, { 5, 10, 197 }, { 7, 11, 306 },
+ { 7, 10, 340 }, { 7, 10, 867 }, { 10, 10, 548 }, { 10, 10, 581 },
+ { 11, 10, 6 }, { 12, 10, 3 }, { 12, 10, 19 }, { 14, 10, 110 },
+ { 142, 10, 289 }, { 134, 0, 680 }, { 134, 11, 609 }, { 7, 0, 483 },
+ { 7, 10, 190 }, { 8, 10, 28 }, { 8, 10, 141 }, { 8, 10, 444 },
+ { 8, 10, 811 }, { 9, 10, 468 }, { 11, 10, 334 }, { 12, 10, 24 },
+ { 12, 10, 386 }, { 140, 10, 576 }, { 10, 0, 916 }, { 133, 10, 757 },
+ { 5, 10, 721 }, { 135, 10, 1553 }, { 133, 11, 178 }, { 134, 0, 937 },
+ { 132, 10, 898 }, { 133, 0, 739 }, { 147, 0, 82 }, { 135, 0, 663 },
+ { 146, 0, 128 }, { 5, 10, 277 }, { 141, 10, 247 }, { 134, 0, 1087 },
+ { 132, 10, 435 }, { 6, 11, 381 }, { 7, 11, 645 }, { 7, 11, 694 },
+ { 136, 11, 546 }, { 7, 0, 503 }, { 135, 0, 1885 }, { 6, 0, 1965 },
+ { 8, 0, 925 }, { 138, 0, 955 }, { 4, 0, 113 }, { 5, 0, 163 },
+ { 5, 0, 735 }, { 7, 0, 1009 }, { 9, 0, 9 }, { 9, 0, 771 },
+ { 12, 0, 90 }, { 13, 0, 138 }, { 13, 0, 410 }, { 143, 0, 128 },
+ { 4, 0, 324 }, { 138, 0, 104 }, { 7, 0, 460 }, { 5, 10, 265 },
+ { 134, 10, 212 }, { 133, 11, 105 }, { 7, 11, 261 }, { 7, 11, 1107 },
+ { 7, 11, 1115 }, { 7, 11, 1354 }, { 7, 11, 1588 }, { 7, 11, 1705 },
+ { 7, 11, 1902 }, { 9, 11, 465 }, { 10, 11, 248 }, { 10, 11, 349 },
+ { 10, 11, 647 }, { 11, 11, 527 }, { 11, 11, 660 }, { 11, 11, 669 },
+ { 12, 11, 529 }, { 141, 11, 305 }, { 5, 11, 438 }, { 9, 11, 694 },
+ { 12, 11, 627 }, { 141, 11, 210 }, { 152, 11, 11 }, { 4, 0, 935 },
+ { 133, 0, 823 }, { 132, 10, 702 }, { 5, 0, 269 }, { 7, 0, 434 },
+ { 7, 0, 891 }, { 8, 0, 339 }, { 9, 0, 702 }, { 11, 0, 594 },
+ { 11, 0, 718 }, { 17, 0, 100 }, { 5, 10, 808 }, { 135, 10, 2045 },
+ { 7, 0, 1014 }, { 9, 0, 485 }, { 141, 0, 264 }, { 134, 0, 1713 },
+ { 7, 0, 1810 }, { 11, 0, 866 }, { 12, 0, 103 }, { 13, 0, 495 },
+ { 140, 11, 233 }, { 4, 0, 423 }, { 10, 0, 949 }, { 138, 0, 1013 },
+ { 135, 0, 900 }, { 8, 11, 25 }, { 138, 11, 826 }, { 5, 10, 166 },
+ { 8, 10, 739 }, { 140, 10, 511 }, { 134, 0, 2018 }, { 7, 11, 1270 },
+ { 139, 11, 612 }, { 4, 10, 119 }, { 5, 10, 170 }, { 5, 10, 447 },
+ { 7, 10, 1708 }, { 7, 10, 1889 }, { 9, 10, 357 }, { 9, 10, 719 },
+ { 12, 10, 486 }, { 140, 10, 596 }, { 12, 0, 574 }, { 140, 11, 574 },
+ { 132, 11, 308 }, { 6, 0, 964 }, { 6, 0, 1206 }, { 134, 0, 1302 },
+ { 4, 10, 450 }, { 135, 10, 1158 }, { 135, 11, 150 }, { 136, 11, 649 },
+ { 14, 0, 213 }, { 148, 0, 38 }, { 9, 11, 45 }, { 9, 11, 311 },
+ { 141, 11, 42 }, { 134, 11, 521 }, { 7, 10, 1375 }, { 7, 10, 1466 },
+ { 138, 10, 331 }, { 132, 10, 754 }, { 5, 11, 339 }, { 7, 11, 1442 },
+ { 14, 11, 3 }, { 15, 11, 41 }, { 147, 11, 66 }, { 136, 11, 378 },
+ { 134, 0, 1022 }, { 5, 10, 850 }, { 136, 10, 799 }, { 142, 0, 143 },
+ { 135, 0, 2029 }, { 134, 11, 1628 }, { 8, 0, 523 }, { 150, 0, 34 },
+ { 5, 0, 625 }, { 135, 0, 1617 }, { 7, 0, 275 }, { 7, 10, 238 },
+ { 7, 10, 2033 }, { 8, 10, 120 }, { 8, 10, 188 }, { 8, 10, 659 },
+ { 9, 10, 598 }, { 10, 10, 466 }, { 12, 10, 342 }, { 12, 10, 588 },
+ { 13, 10, 503 }, { 14, 10, 246 }, { 143, 10, 92 }, { 7, 0, 37 },
+ { 8, 0, 425 }, { 8, 0, 693 }, { 9, 0, 720 }, { 10, 0, 380 },
+ { 10, 0, 638 }, { 11, 0, 273 }, { 11, 0, 473 }, { 12, 0, 61 },
+ { 143, 0, 43 }, { 135, 11, 829 }, { 135, 0, 1943 }, { 132, 0, 765 },
+ { 5, 11, 486 }, { 135, 11, 1349 }, { 7, 11, 1635 }, { 8, 11, 17 },
+ { 10, 11, 217 }, { 138, 11, 295 }, { 4, 10, 201 }, { 7, 10, 1744 },
+ { 8, 10, 602 }, { 11, 10, 247 }, { 11, 10, 826 }, { 145, 10, 65 },
+ { 138, 11, 558 }, { 11, 0, 551 }, { 142, 0, 159 }, { 8, 10, 164 },
+ { 146, 10, 62 }, { 139, 11, 176 }, { 132, 0, 168 }, { 136, 0, 1010 },
+ { 134, 0, 1994 }, { 135, 0, 91 }, { 138, 0, 532 }, { 135, 10, 1243 },
+ { 135, 0, 1884 }, { 132, 10, 907 }, { 5, 10, 100 }, { 10, 10, 329 },
+ { 12, 10, 416 }, { 149, 10, 29 }, { 134, 11, 447 }, { 132, 10, 176 },
+ { 5, 10, 636 }, { 5, 10, 998 }, { 7, 10, 9 }, { 7, 10, 1508 },
+ { 8, 10, 26 }, { 9, 10, 317 }, { 9, 10, 358 }, { 10, 10, 210 },
+ { 10, 10, 292 }, { 10, 10, 533 }, { 11, 10, 555 }, { 12, 10, 526 },
+ { 12, 10, 607 }, { 13, 10, 263 }, { 13, 10, 459 }, { 142, 10, 271 },
+ { 4, 11, 609 }, { 135, 11, 756 }, { 6, 0, 15 }, { 7, 0, 70 },
+ { 10, 0, 240 }, { 147, 0, 93 }, { 4, 11, 930 }, { 133, 11, 947 },
+ { 134, 0, 1227 }, { 134, 0, 1534 }, { 133, 11, 939 }, { 133, 11, 962 },
+ { 5, 11, 651 }, { 8, 11, 170 }, { 9, 11, 61 }, { 9, 11, 63 },
+ { 10, 11, 23 }, { 10, 11, 37 }, { 10, 11, 834 }, { 11, 11, 4 },
+ { 11, 11, 187 }, { 11, 11, 281 }, { 11, 11, 503 }, { 11, 11, 677 },
+ { 12, 11, 96 }, { 12, 11, 130 }, { 12, 11, 244 }, { 14, 11, 5 },
+ { 14, 11, 40 }, { 14, 11, 162 }, { 14, 11, 202 }, { 146, 11, 133 },
+ { 4, 11, 406 }, { 5, 11, 579 }, { 12, 11, 492 }, { 150, 11, 15 },
+ { 139, 0, 392 }, { 6, 10, 610 }, { 10, 10, 127 }, { 141, 10, 27 },
+ { 7, 0, 655 }, { 7, 0, 1844 }, { 136, 10, 119 }, { 4, 0, 145 },
+ { 6, 0, 176 }, { 7, 0, 395 }, { 137, 0, 562 }, { 132, 0, 501 },
+ { 140, 11, 145 }, { 136, 0, 1019 }, { 134, 0, 509 }, { 139, 0, 267 },
+ { 6, 11, 17 }, { 7, 11, 16 }, { 7, 11, 1001 }, { 7, 11, 1982 },
+ { 9, 11, 886 }, { 10, 11, 489 }, { 10, 11, 800 }, { 11, 11, 782 },
+ { 12, 11, 320 }, { 13, 11, 467 }, { 14, 11, 145 }, { 14, 11, 387 },
+ { 143, 11, 119 }, { 145, 11, 17 }, { 6, 0, 1099 }, { 133, 11, 458 },
+ { 7, 11, 1983 }, { 8, 11, 0 }, { 8, 11, 171 }, { 9, 11, 120 },
+ { 9, 11, 732 }, { 10, 11, 473 }, { 11, 11, 656 }, { 11, 11, 998 },
+ { 18, 11, 0 }, { 18, 11, 2 }, { 147, 11, 21 }, { 12, 11, 427 },
+ { 146, 11, 38 }, { 10, 0, 948 }, { 138, 0, 968 }, { 7, 10, 126 },
+ { 136, 10, 84 }, { 136, 10, 790 }, { 4, 0, 114 }, { 9, 0, 492 },
+ { 13, 0, 462 }, { 142, 0, 215 }, { 6, 10, 64 }, { 12, 10, 377 },
+ { 141, 10, 309 }, { 4, 0, 77 }, { 5, 0, 361 }, { 6, 0, 139 },
+ { 6, 0, 401 }, { 6, 0, 404 }, { 7, 0, 413 }, { 7, 0, 715 },
+ { 7, 0, 1716 }, { 11, 0, 279 }, { 12, 0, 179 }, { 12, 0, 258 },
+ { 13, 0, 244 }, { 142, 0, 358 }, { 134, 0, 1717 }, { 7, 0, 772 },
+ { 7, 0, 1061 }, { 7, 0, 1647 }, { 8, 0, 82 }, { 11, 0, 250 },
+ { 11, 0, 607 }, { 12, 0, 311 }, { 12, 0, 420 }, { 13, 0, 184 },
+ { 13, 0, 367 }, { 7, 10, 1104 }, { 11, 10, 269 }, { 11, 10, 539 },
+ { 11, 10, 627 }, { 11, 10, 706 }, { 11, 10, 975 }, { 12, 10, 248 },
+ { 12, 10, 434 }, { 12, 10, 600 }, { 12, 10, 622 }, { 13, 10, 297 },
+ { 13, 10, 485 }, { 14, 10, 69 }, { 14, 10, 409 }, { 143, 10, 108 },
+ { 135, 0, 724 }, { 4, 11, 512 }, { 4, 11, 519 }, { 133, 11, 342 },
+ { 134, 0, 1133 }, { 145, 11, 29 }, { 11, 10, 977 }, { 141, 10, 507 },
+ { 6, 0, 841 }, { 6, 0, 1042 }, { 6, 0, 1194 }, { 10, 0, 993 },
+ { 140, 0, 1021 }, { 6, 11, 31 }, { 7, 11, 491 }, { 7, 11, 530 },
+ { 8, 11, 592 }, { 9, 10, 34 }, { 11, 11, 53 }, { 11, 10, 484 },
+ { 11, 11, 779 }, { 12, 11, 167 }, { 12, 11, 411 }, { 14, 11, 14 },
+ { 14, 11, 136 }, { 15, 11, 72 }, { 16, 11, 17 }, { 144, 11, 72 },
+ { 4, 0, 1021 }, { 6, 0, 2037 }, { 133, 11, 907 }, { 7, 0, 373 },
+ { 8, 0, 335 }, { 8, 0, 596 }, { 9, 0, 488 }, { 6, 10, 1700 },
+ { 7, 10, 293 }, { 7, 10, 382 }, { 7, 10, 1026 }, { 7, 10, 1087 },
+ { 7, 10, 2027 }, { 8, 10, 252 }, { 8, 10, 727 }, { 8, 10, 729 },
+ { 9, 10, 30 }, { 9, 10, 199 }, { 9, 10, 231 }, { 9, 10, 251 },
+ { 9, 10, 334 }, { 9, 10, 361 }, { 9, 10, 712 }, { 10, 10, 55 },
+ { 10, 10, 60 }, { 10, 10, 232 }, { 10, 10, 332 }, { 10, 10, 384 },
+ { 10, 10, 396 }, { 10, 10, 504 }, { 10, 10, 542 }, { 10, 10, 652 },
+ { 11, 10, 20 }, { 11, 10, 48 }, { 11, 10, 207 }, { 11, 10, 291 },
+ { 11, 10, 298 }, { 11, 10, 342 }, { 11, 10, 365 }, { 11, 10, 394 },
+ { 11, 10, 620 }, { 11, 10, 705 }, { 11, 10, 1017 }, { 12, 10, 123 },
+ { 12, 10, 340 }, { 12, 10, 406 }, { 12, 10, 643 }, { 13, 10, 61 },
+ { 13, 10, 269 }, { 13, 10, 311 }, { 13, 10, 319 }, { 13, 10, 486 },
+ { 14, 10, 234 }, { 15, 10, 62 }, { 15, 10, 85 }, { 16, 10, 71 },
+ { 18, 10, 119 }, { 148, 10, 105 }, { 150, 0, 37 }, { 4, 11, 208 },
+ { 5, 11, 106 }, { 6, 11, 531 }, { 8, 11, 408 }, { 9, 11, 188 },
+ { 138, 11, 572 }, { 132, 0, 564 }, { 6, 0, 513 }, { 135, 0, 1052 },
+ { 132, 0, 825 }, { 9, 0, 899 }, { 140, 11, 441 }, { 134, 0, 778 },
+ { 133, 11, 379 }, { 7, 0, 1417 }, { 12, 0, 382 }, { 17, 0, 48 },
+ { 152, 0, 12 }, { 132, 11, 241 }, { 7, 0, 1116 }, { 6, 10, 379 },
+ { 7, 10, 270 }, { 8, 10, 176 }, { 8, 10, 183 }, { 9, 10, 432 },
+ { 9, 10, 661 }, { 12, 10, 247 }, { 12, 10, 617 }, { 146, 10, 125 },
+ { 5, 10, 792 }, { 133, 10, 900 }, { 6, 0, 545 }, { 7, 0, 565 },
+ { 7, 0, 1669 }, { 10, 0, 114 }, { 11, 0, 642 }, { 140, 0, 618 },
+ { 133, 0, 5 }, { 138, 11, 7 }, { 132, 11, 259 }, { 135, 0, 192 },
+ { 134, 0, 701 }, { 136, 0, 763 }, { 135, 10, 1979 }, { 4, 10, 901 },
+ { 133, 10, 776 }, { 10, 0, 755 }, { 147, 0, 29 }, { 133, 0, 759 },
+ { 4, 11, 173 }, { 5, 11, 312 }, { 5, 11, 512 }, { 135, 11, 1285 },
+ { 7, 11, 1603 }, { 7, 11, 1691 }, { 9, 11, 464 }, { 11, 11, 195 },
+ { 12, 11, 279 }, { 12, 11, 448 }, { 14, 11, 11 }, { 147, 11, 102 },
+ { 7, 0, 370 }, { 7, 0, 1007 }, { 7, 0, 1177 }, { 135, 0, 1565 },
+ { 135, 0, 1237 }, { 4, 0, 87 }, { 5, 0, 250 }, { 141, 0, 298 },
+ { 4, 11, 452 }, { 5, 11, 583 }, { 5, 11, 817 }, { 6, 11, 433 },
+ { 7, 11, 593 }, { 7, 11, 720 }, { 7, 11, 1378 }, { 8, 11, 161 },
+ { 9, 11, 284 }, { 10, 11, 313 }, { 139, 11, 886 }, { 4, 11, 547 },
+ { 135, 11, 1409 }, { 136, 11, 722 }, { 4, 10, 37 }, { 5, 10, 334 },
+ { 135, 10, 1253 }, { 132, 10, 508 }, { 12, 0, 107 }, { 146, 0, 31 },
+ { 8, 11, 420 }, { 139, 11, 193 }, { 135, 0, 814 }, { 135, 11, 409 },
+ { 140, 0, 991 }, { 4, 0, 57 }, { 7, 0, 1195 }, { 7, 0, 1438 },
+ { 7, 0, 1548 }, { 7, 0, 1835 }, { 7, 0, 1904 }, { 9, 0, 757 },
+ { 10, 0, 604 }, { 139, 0, 519 }, { 132, 0, 540 }, { 138, 11, 308 },
+ { 132, 10, 533 }, { 136, 0, 608 }, { 144, 11, 65 }, { 4, 0, 1014 },
+ { 134, 0, 2029 }, { 4, 0, 209 }, { 7, 0, 902 }, { 5, 11, 1002 },
+ { 136, 11, 745 }, { 134, 0, 2030 }, { 6, 0, 303 }, { 7, 0, 335 },
+ { 7, 0, 1437 }, { 7, 0, 1668 }, { 8, 0, 553 }, { 8, 0, 652 },
+ { 8, 0, 656 }, { 9, 0, 558 }, { 11, 0, 743 }, { 149, 0, 18 },
+ { 5, 11, 575 }, { 6, 11, 354 }, { 135, 11, 701 }, { 4, 11, 239 },
+ { 6, 11, 477 }, { 7, 11, 1607 }, { 11, 11, 68 }, { 139, 11, 617 },
+ { 132, 0, 559 }, { 8, 0, 527 }, { 18, 0, 60 }, { 147, 0, 24 },
+ { 133, 10, 920 }, { 138, 0, 511 }, { 133, 0, 1017 }, { 133, 0, 675 },
+ { 138, 10, 391 }, { 11, 0, 156 }, { 135, 10, 1952 }, { 138, 11, 369 },
+ { 132, 11, 367 }, { 133, 0, 709 }, { 6, 0, 698 }, { 134, 0, 887 },
+ { 142, 10, 126 }, { 134, 0, 1745 }, { 132, 10, 483 }, { 13, 11, 299 },
+ { 142, 11, 75 }, { 133, 0, 714 }, { 7, 0, 8 }, { 136, 0, 206 },
+ { 138, 10, 480 }, { 4, 11, 694 }, { 9, 10, 495 }, { 146, 10, 104 },
+ { 7, 11, 1248 }, { 11, 11, 621 }, { 139, 11, 702 }, { 140, 11, 687 },
+ { 132, 0, 776 }, { 139, 10, 1009 }, { 135, 0, 1272 }, { 134, 0, 1059 },
+ { 8, 10, 653 }, { 13, 10, 93 }, { 147, 10, 14 }, { 135, 11, 213 },
+ { 136, 0, 406 }, { 133, 10, 172 }, { 132, 0, 947 }, { 8, 0, 175 },
+ { 10, 0, 168 }, { 138, 0, 573 }, { 132, 0, 870 }, { 6, 0, 1567 },
+ { 151, 11, 28 }, { 134, 11, 472 }, { 5, 10, 260 }, { 136, 11, 132 },
+ { 4, 11, 751 }, { 11, 11, 390 }, { 140, 11, 32 }, { 4, 11, 409 },
+ { 133, 11, 78 }, { 12, 0, 554 }, { 6, 11, 473 }, { 145, 11, 105 },
+ { 133, 0, 784 }, { 8, 0, 908 }, { 136, 11, 306 }, { 139, 0, 882 },
+ { 6, 0, 358 }, { 7, 0, 1393 }, { 8, 0, 396 }, { 10, 0, 263 },
+ { 14, 0, 154 }, { 16, 0, 48 }, { 17, 0, 8 }, { 7, 11, 1759 },
+ { 8, 11, 396 }, { 10, 11, 263 }, { 14, 11, 154 }, { 16, 11, 48 },
+ { 145, 11, 8 }, { 13, 11, 163 }, { 13, 11, 180 }, { 18, 11, 78 },
+ { 148, 11, 35 }, { 14, 0, 32 }, { 18, 0, 85 }, { 20, 0, 2 },
+ { 152, 0, 16 }, { 7, 0, 228 }, { 10, 0, 770 }, { 8, 10, 167 },
+ { 8, 10, 375 }, { 9, 10, 82 }, { 9, 10, 561 }, { 138, 10, 620 },
+ { 132, 0, 845 }, { 9, 0, 14 }, { 9, 0, 441 }, { 10, 0, 306 },
+ { 139, 0, 9 }, { 11, 0, 966 }, { 12, 0, 287 }, { 13, 0, 342 },
+ { 13, 0, 402 }, { 15, 0, 110 }, { 15, 0, 163 }, { 8, 10, 194 },
+ { 136, 10, 756 }, { 134, 0, 1578 }, { 4, 0, 967 }, { 6, 0, 1820 },
+ { 6, 0, 1847 }, { 140, 0, 716 }, { 136, 0, 594 }, { 7, 0, 1428 },
+ { 7, 0, 1640 }, { 7, 0, 1867 }, { 9, 0, 169 }, { 9, 0, 182 },
+ { 9, 0, 367 }, { 9, 0, 478 }, { 9, 0, 506 }, { 9, 0, 551 },
+ { 9, 0, 557 }, { 9, 0, 648 }, { 9, 0, 697 }, { 9, 0, 705 },
+ { 9, 0, 725 }, { 9, 0, 787 }, { 9, 0, 794 }, { 10, 0, 198 },
+ { 10, 0, 214 }, { 10, 0, 267 }, { 10, 0, 275 }, { 10, 0, 456 },
+ { 10, 0, 551 }, { 10, 0, 561 }, { 10, 0, 613 }, { 10, 0, 627 },
+ { 10, 0, 668 }, { 10, 0, 675 }, { 10, 0, 691 }, { 10, 0, 695 },
+ { 10, 0, 707 }, { 10, 0, 715 }, { 11, 0, 183 }, { 11, 0, 201 },
+ { 11, 0, 244 }, { 11, 0, 262 }, { 11, 0, 352 }, { 11, 0, 439 },
+ { 11, 0, 493 }, { 11, 0, 572 }, { 11, 0, 591 }, { 11, 0, 608 },
+ { 11, 0, 611 }, { 11, 0, 646 }, { 11, 0, 674 }, { 11, 0, 711 },
+ { 11, 0, 751 }, { 11, 0, 761 }, { 11, 0, 776 }, { 11, 0, 785 },
+ { 11, 0, 850 }, { 11, 0, 853 }, { 11, 0, 862 }, { 11, 0, 865 },
+ { 11, 0, 868 }, { 11, 0, 875 }, { 11, 0, 898 }, { 11, 0, 902 },
+ { 11, 0, 903 }, { 11, 0, 910 }, { 11, 0, 932 }, { 11, 0, 942 },
+ { 11, 0, 957 }, { 11, 0, 967 }, { 11, 0, 972 }, { 12, 0, 148 },
+ { 12, 0, 195 }, { 12, 0, 220 }, { 12, 0, 237 }, { 12, 0, 318 },
+ { 12, 0, 339 }, { 12, 0, 393 }, { 12, 0, 445 }, { 12, 0, 450 },
+ { 12, 0, 474 }, { 12, 0, 505 }, { 12, 0, 509 }, { 12, 0, 533 },
+ { 12, 0, 591 }, { 12, 0, 594 }, { 12, 0, 597 }, { 12, 0, 621 },
+ { 12, 0, 633 }, { 12, 0, 642 }, { 13, 0, 59 }, { 13, 0, 60 },
+ { 13, 0, 145 }, { 13, 0, 239 }, { 13, 0, 250 }, { 13, 0, 329 },
+ { 13, 0, 344 }, { 13, 0, 365 }, { 13, 0, 372 }, { 13, 0, 387 },
+ { 13, 0, 403 }, { 13, 0, 414 }, { 13, 0, 456 }, { 13, 0, 470 },
+ { 13, 0, 478 }, { 13, 0, 483 }, { 13, 0, 489 }, { 14, 0, 55 },
+ { 14, 0, 57 }, { 14, 0, 81 }, { 14, 0, 90 }, { 14, 0, 148 },
+ { 14, 0, 239 }, { 14, 0, 266 }, { 14, 0, 321 }, { 14, 0, 326 },
+ { 14, 0, 327 }, { 14, 0, 330 }, { 14, 0, 347 }, { 14, 0, 355 },
+ { 14, 0, 401 }, { 14, 0, 404 }, { 14, 0, 411 }, { 14, 0, 414 },
+ { 14, 0, 416 }, { 14, 0, 420 }, { 15, 0, 61 }, { 15, 0, 74 },
+ { 15, 0, 87 }, { 15, 0, 88 }, { 15, 0, 94 }, { 15, 0, 96 },
+ { 15, 0, 116 }, { 15, 0, 149 }, { 15, 0, 154 }, { 16, 0, 50 },
+ { 16, 0, 63 }, { 16, 0, 73 }, { 17, 0, 2 }, { 17, 0, 66 },
+ { 17, 0, 92 }, { 17, 0, 103 }, { 17, 0, 112 }, { 17, 0, 120 },
+ { 18, 0, 50 }, { 18, 0, 54 }, { 18, 0, 82 }, { 18, 0, 86 },
+ { 18, 0, 90 }, { 18, 0, 111 }, { 18, 0, 115 }, { 18, 0, 156 },
+ { 19, 0, 40 }, { 19, 0, 79 }, { 20, 0, 78 }, { 21, 0, 22 },
+ { 135, 11, 883 }, { 5, 0, 161 }, { 135, 0, 839 }, { 4, 0, 782 },
+ { 13, 11, 293 }, { 142, 11, 56 }, { 133, 11, 617 }, { 139, 11, 50 },
+ { 135, 10, 22 }, { 145, 0, 64 }, { 5, 10, 639 }, { 7, 10, 1249 },
+ { 139, 10, 896 }, { 138, 0, 998 }, { 135, 11, 2042 }, { 4, 11, 546 },
+ { 142, 11, 233 }, { 6, 0, 1043 }, { 134, 0, 1574 }, { 134, 0, 1496 },
+ { 4, 10, 102 }, { 7, 10, 815 }, { 7, 10, 1699 }, { 139, 10, 964 },
+ { 12, 0, 781 }, { 142, 0, 461 }, { 4, 11, 313 }, { 133, 11, 577 },
+ { 6, 0, 639 }, { 6, 0, 1114 }, { 137, 0, 817 }, { 8, 11, 184 },
+ { 141, 11, 433 }, { 7, 0, 1814 }, { 135, 11, 935 }, { 10, 0, 997 },
+ { 140, 0, 958 }, { 4, 0, 812 }, { 137, 11, 625 }, { 132, 10, 899 },
+ { 136, 10, 795 }, { 5, 11, 886 }, { 6, 11, 46 }, { 6, 11, 1790 },
+ { 7, 11, 14 }, { 7, 11, 732 }, { 7, 11, 1654 }, { 8, 11, 95 },
+ { 8, 11, 327 }, { 8, 11, 616 }, { 10, 11, 598 }, { 10, 11, 769 },
+ { 11, 11, 134 }, { 11, 11, 747 }, { 12, 11, 378 }, { 142, 11, 97 },
+ { 136, 0, 139 }, { 6, 10, 52 }, { 9, 10, 104 }, { 9, 10, 559 },
+ { 12, 10, 308 }, { 147, 10, 87 }, { 133, 11, 1021 }, { 132, 10, 604 },
+ { 132, 10, 301 }, { 136, 10, 779 }, { 7, 0, 643 }, { 136, 0, 236 },
+ { 132, 11, 153 }, { 134, 0, 1172 }, { 147, 10, 32 }, { 133, 11, 798 },
+ { 6, 0, 1338 }, { 132, 11, 587 }, { 6, 11, 598 }, { 7, 11, 42 },
+ { 8, 11, 695 }, { 10, 11, 212 }, { 11, 11, 158 }, { 14, 11, 196 },
+ { 145, 11, 85 }, { 135, 10, 508 }, { 5, 11, 957 }, { 5, 11, 1008 },
+ { 135, 11, 249 }, { 4, 11, 129 }, { 135, 11, 465 }, { 5, 0, 54 },
+ { 7, 11, 470 }, { 7, 11, 1057 }, { 7, 11, 1201 }, { 9, 11, 755 },
+ { 11, 11, 906 }, { 140, 11, 527 }, { 7, 11, 908 }, { 146, 11, 7 },
+ { 5, 11, 148 }, { 136, 11, 450 }, { 144, 11, 1 }, { 4, 0, 256 },
+ { 135, 0, 1488 }, { 9, 0, 351 }, { 6, 10, 310 }, { 7, 10, 1849 },
+ { 8, 10, 72 }, { 8, 10, 272 }, { 8, 10, 431 }, { 9, 10, 12 },
+ { 10, 10, 563 }, { 10, 10, 630 }, { 10, 10, 796 }, { 10, 10, 810 },
+ { 11, 10, 367 }, { 11, 10, 599 }, { 11, 10, 686 }, { 140, 10, 672 },
+ { 6, 0, 1885 }, { 6, 0, 1898 }, { 6, 0, 1899 }, { 140, 0, 955 },
+ { 4, 0, 714 }, { 133, 0, 469 }, { 6, 0, 1270 }, { 134, 0, 1456 },
+ { 132, 0, 744 }, { 6, 0, 313 }, { 7, 10, 537 }, { 8, 10, 64 },
+ { 9, 10, 127 }, { 10, 10, 496 }, { 12, 10, 510 }, { 141, 10, 384 },
+ { 4, 11, 217 }, { 4, 10, 244 }, { 5, 11, 710 }, { 7, 10, 233 },
+ { 7, 11, 1926 }, { 9, 11, 428 }, { 9, 11, 708 }, { 10, 11, 254 },
+ { 10, 11, 296 }, { 10, 11, 720 }, { 11, 11, 109 }, { 11, 11, 255 },
+ { 12, 11, 165 }, { 12, 11, 315 }, { 13, 11, 107 }, { 13, 11, 203 },
+ { 14, 11, 54 }, { 14, 11, 99 }, { 14, 11, 114 }, { 14, 11, 388 },
+ { 16, 11, 85 }, { 17, 11, 9 }, { 17, 11, 33 }, { 20, 11, 25 },
+ { 20, 11, 28 }, { 20, 11, 29 }, { 21, 11, 9 }, { 21, 11, 10 },
+ { 21, 11, 34 }, { 150, 11, 17 }, { 138, 0, 402 }, { 7, 0, 969 },
+ { 146, 0, 55 }, { 8, 0, 50 }, { 137, 0, 624 }, { 134, 0, 1355 },
+ { 132, 0, 572 }, { 134, 10, 1650 }, { 10, 10, 702 }, { 139, 10, 245 },
+ { 10, 0, 847 }, { 142, 0, 445 }, { 6, 0, 43 }, { 7, 0, 38 },
+ { 8, 0, 248 }, { 138, 0, 513 }, { 133, 0, 369 }, { 137, 10, 338 },
+ { 133, 0, 766 }, { 133, 0, 363 }, { 133, 10, 896 }, { 8, 11, 392 },
+ { 11, 11, 54 }, { 13, 11, 173 }, { 13, 11, 294 }, { 148, 11, 7 },
+ { 134, 0, 678 }, { 7, 11, 1230 }, { 136, 11, 531 }, { 6, 0, 258 },
+ { 140, 0, 409 }, { 5, 0, 249 }, { 148, 0, 82 }, { 7, 10, 1117 },
+ { 136, 10, 539 }, { 5, 0, 393 }, { 6, 0, 378 }, { 7, 0, 1981 },
+ { 9, 0, 32 }, { 9, 0, 591 }, { 10, 0, 685 }, { 10, 0, 741 },
+ { 142, 0, 382 }, { 133, 0, 788 }, { 134, 0, 1281 }, { 134, 0, 1295 },
+ { 7, 0, 1968 }, { 141, 0, 509 }, { 4, 0, 61 }, { 5, 0, 58 },
+ { 5, 0, 171 }, { 5, 0, 683 }, { 6, 0, 291 }, { 6, 0, 566 },
+ { 7, 0, 1650 }, { 11, 0, 523 }, { 12, 0, 273 }, { 12, 0, 303 },
+ { 15, 0, 39 }, { 143, 0, 111 }, { 6, 0, 706 }, { 134, 0, 1283 },
+ { 134, 0, 589 }, { 135, 11, 1433 }, { 133, 11, 435 }, { 7, 0, 1059 },
+ { 13, 0, 54 }, { 5, 10, 4 }, { 5, 10, 810 }, { 6, 10, 13 },
+ { 6, 10, 538 }, { 6, 10, 1690 }, { 6, 10, 1726 }, { 7, 10, 1819 },
+ { 8, 10, 148 }, { 8, 10, 696 }, { 8, 10, 791 }, { 12, 10, 125 },
+ { 143, 10, 9 }, { 135, 10, 1268 }, { 5, 11, 85 }, { 6, 11, 419 },
+ { 7, 11, 134 }, { 7, 11, 305 }, { 7, 11, 361 }, { 7, 11, 1337 },
+ { 8, 11, 71 }, { 140, 11, 519 }, { 137, 0, 824 }, { 140, 11, 688 },
+ { 5, 11, 691 }, { 7, 11, 345 }, { 7, 10, 1385 }, { 9, 11, 94 },
+ { 11, 10, 582 }, { 11, 10, 650 }, { 11, 10, 901 }, { 11, 10, 949 },
+ { 12, 11, 169 }, { 12, 10, 232 }, { 12, 10, 236 }, { 13, 10, 413 },
+ { 13, 10, 501 }, { 146, 10, 116 }, { 4, 0, 917 }, { 133, 0, 1005 },
+ { 7, 0, 1598 }, { 5, 11, 183 }, { 6, 11, 582 }, { 9, 11, 344 },
+ { 10, 11, 679 }, { 140, 11, 435 }, { 4, 10, 925 }, { 5, 10, 803 },
+ { 8, 10, 698 }, { 138, 10, 828 }, { 132, 0, 919 }, { 135, 11, 511 },
+ { 139, 10, 992 }, { 4, 0, 255 }, { 5, 0, 302 }, { 6, 0, 132 },
+ { 7, 0, 128 }, { 7, 0, 283 }, { 7, 0, 1299 }, { 10, 0, 52 },
+ { 10, 0, 514 }, { 11, 0, 925 }, { 13, 0, 92 }, { 142, 0, 309 },
+ { 134, 0, 1369 }, { 135, 10, 1847 }, { 134, 0, 328 }, { 7, 11, 1993 },
+ { 136, 11, 684 }, { 133, 10, 383 }, { 137, 0, 173 }, { 134, 11, 583 },
+ { 134, 0, 1411 }, { 19, 0, 65 }, { 5, 11, 704 }, { 8, 11, 357 },
+ { 10, 11, 745 }, { 14, 11, 426 }, { 17, 11, 94 }, { 147, 11, 57 },
+ { 9, 10, 660 }, { 138, 10, 347 }, { 4, 11, 179 }, { 5, 11, 198 },
+ { 133, 11, 697 }, { 7, 11, 347 }, { 7, 11, 971 }, { 8, 11, 181 },
+ { 138, 11, 711 }, { 141, 0, 442 }, { 11, 0, 842 }, { 11, 0, 924 },
+ { 13, 0, 317 }, { 13, 0, 370 }, { 13, 0, 469 }, { 13, 0, 471 },
+ { 14, 0, 397 }, { 18, 0, 69 }, { 18, 0, 145 }, { 7, 10, 572 },
+ { 9, 10, 592 }, { 11, 10, 680 }, { 12, 10, 356 }, { 140, 10, 550 },
+ { 14, 11, 19 }, { 14, 11, 28 }, { 144, 11, 29 }, { 136, 0, 534 },
+ { 4, 11, 243 }, { 5, 11, 203 }, { 7, 11, 19 }, { 7, 11, 71 },
+ { 7, 11, 113 }, { 10, 11, 405 }, { 11, 11, 357 }, { 142, 11, 240 },
+ { 6, 0, 210 }, { 10, 0, 845 }, { 138, 0, 862 }, { 7, 11, 1351 },
+ { 9, 11, 581 }, { 10, 11, 639 }, { 11, 11, 453 }, { 140, 11, 584 },
+ { 7, 11, 1450 }, { 139, 11, 99 }, { 10, 0, 892 }, { 12, 0, 719 },
+ { 144, 0, 105 }, { 4, 0, 284 }, { 6, 0, 223 }, { 134, 11, 492 },
+ { 5, 11, 134 }, { 6, 11, 408 }, { 6, 11, 495 }, { 135, 11, 1593 },
+ { 136, 0, 529 }, { 137, 0, 807 }, { 4, 0, 218 }, { 7, 0, 526 },
+ { 143, 0, 137 }, { 6, 0, 1444 }, { 142, 11, 4 }, { 132, 11, 665 },
+ { 4, 0, 270 }, { 5, 0, 192 }, { 6, 0, 332 }, { 7, 0, 1322 },
+ { 4, 11, 248 }, { 7, 11, 137 }, { 137, 11, 349 }, { 140, 0, 661 },
+ { 7, 0, 1517 }, { 11, 0, 597 }, { 14, 0, 76 }, { 14, 0, 335 },
+ { 20, 0, 33 }, { 7, 10, 748 }, { 139, 10, 700 }, { 5, 11, 371 },
+ { 135, 11, 563 }, { 146, 11, 57 }, { 133, 10, 127 }, { 133, 0, 418 },
+ { 4, 11, 374 }, { 7, 11, 547 }, { 7, 11, 1700 }, { 7, 11, 1833 },
+ { 139, 11, 858 }, { 6, 10, 198 }, { 140, 10, 83 }, { 7, 11, 1812 },
+ { 13, 11, 259 }, { 13, 11, 356 }, { 14, 11, 242 }, { 147, 11, 114 },
+ { 7, 0, 379 }, { 8, 0, 481 }, { 9, 0, 377 }, { 5, 10, 276 },
+ { 6, 10, 55 }, { 135, 10, 1369 }, { 138, 11, 286 }, { 5, 0, 1003 },
+ { 6, 0, 149 }, { 6, 10, 1752 }, { 136, 10, 726 }, { 8, 0, 262 },
+ { 9, 0, 627 }, { 10, 0, 18 }, { 11, 0, 214 }, { 11, 0, 404 },
+ { 11, 0, 457 }, { 11, 0, 780 }, { 11, 0, 913 }, { 13, 0, 401 },
+ { 14, 0, 200 }, { 6, 11, 1647 }, { 7, 11, 1552 }, { 7, 11, 2010 },
+ { 9, 11, 494 }, { 137, 11, 509 }, { 135, 0, 742 }, { 136, 0, 304 },
+ { 132, 0, 142 }, { 133, 10, 764 }, { 6, 10, 309 }, { 7, 10, 331 },
+ { 138, 10, 550 }, { 135, 10, 1062 }, { 6, 11, 123 }, { 7, 11, 214 },
+ { 7, 10, 986 }, { 9, 11, 728 }, { 10, 11, 157 }, { 11, 11, 346 },
+ { 11, 11, 662 }, { 143, 11, 106 }, { 135, 10, 1573 }, { 7, 0, 925 },
+ { 137, 0, 799 }, { 4, 0, 471 }, { 5, 0, 51 }, { 6, 0, 602 },
+ { 8, 0, 484 }, { 138, 0, 195 }, { 136, 0, 688 }, { 132, 0, 697 },
+ { 6, 0, 1169 }, { 6, 0, 1241 }, { 6, 10, 194 }, { 7, 10, 133 },
+ { 10, 10, 493 }, { 10, 10, 570 }, { 139, 10, 664 }, { 140, 0, 751 },
+ { 7, 0, 929 }, { 10, 0, 452 }, { 11, 0, 878 }, { 16, 0, 33 },
+ { 5, 10, 24 }, { 5, 10, 569 }, { 6, 10, 3 }, { 6, 10, 119 },
+ { 6, 10, 143 }, { 6, 10, 440 }, { 7, 10, 599 }, { 7, 10, 1686 },
+ { 7, 10, 1854 }, { 8, 10, 424 }, { 9, 10, 43 }, { 9, 10, 584 },
+ { 9, 10, 760 }, { 10, 10, 328 }, { 11, 10, 159 }, { 11, 10, 253 },
+ { 12, 10, 487 }, { 140, 10, 531 }, { 4, 11, 707 }, { 13, 11, 106 },
+ { 18, 11, 49 }, { 147, 11, 41 }, { 5, 0, 221 }, { 5, 11, 588 },
+ { 134, 11, 393 }, { 134, 0, 1437 }, { 6, 11, 211 }, { 7, 11, 1690 },
+ { 11, 11, 486 }, { 140, 11, 369 }, { 5, 10, 14 }, { 5, 10, 892 },
+ { 6, 10, 283 }, { 7, 10, 234 }, { 136, 10, 537 }, { 4, 0, 988 },
+ { 136, 0, 955 }, { 135, 0, 1251 }, { 4, 10, 126 }, { 8, 10, 635 },
+ { 147, 10, 34 }, { 4, 10, 316 }, { 135, 10, 1561 }, { 137, 10, 861 },
+ { 4, 10, 64 }, { 5, 10, 352 }, { 5, 10, 720 }, { 6, 10, 368 },
+ { 139, 10, 359 }, { 134, 0, 192 }, { 4, 0, 132 }, { 5, 0, 69 },
+ { 135, 0, 1242 }, { 7, 10, 1577 }, { 10, 10, 304 }, { 10, 10, 549 },
+ { 12, 10, 365 }, { 13, 10, 220 }, { 13, 10, 240 }, { 142, 10, 33 },
+ { 4, 0, 111 }, { 7, 0, 865 }, { 134, 11, 219 }, { 5, 11, 582 },
+ { 6, 11, 1646 }, { 7, 11, 99 }, { 7, 11, 1962 }, { 7, 11, 1986 },
+ { 8, 11, 515 }, { 8, 11, 773 }, { 9, 11, 23 }, { 9, 11, 491 },
+ { 12, 11, 620 }, { 14, 11, 52 }, { 145, 11, 50 }, { 132, 0, 767 },
+ { 7, 11, 568 }, { 148, 11, 21 }, { 6, 0, 42 }, { 7, 0, 1416 },
+ { 7, 0, 2005 }, { 8, 0, 131 }, { 8, 0, 466 }, { 9, 0, 672 },
+ { 13, 0, 252 }, { 20, 0, 103 }, { 133, 11, 851 }, { 135, 0, 1050 },
+ { 6, 10, 175 }, { 137, 10, 289 }, { 5, 10, 432 }, { 133, 10, 913 },
+ { 6, 0, 44 }, { 136, 0, 368 }, { 135, 11, 784 }, { 132, 0, 570 },
+ { 133, 0, 120 }, { 139, 10, 595 }, { 140, 0, 29 }, { 6, 0, 227 },
+ { 135, 0, 1589 }, { 4, 11, 98 }, { 7, 11, 1365 }, { 9, 11, 422 },
+ { 9, 11, 670 }, { 10, 11, 775 }, { 11, 11, 210 }, { 13, 11, 26 },
+ { 13, 11, 457 }, { 141, 11, 476 }, { 140, 10, 80 }, { 5, 10, 931 },
+ { 134, 10, 1698 }, { 133, 0, 522 }, { 134, 0, 1120 }, { 135, 0, 1529 },
+ { 12, 0, 739 }, { 14, 0, 448 }, { 142, 0, 467 }, { 11, 10, 526 },
+ { 11, 10, 939 }, { 141, 10, 290 }, { 5, 10, 774 }, { 6, 10, 1637 },
+ { 6, 10, 1686 }, { 134, 10, 1751 }, { 6, 0, 1667 }, { 135, 0, 2036 },
+ { 7, 10, 1167 }, { 11, 10, 934 }, { 13, 10, 391 }, { 145, 10, 76 },
+ { 137, 11, 147 }, { 6, 10, 260 }, { 7, 10, 1484 }, { 11, 11, 821 },
+ { 12, 11, 110 }, { 12, 11, 153 }, { 18, 11, 41 }, { 150, 11, 19 },
+ { 6, 0, 511 }, { 12, 0, 132 }, { 134, 10, 573 }, { 5, 0, 568 },
+ { 6, 0, 138 }, { 135, 0, 1293 }, { 132, 0, 1020 }, { 8, 0, 258 },
+ { 9, 0, 208 }, { 137, 0, 359 }, { 4, 0, 565 }, { 8, 0, 23 },
+ { 136, 0, 827 }, { 134, 0, 344 }, { 4, 0, 922 }, { 5, 0, 1023 },
+ { 13, 11, 477 }, { 14, 11, 120 }, { 148, 11, 61 }, { 134, 0, 240 },
+ { 5, 11, 209 }, { 6, 11, 30 }, { 11, 11, 56 }, { 139, 11, 305 },
+ { 6, 0, 171 }, { 7, 0, 1002 }, { 7, 0, 1324 }, { 9, 0, 415 },
+ { 14, 0, 230 }, { 18, 0, 68 }, { 4, 10, 292 }, { 4, 10, 736 },
+ { 5, 10, 871 }, { 6, 10, 1689 }, { 7, 10, 1944 }, { 137, 10, 580 },
+ { 9, 11, 635 }, { 139, 11, 559 }, { 4, 11, 150 }, { 5, 11, 303 },
+ { 134, 11, 327 }, { 6, 10, 63 }, { 135, 10, 920 }, { 133, 10, 793 },
+ { 8, 11, 192 }, { 10, 11, 78 }, { 10, 11, 555 }, { 11, 11, 308 },
+ { 13, 11, 359 }, { 147, 11, 95 }, { 135, 11, 786 }, { 135, 11, 1712 },
+ { 136, 0, 402 }, { 6, 0, 754 }, { 6, 11, 1638 }, { 7, 11, 79 },
+ { 7, 11, 496 }, { 9, 11, 138 }, { 10, 11, 336 }, { 11, 11, 12 },
+ { 12, 11, 412 }, { 12, 11, 440 }, { 142, 11, 305 }, { 4, 0, 716 },
+ { 141, 0, 31 }, { 133, 0, 982 }, { 8, 0, 691 }, { 8, 0, 731 },
+ { 5, 10, 67 }, { 6, 10, 62 }, { 6, 10, 374 }, { 135, 10, 1391 },
+ { 9, 10, 790 }, { 140, 10, 47 }, { 139, 11, 556 }, { 151, 11, 1 },
+ { 7, 11, 204 }, { 7, 11, 415 }, { 8, 11, 42 }, { 10, 11, 85 },
+ { 11, 11, 33 }, { 11, 11, 564 }, { 12, 11, 571 }, { 149, 11, 1 },
+ { 8, 0, 888 }, { 7, 11, 610 }, { 135, 11, 1501 }, { 4, 10, 391 },
+ { 135, 10, 1169 }, { 5, 0, 847 }, { 9, 0, 840 }, { 138, 0, 803 },
+ { 137, 0, 823 }, { 134, 0, 785 }, { 8, 0, 152 }, { 9, 0, 53 },
+ { 9, 0, 268 }, { 9, 0, 901 }, { 10, 0, 518 }, { 10, 0, 829 },
+ { 11, 0, 188 }, { 13, 0, 74 }, { 14, 0, 46 }, { 15, 0, 17 },
+ { 15, 0, 33 }, { 17, 0, 40 }, { 18, 0, 36 }, { 19, 0, 20 },
+ { 22, 0, 1 }, { 152, 0, 2 }, { 4, 11, 3 }, { 5, 11, 247 },
+ { 5, 11, 644 }, { 7, 11, 744 }, { 7, 11, 1207 }, { 7, 11, 1225 },
+ { 7, 11, 1909 }, { 146, 11, 147 }, { 136, 0, 532 }, { 135, 0, 681 },
+ { 132, 10, 271 }, { 140, 0, 314 }, { 140, 0, 677 }, { 4, 0, 684 },
+ { 136, 0, 384 }, { 5, 11, 285 }, { 9, 11, 67 }, { 13, 11, 473 },
+ { 143, 11, 82 }, { 4, 10, 253 }, { 5, 10, 544 }, { 7, 10, 300 },
+ { 137, 10, 340 }, { 7, 0, 110 }, { 7, 0, 447 }, { 8, 0, 290 },
+ { 8, 0, 591 }, { 9, 0, 382 }, { 9, 0, 649 }, { 11, 0, 71 },
+ { 11, 0, 155 }, { 11, 0, 313 }, { 12, 0, 5 }, { 13, 0, 325 },
+ { 142, 0, 287 }, { 134, 0, 1818 }, { 136, 0, 1007 }, { 138, 0, 321 },
+ { 7, 0, 360 }, { 7, 0, 425 }, { 9, 0, 66 }, { 9, 0, 278 },
+ { 138, 0, 644 }, { 133, 10, 818 }, { 5, 0, 385 }, { 5, 10, 541 },
+ { 6, 10, 94 }, { 6, 10, 499 }, { 7, 10, 230 }, { 139, 10, 321 },
+ { 4, 10, 920 }, { 5, 10, 25 }, { 5, 10, 790 }, { 6, 10, 457 },
+ { 7, 10, 853 }, { 136, 10, 788 }, { 4, 0, 900 }, { 133, 0, 861 },
+ { 5, 0, 254 }, { 7, 0, 985 }, { 136, 0, 73 }, { 7, 0, 1959 },
+ { 136, 0, 683 }, { 134, 10, 1765 }, { 133, 10, 822 }, { 132, 10, 634 },
+ { 4, 11, 29 }, { 6, 11, 532 }, { 7, 11, 1628 }, { 7, 11, 1648 },
+ { 9, 11, 303 }, { 9, 11, 350 }, { 10, 11, 433 }, { 11, 11, 97 },
+ { 11, 11, 557 }, { 11, 11, 745 }, { 12, 11, 289 }, { 12, 11, 335 },
+ { 12, 11, 348 }, { 12, 11, 606 }, { 13, 11, 116 }, { 13, 11, 233 },
+ { 13, 11, 466 }, { 14, 11, 181 }, { 14, 11, 209 }, { 14, 11, 232 },
+ { 14, 11, 236 }, { 14, 11, 300 }, { 16, 11, 41 }, { 148, 11, 97 },
+ { 19, 0, 86 }, { 6, 10, 36 }, { 7, 10, 658 }, { 136, 10, 454 },
+ { 135, 11, 1692 }, { 132, 0, 725 }, { 5, 11, 501 }, { 7, 11, 1704 },
+ { 9, 11, 553 }, { 11, 11, 520 }, { 12, 11, 557 }, { 141, 11, 249 },
+ { 134, 0, 196 }, { 133, 0, 831 }, { 136, 0, 723 }, { 7, 0, 1897 },
+ { 13, 0, 80 }, { 13, 0, 437 }, { 145, 0, 74 }, { 4, 0, 992 },
+ { 6, 0, 627 }, { 136, 0, 994 }, { 135, 11, 1294 }, { 132, 10, 104 },
+ { 5, 0, 848 }, { 6, 0, 66 }, { 136, 0, 764 }, { 4, 0, 36 },
+ { 7, 0, 1387 }, { 10, 0, 205 }, { 139, 0, 755 }, { 6, 0, 1046 },
+ { 134, 0, 1485 }, { 134, 0, 950 }, { 132, 0, 887 }, { 14, 0, 450 },
+ { 148, 0, 111 }, { 7, 0, 620 }, { 7, 0, 831 }, { 9, 10, 542 },
+ { 9, 10, 566 }, { 138, 10, 728 }, { 6, 0, 165 }, { 138, 0, 388 },
+ { 139, 10, 263 }, { 4, 0, 719 }, { 135, 0, 155 }, { 138, 10, 468 },
+ { 6, 11, 453 }, { 144, 11, 36 }, { 134, 11, 129 }, { 5, 0, 533 },
+ { 7, 0, 755 }, { 138, 0, 780 }, { 134, 0, 1465 }, { 4, 0, 353 },
+ { 6, 0, 146 }, { 6, 0, 1789 }, { 7, 0, 427 }, { 7, 0, 990 },
+ { 7, 0, 1348 }, { 9, 0, 665 }, { 9, 0, 898 }, { 11, 0, 893 },
+ { 142, 0, 212 }, { 7, 10, 87 }, { 142, 10, 288 }, { 4, 0, 45 },
+ { 135, 0, 1257 }, { 12, 0, 7 }, { 7, 10, 988 }, { 7, 10, 1939 },
+ { 9, 10, 64 }, { 9, 10, 502 }, { 12, 10, 34 }, { 13, 10, 12 },
+ { 13, 10, 234 }, { 147, 10, 77 }, { 4, 0, 607 }, { 5, 11, 60 },
+ { 6, 11, 504 }, { 7, 11, 614 }, { 7, 11, 1155 }, { 140, 11, 0 },
+ { 135, 10, 141 }, { 8, 11, 198 }, { 11, 11, 29 }, { 140, 11, 534 },
+ { 140, 0, 65 }, { 136, 0, 816 }, { 132, 10, 619 }, { 139, 0, 88 },
+ { 5, 10, 246 }, { 8, 10, 189 }, { 9, 10, 355 }, { 9, 10, 512 },
+ { 10, 10, 124 }, { 10, 10, 453 }, { 11, 10, 143 }, { 11, 10, 416 },
+ { 11, 10, 859 }, { 141, 10, 341 }, { 4, 11, 379 }, { 135, 11, 1397 },
+ { 4, 0, 600 }, { 137, 0, 621 }, { 133, 0, 367 }, { 134, 0, 561 },
+ { 6, 0, 559 }, { 134, 0, 1691 }, { 6, 0, 585 }, { 134, 11, 585 },
+ { 135, 11, 1228 }, { 4, 11, 118 }, { 5, 10, 678 }, { 6, 11, 274 },
+ { 6, 11, 361 }, { 7, 11, 75 }, { 141, 11, 441 }, { 135, 11, 1818 },
+ { 137, 11, 841 }, { 5, 0, 573 }, { 6, 0, 287 }, { 7, 10, 862 },
+ { 7, 10, 1886 }, { 138, 10, 179 }, { 132, 10, 517 }, { 140, 11, 693 },
+ { 5, 11, 314 }, { 6, 11, 221 }, { 7, 11, 419 }, { 10, 11, 650 },
+ { 11, 11, 396 }, { 12, 11, 156 }, { 13, 11, 369 }, { 14, 11, 333 },
+ { 145, 11, 47 }, { 140, 10, 540 }, { 136, 10, 667 }, { 11, 10, 403 },
+ { 146, 10, 83 }, { 6, 0, 672 }, { 133, 10, 761 }, { 9, 0, 157 },
+ { 10, 10, 131 }, { 140, 10, 72 }, { 7, 0, 714 }, { 134, 11, 460 },
+ { 134, 0, 456 }, { 133, 0, 925 }, { 5, 11, 682 }, { 135, 11, 1887 },
+ { 136, 11, 510 }, { 136, 11, 475 }, { 133, 11, 1016 }, { 9, 0, 19 },
+ { 7, 11, 602 }, { 8, 11, 179 }, { 10, 11, 781 }, { 140, 11, 126 },
+ { 6, 11, 329 }, { 138, 11, 111 }, { 6, 0, 822 }, { 134, 0, 1473 },
+ { 144, 11, 86 }, { 11, 0, 113 }, { 139, 11, 113 }, { 5, 11, 821 },
+ { 134, 11, 1687 }, { 133, 10, 449 }, { 7, 0, 463 }, { 17, 0, 69 },
+ { 136, 10, 103 }, { 7, 10, 2028 }, { 138, 10, 641 }, { 6, 0, 193 },
+ { 7, 0, 240 }, { 7, 0, 1682 }, { 10, 0, 51 }, { 10, 0, 640 },
+ { 11, 0, 410 }, { 13, 0, 82 }, { 14, 0, 247 }, { 14, 0, 331 },
+ { 142, 0, 377 }, { 6, 0, 471 }, { 11, 0, 411 }, { 142, 0, 2 },
+ { 5, 11, 71 }, { 7, 11, 1407 }, { 9, 11, 388 }, { 9, 11, 704 },
+ { 10, 11, 261 }, { 10, 11, 619 }, { 11, 11, 547 }, { 11, 11, 619 },
+ { 143, 11, 157 }, { 136, 0, 633 }, { 135, 0, 1148 }, { 6, 0, 554 },
+ { 7, 0, 1392 }, { 12, 0, 129 }, { 7, 10, 1274 }, { 7, 10, 1386 },
+ { 7, 11, 2008 }, { 9, 11, 337 }, { 10, 11, 517 }, { 146, 10, 87 },
+ { 7, 0, 803 }, { 8, 0, 542 }, { 6, 10, 187 }, { 7, 10, 1203 },
+ { 8, 10, 380 }, { 14, 10, 117 }, { 149, 10, 28 }, { 6, 10, 297 },
+ { 7, 10, 793 }, { 139, 10, 938 }, { 8, 0, 438 }, { 11, 0, 363 },
+ { 7, 10, 464 }, { 11, 10, 105 }, { 12, 10, 231 }, { 14, 10, 386 },
+ { 15, 10, 102 }, { 148, 10, 75 }, { 5, 11, 16 }, { 6, 11, 86 },
+ { 6, 11, 603 }, { 7, 11, 292 }, { 7, 11, 561 }, { 8, 11, 257 },
+ { 8, 11, 382 }, { 9, 11, 721 }, { 9, 11, 778 }, { 11, 11, 581 },
+ { 140, 11, 466 }, { 6, 0, 717 }, { 4, 11, 486 }, { 133, 11, 491 },
+ { 132, 0, 875 }, { 132, 11, 72 }, { 6, 11, 265 }, { 135, 11, 847 },
+ { 4, 0, 237 }, { 135, 0, 514 }, { 6, 0, 392 }, { 7, 0, 65 },
+ { 135, 0, 2019 }, { 140, 11, 261 }, { 135, 11, 922 }, { 137, 11, 404 },
+ { 12, 0, 563 }, { 14, 0, 101 }, { 18, 0, 129 }, { 7, 10, 1010 },
+ { 11, 10, 733 }, { 11, 10, 759 }, { 13, 10, 34 }, { 146, 10, 45 },
+ { 7, 10, 1656 }, { 9, 10, 369 }, { 10, 10, 338 }, { 10, 10, 490 },
+ { 11, 10, 154 }, { 11, 10, 545 }, { 11, 10, 775 }, { 13, 10, 77 },
+ { 141, 10, 274 }, { 4, 0, 444 }, { 10, 0, 146 }, { 140, 0, 9 },
+ { 139, 11, 163 }, { 7, 0, 1260 }, { 135, 0, 1790 }, { 9, 0, 222 },
+ { 10, 0, 43 }, { 139, 0, 900 }, { 137, 11, 234 }, { 138, 0, 971 },
+ { 137, 0, 761 }, { 134, 0, 699 }, { 136, 11, 434 }, { 6, 0, 1116 },
+ { 7, 0, 1366 }, { 5, 10, 20 }, { 6, 11, 197 }, { 6, 10, 298 },
+ { 7, 10, 659 }, { 8, 11, 205 }, { 137, 10, 219 }, { 132, 11, 490 },
+ { 11, 11, 820 }, { 150, 11, 51 }, { 7, 10, 1440 }, { 11, 10, 854 },
+ { 11, 10, 872 }, { 11, 10, 921 }, { 12, 10, 551 }, { 13, 10, 472 },
+ { 142, 10, 367 }, { 140, 11, 13 }, { 132, 0, 829 }, { 12, 0, 242 },
+ { 132, 10, 439 }, { 136, 10, 669 }, { 6, 0, 593 }, { 6, 11, 452 },
+ { 7, 11, 312 }, { 138, 11, 219 }, { 4, 11, 333 }, { 9, 11, 176 },
+ { 12, 11, 353 }, { 141, 11, 187 }, { 7, 0, 36 }, { 8, 0, 201 },
+ { 136, 0, 605 }, { 140, 0, 224 }, { 132, 10, 233 }, { 134, 0, 1430 },
+ { 134, 0, 1806 }, { 4, 0, 523 }, { 133, 0, 638 }, { 6, 0, 1889 },
+ { 9, 0, 958 }, { 9, 0, 971 }, { 9, 0, 976 }, { 12, 0, 796 },
+ { 12, 0, 799 }, { 12, 0, 808 }, { 12, 0, 835 }, { 12, 0, 836 },
+ { 12, 0, 914 }, { 12, 0, 946 }, { 15, 0, 216 }, { 15, 0, 232 },
+ { 18, 0, 183 }, { 18, 0, 187 }, { 18, 0, 194 }, { 18, 0, 212 },
+ { 18, 0, 232 }, { 149, 0, 49 }, { 132, 10, 482 }, { 6, 0, 827 },
+ { 134, 0, 1434 }, { 135, 10, 346 }, { 134, 0, 2043 }, { 6, 0, 242 },
+ { 7, 0, 227 }, { 7, 0, 1581 }, { 8, 0, 104 }, { 9, 0, 113 },
+ { 9, 0, 220 }, { 9, 0, 427 }, { 10, 0, 136 }, { 10, 0, 239 },
+ { 11, 0, 579 }, { 11, 0, 1023 }, { 13, 0, 4 }, { 13, 0, 204 },
+ { 13, 0, 316 }, { 148, 0, 86 }, { 134, 11, 1685 }, { 7, 0, 148 },
+ { 8, 0, 284 }, { 141, 0, 63 }, { 142, 0, 10 }, { 135, 11, 584 },
+ { 134, 0, 1249 }, { 7, 0, 861 }, { 135, 10, 334 }, { 5, 10, 795 },
+ { 6, 10, 1741 }, { 137, 11, 70 }, { 132, 0, 807 }, { 7, 11, 135 },
+ { 8, 11, 7 }, { 8, 11, 62 }, { 9, 11, 243 }, { 10, 11, 658 },
+ { 10, 11, 697 }, { 11, 11, 456 }, { 139, 11, 756 }, { 9, 11, 395 },
+ { 138, 11, 79 }, { 137, 11, 108 }, { 147, 0, 94 }, { 136, 0, 494 },
+ { 135, 11, 631 }, { 135, 10, 622 }, { 7, 0, 1510 }, { 135, 10, 1750 },
+ { 4, 10, 203 }, { 135, 10, 1936 }, { 7, 11, 406 }, { 7, 11, 459 },
+ { 8, 11, 606 }, { 139, 11, 726 }, { 7, 0, 1306 }, { 8, 0, 505 },
+ { 9, 0, 482 }, { 10, 0, 126 }, { 11, 0, 225 }, { 12, 0, 347 },
+ { 12, 0, 449 }, { 13, 0, 19 }, { 14, 0, 218 }, { 142, 0, 435 },
+ { 5, 0, 268 }, { 10, 0, 764 }, { 12, 0, 120 }, { 13, 0, 39 },
+ { 145, 0, 127 }, { 142, 11, 68 }, { 11, 10, 678 }, { 140, 10, 307 },
+ { 12, 11, 268 }, { 12, 11, 640 }, { 142, 11, 119 }, { 135, 10, 2044 },
+ { 133, 11, 612 }, { 4, 11, 372 }, { 7, 11, 482 }, { 8, 11, 158 },
+ { 9, 11, 602 }, { 9, 11, 615 }, { 10, 11, 245 }, { 10, 11, 678 },
+ { 10, 11, 744 }, { 11, 11, 248 }, { 139, 11, 806 }, { 7, 10, 311 },
+ { 9, 10, 308 }, { 140, 10, 255 }, { 4, 0, 384 }, { 135, 0, 1022 },
+ { 5, 11, 854 }, { 135, 11, 1991 }, { 135, 10, 1266 }, { 4, 10, 400 },
+ { 5, 10, 267 }, { 135, 10, 232 }, { 135, 0, 1703 }, { 9, 0, 159 },
+ { 11, 0, 661 }, { 140, 0, 603 }, { 4, 0, 964 }, { 14, 0, 438 },
+ { 14, 0, 444 }, { 14, 0, 456 }, { 22, 0, 60 }, { 22, 0, 63 },
+ { 9, 11, 106 }, { 9, 11, 163 }, { 9, 11, 296 }, { 10, 11, 167 },
+ { 10, 11, 172 }, { 10, 11, 777 }, { 139, 11, 16 }, { 136, 0, 583 },
+ { 132, 0, 515 }, { 8, 0, 632 }, { 8, 0, 697 }, { 137, 0, 854 },
+ { 5, 11, 195 }, { 135, 11, 1685 }, { 6, 0, 1123 }, { 134, 0, 1365 },
+ { 134, 11, 328 }, { 7, 11, 1997 }, { 8, 11, 730 }, { 139, 11, 1006 },
+ { 4, 0, 136 }, { 133, 0, 551 }, { 134, 0, 1782 }, { 7, 0, 1287 },
+ { 9, 0, 44 }, { 10, 0, 552 }, { 10, 0, 642 }, { 11, 0, 839 },
+ { 12, 0, 274 }, { 12, 0, 275 }, { 12, 0, 372 }, { 13, 0, 91 },
+ { 142, 0, 125 }, { 5, 11, 751 }, { 11, 11, 797 }, { 140, 11, 203 },
+ { 133, 0, 732 }, { 7, 0, 679 }, { 8, 0, 313 }, { 4, 10, 100 },
+ { 135, 11, 821 }, { 10, 0, 361 }, { 142, 0, 316 }, { 134, 0, 595 },
+ { 6, 0, 147 }, { 7, 0, 886 }, { 9, 0, 753 }, { 138, 0, 268 },
+ { 5, 10, 362 }, { 5, 10, 443 }, { 6, 10, 318 }, { 7, 10, 1019 },
+ { 139, 10, 623 }, { 5, 10, 463 }, { 136, 10, 296 }, { 4, 10, 454 },
+ { 5, 11, 950 }, { 5, 11, 994 }, { 134, 11, 351 }, { 138, 0, 137 },
+ { 5, 10, 48 }, { 5, 10, 404 }, { 6, 10, 557 }, { 7, 10, 458 },
+ { 8, 10, 597 }, { 10, 10, 455 }, { 10, 10, 606 }, { 11, 10, 49 },
+ { 11, 10, 548 }, { 12, 10, 476 }, { 13, 10, 18 }, { 141, 10, 450 },
+ { 133, 0, 414 }, { 135, 0, 1762 }, { 5, 11, 421 }, { 135, 11, 47 },
+ { 5, 10, 442 }, { 135, 10, 1984 }, { 134, 0, 599 }, { 134, 0, 1749 },
+ { 134, 0, 1627 }, { 4, 0, 488 }, { 132, 11, 350 }, { 137, 11, 751 },
+ { 132, 0, 83 }, { 140, 0, 676 }, { 133, 11, 967 }, { 7, 0, 1639 },
+ { 5, 10, 55 }, { 140, 10, 161 }, { 4, 11, 473 }, { 7, 11, 623 },
+ { 8, 11, 808 }, { 9, 11, 871 }, { 9, 11, 893 }, { 11, 11, 38 },
+ { 11, 11, 431 }, { 12, 11, 112 }, { 12, 11, 217 }, { 12, 11, 243 },
+ { 12, 11, 562 }, { 12, 11, 683 }, { 13, 11, 141 }, { 13, 11, 197 },
+ { 13, 11, 227 }, { 13, 11, 406 }, { 13, 11, 487 }, { 14, 11, 156 },
+ { 14, 11, 203 }, { 14, 11, 224 }, { 14, 11, 256 }, { 18, 11, 58 },
+ { 150, 11, 0 }, { 133, 10, 450 }, { 7, 11, 736 }, { 139, 11, 264 },
+ { 134, 0, 278 }, { 4, 11, 222 }, { 7, 11, 286 }, { 136, 11, 629 },
+ { 135, 10, 869 }, { 140, 0, 97 }, { 144, 0, 14 }, { 134, 0, 1085 },
+ { 4, 10, 213 }, { 7, 10, 223 }, { 136, 10, 80 }, { 7, 0, 388 },
+ { 7, 0, 644 }, { 139, 0, 781 }, { 132, 0, 849 }, { 7, 0, 229 },
+ { 8, 0, 59 }, { 9, 0, 190 }, { 10, 0, 378 }, { 140, 0, 191 },
+ { 7, 10, 381 }, { 7, 10, 806 }, { 7, 10, 820 }, { 8, 10, 354 },
+ { 8, 10, 437 }, { 8, 10, 787 }, { 9, 10, 657 }, { 10, 10, 58 },
+ { 10, 10, 339 }, { 10, 10, 749 }, { 11, 10, 914 }, { 12, 10, 162 },
+ { 13, 10, 75 }, { 14, 10, 106 }, { 14, 10, 198 }, { 14, 10, 320 },
+ { 14, 10, 413 }, { 146, 10, 43 }, { 141, 11, 306 }, { 136, 10, 747 },
+ { 134, 0, 1115 }, { 16, 0, 94 }, { 16, 0, 108 }, { 136, 11, 146 },
+ { 6, 0, 700 }, { 6, 0, 817 }, { 134, 0, 1002 }, { 133, 10, 692 },
+ { 4, 11, 465 }, { 135, 11, 1663 }, { 134, 10, 191 }, { 6, 0, 1414 },
+ { 135, 11, 913 }, { 132, 0, 660 }, { 7, 0, 1035 }, { 138, 0, 737 },
+ { 6, 10, 162 }, { 7, 10, 1960 }, { 136, 10, 831 }, { 132, 10, 706 },
+ { 7, 0, 690 }, { 9, 0, 217 }, { 9, 0, 587 }, { 140, 0, 521 },
+ { 138, 10, 426 }, { 135, 10, 1235 }, { 6, 11, 82 }, { 7, 11, 138 },
+ { 7, 11, 517 }, { 9, 11, 673 }, { 139, 11, 238 }, { 138, 0, 272 },
+ { 5, 11, 495 }, { 7, 11, 834 }, { 9, 11, 733 }, { 139, 11, 378 },
+ { 134, 0, 1744 }, { 132, 0, 1011 }, { 7, 11, 828 }, { 142, 11, 116 },
+ { 4, 0, 733 }, { 9, 0, 194 }, { 10, 0, 92 }, { 11, 0, 198 },
+ { 12, 0, 84 }, { 13, 0, 128 }, { 133, 11, 559 }, { 10, 0, 57 },
+ { 10, 0, 277 }, { 6, 11, 21 }, { 6, 11, 1737 }, { 7, 11, 1444 },
+ { 136, 11, 224 }, { 4, 10, 204 }, { 137, 10, 902 }, { 136, 10, 833 },
+ { 11, 0, 348 }, { 12, 0, 99 }, { 18, 0, 1 }, { 18, 0, 11 },
+ { 19, 0, 4 }, { 7, 10, 366 }, { 9, 10, 287 }, { 12, 10, 199 },
+ { 12, 10, 556 }, { 140, 10, 577 }, { 6, 0, 1981 }, { 136, 0, 936 },
+ { 21, 0, 33 }, { 150, 0, 40 }, { 5, 11, 519 }, { 138, 11, 204 },
+ { 5, 10, 356 }, { 135, 10, 224 }, { 134, 0, 775 }, { 135, 0, 306 },
+ { 7, 10, 630 }, { 9, 10, 567 }, { 11, 10, 150 }, { 11, 10, 444 },
+ { 141, 10, 119 }, { 5, 0, 979 }, { 134, 10, 539 }, { 133, 0, 611 },
+ { 4, 11, 402 }, { 135, 11, 1679 }, { 5, 0, 178 }, { 7, 11, 2 },
+ { 8, 11, 323 }, { 136, 11, 479 }, { 5, 11, 59 }, { 135, 11, 672 },
+ { 4, 0, 1010 }, { 6, 0, 1969 }, { 138, 11, 237 }, { 133, 11, 412 },
+ { 146, 11, 34 }, { 7, 11, 1740 }, { 146, 11, 48 }, { 134, 0, 664 },
+ { 139, 10, 814 }, { 4, 11, 85 }, { 135, 11, 549 }, { 133, 11, 94 },
+ { 133, 11, 457 }, { 132, 0, 390 }, { 134, 0, 1510 }, { 4, 10, 235 },
+ { 135, 10, 255 }, { 4, 10, 194 }, { 5, 10, 584 }, { 6, 11, 11 },
+ { 6, 10, 384 }, { 7, 11, 187 }, { 7, 10, 583 }, { 10, 10, 761 },
+ { 11, 10, 760 }, { 139, 10, 851 }, { 4, 11, 522 }, { 139, 11, 802 },
+ { 135, 0, 493 }, { 10, 11, 776 }, { 13, 11, 345 }, { 142, 11, 425 },
+ { 146, 0, 37 }, { 4, 11, 52 }, { 135, 11, 661 }, { 134, 0, 724 },
+ { 134, 0, 829 }, { 133, 11, 520 }, { 133, 10, 562 }, { 4, 11, 281 },
+ { 5, 11, 38 }, { 7, 11, 194 }, { 7, 11, 668 }, { 7, 11, 1893 },
+ { 137, 11, 397 }, { 5, 10, 191 }, { 137, 10, 271 }, { 7, 0, 1537 },
+ { 14, 0, 96 }, { 143, 0, 73 }, { 5, 0, 473 }, { 11, 0, 168 },
+ { 4, 10, 470 }, { 6, 10, 153 }, { 7, 10, 1503 }, { 7, 10, 1923 },
+ { 10, 10, 701 }, { 11, 10, 132 }, { 11, 10, 227 }, { 11, 10, 320 },
+ { 11, 10, 436 }, { 11, 10, 525 }, { 11, 10, 855 }, { 12, 10, 41 },
+ { 12, 10, 286 }, { 13, 10, 103 }, { 13, 10, 284 }, { 14, 10, 255 },
+ { 14, 10, 262 }, { 15, 10, 117 }, { 143, 10, 127 }, { 133, 0, 105 },
+ { 5, 0, 438 }, { 9, 0, 694 }, { 12, 0, 627 }, { 141, 0, 210 },
+ { 133, 10, 327 }, { 6, 10, 552 }, { 7, 10, 1754 }, { 137, 10, 604 },
+ { 134, 0, 1256 }, { 152, 0, 11 }, { 5, 11, 448 }, { 11, 11, 98 },
+ { 139, 11, 524 }, { 7, 0, 1626 }, { 5, 10, 80 }, { 6, 10, 405 },
+ { 7, 10, 403 }, { 7, 10, 1502 }, { 8, 10, 456 }, { 9, 10, 487 },
+ { 9, 10, 853 }, { 9, 10, 889 }, { 10, 10, 309 }, { 11, 10, 721 },
+ { 11, 10, 994 }, { 12, 10, 430 }, { 13, 10, 165 }, { 14, 11, 16 },
+ { 146, 11, 44 }, { 132, 0, 779 }, { 8, 0, 25 }, { 138, 0, 826 },
+ { 4, 10, 453 }, { 5, 10, 887 }, { 6, 10, 535 }, { 8, 10, 6 },
+ { 8, 10, 543 }, { 136, 10, 826 }, { 137, 11, 461 }, { 140, 11, 632 },
+ { 132, 0, 308 }, { 135, 0, 741 }, { 132, 0, 671 }, { 7, 0, 150 },
+ { 8, 0, 649 }, { 136, 0, 1020 }, { 9, 0, 99 }, { 6, 11, 336 },
+ { 8, 11, 552 }, { 9, 11, 285 }, { 10, 11, 99 }, { 139, 11, 568 },
+ { 134, 0, 521 }, { 5, 0, 339 }, { 14, 0, 3 }, { 15, 0, 41 },
+ { 15, 0, 166 }, { 147, 0, 66 }, { 6, 11, 423 }, { 7, 11, 665 },
+ { 7, 11, 1210 }, { 9, 11, 218 }, { 141, 11, 222 }, { 6, 0, 543 },
+ { 5, 10, 101 }, { 5, 11, 256 }, { 6, 10, 88 }, { 7, 10, 1677 },
+ { 9, 10, 100 }, { 10, 10, 677 }, { 14, 10, 169 }, { 14, 10, 302 },
+ { 14, 10, 313 }, { 15, 10, 48 }, { 143, 10, 84 }, { 4, 10, 310 },
+ { 7, 10, 708 }, { 7, 10, 996 }, { 9, 10, 795 }, { 10, 10, 390 },
+ { 10, 10, 733 }, { 11, 10, 451 }, { 12, 10, 249 }, { 14, 10, 115 },
+ { 14, 10, 286 }, { 143, 10, 100 }, { 133, 10, 587 }, { 13, 11, 417 },
+ { 14, 11, 129 }, { 143, 11, 15 }, { 134, 0, 1358 }, { 136, 11, 554 },
+ { 132, 10, 498 }, { 7, 10, 217 }, { 8, 10, 140 }, { 138, 10, 610 },
+ { 135, 11, 989 }, { 135, 11, 634 }, { 6, 0, 155 }, { 140, 0, 234 },
+ { 135, 11, 462 }, { 132, 11, 618 }, { 134, 0, 1628 }, { 132, 0, 766 },
+ { 4, 11, 339 }, { 5, 10, 905 }, { 135, 11, 259 }, { 135, 0, 829 },
+ { 4, 11, 759 }, { 141, 11, 169 }, { 7, 0, 1445 }, { 4, 10, 456 },
+ { 7, 10, 358 }, { 7, 10, 1637 }, { 8, 10, 643 }, { 139, 10, 483 },
+ { 5, 0, 486 }, { 135, 0, 1349 }, { 5, 11, 688 }, { 135, 11, 712 },
+ { 7, 0, 1635 }, { 8, 0, 17 }, { 10, 0, 217 }, { 10, 0, 295 },
+ { 12, 0, 2 }, { 140, 11, 2 }, { 138, 0, 558 }, { 150, 10, 56 },
+ { 4, 11, 278 }, { 5, 11, 465 }, { 135, 11, 1367 }, { 136, 11, 482 },
+ { 133, 10, 535 }, { 6, 0, 1362 }, { 6, 0, 1461 }, { 10, 11, 274 },
+ { 10, 11, 625 }, { 139, 11, 530 }, { 5, 0, 599 }, { 5, 11, 336 },
+ { 6, 11, 341 }, { 6, 11, 478 }, { 6, 11, 1763 }, { 136, 11, 386 },
+ { 7, 10, 1748 }, { 137, 11, 151 }, { 134, 0, 1376 }, { 133, 10, 539 },
+ { 135, 11, 73 }, { 135, 11, 1971 }, { 139, 11, 283 }, { 9, 0, 93 },
+ { 139, 0, 474 }, { 6, 10, 91 }, { 135, 10, 435 }, { 6, 0, 447 },
+ { 5, 11, 396 }, { 134, 11, 501 }, { 4, 10, 16 }, { 5, 10, 316 },
+ { 5, 10, 842 }, { 6, 10, 370 }, { 6, 10, 1778 }, { 8, 10, 166 },
+ { 11, 10, 812 }, { 12, 10, 206 }, { 12, 10, 351 }, { 14, 10, 418 },
+ { 16, 10, 15 }, { 16, 10, 34 }, { 18, 10, 3 }, { 19, 10, 3 },
+ { 19, 10, 7 }, { 20, 10, 4 }, { 149, 10, 21 }, { 7, 0, 577 },
+ { 7, 0, 1432 }, { 9, 0, 475 }, { 9, 0, 505 }, { 9, 0, 526 },
+ { 9, 0, 609 }, { 9, 0, 689 }, { 9, 0, 726 }, { 9, 0, 735 },
+ { 9, 0, 738 }, { 10, 0, 556 }, { 10, 0, 674 }, { 10, 0, 684 },
+ { 11, 0, 89 }, { 11, 0, 202 }, { 11, 0, 272 }, { 11, 0, 380 },
+ { 11, 0, 415 }, { 11, 0, 505 }, { 11, 0, 537 }, { 11, 0, 550 },
+ { 11, 0, 562 }, { 11, 0, 640 }, { 11, 0, 667 }, { 11, 0, 688 },
+ { 11, 0, 847 }, { 11, 0, 927 }, { 11, 0, 930 }, { 11, 0, 940 },
+ { 12, 0, 144 }, { 12, 0, 325 }, { 12, 0, 329 }, { 12, 0, 389 },
+ { 12, 0, 403 }, { 12, 0, 451 }, { 12, 0, 515 }, { 12, 0, 604 },
+ { 12, 0, 616 }, { 12, 0, 626 }, { 13, 0, 66 }, { 13, 0, 131 },
+ { 13, 0, 167 }, { 13, 0, 236 }, { 13, 0, 368 }, { 13, 0, 411 },
+ { 13, 0, 434 }, { 13, 0, 453 }, { 13, 0, 461 }, { 13, 0, 474 },
+ { 14, 0, 59 }, { 14, 0, 60 }, { 14, 0, 139 }, { 14, 0, 152 },
+ { 14, 0, 276 }, { 14, 0, 353 }, { 14, 0, 402 }, { 15, 0, 28 },
+ { 15, 0, 81 }, { 15, 0, 123 }, { 15, 0, 152 }, { 18, 0, 136 },
+ { 148, 0, 88 }, { 4, 11, 929 }, { 133, 11, 799 }, { 136, 11, 46 },
+ { 142, 0, 307 }, { 4, 0, 609 }, { 7, 0, 756 }, { 9, 0, 544 },
+ { 11, 0, 413 }, { 144, 0, 25 }, { 10, 0, 687 }, { 7, 10, 619 },
+ { 10, 10, 547 }, { 11, 10, 122 }, { 140, 10, 601 }, { 4, 0, 930 },
+ { 133, 0, 947 }, { 133, 0, 939 }, { 142, 0, 21 }, { 4, 11, 892 },
+ { 133, 11, 770 }, { 133, 0, 962 }, { 5, 0, 651 }, { 8, 0, 170 },
+ { 9, 0, 61 }, { 9, 0, 63 }, { 10, 0, 23 }, { 10, 0, 37 },
+ { 10, 0, 834 }, { 11, 0, 4 }, { 11, 0, 187 }, { 11, 0, 281 },
+ { 11, 0, 503 }, { 11, 0, 677 }, { 12, 0, 96 }, { 12, 0, 130 },
+ { 12, 0, 244 }, { 14, 0, 5 }, { 14, 0, 40 }, { 14, 0, 162 },
+ { 14, 0, 202 }, { 146, 0, 133 }, { 4, 0, 406 }, { 5, 0, 579 },
+ { 12, 0, 492 }, { 150, 0, 15 }, { 135, 11, 158 }, { 135, 0, 597 },
+ { 132, 0, 981 }, { 132, 10, 888 }, { 4, 10, 149 }, { 138, 10, 368 },
+ { 132, 0, 545 }, { 4, 10, 154 }, { 7, 10, 1134 }, { 136, 10, 105 },
+ { 135, 11, 2001 }, { 134, 0, 1558 }, { 4, 10, 31 }, { 6, 10, 429 },
+ { 7, 10, 962 }, { 9, 10, 458 }, { 139, 10, 691 }, { 132, 10, 312 },
+ { 135, 10, 1642 }, { 6, 0, 17 }, { 6, 0, 1304 }, { 7, 0, 16 },
+ { 7, 0, 1001 }, { 9, 0, 886 }, { 10, 0, 489 }, { 10, 0, 800 },
+ { 11, 0, 782 }, { 12, 0, 320 }, { 13, 0, 467 }, { 14, 0, 145 },
+ { 14, 0, 387 }, { 143, 0, 119 }, { 135, 0, 1982 }, { 17, 0, 17 },
+ { 7, 11, 1461 }, { 140, 11, 91 }, { 4, 10, 236 }, { 132, 11, 602 },
+ { 138, 0, 907 }, { 136, 0, 110 }, { 7, 0, 272 }, { 19, 0, 53 },
+ { 5, 10, 836 }, { 5, 10, 857 }, { 134, 10, 1680 }, { 5, 0, 458 },
+ { 7, 11, 1218 }, { 136, 11, 303 }, { 7, 0, 1983 }, { 8, 0, 0 },
+ { 8, 0, 171 }, { 9, 0, 120 }, { 9, 0, 732 }, { 10, 0, 473 },
+ { 11, 0, 656 }, { 11, 0, 998 }, { 18, 0, 0 }, { 18, 0, 2 },
+ { 19, 0, 21 }, { 10, 10, 68 }, { 139, 10, 494 }, { 137, 11, 662 },
+ { 4, 11, 13 }, { 5, 11, 567 }, { 7, 11, 1498 }, { 9, 11, 124 },
+ { 11, 11, 521 }, { 140, 11, 405 }, { 4, 10, 81 }, { 139, 10, 867 },
+ { 135, 11, 1006 }, { 7, 11, 800 }, { 7, 11, 1783 }, { 138, 11, 12 },
+ { 9, 0, 295 }, { 10, 0, 443 }, { 5, 10, 282 }, { 8, 10, 650 },
+ { 137, 10, 907 }, { 132, 11, 735 }, { 4, 11, 170 }, { 4, 10, 775 },
+ { 135, 11, 323 }, { 6, 0, 1844 }, { 10, 0, 924 }, { 11, 11, 844 },
+ { 12, 11, 104 }, { 140, 11, 625 }, { 5, 11, 304 }, { 7, 11, 1403 },
+ { 140, 11, 498 }, { 134, 0, 1232 }, { 4, 0, 519 }, { 10, 0, 70 },
+ { 12, 0, 26 }, { 14, 0, 17 }, { 14, 0, 178 }, { 15, 0, 34 },
+ { 149, 0, 12 }, { 132, 0, 993 }, { 4, 11, 148 }, { 133, 11, 742 },
+ { 6, 0, 31 }, { 7, 0, 491 }, { 7, 0, 530 }, { 8, 0, 592 },
+ { 11, 0, 53 }, { 11, 0, 779 }, { 12, 0, 167 }, { 12, 0, 411 },
+ { 14, 0, 14 }, { 14, 0, 136 }, { 15, 0, 72 }, { 16, 0, 17 },
+ { 144, 0, 72 }, { 133, 0, 907 }, { 134, 0, 733 }, { 133, 11, 111 },
+ { 4, 10, 71 }, { 5, 10, 376 }, { 7, 10, 119 }, { 138, 10, 665 },
+ { 136, 0, 55 }, { 8, 0, 430 }, { 136, 11, 430 }, { 4, 0, 208 },
+ { 5, 0, 106 }, { 6, 0, 531 }, { 8, 0, 408 }, { 9, 0, 188 },
+ { 138, 0, 572 }, { 12, 0, 56 }, { 11, 10, 827 }, { 14, 10, 34 },
+ { 143, 10, 148 }, { 134, 0, 1693 }, { 133, 11, 444 }, { 132, 10, 479 },
+ { 140, 0, 441 }, { 9, 0, 449 }, { 10, 0, 192 }, { 138, 0, 740 },
+ { 134, 0, 928 }, { 4, 0, 241 }, { 7, 10, 607 }, { 136, 10, 99 },
+ { 8, 11, 123 }, { 15, 11, 6 }, { 144, 11, 7 }, { 6, 11, 285 },
+ { 8, 11, 654 }, { 11, 11, 749 }, { 12, 11, 190 }, { 12, 11, 327 },
+ { 13, 11, 120 }, { 13, 11, 121 }, { 13, 11, 327 }, { 15, 11, 47 },
+ { 146, 11, 40 }, { 4, 10, 41 }, { 5, 10, 74 }, { 7, 10, 1627 },
+ { 11, 10, 871 }, { 140, 10, 619 }, { 7, 0, 1525 }, { 11, 10, 329 },
+ { 11, 10, 965 }, { 12, 10, 241 }, { 14, 10, 354 }, { 15, 10, 22 },
+ { 148, 10, 63 }, { 132, 0, 259 }, { 135, 11, 183 }, { 9, 10, 209 },
+ { 137, 10, 300 }, { 5, 11, 937 }, { 135, 11, 100 }, { 133, 10, 98 },
+ { 4, 0, 173 }, { 5, 0, 312 }, { 5, 0, 512 }, { 135, 0, 1285 },
+ { 141, 0, 185 }, { 7, 0, 1603 }, { 7, 0, 1691 }, { 9, 0, 464 },
+ { 11, 0, 195 }, { 12, 0, 279 }, { 12, 0, 448 }, { 14, 0, 11 },
+ { 147, 0, 102 }, { 135, 0, 1113 }, { 133, 10, 984 }, { 4, 0, 452 },
+ { 5, 0, 583 }, { 135, 0, 720 }, { 4, 0, 547 }, { 5, 0, 817 },
+ { 6, 0, 433 }, { 7, 0, 593 }, { 7, 0, 1378 }, { 8, 0, 161 },
+ { 9, 0, 284 }, { 10, 0, 313 }, { 139, 0, 886 }, { 8, 0, 722 },
+ { 4, 10, 182 }, { 6, 10, 205 }, { 135, 10, 220 }, { 150, 0, 13 },
+ { 4, 10, 42 }, { 9, 10, 205 }, { 9, 10, 786 }, { 138, 10, 659 },
+ { 6, 0, 289 }, { 7, 0, 1670 }, { 12, 0, 57 }, { 151, 0, 4 },
+ { 132, 10, 635 }, { 14, 0, 43 }, { 146, 0, 21 }, { 139, 10, 533 },
+ { 135, 0, 1694 }, { 8, 0, 420 }, { 139, 0, 193 }, { 135, 0, 409 },
+ { 132, 10, 371 }, { 4, 10, 272 }, { 135, 10, 836 }, { 5, 10, 825 },
+ { 134, 10, 1640 }, { 5, 11, 251 }, { 5, 11, 956 }, { 8, 11, 268 },
+ { 9, 11, 214 }, { 146, 11, 142 }, { 138, 0, 308 }, { 6, 0, 1863 },
+ { 141, 11, 37 }, { 137, 10, 879 }, { 7, 10, 317 }, { 135, 10, 569 },
+ { 132, 11, 294 }, { 134, 0, 790 }, { 5, 0, 1002 }, { 136, 0, 745 },
+ { 5, 11, 346 }, { 5, 11, 711 }, { 136, 11, 390 }, { 135, 0, 289 },
+ { 5, 0, 504 }, { 11, 0, 68 }, { 137, 10, 307 }, { 4, 0, 239 },
+ { 6, 0, 477 }, { 7, 0, 1607 }, { 139, 0, 617 }, { 149, 0, 13 },
+ { 133, 0, 609 }, { 133, 11, 624 }, { 5, 11, 783 }, { 7, 11, 1998 },
+ { 135, 11, 2047 }, { 133, 10, 525 }, { 132, 0, 367 }, { 132, 11, 594 },
+ { 6, 0, 528 }, { 133, 10, 493 }, { 4, 10, 174 }, { 135, 10, 911 },
+ { 8, 10, 417 }, { 137, 10, 782 }, { 132, 0, 694 }, { 7, 0, 548 },
+ { 137, 0, 58 }, { 4, 10, 32 }, { 5, 10, 215 }, { 6, 10, 269 },
+ { 7, 10, 1782 }, { 7, 10, 1892 }, { 10, 10, 16 }, { 11, 10, 822 },
+ { 11, 10, 954 }, { 141, 10, 481 }, { 140, 0, 687 }, { 7, 0, 1749 },
+ { 136, 10, 477 }, { 132, 11, 569 }, { 133, 10, 308 }, { 135, 10, 1088 },
+ { 4, 0, 661 }, { 138, 0, 1004 }, { 5, 11, 37 }, { 6, 11, 39 },
+ { 6, 11, 451 }, { 7, 11, 218 }, { 7, 11, 667 }, { 7, 11, 1166 },
+ { 7, 11, 1687 }, { 8, 11, 662 }, { 144, 11, 2 }, { 9, 0, 445 },
+ { 12, 0, 53 }, { 13, 0, 492 }, { 5, 10, 126 }, { 8, 10, 297 },
+ { 9, 10, 366 }, { 140, 10, 374 }, { 7, 10, 1551 }, { 139, 10, 361 },
+ { 148, 0, 74 }, { 134, 11, 508 }, { 135, 0, 213 }, { 132, 10, 175 },
+ { 132, 10, 685 }, { 6, 0, 760 }, { 6, 0, 834 }, { 134, 0, 1248 },
+ { 7, 11, 453 }, { 7, 11, 635 }, { 7, 11, 796 }, { 8, 11, 331 },
+ { 9, 11, 328 }, { 9, 11, 330 }, { 9, 11, 865 }, { 10, 11, 119 },
+ { 10, 11, 235 }, { 11, 11, 111 }, { 11, 11, 129 }, { 11, 11, 240 },
+ { 12, 11, 31 }, { 12, 11, 66 }, { 12, 11, 222 }, { 12, 11, 269 },
+ { 12, 11, 599 }, { 12, 11, 689 }, { 13, 11, 186 }, { 13, 11, 364 },
+ { 142, 11, 345 }, { 7, 0, 1672 }, { 139, 0, 189 }, { 133, 10, 797 },
+ { 133, 10, 565 }, { 6, 0, 1548 }, { 6, 11, 98 }, { 7, 11, 585 },
+ { 135, 11, 702 }, { 9, 0, 968 }, { 15, 0, 192 }, { 149, 0, 56 },
+ { 4, 10, 252 }, { 6, 11, 37 }, { 7, 11, 299 }, { 7, 10, 1068 },
+ { 7, 11, 1666 }, { 8, 11, 195 }, { 8, 11, 316 }, { 9, 11, 178 },
+ { 9, 11, 276 }, { 9, 11, 339 }, { 9, 11, 536 }, { 10, 11, 102 },
+ { 10, 11, 362 }, { 10, 10, 434 }, { 10, 11, 785 }, { 11, 11, 55 },
+ { 11, 11, 149 }, { 11, 10, 228 }, { 11, 10, 426 }, { 11, 11, 773 },
+ { 13, 10, 231 }, { 13, 11, 416 }, { 13, 11, 419 }, { 14, 11, 38 },
+ { 14, 11, 41 }, { 14, 11, 210 }, { 18, 10, 106 }, { 148, 10, 87 },
+ { 4, 0, 751 }, { 11, 0, 390 }, { 140, 0, 32 }, { 4, 0, 409 },
+ { 133, 0, 78 }, { 11, 11, 458 }, { 12, 11, 15 }, { 140, 11, 432 },
+ { 7, 0, 1602 }, { 10, 0, 257 }, { 10, 0, 698 }, { 11, 0, 544 },
+ { 11, 0, 585 }, { 12, 0, 212 }, { 13, 0, 307 }, { 5, 10, 231 },
+ { 7, 10, 601 }, { 9, 10, 277 }, { 9, 10, 674 }, { 10, 10, 178 },
+ { 10, 10, 418 }, { 10, 10, 509 }, { 11, 10, 531 }, { 12, 10, 113 },
+ { 12, 10, 475 }, { 13, 10, 99 }, { 142, 10, 428 }, { 6, 0, 473 },
+ { 145, 0, 105 }, { 6, 0, 1949 }, { 15, 0, 156 }, { 133, 11, 645 },
+ { 7, 10, 1591 }, { 144, 10, 43 }, { 135, 0, 1779 }, { 135, 10, 1683 },
+ { 4, 11, 290 }, { 135, 11, 1356 }, { 134, 0, 763 }, { 6, 11, 70 },
+ { 7, 11, 1292 }, { 10, 11, 762 }, { 139, 11, 288 }, { 142, 0, 29 },
+ { 140, 11, 428 }, { 7, 0, 883 }, { 7, 11, 131 }, { 7, 11, 422 },
+ { 8, 11, 210 }, { 140, 11, 573 }, { 134, 0, 488 }, { 4, 10, 399 },
+ { 5, 10, 119 }, { 5, 10, 494 }, { 7, 10, 751 }, { 137, 10, 556 },
+ { 133, 0, 617 }, { 132, 11, 936 }, { 139, 0, 50 }, { 7, 0, 1518 },
+ { 139, 0, 694 }, { 137, 0, 785 }, { 4, 0, 546 }, { 135, 0, 2042 },
+ { 7, 11, 716 }, { 13, 11, 97 }, { 141, 11, 251 }, { 132, 11, 653 },
+ { 145, 0, 22 }, { 134, 0, 1016 }, { 4, 0, 313 }, { 133, 0, 577 },
+ { 136, 11, 657 }, { 8, 0, 184 }, { 141, 0, 433 }, { 135, 0, 935 },
+ { 6, 0, 720 }, { 9, 0, 114 }, { 146, 11, 80 }, { 12, 0, 186 },
+ { 12, 0, 292 }, { 14, 0, 100 }, { 18, 0, 70 }, { 7, 10, 594 },
+ { 7, 10, 851 }, { 7, 10, 1858 }, { 9, 10, 411 }, { 9, 10, 574 },
+ { 9, 10, 666 }, { 9, 10, 737 }, { 10, 10, 346 }, { 10, 10, 712 },
+ { 11, 10, 246 }, { 11, 10, 432 }, { 11, 10, 517 }, { 11, 10, 647 },
+ { 11, 10, 679 }, { 11, 10, 727 }, { 12, 10, 304 }, { 12, 10, 305 },
+ { 12, 10, 323 }, { 12, 10, 483 }, { 12, 10, 572 }, { 12, 10, 593 },
+ { 12, 10, 602 }, { 13, 10, 95 }, { 13, 10, 101 }, { 13, 10, 171 },
+ { 13, 10, 315 }, { 13, 10, 378 }, { 13, 10, 425 }, { 13, 10, 475 },
+ { 14, 10, 63 }, { 14, 10, 380 }, { 14, 10, 384 }, { 15, 10, 133 },
+ { 18, 10, 112 }, { 148, 10, 72 }, { 135, 10, 1093 }, { 135, 11, 1836 },
+ { 132, 10, 679 }, { 137, 10, 203 }, { 11, 0, 402 }, { 12, 0, 109 },
+ { 12, 0, 431 }, { 13, 0, 179 }, { 13, 0, 206 }, { 14, 0, 217 },
+ { 16, 0, 3 }, { 148, 0, 53 }, { 7, 11, 1368 }, { 8, 11, 232 },
+ { 8, 11, 361 }, { 10, 11, 682 }, { 138, 11, 742 }, { 137, 10, 714 },
+ { 5, 0, 886 }, { 6, 0, 46 }, { 6, 0, 1790 }, { 7, 0, 14 },
+ { 7, 0, 732 }, { 7, 0, 1654 }, { 8, 0, 95 }, { 8, 0, 327 },
+ { 8, 0, 616 }, { 9, 0, 892 }, { 10, 0, 598 }, { 10, 0, 769 },
+ { 11, 0, 134 }, { 11, 0, 747 }, { 12, 0, 378 }, { 14, 0, 97 },
+ { 137, 11, 534 }, { 4, 0, 969 }, { 136, 10, 825 }, { 137, 11, 27 },
+ { 6, 0, 727 }, { 142, 11, 12 }, { 133, 0, 1021 }, { 134, 0, 1190 },
+ { 134, 11, 1657 }, { 5, 10, 143 }, { 5, 10, 769 }, { 6, 10, 1760 },
+ { 7, 10, 682 }, { 7, 10, 1992 }, { 136, 10, 736 }, { 132, 0, 153 },
+ { 135, 11, 127 }, { 133, 0, 798 }, { 132, 0, 587 }, { 6, 0, 598 },
+ { 7, 0, 42 }, { 8, 0, 695 }, { 10, 0, 212 }, { 11, 0, 158 },
+ { 14, 0, 196 }, { 145, 0, 85 }, { 133, 10, 860 }, { 6, 0, 1929 },
+ { 134, 0, 1933 }, { 5, 0, 957 }, { 5, 0, 1008 }, { 9, 0, 577 },
+ { 12, 0, 141 }, { 6, 10, 422 }, { 7, 10, 0 }, { 7, 10, 1544 },
+ { 8, 11, 364 }, { 11, 10, 990 }, { 12, 10, 453 }, { 13, 10, 47 },
+ { 141, 10, 266 }, { 134, 0, 1319 }, { 4, 0, 129 }, { 135, 0, 465 },
+ { 7, 0, 470 }, { 7, 0, 1057 }, { 7, 0, 1201 }, { 9, 0, 755 },
+ { 11, 0, 906 }, { 140, 0, 527 }, { 7, 0, 908 }, { 146, 0, 7 },
+ { 5, 0, 148 }, { 136, 0, 450 }, { 5, 10, 515 }, { 137, 10, 131 },
+ { 7, 10, 1605 }, { 11, 10, 962 }, { 146, 10, 139 }, { 132, 10, 646 },
+ { 134, 0, 1166 }, { 4, 10, 396 }, { 7, 10, 728 }, { 9, 10, 117 },
+ { 13, 10, 202 }, { 148, 10, 51 }, { 6, 10, 121 }, { 6, 10, 124 },
+ { 6, 10, 357 }, { 7, 10, 1138 }, { 7, 10, 1295 }, { 8, 10, 162 },
+ { 139, 10, 655 }, { 14, 0, 374 }, { 142, 11, 374 }, { 138, 0, 253 },
+ { 139, 0, 1003 }, { 5, 11, 909 }, { 9, 11, 849 }, { 138, 11, 805 },
+ { 133, 10, 237 }, { 7, 11, 525 }, { 7, 11, 1579 }, { 8, 11, 497 },
+ { 136, 11, 573 }, { 137, 0, 46 }, { 132, 0, 879 }, { 134, 0, 806 },
+ { 135, 0, 1868 }, { 6, 0, 1837 }, { 134, 0, 1846 }, { 6, 0, 730 },
+ { 134, 0, 881 }, { 7, 0, 965 }, { 7, 0, 1460 }, { 7, 0, 1604 },
+ { 7, 11, 193 }, { 7, 11, 397 }, { 7, 11, 1105 }, { 8, 11, 124 },
+ { 8, 11, 619 }, { 9, 11, 305 }, { 10, 11, 264 }, { 11, 11, 40 },
+ { 12, 11, 349 }, { 13, 11, 134 }, { 13, 11, 295 }, { 14, 11, 155 },
+ { 15, 11, 120 }, { 146, 11, 105 }, { 136, 0, 506 }, { 143, 0, 10 },
+ { 4, 11, 262 }, { 7, 11, 342 }, { 7, 10, 571 }, { 7, 10, 1877 },
+ { 10, 10, 366 }, { 141, 11, 23 }, { 133, 11, 641 }, { 10, 0, 22 },
+ { 9, 10, 513 }, { 10, 10, 39 }, { 12, 10, 122 }, { 140, 10, 187 },
+ { 135, 11, 1431 }, { 150, 11, 49 }, { 4, 11, 99 }, { 6, 11, 250 },
+ { 6, 11, 346 }, { 8, 11, 127 }, { 138, 11, 81 }, { 6, 0, 2014 },
+ { 8, 0, 928 }, { 10, 0, 960 }, { 10, 0, 979 }, { 140, 0, 996 },
+ { 134, 0, 296 }, { 132, 11, 915 }, { 5, 11, 75 }, { 9, 11, 517 },
+ { 10, 11, 470 }, { 12, 11, 155 }, { 141, 11, 224 }, { 137, 10, 873 },
+ { 4, 0, 854 }, { 140, 11, 18 }, { 134, 0, 587 }, { 7, 10, 107 },
+ { 7, 10, 838 }, { 8, 10, 550 }, { 138, 10, 401 }, { 11, 0, 636 },
+ { 15, 0, 145 }, { 17, 0, 34 }, { 19, 0, 50 }, { 23, 0, 20 },
+ { 11, 10, 588 }, { 11, 10, 864 }, { 11, 10, 968 }, { 143, 10, 160 },
+ { 135, 11, 216 }, { 7, 0, 982 }, { 10, 0, 32 }, { 143, 0, 56 },
+ { 133, 10, 768 }, { 133, 11, 954 }, { 6, 11, 304 }, { 7, 11, 1114 },
+ { 8, 11, 418 }, { 10, 11, 345 }, { 11, 11, 341 }, { 11, 11, 675 },
+ { 141, 11, 40 }, { 9, 11, 410 }, { 139, 11, 425 }, { 136, 0, 941 },
+ { 5, 0, 435 }, { 132, 10, 894 }, { 5, 0, 85 }, { 6, 0, 419 },
+ { 7, 0, 134 }, { 7, 0, 305 }, { 7, 0, 361 }, { 7, 0, 1337 },
+ { 8, 0, 71 }, { 140, 0, 519 }, { 140, 0, 688 }, { 135, 0, 740 },
+ { 5, 0, 691 }, { 7, 0, 345 }, { 9, 0, 94 }, { 140, 0, 169 },
+ { 5, 0, 183 }, { 6, 0, 582 }, { 10, 0, 679 }, { 140, 0, 435 },
+ { 134, 11, 14 }, { 6, 0, 945 }, { 135, 0, 511 }, { 134, 11, 1708 },
+ { 5, 11, 113 }, { 6, 11, 243 }, { 7, 11, 1865 }, { 11, 11, 161 },
+ { 16, 11, 37 }, { 145, 11, 99 }, { 132, 11, 274 }, { 137, 0, 539 },
+ { 7, 0, 1993 }, { 8, 0, 684 }, { 134, 10, 272 }, { 6, 0, 659 },
+ { 134, 0, 982 }, { 4, 10, 9 }, { 5, 10, 128 }, { 7, 10, 368 },
+ { 11, 10, 480 }, { 148, 10, 3 }, { 134, 0, 583 }, { 132, 0, 803 },
+ { 133, 0, 704 }, { 4, 0, 179 }, { 5, 0, 198 }, { 133, 0, 697 },
+ { 7, 0, 347 }, { 7, 0, 971 }, { 8, 0, 181 }, { 10, 0, 711 },
+ { 135, 11, 166 }, { 136, 10, 682 }, { 4, 10, 2 }, { 7, 10, 545 },
+ { 7, 10, 894 }, { 136, 11, 521 }, { 135, 0, 481 }, { 132, 0, 243 },
+ { 5, 0, 203 }, { 7, 0, 19 }, { 7, 0, 71 }, { 7, 0, 113 },
+ { 10, 0, 405 }, { 11, 0, 357 }, { 142, 0, 240 }, { 5, 11, 725 },
+ { 5, 11, 727 }, { 135, 11, 1811 }, { 6, 0, 826 }, { 137, 11, 304 },
+ { 7, 0, 1450 }, { 139, 0, 99 }, { 133, 11, 654 }, { 134, 0, 492 },
+ { 5, 0, 134 }, { 6, 0, 408 }, { 6, 0, 495 }, { 7, 0, 1593 },
+ { 6, 11, 273 }, { 10, 11, 188 }, { 13, 11, 377 }, { 146, 11, 77 },
+ { 9, 10, 769 }, { 140, 10, 185 }, { 135, 11, 410 }, { 142, 0, 4 },
+ { 4, 0, 665 }, { 134, 11, 1785 }, { 4, 0, 248 }, { 7, 0, 137 },
+ { 137, 0, 349 }, { 5, 10, 530 }, { 142, 10, 113 }, { 7, 0, 1270 },
+ { 139, 0, 612 }, { 132, 11, 780 }, { 5, 0, 371 }, { 135, 0, 563 },
+ { 135, 0, 826 }, { 6, 0, 1535 }, { 23, 0, 21 }, { 151, 0, 23 },
+ { 4, 0, 374 }, { 7, 0, 547 }, { 7, 0, 1700 }, { 7, 0, 1833 },
+ { 139, 0, 858 }, { 133, 10, 556 }, { 7, 11, 612 }, { 8, 11, 545 },
+ { 8, 11, 568 }, { 8, 11, 642 }, { 9, 11, 717 }, { 10, 11, 541 },
+ { 10, 11, 763 }, { 11, 11, 449 }, { 12, 11, 489 }, { 13, 11, 153 },
+ { 13, 11, 296 }, { 14, 11, 138 }, { 14, 11, 392 }, { 15, 11, 50 },
+ { 16, 11, 6 }, { 16, 11, 12 }, { 148, 11, 9 }, { 9, 0, 311 },
+ { 141, 0, 42 }, { 8, 10, 16 }, { 140, 10, 568 }, { 6, 0, 1968 },
+ { 6, 0, 2027 }, { 138, 0, 991 }, { 6, 0, 1647 }, { 7, 0, 1552 },
+ { 7, 0, 2010 }, { 9, 0, 494 }, { 137, 0, 509 }, { 133, 11, 948 },
+ { 6, 10, 186 }, { 137, 10, 426 }, { 134, 0, 769 }, { 134, 0, 642 },
+ { 132, 10, 585 }, { 6, 0, 123 }, { 7, 0, 214 }, { 9, 0, 728 },
+ { 10, 0, 157 }, { 11, 0, 346 }, { 11, 0, 662 }, { 143, 0, 106 },
+ { 142, 11, 381 }, { 135, 0, 1435 }, { 4, 11, 532 }, { 5, 11, 706 },
+ { 135, 11, 662 }, { 5, 11, 837 }, { 134, 11, 1651 }, { 4, 10, 93 },
+ { 5, 10, 252 }, { 6, 10, 229 }, { 7, 10, 291 }, { 9, 10, 550 },
+ { 139, 10, 644 }, { 148, 0, 79 }, { 137, 10, 749 }, { 134, 0, 1425 },
+ { 137, 10, 162 }, { 4, 11, 362 }, { 7, 11, 52 }, { 7, 11, 303 },
+ { 140, 11, 166 }, { 132, 10, 381 }, { 4, 11, 330 }, { 7, 11, 933 },
+ { 7, 11, 2012 }, { 136, 11, 292 }, { 135, 11, 767 }, { 4, 0, 707 },
+ { 5, 0, 588 }, { 6, 0, 393 }, { 13, 0, 106 }, { 18, 0, 49 },
+ { 147, 0, 41 }, { 6, 0, 211 }, { 7, 0, 1690 }, { 11, 0, 486 },
+ { 140, 0, 369 }, { 137, 11, 883 }, { 4, 11, 703 }, { 135, 11, 207 },
+ { 4, 0, 187 }, { 5, 0, 184 }, { 5, 0, 690 }, { 7, 0, 1869 },
+ { 10, 0, 756 }, { 139, 0, 783 }, { 132, 11, 571 }, { 134, 0, 1382 },
+ { 5, 0, 175 }, { 6, 10, 77 }, { 6, 10, 157 }, { 7, 10, 974 },
+ { 7, 10, 1301 }, { 7, 10, 1339 }, { 7, 10, 1490 }, { 7, 10, 1873 },
+ { 137, 10, 628 }, { 134, 0, 1493 }, { 5, 11, 873 }, { 133, 11, 960 },
+ { 134, 0, 1007 }, { 12, 11, 93 }, { 12, 11, 501 }, { 13, 11, 362 },
+ { 14, 11, 151 }, { 15, 11, 40 }, { 15, 11, 59 }, { 16, 11, 46 },
+ { 17, 11, 25 }, { 18, 11, 14 }, { 18, 11, 134 }, { 19, 11, 25 },
+ { 19, 11, 69 }, { 20, 11, 16 }, { 20, 11, 19 }, { 20, 11, 66 },
+ { 21, 11, 23 }, { 21, 11, 25 }, { 150, 11, 42 }, { 11, 10, 919 },
+ { 141, 10, 409 }, { 134, 0, 219 }, { 5, 0, 582 }, { 6, 0, 1646 },
+ { 7, 0, 99 }, { 7, 0, 1962 }, { 7, 0, 1986 }, { 8, 0, 515 },
+ { 8, 0, 773 }, { 9, 0, 23 }, { 9, 0, 491 }, { 12, 0, 620 },
+ { 142, 0, 93 }, { 133, 0, 851 }, { 5, 11, 33 }, { 134, 11, 470 },
+ { 135, 11, 1291 }, { 134, 0, 1278 }, { 135, 11, 1882 }, { 135, 10, 1489 },
+ { 132, 0, 1000 }, { 138, 0, 982 }, { 8, 0, 762 }, { 8, 0, 812 },
+ { 137, 0, 910 }, { 6, 11, 47 }, { 7, 11, 90 }, { 7, 11, 664 },
+ { 7, 11, 830 }, { 7, 11, 1380 }, { 7, 11, 2025 }, { 8, 11, 448 },
+ { 136, 11, 828 }, { 4, 0, 98 }, { 4, 0, 940 }, { 6, 0, 1819 },
+ { 6, 0, 1834 }, { 6, 0, 1841 }, { 7, 0, 1365 }, { 8, 0, 859 },
+ { 8, 0, 897 }, { 8, 0, 918 }, { 9, 0, 422 }, { 9, 0, 670 },
+ { 10, 0, 775 }, { 10, 0, 894 }, { 10, 0, 909 }, { 10, 0, 910 },
+ { 10, 0, 935 }, { 11, 0, 210 }, { 12, 0, 750 }, { 12, 0, 755 },
+ { 13, 0, 26 }, { 13, 0, 457 }, { 13, 0, 476 }, { 16, 0, 100 },
+ { 16, 0, 109 }, { 18, 0, 173 }, { 18, 0, 175 }, { 8, 10, 398 },
+ { 9, 10, 681 }, { 139, 10, 632 }, { 9, 11, 417 }, { 137, 11, 493 },
+ { 136, 10, 645 }, { 138, 0, 906 }, { 134, 0, 1730 }, { 134, 10, 20 },
+ { 133, 11, 1019 }, { 134, 0, 1185 }, { 10, 0, 40 }, { 136, 10, 769 },
+ { 9, 0, 147 }, { 134, 11, 208 }, { 140, 0, 650 }, { 5, 0, 209 },
+ { 6, 0, 30 }, { 11, 0, 56 }, { 139, 0, 305 }, { 132, 0, 553 },
+ { 138, 11, 344 }, { 6, 11, 68 }, { 7, 11, 398 }, { 7, 11, 448 },
+ { 7, 11, 1629 }, { 7, 11, 1813 }, { 8, 11, 387 }, { 8, 11, 442 },
+ { 9, 11, 710 }, { 10, 11, 282 }, { 138, 11, 722 }, { 5, 0, 597 },
+ { 14, 0, 20 }, { 142, 11, 20 }, { 135, 0, 1614 }, { 135, 10, 1757 },
+ { 4, 0, 150 }, { 5, 0, 303 }, { 6, 0, 327 }, { 135, 10, 937 },
+ { 16, 0, 49 }, { 7, 10, 1652 }, { 144, 11, 49 }, { 8, 0, 192 },
+ { 10, 0, 78 }, { 141, 0, 359 }, { 135, 0, 786 }, { 143, 0, 134 },
+ { 6, 0, 1638 }, { 7, 0, 79 }, { 7, 0, 496 }, { 9, 0, 138 },
+ { 10, 0, 336 }, { 11, 0, 12 }, { 12, 0, 412 }, { 12, 0, 440 },
+ { 142, 0, 305 }, { 136, 11, 491 }, { 4, 10, 579 }, { 5, 10, 226 },
+ { 5, 10, 323 }, { 135, 10, 960 }, { 7, 0, 204 }, { 7, 0, 415 },
+ { 8, 0, 42 }, { 10, 0, 85 }, { 139, 0, 564 }, { 132, 0, 614 },
+ { 4, 11, 403 }, { 5, 11, 441 }, { 7, 11, 450 }, { 11, 11, 101 },
+ { 12, 11, 193 }, { 141, 11, 430 }, { 135, 11, 1927 }, { 135, 11, 1330 },
+ { 4, 0, 3 }, { 5, 0, 247 }, { 5, 0, 644 }, { 7, 0, 744 },
+ { 7, 0, 1207 }, { 7, 0, 1225 }, { 7, 0, 1909 }, { 146, 0, 147 },
+ { 136, 0, 942 }, { 4, 0, 1019 }, { 134, 0, 2023 }, { 5, 11, 679 },
+ { 133, 10, 973 }, { 5, 0, 285 }, { 9, 0, 67 }, { 13, 0, 473 },
+ { 143, 0, 82 }, { 7, 11, 328 }, { 137, 11, 326 }, { 151, 0, 8 },
+ { 6, 10, 135 }, { 135, 10, 1176 }, { 135, 11, 1128 }, { 134, 0, 1309 },
+ { 135, 11, 1796 }, { 135, 10, 314 }, { 4, 11, 574 }, { 7, 11, 350 },
+ { 7, 11, 1024 }, { 8, 11, 338 }, { 9, 11, 677 }, { 10, 11, 808 },
+ { 139, 11, 508 }, { 7, 11, 818 }, { 17, 11, 14 }, { 17, 11, 45 },
+ { 18, 11, 75 }, { 148, 11, 18 }, { 146, 10, 4 }, { 135, 11, 1081 },
+ { 4, 0, 29 }, { 6, 0, 532 }, { 7, 0, 1628 }, { 7, 0, 1648 },
+ { 9, 0, 350 }, { 10, 0, 433 }, { 11, 0, 97 }, { 11, 0, 557 },
+ { 11, 0, 745 }, { 12, 0, 289 }, { 12, 0, 335 }, { 12, 0, 348 },
+ { 12, 0, 606 }, { 13, 0, 116 }, { 13, 0, 233 }, { 13, 0, 466 },
+ { 14, 0, 181 }, { 14, 0, 209 }, { 14, 0, 232 }, { 14, 0, 236 },
+ { 14, 0, 300 }, { 16, 0, 41 }, { 148, 0, 97 }, { 7, 0, 318 },
+ { 6, 10, 281 }, { 8, 10, 282 }, { 8, 10, 480 }, { 8, 10, 499 },
+ { 9, 10, 198 }, { 10, 10, 143 }, { 10, 10, 169 }, { 10, 10, 211 },
+ { 10, 10, 417 }, { 10, 10, 574 }, { 11, 10, 147 }, { 11, 10, 395 },
+ { 12, 10, 75 }, { 12, 10, 407 }, { 12, 10, 608 }, { 13, 10, 500 },
+ { 142, 10, 251 }, { 135, 11, 1676 }, { 135, 11, 2037 }, { 135, 0, 1692 },
+ { 5, 0, 501 }, { 7, 0, 1704 }, { 9, 0, 553 }, { 11, 0, 520 },
+ { 12, 0, 557 }, { 141, 0, 249 }, { 6, 0, 1527 }, { 14, 0, 324 },
+ { 15, 0, 55 }, { 15, 0, 80 }, { 14, 11, 324 }, { 15, 11, 55 },
+ { 143, 11, 80 }, { 135, 10, 1776 }, { 8, 0, 988 }, { 137, 11, 297 },
+ { 132, 10, 419 }, { 142, 0, 223 }, { 139, 11, 234 }, { 7, 0, 1123 },
+ { 12, 0, 508 }, { 14, 0, 102 }, { 14, 0, 226 }, { 144, 0, 57 },
+ { 4, 10, 138 }, { 7, 10, 1012 }, { 7, 10, 1280 }, { 137, 10, 76 },
+ { 7, 0, 1764 }, { 5, 10, 29 }, { 140, 10, 638 }, { 134, 0, 2015 },
+ { 134, 0, 1599 }, { 138, 11, 56 }, { 6, 11, 306 }, { 7, 11, 1140 },
+ { 7, 11, 1340 }, { 8, 11, 133 }, { 138, 11, 449 }, { 139, 11, 1011 },
+ { 6, 10, 1710 }, { 135, 10, 2038 }, { 7, 11, 1763 }, { 140, 11, 310 },
+ { 6, 0, 129 }, { 4, 10, 17 }, { 5, 10, 23 }, { 7, 10, 995 },
+ { 11, 10, 383 }, { 11, 10, 437 }, { 12, 10, 460 }, { 140, 10, 532 },
+ { 5, 11, 329 }, { 136, 11, 260 }, { 133, 10, 862 }, { 132, 0, 534 },
+ { 6, 0, 811 }, { 135, 0, 626 }, { 132, 11, 657 }, { 4, 0, 25 },
+ { 5, 0, 60 }, { 6, 0, 504 }, { 7, 0, 614 }, { 7, 0, 1155 },
+ { 12, 0, 0 }, { 152, 11, 7 }, { 7, 0, 1248 }, { 11, 0, 621 },
+ { 139, 0, 702 }, { 137, 0, 321 }, { 8, 10, 70 }, { 12, 10, 171 },
+ { 141, 10, 272 }, { 10, 10, 233 }, { 139, 10, 76 }, { 4, 0, 379 },
+ { 7, 0, 1397 }, { 134, 10, 442 }, { 5, 11, 66 }, { 7, 11, 1896 },
+ { 136, 11, 288 }, { 134, 11, 1643 }, { 134, 10, 1709 }, { 4, 11, 21 },
+ { 5, 11, 91 }, { 5, 11, 570 }, { 5, 11, 648 }, { 5, 11, 750 },
+ { 5, 11, 781 }, { 6, 11, 54 }, { 6, 11, 112 }, { 6, 11, 402 },
+ { 6, 11, 1732 }, { 7, 11, 315 }, { 7, 11, 749 }, { 7, 11, 1347 },
+ { 7, 11, 1900 }, { 9, 11, 78 }, { 9, 11, 508 }, { 10, 11, 611 },
+ { 11, 11, 510 }, { 11, 11, 728 }, { 13, 11, 36 }, { 14, 11, 39 },
+ { 16, 11, 83 }, { 17, 11, 124 }, { 148, 11, 30 }, { 4, 0, 118 },
+ { 6, 0, 274 }, { 6, 0, 361 }, { 7, 0, 75 }, { 141, 0, 441 },
+ { 10, 11, 322 }, { 10, 11, 719 }, { 139, 11, 407 }, { 147, 10, 119 },
+ { 12, 11, 549 }, { 14, 11, 67 }, { 147, 11, 60 }, { 11, 10, 69 },
+ { 12, 10, 105 }, { 12, 10, 117 }, { 13, 10, 213 }, { 14, 10, 13 },
+ { 14, 10, 62 }, { 14, 10, 177 }, { 14, 10, 421 }, { 15, 10, 19 },
+ { 146, 10, 141 }, { 9, 0, 841 }, { 137, 10, 309 }, { 7, 10, 608 },
+ { 7, 10, 976 }, { 8, 11, 125 }, { 8, 11, 369 }, { 8, 11, 524 },
+ { 9, 10, 146 }, { 10, 10, 206 }, { 10, 11, 486 }, { 10, 10, 596 },
+ { 11, 11, 13 }, { 11, 11, 381 }, { 11, 11, 736 }, { 11, 11, 766 },
+ { 11, 11, 845 }, { 13, 11, 114 }, { 13, 10, 218 }, { 13, 11, 292 },
+ { 14, 11, 47 }, { 142, 10, 153 }, { 12, 0, 693 }, { 135, 11, 759 },
+ { 5, 0, 314 }, { 6, 0, 221 }, { 7, 0, 419 }, { 10, 0, 650 },
+ { 11, 0, 396 }, { 12, 0, 156 }, { 13, 0, 369 }, { 14, 0, 333 },
+ { 145, 0, 47 }, { 6, 11, 1684 }, { 6, 11, 1731 }, { 7, 11, 356 },
+ { 7, 11, 1932 }, { 8, 11, 54 }, { 8, 11, 221 }, { 9, 11, 225 },
+ { 9, 11, 356 }, { 10, 11, 77 }, { 10, 11, 446 }, { 10, 11, 731 },
+ { 12, 11, 404 }, { 141, 11, 491 }, { 132, 11, 375 }, { 4, 10, 518 },
+ { 135, 10, 1136 }, { 4, 0, 913 }, { 4, 11, 411 }, { 11, 11, 643 },
+ { 140, 11, 115 }, { 4, 11, 80 }, { 133, 11, 44 }, { 8, 10, 689 },
+ { 137, 10, 863 }, { 138, 0, 880 }, { 4, 10, 18 }, { 7, 10, 145 },
+ { 7, 10, 444 }, { 7, 10, 1278 }, { 8, 10, 49 }, { 8, 10, 400 },
+ { 9, 10, 71 }, { 9, 10, 250 }, { 10, 10, 459 }, { 12, 10, 160 },
+ { 144, 10, 24 }, { 136, 0, 475 }, { 5, 0, 1016 }, { 5, 11, 299 },
+ { 135, 11, 1083 }, { 7, 0, 602 }, { 8, 0, 179 }, { 10, 0, 781 },
+ { 140, 0, 126 }, { 6, 0, 329 }, { 138, 0, 111 }, { 135, 0, 1864 },
+ { 4, 11, 219 }, { 7, 11, 1761 }, { 137, 11, 86 }, { 6, 0, 1888 },
+ { 6, 0, 1892 }, { 6, 0, 1901 }, { 6, 0, 1904 }, { 9, 0, 953 },
+ { 9, 0, 985 }, { 9, 0, 991 }, { 9, 0, 1001 }, { 12, 0, 818 },
+ { 12, 0, 846 }, { 12, 0, 847 }, { 12, 0, 861 }, { 12, 0, 862 },
+ { 12, 0, 873 }, { 12, 0, 875 }, { 12, 0, 877 }, { 12, 0, 879 },
+ { 12, 0, 881 }, { 12, 0, 884 }, { 12, 0, 903 }, { 12, 0, 915 },
+ { 12, 0, 926 }, { 12, 0, 939 }, { 15, 0, 182 }, { 15, 0, 219 },
+ { 15, 0, 255 }, { 18, 0, 191 }, { 18, 0, 209 }, { 18, 0, 211 },
+ { 149, 0, 41 }, { 5, 11, 328 }, { 135, 11, 918 }, { 137, 0, 780 },
+ { 12, 0, 82 }, { 143, 0, 36 }, { 133, 10, 1010 }, { 5, 0, 821 },
+ { 134, 0, 1687 }, { 133, 11, 514 }, { 132, 0, 956 }, { 134, 0, 1180 },
+ { 10, 0, 112 }, { 5, 10, 87 }, { 7, 10, 313 }, { 7, 10, 1103 },
+ { 10, 10, 582 }, { 11, 10, 389 }, { 11, 10, 813 }, { 12, 10, 385 },
+ { 13, 10, 286 }, { 14, 10, 124 }, { 146, 10, 108 }, { 5, 0, 71 },
+ { 7, 0, 1407 }, { 9, 0, 704 }, { 10, 0, 261 }, { 10, 0, 619 },
+ { 11, 0, 547 }, { 11, 0, 619 }, { 143, 0, 157 }, { 4, 0, 531 },
+ { 5, 0, 455 }, { 5, 11, 301 }, { 6, 11, 571 }, { 14, 11, 49 },
+ { 146, 11, 102 }, { 132, 10, 267 }, { 6, 0, 385 }, { 7, 0, 2008 },
+ { 9, 0, 337 }, { 138, 0, 517 }, { 133, 11, 726 }, { 133, 11, 364 },
+ { 4, 11, 76 }, { 7, 11, 1550 }, { 9, 11, 306 }, { 9, 11, 430 },
+ { 9, 11, 663 }, { 10, 11, 683 }, { 11, 11, 427 }, { 11, 11, 753 },
+ { 12, 11, 334 }, { 12, 11, 442 }, { 14, 11, 258 }, { 14, 11, 366 },
+ { 143, 11, 131 }, { 6, 0, 1865 }, { 6, 0, 1879 }, { 6, 0, 1881 },
+ { 6, 0, 1894 }, { 6, 0, 1908 }, { 9, 0, 915 }, { 9, 0, 926 },
+ { 9, 0, 940 }, { 9, 0, 943 }, { 9, 0, 966 }, { 9, 0, 980 },
+ { 9, 0, 989 }, { 9, 0, 1005 }, { 9, 0, 1010 }, { 12, 0, 813 },
+ { 12, 0, 817 }, { 12, 0, 840 }, { 12, 0, 843 }, { 12, 0, 855 },
+ { 12, 0, 864 }, { 12, 0, 871 }, { 12, 0, 872 }, { 12, 0, 899 },
+ { 12, 0, 905 }, { 12, 0, 924 }, { 15, 0, 171 }, { 15, 0, 181 },
+ { 15, 0, 224 }, { 15, 0, 235 }, { 15, 0, 251 }, { 146, 0, 184 },
+ { 137, 11, 52 }, { 5, 0, 16 }, { 6, 0, 86 }, { 6, 0, 603 },
+ { 7, 0, 292 }, { 7, 0, 561 }, { 8, 0, 257 }, { 8, 0, 382 },
+ { 9, 0, 721 }, { 9, 0, 778 }, { 11, 0, 581 }, { 140, 0, 466 },
+ { 4, 0, 486 }, { 5, 0, 491 }, { 135, 10, 1121 }, { 4, 0, 72 },
+ { 6, 0, 265 }, { 135, 0, 1300 }, { 135, 11, 1183 }, { 10, 10, 249 },
+ { 139, 10, 209 }, { 132, 10, 561 }, { 137, 11, 519 }, { 4, 11, 656 },
+ { 4, 10, 760 }, { 135, 11, 779 }, { 9, 10, 154 }, { 140, 10, 485 },
+ { 135, 11, 1793 }, { 135, 11, 144 }, { 136, 10, 255 }, { 133, 0, 621 },
+ { 4, 10, 368 }, { 135, 10, 641 }, { 135, 11, 1373 }, { 7, 11, 554 },
+ { 7, 11, 605 }, { 141, 11, 10 }, { 137, 0, 234 }, { 5, 0, 815 },
+ { 6, 0, 1688 }, { 134, 0, 1755 }, { 5, 11, 838 }, { 5, 11, 841 },
+ { 134, 11, 1649 }, { 7, 0, 1987 }, { 7, 0, 2040 }, { 136, 0, 743 },
+ { 133, 11, 1012 }, { 6, 0, 197 }, { 136, 0, 205 }, { 6, 0, 314 },
+ { 134, 11, 314 }, { 144, 11, 53 }, { 6, 11, 251 }, { 7, 11, 365 },
+ { 7, 11, 1357 }, { 7, 11, 1497 }, { 8, 11, 154 }, { 141, 11, 281 },
+ { 133, 11, 340 }, { 6, 0, 452 }, { 7, 0, 312 }, { 138, 0, 219 },
+ { 138, 0, 589 }, { 4, 0, 333 }, { 9, 0, 176 }, { 12, 0, 353 },
+ { 141, 0, 187 }, { 9, 10, 92 }, { 147, 10, 91 }, { 134, 0, 1110 },
+ { 11, 0, 47 }, { 139, 11, 495 }, { 6, 10, 525 }, { 8, 10, 806 },
+ { 9, 10, 876 }, { 140, 10, 284 }, { 8, 11, 261 }, { 9, 11, 144 },
+ { 9, 11, 466 }, { 10, 11, 370 }, { 12, 11, 470 }, { 13, 11, 144 },
+ { 142, 11, 348 }, { 137, 11, 897 }, { 8, 0, 863 }, { 8, 0, 864 },
+ { 8, 0, 868 }, { 8, 0, 884 }, { 10, 0, 866 }, { 10, 0, 868 },
+ { 10, 0, 873 }, { 10, 0, 911 }, { 10, 0, 912 }, { 10, 0, 944 },
+ { 12, 0, 727 }, { 6, 11, 248 }, { 9, 11, 546 }, { 10, 11, 535 },
+ { 11, 11, 681 }, { 141, 11, 135 }, { 6, 0, 300 }, { 135, 0, 1515 },
+ { 134, 0, 1237 }, { 139, 10, 958 }, { 133, 10, 594 }, { 140, 11, 250 },
+ { 134, 0, 1685 }, { 134, 11, 567 }, { 7, 0, 135 }, { 8, 0, 7 },
+ { 8, 0, 62 }, { 9, 0, 243 }, { 10, 0, 658 }, { 10, 0, 697 },
+ { 11, 0, 456 }, { 139, 0, 756 }, { 9, 0, 395 }, { 138, 0, 79 },
+ { 6, 10, 1641 }, { 136, 10, 820 }, { 4, 10, 302 }, { 135, 10, 1766 },
+ { 134, 11, 174 }, { 135, 10, 1313 }, { 135, 0, 631 }, { 134, 10, 1674 },
+ { 134, 11, 395 }, { 138, 0, 835 }, { 7, 0, 406 }, { 7, 0, 459 },
+ { 8, 0, 606 }, { 139, 0, 726 }, { 134, 11, 617 }, { 134, 0, 979 },
+ { 6, 10, 389 }, { 7, 10, 149 }, { 9, 10, 142 }, { 138, 10, 94 },
+ { 5, 11, 878 }, { 133, 11, 972 }, { 6, 10, 8 }, { 7, 10, 1881 },
+ { 8, 10, 91 }, { 136, 11, 511 }, { 133, 0, 612 }, { 132, 11, 351 },
+ { 4, 0, 372 }, { 7, 0, 482 }, { 8, 0, 158 }, { 9, 0, 602 },
+ { 9, 0, 615 }, { 10, 0, 245 }, { 10, 0, 678 }, { 10, 0, 744 },
+ { 11, 0, 248 }, { 139, 0, 806 }, { 5, 0, 854 }, { 135, 0, 1991 },
+ { 132, 11, 286 }, { 135, 11, 344 }, { 7, 11, 438 }, { 7, 11, 627 },
+ { 7, 11, 1516 }, { 8, 11, 40 }, { 9, 11, 56 }, { 9, 11, 294 },
+ { 10, 11, 30 }, { 10, 11, 259 }, { 11, 11, 969 }, { 146, 11, 148 },
+ { 135, 0, 1492 }, { 5, 11, 259 }, { 7, 11, 414 }, { 7, 11, 854 },
+ { 142, 11, 107 }, { 135, 10, 1746 }, { 6, 0, 833 }, { 134, 0, 998 },
+ { 135, 10, 24 }, { 6, 0, 750 }, { 135, 0, 1739 }, { 4, 10, 503 },
+ { 135, 10, 1661 }, { 5, 10, 130 }, { 7, 10, 1314 }, { 9, 10, 610 },
+ { 10, 10, 718 }, { 11, 10, 601 }, { 11, 10, 819 }, { 11, 10, 946 },
+ { 140, 10, 536 }, { 10, 10, 149 }, { 11, 10, 280 }, { 142, 10, 336 },
+ { 132, 11, 738 }, { 135, 10, 1946 }, { 5, 0, 195 }, { 135, 0, 1685 },
+ { 7, 0, 1997 }, { 8, 0, 730 }, { 139, 0, 1006 }, { 151, 11, 17 },
+ { 133, 11, 866 }, { 14, 0, 463 }, { 14, 0, 470 }, { 150, 0, 61 },
+ { 5, 0, 751 }, { 8, 0, 266 }, { 11, 0, 578 }, { 4, 10, 392 },
+ { 135, 10, 1597 }, { 5, 10, 433 }, { 9, 10, 633 }, { 139, 10, 629 },
+ { 135, 0, 821 }, { 6, 0, 715 }, { 134, 0, 1325 }, { 133, 11, 116 },
+ { 6, 0, 868 }, { 132, 11, 457 }, { 134, 0, 959 }, { 6, 10, 234 },
+ { 138, 11, 199 }, { 7, 0, 1053 }, { 7, 10, 1950 }, { 8, 10, 680 },
+ { 11, 10, 817 }, { 147, 10, 88 }, { 7, 10, 1222 }, { 138, 10, 386 },
+ { 5, 0, 950 }, { 5, 0, 994 }, { 6, 0, 351 }, { 134, 0, 1124 },
+ { 134, 0, 1081 }, { 7, 0, 1595 }, { 6, 10, 5 }, { 11, 10, 249 },
+ { 12, 10, 313 }, { 16, 10, 66 }, { 145, 10, 26 }, { 148, 0, 59 },
+ { 5, 11, 527 }, { 6, 11, 189 }, { 135, 11, 859 }, { 5, 10, 963 },
+ { 6, 10, 1773 }, { 11, 11, 104 }, { 11, 11, 554 }, { 15, 11, 60 },
+ { 143, 11, 125 }, { 135, 0, 47 }, { 137, 0, 684 }, { 134, 11, 116 },
+ { 134, 0, 1606 }, { 134, 0, 777 }, { 7, 0, 1020 }, { 8, 10, 509 },
+ { 136, 10, 792 }, { 135, 0, 1094 }, { 132, 0, 350 }, { 133, 11, 487 },
+ { 4, 11, 86 }, { 5, 11, 667 }, { 5, 11, 753 }, { 6, 11, 316 },
+ { 6, 11, 455 }, { 135, 11, 946 }, { 7, 0, 1812 }, { 13, 0, 259 },
+ { 13, 0, 356 }, { 14, 0, 242 }, { 147, 0, 114 }, { 132, 10, 931 },
+ { 133, 0, 967 }, { 4, 0, 473 }, { 7, 0, 623 }, { 8, 0, 808 },
+ { 9, 0, 871 }, { 9, 0, 893 }, { 11, 0, 38 }, { 11, 0, 431 },
+ { 12, 0, 112 }, { 12, 0, 217 }, { 12, 0, 243 }, { 12, 0, 562 },
+ { 12, 0, 663 }, { 12, 0, 683 }, { 13, 0, 141 }, { 13, 0, 197 },
+ { 13, 0, 227 }, { 13, 0, 406 }, { 13, 0, 487 }, { 14, 0, 156 },
+ { 14, 0, 203 }, { 14, 0, 224 }, { 14, 0, 256 }, { 18, 0, 58 },
+ { 150, 0, 0 }, { 138, 0, 286 }, { 7, 10, 943 }, { 139, 10, 614 },
+ { 135, 10, 1837 }, { 150, 11, 45 }, { 132, 0, 798 }, { 4, 0, 222 },
+ { 7, 0, 286 }, { 136, 0, 629 }, { 4, 11, 79 }, { 7, 11, 1773 },
+ { 10, 11, 450 }, { 11, 11, 589 }, { 13, 11, 332 }, { 13, 11, 493 },
+ { 14, 11, 183 }, { 14, 11, 334 }, { 14, 11, 362 }, { 14, 11, 368 },
+ { 14, 11, 376 }, { 14, 11, 379 }, { 19, 11, 90 }, { 19, 11, 103 },
+ { 19, 11, 127 }, { 148, 11, 90 }, { 5, 0, 337 }, { 11, 0, 513 },
+ { 11, 0, 889 }, { 11, 0, 961 }, { 12, 0, 461 }, { 13, 0, 79 },
+ { 15, 0, 121 }, { 4, 10, 90 }, { 5, 10, 545 }, { 7, 10, 754 },
+ { 9, 10, 186 }, { 10, 10, 72 }, { 10, 10, 782 }, { 11, 10, 577 },
+ { 11, 10, 610 }, { 12, 10, 354 }, { 12, 10, 362 }, { 140, 10, 595 },
+ { 141, 0, 306 }, { 136, 0, 146 }, { 7, 0, 1646 }, { 9, 10, 329 },
+ { 11, 10, 254 }, { 141, 11, 124 }, { 4, 0, 465 }, { 135, 0, 1663 },
+ { 132, 0, 525 }, { 133, 11, 663 }, { 10, 0, 299 }, { 18, 0, 74 },
+ { 9, 10, 187 }, { 11, 10, 1016 }, { 145, 10, 44 }, { 7, 0, 165 },
+ { 7, 0, 919 }, { 4, 10, 506 }, { 136, 10, 517 }, { 5, 10, 295 },
+ { 135, 10, 1680 }, { 133, 11, 846 }, { 134, 0, 1064 }, { 5, 11, 378 },
+ { 7, 11, 1402 }, { 7, 11, 1414 }, { 8, 11, 465 }, { 9, 11, 286 },
+ { 10, 11, 185 }, { 10, 11, 562 }, { 10, 11, 635 }, { 11, 11, 31 },
+ { 11, 11, 393 }, { 12, 11, 456 }, { 13, 11, 312 }, { 18, 11, 65 },
+ { 18, 11, 96 }, { 147, 11, 89 }, { 132, 0, 596 }, { 7, 10, 987 },
+ { 9, 10, 688 }, { 10, 10, 522 }, { 11, 10, 788 }, { 140, 10, 566 },
+ { 6, 0, 82 }, { 7, 0, 138 }, { 7, 0, 517 }, { 7, 0, 1741 },
+ { 11, 0, 238 }, { 4, 11, 648 }, { 134, 10, 1775 }, { 7, 0, 1233 },
+ { 7, 10, 700 }, { 7, 10, 940 }, { 8, 10, 514 }, { 9, 10, 116 },
+ { 9, 10, 535 }, { 10, 10, 118 }, { 11, 10, 107 }, { 11, 10, 148 },
+ { 11, 10, 922 }, { 12, 10, 254 }, { 12, 10, 421 }, { 142, 10, 238 },
+ { 4, 0, 962 }, { 6, 0, 1824 }, { 8, 0, 894 }, { 12, 0, 708 },
+ { 12, 0, 725 }, { 14, 0, 451 }, { 20, 0, 94 }, { 22, 0, 59 },
+ { 150, 0, 62 }, { 5, 11, 945 }, { 6, 11, 1656 }, { 6, 11, 1787 },
+ { 7, 11, 167 }, { 8, 11, 824 }, { 9, 11, 391 }, { 10, 11, 375 },
+ { 139, 11, 185 }, { 5, 0, 495 }, { 7, 0, 834 }, { 9, 0, 733 },
+ { 139, 0, 378 }, { 4, 10, 743 }, { 135, 11, 1273 }, { 6, 0, 1204 },
+ { 7, 11, 1645 }, { 8, 11, 352 }, { 137, 11, 249 }, { 139, 10, 292 },
+ { 133, 0, 559 }, { 132, 11, 152 }, { 9, 0, 499 }, { 10, 0, 341 },
+ { 15, 0, 144 }, { 19, 0, 49 }, { 7, 10, 1283 }, { 9, 10, 227 },
+ { 11, 10, 325 }, { 11, 10, 408 }, { 14, 10, 180 }, { 146, 10, 47 },
+ { 6, 0, 21 }, { 6, 0, 1737 }, { 7, 0, 1444 }, { 136, 0, 224 },
+ { 133, 11, 1006 }, { 7, 0, 1446 }, { 9, 0, 97 }, { 17, 0, 15 },
+ { 5, 10, 81 }, { 7, 10, 146 }, { 7, 10, 1342 }, { 8, 10, 53 },
+ { 8, 10, 561 }, { 8, 10, 694 }, { 8, 10, 754 }, { 9, 10, 115 },
+ { 9, 10, 894 }, { 10, 10, 462 }, { 10, 10, 813 }, { 11, 10, 230 },
+ { 11, 10, 657 }, { 11, 10, 699 }, { 11, 10, 748 }, { 12, 10, 119 },
+ { 12, 10, 200 }, { 12, 10, 283 }, { 142, 10, 273 }, { 5, 10, 408 },
+ { 137, 10, 747 }, { 135, 11, 431 }, { 135, 11, 832 }, { 6, 0, 729 },
+ { 134, 0, 953 }, { 4, 0, 727 }, { 8, 0, 565 }, { 5, 11, 351 },
+ { 7, 11, 264 }, { 136, 11, 565 }, { 134, 0, 1948 }, { 5, 0, 519 },
+ { 5, 11, 40 }, { 7, 11, 598 }, { 7, 11, 1638 }, { 8, 11, 78 },
+ { 9, 11, 166 }, { 9, 11, 640 }, { 9, 11, 685 }, { 9, 11, 773 },
+ { 11, 11, 215 }, { 13, 11, 65 }, { 14, 11, 172 }, { 14, 11, 317 },
+ { 145, 11, 6 }, { 8, 11, 60 }, { 9, 11, 343 }, { 139, 11, 769 },
+ { 137, 11, 455 }, { 134, 0, 1193 }, { 140, 0, 790 }, { 7, 11, 1951 },
+ { 8, 11, 765 }, { 8, 11, 772 }, { 140, 11, 671 }, { 7, 11, 108 },
+ { 8, 11, 219 }, { 8, 11, 388 }, { 9, 11, 639 }, { 9, 11, 775 },
+ { 11, 11, 275 }, { 140, 11, 464 }, { 132, 11, 468 }, { 7, 10, 30 },
+ { 8, 10, 86 }, { 8, 10, 315 }, { 8, 10, 700 }, { 9, 10, 576 },
+ { 9, 10, 858 }, { 11, 10, 310 }, { 11, 10, 888 }, { 11, 10, 904 },
+ { 12, 10, 361 }, { 141, 10, 248 }, { 5, 11, 15 }, { 6, 11, 56 },
+ { 7, 11, 1758 }, { 8, 11, 500 }, { 9, 11, 730 }, { 11, 11, 331 },
+ { 13, 11, 150 }, { 142, 11, 282 }, { 4, 0, 402 }, { 7, 0, 2 },
+ { 8, 0, 323 }, { 136, 0, 479 }, { 138, 10, 839 }, { 11, 0, 580 },
+ { 142, 0, 201 }, { 5, 0, 59 }, { 135, 0, 672 }, { 137, 10, 617 },
+ { 146, 0, 34 }, { 134, 11, 1886 }, { 4, 0, 961 }, { 136, 0, 896 },
+ { 6, 0, 1285 }, { 5, 11, 205 }, { 6, 11, 438 }, { 137, 11, 711 },
+ { 134, 10, 428 }, { 7, 10, 524 }, { 8, 10, 169 }, { 8, 10, 234 },
+ { 9, 10, 480 }, { 138, 10, 646 }, { 148, 0, 46 }, { 141, 0, 479 },
+ { 133, 11, 534 }, { 6, 0, 2019 }, { 134, 10, 1648 }, { 4, 0, 85 },
+ { 7, 0, 549 }, { 7, 10, 1205 }, { 138, 10, 637 }, { 4, 0, 663 },
+ { 5, 0, 94 }, { 7, 11, 235 }, { 7, 11, 1475 }, { 15, 11, 68 },
+ { 146, 11, 120 }, { 6, 11, 443 }, { 9, 11, 237 }, { 9, 11, 571 },
+ { 9, 11, 695 }, { 10, 11, 139 }, { 11, 11, 715 }, { 12, 11, 417 },
+ { 141, 11, 421 }, { 132, 0, 783 }, { 4, 0, 682 }, { 8, 0, 65 },
+ { 9, 10, 39 }, { 10, 10, 166 }, { 11, 10, 918 }, { 12, 10, 635 },
+ { 20, 10, 10 }, { 22, 10, 27 }, { 22, 10, 43 }, { 150, 10, 52 },
+ { 6, 0, 11 }, { 135, 0, 187 }, { 132, 0, 522 }, { 4, 0, 52 },
+ { 135, 0, 661 }, { 4, 0, 383 }, { 133, 0, 520 }, { 135, 11, 546 },
+ { 11, 0, 343 }, { 142, 0, 127 }, { 4, 11, 578 }, { 7, 10, 157 },
+ { 7, 11, 624 }, { 7, 11, 916 }, { 8, 10, 279 }, { 10, 11, 256 },
+ { 11, 11, 87 }, { 139, 11, 703 }, { 134, 10, 604 }, { 4, 0, 281 },
+ { 5, 0, 38 }, { 7, 0, 194 }, { 7, 0, 668 }, { 7, 0, 1893 },
+ { 137, 0, 397 }, { 7, 10, 945 }, { 11, 10, 713 }, { 139, 10, 744 },
+ { 139, 10, 1022 }, { 9, 0, 635 }, { 139, 0, 559 }, { 5, 11, 923 },
+ { 7, 11, 490 }, { 12, 11, 553 }, { 13, 11, 100 }, { 14, 11, 118 },
+ { 143, 11, 75 }, { 132, 0, 975 }, { 132, 10, 567 }, { 137, 10, 859 },
+ { 7, 10, 1846 }, { 7, 11, 1846 }, { 8, 10, 628 }, { 136, 11, 628 },
+ { 148, 0, 116 }, { 138, 11, 750 }, { 14, 0, 51 }, { 14, 11, 51 },
+ { 15, 11, 7 }, { 148, 11, 20 }, { 132, 0, 858 }, { 134, 0, 1075 },
+ { 4, 11, 924 }, { 133, 10, 762 }, { 136, 0, 535 }, { 133, 0, 448 },
+ { 10, 10, 784 }, { 141, 10, 191 }, { 133, 10, 298 }, { 7, 0, 610 },
+ { 135, 0, 1501 }, { 7, 10, 633 }, { 7, 10, 905 }, { 7, 10, 909 },
+ { 7, 10, 1538 }, { 9, 10, 767 }, { 140, 10, 636 }, { 4, 11, 265 },
+ { 7, 11, 807 }, { 135, 11, 950 }, { 5, 11, 93 }, { 12, 11, 267 },
+ { 144, 11, 26 }, { 136, 0, 191 }, { 139, 10, 301 }, { 135, 10, 1970 },
+ { 135, 0, 267 }, { 4, 0, 319 }, { 5, 0, 699 }, { 138, 0, 673 },
+ { 6, 0, 336 }, { 7, 0, 92 }, { 7, 0, 182 }, { 8, 0, 453 },
+ { 8, 0, 552 }, { 9, 0, 204 }, { 9, 0, 285 }, { 10, 0, 99 },
+ { 11, 0, 568 }, { 11, 0, 950 }, { 12, 0, 94 }, { 16, 0, 20 },
+ { 16, 0, 70 }, { 19, 0, 55 }, { 12, 10, 644 }, { 144, 10, 90 },
+ { 6, 0, 551 }, { 7, 0, 1308 }, { 7, 10, 845 }, { 7, 11, 994 },
+ { 8, 10, 160 }, { 137, 10, 318 }, { 19, 11, 1 }, { 19, 11, 26 },
+ { 150, 11, 9 }, { 7, 0, 1406 }, { 9, 0, 218 }, { 141, 0, 222 },
+ { 5, 0, 256 }, { 138, 0, 69 }, { 5, 11, 233 }, { 5, 11, 320 },
+ { 6, 11, 140 }, { 7, 11, 330 }, { 136, 11, 295 }, { 6, 0, 1980 },
+ { 136, 0, 952 }, { 4, 0, 833 }, { 137, 11, 678 }, { 133, 11, 978 },
+ { 4, 11, 905 }, { 6, 11, 1701 }, { 137, 11, 843 }, { 138, 10, 735 },
+ { 136, 10, 76 }, { 17, 0, 39 }, { 148, 0, 36 }, { 18, 0, 81 },
+ { 146, 11, 81 }, { 14, 0, 352 }, { 17, 0, 53 }, { 18, 0, 146 },
+ { 18, 0, 152 }, { 19, 0, 11 }, { 150, 0, 54 }, { 135, 0, 634 },
+ { 138, 10, 841 }, { 132, 0, 618 }, { 4, 0, 339 }, { 7, 0, 259 },
+ { 17, 0, 73 }, { 4, 11, 275 }, { 140, 11, 376 }, { 132, 11, 509 },
+ { 7, 11, 273 }, { 139, 11, 377 }, { 4, 0, 759 }, { 13, 0, 169 },
+ { 137, 10, 804 }, { 6, 10, 96 }, { 135, 10, 1426 }, { 4, 10, 651 },
+ { 133, 10, 289 }, { 7, 0, 1075 }, { 8, 10, 35 }, { 9, 10, 511 },
+ { 10, 10, 767 }, { 147, 10, 118 }, { 6, 0, 649 }, { 6, 0, 670 },
+ { 136, 0, 482 }, { 5, 0, 336 }, { 6, 0, 341 }, { 6, 0, 478 },
+ { 6, 0, 1763 }, { 136, 0, 386 }, { 5, 11, 802 }, { 7, 11, 2021 },
+ { 8, 11, 805 }, { 14, 11, 94 }, { 15, 11, 65 }, { 16, 11, 4 },
+ { 16, 11, 77 }, { 16, 11, 80 }, { 145, 11, 5 }, { 6, 0, 1035 },
+ { 5, 11, 167 }, { 5, 11, 899 }, { 6, 11, 410 }, { 137, 11, 777 },
+ { 134, 11, 1705 }, { 5, 0, 924 }, { 133, 0, 969 }, { 132, 10, 704 },
+ { 135, 0, 73 }, { 135, 11, 10 }, { 135, 10, 1078 }, { 5, 11, 11 },
+ { 6, 11, 117 }, { 6, 11, 485 }, { 7, 11, 1133 }, { 9, 11, 582 },
+ { 9, 11, 594 }, { 11, 11, 21 }, { 11, 11, 818 }, { 12, 11, 535 },
+ { 141, 11, 86 }, { 135, 0, 1971 }, { 4, 11, 264 }, { 7, 11, 1067 },
+ { 8, 11, 204 }, { 8, 11, 385 }, { 139, 11, 953 }, { 6, 0, 1458 },
+ { 135, 0, 1344 }, { 5, 0, 396 }, { 134, 0, 501 }, { 4, 10, 720 },
+ { 133, 10, 306 }, { 4, 0, 929 }, { 5, 0, 799 }, { 8, 0, 46 },
+ { 8, 0, 740 }, { 133, 10, 431 }, { 7, 11, 646 }, { 7, 11, 1730 },
+ { 11, 11, 446 }, { 141, 11, 178 }, { 7, 0, 276 }, { 5, 10, 464 },
+ { 6, 10, 236 }, { 7, 10, 696 }, { 7, 10, 914 }, { 7, 10, 1108 },
+ { 7, 10, 1448 }, { 9, 10, 15 }, { 9, 10, 564 }, { 10, 10, 14 },
+ { 12, 10, 565 }, { 13, 10, 449 }, { 14, 10, 53 }, { 15, 10, 13 },
+ { 16, 10, 64 }, { 145, 10, 41 }, { 4, 0, 892 }, { 133, 0, 770 },
+ { 6, 10, 1767 }, { 12, 10, 194 }, { 145, 10, 107 }, { 135, 0, 158 },
+ { 5, 10, 840 }, { 138, 11, 608 }, { 134, 0, 1432 }, { 138, 11, 250 },
+ { 8, 11, 794 }, { 9, 11, 400 }, { 10, 11, 298 }, { 142, 11, 228 },
+ { 151, 0, 25 }, { 7, 11, 1131 }, { 135, 11, 1468 }, { 135, 0, 2001 },
+ { 9, 10, 642 }, { 11, 10, 236 }, { 142, 10, 193 }, { 4, 10, 68 },
+ { 5, 10, 634 }, { 6, 10, 386 }, { 7, 10, 794 }, { 8, 10, 273 },
+ { 9, 10, 563 }, { 10, 10, 105 }, { 10, 10, 171 }, { 11, 10, 94 },
+ { 139, 10, 354 }, { 136, 11, 724 }, { 132, 0, 478 }, { 11, 11, 512 },
+ { 13, 11, 205 }, { 19, 11, 30 }, { 22, 11, 36 }, { 151, 11, 19 },
+ { 7, 0, 1461 }, { 140, 0, 91 }, { 6, 11, 190 }, { 7, 11, 768 },
+ { 135, 11, 1170 }, { 4, 0, 602 }, { 8, 0, 211 }, { 4, 10, 95 },
+ { 7, 10, 416 }, { 139, 10, 830 }, { 7, 10, 731 }, { 13, 10, 20 },
+ { 143, 10, 11 }, { 6, 0, 1068 }, { 135, 0, 1872 }, { 4, 0, 13 },
+ { 5, 0, 567 }, { 7, 0, 1498 }, { 9, 0, 124 }, { 11, 0, 521 },
+ { 12, 0, 405 }, { 135, 11, 1023 }, { 135, 0, 1006 }, { 132, 0, 735 },
+ { 138, 0, 812 }, { 4, 0, 170 }, { 135, 0, 323 }, { 6, 11, 137 },
+ { 9, 11, 75 }, { 9, 11, 253 }, { 10, 11, 194 }, { 138, 11, 444 },
+ { 5, 0, 304 }, { 7, 0, 1403 }, { 5, 10, 864 }, { 10, 10, 648 },
+ { 11, 10, 671 }, { 143, 10, 46 }, { 135, 11, 1180 }, { 133, 10, 928 },
+ { 4, 0, 148 }, { 133, 0, 742 }, { 11, 10, 986 }, { 140, 10, 682 },
+ { 133, 0, 523 }, { 135, 11, 1743 }, { 7, 0, 730 }, { 18, 0, 144 },
+ { 19, 0, 61 }, { 8, 10, 44 }, { 9, 10, 884 }, { 10, 10, 580 },
+ { 11, 10, 399 }, { 11, 10, 894 }, { 143, 10, 122 }, { 5, 11, 760 },
+ { 7, 11, 542 }, { 8, 11, 135 }, { 136, 11, 496 }, { 136, 0, 981 },
+ { 133, 0, 111 }, { 10, 0, 132 }, { 11, 0, 191 }, { 11, 0, 358 },
+ { 139, 0, 460 }, { 7, 11, 319 }, { 7, 11, 355 }, { 7, 11, 763 },
+ { 10, 11, 389 }, { 145, 11, 43 }, { 134, 0, 890 }, { 134, 0, 1420 },
+ { 136, 11, 557 }, { 133, 10, 518 }, { 133, 0, 444 }, { 135, 0, 1787 },
+ { 135, 10, 1852 }, { 8, 0, 123 }, { 15, 0, 6 }, { 144, 0, 7 },
+ { 6, 0, 2041 }, { 10, 11, 38 }, { 139, 11, 784 }, { 136, 0, 932 },
+ { 5, 0, 937 }, { 135, 0, 100 }, { 6, 0, 995 }, { 4, 11, 58 },
+ { 5, 11, 286 }, { 6, 11, 319 }, { 7, 11, 402 }, { 7, 11, 1254 },
+ { 7, 11, 1903 }, { 8, 11, 356 }, { 140, 11, 408 }, { 4, 11, 389 },
+ { 9, 11, 181 }, { 9, 11, 255 }, { 10, 11, 8 }, { 10, 11, 29 },
+ { 10, 11, 816 }, { 11, 11, 311 }, { 11, 11, 561 }, { 12, 11, 67 },
+ { 141, 11, 181 }, { 138, 0, 255 }, { 5, 0, 138 }, { 4, 10, 934 },
+ { 136, 10, 610 }, { 4, 0, 965 }, { 10, 0, 863 }, { 138, 0, 898 },
+ { 10, 10, 804 }, { 138, 10, 832 }, { 12, 0, 631 }, { 8, 10, 96 },
+ { 9, 10, 36 }, { 10, 10, 607 }, { 11, 10, 423 }, { 11, 10, 442 },
+ { 12, 10, 309 }, { 14, 10, 199 }, { 15, 10, 90 }, { 145, 10, 110 },
+ { 134, 0, 1394 }, { 4, 0, 652 }, { 8, 0, 320 }, { 22, 0, 6 },
+ { 22, 0, 16 }, { 9, 10, 13 }, { 9, 10, 398 }, { 9, 10, 727 },
+ { 10, 10, 75 }, { 10, 10, 184 }, { 10, 10, 230 }, { 10, 10, 564 },
+ { 10, 10, 569 }, { 11, 10, 973 }, { 12, 10, 70 }, { 12, 10, 189 },
+ { 13, 10, 57 }, { 141, 10, 257 }, { 6, 0, 897 }, { 134, 0, 1333 },
+ { 4, 0, 692 }, { 133, 0, 321 }, { 133, 11, 373 }, { 135, 0, 922 },
+ { 5, 0, 619 }, { 133, 0, 698 }, { 137, 10, 631 }, { 5, 10, 345 },
+ { 135, 10, 1016 }, { 9, 0, 957 }, { 9, 0, 1018 }, { 12, 0, 828 },
+ { 12, 0, 844 }, { 12, 0, 897 }, { 12, 0, 901 }, { 12, 0, 943 },
+ { 15, 0, 180 }, { 18, 0, 197 }, { 18, 0, 200 }, { 18, 0, 213 },
+ { 18, 0, 214 }, { 146, 0, 226 }, { 5, 0, 917 }, { 134, 0, 1659 },
+ { 135, 0, 1100 }, { 134, 0, 1173 }, { 134, 0, 1930 }, { 5, 0, 251 },
+ { 5, 0, 956 }, { 8, 0, 268 }, { 9, 0, 214 }, { 146, 0, 142 },
+ { 133, 10, 673 }, { 137, 10, 850 }, { 4, 10, 287 }, { 133, 10, 1018 },
+ { 132, 11, 672 }, { 5, 0, 346 }, { 5, 0, 711 }, { 8, 0, 390 },
+ { 11, 11, 752 }, { 139, 11, 885 }, { 5, 10, 34 }, { 10, 10, 724 },
+ { 12, 10, 444 }, { 13, 10, 354 }, { 18, 10, 32 }, { 23, 10, 24 },
+ { 23, 10, 31 }, { 152, 10, 5 }, { 4, 11, 710 }, { 134, 11, 606 },
+ { 134, 0, 744 }, { 134, 10, 382 }, { 133, 11, 145 }, { 4, 10, 329 },
+ { 7, 11, 884 }, { 140, 11, 124 }, { 4, 11, 467 }, { 5, 11, 405 },
+ { 134, 11, 544 }, { 9, 10, 846 }, { 138, 10, 827 }, { 133, 0, 624 },
+ { 9, 11, 372 }, { 15, 11, 2 }, { 19, 11, 10 }, { 147, 11, 18 },
+ { 4, 11, 387 }, { 135, 11, 1288 }, { 5, 0, 783 }, { 7, 0, 1998 },
+ { 135, 0, 2047 }, { 132, 10, 906 }, { 136, 10, 366 }, { 135, 11, 550 },
+ { 4, 10, 123 }, { 4, 10, 649 }, { 5, 10, 605 }, { 7, 10, 1509 },
+ { 136, 10, 36 }, { 134, 0, 1125 }, { 132, 0, 594 }, { 133, 10, 767 },
+ { 135, 11, 1227 }, { 136, 11, 467 }, { 4, 11, 576 }, { 135, 11, 1263 },
+ { 4, 0, 268 }, { 7, 0, 1534 }, { 135, 11, 1534 }, { 4, 10, 273 },
+ { 5, 10, 658 }, { 5, 11, 919 }, { 5, 10, 995 }, { 134, 11, 1673 },
+ { 133, 0, 563 }, { 134, 10, 72 }, { 135, 10, 1345 }, { 4, 11, 82 },
+ { 5, 11, 333 }, { 5, 11, 904 }, { 6, 11, 207 }, { 7, 11, 325 },
+ { 7, 11, 1726 }, { 8, 11, 101 }, { 10, 11, 778 }, { 139, 11, 220 },
+ { 5, 0, 37 }, { 6, 0, 39 }, { 6, 0, 451 }, { 7, 0, 218 },
+ { 7, 0, 667 }, { 7, 0, 1166 }, { 7, 0, 1687 }, { 8, 0, 662 },
+ { 16, 0, 2 }, { 133, 10, 589 }, { 134, 0, 1332 }, { 133, 11, 903 },
+ { 134, 0, 508 }, { 5, 10, 117 }, { 6, 10, 514 }, { 6, 10, 541 },
+ { 7, 10, 1164 }, { 7, 10, 1436 }, { 8, 10, 220 }, { 8, 10, 648 },
+ { 10, 10, 688 }, { 11, 10, 560 }, { 140, 11, 147 }, { 6, 11, 555 },
+ { 135, 11, 485 }, { 133, 10, 686 }, { 7, 0, 453 }, { 7, 0, 635 },
+ { 7, 0, 796 }, { 8, 0, 331 }, { 9, 0, 330 }, { 9, 0, 865 },
+ { 10, 0, 119 }, { 10, 0, 235 }, { 11, 0, 111 }, { 11, 0, 129 },
+ { 11, 0, 240 }, { 12, 0, 31 }, { 12, 0, 66 }, { 12, 0, 222 },
+ { 12, 0, 269 }, { 12, 0, 599 }, { 12, 0, 684 }, { 12, 0, 689 },
+ { 12, 0, 691 }, { 142, 0, 345 }, { 135, 0, 1834 }, { 4, 11, 705 },
+ { 7, 11, 615 }, { 138, 11, 251 }, { 136, 11, 345 }, { 137, 0, 527 },
+ { 6, 0, 98 }, { 7, 0, 702 }, { 135, 0, 991 }, { 11, 0, 576 },
+ { 14, 0, 74 }, { 7, 10, 196 }, { 10, 10, 765 }, { 11, 10, 347 },
+ { 11, 10, 552 }, { 11, 10, 790 }, { 12, 10, 263 }, { 13, 10, 246 },
+ { 13, 10, 270 }, { 13, 10, 395 }, { 14, 10, 176 }, { 14, 10, 190 },
+ { 14, 10, 398 }, { 14, 10, 412 }, { 15, 10, 32 }, { 15, 10, 63 },
+ { 16, 10, 88 }, { 147, 10, 105 }, { 134, 11, 90 }, { 13, 0, 84 },
+ { 141, 0, 122 }, { 6, 0, 37 }, { 7, 0, 299 }, { 7, 0, 1666 },
+ { 8, 0, 195 }, { 8, 0, 316 }, { 9, 0, 178 }, { 9, 0, 276 },
+ { 9, 0, 339 }, { 9, 0, 536 }, { 10, 0, 102 }, { 10, 0, 362 },
+ { 10, 0, 785 }, { 11, 0, 55 }, { 11, 0, 149 }, { 11, 0, 773 },
+ { 13, 0, 416 }, { 13, 0, 419 }, { 14, 0, 38 }, { 14, 0, 41 },
+ { 142, 0, 210 }, { 5, 10, 381 }, { 135, 10, 1792 }, { 7, 11, 813 },
+ { 12, 11, 497 }, { 141, 11, 56 }, { 7, 10, 616 }, { 138, 10, 413 },
+ { 133, 0, 645 }, { 6, 11, 125 }, { 135, 11, 1277 }, { 132, 0, 290 },
+ { 6, 0, 70 }, { 7, 0, 1292 }, { 10, 0, 762 }, { 139, 0, 288 },
+ { 6, 10, 120 }, { 7, 10, 1188 }, { 7, 10, 1710 }, { 8, 10, 286 },
+ { 9, 10, 667 }, { 11, 10, 592 }, { 139, 10, 730 }, { 135, 11, 1784 },
+ { 7, 0, 1315 }, { 135, 11, 1315 }, { 134, 0, 1955 }, { 135, 10, 1146 },
+ { 7, 0, 131 }, { 7, 0, 422 }, { 8, 0, 210 }, { 140, 0, 573 },
+ { 4, 10, 352 }, { 135, 10, 687 }, { 139, 0, 797 }, { 143, 0, 38 },
+ { 14, 0, 179 }, { 15, 0, 151 }, { 150, 0, 11 }, { 7, 0, 488 },
+ { 4, 10, 192 }, { 5, 10, 49 }, { 6, 10, 200 }, { 6, 10, 293 },
+ { 134, 10, 1696 }, { 132, 0, 936 }, { 135, 11, 703 }, { 6, 11, 160 },
+ { 7, 11, 1106 }, { 9, 11, 770 }, { 10, 11, 618 }, { 11, 11, 112 },
+ { 140, 11, 413 }, { 5, 0, 453 }, { 134, 0, 441 }, { 135, 0, 595 },
+ { 132, 10, 650 }, { 132, 10, 147 }, { 6, 0, 991 }, { 6, 0, 1182 },
+ { 12, 11, 271 }, { 145, 11, 109 }, { 133, 10, 934 }, { 140, 11, 221 },
+ { 132, 0, 653 }, { 7, 0, 505 }, { 135, 0, 523 }, { 134, 0, 903 },
+ { 135, 11, 479 }, { 7, 11, 304 }, { 9, 11, 646 }, { 9, 11, 862 },
+ { 10, 11, 262 }, { 11, 11, 696 }, { 12, 11, 208 }, { 15, 11, 79 },
+ { 147, 11, 108 }, { 146, 0, 80 }, { 135, 11, 981 }, { 142, 0, 432 },
+ { 132, 0, 314 }, { 137, 11, 152 }, { 7, 0, 1368 }, { 8, 0, 232 },
+ { 8, 0, 361 }, { 10, 0, 682 }, { 138, 0, 742 }, { 135, 11, 1586 },
+ { 9, 0, 534 }, { 4, 11, 434 }, { 11, 11, 663 }, { 12, 11, 210 },
+ { 13, 11, 166 }, { 13, 11, 310 }, { 14, 11, 373 }, { 147, 11, 43 },
+ { 7, 11, 1091 }, { 135, 11, 1765 }, { 6, 11, 550 }, { 135, 11, 652 },
+ { 137, 0, 27 }, { 142, 0, 12 }, { 4, 10, 637 }, { 5, 11, 553 },
+ { 7, 11, 766 }, { 138, 11, 824 }, { 7, 11, 737 }, { 8, 11, 298 },
+ { 136, 11, 452 }, { 7, 0, 736 }, { 139, 0, 264 }, { 134, 0, 1657 },
+ { 133, 11, 292 }, { 138, 11, 135 }, { 6, 0, 844 }, { 134, 0, 1117 },
+ { 135, 0, 127 }, { 9, 10, 867 }, { 138, 10, 837 }, { 6, 0, 1184 },
+ { 134, 0, 1208 }, { 134, 0, 1294 }, { 136, 0, 364 }, { 6, 0, 1415 },
+ { 7, 0, 1334 }, { 11, 0, 125 }, { 6, 10, 170 }, { 7, 11, 393 },
+ { 8, 10, 395 }, { 8, 10, 487 }, { 10, 11, 603 }, { 11, 11, 206 },
+ { 141, 10, 147 }, { 137, 11, 748 }, { 4, 11, 912 }, { 137, 11, 232 },
+ { 4, 10, 535 }, { 136, 10, 618 }, { 137, 0, 792 }, { 7, 11, 1973 },
+ { 136, 11, 716 }, { 135, 11, 98 }, { 5, 0, 909 }, { 9, 0, 849 },
+ { 138, 0, 805 }, { 4, 0, 630 }, { 132, 0, 699 }, { 5, 11, 733 },
+ { 14, 11, 103 }, { 150, 10, 23 }, { 12, 11, 158 }, { 18, 11, 8 },
+ { 19, 11, 62 }, { 20, 11, 6 }, { 22, 11, 4 }, { 23, 11, 2 },
+ { 151, 11, 9 }, { 132, 0, 968 }, { 132, 10, 778 }, { 132, 10, 46 },
+ { 5, 10, 811 }, { 6, 10, 1679 }, { 6, 10, 1714 }, { 135, 10, 2032 },
+ { 6, 0, 1446 }, { 7, 10, 1458 }, { 9, 10, 407 }, { 139, 10, 15 },
+ { 7, 0, 206 }, { 7, 0, 397 }, { 7, 0, 621 }, { 7, 0, 640 },
+ { 8, 0, 124 }, { 8, 0, 619 }, { 9, 0, 305 }, { 9, 0, 643 },
+ { 10, 0, 264 }, { 10, 0, 628 }, { 11, 0, 40 }, { 12, 0, 349 },
+ { 13, 0, 134 }, { 13, 0, 295 }, { 14, 0, 155 }, { 15, 0, 120 },
+ { 18, 0, 105 }, { 6, 10, 34 }, { 7, 10, 1089 }, { 8, 10, 708 },
+ { 8, 10, 721 }, { 9, 10, 363 }, { 148, 10, 98 }, { 4, 0, 262 },
+ { 5, 0, 641 }, { 135, 0, 342 }, { 137, 11, 72 }, { 4, 0, 99 },
+ { 6, 0, 250 }, { 6, 0, 346 }, { 8, 0, 127 }, { 138, 0, 81 },
+ { 132, 0, 915 }, { 5, 0, 75 }, { 9, 0, 517 }, { 10, 0, 470 },
+ { 12, 0, 155 }, { 141, 0, 224 }, { 132, 10, 462 }, { 11, 11, 600 },
+ { 11, 11, 670 }, { 141, 11, 245 }, { 142, 0, 83 }, { 5, 10, 73 },
+ { 6, 10, 23 }, { 134, 10, 338 }, { 6, 0, 1031 }, { 139, 11, 923 },
+ { 7, 11, 164 }, { 7, 11, 1571 }, { 9, 11, 107 }, { 140, 11, 225 },
+ { 134, 0, 1470 }, { 133, 0, 954 }, { 6, 0, 304 }, { 8, 0, 418 },
+ { 10, 0, 345 }, { 11, 0, 341 }, { 139, 0, 675 }, { 9, 0, 410 },
+ { 139, 0, 425 }, { 4, 11, 27 }, { 5, 11, 484 }, { 5, 11, 510 },
+ { 6, 11, 434 }, { 7, 11, 1000 }, { 7, 11, 1098 }, { 8, 11, 2 },
+ { 136, 11, 200 }, { 134, 0, 734 }, { 140, 11, 257 }, { 7, 10, 725 },
+ { 8, 10, 498 }, { 139, 10, 268 }, { 134, 0, 1822 }, { 135, 0, 1798 },
+ { 135, 10, 773 }, { 132, 11, 460 }, { 4, 11, 932 }, { 133, 11, 891 },
+ { 134, 0, 14 }, { 132, 10, 583 }, { 7, 10, 1462 }, { 8, 11, 625 },
+ { 139, 10, 659 }, { 5, 0, 113 }, { 6, 0, 243 }, { 6, 0, 1708 },
+ { 7, 0, 1865 }, { 11, 0, 161 }, { 16, 0, 37 }, { 17, 0, 99 },
+ { 133, 10, 220 }, { 134, 11, 76 }, { 5, 11, 461 }, { 135, 11, 1925 },
+ { 140, 0, 69 }, { 8, 11, 92 }, { 137, 11, 221 }, { 139, 10, 803 },
+ { 132, 10, 544 }, { 4, 0, 274 }, { 134, 0, 922 }, { 132, 0, 541 },
+ { 5, 0, 627 }, { 6, 10, 437 }, { 6, 10, 564 }, { 11, 10, 181 },
+ { 141, 10, 183 }, { 135, 10, 1192 }, { 7, 0, 166 }, { 132, 11, 763 },
+ { 133, 11, 253 }, { 134, 0, 849 }, { 9, 11, 73 }, { 10, 11, 110 },
+ { 14, 11, 185 }, { 145, 11, 119 }, { 5, 11, 212 }, { 12, 11, 35 },
+ { 141, 11, 382 }, { 133, 0, 717 }, { 137, 0, 304 }, { 136, 0, 600 },
+ { 133, 0, 654 }, { 6, 0, 273 }, { 10, 0, 188 }, { 13, 0, 377 },
+ { 146, 0, 77 }, { 4, 10, 790 }, { 5, 10, 273 }, { 134, 10, 394 },
+ { 132, 0, 543 }, { 135, 0, 410 }, { 11, 0, 98 }, { 11, 0, 524 },
+ { 141, 0, 87 }, { 132, 0, 941 }, { 135, 11, 1175 }, { 4, 0, 250 },
+ { 7, 0, 1612 }, { 11, 0, 186 }, { 12, 0, 133 }, { 6, 10, 127 },
+ { 7, 10, 1511 }, { 8, 10, 613 }, { 12, 10, 495 }, { 12, 10, 586 },
+ { 12, 10, 660 }, { 12, 10, 668 }, { 14, 10, 385 }, { 15, 10, 118 },
+ { 17, 10, 20 }, { 146, 10, 98 }, { 6, 0, 1785 }, { 133, 11, 816 },
+ { 134, 0, 1339 }, { 7, 0, 961 }, { 7, 0, 1085 }, { 7, 0, 1727 },
+ { 8, 0, 462 }, { 6, 10, 230 }, { 135, 11, 1727 }, { 9, 0, 636 },
+ { 135, 10, 1954 }, { 132, 0, 780 }, { 5, 11, 869 }, { 5, 11, 968 },
+ { 6, 11, 1626 }, { 8, 11, 734 }, { 136, 11, 784 }, { 4, 11, 542 },
+ { 6, 11, 1716 }, { 6, 11, 1727 }, { 7, 11, 1082 }, { 7, 11, 1545 },
+ { 8, 11, 56 }, { 8, 11, 118 }, { 8, 11, 412 }, { 8, 11, 564 },
+ { 9, 11, 888 }, { 9, 11, 908 }, { 10, 11, 50 }, { 10, 11, 423 },
+ { 11, 11, 685 }, { 11, 11, 697 }, { 11, 11, 933 }, { 12, 11, 299 },
+ { 13, 11, 126 }, { 13, 11, 136 }, { 13, 11, 170 }, { 141, 11, 190 },
+ { 134, 11, 226 }, { 4, 11, 232 }, { 9, 11, 202 }, { 10, 11, 474 },
+ { 140, 11, 433 }, { 137, 11, 500 }, { 5, 0, 529 }, { 136, 10, 68 },
+ { 132, 10, 654 }, { 4, 10, 156 }, { 7, 10, 998 }, { 7, 10, 1045 },
+ { 7, 10, 1860 }, { 9, 10, 48 }, { 9, 10, 692 }, { 11, 10, 419 },
+ { 139, 10, 602 }, { 7, 0, 1276 }, { 8, 0, 474 }, { 9, 0, 652 },
+ { 6, 11, 108 }, { 7, 11, 1003 }, { 7, 11, 1181 }, { 136, 11, 343 },
+ { 7, 11, 1264 }, { 7, 11, 1678 }, { 11, 11, 945 }, { 12, 11, 341 },
+ { 12, 11, 471 }, { 140, 11, 569 }, { 134, 11, 1712 }, { 5, 0, 948 },
+ { 12, 0, 468 }, { 19, 0, 96 }, { 148, 0, 24 }, { 4, 11, 133 },
+ { 7, 11, 711 }, { 7, 11, 1298 }, { 7, 11, 1585 }, { 135, 11, 1929 },
+ { 6, 0, 753 }, { 140, 0, 657 }, { 139, 0, 941 }, { 6, 11, 99 },
+ { 7, 11, 1808 }, { 145, 11, 57 }, { 6, 11, 574 }, { 7, 11, 428 },
+ { 7, 11, 1250 }, { 10, 11, 669 }, { 11, 11, 485 }, { 11, 11, 840 },
+ { 12, 11, 300 }, { 142, 11, 250 }, { 4, 0, 532 }, { 5, 0, 706 },
+ { 135, 0, 662 }, { 5, 0, 837 }, { 6, 0, 1651 }, { 139, 0, 985 },
+ { 7, 0, 1861 }, { 9, 10, 197 }, { 10, 10, 300 }, { 12, 10, 473 },
+ { 13, 10, 90 }, { 141, 10, 405 }, { 137, 11, 252 }, { 6, 11, 323 },
+ { 135, 11, 1564 }, { 4, 0, 330 }, { 4, 0, 863 }, { 7, 0, 933 },
+ { 7, 0, 2012 }, { 8, 0, 292 }, { 7, 11, 461 }, { 8, 11, 775 },
+ { 138, 11, 435 }, { 132, 10, 606 }, { 4, 11, 655 }, { 7, 11, 850 },
+ { 17, 11, 75 }, { 146, 11, 137 }, { 135, 0, 767 }, { 7, 10, 1978 },
+ { 136, 10, 676 }, { 132, 0, 641 }, { 135, 11, 1559 }, { 134, 0, 1233 },
+ { 137, 0, 242 }, { 17, 0, 114 }, { 4, 10, 361 }, { 133, 10, 315 },
+ { 137, 0, 883 }, { 132, 10, 461 }, { 138, 0, 274 }, { 134, 0, 2008 },
+ { 134, 0, 1794 }, { 4, 0, 703 }, { 135, 0, 207 }, { 12, 0, 285 },
+ { 132, 10, 472 }, { 132, 0, 571 }, { 5, 0, 873 }, { 5, 0, 960 },
+ { 8, 0, 823 }, { 9, 0, 881 }, { 136, 11, 577 }, { 7, 0, 617 },
+ { 10, 0, 498 }, { 11, 0, 501 }, { 12, 0, 16 }, { 140, 0, 150 },
+ { 138, 10, 747 }, { 132, 0, 431 }, { 133, 10, 155 }, { 11, 0, 283 },
+ { 11, 0, 567 }, { 7, 10, 163 }, { 8, 10, 319 }, { 9, 10, 402 },
+ { 10, 10, 24 }, { 10, 10, 681 }, { 11, 10, 200 }, { 12, 10, 253 },
+ { 12, 10, 410 }, { 142, 10, 219 }, { 4, 11, 413 }, { 5, 11, 677 },
+ { 8, 11, 432 }, { 140, 11, 280 }, { 9, 0, 401 }, { 5, 10, 475 },
+ { 7, 10, 1780 }, { 11, 10, 297 }, { 11, 10, 558 }, { 14, 10, 322 },
+ { 147, 10, 76 }, { 6, 0, 781 }, { 9, 0, 134 }, { 10, 0, 2 },
+ { 10, 0, 27 }, { 10, 0, 333 }, { 11, 0, 722 }, { 143, 0, 1 },
+ { 5, 0, 33 }, { 6, 0, 470 }, { 139, 0, 424 }, { 135, 0, 2006 },
+ { 12, 0, 783 }, { 135, 10, 1956 }, { 136, 0, 274 }, { 135, 0, 1882 },
+ { 132, 0, 794 }, { 135, 0, 1848 }, { 5, 10, 944 }, { 134, 10, 1769 },
+ { 6, 0, 47 }, { 7, 0, 90 }, { 7, 0, 664 }, { 7, 0, 830 },
+ { 7, 0, 1380 }, { 7, 0, 2025 }, { 8, 0, 448 }, { 136, 0, 828 },
+ { 132, 10, 144 }, { 134, 0, 1199 }, { 4, 11, 395 }, { 139, 11, 762 },
+ { 135, 11, 1504 }, { 9, 0, 417 }, { 137, 0, 493 }, { 9, 11, 174 },
+ { 10, 11, 164 }, { 11, 11, 440 }, { 11, 11, 841 }, { 143, 11, 98 },
+ { 134, 11, 426 }, { 139, 11, 1002 }, { 134, 0, 295 }, { 134, 0, 816 },
+ { 6, 10, 247 }, { 137, 10, 555 }, { 133, 0, 1019 }, { 4, 0, 620 },
+ { 5, 11, 476 }, { 10, 10, 280 }, { 138, 10, 797 }, { 139, 0, 464 },
+ { 5, 11, 76 }, { 6, 11, 458 }, { 6, 11, 497 }, { 7, 11, 764 },
+ { 7, 11, 868 }, { 9, 11, 658 }, { 10, 11, 594 }, { 11, 11, 173 },
+ { 11, 11, 566 }, { 12, 11, 20 }, { 12, 11, 338 }, { 141, 11, 200 },
+ { 134, 0, 208 }, { 4, 11, 526 }, { 7, 11, 1029 }, { 135, 11, 1054 },
+ { 132, 11, 636 }, { 6, 11, 233 }, { 7, 11, 660 }, { 7, 11, 1124 },
+ { 17, 11, 31 }, { 19, 11, 22 }, { 151, 11, 14 }, { 10, 0, 442 },
+ { 133, 10, 428 }, { 10, 0, 930 }, { 140, 0, 778 }, { 6, 0, 68 },
+ { 7, 0, 448 }, { 7, 0, 1629 }, { 7, 0, 1769 }, { 7, 0, 1813 },
+ { 8, 0, 442 }, { 8, 0, 516 }, { 9, 0, 710 }, { 10, 0, 282 },
+ { 10, 0, 722 }, { 7, 10, 1717 }, { 138, 10, 546 }, { 134, 0, 1128 },
+ { 11, 0, 844 }, { 12, 0, 104 }, { 140, 0, 625 }, { 4, 11, 432 },
+ { 135, 11, 824 }, { 138, 10, 189 }, { 133, 0, 787 }, { 133, 10, 99 },
+ { 4, 11, 279 }, { 7, 11, 301 }, { 137, 11, 362 }, { 8, 0, 491 },
+ { 4, 10, 397 }, { 136, 10, 555 }, { 4, 11, 178 }, { 133, 11, 399 },
+ { 134, 0, 711 }, { 144, 0, 9 }, { 4, 0, 403 }, { 5, 0, 441 },
+ { 7, 0, 450 }, { 10, 0, 840 }, { 11, 0, 101 }, { 12, 0, 193 },
+ { 141, 0, 430 }, { 135, 11, 1246 }, { 12, 10, 398 }, { 20, 10, 39 },
+ { 21, 10, 11 }, { 150, 10, 41 }, { 4, 10, 485 }, { 7, 10, 353 },
+ { 135, 10, 1523 }, { 6, 10, 366 }, { 7, 10, 1384 }, { 7, 10, 1601 },
+ { 135, 11, 1912 }, { 7, 0, 396 }, { 10, 0, 160 }, { 135, 11, 396 },
+ { 137, 10, 282 }, { 134, 11, 1692 }, { 4, 10, 157 }, { 5, 10, 471 },
+ { 6, 11, 202 }, { 10, 11, 448 }, { 11, 11, 208 }, { 12, 11, 360 },
+ { 17, 11, 117 }, { 17, 11, 118 }, { 18, 11, 27 }, { 148, 11, 67 },
+ { 133, 0, 679 }, { 137, 0, 326 }, { 136, 10, 116 }, { 7, 11, 872 },
+ { 10, 11, 516 }, { 139, 11, 167 }, { 132, 11, 224 }, { 5, 11, 546 },
+ { 7, 11, 35 }, { 8, 11, 11 }, { 8, 11, 12 }, { 9, 11, 315 },
+ { 9, 11, 533 }, { 10, 11, 802 }, { 11, 11, 166 }, { 12, 11, 525 },
+ { 142, 11, 243 }, { 7, 0, 1128 }, { 135, 11, 1920 }, { 5, 11, 241 },
+ { 8, 11, 242 }, { 9, 11, 451 }, { 10, 11, 667 }, { 11, 11, 598 },
+ { 140, 11, 429 }, { 6, 0, 737 }, { 5, 10, 160 }, { 7, 10, 363 },
+ { 7, 10, 589 }, { 10, 10, 170 }, { 141, 10, 55 }, { 135, 0, 1796 },
+ { 142, 11, 254 }, { 4, 0, 574 }, { 7, 0, 350 }, { 7, 0, 1024 },
+ { 8, 0, 338 }, { 9, 0, 677 }, { 138, 0, 808 }, { 134, 0, 1096 },
+ { 137, 11, 516 }, { 7, 0, 405 }, { 10, 0, 491 }, { 4, 10, 108 },
+ { 4, 11, 366 }, { 139, 10, 498 }, { 11, 11, 337 }, { 142, 11, 303 },
+ { 134, 11, 1736 }, { 7, 0, 1081 }, { 140, 11, 364 }, { 7, 10, 1005 },
+ { 140, 10, 609 }, { 7, 0, 1676 }, { 4, 10, 895 }, { 133, 10, 772 },
+ { 135, 0, 2037 }, { 6, 0, 1207 }, { 11, 11, 916 }, { 142, 11, 419 },
+ { 14, 11, 140 }, { 148, 11, 41 }, { 6, 11, 331 }, { 136, 11, 623 },
+ { 9, 0, 944 }, { 9, 0, 969 }, { 9, 0, 1022 }, { 12, 0, 913 },
+ { 12, 0, 936 }, { 15, 0, 177 }, { 15, 0, 193 }, { 4, 10, 926 },
+ { 133, 10, 983 }, { 5, 0, 354 }, { 135, 11, 506 }, { 8, 0, 598 },
+ { 9, 0, 664 }, { 138, 0, 441 }, { 4, 11, 640 }, { 133, 11, 513 },
+ { 137, 0, 297 }, { 132, 10, 538 }, { 6, 10, 294 }, { 7, 10, 1267 },
+ { 136, 10, 624 }, { 7, 0, 1772 }, { 7, 11, 1888 }, { 8, 11, 289 },
+ { 11, 11, 45 }, { 12, 11, 278 }, { 140, 11, 537 }, { 135, 10, 1325 },
+ { 138, 0, 751 }, { 141, 0, 37 }, { 134, 0, 1828 }, { 132, 10, 757 },
+ { 132, 11, 394 }, { 6, 0, 257 }, { 135, 0, 1522 }, { 4, 0, 582 },
+ { 9, 0, 191 }, { 135, 11, 1931 }, { 7, 11, 574 }, { 7, 11, 1719 },
+ { 137, 11, 145 }, { 132, 11, 658 }, { 10, 0, 790 }, { 132, 11, 369 },
+ { 9, 11, 781 }, { 10, 11, 144 }, { 11, 11, 385 }, { 13, 11, 161 },
+ { 13, 11, 228 }, { 13, 11, 268 }, { 148, 11, 107 }, { 8, 0, 469 },
+ { 10, 0, 47 }, { 136, 11, 374 }, { 6, 0, 306 }, { 7, 0, 1140 },
+ { 7, 0, 1340 }, { 8, 0, 133 }, { 138, 0, 449 }, { 139, 0, 1011 },
+ { 7, 10, 1875 }, { 139, 10, 124 }, { 4, 11, 344 }, { 6, 11, 498 },
+ { 139, 11, 323 }, { 137, 0, 299 }, { 132, 0, 837 }, { 133, 11, 906 },
+ { 5, 0, 329 }, { 8, 0, 260 }, { 138, 0, 10 }, { 134, 0, 1320 },
+ { 4, 0, 657 }, { 146, 0, 158 }, { 135, 0, 1191 }, { 152, 0, 7 },
+ { 6, 0, 1939 }, { 8, 0, 974 }, { 138, 0, 996 }, { 135, 0, 1665 },
+ { 11, 11, 126 }, { 139, 11, 287 }, { 143, 0, 8 }, { 14, 11, 149 },
+ { 14, 11, 399 }, { 143, 11, 57 }, { 5, 0, 66 }, { 7, 0, 1896 },
+ { 136, 0, 288 }, { 7, 0, 175 }, { 10, 0, 494 }, { 5, 10, 150 },
+ { 8, 10, 603 }, { 9, 10, 593 }, { 9, 10, 634 }, { 10, 10, 173 },
+ { 11, 10, 462 }, { 11, 10, 515 }, { 13, 10, 216 }, { 13, 10, 288 },
+ { 142, 10, 400 }, { 134, 0, 1643 }, { 136, 11, 21 }, { 4, 0, 21 },
+ { 5, 0, 91 }, { 5, 0, 648 }, { 5, 0, 750 }, { 5, 0, 781 },
+ { 6, 0, 54 }, { 6, 0, 112 }, { 6, 0, 402 }, { 6, 0, 1732 },
+ { 7, 0, 315 }, { 7, 0, 749 }, { 7, 0, 1427 }, { 7, 0, 1900 },
+ { 9, 0, 78 }, { 9, 0, 508 }, { 10, 0, 611 }, { 10, 0, 811 },
+ { 11, 0, 510 }, { 11, 0, 728 }, { 13, 0, 36 }, { 14, 0, 39 },
+ { 16, 0, 83 }, { 17, 0, 124 }, { 148, 0, 30 }, { 4, 0, 668 },
+ { 136, 0, 570 }, { 10, 0, 322 }, { 10, 0, 719 }, { 139, 0, 407 },
+ { 135, 11, 1381 }, { 136, 11, 193 }, { 12, 10, 108 }, { 141, 10, 291 },
+ { 132, 11, 616 }, { 136, 11, 692 }, { 8, 0, 125 }, { 8, 0, 369 },
+ { 8, 0, 524 }, { 10, 0, 486 }, { 11, 0, 13 }, { 11, 0, 381 },
+ { 11, 0, 736 }, { 11, 0, 766 }, { 11, 0, 845 }, { 13, 0, 114 },
+ { 13, 0, 292 }, { 142, 0, 47 }, { 134, 0, 1247 }, { 6, 0, 1684 },
+ { 6, 0, 1731 }, { 7, 0, 356 }, { 8, 0, 54 }, { 8, 0, 221 },
+ { 9, 0, 225 }, { 9, 0, 356 }, { 10, 0, 77 }, { 10, 0, 446 },
+ { 10, 0, 731 }, { 12, 0, 404 }, { 141, 0, 491 }, { 135, 10, 1777 },
+ { 4, 11, 305 }, { 4, 10, 493 }, { 144, 10, 55 }, { 4, 0, 951 },
+ { 6, 0, 1809 }, { 6, 0, 1849 }, { 8, 0, 846 }, { 8, 0, 866 },
+ { 8, 0, 899 }, { 10, 0, 896 }, { 12, 0, 694 }, { 142, 0, 468 },
+ { 5, 11, 214 }, { 7, 11, 603 }, { 8, 11, 611 }, { 9, 11, 686 },
+ { 10, 11, 88 }, { 11, 11, 459 }, { 11, 11, 496 }, { 12, 11, 463 },
+ { 12, 11, 590 }, { 13, 11, 0 }, { 142, 11, 214 }, { 132, 0, 411 },
+ { 4, 0, 80 }, { 133, 0, 44 }, { 140, 11, 74 }, { 143, 0, 31 },
+ { 7, 0, 669 }, { 6, 10, 568 }, { 7, 10, 1804 }, { 8, 10, 362 },
+ { 8, 10, 410 }, { 8, 10, 830 }, { 9, 10, 514 }, { 11, 10, 649 },
+ { 142, 10, 157 }, { 7, 0, 673 }, { 134, 11, 1703 }, { 132, 10, 625 },
+ { 134, 0, 1303 }, { 5, 0, 299 }, { 135, 0, 1083 }, { 138, 0, 704 },
+ { 6, 0, 275 }, { 7, 0, 408 }, { 6, 10, 158 }, { 7, 10, 129 },
+ { 7, 10, 181 }, { 8, 10, 276 }, { 8, 10, 377 }, { 10, 10, 523 },
+ { 11, 10, 816 }, { 12, 10, 455 }, { 13, 10, 303 }, { 142, 10, 135 },
+ { 4, 0, 219 }, { 7, 0, 367 }, { 7, 0, 1713 }, { 7, 0, 1761 },
+ { 9, 0, 86 }, { 9, 0, 537 }, { 10, 0, 165 }, { 12, 0, 219 },
+ { 140, 0, 561 }, { 8, 0, 216 }, { 4, 10, 1 }, { 4, 11, 737 },
+ { 6, 11, 317 }, { 7, 10, 1143 }, { 7, 10, 1463 }, { 9, 10, 207 },
+ { 9, 10, 390 }, { 9, 10, 467 }, { 10, 11, 98 }, { 11, 11, 294 },
+ { 11, 10, 836 }, { 12, 11, 60 }, { 12, 11, 437 }, { 13, 11, 64 },
+ { 13, 11, 380 }, { 142, 11, 430 }, { 6, 11, 1758 }, { 8, 11, 520 },
+ { 9, 11, 345 }, { 9, 11, 403 }, { 142, 11, 350 }, { 5, 11, 47 },
+ { 10, 11, 242 }, { 138, 11, 579 }, { 5, 11, 139 }, { 7, 11, 1168 },
+ { 138, 11, 539 }, { 135, 0, 1319 }, { 4, 10, 295 }, { 4, 10, 723 },
+ { 5, 10, 895 }, { 7, 10, 1031 }, { 8, 10, 199 }, { 8, 10, 340 },
+ { 9, 10, 153 }, { 9, 10, 215 }, { 10, 10, 21 }, { 10, 10, 59 },
+ { 10, 10, 80 }, { 10, 10, 224 }, { 10, 10, 838 }, { 11, 10, 229 },
+ { 11, 10, 652 }, { 12, 10, 192 }, { 13, 10, 146 }, { 142, 10, 91 },
+ { 140, 0, 428 }, { 137, 10, 51 }, { 133, 0, 514 }, { 5, 10, 309 },
+ { 140, 10, 211 }, { 6, 0, 1010 }, { 5, 10, 125 }, { 8, 10, 77 },
+ { 138, 10, 15 }, { 4, 0, 55 }, { 5, 0, 301 }, { 6, 0, 571 },
+ { 142, 0, 49 }, { 146, 0, 102 }, { 136, 11, 370 }, { 4, 11, 107 },
+ { 7, 11, 613 }, { 8, 11, 358 }, { 8, 11, 439 }, { 8, 11, 504 },
+ { 9, 11, 501 }, { 10, 11, 383 }, { 139, 11, 477 }, { 132, 11, 229 },
+ { 133, 0, 364 }, { 133, 10, 439 }, { 4, 11, 903 }, { 135, 11, 1816 },
+ { 11, 0, 379 }, { 140, 10, 76 }, { 4, 0, 76 }, { 4, 0, 971 },
+ { 7, 0, 1550 }, { 9, 0, 306 }, { 9, 0, 430 }, { 9, 0, 663 },
+ { 10, 0, 683 }, { 10, 0, 921 }, { 11, 0, 427 }, { 11, 0, 753 },
+ { 12, 0, 334 }, { 12, 0, 442 }, { 14, 0, 258 }, { 14, 0, 366 },
+ { 143, 0, 131 }, { 137, 0, 52 }, { 4, 11, 47 }, { 6, 11, 373 },
+ { 7, 11, 452 }, { 7, 11, 543 }, { 7, 11, 1714 }, { 7, 11, 1856 },
+ { 9, 11, 6 }, { 11, 11, 257 }, { 139, 11, 391 }, { 4, 10, 8 },
+ { 7, 10, 1152 }, { 7, 10, 1153 }, { 7, 10, 1715 }, { 9, 10, 374 },
+ { 10, 10, 478 }, { 139, 10, 648 }, { 4, 11, 785 }, { 133, 11, 368 },
+ { 135, 10, 1099 }, { 135, 11, 860 }, { 5, 11, 980 }, { 134, 11, 1754 },
+ { 134, 0, 1258 }, { 6, 0, 1058 }, { 6, 0, 1359 }, { 7, 11, 536 },
+ { 7, 11, 1331 }, { 136, 11, 143 }, { 4, 0, 656 }, { 135, 0, 779 },
+ { 136, 10, 87 }, { 5, 11, 19 }, { 6, 11, 533 }, { 146, 11, 126 },
+ { 7, 0, 144 }, { 138, 10, 438 }, { 5, 11, 395 }, { 5, 11, 951 },
+ { 134, 11, 1776 }, { 135, 0, 1373 }, { 7, 0, 554 }, { 7, 0, 605 },
+ { 141, 0, 10 }, { 4, 10, 69 }, { 5, 10, 122 }, { 9, 10, 656 },
+ { 138, 10, 464 }, { 5, 10, 849 }, { 134, 10, 1633 }, { 5, 0, 838 },
+ { 5, 0, 841 }, { 134, 0, 1649 }, { 133, 0, 1012 }, { 139, 10, 499 },
+ { 7, 10, 476 }, { 7, 10, 1592 }, { 138, 10, 87 }, { 6, 0, 251 },
+ { 7, 0, 365 }, { 7, 0, 1357 }, { 7, 0, 1497 }, { 8, 0, 154 },
+ { 141, 0, 281 }, { 132, 11, 441 }, { 132, 11, 695 }, { 7, 11, 497 },
+ { 9, 11, 387 }, { 147, 11, 81 }, { 133, 0, 340 }, { 14, 10, 283 },
+ { 142, 11, 283 }, { 134, 0, 810 }, { 135, 11, 1894 }, { 139, 0, 495 },
+ { 5, 11, 284 }, { 6, 11, 49 }, { 6, 11, 350 }, { 7, 11, 1 },
+ { 7, 11, 377 }, { 7, 11, 1693 }, { 8, 11, 18 }, { 8, 11, 678 },
+ { 9, 11, 161 }, { 9, 11, 585 }, { 9, 11, 671 }, { 9, 11, 839 },
+ { 11, 11, 912 }, { 141, 11, 427 }, { 5, 10, 859 }, { 7, 10, 1160 },
+ { 8, 10, 107 }, { 9, 10, 291 }, { 9, 10, 439 }, { 10, 10, 663 },
+ { 11, 10, 609 }, { 140, 10, 197 }, { 8, 0, 261 }, { 9, 0, 144 },
+ { 9, 0, 466 }, { 10, 0, 370 }, { 12, 0, 470 }, { 13, 0, 144 },
+ { 142, 0, 348 }, { 137, 0, 897 }, { 6, 0, 248 }, { 9, 0, 546 },
+ { 10, 0, 535 }, { 11, 0, 681 }, { 141, 0, 135 }, { 4, 0, 358 },
+ { 135, 0, 1496 }, { 134, 0, 567 }, { 136, 0, 445 }, { 4, 10, 117 },
+ { 6, 10, 372 }, { 7, 10, 1905 }, { 142, 10, 323 }, { 4, 10, 722 },
+ { 139, 10, 471 }, { 6, 0, 697 }, { 134, 0, 996 }, { 7, 11, 2007 },
+ { 9, 11, 101 }, { 9, 11, 450 }, { 10, 11, 66 }, { 10, 11, 842 },
+ { 11, 11, 536 }, { 140, 11, 587 }, { 132, 0, 577 }, { 134, 0, 1336 },
+ { 9, 10, 5 }, { 12, 10, 216 }, { 12, 10, 294 }, { 12, 10, 298 },
+ { 12, 10, 400 }, { 12, 10, 518 }, { 13, 10, 229 }, { 143, 10, 139 },
+ { 6, 0, 174 }, { 138, 0, 917 }, { 134, 10, 1774 }, { 5, 10, 12 },
+ { 7, 10, 375 }, { 9, 10, 88 }, { 9, 10, 438 }, { 11, 11, 62 },
+ { 139, 10, 270 }, { 134, 11, 1766 }, { 6, 11, 0 }, { 7, 11, 84 },
+ { 7, 10, 816 }, { 7, 10, 1241 }, { 9, 10, 283 }, { 9, 10, 520 },
+ { 10, 10, 213 }, { 10, 10, 307 }, { 10, 10, 463 }, { 10, 10, 671 },
+ { 10, 10, 746 }, { 11, 10, 401 }, { 11, 10, 794 }, { 11, 11, 895 },
+ { 12, 10, 517 }, { 17, 11, 11 }, { 18, 10, 107 }, { 147, 10, 115 },
+ { 5, 0, 878 }, { 133, 0, 972 }, { 6, 11, 1665 }, { 7, 11, 256 },
+ { 7, 11, 1388 }, { 138, 11, 499 }, { 4, 10, 258 }, { 136, 10, 639 },
+ { 4, 11, 22 }, { 5, 11, 10 }, { 6, 10, 22 }, { 7, 11, 848 },
+ { 7, 10, 903 }, { 7, 10, 1963 }, { 8, 11, 97 }, { 138, 10, 577 },
+ { 5, 10, 681 }, { 136, 10, 782 }, { 133, 11, 481 }, { 132, 0, 351 },
+ { 4, 10, 664 }, { 5, 10, 804 }, { 139, 10, 1013 }, { 6, 11, 134 },
+ { 7, 11, 437 }, { 7, 11, 959 }, { 9, 11, 37 }, { 14, 11, 285 },
+ { 14, 11, 371 }, { 144, 11, 60 }, { 7, 11, 486 }, { 8, 11, 155 },
+ { 11, 11, 93 }, { 140, 11, 164 }, { 132, 0, 286 }, { 7, 0, 438 },
+ { 7, 0, 627 }, { 7, 0, 1516 }, { 8, 0, 40 }, { 9, 0, 56 },
+ { 9, 0, 294 }, { 10, 0, 30 }, { 11, 0, 969 }, { 11, 0, 995 },
+ { 146, 0, 148 }, { 5, 11, 591 }, { 135, 11, 337 }, { 134, 0, 1950 },
+ { 133, 10, 32 }, { 138, 11, 500 }, { 5, 11, 380 }, { 5, 11, 650 },
+ { 136, 11, 310 }, { 4, 11, 364 }, { 7, 11, 1156 }, { 7, 11, 1187 },
+ { 137, 11, 409 }, { 4, 0, 738 }, { 134, 11, 482 }, { 4, 11, 781 },
+ { 6, 11, 487 }, { 7, 11, 926 }, { 8, 11, 263 }, { 139, 11, 500 },
+ { 135, 11, 418 }, { 6, 0, 2047 }, { 10, 0, 969 }, { 4, 10, 289 },
+ { 7, 10, 629 }, { 7, 10, 1698 }, { 7, 10, 1711 }, { 140, 10, 215 },
+ { 6, 10, 450 }, { 136, 10, 109 }, { 134, 0, 818 }, { 136, 10, 705 },
+ { 133, 0, 866 }, { 4, 11, 94 }, { 135, 11, 1265 }, { 132, 11, 417 },
+ { 134, 0, 1467 }, { 135, 10, 1238 }, { 4, 0, 972 }, { 6, 0, 1851 },
+ { 134, 0, 1857 }, { 134, 0, 355 }, { 133, 0, 116 }, { 132, 0, 457 },
+ { 135, 11, 1411 }, { 4, 11, 408 }, { 4, 11, 741 }, { 135, 11, 500 },
+ { 134, 10, 26 }, { 142, 11, 137 }, { 5, 0, 527 }, { 6, 0, 189 },
+ { 7, 0, 859 }, { 136, 0, 267 }, { 11, 0, 104 }, { 11, 0, 554 },
+ { 15, 0, 60 }, { 143, 0, 125 }, { 134, 0, 1613 }, { 4, 10, 414 },
+ { 5, 10, 467 }, { 9, 10, 654 }, { 10, 10, 451 }, { 12, 10, 59 },
+ { 141, 10, 375 }, { 135, 10, 17 }, { 134, 0, 116 }, { 135, 11, 541 },
+ { 135, 10, 955 }, { 6, 11, 73 }, { 135, 11, 177 }, { 133, 11, 576 },
+ { 134, 0, 886 }, { 133, 0, 487 }, { 4, 0, 86 }, { 5, 0, 667 },
+ { 5, 0, 753 }, { 6, 0, 316 }, { 6, 0, 455 }, { 135, 0, 946 },
+ { 142, 11, 231 }, { 150, 0, 45 }, { 134, 0, 863 }, { 134, 0, 1953 },
+ { 6, 10, 280 }, { 10, 10, 502 }, { 11, 10, 344 }, { 140, 10, 38 },
+ { 4, 0, 79 }, { 7, 0, 1773 }, { 10, 0, 450 }, { 11, 0, 589 },
+ { 13, 0, 332 }, { 13, 0, 493 }, { 14, 0, 183 }, { 14, 0, 334 },
+ { 14, 0, 362 }, { 14, 0, 368 }, { 14, 0, 376 }, { 14, 0, 379 },
+ { 19, 0, 90 }, { 19, 0, 103 }, { 19, 0, 127 }, { 148, 0, 90 },
+ { 5, 10, 45 }, { 7, 10, 1161 }, { 11, 10, 448 }, { 11, 10, 880 },
+ { 13, 10, 139 }, { 13, 10, 407 }, { 15, 10, 16 }, { 17, 10, 95 },
+ { 18, 10, 66 }, { 18, 10, 88 }, { 18, 10, 123 }, { 149, 10, 7 },
+ { 136, 10, 777 }, { 4, 10, 410 }, { 135, 10, 521 }, { 135, 10, 1778 },
+ { 135, 11, 538 }, { 142, 0, 381 }, { 133, 11, 413 }, { 134, 0, 1142 },
+ { 6, 0, 1189 }, { 136, 11, 495 }, { 5, 0, 663 }, { 6, 0, 1962 },
+ { 134, 0, 2003 }, { 7, 11, 54 }, { 8, 11, 312 }, { 10, 11, 191 },
+ { 10, 11, 614 }, { 140, 11, 567 }, { 132, 10, 436 }, { 133, 0, 846 },
+ { 10, 0, 528 }, { 11, 0, 504 }, { 7, 10, 1587 }, { 135, 10, 1707 },
+ { 5, 0, 378 }, { 8, 0, 465 }, { 9, 0, 286 }, { 10, 0, 185 },
+ { 10, 0, 562 }, { 10, 0, 635 }, { 11, 0, 31 }, { 11, 0, 393 },
+ { 13, 0, 312 }, { 18, 0, 65 }, { 18, 0, 96 }, { 147, 0, 89 },
+ { 7, 0, 899 }, { 14, 0, 325 }, { 6, 11, 468 }, { 7, 11, 567 },
+ { 7, 11, 1478 }, { 8, 11, 530 }, { 142, 11, 290 }, { 7, 0, 1880 },
+ { 9, 0, 680 }, { 139, 0, 798 }, { 134, 0, 1770 }, { 132, 0, 648 },
+ { 150, 11, 35 }, { 5, 0, 945 }, { 6, 0, 1656 }, { 6, 0, 1787 },
+ { 7, 0, 167 }, { 8, 0, 824 }, { 9, 0, 391 }, { 10, 0, 375 },
+ { 139, 0, 185 }, { 6, 11, 484 }, { 135, 11, 822 }, { 134, 0, 2046 },
+ { 7, 0, 1645 }, { 8, 0, 352 }, { 137, 0, 249 }, { 132, 0, 152 },
+ { 6, 0, 611 }, { 135, 0, 1733 }, { 6, 11, 1724 }, { 135, 11, 2022 },
+ { 133, 0, 1006 }, { 141, 11, 96 }, { 5, 0, 420 }, { 135, 0, 1449 },
+ { 146, 11, 149 }, { 135, 0, 832 }, { 135, 10, 663 }, { 133, 0, 351 },
+ { 5, 0, 40 }, { 7, 0, 598 }, { 7, 0, 1638 }, { 8, 0, 78 },
+ { 9, 0, 166 }, { 9, 0, 640 }, { 9, 0, 685 }, { 9, 0, 773 },
+ { 11, 0, 215 }, { 13, 0, 65 }, { 14, 0, 172 }, { 14, 0, 317 },
+ { 145, 0, 6 }, { 8, 0, 60 }, { 9, 0, 343 }, { 139, 0, 769 },
+ { 134, 0, 1354 }, { 132, 0, 724 }, { 137, 0, 745 }, { 132, 11, 474 },
+ { 7, 0, 1951 }, { 8, 0, 765 }, { 8, 0, 772 }, { 140, 0, 671 },
+ { 7, 0, 108 }, { 8, 0, 219 }, { 8, 0, 388 }, { 9, 0, 775 },
+ { 11, 0, 275 }, { 140, 0, 464 }, { 137, 0, 639 }, { 135, 10, 503 },
+ { 133, 11, 366 }, { 5, 0, 15 }, { 6, 0, 56 }, { 7, 0, 1758 },
+ { 8, 0, 500 }, { 9, 0, 730 }, { 11, 0, 331 }, { 13, 0, 150 },
+ { 14, 0, 282 }, { 5, 11, 305 }, { 9, 11, 560 }, { 141, 11, 208 },
+ { 4, 10, 113 }, { 5, 10, 163 }, { 5, 10, 735 }, { 7, 10, 1009 },
+ { 9, 10, 9 }, { 9, 10, 771 }, { 12, 10, 90 }, { 13, 10, 138 },
+ { 13, 10, 410 }, { 143, 10, 128 }, { 4, 10, 324 }, { 138, 10, 104 },
+ { 135, 11, 466 }, { 142, 11, 27 }, { 134, 0, 1886 }, { 5, 0, 205 },
+ { 6, 0, 438 }, { 9, 0, 711 }, { 4, 11, 480 }, { 6, 11, 167 },
+ { 6, 11, 302 }, { 6, 11, 1642 }, { 7, 11, 130 }, { 7, 11, 656 },
+ { 7, 11, 837 }, { 7, 11, 1547 }, { 7, 11, 1657 }, { 8, 11, 429 },
+ { 9, 11, 228 }, { 10, 11, 643 }, { 13, 11, 289 }, { 13, 11, 343 },
+ { 147, 11, 101 }, { 134, 0, 865 }, { 6, 0, 2025 }, { 136, 0, 965 },
+ { 7, 11, 278 }, { 10, 11, 739 }, { 11, 11, 708 }, { 141, 11, 348 },
+ { 133, 0, 534 }, { 135, 11, 1922 }, { 137, 0, 691 }, { 4, 10, 935 },
+ { 133, 10, 823 }, { 6, 0, 443 }, { 9, 0, 237 }, { 9, 0, 571 },
+ { 9, 0, 695 }, { 10, 0, 139 }, { 11, 0, 715 }, { 12, 0, 417 },
+ { 141, 0, 421 }, { 5, 10, 269 }, { 7, 10, 434 }, { 7, 10, 891 },
+ { 8, 10, 339 }, { 9, 10, 702 }, { 11, 10, 594 }, { 11, 10, 718 },
+ { 145, 10, 100 }, { 6, 0, 1555 }, { 7, 0, 878 }, { 9, 10, 485 },
+ { 141, 10, 264 }, { 134, 10, 1713 }, { 7, 10, 1810 }, { 11, 10, 866 },
+ { 12, 10, 103 }, { 141, 10, 495 }, { 135, 10, 900 }, { 6, 0, 1410 },
+ { 9, 11, 316 }, { 139, 11, 256 }, { 4, 0, 995 }, { 135, 0, 1033 },
+ { 132, 0, 578 }, { 10, 0, 881 }, { 12, 0, 740 }, { 12, 0, 743 },
+ { 140, 0, 759 }, { 132, 0, 822 }, { 133, 0, 923 }, { 142, 10, 143 },
+ { 135, 11, 1696 }, { 6, 11, 363 }, { 7, 11, 1955 }, { 136, 11, 725 },
+ { 132, 0, 924 }, { 133, 0, 665 }, { 135, 10, 2029 }, { 135, 0, 1901 },
+ { 4, 0, 265 }, { 6, 0, 1092 }, { 6, 0, 1417 }, { 7, 0, 807 },
+ { 135, 0, 950 }, { 5, 0, 93 }, { 12, 0, 267 }, { 141, 0, 498 },
+ { 135, 0, 1451 }, { 5, 11, 813 }, { 135, 11, 2046 }, { 5, 10, 625 },
+ { 135, 10, 1617 }, { 135, 0, 747 }, { 6, 0, 788 }, { 137, 0, 828 },
+ { 7, 0, 184 }, { 11, 0, 307 }, { 11, 0, 400 }, { 15, 0, 130 },
+ { 5, 11, 712 }, { 7, 11, 1855 }, { 8, 10, 425 }, { 8, 10, 693 },
+ { 9, 10, 720 }, { 10, 10, 380 }, { 10, 10, 638 }, { 11, 11, 17 },
+ { 11, 10, 473 }, { 12, 10, 61 }, { 13, 11, 321 }, { 144, 11, 67 },
+ { 135, 0, 198 }, { 6, 11, 320 }, { 7, 11, 781 }, { 7, 11, 1921 },
+ { 9, 11, 55 }, { 10, 11, 186 }, { 10, 11, 273 }, { 10, 11, 664 },
+ { 10, 11, 801 }, { 11, 11, 996 }, { 11, 11, 997 }, { 13, 11, 157 },
+ { 142, 11, 170 }, { 136, 11, 271 }, { 135, 0, 994 }, { 7, 11, 103 },
+ { 7, 11, 863 }, { 11, 11, 184 }, { 14, 11, 299 }, { 145, 11, 62 },
+ { 11, 10, 551 }, { 142, 10, 159 }, { 5, 0, 233 }, { 5, 0, 320 },
+ { 6, 0, 140 }, { 8, 0, 295 }, { 8, 0, 615 }, { 136, 11, 615 },
+ { 133, 0, 978 }, { 4, 0, 905 }, { 6, 0, 1701 }, { 137, 0, 843 },
+ { 132, 10, 168 }, { 4, 0, 974 }, { 8, 0, 850 }, { 12, 0, 709 },
+ { 12, 0, 768 }, { 140, 0, 786 }, { 135, 10, 91 }, { 152, 0, 6 },
+ { 138, 10, 532 }, { 135, 10, 1884 }, { 132, 0, 509 }, { 6, 0, 1307 },
+ { 135, 0, 273 }, { 5, 11, 77 }, { 7, 11, 1455 }, { 10, 11, 843 },
+ { 19, 11, 73 }, { 150, 11, 5 }, { 132, 11, 458 }, { 135, 11, 1420 },
+ { 6, 11, 109 }, { 138, 11, 382 }, { 6, 0, 201 }, { 6, 11, 330 },
+ { 7, 10, 70 }, { 7, 11, 1084 }, { 10, 10, 240 }, { 11, 11, 142 },
+ { 147, 10, 93 }, { 7, 0, 1041 }, { 140, 11, 328 }, { 133, 11, 354 },
+ { 134, 0, 1040 }, { 133, 0, 693 }, { 134, 0, 774 }, { 139, 0, 234 },
+ { 132, 0, 336 }, { 7, 0, 1399 }, { 139, 10, 392 }, { 20, 0, 22 },
+ { 148, 11, 22 }, { 5, 0, 802 }, { 7, 0, 2021 }, { 136, 0, 805 },
+ { 5, 0, 167 }, { 5, 0, 899 }, { 6, 0, 410 }, { 137, 0, 777 },
+ { 137, 0, 789 }, { 134, 0, 1705 }, { 7, 10, 655 }, { 135, 10, 1844 },
+ { 4, 10, 145 }, { 6, 10, 176 }, { 7, 10, 395 }, { 137, 10, 562 },
+ { 132, 10, 501 }, { 135, 0, 10 }, { 5, 0, 11 }, { 6, 0, 117 },
+ { 6, 0, 485 }, { 7, 0, 1133 }, { 9, 0, 582 }, { 9, 0, 594 },
+ { 10, 0, 82 }, { 11, 0, 21 }, { 11, 0, 818 }, { 12, 0, 535 },
+ { 13, 0, 86 }, { 20, 0, 91 }, { 23, 0, 13 }, { 134, 10, 509 },
+ { 4, 0, 264 }, { 7, 0, 1067 }, { 8, 0, 204 }, { 8, 0, 385 },
+ { 139, 0, 953 }, { 139, 11, 737 }, { 138, 0, 56 }, { 134, 0, 1917 },
+ { 133, 0, 470 }, { 10, 11, 657 }, { 14, 11, 297 }, { 142, 11, 361 },
+ { 135, 11, 412 }, { 7, 0, 1198 }, { 7, 11, 1198 }, { 8, 11, 556 },
+ { 14, 11, 123 }, { 14, 11, 192 }, { 143, 11, 27 }, { 7, 11, 1985 },
+ { 14, 11, 146 }, { 15, 11, 42 }, { 16, 11, 23 }, { 17, 11, 86 },
+ { 146, 11, 17 }, { 11, 0, 1015 }, { 136, 11, 122 }, { 4, 10, 114 },
+ { 9, 10, 492 }, { 13, 10, 462 }, { 142, 10, 215 }, { 4, 10, 77 },
+ { 5, 10, 361 }, { 6, 10, 139 }, { 6, 10, 401 }, { 6, 10, 404 },
+ { 7, 10, 413 }, { 7, 10, 715 }, { 7, 10, 1716 }, { 11, 10, 279 },
+ { 12, 10, 179 }, { 12, 10, 258 }, { 13, 10, 244 }, { 142, 10, 358 },
+ { 134, 10, 1717 }, { 7, 10, 1061 }, { 8, 10, 82 }, { 11, 10, 250 },
+ { 12, 10, 420 }, { 141, 10, 184 }, { 133, 0, 715 }, { 135, 10, 724 },
+ { 9, 0, 919 }, { 9, 0, 922 }, { 9, 0, 927 }, { 9, 0, 933 },
+ { 9, 0, 962 }, { 9, 0, 1000 }, { 9, 0, 1002 }, { 9, 0, 1021 },
+ { 12, 0, 890 }, { 12, 0, 907 }, { 12, 0, 930 }, { 15, 0, 207 },
+ { 15, 0, 228 }, { 15, 0, 238 }, { 149, 0, 61 }, { 8, 0, 794 },
+ { 9, 0, 400 }, { 10, 0, 298 }, { 142, 0, 228 }, { 5, 11, 430 },
+ { 5, 11, 932 }, { 6, 11, 131 }, { 7, 11, 417 }, { 9, 11, 522 },
+ { 11, 11, 314 }, { 141, 11, 390 }, { 132, 0, 867 }, { 8, 0, 724 },
+ { 132, 11, 507 }, { 137, 11, 261 }, { 4, 11, 343 }, { 133, 11, 511 },
+ { 6, 0, 190 }, { 7, 0, 768 }, { 135, 0, 1170 }, { 6, 10, 513 },
+ { 135, 10, 1052 }, { 7, 11, 455 }, { 138, 11, 591 }, { 134, 0, 1066 },
+ { 137, 10, 899 }, { 14, 0, 67 }, { 147, 0, 60 }, { 4, 0, 948 },
+ { 18, 0, 174 }, { 146, 0, 176 }, { 135, 0, 1023 }, { 7, 10, 1417 },
+ { 12, 10, 382 }, { 17, 10, 48 }, { 152, 10, 12 }, { 134, 11, 575 },
+ { 132, 0, 764 }, { 6, 10, 545 }, { 7, 10, 565 }, { 7, 10, 1669 },
+ { 10, 10, 114 }, { 11, 10, 642 }, { 140, 10, 618 }, { 6, 0, 137 },
+ { 9, 0, 75 }, { 9, 0, 253 }, { 10, 0, 194 }, { 138, 0, 444 },
+ { 4, 0, 756 }, { 133, 10, 5 }, { 8, 0, 1008 }, { 135, 10, 192 },
+ { 132, 0, 842 }, { 11, 0, 643 }, { 12, 0, 115 }, { 136, 10, 763 },
+ { 139, 0, 67 }, { 133, 10, 759 }, { 4, 0, 821 }, { 5, 0, 760 },
+ { 7, 0, 542 }, { 8, 0, 135 }, { 8, 0, 496 }, { 135, 11, 580 },
+ { 7, 10, 370 }, { 7, 10, 1007 }, { 7, 10, 1177 }, { 135, 10, 1565 },
+ { 135, 10, 1237 }, { 140, 0, 736 }, { 7, 0, 319 }, { 7, 0, 355 },
+ { 7, 0, 763 }, { 10, 0, 389 }, { 145, 0, 43 }, { 8, 11, 333 },
+ { 138, 11, 182 }, { 4, 10, 87 }, { 5, 10, 250 }, { 141, 10, 298 },
+ { 138, 0, 786 }, { 134, 0, 2044 }, { 8, 11, 330 }, { 140, 11, 477 },
+ { 135, 11, 1338 }, { 132, 11, 125 }, { 134, 0, 1030 }, { 134, 0, 1083 },
+ { 132, 11, 721 }, { 135, 10, 814 }, { 7, 11, 776 }, { 8, 11, 145 },
+ { 147, 11, 56 }, { 134, 0, 1226 }, { 4, 10, 57 }, { 7, 10, 1195 },
+ { 7, 10, 1438 }, { 7, 10, 1548 }, { 7, 10, 1835 }, { 7, 10, 1904 },
+ { 9, 10, 757 }, { 10, 10, 604 }, { 139, 10, 519 }, { 7, 11, 792 },
+ { 8, 11, 147 }, { 10, 11, 821 }, { 139, 11, 1021 }, { 137, 11, 797 },
+ { 4, 0, 58 }, { 5, 0, 286 }, { 6, 0, 319 }, { 7, 0, 402 },
+ { 7, 0, 1254 }, { 7, 0, 1903 }, { 8, 0, 356 }, { 140, 0, 408 },
+ { 4, 0, 389 }, { 4, 0, 815 }, { 9, 0, 181 }, { 9, 0, 255 },
+ { 10, 0, 8 }, { 10, 0, 29 }, { 10, 0, 816 }, { 11, 0, 311 },
+ { 11, 0, 561 }, { 12, 0, 67 }, { 141, 0, 181 }, { 7, 11, 1472 },
+ { 135, 11, 1554 }, { 7, 11, 1071 }, { 7, 11, 1541 }, { 7, 11, 1767 },
+ { 7, 11, 1806 }, { 7, 11, 1999 }, { 9, 11, 248 }, { 10, 11, 400 },
+ { 11, 11, 162 }, { 11, 11, 178 }, { 11, 11, 242 }, { 12, 11, 605 },
+ { 15, 11, 26 }, { 144, 11, 44 }, { 5, 11, 168 }, { 5, 11, 930 },
+ { 8, 11, 74 }, { 9, 11, 623 }, { 12, 11, 500 }, { 12, 11, 579 },
+ { 13, 11, 41 }, { 143, 11, 93 }, { 6, 11, 220 }, { 7, 11, 1101 },
+ { 141, 11, 105 }, { 5, 0, 474 }, { 7, 0, 507 }, { 4, 10, 209 },
+ { 7, 11, 507 }, { 135, 10, 902 }, { 132, 0, 427 }, { 6, 0, 413 },
+ { 7, 10, 335 }, { 7, 10, 1437 }, { 7, 10, 1668 }, { 8, 10, 553 },
+ { 8, 10, 652 }, { 8, 10, 656 }, { 9, 10, 558 }, { 11, 10, 743 },
+ { 149, 10, 18 }, { 132, 0, 730 }, { 6, 11, 19 }, { 7, 11, 1413 },
+ { 139, 11, 428 }, { 133, 0, 373 }, { 132, 10, 559 }, { 7, 11, 96 },
+ { 8, 11, 401 }, { 137, 11, 896 }, { 7, 0, 799 }, { 7, 0, 1972 },
+ { 5, 10, 1017 }, { 138, 10, 511 }, { 135, 0, 1793 }, { 7, 11, 1961 },
+ { 7, 11, 1965 }, { 8, 11, 702 }, { 136, 11, 750 }, { 8, 11, 150 },
+ { 8, 11, 737 }, { 140, 11, 366 }, { 132, 0, 322 }, { 133, 10, 709 },
+ { 8, 11, 800 }, { 9, 11, 148 }, { 9, 11, 872 }, { 9, 11, 890 },
+ { 11, 11, 309 }, { 11, 11, 1001 }, { 13, 11, 267 }, { 141, 11, 323 },
+ { 134, 10, 1745 }, { 7, 0, 290 }, { 136, 10, 206 }, { 7, 0, 1651 },
+ { 145, 0, 89 }, { 139, 0, 2 }, { 132, 0, 672 }, { 6, 0, 1860 },
+ { 8, 0, 905 }, { 10, 0, 844 }, { 10, 0, 846 }, { 10, 0, 858 },
+ { 12, 0, 699 }, { 12, 0, 746 }, { 140, 0, 772 }, { 135, 11, 424 },
+ { 133, 11, 547 }, { 133, 0, 737 }, { 5, 11, 490 }, { 6, 11, 615 },
+ { 6, 11, 620 }, { 135, 11, 683 }, { 6, 0, 746 }, { 134, 0, 1612 },
+ { 132, 10, 776 }, { 9, 11, 385 }, { 149, 11, 17 }, { 133, 0, 145 },
+ { 135, 10, 1272 }, { 7, 0, 884 }, { 140, 0, 124 }, { 4, 0, 387 },
+ { 135, 0, 1288 }, { 5, 11, 133 }, { 136, 10, 406 }, { 136, 11, 187 },
+ { 6, 0, 679 }, { 8, 11, 8 }, { 138, 11, 0 }, { 135, 0, 550 },
+ { 135, 11, 798 }, { 136, 11, 685 }, { 7, 11, 1086 }, { 145, 11, 46 },
+ { 8, 10, 175 }, { 10, 10, 168 }, { 138, 10, 573 }, { 135, 0, 1305 },
+ { 4, 0, 576 }, { 135, 0, 1263 }, { 6, 0, 686 }, { 134, 0, 1563 },
+ { 134, 0, 607 }, { 5, 0, 919 }, { 134, 0, 1673 }, { 148, 0, 37 },
+ { 8, 11, 774 }, { 10, 11, 670 }, { 140, 11, 51 }, { 133, 10, 784 },
+ { 139, 10, 882 }, { 4, 0, 82 }, { 5, 0, 333 }, { 5, 0, 904 },
+ { 6, 0, 207 }, { 7, 0, 325 }, { 7, 0, 1726 }, { 8, 0, 101 },
+ { 10, 0, 778 }, { 139, 0, 220 }, { 135, 11, 371 }, { 132, 0, 958 },
+ { 133, 0, 903 }, { 4, 11, 127 }, { 5, 11, 350 }, { 6, 11, 356 },
+ { 8, 11, 426 }, { 9, 11, 572 }, { 10, 11, 247 }, { 139, 11, 312 },
+ { 140, 0, 147 }, { 6, 11, 59 }, { 7, 11, 885 }, { 9, 11, 603 },
+ { 141, 11, 397 }, { 10, 0, 367 }, { 9, 10, 14 }, { 9, 10, 441 },
+ { 139, 10, 9 }, { 11, 10, 966 }, { 12, 10, 287 }, { 13, 10, 342 },
+ { 13, 10, 402 }, { 15, 10, 110 }, { 143, 10, 163 }, { 134, 0, 690 },
+ { 132, 0, 705 }, { 9, 0, 651 }, { 11, 0, 971 }, { 13, 0, 273 },
+ { 7, 10, 1428 }, { 7, 10, 1640 }, { 7, 10, 1867 }, { 9, 10, 169 },
+ { 9, 10, 182 }, { 9, 10, 367 }, { 9, 10, 478 }, { 9, 10, 506 },
+ { 9, 10, 551 }, { 9, 10, 557 }, { 9, 10, 648 }, { 9, 10, 697 },
+ { 9, 10, 705 }, { 9, 10, 725 }, { 9, 10, 787 }, { 9, 10, 794 },
+ { 10, 10, 198 }, { 10, 10, 214 }, { 10, 10, 267 }, { 10, 10, 275 },
+ { 10, 10, 456 }, { 10, 10, 551 }, { 10, 10, 561 }, { 10, 10, 613 },
+ { 10, 10, 627 }, { 10, 10, 668 }, { 10, 10, 675 }, { 10, 10, 691 },
+ { 10, 10, 695 }, { 10, 10, 707 }, { 10, 10, 715 }, { 11, 10, 183 },
+ { 11, 10, 201 }, { 11, 10, 262 }, { 11, 10, 352 }, { 11, 10, 439 },
+ { 11, 10, 493 }, { 11, 10, 572 }, { 11, 10, 591 }, { 11, 10, 608 },
+ { 11, 10, 611 }, { 11, 10, 646 }, { 11, 10, 674 }, { 11, 10, 711 },
+ { 11, 10, 751 }, { 11, 10, 761 }, { 11, 10, 776 }, { 11, 10, 785 },
+ { 11, 10, 850 }, { 11, 10, 853 }, { 11, 10, 862 }, { 11, 10, 865 },
+ { 11, 10, 868 }, { 11, 10, 875 }, { 11, 10, 898 }, { 11, 10, 902 },
+ { 11, 10, 903 }, { 11, 10, 910 }, { 11, 10, 932 }, { 11, 10, 942 },
+ { 11, 10, 957 }, { 11, 10, 967 }, { 11, 10, 972 }, { 12, 10, 148 },
+ { 12, 10, 195 }, { 12, 10, 220 }, { 12, 10, 237 }, { 12, 10, 318 },
+ { 12, 10, 339 }, { 12, 10, 393 }, { 12, 10, 445 }, { 12, 10, 450 },
+ { 12, 10, 474 }, { 12, 10, 505 }, { 12, 10, 509 }, { 12, 10, 533 },
+ { 12, 10, 591 }, { 12, 10, 594 }, { 12, 10, 597 }, { 12, 10, 621 },
+ { 12, 10, 633 }, { 12, 10, 642 }, { 13, 10, 59 }, { 13, 10, 60 },
+ { 13, 10, 145 }, { 13, 10, 239 }, { 13, 10, 250 }, { 13, 10, 329 },
+ { 13, 10, 344 }, { 13, 10, 365 }, { 13, 10, 372 }, { 13, 10, 387 },
+ { 13, 10, 403 }, { 13, 10, 414 }, { 13, 10, 456 }, { 13, 10, 470 },
+ { 13, 10, 478 }, { 13, 10, 483 }, { 13, 10, 489 }, { 14, 10, 55 },
+ { 14, 10, 57 }, { 14, 10, 81 }, { 14, 10, 90 }, { 14, 10, 148 },
+ { 14, 10, 239 }, { 14, 10, 266 }, { 14, 10, 321 }, { 14, 10, 326 },
+ { 14, 10, 327 }, { 14, 10, 330 }, { 14, 10, 347 }, { 14, 10, 355 },
+ { 14, 10, 401 }, { 14, 10, 404 }, { 14, 10, 411 }, { 14, 10, 414 },
+ { 14, 10, 416 }, { 14, 10, 420 }, { 15, 10, 61 }, { 15, 10, 74 },
+ { 15, 10, 87 }, { 15, 10, 88 }, { 15, 10, 94 }, { 15, 10, 96 },
+ { 15, 10, 116 }, { 15, 10, 149 }, { 15, 10, 154 }, { 16, 10, 50 },
+ { 16, 10, 63 }, { 16, 10, 73 }, { 17, 10, 2 }, { 17, 10, 66 },
+ { 17, 10, 92 }, { 17, 10, 103 }, { 17, 10, 112 }, { 17, 10, 120 },
+ { 18, 10, 50 }, { 18, 10, 54 }, { 18, 10, 82 }, { 18, 10, 86 },
+ { 18, 10, 90 }, { 18, 10, 111 }, { 18, 10, 115 }, { 18, 10, 156 },
+ { 19, 10, 40 }, { 19, 10, 79 }, { 20, 10, 78 }, { 149, 10, 22 },
+ { 7, 0, 887 }, { 5, 10, 161 }, { 135, 10, 839 }, { 142, 11, 98 },
+ { 134, 0, 90 }, { 138, 11, 356 }, { 135, 11, 441 }, { 6, 11, 111 },
+ { 7, 11, 4 }, { 8, 11, 163 }, { 8, 11, 776 }, { 138, 11, 566 },
+ { 134, 0, 908 }, { 134, 0, 1261 }, { 7, 0, 813 }, { 12, 0, 497 },
+ { 141, 0, 56 }, { 134, 0, 1235 }, { 135, 0, 429 }, { 135, 11, 1994 },
+ { 138, 0, 904 }, { 6, 0, 125 }, { 7, 0, 1277 }, { 137, 0, 772 },
+ { 151, 0, 12 }, { 4, 0, 841 }, { 5, 0, 386 }, { 133, 11, 386 },
+ { 5, 11, 297 }, { 135, 11, 1038 }, { 6, 0, 860 }, { 6, 0, 1069 },
+ { 135, 11, 309 }, { 136, 0, 946 }, { 135, 10, 1814 }, { 141, 11, 418 },
+ { 136, 11, 363 }, { 10, 0, 768 }, { 139, 0, 787 }, { 22, 11, 30 },
+ { 150, 11, 33 }, { 6, 0, 160 }, { 7, 0, 1106 }, { 9, 0, 770 },
+ { 11, 0, 112 }, { 140, 0, 413 }, { 11, 11, 216 }, { 139, 11, 340 },
+ { 136, 10, 139 }, { 135, 11, 1390 }, { 135, 11, 808 }, { 132, 11, 280 },
+ { 12, 0, 271 }, { 17, 0, 109 }, { 7, 10, 643 }, { 136, 10, 236 },
+ { 140, 11, 54 }, { 4, 11, 421 }, { 133, 11, 548 }, { 11, 0, 719 },
+ { 12, 0, 36 }, { 141, 0, 337 }, { 7, 0, 581 }, { 9, 0, 644 },
+ { 137, 0, 699 }, { 11, 11, 511 }, { 13, 11, 394 }, { 14, 11, 298 },
+ { 14, 11, 318 }, { 146, 11, 103 }, { 7, 0, 304 }, { 9, 0, 646 },
+ { 9, 0, 862 }, { 11, 0, 696 }, { 12, 0, 208 }, { 15, 0, 79 },
+ { 147, 0, 108 }, { 4, 0, 631 }, { 7, 0, 1126 }, { 135, 0, 1536 },
+ { 135, 11, 1527 }, { 8, 0, 880 }, { 10, 0, 869 }, { 138, 0, 913 },
+ { 7, 0, 1513 }, { 5, 10, 54 }, { 6, 11, 254 }, { 9, 11, 109 },
+ { 138, 11, 103 }, { 135, 0, 981 }, { 133, 11, 729 }, { 132, 10, 744 },
+ { 132, 0, 434 }, { 134, 0, 550 }, { 7, 0, 930 }, { 10, 0, 476 },
+ { 13, 0, 452 }, { 19, 0, 104 }, { 6, 11, 1630 }, { 10, 10, 402 },
+ { 146, 10, 55 }, { 5, 0, 553 }, { 138, 0, 824 }, { 136, 0, 452 },
+ { 8, 0, 151 }, { 137, 10, 624 }, { 132, 10, 572 }, { 132, 0, 772 },
+ { 133, 11, 671 }, { 133, 0, 292 }, { 138, 0, 135 }, { 132, 11, 889 },
+ { 140, 11, 207 }, { 9, 0, 504 }, { 6, 10, 43 }, { 7, 10, 38 },
+ { 8, 10, 248 }, { 138, 10, 513 }, { 6, 0, 1089 }, { 135, 11, 1910 },
+ { 4, 11, 627 }, { 133, 11, 775 }, { 135, 0, 783 }, { 133, 10, 766 },
+ { 133, 10, 363 }, { 7, 0, 387 }, { 135, 11, 387 }, { 7, 0, 393 },
+ { 10, 0, 603 }, { 11, 0, 206 }, { 7, 11, 202 }, { 11, 11, 362 },
+ { 11, 11, 948 }, { 140, 11, 388 }, { 6, 11, 507 }, { 7, 11, 451 },
+ { 8, 11, 389 }, { 12, 11, 490 }, { 13, 11, 16 }, { 13, 11, 215 },
+ { 13, 11, 351 }, { 18, 11, 132 }, { 147, 11, 125 }, { 4, 0, 912 },
+ { 9, 0, 232 }, { 135, 11, 841 }, { 6, 10, 258 }, { 140, 10, 409 },
+ { 5, 10, 249 }, { 148, 10, 82 }, { 136, 11, 566 }, { 6, 0, 977 },
+ { 135, 11, 1214 }, { 7, 0, 1973 }, { 136, 0, 716 }, { 135, 0, 98 },
+ { 133, 0, 733 }, { 5, 11, 912 }, { 134, 11, 1695 }, { 5, 10, 393 },
+ { 6, 10, 378 }, { 7, 10, 1981 }, { 9, 10, 32 }, { 9, 10, 591 },
+ { 10, 10, 685 }, { 10, 10, 741 }, { 142, 10, 382 }, { 133, 10, 788 },
+ { 10, 0, 19 }, { 11, 0, 911 }, { 7, 10, 1968 }, { 141, 10, 509 },
+ { 5, 0, 668 }, { 5, 11, 236 }, { 6, 11, 572 }, { 8, 11, 492 },
+ { 11, 11, 618 }, { 144, 11, 56 }, { 135, 11, 1789 }, { 4, 0, 360 },
+ { 5, 0, 635 }, { 5, 0, 700 }, { 5, 10, 58 }, { 5, 10, 171 },
+ { 5, 10, 683 }, { 6, 10, 291 }, { 6, 10, 566 }, { 7, 10, 1650 },
+ { 11, 10, 523 }, { 12, 10, 273 }, { 12, 10, 303 }, { 15, 10, 39 },
+ { 143, 10, 111 }, { 133, 0, 901 }, { 134, 10, 589 }, { 5, 11, 190 },
+ { 136, 11, 318 }, { 140, 0, 656 }, { 7, 0, 726 }, { 152, 0, 9 },
+ { 4, 10, 917 }, { 133, 10, 1005 }, { 135, 10, 1598 }, { 134, 11, 491 },
+ { 4, 10, 919 }, { 133, 11, 434 }, { 137, 0, 72 }, { 6, 0, 1269 },
+ { 6, 0, 1566 }, { 134, 0, 1621 }, { 9, 0, 463 }, { 10, 0, 595 },
+ { 4, 10, 255 }, { 5, 10, 302 }, { 6, 10, 132 }, { 7, 10, 128 },
+ { 7, 10, 283 }, { 7, 10, 1299 }, { 10, 10, 52 }, { 10, 10, 514 },
+ { 11, 10, 925 }, { 13, 10, 92 }, { 142, 10, 309 }, { 135, 0, 1454 },
+ { 134, 0, 1287 }, { 11, 0, 600 }, { 13, 0, 245 }, { 137, 10, 173 },
+ { 136, 0, 989 }, { 7, 0, 164 }, { 7, 0, 1571 }, { 9, 0, 107 },
+ { 140, 0, 225 }, { 6, 0, 1061 }, { 141, 10, 442 }, { 4, 0, 27 },
+ { 5, 0, 484 }, { 5, 0, 510 }, { 6, 0, 434 }, { 7, 0, 1000 },
+ { 7, 0, 1098 }, { 136, 0, 2 }, { 7, 11, 85 }, { 7, 11, 247 },
+ { 8, 11, 585 }, { 10, 11, 163 }, { 138, 11, 316 }, { 11, 11, 103 },
+ { 142, 11, 0 }, { 134, 0, 1127 }, { 4, 0, 460 }, { 134, 0, 852 },
+ { 134, 10, 210 }, { 4, 0, 932 }, { 133, 0, 891 }, { 6, 0, 588 },
+ { 147, 11, 83 }, { 8, 0, 625 }, { 4, 10, 284 }, { 134, 10, 223 },
+ { 134, 0, 76 }, { 8, 0, 92 }, { 137, 0, 221 }, { 4, 11, 124 },
+ { 10, 11, 457 }, { 11, 11, 121 }, { 11, 11, 169 }, { 11, 11, 422 },
+ { 11, 11, 870 }, { 12, 11, 214 }, { 13, 11, 389 }, { 14, 11, 187 },
+ { 143, 11, 77 }, { 9, 11, 618 }, { 138, 11, 482 }, { 4, 10, 218 },
+ { 7, 10, 526 }, { 143, 10, 137 }, { 13, 0, 9 }, { 14, 0, 104 },
+ { 14, 0, 311 }, { 4, 10, 270 }, { 5, 10, 192 }, { 6, 10, 332 },
+ { 135, 10, 1322 }, { 140, 10, 661 }, { 135, 11, 1193 }, { 6, 11, 107 },
+ { 7, 11, 638 }, { 7, 11, 1632 }, { 137, 11, 396 }, { 132, 0, 763 },
+ { 4, 0, 622 }, { 5, 11, 370 }, { 134, 11, 1756 }, { 133, 0, 253 },
+ { 135, 0, 546 }, { 9, 0, 73 }, { 10, 0, 110 }, { 14, 0, 185 },
+ { 17, 0, 119 }, { 133, 11, 204 }, { 7, 0, 624 }, { 7, 0, 916 },
+ { 10, 0, 256 }, { 139, 0, 87 }, { 7, 10, 379 }, { 8, 10, 481 },
+ { 137, 10, 377 }, { 5, 0, 212 }, { 12, 0, 35 }, { 13, 0, 382 },
+ { 5, 11, 970 }, { 134, 11, 1706 }, { 9, 0, 746 }, { 5, 10, 1003 },
+ { 134, 10, 149 }, { 10, 0, 150 }, { 11, 0, 849 }, { 13, 0, 330 },
+ { 8, 10, 262 }, { 9, 10, 627 }, { 11, 10, 214 }, { 11, 10, 404 },
+ { 11, 10, 457 }, { 11, 10, 780 }, { 11, 10, 913 }, { 13, 10, 401 },
+ { 142, 10, 200 }, { 134, 0, 1466 }, { 135, 11, 3 }, { 6, 0, 1299 },
+ { 4, 11, 35 }, { 5, 11, 121 }, { 5, 11, 483 }, { 5, 11, 685 },
+ { 6, 11, 489 }, { 7, 11, 1204 }, { 136, 11, 394 }, { 135, 10, 742 },
+ { 4, 10, 142 }, { 136, 10, 304 }, { 4, 11, 921 }, { 133, 11, 1007 },
+ { 134, 0, 1518 }, { 6, 0, 1229 }, { 135, 0, 1175 }, { 133, 0, 816 },
+ { 12, 0, 159 }, { 4, 10, 471 }, { 4, 11, 712 }, { 5, 10, 51 },
+ { 6, 10, 602 }, { 7, 10, 925 }, { 8, 10, 484 }, { 138, 10, 195 },
+ { 134, 11, 1629 }, { 5, 0, 869 }, { 5, 0, 968 }, { 6, 0, 1626 },
+ { 8, 0, 734 }, { 136, 0, 784 }, { 4, 0, 542 }, { 6, 0, 1716 },
+ { 6, 0, 1727 }, { 7, 0, 1082 }, { 7, 0, 1545 }, { 8, 0, 56 },
+ { 8, 0, 118 }, { 8, 0, 412 }, { 8, 0, 564 }, { 9, 0, 888 },
+ { 9, 0, 908 }, { 10, 0, 50 }, { 10, 0, 423 }, { 11, 0, 685 },
+ { 11, 0, 697 }, { 11, 0, 933 }, { 12, 0, 299 }, { 13, 0, 126 },
+ { 13, 0, 136 }, { 13, 0, 170 }, { 13, 0, 190 }, { 136, 10, 688 },
+ { 132, 10, 697 }, { 4, 0, 232 }, { 9, 0, 202 }, { 10, 0, 474 },
+ { 140, 0, 433 }, { 136, 0, 212 }, { 6, 0, 108 }, { 7, 0, 1003 },
+ { 7, 0, 1181 }, { 8, 0, 111 }, { 136, 0, 343 }, { 5, 10, 221 },
+ { 135, 11, 1255 }, { 133, 11, 485 }, { 134, 0, 1712 }, { 142, 0, 216 },
+ { 5, 0, 643 }, { 6, 0, 516 }, { 4, 11, 285 }, { 5, 11, 317 },
+ { 6, 11, 301 }, { 7, 11, 7 }, { 8, 11, 153 }, { 10, 11, 766 },
+ { 11, 11, 468 }, { 12, 11, 467 }, { 141, 11, 143 }, { 4, 0, 133 },
+ { 7, 0, 711 }, { 7, 0, 1298 }, { 135, 0, 1585 }, { 134, 0, 650 },
+ { 135, 11, 512 }, { 6, 0, 99 }, { 7, 0, 1808 }, { 145, 0, 57 },
+ { 6, 0, 246 }, { 6, 0, 574 }, { 7, 0, 428 }, { 9, 0, 793 },
+ { 10, 0, 669 }, { 11, 0, 485 }, { 11, 0, 840 }, { 12, 0, 300 },
+ { 14, 0, 250 }, { 145, 0, 55 }, { 4, 10, 132 }, { 5, 10, 69 },
+ { 135, 10, 1242 }, { 136, 0, 1023 }, { 7, 0, 302 }, { 132, 10, 111 },
+ { 135, 0, 1871 }, { 132, 0, 728 }, { 9, 0, 252 }, { 132, 10, 767 },
+ { 6, 0, 461 }, { 7, 0, 1590 }, { 7, 10, 1416 }, { 7, 10, 2005 },
+ { 8, 10, 131 }, { 8, 10, 466 }, { 9, 10, 672 }, { 13, 10, 252 },
+ { 148, 10, 103 }, { 6, 0, 323 }, { 135, 0, 1564 }, { 7, 0, 461 },
+ { 136, 0, 775 }, { 6, 10, 44 }, { 136, 10, 368 }, { 139, 0, 172 },
+ { 132, 0, 464 }, { 4, 10, 570 }, { 133, 10, 120 }, { 137, 11, 269 },
+ { 6, 10, 227 }, { 135, 10, 1589 }, { 6, 11, 1719 }, { 6, 11, 1735 },
+ { 7, 11, 2016 }, { 7, 11, 2020 }, { 8, 11, 837 }, { 137, 11, 852 },
+ { 7, 0, 727 }, { 146, 0, 73 }, { 132, 0, 1023 }, { 135, 11, 852 },
+ { 135, 10, 1529 }, { 136, 0, 577 }, { 138, 11, 568 }, { 134, 0, 1037 },
+ { 8, 11, 67 }, { 138, 11, 419 }, { 4, 0, 413 }, { 5, 0, 677 },
+ { 8, 0, 432 }, { 140, 0, 280 }, { 10, 0, 600 }, { 6, 10, 1667 },
+ { 7, 11, 967 }, { 7, 10, 2036 }, { 141, 11, 11 }, { 6, 10, 511 },
+ { 140, 10, 132 }, { 6, 0, 799 }, { 5, 10, 568 }, { 6, 10, 138 },
+ { 135, 10, 1293 }, { 8, 0, 159 }, { 4, 10, 565 }, { 136, 10, 827 },
+ { 7, 0, 646 }, { 7, 0, 1730 }, { 11, 0, 446 }, { 141, 0, 178 },
+ { 4, 10, 922 }, { 133, 10, 1023 }, { 135, 11, 11 }, { 132, 0, 395 },
+ { 11, 0, 145 }, { 135, 10, 1002 }, { 9, 0, 174 }, { 10, 0, 164 },
+ { 11, 0, 440 }, { 11, 0, 514 }, { 11, 0, 841 }, { 15, 0, 98 },
+ { 149, 0, 20 }, { 134, 0, 426 }, { 10, 0, 608 }, { 139, 0, 1002 },
+ { 7, 11, 320 }, { 8, 11, 51 }, { 12, 11, 481 }, { 12, 11, 570 },
+ { 148, 11, 106 }, { 9, 0, 977 }, { 9, 0, 983 }, { 132, 11, 445 },
+ { 138, 0, 250 }, { 139, 0, 100 }, { 6, 0, 1982 }, { 136, 10, 402 },
+ { 133, 11, 239 }, { 4, 10, 716 }, { 141, 10, 31 }, { 5, 0, 476 },
+ { 7, 11, 83 }, { 7, 11, 1990 }, { 8, 11, 130 }, { 139, 11, 720 },
+ { 8, 10, 691 }, { 136, 10, 731 }, { 5, 11, 123 }, { 6, 11, 530 },
+ { 7, 11, 348 }, { 135, 11, 1419 }, { 5, 0, 76 }, { 6, 0, 458 },
+ { 6, 0, 497 }, { 7, 0, 868 }, { 9, 0, 658 }, { 10, 0, 594 },
+ { 11, 0, 173 }, { 11, 0, 566 }, { 12, 0, 20 }, { 12, 0, 338 },
+ { 141, 0, 200 }, { 9, 11, 139 }, { 10, 11, 399 }, { 11, 11, 469 },
+ { 12, 11, 634 }, { 141, 11, 223 }, { 9, 10, 840 }, { 138, 10, 803 },
+ { 133, 10, 847 }, { 11, 11, 223 }, { 140, 11, 168 }, { 132, 11, 210 },
+ { 8, 0, 447 }, { 9, 10, 53 }, { 9, 10, 268 }, { 9, 10, 901 },
+ { 10, 10, 518 }, { 10, 10, 829 }, { 11, 10, 188 }, { 13, 10, 74 },
+ { 14, 10, 46 }, { 15, 10, 17 }, { 15, 10, 33 }, { 17, 10, 40 },
+ { 18, 10, 36 }, { 19, 10, 20 }, { 22, 10, 1 }, { 152, 10, 2 },
+ { 4, 0, 526 }, { 7, 0, 1029 }, { 135, 0, 1054 }, { 19, 11, 59 },
+ { 150, 11, 2 }, { 4, 0, 636 }, { 6, 0, 1875 }, { 6, 0, 1920 },
+ { 9, 0, 999 }, { 12, 0, 807 }, { 12, 0, 825 }, { 15, 0, 179 },
+ { 15, 0, 190 }, { 18, 0, 182 }, { 136, 10, 532 }, { 6, 0, 1699 },
+ { 7, 0, 660 }, { 7, 0, 1124 }, { 17, 0, 31 }, { 19, 0, 22 },
+ { 151, 0, 14 }, { 135, 10, 681 }, { 132, 11, 430 }, { 140, 10, 677 },
+ { 4, 10, 684 }, { 136, 10, 384 }, { 132, 11, 756 }, { 133, 11, 213 },
+ { 7, 0, 188 }, { 7, 10, 110 }, { 8, 10, 290 }, { 8, 10, 591 },
+ { 9, 10, 382 }, { 9, 10, 649 }, { 11, 10, 71 }, { 11, 10, 155 },
+ { 11, 10, 313 }, { 12, 10, 5 }, { 13, 10, 325 }, { 142, 10, 287 },
+ { 7, 10, 360 }, { 7, 10, 425 }, { 9, 10, 66 }, { 9, 10, 278 },
+ { 138, 10, 644 }, { 142, 11, 164 }, { 4, 0, 279 }, { 7, 0, 301 },
+ { 137, 0, 362 }, { 134, 11, 586 }, { 135, 0, 1743 }, { 4, 0, 178 },
+ { 133, 0, 399 }, { 4, 10, 900 }, { 133, 10, 861 }, { 5, 10, 254 },
+ { 7, 10, 985 }, { 136, 10, 73 }, { 133, 11, 108 }, { 7, 10, 1959 },
+ { 136, 10, 683 }, { 133, 11, 219 }, { 4, 11, 193 }, { 5, 11, 916 },
+ { 7, 11, 364 }, { 10, 11, 398 }, { 10, 11, 726 }, { 11, 11, 317 },
+ { 11, 11, 626 }, { 12, 11, 142 }, { 12, 11, 288 }, { 12, 11, 678 },
+ { 13, 11, 313 }, { 15, 11, 113 }, { 18, 11, 114 }, { 21, 11, 30 },
+ { 150, 11, 53 }, { 6, 11, 241 }, { 7, 11, 907 }, { 8, 11, 832 },
+ { 9, 11, 342 }, { 10, 11, 729 }, { 11, 11, 284 }, { 11, 11, 445 },
+ { 11, 11, 651 }, { 11, 11, 863 }, { 13, 11, 398 }, { 146, 11, 99 },
+ { 132, 0, 872 }, { 134, 0, 831 }, { 134, 0, 1692 }, { 6, 0, 202 },
+ { 6, 0, 1006 }, { 9, 0, 832 }, { 10, 0, 636 }, { 11, 0, 208 },
+ { 12, 0, 360 }, { 17, 0, 118 }, { 18, 0, 27 }, { 20, 0, 67 },
+ { 137, 11, 734 }, { 132, 10, 725 }, { 7, 11, 993 }, { 138, 11, 666 },
+ { 134, 0, 1954 }, { 134, 10, 196 }, { 7, 0, 872 }, { 10, 0, 516 },
+ { 139, 0, 167 }, { 133, 10, 831 }, { 4, 11, 562 }, { 9, 11, 254 },
+ { 139, 11, 879 }, { 137, 0, 313 }, { 4, 0, 224 }, { 132, 11, 786 },
+ { 11, 0, 24 }, { 12, 0, 170 }, { 136, 10, 723 }, { 5, 0, 546 },
+ { 7, 0, 35 }, { 8, 0, 11 }, { 8, 0, 12 }, { 9, 0, 315 },
+ { 9, 0, 533 }, { 10, 0, 802 }, { 11, 0, 166 }, { 12, 0, 525 },
+ { 142, 0, 243 }, { 7, 0, 1937 }, { 13, 10, 80 }, { 13, 10, 437 },
+ { 145, 10, 74 }, { 5, 0, 241 }, { 8, 0, 242 }, { 9, 0, 451 },
+ { 10, 0, 667 }, { 11, 0, 598 }, { 140, 0, 429 }, { 150, 0, 46 },
+ { 6, 0, 1273 }, { 137, 0, 830 }, { 5, 10, 848 }, { 6, 10, 66 },
+ { 136, 10, 764 }, { 6, 0, 825 }, { 134, 0, 993 }, { 4, 0, 1006 },
+ { 10, 0, 327 }, { 13, 0, 271 }, { 4, 10, 36 }, { 7, 10, 1387 },
+ { 139, 10, 755 }, { 134, 0, 1023 }, { 135, 0, 1580 }, { 4, 0, 366 },
+ { 137, 0, 516 }, { 132, 10, 887 }, { 6, 0, 1736 }, { 135, 0, 1891 },
+ { 6, 11, 216 }, { 7, 11, 901 }, { 7, 11, 1343 }, { 136, 11, 493 },
+ { 6, 10, 165 }, { 138, 10, 388 }, { 7, 11, 341 }, { 139, 11, 219 },
+ { 4, 10, 719 }, { 135, 10, 155 }, { 134, 0, 1935 }, { 132, 0, 826 },
+ { 6, 0, 331 }, { 6, 0, 1605 }, { 8, 0, 623 }, { 11, 0, 139 },
+ { 139, 0, 171 }, { 135, 11, 1734 }, { 10, 11, 115 }, { 11, 11, 420 },
+ { 12, 11, 154 }, { 13, 11, 404 }, { 14, 11, 346 }, { 15, 11, 54 },
+ { 143, 11, 112 }, { 7, 0, 288 }, { 4, 10, 353 }, { 6, 10, 146 },
+ { 6, 10, 1789 }, { 7, 10, 990 }, { 7, 10, 1348 }, { 9, 10, 665 },
+ { 9, 10, 898 }, { 11, 10, 893 }, { 142, 10, 212 }, { 6, 0, 916 },
+ { 134, 0, 1592 }, { 7, 0, 1888 }, { 4, 10, 45 }, { 135, 10, 1257 },
+ { 5, 11, 1011 }, { 136, 11, 701 }, { 139, 11, 596 }, { 4, 11, 54 },
+ { 5, 11, 666 }, { 7, 11, 1039 }, { 7, 11, 1130 }, { 9, 11, 195 },
+ { 138, 11, 302 }, { 134, 0, 1471 }, { 134, 0, 1570 }, { 132, 0, 394 },
+ { 140, 10, 65 }, { 136, 10, 816 }, { 135, 0, 1931 }, { 7, 0, 574 },
+ { 135, 0, 1719 }, { 134, 11, 467 }, { 132, 0, 658 }, { 9, 0, 781 },
+ { 10, 0, 144 }, { 11, 0, 385 }, { 13, 0, 161 }, { 13, 0, 228 },
+ { 13, 0, 268 }, { 20, 0, 107 }, { 134, 11, 1669 }, { 136, 0, 374 },
+ { 135, 0, 735 }, { 4, 0, 344 }, { 6, 0, 498 }, { 139, 0, 323 },
+ { 7, 0, 586 }, { 7, 0, 1063 }, { 6, 10, 559 }, { 134, 10, 1691 },
+ { 137, 0, 155 }, { 133, 0, 906 }, { 7, 11, 122 }, { 9, 11, 259 },
+ { 10, 11, 84 }, { 11, 11, 470 }, { 12, 11, 541 }, { 141, 11, 379 },
+ { 134, 0, 1139 }, { 10, 0, 108 }, { 139, 0, 116 }, { 134, 10, 456 },
+ { 133, 10, 925 }, { 5, 11, 82 }, { 5, 11, 131 }, { 7, 11, 1755 },
+ { 8, 11, 31 }, { 9, 11, 168 }, { 9, 11, 764 }, { 139, 11, 869 },
+ { 134, 11, 605 }, { 5, 11, 278 }, { 137, 11, 68 }, { 4, 11, 163 },
+ { 5, 11, 201 }, { 5, 11, 307 }, { 5, 11, 310 }, { 6, 11, 335 },
+ { 7, 11, 284 }, { 136, 11, 165 }, { 135, 11, 1660 }, { 6, 11, 33 },
+ { 135, 11, 1244 }, { 4, 0, 616 }, { 136, 11, 483 }, { 8, 0, 857 },
+ { 8, 0, 902 }, { 8, 0, 910 }, { 10, 0, 879 }, { 12, 0, 726 },
+ { 4, 11, 199 }, { 139, 11, 34 }, { 136, 0, 692 }, { 6, 10, 193 },
+ { 7, 10, 240 }, { 7, 10, 1682 }, { 10, 10, 51 }, { 10, 10, 640 },
+ { 11, 10, 410 }, { 13, 10, 82 }, { 14, 10, 247 }, { 14, 10, 331 },
+ { 142, 10, 377 }, { 6, 0, 823 }, { 134, 0, 983 }, { 139, 10, 411 },
+ { 132, 0, 305 }, { 136, 10, 633 }, { 138, 11, 203 }, { 134, 0, 681 },
+ { 6, 11, 326 }, { 7, 11, 677 }, { 137, 11, 425 }, { 5, 0, 214 },
+ { 7, 0, 603 }, { 8, 0, 611 }, { 9, 0, 686 }, { 10, 0, 88 },
+ { 11, 0, 459 }, { 11, 0, 496 }, { 12, 0, 463 }, { 12, 0, 590 },
+ { 141, 0, 0 }, { 136, 0, 1004 }, { 142, 0, 23 }, { 134, 0, 1703 },
+ { 147, 11, 8 }, { 145, 11, 56 }, { 135, 0, 1443 }, { 4, 10, 237 },
+ { 135, 10, 514 }, { 6, 0, 714 }, { 145, 0, 19 }, { 5, 11, 358 },
+ { 7, 11, 473 }, { 7, 11, 1184 }, { 10, 11, 662 }, { 13, 11, 212 },
+ { 13, 11, 304 }, { 13, 11, 333 }, { 145, 11, 98 }, { 4, 0, 737 },
+ { 10, 0, 98 }, { 11, 0, 294 }, { 12, 0, 60 }, { 12, 0, 437 },
+ { 13, 0, 64 }, { 13, 0, 380 }, { 142, 0, 430 }, { 6, 10, 392 },
+ { 7, 10, 65 }, { 135, 10, 2019 }, { 6, 0, 1758 }, { 8, 0, 520 },
+ { 9, 0, 345 }, { 9, 0, 403 }, { 142, 0, 350 }, { 5, 0, 47 },
+ { 10, 0, 242 }, { 138, 0, 579 }, { 5, 0, 139 }, { 7, 0, 1168 },
+ { 138, 0, 539 }, { 134, 0, 1459 }, { 13, 0, 388 }, { 141, 11, 388 },
+ { 134, 0, 253 }, { 7, 10, 1260 }, { 135, 10, 1790 }, { 10, 0, 252 },
+ { 9, 10, 222 }, { 139, 10, 900 }, { 140, 0, 745 }, { 133, 11, 946 },
+ { 4, 0, 107 }, { 7, 0, 613 }, { 8, 0, 439 }, { 8, 0, 504 },
+ { 9, 0, 501 }, { 10, 0, 383 }, { 139, 0, 477 }, { 135, 11, 1485 },
+ { 132, 0, 871 }, { 7, 11, 411 }, { 7, 11, 590 }, { 8, 11, 631 },
+ { 9, 11, 323 }, { 10, 11, 355 }, { 11, 11, 491 }, { 12, 11, 143 },
+ { 12, 11, 402 }, { 13, 11, 73 }, { 14, 11, 408 }, { 15, 11, 107 },
+ { 146, 11, 71 }, { 132, 0, 229 }, { 132, 0, 903 }, { 140, 0, 71 },
+ { 133, 0, 549 }, { 4, 0, 47 }, { 6, 0, 373 }, { 7, 0, 452 },
+ { 7, 0, 543 }, { 7, 0, 1828 }, { 7, 0, 1856 }, { 9, 0, 6 },
+ { 11, 0, 257 }, { 139, 0, 391 }, { 7, 11, 1467 }, { 8, 11, 328 },
+ { 10, 11, 544 }, { 11, 11, 955 }, { 13, 11, 320 }, { 145, 11, 83 },
+ { 5, 0, 980 }, { 134, 0, 1754 }, { 136, 0, 865 }, { 5, 0, 705 },
+ { 137, 0, 606 }, { 7, 0, 161 }, { 8, 10, 201 }, { 136, 10, 605 },
+ { 143, 11, 35 }, { 5, 11, 835 }, { 6, 11, 483 }, { 140, 10, 224 },
+ { 7, 0, 536 }, { 7, 0, 1331 }, { 136, 0, 143 }, { 134, 0, 1388 },
+ { 5, 0, 724 }, { 10, 0, 305 }, { 11, 0, 151 }, { 12, 0, 33 },
+ { 12, 0, 121 }, { 12, 0, 381 }, { 17, 0, 3 }, { 17, 0, 27 },
+ { 17, 0, 78 }, { 18, 0, 18 }, { 19, 0, 54 }, { 149, 0, 5 },
+ { 4, 10, 523 }, { 133, 10, 638 }, { 5, 0, 19 }, { 134, 0, 533 },
+ { 5, 0, 395 }, { 5, 0, 951 }, { 134, 0, 1776 }, { 135, 0, 1908 },
+ { 132, 0, 846 }, { 10, 0, 74 }, { 11, 0, 663 }, { 12, 0, 210 },
+ { 13, 0, 166 }, { 13, 0, 310 }, { 14, 0, 373 }, { 18, 0, 95 },
+ { 19, 0, 43 }, { 6, 10, 242 }, { 7, 10, 227 }, { 7, 10, 1581 },
+ { 8, 10, 104 }, { 9, 10, 113 }, { 9, 10, 220 }, { 9, 10, 427 },
+ { 10, 10, 239 }, { 11, 10, 579 }, { 11, 10, 1023 }, { 13, 10, 4 },
+ { 13, 10, 204 }, { 13, 10, 316 }, { 148, 10, 86 }, { 9, 11, 716 },
+ { 11, 11, 108 }, { 13, 11, 123 }, { 14, 11, 252 }, { 19, 11, 38 },
+ { 21, 11, 3 }, { 151, 11, 11 }, { 8, 0, 372 }, { 9, 0, 122 },
+ { 138, 0, 175 }, { 132, 11, 677 }, { 7, 11, 1374 }, { 136, 11, 540 },
+ { 135, 10, 861 }, { 132, 0, 695 }, { 7, 0, 497 }, { 9, 0, 387 },
+ { 147, 0, 81 }, { 136, 0, 937 }, { 134, 0, 718 }, { 7, 0, 1328 },
+ { 136, 10, 494 }, { 132, 11, 331 }, { 6, 0, 1581 }, { 133, 11, 747 },
+ { 5, 0, 284 }, { 6, 0, 49 }, { 6, 0, 350 }, { 7, 0, 1 },
+ { 7, 0, 377 }, { 7, 0, 1693 }, { 8, 0, 18 }, { 8, 0, 678 },
+ { 9, 0, 161 }, { 9, 0, 585 }, { 9, 0, 671 }, { 9, 0, 839 },
+ { 11, 0, 912 }, { 141, 0, 427 }, { 7, 10, 1306 }, { 8, 10, 505 },
+ { 9, 10, 482 }, { 10, 10, 126 }, { 11, 10, 225 }, { 12, 10, 347 },
+ { 12, 10, 449 }, { 13, 10, 19 }, { 14, 10, 218 }, { 142, 10, 435 },
+ { 10, 10, 764 }, { 12, 10, 120 }, { 13, 10, 39 }, { 145, 10, 127 },
+ { 4, 0, 597 }, { 133, 10, 268 }, { 134, 0, 1094 }, { 4, 0, 1008 },
+ { 134, 0, 1973 }, { 132, 0, 811 }, { 139, 0, 908 }, { 135, 0, 1471 },
+ { 133, 11, 326 }, { 4, 10, 384 }, { 135, 10, 1022 }, { 7, 0, 1935 },
+ { 8, 0, 324 }, { 12, 0, 42 }, { 4, 11, 691 }, { 7, 11, 1935 },
+ { 8, 11, 324 }, { 9, 11, 35 }, { 10, 11, 680 }, { 11, 11, 364 },
+ { 12, 11, 42 }, { 13, 11, 357 }, { 146, 11, 16 }, { 135, 0, 2014 },
+ { 7, 0, 2007 }, { 9, 0, 101 }, { 9, 0, 450 }, { 10, 0, 66 },
+ { 10, 0, 842 }, { 11, 0, 536 }, { 12, 0, 587 }, { 6, 11, 32 },
+ { 7, 11, 385 }, { 7, 11, 757 }, { 7, 11, 1916 }, { 8, 11, 37 },
+ { 8, 11, 94 }, { 8, 11, 711 }, { 9, 11, 541 }, { 10, 11, 162 },
+ { 10, 11, 795 }, { 11, 11, 989 }, { 11, 11, 1010 }, { 12, 11, 14 },
+ { 142, 11, 308 }, { 139, 0, 586 }, { 135, 10, 1703 }, { 7, 0, 1077 },
+ { 11, 0, 28 }, { 9, 10, 159 }, { 140, 10, 603 }, { 6, 0, 1221 },
+ { 136, 10, 583 }, { 6, 11, 152 }, { 6, 11, 349 }, { 6, 11, 1682 },
+ { 7, 11, 1252 }, { 8, 11, 112 }, { 9, 11, 435 }, { 9, 11, 668 },
+ { 10, 11, 290 }, { 10, 11, 319 }, { 10, 11, 815 }, { 11, 11, 180 },
+ { 11, 11, 837 }, { 12, 11, 240 }, { 13, 11, 152 }, { 13, 11, 219 },
+ { 142, 11, 158 }, { 139, 0, 62 }, { 132, 10, 515 }, { 8, 10, 632 },
+ { 8, 10, 697 }, { 137, 10, 854 }, { 134, 0, 1766 }, { 132, 11, 581 },
+ { 6, 11, 126 }, { 7, 11, 573 }, { 8, 11, 397 }, { 142, 11, 44 },
+ { 150, 0, 28 }, { 11, 0, 670 }, { 22, 0, 25 }, { 4, 10, 136 },
+ { 133, 10, 551 }, { 6, 0, 1665 }, { 7, 0, 256 }, { 7, 0, 1388 },
+ { 138, 0, 499 }, { 4, 0, 22 }, { 5, 0, 10 }, { 7, 0, 1576 },
+ { 136, 0, 97 }, { 134, 10, 1782 }, { 5, 0, 481 }, { 7, 10, 1287 },
+ { 9, 10, 44 }, { 10, 10, 552 }, { 10, 10, 642 }, { 11, 10, 839 },
+ { 12, 10, 274 }, { 12, 10, 275 }, { 12, 10, 372 }, { 13, 10, 91 },
+ { 142, 10, 125 }, { 133, 11, 926 }, { 7, 11, 1232 }, { 137, 11, 531 },
+ { 6, 0, 134 }, { 7, 0, 437 }, { 7, 0, 1824 }, { 9, 0, 37 },
+ { 14, 0, 285 }, { 142, 0, 371 }, { 7, 0, 486 }, { 8, 0, 155 },
+ { 11, 0, 93 }, { 140, 0, 164 }, { 6, 0, 1391 }, { 134, 0, 1442 },
+ { 133, 11, 670 }, { 133, 0, 591 }, { 6, 10, 147 }, { 7, 10, 886 },
+ { 7, 11, 1957 }, { 9, 10, 753 }, { 138, 10, 268 }, { 5, 0, 380 },
+ { 5, 0, 650 }, { 7, 0, 1173 }, { 136, 0, 310 }, { 4, 0, 364 },
+ { 7, 0, 1156 }, { 7, 0, 1187 }, { 137, 0, 409 }, { 135, 11, 1621 },
+ { 134, 0, 482 }, { 133, 11, 506 }, { 4, 0, 781 }, { 6, 0, 487 },
+ { 7, 0, 926 }, { 8, 0, 263 }, { 139, 0, 500 }, { 138, 10, 137 },
+ { 135, 11, 242 }, { 139, 11, 96 }, { 133, 10, 414 }, { 135, 10, 1762 },
+ { 134, 0, 804 }, { 5, 11, 834 }, { 7, 11, 1202 }, { 8, 11, 14 },
+ { 9, 11, 481 }, { 137, 11, 880 }, { 134, 10, 599 }, { 4, 0, 94 },
+ { 135, 0, 1265 }, { 4, 0, 415 }, { 132, 0, 417 }, { 5, 0, 348 },
+ { 6, 0, 522 }, { 6, 10, 1749 }, { 7, 11, 1526 }, { 138, 11, 465 },
+ { 134, 10, 1627 }, { 132, 0, 1012 }, { 132, 10, 488 }, { 4, 11, 357 },
+ { 6, 11, 172 }, { 7, 11, 143 }, { 137, 11, 413 }, { 4, 10, 83 },
+ { 4, 11, 590 }, { 146, 11, 76 }, { 140, 10, 676 }, { 7, 11, 287 },
+ { 8, 11, 355 }, { 9, 11, 293 }, { 137, 11, 743 }, { 134, 10, 278 },
+ { 6, 0, 1803 }, { 18, 0, 165 }, { 24, 0, 21 }, { 5, 11, 169 },
+ { 7, 11, 333 }, { 136, 11, 45 }, { 12, 10, 97 }, { 140, 11, 97 },
+ { 4, 0, 408 }, { 4, 0, 741 }, { 135, 0, 500 }, { 132, 11, 198 },
+ { 7, 10, 388 }, { 7, 10, 644 }, { 139, 10, 781 }, { 4, 11, 24 },
+ { 5, 11, 140 }, { 5, 11, 185 }, { 7, 11, 1500 }, { 11, 11, 565 },
+ { 139, 11, 838 }, { 6, 0, 1321 }, { 9, 0, 257 }, { 7, 10, 229 },
+ { 8, 10, 59 }, { 9, 10, 190 }, { 10, 10, 378 }, { 140, 10, 191 },
+ { 4, 11, 334 }, { 133, 11, 593 }, { 135, 11, 1885 }, { 134, 0, 1138 },
+ { 4, 0, 249 }, { 6, 0, 73 }, { 135, 0, 177 }, { 133, 0, 576 },
+ { 142, 0, 231 }, { 137, 0, 288 }, { 132, 10, 660 }, { 7, 10, 1035 },
+ { 138, 10, 737 }, { 135, 0, 1487 }, { 6, 0, 989 }, { 9, 0, 433 },
+ { 7, 10, 690 }, { 9, 10, 587 }, { 140, 10, 521 }, { 7, 0, 1264 },
+ { 7, 0, 1678 }, { 11, 0, 945 }, { 12, 0, 341 }, { 12, 0, 471 },
+ { 140, 0, 569 }, { 132, 11, 709 }, { 133, 11, 897 }, { 5, 11, 224 },
+ { 13, 11, 174 }, { 146, 11, 52 }, { 135, 11, 1840 }, { 134, 10, 1744 },
+ { 12, 0, 87 }, { 16, 0, 74 }, { 4, 10, 733 }, { 9, 10, 194 },
+ { 10, 10, 92 }, { 11, 10, 198 }, { 12, 10, 84 }, { 141, 10, 128 },
+ { 140, 0, 779 }, { 135, 0, 538 }, { 4, 11, 608 }, { 133, 11, 497 },
+ { 133, 0, 413 }, { 7, 11, 1375 }, { 7, 11, 1466 }, { 138, 11, 331 },
+ { 136, 0, 495 }, { 6, 11, 540 }, { 136, 11, 136 }, { 7, 0, 54 },
+ { 8, 0, 312 }, { 10, 0, 191 }, { 10, 0, 614 }, { 140, 0, 567 },
+ { 6, 0, 468 }, { 7, 0, 567 }, { 7, 0, 1478 }, { 8, 0, 530 },
+ { 14, 0, 290 }, { 133, 11, 999 }, { 4, 11, 299 }, { 7, 10, 306 },
+ { 135, 11, 1004 }, { 142, 11, 296 }, { 134, 0, 1484 }, { 133, 10, 979 },
+ { 6, 0, 609 }, { 9, 0, 815 }, { 12, 11, 137 }, { 14, 11, 9 },
+ { 14, 11, 24 }, { 142, 11, 64 }, { 133, 11, 456 }, { 6, 0, 484 },
+ { 135, 0, 822 }, { 133, 10, 178 }, { 136, 11, 180 }, { 132, 11, 755 },
+ { 137, 0, 900 }, { 135, 0, 1335 }, { 6, 0, 1724 }, { 135, 0, 2022 },
+ { 135, 11, 1139 }, { 5, 0, 640 }, { 132, 10, 390 }, { 6, 0, 1831 },
+ { 138, 11, 633 }, { 135, 11, 566 }, { 4, 11, 890 }, { 5, 11, 805 },
+ { 5, 11, 819 }, { 5, 11, 961 }, { 6, 11, 396 }, { 6, 11, 1631 },
+ { 6, 11, 1678 }, { 7, 11, 1967 }, { 7, 11, 2041 }, { 9, 11, 630 },
+ { 11, 11, 8 }, { 11, 11, 1019 }, { 12, 11, 176 }, { 13, 11, 225 },
+ { 14, 11, 292 }, { 149, 11, 24 }, { 132, 0, 474 }, { 134, 0, 1103 },
+ { 135, 0, 1504 }, { 134, 0, 1576 }, { 6, 0, 961 }, { 6, 0, 1034 },
+ { 140, 0, 655 }, { 11, 11, 514 }, { 149, 11, 20 }, { 5, 0, 305 },
+ { 135, 11, 1815 }, { 7, 11, 1505 }, { 10, 11, 190 }, { 10, 11, 634 },
+ { 11, 11, 792 }, { 12, 11, 358 }, { 140, 11, 447 }, { 5, 11, 0 },
+ { 6, 11, 536 }, { 7, 11, 604 }, { 13, 11, 445 }, { 145, 11, 126 },
+ { 7, 0, 1236 }, { 133, 10, 105 }, { 4, 0, 480 }, { 6, 0, 217 },
+ { 6, 0, 302 }, { 6, 0, 1642 }, { 7, 0, 130 }, { 7, 0, 837 },
+ { 7, 0, 1321 }, { 7, 0, 1547 }, { 7, 0, 1657 }, { 8, 0, 429 },
+ { 9, 0, 228 }, { 13, 0, 289 }, { 13, 0, 343 }, { 19, 0, 101 },
+ { 6, 11, 232 }, { 6, 11, 412 }, { 7, 11, 1074 }, { 8, 11, 9 },
+ { 8, 11, 157 }, { 8, 11, 786 }, { 9, 11, 196 }, { 9, 11, 352 },
+ { 9, 11, 457 }, { 10, 11, 337 }, { 11, 11, 232 }, { 11, 11, 877 },
+ { 12, 11, 480 }, { 140, 11, 546 }, { 5, 10, 438 }, { 7, 11, 958 },
+ { 9, 10, 694 }, { 12, 10, 627 }, { 13, 11, 38 }, { 141, 10, 210 },
+ { 4, 11, 382 }, { 136, 11, 579 }, { 7, 0, 278 }, { 10, 0, 739 },
+ { 11, 0, 708 }, { 141, 0, 348 }, { 4, 11, 212 }, { 135, 11, 1206 },
+ { 135, 11, 1898 }, { 6, 0, 708 }, { 6, 0, 1344 }, { 152, 10, 11 },
+ { 137, 11, 768 }, { 134, 0, 1840 }, { 140, 0, 233 }, { 8, 10, 25 },
+ { 138, 10, 826 }, { 6, 0, 2017 }, { 133, 11, 655 }, { 6, 0, 1488 },
+ { 139, 11, 290 }, { 132, 10, 308 }, { 134, 0, 1590 }, { 134, 0, 1800 },
+ { 134, 0, 1259 }, { 16, 0, 28 }, { 6, 11, 231 }, { 7, 11, 95 },
+ { 136, 11, 423 }, { 133, 11, 300 }, { 135, 10, 150 }, { 136, 10, 649 },
+ { 7, 11, 1874 }, { 137, 11, 641 }, { 6, 11, 237 }, { 7, 11, 611 },
+ { 8, 11, 100 }, { 9, 11, 416 }, { 11, 11, 335 }, { 12, 11, 173 },
+ { 146, 11, 101 }, { 137, 0, 45 }, { 134, 10, 521 }, { 17, 0, 36 },
+ { 14, 11, 26 }, { 146, 11, 150 }, { 7, 0, 1442 }, { 14, 0, 22 },
+ { 5, 10, 339 }, { 15, 10, 41 }, { 15, 10, 166 }, { 147, 10, 66 },
+ { 8, 0, 378 }, { 6, 11, 581 }, { 135, 11, 1119 }, { 134, 0, 1507 },
+ { 147, 11, 117 }, { 139, 0, 39 }, { 134, 0, 1054 }, { 6, 0, 363 },
+ { 7, 0, 1955 }, { 136, 0, 725 }, { 134, 0, 2036 }, { 133, 11, 199 },
+ { 6, 0, 1871 }, { 9, 0, 935 }, { 9, 0, 961 }, { 9, 0, 1004 },
+ { 9, 0, 1016 }, { 12, 0, 805 }, { 12, 0, 852 }, { 12, 0, 853 },
+ { 12, 0, 869 }, { 12, 0, 882 }, { 12, 0, 896 }, { 12, 0, 906 },
+ { 12, 0, 917 }, { 12, 0, 940 }, { 15, 0, 170 }, { 15, 0, 176 },
+ { 15, 0, 188 }, { 15, 0, 201 }, { 15, 0, 205 }, { 15, 0, 212 },
+ { 15, 0, 234 }, { 15, 0, 244 }, { 18, 0, 181 }, { 18, 0, 193 },
+ { 18, 0, 196 }, { 18, 0, 201 }, { 18, 0, 202 }, { 18, 0, 210 },
+ { 18, 0, 217 }, { 18, 0, 235 }, { 18, 0, 236 }, { 18, 0, 237 },
+ { 21, 0, 54 }, { 21, 0, 55 }, { 21, 0, 58 }, { 21, 0, 59 },
+ { 152, 0, 22 }, { 134, 10, 1628 }, { 137, 0, 805 }, { 5, 0, 813 },
+ { 135, 0, 2046 }, { 142, 11, 42 }, { 5, 0, 712 }, { 6, 0, 1240 },
+ { 11, 0, 17 }, { 13, 0, 321 }, { 144, 0, 67 }, { 132, 0, 617 },
+ { 135, 10, 829 }, { 6, 0, 320 }, { 7, 0, 781 }, { 7, 0, 1921 },
+ { 9, 0, 55 }, { 10, 0, 186 }, { 10, 0, 273 }, { 10, 0, 664 },
+ { 10, 0, 801 }, { 11, 0, 996 }, { 11, 0, 997 }, { 13, 0, 157 },
+ { 142, 0, 170 }, { 136, 0, 271 }, { 5, 10, 486 }, { 135, 10, 1349 },
+ { 18, 11, 91 }, { 147, 11, 70 }, { 10, 0, 445 }, { 7, 10, 1635 },
+ { 8, 10, 17 }, { 138, 10, 295 }, { 136, 11, 404 }, { 7, 0, 103 },
+ { 7, 0, 863 }, { 11, 0, 184 }, { 145, 0, 62 }, { 138, 10, 558 },
+ { 137, 0, 659 }, { 6, 11, 312 }, { 6, 11, 1715 }, { 10, 11, 584 },
+ { 11, 11, 546 }, { 11, 11, 692 }, { 12, 11, 259 }, { 12, 11, 295 },
+ { 13, 11, 46 }, { 141, 11, 154 }, { 134, 0, 676 }, { 132, 11, 588 },
+ { 4, 11, 231 }, { 5, 11, 61 }, { 6, 11, 104 }, { 7, 11, 729 },
+ { 7, 11, 964 }, { 7, 11, 1658 }, { 140, 11, 414 }, { 6, 11, 263 },
+ { 138, 11, 757 }, { 11, 0, 337 }, { 142, 0, 303 }, { 135, 11, 1363 },
+ { 132, 11, 320 }, { 140, 0, 506 }, { 134, 10, 447 }, { 5, 0, 77 },
+ { 7, 0, 1455 }, { 10, 0, 843 }, { 147, 0, 73 }, { 7, 10, 577 },
+ { 7, 10, 1432 }, { 9, 10, 475 }, { 9, 10, 505 }, { 9, 10, 526 },
+ { 9, 10, 609 }, { 9, 10, 689 }, { 9, 10, 726 }, { 9, 10, 735 },
+ { 9, 10, 738 }, { 10, 10, 556 }, { 10, 10, 674 }, { 10, 10, 684 },
+ { 11, 10, 89 }, { 11, 10, 202 }, { 11, 10, 272 }, { 11, 10, 380 },
+ { 11, 10, 415 }, { 11, 10, 505 }, { 11, 10, 537 }, { 11, 10, 550 },
+ { 11, 10, 562 }, { 11, 10, 640 }, { 11, 10, 667 }, { 11, 10, 688 },
+ { 11, 10, 847 }, { 11, 10, 927 }, { 11, 10, 930 }, { 11, 10, 940 },
+ { 12, 10, 144 }, { 12, 10, 325 }, { 12, 10, 329 }, { 12, 10, 389 },
+ { 12, 10, 403 }, { 12, 10, 451 }, { 12, 10, 515 }, { 12, 10, 604 },
+ { 12, 10, 616 }, { 12, 10, 626 }, { 13, 10, 66 }, { 13, 10, 131 },
+ { 13, 10, 167 }, { 13, 10, 236 }, { 13, 10, 368 }, { 13, 10, 411 },
+ { 13, 10, 434 }, { 13, 10, 453 }, { 13, 10, 461 }, { 13, 10, 474 },
+ { 14, 10, 59 }, { 14, 10, 60 }, { 14, 10, 139 }, { 14, 10, 152 },
+ { 14, 10, 276 }, { 14, 10, 353 }, { 14, 10, 402 }, { 15, 10, 28 },
+ { 15, 10, 81 }, { 15, 10, 123 }, { 15, 10, 152 }, { 18, 10, 136 },
+ { 148, 10, 88 }, { 132, 0, 458 }, { 135, 0, 1420 }, { 6, 0, 109 },
+ { 10, 0, 382 }, { 4, 11, 405 }, { 4, 10, 609 }, { 7, 10, 756 },
+ { 7, 11, 817 }, { 9, 10, 544 }, { 11, 10, 413 }, { 14, 11, 58 },
+ { 14, 10, 307 }, { 16, 10, 25 }, { 17, 11, 37 }, { 146, 11, 124 },
+ { 6, 0, 330 }, { 7, 0, 1084 }, { 11, 0, 142 }, { 133, 11, 974 },
+ { 4, 10, 930 }, { 133, 10, 947 }, { 5, 10, 939 }, { 142, 11, 394 },
+ { 16, 0, 91 }, { 145, 0, 87 }, { 5, 11, 235 }, { 5, 10, 962 },
+ { 7, 11, 1239 }, { 11, 11, 131 }, { 140, 11, 370 }, { 11, 0, 492 },
+ { 5, 10, 651 }, { 8, 10, 170 }, { 9, 10, 61 }, { 9, 10, 63 },
+ { 10, 10, 23 }, { 10, 10, 37 }, { 10, 10, 834 }, { 11, 10, 4 },
+ { 11, 10, 281 }, { 11, 10, 503 }, { 11, 10, 677 }, { 12, 10, 96 },
+ { 12, 10, 130 }, { 12, 10, 244 }, { 14, 10, 5 }, { 14, 10, 40 },
+ { 14, 10, 162 }, { 14, 10, 202 }, { 146, 10, 133 }, { 4, 10, 406 },
+ { 5, 10, 579 }, { 12, 10, 492 }, { 150, 10, 15 }, { 9, 11, 137 },
+ { 138, 11, 221 }, { 134, 0, 1239 }, { 11, 0, 211 }, { 140, 0, 145 },
+ { 7, 11, 390 }, { 138, 11, 140 }, { 135, 11, 1418 }, { 135, 11, 1144 },
+ { 134, 0, 1049 }, { 7, 0, 321 }, { 6, 10, 17 }, { 7, 10, 1001 },
+ { 7, 10, 1982 }, { 9, 10, 886 }, { 10, 10, 489 }, { 10, 10, 800 },
+ { 11, 10, 782 }, { 12, 10, 320 }, { 13, 10, 467 }, { 14, 10, 145 },
+ { 14, 10, 387 }, { 143, 10, 119 }, { 145, 10, 17 }, { 5, 11, 407 },
+ { 11, 11, 489 }, { 19, 11, 37 }, { 20, 11, 73 }, { 150, 11, 38 },
+ { 133, 10, 458 }, { 135, 0, 1985 }, { 7, 10, 1983 }, { 8, 10, 0 },
+ { 8, 10, 171 }, { 9, 10, 120 }, { 9, 10, 732 }, { 10, 10, 473 },
+ { 11, 10, 656 }, { 11, 10, 998 }, { 18, 10, 0 }, { 18, 10, 2 },
+ { 147, 10, 21 }, { 5, 11, 325 }, { 7, 11, 1483 }, { 8, 11, 5 },
+ { 8, 11, 227 }, { 9, 11, 105 }, { 10, 11, 585 }, { 140, 11, 614 },
+ { 136, 0, 122 }, { 132, 0, 234 }, { 135, 11, 1196 }, { 6, 0, 976 },
+ { 6, 0, 1098 }, { 134, 0, 1441 }, { 7, 0, 253 }, { 136, 0, 549 },
+ { 6, 11, 621 }, { 13, 11, 504 }, { 144, 11, 19 }, { 132, 10, 519 },
+ { 5, 0, 430 }, { 5, 0, 932 }, { 6, 0, 131 }, { 7, 0, 417 },
+ { 9, 0, 522 }, { 11, 0, 314 }, { 141, 0, 390 }, { 14, 0, 149 },
+ { 14, 0, 399 }, { 143, 0, 57 }, { 5, 10, 907 }, { 6, 10, 31 },
+ { 6, 11, 218 }, { 7, 10, 491 }, { 7, 10, 530 }, { 8, 10, 592 },
+ { 11, 10, 53 }, { 11, 10, 779 }, { 12, 10, 167 }, { 12, 10, 411 },
+ { 14, 10, 14 }, { 14, 10, 136 }, { 15, 10, 72 }, { 16, 10, 17 },
+ { 144, 10, 72 }, { 140, 11, 330 }, { 7, 11, 454 }, { 7, 11, 782 },
+ { 136, 11, 768 }, { 132, 0, 507 }, { 10, 11, 676 }, { 140, 11, 462 },
+ { 6, 0, 630 }, { 9, 0, 811 }, { 4, 10, 208 }, { 5, 10, 106 },
+ { 6, 10, 531 }, { 8, 10, 408 }, { 9, 10, 188 }, { 138, 10, 572 },
+ { 4, 0, 343 }, { 5, 0, 511 }, { 134, 10, 1693 }, { 134, 11, 164 },
+ { 132, 0, 448 }, { 7, 0, 455 }, { 138, 0, 591 }, { 135, 0, 1381 },
+ { 12, 10, 441 }, { 150, 11, 50 }, { 9, 10, 449 }, { 10, 10, 192 },
+ { 138, 10, 740 }, { 6, 0, 575 }, { 132, 10, 241 }, { 134, 0, 1175 },
+ { 134, 0, 653 }, { 134, 0, 1761 }, { 134, 0, 1198 }, { 132, 10, 259 },
+ { 6, 11, 343 }, { 7, 11, 195 }, { 9, 11, 226 }, { 10, 11, 197 },
+ { 10, 11, 575 }, { 11, 11, 502 }, { 139, 11, 899 }, { 7, 0, 1127 },
+ { 7, 0, 1572 }, { 10, 0, 297 }, { 10, 0, 422 }, { 11, 0, 764 },
+ { 11, 0, 810 }, { 12, 0, 264 }, { 13, 0, 102 }, { 13, 0, 300 },
+ { 13, 0, 484 }, { 14, 0, 147 }, { 14, 0, 229 }, { 17, 0, 71 },
+ { 18, 0, 118 }, { 147, 0, 120 }, { 135, 11, 666 }, { 132, 0, 678 },
+ { 4, 10, 173 }, { 5, 10, 312 }, { 5, 10, 512 }, { 135, 10, 1285 },
+ { 7, 10, 1603 }, { 7, 10, 1691 }, { 9, 10, 464 }, { 11, 10, 195 },
+ { 12, 10, 279 }, { 12, 10, 448 }, { 14, 10, 11 }, { 147, 10, 102 },
+ { 16, 0, 99 }, { 146, 0, 164 }, { 7, 11, 1125 }, { 9, 11, 143 },
+ { 11, 11, 61 }, { 14, 11, 405 }, { 150, 11, 21 }, { 137, 11, 260 },
+ { 4, 10, 452 }, { 5, 10, 583 }, { 5, 10, 817 }, { 6, 10, 433 },
+ { 7, 10, 593 }, { 7, 10, 720 }, { 7, 10, 1378 }, { 8, 10, 161 },
+ { 9, 10, 284 }, { 10, 10, 313 }, { 139, 10, 886 }, { 132, 10, 547 },
+ { 136, 10, 722 }, { 14, 0, 35 }, { 142, 0, 191 }, { 141, 0, 45 },
+ { 138, 0, 121 }, { 132, 0, 125 }, { 134, 0, 1622 }, { 133, 11, 959 },
+ { 8, 10, 420 }, { 139, 10, 193 }, { 132, 0, 721 }, { 135, 10, 409 },
+ { 136, 0, 145 }, { 7, 0, 792 }, { 8, 0, 147 }, { 10, 0, 821 },
+ { 11, 0, 970 }, { 11, 0, 1021 }, { 136, 11, 173 }, { 134, 11, 266 },
+ { 132, 0, 715 }, { 7, 0, 1999 }, { 138, 10, 308 }, { 133, 0, 531 },
+ { 5, 0, 168 }, { 5, 0, 930 }, { 8, 0, 74 }, { 9, 0, 623 },
+ { 12, 0, 500 }, { 140, 0, 579 }, { 144, 0, 65 }, { 138, 11, 246 },
+ { 6, 0, 220 }, { 7, 0, 1101 }, { 13, 0, 105 }, { 142, 11, 314 },
+ { 5, 10, 1002 }, { 136, 10, 745 }, { 134, 0, 960 }, { 20, 0, 0 },
+ { 148, 11, 0 }, { 4, 0, 1005 }, { 4, 10, 239 }, { 6, 10, 477 },
+ { 7, 10, 1607 }, { 11, 10, 68 }, { 139, 10, 617 }, { 6, 0, 19 },
+ { 7, 0, 1413 }, { 139, 0, 428 }, { 149, 10, 13 }, { 7, 0, 96 },
+ { 8, 0, 401 }, { 8, 0, 703 }, { 9, 0, 896 }, { 136, 11, 300 },
+ { 134, 0, 1595 }, { 145, 0, 116 }, { 136, 0, 1021 }, { 7, 0, 1961 },
+ { 7, 0, 1965 }, { 7, 0, 2030 }, { 8, 0, 150 }, { 8, 0, 702 },
+ { 8, 0, 737 }, { 8, 0, 750 }, { 140, 0, 366 }, { 11, 11, 75 },
+ { 142, 11, 267 }, { 132, 10, 367 }, { 8, 0, 800 }, { 9, 0, 148 },
+ { 9, 0, 872 }, { 9, 0, 890 }, { 11, 0, 309 }, { 11, 0, 1001 },
+ { 13, 0, 267 }, { 13, 0, 323 }, { 5, 11, 427 }, { 5, 11, 734 },
+ { 7, 11, 478 }, { 136, 11, 52 }, { 7, 11, 239 }, { 11, 11, 217 },
+ { 142, 11, 165 }, { 132, 11, 323 }, { 140, 11, 419 }, { 13, 0, 299 },
+ { 142, 0, 75 }, { 6, 11, 87 }, { 6, 11, 1734 }, { 7, 11, 20 },
+ { 7, 11, 1056 }, { 8, 11, 732 }, { 9, 11, 406 }, { 9, 11, 911 },
+ { 138, 11, 694 }, { 134, 0, 1383 }, { 132, 10, 694 }, { 133, 11, 613 },
+ { 137, 0, 779 }, { 4, 0, 598 }, { 140, 10, 687 }, { 6, 0, 970 },
+ { 135, 0, 424 }, { 133, 0, 547 }, { 7, 11, 32 }, { 7, 11, 984 },
+ { 8, 11, 85 }, { 8, 11, 709 }, { 9, 11, 579 }, { 9, 11, 847 },
+ { 9, 11, 856 }, { 10, 11, 799 }, { 11, 11, 258 }, { 11, 11, 1007 },
+ { 12, 11, 331 }, { 12, 11, 615 }, { 13, 11, 188 }, { 13, 11, 435 },
+ { 14, 11, 8 }, { 15, 11, 165 }, { 16, 11, 27 }, { 148, 11, 40 },
+ { 6, 0, 1222 }, { 134, 0, 1385 }, { 132, 0, 876 }, { 138, 11, 151 },
+ { 135, 10, 213 }, { 4, 11, 167 }, { 135, 11, 82 }, { 133, 0, 133 },
+ { 6, 11, 24 }, { 7, 11, 74 }, { 7, 11, 678 }, { 137, 11, 258 },
+ { 5, 11, 62 }, { 6, 11, 534 }, { 7, 11, 684 }, { 7, 11, 1043 },
+ { 7, 11, 1072 }, { 8, 11, 280 }, { 8, 11, 541 }, { 8, 11, 686 },
+ { 10, 11, 519 }, { 11, 11, 252 }, { 140, 11, 282 }, { 136, 0, 187 },
+ { 8, 0, 8 }, { 10, 0, 0 }, { 10, 0, 818 }, { 139, 0, 988 },
+ { 132, 11, 359 }, { 11, 0, 429 }, { 15, 0, 51 }, { 135, 10, 1672 },
+ { 136, 0, 685 }, { 5, 11, 211 }, { 7, 11, 88 }, { 136, 11, 627 },
+ { 134, 0, 472 }, { 136, 0, 132 }, { 6, 11, 145 }, { 141, 11, 336 },
+ { 4, 10, 751 }, { 11, 10, 390 }, { 140, 10, 32 }, { 6, 0, 938 },
+ { 6, 0, 1060 }, { 4, 11, 263 }, { 4, 10, 409 }, { 133, 10, 78 },
+ { 137, 0, 874 }, { 8, 0, 774 }, { 10, 0, 670 }, { 12, 0, 51 },
+ { 4, 11, 916 }, { 6, 10, 473 }, { 7, 10, 1602 }, { 10, 10, 698 },
+ { 12, 10, 212 }, { 13, 10, 307 }, { 145, 10, 105 }, { 146, 0, 92 },
+ { 143, 10, 156 }, { 132, 0, 830 }, { 137, 0, 701 }, { 4, 11, 599 },
+ { 6, 11, 1634 }, { 7, 11, 5 }, { 7, 11, 55 }, { 7, 11, 67 },
+ { 7, 11, 97 }, { 7, 11, 691 }, { 7, 11, 979 }, { 7, 11, 1697 },
+ { 8, 11, 207 }, { 8, 11, 214 }, { 8, 11, 231 }, { 8, 11, 294 },
+ { 8, 11, 336 }, { 8, 11, 428 }, { 8, 11, 451 }, { 8, 11, 460 },
+ { 8, 11, 471 }, { 8, 11, 622 }, { 8, 11, 626 }, { 8, 11, 679 },
+ { 8, 11, 759 }, { 8, 11, 829 }, { 9, 11, 11 }, { 9, 11, 246 },
+ { 9, 11, 484 }, { 9, 11, 573 }, { 9, 11, 706 }, { 9, 11, 762 },
+ { 9, 11, 798 }, { 9, 11, 855 }, { 9, 11, 870 }, { 9, 11, 912 },
+ { 10, 11, 303 }, { 10, 11, 335 }, { 10, 11, 424 }, { 10, 11, 461 },
+ { 10, 11, 543 }, { 10, 11, 759 }, { 10, 11, 814 }, { 11, 11, 59 },
+ { 11, 11, 199 }, { 11, 11, 235 }, { 11, 11, 475 }, { 11, 11, 590 },
+ { 11, 11, 929 }, { 11, 11, 963 }, { 12, 11, 114 }, { 12, 11, 182 },
+ { 12, 11, 226 }, { 12, 11, 332 }, { 12, 11, 439 }, { 12, 11, 575 },
+ { 12, 11, 598 }, { 13, 11, 8 }, { 13, 11, 125 }, { 13, 11, 194 },
+ { 13, 11, 287 }, { 14, 11, 197 }, { 14, 11, 383 }, { 15, 11, 53 },
+ { 17, 11, 63 }, { 19, 11, 46 }, { 19, 11, 98 }, { 19, 11, 106 },
+ { 148, 11, 85 }, { 4, 0, 127 }, { 5, 0, 350 }, { 6, 0, 356 },
+ { 8, 0, 426 }, { 9, 0, 572 }, { 10, 0, 247 }, { 139, 0, 312 },
+ { 134, 0, 1215 }, { 6, 0, 59 }, { 9, 0, 603 }, { 13, 0, 397 },
+ { 7, 11, 1853 }, { 138, 11, 437 }, { 134, 0, 1762 }, { 147, 11, 126 },
+ { 135, 10, 883 }, { 13, 0, 293 }, { 142, 0, 56 }, { 133, 10, 617 },
+ { 139, 10, 50 }, { 5, 11, 187 }, { 7, 10, 1518 }, { 139, 10, 694 },
+ { 135, 0, 441 }, { 6, 0, 111 }, { 7, 0, 4 }, { 8, 0, 163 },
+ { 8, 0, 776 }, { 138, 0, 566 }, { 132, 0, 806 }, { 4, 11, 215 },
+ { 9, 11, 38 }, { 10, 11, 3 }, { 11, 11, 23 }, { 11, 11, 127 },
+ { 139, 11, 796 }, { 14, 0, 233 }, { 4, 10, 546 }, { 135, 10, 2042 },
+ { 135, 0, 1994 }, { 134, 0, 1739 }, { 135, 11, 1530 }, { 136, 0, 393 },
+ { 5, 0, 297 }, { 7, 0, 1038 }, { 14, 0, 359 }, { 19, 0, 52 },
+ { 148, 0, 47 }, { 135, 0, 309 }, { 4, 10, 313 }, { 133, 10, 577 },
+ { 8, 10, 184 }, { 141, 10, 433 }, { 135, 10, 935 }, { 12, 10, 186 },
+ { 12, 10, 292 }, { 14, 10, 100 }, { 146, 10, 70 }, { 136, 0, 363 },
+ { 14, 0, 175 }, { 11, 10, 402 }, { 12, 10, 109 }, { 12, 10, 431 },
+ { 13, 10, 179 }, { 13, 10, 206 }, { 14, 10, 217 }, { 16, 10, 3 },
+ { 148, 10, 53 }, { 5, 10, 886 }, { 6, 10, 46 }, { 6, 10, 1790 },
+ { 7, 10, 14 }, { 7, 10, 732 }, { 7, 10, 1654 }, { 8, 10, 95 },
+ { 8, 10, 327 }, { 8, 10, 616 }, { 9, 10, 892 }, { 10, 10, 598 },
+ { 10, 10, 769 }, { 11, 10, 134 }, { 11, 10, 747 }, { 12, 10, 378 },
+ { 142, 10, 97 }, { 136, 0, 666 }, { 135, 0, 1675 }, { 6, 0, 655 },
+ { 134, 0, 1600 }, { 135, 0, 808 }, { 133, 10, 1021 }, { 4, 11, 28 },
+ { 5, 11, 440 }, { 7, 11, 248 }, { 11, 11, 833 }, { 140, 11, 344 },
+ { 134, 11, 1654 }, { 132, 0, 280 }, { 140, 0, 54 }, { 4, 0, 421 },
+ { 133, 0, 548 }, { 132, 10, 153 }, { 6, 11, 339 }, { 135, 11, 923 },
+ { 133, 11, 853 }, { 133, 10, 798 }, { 132, 10, 587 }, { 6, 11, 249 },
+ { 7, 11, 1234 }, { 139, 11, 573 }, { 6, 10, 598 }, { 7, 10, 42 },
+ { 8, 10, 695 }, { 10, 10, 212 }, { 11, 10, 158 }, { 14, 10, 196 },
+ { 145, 10, 85 }, { 7, 0, 249 }, { 5, 10, 957 }, { 133, 10, 1008 },
+ { 4, 10, 129 }, { 135, 10, 465 }, { 6, 0, 254 }, { 7, 0, 842 },
+ { 7, 0, 1659 }, { 9, 0, 109 }, { 10, 0, 103 }, { 7, 10, 908 },
+ { 7, 10, 1201 }, { 9, 10, 755 }, { 11, 10, 906 }, { 12, 10, 527 },
+ { 146, 10, 7 }, { 5, 0, 262 }, { 136, 10, 450 }, { 144, 0, 1 },
+ { 10, 11, 201 }, { 142, 11, 319 }, { 7, 11, 49 }, { 7, 11, 392 },
+ { 8, 11, 20 }, { 8, 11, 172 }, { 8, 11, 690 }, { 9, 11, 383 },
+ { 9, 11, 845 }, { 10, 11, 48 }, { 11, 11, 293 }, { 11, 11, 832 },
+ { 11, 11, 920 }, { 141, 11, 221 }, { 5, 11, 858 }, { 133, 11, 992 },
+ { 134, 0, 805 }, { 139, 10, 1003 }, { 6, 0, 1630 }, { 134, 11, 307 },
+ { 7, 11, 1512 }, { 135, 11, 1794 }, { 6, 11, 268 }, { 137, 11, 62 },
+ { 135, 10, 1868 }, { 133, 0, 671 }, { 4, 0, 989 }, { 8, 0, 972 },
+ { 136, 0, 998 }, { 132, 11, 423 }, { 132, 0, 889 }, { 135, 0, 1382 },
+ { 135, 0, 1910 }, { 7, 10, 965 }, { 7, 10, 1460 }, { 135, 10, 1604 },
+ { 4, 0, 627 }, { 5, 0, 775 }, { 138, 11, 106 }, { 134, 11, 348 },
+ { 7, 0, 202 }, { 11, 0, 362 }, { 11, 0, 948 }, { 140, 0, 388 },
+ { 138, 11, 771 }, { 6, 11, 613 }, { 136, 11, 223 }, { 6, 0, 560 },
+ { 7, 0, 451 }, { 8, 0, 389 }, { 12, 0, 490 }, { 13, 0, 16 },
+ { 13, 0, 215 }, { 13, 0, 351 }, { 18, 0, 132 }, { 147, 0, 125 },
+ { 135, 0, 841 }, { 136, 0, 566 }, { 136, 0, 938 }, { 132, 11, 670 },
+ { 5, 0, 912 }, { 6, 0, 1695 }, { 140, 11, 55 }, { 9, 11, 40 },
+ { 139, 11, 136 }, { 7, 0, 1361 }, { 7, 10, 982 }, { 10, 10, 32 },
+ { 143, 10, 56 }, { 11, 11, 259 }, { 140, 11, 270 }, { 5, 0, 236 },
+ { 6, 0, 572 }, { 8, 0, 492 }, { 11, 0, 618 }, { 144, 0, 56 },
+ { 8, 11, 572 }, { 9, 11, 310 }, { 9, 11, 682 }, { 137, 11, 698 },
+ { 134, 0, 1854 }, { 5, 0, 190 }, { 136, 0, 318 }, { 133, 10, 435 },
+ { 135, 0, 1376 }, { 4, 11, 296 }, { 6, 11, 352 }, { 7, 11, 401 },
+ { 7, 11, 1410 }, { 7, 11, 1594 }, { 7, 11, 1674 }, { 8, 11, 63 },
+ { 8, 11, 660 }, { 137, 11, 74 }, { 7, 0, 349 }, { 5, 10, 85 },
+ { 6, 10, 419 }, { 7, 10, 305 }, { 7, 10, 361 }, { 7, 10, 1337 },
+ { 8, 10, 71 }, { 140, 10, 519 }, { 4, 11, 139 }, { 4, 11, 388 },
+ { 140, 11, 188 }, { 6, 0, 1972 }, { 6, 0, 2013 }, { 8, 0, 951 },
+ { 10, 0, 947 }, { 10, 0, 974 }, { 10, 0, 1018 }, { 142, 0, 476 },
+ { 140, 10, 688 }, { 135, 10, 740 }, { 5, 10, 691 }, { 7, 10, 345 },
+ { 9, 10, 94 }, { 140, 10, 169 }, { 9, 0, 344 }, { 5, 10, 183 },
+ { 6, 10, 582 }, { 10, 10, 679 }, { 140, 10, 435 }, { 135, 10, 511 },
+ { 132, 0, 850 }, { 8, 11, 441 }, { 10, 11, 314 }, { 143, 11, 3 },
+ { 7, 10, 1993 }, { 136, 10, 684 }, { 4, 11, 747 }, { 6, 11, 290 },
+ { 6, 10, 583 }, { 7, 11, 649 }, { 7, 11, 1479 }, { 135, 11, 1583 },
+ { 133, 11, 232 }, { 133, 10, 704 }, { 134, 0, 910 }, { 4, 10, 179 },
+ { 5, 10, 198 }, { 133, 10, 697 }, { 7, 10, 347 }, { 7, 10, 971 },
+ { 8, 10, 181 }, { 138, 10, 711 }, { 136, 11, 525 }, { 14, 0, 19 },
+ { 14, 0, 28 }, { 144, 0, 29 }, { 7, 0, 85 }, { 7, 0, 247 },
+ { 8, 0, 585 }, { 138, 0, 163 }, { 4, 0, 487 }, { 7, 11, 472 },
+ { 7, 11, 1801 }, { 10, 11, 748 }, { 141, 11, 458 }, { 4, 10, 243 },
+ { 5, 10, 203 }, { 7, 10, 19 }, { 7, 10, 71 }, { 7, 10, 113 },
+ { 10, 10, 405 }, { 11, 10, 357 }, { 142, 10, 240 }, { 7, 10, 1450 },
+ { 139, 10, 99 }, { 132, 11, 425 }, { 138, 0, 145 }, { 147, 0, 83 },
+ { 6, 10, 492 }, { 137, 11, 247 }, { 4, 0, 1013 }, { 134, 0, 2033 },
+ { 5, 10, 134 }, { 6, 10, 408 }, { 6, 10, 495 }, { 135, 10, 1593 },
+ { 135, 0, 1922 }, { 134, 11, 1768 }, { 4, 0, 124 }, { 10, 0, 457 },
+ { 11, 0, 121 }, { 11, 0, 169 }, { 11, 0, 870 }, { 11, 0, 874 },
+ { 12, 0, 214 }, { 14, 0, 187 }, { 143, 0, 77 }, { 5, 0, 557 },
+ { 135, 0, 1457 }, { 139, 0, 66 }, { 5, 11, 943 }, { 6, 11, 1779 },
+ { 142, 10, 4 }, { 4, 10, 248 }, { 4, 10, 665 }, { 7, 10, 137 },
+ { 137, 10, 349 }, { 7, 0, 1193 }, { 5, 11, 245 }, { 6, 11, 576 },
+ { 7, 11, 582 }, { 136, 11, 225 }, { 144, 0, 82 }, { 7, 10, 1270 },
+ { 139, 10, 612 }, { 5, 0, 454 }, { 10, 0, 352 }, { 138, 11, 352 },
+ { 18, 0, 57 }, { 5, 10, 371 }, { 135, 10, 563 }, { 135, 0, 1333 },
+ { 6, 0, 107 }, { 7, 0, 638 }, { 7, 0, 1632 }, { 9, 0, 396 },
+ { 134, 11, 610 }, { 5, 0, 370 }, { 134, 0, 1756 }, { 4, 10, 374 },
+ { 7, 10, 547 }, { 7, 10, 1700 }, { 7, 10, 1833 }, { 139, 10, 858 },
+ { 133, 0, 204 }, { 6, 0, 1305 }, { 9, 10, 311 }, { 141, 10, 42 },
+ { 5, 0, 970 }, { 134, 0, 1706 }, { 6, 10, 1647 }, { 7, 10, 1552 },
+ { 7, 10, 2010 }, { 9, 10, 494 }, { 137, 10, 509 }, { 13, 11, 455 },
+ { 15, 11, 99 }, { 15, 11, 129 }, { 144, 11, 68 }, { 135, 0, 3 },
+ { 4, 0, 35 }, { 5, 0, 121 }, { 5, 0, 483 }, { 5, 0, 685 },
+ { 6, 0, 489 }, { 6, 0, 782 }, { 6, 0, 1032 }, { 7, 0, 1204 },
+ { 136, 0, 394 }, { 4, 0, 921 }, { 133, 0, 1007 }, { 8, 11, 360 },
+ { 138, 11, 63 }, { 135, 0, 1696 }, { 134, 0, 1519 }, { 132, 11, 443 },
+ { 135, 11, 944 }, { 6, 10, 123 }, { 7, 10, 214 }, { 9, 10, 728 },
+ { 10, 10, 157 }, { 11, 10, 346 }, { 11, 10, 662 }, { 143, 10, 106 },
+ { 137, 0, 981 }, { 135, 10, 1435 }, { 134, 0, 1072 }, { 132, 0, 712 },
+ { 134, 0, 1629 }, { 134, 0, 728 }, { 4, 11, 298 }, { 137, 11, 483 },
+ { 6, 0, 1177 }, { 6, 0, 1271 }, { 5, 11, 164 }, { 7, 11, 121 },
+ { 142, 11, 189 }, { 7, 0, 1608 }, { 4, 10, 707 }, { 5, 10, 588 },
+ { 6, 10, 393 }, { 13, 10, 106 }, { 18, 10, 49 }, { 147, 10, 41 },
+ { 23, 0, 16 }, { 151, 11, 16 }, { 6, 10, 211 }, { 7, 10, 1690 },
+ { 11, 10, 486 }, { 140, 10, 369 }, { 133, 0, 485 }, { 19, 11, 15 },
+ { 149, 11, 27 }, { 4, 11, 172 }, { 9, 11, 611 }, { 10, 11, 436 },
+ { 12, 11, 673 }, { 141, 11, 255 }, { 5, 11, 844 }, { 10, 11, 484 },
+ { 11, 11, 754 }, { 12, 11, 457 }, { 14, 11, 171 }, { 14, 11, 389 },
+ { 146, 11, 153 }, { 4, 0, 285 }, { 5, 0, 27 }, { 5, 0, 317 },
+ { 6, 0, 301 }, { 7, 0, 7 }, { 8, 0, 153 }, { 10, 0, 766 },
+ { 11, 0, 468 }, { 12, 0, 467 }, { 141, 0, 143 }, { 134, 0, 1462 },
+ { 9, 11, 263 }, { 10, 11, 147 }, { 138, 11, 492 }, { 133, 11, 537 },
+ { 6, 0, 1945 }, { 6, 0, 1986 }, { 6, 0, 1991 }, { 134, 0, 2038 },
+ { 134, 10, 219 }, { 137, 11, 842 }, { 14, 0, 52 }, { 17, 0, 50 },
+ { 5, 10, 582 }, { 6, 10, 1646 }, { 7, 10, 99 }, { 7, 10, 1962 },
+ { 7, 10, 1986 }, { 8, 10, 515 }, { 8, 10, 773 }, { 9, 10, 23 },
+ { 9, 10, 491 }, { 12, 10, 620 }, { 142, 10, 93 }, { 138, 11, 97 },
+ { 20, 0, 21 }, { 20, 0, 44 }, { 133, 10, 851 }, { 136, 0, 819 },
+ { 139, 0, 917 }, { 5, 11, 230 }, { 5, 11, 392 }, { 6, 11, 420 },
+ { 8, 10, 762 }, { 8, 10, 812 }, { 9, 11, 568 }, { 9, 10, 910 },
+ { 140, 11, 612 }, { 135, 0, 784 }, { 15, 0, 135 }, { 143, 11, 135 },
+ { 10, 0, 454 }, { 140, 0, 324 }, { 4, 11, 0 }, { 5, 11, 41 },
+ { 7, 11, 1459 }, { 7, 11, 1469 }, { 7, 11, 1618 }, { 7, 11, 1859 },
+ { 9, 11, 549 }, { 139, 11, 905 }, { 4, 10, 98 }, { 7, 10, 1365 },
+ { 9, 10, 422 }, { 9, 10, 670 }, { 10, 10, 775 }, { 11, 10, 210 },
+ { 13, 10, 26 }, { 13, 10, 457 }, { 141, 10, 476 }, { 6, 0, 1719 },
+ { 6, 0, 1735 }, { 7, 0, 2016 }, { 7, 0, 2020 }, { 8, 0, 837 },
+ { 137, 0, 852 }, { 133, 11, 696 }, { 135, 0, 852 }, { 132, 0, 952 },
+ { 134, 10, 1730 }, { 132, 11, 771 }, { 138, 0, 568 }, { 137, 0, 448 },
+ { 139, 0, 146 }, { 8, 0, 67 }, { 138, 0, 419 }, { 133, 11, 921 },
+ { 137, 10, 147 }, { 134, 0, 1826 }, { 10, 0, 657 }, { 14, 0, 297 },
+ { 142, 0, 361 }, { 6, 0, 666 }, { 6, 0, 767 }, { 134, 0, 1542 },
+ { 139, 0, 729 }, { 6, 11, 180 }, { 7, 11, 1137 }, { 8, 11, 751 },
+ { 139, 11, 805 }, { 4, 11, 183 }, { 7, 11, 271 }, { 11, 11, 824 },
+ { 11, 11, 952 }, { 13, 11, 278 }, { 13, 11, 339 }, { 13, 11, 482 },
+ { 14, 11, 424 }, { 148, 11, 99 }, { 4, 0, 669 }, { 5, 11, 477 },
+ { 5, 11, 596 }, { 6, 11, 505 }, { 7, 11, 1221 }, { 11, 11, 907 },
+ { 12, 11, 209 }, { 141, 11, 214 }, { 135, 11, 1215 }, { 5, 0, 402 },
+ { 6, 10, 30 }, { 11, 10, 56 }, { 139, 10, 305 }, { 7, 11, 564 },
+ { 142, 11, 168 }, { 139, 0, 152 }, { 7, 0, 912 }, { 135, 10, 1614 },
+ { 4, 10, 150 }, { 5, 10, 303 }, { 134, 10, 327 }, { 7, 0, 320 },
+ { 8, 0, 51 }, { 9, 0, 868 }, { 10, 0, 833 }, { 12, 0, 481 },
+ { 12, 0, 570 }, { 148, 0, 106 }, { 132, 0, 445 }, { 7, 11, 274 },
+ { 11, 11, 263 }, { 11, 11, 479 }, { 11, 11, 507 }, { 140, 11, 277 },
+ { 10, 0, 555 }, { 11, 0, 308 }, { 19, 0, 95 }, { 6, 11, 1645 },
+ { 8, 10, 192 }, { 10, 10, 78 }, { 141, 10, 359 }, { 135, 10, 786 },
+ { 6, 11, 92 }, { 6, 11, 188 }, { 7, 11, 1269 }, { 7, 11, 1524 },
+ { 7, 11, 1876 }, { 10, 11, 228 }, { 139, 11, 1020 }, { 4, 11, 459 },
+ { 133, 11, 966 }, { 11, 0, 386 }, { 6, 10, 1638 }, { 7, 10, 79 },
+ { 7, 10, 496 }, { 9, 10, 138 }, { 10, 10, 336 }, { 12, 10, 412 },
+ { 12, 10, 440 }, { 142, 10, 305 }, { 133, 0, 239 }, { 7, 0, 83 },
+ { 7, 0, 1990 }, { 8, 0, 130 }, { 139, 0, 720 }, { 138, 11, 709 },
+ { 4, 0, 143 }, { 5, 0, 550 }, { 133, 0, 752 }, { 5, 0, 123 },
+ { 6, 0, 530 }, { 7, 0, 348 }, { 135, 0, 1419 }, { 135, 0, 2024 },
+ { 6, 11, 18 }, { 7, 11, 179 }, { 7, 11, 721 }, { 7, 11, 932 },
+ { 8, 11, 548 }, { 8, 11, 757 }, { 9, 11, 54 }, { 9, 11, 65 },
+ { 9, 11, 532 }, { 9, 11, 844 }, { 10, 11, 113 }, { 10, 11, 117 },
+ { 10, 11, 236 }, { 10, 11, 315 }, { 10, 11, 430 }, { 10, 11, 798 },
+ { 11, 11, 153 }, { 11, 11, 351 }, { 11, 11, 375 }, { 12, 11, 78 },
+ { 12, 11, 151 }, { 12, 11, 392 }, { 14, 11, 248 }, { 143, 11, 23 },
+ { 7, 10, 204 }, { 7, 10, 415 }, { 8, 10, 42 }, { 10, 10, 85 },
+ { 139, 10, 564 }, { 134, 0, 958 }, { 133, 11, 965 }, { 132, 0, 210 },
+ { 135, 11, 1429 }, { 138, 11, 480 }, { 134, 11, 182 }, { 139, 11, 345 },
+ { 10, 11, 65 }, { 10, 11, 488 }, { 138, 11, 497 }, { 4, 10, 3 },
+ { 5, 10, 247 }, { 5, 10, 644 }, { 7, 10, 744 }, { 7, 10, 1207 },
+ { 7, 10, 1225 }, { 7, 10, 1909 }, { 146, 10, 147 }, { 132, 0, 430 },
+ { 5, 10, 285 }, { 9, 10, 67 }, { 13, 10, 473 }, { 143, 10, 82 },
+ { 144, 11, 16 }, { 7, 11, 1162 }, { 9, 11, 588 }, { 10, 11, 260 },
+ { 151, 10, 8 }, { 133, 0, 213 }, { 138, 0, 7 }, { 135, 0, 801 },
+ { 134, 11, 1786 }, { 135, 11, 308 }, { 6, 0, 936 }, { 134, 0, 1289 },
+ { 133, 0, 108 }, { 132, 0, 885 }, { 133, 0, 219 }, { 139, 0, 587 },
+ { 4, 0, 193 }, { 5, 0, 916 }, { 6, 0, 1041 }, { 7, 0, 364 },
+ { 10, 0, 398 }, { 10, 0, 726 }, { 11, 0, 317 }, { 11, 0, 626 },
+ { 12, 0, 142 }, { 12, 0, 288 }, { 12, 0, 678 }, { 13, 0, 313 },
+ { 15, 0, 113 }, { 146, 0, 114 }, { 135, 0, 1165 }, { 6, 0, 241 },
+ { 9, 0, 342 }, { 10, 0, 729 }, { 11, 0, 284 }, { 11, 0, 445 },
+ { 11, 0, 651 }, { 11, 0, 863 }, { 13, 0, 398 }, { 146, 0, 99 },
+ { 7, 0, 907 }, { 136, 0, 832 }, { 9, 0, 303 }, { 4, 10, 29 },
+ { 6, 10, 532 }, { 7, 10, 1628 }, { 7, 10, 1648 }, { 9, 10, 350 },
+ { 10, 10, 433 }, { 11, 10, 97 }, { 11, 10, 557 }, { 11, 10, 745 },
+ { 12, 10, 289 }, { 12, 10, 335 }, { 12, 10, 348 }, { 12, 10, 606 },
+ { 13, 10, 116 }, { 13, 10, 233 }, { 13, 10, 466 }, { 14, 10, 181 },
+ { 14, 10, 209 }, { 14, 10, 232 }, { 14, 10, 236 }, { 14, 10, 300 },
+ { 16, 10, 41 }, { 148, 10, 97 }, { 7, 11, 423 }, { 7, 10, 1692 },
+ { 136, 11, 588 }, { 6, 0, 931 }, { 134, 0, 1454 }, { 5, 10, 501 },
+ { 7, 10, 1704 }, { 9, 10, 553 }, { 11, 10, 520 }, { 12, 10, 557 },
+ { 141, 10, 249 }, { 136, 11, 287 }, { 4, 0, 562 }, { 9, 0, 254 },
+ { 139, 0, 879 }, { 132, 0, 786 }, { 14, 11, 32 }, { 18, 11, 85 },
+ { 20, 11, 2 }, { 152, 11, 16 }, { 135, 0, 1294 }, { 7, 11, 723 },
+ { 135, 11, 1135 }, { 6, 0, 216 }, { 7, 0, 901 }, { 7, 0, 1343 },
+ { 8, 0, 493 }, { 134, 11, 403 }, { 7, 11, 719 }, { 8, 11, 809 },
+ { 136, 11, 834 }, { 5, 11, 210 }, { 6, 11, 213 }, { 7, 11, 60 },
+ { 10, 11, 364 }, { 139, 11, 135 }, { 7, 0, 341 }, { 11, 0, 219 },
+ { 5, 11, 607 }, { 8, 11, 326 }, { 136, 11, 490 }, { 4, 11, 701 },
+ { 5, 11, 472 }, { 5, 11, 639 }, { 7, 11, 1249 }, { 9, 11, 758 },
+ { 139, 11, 896 }, { 135, 11, 380 }, { 135, 11, 1947 }, { 139, 0, 130 },
+ { 135, 0, 1734 }, { 10, 0, 115 }, { 11, 0, 420 }, { 12, 0, 154 },
+ { 13, 0, 404 }, { 14, 0, 346 }, { 143, 0, 54 }, { 134, 10, 129 },
+ { 4, 11, 386 }, { 7, 11, 41 }, { 8, 11, 405 }, { 9, 11, 497 },
+ { 11, 11, 110 }, { 11, 11, 360 }, { 15, 11, 37 }, { 144, 11, 84 },
+ { 141, 11, 282 }, { 5, 11, 46 }, { 7, 11, 1452 }, { 7, 11, 1480 },
+ { 8, 11, 634 }, { 140, 11, 472 }, { 4, 11, 524 }, { 136, 11, 810 },
+ { 10, 11, 238 }, { 141, 11, 33 }, { 133, 0, 604 }, { 5, 0, 1011 },
+ { 136, 0, 701 }, { 8, 0, 856 }, { 8, 0, 858 }, { 8, 0, 879 },
+ { 12, 0, 702 }, { 142, 0, 447 }, { 4, 0, 54 }, { 5, 0, 666 },
+ { 7, 0, 1039 }, { 7, 0, 1130 }, { 9, 0, 195 }, { 138, 0, 302 },
+ { 4, 10, 25 }, { 5, 10, 60 }, { 6, 10, 504 }, { 7, 10, 614 },
+ { 7, 10, 1155 }, { 140, 10, 0 }, { 7, 10, 1248 }, { 11, 10, 621 },
+ { 139, 10, 702 }, { 133, 11, 997 }, { 137, 10, 321 }, { 134, 0, 1669 },
+ { 134, 0, 1791 }, { 4, 10, 379 }, { 135, 10, 1397 }, { 138, 11, 372 },
+ { 5, 11, 782 }, { 5, 11, 829 }, { 134, 11, 1738 }, { 135, 0, 1228 },
+ { 4, 10, 118 }, { 6, 10, 274 }, { 6, 10, 361 }, { 7, 10, 75 },
+ { 141, 10, 441 }, { 132, 0, 623 }, { 9, 11, 279 }, { 10, 11, 407 },
+ { 14, 11, 84 }, { 150, 11, 18 }, { 137, 10, 841 }, { 135, 0, 798 },
+ { 140, 10, 693 }, { 5, 10, 314 }, { 6, 10, 221 }, { 7, 10, 419 },
+ { 10, 10, 650 }, { 11, 10, 396 }, { 12, 10, 156 }, { 13, 10, 369 },
+ { 14, 10, 333 }, { 145, 10, 47 }, { 135, 11, 1372 }, { 7, 0, 122 },
+ { 9, 0, 259 }, { 10, 0, 84 }, { 11, 0, 470 }, { 12, 0, 541 },
+ { 141, 0, 379 }, { 134, 0, 837 }, { 8, 0, 1013 }, { 4, 11, 78 },
+ { 5, 11, 96 }, { 5, 11, 182 }, { 7, 11, 1724 }, { 7, 11, 1825 },
+ { 10, 11, 394 }, { 10, 11, 471 }, { 11, 11, 532 }, { 14, 11, 340 },
+ { 145, 11, 88 }, { 134, 0, 577 }, { 135, 11, 1964 }, { 132, 10, 913 },
+ { 134, 0, 460 }, { 8, 0, 891 }, { 10, 0, 901 }, { 10, 0, 919 },
+ { 10, 0, 932 }, { 12, 0, 715 }, { 12, 0, 728 }, { 12, 0, 777 },
+ { 14, 0, 457 }, { 144, 0, 103 }, { 5, 0, 82 }, { 5, 0, 131 },
+ { 7, 0, 1755 }, { 8, 0, 31 }, { 9, 0, 168 }, { 9, 0, 764 },
+ { 139, 0, 869 }, { 136, 10, 475 }, { 6, 0, 605 }, { 5, 10, 1016 },
+ { 9, 11, 601 }, { 9, 11, 619 }, { 10, 11, 505 }, { 10, 11, 732 },
+ { 11, 11, 355 }, { 140, 11, 139 }, { 7, 10, 602 }, { 8, 10, 179 },
+ { 10, 10, 781 }, { 140, 10, 126 }, { 134, 0, 1246 }, { 6, 10, 329 },
+ { 138, 10, 111 }, { 6, 11, 215 }, { 7, 11, 1028 }, { 7, 11, 1473 },
+ { 7, 11, 1721 }, { 9, 11, 424 }, { 138, 11, 779 }, { 5, 0, 278 },
+ { 137, 0, 68 }, { 6, 0, 932 }, { 6, 0, 1084 }, { 144, 0, 86 },
+ { 4, 0, 163 }, { 5, 0, 201 }, { 5, 0, 307 }, { 5, 0, 310 },
+ { 6, 0, 335 }, { 7, 0, 284 }, { 7, 0, 1660 }, { 136, 0, 165 },
+ { 136, 0, 781 }, { 134, 0, 707 }, { 6, 0, 33 }, { 135, 0, 1244 },
+ { 5, 10, 821 }, { 6, 11, 67 }, { 6, 10, 1687 }, { 7, 11, 258 },
+ { 7, 11, 1630 }, { 9, 11, 354 }, { 9, 11, 675 }, { 10, 11, 830 },
+ { 14, 11, 80 }, { 145, 11, 80 }, { 6, 11, 141 }, { 7, 11, 225 },
+ { 9, 11, 59 }, { 9, 11, 607 }, { 10, 11, 312 }, { 11, 11, 687 },
+ { 12, 11, 555 }, { 13, 11, 373 }, { 13, 11, 494 }, { 148, 11, 58 },
+ { 134, 0, 1113 }, { 9, 0, 388 }, { 5, 10, 71 }, { 7, 10, 1407 },
+ { 9, 10, 704 }, { 10, 10, 261 }, { 10, 10, 619 }, { 11, 10, 547 },
+ { 11, 10, 619 }, { 143, 10, 157 }, { 7, 0, 1953 }, { 136, 0, 720 },
+ { 138, 0, 203 }, { 7, 10, 2008 }, { 9, 10, 337 }, { 138, 10, 517 },
+ { 6, 0, 326 }, { 7, 0, 677 }, { 137, 0, 425 }, { 139, 11, 81 },
+ { 7, 0, 1316 }, { 7, 0, 1412 }, { 7, 0, 1839 }, { 9, 0, 589 },
+ { 11, 0, 241 }, { 11, 0, 676 }, { 11, 0, 811 }, { 11, 0, 891 },
+ { 12, 0, 140 }, { 12, 0, 346 }, { 12, 0, 479 }, { 13, 0, 140 },
+ { 13, 0, 381 }, { 14, 0, 188 }, { 18, 0, 30 }, { 148, 0, 108 },
+ { 5, 0, 416 }, { 6, 10, 86 }, { 6, 10, 603 }, { 7, 10, 292 },
+ { 7, 10, 561 }, { 8, 10, 257 }, { 8, 10, 382 }, { 9, 10, 721 },
+ { 9, 10, 778 }, { 11, 10, 581 }, { 140, 10, 466 }, { 4, 10, 486 },
+ { 133, 10, 491 }, { 134, 0, 1300 }, { 132, 10, 72 }, { 7, 0, 847 },
+ { 6, 10, 265 }, { 7, 11, 430 }, { 139, 11, 46 }, { 5, 11, 602 },
+ { 6, 11, 106 }, { 7, 11, 1786 }, { 7, 11, 1821 }, { 7, 11, 2018 },
+ { 9, 11, 418 }, { 137, 11, 763 }, { 5, 0, 358 }, { 7, 0, 535 },
+ { 7, 0, 1184 }, { 10, 0, 662 }, { 13, 0, 212 }, { 13, 0, 304 },
+ { 13, 0, 333 }, { 145, 0, 98 }, { 5, 11, 65 }, { 6, 11, 416 },
+ { 7, 11, 1720 }, { 7, 11, 1924 }, { 8, 11, 677 }, { 10, 11, 109 },
+ { 11, 11, 14 }, { 11, 11, 70 }, { 11, 11, 569 }, { 11, 11, 735 },
+ { 15, 11, 153 }, { 148, 11, 80 }, { 6, 0, 1823 }, { 8, 0, 839 },
+ { 8, 0, 852 }, { 8, 0, 903 }, { 10, 0, 940 }, { 12, 0, 707 },
+ { 140, 0, 775 }, { 135, 11, 1229 }, { 6, 0, 1522 }, { 140, 0, 654 },
+ { 136, 11, 595 }, { 139, 0, 163 }, { 141, 0, 314 }, { 132, 0, 978 },
+ { 4, 0, 601 }, { 6, 0, 2035 }, { 137, 10, 234 }, { 5, 10, 815 },
+ { 6, 10, 1688 }, { 134, 10, 1755 }, { 133, 0, 946 }, { 136, 0, 434 },
+ { 6, 10, 197 }, { 136, 10, 205 }, { 7, 0, 411 }, { 7, 0, 590 },
+ { 8, 0, 631 }, { 9, 0, 323 }, { 10, 0, 355 }, { 11, 0, 491 },
+ { 12, 0, 143 }, { 12, 0, 402 }, { 13, 0, 73 }, { 14, 0, 408 },
+ { 15, 0, 107 }, { 146, 0, 71 }, { 7, 0, 1467 }, { 8, 0, 328 },
+ { 10, 0, 544 }, { 11, 0, 955 }, { 12, 0, 13 }, { 13, 0, 320 },
+ { 145, 0, 83 }, { 142, 0, 410 }, { 11, 0, 511 }, { 13, 0, 394 },
+ { 14, 0, 298 }, { 14, 0, 318 }, { 146, 0, 103 }, { 6, 10, 452 },
+ { 7, 10, 312 }, { 138, 10, 219 }, { 138, 10, 589 }, { 4, 10, 333 },
+ { 9, 10, 176 }, { 12, 10, 353 }, { 141, 10, 187 }, { 135, 11, 329 },
+ { 132, 11, 469 }, { 5, 0, 835 }, { 134, 0, 483 }, { 134, 11, 1743 },
+ { 5, 11, 929 }, { 6, 11, 340 }, { 8, 11, 376 }, { 136, 11, 807 },
+ { 134, 10, 1685 }, { 132, 0, 677 }, { 5, 11, 218 }, { 7, 11, 1610 },
+ { 138, 11, 83 }, { 5, 11, 571 }, { 135, 11, 1842 }, { 132, 11, 455 },
+ { 137, 0, 70 }, { 135, 0, 1405 }, { 7, 10, 135 }, { 8, 10, 7 },
+ { 8, 10, 62 }, { 9, 10, 243 }, { 10, 10, 658 }, { 10, 10, 697 },
+ { 11, 10, 456 }, { 139, 10, 756 }, { 9, 10, 395 }, { 138, 10, 79 },
+ { 137, 0, 108 }, { 6, 11, 161 }, { 7, 11, 372 }, { 137, 11, 597 },
+ { 132, 11, 349 }, { 132, 0, 777 }, { 132, 0, 331 }, { 135, 10, 631 },
+ { 133, 0, 747 }, { 6, 11, 432 }, { 6, 11, 608 }, { 139, 11, 322 },
+ { 138, 10, 835 }, { 5, 11, 468 }, { 7, 11, 1809 }, { 10, 11, 325 },
+ { 11, 11, 856 }, { 12, 11, 345 }, { 143, 11, 104 }, { 133, 11, 223 },
+ { 7, 10, 406 }, { 7, 10, 459 }, { 8, 10, 606 }, { 139, 10, 726 },
+ { 132, 11, 566 }, { 142, 0, 68 }, { 4, 11, 59 }, { 135, 11, 1394 },
+ { 6, 11, 436 }, { 139, 11, 481 }, { 4, 11, 48 }, { 5, 11, 271 },
+ { 135, 11, 953 }, { 139, 11, 170 }, { 5, 11, 610 }, { 136, 11, 457 },
+ { 133, 11, 755 }, { 135, 11, 1217 }, { 133, 10, 612 }, { 132, 11, 197 },
+ { 132, 0, 505 }, { 4, 10, 372 }, { 7, 10, 482 }, { 8, 10, 158 },
+ { 9, 10, 602 }, { 9, 10, 615 }, { 10, 10, 245 }, { 10, 10, 678 },
+ { 10, 10, 744 }, { 11, 10, 248 }, { 139, 10, 806 }, { 133, 0, 326 },
+ { 5, 10, 854 }, { 135, 10, 1991 }, { 4, 0, 691 }, { 146, 0, 16 },
+ { 6, 0, 628 }, { 9, 0, 35 }, { 10, 0, 680 }, { 10, 0, 793 },
+ { 11, 0, 364 }, { 13, 0, 357 }, { 143, 0, 164 }, { 138, 0, 654 },
+ { 6, 0, 32 }, { 7, 0, 385 }, { 7, 0, 757 }, { 7, 0, 1916 },
+ { 8, 0, 37 }, { 8, 0, 94 }, { 8, 0, 711 }, { 9, 0, 541 },
+ { 10, 0, 162 }, { 10, 0, 795 }, { 11, 0, 989 }, { 11, 0, 1010 },
+ { 12, 0, 14 }, { 142, 0, 308 }, { 133, 11, 217 }, { 6, 0, 152 },
+ { 6, 0, 349 }, { 6, 0, 1682 }, { 7, 0, 1252 }, { 8, 0, 112 },
+ { 9, 0, 435 }, { 9, 0, 668 }, { 10, 0, 290 }, { 10, 0, 319 },
+ { 10, 0, 815 }, { 11, 0, 180 }, { 11, 0, 837 }, { 12, 0, 240 },
+ { 13, 0, 152 }, { 13, 0, 219 }, { 142, 0, 158 }, { 4, 0, 581 },
+ { 134, 0, 726 }, { 5, 10, 195 }, { 135, 10, 1685 }, { 6, 0, 126 },
+ { 7, 0, 573 }, { 8, 0, 397 }, { 142, 0, 44 }, { 138, 0, 89 },
+ { 7, 10, 1997 }, { 8, 10, 730 }, { 139, 10, 1006 }, { 134, 0, 1531 },
+ { 134, 0, 1167 }, { 5, 0, 926 }, { 12, 0, 203 }, { 133, 10, 751 },
+ { 4, 11, 165 }, { 7, 11, 1398 }, { 135, 11, 1829 }, { 7, 0, 1232 },
+ { 137, 0, 531 }, { 135, 10, 821 }, { 134, 0, 943 }, { 133, 0, 670 },
+ { 4, 0, 880 }, { 139, 0, 231 }, { 134, 0, 1617 }, { 135, 0, 1957 },
+ { 5, 11, 9 }, { 7, 11, 297 }, { 7, 11, 966 }, { 140, 11, 306 },
+ { 6, 0, 975 }, { 134, 0, 985 }, { 5, 10, 950 }, { 5, 10, 994 },
+ { 134, 10, 351 }, { 12, 11, 21 }, { 151, 11, 7 }, { 5, 11, 146 },
+ { 6, 11, 411 }, { 138, 11, 721 }, { 7, 0, 242 }, { 135, 0, 1942 },
+ { 6, 11, 177 }, { 135, 11, 467 }, { 5, 0, 421 }, { 7, 10, 47 },
+ { 137, 10, 684 }, { 5, 0, 834 }, { 7, 0, 1202 }, { 8, 0, 14 },
+ { 9, 0, 481 }, { 137, 0, 880 }, { 138, 0, 465 }, { 6, 0, 688 },
+ { 9, 0, 834 }, { 132, 10, 350 }, { 132, 0, 855 }, { 4, 0, 357 },
+ { 6, 0, 172 }, { 7, 0, 143 }, { 137, 0, 413 }, { 133, 11, 200 },
+ { 132, 0, 590 }, { 7, 10, 1812 }, { 13, 10, 259 }, { 13, 10, 356 },
+ { 14, 10, 242 }, { 147, 10, 114 }, { 133, 10, 967 }, { 11, 0, 114 },
+ { 4, 10, 473 }, { 7, 10, 623 }, { 8, 10, 808 }, { 9, 10, 871 },
+ { 9, 10, 893 }, { 11, 10, 431 }, { 12, 10, 112 }, { 12, 10, 217 },
+ { 12, 10, 243 }, { 12, 10, 562 }, { 12, 10, 663 }, { 12, 10, 683 },
+ { 13, 10, 141 }, { 13, 10, 197 }, { 13, 10, 227 }, { 13, 10, 406 },
+ { 13, 10, 487 }, { 14, 10, 156 }, { 14, 10, 203 }, { 14, 10, 224 },
+ { 14, 10, 256 }, { 18, 10, 58 }, { 150, 10, 0 }, { 138, 10, 286 },
+ { 4, 10, 222 }, { 7, 10, 286 }, { 136, 10, 629 }, { 5, 0, 169 },
+ { 7, 0, 333 }, { 136, 0, 45 }, { 134, 11, 481 }, { 132, 0, 198 },
+ { 4, 0, 24 }, { 5, 0, 140 }, { 5, 0, 185 }, { 7, 0, 1500 },
+ { 11, 0, 565 }, { 11, 0, 838 }, { 4, 11, 84 }, { 7, 11, 1482 },
+ { 10, 11, 76 }, { 138, 11, 142 }, { 133, 0, 585 }, { 141, 10, 306 },
+ { 133, 11, 1015 }, { 4, 11, 315 }, { 5, 11, 507 }, { 135, 11, 1370 },
+ { 136, 10, 146 }, { 6, 0, 691 }, { 134, 0, 1503 }, { 4, 0, 334 },
+ { 133, 0, 593 }, { 4, 10, 465 }, { 135, 10, 1663 }, { 142, 11, 173 },
+ { 135, 0, 913 }, { 12, 0, 116 }, { 134, 11, 1722 }, { 134, 0, 1360 },
+ { 132, 0, 802 }, { 8, 11, 222 }, { 8, 11, 476 }, { 9, 11, 238 },
+ { 11, 11, 516 }, { 11, 11, 575 }, { 15, 11, 109 }, { 146, 11, 100 },
+ { 6, 0, 308 }, { 9, 0, 673 }, { 7, 10, 138 }, { 7, 10, 517 },
+ { 139, 10, 238 }, { 132, 0, 709 }, { 6, 0, 1876 }, { 6, 0, 1895 },
+ { 9, 0, 994 }, { 9, 0, 1006 }, { 12, 0, 829 }, { 12, 0, 888 },
+ { 12, 0, 891 }, { 146, 0, 185 }, { 148, 10, 94 }, { 4, 0, 228 },
+ { 133, 0, 897 }, { 7, 0, 1840 }, { 5, 10, 495 }, { 7, 10, 834 },
+ { 9, 10, 733 }, { 139, 10, 378 }, { 133, 10, 559 }, { 6, 10, 21 },
+ { 6, 10, 1737 }, { 7, 10, 1444 }, { 136, 10, 224 }, { 4, 0, 608 },
+ { 133, 0, 497 }, { 6, 11, 40 }, { 135, 11, 1781 }, { 134, 0, 1573 },
+ { 135, 0, 2039 }, { 6, 0, 540 }, { 136, 0, 136 }, { 4, 0, 897 },
+ { 5, 0, 786 }, { 133, 10, 519 }, { 6, 0, 1878 }, { 6, 0, 1884 },
+ { 9, 0, 938 }, { 9, 0, 948 }, { 9, 0, 955 }, { 9, 0, 973 },
+ { 9, 0, 1012 }, { 12, 0, 895 }, { 12, 0, 927 }, { 143, 0, 254 },
+ { 134, 0, 1469 }, { 133, 0, 999 }, { 4, 0, 299 }, { 135, 0, 1004 },
+ { 4, 0, 745 }, { 133, 0, 578 }, { 136, 11, 574 }, { 133, 0, 456 },
+ { 134, 0, 1457 }, { 7, 0, 1679 }, { 132, 10, 402 }, { 7, 0, 693 },
+ { 8, 0, 180 }, { 12, 0, 163 }, { 8, 10, 323 }, { 136, 10, 479 },
+ { 11, 10, 580 }, { 142, 10, 201 }, { 5, 10, 59 }, { 135, 10, 672 },
+ { 132, 11, 354 }, { 146, 10, 34 }, { 4, 0, 755 }, { 135, 11, 1558 },
+ { 7, 0, 1740 }, { 146, 0, 48 }, { 4, 10, 85 }, { 135, 10, 549 },
+ { 139, 0, 338 }, { 133, 10, 94 }, { 134, 0, 1091 }, { 135, 11, 469 },
+ { 12, 0, 695 }, { 12, 0, 704 }, { 20, 0, 113 }, { 5, 11, 830 },
+ { 14, 11, 338 }, { 148, 11, 81 }, { 135, 0, 1464 }, { 6, 10, 11 },
+ { 135, 10, 187 }, { 135, 0, 975 }, { 13, 0, 335 }, { 132, 10, 522 },
+ { 134, 0, 1979 }, { 5, 11, 496 }, { 135, 11, 203 }, { 4, 10, 52 },
+ { 135, 10, 661 }, { 7, 0, 1566 }, { 8, 0, 269 }, { 9, 0, 212 },
+ { 9, 0, 718 }, { 14, 0, 15 }, { 14, 0, 132 }, { 142, 0, 227 },
+ { 4, 0, 890 }, { 5, 0, 805 }, { 5, 0, 819 }, { 5, 0, 961 },
+ { 6, 0, 396 }, { 6, 0, 1631 }, { 6, 0, 1678 }, { 7, 0, 1967 },
+ { 7, 0, 2041 }, { 9, 0, 630 }, { 11, 0, 8 }, { 11, 0, 1019 },
+ { 12, 0, 176 }, { 13, 0, 225 }, { 14, 0, 292 }, { 21, 0, 24 },
+ { 4, 10, 383 }, { 133, 10, 520 }, { 134, 11, 547 }, { 135, 11, 1748 },
+ { 5, 11, 88 }, { 137, 11, 239 }, { 146, 11, 128 }, { 7, 11, 650 },
+ { 135, 11, 1310 }, { 4, 10, 281 }, { 5, 10, 38 }, { 7, 10, 194 },
+ { 7, 10, 668 }, { 7, 10, 1893 }, { 137, 10, 397 }, { 135, 0, 1815 },
+ { 9, 10, 635 }, { 139, 10, 559 }, { 7, 0, 1505 }, { 10, 0, 190 },
+ { 10, 0, 634 }, { 11, 0, 792 }, { 12, 0, 358 }, { 140, 0, 447 },
+ { 5, 0, 0 }, { 6, 0, 536 }, { 7, 0, 604 }, { 13, 0, 445 },
+ { 145, 0, 126 }, { 7, 11, 1076 }, { 9, 11, 80 }, { 11, 11, 78 },
+ { 11, 11, 421 }, { 11, 11, 534 }, { 140, 11, 545 }, { 8, 0, 966 },
+ { 10, 0, 1023 }, { 14, 11, 369 }, { 146, 11, 72 }, { 135, 11, 1641 },
+ { 6, 0, 232 }, { 6, 0, 412 }, { 7, 0, 1074 }, { 8, 0, 9 },
+ { 8, 0, 157 }, { 8, 0, 786 }, { 9, 0, 196 }, { 9, 0, 352 },
+ { 9, 0, 457 }, { 10, 0, 337 }, { 11, 0, 232 }, { 11, 0, 877 },
+ { 12, 0, 480 }, { 140, 0, 546 }, { 135, 0, 958 }, { 4, 0, 382 },
+ { 136, 0, 579 }, { 4, 0, 212 }, { 135, 0, 1206 }, { 4, 11, 497 },
+ { 5, 11, 657 }, { 135, 11, 1584 }, { 132, 0, 681 }, { 8, 0, 971 },
+ { 138, 0, 965 }, { 5, 10, 448 }, { 136, 10, 535 }, { 14, 0, 16 },
+ { 146, 0, 44 }, { 11, 0, 584 }, { 11, 0, 616 }, { 14, 0, 275 },
+ { 11, 11, 584 }, { 11, 11, 616 }, { 142, 11, 275 }, { 136, 11, 13 },
+ { 7, 10, 610 }, { 135, 10, 1501 }, { 7, 11, 642 }, { 8, 11, 250 },
+ { 11, 11, 123 }, { 11, 11, 137 }, { 13, 11, 48 }, { 142, 11, 95 },
+ { 133, 0, 655 }, { 17, 0, 67 }, { 147, 0, 74 }, { 134, 0, 751 },
+ { 134, 0, 1967 }, { 6, 0, 231 }, { 136, 0, 423 }, { 5, 0, 300 },
+ { 138, 0, 1016 }, { 4, 10, 319 }, { 5, 10, 699 }, { 138, 10, 673 },
+ { 6, 0, 237 }, { 7, 0, 611 }, { 8, 0, 100 }, { 9, 0, 416 },
+ { 11, 0, 335 }, { 12, 0, 173 }, { 18, 0, 101 }, { 6, 10, 336 },
+ { 8, 10, 552 }, { 9, 10, 285 }, { 10, 10, 99 }, { 139, 10, 568 },
+ { 134, 0, 1370 }, { 7, 10, 1406 }, { 9, 10, 218 }, { 141, 10, 222 },
+ { 133, 10, 256 }, { 135, 0, 1208 }, { 14, 11, 213 }, { 148, 11, 38 },
+ { 6, 0, 1219 }, { 135, 11, 1642 }, { 13, 0, 417 }, { 14, 0, 129 },
+ { 143, 0, 15 }, { 10, 11, 545 }, { 140, 11, 301 }, { 17, 10, 39 },
+ { 148, 10, 36 }, { 133, 0, 199 }, { 4, 11, 904 }, { 133, 11, 794 },
+ { 12, 0, 427 }, { 146, 0, 38 }, { 134, 0, 949 }, { 8, 0, 665 },
+ { 135, 10, 634 }, { 132, 10, 618 }, { 135, 10, 259 }, { 132, 10, 339 },
+ { 133, 11, 761 }, { 141, 10, 169 }, { 132, 10, 759 }, { 5, 0, 688 },
+ { 7, 0, 539 }, { 135, 0, 712 }, { 7, 11, 386 }, { 138, 11, 713 },
+ { 134, 0, 1186 }, { 6, 11, 7 }, { 6, 11, 35 }, { 7, 11, 147 },
+ { 7, 11, 1069 }, { 7, 11, 1568 }, { 7, 11, 1575 }, { 7, 11, 1917 },
+ { 8, 11, 43 }, { 8, 11, 208 }, { 9, 11, 128 }, { 9, 11, 866 },
+ { 10, 11, 20 }, { 11, 11, 981 }, { 147, 11, 33 }, { 7, 11, 893 },
+ { 8, 10, 482 }, { 141, 11, 424 }, { 6, 0, 312 }, { 6, 0, 1715 },
+ { 10, 0, 584 }, { 11, 0, 546 }, { 11, 0, 692 }, { 12, 0, 259 },
+ { 12, 0, 295 }, { 13, 0, 46 }, { 141, 0, 154 }, { 5, 10, 336 },
+ { 6, 10, 341 }, { 6, 10, 478 }, { 6, 10, 1763 }, { 136, 10, 386 },
+ { 137, 0, 151 }, { 132, 0, 588 }, { 152, 0, 4 }, { 6, 11, 322 },
+ { 9, 11, 552 }, { 11, 11, 274 }, { 13, 11, 209 }, { 13, 11, 499 },
+ { 14, 11, 85 }, { 15, 11, 126 }, { 145, 11, 70 }, { 135, 10, 73 },
+ { 4, 0, 231 }, { 5, 0, 61 }, { 6, 0, 104 }, { 7, 0, 729 },
+ { 7, 0, 964 }, { 7, 0, 1658 }, { 140, 0, 414 }, { 6, 0, 263 },
+ { 138, 0, 757 }, { 135, 10, 1971 }, { 4, 0, 612 }, { 133, 0, 561 },
+ { 132, 0, 320 }, { 135, 10, 1344 }, { 8, 11, 83 }, { 8, 11, 817 },
+ { 9, 11, 28 }, { 9, 11, 29 }, { 9, 11, 885 }, { 10, 11, 387 },
+ { 11, 11, 633 }, { 11, 11, 740 }, { 13, 11, 235 }, { 13, 11, 254 },
+ { 15, 11, 143 }, { 143, 11, 146 }, { 5, 10, 396 }, { 134, 10, 501 },
+ { 140, 11, 49 }, { 132, 0, 225 }, { 4, 10, 929 }, { 5, 10, 799 },
+ { 8, 10, 46 }, { 136, 10, 740 }, { 4, 0, 405 }, { 7, 0, 817 },
+ { 14, 0, 58 }, { 17, 0, 37 }, { 146, 0, 124 }, { 133, 0, 974 },
+ { 4, 11, 412 }, { 133, 11, 581 }, { 4, 10, 892 }, { 133, 10, 770 },
+ { 4, 0, 996 }, { 134, 0, 2026 }, { 4, 0, 527 }, { 5, 0, 235 },
+ { 7, 0, 1239 }, { 11, 0, 131 }, { 140, 0, 370 }, { 9, 0, 16 },
+ { 13, 0, 386 }, { 135, 11, 421 }, { 7, 0, 956 }, { 7, 0, 1157 },
+ { 7, 0, 1506 }, { 7, 0, 1606 }, { 7, 0, 1615 }, { 7, 0, 1619 },
+ { 7, 0, 1736 }, { 7, 0, 1775 }, { 8, 0, 590 }, { 9, 0, 324 },
+ { 9, 0, 736 }, { 9, 0, 774 }, { 9, 0, 776 }, { 9, 0, 784 },
+ { 10, 0, 567 }, { 10, 0, 708 }, { 11, 0, 518 }, { 11, 0, 613 },
+ { 11, 0, 695 }, { 11, 0, 716 }, { 11, 0, 739 }, { 11, 0, 770 },
+ { 11, 0, 771 }, { 11, 0, 848 }, { 11, 0, 857 }, { 11, 0, 931 },
+ { 11, 0, 947 }, { 12, 0, 326 }, { 12, 0, 387 }, { 12, 0, 484 },
+ { 12, 0, 528 }, { 12, 0, 552 }, { 12, 0, 613 }, { 13, 0, 189 },
+ { 13, 0, 256 }, { 13, 0, 340 }, { 13, 0, 432 }, { 13, 0, 436 },
+ { 13, 0, 440 }, { 13, 0, 454 }, { 14, 0, 174 }, { 14, 0, 220 },
+ { 14, 0, 284 }, { 14, 0, 390 }, { 145, 0, 121 }, { 135, 10, 158 },
+ { 9, 0, 137 }, { 138, 0, 221 }, { 4, 11, 110 }, { 10, 11, 415 },
+ { 10, 11, 597 }, { 142, 11, 206 }, { 141, 11, 496 }, { 135, 11, 205 },
+ { 151, 10, 25 }, { 135, 11, 778 }, { 7, 11, 1656 }, { 7, 10, 2001 },
+ { 9, 11, 369 }, { 10, 11, 338 }, { 10, 11, 490 }, { 11, 11, 154 },
+ { 11, 11, 545 }, { 11, 11, 775 }, { 13, 11, 77 }, { 141, 11, 274 },
+ { 4, 11, 444 }, { 10, 11, 146 }, { 140, 11, 9 }, { 7, 0, 390 },
+ { 138, 0, 140 }, { 135, 0, 1144 }, { 134, 0, 464 }, { 7, 10, 1461 },
+ { 140, 10, 91 }, { 132, 10, 602 }, { 4, 11, 283 }, { 135, 11, 1194 },
+ { 5, 0, 407 }, { 11, 0, 204 }, { 11, 0, 243 }, { 11, 0, 489 },
+ { 12, 0, 293 }, { 19, 0, 37 }, { 20, 0, 73 }, { 150, 0, 38 },
+ { 7, 0, 1218 }, { 136, 0, 303 }, { 5, 0, 325 }, { 8, 0, 5 },
+ { 8, 0, 227 }, { 9, 0, 105 }, { 10, 0, 585 }, { 12, 0, 614 },
+ { 4, 10, 13 }, { 5, 10, 567 }, { 7, 10, 1498 }, { 9, 10, 124 },
+ { 11, 10, 521 }, { 140, 10, 405 }, { 135, 10, 1006 }, { 7, 0, 800 },
+ { 10, 0, 12 }, { 134, 11, 1720 }, { 135, 0, 1783 }, { 132, 10, 735 },
+ { 138, 10, 812 }, { 4, 10, 170 }, { 135, 10, 323 }, { 6, 0, 621 },
+ { 13, 0, 504 }, { 144, 0, 89 }, { 5, 10, 304 }, { 135, 10, 1403 },
+ { 137, 11, 216 }, { 6, 0, 920 }, { 6, 0, 1104 }, { 9, 11, 183 },
+ { 139, 11, 286 }, { 4, 0, 376 }, { 133, 10, 742 }, { 134, 0, 218 },
+ { 8, 0, 641 }, { 11, 0, 388 }, { 140, 0, 580 }, { 7, 0, 454 },
+ { 7, 0, 782 }, { 8, 0, 768 }, { 140, 0, 686 }, { 137, 11, 33 },
+ { 133, 10, 111 }, { 144, 0, 0 }, { 10, 0, 676 }, { 140, 0, 462 },
+ { 6, 0, 164 }, { 136, 11, 735 }, { 133, 10, 444 }, { 150, 0, 50 },
+ { 7, 11, 1862 }, { 12, 11, 491 }, { 12, 11, 520 }, { 13, 11, 383 },
+ { 14, 11, 244 }, { 146, 11, 12 }, { 5, 11, 132 }, { 9, 11, 486 },
+ { 9, 11, 715 }, { 10, 11, 458 }, { 11, 11, 373 }, { 11, 11, 668 },
+ { 11, 11, 795 }, { 11, 11, 897 }, { 12, 11, 272 }, { 12, 11, 424 },
+ { 12, 11, 539 }, { 12, 11, 558 }, { 14, 11, 245 }, { 14, 11, 263 },
+ { 14, 11, 264 }, { 14, 11, 393 }, { 142, 11, 403 }, { 8, 10, 123 },
+ { 15, 10, 6 }, { 144, 10, 7 }, { 6, 0, 285 }, { 8, 0, 654 },
+ { 11, 0, 749 }, { 12, 0, 190 }, { 12, 0, 327 }, { 13, 0, 120 },
+ { 13, 0, 121 }, { 13, 0, 327 }, { 15, 0, 47 }, { 146, 0, 40 },
+ { 5, 11, 8 }, { 6, 11, 89 }, { 6, 11, 400 }, { 7, 11, 1569 },
+ { 7, 11, 1623 }, { 7, 11, 1850 }, { 8, 11, 218 }, { 8, 11, 422 },
+ { 9, 11, 570 }, { 138, 11, 626 }, { 6, 11, 387 }, { 7, 11, 882 },
+ { 141, 11, 111 }, { 6, 0, 343 }, { 7, 0, 195 }, { 9, 0, 226 },
+ { 10, 0, 197 }, { 10, 0, 575 }, { 11, 0, 502 }, { 11, 0, 899 },
+ { 6, 11, 224 }, { 7, 11, 877 }, { 137, 11, 647 }, { 5, 10, 937 },
+ { 135, 10, 100 }, { 135, 11, 790 }, { 150, 0, 29 }, { 147, 0, 8 },
+ { 134, 0, 1812 }, { 149, 0, 8 }, { 135, 11, 394 }, { 7, 0, 1125 },
+ { 9, 0, 143 }, { 11, 0, 61 }, { 14, 0, 405 }, { 150, 0, 21 },
+ { 10, 11, 755 }, { 147, 11, 29 }, { 9, 11, 378 }, { 141, 11, 162 },
+ { 135, 10, 922 }, { 5, 10, 619 }, { 133, 10, 698 }, { 134, 0, 1327 },
+ { 6, 0, 1598 }, { 137, 0, 575 }, { 9, 11, 569 }, { 12, 11, 12 },
+ { 12, 11, 81 }, { 12, 11, 319 }, { 13, 11, 69 }, { 14, 11, 259 },
+ { 16, 11, 87 }, { 17, 11, 1 }, { 17, 11, 21 }, { 17, 11, 24 },
+ { 18, 11, 15 }, { 18, 11, 56 }, { 18, 11, 59 }, { 18, 11, 127 },
+ { 18, 11, 154 }, { 19, 11, 19 }, { 148, 11, 31 }, { 6, 0, 895 },
+ { 135, 11, 1231 }, { 5, 0, 959 }, { 7, 11, 124 }, { 136, 11, 38 },
+ { 5, 11, 261 }, { 7, 11, 78 }, { 7, 11, 199 }, { 8, 11, 815 },
+ { 9, 11, 126 }, { 138, 11, 342 }, { 5, 10, 917 }, { 134, 10, 1659 },
+ { 7, 0, 1759 }, { 5, 11, 595 }, { 135, 11, 1863 }, { 136, 0, 173 },
+ { 134, 0, 266 }, { 142, 0, 261 }, { 132, 11, 628 }, { 5, 10, 251 },
+ { 5, 10, 956 }, { 8, 10, 268 }, { 9, 10, 214 }, { 146, 10, 142 },
+ { 7, 11, 266 }, { 136, 11, 804 }, { 135, 11, 208 }, { 6, 11, 79 },
+ { 7, 11, 1021 }, { 135, 11, 1519 }, { 11, 11, 704 }, { 141, 11, 396 },
+ { 5, 10, 346 }, { 5, 10, 711 }, { 136, 10, 390 }, { 136, 11, 741 },
+ { 134, 11, 376 }, { 134, 0, 1427 }, { 6, 0, 1033 }, { 6, 0, 1217 },
+ { 136, 0, 300 }, { 133, 10, 624 }, { 6, 11, 100 }, { 7, 11, 244 },
+ { 7, 11, 632 }, { 7, 11, 1609 }, { 8, 11, 178 }, { 8, 11, 638 },
+ { 141, 11, 58 }, { 6, 0, 584 }, { 5, 10, 783 }, { 7, 10, 1998 },
+ { 135, 10, 2047 }, { 5, 0, 427 }, { 5, 0, 734 }, { 7, 0, 478 },
+ { 136, 0, 52 }, { 7, 0, 239 }, { 11, 0, 217 }, { 142, 0, 165 },
+ { 134, 0, 1129 }, { 6, 0, 168 }, { 6, 0, 1734 }, { 7, 0, 20 },
+ { 7, 0, 1056 }, { 8, 0, 732 }, { 9, 0, 406 }, { 9, 0, 911 },
+ { 138, 0, 694 }, { 132, 10, 594 }, { 133, 11, 791 }, { 7, 11, 686 },
+ { 8, 11, 33 }, { 8, 11, 238 }, { 10, 11, 616 }, { 11, 11, 467 },
+ { 11, 11, 881 }, { 13, 11, 217 }, { 13, 11, 253 }, { 142, 11, 268 },
+ { 137, 11, 476 }, { 134, 0, 418 }, { 133, 0, 613 }, { 132, 0, 632 },
+ { 132, 11, 447 }, { 7, 0, 32 }, { 7, 0, 984 }, { 8, 0, 85 },
+ { 8, 0, 709 }, { 9, 0, 579 }, { 9, 0, 847 }, { 9, 0, 856 },
+ { 10, 0, 799 }, { 11, 0, 258 }, { 11, 0, 1007 }, { 12, 0, 331 },
+ { 12, 0, 615 }, { 13, 0, 188 }, { 13, 0, 435 }, { 14, 0, 8 },
+ { 15, 0, 165 }, { 16, 0, 27 }, { 20, 0, 40 }, { 144, 11, 35 },
+ { 4, 11, 128 }, { 5, 11, 415 }, { 6, 11, 462 }, { 7, 11, 294 },
+ { 7, 11, 578 }, { 10, 11, 710 }, { 139, 11, 86 }, { 5, 0, 694 },
+ { 136, 0, 909 }, { 7, 0, 1109 }, { 11, 0, 7 }, { 5, 10, 37 },
+ { 6, 10, 39 }, { 6, 10, 451 }, { 7, 10, 218 }, { 7, 10, 1166 },
+ { 7, 10, 1687 }, { 8, 10, 662 }, { 144, 10, 2 }, { 136, 11, 587 },
+ { 6, 11, 427 }, { 7, 11, 1018 }, { 138, 11, 692 }, { 4, 11, 195 },
+ { 6, 10, 508 }, { 135, 11, 802 }, { 4, 0, 167 }, { 135, 0, 82 },
+ { 5, 0, 62 }, { 6, 0, 24 }, { 6, 0, 534 }, { 7, 0, 74 },
+ { 7, 0, 678 }, { 7, 0, 684 }, { 7, 0, 1043 }, { 7, 0, 1072 },
+ { 8, 0, 280 }, { 8, 0, 541 }, { 8, 0, 686 }, { 9, 0, 258 },
+ { 10, 0, 519 }, { 11, 0, 252 }, { 140, 0, 282 }, { 138, 0, 33 },
+ { 4, 0, 359 }, { 133, 11, 738 }, { 7, 0, 980 }, { 9, 0, 328 },
+ { 13, 0, 186 }, { 13, 0, 364 }, { 7, 10, 635 }, { 7, 10, 796 },
+ { 8, 10, 331 }, { 9, 10, 330 }, { 9, 10, 865 }, { 10, 10, 119 },
+ { 10, 10, 235 }, { 11, 10, 111 }, { 11, 10, 129 }, { 11, 10, 240 },
+ { 12, 10, 31 }, { 12, 10, 66 }, { 12, 10, 222 }, { 12, 10, 269 },
+ { 12, 10, 599 }, { 12, 10, 684 }, { 12, 10, 689 }, { 12, 10, 691 },
+ { 142, 10, 345 }, { 137, 10, 527 }, { 6, 0, 596 }, { 7, 0, 585 },
+ { 135, 10, 702 }, { 134, 11, 1683 }, { 133, 0, 211 }, { 6, 0, 145 },
+ { 141, 0, 336 }, { 134, 0, 1130 }, { 7, 0, 873 }, { 6, 10, 37 },
+ { 7, 10, 1666 }, { 8, 10, 195 }, { 8, 10, 316 }, { 9, 10, 178 },
+ { 9, 10, 276 }, { 9, 10, 339 }, { 9, 10, 536 }, { 10, 10, 102 },
+ { 10, 10, 362 }, { 10, 10, 785 }, { 11, 10, 55 }, { 11, 10, 149 },
+ { 11, 10, 773 }, { 13, 10, 416 }, { 13, 10, 419 }, { 14, 10, 38 },
+ { 14, 10, 41 }, { 142, 10, 210 }, { 8, 0, 840 }, { 136, 0, 841 },
+ { 132, 0, 263 }, { 5, 11, 3 }, { 8, 11, 578 }, { 9, 11, 118 },
+ { 10, 11, 705 }, { 12, 11, 383 }, { 141, 11, 279 }, { 132, 0, 916 },
+ { 133, 11, 229 }, { 133, 10, 645 }, { 15, 0, 155 }, { 16, 0, 79 },
+ { 8, 11, 102 }, { 10, 11, 578 }, { 10, 11, 672 }, { 12, 11, 496 },
+ { 13, 11, 408 }, { 14, 11, 121 }, { 145, 11, 106 }, { 4, 0, 599 },
+ { 5, 0, 592 }, { 6, 0, 1634 }, { 7, 0, 5 }, { 7, 0, 55 },
+ { 7, 0, 67 }, { 7, 0, 97 }, { 7, 0, 691 }, { 7, 0, 979 },
+ { 7, 0, 1600 }, { 7, 0, 1697 }, { 8, 0, 207 }, { 8, 0, 214 },
+ { 8, 0, 231 }, { 8, 0, 294 }, { 8, 0, 336 }, { 8, 0, 428 },
+ { 8, 0, 471 }, { 8, 0, 622 }, { 8, 0, 626 }, { 8, 0, 679 },
+ { 8, 0, 759 }, { 8, 0, 829 }, { 9, 0, 11 }, { 9, 0, 246 },
+ { 9, 0, 484 }, { 9, 0, 573 }, { 9, 0, 706 }, { 9, 0, 762 },
+ { 9, 0, 798 }, { 9, 0, 855 }, { 9, 0, 870 }, { 9, 0, 912 },
+ { 10, 0, 303 }, { 10, 0, 335 }, { 10, 0, 424 }, { 10, 0, 461 },
+ { 10, 0, 543 }, { 10, 0, 759 }, { 10, 0, 814 }, { 11, 0, 59 },
+ { 11, 0, 199 }, { 11, 0, 235 }, { 11, 0, 590 }, { 11, 0, 631 },
+ { 11, 0, 929 }, { 11, 0, 963 }, { 11, 0, 987 }, { 12, 0, 114 },
+ { 12, 0, 182 }, { 12, 0, 226 }, { 12, 0, 332 }, { 12, 0, 439 },
+ { 12, 0, 575 }, { 12, 0, 598 }, { 12, 0, 675 }, { 13, 0, 8 },
+ { 13, 0, 125 }, { 13, 0, 194 }, { 13, 0, 287 }, { 14, 0, 197 },
+ { 14, 0, 383 }, { 15, 0, 53 }, { 17, 0, 63 }, { 19, 0, 46 },
+ { 19, 0, 98 }, { 19, 0, 106 }, { 148, 0, 85 }, { 7, 0, 1356 },
+ { 132, 10, 290 }, { 6, 10, 70 }, { 7, 10, 1292 }, { 10, 10, 762 },
+ { 139, 10, 288 }, { 150, 11, 55 }, { 4, 0, 593 }, { 8, 11, 115 },
+ { 8, 11, 350 }, { 9, 11, 489 }, { 10, 11, 128 }, { 11, 11, 306 },
+ { 12, 11, 373 }, { 14, 11, 30 }, { 17, 11, 79 }, { 147, 11, 80 },
+ { 135, 11, 1235 }, { 134, 0, 1392 }, { 4, 11, 230 }, { 133, 11, 702 },
+ { 147, 0, 126 }, { 7, 10, 131 }, { 7, 10, 422 }, { 8, 10, 210 },
+ { 140, 10, 573 }, { 134, 0, 1179 }, { 139, 11, 435 }, { 139, 10, 797 },
+ { 134, 11, 1728 }, { 4, 0, 162 }, { 18, 11, 26 }, { 19, 11, 42 },
+ { 20, 11, 43 }, { 21, 11, 0 }, { 23, 11, 27 }, { 152, 11, 14 },
+ { 132, 10, 936 }, { 6, 0, 765 }, { 5, 10, 453 }, { 134, 10, 441 },
+ { 133, 0, 187 }, { 135, 0, 1286 }, { 6, 0, 635 }, { 6, 0, 904 },
+ { 6, 0, 1210 }, { 134, 0, 1489 }, { 4, 0, 215 }, { 8, 0, 890 },
+ { 9, 0, 38 }, { 10, 0, 923 }, { 11, 0, 23 }, { 11, 0, 127 },
+ { 139, 0, 796 }, { 6, 0, 1165 }, { 134, 0, 1306 }, { 7, 0, 716 },
+ { 13, 0, 97 }, { 141, 0, 251 }, { 132, 10, 653 }, { 136, 0, 657 },
+ { 146, 10, 80 }, { 5, 11, 622 }, { 7, 11, 1032 }, { 11, 11, 26 },
+ { 11, 11, 213 }, { 11, 11, 707 }, { 12, 11, 380 }, { 13, 11, 226 },
+ { 141, 11, 355 }, { 6, 0, 299 }, { 5, 11, 70 }, { 6, 11, 334 },
+ { 9, 11, 171 }, { 11, 11, 637 }, { 12, 11, 202 }, { 14, 11, 222 },
+ { 145, 11, 42 }, { 142, 0, 134 }, { 4, 11, 23 }, { 5, 11, 313 },
+ { 5, 11, 1014 }, { 6, 11, 50 }, { 6, 11, 51 }, { 7, 11, 142 },
+ { 7, 11, 384 }, { 9, 11, 783 }, { 139, 11, 741 }, { 4, 11, 141 },
+ { 7, 11, 559 }, { 8, 11, 640 }, { 9, 11, 460 }, { 12, 11, 183 },
+ { 141, 11, 488 }, { 136, 11, 614 }, { 7, 10, 1368 }, { 8, 10, 232 },
+ { 8, 10, 361 }, { 10, 10, 682 }, { 138, 10, 742 }, { 137, 10, 534 },
+ { 6, 0, 1082 }, { 140, 0, 658 }, { 137, 10, 27 }, { 135, 0, 2002 },
+ { 142, 10, 12 }, { 4, 0, 28 }, { 5, 0, 440 }, { 7, 0, 248 },
+ { 11, 0, 833 }, { 140, 0, 344 }, { 7, 10, 736 }, { 139, 10, 264 },
+ { 134, 10, 1657 }, { 134, 0, 1654 }, { 138, 0, 531 }, { 5, 11, 222 },
+ { 9, 11, 140 }, { 138, 11, 534 }, { 6, 0, 634 }, { 6, 0, 798 },
+ { 134, 0, 840 }, { 138, 11, 503 }, { 135, 10, 127 }, { 133, 0, 853 },
+ { 5, 11, 154 }, { 7, 11, 1491 }, { 10, 11, 379 }, { 138, 11, 485 },
+ { 6, 0, 249 }, { 7, 0, 1234 }, { 139, 0, 573 }, { 133, 11, 716 },
+ { 7, 11, 1570 }, { 140, 11, 542 }, { 136, 10, 364 }, { 138, 0, 527 },
+ { 4, 11, 91 }, { 5, 11, 388 }, { 5, 11, 845 }, { 6, 11, 206 },
+ { 6, 11, 252 }, { 6, 11, 365 }, { 7, 11, 136 }, { 7, 11, 531 },
+ { 8, 11, 264 }, { 136, 11, 621 }, { 134, 0, 1419 }, { 135, 11, 1441 },
+ { 7, 0, 49 }, { 7, 0, 392 }, { 8, 0, 20 }, { 8, 0, 172 },
+ { 8, 0, 690 }, { 9, 0, 383 }, { 9, 0, 845 }, { 10, 0, 48 },
+ { 11, 0, 293 }, { 11, 0, 832 }, { 11, 0, 920 }, { 11, 0, 984 },
+ { 141, 0, 221 }, { 5, 0, 858 }, { 133, 0, 992 }, { 5, 0, 728 },
+ { 137, 10, 792 }, { 5, 10, 909 }, { 9, 10, 849 }, { 138, 10, 805 },
+ { 7, 0, 525 }, { 7, 0, 1579 }, { 8, 0, 497 }, { 136, 0, 573 },
+ { 6, 0, 268 }, { 137, 0, 62 }, { 135, 11, 576 }, { 134, 0, 1201 },
+ { 5, 11, 771 }, { 5, 11, 863 }, { 5, 11, 898 }, { 6, 11, 1632 },
+ { 6, 11, 1644 }, { 134, 11, 1780 }, { 133, 11, 331 }, { 7, 0, 193 },
+ { 7, 0, 1105 }, { 10, 0, 495 }, { 7, 10, 397 }, { 8, 10, 124 },
+ { 8, 10, 619 }, { 9, 10, 305 }, { 11, 10, 40 }, { 12, 10, 349 },
+ { 13, 10, 134 }, { 13, 10, 295 }, { 14, 10, 155 }, { 15, 10, 120 },
+ { 146, 10, 105 }, { 138, 0, 106 }, { 6, 0, 859 }, { 5, 11, 107 },
+ { 7, 11, 201 }, { 136, 11, 518 }, { 6, 11, 446 }, { 135, 11, 1817 },
+ { 13, 0, 23 }, { 4, 10, 262 }, { 135, 10, 342 }, { 133, 10, 641 },
+ { 137, 11, 851 }, { 6, 0, 925 }, { 137, 0, 813 }, { 132, 11, 504 },
+ { 6, 0, 613 }, { 136, 0, 223 }, { 4, 10, 99 }, { 6, 10, 250 },
+ { 6, 10, 346 }, { 8, 10, 127 }, { 138, 10, 81 }, { 136, 0, 953 },
+ { 132, 10, 915 }, { 139, 11, 892 }, { 5, 10, 75 }, { 9, 10, 517 },
+ { 10, 10, 470 }, { 12, 10, 155 }, { 141, 10, 224 }, { 4, 0, 666 },
+ { 7, 0, 1017 }, { 7, 11, 996 }, { 138, 11, 390 }, { 5, 11, 883 },
+ { 133, 11, 975 }, { 14, 10, 83 }, { 142, 11, 83 }, { 4, 0, 670 },
+ { 5, 11, 922 }, { 134, 11, 1707 }, { 135, 0, 216 }, { 9, 0, 40 },
+ { 11, 0, 136 }, { 135, 11, 787 }, { 5, 10, 954 }, { 5, 11, 993 },
+ { 7, 11, 515 }, { 137, 11, 91 }, { 139, 0, 259 }, { 7, 0, 1114 },
+ { 9, 0, 310 }, { 9, 0, 682 }, { 10, 0, 440 }, { 13, 0, 40 },
+ { 6, 10, 304 }, { 8, 10, 418 }, { 11, 10, 341 }, { 139, 10, 675 },
+ { 14, 0, 296 }, { 9, 10, 410 }, { 139, 10, 425 }, { 10, 11, 377 },
+ { 12, 11, 363 }, { 13, 11, 68 }, { 13, 11, 94 }, { 14, 11, 108 },
+ { 142, 11, 306 }, { 7, 0, 1401 }, { 135, 0, 1476 }, { 4, 0, 296 },
+ { 6, 0, 475 }, { 7, 0, 401 }, { 7, 0, 1410 }, { 7, 0, 1594 },
+ { 7, 0, 1674 }, { 8, 0, 63 }, { 8, 0, 660 }, { 137, 0, 74 },
+ { 4, 0, 139 }, { 4, 0, 388 }, { 140, 0, 188 }, { 132, 0, 797 },
+ { 132, 11, 766 }, { 5, 11, 103 }, { 7, 11, 921 }, { 8, 11, 580 },
+ { 8, 11, 593 }, { 8, 11, 630 }, { 138, 11, 28 }, { 4, 11, 911 },
+ { 5, 11, 867 }, { 133, 11, 1013 }, { 134, 10, 14 }, { 134, 0, 1572 },
+ { 134, 10, 1708 }, { 21, 0, 39 }, { 5, 10, 113 }, { 6, 10, 243 },
+ { 7, 10, 1865 }, { 11, 10, 161 }, { 16, 10, 37 }, { 145, 10, 99 },
+ { 7, 11, 1563 }, { 141, 11, 182 }, { 5, 11, 135 }, { 6, 11, 519 },
+ { 7, 11, 1722 }, { 10, 11, 271 }, { 11, 11, 261 }, { 145, 11, 54 },
+ { 132, 10, 274 }, { 134, 0, 1594 }, { 4, 11, 300 }, { 5, 11, 436 },
+ { 135, 11, 484 }, { 4, 0, 747 }, { 6, 0, 290 }, { 7, 0, 649 },
+ { 7, 0, 1479 }, { 135, 0, 1583 }, { 133, 11, 535 }, { 147, 11, 82 },
+ { 133, 0, 232 }, { 137, 0, 887 }, { 135, 10, 166 }, { 136, 0, 521 },
+ { 4, 0, 14 }, { 7, 0, 472 }, { 7, 0, 1801 }, { 10, 0, 748 },
+ { 141, 0, 458 }, { 134, 0, 741 }, { 134, 0, 992 }, { 16, 0, 111 },
+ { 137, 10, 304 }, { 4, 0, 425 }, { 5, 11, 387 }, { 7, 11, 557 },
+ { 12, 11, 547 }, { 142, 11, 86 }, { 135, 11, 1747 }, { 5, 10, 654 },
+ { 135, 11, 1489 }, { 7, 0, 789 }, { 4, 11, 6 }, { 5, 11, 708 },
+ { 136, 11, 75 }, { 6, 10, 273 }, { 10, 10, 188 }, { 13, 10, 377 },
+ { 146, 10, 77 }, { 6, 0, 1593 }, { 4, 11, 303 }, { 7, 11, 619 },
+ { 10, 11, 547 }, { 10, 11, 687 }, { 11, 11, 122 }, { 140, 11, 601 },
+ { 134, 0, 1768 }, { 135, 10, 410 }, { 138, 11, 772 }, { 11, 0, 233 },
+ { 139, 10, 524 }, { 5, 0, 943 }, { 134, 0, 1779 }, { 134, 10, 1785 },
+ { 136, 11, 529 }, { 132, 0, 955 }, { 5, 0, 245 }, { 6, 0, 576 },
+ { 7, 0, 582 }, { 136, 0, 225 }, { 132, 10, 780 }, { 142, 0, 241 },
+ { 134, 0, 1943 }, { 4, 11, 106 }, { 7, 11, 310 }, { 7, 11, 1785 },
+ { 10, 11, 690 }, { 139, 11, 717 }, { 134, 0, 1284 }, { 5, 11, 890 },
+ { 133, 11, 988 }, { 6, 11, 626 }, { 142, 11, 431 }, { 10, 11, 706 },
+ { 145, 11, 32 }, { 137, 11, 332 }, { 132, 11, 698 }, { 135, 0, 709 },
+ { 5, 10, 948 }, { 138, 11, 17 }, { 136, 0, 554 }, { 134, 0, 1564 },
+ { 139, 10, 941 }, { 132, 0, 443 }, { 134, 0, 909 }, { 134, 11, 84 },
+ { 142, 0, 280 }, { 4, 10, 532 }, { 5, 10, 706 }, { 135, 10, 662 },
+ { 132, 0, 729 }, { 5, 10, 837 }, { 6, 10, 1651 }, { 139, 10, 985 },
+ { 135, 10, 1861 }, { 4, 0, 348 }, { 152, 11, 3 }, { 5, 11, 986 },
+ { 6, 11, 130 }, { 7, 11, 1582 }, { 8, 11, 458 }, { 10, 11, 101 },
+ { 10, 11, 318 }, { 138, 11, 823 }, { 134, 0, 758 }, { 4, 0, 298 },
+ { 137, 0, 848 }, { 4, 10, 330 }, { 7, 10, 933 }, { 7, 10, 2012 },
+ { 136, 10, 292 }, { 7, 11, 1644 }, { 137, 11, 129 }, { 6, 0, 1422 },
+ { 9, 0, 829 }, { 135, 10, 767 }, { 5, 0, 164 }, { 7, 0, 121 },
+ { 142, 0, 189 }, { 7, 0, 812 }, { 7, 0, 1261 }, { 7, 0, 1360 },
+ { 9, 0, 632 }, { 140, 0, 352 }, { 135, 11, 1788 }, { 139, 0, 556 },
+ { 135, 11, 997 }, { 145, 10, 114 }, { 4, 0, 172 }, { 9, 0, 611 },
+ { 10, 0, 436 }, { 12, 0, 673 }, { 13, 0, 255 }, { 137, 10, 883 },
+ { 11, 0, 530 }, { 138, 10, 274 }, { 133, 0, 844 }, { 134, 0, 984 },
+ { 13, 0, 232 }, { 18, 0, 35 }, { 4, 10, 703 }, { 135, 10, 207 },
+ { 132, 10, 571 }, { 9, 0, 263 }, { 10, 0, 147 }, { 138, 0, 492 },
+ { 7, 11, 1756 }, { 137, 11, 98 }, { 5, 10, 873 }, { 5, 10, 960 },
+ { 8, 10, 823 }, { 137, 10, 881 }, { 133, 0, 537 }, { 132, 0, 859 },
+ { 7, 11, 1046 }, { 139, 11, 160 }, { 137, 0, 842 }, { 139, 10, 283 },
+ { 5, 10, 33 }, { 6, 10, 470 }, { 139, 10, 424 }, { 6, 11, 45 },
+ { 7, 11, 433 }, { 8, 11, 129 }, { 9, 11, 21 }, { 10, 11, 392 },
+ { 11, 11, 79 }, { 12, 11, 499 }, { 13, 11, 199 }, { 141, 11, 451 },
+ { 135, 0, 1291 }, { 135, 10, 1882 }, { 7, 11, 558 }, { 136, 11, 353 },
+ { 134, 0, 1482 }, { 5, 0, 230 }, { 5, 0, 392 }, { 6, 0, 420 },
+ { 9, 0, 568 }, { 140, 0, 612 }, { 6, 0, 262 }, { 7, 10, 90 },
+ { 7, 10, 664 }, { 7, 10, 830 }, { 7, 10, 1380 }, { 7, 10, 2025 },
+ { 8, 11, 81 }, { 8, 10, 448 }, { 8, 10, 828 }, { 9, 11, 189 },
+ { 9, 11, 201 }, { 11, 11, 478 }, { 11, 11, 712 }, { 141, 11, 338 },
+ { 142, 0, 31 }, { 5, 11, 353 }, { 151, 11, 26 }, { 132, 0, 753 },
+ { 4, 0, 0 }, { 5, 0, 41 }, { 7, 0, 1459 }, { 7, 0, 1469 },
+ { 7, 0, 1859 }, { 9, 0, 549 }, { 139, 0, 905 }, { 9, 10, 417 },
+ { 137, 10, 493 }, { 135, 11, 1113 }, { 133, 0, 696 }, { 141, 11, 448 },
+ { 134, 10, 295 }, { 132, 0, 834 }, { 4, 0, 771 }, { 5, 10, 1019 },
+ { 6, 11, 25 }, { 7, 11, 855 }, { 7, 11, 1258 }, { 144, 11, 32 },
+ { 134, 0, 1076 }, { 133, 0, 921 }, { 133, 0, 674 }, { 4, 11, 4 },
+ { 7, 11, 1118 }, { 7, 11, 1320 }, { 7, 11, 1706 }, { 8, 11, 277 },
+ { 9, 11, 622 }, { 10, 11, 9 }, { 11, 11, 724 }, { 12, 11, 350 },
+ { 12, 11, 397 }, { 13, 11, 28 }, { 13, 11, 159 }, { 15, 11, 89 },
+ { 18, 11, 5 }, { 19, 11, 9 }, { 20, 11, 34 }, { 150, 11, 47 },
+ { 134, 10, 208 }, { 6, 0, 444 }, { 136, 0, 308 }, { 6, 0, 180 },
+ { 7, 0, 1137 }, { 8, 0, 751 }, { 139, 0, 805 }, { 4, 0, 183 },
+ { 7, 0, 271 }, { 11, 0, 824 }, { 11, 0, 952 }, { 13, 0, 278 },
+ { 13, 0, 339 }, { 13, 0, 482 }, { 14, 0, 424 }, { 148, 0, 99 },
+ { 7, 11, 317 }, { 135, 11, 569 }, { 4, 0, 19 }, { 5, 0, 477 },
+ { 5, 0, 596 }, { 6, 0, 505 }, { 7, 0, 1221 }, { 11, 0, 907 },
+ { 12, 0, 209 }, { 141, 0, 214 }, { 135, 0, 1215 }, { 6, 0, 271 },
+ { 7, 0, 398 }, { 8, 0, 387 }, { 10, 0, 344 }, { 7, 10, 448 },
+ { 7, 10, 1629 }, { 7, 10, 1813 }, { 8, 10, 442 }, { 9, 10, 710 },
+ { 10, 10, 282 }, { 138, 10, 722 }, { 11, 10, 844 }, { 12, 10, 104 },
+ { 140, 10, 625 }, { 134, 11, 255 }, { 133, 10, 787 }, { 134, 0, 1645 },
+ { 11, 11, 956 }, { 151, 11, 3 }, { 6, 0, 92 }, { 6, 0, 188 },
+ { 7, 0, 209 }, { 7, 0, 1269 }, { 7, 0, 1524 }, { 7, 0, 1876 },
+ { 8, 0, 661 }, { 10, 0, 42 }, { 10, 0, 228 }, { 11, 0, 58 },
+ { 11, 0, 1020 }, { 12, 0, 58 }, { 12, 0, 118 }, { 141, 0, 32 },
+ { 4, 0, 459 }, { 133, 0, 966 }, { 4, 11, 536 }, { 7, 11, 1141 },
+ { 10, 11, 723 }, { 139, 11, 371 }, { 140, 0, 330 }, { 134, 0, 1557 },
+ { 7, 11, 285 }, { 135, 11, 876 }, { 136, 10, 491 }, { 135, 11, 560 },
+ { 6, 0, 18 }, { 7, 0, 179 }, { 7, 0, 932 }, { 8, 0, 548 },
+ { 8, 0, 757 }, { 9, 0, 54 }, { 9, 0, 65 }, { 9, 0, 532 },
+ { 9, 0, 844 }, { 10, 0, 113 }, { 10, 0, 117 }, { 10, 0, 315 },
+ { 10, 0, 560 }, { 10, 0, 622 }, { 10, 0, 798 }, { 11, 0, 153 },
+ { 11, 0, 351 }, { 11, 0, 375 }, { 12, 0, 78 }, { 12, 0, 151 },
+ { 12, 0, 392 }, { 12, 0, 666 }, { 14, 0, 248 }, { 143, 0, 23 },
+ { 6, 0, 1742 }, { 132, 11, 690 }, { 4, 10, 403 }, { 5, 10, 441 },
+ { 7, 10, 450 }, { 10, 10, 840 }, { 11, 10, 101 }, { 12, 10, 193 },
+ { 141, 10, 430 }, { 133, 0, 965 }, { 134, 0, 182 }, { 10, 0, 65 },
+ { 10, 0, 488 }, { 138, 0, 497 }, { 135, 11, 1346 }, { 6, 0, 973 },
+ { 6, 0, 1158 }, { 10, 11, 200 }, { 19, 11, 2 }, { 151, 11, 22 },
+ { 4, 11, 190 }, { 133, 11, 554 }, { 133, 10, 679 }, { 7, 0, 328 },
+ { 137, 10, 326 }, { 133, 11, 1001 }, { 9, 0, 588 }, { 138, 0, 260 },
+ { 133, 11, 446 }, { 135, 10, 1128 }, { 135, 10, 1796 }, { 147, 11, 119 },
+ { 134, 0, 1786 }, { 6, 0, 1328 }, { 6, 0, 1985 }, { 8, 0, 962 },
+ { 138, 0, 1017 }, { 135, 0, 308 }, { 11, 0, 508 }, { 4, 10, 574 },
+ { 7, 10, 350 }, { 7, 10, 1024 }, { 8, 10, 338 }, { 9, 10, 677 },
+ { 138, 10, 808 }, { 138, 11, 752 }, { 135, 10, 1081 }, { 137, 11, 96 },
+ { 7, 10, 1676 }, { 135, 10, 2037 }, { 136, 0, 588 }, { 132, 11, 304 },
+ { 133, 0, 614 }, { 140, 0, 793 }, { 136, 0, 287 }, { 137, 10, 297 },
+ { 141, 10, 37 }, { 6, 11, 53 }, { 6, 11, 199 }, { 7, 11, 1408 },
+ { 8, 11, 32 }, { 8, 11, 93 }, { 9, 11, 437 }, { 10, 11, 397 },
+ { 10, 11, 629 }, { 11, 11, 593 }, { 11, 11, 763 }, { 13, 11, 326 },
+ { 145, 11, 35 }, { 134, 11, 105 }, { 9, 11, 320 }, { 10, 11, 506 },
+ { 138, 11, 794 }, { 5, 11, 114 }, { 5, 11, 255 }, { 141, 11, 285 },
+ { 140, 0, 290 }, { 7, 11, 2035 }, { 8, 11, 19 }, { 9, 11, 89 },
+ { 138, 11, 831 }, { 134, 0, 1136 }, { 7, 0, 719 }, { 8, 0, 796 },
+ { 8, 0, 809 }, { 8, 0, 834 }, { 6, 10, 306 }, { 7, 10, 1140 },
+ { 7, 10, 1340 }, { 8, 10, 133 }, { 138, 10, 449 }, { 139, 10, 1011 },
+ { 5, 0, 210 }, { 6, 0, 213 }, { 7, 0, 60 }, { 10, 0, 364 },
+ { 139, 0, 135 }, { 5, 0, 607 }, { 8, 0, 326 }, { 136, 0, 490 },
+ { 138, 11, 176 }, { 132, 0, 701 }, { 5, 0, 472 }, { 7, 0, 380 },
+ { 137, 0, 758 }, { 135, 0, 1947 }, { 6, 0, 1079 }, { 138, 0, 278 },
+ { 138, 11, 391 }, { 5, 10, 329 }, { 8, 10, 260 }, { 139, 11, 156 },
+ { 4, 0, 386 }, { 7, 0, 41 }, { 8, 0, 405 }, { 8, 0, 728 },
+ { 9, 0, 497 }, { 11, 0, 110 }, { 11, 0, 360 }, { 15, 0, 37 },
+ { 144, 0, 84 }, { 5, 0, 46 }, { 7, 0, 1452 }, { 7, 0, 1480 },
+ { 8, 0, 634 }, { 140, 0, 472 }, { 136, 0, 961 }, { 4, 0, 524 },
+ { 136, 0, 810 }, { 10, 0, 238 }, { 141, 0, 33 }, { 132, 10, 657 },
+ { 152, 10, 7 }, { 133, 0, 532 }, { 5, 0, 997 }, { 135, 10, 1665 },
+ { 7, 11, 594 }, { 7, 11, 851 }, { 7, 11, 1858 }, { 9, 11, 411 },
+ { 9, 11, 574 }, { 9, 11, 666 }, { 9, 11, 737 }, { 10, 11, 346 },
+ { 10, 11, 712 }, { 11, 11, 246 }, { 11, 11, 432 }, { 11, 11, 517 },
+ { 11, 11, 647 }, { 11, 11, 679 }, { 11, 11, 727 }, { 12, 11, 304 },
+ { 12, 11, 305 }, { 12, 11, 323 }, { 12, 11, 483 }, { 12, 11, 572 },
+ { 12, 11, 593 }, { 12, 11, 602 }, { 13, 11, 95 }, { 13, 11, 101 },
+ { 13, 11, 171 }, { 13, 11, 315 }, { 13, 11, 378 }, { 13, 11, 425 },
+ { 13, 11, 475 }, { 14, 11, 63 }, { 14, 11, 380 }, { 14, 11, 384 },
+ { 15, 11, 133 }, { 18, 11, 112 }, { 148, 11, 72 }, { 5, 11, 955 },
+ { 136, 11, 814 }, { 134, 0, 1301 }, { 5, 10, 66 }, { 7, 10, 1896 },
+ { 136, 10, 288 }, { 133, 11, 56 }, { 134, 10, 1643 }, { 6, 0, 1298 },
+ { 148, 11, 100 }, { 5, 0, 782 }, { 5, 0, 829 }, { 6, 0, 671 },
+ { 6, 0, 1156 }, { 6, 0, 1738 }, { 137, 11, 621 }, { 4, 0, 306 },
+ { 5, 0, 570 }, { 7, 0, 1347 }, { 5, 10, 91 }, { 5, 10, 648 },
+ { 5, 10, 750 }, { 5, 10, 781 }, { 6, 10, 54 }, { 6, 10, 112 },
+ { 6, 10, 402 }, { 6, 10, 1732 }, { 7, 10, 315 }, { 7, 10, 749 },
+ { 7, 10, 1900 }, { 9, 10, 78 }, { 9, 10, 508 }, { 10, 10, 611 },
+ { 10, 10, 811 }, { 11, 10, 510 }, { 11, 10, 728 }, { 13, 10, 36 },
+ { 14, 10, 39 }, { 16, 10, 83 }, { 17, 10, 124 }, { 148, 10, 30 },
+ { 8, 10, 570 }, { 9, 11, 477 }, { 141, 11, 78 }, { 4, 11, 639 },
+ { 10, 11, 4 }, { 10, 10, 322 }, { 10, 10, 719 }, { 11, 10, 407 },
+ { 11, 11, 638 }, { 12, 11, 177 }, { 148, 11, 57 }, { 7, 0, 1823 },
+ { 139, 0, 693 }, { 7, 0, 759 }, { 5, 11, 758 }, { 8, 10, 125 },
+ { 8, 10, 369 }, { 8, 10, 524 }, { 10, 10, 486 }, { 11, 10, 13 },
+ { 11, 10, 381 }, { 11, 10, 736 }, { 11, 10, 766 }, { 11, 10, 845 },
+ { 13, 10, 114 }, { 13, 10, 292 }, { 142, 10, 47 }, { 7, 0, 1932 },
+ { 6, 10, 1684 }, { 6, 10, 1731 }, { 7, 10, 356 }, { 8, 10, 54 },
+ { 8, 10, 221 }, { 9, 10, 225 }, { 9, 10, 356 }, { 10, 10, 77 },
+ { 10, 10, 446 }, { 10, 10, 731 }, { 12, 10, 404 }, { 141, 10, 491 },
+ { 135, 11, 552 }, { 135, 11, 1112 }, { 4, 0, 78 }, { 5, 0, 96 },
+ { 5, 0, 182 }, { 6, 0, 1257 }, { 7, 0, 1724 }, { 7, 0, 1825 },
+ { 10, 0, 394 }, { 10, 0, 471 }, { 11, 0, 532 }, { 14, 0, 340 },
+ { 145, 0, 88 }, { 139, 11, 328 }, { 135, 0, 1964 }, { 132, 10, 411 },
+ { 4, 10, 80 }, { 5, 10, 44 }, { 137, 11, 133 }, { 5, 11, 110 },
+ { 6, 11, 169 }, { 6, 11, 1702 }, { 7, 11, 400 }, { 8, 11, 538 },
+ { 9, 11, 184 }, { 9, 11, 524 }, { 140, 11, 218 }, { 4, 0, 521 },
+ { 5, 10, 299 }, { 7, 10, 1083 }, { 140, 11, 554 }, { 6, 11, 133 },
+ { 9, 11, 353 }, { 12, 11, 628 }, { 146, 11, 79 }, { 6, 0, 215 },
+ { 7, 0, 584 }, { 7, 0, 1028 }, { 7, 0, 1473 }, { 7, 0, 1721 },
+ { 9, 0, 424 }, { 138, 0, 779 }, { 7, 0, 857 }, { 7, 0, 1209 },
+ { 7, 10, 1713 }, { 9, 10, 537 }, { 10, 10, 165 }, { 12, 10, 219 },
+ { 140, 10, 561 }, { 4, 10, 219 }, { 6, 11, 93 }, { 7, 11, 1422 },
+ { 7, 10, 1761 }, { 7, 11, 1851 }, { 8, 11, 673 }, { 9, 10, 86 },
+ { 9, 11, 529 }, { 140, 11, 43 }, { 137, 11, 371 }, { 136, 0, 671 },
+ { 5, 0, 328 }, { 135, 0, 918 }, { 132, 0, 529 }, { 9, 11, 25 },
+ { 10, 11, 467 }, { 138, 11, 559 }, { 4, 11, 335 }, { 135, 11, 942 },
+ { 134, 0, 716 }, { 134, 0, 1509 }, { 6, 0, 67 }, { 7, 0, 258 },
+ { 7, 0, 1630 }, { 9, 0, 354 }, { 9, 0, 675 }, { 10, 0, 830 },
+ { 14, 0, 80 }, { 17, 0, 80 }, { 140, 10, 428 }, { 134, 0, 1112 },
+ { 6, 0, 141 }, { 7, 0, 225 }, { 9, 0, 59 }, { 9, 0, 607 },
+ { 10, 0, 312 }, { 11, 0, 687 }, { 12, 0, 555 }, { 13, 0, 373 },
+ { 13, 0, 494 }, { 148, 0, 58 }, { 133, 10, 514 }, { 8, 11, 39 },
+ { 10, 11, 773 }, { 11, 11, 84 }, { 12, 11, 205 }, { 142, 11, 1 },
+ { 8, 0, 783 }, { 5, 11, 601 }, { 133, 11, 870 }, { 136, 11, 594 },
+ { 4, 10, 55 }, { 5, 10, 301 }, { 6, 10, 571 }, { 14, 10, 49 },
+ { 146, 10, 102 }, { 132, 11, 181 }, { 134, 11, 1652 }, { 133, 10, 364 },
+ { 4, 11, 97 }, { 5, 11, 147 }, { 6, 11, 286 }, { 7, 11, 1362 },
+ { 141, 11, 176 }, { 4, 10, 76 }, { 7, 10, 1550 }, { 9, 10, 306 },
+ { 9, 10, 430 }, { 9, 10, 663 }, { 10, 10, 683 }, { 11, 10, 427 },
+ { 11, 10, 753 }, { 12, 10, 334 }, { 12, 10, 442 }, { 14, 10, 258 },
+ { 14, 10, 366 }, { 143, 10, 131 }, { 137, 10, 52 }, { 6, 0, 955 },
+ { 134, 0, 1498 }, { 6, 11, 375 }, { 7, 11, 169 }, { 7, 11, 254 },
+ { 136, 11, 780 }, { 7, 0, 430 }, { 11, 0, 46 }, { 14, 0, 343 },
+ { 142, 11, 343 }, { 135, 0, 1183 }, { 5, 0, 602 }, { 7, 0, 2018 },
+ { 9, 0, 418 }, { 9, 0, 803 }, { 135, 11, 1447 }, { 8, 0, 677 },
+ { 135, 11, 1044 }, { 139, 11, 285 }, { 4, 10, 656 }, { 135, 10, 779 },
+ { 135, 10, 144 }, { 5, 11, 629 }, { 135, 11, 1549 }, { 135, 10, 1373 },
+ { 138, 11, 209 }, { 7, 10, 554 }, { 7, 10, 605 }, { 141, 10, 10 },
+ { 5, 10, 838 }, { 5, 10, 841 }, { 134, 10, 1649 }, { 133, 10, 1012 },
+ { 6, 0, 1357 }, { 134, 0, 1380 }, { 144, 0, 53 }, { 6, 0, 590 },
+ { 7, 10, 365 }, { 7, 10, 1357 }, { 7, 10, 1497 }, { 8, 10, 154 },
+ { 141, 10, 281 }, { 133, 10, 340 }, { 132, 11, 420 }, { 135, 0, 329 },
+ { 147, 11, 32 }, { 4, 0, 469 }, { 10, 11, 429 }, { 139, 10, 495 },
+ { 8, 10, 261 }, { 9, 10, 144 }, { 9, 10, 466 }, { 10, 10, 370 },
+ { 12, 10, 470 }, { 13, 10, 144 }, { 142, 10, 348 }, { 142, 0, 460 },
+ { 4, 11, 325 }, { 9, 10, 897 }, { 138, 11, 125 }, { 6, 0, 1743 },
+ { 6, 10, 248 }, { 9, 10, 546 }, { 10, 10, 535 }, { 11, 10, 681 },
+ { 141, 10, 135 }, { 4, 0, 990 }, { 5, 0, 929 }, { 6, 0, 340 },
+ { 8, 0, 376 }, { 8, 0, 807 }, { 8, 0, 963 }, { 8, 0, 980 },
+ { 138, 0, 1007 }, { 134, 0, 1603 }, { 140, 0, 250 }, { 4, 11, 714 },
+ { 133, 11, 469 }, { 134, 10, 567 }, { 136, 10, 445 }, { 5, 0, 218 },
+ { 7, 0, 1610 }, { 8, 0, 646 }, { 10, 0, 83 }, { 11, 11, 138 },
+ { 140, 11, 40 }, { 7, 0, 1512 }, { 135, 0, 1794 }, { 135, 11, 1216 },
+ { 11, 0, 0 }, { 16, 0, 78 }, { 132, 11, 718 }, { 133, 0, 571 },
+ { 132, 0, 455 }, { 134, 0, 1012 }, { 5, 11, 124 }, { 5, 11, 144 },
+ { 6, 11, 548 }, { 7, 11, 15 }, { 7, 11, 153 }, { 137, 11, 629 },
+ { 142, 11, 10 }, { 6, 11, 75 }, { 7, 11, 1531 }, { 8, 11, 416 },
+ { 9, 11, 240 }, { 9, 11, 275 }, { 10, 11, 100 }, { 11, 11, 658 },
+ { 11, 11, 979 }, { 12, 11, 86 }, { 13, 11, 468 }, { 14, 11, 66 },
+ { 14, 11, 207 }, { 15, 11, 20 }, { 15, 11, 25 }, { 144, 11, 58 },
+ { 132, 10, 577 }, { 5, 11, 141 }, { 5, 11, 915 }, { 6, 11, 1783 },
+ { 7, 11, 211 }, { 7, 11, 698 }, { 7, 11, 1353 }, { 9, 11, 83 },
+ { 9, 11, 281 }, { 10, 11, 376 }, { 10, 11, 431 }, { 11, 11, 543 },
+ { 12, 11, 664 }, { 13, 11, 280 }, { 13, 11, 428 }, { 14, 11, 61 },
+ { 14, 11, 128 }, { 17, 11, 52 }, { 145, 11, 81 }, { 6, 0, 161 },
+ { 7, 0, 372 }, { 137, 0, 597 }, { 132, 0, 349 }, { 10, 11, 702 },
+ { 139, 11, 245 }, { 134, 0, 524 }, { 134, 10, 174 }, { 6, 0, 432 },
+ { 9, 0, 751 }, { 139, 0, 322 }, { 147, 11, 94 }, { 4, 11, 338 },
+ { 133, 11, 400 }, { 5, 0, 468 }, { 10, 0, 325 }, { 11, 0, 856 },
+ { 12, 0, 345 }, { 143, 0, 104 }, { 133, 0, 223 }, { 132, 0, 566 },
+ { 4, 11, 221 }, { 5, 11, 659 }, { 5, 11, 989 }, { 7, 11, 697 },
+ { 7, 11, 1211 }, { 138, 11, 284 }, { 135, 11, 1070 }, { 4, 0, 59 },
+ { 135, 0, 1394 }, { 6, 0, 436 }, { 11, 0, 481 }, { 5, 10, 878 },
+ { 133, 10, 972 }, { 4, 0, 48 }, { 5, 0, 271 }, { 135, 0, 953 },
+ { 5, 0, 610 }, { 136, 0, 457 }, { 4, 0, 773 }, { 5, 0, 618 },
+ { 137, 0, 756 }, { 133, 0, 755 }, { 135, 0, 1217 }, { 138, 11, 507 },
+ { 132, 10, 351 }, { 132, 0, 197 }, { 143, 11, 78 }, { 4, 11, 188 },
+ { 7, 11, 805 }, { 11, 11, 276 }, { 142, 11, 293 }, { 5, 11, 884 },
+ { 139, 11, 991 }, { 132, 10, 286 }, { 10, 0, 259 }, { 10, 0, 428 },
+ { 7, 10, 438 }, { 7, 10, 627 }, { 7, 10, 1516 }, { 8, 10, 40 },
+ { 9, 10, 56 }, { 9, 10, 294 }, { 11, 10, 969 }, { 11, 10, 995 },
+ { 146, 10, 148 }, { 4, 0, 356 }, { 5, 0, 217 }, { 5, 0, 492 },
+ { 5, 0, 656 }, { 8, 0, 544 }, { 136, 11, 544 }, { 5, 0, 259 },
+ { 6, 0, 1230 }, { 7, 0, 414 }, { 7, 0, 854 }, { 142, 0, 107 },
+ { 132, 0, 1007 }, { 15, 0, 14 }, { 144, 0, 5 }, { 6, 0, 1580 },
+ { 132, 10, 738 }, { 132, 11, 596 }, { 132, 0, 673 }, { 133, 10, 866 },
+ { 6, 0, 1843 }, { 135, 11, 1847 }, { 4, 0, 165 }, { 7, 0, 1398 },
+ { 135, 0, 1829 }, { 135, 11, 1634 }, { 147, 11, 65 }, { 6, 0, 885 },
+ { 6, 0, 1009 }, { 137, 0, 809 }, { 133, 10, 116 }, { 132, 10, 457 },
+ { 136, 11, 770 }, { 9, 0, 498 }, { 12, 0, 181 }, { 10, 11, 361 },
+ { 142, 11, 316 }, { 134, 11, 595 }, { 5, 0, 9 }, { 7, 0, 297 },
+ { 7, 0, 966 }, { 140, 0, 306 }, { 4, 11, 89 }, { 5, 11, 489 },
+ { 6, 11, 315 }, { 7, 11, 553 }, { 7, 11, 1745 }, { 138, 11, 243 },
+ { 134, 0, 1487 }, { 132, 0, 437 }, { 5, 0, 146 }, { 6, 0, 411 },
+ { 138, 0, 721 }, { 5, 10, 527 }, { 6, 10, 189 }, { 135, 10, 859 },
+ { 11, 10, 104 }, { 11, 10, 554 }, { 15, 10, 60 }, { 143, 10, 125 },
+ { 6, 11, 1658 }, { 9, 11, 3 }, { 10, 11, 154 }, { 11, 11, 641 },
+ { 13, 11, 85 }, { 13, 11, 201 }, { 141, 11, 346 }, { 6, 0, 177 },
+ { 135, 0, 467 }, { 134, 0, 1377 }, { 134, 10, 116 }, { 136, 11, 645 },
+ { 4, 11, 166 }, { 5, 11, 505 }, { 6, 11, 1670 }, { 137, 11, 110 },
+ { 133, 10, 487 }, { 4, 10, 86 }, { 5, 10, 667 }, { 5, 10, 753 },
+ { 6, 10, 316 }, { 6, 10, 455 }, { 135, 10, 946 }, { 133, 0, 200 },
+ { 132, 0, 959 }, { 6, 0, 1928 }, { 134, 0, 1957 }, { 139, 11, 203 },
+ { 150, 10, 45 }, { 4, 10, 79 }, { 7, 10, 1773 }, { 10, 10, 450 },
+ { 11, 10, 589 }, { 13, 10, 332 }, { 13, 10, 493 }, { 14, 10, 183 },
+ { 14, 10, 334 }, { 14, 10, 362 }, { 14, 10, 368 }, { 14, 10, 376 },
+ { 14, 10, 379 }, { 19, 10, 90 }, { 19, 10, 103 }, { 19, 10, 127 },
+ { 148, 10, 90 }, { 6, 0, 1435 }, { 135, 11, 1275 }, { 134, 0, 481 },
+ { 7, 11, 445 }, { 8, 11, 307 }, { 8, 11, 704 }, { 10, 11, 41 },
+ { 10, 11, 439 }, { 11, 11, 237 }, { 11, 11, 622 }, { 140, 11, 201 },
+ { 135, 11, 869 }, { 4, 0, 84 }, { 7, 0, 1482 }, { 10, 0, 76 },
+ { 138, 0, 142 }, { 11, 11, 277 }, { 144, 11, 14 }, { 135, 11, 1977 },
+ { 4, 11, 189 }, { 5, 11, 713 }, { 136, 11, 57 }, { 133, 0, 1015 },
+ { 138, 11, 371 }, { 4, 0, 315 }, { 5, 0, 507 }, { 135, 0, 1370 },
+ { 4, 11, 552 }, { 142, 10, 381 }, { 9, 0, 759 }, { 16, 0, 31 },
+ { 16, 0, 39 }, { 16, 0, 75 }, { 18, 0, 24 }, { 20, 0, 42 },
+ { 152, 0, 1 }, { 134, 0, 712 }, { 134, 0, 1722 }, { 133, 10, 663 },
+ { 133, 10, 846 }, { 8, 0, 222 }, { 8, 0, 476 }, { 9, 0, 238 },
+ { 11, 0, 516 }, { 11, 0, 575 }, { 15, 0, 109 }, { 146, 0, 100 },
+ { 7, 0, 1402 }, { 7, 0, 1414 }, { 12, 0, 456 }, { 5, 10, 378 },
+ { 8, 10, 465 }, { 9, 10, 286 }, { 10, 10, 185 }, { 10, 10, 562 },
+ { 10, 10, 635 }, { 11, 10, 31 }, { 11, 10, 393 }, { 13, 10, 312 },
+ { 18, 10, 65 }, { 18, 10, 96 }, { 147, 10, 89 }, { 4, 0, 986 },
+ { 6, 0, 1958 }, { 6, 0, 2032 }, { 8, 0, 934 }, { 138, 0, 985 },
+ { 7, 10, 1880 }, { 9, 10, 680 }, { 139, 10, 798 }, { 134, 10, 1770 },
+ { 145, 11, 49 }, { 132, 11, 614 }, { 132, 10, 648 }, { 5, 10, 945 },
+ { 6, 10, 1656 }, { 6, 10, 1787 }, { 7, 10, 167 }, { 8, 10, 824 },
+ { 9, 10, 391 }, { 10, 10, 375 }, { 139, 10, 185 }, { 138, 11, 661 },
+ { 7, 0, 1273 }, { 135, 11, 1945 }, { 7, 0, 706 }, { 7, 0, 1058 },
+ { 138, 0, 538 }, { 7, 10, 1645 }, { 8, 10, 352 }, { 137, 10, 249 },
+ { 132, 10, 152 }, { 11, 0, 92 }, { 11, 0, 196 }, { 11, 0, 409 },
+ { 11, 0, 450 }, { 11, 0, 666 }, { 11, 0, 777 }, { 12, 0, 262 },
+ { 13, 0, 385 }, { 13, 0, 393 }, { 15, 0, 115 }, { 16, 0, 45 },
+ { 145, 0, 82 }, { 133, 10, 1006 }, { 6, 0, 40 }, { 135, 0, 1781 },
+ { 9, 11, 614 }, { 139, 11, 327 }, { 5, 10, 420 }, { 135, 10, 1449 },
+ { 135, 0, 431 }, { 10, 0, 97 }, { 135, 10, 832 }, { 6, 0, 423 },
+ { 7, 0, 665 }, { 135, 0, 1210 }, { 7, 0, 237 }, { 8, 0, 664 },
+ { 9, 0, 42 }, { 9, 0, 266 }, { 9, 0, 380 }, { 9, 0, 645 },
+ { 10, 0, 177 }, { 138, 0, 276 }, { 7, 0, 264 }, { 133, 10, 351 },
+ { 8, 0, 213 }, { 5, 10, 40 }, { 7, 10, 598 }, { 7, 10, 1638 },
+ { 9, 10, 166 }, { 9, 10, 640 }, { 9, 10, 685 }, { 9, 10, 773 },
+ { 11, 10, 215 }, { 13, 10, 65 }, { 14, 10, 172 }, { 14, 10, 317 },
+ { 145, 10, 6 }, { 5, 11, 84 }, { 134, 11, 163 }, { 8, 10, 60 },
+ { 9, 10, 343 }, { 139, 10, 769 }, { 137, 0, 455 }, { 133, 11, 410 },
+ { 8, 0, 906 }, { 12, 0, 700 }, { 12, 0, 706 }, { 140, 0, 729 },
+ { 21, 11, 33 }, { 150, 11, 40 }, { 7, 10, 1951 }, { 8, 10, 765 },
+ { 8, 10, 772 }, { 140, 10, 671 }, { 7, 10, 108 }, { 8, 10, 219 },
+ { 8, 10, 388 }, { 9, 10, 639 }, { 9, 10, 775 }, { 11, 10, 275 },
+ { 140, 10, 464 }, { 5, 11, 322 }, { 7, 11, 1941 }, { 8, 11, 186 },
+ { 9, 11, 262 }, { 10, 11, 187 }, { 14, 11, 208 }, { 146, 11, 130 },
+ { 139, 0, 624 }, { 8, 0, 574 }, { 5, 11, 227 }, { 140, 11, 29 },
+ { 7, 11, 1546 }, { 11, 11, 299 }, { 142, 11, 407 }, { 5, 10, 15 },
+ { 6, 10, 56 }, { 7, 10, 1758 }, { 8, 10, 500 }, { 9, 10, 730 },
+ { 11, 10, 331 }, { 13, 10, 150 }, { 142, 10, 282 }, { 7, 11, 1395 },
+ { 8, 11, 486 }, { 9, 11, 236 }, { 9, 11, 878 }, { 10, 11, 218 },
+ { 11, 11, 95 }, { 19, 11, 17 }, { 147, 11, 31 }, { 135, 11, 2043 },
+ { 4, 0, 354 }, { 146, 11, 4 }, { 140, 11, 80 }, { 135, 0, 1558 },
+ { 134, 10, 1886 }, { 5, 10, 205 }, { 6, 10, 438 }, { 137, 10, 711 },
+ { 133, 11, 522 }, { 133, 10, 534 }, { 7, 0, 235 }, { 7, 0, 1475 },
+ { 15, 0, 68 }, { 146, 0, 120 }, { 137, 10, 691 }, { 4, 0, 942 },
+ { 6, 0, 1813 }, { 8, 0, 917 }, { 10, 0, 884 }, { 12, 0, 696 },
+ { 12, 0, 717 }, { 12, 0, 723 }, { 12, 0, 738 }, { 12, 0, 749 },
+ { 12, 0, 780 }, { 16, 0, 97 }, { 146, 0, 169 }, { 6, 10, 443 },
+ { 8, 11, 562 }, { 9, 10, 237 }, { 9, 10, 571 }, { 9, 10, 695 },
+ { 10, 10, 139 }, { 11, 10, 715 }, { 12, 10, 417 }, { 141, 10, 421 },
+ { 135, 0, 957 }, { 133, 0, 830 }, { 134, 11, 1771 }, { 146, 0, 23 },
+ { 5, 0, 496 }, { 6, 0, 694 }, { 7, 0, 203 }, { 7, 11, 1190 },
+ { 137, 11, 620 }, { 137, 11, 132 }, { 6, 0, 547 }, { 134, 0, 1549 },
+ { 8, 11, 258 }, { 9, 11, 208 }, { 137, 11, 359 }, { 4, 0, 864 },
+ { 5, 0, 88 }, { 137, 0, 239 }, { 135, 11, 493 }, { 4, 11, 317 },
+ { 135, 11, 1279 }, { 132, 11, 477 }, { 4, 10, 578 }, { 5, 11, 63 },
+ { 133, 11, 509 }, { 7, 0, 650 }, { 135, 0, 1310 }, { 7, 0, 1076 },
+ { 9, 0, 80 }, { 11, 0, 78 }, { 11, 0, 421 }, { 11, 0, 534 },
+ { 140, 0, 545 }, { 132, 11, 288 }, { 12, 0, 553 }, { 14, 0, 118 },
+ { 133, 10, 923 }, { 7, 0, 274 }, { 11, 0, 479 }, { 139, 0, 507 },
+ { 8, 11, 89 }, { 8, 11, 620 }, { 9, 11, 49 }, { 10, 11, 774 },
+ { 11, 11, 628 }, { 12, 11, 322 }, { 143, 11, 124 }, { 4, 0, 497 },
+ { 135, 0, 1584 }, { 7, 0, 261 }, { 7, 0, 1115 }, { 7, 0, 1354 },
+ { 7, 0, 1404 }, { 7, 0, 1588 }, { 7, 0, 1705 }, { 7, 0, 1902 },
+ { 9, 0, 465 }, { 10, 0, 248 }, { 10, 0, 349 }, { 10, 0, 647 },
+ { 11, 0, 527 }, { 11, 0, 660 }, { 11, 0, 669 }, { 12, 0, 529 },
+ { 13, 0, 305 }, { 132, 10, 924 }, { 133, 10, 665 }, { 136, 0, 13 },
+ { 6, 0, 791 }, { 138, 11, 120 }, { 7, 0, 642 }, { 8, 0, 250 },
+ { 11, 0, 123 }, { 11, 0, 137 }, { 13, 0, 48 }, { 142, 0, 95 },
+ { 4, 10, 265 }, { 7, 10, 807 }, { 135, 10, 950 }, { 5, 10, 93 },
+ { 140, 10, 267 }, { 135, 0, 1429 }, { 4, 0, 949 }, { 10, 0, 885 },
+ { 10, 0, 891 }, { 10, 0, 900 }, { 10, 0, 939 }, { 12, 0, 760 },
+ { 142, 0, 449 }, { 139, 11, 366 }, { 132, 0, 818 }, { 134, 11, 85 },
+ { 135, 10, 994 }, { 7, 0, 330 }, { 5, 10, 233 }, { 5, 10, 320 },
+ { 6, 10, 140 }, { 136, 10, 295 }, { 4, 0, 1004 }, { 8, 0, 982 },
+ { 136, 0, 993 }, { 133, 10, 978 }, { 4, 10, 905 }, { 6, 10, 1701 },
+ { 137, 10, 843 }, { 10, 0, 545 }, { 140, 0, 301 }, { 6, 0, 947 },
+ { 134, 0, 1062 }, { 134, 0, 1188 }, { 4, 0, 904 }, { 5, 0, 794 },
+ { 152, 10, 6 }, { 134, 0, 1372 }, { 135, 11, 608 }, { 5, 11, 279 },
+ { 6, 11, 235 }, { 7, 11, 468 }, { 8, 11, 446 }, { 9, 11, 637 },
+ { 10, 11, 717 }, { 11, 11, 738 }, { 140, 11, 514 }, { 132, 10, 509 },
+ { 5, 11, 17 }, { 6, 11, 371 }, { 137, 11, 528 }, { 132, 0, 693 },
+ { 4, 11, 115 }, { 5, 11, 669 }, { 6, 11, 407 }, { 8, 11, 311 },
+ { 11, 11, 10 }, { 141, 11, 5 }, { 11, 0, 377 }, { 7, 10, 273 },
+ { 137, 11, 381 }, { 135, 0, 695 }, { 7, 0, 386 }, { 138, 0, 713 },
+ { 135, 10, 1041 }, { 134, 0, 1291 }, { 6, 0, 7 }, { 6, 0, 35 },
+ { 7, 0, 147 }, { 7, 0, 1069 }, { 7, 0, 1568 }, { 7, 0, 1575 },
+ { 7, 0, 1917 }, { 8, 0, 43 }, { 8, 0, 208 }, { 9, 0, 128 },
+ { 9, 0, 866 }, { 10, 0, 20 }, { 11, 0, 981 }, { 147, 0, 33 },
+ { 7, 0, 893 }, { 141, 0, 424 }, { 139, 10, 234 }, { 150, 11, 56 },
+ { 5, 11, 779 }, { 5, 11, 807 }, { 6, 11, 1655 }, { 134, 11, 1676 },
+ { 5, 10, 802 }, { 7, 10, 2021 }, { 136, 10, 805 }, { 4, 11, 196 },
+ { 5, 10, 167 }, { 5, 11, 558 }, { 5, 10, 899 }, { 5, 11, 949 },
+ { 6, 10, 410 }, { 137, 10, 777 }, { 137, 10, 789 }, { 134, 10, 1705 },
+ { 8, 0, 904 }, { 140, 0, 787 }, { 6, 0, 322 }, { 9, 0, 552 },
+ { 11, 0, 274 }, { 13, 0, 209 }, { 13, 0, 499 }, { 14, 0, 85 },
+ { 15, 0, 126 }, { 145, 0, 70 }, { 135, 10, 10 }, { 5, 10, 11 },
+ { 6, 10, 117 }, { 6, 10, 485 }, { 7, 10, 1133 }, { 9, 10, 582 },
+ { 9, 10, 594 }, { 11, 10, 21 }, { 11, 10, 818 }, { 12, 10, 535 },
+ { 141, 10, 86 }, { 4, 10, 264 }, { 7, 10, 1067 }, { 8, 10, 204 },
+ { 8, 10, 385 }, { 139, 10, 953 }, { 132, 11, 752 }, { 138, 10, 56 },
+ { 133, 10, 470 }, { 6, 0, 1808 }, { 8, 0, 83 }, { 8, 0, 742 },
+ { 8, 0, 817 }, { 9, 0, 28 }, { 9, 0, 29 }, { 9, 0, 885 },
+ { 10, 0, 387 }, { 11, 0, 633 }, { 11, 0, 740 }, { 13, 0, 235 },
+ { 13, 0, 254 }, { 15, 0, 143 }, { 143, 0, 146 }, { 140, 0, 49 },
+ { 134, 0, 1832 }, { 4, 11, 227 }, { 5, 11, 159 }, { 5, 11, 409 },
+ { 7, 11, 80 }, { 10, 11, 294 }, { 10, 11, 479 }, { 12, 11, 418 },
+ { 14, 11, 50 }, { 14, 11, 249 }, { 142, 11, 295 }, { 7, 11, 1470 },
+ { 8, 11, 66 }, { 8, 11, 137 }, { 8, 11, 761 }, { 9, 11, 638 },
+ { 11, 11, 80 }, { 11, 11, 212 }, { 11, 11, 368 }, { 11, 11, 418 },
+ { 12, 11, 8 }, { 13, 11, 15 }, { 16, 11, 61 }, { 17, 11, 59 },
+ { 19, 11, 28 }, { 148, 11, 84 }, { 139, 10, 1015 }, { 138, 11, 468 },
+ { 135, 0, 421 }, { 6, 0, 415 }, { 7, 0, 1049 }, { 137, 0, 442 },
+ { 6, 11, 38 }, { 7, 11, 1220 }, { 8, 11, 185 }, { 8, 11, 256 },
+ { 9, 11, 22 }, { 9, 11, 331 }, { 10, 11, 738 }, { 11, 11, 205 },
+ { 11, 11, 540 }, { 11, 11, 746 }, { 13, 11, 399 }, { 13, 11, 465 },
+ { 14, 11, 88 }, { 142, 11, 194 }, { 139, 0, 289 }, { 133, 10, 715 },
+ { 4, 0, 110 }, { 10, 0, 415 }, { 10, 0, 597 }, { 142, 0, 206 },
+ { 4, 11, 159 }, { 6, 11, 115 }, { 7, 11, 252 }, { 7, 11, 257 },
+ { 7, 11, 1928 }, { 8, 11, 69 }, { 9, 11, 384 }, { 10, 11, 91 },
+ { 10, 11, 615 }, { 12, 11, 375 }, { 14, 11, 235 }, { 18, 11, 117 },
+ { 147, 11, 123 }, { 5, 11, 911 }, { 136, 11, 278 }, { 7, 0, 205 },
+ { 7, 0, 2000 }, { 8, 10, 794 }, { 9, 10, 400 }, { 10, 10, 298 },
+ { 142, 10, 228 }, { 135, 11, 1774 }, { 4, 11, 151 }, { 7, 11, 1567 },
+ { 8, 11, 351 }, { 137, 11, 322 }, { 136, 10, 724 }, { 133, 11, 990 },
+ { 7, 0, 1539 }, { 11, 0, 512 }, { 13, 0, 205 }, { 19, 0, 30 },
+ { 22, 0, 36 }, { 23, 0, 19 }, { 135, 11, 1539 }, { 5, 11, 194 },
+ { 7, 11, 1662 }, { 9, 11, 90 }, { 140, 11, 180 }, { 6, 10, 190 },
+ { 7, 10, 768 }, { 135, 10, 1170 }, { 134, 0, 1340 }, { 4, 0, 283 },
+ { 135, 0, 1194 }, { 133, 11, 425 }, { 133, 11, 971 }, { 12, 0, 549 },
+ { 14, 10, 67 }, { 147, 10, 60 }, { 135, 10, 1023 }, { 134, 0, 1720 },
+ { 138, 11, 587 }, { 5, 11, 72 }, { 6, 11, 264 }, { 7, 11, 21 },
+ { 7, 11, 46 }, { 7, 11, 2013 }, { 8, 11, 215 }, { 8, 11, 513 },
+ { 10, 11, 266 }, { 139, 11, 22 }, { 5, 0, 319 }, { 135, 0, 534 },
+ { 6, 10, 137 }, { 9, 10, 75 }, { 9, 10, 253 }, { 10, 10, 194 },
+ { 138, 10, 444 }, { 7, 0, 1180 }, { 20, 0, 112 }, { 6, 11, 239 },
+ { 7, 11, 118 }, { 10, 11, 95 }, { 11, 11, 603 }, { 13, 11, 443 },
+ { 14, 11, 160 }, { 143, 11, 4 }, { 134, 11, 431 }, { 5, 11, 874 },
+ { 6, 11, 1677 }, { 11, 10, 643 }, { 12, 10, 115 }, { 143, 11, 0 },
+ { 134, 0, 967 }, { 6, 11, 65 }, { 7, 11, 939 }, { 7, 11, 1172 },
+ { 7, 11, 1671 }, { 9, 11, 540 }, { 10, 11, 696 }, { 11, 11, 265 },
+ { 11, 11, 732 }, { 11, 11, 928 }, { 11, 11, 937 }, { 12, 11, 399 },
+ { 13, 11, 438 }, { 149, 11, 19 }, { 137, 11, 200 }, { 135, 0, 1940 },
+ { 5, 10, 760 }, { 7, 10, 542 }, { 8, 10, 135 }, { 136, 10, 496 },
+ { 140, 11, 44 }, { 7, 11, 1655 }, { 136, 11, 305 }, { 7, 10, 319 },
+ { 7, 10, 355 }, { 7, 10, 763 }, { 10, 10, 389 }, { 145, 10, 43 },
+ { 136, 0, 735 }, { 138, 10, 786 }, { 137, 11, 19 }, { 132, 11, 696 },
+ { 5, 0, 132 }, { 9, 0, 486 }, { 9, 0, 715 }, { 10, 0, 458 },
+ { 11, 0, 373 }, { 11, 0, 668 }, { 11, 0, 795 }, { 11, 0, 897 },
+ { 12, 0, 272 }, { 12, 0, 424 }, { 12, 0, 539 }, { 12, 0, 558 },
+ { 14, 0, 245 }, { 14, 0, 263 }, { 14, 0, 264 }, { 14, 0, 393 },
+ { 142, 0, 403 }, { 10, 0, 38 }, { 139, 0, 784 }, { 132, 0, 838 },
+ { 4, 11, 302 }, { 135, 11, 1766 }, { 133, 0, 379 }, { 5, 0, 8 },
+ { 6, 0, 89 }, { 6, 0, 400 }, { 7, 0, 1569 }, { 7, 0, 1623 },
+ { 7, 0, 1850 }, { 8, 0, 218 }, { 8, 0, 422 }, { 9, 0, 570 },
+ { 10, 0, 626 }, { 4, 11, 726 }, { 133, 11, 630 }, { 4, 0, 1017 },
+ { 138, 0, 660 }, { 6, 0, 387 }, { 7, 0, 882 }, { 141, 0, 111 },
+ { 6, 0, 224 }, { 7, 0, 877 }, { 137, 0, 647 }, { 4, 10, 58 },
+ { 5, 10, 286 }, { 6, 10, 319 }, { 7, 10, 402 }, { 7, 10, 1254 },
+ { 7, 10, 1903 }, { 8, 10, 356 }, { 140, 10, 408 }, { 135, 0, 790 },
+ { 9, 0, 510 }, { 10, 0, 53 }, { 4, 10, 389 }, { 9, 10, 181 },
+ { 10, 10, 29 }, { 10, 10, 816 }, { 11, 10, 311 }, { 11, 10, 561 },
+ { 12, 10, 67 }, { 141, 10, 181 }, { 142, 0, 458 }, { 6, 11, 118 },
+ { 7, 11, 215 }, { 7, 11, 1521 }, { 140, 11, 11 }, { 134, 0, 954 },
+ { 135, 0, 394 }, { 134, 0, 1367 }, { 5, 11, 225 }, { 133, 10, 373 },
+ { 132, 0, 882 }, { 7, 0, 1409 }, { 135, 10, 1972 }, { 135, 10, 1793 },
+ { 4, 11, 370 }, { 5, 11, 756 }, { 135, 11, 1326 }, { 150, 11, 13 },
+ { 7, 11, 354 }, { 10, 11, 410 }, { 139, 11, 815 }, { 6, 11, 1662 },
+ { 7, 11, 48 }, { 8, 11, 771 }, { 10, 11, 116 }, { 13, 11, 104 },
+ { 14, 11, 105 }, { 14, 11, 184 }, { 15, 11, 168 }, { 19, 11, 92 },
+ { 148, 11, 68 }, { 7, 0, 124 }, { 136, 0, 38 }, { 5, 0, 261 },
+ { 7, 0, 78 }, { 7, 0, 199 }, { 8, 0, 815 }, { 9, 0, 126 },
+ { 10, 0, 342 }, { 140, 0, 647 }, { 4, 0, 628 }, { 140, 0, 724 },
+ { 7, 0, 266 }, { 8, 0, 804 }, { 7, 10, 1651 }, { 145, 10, 89 },
+ { 135, 0, 208 }, { 134, 0, 1178 }, { 6, 0, 79 }, { 135, 0, 1519 },
+ { 132, 10, 672 }, { 133, 10, 737 }, { 136, 0, 741 }, { 132, 11, 120 },
+ { 4, 0, 710 }, { 6, 0, 376 }, { 134, 0, 606 }, { 134, 0, 1347 },
+ { 134, 0, 1494 }, { 6, 0, 850 }, { 6, 0, 1553 }, { 137, 0, 821 },
+ { 5, 10, 145 }, { 134, 11, 593 }, { 7, 0, 1311 }, { 140, 0, 135 },
+ { 4, 0, 467 }, { 5, 0, 405 }, { 134, 0, 544 }, { 5, 11, 820 },
+ { 135, 11, 931 }, { 6, 0, 100 }, { 7, 0, 244 }, { 7, 0, 632 },
+ { 7, 0, 1609 }, { 8, 0, 178 }, { 8, 0, 638 }, { 141, 0, 58 },
+ { 4, 10, 387 }, { 135, 10, 1288 }, { 6, 11, 151 }, { 6, 11, 1675 },
+ { 7, 11, 383 }, { 151, 11, 10 }, { 132, 0, 481 }, { 135, 10, 550 },
+ { 134, 0, 1378 }, { 6, 11, 1624 }, { 11, 11, 11 }, { 12, 11, 422 },
+ { 13, 11, 262 }, { 142, 11, 360 }, { 133, 0, 791 }, { 4, 11, 43 },
+ { 5, 11, 344 }, { 133, 11, 357 }, { 7, 0, 1227 }, { 140, 0, 978 },
+ { 7, 0, 686 }, { 8, 0, 33 }, { 8, 0, 238 }, { 10, 0, 616 },
+ { 11, 0, 467 }, { 11, 0, 881 }, { 13, 0, 217 }, { 13, 0, 253 },
+ { 142, 0, 268 }, { 137, 0, 857 }, { 8, 0, 467 }, { 8, 0, 1006 },
+ { 7, 11, 148 }, { 8, 11, 284 }, { 141, 11, 63 }, { 4, 10, 576 },
+ { 135, 10, 1263 }, { 133, 11, 888 }, { 5, 10, 919 }, { 134, 10, 1673 },
+ { 20, 10, 37 }, { 148, 11, 37 }, { 132, 0, 447 }, { 132, 11, 711 },
+ { 4, 0, 128 }, { 5, 0, 415 }, { 6, 0, 462 }, { 7, 0, 294 },
+ { 7, 0, 578 }, { 10, 0, 710 }, { 139, 0, 86 }, { 4, 10, 82 },
+ { 5, 10, 333 }, { 5, 10, 904 }, { 6, 10, 207 }, { 7, 10, 325 },
+ { 7, 10, 1726 }, { 8, 10, 101 }, { 10, 10, 778 }, { 139, 10, 220 },
+ { 136, 0, 587 }, { 137, 11, 440 }, { 133, 10, 903 }, { 6, 0, 427 },
+ { 7, 0, 1018 }, { 138, 0, 692 }, { 4, 0, 195 }, { 135, 0, 802 },
+ { 140, 10, 147 }, { 134, 0, 1546 }, { 134, 0, 684 }, { 132, 10, 705 },
+ { 136, 0, 345 }, { 11, 11, 678 }, { 140, 11, 307 }, { 133, 0, 365 },
+ { 134, 0, 1683 }, { 4, 11, 65 }, { 5, 11, 479 }, { 5, 11, 1004 },
+ { 7, 11, 1913 }, { 8, 11, 317 }, { 9, 11, 302 }, { 10, 11, 612 },
+ { 141, 11, 22 }, { 138, 0, 472 }, { 4, 11, 261 }, { 135, 11, 510 },
+ { 134, 10, 90 }, { 142, 0, 433 }, { 151, 0, 28 }, { 4, 11, 291 },
+ { 7, 11, 101 }, { 9, 11, 515 }, { 12, 11, 152 }, { 12, 11, 443 },
+ { 13, 11, 392 }, { 142, 11, 357 }, { 140, 0, 997 }, { 5, 0, 3 },
+ { 8, 0, 578 }, { 9, 0, 118 }, { 10, 0, 705 }, { 141, 0, 279 },
+ { 135, 11, 1266 }, { 7, 10, 813 }, { 12, 10, 497 }, { 141, 10, 56 },
+ { 133, 0, 229 }, { 6, 10, 125 }, { 135, 10, 1277 }, { 8, 0, 102 },
+ { 10, 0, 578 }, { 10, 0, 672 }, { 12, 0, 496 }, { 13, 0, 408 },
+ { 14, 0, 121 }, { 17, 0, 106 }, { 151, 10, 12 }, { 6, 0, 866 },
+ { 134, 0, 1080 }, { 136, 0, 1022 }, { 4, 11, 130 }, { 135, 11, 843 },
+ { 5, 11, 42 }, { 5, 11, 879 }, { 7, 11, 245 }, { 7, 11, 324 },
+ { 7, 11, 1532 }, { 11, 11, 463 }, { 11, 11, 472 }, { 13, 11, 363 },
+ { 144, 11, 52 }, { 150, 0, 55 }, { 8, 0, 115 }, { 8, 0, 350 },
+ { 9, 0, 489 }, { 10, 0, 128 }, { 11, 0, 306 }, { 12, 0, 373 },
+ { 14, 0, 30 }, { 17, 0, 79 }, { 19, 0, 80 }, { 4, 11, 134 },
+ { 133, 11, 372 }, { 134, 0, 657 }, { 134, 0, 933 }, { 135, 11, 1147 },
+ { 4, 0, 230 }, { 133, 0, 702 }, { 134, 0, 1728 }, { 4, 0, 484 },
+ { 18, 0, 26 }, { 19, 0, 42 }, { 20, 0, 43 }, { 21, 0, 0 },
+ { 23, 0, 27 }, { 152, 0, 14 }, { 7, 0, 185 }, { 135, 0, 703 },
+ { 6, 0, 417 }, { 10, 0, 618 }, { 7, 10, 1106 }, { 9, 10, 770 },
+ { 11, 10, 112 }, { 140, 10, 413 }, { 134, 0, 803 }, { 132, 11, 644 },
+ { 134, 0, 1262 }, { 7, 11, 540 }, { 12, 10, 271 }, { 145, 10, 109 },
+ { 135, 11, 123 }, { 132, 0, 633 }, { 134, 11, 623 }, { 4, 11, 908 },
+ { 5, 11, 359 }, { 5, 11, 508 }, { 6, 11, 1723 }, { 7, 11, 343 },
+ { 7, 11, 1996 }, { 135, 11, 2026 }, { 135, 0, 479 }, { 10, 0, 262 },
+ { 7, 10, 304 }, { 9, 10, 646 }, { 9, 10, 862 }, { 11, 10, 696 },
+ { 12, 10, 208 }, { 15, 10, 79 }, { 147, 10, 108 }, { 4, 11, 341 },
+ { 135, 11, 480 }, { 134, 0, 830 }, { 5, 0, 70 }, { 5, 0, 622 },
+ { 6, 0, 334 }, { 7, 0, 1032 }, { 9, 0, 171 }, { 11, 0, 26 },
+ { 11, 0, 213 }, { 11, 0, 637 }, { 11, 0, 707 }, { 12, 0, 202 },
+ { 12, 0, 380 }, { 13, 0, 226 }, { 13, 0, 355 }, { 14, 0, 222 },
+ { 145, 0, 42 }, { 135, 10, 981 }, { 143, 0, 217 }, { 137, 11, 114 },
+ { 4, 0, 23 }, { 4, 0, 141 }, { 5, 0, 313 }, { 5, 0, 1014 },
+ { 6, 0, 50 }, { 6, 0, 51 }, { 7, 0, 142 }, { 7, 0, 384 },
+ { 7, 0, 559 }, { 8, 0, 640 }, { 9, 0, 460 }, { 9, 0, 783 },
+ { 11, 0, 741 }, { 12, 0, 183 }, { 141, 0, 488 }, { 141, 0, 360 },
+ { 7, 0, 1586 }, { 7, 11, 1995 }, { 8, 11, 299 }, { 11, 11, 890 },
+ { 140, 11, 674 }, { 132, 10, 434 }, { 7, 0, 652 }, { 134, 10, 550 },
+ { 7, 0, 766 }, { 5, 10, 553 }, { 138, 10, 824 }, { 7, 0, 737 },
+ { 8, 0, 298 }, { 136, 10, 452 }, { 4, 11, 238 }, { 5, 11, 503 },
+ { 6, 11, 179 }, { 7, 11, 2003 }, { 8, 11, 381 }, { 8, 11, 473 },
+ { 9, 11, 149 }, { 10, 11, 183 }, { 15, 11, 45 }, { 143, 11, 86 },
+ { 133, 10, 292 }, { 5, 0, 222 }, { 9, 0, 655 }, { 138, 0, 534 },
+ { 138, 10, 135 }, { 4, 11, 121 }, { 5, 11, 156 }, { 5, 11, 349 },
+ { 9, 11, 136 }, { 10, 11, 605 }, { 14, 11, 342 }, { 147, 11, 107 },
+ { 137, 0, 906 }, { 6, 0, 1013 }, { 134, 0, 1250 }, { 6, 0, 1956 },
+ { 6, 0, 2009 }, { 8, 0, 991 }, { 144, 0, 120 }, { 135, 11, 1192 },
+ { 138, 0, 503 }, { 5, 0, 154 }, { 7, 0, 1491 }, { 10, 0, 379 },
+ { 138, 0, 485 }, { 6, 0, 1867 }, { 6, 0, 1914 }, { 6, 0, 1925 },
+ { 9, 0, 917 }, { 9, 0, 925 }, { 9, 0, 932 }, { 9, 0, 951 },
+ { 9, 0, 1007 }, { 9, 0, 1013 }, { 12, 0, 806 }, { 12, 0, 810 },
+ { 12, 0, 814 }, { 12, 0, 816 }, { 12, 0, 824 }, { 12, 0, 832 },
+ { 12, 0, 837 }, { 12, 0, 863 }, { 12, 0, 868 }, { 12, 0, 870 },
+ { 12, 0, 889 }, { 12, 0, 892 }, { 12, 0, 900 }, { 12, 0, 902 },
+ { 12, 0, 908 }, { 12, 0, 933 }, { 12, 0, 942 }, { 12, 0, 949 },
+ { 12, 0, 954 }, { 15, 0, 175 }, { 15, 0, 203 }, { 15, 0, 213 },
+ { 15, 0, 218 }, { 15, 0, 225 }, { 15, 0, 231 }, { 15, 0, 239 },
+ { 15, 0, 248 }, { 15, 0, 252 }, { 18, 0, 190 }, { 18, 0, 204 },
+ { 18, 0, 215 }, { 18, 0, 216 }, { 18, 0, 222 }, { 18, 0, 225 },
+ { 18, 0, 230 }, { 18, 0, 239 }, { 18, 0, 241 }, { 21, 0, 42 },
+ { 21, 0, 43 }, { 21, 0, 44 }, { 21, 0, 45 }, { 21, 0, 46 },
+ { 21, 0, 53 }, { 24, 0, 27 }, { 152, 0, 31 }, { 133, 0, 716 },
+ { 135, 0, 844 }, { 4, 0, 91 }, { 5, 0, 388 }, { 5, 0, 845 },
+ { 6, 0, 206 }, { 6, 0, 252 }, { 6, 0, 365 }, { 7, 0, 136 },
+ { 7, 0, 531 }, { 136, 0, 621 }, { 7, 10, 393 }, { 10, 10, 603 },
+ { 139, 10, 206 }, { 6, 11, 80 }, { 6, 11, 1694 }, { 7, 11, 173 },
+ { 7, 11, 1974 }, { 9, 11, 547 }, { 10, 11, 730 }, { 14, 11, 18 },
+ { 150, 11, 39 }, { 137, 0, 748 }, { 4, 11, 923 }, { 134, 11, 1711 },
+ { 4, 10, 912 }, { 137, 10, 232 }, { 7, 10, 98 }, { 7, 10, 1973 },
+ { 136, 10, 716 }, { 14, 0, 103 }, { 133, 10, 733 }, { 132, 11, 595 },
+ { 12, 0, 158 }, { 18, 0, 8 }, { 19, 0, 62 }, { 20, 0, 6 },
+ { 22, 0, 4 }, { 23, 0, 2 }, { 23, 0, 9 }, { 5, 11, 240 },
+ { 6, 11, 459 }, { 7, 11, 12 }, { 7, 11, 114 }, { 7, 11, 502 },
+ { 7, 11, 1751 }, { 7, 11, 1753 }, { 7, 11, 1805 }, { 8, 11, 658 },
+ { 9, 11, 1 }, { 11, 11, 959 }, { 13, 11, 446 }, { 142, 11, 211 },
+ { 135, 0, 576 }, { 5, 0, 771 }, { 5, 0, 863 }, { 5, 0, 898 },
+ { 6, 0, 648 }, { 6, 0, 1632 }, { 6, 0, 1644 }, { 134, 0, 1780 },
+ { 133, 0, 331 }, { 7, 11, 633 }, { 7, 11, 905 }, { 7, 11, 909 },
+ { 7, 11, 1538 }, { 9, 11, 767 }, { 140, 11, 636 }, { 140, 0, 632 },
+ { 5, 0, 107 }, { 7, 0, 201 }, { 136, 0, 518 }, { 6, 0, 446 },
+ { 7, 0, 1817 }, { 134, 11, 490 }, { 9, 0, 851 }, { 141, 0, 510 },
+ { 7, 11, 250 }, { 8, 11, 506 }, { 136, 11, 507 }, { 4, 0, 504 },
+ { 137, 10, 72 }, { 132, 11, 158 }, { 4, 11, 140 }, { 7, 11, 362 },
+ { 8, 11, 209 }, { 9, 11, 10 }, { 9, 11, 160 }, { 9, 11, 503 },
+ { 10, 11, 689 }, { 11, 11, 350 }, { 11, 11, 553 }, { 11, 11, 725 },
+ { 12, 11, 252 }, { 12, 11, 583 }, { 13, 11, 192 }, { 13, 11, 352 },
+ { 14, 11, 269 }, { 14, 11, 356 }, { 148, 11, 50 }, { 6, 11, 597 },
+ { 135, 11, 1318 }, { 135, 10, 1454 }, { 5, 0, 883 }, { 5, 0, 975 },
+ { 8, 0, 392 }, { 148, 0, 7 }, { 6, 11, 228 }, { 7, 11, 1341 },
+ { 9, 11, 408 }, { 138, 11, 343 }, { 11, 11, 348 }, { 11, 10, 600 },
+ { 12, 11, 99 }, { 13, 10, 245 }, { 18, 11, 1 }, { 18, 11, 11 },
+ { 147, 11, 4 }, { 134, 11, 296 }, { 5, 0, 922 }, { 134, 0, 1707 },
+ { 132, 11, 557 }, { 4, 11, 548 }, { 7, 10, 164 }, { 7, 10, 1571 },
+ { 9, 10, 107 }, { 140, 10, 225 }, { 7, 11, 197 }, { 8, 11, 142 },
+ { 8, 11, 325 }, { 9, 11, 150 }, { 9, 11, 596 }, { 10, 11, 350 },
+ { 10, 11, 353 }, { 11, 11, 74 }, { 11, 11, 315 }, { 14, 11, 423 },
+ { 143, 11, 141 }, { 5, 0, 993 }, { 7, 0, 515 }, { 137, 0, 91 },
+ { 4, 0, 131 }, { 8, 0, 200 }, { 5, 10, 484 }, { 5, 10, 510 },
+ { 6, 10, 434 }, { 7, 10, 1000 }, { 7, 10, 1098 }, { 136, 10, 2 },
+ { 152, 0, 10 }, { 4, 11, 62 }, { 5, 11, 83 }, { 6, 11, 399 },
+ { 6, 11, 579 }, { 7, 11, 692 }, { 7, 11, 846 }, { 7, 11, 1015 },
+ { 7, 11, 1799 }, { 8, 11, 403 }, { 9, 11, 394 }, { 10, 11, 133 },
+ { 12, 11, 4 }, { 12, 11, 297 }, { 12, 11, 452 }, { 16, 11, 81 },
+ { 18, 11, 19 }, { 18, 11, 25 }, { 21, 11, 14 }, { 22, 11, 12 },
+ { 151, 11, 18 }, { 140, 11, 459 }, { 132, 11, 177 }, { 7, 0, 1433 },
+ { 9, 0, 365 }, { 137, 11, 365 }, { 132, 10, 460 }, { 5, 0, 103 },
+ { 6, 0, 2004 }, { 7, 0, 921 }, { 8, 0, 580 }, { 8, 0, 593 },
+ { 8, 0, 630 }, { 10, 0, 28 }, { 5, 11, 411 }, { 135, 11, 653 },
+ { 4, 10, 932 }, { 133, 10, 891 }, { 4, 0, 911 }, { 5, 0, 867 },
+ { 5, 0, 1013 }, { 7, 0, 2034 }, { 8, 0, 798 }, { 136, 0, 813 },
+ { 7, 11, 439 }, { 10, 11, 727 }, { 11, 11, 260 }, { 139, 11, 684 },
+ { 136, 10, 625 }, { 5, 11, 208 }, { 7, 11, 753 }, { 135, 11, 1528 },
+ { 5, 0, 461 }, { 7, 0, 1925 }, { 12, 0, 39 }, { 13, 0, 265 },
+ { 13, 0, 439 }, { 134, 10, 76 }, { 6, 0, 853 }, { 8, 10, 92 },
+ { 137, 10, 221 }, { 5, 0, 135 }, { 6, 0, 519 }, { 7, 0, 1722 },
+ { 10, 0, 271 }, { 11, 0, 261 }, { 145, 0, 54 }, { 139, 11, 814 },
+ { 14, 0, 338 }, { 148, 0, 81 }, { 4, 0, 300 }, { 133, 0, 436 },
+ { 5, 0, 419 }, { 5, 0, 687 }, { 7, 0, 864 }, { 9, 0, 470 },
+ { 135, 11, 864 }, { 9, 0, 836 }, { 133, 11, 242 }, { 134, 0, 1937 },
+ { 4, 10, 763 }, { 133, 11, 953 }, { 132, 10, 622 }, { 132, 0, 393 },
+ { 133, 10, 253 }, { 8, 0, 357 }, { 10, 0, 745 }, { 14, 0, 426 },
+ { 17, 0, 94 }, { 19, 0, 57 }, { 135, 10, 546 }, { 5, 11, 615 },
+ { 146, 11, 37 }, { 9, 10, 73 }, { 10, 10, 110 }, { 14, 10, 185 },
+ { 145, 10, 119 }, { 11, 0, 703 }, { 7, 10, 624 }, { 7, 10, 916 },
+ { 10, 10, 256 }, { 139, 10, 87 }, { 133, 11, 290 }, { 5, 10, 212 },
+ { 12, 10, 35 }, { 141, 10, 382 }, { 132, 11, 380 }, { 5, 11, 52 },
+ { 7, 11, 277 }, { 9, 11, 368 }, { 139, 11, 791 }, { 133, 0, 387 },
+ { 10, 11, 138 }, { 139, 11, 476 }, { 4, 0, 6 }, { 5, 0, 708 },
+ { 136, 0, 75 }, { 7, 0, 1351 }, { 9, 0, 581 }, { 10, 0, 639 },
+ { 11, 0, 453 }, { 140, 0, 584 }, { 132, 0, 303 }, { 138, 0, 772 },
+ { 135, 10, 1175 }, { 4, 0, 749 }, { 5, 10, 816 }, { 6, 11, 256 },
+ { 7, 11, 307 }, { 7, 11, 999 }, { 7, 11, 1481 }, { 7, 11, 1732 },
+ { 7, 11, 1738 }, { 8, 11, 265 }, { 9, 11, 414 }, { 11, 11, 316 },
+ { 12, 11, 52 }, { 13, 11, 420 }, { 147, 11, 100 }, { 135, 11, 1296 },
+ { 6, 0, 1065 }, { 5, 10, 869 }, { 5, 10, 968 }, { 6, 10, 1626 },
+ { 8, 10, 734 }, { 136, 10, 784 }, { 4, 10, 542 }, { 6, 10, 1716 },
+ { 6, 10, 1727 }, { 7, 10, 1082 }, { 7, 10, 1545 }, { 8, 10, 56 },
+ { 8, 10, 118 }, { 8, 10, 412 }, { 8, 10, 564 }, { 9, 10, 888 },
+ { 9, 10, 908 }, { 10, 10, 50 }, { 10, 10, 423 }, { 11, 10, 685 },
+ { 11, 10, 697 }, { 11, 10, 933 }, { 12, 10, 299 }, { 13, 10, 126 },
+ { 13, 10, 136 }, { 13, 10, 170 }, { 141, 10, 190 }, { 134, 0, 226 },
+ { 4, 0, 106 }, { 7, 0, 310 }, { 11, 0, 717 }, { 133, 11, 723 },
+ { 5, 0, 890 }, { 5, 0, 988 }, { 4, 10, 232 }, { 9, 10, 202 },
+ { 10, 10, 474 }, { 140, 10, 433 }, { 6, 0, 626 }, { 142, 0, 431 },
+ { 10, 0, 706 }, { 150, 0, 44 }, { 13, 0, 51 }, { 6, 10, 108 },
+ { 7, 10, 1003 }, { 7, 10, 1181 }, { 8, 10, 111 }, { 136, 10, 343 },
+ { 132, 0, 698 }, { 5, 11, 109 }, { 6, 11, 1784 }, { 7, 11, 1895 },
+ { 12, 11, 296 }, { 140, 11, 302 }, { 134, 0, 828 }, { 134, 10, 1712 },
+ { 138, 0, 17 }, { 7, 0, 1929 }, { 4, 10, 133 }, { 5, 11, 216 },
+ { 7, 10, 711 }, { 7, 10, 1298 }, { 7, 10, 1585 }, { 7, 11, 1879 },
+ { 9, 11, 141 }, { 9, 11, 270 }, { 9, 11, 679 }, { 10, 11, 159 },
+ { 10, 11, 553 }, { 11, 11, 197 }, { 11, 11, 438 }, { 12, 11, 538 },
+ { 12, 11, 559 }, { 13, 11, 193 }, { 13, 11, 423 }, { 14, 11, 144 },
+ { 14, 11, 166 }, { 14, 11, 167 }, { 15, 11, 67 }, { 147, 11, 84 },
+ { 141, 11, 127 }, { 7, 11, 1872 }, { 137, 11, 81 }, { 6, 10, 99 },
+ { 7, 10, 1808 }, { 145, 10, 57 }, { 134, 11, 391 }, { 5, 0, 689 },
+ { 6, 0, 84 }, { 7, 0, 1250 }, { 6, 10, 574 }, { 7, 10, 428 },
+ { 10, 10, 669 }, { 11, 10, 485 }, { 11, 10, 840 }, { 12, 10, 300 },
+ { 142, 10, 250 }, { 7, 11, 322 }, { 136, 11, 249 }, { 7, 11, 432 },
+ { 135, 11, 1649 }, { 135, 10, 1871 }, { 137, 10, 252 }, { 6, 11, 155 },
+ { 140, 11, 234 }, { 7, 0, 871 }, { 19, 0, 27 }, { 147, 11, 27 },
+ { 140, 0, 498 }, { 5, 0, 986 }, { 6, 0, 130 }, { 138, 0, 823 },
+ { 6, 0, 1793 }, { 7, 0, 1582 }, { 8, 0, 458 }, { 10, 0, 101 },
+ { 10, 0, 318 }, { 10, 0, 945 }, { 12, 0, 734 }, { 16, 0, 104 },
+ { 18, 0, 177 }, { 6, 10, 323 }, { 135, 10, 1564 }, { 5, 11, 632 },
+ { 138, 11, 526 }, { 10, 0, 435 }, { 7, 10, 461 }, { 136, 10, 775 },
+ { 6, 11, 144 }, { 7, 11, 948 }, { 7, 11, 1042 }, { 7, 11, 1857 },
+ { 8, 11, 235 }, { 8, 11, 461 }, { 9, 11, 453 }, { 9, 11, 530 },
+ { 10, 11, 354 }, { 17, 11, 77 }, { 19, 11, 99 }, { 148, 11, 79 },
+ { 138, 0, 966 }, { 7, 0, 1644 }, { 137, 0, 129 }, { 135, 0, 997 },
+ { 136, 0, 502 }, { 5, 11, 196 }, { 6, 11, 486 }, { 7, 11, 212 },
+ { 8, 11, 309 }, { 136, 11, 346 }, { 7, 10, 727 }, { 146, 10, 73 },
+ { 132, 0, 823 }, { 132, 11, 686 }, { 135, 0, 1927 }, { 4, 0, 762 },
+ { 7, 0, 1756 }, { 137, 0, 98 }, { 136, 10, 577 }, { 24, 0, 8 },
+ { 4, 11, 30 }, { 5, 11, 43 }, { 152, 11, 8 }, { 7, 0, 1046 },
+ { 139, 0, 160 }, { 7, 0, 492 }, { 4, 10, 413 }, { 5, 10, 677 },
+ { 7, 11, 492 }, { 8, 10, 432 }, { 140, 10, 280 }, { 6, 0, 45 },
+ { 7, 0, 433 }, { 8, 0, 129 }, { 9, 0, 21 }, { 10, 0, 392 },
+ { 11, 0, 79 }, { 12, 0, 499 }, { 13, 0, 199 }, { 141, 0, 451 },
+ { 7, 0, 558 }, { 136, 0, 353 }, { 4, 11, 220 }, { 7, 11, 1535 },
+ { 9, 11, 93 }, { 139, 11, 474 }, { 7, 10, 646 }, { 7, 10, 1730 },
+ { 11, 10, 446 }, { 141, 10, 178 }, { 133, 0, 785 }, { 134, 0, 1145 },
+ { 8, 0, 81 }, { 9, 0, 189 }, { 9, 0, 201 }, { 11, 0, 478 },
+ { 11, 0, 712 }, { 141, 0, 338 }, { 5, 0, 353 }, { 151, 0, 26 },
+ { 11, 0, 762 }, { 132, 10, 395 }, { 134, 0, 2024 }, { 4, 0, 611 },
+ { 133, 0, 606 }, { 9, 10, 174 }, { 10, 10, 164 }, { 11, 10, 440 },
+ { 11, 10, 841 }, { 143, 10, 98 }, { 134, 10, 426 }, { 10, 10, 608 },
+ { 139, 10, 1002 }, { 138, 10, 250 }, { 6, 0, 25 }, { 7, 0, 855 },
+ { 7, 0, 1258 }, { 144, 0, 32 }, { 7, 11, 1725 }, { 138, 11, 393 },
+ { 5, 11, 263 }, { 134, 11, 414 }, { 6, 0, 2011 }, { 133, 10, 476 },
+ { 4, 0, 4 }, { 7, 0, 1118 }, { 7, 0, 1320 }, { 7, 0, 1706 },
+ { 8, 0, 277 }, { 9, 0, 622 }, { 10, 0, 9 }, { 11, 0, 724 },
+ { 12, 0, 350 }, { 12, 0, 397 }, { 13, 0, 28 }, { 13, 0, 159 },
+ { 15, 0, 89 }, { 18, 0, 5 }, { 19, 0, 9 }, { 20, 0, 34 },
+ { 22, 0, 47 }, { 6, 11, 178 }, { 6, 11, 1750 }, { 8, 11, 251 },
+ { 9, 11, 690 }, { 10, 11, 155 }, { 10, 11, 196 }, { 10, 11, 373 },
+ { 11, 11, 698 }, { 13, 11, 155 }, { 148, 11, 93 }, { 5, 11, 97 },
+ { 137, 11, 393 }, { 7, 0, 764 }, { 11, 0, 461 }, { 12, 0, 172 },
+ { 5, 10, 76 }, { 6, 10, 458 }, { 6, 10, 497 }, { 7, 10, 868 },
+ { 9, 10, 658 }, { 10, 10, 594 }, { 11, 10, 566 }, { 12, 10, 338 },
+ { 141, 10, 200 }, { 134, 0, 1449 }, { 138, 11, 40 }, { 134, 11, 1639 },
+ { 134, 0, 1445 }, { 6, 0, 1168 }, { 4, 10, 526 }, { 7, 10, 1029 },
+ { 135, 10, 1054 }, { 4, 11, 191 }, { 7, 11, 934 }, { 8, 11, 647 },
+ { 145, 11, 97 }, { 132, 10, 636 }, { 6, 0, 233 }, { 7, 10, 660 },
+ { 7, 10, 1124 }, { 17, 10, 31 }, { 19, 10, 22 }, { 151, 10, 14 },
+ { 6, 10, 1699 }, { 136, 11, 110 }, { 12, 11, 246 }, { 15, 11, 162 },
+ { 19, 11, 64 }, { 20, 11, 8 }, { 20, 11, 95 }, { 22, 11, 24 },
+ { 152, 11, 17 }, { 5, 11, 165 }, { 9, 11, 346 }, { 138, 11, 655 },
+ { 5, 11, 319 }, { 135, 11, 534 }, { 134, 0, 255 }, { 9, 0, 216 },
+ { 8, 11, 128 }, { 139, 11, 179 }, { 9, 0, 183 }, { 139, 0, 286 },
+ { 11, 0, 956 }, { 151, 0, 3 }, { 4, 0, 536 }, { 7, 0, 1141 },
+ { 10, 0, 723 }, { 139, 0, 371 }, { 4, 10, 279 }, { 7, 10, 301 },
+ { 137, 10, 362 }, { 7, 0, 285 }, { 5, 11, 57 }, { 6, 11, 101 },
+ { 6, 11, 1663 }, { 7, 11, 132 }, { 7, 11, 1048 }, { 7, 11, 1154 },
+ { 7, 11, 1415 }, { 7, 11, 1507 }, { 12, 11, 493 }, { 15, 11, 105 },
+ { 151, 11, 15 }, { 5, 11, 459 }, { 7, 11, 1073 }, { 7, 10, 1743 },
+ { 8, 11, 241 }, { 136, 11, 334 }, { 4, 10, 178 }, { 133, 10, 399 },
+ { 135, 0, 560 }, { 132, 0, 690 }, { 135, 0, 1246 }, { 18, 0, 157 },
+ { 147, 0, 63 }, { 10, 0, 599 }, { 11, 0, 33 }, { 12, 0, 571 },
+ { 149, 0, 1 }, { 6, 11, 324 }, { 6, 11, 520 }, { 7, 11, 338 },
+ { 7, 11, 1616 }, { 7, 11, 1729 }, { 8, 11, 228 }, { 9, 11, 69 },
+ { 139, 11, 750 }, { 7, 0, 1862 }, { 12, 0, 491 }, { 12, 0, 520 },
+ { 13, 0, 383 }, { 142, 0, 244 }, { 135, 11, 734 }, { 134, 10, 1692 },
+ { 10, 0, 448 }, { 11, 0, 630 }, { 17, 0, 117 }, { 6, 10, 202 },
+ { 7, 11, 705 }, { 12, 10, 360 }, { 17, 10, 118 }, { 18, 10, 27 },
+ { 148, 10, 67 }, { 4, 11, 73 }, { 6, 11, 612 }, { 7, 11, 927 },
+ { 7, 11, 1822 }, { 8, 11, 217 }, { 9, 11, 472 }, { 9, 11, 765 },
+ { 9, 11, 766 }, { 10, 11, 408 }, { 11, 11, 51 }, { 11, 11, 793 },
+ { 12, 11, 266 }, { 15, 11, 158 }, { 20, 11, 89 }, { 150, 11, 32 },
+ { 4, 0, 190 }, { 133, 0, 554 }, { 133, 0, 1001 }, { 5, 11, 389 },
+ { 8, 11, 636 }, { 137, 11, 229 }, { 5, 0, 446 }, { 7, 10, 872 },
+ { 10, 10, 516 }, { 139, 10, 167 }, { 137, 10, 313 }, { 132, 10, 224 },
+ { 134, 0, 1313 }, { 5, 10, 546 }, { 7, 10, 35 }, { 8, 10, 11 },
+ { 8, 10, 12 }, { 9, 10, 315 }, { 9, 10, 533 }, { 10, 10, 802 },
+ { 11, 10, 166 }, { 12, 10, 525 }, { 142, 10, 243 }, { 6, 0, 636 },
+ { 137, 0, 837 }, { 5, 10, 241 }, { 8, 10, 242 }, { 9, 10, 451 },
+ { 10, 10, 667 }, { 11, 10, 598 }, { 140, 10, 429 }, { 22, 10, 46 },
+ { 150, 11, 46 }, { 136, 11, 472 }, { 11, 0, 278 }, { 142, 0, 73 },
+ { 141, 11, 185 }, { 132, 0, 868 }, { 134, 0, 972 }, { 4, 10, 366 },
+ { 137, 10, 516 }, { 138, 0, 1010 }, { 5, 11, 189 }, { 6, 10, 1736 },
+ { 7, 11, 442 }, { 7, 11, 443 }, { 8, 11, 281 }, { 12, 11, 174 },
+ { 13, 11, 83 }, { 141, 11, 261 }, { 139, 11, 384 }, { 6, 11, 2 },
+ { 7, 11, 191 }, { 7, 11, 446 }, { 7, 11, 758 }, { 7, 11, 1262 },
+ { 7, 11, 1737 }, { 8, 11, 22 }, { 8, 11, 270 }, { 8, 11, 612 },
+ { 9, 11, 4 }, { 9, 11, 167 }, { 9, 11, 312 }, { 9, 11, 436 },
+ { 10, 11, 156 }, { 10, 11, 216 }, { 10, 11, 311 }, { 10, 11, 623 },
+ { 11, 11, 72 }, { 11, 11, 330 }, { 11, 11, 455 }, { 12, 11, 101 },
+ { 12, 11, 321 }, { 12, 11, 504 }, { 12, 11, 530 }, { 12, 11, 543 },
+ { 13, 11, 17 }, { 13, 11, 156 }, { 13, 11, 334 }, { 14, 11, 48 },
+ { 15, 11, 70 }, { 17, 11, 60 }, { 148, 11, 64 }, { 6, 10, 331 },
+ { 136, 10, 623 }, { 135, 0, 1231 }, { 132, 0, 304 }, { 6, 11, 60 },
+ { 7, 11, 670 }, { 7, 11, 1327 }, { 8, 11, 411 }, { 8, 11, 435 },
+ { 9, 11, 653 }, { 9, 11, 740 }, { 10, 11, 385 }, { 11, 11, 222 },
+ { 11, 11, 324 }, { 11, 11, 829 }, { 140, 11, 611 }, { 7, 0, 506 },
+ { 6, 11, 166 }, { 7, 11, 374 }, { 135, 11, 1174 }, { 14, 11, 43 },
+ { 146, 11, 21 }, { 135, 11, 1694 }, { 135, 10, 1888 }, { 5, 11, 206 },
+ { 134, 11, 398 }, { 135, 11, 50 }, { 150, 0, 26 }, { 6, 0, 53 },
+ { 6, 0, 199 }, { 7, 0, 1408 }, { 8, 0, 32 }, { 8, 0, 93 },
+ { 10, 0, 397 }, { 10, 0, 629 }, { 11, 0, 593 }, { 11, 0, 763 },
+ { 13, 0, 326 }, { 145, 0, 35 }, { 134, 0, 105 }, { 132, 10, 394 },
+ { 4, 0, 843 }, { 138, 0, 794 }, { 11, 0, 704 }, { 141, 0, 396 },
+ { 5, 0, 114 }, { 5, 0, 255 }, { 141, 0, 285 }, { 6, 0, 619 },
+ { 7, 0, 898 }, { 7, 0, 1092 }, { 8, 0, 485 }, { 18, 0, 28 },
+ { 19, 0, 116 }, { 135, 10, 1931 }, { 9, 0, 145 }, { 7, 10, 574 },
+ { 135, 10, 1719 }, { 7, 0, 2035 }, { 8, 0, 19 }, { 9, 0, 89 },
+ { 138, 0, 831 }, { 132, 10, 658 }, { 6, 11, 517 }, { 7, 11, 1159 },
+ { 10, 11, 621 }, { 139, 11, 192 }, { 7, 0, 1933 }, { 7, 11, 1933 },
+ { 9, 10, 781 }, { 10, 10, 144 }, { 11, 10, 385 }, { 13, 10, 161 },
+ { 13, 10, 228 }, { 13, 10, 268 }, { 148, 10, 107 }, { 136, 10, 374 },
+ { 10, 11, 223 }, { 139, 11, 645 }, { 135, 0, 1728 }, { 7, 11, 64 },
+ { 7, 11, 289 }, { 136, 11, 245 }, { 4, 10, 344 }, { 6, 10, 498 },
+ { 139, 10, 323 }, { 136, 0, 746 }, { 135, 10, 1063 }, { 137, 10, 155 },
+ { 4, 0, 987 }, { 6, 0, 1964 }, { 6, 0, 1974 }, { 6, 0, 1990 },
+ { 136, 0, 995 }, { 133, 11, 609 }, { 133, 10, 906 }, { 134, 0, 1550 },
+ { 134, 0, 874 }, { 5, 11, 129 }, { 6, 11, 61 }, { 135, 11, 947 },
+ { 4, 0, 1018 }, { 6, 0, 1938 }, { 6, 0, 2021 }, { 134, 0, 2039 },
+ { 132, 0, 814 }, { 11, 0, 126 }, { 139, 0, 287 }, { 134, 0, 1264 },
+ { 5, 0, 955 }, { 136, 0, 814 }, { 141, 11, 506 }, { 132, 11, 314 },
+ { 6, 0, 981 }, { 139, 11, 1000 }, { 5, 0, 56 }, { 8, 0, 892 },
+ { 8, 0, 915 }, { 140, 0, 776 }, { 148, 0, 100 }, { 10, 0, 4 },
+ { 10, 0, 13 }, { 11, 0, 638 }, { 148, 0, 57 }, { 148, 11, 74 },
+ { 5, 0, 738 }, { 132, 10, 616 }, { 133, 11, 637 }, { 136, 10, 692 },
+ { 133, 0, 758 }, { 132, 10, 305 }, { 137, 11, 590 }, { 5, 11, 280 },
+ { 135, 11, 1226 }, { 134, 11, 494 }, { 135, 0, 1112 }, { 133, 11, 281 },
+ { 13, 0, 44 }, { 14, 0, 214 }, { 5, 10, 214 }, { 7, 10, 603 },
+ { 8, 10, 611 }, { 9, 10, 686 }, { 10, 10, 88 }, { 11, 10, 459 },
+ { 11, 10, 496 }, { 12, 10, 463 }, { 140, 10, 590 }, { 139, 0, 328 },
+ { 135, 11, 1064 }, { 137, 0, 133 }, { 7, 0, 168 }, { 13, 0, 196 },
+ { 141, 0, 237 }, { 134, 10, 1703 }, { 134, 0, 1152 }, { 135, 0, 1245 },
+ { 5, 0, 110 }, { 6, 0, 169 }, { 6, 0, 1702 }, { 7, 0, 400 },
+ { 8, 0, 538 }, { 9, 0, 184 }, { 9, 0, 524 }, { 140, 0, 218 },
+ { 6, 0, 1816 }, { 10, 0, 871 }, { 12, 0, 769 }, { 140, 0, 785 },
+ { 132, 11, 630 }, { 7, 11, 33 }, { 7, 11, 120 }, { 8, 11, 489 },
+ { 9, 11, 319 }, { 10, 11, 820 }, { 11, 11, 1004 }, { 12, 11, 379 },
+ { 13, 11, 117 }, { 13, 11, 412 }, { 14, 11, 25 }, { 15, 11, 52 },
+ { 15, 11, 161 }, { 16, 11, 47 }, { 149, 11, 2 }, { 6, 0, 133 },
+ { 8, 0, 413 }, { 9, 0, 353 }, { 139, 0, 993 }, { 145, 10, 19 },
+ { 4, 11, 937 }, { 133, 11, 801 }, { 134, 0, 978 }, { 6, 0, 93 },
+ { 6, 0, 1508 }, { 7, 0, 1422 }, { 7, 0, 1851 }, { 8, 0, 673 },
+ { 9, 0, 529 }, { 140, 0, 43 }, { 6, 0, 317 }, { 10, 0, 512 },
+ { 4, 10, 737 }, { 11, 10, 294 }, { 12, 10, 60 }, { 12, 10, 437 },
+ { 13, 10, 64 }, { 13, 10, 380 }, { 142, 10, 430 }, { 9, 0, 371 },
+ { 7, 11, 1591 }, { 144, 11, 43 }, { 6, 10, 1758 }, { 8, 10, 520 },
+ { 9, 10, 345 }, { 9, 10, 403 }, { 142, 10, 350 }, { 5, 0, 526 },
+ { 10, 10, 242 }, { 138, 10, 579 }, { 9, 0, 25 }, { 10, 0, 467 },
+ { 138, 0, 559 }, { 5, 10, 139 }, { 7, 10, 1168 }, { 138, 10, 539 },
+ { 4, 0, 335 }, { 135, 0, 942 }, { 140, 0, 754 }, { 132, 11, 365 },
+ { 11, 0, 182 }, { 142, 0, 195 }, { 142, 11, 29 }, { 5, 11, 7 },
+ { 139, 11, 774 }, { 4, 11, 746 }, { 135, 11, 1090 }, { 8, 0, 39 },
+ { 10, 0, 773 }, { 11, 0, 84 }, { 12, 0, 205 }, { 142, 0, 1 },
+ { 5, 0, 601 }, { 5, 0, 870 }, { 5, 11, 360 }, { 136, 11, 237 },
+ { 132, 0, 181 }, { 136, 0, 370 }, { 134, 0, 1652 }, { 8, 0, 358 },
+ { 4, 10, 107 }, { 7, 10, 613 }, { 8, 10, 439 }, { 8, 10, 504 },
+ { 9, 10, 501 }, { 10, 10, 383 }, { 139, 10, 477 }, { 132, 10, 229 },
+ { 137, 11, 785 }, { 4, 0, 97 }, { 5, 0, 147 }, { 6, 0, 286 },
+ { 7, 0, 1362 }, { 141, 0, 176 }, { 6, 0, 537 }, { 7, 0, 788 },
+ { 7, 0, 1816 }, { 132, 10, 903 }, { 140, 10, 71 }, { 6, 0, 743 },
+ { 134, 0, 1223 }, { 6, 0, 375 }, { 7, 0, 169 }, { 7, 0, 254 },
+ { 8, 0, 780 }, { 135, 11, 1493 }, { 7, 0, 1714 }, { 4, 10, 47 },
+ { 6, 10, 373 }, { 7, 10, 452 }, { 7, 10, 543 }, { 7, 10, 1856 },
+ { 9, 10, 6 }, { 11, 10, 257 }, { 139, 10, 391 }, { 6, 0, 896 },
+ { 136, 0, 1003 }, { 135, 0, 1447 }, { 137, 11, 341 }, { 5, 10, 980 },
+ { 134, 10, 1754 }, { 145, 11, 22 }, { 4, 11, 277 }, { 5, 11, 608 },
+ { 6, 11, 493 }, { 7, 11, 457 }, { 140, 11, 384 }, { 7, 10, 536 },
+ { 7, 10, 1331 }, { 136, 10, 143 }, { 140, 0, 744 }, { 7, 11, 27 },
+ { 135, 11, 316 }, { 18, 0, 126 }, { 5, 10, 19 }, { 134, 10, 533 },
+ { 4, 0, 788 }, { 11, 0, 41 }, { 5, 11, 552 }, { 5, 11, 586 },
+ { 5, 11, 676 }, { 6, 11, 448 }, { 8, 11, 244 }, { 11, 11, 1 },
+ { 11, 11, 41 }, { 13, 11, 3 }, { 16, 11, 54 }, { 17, 11, 4 },
+ { 146, 11, 13 }, { 4, 0, 985 }, { 6, 0, 1801 }, { 4, 11, 401 },
+ { 137, 11, 264 }, { 5, 10, 395 }, { 5, 10, 951 }, { 134, 10, 1776 },
+ { 5, 0, 629 }, { 135, 0, 1549 }, { 11, 10, 663 }, { 12, 10, 210 },
+ { 13, 10, 166 }, { 13, 10, 310 }, { 14, 10, 373 }, { 147, 10, 43 },
+ { 9, 11, 543 }, { 10, 11, 524 }, { 11, 11, 30 }, { 12, 11, 524 },
+ { 14, 11, 315 }, { 16, 11, 18 }, { 20, 11, 26 }, { 148, 11, 65 },
+ { 4, 11, 205 }, { 5, 11, 623 }, { 7, 11, 104 }, { 136, 11, 519 },
+ { 5, 0, 293 }, { 134, 0, 601 }, { 7, 11, 579 }, { 9, 11, 41 },
+ { 9, 11, 244 }, { 9, 11, 669 }, { 10, 11, 5 }, { 11, 11, 861 },
+ { 11, 11, 951 }, { 139, 11, 980 }, { 132, 11, 717 }, { 132, 10, 695 },
+ { 7, 10, 497 }, { 9, 10, 387 }, { 147, 10, 81 }, { 132, 0, 420 },
+ { 142, 0, 37 }, { 6, 0, 1134 }, { 6, 0, 1900 }, { 12, 0, 830 },
+ { 12, 0, 878 }, { 12, 0, 894 }, { 15, 0, 221 }, { 143, 0, 245 },
+ { 132, 11, 489 }, { 7, 0, 1570 }, { 140, 0, 542 }, { 8, 0, 933 },
+ { 136, 0, 957 }, { 6, 0, 1371 }, { 7, 0, 31 }, { 8, 0, 373 },
+ { 5, 10, 284 }, { 6, 10, 49 }, { 6, 10, 350 }, { 7, 10, 377 },
+ { 7, 10, 1693 }, { 8, 10, 678 }, { 9, 10, 161 }, { 9, 10, 585 },
+ { 9, 10, 671 }, { 9, 10, 839 }, { 11, 10, 912 }, { 141, 10, 427 },
+ { 135, 11, 892 }, { 4, 0, 325 }, { 138, 0, 125 }, { 139, 11, 47 },
+ { 132, 10, 597 }, { 138, 0, 323 }, { 6, 0, 1547 }, { 7, 11, 1605 },
+ { 9, 11, 473 }, { 11, 11, 962 }, { 146, 11, 139 }, { 139, 10, 908 },
+ { 7, 11, 819 }, { 9, 11, 26 }, { 9, 11, 392 }, { 10, 11, 152 },
+ { 10, 11, 226 }, { 11, 11, 19 }, { 12, 11, 276 }, { 12, 11, 426 },
+ { 12, 11, 589 }, { 13, 11, 460 }, { 15, 11, 97 }, { 19, 11, 48 },
+ { 148, 11, 104 }, { 135, 11, 51 }, { 4, 0, 718 }, { 135, 0, 1216 },
+ { 6, 0, 1896 }, { 6, 0, 1905 }, { 6, 0, 1912 }, { 9, 0, 947 },
+ { 9, 0, 974 }, { 12, 0, 809 }, { 12, 0, 850 }, { 12, 0, 858 },
+ { 12, 0, 874 }, { 12, 0, 887 }, { 12, 0, 904 }, { 12, 0, 929 },
+ { 12, 0, 948 }, { 12, 0, 952 }, { 15, 0, 198 }, { 15, 0, 206 },
+ { 15, 0, 220 }, { 15, 0, 227 }, { 15, 0, 247 }, { 18, 0, 188 },
+ { 21, 0, 48 }, { 21, 0, 50 }, { 24, 0, 25 }, { 24, 0, 29 },
+ { 7, 11, 761 }, { 7, 11, 1051 }, { 137, 11, 545 }, { 5, 0, 124 },
+ { 5, 0, 144 }, { 6, 0, 548 }, { 7, 0, 15 }, { 7, 0, 153 },
+ { 137, 0, 629 }, { 135, 11, 606 }, { 135, 10, 2014 }, { 7, 10, 2007 },
+ { 9, 11, 46 }, { 9, 10, 101 }, { 9, 10, 450 }, { 10, 10, 66 },
+ { 10, 10, 842 }, { 11, 10, 536 }, { 140, 10, 587 }, { 6, 0, 75 },
+ { 7, 0, 1531 }, { 8, 0, 416 }, { 9, 0, 240 }, { 9, 0, 275 },
+ { 10, 0, 100 }, { 11, 0, 658 }, { 11, 0, 979 }, { 12, 0, 86 },
+ { 14, 0, 207 }, { 15, 0, 20 }, { 143, 0, 25 }, { 5, 0, 141 },
+ { 5, 0, 915 }, { 6, 0, 1783 }, { 7, 0, 211 }, { 7, 0, 698 },
+ { 7, 0, 1353 }, { 9, 0, 83 }, { 9, 0, 281 }, { 10, 0, 376 },
+ { 10, 0, 431 }, { 11, 0, 543 }, { 12, 0, 664 }, { 13, 0, 280 },
+ { 13, 0, 428 }, { 14, 0, 61 }, { 14, 0, 128 }, { 17, 0, 52 },
+ { 145, 0, 81 }, { 132, 11, 674 }, { 135, 0, 533 }, { 149, 0, 6 },
+ { 132, 11, 770 }, { 133, 0, 538 }, { 5, 11, 79 }, { 7, 11, 1027 },
+ { 7, 11, 1477 }, { 139, 11, 52 }, { 139, 10, 62 }, { 4, 0, 338 },
+ { 133, 0, 400 }, { 5, 11, 789 }, { 134, 11, 195 }, { 4, 11, 251 },
+ { 4, 11, 688 }, { 7, 11, 513 }, { 7, 11, 1284 }, { 9, 11, 87 },
+ { 138, 11, 365 }, { 134, 10, 1766 }, { 6, 0, 0 }, { 7, 0, 84 },
+ { 11, 0, 895 }, { 145, 0, 11 }, { 139, 0, 892 }, { 4, 0, 221 },
+ { 5, 0, 659 }, { 7, 0, 697 }, { 7, 0, 1211 }, { 138, 0, 284 },
+ { 133, 0, 989 }, { 133, 11, 889 }, { 4, 11, 160 }, { 5, 11, 330 },
+ { 7, 11, 1434 }, { 136, 11, 174 }, { 6, 10, 1665 }, { 7, 10, 256 },
+ { 7, 10, 1388 }, { 10, 10, 499 }, { 139, 10, 670 }, { 7, 0, 848 },
+ { 4, 10, 22 }, { 5, 10, 10 }, { 136, 10, 97 }, { 138, 0, 507 },
+ { 133, 10, 481 }, { 4, 0, 188 }, { 135, 0, 805 }, { 5, 0, 884 },
+ { 6, 0, 732 }, { 139, 0, 991 }, { 135, 11, 968 }, { 11, 11, 636 },
+ { 15, 11, 145 }, { 17, 11, 34 }, { 19, 11, 50 }, { 151, 11, 20 },
+ { 7, 0, 959 }, { 16, 0, 60 }, { 6, 10, 134 }, { 7, 10, 437 },
+ { 9, 10, 37 }, { 14, 10, 285 }, { 142, 10, 371 }, { 7, 10, 486 },
+ { 8, 10, 155 }, { 11, 10, 93 }, { 140, 10, 164 }, { 134, 0, 1653 },
+ { 7, 0, 337 }, { 133, 10, 591 }, { 6, 0, 1989 }, { 8, 0, 922 },
+ { 8, 0, 978 }, { 133, 11, 374 }, { 132, 0, 638 }, { 138, 0, 500 },
+ { 133, 11, 731 }, { 5, 10, 380 }, { 5, 10, 650 }, { 136, 10, 310 },
+ { 138, 11, 381 }, { 4, 10, 364 }, { 7, 10, 1156 }, { 7, 10, 1187 },
+ { 137, 10, 409 }, { 137, 11, 224 }, { 140, 0, 166 }, { 134, 10, 482 },
+ { 4, 11, 626 }, { 5, 11, 642 }, { 6, 11, 425 }, { 10, 11, 202 },
+ { 139, 11, 141 }, { 4, 10, 781 }, { 6, 10, 487 }, { 7, 10, 926 },
+ { 8, 10, 263 }, { 139, 10, 500 }, { 135, 0, 418 }, { 4, 10, 94 },
+ { 135, 10, 1265 }, { 136, 0, 760 }, { 132, 10, 417 }, { 136, 11, 835 },
+ { 5, 10, 348 }, { 134, 10, 522 }, { 6, 0, 1277 }, { 134, 0, 1538 },
+ { 139, 11, 541 }, { 135, 11, 1597 }, { 5, 11, 384 }, { 8, 11, 455 },
+ { 140, 11, 48 }, { 136, 0, 770 }, { 5, 11, 264 }, { 134, 11, 184 },
+ { 4, 0, 89 }, { 5, 0, 489 }, { 6, 0, 315 }, { 7, 0, 553 },
+ { 7, 0, 1745 }, { 138, 0, 243 }, { 4, 10, 408 }, { 4, 10, 741 },
+ { 135, 10, 500 }, { 134, 0, 1396 }, { 133, 0, 560 }, { 6, 0, 1658 },
+ { 9, 0, 3 }, { 10, 0, 154 }, { 11, 0, 641 }, { 13, 0, 85 },
+ { 13, 0, 201 }, { 141, 0, 346 }, { 135, 11, 1595 }, { 5, 11, 633 },
+ { 6, 11, 28 }, { 7, 11, 219 }, { 135, 11, 1323 }, { 9, 11, 769 },
+ { 140, 11, 185 }, { 135, 11, 785 }, { 7, 11, 359 }, { 8, 11, 243 },
+ { 140, 11, 175 }, { 138, 0, 586 }, { 7, 0, 1271 }, { 134, 10, 73 },
+ { 132, 11, 105 }, { 4, 0, 166 }, { 5, 0, 505 }, { 134, 0, 1670 },
+ { 133, 10, 576 }, { 4, 11, 324 }, { 138, 11, 104 }, { 142, 10, 231 },
+ { 6, 0, 637 }, { 7, 10, 1264 }, { 7, 10, 1678 }, { 11, 10, 945 },
+ { 12, 10, 341 }, { 12, 10, 471 }, { 12, 10, 569 }, { 23, 11, 21 },
+ { 151, 11, 23 }, { 8, 11, 559 }, { 141, 11, 109 }, { 134, 0, 1947 },
+ { 7, 0, 445 }, { 8, 0, 307 }, { 8, 0, 704 }, { 10, 0, 41 },
+ { 10, 0, 439 }, { 11, 0, 237 }, { 11, 0, 622 }, { 140, 0, 201 },
+ { 135, 11, 963 }, { 135, 0, 1977 }, { 4, 0, 189 }, { 5, 0, 713 },
+ { 136, 0, 57 }, { 138, 0, 371 }, { 135, 10, 538 }, { 132, 0, 552 },
+ { 6, 0, 883 }, { 133, 10, 413 }, { 6, 0, 923 }, { 132, 11, 758 },
+ { 138, 11, 215 }, { 136, 10, 495 }, { 7, 10, 54 }, { 8, 10, 312 },
+ { 10, 10, 191 }, { 10, 10, 614 }, { 140, 10, 567 }, { 7, 11, 351 },
+ { 139, 11, 128 }, { 7, 0, 875 }, { 6, 10, 468 }, { 7, 10, 1478 },
+ { 8, 10, 530 }, { 142, 10, 290 }, { 135, 0, 1788 }, { 17, 0, 49 },
+ { 133, 11, 918 }, { 12, 11, 398 }, { 20, 11, 39 }, { 21, 11, 11 },
+ { 150, 11, 41 }, { 10, 0, 661 }, { 6, 10, 484 }, { 135, 10, 822 },
+ { 135, 0, 1945 }, { 134, 0, 794 }, { 137, 10, 900 }, { 135, 10, 1335 },
+ { 6, 10, 1724 }, { 135, 10, 2022 }, { 132, 11, 340 }, { 134, 0, 1135 },
+ { 4, 0, 784 }, { 133, 0, 745 }, { 5, 0, 84 }, { 134, 0, 163 },
+ { 133, 0, 410 }, { 4, 0, 976 }, { 5, 11, 985 }, { 7, 11, 509 },
+ { 7, 11, 529 }, { 145, 11, 96 }, { 132, 10, 474 }, { 134, 0, 703 },
+ { 135, 11, 1919 }, { 5, 0, 322 }, { 8, 0, 186 }, { 9, 0, 262 },
+ { 10, 0, 187 }, { 142, 0, 208 }, { 135, 10, 1504 }, { 133, 0, 227 },
+ { 9, 0, 560 }, { 13, 0, 208 }, { 133, 10, 305 }, { 132, 11, 247 },
+ { 7, 0, 1395 }, { 8, 0, 486 }, { 9, 0, 236 }, { 9, 0, 878 },
+ { 10, 0, 218 }, { 11, 0, 95 }, { 19, 0, 17 }, { 147, 0, 31 },
+ { 7, 0, 2043 }, { 8, 0, 672 }, { 141, 0, 448 }, { 4, 11, 184 },
+ { 5, 11, 390 }, { 6, 11, 337 }, { 7, 11, 23 }, { 7, 11, 494 },
+ { 7, 11, 618 }, { 7, 11, 1456 }, { 8, 11, 27 }, { 8, 11, 599 },
+ { 10, 11, 153 }, { 139, 11, 710 }, { 135, 0, 466 }, { 135, 10, 1236 },
+ { 6, 0, 167 }, { 7, 0, 186 }, { 7, 0, 656 }, { 10, 0, 643 },
+ { 4, 10, 480 }, { 6, 10, 302 }, { 6, 10, 1642 }, { 7, 10, 837 },
+ { 7, 10, 1547 }, { 7, 10, 1657 }, { 8, 10, 429 }, { 9, 10, 228 },
+ { 13, 10, 289 }, { 13, 10, 343 }, { 147, 10, 101 }, { 134, 0, 1428 },
+ { 134, 0, 1440 }, { 5, 0, 412 }, { 7, 10, 278 }, { 10, 10, 739 },
+ { 11, 10, 708 }, { 141, 10, 348 }, { 134, 0, 1118 }, { 136, 0, 562 },
+ { 148, 11, 46 }, { 9, 0, 316 }, { 139, 0, 256 }, { 134, 0, 1771 },
+ { 135, 0, 1190 }, { 137, 0, 132 }, { 10, 11, 227 }, { 11, 11, 497 },
+ { 11, 11, 709 }, { 140, 11, 415 }, { 143, 0, 66 }, { 6, 11, 360 },
+ { 7, 11, 1664 }, { 136, 11, 478 }, { 144, 10, 28 }, { 4, 0, 317 },
+ { 135, 0, 1279 }, { 5, 0, 63 }, { 133, 0, 509 }, { 136, 11, 699 },
+ { 145, 10, 36 }, { 134, 0, 1475 }, { 11, 11, 343 }, { 142, 11, 127 },
+ { 132, 11, 739 }, { 132, 0, 288 }, { 135, 11, 1757 }, { 8, 0, 89 },
+ { 8, 0, 620 }, { 9, 0, 608 }, { 11, 0, 628 }, { 12, 0, 322 },
+ { 143, 0, 124 }, { 134, 0, 1225 }, { 7, 0, 1189 }, { 4, 11, 67 },
+ { 5, 11, 422 }, { 6, 10, 363 }, { 7, 11, 1037 }, { 7, 11, 1289 },
+ { 7, 11, 1555 }, { 7, 10, 1955 }, { 8, 10, 725 }, { 9, 11, 741 },
+ { 145, 11, 108 }, { 134, 0, 1468 }, { 6, 0, 689 }, { 134, 0, 1451 },
+ { 138, 0, 120 }, { 151, 0, 1 }, { 137, 10, 805 }, { 142, 0, 329 },
+ { 5, 10, 813 }, { 135, 10, 2046 }, { 135, 0, 226 }, { 138, 11, 96 },
+ { 7, 0, 1855 }, { 5, 10, 712 }, { 11, 10, 17 }, { 13, 10, 321 },
+ { 144, 10, 67 }, { 9, 0, 461 }, { 6, 10, 320 }, { 7, 10, 781 },
+ { 7, 10, 1921 }, { 9, 10, 55 }, { 10, 10, 186 }, { 10, 10, 273 },
+ { 10, 10, 664 }, { 10, 10, 801 }, { 11, 10, 996 }, { 11, 10, 997 },
+ { 13, 10, 157 }, { 142, 10, 170 }, { 8, 11, 203 }, { 8, 10, 271 },
+ { 11, 11, 823 }, { 11, 11, 846 }, { 12, 11, 482 }, { 13, 11, 133 },
+ { 13, 11, 277 }, { 13, 11, 302 }, { 13, 11, 464 }, { 14, 11, 205 },
+ { 142, 11, 221 }, { 135, 0, 1346 }, { 4, 11, 449 }, { 133, 11, 718 },
+ { 134, 0, 85 }, { 14, 0, 299 }, { 7, 10, 103 }, { 7, 10, 863 },
+ { 11, 10, 184 }, { 145, 10, 62 }, { 4, 11, 355 }, { 6, 11, 311 },
+ { 9, 11, 256 }, { 138, 11, 404 }, { 137, 10, 659 }, { 138, 11, 758 },
+ { 133, 11, 827 }, { 5, 11, 64 }, { 140, 11, 581 }, { 134, 0, 1171 },
+ { 4, 11, 442 }, { 7, 11, 1047 }, { 7, 11, 1352 }, { 135, 11, 1643 },
+ { 132, 0, 980 }, { 5, 11, 977 }, { 6, 11, 288 }, { 7, 11, 528 },
+ { 135, 11, 1065 }, { 5, 0, 279 }, { 6, 0, 235 }, { 7, 0, 468 },
+ { 8, 0, 446 }, { 9, 0, 637 }, { 10, 0, 717 }, { 11, 0, 738 },
+ { 140, 0, 514 }, { 132, 0, 293 }, { 11, 10, 337 }, { 142, 10, 303 },
+ { 136, 11, 285 }, { 5, 0, 17 }, { 6, 0, 371 }, { 9, 0, 528 },
+ { 12, 0, 364 }, { 132, 11, 254 }, { 5, 10, 77 }, { 7, 10, 1455 },
+ { 10, 10, 843 }, { 147, 10, 73 }, { 150, 0, 5 }, { 132, 10, 458 },
+ { 6, 11, 12 }, { 7, 11, 1219 }, { 145, 11, 73 }, { 135, 10, 1420 },
+ { 6, 10, 109 }, { 138, 10, 382 }, { 135, 11, 125 }, { 6, 10, 330 },
+ { 7, 10, 1084 }, { 139, 10, 142 }, { 6, 11, 369 }, { 6, 11, 502 },
+ { 7, 11, 1036 }, { 8, 11, 348 }, { 9, 11, 452 }, { 10, 11, 26 },
+ { 11, 11, 224 }, { 11, 11, 387 }, { 11, 11, 772 }, { 12, 11, 95 },
+ { 12, 11, 629 }, { 13, 11, 195 }, { 13, 11, 207 }, { 13, 11, 241 },
+ { 14, 11, 260 }, { 14, 11, 270 }, { 143, 11, 140 }, { 132, 11, 269 },
+ { 5, 11, 480 }, { 7, 11, 532 }, { 7, 11, 1197 }, { 7, 11, 1358 },
+ { 8, 11, 291 }, { 11, 11, 349 }, { 142, 11, 396 }, { 150, 0, 48 },
+ { 10, 0, 601 }, { 13, 0, 353 }, { 141, 0, 376 }, { 5, 0, 779 },
+ { 5, 0, 807 }, { 6, 0, 1655 }, { 134, 0, 1676 }, { 142, 11, 223 },
+ { 4, 0, 196 }, { 5, 0, 558 }, { 133, 0, 949 }, { 148, 11, 15 },
+ { 135, 11, 1764 }, { 134, 0, 1322 }, { 132, 0, 752 }, { 139, 0, 737 },
+ { 135, 11, 657 }, { 136, 11, 533 }, { 135, 0, 412 }, { 4, 0, 227 },
+ { 5, 0, 159 }, { 5, 0, 409 }, { 7, 0, 80 }, { 8, 0, 556 },
+ { 10, 0, 479 }, { 12, 0, 418 }, { 14, 0, 50 }, { 14, 0, 123 },
+ { 14, 0, 192 }, { 14, 0, 249 }, { 14, 0, 295 }, { 143, 0, 27 },
+ { 7, 0, 1470 }, { 8, 0, 66 }, { 8, 0, 137 }, { 8, 0, 761 },
+ { 9, 0, 638 }, { 11, 0, 80 }, { 11, 0, 212 }, { 11, 0, 368 },
+ { 11, 0, 418 }, { 12, 0, 8 }, { 13, 0, 15 }, { 16, 0, 61 },
+ { 17, 0, 59 }, { 19, 0, 28 }, { 148, 0, 84 }, { 135, 10, 1985 },
+ { 4, 11, 211 }, { 4, 11, 332 }, { 5, 11, 335 }, { 6, 11, 238 },
+ { 7, 11, 269 }, { 7, 11, 811 }, { 7, 11, 1797 }, { 8, 10, 122 },
+ { 8, 11, 836 }, { 9, 11, 507 }, { 141, 11, 242 }, { 6, 0, 683 },
+ { 134, 0, 1252 }, { 4, 0, 873 }, { 132, 10, 234 }, { 134, 0, 835 },
+ { 6, 0, 38 }, { 7, 0, 1220 }, { 8, 0, 185 }, { 8, 0, 256 },
+ { 9, 0, 22 }, { 9, 0, 331 }, { 10, 0, 738 }, { 11, 0, 205 },
+ { 11, 0, 540 }, { 11, 0, 746 }, { 13, 0, 465 }, { 14, 0, 88 },
+ { 142, 0, 194 }, { 138, 0, 986 }, { 5, 11, 1009 }, { 12, 11, 582 },
+ { 146, 11, 131 }, { 4, 0, 159 }, { 6, 0, 115 }, { 7, 0, 252 },
+ { 7, 0, 257 }, { 7, 0, 1928 }, { 8, 0, 69 }, { 9, 0, 384 },
+ { 10, 0, 91 }, { 10, 0, 615 }, { 12, 0, 375 }, { 14, 0, 235 },
+ { 18, 0, 117 }, { 147, 0, 123 }, { 133, 0, 911 }, { 136, 0, 278 },
+ { 5, 10, 430 }, { 5, 10, 932 }, { 6, 10, 131 }, { 7, 10, 417 },
+ { 9, 10, 522 }, { 11, 10, 314 }, { 141, 10, 390 }, { 14, 10, 149 },
+ { 14, 10, 399 }, { 143, 10, 57 }, { 4, 0, 151 }, { 7, 0, 1567 },
+ { 136, 0, 749 }, { 5, 11, 228 }, { 6, 11, 203 }, { 7, 11, 156 },
+ { 8, 11, 347 }, { 137, 11, 265 }, { 132, 10, 507 }, { 10, 0, 989 },
+ { 140, 0, 956 }, { 133, 0, 990 }, { 5, 0, 194 }, { 6, 0, 927 },
+ { 7, 0, 1662 }, { 9, 0, 90 }, { 140, 0, 564 }, { 4, 10, 343 },
+ { 133, 10, 511 }, { 133, 0, 425 }, { 7, 10, 455 }, { 138, 10, 591 },
+ { 4, 0, 774 }, { 7, 11, 476 }, { 7, 11, 1592 }, { 138, 11, 87 },
+ { 5, 0, 971 }, { 135, 10, 1381 }, { 5, 11, 318 }, { 147, 11, 121 },
+ { 5, 11, 291 }, { 7, 11, 765 }, { 9, 11, 389 }, { 140, 11, 548 },
+ { 134, 10, 575 }, { 4, 0, 827 }, { 12, 0, 646 }, { 12, 0, 705 },
+ { 12, 0, 712 }, { 140, 0, 714 }, { 139, 0, 752 }, { 137, 0, 662 },
+ { 5, 0, 72 }, { 6, 0, 264 }, { 7, 0, 21 }, { 7, 0, 46 },
+ { 7, 0, 2013 }, { 8, 0, 215 }, { 8, 0, 513 }, { 10, 0, 266 },
+ { 139, 0, 22 }, { 139, 11, 522 }, { 6, 0, 239 }, { 7, 0, 118 },
+ { 10, 0, 95 }, { 11, 0, 603 }, { 13, 0, 443 }, { 14, 0, 160 },
+ { 143, 0, 4 }, { 6, 0, 431 }, { 134, 0, 669 }, { 7, 10, 1127 },
+ { 7, 10, 1572 }, { 10, 10, 297 }, { 10, 10, 422 }, { 11, 10, 764 },
+ { 11, 10, 810 }, { 12, 10, 264 }, { 13, 10, 102 }, { 13, 10, 300 },
+ { 13, 10, 484 }, { 14, 10, 147 }, { 14, 10, 229 }, { 17, 10, 71 },
+ { 18, 10, 118 }, { 147, 10, 120 }, { 5, 0, 874 }, { 6, 0, 1677 },
+ { 15, 0, 0 }, { 10, 11, 525 }, { 139, 11, 82 }, { 6, 0, 65 },
+ { 7, 0, 939 }, { 7, 0, 1172 }, { 7, 0, 1671 }, { 9, 0, 540 },
+ { 10, 0, 696 }, { 11, 0, 265 }, { 11, 0, 732 }, { 11, 0, 928 },
+ { 11, 0, 937 }, { 141, 0, 438 }, { 134, 0, 1350 }, { 136, 11, 547 },
+ { 132, 11, 422 }, { 5, 11, 355 }, { 145, 11, 0 }, { 137, 11, 905 },
+ { 5, 0, 682 }, { 135, 0, 1887 }, { 132, 0, 809 }, { 4, 0, 696 },
+ { 133, 11, 865 }, { 6, 0, 1074 }, { 6, 0, 1472 }, { 14, 10, 35 },
+ { 142, 10, 191 }, { 5, 11, 914 }, { 134, 11, 1625 }, { 133, 11, 234 },
+ { 135, 11, 1383 }, { 137, 11, 780 }, { 132, 10, 125 }, { 4, 0, 726 },
+ { 133, 0, 630 }, { 8, 0, 802 }, { 136, 0, 838 }, { 132, 10, 721 },
+ { 6, 0, 1337 }, { 7, 0, 776 }, { 19, 0, 56 }, { 136, 10, 145 },
+ { 132, 0, 970 }, { 7, 10, 792 }, { 8, 10, 147 }, { 10, 10, 821 },
+ { 139, 10, 1021 }, { 139, 10, 970 }, { 8, 0, 940 }, { 137, 0, 797 },
+ { 135, 11, 1312 }, { 9, 0, 248 }, { 10, 0, 400 }, { 7, 11, 816 },
+ { 7, 11, 1241 }, { 7, 10, 1999 }, { 9, 11, 283 }, { 9, 11, 520 },
+ { 10, 11, 213 }, { 10, 11, 307 }, { 10, 11, 463 }, { 10, 11, 671 },
+ { 10, 11, 746 }, { 11, 11, 401 }, { 11, 11, 794 }, { 12, 11, 517 },
+ { 18, 11, 107 }, { 147, 11, 115 }, { 6, 0, 1951 }, { 134, 0, 2040 },
+ { 135, 11, 339 }, { 13, 0, 41 }, { 15, 0, 93 }, { 5, 10, 168 },
+ { 5, 10, 930 }, { 8, 10, 74 }, { 9, 10, 623 }, { 12, 10, 500 },
+ { 140, 10, 579 }, { 6, 0, 118 }, { 7, 0, 215 }, { 7, 0, 1521 },
+ { 140, 0, 11 }, { 6, 10, 220 }, { 7, 10, 1101 }, { 141, 10, 105 },
+ { 6, 11, 421 }, { 7, 11, 61 }, { 7, 11, 1540 }, { 10, 11, 11 },
+ { 138, 11, 501 }, { 7, 0, 615 }, { 138, 0, 251 }, { 140, 11, 631 },
+ { 135, 0, 1044 }, { 6, 10, 19 }, { 7, 10, 1413 }, { 139, 10, 428 },
+ { 133, 0, 225 }, { 7, 10, 96 }, { 8, 10, 401 }, { 8, 10, 703 },
+ { 137, 10, 896 }, { 145, 10, 116 }, { 6, 11, 102 }, { 7, 11, 72 },
+ { 15, 11, 142 }, { 147, 11, 67 }, { 7, 10, 1961 }, { 7, 10, 1965 },
+ { 8, 10, 702 }, { 136, 10, 750 }, { 7, 10, 2030 }, { 8, 10, 150 },
+ { 8, 10, 737 }, { 12, 10, 366 }, { 151, 11, 30 }, { 4, 0, 370 },
+ { 5, 0, 756 }, { 7, 0, 1326 }, { 135, 11, 823 }, { 8, 10, 800 },
+ { 9, 10, 148 }, { 9, 10, 872 }, { 9, 10, 890 }, { 11, 10, 309 },
+ { 11, 10, 1001 }, { 13, 10, 267 }, { 141, 10, 323 }, { 6, 0, 1662 },
+ { 7, 0, 48 }, { 8, 0, 771 }, { 10, 0, 116 }, { 13, 0, 104 },
+ { 14, 0, 105 }, { 14, 0, 184 }, { 15, 0, 168 }, { 19, 0, 92 },
+ { 148, 0, 68 }, { 10, 0, 209 }, { 135, 11, 1870 }, { 7, 11, 68 },
+ { 8, 11, 48 }, { 8, 11, 88 }, { 8, 11, 582 }, { 8, 11, 681 },
+ { 9, 11, 373 }, { 9, 11, 864 }, { 11, 11, 157 }, { 11, 11, 336 },
+ { 11, 11, 843 }, { 148, 11, 27 }, { 134, 0, 930 }, { 4, 11, 88 },
+ { 5, 11, 137 }, { 5, 11, 174 }, { 5, 11, 777 }, { 6, 11, 1664 },
+ { 6, 11, 1725 }, { 7, 11, 77 }, { 7, 11, 426 }, { 7, 11, 1317 },
+ { 7, 11, 1355 }, { 8, 11, 126 }, { 8, 11, 563 }, { 9, 11, 523 },
+ { 9, 11, 750 }, { 10, 11, 310 }, { 10, 11, 836 }, { 11, 11, 42 },
+ { 11, 11, 318 }, { 11, 11, 731 }, { 12, 11, 68 }, { 12, 11, 92 },
+ { 12, 11, 507 }, { 12, 11, 692 }, { 13, 11, 81 }, { 13, 11, 238 },
+ { 13, 11, 374 }, { 18, 11, 138 }, { 19, 11, 78 }, { 19, 11, 111 },
+ { 20, 11, 55 }, { 20, 11, 77 }, { 148, 11, 92 }, { 4, 11, 938 },
+ { 135, 11, 1831 }, { 5, 10, 547 }, { 7, 10, 424 }, { 8, 11, 617 },
+ { 138, 11, 351 }, { 6, 0, 1286 }, { 6, 11, 1668 }, { 7, 11, 1499 },
+ { 8, 11, 117 }, { 9, 11, 314 }, { 138, 11, 174 }, { 6, 0, 759 },
+ { 6, 0, 894 }, { 7, 11, 707 }, { 139, 11, 563 }, { 4, 0, 120 },
+ { 135, 0, 1894 }, { 9, 0, 385 }, { 149, 0, 17 }, { 138, 0, 429 },
+ { 133, 11, 403 }, { 5, 0, 820 }, { 135, 0, 931 }, { 10, 0, 199 },
+ { 133, 10, 133 }, { 6, 0, 151 }, { 6, 0, 1675 }, { 7, 0, 383 },
+ { 151, 0, 10 }, { 6, 0, 761 }, { 136, 10, 187 }, { 8, 0, 365 },
+ { 10, 10, 0 }, { 10, 10, 818 }, { 139, 10, 988 }, { 4, 11, 44 },
+ { 5, 11, 311 }, { 6, 11, 156 }, { 7, 11, 639 }, { 7, 11, 762 },
+ { 7, 11, 1827 }, { 9, 11, 8 }, { 9, 11, 462 }, { 148, 11, 83 },
+ { 4, 11, 346 }, { 7, 11, 115 }, { 9, 11, 180 }, { 9, 11, 456 },
+ { 138, 11, 363 }, { 136, 10, 685 }, { 7, 0, 1086 }, { 145, 0, 46 },
+ { 6, 0, 1624 }, { 11, 0, 11 }, { 12, 0, 422 }, { 13, 0, 444 },
+ { 142, 0, 360 }, { 6, 0, 1020 }, { 6, 0, 1260 }, { 134, 0, 1589 },
+ { 4, 0, 43 }, { 5, 0, 344 }, { 5, 0, 357 }, { 14, 0, 472 },
+ { 150, 0, 58 }, { 6, 0, 1864 }, { 6, 0, 1866 }, { 6, 0, 1868 },
+ { 6, 0, 1869 }, { 6, 0, 1874 }, { 6, 0, 1877 }, { 6, 0, 1903 },
+ { 6, 0, 1911 }, { 9, 0, 920 }, { 9, 0, 921 }, { 9, 0, 924 },
+ { 9, 0, 946 }, { 9, 0, 959 }, { 9, 0, 963 }, { 9, 0, 970 },
+ { 9, 0, 997 }, { 9, 0, 1008 }, { 9, 0, 1017 }, { 12, 0, 795 },
+ { 12, 0, 797 }, { 12, 0, 798 }, { 12, 0, 800 }, { 12, 0, 803 },
+ { 12, 0, 811 }, { 12, 0, 820 }, { 12, 0, 821 }, { 12, 0, 839 },
+ { 12, 0, 841 }, { 12, 0, 848 }, { 12, 0, 911 }, { 12, 0, 921 },
+ { 12, 0, 922 }, { 12, 0, 925 }, { 12, 0, 937 }, { 12, 0, 944 },
+ { 12, 0, 945 }, { 12, 0, 953 }, { 15, 0, 184 }, { 15, 0, 191 },
+ { 15, 0, 199 }, { 15, 0, 237 }, { 15, 0, 240 }, { 15, 0, 243 },
+ { 15, 0, 246 }, { 18, 0, 203 }, { 21, 0, 40 }, { 21, 0, 52 },
+ { 21, 0, 57 }, { 24, 0, 23 }, { 24, 0, 28 }, { 152, 0, 30 },
+ { 134, 0, 725 }, { 145, 11, 58 }, { 133, 0, 888 }, { 137, 10, 874 },
+ { 4, 0, 711 }, { 8, 10, 774 }, { 10, 10, 670 }, { 140, 10, 51 },
+ { 144, 11, 40 }, { 6, 11, 185 }, { 7, 11, 1899 }, { 139, 11, 673 },
+ { 137, 10, 701 }, { 137, 0, 440 }, { 4, 11, 327 }, { 5, 11, 478 },
+ { 7, 11, 1332 }, { 8, 11, 753 }, { 140, 11, 227 }, { 4, 10, 127 },
+ { 5, 10, 350 }, { 6, 10, 356 }, { 8, 10, 426 }, { 9, 10, 572 },
+ { 10, 10, 247 }, { 139, 10, 312 }, { 5, 11, 1020 }, { 133, 11, 1022 },
+ { 4, 11, 103 }, { 133, 11, 401 }, { 6, 0, 1913 }, { 6, 0, 1926 },
+ { 6, 0, 1959 }, { 9, 0, 914 }, { 9, 0, 939 }, { 9, 0, 952 },
+ { 9, 0, 979 }, { 9, 0, 990 }, { 9, 0, 998 }, { 9, 0, 1003 },
+ { 9, 0, 1023 }, { 12, 0, 827 }, { 12, 0, 834 }, { 12, 0, 845 },
+ { 12, 0, 912 }, { 12, 0, 935 }, { 12, 0, 951 }, { 15, 0, 172 },
+ { 15, 0, 174 }, { 18, 0, 198 }, { 149, 0, 63 }, { 5, 0, 958 },
+ { 5, 0, 987 }, { 4, 11, 499 }, { 135, 11, 1421 }, { 7, 0, 885 },
+ { 6, 10, 59 }, { 6, 10, 1762 }, { 9, 10, 603 }, { 141, 10, 397 },
+ { 10, 11, 62 }, { 141, 11, 164 }, { 4, 0, 847 }, { 135, 0, 326 },
+ { 11, 0, 276 }, { 142, 0, 293 }, { 4, 0, 65 }, { 5, 0, 479 },
+ { 5, 0, 1004 }, { 7, 0, 1913 }, { 8, 0, 317 }, { 9, 0, 302 },
+ { 10, 0, 612 }, { 13, 0, 22 }, { 132, 11, 96 }, { 4, 0, 261 },
+ { 135, 0, 510 }, { 135, 0, 1514 }, { 6, 10, 111 }, { 7, 10, 4 },
+ { 8, 10, 163 }, { 8, 10, 776 }, { 138, 10, 566 }, { 4, 0, 291 },
+ { 9, 0, 515 }, { 12, 0, 152 }, { 12, 0, 443 }, { 13, 0, 392 },
+ { 142, 0, 357 }, { 7, 11, 399 }, { 135, 11, 1492 }, { 4, 0, 589 },
+ { 139, 0, 282 }, { 6, 11, 563 }, { 135, 10, 1994 }, { 5, 10, 297 },
+ { 135, 10, 1038 }, { 4, 0, 130 }, { 7, 0, 843 }, { 135, 0, 1562 },
+ { 5, 0, 42 }, { 5, 0, 879 }, { 7, 0, 245 }, { 7, 0, 324 },
+ { 7, 0, 1532 }, { 11, 0, 463 }, { 11, 0, 472 }, { 13, 0, 363 },
+ { 144, 0, 52 }, { 4, 0, 134 }, { 133, 0, 372 }, { 133, 0, 680 },
+ { 136, 10, 363 }, { 6, 0, 1997 }, { 8, 0, 935 }, { 136, 0, 977 },
+ { 4, 0, 810 }, { 135, 0, 1634 }, { 135, 10, 1675 }, { 7, 0, 1390 },
+ { 4, 11, 910 }, { 133, 11, 832 }, { 7, 10, 808 }, { 8, 11, 266 },
+ { 139, 11, 578 }, { 132, 0, 644 }, { 4, 0, 982 }, { 138, 0, 867 },
+ { 132, 10, 280 }, { 135, 0, 540 }, { 140, 10, 54 }, { 135, 0, 123 },
+ { 134, 0, 1978 }, { 4, 10, 421 }, { 133, 10, 548 }, { 6, 0, 623 },
+ { 136, 0, 789 }, { 4, 0, 908 }, { 5, 0, 359 }, { 5, 0, 508 },
+ { 6, 0, 1723 }, { 7, 0, 343 }, { 7, 0, 1996 }, { 135, 0, 2026 },
+ { 134, 0, 1220 }, { 4, 0, 341 }, { 135, 0, 480 }, { 6, 10, 254 },
+ { 9, 10, 109 }, { 138, 10, 103 }, { 134, 0, 888 }, { 8, 11, 528 },
+ { 137, 11, 348 }, { 7, 0, 1995 }, { 8, 0, 299 }, { 11, 0, 890 },
+ { 12, 0, 674 }, { 4, 11, 20 }, { 133, 11, 616 }, { 135, 11, 1094 },
+ { 134, 10, 1630 }, { 4, 0, 238 }, { 5, 0, 503 }, { 6, 0, 179 },
+ { 7, 0, 2003 }, { 8, 0, 381 }, { 8, 0, 473 }, { 9, 0, 149 },
+ { 10, 0, 788 }, { 15, 0, 45 }, { 15, 0, 86 }, { 20, 0, 110 },
+ { 150, 0, 57 }, { 133, 10, 671 }, { 4, 11, 26 }, { 5, 11, 429 },
+ { 6, 11, 245 }, { 7, 11, 704 }, { 7, 11, 1379 }, { 135, 11, 1474 },
+ { 4, 0, 121 }, { 5, 0, 156 }, { 5, 0, 349 }, { 9, 0, 431 },
+ { 10, 0, 605 }, { 142, 0, 342 }, { 7, 11, 943 }, { 139, 11, 614 },
+ { 132, 10, 889 }, { 132, 11, 621 }, { 7, 10, 1382 }, { 7, 11, 1382 },
+ { 135, 10, 1910 }, { 132, 10, 627 }, { 133, 10, 775 }, { 133, 11, 542 },
+ { 133, 11, 868 }, { 136, 11, 433 }, { 6, 0, 1373 }, { 7, 0, 1011 },
+ { 11, 10, 362 }, { 11, 10, 948 }, { 140, 10, 388 }, { 6, 0, 80 },
+ { 7, 0, 173 }, { 9, 0, 547 }, { 10, 0, 730 }, { 14, 0, 18 },
+ { 22, 0, 39 }, { 135, 11, 1495 }, { 6, 0, 1694 }, { 135, 0, 1974 },
+ { 140, 0, 196 }, { 4, 0, 923 }, { 6, 0, 507 }, { 6, 0, 1711 },
+ { 7, 10, 451 }, { 8, 10, 389 }, { 12, 10, 490 }, { 13, 10, 16 },
+ { 13, 10, 215 }, { 13, 10, 351 }, { 18, 10, 132 }, { 147, 10, 125 },
+ { 6, 0, 646 }, { 134, 0, 1047 }, { 135, 10, 841 }, { 136, 10, 566 },
+ { 6, 0, 1611 }, { 135, 0, 1214 }, { 139, 0, 926 }, { 132, 11, 525 },
+ { 132, 0, 595 }, { 5, 0, 240 }, { 6, 0, 459 }, { 7, 0, 12 },
+ { 7, 0, 114 }, { 7, 0, 949 }, { 7, 0, 1753 }, { 7, 0, 1805 },
+ { 8, 0, 658 }, { 9, 0, 1 }, { 11, 0, 959 }, { 141, 0, 446 },
+ { 5, 10, 912 }, { 134, 10, 1695 }, { 132, 0, 446 }, { 7, 11, 62 },
+ { 12, 11, 45 }, { 147, 11, 112 }, { 5, 10, 236 }, { 6, 10, 572 },
+ { 8, 10, 492 }, { 11, 10, 618 }, { 144, 10, 56 }, { 5, 10, 190 },
+ { 136, 10, 318 }, { 135, 10, 1376 }, { 4, 11, 223 }, { 6, 11, 359 },
+ { 11, 11, 3 }, { 13, 11, 108 }, { 14, 11, 89 }, { 144, 11, 22 },
+ { 132, 11, 647 }, { 134, 0, 490 }, { 134, 0, 491 }, { 134, 0, 1584 },
+ { 135, 11, 685 }, { 138, 11, 220 }, { 7, 0, 250 }, { 136, 0, 507 },
+ { 132, 0, 158 }, { 4, 0, 140 }, { 7, 0, 362 }, { 8, 0, 209 },
+ { 9, 0, 10 }, { 9, 0, 160 }, { 9, 0, 503 }, { 9, 0, 614 },
+ { 10, 0, 689 }, { 11, 0, 327 }, { 11, 0, 553 }, { 11, 0, 725 },
+ { 11, 0, 767 }, { 12, 0, 252 }, { 12, 0, 583 }, { 13, 0, 192 },
+ { 14, 0, 269 }, { 14, 0, 356 }, { 148, 0, 50 }, { 19, 0, 1 },
+ { 19, 0, 26 }, { 150, 0, 9 }, { 132, 11, 109 }, { 6, 0, 228 },
+ { 7, 0, 1341 }, { 9, 0, 408 }, { 138, 0, 343 }, { 4, 0, 373 },
+ { 5, 0, 283 }, { 6, 0, 480 }, { 7, 0, 609 }, { 10, 0, 860 },
+ { 138, 0, 878 }, { 6, 0, 779 }, { 134, 0, 1209 }, { 4, 0, 557 },
+ { 7, 11, 263 }, { 7, 11, 628 }, { 136, 11, 349 }, { 132, 0, 548 },
+ { 7, 0, 197 }, { 8, 0, 142 }, { 8, 0, 325 }, { 9, 0, 150 },
+ { 9, 0, 596 }, { 10, 0, 350 }, { 10, 0, 353 }, { 11, 0, 74 },
+ { 11, 0, 315 }, { 12, 0, 662 }, { 12, 0, 681 }, { 14, 0, 423 },
+ { 143, 0, 141 }, { 4, 11, 40 }, { 10, 11, 67 }, { 11, 11, 117 },
+ { 11, 11, 768 }, { 139, 11, 935 }, { 7, 11, 992 }, { 8, 11, 301 },
+ { 9, 11, 722 }, { 12, 11, 63 }, { 13, 11, 29 }, { 14, 11, 161 },
+ { 143, 11, 18 }, { 6, 0, 1490 }, { 138, 11, 532 }, { 5, 0, 580 },
+ { 7, 0, 378 }, { 7, 0, 674 }, { 7, 0, 1424 }, { 15, 0, 83 },
+ { 16, 0, 11 }, { 15, 11, 83 }, { 144, 11, 11 }, { 6, 0, 1057 },
+ { 6, 0, 1335 }, { 10, 0, 316 }, { 7, 10, 85 }, { 7, 10, 247 },
+ { 8, 10, 585 }, { 138, 10, 163 }, { 4, 0, 169 }, { 5, 0, 83 },
+ { 6, 0, 399 }, { 6, 0, 579 }, { 6, 0, 1513 }, { 7, 0, 692 },
+ { 7, 0, 846 }, { 7, 0, 1015 }, { 7, 0, 1799 }, { 8, 0, 403 },
+ { 9, 0, 394 }, { 10, 0, 133 }, { 12, 0, 4 }, { 12, 0, 297 },
+ { 12, 0, 452 }, { 16, 0, 81 }, { 18, 0, 25 }, { 21, 0, 14 },
+ { 22, 0, 12 }, { 151, 0, 18 }, { 134, 0, 1106 }, { 7, 0, 1546 },
+ { 11, 0, 299 }, { 142, 0, 407 }, { 134, 0, 1192 }, { 132, 0, 177 },
+ { 5, 0, 411 }, { 135, 0, 653 }, { 7, 0, 439 }, { 10, 0, 727 },
+ { 11, 0, 260 }, { 139, 0, 684 }, { 138, 10, 145 }, { 147, 10, 83 },
+ { 5, 0, 208 }, { 7, 0, 753 }, { 135, 0, 1528 }, { 137, 11, 617 },
+ { 135, 10, 1922 }, { 135, 11, 825 }, { 11, 0, 422 }, { 13, 0, 389 },
+ { 4, 10, 124 }, { 10, 10, 457 }, { 11, 10, 121 }, { 11, 10, 169 },
+ { 11, 10, 870 }, { 12, 10, 214 }, { 14, 10, 187 }, { 143, 10, 77 },
+ { 11, 0, 615 }, { 15, 0, 58 }, { 11, 11, 615 }, { 143, 11, 58 },
+ { 9, 0, 618 }, { 138, 0, 482 }, { 6, 0, 1952 }, { 6, 0, 1970 },
+ { 142, 0, 505 }, { 7, 10, 1193 }, { 135, 11, 1838 }, { 133, 0, 242 },
+ { 135, 10, 1333 }, { 6, 10, 107 }, { 7, 10, 638 }, { 7, 10, 1632 },
+ { 137, 10, 396 }, { 133, 0, 953 }, { 5, 10, 370 }, { 134, 10, 1756 },
+ { 5, 11, 28 }, { 6, 11, 204 }, { 10, 11, 320 }, { 10, 11, 583 },
+ { 13, 11, 502 }, { 14, 11, 72 }, { 14, 11, 274 }, { 14, 11, 312 },
+ { 14, 11, 344 }, { 15, 11, 159 }, { 16, 11, 62 }, { 16, 11, 69 },
+ { 17, 11, 30 }, { 18, 11, 42 }, { 18, 11, 53 }, { 18, 11, 84 },
+ { 18, 11, 140 }, { 19, 11, 68 }, { 19, 11, 85 }, { 20, 11, 5 },
+ { 20, 11, 45 }, { 20, 11, 101 }, { 22, 11, 7 }, { 150, 11, 20 },
+ { 4, 11, 558 }, { 6, 11, 390 }, { 7, 11, 162 }, { 7, 11, 689 },
+ { 9, 11, 360 }, { 138, 11, 653 }, { 11, 0, 802 }, { 141, 0, 67 },
+ { 133, 10, 204 }, { 133, 0, 290 }, { 5, 10, 970 }, { 134, 10, 1706 },
+ { 132, 0, 380 }, { 5, 0, 52 }, { 7, 0, 277 }, { 9, 0, 368 },
+ { 139, 0, 791 }, { 5, 11, 856 }, { 6, 11, 1672 }, { 6, 11, 1757 },
+ { 6, 11, 1781 }, { 7, 11, 1150 }, { 7, 11, 1425 }, { 7, 11, 1453 },
+ { 140, 11, 513 }, { 5, 11, 92 }, { 7, 10, 3 }, { 10, 11, 736 },
+ { 140, 11, 102 }, { 4, 0, 112 }, { 5, 0, 653 }, { 5, 10, 483 },
+ { 5, 10, 685 }, { 6, 10, 489 }, { 7, 10, 1204 }, { 136, 10, 394 },
+ { 132, 10, 921 }, { 6, 0, 1028 }, { 133, 10, 1007 }, { 5, 11, 590 },
+ { 9, 11, 213 }, { 145, 11, 91 }, { 135, 10, 1696 }, { 10, 0, 138 },
+ { 139, 0, 476 }, { 5, 0, 725 }, { 5, 0, 727 }, { 135, 0, 1811 },
+ { 4, 0, 979 }, { 6, 0, 1821 }, { 6, 0, 1838 }, { 8, 0, 876 },
+ { 8, 0, 883 }, { 8, 0, 889 }, { 8, 0, 893 }, { 8, 0, 895 },
+ { 10, 0, 934 }, { 12, 0, 720 }, { 14, 0, 459 }, { 148, 0, 123 },
+ { 135, 11, 551 }, { 4, 0, 38 }, { 6, 0, 435 }, { 7, 0, 307 },
+ { 7, 0, 999 }, { 7, 0, 1481 }, { 7, 0, 1732 }, { 7, 0, 1738 },
+ { 8, 0, 371 }, { 9, 0, 414 }, { 11, 0, 316 }, { 12, 0, 52 },
+ { 13, 0, 420 }, { 147, 0, 100 }, { 135, 0, 1296 }, { 132, 10, 712 },
+ { 134, 10, 1629 }, { 133, 0, 723 }, { 134, 0, 651 }, { 136, 11, 191 },
+ { 9, 11, 791 }, { 10, 11, 93 }, { 11, 11, 301 }, { 16, 11, 13 },
+ { 17, 11, 23 }, { 18, 11, 135 }, { 19, 11, 12 }, { 20, 11, 1 },
+ { 20, 11, 12 }, { 148, 11, 14 }, { 136, 11, 503 }, { 6, 11, 466 },
+ { 135, 11, 671 }, { 6, 0, 1200 }, { 134, 0, 1330 }, { 135, 0, 1255 },
+ { 134, 0, 986 }, { 5, 0, 109 }, { 6, 0, 1784 }, { 7, 0, 1895 },
+ { 12, 0, 296 }, { 140, 0, 302 }, { 135, 11, 983 }, { 133, 10, 485 },
+ { 134, 0, 660 }, { 134, 0, 800 }, { 5, 0, 216 }, { 5, 0, 294 },
+ { 6, 0, 591 }, { 7, 0, 1879 }, { 9, 0, 141 }, { 9, 0, 270 },
+ { 9, 0, 679 }, { 10, 0, 159 }, { 11, 0, 197 }, { 11, 0, 438 },
+ { 12, 0, 538 }, { 12, 0, 559 }, { 14, 0, 144 }, { 14, 0, 167 },
+ { 15, 0, 67 }, { 4, 10, 285 }, { 5, 10, 317 }, { 6, 10, 301 },
+ { 7, 10, 7 }, { 8, 10, 153 }, { 10, 10, 766 }, { 11, 10, 468 },
+ { 12, 10, 467 }, { 141, 10, 143 }, { 136, 0, 945 }, { 134, 0, 1090 },
+ { 137, 0, 81 }, { 12, 11, 468 }, { 19, 11, 96 }, { 148, 11, 24 },
+ { 134, 0, 391 }, { 138, 11, 241 }, { 7, 0, 322 }, { 136, 0, 249 },
+ { 134, 0, 1412 }, { 135, 11, 795 }, { 5, 0, 632 }, { 138, 0, 526 },
+ { 136, 10, 819 }, { 6, 0, 144 }, { 7, 0, 948 }, { 7, 0, 1042 },
+ { 8, 0, 235 }, { 8, 0, 461 }, { 9, 0, 453 }, { 9, 0, 796 },
+ { 10, 0, 354 }, { 17, 0, 77 }, { 135, 11, 954 }, { 139, 10, 917 },
+ { 6, 0, 940 }, { 134, 0, 1228 }, { 4, 0, 362 }, { 7, 0, 52 },
+ { 135, 0, 303 }, { 6, 11, 549 }, { 8, 11, 34 }, { 8, 11, 283 },
+ { 9, 11, 165 }, { 138, 11, 475 }, { 7, 11, 370 }, { 7, 11, 1007 },
+ { 7, 11, 1177 }, { 135, 11, 1565 }, { 5, 11, 652 }, { 5, 11, 701 },
+ { 135, 11, 449 }, { 5, 0, 196 }, { 6, 0, 486 }, { 7, 0, 212 },
+ { 8, 0, 309 }, { 136, 0, 346 }, { 6, 10, 1719 }, { 6, 10, 1735 },
+ { 7, 10, 2016 }, { 7, 10, 2020 }, { 8, 10, 837 }, { 137, 10, 852 },
+ { 6, 11, 159 }, { 6, 11, 364 }, { 7, 11, 516 }, { 7, 11, 1439 },
+ { 137, 11, 518 }, { 135, 0, 1912 }, { 135, 0, 1290 }, { 132, 0, 686 },
+ { 141, 11, 151 }, { 138, 0, 625 }, { 136, 0, 706 }, { 138, 10, 568 },
+ { 139, 0, 412 }, { 4, 0, 30 }, { 133, 0, 43 }, { 8, 10, 67 },
+ { 138, 10, 419 }, { 7, 0, 967 }, { 141, 0, 11 }, { 12, 0, 758 },
+ { 14, 0, 441 }, { 142, 0, 462 }, { 10, 10, 657 }, { 14, 10, 297 },
+ { 142, 10, 361 }, { 139, 10, 729 }, { 4, 0, 220 }, { 135, 0, 1535 },
+ { 7, 11, 501 }, { 9, 11, 111 }, { 10, 11, 141 }, { 11, 11, 332 },
+ { 13, 11, 43 }, { 13, 11, 429 }, { 14, 11, 130 }, { 14, 11, 415 },
+ { 145, 11, 102 }, { 4, 0, 950 }, { 6, 0, 1859 }, { 7, 0, 11 },
+ { 8, 0, 873 }, { 12, 0, 710 }, { 12, 0, 718 }, { 12, 0, 748 },
+ { 12, 0, 765 }, { 148, 0, 124 }, { 5, 11, 149 }, { 5, 11, 935 },
+ { 136, 11, 233 }, { 142, 11, 291 }, { 134, 0, 1579 }, { 7, 0, 890 },
+ { 8, 10, 51 }, { 9, 10, 868 }, { 10, 10, 833 }, { 12, 10, 481 },
+ { 12, 10, 570 }, { 148, 10, 106 }, { 141, 0, 2 }, { 132, 10, 445 },
+ { 136, 11, 801 }, { 135, 0, 1774 }, { 7, 0, 1725 }, { 138, 0, 393 },
+ { 5, 0, 263 }, { 134, 0, 414 }, { 132, 11, 322 }, { 133, 10, 239 },
+ { 7, 0, 456 }, { 7, 10, 1990 }, { 8, 10, 130 }, { 139, 10, 720 },
+ { 137, 0, 818 }, { 5, 10, 123 }, { 6, 10, 530 }, { 7, 10, 348 },
+ { 135, 10, 1419 }, { 135, 10, 2024 }, { 6, 0, 178 }, { 6, 0, 1750 },
+ { 8, 0, 251 }, { 9, 0, 690 }, { 10, 0, 155 }, { 10, 0, 196 },
+ { 10, 0, 373 }, { 11, 0, 698 }, { 13, 0, 155 }, { 148, 0, 93 },
+ { 5, 0, 97 }, { 137, 0, 393 }, { 134, 0, 674 }, { 11, 0, 223 },
+ { 140, 0, 168 }, { 132, 10, 210 }, { 139, 11, 464 }, { 6, 0, 1639 },
+ { 146, 0, 159 }, { 139, 11, 2 }, { 7, 0, 934 }, { 8, 0, 647 },
+ { 17, 0, 97 }, { 19, 0, 59 }, { 150, 0, 2 }, { 132, 0, 191 },
+ { 5, 0, 165 }, { 9, 0, 346 }, { 10, 0, 655 }, { 11, 0, 885 },
+ { 4, 10, 430 }, { 135, 11, 357 }, { 133, 0, 877 }, { 5, 10, 213 },
+ { 133, 11, 406 }, { 8, 0, 128 }, { 139, 0, 179 }, { 6, 11, 69 },
+ { 135, 11, 117 }, { 135, 0, 1297 }, { 11, 11, 43 }, { 13, 11, 72 },
+ { 141, 11, 142 }, { 135, 11, 1830 }, { 142, 0, 164 }, { 5, 0, 57 },
+ { 6, 0, 101 }, { 6, 0, 586 }, { 6, 0, 1663 }, { 7, 0, 132 },
+ { 7, 0, 1154 }, { 7, 0, 1415 }, { 7, 0, 1507 }, { 12, 0, 493 },
+ { 15, 0, 105 }, { 151, 0, 15 }, { 5, 0, 459 }, { 7, 0, 1073 },
+ { 8, 0, 241 }, { 136, 0, 334 }, { 133, 11, 826 }, { 133, 10, 108 },
+ { 5, 10, 219 }, { 10, 11, 132 }, { 11, 11, 191 }, { 11, 11, 358 },
+ { 139, 11, 460 }, { 6, 0, 324 }, { 6, 0, 520 }, { 7, 0, 338 },
+ { 7, 0, 1729 }, { 8, 0, 228 }, { 139, 0, 750 }, { 21, 0, 30 },
+ { 22, 0, 53 }, { 4, 10, 193 }, { 5, 10, 916 }, { 7, 10, 364 },
+ { 10, 10, 398 }, { 10, 10, 726 }, { 11, 10, 317 }, { 11, 10, 626 },
+ { 12, 10, 142 }, { 12, 10, 288 }, { 12, 10, 678 }, { 13, 10, 313 },
+ { 15, 10, 113 }, { 146, 10, 114 }, { 6, 11, 110 }, { 135, 11, 1681 },
+ { 135, 0, 910 }, { 6, 10, 241 }, { 7, 10, 907 }, { 8, 10, 832 },
+ { 9, 10, 342 }, { 10, 10, 729 }, { 11, 10, 284 }, { 11, 10, 445 },
+ { 11, 10, 651 }, { 11, 10, 863 }, { 13, 10, 398 }, { 146, 10, 99 },
+ { 7, 0, 705 }, { 9, 0, 734 }, { 5, 11, 1000 }, { 7, 11, 733 },
+ { 137, 11, 583 }, { 4, 0, 73 }, { 6, 0, 612 }, { 7, 0, 927 },
+ { 7, 0, 1822 }, { 8, 0, 217 }, { 9, 0, 765 }, { 9, 0, 766 },
+ { 10, 0, 408 }, { 11, 0, 51 }, { 11, 0, 793 }, { 12, 0, 266 },
+ { 15, 0, 158 }, { 20, 0, 89 }, { 150, 0, 32 }, { 7, 0, 1330 },
+ { 4, 11, 297 }, { 6, 11, 529 }, { 7, 11, 152 }, { 7, 11, 713 },
+ { 7, 11, 1845 }, { 8, 11, 710 }, { 8, 11, 717 }, { 140, 11, 639 },
+ { 5, 0, 389 }, { 136, 0, 636 }, { 134, 0, 1409 }, { 4, 10, 562 },
+ { 9, 10, 254 }, { 139, 10, 879 }, { 134, 0, 893 }, { 132, 10, 786 },
+ { 4, 11, 520 }, { 135, 11, 575 }, { 136, 0, 21 }, { 140, 0, 721 },
+ { 136, 0, 959 }, { 7, 11, 1428 }, { 7, 11, 1640 }, { 9, 11, 169 },
+ { 9, 11, 182 }, { 9, 11, 367 }, { 9, 11, 478 }, { 9, 11, 506 },
+ { 9, 11, 551 }, { 9, 11, 648 }, { 9, 11, 651 }, { 9, 11, 697 },
+ { 9, 11, 705 }, { 9, 11, 725 }, { 9, 11, 787 }, { 9, 11, 794 },
+ { 10, 11, 198 }, { 10, 11, 214 }, { 10, 11, 267 }, { 10, 11, 275 },
+ { 10, 11, 456 }, { 10, 11, 551 }, { 10, 11, 561 }, { 10, 11, 613 },
+ { 10, 11, 627 }, { 10, 11, 668 }, { 10, 11, 675 }, { 10, 11, 691 },
+ { 10, 11, 695 }, { 10, 11, 707 }, { 10, 11, 715 }, { 11, 11, 183 },
+ { 11, 11, 201 }, { 11, 11, 244 }, { 11, 11, 262 }, { 11, 11, 352 },
+ { 11, 11, 439 }, { 11, 11, 493 }, { 11, 11, 572 }, { 11, 11, 591 },
+ { 11, 11, 608 }, { 11, 11, 611 }, { 11, 11, 646 }, { 11, 11, 674 },
+ { 11, 11, 711 }, { 11, 11, 751 }, { 11, 11, 761 }, { 11, 11, 776 },
+ { 11, 11, 785 }, { 11, 11, 850 }, { 11, 11, 853 }, { 11, 11, 862 },
+ { 11, 11, 865 }, { 11, 11, 868 }, { 11, 11, 898 }, { 11, 11, 902 },
+ { 11, 11, 903 }, { 11, 11, 910 }, { 11, 11, 932 }, { 11, 11, 942 },
+ { 11, 11, 957 }, { 11, 11, 967 }, { 11, 11, 972 }, { 12, 11, 148 },
+ { 12, 11, 195 }, { 12, 11, 220 }, { 12, 11, 237 }, { 12, 11, 318 },
+ { 12, 11, 339 }, { 12, 11, 393 }, { 12, 11, 445 }, { 12, 11, 450 },
+ { 12, 11, 474 }, { 12, 11, 509 }, { 12, 11, 533 }, { 12, 11, 591 },
+ { 12, 11, 594 }, { 12, 11, 597 }, { 12, 11, 621 }, { 12, 11, 633 },
+ { 12, 11, 642 }, { 13, 11, 59 }, { 13, 11, 60 }, { 13, 11, 145 },
+ { 13, 11, 239 }, { 13, 11, 250 }, { 13, 11, 273 }, { 13, 11, 329 },
+ { 13, 11, 344 }, { 13, 11, 365 }, { 13, 11, 372 }, { 13, 11, 387 },
+ { 13, 11, 403 }, { 13, 11, 414 }, { 13, 11, 456 }, { 13, 11, 478 },
+ { 13, 11, 483 }, { 13, 11, 489 }, { 14, 11, 55 }, { 14, 11, 57 },
+ { 14, 11, 81 }, { 14, 11, 90 }, { 14, 11, 148 }, { 14, 11, 239 },
+ { 14, 11, 266 }, { 14, 11, 321 }, { 14, 11, 326 }, { 14, 11, 327 },
+ { 14, 11, 330 }, { 14, 11, 347 }, { 14, 11, 355 }, { 14, 11, 401 },
+ { 14, 11, 411 }, { 14, 11, 414 }, { 14, 11, 416 }, { 14, 11, 420 },
+ { 15, 11, 61 }, { 15, 11, 74 }, { 15, 11, 87 }, { 15, 11, 88 },
+ { 15, 11, 94 }, { 15, 11, 96 }, { 15, 11, 116 }, { 15, 11, 149 },
+ { 15, 11, 154 }, { 16, 11, 50 }, { 16, 11, 63 }, { 16, 11, 73 },
+ { 17, 11, 2 }, { 17, 11, 66 }, { 17, 11, 92 }, { 17, 11, 103 },
+ { 17, 11, 112 }, { 18, 11, 50 }, { 18, 11, 54 }, { 18, 11, 82 },
+ { 18, 11, 86 }, { 18, 11, 90 }, { 18, 11, 111 }, { 18, 11, 115 },
+ { 18, 11, 156 }, { 19, 11, 40 }, { 19, 11, 79 }, { 20, 11, 78 },
+ { 149, 11, 22 }, { 137, 11, 170 }, { 134, 0, 1433 }, { 135, 11, 1307 },
+ { 139, 11, 411 }, { 5, 0, 189 }, { 7, 0, 442 }, { 7, 0, 443 },
+ { 8, 0, 281 }, { 12, 0, 174 }, { 141, 0, 261 }, { 6, 10, 216 },
+ { 7, 10, 901 }, { 7, 10, 1343 }, { 136, 10, 493 }, { 5, 11, 397 },
+ { 6, 11, 154 }, { 7, 10, 341 }, { 7, 11, 676 }, { 8, 11, 443 },
+ { 8, 11, 609 }, { 9, 11, 24 }, { 9, 11, 325 }, { 10, 11, 35 },
+ { 11, 10, 219 }, { 11, 11, 535 }, { 11, 11, 672 }, { 11, 11, 1018 },
+ { 12, 11, 637 }, { 144, 11, 30 }, { 6, 0, 2 }, { 7, 0, 191 },
+ { 7, 0, 446 }, { 7, 0, 1262 }, { 7, 0, 1737 }, { 8, 0, 22 },
+ { 8, 0, 270 }, { 8, 0, 612 }, { 9, 0, 4 }, { 9, 0, 312 },
+ { 9, 0, 436 }, { 9, 0, 626 }, { 10, 0, 216 }, { 10, 0, 311 },
+ { 10, 0, 521 }, { 10, 0, 623 }, { 11, 0, 72 }, { 11, 0, 330 },
+ { 11, 0, 455 }, { 12, 0, 321 }, { 12, 0, 504 }, { 12, 0, 530 },
+ { 12, 0, 543 }, { 13, 0, 17 }, { 13, 0, 156 }, { 13, 0, 334 },
+ { 14, 0, 131 }, { 17, 0, 60 }, { 148, 0, 64 }, { 7, 0, 354 },
+ { 10, 0, 410 }, { 139, 0, 815 }, { 139, 10, 130 }, { 7, 10, 1734 },
+ { 137, 11, 631 }, { 12, 0, 425 }, { 15, 0, 112 }, { 10, 10, 115 },
+ { 11, 10, 420 }, { 13, 10, 404 }, { 14, 10, 346 }, { 143, 10, 54 },
+ { 6, 0, 60 }, { 6, 0, 166 }, { 7, 0, 374 }, { 7, 0, 670 },
+ { 7, 0, 1327 }, { 8, 0, 411 }, { 8, 0, 435 }, { 9, 0, 653 },
+ { 9, 0, 740 }, { 10, 0, 385 }, { 11, 0, 222 }, { 11, 0, 324 },
+ { 11, 0, 829 }, { 140, 0, 611 }, { 7, 0, 1611 }, { 13, 0, 14 },
+ { 15, 0, 44 }, { 19, 0, 13 }, { 148, 0, 76 }, { 133, 11, 981 },
+ { 4, 11, 56 }, { 7, 11, 1791 }, { 8, 11, 607 }, { 8, 11, 651 },
+ { 11, 11, 465 }, { 11, 11, 835 }, { 12, 11, 337 }, { 141, 11, 480 },
+ { 6, 0, 1478 }, { 5, 10, 1011 }, { 136, 10, 701 }, { 139, 0, 596 },
+ { 5, 0, 206 }, { 134, 0, 398 }, { 4, 10, 54 }, { 5, 10, 666 },
+ { 7, 10, 1039 }, { 7, 10, 1130 }, { 9, 10, 195 }, { 138, 10, 302 },
+ { 7, 0, 50 }, { 9, 11, 158 }, { 138, 11, 411 }, { 135, 11, 1120 },
+ { 6, 0, 517 }, { 7, 0, 1159 }, { 10, 0, 621 }, { 11, 0, 192 },
+ { 134, 10, 1669 }, { 4, 0, 592 }, { 6, 0, 600 }, { 135, 0, 1653 },
+ { 10, 0, 223 }, { 139, 0, 645 }, { 136, 11, 139 }, { 7, 0, 64 },
+ { 136, 0, 245 }, { 142, 0, 278 }, { 6, 11, 622 }, { 135, 11, 1030 },
+ { 136, 0, 604 }, { 134, 0, 1502 }, { 138, 0, 265 }, { 141, 11, 168 },
+ { 7, 0, 1763 }, { 140, 0, 310 }, { 7, 10, 798 }, { 139, 11, 719 },
+ { 7, 11, 160 }, { 10, 11, 624 }, { 142, 11, 279 }, { 132, 11, 363 },
+ { 7, 10, 122 }, { 9, 10, 259 }, { 10, 10, 84 }, { 11, 10, 470 },
+ { 12, 10, 541 }, { 141, 10, 379 }, { 5, 0, 129 }, { 6, 0, 61 },
+ { 135, 0, 947 }, { 134, 0, 1356 }, { 135, 11, 1191 }, { 13, 0, 505 },
+ { 141, 0, 506 }, { 11, 0, 1000 }, { 5, 10, 82 }, { 5, 10, 131 },
+ { 7, 10, 1755 }, { 8, 10, 31 }, { 9, 10, 168 }, { 9, 10, 764 },
+ { 139, 10, 869 }, { 134, 0, 966 }, { 134, 10, 605 }, { 134, 11, 292 },
+ { 5, 11, 177 }, { 6, 11, 616 }, { 7, 11, 827 }, { 9, 11, 525 },
+ { 138, 11, 656 }, { 135, 11, 1486 }, { 138, 11, 31 }, { 5, 10, 278 },
+ { 137, 10, 68 }, { 4, 10, 163 }, { 5, 10, 201 }, { 5, 10, 307 },
+ { 5, 10, 310 }, { 6, 10, 335 }, { 7, 10, 284 }, { 136, 10, 165 },
+ { 6, 0, 839 }, { 135, 10, 1660 }, { 136, 10, 781 }, { 6, 10, 33 },
+ { 135, 10, 1244 }, { 133, 0, 637 }, { 4, 11, 161 }, { 133, 11, 631 },
+ { 137, 0, 590 }, { 7, 10, 1953 }, { 136, 10, 720 }, { 5, 0, 280 },
+ { 7, 0, 1226 }, { 138, 10, 203 }, { 134, 0, 1386 }, { 5, 0, 281 },
+ { 6, 0, 1026 }, { 6, 10, 326 }, { 7, 10, 677 }, { 137, 10, 425 },
+ { 7, 11, 1557 }, { 135, 11, 1684 }, { 135, 0, 1064 }, { 9, 11, 469 },
+ { 9, 11, 709 }, { 12, 11, 512 }, { 14, 11, 65 }, { 145, 11, 12 },
+ { 134, 0, 917 }, { 10, 11, 229 }, { 11, 11, 73 }, { 11, 11, 376 },
+ { 139, 11, 433 }, { 7, 0, 555 }, { 9, 0, 192 }, { 13, 0, 30 },
+ { 13, 0, 49 }, { 15, 0, 150 }, { 16, 0, 76 }, { 20, 0, 52 },
+ { 7, 10, 1316 }, { 7, 10, 1412 }, { 7, 10, 1839 }, { 9, 10, 589 },
+ { 11, 10, 241 }, { 11, 10, 676 }, { 11, 10, 811 }, { 11, 10, 891 },
+ { 12, 10, 140 }, { 12, 10, 346 }, { 12, 10, 479 }, { 13, 10, 381 },
+ { 14, 10, 188 }, { 146, 10, 30 }, { 149, 0, 15 }, { 6, 0, 1882 },
+ { 6, 0, 1883 }, { 6, 0, 1897 }, { 9, 0, 945 }, { 9, 0, 1014 },
+ { 9, 0, 1020 }, { 12, 0, 823 }, { 12, 0, 842 }, { 12, 0, 866 },
+ { 12, 0, 934 }, { 15, 0, 242 }, { 146, 0, 208 }, { 6, 0, 965 },
+ { 134, 0, 1499 }, { 7, 0, 33 }, { 7, 0, 120 }, { 8, 0, 489 },
+ { 9, 0, 319 }, { 10, 0, 820 }, { 11, 0, 1004 }, { 12, 0, 379 },
+ { 12, 0, 679 }, { 13, 0, 117 }, { 13, 0, 412 }, { 14, 0, 25 },
+ { 15, 0, 52 }, { 15, 0, 161 }, { 16, 0, 47 }, { 149, 0, 2 },
+ { 6, 11, 558 }, { 7, 11, 651 }, { 8, 11, 421 }, { 9, 11, 0 },
+ { 138, 11, 34 }, { 4, 0, 937 }, { 5, 0, 801 }, { 7, 0, 473 },
+ { 5, 10, 358 }, { 7, 10, 1184 }, { 10, 10, 662 }, { 13, 10, 212 },
+ { 13, 10, 304 }, { 13, 10, 333 }, { 145, 10, 98 }, { 132, 0, 877 },
+ { 6, 0, 693 }, { 134, 0, 824 }, { 132, 0, 365 }, { 7, 11, 1832 },
+ { 138, 11, 374 }, { 5, 0, 7 }, { 139, 0, 774 }, { 4, 0, 734 },
+ { 5, 0, 662 }, { 134, 0, 430 }, { 4, 0, 746 }, { 135, 0, 1090 },
+ { 5, 0, 360 }, { 8, 0, 237 }, { 10, 0, 231 }, { 147, 0, 124 },
+ { 138, 11, 348 }, { 6, 11, 6 }, { 7, 11, 81 }, { 7, 11, 771 },
+ { 7, 11, 1731 }, { 9, 11, 405 }, { 138, 11, 421 }, { 6, 0, 740 },
+ { 137, 0, 822 }, { 133, 10, 946 }, { 7, 0, 1485 }, { 136, 0, 929 },
+ { 7, 10, 411 }, { 8, 10, 631 }, { 9, 10, 323 }, { 10, 10, 355 },
+ { 11, 10, 491 }, { 12, 10, 143 }, { 12, 10, 402 }, { 13, 10, 73 },
+ { 14, 10, 408 }, { 15, 10, 107 }, { 146, 10, 71 }, { 135, 10, 590 },
+ { 5, 11, 881 }, { 133, 11, 885 }, { 150, 11, 25 }, { 4, 0, 852 },
+ { 5, 11, 142 }, { 134, 11, 546 }, { 7, 10, 1467 }, { 8, 10, 328 },
+ { 10, 10, 544 }, { 11, 10, 955 }, { 13, 10, 320 }, { 145, 10, 83 },
+ { 9, 0, 17 }, { 10, 0, 291 }, { 11, 10, 511 }, { 13, 10, 394 },
+ { 14, 10, 298 }, { 14, 10, 318 }, { 146, 10, 103 }, { 5, 11, 466 },
+ { 11, 11, 571 }, { 12, 11, 198 }, { 13, 11, 283 }, { 14, 11, 186 },
+ { 15, 11, 21 }, { 143, 11, 103 }, { 134, 0, 1001 }, { 4, 11, 185 },
+ { 5, 11, 257 }, { 5, 11, 839 }, { 5, 11, 936 }, { 7, 11, 171 },
+ { 9, 11, 399 }, { 10, 11, 258 }, { 10, 11, 395 }, { 10, 11, 734 },
+ { 11, 11, 1014 }, { 12, 11, 23 }, { 13, 11, 350 }, { 14, 11, 150 },
+ { 147, 11, 6 }, { 143, 0, 35 }, { 132, 0, 831 }, { 5, 10, 835 },
+ { 134, 10, 483 }, { 4, 0, 277 }, { 5, 0, 608 }, { 6, 0, 493 },
+ { 7, 0, 457 }, { 12, 0, 384 }, { 7, 11, 404 }, { 7, 11, 1377 },
+ { 7, 11, 1430 }, { 7, 11, 2017 }, { 8, 11, 149 }, { 8, 11, 239 },
+ { 8, 11, 512 }, { 8, 11, 793 }, { 8, 11, 818 }, { 9, 11, 474 },
+ { 9, 11, 595 }, { 10, 11, 122 }, { 10, 11, 565 }, { 10, 11, 649 },
+ { 10, 11, 783 }, { 11, 11, 239 }, { 11, 11, 295 }, { 11, 11, 447 },
+ { 11, 11, 528 }, { 11, 11, 639 }, { 11, 11, 800 }, { 11, 11, 936 },
+ { 12, 11, 25 }, { 12, 11, 73 }, { 12, 11, 77 }, { 12, 11, 157 },
+ { 12, 11, 316 }, { 12, 11, 390 }, { 12, 11, 391 }, { 12, 11, 394 },
+ { 12, 11, 395 }, { 12, 11, 478 }, { 12, 11, 503 }, { 12, 11, 592 },
+ { 12, 11, 680 }, { 13, 11, 50 }, { 13, 11, 53 }, { 13, 11, 132 },
+ { 13, 11, 198 }, { 13, 11, 275 }, { 13, 11, 322 }, { 13, 11, 415 },
+ { 14, 11, 71 }, { 14, 11, 257 }, { 14, 11, 395 }, { 15, 11, 71 },
+ { 15, 11, 136 }, { 17, 11, 123 }, { 18, 11, 93 }, { 147, 11, 58 },
+ { 134, 0, 1351 }, { 7, 0, 27 }, { 135, 0, 316 }, { 136, 11, 712 },
+ { 136, 0, 984 }, { 133, 0, 552 }, { 137, 0, 264 }, { 132, 0, 401 },
+ { 6, 0, 710 }, { 6, 0, 1111 }, { 134, 0, 1343 }, { 134, 0, 1211 },
+ { 9, 0, 543 }, { 10, 0, 524 }, { 11, 0, 108 }, { 11, 0, 653 },
+ { 12, 0, 524 }, { 13, 0, 123 }, { 14, 0, 252 }, { 16, 0, 18 },
+ { 19, 0, 38 }, { 20, 0, 26 }, { 20, 0, 65 }, { 21, 0, 3 },
+ { 151, 0, 11 }, { 4, 0, 205 }, { 5, 0, 623 }, { 7, 0, 104 },
+ { 8, 0, 519 }, { 137, 0, 716 }, { 132, 10, 677 }, { 4, 11, 377 },
+ { 152, 11, 13 }, { 135, 11, 1673 }, { 7, 0, 579 }, { 9, 0, 41 },
+ { 9, 0, 244 }, { 9, 0, 669 }, { 10, 0, 5 }, { 11, 0, 861 },
+ { 11, 0, 951 }, { 139, 0, 980 }, { 132, 0, 717 }, { 136, 0, 1011 },
+ { 132, 0, 805 }, { 4, 11, 180 }, { 135, 11, 1906 }, { 132, 10, 777 },
+ { 132, 10, 331 }, { 132, 0, 489 }, { 6, 0, 1024 }, { 4, 11, 491 },
+ { 133, 10, 747 }, { 135, 11, 1182 }, { 4, 11, 171 }, { 138, 11, 234 },
+ { 4, 11, 586 }, { 7, 11, 1186 }, { 138, 11, 631 }, { 135, 0, 892 },
+ { 135, 11, 336 }, { 9, 11, 931 }, { 10, 11, 334 }, { 148, 11, 71 },
+ { 137, 0, 473 }, { 6, 0, 864 }, { 12, 0, 659 }, { 139, 11, 926 },
+ { 7, 0, 819 }, { 9, 0, 26 }, { 9, 0, 392 }, { 10, 0, 152 },
+ { 10, 0, 226 }, { 11, 0, 19 }, { 12, 0, 276 }, { 12, 0, 426 },
+ { 12, 0, 589 }, { 13, 0, 460 }, { 15, 0, 97 }, { 19, 0, 48 },
+ { 148, 0, 104 }, { 135, 0, 51 }, { 133, 10, 326 }, { 4, 10, 691 },
+ { 146, 10, 16 }, { 9, 0, 130 }, { 11, 0, 765 }, { 10, 10, 680 },
+ { 10, 10, 793 }, { 141, 10, 357 }, { 133, 11, 765 }, { 8, 0, 229 },
+ { 6, 10, 32 }, { 7, 10, 385 }, { 7, 10, 757 }, { 7, 10, 1916 },
+ { 8, 10, 94 }, { 8, 10, 711 }, { 9, 10, 541 }, { 10, 10, 162 },
+ { 10, 10, 795 }, { 11, 10, 989 }, { 11, 10, 1010 }, { 12, 10, 14 },
+ { 142, 10, 308 }, { 7, 11, 474 }, { 137, 11, 578 }, { 132, 0, 674 },
+ { 132, 0, 770 }, { 5, 0, 79 }, { 7, 0, 1027 }, { 7, 0, 1477 },
+ { 139, 0, 52 }, { 133, 11, 424 }, { 134, 0, 1666 }, { 6, 0, 409 },
+ { 6, 10, 349 }, { 6, 10, 1682 }, { 7, 10, 1252 }, { 8, 10, 112 },
+ { 8, 11, 714 }, { 9, 10, 435 }, { 9, 10, 668 }, { 10, 10, 290 },
+ { 10, 10, 319 }, { 10, 10, 815 }, { 11, 10, 180 }, { 11, 10, 837 },
+ { 12, 10, 240 }, { 13, 10, 152 }, { 13, 10, 219 }, { 142, 10, 158 },
+ { 5, 0, 789 }, { 134, 0, 195 }, { 4, 0, 251 }, { 4, 0, 688 },
+ { 7, 0, 513 }, { 135, 0, 1284 }, { 132, 10, 581 }, { 9, 11, 420 },
+ { 10, 11, 269 }, { 10, 11, 285 }, { 10, 11, 576 }, { 11, 11, 397 },
+ { 13, 11, 175 }, { 145, 11, 90 }, { 6, 10, 126 }, { 7, 10, 573 },
+ { 8, 10, 397 }, { 142, 10, 44 }, { 132, 11, 429 }, { 133, 0, 889 },
+ { 4, 0, 160 }, { 5, 0, 330 }, { 7, 0, 1434 }, { 136, 0, 174 },
+ { 7, 11, 18 }, { 7, 11, 699 }, { 7, 11, 1966 }, { 8, 11, 752 },
+ { 9, 11, 273 }, { 9, 11, 412 }, { 9, 11, 703 }, { 10, 11, 71 },
+ { 10, 11, 427 }, { 10, 11, 508 }, { 146, 11, 97 }, { 6, 0, 872 },
+ { 134, 0, 899 }, { 133, 10, 926 }, { 134, 0, 1126 }, { 134, 0, 918 },
+ { 4, 11, 53 }, { 5, 11, 186 }, { 135, 11, 752 }, { 7, 0, 268 },
+ { 136, 0, 569 }, { 134, 0, 1224 }, { 6, 0, 1361 }, { 7, 10, 1232 },
+ { 137, 10, 531 }, { 8, 11, 575 }, { 10, 11, 289 }, { 139, 11, 319 },
+ { 133, 10, 670 }, { 132, 11, 675 }, { 133, 0, 374 }, { 135, 10, 1957 },
+ { 133, 0, 731 }, { 11, 0, 190 }, { 15, 0, 49 }, { 11, 11, 190 },
+ { 143, 11, 49 }, { 4, 0, 626 }, { 5, 0, 506 }, { 5, 0, 642 },
+ { 6, 0, 425 }, { 10, 0, 202 }, { 139, 0, 141 }, { 137, 0, 444 },
+ { 7, 10, 242 }, { 135, 10, 1942 }, { 6, 11, 209 }, { 8, 11, 468 },
+ { 9, 11, 210 }, { 11, 11, 36 }, { 12, 11, 28 }, { 12, 11, 630 },
+ { 13, 11, 21 }, { 13, 11, 349 }, { 14, 11, 7 }, { 145, 11, 13 },
+ { 4, 11, 342 }, { 135, 11, 1179 }, { 5, 10, 834 }, { 7, 10, 1202 },
+ { 8, 10, 14 }, { 9, 10, 481 }, { 137, 10, 880 }, { 4, 11, 928 },
+ { 133, 11, 910 }, { 4, 11, 318 }, { 4, 11, 496 }, { 7, 11, 856 },
+ { 139, 11, 654 }, { 136, 0, 835 }, { 7, 0, 1526 }, { 138, 10, 465 },
+ { 151, 0, 17 }, { 135, 0, 477 }, { 4, 10, 357 }, { 6, 10, 172 },
+ { 7, 10, 143 }, { 137, 10, 413 }, { 6, 0, 1374 }, { 138, 0, 994 },
+ { 18, 0, 76 }, { 132, 10, 590 }, { 7, 0, 287 }, { 8, 0, 355 },
+ { 9, 0, 293 }, { 137, 0, 743 }, { 134, 0, 1389 }, { 7, 11, 915 },
+ { 8, 11, 247 }, { 147, 11, 0 }, { 4, 11, 202 }, { 5, 11, 382 },
+ { 6, 11, 454 }, { 7, 11, 936 }, { 7, 11, 1803 }, { 8, 11, 758 },
+ { 9, 11, 375 }, { 9, 11, 895 }, { 10, 11, 743 }, { 10, 11, 792 },
+ { 11, 11, 978 }, { 11, 11, 1012 }, { 142, 11, 109 }, { 5, 0, 384 },
+ { 8, 0, 455 }, { 140, 0, 48 }, { 132, 11, 390 }, { 5, 10, 169 },
+ { 7, 10, 333 }, { 136, 10, 45 }, { 5, 0, 264 }, { 134, 0, 184 },
+ { 138, 11, 791 }, { 133, 11, 717 }, { 132, 10, 198 }, { 6, 11, 445 },
+ { 7, 11, 332 }, { 137, 11, 909 }, { 136, 0, 1001 }, { 4, 10, 24 },
+ { 5, 10, 140 }, { 5, 10, 185 }, { 7, 10, 1500 }, { 11, 10, 565 },
+ { 139, 10, 838 }, { 134, 11, 578 }, { 5, 0, 633 }, { 6, 0, 28 },
+ { 135, 0, 1323 }, { 132, 0, 851 }, { 136, 11, 267 }, { 7, 0, 359 },
+ { 8, 0, 243 }, { 140, 0, 175 }, { 4, 10, 334 }, { 133, 10, 593 },
+ { 141, 11, 87 }, { 136, 11, 766 }, { 10, 0, 287 }, { 12, 0, 138 },
+ { 10, 11, 287 }, { 140, 11, 138 }, { 4, 0, 105 }, { 132, 0, 740 },
+ { 140, 10, 116 }, { 134, 0, 857 }, { 135, 11, 1841 }, { 6, 0, 1402 },
+ { 137, 0, 819 }, { 132, 11, 584 }, { 132, 10, 709 }, { 133, 10, 897 },
+ { 5, 0, 224 }, { 13, 0, 174 }, { 146, 0, 52 }, { 135, 10, 1840 },
+ { 4, 10, 608 }, { 133, 10, 497 }, { 139, 11, 60 }, { 4, 0, 758 },
+ { 135, 0, 1649 }, { 4, 11, 226 }, { 4, 11, 326 }, { 135, 11, 1770 },
+ { 5, 11, 426 }, { 8, 11, 30 }, { 9, 11, 2 }, { 11, 11, 549 },
+ { 147, 11, 122 }, { 135, 10, 2039 }, { 6, 10, 540 }, { 136, 10, 136 },
+ { 4, 0, 573 }, { 8, 0, 655 }, { 4, 10, 897 }, { 133, 10, 786 },
+ { 7, 0, 351 }, { 139, 0, 128 }, { 133, 10, 999 }, { 4, 10, 299 },
+ { 135, 10, 1004 }, { 133, 0, 918 }, { 132, 11, 345 }, { 4, 11, 385 },
+ { 7, 11, 265 }, { 135, 11, 587 }, { 133, 10, 456 }, { 136, 10, 180 },
+ { 6, 0, 687 }, { 134, 0, 1537 }, { 4, 11, 347 }, { 5, 11, 423 },
+ { 5, 11, 996 }, { 135, 11, 1329 }, { 132, 10, 755 }, { 7, 11, 1259 },
+ { 9, 11, 125 }, { 11, 11, 65 }, { 140, 11, 285 }, { 5, 11, 136 },
+ { 6, 11, 136 }, { 136, 11, 644 }, { 134, 0, 1525 }, { 4, 0, 1009 },
+ { 135, 0, 1139 }, { 139, 10, 338 }, { 132, 0, 340 }, { 135, 10, 1464 },
+ { 8, 0, 847 }, { 10, 0, 861 }, { 10, 0, 876 }, { 10, 0, 889 },
+ { 10, 0, 922 }, { 10, 0, 929 }, { 10, 0, 933 }, { 12, 0, 784 },
+ { 140, 0, 791 }, { 139, 0, 176 }, { 9, 11, 134 }, { 10, 11, 2 },
+ { 10, 11, 27 }, { 10, 11, 333 }, { 11, 11, 722 }, { 143, 11, 1 },
+ { 4, 11, 433 }, { 133, 11, 719 }, { 5, 0, 985 }, { 7, 0, 509 },
+ { 7, 0, 529 }, { 145, 0, 96 }, { 132, 0, 615 }, { 4, 10, 890 },
+ { 5, 10, 805 }, { 5, 10, 819 }, { 5, 10, 961 }, { 6, 10, 396 },
+ { 6, 10, 1631 }, { 6, 10, 1678 }, { 7, 10, 1967 }, { 7, 10, 2041 },
+ { 9, 10, 630 }, { 11, 10, 8 }, { 11, 10, 1019 }, { 12, 10, 176 },
+ { 13, 10, 225 }, { 14, 10, 292 }, { 149, 10, 24 }, { 135, 0, 1919 },
+ { 134, 0, 1131 }, { 144, 11, 21 }, { 144, 11, 51 }, { 135, 10, 1815 },
+ { 4, 0, 247 }, { 7, 10, 1505 }, { 10, 10, 190 }, { 10, 10, 634 },
+ { 11, 10, 792 }, { 12, 10, 358 }, { 140, 10, 447 }, { 5, 10, 0 },
+ { 6, 10, 536 }, { 7, 10, 604 }, { 13, 10, 445 }, { 145, 10, 126 },
+ { 4, 0, 184 }, { 5, 0, 390 }, { 6, 0, 337 }, { 7, 0, 23 },
+ { 7, 0, 494 }, { 7, 0, 618 }, { 7, 0, 1456 }, { 8, 0, 27 },
+ { 8, 0, 599 }, { 10, 0, 153 }, { 139, 0, 710 }, { 6, 10, 232 },
+ { 6, 10, 412 }, { 7, 10, 1074 }, { 8, 10, 9 }, { 8, 10, 157 },
+ { 8, 10, 786 }, { 9, 10, 196 }, { 9, 10, 352 }, { 9, 10, 457 },
+ { 10, 10, 337 }, { 11, 10, 232 }, { 11, 10, 877 }, { 12, 10, 480 },
+ { 140, 10, 546 }, { 13, 0, 38 }, { 135, 10, 958 }, { 4, 10, 382 },
+ { 136, 10, 579 }, { 4, 10, 212 }, { 135, 10, 1206 }, { 4, 11, 555 },
+ { 8, 11, 536 }, { 138, 11, 288 }, { 11, 11, 139 }, { 139, 11, 171 },
+ { 9, 11, 370 }, { 138, 11, 90 }, { 132, 0, 1015 }, { 134, 0, 1088 },
+ { 5, 10, 655 }, { 135, 11, 977 }, { 134, 0, 1585 }, { 17, 10, 67 },
+ { 147, 10, 74 }, { 10, 0, 227 }, { 11, 0, 497 }, { 11, 0, 709 },
+ { 140, 0, 415 }, { 6, 0, 360 }, { 7, 0, 1664 }, { 136, 0, 478 },
+ { 7, 0, 95 }, { 6, 10, 231 }, { 136, 10, 423 }, { 140, 11, 65 },
+ { 4, 11, 257 }, { 135, 11, 2031 }, { 135, 11, 1768 }, { 133, 10, 300 },
+ { 139, 11, 211 }, { 136, 0, 699 }, { 6, 10, 237 }, { 7, 10, 611 },
+ { 8, 10, 100 }, { 9, 10, 416 }, { 11, 10, 335 }, { 12, 10, 173 },
+ { 146, 10, 101 }, { 14, 0, 26 }, { 146, 0, 150 }, { 6, 0, 581 },
+ { 135, 0, 1119 }, { 135, 10, 1208 }, { 132, 0, 739 }, { 6, 11, 83 },
+ { 6, 11, 1733 }, { 135, 11, 1389 }, { 137, 0, 869 }, { 4, 0, 67 },
+ { 5, 0, 422 }, { 7, 0, 1037 }, { 7, 0, 1289 }, { 7, 0, 1555 },
+ { 9, 0, 741 }, { 145, 0, 108 }, { 133, 10, 199 }, { 12, 10, 427 },
+ { 146, 10, 38 }, { 136, 0, 464 }, { 142, 0, 42 }, { 10, 0, 96 },
+ { 8, 11, 501 }, { 137, 11, 696 }, { 134, 11, 592 }, { 4, 0, 512 },
+ { 4, 0, 966 }, { 5, 0, 342 }, { 6, 0, 1855 }, { 8, 0, 869 },
+ { 8, 0, 875 }, { 8, 0, 901 }, { 144, 0, 26 }, { 8, 0, 203 },
+ { 11, 0, 823 }, { 11, 0, 846 }, { 12, 0, 482 }, { 13, 0, 277 },
+ { 13, 0, 302 }, { 13, 0, 464 }, { 14, 0, 205 }, { 142, 0, 221 },
+ { 4, 0, 449 }, { 133, 0, 718 }, { 7, 11, 1718 }, { 9, 11, 95 },
+ { 9, 11, 274 }, { 10, 11, 279 }, { 10, 11, 317 }, { 10, 11, 420 },
+ { 11, 11, 303 }, { 11, 11, 808 }, { 12, 11, 134 }, { 12, 11, 367 },
+ { 13, 11, 149 }, { 13, 11, 347 }, { 14, 11, 349 }, { 14, 11, 406 },
+ { 18, 11, 22 }, { 18, 11, 89 }, { 18, 11, 122 }, { 147, 11, 47 },
+ { 133, 11, 26 }, { 4, 0, 355 }, { 6, 0, 311 }, { 9, 0, 256 },
+ { 138, 0, 404 }, { 132, 11, 550 }, { 10, 0, 758 }, { 6, 10, 312 },
+ { 6, 10, 1715 }, { 10, 10, 584 }, { 11, 10, 546 }, { 11, 10, 692 },
+ { 12, 10, 259 }, { 12, 10, 295 }, { 13, 10, 46 }, { 141, 10, 154 },
+ { 136, 11, 822 }, { 5, 0, 827 }, { 4, 11, 902 }, { 5, 11, 809 },
+ { 6, 11, 122 }, { 135, 11, 896 }, { 5, 0, 64 }, { 140, 0, 581 },
+ { 4, 0, 442 }, { 6, 0, 739 }, { 7, 0, 1047 }, { 7, 0, 1352 },
+ { 7, 0, 1643 }, { 7, 11, 1911 }, { 9, 11, 449 }, { 10, 11, 192 },
+ { 138, 11, 740 }, { 135, 11, 262 }, { 132, 10, 588 }, { 133, 11, 620 },
+ { 5, 0, 977 }, { 6, 0, 288 }, { 7, 0, 528 }, { 4, 11, 34 },
+ { 5, 11, 574 }, { 7, 11, 279 }, { 7, 11, 1624 }, { 136, 11, 601 },
+ { 6, 0, 1375 }, { 4, 10, 231 }, { 5, 10, 61 }, { 6, 10, 104 },
+ { 7, 10, 729 }, { 7, 10, 964 }, { 7, 10, 1658 }, { 140, 10, 414 },
+ { 6, 10, 263 }, { 138, 10, 757 }, { 132, 10, 320 }, { 4, 0, 254 },
+ { 7, 0, 1309 }, { 5, 11, 332 }, { 135, 11, 1309 }, { 6, 11, 261 },
+ { 8, 11, 182 }, { 139, 11, 943 }, { 132, 10, 225 }, { 6, 0, 12 },
+ { 135, 0, 1219 }, { 4, 0, 275 }, { 12, 0, 376 }, { 6, 11, 1721 },
+ { 141, 11, 490 }, { 4, 11, 933 }, { 133, 11, 880 }, { 6, 0, 951 },
+ { 6, 0, 1109 }, { 6, 0, 1181 }, { 7, 0, 154 }, { 4, 10, 405 },
+ { 7, 10, 817 }, { 14, 10, 58 }, { 17, 10, 37 }, { 146, 10, 124 },
+ { 6, 0, 1520 }, { 133, 10, 974 }, { 134, 0, 1753 }, { 6, 0, 369 },
+ { 6, 0, 502 }, { 7, 0, 1036 }, { 8, 0, 348 }, { 9, 0, 452 },
+ { 10, 0, 26 }, { 11, 0, 224 }, { 11, 0, 387 }, { 11, 0, 772 },
+ { 12, 0, 95 }, { 12, 0, 629 }, { 13, 0, 195 }, { 13, 0, 207 },
+ { 13, 0, 241 }, { 14, 0, 260 }, { 14, 0, 270 }, { 143, 0, 140 },
+ { 132, 0, 269 }, { 5, 0, 480 }, { 7, 0, 532 }, { 7, 0, 1197 },
+ { 7, 0, 1358 }, { 8, 0, 291 }, { 11, 0, 349 }, { 142, 0, 396 },
+ { 5, 10, 235 }, { 7, 10, 1239 }, { 11, 10, 131 }, { 140, 10, 370 },
+ { 7, 10, 956 }, { 7, 10, 1157 }, { 7, 10, 1506 }, { 7, 10, 1606 },
+ { 7, 10, 1615 }, { 7, 10, 1619 }, { 7, 10, 1736 }, { 7, 10, 1775 },
+ { 8, 10, 590 }, { 9, 10, 324 }, { 9, 10, 736 }, { 9, 10, 774 },
+ { 9, 10, 776 }, { 9, 10, 784 }, { 10, 10, 567 }, { 10, 10, 708 },
+ { 11, 10, 518 }, { 11, 10, 613 }, { 11, 10, 695 }, { 11, 10, 716 },
+ { 11, 10, 739 }, { 11, 10, 770 }, { 11, 10, 771 }, { 11, 10, 848 },
+ { 11, 10, 857 }, { 11, 10, 931 }, { 11, 10, 947 }, { 12, 10, 326 },
+ { 12, 10, 387 }, { 12, 10, 484 }, { 12, 10, 528 }, { 12, 10, 552 },
+ { 12, 10, 613 }, { 13, 10, 189 }, { 13, 10, 256 }, { 13, 10, 340 },
+ { 13, 10, 432 }, { 13, 10, 436 }, { 13, 10, 440 }, { 13, 10, 454 },
+ { 14, 10, 174 }, { 14, 10, 220 }, { 14, 10, 284 }, { 14, 10, 390 },
+ { 145, 10, 121 }, { 8, 11, 598 }, { 9, 11, 664 }, { 138, 11, 441 },
+ { 9, 10, 137 }, { 138, 10, 221 }, { 133, 11, 812 }, { 148, 0, 15 },
+ { 134, 0, 1341 }, { 6, 0, 1017 }, { 4, 11, 137 }, { 7, 11, 1178 },
+ { 135, 11, 1520 }, { 7, 10, 390 }, { 138, 10, 140 }, { 7, 11, 1260 },
+ { 135, 11, 1790 }, { 137, 11, 191 }, { 135, 10, 1144 }, { 6, 0, 1810 },
+ { 7, 0, 657 }, { 8, 0, 886 }, { 10, 0, 857 }, { 14, 0, 440 },
+ { 144, 0, 96 }, { 8, 0, 533 }, { 6, 11, 1661 }, { 7, 11, 1975 },
+ { 7, 11, 2009 }, { 135, 11, 2011 }, { 6, 0, 1453 }, { 134, 10, 464 },
+ { 132, 11, 715 }, { 5, 10, 407 }, { 11, 10, 204 }, { 11, 10, 243 },
+ { 11, 10, 489 }, { 12, 10, 293 }, { 19, 10, 37 }, { 20, 10, 73 },
+ { 150, 10, 38 }, { 133, 11, 703 }, { 4, 0, 211 }, { 7, 0, 1483 },
+ { 5, 10, 325 }, { 8, 10, 5 }, { 8, 10, 227 }, { 9, 10, 105 },
+ { 10, 10, 585 }, { 140, 10, 614 }, { 4, 0, 332 }, { 5, 0, 335 },
+ { 6, 0, 238 }, { 7, 0, 269 }, { 7, 0, 811 }, { 7, 0, 1797 },
+ { 8, 0, 836 }, { 9, 0, 507 }, { 141, 0, 242 }, { 5, 11, 89 },
+ { 7, 11, 1915 }, { 9, 11, 185 }, { 9, 11, 235 }, { 9, 11, 496 },
+ { 10, 11, 64 }, { 10, 11, 270 }, { 10, 11, 403 }, { 10, 11, 469 },
+ { 10, 11, 529 }, { 10, 11, 590 }, { 11, 11, 140 }, { 11, 11, 860 },
+ { 13, 11, 1 }, { 13, 11, 422 }, { 14, 11, 341 }, { 14, 11, 364 },
+ { 17, 11, 93 }, { 18, 11, 113 }, { 19, 11, 97 }, { 147, 11, 113 },
+ { 133, 11, 695 }, { 16, 0, 19 }, { 5, 11, 6 }, { 6, 11, 183 },
+ { 6, 10, 621 }, { 7, 11, 680 }, { 7, 11, 978 }, { 7, 11, 1013 },
+ { 7, 11, 1055 }, { 12, 11, 230 }, { 13, 11, 172 }, { 13, 10, 504 },
+ { 146, 11, 29 }, { 136, 0, 156 }, { 133, 0, 1009 }, { 6, 11, 29 },
+ { 139, 11, 63 }, { 134, 0, 820 }, { 134, 10, 218 }, { 7, 10, 454 },
+ { 7, 10, 782 }, { 8, 10, 768 }, { 140, 10, 686 }, { 5, 0, 228 },
+ { 6, 0, 203 }, { 7, 0, 156 }, { 8, 0, 347 }, { 9, 0, 265 },
+ { 18, 0, 39 }, { 20, 0, 54 }, { 21, 0, 31 }, { 22, 0, 3 },
+ { 23, 0, 0 }, { 15, 11, 8 }, { 18, 11, 39 }, { 20, 11, 54 },
+ { 21, 11, 31 }, { 22, 11, 3 }, { 151, 11, 0 }, { 7, 0, 1131 },
+ { 135, 0, 1468 }, { 144, 10, 0 }, { 134, 0, 1276 }, { 10, 10, 676 },
+ { 140, 10, 462 }, { 132, 11, 311 }, { 134, 11, 1740 }, { 7, 11, 170 },
+ { 8, 11, 90 }, { 8, 11, 177 }, { 8, 11, 415 }, { 11, 11, 714 },
+ { 142, 11, 281 }, { 134, 10, 164 }, { 6, 0, 1792 }, { 138, 0, 849 },
+ { 150, 10, 50 }, { 5, 0, 291 }, { 5, 0, 318 }, { 7, 0, 765 },
+ { 9, 0, 389 }, { 12, 0, 548 }, { 8, 11, 522 }, { 142, 11, 328 },
+ { 11, 11, 91 }, { 13, 11, 129 }, { 15, 11, 101 }, { 145, 11, 125 },
+ { 4, 11, 494 }, { 6, 11, 74 }, { 7, 11, 44 }, { 7, 11, 407 },
+ { 8, 11, 551 }, { 12, 11, 17 }, { 15, 11, 5 }, { 148, 11, 11 },
+ { 4, 11, 276 }, { 133, 11, 296 }, { 6, 10, 343 }, { 7, 10, 195 },
+ { 7, 11, 1777 }, { 9, 10, 226 }, { 10, 10, 197 }, { 10, 10, 575 },
+ { 11, 10, 502 }, { 139, 10, 899 }, { 10, 0, 525 }, { 139, 0, 82 },
+ { 14, 0, 453 }, { 4, 11, 7 }, { 5, 11, 90 }, { 5, 11, 158 },
+ { 6, 11, 542 }, { 7, 11, 221 }, { 7, 11, 1574 }, { 9, 11, 490 },
+ { 10, 11, 540 }, { 11, 11, 443 }, { 139, 11, 757 }, { 135, 0, 666 },
+ { 22, 10, 29 }, { 150, 11, 29 }, { 4, 0, 422 }, { 147, 10, 8 },
+ { 5, 0, 355 }, { 145, 0, 0 }, { 6, 0, 1873 }, { 9, 0, 918 },
+ { 7, 11, 588 }, { 9, 11, 175 }, { 138, 11, 530 }, { 143, 11, 31 },
+ { 11, 0, 165 }, { 7, 10, 1125 }, { 9, 10, 143 }, { 14, 10, 405 },
+ { 150, 10, 21 }, { 9, 0, 260 }, { 137, 0, 905 }, { 5, 11, 872 },
+ { 6, 11, 57 }, { 6, 11, 479 }, { 6, 11, 562 }, { 7, 11, 471 },
+ { 7, 11, 1060 }, { 9, 11, 447 }, { 9, 11, 454 }, { 141, 11, 6 },
+ { 138, 11, 704 }, { 133, 0, 865 }, { 5, 0, 914 }, { 134, 0, 1625 },
+ { 133, 0, 234 }, { 7, 0, 1383 }, { 5, 11, 31 }, { 6, 11, 614 },
+ { 145, 11, 61 }, { 7, 11, 1200 }, { 138, 11, 460 }, { 6, 11, 424 },
+ { 135, 11, 1866 }, { 136, 0, 306 }, { 5, 10, 959 }, { 12, 11, 30 },
+ { 13, 11, 148 }, { 14, 11, 87 }, { 14, 11, 182 }, { 16, 11, 42 },
+ { 18, 11, 92 }, { 148, 11, 70 }, { 6, 0, 1919 }, { 6, 0, 1921 },
+ { 9, 0, 923 }, { 9, 0, 930 }, { 9, 0, 941 }, { 9, 0, 949 },
+ { 9, 0, 987 }, { 9, 0, 988 }, { 9, 0, 992 }, { 12, 0, 802 },
+ { 12, 0, 815 }, { 12, 0, 856 }, { 12, 0, 885 }, { 12, 0, 893 },
+ { 12, 0, 898 }, { 12, 0, 919 }, { 12, 0, 920 }, { 12, 0, 941 },
+ { 12, 0, 947 }, { 15, 0, 183 }, { 15, 0, 185 }, { 15, 0, 189 },
+ { 15, 0, 197 }, { 15, 0, 202 }, { 15, 0, 233 }, { 18, 0, 218 },
+ { 18, 0, 219 }, { 18, 0, 233 }, { 143, 11, 156 }, { 135, 10, 1759 },
+ { 136, 10, 173 }, { 13, 0, 163 }, { 13, 0, 180 }, { 18, 0, 78 },
+ { 20, 0, 35 }, { 5, 11, 13 }, { 134, 11, 142 }, { 134, 10, 266 },
+ { 6, 11, 97 }, { 7, 11, 116 }, { 8, 11, 322 }, { 8, 11, 755 },
+ { 9, 11, 548 }, { 10, 11, 714 }, { 11, 11, 884 }, { 141, 11, 324 },
+ { 135, 0, 1312 }, { 9, 0, 814 }, { 137, 11, 676 }, { 133, 0, 707 },
+ { 135, 0, 1493 }, { 6, 0, 421 }, { 7, 0, 61 }, { 7, 0, 1540 },
+ { 10, 0, 11 }, { 138, 0, 501 }, { 12, 0, 733 }, { 12, 0, 766 },
+ { 7, 11, 866 }, { 135, 11, 1163 }, { 137, 0, 341 }, { 142, 0, 98 },
+ { 145, 11, 115 }, { 135, 11, 1111 }, { 136, 10, 300 }, { 136, 0, 1014 },
+ { 8, 11, 1 }, { 9, 11, 112 }, { 138, 11, 326 }, { 132, 11, 730 },
+ { 5, 11, 488 }, { 6, 11, 527 }, { 7, 11, 489 }, { 7, 11, 1636 },
+ { 8, 11, 121 }, { 8, 11, 144 }, { 8, 11, 359 }, { 9, 11, 193 },
+ { 9, 11, 241 }, { 9, 11, 336 }, { 9, 11, 882 }, { 11, 11, 266 },
+ { 11, 11, 372 }, { 11, 11, 944 }, { 12, 11, 401 }, { 140, 11, 641 },
+ { 6, 0, 971 }, { 134, 0, 1121 }, { 6, 0, 102 }, { 7, 0, 72 },
+ { 15, 0, 142 }, { 147, 0, 67 }, { 151, 0, 30 }, { 135, 0, 823 },
+ { 134, 0, 1045 }, { 5, 10, 427 }, { 5, 10, 734 }, { 7, 10, 478 },
+ { 136, 10, 52 }, { 7, 0, 1930 }, { 11, 10, 217 }, { 142, 10, 165 },
+ { 6, 0, 1512 }, { 135, 0, 1870 }, { 9, 11, 31 }, { 10, 11, 244 },
+ { 10, 11, 699 }, { 12, 11, 149 }, { 141, 11, 497 }, { 133, 11, 377 },
+ { 145, 11, 101 }, { 10, 11, 158 }, { 13, 11, 13 }, { 13, 11, 137 },
+ { 13, 11, 258 }, { 14, 11, 111 }, { 14, 11, 225 }, { 14, 11, 253 },
+ { 14, 11, 304 }, { 14, 11, 339 }, { 14, 11, 417 }, { 146, 11, 33 },
+ { 6, 0, 87 }, { 6, 10, 1734 }, { 7, 10, 20 }, { 7, 10, 1056 },
+ { 8, 10, 732 }, { 9, 10, 406 }, { 9, 10, 911 }, { 138, 10, 694 },
+ { 134, 0, 1243 }, { 137, 0, 245 }, { 7, 0, 68 }, { 8, 0, 48 },
+ { 8, 0, 88 }, { 8, 0, 582 }, { 8, 0, 681 }, { 9, 0, 373 },
+ { 9, 0, 864 }, { 11, 0, 157 }, { 11, 0, 336 }, { 11, 0, 843 },
+ { 148, 0, 27 }, { 8, 11, 663 }, { 144, 11, 8 }, { 133, 10, 613 },
+ { 4, 0, 88 }, { 5, 0, 137 }, { 5, 0, 174 }, { 5, 0, 777 },
+ { 6, 0, 1664 }, { 6, 0, 1725 }, { 7, 0, 77 }, { 7, 0, 426 },
+ { 7, 0, 1317 }, { 7, 0, 1355 }, { 8, 0, 126 }, { 8, 0, 563 },
+ { 9, 0, 523 }, { 9, 0, 750 }, { 10, 0, 310 }, { 10, 0, 836 },
+ { 11, 0, 42 }, { 11, 0, 318 }, { 11, 0, 731 }, { 12, 0, 68 },
+ { 12, 0, 92 }, { 12, 0, 507 }, { 12, 0, 692 }, { 13, 0, 81 },
+ { 13, 0, 238 }, { 13, 0, 374 }, { 14, 0, 436 }, { 18, 0, 138 },
+ { 19, 0, 78 }, { 19, 0, 111 }, { 20, 0, 55 }, { 20, 0, 77 },
+ { 148, 0, 92 }, { 141, 0, 418 }, { 4, 0, 938 }, { 137, 0, 625 },
+ { 138, 0, 351 }, { 5, 11, 843 }, { 7, 10, 32 }, { 7, 10, 984 },
+ { 8, 10, 85 }, { 8, 10, 709 }, { 9, 10, 579 }, { 9, 10, 847 },
+ { 9, 10, 856 }, { 10, 10, 799 }, { 11, 10, 258 }, { 11, 10, 1007 },
+ { 12, 10, 331 }, { 12, 10, 615 }, { 13, 10, 188 }, { 13, 10, 435 },
+ { 14, 10, 8 }, { 15, 10, 165 }, { 16, 10, 27 }, { 148, 10, 40 },
+ { 6, 0, 1668 }, { 7, 0, 1499 }, { 8, 0, 117 }, { 9, 0, 314 },
+ { 138, 0, 174 }, { 135, 0, 707 }, { 132, 11, 554 }, { 133, 11, 536 },
+ { 5, 0, 403 }, { 5, 11, 207 }, { 9, 11, 79 }, { 11, 11, 625 },
+ { 145, 11, 7 }, { 132, 11, 424 }, { 136, 11, 785 }, { 4, 10, 167 },
+ { 135, 10, 82 }, { 9, 0, 7 }, { 23, 0, 6 }, { 9, 11, 7 },
+ { 151, 11, 6 }, { 6, 0, 282 }, { 5, 10, 62 }, { 6, 10, 534 },
+ { 7, 10, 74 }, { 7, 10, 678 }, { 7, 10, 684 }, { 7, 10, 1043 },
+ { 7, 10, 1072 }, { 8, 10, 280 }, { 8, 10, 541 }, { 8, 10, 686 },
+ { 9, 10, 258 }, { 10, 10, 519 }, { 11, 10, 252 }, { 140, 10, 282 },
+ { 138, 10, 33 }, { 132, 10, 359 }, { 4, 0, 44 }, { 5, 0, 311 },
+ { 6, 0, 156 }, { 7, 0, 639 }, { 7, 0, 762 }, { 7, 0, 1827 },
+ { 9, 0, 8 }, { 9, 0, 462 }, { 148, 0, 83 }, { 7, 11, 769 },
+ { 9, 11, 18 }, { 138, 11, 358 }, { 4, 0, 346 }, { 7, 0, 115 },
+ { 9, 0, 180 }, { 9, 0, 456 }, { 10, 0, 363 }, { 4, 11, 896 },
+ { 134, 11, 1777 }, { 133, 10, 211 }, { 7, 0, 761 }, { 7, 0, 1051 },
+ { 137, 0, 545 }, { 6, 10, 145 }, { 141, 10, 336 }, { 7, 11, 750 },
+ { 9, 11, 223 }, { 11, 11, 27 }, { 11, 11, 466 }, { 12, 11, 624 },
+ { 14, 11, 265 }, { 146, 11, 61 }, { 6, 0, 752 }, { 6, 0, 768 },
+ { 6, 0, 1195 }, { 6, 0, 1254 }, { 6, 0, 1619 }, { 137, 0, 835 },
+ { 6, 0, 1936 }, { 8, 0, 930 }, { 136, 0, 960 }, { 132, 10, 263 },
+ { 132, 11, 249 }, { 12, 0, 653 }, { 132, 10, 916 }, { 4, 11, 603 },
+ { 133, 11, 661 }, { 8, 0, 344 }, { 4, 11, 11 }, { 6, 11, 128 },
+ { 7, 11, 231 }, { 7, 11, 1533 }, { 138, 11, 725 }, { 134, 0, 1483 },
+ { 134, 0, 875 }, { 6, 0, 185 }, { 7, 0, 1899 }, { 9, 0, 875 },
+ { 139, 0, 673 }, { 15, 10, 155 }, { 144, 10, 79 }, { 7, 0, 93 },
+ { 7, 0, 210 }, { 7, 0, 1223 }, { 8, 0, 451 }, { 8, 0, 460 },
+ { 11, 0, 353 }, { 11, 0, 475 }, { 4, 10, 599 }, { 6, 10, 1634 },
+ { 7, 10, 67 }, { 7, 10, 691 }, { 7, 10, 979 }, { 7, 10, 1697 },
+ { 8, 10, 207 }, { 8, 10, 214 }, { 8, 10, 231 }, { 8, 10, 294 },
+ { 8, 10, 336 }, { 8, 10, 428 }, { 8, 10, 471 }, { 8, 10, 622 },
+ { 8, 10, 626 }, { 8, 10, 679 }, { 8, 10, 759 }, { 8, 10, 829 },
+ { 9, 10, 11 }, { 9, 10, 246 }, { 9, 10, 484 }, { 9, 10, 573 },
+ { 9, 10, 706 }, { 9, 10, 762 }, { 9, 10, 798 }, { 9, 10, 855 },
+ { 9, 10, 870 }, { 9, 10, 912 }, { 10, 10, 303 }, { 10, 10, 335 },
+ { 10, 10, 424 }, { 10, 10, 461 }, { 10, 10, 543 }, { 10, 10, 759 },
+ { 10, 10, 814 }, { 11, 10, 59 }, { 11, 10, 235 }, { 11, 10, 590 },
+ { 11, 10, 929 }, { 11, 10, 963 }, { 11, 10, 987 }, { 12, 10, 114 },
+ { 12, 10, 182 }, { 12, 10, 226 }, { 12, 10, 332 }, { 12, 10, 439 },
+ { 12, 10, 575 }, { 12, 10, 598 }, { 12, 10, 675 }, { 13, 10, 8 },
+ { 13, 10, 125 }, { 13, 10, 194 }, { 13, 10, 287 }, { 14, 10, 197 },
+ { 14, 10, 383 }, { 15, 10, 53 }, { 17, 10, 63 }, { 19, 10, 46 },
+ { 19, 10, 98 }, { 19, 10, 106 }, { 148, 10, 85 }, { 132, 11, 476 },
+ { 4, 0, 327 }, { 5, 0, 478 }, { 7, 0, 1332 }, { 136, 0, 753 },
+ { 5, 0, 1020 }, { 133, 0, 1022 }, { 135, 11, 1807 }, { 4, 0, 103 },
+ { 133, 0, 401 }, { 4, 0, 499 }, { 135, 0, 1421 }, { 10, 0, 207 },
+ { 13, 0, 164 }, { 147, 10, 126 }, { 9, 11, 20 }, { 10, 11, 324 },
+ { 139, 11, 488 }, { 132, 0, 96 }, { 9, 11, 280 }, { 138, 11, 134 },
+ { 135, 0, 968 }, { 133, 10, 187 }, { 135, 10, 1286 }, { 5, 11, 112 },
+ { 6, 11, 103 }, { 134, 11, 150 }, { 8, 0, 914 }, { 10, 0, 3 },
+ { 4, 10, 215 }, { 9, 10, 38 }, { 11, 10, 23 }, { 11, 10, 127 },
+ { 139, 10, 796 }, { 135, 0, 399 }, { 6, 0, 563 }, { 137, 0, 224 },
+ { 6, 0, 704 }, { 134, 0, 1214 }, { 4, 11, 708 }, { 8, 11, 15 },
+ { 9, 11, 50 }, { 9, 11, 386 }, { 11, 11, 18 }, { 11, 11, 529 },
+ { 140, 11, 228 }, { 4, 11, 563 }, { 7, 11, 109 }, { 7, 11, 592 },
+ { 7, 11, 637 }, { 7, 11, 770 }, { 7, 11, 1701 }, { 8, 11, 436 },
+ { 8, 11, 463 }, { 9, 11, 60 }, { 9, 11, 335 }, { 9, 11, 904 },
+ { 10, 11, 73 }, { 11, 11, 434 }, { 12, 11, 585 }, { 13, 11, 331 },
+ { 18, 11, 110 }, { 148, 11, 60 }, { 134, 0, 1559 }, { 132, 11, 502 },
+ { 6, 11, 347 }, { 138, 11, 161 }, { 4, 11, 33 }, { 5, 11, 102 },
+ { 5, 11, 500 }, { 6, 11, 284 }, { 7, 11, 1079 }, { 7, 11, 1423 },
+ { 7, 11, 1702 }, { 8, 11, 470 }, { 9, 11, 554 }, { 9, 11, 723 },
+ { 139, 11, 333 }, { 7, 11, 246 }, { 135, 11, 840 }, { 6, 11, 10 },
+ { 8, 11, 571 }, { 9, 11, 739 }, { 143, 11, 91 }, { 8, 0, 861 },
+ { 10, 0, 905 }, { 12, 0, 730 }, { 12, 0, 789 }, { 133, 11, 626 },
+ { 134, 0, 946 }, { 5, 0, 746 }, { 12, 0, 333 }, { 14, 0, 332 },
+ { 12, 11, 333 }, { 142, 11, 332 }, { 5, 11, 18 }, { 6, 11, 526 },
+ { 13, 11, 24 }, { 13, 11, 110 }, { 19, 11, 5 }, { 147, 11, 44 },
+ { 4, 0, 910 }, { 5, 0, 832 }, { 135, 10, 2002 }, { 10, 11, 768 },
+ { 139, 11, 787 }, { 4, 11, 309 }, { 5, 11, 462 }, { 7, 11, 970 },
+ { 135, 11, 1097 }, { 4, 10, 28 }, { 5, 10, 440 }, { 7, 10, 248 },
+ { 11, 10, 833 }, { 140, 10, 344 }, { 134, 10, 1654 }, { 6, 0, 632 },
+ { 6, 0, 652 }, { 6, 0, 1272 }, { 6, 0, 1384 }, { 134, 0, 1560 },
+ { 134, 11, 1704 }, { 6, 0, 1393 }, { 133, 10, 853 }, { 6, 10, 249 },
+ { 7, 10, 1234 }, { 139, 10, 573 }, { 5, 11, 86 }, { 7, 11, 743 },
+ { 9, 11, 85 }, { 10, 11, 281 }, { 10, 11, 432 }, { 11, 11, 490 },
+ { 12, 11, 251 }, { 13, 11, 118 }, { 14, 11, 378 }, { 146, 11, 143 },
+ { 5, 11, 524 }, { 133, 11, 744 }, { 134, 0, 1514 }, { 10, 0, 201 },
+ { 142, 0, 319 }, { 7, 0, 717 }, { 10, 0, 510 }, { 7, 10, 392 },
+ { 8, 10, 20 }, { 8, 10, 172 }, { 8, 10, 690 }, { 9, 10, 383 },
+ { 9, 10, 845 }, { 11, 10, 293 }, { 11, 10, 832 }, { 11, 10, 920 },
+ { 11, 10, 984 }, { 141, 10, 221 }, { 134, 0, 1381 }, { 5, 10, 858 },
+ { 133, 10, 992 }, { 8, 0, 528 }, { 137, 0, 348 }, { 10, 11, 107 },
+ { 140, 11, 436 }, { 4, 0, 20 }, { 133, 0, 616 }, { 134, 0, 1251 },
+ { 132, 11, 927 }, { 10, 11, 123 }, { 12, 11, 670 }, { 13, 11, 371 },
+ { 14, 11, 142 }, { 146, 11, 94 }, { 134, 0, 1163 }, { 7, 11, 1149 },
+ { 137, 11, 156 }, { 134, 0, 307 }, { 133, 11, 778 }, { 7, 0, 1091 },
+ { 135, 0, 1765 }, { 5, 11, 502 }, { 6, 10, 268 }, { 137, 10, 62 },
+ { 8, 11, 196 }, { 10, 11, 283 }, { 139, 11, 406 }, { 4, 0, 26 },
+ { 5, 0, 429 }, { 6, 0, 245 }, { 7, 0, 704 }, { 7, 0, 1379 },
+ { 135, 0, 1474 }, { 133, 11, 855 }, { 132, 0, 881 }, { 4, 0, 621 },
+ { 135, 11, 1596 }, { 7, 11, 1400 }, { 9, 11, 446 }, { 138, 11, 45 },
+ { 6, 0, 736 }, { 138, 10, 106 }, { 133, 0, 542 }, { 134, 0, 348 },
+ { 133, 0, 868 }, { 136, 0, 433 }, { 135, 0, 1495 }, { 138, 0, 771 },
+ { 6, 10, 613 }, { 136, 10, 223 }, { 138, 0, 215 }, { 141, 0, 124 },
+ { 136, 11, 391 }, { 135, 11, 172 }, { 132, 10, 670 }, { 140, 0, 55 },
+ { 9, 10, 40 }, { 139, 10, 136 }, { 7, 0, 62 }, { 147, 0, 112 },
+ { 132, 0, 856 }, { 132, 11, 568 }, { 12, 0, 270 }, { 139, 10, 259 },
+ { 8, 0, 572 }, { 137, 0, 698 }, { 4, 11, 732 }, { 9, 10, 310 },
+ { 137, 10, 682 }, { 142, 10, 296 }, { 134, 0, 939 }, { 136, 11, 733 },
+ { 135, 11, 1435 }, { 7, 10, 1401 }, { 135, 10, 1476 }, { 6, 0, 352 },
+ { 4, 10, 296 }, { 7, 10, 401 }, { 7, 10, 1410 }, { 7, 10, 1594 },
+ { 7, 10, 1674 }, { 8, 10, 63 }, { 8, 10, 660 }, { 137, 10, 74 },
+ { 4, 11, 428 }, { 133, 11, 668 }, { 4, 10, 139 }, { 4, 10, 388 },
+ { 140, 10, 188 }, { 7, 11, 2015 }, { 140, 11, 665 }, { 132, 0, 647 },
+ { 146, 0, 10 }, { 138, 0, 220 }, { 142, 0, 464 }, { 132, 0, 109 },
+ { 134, 0, 1746 }, { 6, 0, 515 }, { 4, 10, 747 }, { 6, 11, 1623 },
+ { 6, 11, 1681 }, { 7, 10, 649 }, { 7, 10, 1479 }, { 135, 10, 1583 },
+ { 133, 10, 232 }, { 135, 0, 566 }, { 137, 10, 887 }, { 4, 0, 40 },
+ { 10, 0, 67 }, { 11, 0, 117 }, { 11, 0, 768 }, { 139, 0, 935 },
+ { 132, 0, 801 }, { 7, 0, 992 }, { 8, 0, 301 }, { 9, 0, 722 },
+ { 12, 0, 63 }, { 13, 0, 29 }, { 14, 0, 161 }, { 143, 0, 18 },
+ { 139, 0, 923 }, { 6, 11, 1748 }, { 8, 11, 715 }, { 9, 11, 802 },
+ { 10, 11, 46 }, { 10, 11, 819 }, { 13, 11, 308 }, { 14, 11, 351 },
+ { 14, 11, 363 }, { 146, 11, 67 }, { 137, 11, 745 }, { 7, 0, 1145 },
+ { 4, 10, 14 }, { 7, 10, 1801 }, { 10, 10, 748 }, { 141, 10, 458 },
+ { 4, 11, 63 }, { 5, 11, 347 }, { 134, 11, 474 }, { 135, 0, 568 },
+ { 4, 10, 425 }, { 7, 11, 577 }, { 7, 11, 1432 }, { 9, 11, 475 },
+ { 9, 11, 505 }, { 9, 11, 526 }, { 9, 11, 609 }, { 9, 11, 689 },
+ { 9, 11, 726 }, { 9, 11, 735 }, { 9, 11, 738 }, { 10, 11, 556 },
+ { 10, 11, 674 }, { 10, 11, 684 }, { 11, 11, 89 }, { 11, 11, 202 },
+ { 11, 11, 272 }, { 11, 11, 380 }, { 11, 11, 415 }, { 11, 11, 505 },
+ { 11, 11, 537 }, { 11, 11, 550 }, { 11, 11, 562 }, { 11, 11, 640 },
+ { 11, 11, 667 }, { 11, 11, 688 }, { 11, 11, 847 }, { 11, 11, 927 },
+ { 11, 11, 930 }, { 11, 11, 940 }, { 12, 11, 144 }, { 12, 11, 325 },
+ { 12, 11, 329 }, { 12, 11, 389 }, { 12, 11, 403 }, { 12, 11, 451 },
+ { 12, 11, 515 }, { 12, 11, 604 }, { 12, 11, 616 }, { 12, 11, 626 },
+ { 13, 11, 66 }, { 13, 11, 131 }, { 13, 11, 167 }, { 13, 11, 236 },
+ { 13, 11, 368 }, { 13, 11, 411 }, { 13, 11, 434 }, { 13, 11, 453 },
+ { 13, 11, 461 }, { 13, 11, 474 }, { 14, 11, 59 }, { 14, 11, 60 },
+ { 14, 11, 139 }, { 14, 11, 152 }, { 14, 11, 276 }, { 14, 11, 353 },
+ { 14, 11, 402 }, { 15, 11, 28 }, { 15, 11, 81 }, { 15, 11, 123 },
+ { 15, 11, 152 }, { 18, 11, 136 }, { 148, 11, 88 }, { 137, 0, 247 },
+ { 135, 11, 1622 }, { 9, 11, 544 }, { 11, 11, 413 }, { 144, 11, 25 },
+ { 4, 0, 645 }, { 7, 0, 825 }, { 6, 10, 1768 }, { 135, 11, 89 },
+ { 140, 0, 328 }, { 5, 10, 943 }, { 134, 10, 1779 }, { 134, 0, 1363 },
+ { 5, 10, 245 }, { 6, 10, 576 }, { 7, 10, 582 }, { 136, 10, 225 },
+ { 134, 0, 1280 }, { 5, 11, 824 }, { 133, 11, 941 }, { 7, 11, 440 },
+ { 8, 11, 230 }, { 139, 11, 106 }, { 5, 0, 28 }, { 6, 0, 204 },
+ { 10, 0, 320 }, { 10, 0, 583 }, { 13, 0, 502 }, { 14, 0, 72 },
+ { 14, 0, 274 }, { 14, 0, 312 }, { 14, 0, 344 }, { 15, 0, 159 },
+ { 16, 0, 62 }, { 16, 0, 69 }, { 17, 0, 30 }, { 18, 0, 42 },
+ { 18, 0, 53 }, { 18, 0, 84 }, { 18, 0, 140 }, { 19, 0, 68 },
+ { 19, 0, 85 }, { 20, 0, 5 }, { 20, 0, 45 }, { 20, 0, 101 },
+ { 22, 0, 7 }, { 150, 0, 20 }, { 4, 0, 558 }, { 6, 0, 390 },
+ { 7, 0, 162 }, { 7, 0, 689 }, { 9, 0, 360 }, { 138, 0, 653 },
+ { 134, 0, 764 }, { 6, 0, 862 }, { 137, 0, 833 }, { 5, 0, 856 },
+ { 6, 0, 1672 }, { 6, 0, 1757 }, { 134, 0, 1781 }, { 5, 0, 92 },
+ { 10, 0, 736 }, { 140, 0, 102 }, { 6, 0, 1927 }, { 6, 0, 1944 },
+ { 8, 0, 924 }, { 8, 0, 948 }, { 10, 0, 967 }, { 138, 0, 978 },
+ { 134, 0, 1479 }, { 5, 0, 590 }, { 8, 0, 360 }, { 9, 0, 213 },
+ { 138, 0, 63 }, { 134, 0, 1521 }, { 6, 0, 709 }, { 134, 0, 891 },
+ { 132, 10, 443 }, { 13, 0, 477 }, { 14, 0, 120 }, { 148, 0, 61 },
+ { 4, 11, 914 }, { 5, 11, 800 }, { 133, 11, 852 }, { 10, 11, 54 },
+ { 141, 11, 115 }, { 4, 11, 918 }, { 133, 11, 876 }, { 139, 11, 152 },
+ { 4, 11, 92 }, { 133, 11, 274 }, { 135, 11, 1901 }, { 9, 11, 800 },
+ { 10, 11, 693 }, { 11, 11, 482 }, { 11, 11, 734 }, { 139, 11, 789 },
+ { 9, 0, 483 }, { 132, 10, 298 }, { 6, 0, 1213 }, { 141, 11, 498 },
+ { 135, 11, 1451 }, { 133, 11, 743 }, { 4, 0, 1022 }, { 10, 0, 1000 },
+ { 12, 0, 957 }, { 12, 0, 980 }, { 12, 0, 1013 }, { 14, 0, 481 },
+ { 144, 0, 116 }, { 8, 0, 503 }, { 17, 0, 29 }, { 4, 11, 49 },
+ { 7, 11, 280 }, { 135, 11, 1633 }, { 135, 0, 1712 }, { 134, 0, 466 },
+ { 136, 11, 47 }, { 5, 10, 164 }, { 7, 10, 121 }, { 142, 10, 189 },
+ { 7, 10, 812 }, { 7, 10, 1261 }, { 7, 10, 1360 }, { 9, 10, 632 },
+ { 140, 10, 352 }, { 139, 10, 556 }, { 132, 0, 731 }, { 5, 11, 272 },
+ { 5, 11, 908 }, { 5, 11, 942 }, { 7, 11, 1008 }, { 7, 11, 1560 },
+ { 8, 11, 197 }, { 9, 11, 47 }, { 11, 11, 538 }, { 139, 11, 742 },
+ { 4, 10, 172 }, { 9, 10, 611 }, { 10, 10, 436 }, { 12, 10, 673 },
+ { 141, 10, 255 }, { 133, 10, 844 }, { 10, 0, 484 }, { 11, 0, 754 },
+ { 12, 0, 457 }, { 14, 0, 171 }, { 14, 0, 389 }, { 146, 0, 153 },
+ { 9, 10, 263 }, { 10, 10, 147 }, { 138, 10, 492 }, { 137, 11, 891 },
+ { 138, 0, 241 }, { 133, 10, 537 }, { 6, 0, 2005 }, { 136, 0, 964 },
+ { 137, 10, 842 }, { 151, 11, 8 }, { 4, 11, 407 }, { 132, 11, 560 },
+ { 135, 11, 1884 }, { 6, 0, 1100 }, { 134, 0, 1242 }, { 135, 0, 954 },
+ { 5, 10, 230 }, { 5, 10, 392 }, { 6, 10, 420 }, { 9, 10, 568 },
+ { 140, 10, 612 }, { 4, 11, 475 }, { 11, 11, 35 }, { 11, 11, 90 },
+ { 13, 11, 7 }, { 13, 11, 71 }, { 13, 11, 177 }, { 142, 11, 422 },
+ { 136, 11, 332 }, { 135, 0, 1958 }, { 6, 0, 549 }, { 8, 0, 34 },
+ { 8, 0, 283 }, { 9, 0, 165 }, { 138, 0, 475 }, { 10, 0, 952 },
+ { 12, 0, 966 }, { 140, 0, 994 }, { 5, 0, 652 }, { 5, 0, 701 },
+ { 135, 0, 449 }, { 4, 0, 655 }, { 7, 0, 850 }, { 17, 0, 75 },
+ { 146, 0, 137 }, { 4, 0, 146 }, { 7, 0, 1618 }, { 8, 0, 670 },
+ { 5, 10, 41 }, { 7, 10, 1459 }, { 7, 10, 1469 }, { 7, 10, 1859 },
+ { 9, 10, 549 }, { 139, 10, 905 }, { 133, 10, 696 }, { 6, 0, 159 },
+ { 6, 0, 364 }, { 7, 0, 516 }, { 137, 0, 518 }, { 135, 0, 1439 },
+ { 6, 11, 222 }, { 7, 11, 636 }, { 7, 11, 1620 }, { 8, 11, 409 },
+ { 9, 11, 693 }, { 139, 11, 77 }, { 13, 0, 151 }, { 141, 11, 45 },
+ { 6, 0, 1027 }, { 4, 11, 336 }, { 132, 10, 771 }, { 139, 11, 392 },
+ { 10, 11, 121 }, { 11, 11, 175 }, { 149, 11, 16 }, { 8, 0, 950 },
+ { 138, 0, 983 }, { 133, 10, 921 }, { 135, 0, 993 }, { 6, 10, 180 },
+ { 7, 10, 1137 }, { 8, 10, 751 }, { 139, 10, 805 }, { 7, 0, 501 },
+ { 9, 0, 111 }, { 10, 0, 141 }, { 11, 0, 332 }, { 13, 0, 43 },
+ { 13, 0, 429 }, { 14, 0, 130 }, { 14, 0, 415 }, { 145, 0, 102 },
+ { 4, 10, 183 }, { 5, 11, 882 }, { 7, 10, 271 }, { 11, 10, 824 },
+ { 11, 10, 952 }, { 13, 10, 278 }, { 13, 10, 339 }, { 13, 10, 482 },
+ { 14, 10, 424 }, { 148, 10, 99 }, { 4, 10, 19 }, { 5, 10, 477 },
+ { 5, 10, 596 }, { 6, 10, 505 }, { 7, 10, 1221 }, { 11, 10, 907 },
+ { 12, 10, 209 }, { 141, 10, 214 }, { 135, 10, 1215 }, { 133, 0, 452 },
+ { 132, 11, 426 }, { 5, 0, 149 }, { 136, 0, 233 }, { 133, 0, 935 },
+ { 6, 11, 58 }, { 7, 11, 654 }, { 7, 11, 745 }, { 7, 11, 1969 },
+ { 8, 11, 240 }, { 8, 11, 675 }, { 9, 11, 479 }, { 9, 11, 731 },
+ { 10, 11, 330 }, { 10, 11, 593 }, { 10, 11, 817 }, { 11, 11, 32 },
+ { 11, 11, 133 }, { 11, 11, 221 }, { 145, 11, 68 }, { 12, 0, 582 },
+ { 18, 0, 131 }, { 7, 11, 102 }, { 137, 11, 538 }, { 136, 0, 801 },
+ { 134, 10, 1645 }, { 132, 0, 70 }, { 6, 10, 92 }, { 6, 10, 188 },
+ { 7, 10, 1269 }, { 7, 10, 1524 }, { 7, 10, 1876 }, { 10, 10, 228 },
+ { 139, 10, 1020 }, { 4, 10, 459 }, { 133, 10, 966 }, { 138, 0, 369 },
+ { 16, 0, 36 }, { 140, 10, 330 }, { 141, 11, 366 }, { 7, 0, 721 },
+ { 10, 0, 236 }, { 12, 0, 204 }, { 6, 10, 18 }, { 7, 10, 932 },
+ { 8, 10, 757 }, { 9, 10, 54 }, { 9, 10, 65 }, { 9, 10, 844 },
+ { 10, 10, 113 }, { 10, 10, 315 }, { 10, 10, 798 }, { 11, 10, 153 },
+ { 12, 10, 151 }, { 12, 10, 392 }, { 12, 10, 666 }, { 142, 10, 248 },
+ { 7, 0, 241 }, { 10, 0, 430 }, { 8, 10, 548 }, { 9, 10, 532 },
+ { 10, 10, 117 }, { 11, 10, 351 }, { 11, 10, 375 }, { 143, 10, 23 },
+ { 134, 10, 1742 }, { 133, 10, 965 }, { 133, 11, 566 }, { 6, 11, 48 },
+ { 135, 11, 63 }, { 134, 10, 182 }, { 10, 10, 65 }, { 10, 10, 488 },
+ { 138, 10, 497 }, { 6, 11, 114 }, { 7, 11, 1224 }, { 7, 11, 1556 },
+ { 136, 11, 3 }, { 134, 0, 1817 }, { 8, 11, 576 }, { 137, 11, 267 },
+ { 6, 0, 1078 }, { 144, 0, 16 }, { 9, 10, 588 }, { 138, 10, 260 },
+ { 138, 0, 1021 }, { 5, 0, 406 }, { 134, 0, 2022 }, { 133, 11, 933 },
+ { 6, 0, 69 }, { 135, 0, 117 }, { 7, 0, 1830 }, { 136, 11, 427 },
+ { 4, 0, 432 }, { 135, 0, 824 }, { 134, 10, 1786 }, { 133, 0, 826 },
+ { 139, 11, 67 }, { 133, 11, 759 }, { 135, 10, 308 }, { 137, 0, 816 },
+ { 133, 0, 1000 }, { 4, 0, 297 }, { 6, 0, 529 }, { 7, 0, 152 },
+ { 7, 0, 713 }, { 7, 0, 1845 }, { 8, 0, 710 }, { 8, 0, 717 },
+ { 12, 0, 639 }, { 140, 0, 685 }, { 7, 0, 423 }, { 136, 10, 588 },
+ { 136, 10, 287 }, { 136, 0, 510 }, { 134, 0, 1048 }, { 6, 0, 618 },
+ { 7, 11, 56 }, { 7, 11, 1989 }, { 8, 11, 337 }, { 8, 11, 738 },
+ { 9, 11, 600 }, { 10, 11, 483 }, { 12, 11, 37 }, { 13, 11, 447 },
+ { 142, 11, 92 }, { 4, 0, 520 }, { 135, 0, 575 }, { 8, 0, 990 },
+ { 138, 0, 977 }, { 135, 11, 774 }, { 9, 11, 347 }, { 11, 11, 24 },
+ { 140, 11, 170 }, { 136, 11, 379 }, { 140, 10, 290 }, { 132, 11, 328 },
+ { 4, 0, 321 }, { 134, 0, 569 }, { 4, 11, 101 }, { 135, 11, 1171 },
+ { 7, 0, 723 }, { 7, 0, 1135 }, { 5, 11, 833 }, { 136, 11, 744 },
+ { 7, 10, 719 }, { 8, 10, 809 }, { 136, 10, 834 }, { 8, 0, 921 },
+ { 136, 10, 796 }, { 5, 10, 210 }, { 6, 10, 213 }, { 7, 10, 60 },
+ { 10, 10, 364 }, { 139, 10, 135 }, { 5, 0, 397 }, { 6, 0, 154 },
+ { 7, 0, 676 }, { 8, 0, 443 }, { 8, 0, 609 }, { 9, 0, 24 },
+ { 9, 0, 325 }, { 10, 0, 35 }, { 11, 0, 535 }, { 11, 0, 672 },
+ { 11, 0, 1018 }, { 12, 0, 637 }, { 16, 0, 30 }, { 5, 10, 607 },
+ { 8, 10, 326 }, { 136, 10, 490 }, { 4, 10, 701 }, { 5, 10, 472 },
+ { 6, 11, 9 }, { 6, 11, 397 }, { 7, 11, 53 }, { 7, 11, 1742 },
+ { 9, 10, 758 }, { 10, 11, 632 }, { 11, 11, 828 }, { 140, 11, 146 },
+ { 135, 10, 380 }, { 135, 10, 1947 }, { 148, 11, 109 }, { 10, 10, 278 },
+ { 138, 11, 278 }, { 134, 0, 856 }, { 7, 0, 139 }, { 4, 10, 386 },
+ { 8, 10, 405 }, { 8, 10, 728 }, { 9, 10, 497 }, { 11, 10, 110 },
+ { 11, 10, 360 }, { 15, 10, 37 }, { 144, 10, 84 }, { 141, 0, 282 },
+ { 133, 0, 981 }, { 5, 0, 288 }, { 7, 10, 1452 }, { 7, 10, 1480 },
+ { 8, 10, 634 }, { 140, 10, 472 }, { 7, 0, 1890 }, { 8, 11, 367 },
+ { 10, 11, 760 }, { 14, 11, 79 }, { 20, 11, 17 }, { 152, 11, 0 },
+ { 4, 10, 524 }, { 136, 10, 810 }, { 4, 0, 56 }, { 7, 0, 1791 },
+ { 8, 0, 607 }, { 8, 0, 651 }, { 11, 0, 465 }, { 11, 0, 835 },
+ { 12, 0, 337 }, { 141, 0, 480 }, { 10, 10, 238 }, { 141, 10, 33 },
+ { 11, 11, 417 }, { 12, 11, 223 }, { 140, 11, 265 }, { 9, 0, 158 },
+ { 10, 0, 411 }, { 140, 0, 261 }, { 133, 10, 532 }, { 133, 10, 997 },
+ { 12, 11, 186 }, { 12, 11, 292 }, { 14, 11, 100 }, { 146, 11, 70 },
+ { 6, 0, 1403 }, { 136, 0, 617 }, { 134, 0, 1205 }, { 139, 0, 563 },
+ { 4, 0, 242 }, { 134, 0, 333 }, { 4, 11, 186 }, { 5, 11, 157 },
+ { 8, 11, 168 }, { 138, 11, 6 }, { 132, 0, 369 }, { 133, 11, 875 },
+ { 5, 10, 782 }, { 5, 10, 829 }, { 134, 10, 1738 }, { 134, 0, 622 },
+ { 135, 11, 1272 }, { 6, 0, 1407 }, { 7, 11, 111 }, { 136, 11, 581 },
+ { 7, 10, 1823 }, { 139, 10, 693 }, { 7, 0, 160 }, { 10, 0, 624 },
+ { 142, 0, 279 }, { 132, 0, 363 }, { 10, 11, 589 }, { 12, 11, 111 },
+ { 13, 11, 260 }, { 14, 11, 82 }, { 18, 11, 63 }, { 147, 11, 45 },
+ { 7, 11, 1364 }, { 7, 11, 1907 }, { 141, 11, 158 }, { 4, 11, 404 },
+ { 4, 11, 659 }, { 135, 11, 675 }, { 13, 11, 211 }, { 14, 11, 133 },
+ { 14, 11, 204 }, { 15, 11, 64 }, { 15, 11, 69 }, { 15, 11, 114 },
+ { 16, 11, 10 }, { 19, 11, 23 }, { 19, 11, 35 }, { 19, 11, 39 },
+ { 19, 11, 51 }, { 19, 11, 71 }, { 19, 11, 75 }, { 152, 11, 15 },
+ { 4, 10, 78 }, { 5, 10, 96 }, { 5, 10, 182 }, { 7, 10, 1724 },
+ { 7, 10, 1825 }, { 10, 10, 394 }, { 10, 10, 471 }, { 11, 10, 532 },
+ { 14, 10, 340 }, { 145, 10, 88 }, { 135, 10, 1964 }, { 133, 11, 391 },
+ { 11, 11, 887 }, { 14, 11, 365 }, { 142, 11, 375 }, { 5, 11, 540 },
+ { 6, 11, 1697 }, { 7, 11, 222 }, { 136, 11, 341 }, { 134, 11, 78 },
+ { 9, 0, 601 }, { 9, 0, 619 }, { 10, 0, 505 }, { 10, 0, 732 },
+ { 11, 0, 355 }, { 140, 0, 139 }, { 134, 0, 292 }, { 139, 0, 174 },
+ { 5, 0, 177 }, { 6, 0, 616 }, { 7, 0, 827 }, { 9, 0, 525 },
+ { 138, 0, 656 }, { 10, 0, 31 }, { 6, 10, 215 }, { 7, 10, 1028 },
+ { 7, 10, 1473 }, { 7, 10, 1721 }, { 9, 10, 424 }, { 138, 10, 779 },
+ { 135, 10, 584 }, { 136, 11, 293 }, { 134, 0, 685 }, { 135, 11, 1868 },
+ { 133, 11, 460 }, { 7, 0, 647 }, { 6, 10, 67 }, { 7, 10, 1630 },
+ { 9, 10, 354 }, { 9, 10, 675 }, { 10, 10, 830 }, { 14, 10, 80 },
+ { 145, 10, 80 }, { 4, 0, 161 }, { 133, 0, 631 }, { 6, 10, 141 },
+ { 7, 10, 225 }, { 9, 10, 59 }, { 9, 10, 607 }, { 10, 10, 312 },
+ { 11, 10, 687 }, { 12, 10, 555 }, { 13, 10, 373 }, { 13, 10, 494 },
+ { 148, 10, 58 }, { 7, 11, 965 }, { 7, 11, 1460 }, { 135, 11, 1604 },
+ { 136, 10, 783 }, { 134, 11, 388 }, { 6, 0, 722 }, { 6, 0, 1267 },
+ { 4, 11, 511 }, { 9, 11, 333 }, { 9, 11, 379 }, { 10, 11, 602 },
+ { 11, 11, 441 }, { 11, 11, 723 }, { 11, 11, 976 }, { 140, 11, 357 },
+ { 134, 0, 1797 }, { 135, 0, 1684 }, { 9, 0, 469 }, { 9, 0, 709 },
+ { 12, 0, 512 }, { 14, 0, 65 }, { 17, 0, 12 }, { 5, 11, 938 },
+ { 136, 11, 707 }, { 7, 0, 1230 }, { 136, 0, 531 }, { 10, 0, 229 },
+ { 11, 0, 73 }, { 11, 0, 376 }, { 139, 0, 433 }, { 12, 0, 268 },
+ { 12, 0, 640 }, { 142, 0, 119 }, { 7, 10, 430 }, { 139, 10, 46 },
+ { 6, 0, 558 }, { 7, 0, 651 }, { 8, 0, 421 }, { 9, 0, 0 },
+ { 10, 0, 34 }, { 139, 0, 1008 }, { 6, 0, 106 }, { 7, 0, 1786 },
+ { 7, 0, 1821 }, { 9, 0, 102 }, { 9, 0, 763 }, { 5, 10, 602 },
+ { 7, 10, 2018 }, { 137, 10, 418 }, { 5, 0, 65 }, { 6, 0, 416 },
+ { 7, 0, 1720 }, { 7, 0, 1924 }, { 10, 0, 109 }, { 11, 0, 14 },
+ { 11, 0, 70 }, { 11, 0, 569 }, { 11, 0, 735 }, { 15, 0, 153 },
+ { 20, 0, 80 }, { 136, 10, 677 }, { 135, 11, 1625 }, { 137, 11, 772 },
+ { 136, 0, 595 }, { 6, 11, 469 }, { 7, 11, 1709 }, { 138, 11, 515 },
+ { 7, 0, 1832 }, { 138, 0, 374 }, { 9, 0, 106 }, { 9, 0, 163 },
+ { 9, 0, 296 }, { 10, 0, 167 }, { 10, 0, 172 }, { 10, 0, 777 },
+ { 139, 0, 16 }, { 6, 0, 6 }, { 7, 0, 81 }, { 7, 0, 771 },
+ { 7, 0, 1731 }, { 9, 0, 405 }, { 138, 0, 421 }, { 4, 11, 500 },
+ { 135, 11, 938 }, { 5, 11, 68 }, { 134, 11, 383 }, { 5, 0, 881 },
+ { 133, 0, 885 }, { 6, 0, 854 }, { 6, 0, 1132 }, { 6, 0, 1495 },
+ { 6, 0, 1526 }, { 6, 0, 1533 }, { 134, 0, 1577 }, { 4, 11, 337 },
+ { 6, 11, 353 }, { 7, 11, 1934 }, { 8, 11, 488 }, { 137, 11, 429 },
+ { 7, 11, 236 }, { 7, 11, 1795 }, { 8, 11, 259 }, { 9, 11, 135 },
+ { 9, 11, 177 }, { 10, 11, 825 }, { 11, 11, 115 }, { 11, 11, 370 },
+ { 11, 11, 405 }, { 11, 11, 604 }, { 12, 11, 10 }, { 12, 11, 667 },
+ { 12, 11, 669 }, { 13, 11, 76 }, { 14, 11, 310 }, { 15, 11, 76 },
+ { 15, 11, 147 }, { 148, 11, 23 }, { 5, 0, 142 }, { 134, 0, 546 },
+ { 4, 11, 15 }, { 5, 11, 22 }, { 6, 11, 244 }, { 7, 11, 40 },
+ { 7, 11, 200 }, { 7, 11, 906 }, { 7, 11, 1199 }, { 9, 11, 616 },
+ { 10, 11, 716 }, { 11, 11, 635 }, { 11, 11, 801 }, { 140, 11, 458 },
+ { 5, 0, 466 }, { 11, 0, 571 }, { 12, 0, 198 }, { 13, 0, 283 },
+ { 14, 0, 186 }, { 15, 0, 21 }, { 15, 0, 103 }, { 135, 10, 329 },
+ { 4, 0, 185 }, { 5, 0, 257 }, { 5, 0, 839 }, { 5, 0, 936 },
+ { 9, 0, 399 }, { 10, 0, 258 }, { 10, 0, 395 }, { 10, 0, 734 },
+ { 11, 0, 1014 }, { 12, 0, 23 }, { 13, 0, 350 }, { 14, 0, 150 },
+ { 19, 0, 6 }, { 135, 11, 1735 }, { 12, 11, 36 }, { 141, 11, 337 },
+ { 5, 11, 598 }, { 7, 11, 791 }, { 8, 11, 108 }, { 137, 11, 123 },
+ { 132, 10, 469 }, { 7, 0, 404 }, { 7, 0, 1377 }, { 7, 0, 1430 },
+ { 7, 0, 2017 }, { 8, 0, 149 }, { 8, 0, 239 }, { 8, 0, 512 },
+ { 8, 0, 793 }, { 8, 0, 818 }, { 9, 0, 474 }, { 9, 0, 595 },
+ { 10, 0, 122 }, { 10, 0, 565 }, { 10, 0, 649 }, { 10, 0, 783 },
+ { 11, 0, 239 }, { 11, 0, 295 }, { 11, 0, 447 }, { 11, 0, 528 },
+ { 11, 0, 639 }, { 11, 0, 800 }, { 12, 0, 25 }, { 12, 0, 77 },
+ { 12, 0, 157 }, { 12, 0, 256 }, { 12, 0, 316 }, { 12, 0, 390 },
+ { 12, 0, 391 }, { 12, 0, 395 }, { 12, 0, 478 }, { 12, 0, 503 },
+ { 12, 0, 592 }, { 12, 0, 680 }, { 13, 0, 50 }, { 13, 0, 53 },
+ { 13, 0, 132 }, { 13, 0, 198 }, { 13, 0, 322 }, { 13, 0, 415 },
+ { 13, 0, 511 }, { 14, 0, 71 }, { 14, 0, 395 }, { 15, 0, 71 },
+ { 15, 0, 136 }, { 17, 0, 123 }, { 18, 0, 93 }, { 147, 0, 58 },
+ { 136, 0, 712 }, { 134, 10, 1743 }, { 5, 10, 929 }, { 6, 10, 340 },
+ { 8, 10, 376 }, { 136, 10, 807 }, { 6, 0, 1848 }, { 8, 0, 860 },
+ { 10, 0, 856 }, { 10, 0, 859 }, { 10, 0, 925 }, { 10, 0, 941 },
+ { 140, 0, 762 }, { 6, 0, 629 }, { 6, 0, 906 }, { 9, 0, 810 },
+ { 140, 0, 652 }, { 5, 10, 218 }, { 7, 10, 1610 }, { 138, 10, 83 },
+ { 7, 10, 1512 }, { 135, 10, 1794 }, { 4, 0, 377 }, { 24, 0, 13 },
+ { 4, 11, 155 }, { 7, 11, 1689 }, { 11, 10, 0 }, { 144, 10, 78 },
+ { 4, 11, 164 }, { 5, 11, 151 }, { 5, 11, 730 }, { 5, 11, 741 },
+ { 7, 11, 498 }, { 7, 11, 870 }, { 7, 11, 1542 }, { 12, 11, 213 },
+ { 14, 11, 36 }, { 14, 11, 391 }, { 17, 11, 111 }, { 18, 11, 6 },
+ { 18, 11, 46 }, { 18, 11, 151 }, { 19, 11, 36 }, { 20, 11, 32 },
+ { 20, 11, 56 }, { 20, 11, 69 }, { 20, 11, 102 }, { 21, 11, 4 },
+ { 22, 11, 8 }, { 22, 11, 10 }, { 22, 11, 14 }, { 150, 11, 31 },
+ { 7, 0, 1842 }, { 133, 10, 571 }, { 4, 10, 455 }, { 4, 11, 624 },
+ { 135, 11, 1752 }, { 134, 0, 1501 }, { 4, 11, 492 }, { 5, 11, 451 },
+ { 6, 10, 161 }, { 7, 10, 372 }, { 137, 10, 597 }, { 132, 10, 349 },
+ { 4, 0, 180 }, { 135, 0, 1906 }, { 135, 11, 835 }, { 141, 11, 70 },
+ { 132, 0, 491 }, { 137, 10, 751 }, { 6, 10, 432 }, { 139, 10, 322 },
+ { 4, 0, 171 }, { 138, 0, 234 }, { 6, 11, 113 }, { 135, 11, 436 },
+ { 4, 0, 586 }, { 7, 0, 1186 }, { 138, 0, 631 }, { 5, 10, 468 },
+ { 10, 10, 325 }, { 11, 10, 856 }, { 12, 10, 345 }, { 143, 10, 104 },
+ { 5, 10, 223 }, { 10, 11, 592 }, { 10, 11, 753 }, { 12, 11, 317 },
+ { 12, 11, 355 }, { 12, 11, 465 }, { 12, 11, 469 }, { 12, 11, 560 },
+ { 12, 11, 578 }, { 141, 11, 243 }, { 132, 10, 566 }, { 135, 11, 520 },
+ { 4, 10, 59 }, { 135, 10, 1394 }, { 6, 10, 436 }, { 139, 10, 481 },
+ { 9, 0, 931 }, { 10, 0, 334 }, { 20, 0, 71 }, { 4, 10, 48 },
+ { 5, 10, 271 }, { 7, 10, 953 }, { 135, 11, 1878 }, { 11, 0, 170 },
+ { 5, 10, 610 }, { 136, 10, 457 }, { 133, 10, 755 }, { 6, 0, 1587 },
+ { 135, 10, 1217 }, { 4, 10, 197 }, { 149, 11, 26 }, { 133, 11, 585 },
+ { 137, 11, 521 }, { 133, 0, 765 }, { 133, 10, 217 }, { 139, 11, 586 },
+ { 133, 0, 424 }, { 9, 11, 752 }, { 12, 11, 610 }, { 13, 11, 431 },
+ { 16, 11, 59 }, { 146, 11, 109 }, { 136, 0, 714 }, { 7, 0, 685 },
+ { 132, 11, 307 }, { 9, 0, 420 }, { 10, 0, 269 }, { 10, 0, 285 },
+ { 10, 0, 576 }, { 11, 0, 397 }, { 13, 0, 175 }, { 145, 0, 90 },
+ { 132, 0, 429 }, { 133, 11, 964 }, { 9, 11, 463 }, { 138, 11, 595 },
+ { 7, 0, 18 }, { 7, 0, 699 }, { 7, 0, 1966 }, { 8, 0, 752 },
+ { 9, 0, 273 }, { 9, 0, 412 }, { 9, 0, 703 }, { 10, 0, 71 },
+ { 10, 0, 427 }, { 138, 0, 508 }, { 4, 10, 165 }, { 7, 10, 1398 },
+ { 135, 10, 1829 }, { 4, 0, 53 }, { 5, 0, 186 }, { 7, 0, 752 },
+ { 7, 0, 828 }, { 142, 0, 116 }, { 8, 0, 575 }, { 10, 0, 289 },
+ { 139, 0, 319 }, { 132, 0, 675 }, { 134, 0, 1424 }, { 4, 11, 75 },
+ { 5, 11, 180 }, { 6, 11, 500 }, { 7, 11, 58 }, { 7, 11, 710 },
+ { 138, 11, 645 }, { 133, 11, 649 }, { 6, 11, 276 }, { 7, 11, 282 },
+ { 7, 11, 879 }, { 7, 11, 924 }, { 8, 11, 459 }, { 9, 11, 599 },
+ { 9, 11, 754 }, { 11, 11, 574 }, { 12, 11, 128 }, { 12, 11, 494 },
+ { 13, 11, 52 }, { 13, 11, 301 }, { 15, 11, 30 }, { 143, 11, 132 },
+ { 6, 0, 647 }, { 134, 0, 1095 }, { 5, 10, 9 }, { 7, 10, 297 },
+ { 7, 10, 966 }, { 140, 10, 306 }, { 132, 11, 200 }, { 134, 0, 1334 },
+ { 5, 10, 146 }, { 6, 10, 411 }, { 138, 10, 721 }, { 6, 0, 209 },
+ { 6, 0, 1141 }, { 6, 0, 1288 }, { 8, 0, 468 }, { 9, 0, 210 },
+ { 11, 0, 36 }, { 12, 0, 28 }, { 12, 0, 630 }, { 13, 0, 21 },
+ { 13, 0, 349 }, { 14, 0, 7 }, { 145, 0, 13 }, { 6, 10, 177 },
+ { 135, 10, 467 }, { 4, 0, 342 }, { 135, 0, 1179 }, { 10, 11, 454 },
+ { 140, 11, 324 }, { 4, 0, 928 }, { 133, 0, 910 }, { 7, 0, 1838 },
+ { 6, 11, 225 }, { 137, 11, 211 }, { 16, 0, 101 }, { 20, 0, 115 },
+ { 20, 0, 118 }, { 148, 0, 122 }, { 4, 0, 496 }, { 135, 0, 856 },
+ { 4, 0, 318 }, { 11, 0, 654 }, { 7, 11, 718 }, { 139, 11, 102 },
+ { 8, 11, 58 }, { 9, 11, 724 }, { 11, 11, 809 }, { 13, 11, 113 },
+ { 145, 11, 72 }, { 5, 10, 200 }, { 6, 11, 345 }, { 135, 11, 1247 },
+ { 8, 11, 767 }, { 8, 11, 803 }, { 9, 11, 301 }, { 137, 11, 903 },
+ { 7, 0, 915 }, { 8, 0, 247 }, { 19, 0, 0 }, { 7, 11, 1949 },
+ { 136, 11, 674 }, { 4, 0, 202 }, { 5, 0, 382 }, { 6, 0, 454 },
+ { 7, 0, 936 }, { 7, 0, 1803 }, { 8, 0, 758 }, { 9, 0, 375 },
+ { 9, 0, 895 }, { 10, 0, 743 }, { 10, 0, 792 }, { 11, 0, 978 },
+ { 11, 0, 1012 }, { 142, 0, 109 }, { 7, 0, 1150 }, { 7, 0, 1425 },
+ { 7, 0, 1453 }, { 140, 0, 513 }, { 134, 11, 259 }, { 138, 0, 791 },
+ { 11, 0, 821 }, { 12, 0, 110 }, { 12, 0, 153 }, { 18, 0, 41 },
+ { 150, 0, 19 }, { 134, 10, 481 }, { 132, 0, 796 }, { 6, 0, 445 },
+ { 9, 0, 909 }, { 136, 11, 254 }, { 10, 0, 776 }, { 13, 0, 345 },
+ { 142, 0, 425 }, { 4, 10, 84 }, { 7, 10, 1482 }, { 10, 10, 76 },
+ { 138, 10, 142 }, { 135, 11, 742 }, { 6, 0, 578 }, { 133, 10, 1015 },
+ { 6, 0, 1387 }, { 4, 10, 315 }, { 5, 10, 507 }, { 135, 10, 1370 },
+ { 4, 0, 438 }, { 133, 0, 555 }, { 136, 0, 766 }, { 133, 11, 248 },
+ { 134, 10, 1722 }, { 4, 11, 116 }, { 5, 11, 95 }, { 5, 11, 445 },
+ { 7, 11, 1688 }, { 8, 11, 29 }, { 9, 11, 272 }, { 11, 11, 509 },
+ { 139, 11, 915 }, { 135, 0, 541 }, { 133, 11, 543 }, { 8, 10, 222 },
+ { 8, 10, 476 }, { 9, 10, 238 }, { 11, 10, 516 }, { 11, 10, 575 },
+ { 15, 10, 109 }, { 146, 10, 100 }, { 6, 0, 880 }, { 134, 0, 1191 },
+ { 5, 11, 181 }, { 136, 11, 41 }, { 134, 0, 1506 }, { 132, 11, 681 },
+ { 7, 11, 25 }, { 8, 11, 202 }, { 138, 11, 536 }, { 139, 0, 983 },
+ { 137, 0, 768 }, { 132, 0, 584 }, { 9, 11, 423 }, { 140, 11, 89 },
+ { 8, 11, 113 }, { 9, 11, 877 }, { 10, 11, 554 }, { 11, 11, 83 },
+ { 12, 11, 136 }, { 147, 11, 109 }, { 7, 10, 706 }, { 7, 10, 1058 },
+ { 138, 10, 538 }, { 133, 11, 976 }, { 4, 11, 206 }, { 135, 11, 746 },
+ { 136, 11, 526 }, { 140, 0, 737 }, { 11, 10, 92 }, { 11, 10, 196 },
+ { 11, 10, 409 }, { 11, 10, 450 }, { 11, 10, 666 }, { 11, 10, 777 },
+ { 12, 10, 262 }, { 13, 10, 385 }, { 13, 10, 393 }, { 15, 10, 115 },
+ { 16, 10, 45 }, { 145, 10, 82 }, { 4, 0, 226 }, { 4, 0, 326 },
+ { 7, 0, 1770 }, { 4, 11, 319 }, { 5, 11, 699 }, { 138, 11, 673 },
+ { 6, 10, 40 }, { 135, 10, 1781 }, { 5, 0, 426 }, { 8, 0, 30 },
+ { 9, 0, 2 }, { 11, 0, 549 }, { 147, 0, 122 }, { 6, 0, 1161 },
+ { 134, 0, 1329 }, { 138, 10, 97 }, { 6, 10, 423 }, { 7, 10, 665 },
+ { 135, 10, 1210 }, { 7, 11, 13 }, { 8, 11, 226 }, { 10, 11, 537 },
+ { 11, 11, 570 }, { 11, 11, 605 }, { 11, 11, 799 }, { 11, 11, 804 },
+ { 12, 11, 85 }, { 12, 11, 516 }, { 12, 11, 623 }, { 13, 11, 112 },
+ { 13, 11, 361 }, { 14, 11, 77 }, { 14, 11, 78 }, { 17, 11, 28 },
+ { 147, 11, 110 }, { 132, 11, 769 }, { 132, 11, 551 }, { 132, 11, 728 },
+ { 147, 0, 117 }, { 9, 11, 57 }, { 9, 11, 459 }, { 10, 11, 425 },
+ { 11, 11, 119 }, { 12, 11, 184 }, { 12, 11, 371 }, { 13, 11, 358 },
+ { 145, 11, 51 }, { 5, 11, 188 }, { 5, 11, 814 }, { 8, 11, 10 },
+ { 9, 11, 421 }, { 9, 11, 729 }, { 10, 11, 609 }, { 139, 11, 689 },
+ { 134, 11, 624 }, { 135, 11, 298 }, { 135, 0, 462 }, { 4, 0, 345 },
+ { 139, 10, 624 }, { 136, 10, 574 }, { 4, 0, 385 }, { 7, 0, 265 },
+ { 135, 0, 587 }, { 6, 0, 808 }, { 132, 11, 528 }, { 133, 0, 398 },
+ { 132, 10, 354 }, { 4, 0, 347 }, { 5, 0, 423 }, { 5, 0, 996 },
+ { 135, 0, 1329 }, { 135, 10, 1558 }, { 7, 0, 1259 }, { 9, 0, 125 },
+ { 139, 0, 65 }, { 5, 0, 136 }, { 6, 0, 136 }, { 136, 0, 644 },
+ { 5, 11, 104 }, { 6, 11, 173 }, { 135, 11, 1631 }, { 135, 0, 469 },
+ { 133, 10, 830 }, { 4, 0, 278 }, { 5, 0, 465 }, { 135, 0, 1367 },
+ { 7, 11, 810 }, { 8, 11, 138 }, { 8, 11, 342 }, { 9, 11, 84 },
+ { 10, 11, 193 }, { 11, 11, 883 }, { 140, 11, 359 }, { 5, 10, 496 },
+ { 135, 10, 203 }, { 4, 0, 433 }, { 133, 0, 719 }, { 6, 11, 95 },
+ { 134, 10, 547 }, { 5, 10, 88 }, { 137, 10, 239 }, { 6, 11, 406 },
+ { 10, 11, 409 }, { 10, 11, 447 }, { 11, 11, 44 }, { 140, 11, 100 },
+ { 134, 0, 1423 }, { 7, 10, 650 }, { 135, 10, 1310 }, { 134, 0, 749 },
+ { 135, 11, 1243 }, { 135, 0, 1363 }, { 6, 0, 381 }, { 7, 0, 645 },
+ { 7, 0, 694 }, { 8, 0, 546 }, { 7, 10, 1076 }, { 9, 10, 80 },
+ { 11, 10, 78 }, { 11, 10, 421 }, { 11, 10, 534 }, { 140, 10, 545 },
+ { 134, 11, 1636 }, { 135, 11, 1344 }, { 12, 0, 277 }, { 7, 10, 274 },
+ { 11, 10, 479 }, { 139, 10, 507 }, { 6, 0, 705 }, { 6, 0, 783 },
+ { 6, 0, 1275 }, { 6, 0, 1481 }, { 4, 11, 282 }, { 7, 11, 1034 },
+ { 11, 11, 398 }, { 11, 11, 634 }, { 12, 11, 1 }, { 12, 11, 79 },
+ { 12, 11, 544 }, { 14, 11, 237 }, { 17, 11, 10 }, { 146, 11, 20 },
+ { 134, 0, 453 }, { 4, 0, 555 }, { 8, 0, 536 }, { 10, 0, 288 },
+ { 11, 0, 1005 }, { 4, 10, 497 }, { 135, 10, 1584 }, { 5, 11, 118 },
+ { 5, 11, 499 }, { 6, 11, 476 }, { 7, 11, 600 }, { 7, 11, 888 },
+ { 135, 11, 1096 }, { 138, 0, 987 }, { 7, 0, 1107 }, { 7, 10, 261 },
+ { 7, 10, 1115 }, { 7, 10, 1354 }, { 7, 10, 1588 }, { 7, 10, 1705 },
+ { 7, 10, 1902 }, { 9, 10, 465 }, { 10, 10, 248 }, { 10, 10, 349 },
+ { 10, 10, 647 }, { 11, 10, 527 }, { 11, 10, 660 }, { 11, 10, 669 },
+ { 12, 10, 529 }, { 141, 10, 305 }, { 7, 11, 296 }, { 7, 11, 596 },
+ { 8, 11, 560 }, { 8, 11, 586 }, { 9, 11, 612 }, { 11, 11, 100 },
+ { 11, 11, 304 }, { 12, 11, 46 }, { 13, 11, 89 }, { 14, 11, 112 },
+ { 145, 11, 122 }, { 9, 0, 370 }, { 138, 0, 90 }, { 136, 10, 13 },
+ { 132, 0, 860 }, { 7, 10, 642 }, { 8, 10, 250 }, { 11, 10, 123 },
+ { 11, 10, 137 }, { 13, 10, 48 }, { 142, 10, 95 }, { 135, 10, 1429 },
+ { 137, 11, 321 }, { 132, 0, 257 }, { 135, 0, 2031 }, { 7, 0, 1768 },
+ { 7, 11, 1599 }, { 7, 11, 1723 }, { 8, 11, 79 }, { 8, 11, 106 },
+ { 8, 11, 190 }, { 8, 11, 302 }, { 8, 11, 383 }, { 9, 11, 119 },
+ { 9, 11, 233 }, { 9, 11, 298 }, { 9, 11, 419 }, { 9, 11, 471 },
+ { 10, 11, 181 }, { 10, 11, 406 }, { 11, 11, 57 }, { 11, 11, 85 },
+ { 11, 11, 120 }, { 11, 11, 177 }, { 11, 11, 296 }, { 11, 11, 382 },
+ { 11, 11, 454 }, { 11, 11, 758 }, { 11, 11, 999 }, { 12, 11, 27 },
+ { 12, 11, 98 }, { 12, 11, 131 }, { 12, 11, 245 }, { 12, 11, 312 },
+ { 12, 11, 446 }, { 12, 11, 454 }, { 13, 11, 25 }, { 13, 11, 98 },
+ { 13, 11, 426 }, { 13, 11, 508 }, { 14, 11, 6 }, { 14, 11, 163 },
+ { 14, 11, 272 }, { 14, 11, 277 }, { 14, 11, 370 }, { 15, 11, 95 },
+ { 15, 11, 138 }, { 15, 11, 167 }, { 17, 11, 18 }, { 17, 11, 38 },
+ { 20, 11, 96 }, { 149, 11, 32 }, { 5, 11, 722 }, { 134, 11, 1759 },
+ { 145, 11, 16 }, { 6, 0, 1071 }, { 134, 0, 1561 }, { 10, 10, 545 },
+ { 140, 10, 301 }, { 6, 0, 83 }, { 6, 0, 1733 }, { 135, 0, 1389 },
+ { 4, 0, 835 }, { 135, 0, 1818 }, { 133, 11, 258 }, { 4, 10, 904 },
+ { 133, 10, 794 }, { 134, 0, 2006 }, { 5, 11, 30 }, { 7, 11, 495 },
+ { 8, 11, 134 }, { 9, 11, 788 }, { 140, 11, 438 }, { 135, 11, 2004 },
+ { 137, 0, 696 }, { 5, 11, 50 }, { 6, 11, 439 }, { 7, 11, 780 },
+ { 135, 11, 1040 }, { 7, 11, 772 }, { 7, 11, 1104 }, { 7, 11, 1647 },
+ { 11, 11, 269 }, { 11, 11, 539 }, { 11, 11, 607 }, { 11, 11, 627 },
+ { 11, 11, 706 }, { 11, 11, 975 }, { 12, 11, 248 }, { 12, 11, 311 },
+ { 12, 11, 434 }, { 12, 11, 600 }, { 12, 11, 622 }, { 13, 11, 297 },
+ { 13, 11, 367 }, { 13, 11, 485 }, { 14, 11, 69 }, { 14, 11, 409 },
+ { 143, 11, 108 }, { 5, 11, 1 }, { 6, 11, 81 }, { 138, 11, 520 },
+ { 7, 0, 1718 }, { 9, 0, 95 }, { 9, 0, 274 }, { 10, 0, 279 },
+ { 10, 0, 317 }, { 10, 0, 420 }, { 11, 0, 303 }, { 11, 0, 808 },
+ { 12, 0, 134 }, { 12, 0, 367 }, { 13, 0, 149 }, { 13, 0, 347 },
+ { 14, 0, 349 }, { 14, 0, 406 }, { 18, 0, 22 }, { 18, 0, 89 },
+ { 18, 0, 122 }, { 147, 0, 47 }, { 5, 11, 482 }, { 8, 11, 98 },
+ { 9, 11, 172 }, { 10, 11, 222 }, { 10, 11, 700 }, { 10, 11, 822 },
+ { 11, 11, 302 }, { 11, 11, 778 }, { 12, 11, 50 }, { 12, 11, 127 },
+ { 12, 11, 396 }, { 13, 11, 62 }, { 13, 11, 328 }, { 14, 11, 122 },
+ { 147, 11, 72 }, { 7, 10, 386 }, { 138, 10, 713 }, { 6, 10, 7 },
+ { 6, 10, 35 }, { 7, 10, 147 }, { 7, 10, 1069 }, { 7, 10, 1568 },
+ { 7, 10, 1575 }, { 7, 10, 1917 }, { 8, 10, 43 }, { 8, 10, 208 },
+ { 9, 10, 128 }, { 9, 10, 866 }, { 10, 10, 20 }, { 11, 10, 981 },
+ { 147, 10, 33 }, { 133, 0, 26 }, { 132, 0, 550 }, { 5, 11, 2 },
+ { 7, 11, 1494 }, { 136, 11, 589 }, { 6, 11, 512 }, { 7, 11, 797 },
+ { 8, 11, 253 }, { 9, 11, 77 }, { 10, 11, 1 }, { 10, 11, 129 },
+ { 10, 11, 225 }, { 11, 11, 118 }, { 11, 11, 226 }, { 11, 11, 251 },
+ { 11, 11, 430 }, { 11, 11, 701 }, { 11, 11, 974 }, { 11, 11, 982 },
+ { 12, 11, 64 }, { 12, 11, 260 }, { 12, 11, 488 }, { 140, 11, 690 },
+ { 7, 10, 893 }, { 141, 10, 424 }, { 134, 0, 901 }, { 136, 0, 822 },
+ { 4, 0, 902 }, { 5, 0, 809 }, { 134, 0, 122 }, { 6, 0, 807 },
+ { 134, 0, 1366 }, { 7, 0, 262 }, { 5, 11, 748 }, { 134, 11, 553 },
+ { 133, 0, 620 }, { 4, 0, 34 }, { 5, 0, 574 }, { 7, 0, 279 },
+ { 7, 0, 1624 }, { 136, 0, 601 }, { 9, 0, 170 }, { 6, 10, 322 },
+ { 9, 10, 552 }, { 11, 10, 274 }, { 13, 10, 209 }, { 13, 10, 499 },
+ { 14, 10, 85 }, { 15, 10, 126 }, { 145, 10, 70 }, { 132, 0, 537 },
+ { 4, 11, 12 }, { 7, 11, 420 }, { 7, 11, 522 }, { 7, 11, 809 },
+ { 8, 11, 797 }, { 141, 11, 88 }, { 133, 0, 332 }, { 8, 10, 83 },
+ { 8, 10, 742 }, { 8, 10, 817 }, { 9, 10, 28 }, { 9, 10, 29 },
+ { 9, 10, 885 }, { 10, 10, 387 }, { 11, 10, 633 }, { 11, 10, 740 },
+ { 13, 10, 235 }, { 13, 10, 254 }, { 15, 10, 143 }, { 143, 10, 146 },
+ { 6, 0, 1909 }, { 9, 0, 964 }, { 12, 0, 822 }, { 12, 0, 854 },
+ { 12, 0, 865 }, { 12, 0, 910 }, { 12, 0, 938 }, { 15, 0, 169 },
+ { 15, 0, 208 }, { 15, 0, 211 }, { 18, 0, 205 }, { 18, 0, 206 },
+ { 18, 0, 220 }, { 18, 0, 223 }, { 152, 0, 24 }, { 140, 10, 49 },
+ { 5, 11, 528 }, { 135, 11, 1580 }, { 6, 0, 261 }, { 8, 0, 182 },
+ { 139, 0, 943 }, { 134, 0, 1721 }, { 4, 0, 933 }, { 133, 0, 880 },
+ { 136, 11, 321 }, { 5, 11, 266 }, { 9, 11, 290 }, { 9, 11, 364 },
+ { 10, 11, 293 }, { 11, 11, 606 }, { 142, 11, 45 }, { 6, 0, 1609 },
+ { 4, 11, 50 }, { 6, 11, 510 }, { 6, 11, 594 }, { 9, 11, 121 },
+ { 10, 11, 49 }, { 10, 11, 412 }, { 139, 11, 834 }, { 7, 0, 895 },
+ { 136, 11, 748 }, { 132, 11, 466 }, { 4, 10, 110 }, { 10, 10, 415 },
+ { 10, 10, 597 }, { 142, 10, 206 }, { 133, 0, 812 }, { 135, 11, 281 },
+ { 6, 0, 1890 }, { 6, 0, 1902 }, { 6, 0, 1916 }, { 9, 0, 929 },
+ { 9, 0, 942 }, { 9, 0, 975 }, { 9, 0, 984 }, { 9, 0, 986 },
+ { 9, 0, 1011 }, { 9, 0, 1019 }, { 12, 0, 804 }, { 12, 0, 851 },
+ { 12, 0, 867 }, { 12, 0, 916 }, { 12, 0, 923 }, { 15, 0, 194 },
+ { 15, 0, 204 }, { 15, 0, 210 }, { 15, 0, 222 }, { 15, 0, 223 },
+ { 15, 0, 229 }, { 15, 0, 250 }, { 18, 0, 179 }, { 18, 0, 186 },
+ { 18, 0, 192 }, { 7, 10, 205 }, { 135, 10, 2000 }, { 132, 11, 667 },
+ { 135, 0, 778 }, { 4, 0, 137 }, { 7, 0, 1178 }, { 135, 0, 1520 },
+ { 134, 0, 1314 }, { 4, 11, 242 }, { 134, 11, 333 }, { 6, 0, 1661 },
+ { 7, 0, 1975 }, { 7, 0, 2009 }, { 135, 0, 2011 }, { 134, 0, 1591 },
+ { 4, 10, 283 }, { 135, 10, 1194 }, { 11, 0, 820 }, { 150, 0, 51 },
+ { 4, 11, 39 }, { 5, 11, 36 }, { 7, 11, 1843 }, { 8, 11, 407 },
+ { 11, 11, 144 }, { 140, 11, 523 }, { 134, 10, 1720 }, { 4, 11, 510 },
+ { 7, 11, 29 }, { 7, 11, 66 }, { 7, 11, 1980 }, { 10, 11, 487 },
+ { 10, 11, 809 }, { 146, 11, 9 }, { 5, 0, 89 }, { 7, 0, 1915 },
+ { 9, 0, 185 }, { 9, 0, 235 }, { 10, 0, 64 }, { 10, 0, 270 },
+ { 10, 0, 403 }, { 10, 0, 469 }, { 10, 0, 529 }, { 10, 0, 590 },
+ { 11, 0, 140 }, { 11, 0, 860 }, { 13, 0, 1 }, { 13, 0, 422 },
+ { 14, 0, 341 }, { 14, 0, 364 }, { 17, 0, 93 }, { 18, 0, 113 },
+ { 19, 0, 97 }, { 147, 0, 113 }, { 133, 0, 695 }, { 6, 0, 987 },
+ { 134, 0, 1160 }, { 5, 0, 6 }, { 6, 0, 183 }, { 7, 0, 680 },
+ { 7, 0, 978 }, { 7, 0, 1013 }, { 7, 0, 1055 }, { 12, 0, 230 },
+ { 13, 0, 172 }, { 146, 0, 29 }, { 134, 11, 570 }, { 132, 11, 787 },
+ { 134, 11, 518 }, { 6, 0, 29 }, { 139, 0, 63 }, { 132, 11, 516 },
+ { 136, 11, 821 }, { 132, 0, 311 }, { 134, 0, 1740 }, { 7, 0, 170 },
+ { 8, 0, 90 }, { 8, 0, 177 }, { 8, 0, 415 }, { 11, 0, 714 },
+ { 14, 0, 281 }, { 136, 10, 735 }, { 134, 0, 1961 }, { 135, 11, 1405 },
+ { 4, 11, 10 }, { 7, 11, 917 }, { 139, 11, 786 }, { 5, 10, 132 },
+ { 9, 10, 486 }, { 9, 10, 715 }, { 10, 10, 458 }, { 11, 10, 373 },
+ { 11, 10, 668 }, { 11, 10, 795 }, { 11, 10, 897 }, { 12, 10, 272 },
+ { 12, 10, 424 }, { 12, 10, 539 }, { 12, 10, 558 }, { 14, 10, 245 },
+ { 14, 10, 263 }, { 14, 10, 264 }, { 14, 10, 393 }, { 142, 10, 403 },
+ { 11, 0, 91 }, { 13, 0, 129 }, { 15, 0, 101 }, { 145, 0, 125 },
+ { 135, 0, 1132 }, { 4, 0, 494 }, { 6, 0, 74 }, { 7, 0, 44 },
+ { 7, 0, 407 }, { 12, 0, 17 }, { 15, 0, 5 }, { 148, 0, 11 },
+ { 133, 10, 379 }, { 5, 0, 270 }, { 5, 11, 684 }, { 6, 10, 89 },
+ { 6, 10, 400 }, { 7, 10, 1569 }, { 7, 10, 1623 }, { 7, 10, 1850 },
+ { 8, 10, 218 }, { 8, 10, 422 }, { 9, 10, 570 }, { 138, 10, 626 },
+ { 4, 0, 276 }, { 133, 0, 296 }, { 6, 0, 1523 }, { 134, 11, 27 },
+ { 6, 10, 387 }, { 7, 10, 882 }, { 141, 10, 111 }, { 6, 10, 224 },
+ { 7, 10, 877 }, { 137, 10, 647 }, { 135, 10, 790 }, { 4, 0, 7 },
+ { 5, 0, 90 }, { 5, 0, 158 }, { 6, 0, 542 }, { 7, 0, 221 },
+ { 7, 0, 1574 }, { 9, 0, 490 }, { 10, 0, 540 }, { 11, 0, 443 },
+ { 139, 0, 757 }, { 7, 0, 588 }, { 9, 0, 175 }, { 138, 0, 530 },
+ { 135, 10, 394 }, { 142, 11, 23 }, { 134, 0, 786 }, { 135, 0, 580 },
+ { 7, 0, 88 }, { 136, 0, 627 }, { 5, 0, 872 }, { 6, 0, 57 },
+ { 7, 0, 471 }, { 9, 0, 447 }, { 137, 0, 454 }, { 6, 11, 342 },
+ { 6, 11, 496 }, { 8, 11, 275 }, { 137, 11, 206 }, { 4, 11, 909 },
+ { 133, 11, 940 }, { 6, 0, 735 }, { 132, 11, 891 }, { 8, 0, 845 },
+ { 8, 0, 916 }, { 135, 10, 1409 }, { 5, 0, 31 }, { 134, 0, 614 },
+ { 11, 0, 458 }, { 12, 0, 15 }, { 140, 0, 432 }, { 8, 0, 330 },
+ { 140, 0, 477 }, { 4, 0, 530 }, { 5, 0, 521 }, { 7, 0, 1200 },
+ { 10, 0, 460 }, { 132, 11, 687 }, { 6, 0, 424 }, { 135, 0, 1866 },
+ { 9, 0, 569 }, { 12, 0, 12 }, { 12, 0, 81 }, { 12, 0, 319 },
+ { 13, 0, 69 }, { 14, 0, 259 }, { 16, 0, 87 }, { 17, 0, 1 },
+ { 17, 0, 21 }, { 17, 0, 24 }, { 18, 0, 15 }, { 18, 0, 56 },
+ { 18, 0, 59 }, { 18, 0, 127 }, { 18, 0, 154 }, { 19, 0, 19 },
+ { 148, 0, 31 }, { 7, 0, 1302 }, { 136, 10, 38 }, { 134, 11, 253 },
+ { 5, 10, 261 }, { 7, 10, 78 }, { 7, 10, 199 }, { 8, 10, 815 },
+ { 9, 10, 126 }, { 138, 10, 342 }, { 5, 0, 595 }, { 135, 0, 1863 },
+ { 6, 11, 41 }, { 141, 11, 160 }, { 5, 0, 13 }, { 134, 0, 142 },
+ { 6, 0, 97 }, { 7, 0, 116 }, { 8, 0, 322 }, { 8, 0, 755 },
+ { 9, 0, 548 }, { 10, 0, 714 }, { 11, 0, 884 }, { 13, 0, 324 },
+ { 7, 11, 1304 }, { 138, 11, 477 }, { 132, 10, 628 }, { 134, 11, 1718 },
+ { 7, 10, 266 }, { 136, 10, 804 }, { 135, 10, 208 }, { 7, 0, 1021 },
+ { 6, 10, 79 }, { 135, 10, 1519 }, { 7, 0, 1472 }, { 135, 0, 1554 },
+ { 6, 11, 362 }, { 146, 11, 51 }, { 7, 0, 1071 }, { 7, 0, 1541 },
+ { 7, 0, 1767 }, { 7, 0, 1806 }, { 11, 0, 162 }, { 11, 0, 242 },
+ { 11, 0, 452 }, { 12, 0, 605 }, { 15, 0, 26 }, { 144, 0, 44 },
+ { 136, 10, 741 }, { 133, 11, 115 }, { 145, 0, 115 }, { 134, 10, 376 },
+ { 6, 0, 1406 }, { 134, 0, 1543 }, { 5, 11, 193 }, { 12, 11, 178 },
+ { 13, 11, 130 }, { 145, 11, 84 }, { 135, 0, 1111 }, { 8, 0, 1 },
+ { 9, 0, 650 }, { 10, 0, 326 }, { 5, 11, 705 }, { 137, 11, 606 },
+ { 5, 0, 488 }, { 6, 0, 527 }, { 7, 0, 489 }, { 7, 0, 1636 },
+ { 8, 0, 121 }, { 8, 0, 144 }, { 8, 0, 359 }, { 9, 0, 193 },
+ { 9, 0, 241 }, { 9, 0, 336 }, { 9, 0, 882 }, { 11, 0, 266 },
+ { 11, 0, 372 }, { 11, 0, 944 }, { 12, 0, 401 }, { 140, 0, 641 },
+ { 135, 11, 174 }, { 6, 0, 267 }, { 7, 10, 244 }, { 7, 10, 632 },
+ { 7, 10, 1609 }, { 8, 10, 178 }, { 8, 10, 638 }, { 141, 10, 58 },
+ { 134, 0, 1983 }, { 134, 0, 1155 }, { 134, 0, 1575 }, { 134, 0, 1438 },
+ { 9, 0, 31 }, { 10, 0, 244 }, { 10, 0, 699 }, { 12, 0, 149 },
+ { 141, 0, 497 }, { 133, 0, 377 }, { 4, 11, 122 }, { 5, 11, 796 },
+ { 5, 11, 952 }, { 6, 11, 1660 }, { 6, 11, 1671 }, { 8, 11, 567 },
+ { 9, 11, 687 }, { 9, 11, 742 }, { 10, 11, 686 }, { 11, 11, 356 },
+ { 11, 11, 682 }, { 140, 11, 281 }, { 145, 0, 101 }, { 11, 11, 0 },
+ { 144, 11, 78 }, { 5, 11, 179 }, { 5, 10, 791 }, { 7, 11, 1095 },
+ { 135, 11, 1213 }, { 8, 11, 372 }, { 9, 11, 122 }, { 138, 11, 175 },
+ { 7, 10, 686 }, { 8, 10, 33 }, { 8, 10, 238 }, { 10, 10, 616 },
+ { 11, 10, 467 }, { 11, 10, 881 }, { 13, 10, 217 }, { 13, 10, 253 },
+ { 142, 10, 268 }, { 9, 0, 476 }, { 4, 11, 66 }, { 7, 11, 722 },
+ { 135, 11, 904 }, { 7, 11, 352 }, { 137, 11, 684 }, { 135, 0, 2023 },
+ { 135, 0, 1836 }, { 132, 10, 447 }, { 5, 0, 843 }, { 144, 0, 35 },
+ { 137, 11, 779 }, { 141, 11, 35 }, { 4, 10, 128 }, { 5, 10, 415 },
+ { 6, 10, 462 }, { 7, 10, 294 }, { 7, 10, 578 }, { 10, 10, 710 },
+ { 139, 10, 86 }, { 132, 0, 554 }, { 133, 0, 536 }, { 136, 10, 587 },
+ { 5, 0, 207 }, { 9, 0, 79 }, { 11, 0, 625 }, { 145, 0, 7 },
+ { 7, 0, 1371 }, { 6, 10, 427 }, { 138, 10, 692 }, { 4, 0, 424 },
+ { 4, 10, 195 }, { 135, 10, 802 }, { 8, 0, 785 }, { 133, 11, 564 },
+ { 135, 0, 336 }, { 4, 0, 896 }, { 6, 0, 1777 }, { 134, 11, 556 },
+ { 137, 11, 103 }, { 134, 10, 1683 }, { 7, 11, 544 }, { 8, 11, 719 },
+ { 138, 11, 61 }, { 138, 10, 472 }, { 4, 11, 5 }, { 5, 11, 498 },
+ { 136, 11, 637 }, { 7, 0, 750 }, { 9, 0, 223 }, { 11, 0, 27 },
+ { 11, 0, 466 }, { 12, 0, 624 }, { 14, 0, 265 }, { 146, 0, 61 },
+ { 12, 0, 238 }, { 18, 0, 155 }, { 12, 11, 238 }, { 146, 11, 155 },
+ { 151, 10, 28 }, { 133, 11, 927 }, { 12, 0, 383 }, { 5, 10, 3 },
+ { 8, 10, 578 }, { 9, 10, 118 }, { 10, 10, 705 }, { 141, 10, 279 },
+ { 4, 11, 893 }, { 5, 11, 780 }, { 133, 11, 893 }, { 4, 0, 603 },
+ { 133, 0, 661 }, { 4, 0, 11 }, { 6, 0, 128 }, { 7, 0, 231 },
+ { 7, 0, 1533 }, { 10, 0, 725 }, { 5, 10, 229 }, { 5, 11, 238 },
+ { 135, 11, 1350 }, { 8, 10, 102 }, { 10, 10, 578 }, { 10, 10, 672 },
+ { 12, 10, 496 }, { 13, 10, 408 }, { 14, 10, 121 }, { 145, 10, 106 },
+ { 132, 0, 476 }, { 134, 0, 1552 }, { 134, 11, 1729 }, { 8, 10, 115 },
+ { 8, 10, 350 }, { 9, 10, 489 }, { 10, 10, 128 }, { 11, 10, 306 },
+ { 12, 10, 373 }, { 14, 10, 30 }, { 17, 10, 79 }, { 19, 10, 80 },
+ { 150, 10, 55 }, { 135, 0, 1807 }, { 4, 0, 680 }, { 4, 11, 60 },
+ { 7, 11, 760 }, { 7, 11, 1800 }, { 8, 11, 314 }, { 9, 11, 700 },
+ { 139, 11, 487 }, { 4, 10, 230 }, { 5, 10, 702 }, { 148, 11, 94 },
+ { 132, 11, 228 }, { 139, 0, 435 }, { 9, 0, 20 }, { 10, 0, 324 },
+ { 10, 0, 807 }, { 139, 0, 488 }, { 6, 10, 1728 }, { 136, 11, 419 },
+ { 4, 10, 484 }, { 18, 10, 26 }, { 19, 10, 42 }, { 20, 10, 43 },
+ { 21, 10, 0 }, { 23, 10, 27 }, { 152, 10, 14 }, { 135, 0, 1431 },
+ { 133, 11, 828 }, { 5, 0, 112 }, { 6, 0, 103 }, { 6, 0, 150 },
+ { 7, 0, 1303 }, { 9, 0, 292 }, { 10, 0, 481 }, { 20, 0, 13 },
+ { 7, 11, 176 }, { 7, 11, 178 }, { 7, 11, 1110 }, { 10, 11, 481 },
+ { 148, 11, 13 }, { 138, 0, 356 }, { 4, 11, 51 }, { 5, 11, 39 },
+ { 6, 11, 4 }, { 7, 11, 591 }, { 7, 11, 849 }, { 7, 11, 951 },
+ { 7, 11, 1129 }, { 7, 11, 1613 }, { 7, 11, 1760 }, { 7, 11, 1988 },
+ { 9, 11, 434 }, { 10, 11, 754 }, { 11, 11, 25 }, { 11, 11, 37 },
+ { 139, 11, 414 }, { 6, 0, 1963 }, { 134, 0, 2000 }, { 132, 10, 633 },
+ { 6, 0, 1244 }, { 133, 11, 902 }, { 135, 11, 928 }, { 140, 0, 18 },
+ { 138, 0, 204 }, { 135, 11, 1173 }, { 134, 0, 867 }, { 4, 0, 708 },
+ { 8, 0, 15 }, { 9, 0, 50 }, { 9, 0, 386 }, { 11, 0, 18 },
+ { 11, 0, 529 }, { 140, 0, 228 }, { 134, 11, 270 }, { 4, 0, 563 },
+ { 7, 0, 109 }, { 7, 0, 592 }, { 7, 0, 637 }, { 7, 0, 770 },
+ { 8, 0, 463 }, { 9, 0, 60 }, { 9, 0, 335 }, { 9, 0, 904 },
+ { 10, 0, 73 }, { 11, 0, 434 }, { 12, 0, 585 }, { 13, 0, 331 },
+ { 18, 0, 110 }, { 148, 0, 60 }, { 132, 0, 502 }, { 14, 11, 359 },
+ { 19, 11, 52 }, { 148, 11, 47 }, { 6, 11, 377 }, { 7, 11, 1025 },
+ { 9, 11, 613 }, { 145, 11, 104 }, { 6, 0, 347 }, { 10, 0, 161 },
+ { 5, 10, 70 }, { 5, 10, 622 }, { 6, 10, 334 }, { 7, 10, 1032 },
+ { 9, 10, 171 }, { 11, 10, 26 }, { 11, 10, 213 }, { 11, 10, 637 },
+ { 11, 10, 707 }, { 12, 10, 202 }, { 12, 10, 380 }, { 13, 10, 226 },
+ { 13, 10, 355 }, { 14, 10, 222 }, { 145, 10, 42 }, { 132, 11, 416 },
+ { 4, 0, 33 }, { 5, 0, 102 }, { 6, 0, 284 }, { 7, 0, 1079 },
+ { 7, 0, 1423 }, { 7, 0, 1702 }, { 8, 0, 470 }, { 9, 0, 554 },
+ { 9, 0, 723 }, { 11, 0, 333 }, { 142, 11, 372 }, { 5, 11, 152 },
+ { 5, 11, 197 }, { 7, 11, 340 }, { 7, 11, 867 }, { 10, 11, 548 },
+ { 10, 11, 581 }, { 11, 11, 6 }, { 12, 11, 3 }, { 12, 11, 19 },
+ { 14, 11, 110 }, { 142, 11, 289 }, { 7, 0, 246 }, { 135, 0, 840 },
+ { 6, 0, 10 }, { 8, 0, 571 }, { 9, 0, 739 }, { 143, 0, 91 },
+ { 6, 0, 465 }, { 7, 0, 1465 }, { 4, 10, 23 }, { 4, 10, 141 },
+ { 5, 10, 313 }, { 5, 10, 1014 }, { 6, 10, 50 }, { 7, 10, 142 },
+ { 7, 10, 559 }, { 8, 10, 640 }, { 9, 10, 460 }, { 9, 10, 783 },
+ { 11, 10, 741 }, { 12, 10, 183 }, { 141, 10, 488 }, { 133, 0, 626 },
+ { 136, 0, 614 }, { 138, 0, 237 }, { 7, 11, 34 }, { 7, 11, 190 },
+ { 8, 11, 28 }, { 8, 11, 141 }, { 8, 11, 444 }, { 8, 11, 811 },
+ { 9, 11, 468 }, { 11, 11, 334 }, { 12, 11, 24 }, { 12, 11, 386 },
+ { 140, 11, 576 }, { 133, 11, 757 }, { 5, 0, 18 }, { 6, 0, 526 },
+ { 13, 0, 24 }, { 13, 0, 110 }, { 19, 0, 5 }, { 147, 0, 44 },
+ { 6, 0, 506 }, { 134, 11, 506 }, { 135, 11, 1553 }, { 4, 0, 309 },
+ { 5, 0, 462 }, { 7, 0, 970 }, { 7, 0, 1097 }, { 22, 0, 30 },
+ { 22, 0, 33 }, { 7, 11, 1385 }, { 11, 11, 582 }, { 11, 11, 650 },
+ { 11, 11, 901 }, { 11, 11, 949 }, { 12, 11, 232 }, { 12, 11, 236 },
+ { 13, 11, 413 }, { 13, 11, 501 }, { 146, 11, 116 }, { 9, 0, 140 },
+ { 5, 10, 222 }, { 138, 10, 534 }, { 6, 0, 1056 }, { 137, 10, 906 },
+ { 134, 0, 1704 }, { 138, 10, 503 }, { 134, 0, 1036 }, { 5, 10, 154 },
+ { 7, 10, 1491 }, { 10, 10, 379 }, { 138, 10, 485 }, { 4, 11, 383 },
+ { 133, 10, 716 }, { 134, 0, 1315 }, { 5, 0, 86 }, { 7, 0, 743 },
+ { 9, 0, 85 }, { 10, 0, 281 }, { 10, 0, 432 }, { 11, 0, 825 },
+ { 12, 0, 251 }, { 13, 0, 118 }, { 142, 0, 378 }, { 8, 0, 264 },
+ { 4, 10, 91 }, { 5, 10, 388 }, { 5, 10, 845 }, { 6, 10, 206 },
+ { 6, 10, 252 }, { 6, 10, 365 }, { 7, 10, 136 }, { 7, 10, 531 },
+ { 136, 10, 621 }, { 5, 0, 524 }, { 133, 0, 744 }, { 5, 11, 277 },
+ { 141, 11, 247 }, { 132, 11, 435 }, { 10, 0, 107 }, { 140, 0, 436 },
+ { 132, 0, 927 }, { 10, 0, 123 }, { 12, 0, 670 }, { 146, 0, 94 },
+ { 7, 0, 1149 }, { 9, 0, 156 }, { 138, 0, 957 }, { 5, 11, 265 },
+ { 6, 11, 212 }, { 135, 11, 28 }, { 133, 0, 778 }, { 133, 0, 502 },
+ { 8, 0, 196 }, { 10, 0, 283 }, { 139, 0, 406 }, { 135, 10, 576 },
+ { 136, 11, 535 }, { 134, 0, 1312 }, { 5, 10, 771 }, { 5, 10, 863 },
+ { 5, 10, 898 }, { 6, 10, 1632 }, { 6, 10, 1644 }, { 134, 10, 1780 },
+ { 5, 0, 855 }, { 5, 10, 331 }, { 135, 11, 1487 }, { 132, 11, 702 },
+ { 5, 11, 808 }, { 135, 11, 2045 }, { 7, 0, 1400 }, { 9, 0, 446 },
+ { 138, 0, 45 }, { 140, 10, 632 }, { 132, 0, 1003 }, { 5, 11, 166 },
+ { 8, 11, 739 }, { 140, 11, 511 }, { 5, 10, 107 }, { 7, 10, 201 },
+ { 136, 10, 518 }, { 6, 10, 446 }, { 135, 10, 1817 }, { 134, 0, 1532 },
+ { 134, 0, 1097 }, { 4, 11, 119 }, { 5, 11, 170 }, { 5, 11, 447 },
+ { 7, 11, 1708 }, { 7, 11, 1889 }, { 9, 11, 357 }, { 9, 11, 719 },
+ { 12, 11, 486 }, { 140, 11, 596 }, { 9, 10, 851 }, { 141, 10, 510 },
+ { 7, 0, 612 }, { 8, 0, 545 }, { 8, 0, 568 }, { 8, 0, 642 },
+ { 9, 0, 717 }, { 10, 0, 541 }, { 10, 0, 763 }, { 11, 0, 449 },
+ { 12, 0, 489 }, { 13, 0, 153 }, { 13, 0, 296 }, { 14, 0, 138 },
+ { 14, 0, 392 }, { 15, 0, 50 }, { 16, 0, 6 }, { 16, 0, 12 },
+ { 20, 0, 9 }, { 132, 10, 504 }, { 4, 11, 450 }, { 135, 11, 1158 },
+ { 11, 0, 54 }, { 13, 0, 173 }, { 13, 0, 294 }, { 5, 10, 883 },
+ { 5, 10, 975 }, { 8, 10, 392 }, { 148, 10, 7 }, { 13, 0, 455 },
+ { 15, 0, 99 }, { 15, 0, 129 }, { 144, 0, 68 }, { 135, 0, 172 },
+ { 132, 11, 754 }, { 5, 10, 922 }, { 134, 10, 1707 }, { 134, 0, 1029 },
+ { 17, 11, 39 }, { 148, 11, 36 }, { 4, 0, 568 }, { 5, 10, 993 },
+ { 7, 10, 515 }, { 137, 10, 91 }, { 132, 0, 732 }, { 10, 0, 617 },
+ { 138, 11, 617 }, { 134, 0, 974 }, { 7, 0, 989 }, { 10, 0, 377 },
+ { 12, 0, 363 }, { 13, 0, 68 }, { 13, 0, 94 }, { 14, 0, 108 },
+ { 142, 0, 306 }, { 136, 0, 733 }, { 132, 0, 428 }, { 7, 0, 1789 },
+ { 135, 11, 1062 }, { 7, 0, 2015 }, { 140, 0, 665 }, { 135, 10, 1433 },
+ { 5, 0, 287 }, { 7, 10, 921 }, { 8, 10, 580 }, { 8, 10, 593 },
+ { 8, 10, 630 }, { 138, 10, 28 }, { 138, 0, 806 }, { 4, 10, 911 },
+ { 5, 10, 867 }, { 5, 10, 1013 }, { 7, 10, 2034 }, { 8, 10, 798 },
+ { 136, 10, 813 }, { 134, 0, 1539 }, { 8, 11, 523 }, { 150, 11, 34 },
+ { 135, 11, 740 }, { 7, 11, 238 }, { 7, 11, 2033 }, { 8, 11, 120 },
+ { 8, 11, 188 }, { 8, 11, 659 }, { 9, 11, 598 }, { 10, 11, 466 },
+ { 12, 11, 342 }, { 12, 11, 588 }, { 13, 11, 503 }, { 14, 11, 246 },
+ { 143, 11, 92 }, { 7, 0, 1563 }, { 141, 0, 182 }, { 5, 10, 135 },
+ { 6, 10, 519 }, { 7, 10, 1722 }, { 10, 10, 271 }, { 11, 10, 261 },
+ { 145, 10, 54 }, { 14, 10, 338 }, { 148, 10, 81 }, { 7, 0, 484 },
+ { 4, 10, 300 }, { 133, 10, 436 }, { 145, 11, 114 }, { 6, 0, 1623 },
+ { 134, 0, 1681 }, { 133, 11, 640 }, { 4, 11, 201 }, { 7, 11, 1744 },
+ { 8, 11, 602 }, { 11, 11, 247 }, { 11, 11, 826 }, { 145, 11, 65 },
+ { 8, 11, 164 }, { 146, 11, 62 }, { 6, 0, 1833 }, { 6, 0, 1861 },
+ { 136, 0, 878 }, { 134, 0, 1569 }, { 8, 10, 357 }, { 10, 10, 745 },
+ { 14, 10, 426 }, { 17, 10, 94 }, { 147, 10, 57 }, { 12, 0, 93 },
+ { 12, 0, 501 }, { 13, 0, 362 }, { 14, 0, 151 }, { 15, 0, 40 },
+ { 15, 0, 59 }, { 16, 0, 46 }, { 17, 0, 25 }, { 18, 0, 14 },
+ { 18, 0, 134 }, { 19, 0, 25 }, { 19, 0, 69 }, { 20, 0, 16 },
+ { 20, 0, 19 }, { 20, 0, 66 }, { 21, 0, 23 }, { 21, 0, 25 },
+ { 150, 0, 42 }, { 6, 0, 1748 }, { 8, 0, 715 }, { 9, 0, 802 },
+ { 10, 0, 46 }, { 10, 0, 819 }, { 13, 0, 308 }, { 14, 0, 351 },
+ { 14, 0, 363 }, { 146, 0, 67 }, { 132, 0, 994 }, { 4, 0, 63 },
+ { 133, 0, 347 }, { 132, 0, 591 }, { 133, 0, 749 }, { 7, 11, 1577 },
+ { 10, 11, 304 }, { 10, 11, 549 }, { 11, 11, 424 }, { 12, 11, 365 },
+ { 13, 11, 220 }, { 13, 11, 240 }, { 142, 11, 33 }, { 133, 0, 366 },
+ { 7, 0, 557 }, { 12, 0, 547 }, { 14, 0, 86 }, { 133, 10, 387 },
+ { 135, 0, 1747 }, { 132, 11, 907 }, { 5, 11, 100 }, { 10, 11, 329 },
+ { 12, 11, 416 }, { 149, 11, 29 }, { 4, 10, 6 }, { 5, 10, 708 },
+ { 136, 10, 75 }, { 7, 10, 1351 }, { 9, 10, 581 }, { 10, 10, 639 },
+ { 11, 10, 453 }, { 140, 10, 584 }, { 7, 0, 89 }, { 132, 10, 303 },
+ { 138, 10, 772 }, { 132, 11, 176 }, { 5, 11, 636 }, { 5, 11, 998 },
+ { 8, 11, 26 }, { 137, 11, 358 }, { 7, 11, 9 }, { 7, 11, 1508 },
+ { 9, 11, 317 }, { 10, 11, 210 }, { 10, 11, 292 }, { 10, 11, 533 },
+ { 11, 11, 555 }, { 12, 11, 526 }, { 12, 11, 607 }, { 13, 11, 263 },
+ { 13, 11, 459 }, { 142, 11, 271 }, { 134, 0, 1463 }, { 6, 0, 772 },
+ { 6, 0, 1137 }, { 139, 11, 595 }, { 7, 0, 977 }, { 139, 11, 66 },
+ { 138, 0, 893 }, { 20, 0, 48 }, { 148, 11, 48 }, { 5, 0, 824 },
+ { 133, 0, 941 }, { 134, 11, 295 }, { 7, 0, 1543 }, { 7, 0, 1785 },
+ { 10, 0, 690 }, { 4, 10, 106 }, { 139, 10, 717 }, { 7, 0, 440 },
+ { 8, 0, 230 }, { 139, 0, 106 }, { 5, 10, 890 }, { 133, 10, 988 },
+ { 6, 10, 626 }, { 142, 10, 431 }, { 10, 11, 127 }, { 141, 11, 27 },
+ { 17, 0, 32 }, { 10, 10, 706 }, { 150, 10, 44 }, { 132, 0, 216 },
+ { 137, 0, 332 }, { 4, 10, 698 }, { 136, 11, 119 }, { 139, 11, 267 },
+ { 138, 10, 17 }, { 11, 11, 526 }, { 11, 11, 939 }, { 141, 11, 290 },
+ { 7, 11, 1167 }, { 11, 11, 934 }, { 13, 11, 391 }, { 145, 11, 76 },
+ { 139, 11, 39 }, { 134, 10, 84 }, { 4, 0, 914 }, { 5, 0, 800 },
+ { 133, 0, 852 }, { 10, 0, 416 }, { 141, 0, 115 }, { 7, 0, 564 },
+ { 142, 0, 168 }, { 4, 0, 918 }, { 133, 0, 876 }, { 134, 0, 1764 },
+ { 152, 0, 3 }, { 4, 0, 92 }, { 5, 0, 274 }, { 7, 11, 126 },
+ { 136, 11, 84 }, { 140, 10, 498 }, { 136, 11, 790 }, { 8, 0, 501 },
+ { 5, 10, 986 }, { 6, 10, 130 }, { 7, 10, 1582 }, { 8, 10, 458 },
+ { 10, 10, 101 }, { 10, 10, 318 }, { 138, 10, 823 }, { 6, 11, 64 },
+ { 12, 11, 377 }, { 141, 11, 309 }, { 5, 0, 743 }, { 138, 0, 851 },
+ { 4, 0, 49 }, { 7, 0, 280 }, { 135, 0, 1633 }, { 134, 0, 879 },
+ { 136, 0, 47 }, { 7, 10, 1644 }, { 137, 10, 129 }, { 132, 0, 865 },
+ { 134, 0, 1202 }, { 9, 11, 34 }, { 139, 11, 484 }, { 135, 10, 997 },
+ { 5, 0, 272 }, { 5, 0, 908 }, { 5, 0, 942 }, { 8, 0, 197 },
+ { 9, 0, 47 }, { 11, 0, 538 }, { 139, 0, 742 }, { 6, 11, 1700 },
+ { 7, 11, 26 }, { 7, 11, 293 }, { 7, 11, 382 }, { 7, 11, 1026 },
+ { 7, 11, 1087 }, { 7, 11, 2027 }, { 8, 11, 24 }, { 8, 11, 114 },
+ { 8, 11, 252 }, { 8, 11, 727 }, { 8, 11, 729 }, { 9, 11, 30 },
+ { 9, 11, 199 }, { 9, 11, 231 }, { 9, 11, 251 }, { 9, 11, 334 },
+ { 9, 11, 361 }, { 9, 11, 488 }, { 9, 11, 712 }, { 10, 11, 55 },
+ { 10, 11, 60 }, { 10, 11, 232 }, { 10, 11, 332 }, { 10, 11, 384 },
+ { 10, 11, 396 }, { 10, 11, 504 }, { 10, 11, 542 }, { 10, 11, 652 },
+ { 11, 11, 20 }, { 11, 11, 48 }, { 11, 11, 207 }, { 11, 11, 291 },
+ { 11, 11, 298 }, { 11, 11, 342 }, { 11, 11, 365 }, { 11, 11, 394 },
+ { 11, 11, 620 }, { 11, 11, 705 }, { 11, 11, 1017 }, { 12, 11, 123 },
+ { 12, 11, 340 }, { 12, 11, 406 }, { 12, 11, 643 }, { 13, 11, 61 },
+ { 13, 11, 269 }, { 13, 11, 311 }, { 13, 11, 319 }, { 13, 11, 486 },
+ { 14, 11, 234 }, { 15, 11, 62 }, { 15, 11, 85 }, { 16, 11, 71 },
+ { 18, 11, 119 }, { 148, 11, 105 }, { 6, 0, 1455 }, { 150, 11, 37 },
+ { 135, 10, 1927 }, { 135, 0, 1911 }, { 137, 0, 891 }, { 7, 10, 1756 },
+ { 137, 10, 98 }, { 7, 10, 1046 }, { 139, 10, 160 }, { 132, 0, 761 },
+ { 6, 11, 379 }, { 7, 11, 270 }, { 7, 11, 1116 }, { 8, 11, 176 },
+ { 8, 11, 183 }, { 9, 11, 432 }, { 9, 11, 661 }, { 12, 11, 247 },
+ { 12, 11, 617 }, { 146, 11, 125 }, { 6, 10, 45 }, { 7, 10, 433 },
+ { 8, 10, 129 }, { 9, 10, 21 }, { 10, 10, 392 }, { 11, 10, 79 },
+ { 12, 10, 499 }, { 13, 10, 199 }, { 141, 10, 451 }, { 4, 0, 407 },
+ { 5, 11, 792 }, { 133, 11, 900 }, { 132, 0, 560 }, { 135, 0, 183 },
+ { 13, 0, 490 }, { 7, 10, 558 }, { 136, 10, 353 }, { 4, 0, 475 },
+ { 6, 0, 731 }, { 11, 0, 35 }, { 13, 0, 71 }, { 13, 0, 177 },
+ { 14, 0, 422 }, { 133, 10, 785 }, { 8, 10, 81 }, { 9, 10, 189 },
+ { 9, 10, 201 }, { 11, 10, 478 }, { 11, 10, 712 }, { 141, 10, 338 },
+ { 4, 0, 418 }, { 4, 0, 819 }, { 133, 10, 353 }, { 151, 10, 26 },
+ { 4, 11, 901 }, { 133, 11, 776 }, { 132, 0, 575 }, { 7, 0, 818 },
+ { 16, 0, 92 }, { 17, 0, 14 }, { 17, 0, 45 }, { 18, 0, 75 },
+ { 148, 0, 18 }, { 6, 0, 222 }, { 7, 0, 636 }, { 7, 0, 1620 },
+ { 8, 0, 409 }, { 9, 0, 693 }, { 139, 0, 77 }, { 6, 10, 25 },
+ { 7, 10, 855 }, { 7, 10, 1258 }, { 144, 10, 32 }, { 6, 0, 1880 },
+ { 6, 0, 1887 }, { 6, 0, 1918 }, { 6, 0, 1924 }, { 9, 0, 967 },
+ { 9, 0, 995 }, { 9, 0, 1015 }, { 12, 0, 826 }, { 12, 0, 849 },
+ { 12, 0, 857 }, { 12, 0, 860 }, { 12, 0, 886 }, { 12, 0, 932 },
+ { 18, 0, 228 }, { 18, 0, 231 }, { 146, 0, 240 }, { 134, 0, 633 },
+ { 134, 0, 1308 }, { 4, 11, 37 }, { 5, 11, 334 }, { 135, 11, 1253 },
+ { 10, 0, 86 }, { 4, 10, 4 }, { 7, 10, 1118 }, { 7, 10, 1320 },
+ { 7, 10, 1706 }, { 8, 10, 277 }, { 9, 10, 622 }, { 11, 10, 724 },
+ { 12, 10, 350 }, { 12, 10, 397 }, { 13, 10, 28 }, { 13, 10, 159 },
+ { 15, 10, 89 }, { 18, 10, 5 }, { 19, 10, 9 }, { 20, 10, 34 },
+ { 150, 10, 47 }, { 132, 11, 508 }, { 137, 11, 448 }, { 12, 11, 107 },
+ { 146, 11, 31 }, { 132, 0, 817 }, { 134, 0, 663 }, { 133, 0, 882 },
+ { 134, 0, 914 }, { 132, 11, 540 }, { 132, 11, 533 }, { 136, 11, 608 },
+ { 8, 0, 885 }, { 138, 0, 865 }, { 132, 0, 426 }, { 6, 0, 58 },
+ { 7, 0, 745 }, { 7, 0, 1969 }, { 8, 0, 399 }, { 8, 0, 675 },
+ { 9, 0, 479 }, { 9, 0, 731 }, { 10, 0, 330 }, { 10, 0, 593 },
+ { 10, 0, 817 }, { 11, 0, 32 }, { 11, 0, 133 }, { 11, 0, 221 },
+ { 145, 0, 68 }, { 134, 10, 255 }, { 7, 0, 102 }, { 137, 0, 538 },
+ { 137, 10, 216 }, { 7, 11, 253 }, { 136, 11, 549 }, { 135, 11, 912 },
+ { 9, 10, 183 }, { 139, 10, 286 }, { 11, 10, 956 }, { 151, 10, 3 },
+ { 8, 11, 527 }, { 18, 11, 60 }, { 147, 11, 24 }, { 4, 10, 536 },
+ { 7, 10, 1141 }, { 10, 10, 723 }, { 139, 10, 371 }, { 133, 11, 920 },
+ { 7, 0, 876 }, { 135, 10, 285 }, { 135, 10, 560 }, { 132, 10, 690 },
+ { 142, 11, 126 }, { 11, 10, 33 }, { 12, 10, 571 }, { 149, 10, 1 },
+ { 133, 0, 566 }, { 9, 0, 139 }, { 10, 0, 399 }, { 11, 0, 469 },
+ { 12, 0, 634 }, { 13, 0, 223 }, { 132, 11, 483 }, { 6, 0, 48 },
+ { 135, 0, 63 }, { 18, 0, 12 }, { 7, 10, 1862 }, { 12, 10, 491 },
+ { 12, 10, 520 }, { 13, 10, 383 }, { 142, 10, 244 }, { 135, 11, 1665 },
+ { 132, 11, 448 }, { 9, 11, 495 }, { 146, 11, 104 }, { 6, 0, 114 },
+ { 7, 0, 1224 }, { 7, 0, 1556 }, { 136, 0, 3 }, { 4, 10, 190 },
+ { 133, 10, 554 }, { 8, 0, 576 }, { 9, 0, 267 }, { 133, 10, 1001 },
+ { 133, 10, 446 }, { 133, 0, 933 }, { 139, 11, 1009 }, { 8, 11, 653 },
+ { 13, 11, 93 }, { 147, 11, 14 }, { 6, 0, 692 }, { 6, 0, 821 },
+ { 134, 0, 1077 }, { 5, 11, 172 }, { 135, 11, 801 }, { 138, 0, 752 },
+ { 4, 0, 375 }, { 134, 0, 638 }, { 134, 0, 1011 }, { 140, 11, 540 },
+ { 9, 0, 96 }, { 133, 11, 260 }, { 139, 11, 587 }, { 135, 10, 1231 },
+ { 12, 0, 30 }, { 13, 0, 148 }, { 14, 0, 87 }, { 14, 0, 182 },
+ { 16, 0, 42 }, { 20, 0, 70 }, { 132, 10, 304 }, { 6, 0, 1398 },
+ { 7, 0, 56 }, { 7, 0, 1989 }, { 8, 0, 337 }, { 8, 0, 738 },
+ { 9, 0, 600 }, { 12, 0, 37 }, { 13, 0, 447 }, { 142, 0, 92 },
+ { 138, 0, 666 }, { 5, 0, 394 }, { 7, 0, 487 }, { 136, 0, 246 },
+ { 9, 0, 437 }, { 6, 10, 53 }, { 6, 10, 199 }, { 7, 10, 1408 },
+ { 8, 10, 32 }, { 8, 10, 93 }, { 10, 10, 397 }, { 10, 10, 629 },
+ { 11, 10, 593 }, { 11, 10, 763 }, { 13, 10, 326 }, { 145, 10, 35 },
+ { 134, 10, 105 }, { 9, 0, 320 }, { 10, 0, 506 }, { 138, 10, 794 },
+ { 7, 11, 57 }, { 8, 11, 167 }, { 8, 11, 375 }, { 9, 11, 82 },
+ { 9, 11, 561 }, { 10, 11, 620 }, { 10, 11, 770 }, { 11, 10, 704 },
+ { 141, 10, 396 }, { 6, 0, 1003 }, { 5, 10, 114 }, { 5, 10, 255 },
+ { 141, 10, 285 }, { 7, 0, 866 }, { 135, 0, 1163 }, { 133, 11, 531 },
+ { 132, 0, 328 }, { 7, 10, 2035 }, { 8, 10, 19 }, { 9, 10, 89 },
+ { 138, 10, 831 }, { 8, 11, 194 }, { 136, 11, 756 }, { 136, 0, 1000 },
+ { 5, 11, 453 }, { 134, 11, 441 }, { 4, 0, 101 }, { 5, 0, 833 },
+ { 7, 0, 1171 }, { 136, 0, 744 }, { 133, 0, 726 }, { 136, 10, 746 },
+ { 138, 0, 176 }, { 6, 0, 9 }, { 6, 0, 397 }, { 7, 0, 53 },
+ { 7, 0, 1742 }, { 10, 0, 632 }, { 11, 0, 828 }, { 140, 0, 146 },
+ { 135, 11, 22 }, { 145, 11, 64 }, { 132, 0, 839 }, { 11, 0, 417 },
+ { 12, 0, 223 }, { 140, 0, 265 }, { 4, 11, 102 }, { 7, 11, 815 },
+ { 7, 11, 1699 }, { 139, 11, 964 }, { 5, 10, 955 }, { 136, 10, 814 },
+ { 6, 0, 1931 }, { 6, 0, 2007 }, { 18, 0, 246 }, { 146, 0, 247 },
+ { 8, 0, 198 }, { 11, 0, 29 }, { 140, 0, 534 }, { 135, 0, 1771 },
+ { 6, 0, 846 }, { 7, 11, 1010 }, { 11, 11, 733 }, { 11, 11, 759 },
+ { 12, 11, 563 }, { 13, 11, 34 }, { 14, 11, 101 }, { 18, 11, 45 },
+ { 146, 11, 129 }, { 4, 0, 186 }, { 5, 0, 157 }, { 8, 0, 168 },
+ { 138, 0, 6 }, { 132, 11, 899 }, { 133, 10, 56 }, { 148, 10, 100 },
+ { 133, 0, 875 }, { 5, 0, 773 }, { 5, 0, 991 }, { 6, 0, 1635 },
+ { 134, 0, 1788 }, { 6, 0, 1274 }, { 9, 0, 477 }, { 141, 0, 78 },
+ { 4, 0, 639 }, { 7, 0, 111 }, { 8, 0, 581 }, { 12, 0, 177 },
+ { 6, 11, 52 }, { 9, 11, 104 }, { 9, 11, 559 }, { 10, 10, 4 },
+ { 10, 10, 13 }, { 11, 10, 638 }, { 12, 11, 308 }, { 19, 11, 87 },
+ { 148, 10, 57 }, { 132, 11, 604 }, { 4, 11, 301 }, { 133, 10, 738 },
+ { 133, 10, 758 }, { 134, 0, 1747 }, { 7, 11, 1440 }, { 11, 11, 854 },
+ { 11, 11, 872 }, { 11, 11, 921 }, { 12, 11, 551 }, { 13, 11, 472 },
+ { 142, 11, 367 }, { 7, 0, 1364 }, { 7, 0, 1907 }, { 141, 0, 158 },
+ { 134, 0, 873 }, { 4, 0, 404 }, { 4, 0, 659 }, { 7, 0, 552 },
+ { 135, 0, 675 }, { 135, 10, 1112 }, { 139, 10, 328 }, { 7, 11, 508 },
+ { 137, 10, 133 }, { 133, 0, 391 }, { 5, 10, 110 }, { 6, 10, 169 },
+ { 6, 10, 1702 }, { 7, 10, 400 }, { 8, 10, 538 }, { 9, 10, 184 },
+ { 9, 10, 524 }, { 140, 10, 218 }, { 6, 11, 310 }, { 7, 11, 1849 },
+ { 8, 11, 72 }, { 8, 11, 272 }, { 8, 11, 431 }, { 9, 11, 12 },
+ { 9, 11, 351 }, { 10, 11, 563 }, { 10, 11, 630 }, { 10, 11, 810 },
+ { 11, 11, 367 }, { 11, 11, 599 }, { 11, 11, 686 }, { 140, 11, 672 },
+ { 5, 0, 540 }, { 6, 0, 1697 }, { 136, 0, 668 }, { 132, 0, 883 },
+ { 134, 0, 78 }, { 12, 0, 628 }, { 18, 0, 79 }, { 6, 10, 133 },
+ { 9, 10, 353 }, { 139, 10, 993 }, { 6, 11, 181 }, { 7, 11, 537 },
+ { 8, 11, 64 }, { 9, 11, 127 }, { 10, 11, 496 }, { 12, 11, 510 },
+ { 141, 11, 384 }, { 6, 10, 93 }, { 7, 10, 1422 }, { 7, 10, 1851 },
+ { 8, 10, 673 }, { 9, 10, 529 }, { 140, 10, 43 }, { 137, 10, 371 },
+ { 134, 0, 1460 }, { 134, 0, 962 }, { 4, 11, 244 }, { 135, 11, 233 },
+ { 9, 10, 25 }, { 10, 10, 467 }, { 138, 10, 559 }, { 4, 10, 335 },
+ { 135, 10, 942 }, { 133, 0, 460 }, { 135, 11, 334 }, { 134, 11, 1650 },
+ { 4, 0, 199 }, { 139, 0, 34 }, { 5, 10, 601 }, { 8, 10, 39 },
+ { 10, 10, 773 }, { 11, 10, 84 }, { 12, 10, 205 }, { 142, 10, 1 },
+ { 133, 10, 870 }, { 134, 0, 388 }, { 14, 0, 474 }, { 148, 0, 120 },
+ { 133, 11, 369 }, { 139, 0, 271 }, { 4, 0, 511 }, { 9, 0, 333 },
+ { 9, 0, 379 }, { 10, 0, 602 }, { 11, 0, 441 }, { 11, 0, 723 },
+ { 11, 0, 976 }, { 12, 0, 357 }, { 132, 10, 181 }, { 134, 0, 608 },
+ { 134, 10, 1652 }, { 22, 0, 49 }, { 137, 11, 338 }, { 140, 0, 988 },
+ { 134, 0, 617 }, { 5, 0, 938 }, { 136, 0, 707 }, { 132, 10, 97 },
+ { 5, 10, 147 }, { 6, 10, 286 }, { 7, 10, 1362 }, { 141, 10, 176 },
+ { 6, 0, 756 }, { 134, 0, 1149 }, { 133, 11, 896 }, { 6, 10, 375 },
+ { 7, 10, 169 }, { 7, 10, 254 }, { 136, 10, 780 }, { 134, 0, 1583 },
+ { 135, 10, 1447 }, { 139, 0, 285 }, { 7, 11, 1117 }, { 8, 11, 393 },
+ { 136, 11, 539 }, { 135, 0, 344 }, { 6, 0, 469 }, { 7, 0, 1709 },
+ { 138, 0, 515 }, { 5, 10, 629 }, { 135, 10, 1549 }, { 5, 11, 4 },
+ { 5, 11, 810 }, { 6, 11, 13 }, { 6, 11, 538 }, { 6, 11, 1690 },
+ { 6, 11, 1726 }, { 7, 11, 499 }, { 7, 11, 1819 }, { 8, 11, 148 },
+ { 8, 11, 696 }, { 8, 11, 791 }, { 12, 11, 125 }, { 13, 11, 54 },
+ { 143, 11, 9 }, { 135, 11, 1268 }, { 137, 0, 404 }, { 132, 0, 500 },
+ { 5, 0, 68 }, { 134, 0, 383 }, { 11, 0, 216 }, { 139, 0, 340 },
+ { 4, 11, 925 }, { 5, 11, 803 }, { 8, 11, 698 }, { 138, 11, 828 },
+ { 4, 0, 337 }, { 6, 0, 353 }, { 7, 0, 1934 }, { 8, 0, 488 },
+ { 137, 0, 429 }, { 7, 0, 236 }, { 7, 0, 1795 }, { 8, 0, 259 },
+ { 9, 0, 135 }, { 9, 0, 177 }, { 9, 0, 860 }, { 10, 0, 825 },
+ { 11, 0, 115 }, { 11, 0, 370 }, { 11, 0, 405 }, { 11, 0, 604 },
+ { 12, 0, 10 }, { 12, 0, 667 }, { 12, 0, 669 }, { 13, 0, 76 },
+ { 14, 0, 310 }, { 15, 0, 76 }, { 15, 0, 147 }, { 148, 0, 23 },
+ { 4, 0, 15 }, { 4, 0, 490 }, { 5, 0, 22 }, { 6, 0, 244 },
+ { 7, 0, 40 }, { 7, 0, 200 }, { 7, 0, 906 }, { 7, 0, 1199 },
+ { 9, 0, 616 }, { 10, 0, 716 }, { 11, 0, 635 }, { 11, 0, 801 },
+ { 140, 0, 458 }, { 12, 0, 756 }, { 132, 10, 420 }, { 134, 0, 1504 },
+ { 6, 0, 757 }, { 133, 11, 383 }, { 6, 0, 1266 }, { 135, 0, 1735 },
+ { 5, 0, 598 }, { 7, 0, 791 }, { 8, 0, 108 }, { 9, 0, 123 },
+ { 7, 10, 1570 }, { 140, 10, 542 }, { 142, 11, 410 }, { 9, 11, 660 },
+ { 138, 11, 347 }
};
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_DICTIONARY_LUT_H_
+#endif /* BROTLI_ENC_STATIC_DICT_LUT_H_ */
diff --git a/thirdparty/brotli/enc/streams.cc b/thirdparty/brotli/enc/streams.cc
index 17eda2d5..abdcc2ab 100644
--- a/thirdparty/brotli/enc/streams.cc
+++ b/thirdparty/brotli/enc/streams.cc
@@ -4,14 +4,14 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Convience routines to make Brotli I/O classes from some memory containers and
-// files.
+/* Convience routines to make Brotli I/O classes from some memory containers and
+ files. */
#include "./streams.h"
#include <assert.h>
#include <stdlib.h>
-#include <string.h>
+#include <string.h> /* memcpy */
namespace brotli {
@@ -26,7 +26,7 @@ void BrotliMemOut::Reset(void* buf, size_t len) {
pos_ = 0;
}
-// Brotli output routine: copy n bytes to the output buffer.
+/* Brotli output routine: copy n bytes to the output buffer. */
bool BrotliMemOut::Write(const void *buf, size_t n) {
if (n + pos_ > len_)
return false;
@@ -47,7 +47,7 @@ void BrotliStringOut::Reset(std::string* buf, size_t max_size) {
max_size_ = max_size;
}
-// Brotli output routine: add n bytes to a string.
+/* Brotli output routine: add n bytes to a string. */
bool BrotliStringOut::Write(const void *buf, size_t n) {
if (buf_->size() + n > max_size_)
return false;
@@ -66,7 +66,7 @@ void BrotliMemIn::Reset(const void* buf, size_t len) {
pos_ = 0;
}
-// Brotli input routine: read the next chunk of memory.
+/* Brotli input routine: read the next chunk of memory. */
const void* BrotliMemIn::Read(size_t n, size_t* output) {
if (pos_ == len_) {
return NULL;
@@ -111,4 +111,4 @@ bool BrotliFileOut::Write(const void* buf, size_t n) {
return true;
}
-} // namespace brotli
+} /* namespace brotli */
diff --git a/thirdparty/brotli/enc/streams.h b/thirdparty/brotli/enc/streams.h
index 7fb28092..2ae77335 100644
--- a/thirdparty/brotli/enc/streams.h
+++ b/thirdparty/brotli/enc/streams.h
@@ -4,83 +4,83 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Input and output classes for streaming brotli compression.
+/* Input and output classes for streaming brotli compression. */
#ifndef BROTLI_ENC_STREAMS_H_
#define BROTLI_ENC_STREAMS_H_
#include <stdio.h>
#include <string>
-#include "./port.h"
-#include "./types.h"
+
+#include "../common/types.h"
namespace brotli {
-// Input interface for the compression routines.
+/* Input interface for the compression routines. */
class BrotliIn {
public:
virtual ~BrotliIn(void) {}
- // Return a pointer to the next block of input of at most n bytes.
- // Return the actual length in *nread.
- // At end of data, return NULL. Don't return NULL if there is more data
- // to read, even if called with n == 0.
- // Read will only be called if some of its bytes are needed.
+ /* Return a pointer to the next block of input of at most n bytes.
+ Return the actual length in *nread.
+ At end of data, return NULL. Don't return NULL if there is more data
+ to read, even if called with n == 0.
+ Read will only be called if some of its bytes are needed. */
virtual const void* Read(size_t n, size_t* nread) = 0;
};
-// Output interface for the compression routines.
+/* Output interface for the compression routines. */
class BrotliOut {
public:
virtual ~BrotliOut(void) {}
- // Write n bytes of data from buf.
- // Return true if all written, false otherwise.
+ /* Write n bytes of data from buf.
+ Return true if all written, false otherwise. */
virtual bool Write(const void *buf, size_t n) = 0;
};
-// Adapter class to make BrotliIn objects from raw memory.
+/* Adapter class to make BrotliIn objects from raw memory. */
class BrotliMemIn : public BrotliIn {
public:
BrotliMemIn(const void* buf, size_t len);
void Reset(const void* buf, size_t len);
- // returns the amount of data consumed
+ /* returns the amount of data consumed */
size_t position(void) const { return pos_; }
const void* Read(size_t n, size_t* OUTPUT);
private:
- const void* buf_; // start of input buffer
- size_t len_; // length of input
- size_t pos_; // current read position within input
+ const void* buf_; /* start of input buffer */
+ size_t len_; /* length of input */
+ size_t pos_; /* current read position within input */
};
-// Adapter class to make BrotliOut objects from raw memory.
+/* Adapter class to make BrotliOut objects from raw memory. */
class BrotliMemOut : public BrotliOut {
public:
BrotliMemOut(void* buf, size_t len);
void Reset(void* buf, size_t len);
- // returns the amount of data written
+ /* returns the amount of data written */
size_t position(void) const { return pos_; }
bool Write(const void* buf, size_t n);
private:
- void* buf_; // start of output buffer
- size_t len_; // length of output
- size_t pos_; // current write position within output
+ void* buf_; /* start of output buffer */
+ size_t len_; /* length of output */
+ size_t pos_; /* current write position within output */
};
-// Adapter class to make BrotliOut objects from a string.
+/* Adapter class to make BrotliOut objects from a string. */
class BrotliStringOut : public BrotliOut {
public:
- // Create a writer that appends its data to buf.
- // buf->size() will grow to at most max_size
- // buf is expected to be empty when constructing BrotliStringOut.
+ /* Create a writer that appends its data to buf.
+ buf->size() will grow to at most max_size
+ buf is expected to be empty when constructing BrotliStringOut. */
BrotliStringOut(std::string* buf, size_t max_size);
void Reset(std::string* buf, size_t max_len);
@@ -88,11 +88,11 @@ class BrotliStringOut : public BrotliOut {
bool Write(const void* buf, size_t n);
private:
- std::string* buf_; // start of output buffer
- size_t max_size_; // max length of output
+ std::string* buf_; /* start of output buffer */
+ size_t max_size_; /* max length of output */
};
-// Adapter class to make BrotliIn object from a file.
+/* Adapter class to make BrotliIn object from a file. */
class BrotliFileIn : public BrotliIn {
public:
BrotliFileIn(FILE* f, size_t max_read_size);
@@ -106,7 +106,7 @@ class BrotliFileIn : public BrotliIn {
size_t buf_size_;
};
-// Adapter class to make BrotliOut object from a file.
+/* Adapter class to make BrotliOut object from a file. */
class BrotliFileOut : public BrotliOut {
public:
explicit BrotliFileOut(FILE* f);
@@ -116,6 +116,6 @@ class BrotliFileOut : public BrotliOut {
FILE* f_;
};
-} // namespace brotli
+} /* namespace brotli */
-#endif // BROTLI_ENC_STREAMS_H_
+#endif /* BROTLI_ENC_STREAMS_H_ */
diff --git a/thirdparty/brotli/enc/transform.h b/thirdparty/brotli/enc/transform.h
deleted file mode 100644
index 1ec3849d..00000000
--- a/thirdparty/brotli/enc/transform.h
+++ /dev/null
@@ -1,248 +0,0 @@
-/* Copyright 2010 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-// Transformations on dictionary words.
-
-#ifndef BROTLI_ENC_TRANSFORM_H_
-#define BROTLI_ENC_TRANSFORM_H_
-
-#include <string>
-
-#include "./dictionary.h"
-
-namespace brotli {
-
-enum WordTransformType {
- kIdentity = 0,
- kOmitLast1 = 1,
- kOmitLast2 = 2,
- kOmitLast3 = 3,
- kOmitLast4 = 4,
- kOmitLast5 = 5,
- kOmitLast6 = 6,
- kOmitLast7 = 7,
- kOmitLast8 = 8,
- kOmitLast9 = 9,
- kUppercaseFirst = 10,
- kUppercaseAll = 11,
- kOmitFirst1 = 12,
- kOmitFirst2 = 13,
- kOmitFirst3 = 14,
- kOmitFirst4 = 15,
- kOmitFirst5 = 16,
- kOmitFirst6 = 17,
- kOmitFirst7 = 18,
- kOmitFirst8 = 19,
- kOmitFirst9 = 20
-};
-
-struct Transform {
- const char* prefix;
- WordTransformType word_transform;
- const char* suffix;
-};
-
-static const Transform kTransforms[] = {
- { "", kIdentity, "" },
- { "", kIdentity, " " },
- { " ", kIdentity, " " },
- { "", kOmitFirst1, "" },
- { "", kUppercaseFirst, " " },
- { "", kIdentity, " the " },
- { " ", kIdentity, "" },
- { "s ", kIdentity, " " },
- { "", kIdentity, " of " },
- { "", kUppercaseFirst, "" },
- { "", kIdentity, " and " },
- { "", kOmitFirst2, "" },
- { "", kOmitLast1, "" },
- { ", ", kIdentity, " " },
- { "", kIdentity, ", " },
- { " ", kUppercaseFirst, " " },
- { "", kIdentity, " in " },
- { "", kIdentity, " to " },
- { "e ", kIdentity, " " },
- { "", kIdentity, "\"" },
- { "", kIdentity, "." },
- { "", kIdentity, "\">" },
- { "", kIdentity, "\n" },
- { "", kOmitLast3, "" },
- { "", kIdentity, "]" },
- { "", kIdentity, " for " },
- { "", kOmitFirst3, "" },
- { "", kOmitLast2, "" },
- { "", kIdentity, " a " },
- { "", kIdentity, " that " },
- { " ", kUppercaseFirst, "" },
- { "", kIdentity, ". " },
- { ".", kIdentity, "" },
- { " ", kIdentity, ", " },
- { "", kOmitFirst4, "" },
- { "", kIdentity, " with " },
- { "", kIdentity, "'" },
- { "", kIdentity, " from " },
- { "", kIdentity, " by " },
- { "", kOmitFirst5, "" },
- { "", kOmitFirst6, "" },
- { " the ", kIdentity, "" },
- { "", kOmitLast4, "" },
- { "", kIdentity, ". The " },
- { "", kUppercaseAll, "" },
- { "", kIdentity, " on " },
- { "", kIdentity, " as " },
- { "", kIdentity, " is " },
- { "", kOmitLast7, "" },
- { "", kOmitLast1, "ing " },
- { "", kIdentity, "\n\t" },
- { "", kIdentity, ":" },
- { " ", kIdentity, ". " },
- { "", kIdentity, "ed " },
- { "", kOmitFirst9, "" },
- { "", kOmitFirst7, "" },
- { "", kOmitLast6, "" },
- { "", kIdentity, "(" },
- { "", kUppercaseFirst, ", " },
- { "", kOmitLast8, "" },
- { "", kIdentity, " at " },
- { "", kIdentity, "ly " },
- { " the ", kIdentity, " of " },
- { "", kOmitLast5, "" },
- { "", kOmitLast9, "" },
- { " ", kUppercaseFirst, ", " },
- { "", kUppercaseFirst, "\"" },
- { ".", kIdentity, "(" },
- { "", kUppercaseAll, " " },
- { "", kUppercaseFirst, "\">" },
- { "", kIdentity, "=\"" },
- { " ", kIdentity, "." },
- { ".com/", kIdentity, "" },
- { " the ", kIdentity, " of the " },
- { "", kUppercaseFirst, "'" },
- { "", kIdentity, ". This " },
- { "", kIdentity, "," },
- { ".", kIdentity, " " },
- { "", kUppercaseFirst, "(" },
- { "", kUppercaseFirst, "." },
- { "", kIdentity, " not " },
- { " ", kIdentity, "=\"" },
- { "", kIdentity, "er " },
- { " ", kUppercaseAll, " " },
- { "", kIdentity, "al " },
- { " ", kUppercaseAll, "" },
- { "", kIdentity, "='" },
- { "", kUppercaseAll, "\"" },
- { "", kUppercaseFirst, ". " },
- { " ", kIdentity, "(" },
- { "", kIdentity, "ful " },
- { " ", kUppercaseFirst, ". " },
- { "", kIdentity, "ive " },
- { "", kIdentity, "less " },
- { "", kUppercaseAll, "'" },
- { "", kIdentity, "est " },
- { " ", kUppercaseFirst, "." },
- { "", kUppercaseAll, "\">" },
- { " ", kIdentity, "='" },
- { "", kUppercaseFirst, "," },
- { "", kIdentity, "ize " },
- { "", kUppercaseAll, "." },
- { "\xc2\xa0", kIdentity, "" },
- { " ", kIdentity, "," },
- { "", kUppercaseFirst, "=\"" },
- { "", kUppercaseAll, "=\"" },
- { "", kIdentity, "ous " },
- { "", kUppercaseAll, ", " },
- { "", kUppercaseFirst, "='" },
- { " ", kUppercaseFirst, "," },
- { " ", kUppercaseAll, "=\"" },
- { " ", kUppercaseAll, ", " },
- { "", kUppercaseAll, "," },
- { "", kUppercaseAll, "(" },
- { "", kUppercaseAll, ". " },
- { " ", kUppercaseAll, "." },
- { "", kUppercaseAll, "='" },
- { " ", kUppercaseAll, ". " },
- { " ", kUppercaseFirst, "=\"" },
- { " ", kUppercaseAll, "='" },
- { " ", kUppercaseFirst, "='" },
-};
-
-static const size_t kNumTransforms =
- sizeof(kTransforms) / sizeof(kTransforms[0]);
-
-static const size_t kOmitLastNTransforms[10] = {
- 0, 12, 27, 23, 42, 63, 56, 48, 59, 64,
-};
-
-static size_t ToUpperCase(uint8_t *p, size_t len) {
- if (len == 1 || p[0] < 0xc0) {
- if (p[0] >= 'a' && p[0] <= 'z') {
- p[0] ^= 32;
- }
- return 1;
- }
- if (p[0] < 0xe0) {
- p[1] ^= 32;
- return 2;
- }
- if (len == 2) {
- return 2;
- }
- p[2] ^= 5;
- return 3;
-}
-
-inline std::string TransformWord(
- WordTransformType transform_type, const uint8_t* word, size_t len) {
- if (transform_type <= kOmitLast9) {
- if (len <= static_cast<size_t>(transform_type)) {
- return std::string();
- }
- return std::string(word, word + len - transform_type);
- }
-
- if (transform_type >= kOmitFirst1) {
- const size_t skip = transform_type - (kOmitFirst1 - 1);
- if (len <= skip) {
- return std::string();
- }
- return std::string(word + skip, word + len);
- }
-
- std::string ret = std::string(word, word + len);
- uint8_t *uppercase = reinterpret_cast<uint8_t*>(&ret[0]);
- if (transform_type == kUppercaseFirst) {
- ToUpperCase(uppercase, len);
- } else if (transform_type == kUppercaseAll) {
- size_t position = 0;
- while (position < len) {
- size_t step = ToUpperCase(uppercase, len - position);
- uppercase += step;
- position += step;
- }
- }
- return ret;
-}
-
-inline std::string ApplyTransform(
- const Transform& t, const uint8_t* word, size_t len) {
- return std::string(t.prefix) +
- TransformWord(t.word_transform, word, len) + std::string(t.suffix);
-}
-
-inline std::string GetTransformedDictionaryWord(size_t len_code,
- size_t word_id) {
- size_t num_words = 1u << kBrotliDictionarySizeBitsByLength[len_code];
- size_t offset = kBrotliDictionaryOffsetsByLength[len_code];
- size_t t = word_id / num_words;
- size_t word_idx = word_id % num_words;
- offset += len_code * word_idx;
- const uint8_t* word = &kBrotliDictionary[offset];
- return ApplyTransform(kTransforms[t], word, len_code);
-}
-
-} // namespace brotli
-
-#endif // BROTLI_ENC_TRANSFORM_H_
diff --git a/thirdparty/brotli/enc/types.h b/thirdparty/brotli/enc/types.h
deleted file mode 100644
index 266a9cd3..00000000
--- a/thirdparty/brotli/enc/types.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Copyright 2013 Google Inc. All Rights Reserved.
-
- Distributed under MIT license.
- See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
-*/
-
-/* Common types */
-
-#ifndef BROTLI_ENC_TYPES_H_
-#define BROTLI_ENC_TYPES_H_
-
-#include <stddef.h> /* for size_t */
-
-#if defined(_MSC_VER) && (_MSC_VER < 1600)
-typedef __int8 int8_t;
-typedef unsigned __int8 uint8_t;
-typedef __int16 int16_t;
-typedef unsigned __int16 uint16_t;
-typedef __int32 int32_t;
-typedef unsigned __int32 uint32_t;
-typedef unsigned __int64 uint64_t;
-typedef __int64 int64_t;
-#else
-#include <stdint.h>
-#endif /* defined(_MSC_VER) && (_MSC_VER < 1600) */
-
-#define MAKE_UINT64_T(high, low) ((((uint64_t)(high)) << 32) | low)
-
-#endif /* BROTLI_ENC_TYPES_H_ */
diff --git a/thirdparty/brotli/enc/utf8_util.cc b/thirdparty/brotli/enc/utf8_util.c
index a2b5c3a6..e1420fdb 100644
--- a/thirdparty/brotli/enc/utf8_util.cc
+++ b/thirdparty/brotli/enc/utf8_util.c
@@ -4,25 +4,26 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Heuristics for deciding about the UTF8-ness of strings.
+/* Heuristics for deciding about the UTF8-ness of strings. */
#include "./utf8_util.h"
-#include "./types.h"
+#include "../common/types.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
-namespace {
-
-size_t ParseAsUTF8(int* symbol, const uint8_t* input, size_t size) {
- // ASCII
+static size_t BrotliParseAsUTF8(
+ int* symbol, const uint8_t* input, size_t size) {
+ /* ASCII */
if ((input[0] & 0x80) == 0) {
*symbol = input[0];
if (*symbol > 0) {
return 1;
}
}
- // 2-byte UTF8
+ /* 2-byte UTF8 */
if (size > 1u &&
(input[0] & 0xe0) == 0xc0 &&
(input[1] & 0xc0) == 0x80) {
@@ -32,7 +33,7 @@ size_t ParseAsUTF8(int* symbol, const uint8_t* input, size_t size) {
return 2;
}
}
- // 3-byte UFT8
+ /* 3-byte UFT8 */
if (size > 2u &&
(input[0] & 0xf0) == 0xe0 &&
(input[1] & 0xc0) == 0x80 &&
@@ -44,7 +45,7 @@ size_t ParseAsUTF8(int* symbol, const uint8_t* input, size_t size) {
return 3;
}
}
- // 4-byte UFT8
+ /* 4-byte UFT8 */
if (size > 3u &&
(input[0] & 0xf8) == 0xf0 &&
(input[1] & 0xc0) == 0x80 &&
@@ -58,26 +59,27 @@ size_t ParseAsUTF8(int* symbol, const uint8_t* input, size_t size) {
return 4;
}
}
- // Not UTF8, emit a special symbol above the UTF8-code space
+ /* Not UTF8, emit a special symbol above the UTF8-code space */
*symbol = 0x110000 | input[0];
return 1;
}
-} // namespace
-
-// Returns true if at least min_fraction of the data is UTF8-encoded.
-bool IsMostlyUTF8(const uint8_t* data, const size_t pos, const size_t mask,
- const size_t length, const double min_fraction) {
+/* Returns 1 if at least min_fraction of the data is UTF8-encoded.*/
+BROTLI_BOOL BrotliIsMostlyUTF8(
+ const uint8_t* data, const size_t pos, const size_t mask,
+ const size_t length, const double min_fraction) {
size_t size_utf8 = 0;
size_t i = 0;
while (i < length) {
int symbol;
- size_t bytes_read = ParseAsUTF8(
- &symbol, &data[(pos + i) & mask], length - i);
+ size_t bytes_read =
+ BrotliParseAsUTF8(&symbol, &data[(pos + i) & mask], length - i);
i += bytes_read;
if (symbol < 0x110000) size_utf8 += bytes_read;
}
- return size_utf8 > min_fraction * static_cast<double>(length);
+ return TO_BROTLI_BOOL(size_utf8 > min_fraction * (double)length);
}
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
diff --git a/thirdparty/brotli/enc/utf8_util.h b/thirdparty/brotli/enc/utf8_util.h
index 74f22b6a..26121b1f 100644
--- a/thirdparty/brotli/enc/utf8_util.h
+++ b/thirdparty/brotli/enc/utf8_util.h
@@ -4,22 +4,29 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Heuristics for deciding about the UTF8-ness of strings.
+/* Heuristics for deciding about the UTF8-ness of strings. */
#ifndef BROTLI_ENC_UTF8_UTIL_H_
#define BROTLI_ENC_UTF8_UTIL_H_
-#include "./types.h"
+#include "../common/types.h"
+#include "./port.h"
-namespace brotli {
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
static const double kMinUTF8Ratio = 0.75;
-// Returns true if at least min_fraction of the bytes between pos and
-// pos + length in the (data, mask) ringbuffer is UTF8-encoded.
-bool IsMostlyUTF8(const uint8_t* data, const size_t pos, const size_t mask,
- const size_t length, const double min_fraction);
+/* Returns 1 if at least min_fraction of the bytes between pos and
+ pos + length in the (data, mask) ringbuffer is UTF8-encoded, otherwise
+ returns 0. */
+BROTLI_INTERNAL BROTLI_BOOL BrotliIsMostlyUTF8(
+ const uint8_t* data, const size_t pos, const size_t mask,
+ const size_t length, const double min_fraction);
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_UTF8_UTIL_H_
+#endif /* BROTLI_ENC_UTF8_UTIL_H_ */
diff --git a/thirdparty/brotli/enc/write_bits.h b/thirdparty/brotli/enc/write_bits.h
index b605203a..13eb4707 100644
--- a/thirdparty/brotli/enc/write_bits.h
+++ b/thirdparty/brotli/enc/write_bits.h
@@ -4,74 +4,78 @@
See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
*/
-// Write bits into a byte array.
+/* Write bits into a byte array. */
#ifndef BROTLI_ENC_WRITE_BITS_H_
#define BROTLI_ENC_WRITE_BITS_H_
#include <assert.h>
-#include <stdio.h>
+#include <stdio.h> /* printf */
+#include "../common/types.h"
#include "./port.h"
-#include "./types.h"
-
-namespace brotli {
-
-//#define BIT_WRITER_DEBUG
-
-// This function writes bits into bytes in increasing addresses, and within
-// a byte least-significant-bit first.
-//
-// The function can write up to 56 bits in one go with WriteBits
-// Example: let's assume that 3 bits (Rs below) have been written already:
-//
-// BYTE-0 BYTE+1 BYTE+2
-//
-// 0000 0RRR 0000 0000 0000 0000
-//
-// Now, we could write 5 or less bits in MSB by just sifting by 3
-// and OR'ing to BYTE-0.
-//
-// For n bits, we take the last 5 bits, OR that with high bits in BYTE-0,
-// and locate the rest in BYTE+1, BYTE+2, etc.
-inline void WriteBits(size_t n_bits,
- uint64_t bits,
- size_t * __restrict pos,
- uint8_t * __restrict array) {
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+/*#define BIT_WRITER_DEBUG */
+
+/* This function writes bits into bytes in increasing addresses, and within
+ a byte least-significant-bit first.
+
+ The function can write up to 56 bits in one go with WriteBits
+ Example: let's assume that 3 bits (Rs below) have been written already:
+
+ BYTE-0 BYTE+1 BYTE+2
+
+ 0000 0RRR 0000 0000 0000 0000
+
+ Now, we could write 5 or less bits in MSB by just sifting by 3
+ and OR'ing to BYTE-0.
+
+ For n bits, we take the last 5 bits, OR that with high bits in BYTE-0,
+ and locate the rest in BYTE+1, BYTE+2, etc. */
+static BROTLI_INLINE void BrotliWriteBits(size_t n_bits,
+ uint64_t bits,
+ size_t * BROTLI_RESTRICT pos,
+ uint8_t * BROTLI_RESTRICT array) {
+#ifdef IS_LITTLE_ENDIAN
+ /* This branch of the code can write up to 56 bits at a time,
+ 7 bits are lost by being perhaps already in *p and at least
+ 1 bit is needed to initialize the bit-stream ahead (i.e. if 7
+ bits are in *p and we write 57 bits, then the next write will
+ access a byte that was never initialized). */
+ uint8_t *p = &array[*pos >> 3];
+ uint64_t v = *p;
#ifdef BIT_WRITER_DEBUG
printf("WriteBits %2d 0x%016llx %10d\n", n_bits, bits, *pos);
#endif
assert((bits >> n_bits) == 0);
assert(n_bits <= 56);
-#ifdef IS_LITTLE_ENDIAN
- // This branch of the code can write up to 56 bits at a time,
- // 7 bits are lost by being perhaps already in *p and at least
- // 1 bit is needed to initialize the bit-stream ahead (i.e. if 7
- // bits are in *p and we write 57 bits, then the next write will
- // access a byte that was never initialized).
- uint8_t *p = &array[*pos >> 3];
- uint64_t v = *p;
v |= bits << (*pos & 7);
- BROTLI_UNALIGNED_STORE64(p, v); // Set some bits.
+ BROTLI_UNALIGNED_STORE64(p, v); /* Set some bits. */
*pos += n_bits;
#else
- // implicit & 0xff is assumed for uint8_t arithmetics
+ /* implicit & 0xff is assumed for uint8_t arithmetics */
uint8_t *array_pos = &array[*pos >> 3];
const size_t bits_reserved_in_first_byte = (*pos & 7);
+ size_t bits_left_to_write;
bits <<= bits_reserved_in_first_byte;
- *array_pos++ |= static_cast<uint8_t>(bits);
- for (size_t bits_left_to_write = n_bits + bits_reserved_in_first_byte;
+ *array_pos++ |= (uint8_t)bits;
+ for (bits_left_to_write = n_bits + bits_reserved_in_first_byte;
bits_left_to_write >= 9;
bits_left_to_write -= 8) {
bits >>= 8;
- *array_pos++ = static_cast<uint8_t>(bits);
+ *array_pos++ = (uint8_t)bits;
}
*array_pos = 0;
*pos += n_bits;
#endif
}
-inline void WriteBitsPrepareStorage(size_t pos, uint8_t *array) {
+static BROTLI_INLINE void BrotliWriteBitsPrepareStorage(
+ size_t pos, uint8_t *array) {
#ifdef BIT_WRITER_DEBUG
printf("WriteBitsPrepareStorage %10d\n", pos);
#endif
@@ -79,6 +83,8 @@ inline void WriteBitsPrepareStorage(size_t pos, uint8_t *array) {
array[pos >> 3] = 0;
}
-} // namespace brotli
+#if defined(__cplusplus) || defined(c_plusplus)
+} /* extern "C" */
+#endif
-#endif // BROTLI_ENC_WRITE_BITS_H_
+#endif /* BROTLI_ENC_WRITE_BITS_H_ */