blob: 594517f0bd99d85770c91f53738d509b1a99f987 [file] [log] [blame]
J. Alakuijala
Z. Szabadka
______ _______ _______ _______ _________
( __ \ ( ____ )( ___ )( ____ \\__ __/
| ( \ )| ( )|| ( ) || ( \/ ) (
| | ) || (____)|| (___) || (__ | |
| | | || __)| ___ || __) | |
| | ) || (\ ( | ( ) || ( | |
| (__/ )| ) \ \__| ) ( || ) | |
(______/ |/ \__/|/ \||/ )_(
DRAFT of
Brotli Compression Algorithm Compressed Data Format Specification 1.0
Status of This Memo
This memo provides information for the Internet community. This memo
does not specify an Internet standard of any kind. Distribution of
this memo is unlimited.
Notices
Copyright (c) 2013 J. Alakuijala and Z. Szabadka
Permission is granted to copy and distribute this document for any
purpose and without charge, including translations into other
languages and incorporation into compilations, provided that the
copyright notice and this notice are preserved, and that any
substantive changes or deletions from the original are clearly
marked.
Abstract
This specification defines a lossless compressed data format that
compresses data using a combination of the LZ77 algorithm and Huffman
coding, with efficiency comparable to the best currently available
general-purpose compression methods.
1. Introduction
1.1. Purpose
The purpose of this specification is to define a lossless
compressed data format that:
* Is independent of CPU type, operating system, file system,
and character set, and hence can be used for interchange;
* Can be produced or consumed, even for an arbitrarily long
sequentially presented input data stream, using only an a
priori bounded amount of intermediate storage, and hence
can be used in data communications or similar structures,
such as Unix filters;
* Compresses data with efficiency comparable to the best
currently available general-purpose compression methods,
and in particular considerably better than the gzip program;
* Decompresses much faster than the LZMA implementations.
The data format defined by this specification does not attempt to:
* Allow random access to compressed data;
* Compress specialized data (e.g., raster graphics) as well
as the best currently available specialized algorithms.
1.2. Intended audience
This specification is intended for use by software implementers
to compress data into and/or decompress data from "brotli" format.
The text of the specification assumes a basic background in
programming at the level of bits and other primitive data
representations. Familiarity with the technique of Huffman coding
is helpful but not required.
This specification uses heavily the notations and terminology
introduced in the DEFLATE format specification (RFC 1951, see
reference [3] below). For the sake of completeness, we always
include the whole text of the relevant parts of RFC 1951,
therefore familiarity with the DEFLATE format is helpful but not
required.
1.3. Scope
The specification specifies a method for representing a sequence
of bytes as a (usually shorter) sequence of bits, and a method for
packing the latter bit sequence into bytes.
1.4. Compliance
Unless otherwise indicated below, a compliant decompressor must be
able to accept and decompress any data set that conforms to all
the specifications presented here. A compliant compressor must
produce data sets that conform to all the specifications presented
here.
1.5. Definitions of terms and conventions used
Byte: 8 bits stored or transmitted as a unit (same as an octet).
For this specification, a byte is exactly 8 bits, even on machines
which store a character on a number of bits different from eight.
See below for the numbering of bits within a byte.
String: a sequence of arbitrary bytes.
Bytes stored within a computer do not have a "bit order", since
they are always treated as a unit. However, a byte considered as
an integer between 0 and 255 does have a most- and least-
significant bit, and since we write numbers with the most-
significant digit on the left, we also write bytes with the most-
significant bit on the left. In the diagrams below, we number the
bits of a byte so that bit 0 is the least-significant bit, i.e.,
the bits are numbered:
+--------+
|76543210|
+--------+
Within a computer, a number may occupy multiple bytes. All
multi-byte numbers in the format described here are stored with
the least-significant byte first (at the lower memory address).
For example, the decimal number 520 is stored as:
0 1
+--------+--------+
|00001000|00000010|
+--------+--------+
^ ^
| |
| + more significant byte = 2 x 256
+ less significant byte = 8
1.5.1. Packing into bytes
This document does not address the issue of the order in which
bits of a byte are transmitted on a bit-sequential medium,
since the final data format described here is byte- rather than
bit-oriented. However, we describe the compressed block format
below as a sequence of data elements of various bit
lengths, not a sequence of bytes. We must therefore specify
how to pack these data elements into bytes to form the final
compressed byte sequence:
* Data elements are packed into bytes in order of
increasing bit number within the byte, i.e., starting
with the least-significant bit of the byte.
* Data elements other than Huffman codes are packed
starting with the least-significant bit of the data
element.
* Huffman codes are packed starting with the most-
significant bit of the code.
In other words, if one were to print out the compressed data as
a sequence of bytes, starting with the first byte at the
*right* margin and proceeding to the *left*, with the most-
significant bit of each byte on the left as usual, one would be
able to parse the result from right to left, with fixed-width
elements in the correct MSB-to-LSB order and Huffman codes in
bit-reversed order (i.e., with the first bit of the code in the
relative LSB position).
2. Compressed representation overview
A compressed data set consists of a header and a series of meta-
blocks corresponding to successive meta-blocks of input data. The
meta-block sizes are limited to bytes and the maximum meta-block size
is 268,435,456 bytes.
The header contains the size of a sliding window on the input data
that is sufficient to keep on the intermediate storage at any given
point during decoding the stream.
Each meta-block is compressed using a combination of the LZ77
algorithm (Lempel-Ziv 1977, see reference [2] below) and Huffman
coding. The Huffman trees for each block are independent of those for
previous or subsequent blocks; the LZ77 algorithm may use a
reference to a duplicated string occurring in a previous meta-block,
up to sliding window size input bytes before.
Each meta-block consists of two parts: a meta-block header that
describes the representation of the compressed data part, and a
compressed data part. The compressed data consists of a series of
commands. Each command consists of two parts: a sequence of literal
bytes (of strings that have not been detected as duplicated within
the sliding window), and a pointer to a duplicated string,
represented as a pair <length, backward distance>.
Each command in the compressed data is represented using three kinds
of Huffman codes: one kind of code tree for the literal sequence
lengths (also referred to as literal insertion lengths) and backward
copy lengths (that is, a single code word represents two lengths,
one of the literal sequence and one of the backward copy), a separate
kind of code tree for literals, and a third kind of code tree for
distances. The code trees for each meta-block appear in a compact
form just before the compressed data in the meta-block header.
The sequence of each type of value in the representation of a command
(insert-and-copy lengths, literals and distances) within a meta-
block is further divided into blocks. In the "brotli" format, blocks
are not contiguous chunks of compressed data, but rather the pieces
of compressed data belonging to a block are interleaved with pieces
of data belonging to other blocks. Each meta-block can be logically
decomposed into a series of insert-and-copy length blocks, a series
of literal blocks and a series of distance blocks. These are also
called the three block categories: a meta-block has a series of
blocks for each block category. Note that the physical structure of
the meta-block is a series of commands, while the three series of
blocks is the logical structure. Consider the following example:
(IaC0, L0, L1, L2, D0)(IaC1, D1)(IaC2, L3, L4, D2)(IaC3, L5, D3)
The meta-block here has 4 commands, and each three types of symbols
within these commands can be rearranged for example into the
following logical block structure:
[IaC0, IaC1][IaC2, IaC3] <-- block types 0 and 1
[L0, L1][L2, L3, L4][L5] <-- block types 0, 1, and 0
[D0][D1, D2, D3] <-- block types 0 and 1
The subsequent blocks within each block category must have different
block types, but blocks further away in the block sequence can have
the same types. The block types are numbered from 0 to the maximum
block type number of 255 and the first block of each block category
must have type 0. The block structure of a meta-block is represented
by the sequence of block-switch commands for each block category,
where a block-switch command is a pair <block type, block length>.
The block-switch commands are represented in the compressed data
before the start of each new block using a Huffman code tree for
block types and a separate Huffman code tree for block lengths for
each block category. In the above example the physical layout of the
meta-block is the following:
IaC0 L0 L1 LBlockSwitch(1, 3) L2 D0 IaC1 DBlockSwitch(1, 1) D1
IaCBlockSwitch(1, 2) IaC2 L3 L4 D2 IaC3 LBlockSwitch(0, 1) D3
Note that the block switch commands for the first blocks are not part
of the meta-block compressed data part, they are encoded in the meta-
block header. The code trees for block types and lengths (total of
six Huffman code trees) appear in a compact form in the meta-block
header.
Each type of value (insert-and-copy lengths, literals and distances)
can be encoded with any Huffman tree from a collection of Huffman
trees of the same kind appearing in the meta-block header. The
particular Huffman tree used can depend on two factors: the block
type of the block the value appears in, and the context of the value.
In the case of the literals, the context is the previous two bytes in
the input data, and in the case of distances, the context is the copy
length from the same command. For insert-and-copy lengths, no context
is used and the Huffman tree depends only on the block type (in fact,
the index of the Huffman tree is the block type number). In the case
of literals and distances, the context is mapped to a context ID in
the rage [0, 63] for literals and [0, 3] for distances and the matrix
of the Huffman tree indices for each block type and context ID,
called the context map, is encoded in a compact form in the meta-
block header.
In addition to the parts listed above (Huffman code trees for insert-
and-copy lengths, literals, distances, block types and block lengths
and the context map), the meta-block header contains the number of
input bytes in the meta-block and two additional parameters used in
the representation of copy distances (number of "postfix bits" and
number of direct distance codes).
3. Compressed representation of Huffman codes
3.1. Introduction to prefix and Huffman coding
Prefix coding represents symbols from an a priori known alphabet
by bit sequences (codes), one code for each symbol, in a manner
such that different symbols may be represented by bit sequences of
different lengths, but a parser can always parse an encoded string
unambiguously symbol-by-symbol.
We define a prefix code in terms of a binary tree in which the two
edges descending from each non-leaf node are labeled 0 and 1 and
in which the leaf nodes correspond one-for-one with (are labeled
with) the symbols of the alphabet; then the code for a symbol is
the sequence of 0's and 1's on the edges leading from the root to
the leaf labeled with that symbol. For example:
/\ Symbol Code
0 1 ------ ----
/ \ A 00
/\ B B 1
0 1 C 011
/ \ D 010
A /\
0 1
/ \
D C
A parser can decode the next symbol from an encoded input stream
by walking down the tree from the root, at each step choosing the
edge corresponding to the next input bit.
Given an alphabet with known symbol frequencies, the Huffman
algorithm allows the construction of an optimal prefix code (one
which represents strings with those symbol frequencies using the
fewest bits of any possible prefix codes for that alphabet). Such
a code is called a Huffman code. (See reference [1] in Chapter 5,
references for additional information on Huffman codes.)
Note that in the "brotli" format, the Huffman codes for the
various alphabets must not exceed certain maximum code lengths.
This constraint complicates the algorithm for computing code
lengths from symbol frequencies. Again, see Chapter 5, references
for details.
3.2. Use of Huffman coding in the "brotli" format
The Huffman codes used for each alphabet in the "brotli" format
are canonical Huffman codes, which have two additional rules:
* All codes of a given bit length have lexicographically
consecutive values, in the same order as the symbols they
represent;
* Shorter codes lexicographically precede longer codes.
We could recode the example above to follow this rule as follows,
assuming that the order of the alphabet is ABCD:
Symbol Code
------ ----
A 10
B 0
C 110
D 111
I.e., 0 precedes 10 which precedes 11x, and 110 and 111 are
lexicographically consecutive.
Given this rule, we can define the canonical Huffman code for an
alphabet just by giving the bit lengths of the codes for each
symbol of the alphabet in order; this is sufficient to determine
the actual codes. In our example, the code is completely defined
by the sequence of bit lengths (2, 1, 3, 3). The following
algorithm generates the codes as integers, intended to be read
from most- to least-significant bit. The code lengths are
initially in tree[I].Len; the codes are produced in tree[I].Code.
1) Count the number of codes for each code length. Let
bl_count[N] be the number of codes of length N, N >= 1.
2) Find the numerical value of the smallest code for each
code length:
code = 0;
bl_count[0] = 0;
for (bits = 1; bits <= MAX_BITS; bits++) {
code = (code + bl_count[bits-1]) << 1;
next_code[bits] = code;
}
3) Assign numerical values to all codes, using consecutive
values for all codes of the same length with the base
values determined at step 2. Codes that are never used
(which have a bit length of zero) must not be assigned a
value.
for (n = 0; n <= max_code; n++) {
len = tree[n].Len;
if (len != 0) {
tree[n].Code = next_code[len];
next_code[len]++;
}
}
Example:
Consider the alphabet ABCDEFGH, with bit lengths (3, 3, 3, 3, 3,
2, 4, 4). After step 1, we have:
N bl_count[N]
- -----------
2 1
3 5
4 2
Step 2 computes the following next_code values:
N next_code[N]
- ------------
1 0
2 0
3 2
4 14
Step 3 produces the following code values:
Symbol Length Code
------ ------ ----
A 3 010
B 3 011
C 3 100
D 3 101
E 3 110
F 2 00
G 4 1110
H 4 1111
3.3. Alphabet sizes
Huffman codes are used for different purposes in the "brotli"
format, and each purpose has a different alphabet size. For
literal codes the alphabet size is 256. For insert-and-copy
length codes the alphabet size is 704. For block length codes,
the alphabet size is 26. For distance codes, block type codes and
the Huffman codes used in compressing the context map, the
alphabet size is dynamic and is based on other parameters.
3.4. Simple Huffman codes
The first two bits of the compressed representation of each
Huffman code distinguishes between simple and complex Huffman
codes. If this value is 1, then a simple Huffman code follows.
Otherwise the value indicates the number of leading zeros.
A simple Huffman code can have only up to four symbols with non-
zero code length. The format of the simple Huffman code is as
follows:
2 bits: value of 1 indicates a simple Huffman code
2 bits: NSYM - 1, where NSYM = # of symbols with non-zero
code length
NSYM symbols, each encoded using ALPHABET_BITS bits
1 bit: tree-select, present only for NSYM = 4
The value of ALPHABET_BITS depends on the alphabet of the Huffman
code: it is the smallest number of bits that can represent all
symbols in the alphabet. E.g. for the alphabet of literal bytes,
ALPHABET_BITS is 8. The value of each of the NSYM symbols above is
the value of the ALPHABETS_BITS width machine integer representing
the symbol modulo the alphabet size of the Huffman code.
The (non-zero) code lengths of the symbols can be reconstructed as
follows:
* if NSYM = 1, the code length for the one symbol is one at
this stage, but only to distinguish it from the other zero
code length symbols, when encoding this symbol in the
compressed data stream using this Huffman code later, no
actual bits are emitted. Similarly, when decoding a symbol
using this Huffman code, no bits are read and the one symbol
is returned.
* if NSYM = 2, both symbols have code length 1.
* if NSYM = 3, the code lengths for the symbols are 1, 2, 2 in
the order they appear in the representation of the simple
Huffman code.
* if NSYM = 4, the code lengths (in order of symbols decoded)
depend on the tree-select bit: 2, 2, 2, 2, (tree-select bit 0)
or 1, 2, 3, 3 (tree-select bit 1).
3.5. Complex Huffman codes
A complex Huffman code is a canonical Huffman code, defined by the
sequence of code lengths, as discussed in Paragraph 3.2, above.
For even greater compactness, the code length sequences themselves
are compressed using a Huffman code. The alphabet for code lengths
is as follows:
0 - 15: Represent code lengths of 0 - 15
16: Copy the previous non-zero code length 3 - 6 times
The next 2 bits indicate repeat length
(0 = 3, ... , 3 = 6)
If this is the first code length, or all previous
code lengths are zero, a code length of 8 is
repeated 3 - 6 times
A repeated code length code of 16 modifies the
repeat count of the previous one as follows:
repeat count = (4 * (repeat count - 2)) +
(3 - 6 on the next 2 bits)
Example: Codes 7, 16 (+2 bits 11), 16 (+2 bits 10)
will expand to 22 code lengths of 7
(1 + 4 * (6 - 2) + 5)
17: Repeat a code length of 0 for 3 - 10 times.
(3 bits of length)
A repeated code length code of 17 modifies the
repeat count of the previous one as follows:
repeat count = (8 * (repeat count - 2)) +
(3 - 10 on the next 3 bits)
A code length of 0 indicates that the corresponding symbol in the
alphabet will not occur in the compressed data, and should not
participate in the Huffman code construction algorithm given
earlier. A complex Huffman code must have at least two non-zero
code lengths.
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
We can now define the format of the complex Huffman code as
follows:
2 bits: HSKIP, values of 0, 2 or 3 represent the respective
number of leading zeros. (Value of 1 indicates the
Simple Huffman code.)
Code lengths for symbols in the code length alphabet given
just above, in the order: 1, 2, 3, 4, 0, 5, 17, 6, 16, 7,
8, 9, 10, 11, 12, 13, 14, 15
The code lengths of code length symbols are between 0 and
5 and they are represented with 2 - 5 bits according to
the static Huffman code above. A code length of 0 means
the corresponding code length symbol is not used.
If HSKIP is 2 or 3, a respective number of leading code
lengths are implicit zeros and are not present in the
code lengths sequence above. If there are at least two
non-zero code lengths, any trailing zero code lengths are
omitted, i.e. the last code length in the sequence must
be non-zero. In this case the sum of (32 >> code length)
over all the non-zero code lengths must equal to 32.
Sequence of code lengths symbols, encoded using the code
length Huffman code. Any trailing 0 or 17 must be
omitted, i.e. the last encoded code length symbol must be
between 1 and 16. The sum of (32768 >> code length) over
all the non-zero code lengths in the alphabet, including
those encoded using repeat code(s) of 16, must equal to
32768.
4. Encoding of distances
As described in Section 2, one component of a compressed meta-block
is a sequence of backward distances. In this section we provide the
details to the encoding of distances.
Each distance in the compressed data part of a meta-block is
represented with a pair <distance code, extra bits>. The distance
code and the extra bits are encoded back-to-back, the distance code
is encoded using a Huffman code over the distance code alphabet,
while the extra bits value is encoded as a fixed-width machine
integer. The number of extra bits can be 0 - 24, and it is dependent
on the distance code.
To convert a distance code and associated extra bits to a backward
distance, we need the sequence of past distances and two additional
parameters, the number of "postfix bits", denoted by NPOSTFIX, and
the number of direct distance codes, denoted by NDIRECT. Both of
these parameters are encoded in the meta-block header. We will also
use the following derived parameter:
POSTFIX_MASK = ((1 << NPOSTFIX) - 1)
The first 16 distance codes are special short codes that reference
past distances as follows:
0: last distance
1: second last distance
2: third last distance
3: fourth last distance
4: last distance - 1
5: last distance + 1
6: last distance - 2
7: last distance + 2
8: last distance - 3
9: last distance + 3
10: second last distance - 1
11: second last distance + 1
12: second last distance - 2
13: second last distance + 2
14: second last distance - 3
15: second last distance + 3
The ring-buffer of four last distances is initialized by the values
16, 15, 11 and 4 (i.e. the fourth last is set to 16, the third last
to 15, the second last to 11 and the last distance to 4) at the
beginning of the *stream* (as opposed to the beginning of the meta-
block) and it is not reset at meta-block boundaries. When a distance
code 0 appears, the distance it represents (i.e. the last distance
in the sequence of distances) is not pushed to the ring-buffer of
last distances, in other words, the expression "(second, third,
fourth) last distance" means the (second, third, fourth) last
distance that was not represented by a 0 distance code. Similarly,
distances that represent static dictionary words (see Section 8.) are
not pushed to the ringbuffer of last distances.
The next NDIRECT distance codes, from 16 to 15 + NDIRECT, represent
distances from 1 to NDIRECT. Neither the distance short codes, nor
the NDIRECT direct distance codes have any extra bits.
Distance codes 16 + NDIRECT and greater all have extra bits, the
number of extra bits for a distance code "dcode" is given by the
following formula:
ndistbits = 1 + ((dcode - NDIRECT - 16) >> (NPOSTFIX + 1))
The maximum number of extra bits is 24, therefore the size of the
distance code alphabet is (16 + NDIRECT + (48 << NPOSTFIX)).
Given a distance code "dcode" (>= 16 + NDIRECT), and extra bits
"dextra", the backward distance is given by the following formula:
hcode = (dcode - NDIRECT - 16) >> NPOSTFIX
lcode = (dcode - NDIRECT - 16) & POSTFIX_MASK
offset = ((2 + (hcode & 1)) << ndistbits) - 4;
distance = ((offset + dextra) << NPOSTFIX) + lcode + NDIRECT + 1
5. Encoding of literal insertion lengths and copy lengths
As described in Section 2, the literal insertion lengths and backward
copy lengths are encoded using a single Huffman code. This section
provides the details to this encoding.
Each <insertion length, copy length> pair in the compressed data part
of a meta-block is represented with the following triplet:
<insert-and-copy length code, insert extra bits, copy extra bits>
The insert-and-copy length code, the insert extra bits and the copy
extra bits are encoded back-to-back, the insert-and-copy length code
is encoded using a Huffman code over the insert-and-copy length code
alphabet, while the extra bits values are encoded as fixed-width
machine integers. The number of insert and copy extra bits can be
0 - 24, and they are dependent on the insert-and-copy length code.
Some of the insert-and-copy length codes also express the fact that
the distance code of the distance in the same command is 0, i.e. the
distance component of the command is the same as that of the previous
command. In this case, the distance code and extra bits for the
distance are omitted from the compressed data stream.
We describe the insert-and-copy length code alphabet in terms of the
(not directly used) insert length code and copy length code
alphabets. The symbols of the insert length code alphabet, along with
the number of insert extra bits and the range of the insert lengths
are as follows:
Extra Extra Extra
Code Bits Lengths Code Bits Lengths Code Bits Lengths
---- ---- ------ ---- ---- ------- ---- ---- -------
0 0 0 8 2 10-13 16 6 130-193
1 0 1 9 2 14-17 17 7 194-321
2 0 2 10 3 18-25 18 8 322-577
3 0 3 11 3 26-33 19 9 578-1089
4 0 4 12 4 34-49 20 10 1090-2113
5 0 5 13 4 50-65 21 12 2114-6209
6 1 6,7 14 5 66-97 22 14 6210-22593
7 1 8,9 15 5 98-129 23 24 22594-16799809
The symbols of the copy length code alphabet, along with the number
of copy extra bits and the range of copy lengths are as follows:
Extra Extra Extra
Code Bits Lengths Code Bits Lengths Code Bits Lengths
---- ---- ------ ---- ---- ------- ---- ---- -------
0 0 2 8 1 10,11 16 5 70-101
1 0 3 9 1 12,13 17 5 102-133
2 0 4 10 2 14-17 18 6 134-197
3 0 5 11 2 18-21 19 7 198-325
4 0 6 12 3 22-29 20 8 326-581
5 0 7 13 3 30-37 21 9 582-1093
6 0 8 14 4 38-53 22 10 1094-2117
7 0 9 15 4 54-69 23 24 2118-16779333
To convert an insert-and-copy length code to an insert length code
and a copy length code, the following table can be used:
Insert
length Copy length code
code 0-7 8-15 16-23
+---------+---------+
| | |
0-7 | 0-63 | 64-127 | <--- distance code 0
| | |
+---------+---------+---------+
| | | |
0-7 | 128-191 | 192-255 | 384-447 |
| | | |
+---------+---------+---------+
| | | |
8-15 | 256-319 | 320-383 | 512-575 |
| | | |
+---------+---------+---------+
| | | |
16-23 | 448-511 | 576-639 | 640-703 |
| | | |
+---------+---------+---------+
First, look up the cell with the 64 value range containing the
insert-and-copy length code, this gives the insert length code and
the copy length code ranges, both 8 values long. The copy length
code within its range is determined by the lowest 3 bits of the
insert-and-copy length code, and the insert length code within its
range is determined by bits 3-5 (counted from the LSB) of the insert-
and-copy length code. Given the insert length and copy length codes,
the actual insert and copy lengths can be obtained by reading the
number of extra bits given by the tables above.
If the insert-and-copy length code is between 0 and 127, the distance
code of the command is set to zero (the last distance reused).
6. Encoding of block switch commands
As described in Section 2, a block-switch command is a pair
<block type, block length>. These are encoded in the compressed data
part of the meta-block, right before the start of each new block of a
particular block category.
Each block type in the compressed data is represented with a block
type code, encoded using a Huffman code over the block type code
alphabet. A block type code 0 means that the block type is the same
as the type of the second last block from the same block category,
while a block type code 1 means that the block type equals the last
block type plus one. If the last block type is the maximal possible,
then a block type code 1 means block type 0. Block type codes 2 - 257
represent block types 0 - 255. The second last and last block types
are initialized with 0 and 1, respectively, at the beginning of each
meta-block.
The first block type of each block category must be 0 and the block
type of the first block switch command is therefore not encoded in
the compressed data.
The number of different block types in each block category, denoted
by NBLTYPESL, NBLTYPESI, and NBLTYPESD for literals, insert-and-copy
lengths and distances, respectively, is encoded in the meta-block
header, and it must equal to the largest block type plus one in that
block category. In other words, the set of literal, insert-and-copy
length and distance block types must be [0..NBLTYPESL-1],
[0..NBLTYPESI-1], and [0..NBLTYPESD-1], respectively. From this it
follows that the alphabet size of literal, insert-and-copy length and
distance block type codes is NBLTYPES + 2, NBLTYPESI + 2 and
NBLTYPESD + 2, respectively.
Each block length in the compressed data is represented with a pair
<block length code, extra bits>. The block length code and the extra
bits are encoded back-to-back, the block length code is encoded using
a Huffman code over the block length code alphabet, while the extra
bits value is encoded as a fixed-width machine integer. The number of
extra bits can be 0 - 24, and it is dependent on the block length
code. The symbols of the block length code alphabet, along with the
number of extra bits and the range of block lengths are as follows:
Extra Extra Extra
Code Bits Lengths Code Bits Lengths Code Bits Lengths
---- ---- ------ ---- ---- ------- ---- ---- -------
0 2 1-4 9 4 65-80 18 7 369-496
1 2 5-8 10 4 81-96 19 8 497-752
2 2 9-12 11 4 97-112 20 9 753-1264
3 2 13-16 12 5 113-144 21 10 1265-2288
4 3 17-24 13 5 145-176 22 11 2289-4336
5 3 25-32 14 5 177-208 23 12 4337-8432
6 3 33-40 15 5 209-240 24 13 8433-16624
7 3 41-48 16 6 241-304 25 24 16625-16793840
8 4 49-64 17 6 305-368
The first block switch command of each block category is special in
the sense that it is encoded in the meta-block header, and as
described earlier the block type code is omitted, since it is an
implicit zero.
7. Context modeling
As described in Section 2, the Huffman tree used to encode a literal
byte or a distance code depends on the context ID and the block type.
This section specifies how to compute the context ID for a particular
literal and distance code, and how to encode the context map that
maps a <context ID, block type> pair to the index of a Huffman
tree in the array of literal and distance Huffman trees.
7.1. Context modes and context ID lookup for literals
The context for encoding the next literal is defined by the last
two bytes in the stream (p1, p2, where p1 is the most recent
byte), regardless if these bytes are produced by backward
references or by literal insertions.
There are four methods, called context modes, to compute the
Context ID:
* MSB6, where the Context ID is the value of six most
significant bits of p1,
* LSB6, where the Context ID is the value of six least
significant bits of p1,
* UTF8, where the Context ID is a complex function of p1, p2,
optimized for text compression, and
* Signed, where Context ID is a complex function of p1, p2,
optimized for compressing sequences of signed integers.
The Context ID for the UTF8 and Signed context modes is computed
using the following lookup tables Lut0, Lut1, and Lut2.
Lut0 :=
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,
44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 32, 32, 24, 40, 28, 12,
12, 48, 52, 52, 52, 48, 52, 52, 52, 48, 52, 52, 52, 52, 52, 48,
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,
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,
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
Lut1 :=
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,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1,
1, 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, 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,
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,
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
Lut2 :=
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,
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,
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, 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, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7
Given p1 is the last decoded byte and p2 is the second last
decoded byte the context IDs can be computed as follows:
For LSB6 : Context ID = p1 & 0x3f
For MSB6 : Context ID = p1 >> 2
For UTF8 : Context ID = Lut0[p1] | Lut1[p2]
For Signed: Context ID = (Lut2[p1] << 3) | Lut2[p2]
The context modes LSB6, MSB6, UTF8, and Signed are denoted by
integers 0, 1, 2, 3.
The context mode is defined for each literal block type and they
are stored in a consecutive array of bits in the meta-block
header, always two bits per block type.
7.2. Context ID for distances
The context for encoding a distance code is defined by the copy
length corresponding to the distance. The context IDs are 0, 1, 2,
and 3 for copy lengths 2, 3, 4, and more than 4, respectively.
7.3. Encoding of the context map
There are two kinds of context maps, for literals and for
distances. The size of the context map is 64 * NBLTYPESL for
literals, and 4 * NBLTYPESD for distances. Each value in the
context map is an integer between 0 and 255, indicating the index
of the Huffman tree to be used when encoding the next literal or
distance.
The context map is encoded as a one-dimensional array,
CMAPL[0..(64 * NBLTYPESL - 1)] and CMAPD[0..(4 * NBLTYPESD - 1)].
The index of the Huffman tree for encoding a literal or distance
code with context ID "cid" and block type "bltype" is
index of literal Huffman tree = CMAPL[bltype * 64 + cid]
index of distance Huffman tree = CMAPD[bltype * 4 + cid]
The values of the context map are encoded with the combination
of run length encoding for zero values and Huffman coding. Let
RLEMAX denote the number of run length codes and NTREES denote the
maximum value in the context map plus one. NTREES must equal the
number of different values in the context map, in other words,
the different values in the context map must be the [0..NTREES-1]
interval. The alphabet of the Huffman code has the following
RLEMAX + NTREES symbols:
0: value zero
1: repeat a zero 2-3 times, read 1 bit for repeat length
2: repeat a zero 4-7 times, read 2 bits for repeat length
...
RLEMAX: repeat a zero (2^RLEMAX)-(2^(RLEMAX+1) - 1) times,
read RLEMAX bits for repeat length
RLEMAX + 1: value 1
...
RLEMAX + NTREES - 1: value NTREES - 1
If RLEMAX = 0, the run length coding is not used, and the symbols
of the alphabet are directly the values in the context map. We can
now define the format of the context map (the same format is used
for literal and distance context maps):
1-5 bits: RLEMAX, 0 is encoded with one 0 bit, and values
1 - 16 are encoded with bit pattern 1xxxx
Huffman code with alphabet size NTREES + RLEMAX
Context map size values encoded with the above Huffman code
and run length coding for zero values
1 bit: IMTF bit, if set, we do an inverse move-to-front
transform on the values in the context map to get
the Huffman code indexes
For the encoding of NTREES see Section 9.2.
8. Static dictionary
At any given point during decoding the compressed data, a reference
to a duplicated string in the output produced so far has a maximum
backward distance value, which is the minimum of the window size and
the number of output bytes produced. However, decoding a distance
from the input stream, as described in section 4, can produce
distances that are greater than this maximum allowed value. The
difference between these distances and the first invalid distance
value is treated as reference to a word in the static dictionary
given in Appendix A. The maximum valid copy length for a static
dictionary reference is 24. The static dictionary has three parts:
* DICT[0..DICTSIZE], an array of bytes
* DOFFSET[0..24], an array of byte offset values for each length
* NDBITS[0..24], an array of bit-depth values for each length
The number of static dictionary words for a given length is:
NWORDS[length] = 0 (if length < 3)
NWORDS[length] = (1 << NDBITS[lengths]) (if length >= 3)
DOFFSET and DICTSIZE are defined by the following recursion:
DOFFSET[0] = 0
DOFFSET[length + 1] = DOFFSET[length] + length * NWORDS[length]
DICTSIZE = DOFFSET[24] + 24 * NWORDS[24]
The offset of a word within the DICT array for a given length and
index is:
offset(length, index) = DOFFSET[length] + index * length
Each static dictionary word has NTRANSFORMS different forms, given by
applying a word transformation to a base word in the DICT array. The
list of word transformations is given in Appendix B. The static
dictionary word for a <length, distance> pair can be reconstructed as
follows:
word_id = distance - (max allowed distance + 1)
index = word_id % NWORDS[length]
base_word = DICT[offset(length, index)..offset(length, index+1))
transform_id = word_id >> NDBITS[length]
The string copied to the output stream is computed by applying the
transformation to the base dictionary word. If transform_id is
greater than NTRANSFORMS - 1 or length is greater than 24, the
compressed data set is invalid and must be discarded.
Each word transformation has the follwing form:
transform_i(word) = prefix_i + T_i(word) + suffix_i
where the _i subscript denotes the transform_id above. Each T_i
is one of the following 12 elementary transforms:
Identity, Omit1, ..., Omit9, UppercaseFirst, UppercaseAll
The form of these elementary transforms are as follows:
Identity(word) = word
Omitk(word) = the first (length(word) - k) bytes of word, or
empty string if length(word) < k
UppercaseFirst(word) = first UTF-8 character of word upper-cased
UppercaseAll(word) = all UTF-8 characters of word upper-cased
For the purposes of UppercaseAll, word is parsed into UTF-8
characters an coverted to upper-case by taking 1 - 3 bytes at a time,
using the algorithm below:
i = 0
while i < length(word):
if word[i] < 192:
if word[i] >= 97 and word[i] <= 122:
word[i] = word[i] ^ 32
i = i + 1
else if word[i] < 224:
if i + 1 < length(word):
word[i + 1] = word[i + 1] ^ 32
i = i + 2
else:
if i + 2 < length(word):
word[i + 2] = word[i + 2] ^ 5
i = i + 3
For UppercaseFirst, the same algorithm is used, but the loop is
executed only once.
Appendix B. contains the list of transformations by specifying the
prefix, elementary transform and suffix components of each of them.
9. Compressed data format
In this section we describe the format of the compressed data set in
terms of the format of the individual data items described in the
previous sections.
9.1. Format of the stream header
The stream header has only the following one field:
1-4 bits: WBITS, a value in the range 16 - 24, value 16 is
encoded with one 0 bit, and values 17 - 24 are
encoded with bit pattern 1xxx
The size of the sliding window, which is the maximum value of any
non-dictionary reference backward distance, is given by the
following formula:
window size = (1 << WBITS) - 16
9.2. Format of the meta-block header
A compliant compressed data set has at least one meta-block. Each
meta-block contains a header with information about the
uncompressed length of the meta-block, and a bit signaling if the
meta-block is the last one. The format of the meta-block header is
the following:
1 bit: ISLAST, set to 1 if this is the last meta-block
1 bit: ISEMPTY, set to 1 if the meta-block is empty, this
field is only present if ISLAST bit is set, since
only the last meta-block can be empty
2 bits: MNIBBLES - 4, where MNIBBLES is # of nibbles to
represent the length
MNIBBLES x 4 bits: MLEN - 1, where MLEN is the length
of the meta-block in the input data in bytes
1 bit: ISUNCOMPRESSED, if set to 1, any bits of input up to
the next byte boundary are ignored, and the rest of
the meta-block contains MLEN bytes of literal data;
this field is only present if ISLAST bit is not set
1-11 bits: NBLTYPESL, # of literal block types, encoded with
the following variable length code:
Value Bit Pattern
----- -----------
1 0
2 1000
3-4 1001x
5-8 1010xx
9-16 1011xxx
17-32 1100xxxx
33-64 1101xxxxx
65-128 1110xxxxxx
129-256 1111xxxxxxx
Huffman code over the block type code alphabet for literal
block types, appears only if NBLTYPESL >= 2
Huffman code over the block length code alphabet for literal
block lengths, appears only if NBLTYPESL >= 2
Block length code + Extra bits for first literal block
length, appears only if NBLTYPESL >= 2
1-11 bits: NBLTYPESI, # of insert-and-copy block types, encoded
with the same variable length code as above
Huffman code over the block type code alphabet for insert-
and-copy block types, only if NBLTYPESI >= 2
Huffman code over the block length code alphabet for insert-
and-copy block lengths, only if NBLTYPESI >= 2
Block length code + Extra bits for first insert-and-copy
block length, only if NBLTYPESI >= 2
1-11 bits: NBLTYPESD, # of distance block types, encoded with
the same variable length code as above
Huffman code over the block type code alphabet for distance
block types, appears only if NBLTYPESD >= 2
Huffman code over the block length code alphabet for
distance block lengths, only if NBLTYPESD >= 2
Block length code + Extra bits for first distance block
length, only if NBLTYPESD >= 2
2 bits: NPOSTFIX, parameter used in the distance coding
4 bits: four most significant bits of NDIRECT, to get the
actual value of the parameter NDIRECT, left-shift
this four bit number by NPOSTFIX bits
NBLTYPESL x 2 bits: context mode for each literal block type
1-11 bits: NTREESL, # of literal Huffman trees, encoded with
the same variable length code as NBLTYPESL
Literal context map, encoded as described in Paragraph 7.3,
appears only if NTREESL >= 2, otherwise the context map
has only zero values
1-11 bits: NTREESD, # of distance Huffman trees, encoded with
the same variable length code as NBLTYPESD
Distance context map, encoded as described in Paragraph 7.3,
appears only if NTREESD >= 2, otherwise the context map
has only zero values
NTREESL Huffman codes for literals
NBLTYPESI Huffman codes for insert-and-copy lengths
NTREESD Huffman codes for distances
9.3. Format of the meta-block data
The compressed data part of a meta-block consists of a series of
commands. Each command has the following format:
Block type code for next insert-and-copy block type, appears
only if NBLTYPESI >= 2 and the previous insert-and-copy
block has ended
Block length code + Extra bits for next insert-and-copy
block length, appears only if NBLTYPESI >= 2 and the
previous insert and-copy block has ended
Insert-and-copy length, encoded as in section 5, using the
insert-and-copy length Huffman code with the current
insert-and-copy block type index
Insert length number of literals, with the following format:
Block type code for next literal block type, appears
only if NBLTYPESL >= 2 and the previous literal
block has ended
Block length code + Extra bits for next literal block
length, appears only if NBLTYPESL >= 2 and the
previous literal block has ended
Next byte of the input data, encoded with the literal
Huffman code with the index determined by the
previuos two bytes of the input data, the current
literal block type and the context map, as
described in Paragraph 7.3.
Block type code for next distance block type, appears only
if NBLTYPESD >= 2 and the previous distance block has
ended
Block length code + Extra bits for next distance block
length, appears only if NBLTYPESD >= 2 and the previous
distance block has ended
Distance code, encoded as in section 4, using the distance
Huffman code with the current distance block type index,
appears only if the distance code is not an implicit 0,
as indicated by the insert-and-copy length code
The number of commands in the meta-block is such that the sum of
insert lengths and copy lengths over all the commands gives the
uncompressed length, MLEN encoded in the meta-block header.
10. Decoding algorithm
The decoding algorithm that produces the output data is as follows:
read window size
do
read ISLAST bit
if ISLAST
read ISEMPTY bit
if ISEMPTY
break from loop
read MLEN
if not ISLAST
read ISUNCOMPRESSED bit
if ISUNCOMPRESSED
skip any bits up to the next byte boundary
copy MLEN bytes of input to the output stream
continue to the next meta-block
loop for each three block categories (i = L, I, D)
read NBLTYPESi
if NBLTYPESi >= 2
read Huffman code for block types, HTREE_BTYPE_i
read Huffman code for block lengths, HTREE_BLEN_i
read block length, BLEN_i
set block type, BTYPE_i to 0
initialize second last and last block types to 0 and 1
else
set block type, BTYPE_i to 0
set block length, BLEN_i to 268435456
read NPOSTFIX and NDIRECT
read array of literal context modes, CMODE[]
read NTREESL
if NTREESL >= 2
read literal context map, CMAPL[]
else
fill CMAPL[] with zeros
read NTREESD
if NTREESD >= 2
read distance context map, CMAPD[]
else
fill CMAPD[] with zeros
read array of Huffman codes for literals, HTREEL[]
read array of Huffman codes for insert-and-copy, HTREEI[]
read array of Huffman codes for distances, HTREED[]
do
if BLEN_I is zero
read block type using HTREE_BTYPE_I and set BTYPE_I
read block length using HTREE_BLEN_I and set BLEN_I
decrement BLEN_I
read insert and copy length, ILEN, CLEN with HTREEI[BTYPE_I]
loop for ILEN
if BLEN_L is zero
read block type using HTREE_BTYPE_L and set BTYPE_L
read block length using HTREE_BLEN_L and set BLEN_L
decrement BLEN_L
look up context mode CMODE[BTYPE_L]
compute context ID, CIDL from last two bytes of output
read literal using HTREEL[CMAPL[64 * BTYPE_L + CIDL]]
copy literal to output stream
if number of output bytes produced in the loop is MLEN
break from loop
if distance code is implicit zero from insert-and-copy code
set backward distance to the last distance
else
if BLEN_D is zero
read block type using HTREE_BTYPE_D and set BTYPE_D
read block length using HTREE_BLEN_D and set BLEN_D
decrement BLEN_D
compute context ID, CIDD from CLEN
read distance code with HTREED[CMAPD[4 * BTYPE_D + CIDD]]
compute distance by distance short code substitution
move backwards distance bytes in the output stream, and
copy CLEN bytes from this position to the output stream,
or look up the static dictionary word and copy it to the
output stram
while number of output bytes produced in the loop < MLEN
while not ISLAST
Note that a duplicated string reference may refer to a string in a
previous meta-block, i.e. the backward distance may cross one or
more meta-block boundaries. However a backward copy distance
cannot refer past the beginning of the output stream and it can
not be greater than the window size; any such distance must be
interpreted as a reference to a static dictionary word. Also note
that the referenced string may overlap the current position, for
example, if the last 2 bytes decoded have values X and Y, a string
reference with <length = 5, distance = 2> adds X,Y,X,Y,X to the
output stream.
11. References
[1] Huffman, D. A., "A Method for the Construction of Minimum
Redundancy Codes", Proceedings of the Institute of Radio
Engineers, September 1952, Volume 40, Number 9, pp. 1098-1101.
[2] Ziv J., Lempel A., "A Universal Algorithm for Sequential Data
Compression", IEEE Transactions on Information Theory, Vol. 23,
No. 3, pp. 337-343.
[3] Deutsch, P., "DEFLATE Compressed Data Format Specification
version 1.3", RFC 1951, Aladdin Enterprises, May 1996.
http://www.ietf.org/rfc/rfc1951.txt
12. Source code
Source code for a C language implementation of a "brotli" compliant
decompressor and a C++ language implementation of a compressor is
available in the brotli/ directory within the font-compression-
reference open-source project:
https://code.google.com/p/font-compression-reference/source/browse/
Appendix A. Static dictionary data
The hexadecimal form of the DICT array is the following:
212d2d272c270a0909efbbbfc2a920e28093e28094e28099e2809ce2809de280
a6e282ace28692e38081e38082efbc89efbc9a3c7464737263616c7472656c3c
623e3c703e3c74723c6c693c693e3c68326469723c756c3c74683c753e666f72
3c62723c613e3c68726b65793c68337265666e61765f73703c64643c68317572
6c3c68346669643c54646e756d3c656d3c6f6c3c64747369643c6835656e6476
69613c646c6e65777265766f70746361746f673a76616c637373636667666a73
6f6373657272616c6c6f626a657674746f707461676a73686f63656d61707074
6b646f6d676574616464646976697062636d6473657472706375726973797373
706c706963746f646172726d736764617961646f66726d696d676f6e6564786f
6469647374726e6f776c656e706f73696d4c636e746c6f676c6174626d445f67
61656c3169646f7573656c6e67626d4e6965346558626d696e626d53666c646f
6c7777696e6e61707265736370756d617861496474616269647365656c706964
6e73365f7374655873655877647371626273746d706c6e6c736d6f706f707265
716c727379756973736877656274787461627365586469746d646f7475696479
746d73656c6369646c64776f6666656e76656c6d73756264656662746e6f7264
6e6d326e6f74656c73617267616e6e736c62696d54726567686578646c677362
72626172776e646e547373656362626e61647369676163646d69767774686561
6e64796f7561726577617363616e6861736275746f75726f7574616e79686973
6d617977686f69747368616473656574776f6865726a616e686f77696e637761
797365786275797368656476646f776e68696d757361706572277265746f6f27
7665636172276c6c6465637361796f6c6473616e676179626967676f746e6f6e
6665776172746f63746d616e6e6f766c6f777273736c61776a6f627965737075
74666562706179736570666171776879676f647965742e2e2e6d617261756761
676f73756e6d656e626f7872756e2d2d2d6475656170726c6f74616374666178
6a756c6c65747265646a756e746178686f746661727472796574636169726167
6566756e6269746575727573726d6f6e62617966726962616477656477617270
726f747565746875636f6d696e6e61736b676d747064666c74646e6574736978
73617461737362696e74656c6c6f73786d6c6573747073746269646969697573
626f696c6d736e6375746d6163746f6d696e747361776869742a2a2a736f6e70
7265676173706870646f676c6c636c656569626d6b69746665656a696d626f62
7878786c617363756d6d65746265646e6f726661746c6564766f6c6669746465
766a6f65736561777777626f796c636467757964696574656e76687343447365
79656176657065747573647a697076617262626361696476616e6375706d7273
64656c7a756d686976646e61646573776f6e66616e62757364616e7064616473
6c74696d616f6c7574636d696473716c7370616770736561746c616270647466
697861766762656e636f6e7261796472796c6962627567646f6e756e64616363
676e756261676e666c646f63726f6d6963656465726d6978637673707370736b
69666f7868657973616d656474766174776574736974726f7769736f72616d6d
6f6d73756d7175656162636c657361726d696e67666c796570616b696d717479
63616d61696d6b656e72616e6e73776e62616a61796373746c6273696e6b6f61
6b73697263656f726f6e766f6e757277746f79736b7968617470756275707374
656161737074697069616e726f6267636370616e6a6f6e70636967756e757363
6c6179686970726177736369666967686f70696c6c73726963726d617069e585
a5e5b7b2e6b0b4e79a84706f72756e6173757373657276657273696e6d757964
6f736861796e6f736d617366756568616e76657a756e6f75736f65736f657261
7475736573656d697374616e686f796c657965736166696e74616c6d6573c3a9
6c736f7973c3ad6461726d696c6d616c68617a6173697375726469616c757a76
6f7970617a61756e6dc3ad766f7a64696f69766173c3a974c3ba616e61706172
69643d22696620283130302522253363272533653c2f613e687265663c646976
3c696d676e616d653c62723e3c6c693e3c74723e3c212d2d3c74643e3c2f623e
747970653c2f703e726f6c653c2f693e73697a653c756c3e3c64643e3c68323e
3c68333e3c64743e6c616e6774696d6573696465666163653c74683e3c2f753e
3c656d3e3c68343e3c68313e3c68723e3c646c3e3c68353e3c636f6c66626964
3c68363e3c6f6c3e726f777364617461636f6c733c54723e7965617273656e64
3c54643e616262723c6e61767465726d666f6e743c62523e6c696e6b3c737570
6f7269676a73696477697468787265666d656e756469666676726e72636f6c6c
2e706e6763616c315f6761717075736868746d6c6d6174686174747268696465
6562617973686f7764617465676269647574696c696e697466696e646f70656e
5f676174626c757262696e64626f64796c6f61646d6170736561636874657874
6d335f756d335f72656c656d6c6973746974656d616a617873656c6670616765
6c656674666f726d73746f70736f72746576616c676164736e6f646574616273
6c69766576617273746573746a6f696e70617468737461747069637368617368
617267736e657874706f73747472696d74726565686f73746761696163686174
68747470736974657768617472657370716d6164646976736361743175736572
6a736f6e63616c6c5f746167715374726d636e3270726576646179735f676e6f
636f64656d4d5f706d636e336f5372636d63686e6865616474796e7465786563
66756e6363706f736d6170616f7074736d7369656d6573736a7332305f776175
6a7474736d766a736365696c617265616763736561646d7365586a7664657374
696e666f664f626a636974797a6f6f6d6d61726b666972656d6f646564726177
66726f6d646f6a6f66616465646f6e65706173737072656674656d70636e756d
69546f707469636b71756565686f757266726167697349456d6f667367756964
7053747274726163746d7032666e643261646449746970737076617263646976
71637073726f6f74636f626a6661696c5f746371617461676765746970734944
75726c326d61696c7461726770726f705f767271666c6167745f696466617673
6e735f3073746570637572726f456c6d74686541717561646172633174686174
74686973796f75726861766577696c6c6d6f7265686f6d65746865796265656e
776572656e6577736f6e6c79616c736f667265657468616e7768656e6c696b65
68657265736f6d65696e746f6f7665727468656d766965776a75737473756368
776f726b757365646d616b656d6f737468656c70736169647468656e77656c6c
766572796b6e6f7765426179646f65736261636b676f6f646e6565646d616e79
6d7573746d6164656c617374626573746d75636873616d6577616e7474616b65
706172746c696e656576656e68696768626f74686c696665646f776e6c6f6e67
66756c6c6a6f686e66696c6563617365796f726b7369676e626f6f6b6a756e65
7265616473686f706a756c797265616c776573747465656e67616d65636f6d65
6c6f6f6b726174656c6573736c6f766563617265676976656a6f6273636f7374
7765656b63617274736176657061726b6561737461626c65706c617973757265
61776179726f6f6d666f7572666f6f646d61696e706c616e706f726e7465616d
68616e6473617973636c7562636172646b656570686172646561737975706f6e
657665726e6f74656661637473616c656e75646570617374626c6f6761727473
726f61646665656c66697665626c7565656c73656f6e63657061756c73746172
62616279676966747365656e68656c6463616d656d656574676f6c64736f6e79
6d65616e7269736b74656c6c747275656c616b65746f79736e65617266696c6d
68616c6677656e74636e6574746f6f6b6b696e6473656c6c7465636877696465
73746179636f707962696c6c6175746f776f72646c616e646c6f73737475726e
676f6c66736f6f6e6b696e676d696e646769726c73656e746c6f616e69646561
636172736875676562757368726f636b6b6964736d6f7665746f6c64686f7065
626173656c61746563656c6c686f6c646c65616462616e6b66617374756e6974
6465616c68696c6c61736961697261716472756774616c6b6e69636565646974
776179736665657468616c6c63617368757365736d617279706c75736973626e
77697368706169646c6f73746e6f6e6566696e65746f776e726573746f68696f
2d2d2d2d6d696b65746f6f6c6865617273686970616e616c746f757266656573
676f65737365787972756c656a617661646f6f72676574737769666544564473
6c6f726462616e64706f7274766f74657361666565796573736f6e6766756e64
66616c6c7365656d6d616c65626f726e6761766564656570676f616c616e7469
706f6f726c6f676f66656564666c6f776f6e6573636f6f6c6c6177736b6f6e67
77696e65736b697074687573736b696e70616c6d6a61636b6861697272617065
6c6f74736669726d666f726477616974736f6c64677579736d696e697061696e
7472697066656c747365747373686f74766f696472616365636f72656675636b
6a756d7061726d797061636b78626f786b6e6577686f6e67666f6f746d696c66
696f7761666f7274636f636b77616c6c6f72616c6669736869506f6472656e74
626f797364617665646562746c61636b706f6f6c6465616464696564676f6e65
77616c6b676561727469747377686f6d66696c6c6b6570747461736b64696574
66616972696e63686564676564726f70776f6f647a6f6e6572696e676761696e
6d61737363617065626c6f776f6e746f686561747365786f757461687069636b
63656e74636f6c646461726b6869747372616e6b64656c6c4641517372696368
6572696369636f6e6675656c726f73656661726d6a65666662616c6c736f6674
72756e73666c61746972616e72697365746f6e7967726f7770696e6b61746f6d
736c6f7761696473647574796d6174746469736b7365656b6a65616e6d696e65
7761727361636964656e6473766172796c6f73656d697373666561726a617a7a
626f617477696e647a65726f636c69706465616e7375636b67656e6576696365
6869726577696c64636f7270776561727061697263616d707065747364697363
66616e73726f6d65676172796c6567736e696e65616c616e746167736164616d
73706f7461726162626174686a616e656a6f7365636173746e61736173656174
7761726d6465736b61726d73706d69646c616e6562656c6c686f6c6562616773
6d6f6f6e6e61767974617065736f696c62656174636861726d656e7362696473
726964656b696c6c6575726f616e6e65646f6e7462617273736e6f77636f6f6b
686f6c797279616e726172656c61647969726f6e736f756c7370616d68617465
646f67737065616b6b6974736e69636b62657461746f6c6c6b657973616c6578
6e756c6c626974736475616c73756974657869746d696c65726f6c6c736c6f74
62656172616374736576696c776972656269726461676573616e647970756c6c
627573796d65534874696f6e677265676563686f7261696e766f495062617373
776176656d696c6b5044417370682e4466656c6c70617261626f776c74656e64
707572656b656e7476697361796561686d6973636c6f636b68656c6c74696c6c
7269636f6c6f6f706469636b67726179706f6c6c646f7365646561726c697361
6869737462616265726561726c696573726f7373756e6978626f6f7464697368
7269636b706c7567706c6f747068696c6c657473676c61646361666573616c74
7369636b6c75636b6965656562696b65746f6e657477696e6164647367756c66
6672656474696e79706565726375626174616e6b726963656e6f7661616e6e61
63726577626c76646561726e7065726c666f746f67616e677365616e62616e67
7765616b62757474706f75726d656174636869706f726779616765646c616964
7468696e6c656e736d617263687572746361726c6e65636b62656572626f6e64
63757465736869746b617465746861696e6361616772657973657074736f6c65
776172647661737474756265706572757269636164756b657363616e70756d70
626f6e65656173656d617273796f67616e65696c626f6c6464656d6f6f636c63
6578616d7265656473656564677265776d616c6c69276d6173656d6964757374
6772696462756c6b61696d736573706e6d696e7377696b6977696e7363757473
626564736a65777370696c6c6d65616c796172642a2a2a2a70697065776f6c66
70757473627567736173696e74616c6c646f75676c616273726f6f666c696674
627261646a75616e746f64647365657363616b65686474767368757473616e64
6469616c736c6970676174656c796e6e70697373756e746f6b69636b6c756b65
776167656861726d70656e6e6275726e72656c797365616c636f6c656a6f656c
6d617274626f6f627370616e636f6d6f6dc3a17365737465657374617065726f
746f646f686163656361646161c3b16f6269656e64c3ad616173c3ad76696461
6361736f6f74726f666f726f736f6c6f6f7472616375616c64696a6f7369646f
6772616e7469706f74656d6164656265616c676f7175c3a96573746f6e616461
74726573706f636f6361736162616a6f746f646173696e6f6167756170756573
756e6f73616e7465646963656c756973656c6c616d61796f7a6f6e61616d6f72
7069736f6f627261636c6963656c6c6f64696f73686f7261636173696372656f
686f6c6163696e656275656e61c3ba6e7061676f6c61646f7061736f616c7461
6d616e6f6d6f646f61727465636f7361756e6173747261736564616468617961
616c746f65736f736372757a6c696d6165726573706173616e6f746168697a6f
657361736171756973616265616972656c6565726361626f62616a616461646f
757361726d6972616475646176c3ad6173616c616572616e68696a6f6f6a6f73
617965726168c3ad6369616f6f63696f63617261736569737065736f72c3ad6f
7475766f6163746f64656a616861676164696767726f70616375796f6d616c61
7669766f64696173706f6e65d0b7d0b0d0bdd0b0d0bed0bcd180d0b0d180d183
d182d0b0d0bdd0b5d0bfd0bed0bed182d0b8d0b7d0bdd0bed0b4d0bed182d0be
d0b6d0b5d0bed0bdd0b8d185d09dd0b0d0b5d0b5d0b1d18bd0bcd18bd092d18b
d181d0bed0b2d18bd0b2d0bed09dd0bed0bed0b1d09fd0bed0bbd0b8d0bdd0b8
d0a0d0a4d09dd0b5d09cd18bd182d18bd09ed0bdd0b8d0bcd0b4d0b0d097d0b0
d094d0b0d09dd183d09ed0b1d182d0b5d098d0b7d0b5d0b9d0bdd183d0bcd0bc
d0a2d18bd183d0b6d981d98ad8a3d986d985d8a7d985d8b9d983d984d8a3d988
d8b1d8afd98ad8a7d981d989d987d988d984d985d984d983d8a7d988d984d987
d8a8d8b3d8a7d984d8a5d986d987d98ad8a3d98ad982d8afd987d984d8abd985
d8a8d987d984d988d984d98ad8a8d984d8a7d98ad8a8d983d8b4d98ad8a7d985
d8a3d985d986d8aad8a8d98ad984d986d8add8a8d987d985d985d8b4d988d8b4
5b305d3b2026616d703b666f6e742d7574662d383d2022223b6572726f727069
78656c262333393b636c6173733c2f74643e3c2f6c693e7469746c6577696474
6876616c75653c2f74723e616c69676e3c7370616e3c2f756c3e3c6d6574613c
6469763e3c666f6e74636f6c6f723c666f726d3c2f68323e3c2f64643e3c2f68
333e686f7665723c2f68353e6d656469613c6c696e6b3c2f74683e3c2f64743e
786d6c6e737574696d653c2f68343e3c2f68313e6c6162656c3c68746d6c3c2f
646c3e66697865643c7762723e3c2f656d3e3c626f64793c2f6f6c3e3c2f6272
3e73636f7065636c656172776d6f64653c6172656173686170653c2f68363e74
6f6b656e3c7375703e73697a65736d6f7270683c74696d653c686561643c6f3a
703e3c7072653e636f756e747374796c653c2f54643e3c616262723c3f706870
6a6f6249643c636f6c3e3c6269673e747261636b3c6e61763e3c2f68723e6162
6f757473746172746c696d69743c64656c3e7961686f6f77726974656173796e
63726561647961727261796576656e74636c69636b666f63757373706c697461
6c6572746f5061676572657365746f63737472666c6f6f726e61696164696d61
67656e61706f6b6d6174636864617465736d6f6e7468666f726d737348544d4c
656d61696c71756572796f70657261696e64657878616a61787061727473726f
756e64706f696e747465726d7373705f653064656c6179706c616365636c6f73
657072696e746974656d736c6f67696e77686963686265616368686f75727373
6c696365636865636b6375666f6e706172616d6669656c646c696e6b73666972
73747374617465626567696e63686b656463706f7374696e7075746d79546f70
746f6461796d61636832666f726d31616270776c6c6576656c6d61636833706f
735f78706f735f795f65786563717565756574696d6572646562756773617665
646166746572636c65616e644f4d5f6165636f6f6b656d7068456c766c323370
61676559706977696b6379636c656c766c32326a737665727368696674736c69
6465626275726c69734e614e67726f757066625f777073657475706d4d5f7372
7477747472636c6f636b656d7074796a626d5f756469764944746f74616c6361
636865676f55524c676f4d6170746f7069636d7957696e70617468736c766c31
326753697a656d6f64656c706c61727273746f72656f54657874696b6f6e616c
766c33337061676558656c656d326854696d6564747265657366456c736d4461
79736749636f6e7072696365666f756e6466616465726244617973716d5f6c69
736362707373666f6e74614c696e6b615069647369644d6170674d6170326148
6f7374636f4d7367706f707570736c6176656e4d63657361646445566c766c33
326b6579757073694373736c766c3133735f6c736e747572626f77726f6e6761
64726573746970496470726f787967766172736f436f636b61725f636e726967
687473635f6f6e736e5f6f6e73735f6f6e737056616c694c65667470686f6e65
73745f676f746f704164746578747370617273656d656e75326d656e7531656e
747279737065656466696c65736d656e7536716d5f7474716f73535361646469
74697352544c626c6f636b64656c7461656c656d735f7072756d697349453677
7061326174686569726f74686572776f756c6474686572657468657365796561
7273636f756c647768657265756e6465726d7573696374686f73656265696e67
7573696e67626f6f6b7362617365646f72646572776f726c6467616d65737468
696e6b736f7574686772656174686f74656c7368616c6c766964656f6e6f7274
687468726565666f72756d7768696c656c6f63616c7374696c6c657665727973
696e63656d617263686775696465617072696c676f696e67736d616c6c706f73
74737761746572686f7573657265706c7970686f746f626f6172647061676573
776f6d656e74696d6573707265737361626f7665616761696e62656c6f77626c
61636b6d6f6e65796e6576657273697465736c61726765706f77657277686974
656d696768746368696e61746f6f6c73676976656e75736572736e656564736c
656173746c6561726e756e74696c6172656173737475647964617669646d6561
6e73706f6b65726f6666657272616e6765726174657373746166666769726c73
796f756e677669736974736861726573616c657373746f72797468696e676875
6d616e6d6f766965636f7374736d616a6f727461626c6574657861736f667465
6e73746f636b706172747969737375656e6967687471756f74656a616d65736b
6e6f776e6d696c657374616b656e61646465646d616b6573696e646961636869
6c6473706163656c69676874706170657277686f6c65616c6f6e67617564696f
6c61746572776f7264736561726c7973686f7274646f696e676c6567616c6a61
70616e7468697264776f726b73616d6f6e6763617264736c696e757867696674
73726164696f677265656e73686f776e6361736573636f75727473686f777377
65656b7366696e616c656e746572616c6c6f7766726f6e7461736b6564736f75
6e64636f6d657363617573656c696e65737465656e73636f7665726461696c79
72756c65736865617274736d697468646561746862617369736c6f7765726275
696c646170706c79747261646570657465727269766572647269766563686561
7077726f74656974616c7971756974657479706573706c616e736c6561766573
686f6573756e696f6e74616b65736164756c747365656d737072696f72776f6d
616e717569636b70757373796e616d65736e6f6b696177617463686272696e67
6275696c7473656e7365666c617368626173696362726f776e76696577736964
656173737061696e737570657273747566666465616c73666f7263656e6f7465
73626c6f6f646272616e64616772656567697665736772616e6473706f727477
686f73656170706c6566756c6c7963687269736865617264756e697473626962
6c656c6f616e7376616c696473636f726566756e647368616e6473627265616b
616c62756d726f6f6d737468616e6b766f696365737465766563656c6c736c6f
6f6b7370617269736861707079726f79616c73636f74746f776e657262656761
6e6c697665736361626c65656e6a6f79657874726163726f737367756573746e
616b6564747269616c656172746873746167656f6c64657273616e7461766567
61737374617273776f727468676c6173737368697073686f727365636c61696d
617369616e616c6f6e6570696563657363616c656a6f6e657363616e6f6e7361
696e74636f6173746c6f75697363616c6c736b696e64736167656e74686f6d65
737374616e647472696564706c616e746a657375737365727665737569746574
657374736d6f766564736f6e677361776172646d61796265736576656e637265
656b7265616368706f726e6f6c697374736f776e6564726174656467616d6d61
737465707362757965726672616d6577616e7473626c6f67736e616d65646b6f
72656161766f6964796f75746864616e6365646965676f676f616c736e6f7465
647370656e746d756c746977616c6573657175616c627269616e636172727966
72616e6b677261646562797465736d6574616c646576656c7072696d65647275
67737761737465646176697368656c6c6f7472757374676f6f64737065616365
70616e656c63686965666c6174696e696e74656c68656c70736d69616d696865
6e72796569676874737065616b7068617365636976696c656e64656461646f62
65746f757273636973636f7472757468657869737467756573736f6363757268
6561767974617865736d61696e6561776172656d6f756e747370656e64636861
697268617272796672657368737465656c746f75636869726973686669676874
636c6970736772616e74717565656e6372696d656b6e6f777376697275737465
616d737570706572736f6c696466616974686b6576696e73746f6e6561627573
65677265656b6d61676963706174636873686f70736a6f696e74616865616464
6570746866696c6564627261696e666163747366616c6c73636861696e736865
65747468656d65626972746866756e6e796f6365616e6c65776973637a656368
7369676e73636c7562737363656e65737461747366616c7365747261696e7472
656573696461686f7265666572736c6565706d6f746f72636f737461616c6c65
6e7472756c796c617365727368697274696465616c736d6172746669726d736d
696e6f726b656c6c79636f646573636c61726b64726166746c65616473627269
6566757262616e6d6f757468766f746573737769737366656564736a61736f6e
736172616868696c6c73666f727468646f7562747261697365626f756e646c61
7965726d6f7573656e65776c79736f7272796567797074636f6e737463686172
74627275636561646d696e6c61626f72626162657373696d6f6e72696e677372
7572616c726174696f616e67656c657861637466696c6d736275646479747769
636570726f6f666c6f6467656e6f697365616e696d65726f75746564696c646f
62726f61646d6f6f72656475746368706c6179736d65616e74647265616d6c69
7665646c6f766564626c7565737061726b737461736b73686f6c6473646f6c6c
736472696e6b626f6f6273737765657462656172736e6f76656c7269736b7373
7573616e7472656174626f7865736d6978656462616e6b736a75646765636174
63687573616765796f75727374616d7061757375616c6d7953514c726f6d616e
6d696c6673747275636b7369646573706c61696e70726f766574656163687475
726e736164616d7372686f646573686f7473626f6e75736d6574726f68616972
7970656e6973746967687467656e726574656c6c736c617272797761796e6573
706563736469636b65756c7472616d6574657270726f7564776f727365686f6e
6461726f6765726c6f6769636d61726b7366696e6473706c616e656d6963726f
6d65657473776865656c637261636b647261776e706c6174656570736f6e6b65
7272796972617169747261696c647265737374617374656672756974746f7765
72636f636b73616c7068616c696e6461636f6163686372617a79776f7273746d
6f766573736861727062616b657262616e6473706f727473706561726c68696e
6469746f6b696f64616e736b6565737469736871697073756f6d69736f627265
6465736465656e747265746f646f73707565646561c3b16f73657374c3a17469
656e6568617374616f74726f737061727465646f6e64656e7565766f68616365
72666f726d616d69736d6f6d656a6f726d756e646f617175c3ad64c3ad617373
c3b36c6f61797564616665636861746f64617374616e746f6d656e6f73646174
6f736f74726173736974696f6d7563686f61686f72616c756761726d61796f72
6573746f73686f72617374656e6572616e746573666f746f7365737461737061
c3ad736e7565766173616c7564666f726f736d6564696f717569656e6d657365
73706f6465726368696c65736572c3a1766563657364656369726a6f73c3a965
7374617276656e7461677275706f686563686f656c6c6f7374656e676f616d69
676f636f7361736e6976656c67656e74656d69736d6161697265736a756c696f
74656d617368616369616661766f726a756e696f6c6962726570756e746f6275
656e6f6175746f72616272696c6275656e61746578746f6d61727a6f73616265
726c697374616c7565676f63c3b36d6f656e65726f6a7565676f706572c3ba68
616265726573746f796e756e63616d756a657276616c6f7266756572616c6962
726f6775737461696775616c766f746f736361736f736775c3ad61707565646f
736f6d6f73617669736f7573746564646562656e6e6f63686562757363616661
6c74616575726f737365726965646963686f637572736f636c61766563617361
736c65c3b36e706c617a6f6c6172676f6f62726173766973746161706f796f6a
756e746f7472617461766973746f637265617263616d706f68656d6f7363696e
636f636172676f7069736f736f7264656e686163656ec3a1726561646973636f
706564726f63657263617075656461706170656c6d656e6f72c3ba74696c636c
61726f6a6f72676563616c6c65706f6e657274617264656e616469656d617263
617369677565656c6c61737369676c6f636f6368656d6f746f736d6164726563
6c617365726573746f6e69c3b16f7175656461706173617262616e636f68696a
6f737669616a657061626c6fc3a97374657669656e657265696e6f64656a6172
666f6e646f63616e616c6e6f7274656c657472616361757361746f6d61726d61
6e6f736c756e65736175746f7376696c6c6176656e646f70657361727469706f
7374656e67616d6172636f6c6c6576617061647265756e69646f76616d6f737a
6f6e6173616d626f7362616e64616d61726961616275736f6d75636861737562
697272696f6a617669766972677261646f6368696361616c6cc3ad6a6f76656e
6469636861657374616e74616c657373616c69727375656c6f7065736f736669
6e65736c6c616d61627573636fc3a97374616c6c6567616e6567726f706c617a
6168756d6f7270616761726a756e7461646f626c6569736c6173626f6c736162
61c3b16f6861626c616c75636861c381726561646963656e6a756761726e6f74
617376616c6c65616c6cc3a16361726761646f6c6f726162616a6f657374c3a9
677573746f6d656e74656d6172696f6669726d61636f73746f6669636861706c
617461686f67617261727465736c65796573617175656c6d7573656f62617365
73706f636f736d697461646369656c6f636869636f6d6965646f67616e617273
616e746f65746170616465626573706c61796172656465737369657465636f72
7465636f7265616475646173646573656f7669656a6f64657365616167756173
266e6273703b666c6f61743a2533612532667c7c205b5d3b26636f70793b3c2f
6469763e686569676874626f726465727461726765743c7370616e3e3c746162
6c6576616c69676e3c696e707574616374696f6e6d6574686f643c686561643e
3c6c6162656c6e6f777261706873706163657673706163653c2f696d673e3c62
6f64793e3c6e6f62723e6f6e626c75723c68746d6c3e7573656d6170636f6f72
64736f6e6c6f61643c656d626564736f757263653c2f7375703e6c656e677468
747970656f663c2f6e61763e7374726f6e6776416c69676e3c74626f64793c63
6f64653e3c2f7072653e3c2f6d61703e3c2f6f3a703e6c61796f75743c6c696e
6b3e3c2f64656c3e3c6974656d3e3c2f636f6c3e3c666f726d3e746f67676c65
3c666f6e743e3c2f6269673e73726373657468696464656e737472696e673c67
7569643e6865616465726f6e426c757273747265616d73745f75726c6f6e4c6f
61646f66667365746974656d69643c2f696e733e726f6c6c75703c7374796c65
3c636974653e77696e646f776a51756572796a6f626d6170636f6f6b69656573
6361706573637265656e706172656e74676f6f676c6572616e646f6d6e726575
6d71736372697074736561726368696d616765737375626d6974636f6e666967
7075626164736375725f61646d61726b657264727570616c6166735f686c7265
6e646572657874656e646d6d6d5f666f706172616d7373746174757373756273
7472726573756c7466616465496e617070656e646c61746c6e67636f6e636174
72656d6f76656f626a6563746c6179657273726567457870646f6d61696e6c61
744c6e676469616c6f6766696c7465727363726f6c6c5f75616363746f61735f
63616f7074696f6e6368616e676570726566697873656c656374616e63686f72
6c6f6164657275736553534c616d5f6164736666784164736672616d65736765
74446179627574746f6e6c6f616465646156436861745f6a7365767463686172
417476616c756573726573697a65674576656e7466616465546f6d794c656674
637a5f73747274686544697672656c6f61647769636b657473656c626f786c69
6e6b546f737072696e676e616d6545517573657249446d7948746d6c72656769
6f6e736c69646572696e707574736576656e74736f70656e65726d69785f6964
6a735f75726c7461624964736d616b6541646e756d626572626f756e64736261
6e6e65726e6577646976776964676574696d675372636c696e65617270656f70
6c6573686f756c646f6e6c696e65756e697465646865616c746873797374656d
706f6c6963796265666f726577697468696e63656e7465727269676874737374
61746573706c6561736574726176656c7075626c6963686f74656c7373706f72
7473636f756e74797363686f6f6c647572696e676f6666696365706f73746564
72657669657763616e61646161726f756e646d656d6265727265616c6c796163
63657373726174696e676c6974746c657265706f727470726963657366616d69
6c7962657474657261756775737464657369676e636f75727365706572736f6e
666f72756d737468696e677372657475726e7365636f6e64616c776179736573
746174657374726565746c6f6e646f6e6d6f766965736973737565736d61726b
657463616c6c65646372656469746d616b696e67667269656e64746872656164
62726f77736567617264656e6672616e63656f7468657273686176696e676d6f
62696c656d6f6e7468736569746865726f6666657273617574686f7266757475
726573696e676c656d656d6f72796265636f6d65706572696f646575726f7065
70686f746f736c6973746564637265617465736572696573636f6d6d6f6e6672
6964617974686f756768726563656e7469736c616e64616d6f756e74656e6f75
676873657276657267726f7570736d6f6e6461796166726963616c6174657374
73746f7265736672656e6368736f6369616c73756e6461796163726f73736e65
6564656463656e7472657265636f7264686967686572706f696e7473726f6265
72746d6f64656c73726174686572626561757479666f726d6174656666656374
73656c6c657273696d706c65656e6572677967656f72676567726f777468616e
796f6e656c6576656c7374616b696e676f72646572736e6f74696365616c6d6f
73746d617474657279656c6c6f776d6174757265726561736f6e7468616e6b73
73616665747974686f6d6173696e636f6d656d657869636f616d617a6f6e6c69
76696e67656e73757265646972656374736b696c6c73747279696e676c696b65
6c797765696768746f776e6572736669677572656368757263686c6f6e676572
76616c6c657963686f6f73657570646174656c7972696373696e73696465616c
6c6f7773636f6d696e6761647669636570617950616c697473656c66666f6c6c
6f7773696d706c79636c69656e74756e69717565646567726565616374697665
616e7377657263686f6963656765726d616e77616e74656473696c766572656e
74697265676c6f62616c6e6174757265706c61796572736561736f6e63686172
676563616d657261636173696e6f626f73746f6e746f70696373766964656f73
646f75626c65696d706163746c6172676572626568696e64696e6469616e6578
636570746d617274696e73616d706c65756e6c65737370726574747970686f6e
6573737570706c7967726f756e646e6f726d616c6c6574746572656e67696e65
6a657273657961707065617275736566756c616e6e75616c6f75747075747265
6e74616c677569646573617274697374646576696365766f6c756d65636f7570
6c656167656e6379656173696c796d6964646c656566666f72746a6f696e6564
666f726d6572656469746f7261636365707469737261656c6361726565726d6f
746865726b616e7361736d617374657266656d616c65686967686c79776f726b
6564706c6163657372657461696c6d7973656c66626563616d656d757365756d
616e696d616c6368616e6365736563746f72706f6c6963656275646765746769
76696e67736179696e677365637572656272616e6473696e6365737472656475
6365626f74746f6d73747564696f656e61626c656d6f76696e67637573746f6d
61637475616c626f6172647361776172647373756d6d6572706c616365646f72
65676f6e63616e6365726d6f6465726e7475726e656473656e696f726265796f
6e6464656d616e646572726f72736369746965736d6f6d656e74736f72746564
7468656f7279727573736961706c61796564737461746564646566696e656176
656e75656661746865727375727665796d696e7574656c6f6f6b656473656e61
74656669656c64737075624d656464616b6f746164726976657268656e746169
76697375616c6578706563747265736f727464616d616765726561646572626f
75676874666163746f726c656167756577696e74657272656d61696e70617373
6564636c6f736564686177616969616c61736b61636c61696d73697373756564
6772617469736661737465727365727665647369676e65646f627461696e616e
647265776272656173746e6561726c796e6174696f6e627579696e6764616c6c
61736a6f736570686d616e6e6572646174696e6764657461696c746f77617264
64616e69656c61757374696e63687269737461747461636b6d6f64756c656167
656e747372656d6f746570726f6669746d656469756d6167726565646c656164
6572666f726365646661696c656471756f7465736361757365646d6f74696f6e
636f6c756d6e6d616e616765666f7265737468617070656e7469746c65737061
706572736d6172696e656173736973746f72616e676565617369657270726f70
65726261736b6574706f636b6574726570616972676f6c64656e68616e646c65
6d616e75616c7765656b6c79656e64696e6763616d707573696e63686573666f
726365737369676e616c706c616e74736272617a696c6c6f776573746d696c6c
6572737769746368666f72676f7461737365747373657875616c7461796c6f72
706f7374616c657874656e74646f63746f72726163696e676166666563747377
6564656e7368617265647379646e6579736565696e6777696c736f6e7475726b
6579726169736564766f796575726c697374656e736f756e6473636f70696573
7669657765646e657661646165647761726473686f7765646275726561757371
75617265636f6666656576696167726164656e7665726f70656e6564636f7665
727366696c6c6564766973696f6e6a6577697368616464696e6766616d6f7573
6164756c747373686172657361707065616c706f737465726d656e74616c6469
736e6579666c696768746a756e696f726b696c6c6564686f7761726461737375
6d6567616d696e677069656365737375697465737370656563687461626c6573
68656c70656466696e697368696e6a75727964696e696e676f78666f72647365
656d656474616977616e73707265616463686f73656e736368656d65736f6363
65727072696e63656361757365736c696e6b6564636f6d6963737065726d6974
646563696465626568616c66646f6c6c617262726f6b656e7361666172696f72
6967696e6772656563656a6f7264616e637261667473657870657274666f7267
6574736869727473627269646765686f757365736c6561766573746573746564
737069726974636f6c6f72736c6f67676564737472657373617661746172666c
6f776572686f6c64656d6775696e656173657863616d73697374657276697267
696e666f726d65646e6f727761796272616e6368737461727473617474656e64
677569746172626567696e737265676172646465626174656d6f73746c796578
69737473636f726e657270756572746f6e617469766563656e737573696e6465
6564706f7274616c6368656174736c696d697473756e61626c65666f726d616c
706f6c616e64776f6e64657274656e6e697372656c6965667365637265746578
70616e64737461746963736368656d61707261676d616c656761637964656c65
7465636f6d656479736861646f776c61756e63687369676e7570626168617361
62726173696c67616c65676f6d6167796172706f6c736b69737270736b69d8b1
d8afd988e4b8ade69687e4bfa1e681afe4b8ade59bbde68891e4bbace4b880e4
b8aae585ace58fb8e7aea1e79086e8aebae59d9be58fafe4bba5e69c8de58aa1
e697b6e997b4e4b8aae4babae4baa7e59381e887aae5b7b1e4bc81e4b89ae69f
a5e79c8be5b7a5e4bd9ce88194e7b3bbe6b2a1e69c89e7bd91e7ab99e68980e6
9c89e8af84e8aebae4b8ade5bf83e69687e7aba0e794a8e688b7e9a696e9a1b5
e4bd9ce88085e68a80e69cafe997aee9a298e79bb8e585b3e4b88be8bdbde690
9ce7b4a2e4bdbfe794a8e8bdafe4bbb6e59ca8e7babfe4b8bbe9a298e8b584e6
9699e8a786e9a291e59b9ee5a48de6b3a8e5868ce7bd91e7bb9ce694b6e8978f
e58685e5aeb9e68ea8e88d90e5b882e59cbae6b688e681afe7a9bae997b4e58f
91e5b883e4bb80e4b988e5a5bde58f8be7949fe6b4bbe59bbee78987e58f91e5
b195e5a682e69e9ce6898be69cbae696b0e997bbe69c80e696b0e696b9e5bc8f
e58c97e4baace68f90e4be9be585b3e4ba8ee69bb4e5a49ae8bf99e4b8aae7b3
bbe7bb9fe79fa5e98193e6b8b8e6888fe5b9bfe5918ae585b6e4bb96e58f91e8
a1a8e5ae89e585a8e7acace4b880e4bc9ae59198e8bf9be8a18ce782b9e587bb
e78988e69d83e794b5e5ad90e4b896e7958ce8aebee8aea1e5858de8b4b9e695
99e882b2e58aa0e585a5e6b4bbe58aa8e4bb96e4bbace59586e59381e58d9ae5
aea2e78eb0e59ca8e4b88ae6b5b7e5a682e4bd95e5b7b2e7bb8fe79599e8a880
e8afa6e7bb86e7a4bee58cbae799bbe5bd95e69cace7ab99e99c80e8a681e4bb
b7e6a0bce694afe68c81e59bbde99985e993bee68ea5e59bbde5aeb6e5bbbae8
aebee69c8be58f8be99885e8afbbe6b395e5be8be4bd8de7bdaee7bb8fe6b58e
e98089e68ba9e8bf99e6a0b7e5bd93e5898de58886e7b1bbe68e92e8a18ce59b
a0e4b8bae4baa4e69893e69c80e5908ee99fb3e4b990e4b88de883bde9809ae8
bf87e8a18ce4b89ae7a791e68a80e58fafe883bde8aebee5a487e59088e4bd9c
e5a4a7e5aeb6e7a4bee4bc9ae7a094e7a9b6e4b893e4b89ae585a8e983a8e9a1
b9e79baee8bf99e9878ce8bf98e698afe5bc80e5a78be68385e586b5e794b5e8
8491e69687e4bbb6e59381e7898ce5b8aee58aa9e69687e58c96e8b584e6ba90
e5a4a7e5ada6e5ada6e4b9a0e59cb0e59d80e6b58fe8a788e68a95e8b584e5b7
a5e7a88be8a681e6b182e6808ee4b988e697b6e58099e58a9fe883bde4b8bbe8
a681e79baee5898de8b584e8aeafe59f8ee5b882e696b9e6b395e794b5e5bdb1
e68b9be88198e5a3b0e6988ee4bbbbe4bd95e581a5e5bab7e695b0e68daee7be
8ee59bbde6b1bde8bda6e4bb8be7bb8de4bd86e698afe4baa4e6b581e7949fe4
baa7e68980e4bba5e794b5e8af9de698bee7a4bae4b880e4ba9be58d95e4bd8d
e4babae59198e58886e69e90e59cb0e59bbee69785e6b8b8e5b7a5e585b7e5ad
a6e7949fe7b3bbe58897e7bd91e58f8be5b896e5ad90e5af86e7a081e9a291e9
8193e68ea7e588b6e59cb0e58cbae59fbae69cace585a8e59bbde7bd91e4b88a
e9878de8a681e7acace4ba8ce5969ce6aca2e8bf9be585a5e58f8be68385e8bf
99e4ba9be88083e8af95e58f91e78eb0e59fb9e8aeade4bba5e4b88ae694bfe5
ba9ce68890e4b8bae78eafe5a283e9a699e6b8afe5908ce697b6e5a8b1e4b990
e58f91e98081e4b880e5ae9ae5bc80e58f91e4bd9ce59381e6a087e58786e6ac
a2e8bf8ee8a7a3e586b3e59cb0e696b9e4b880e4b88be4bba5e58f8ae8b4a3e4
bbbbe68896e88085e5aea2e688b7e4bba3e8a1a8e7a7afe58886e5a5b3e4baba
e695b0e7a081e99480e594aee587bae78eb0e7a6bbe7babfe5ba94e794a8e588
97e8a1a8e4b88de5908ce7bc96e8be91e7bb9fe8aea1e69fa5e8afa2e4b88de8
a681e69c89e585b3e69cbae69e84e5be88e5a49ae692ade694bee7bb84e7bb87
e694bfe7ad96e79bb4e68ea5e883bde58a9be69da5e6ba90e69982e99693e79c
8be588b0e783ade997a8e585b3e994aee4b893e58cbae99d9ee5b8b8e88bb1e8
afade799bee5baa6e5b88ce69c9be7be8ee5a5b3e6af94e8be83e79fa5e8af86
e8a784e5ae9ae5bbbae8aeaee983a8e997a8e6848fe8a781e7b2bee5bda9e697
a5e69cace68f90e9ab98e58f91e8a880e696b9e99da2e59fbae98791e5a484e7
9086e69d83e99990e5bdb1e78987e993b6e8a18ce8bf98e69c89e58886e4baab
e789a9e59381e7bb8fe890a5e6b7bbe58aa0e4b893e5aeb6e8bf99e7a78de8af
9de9a298e8b5b7e69da5e4b89ae58aa1e585ace5918ae8aeb0e5bd95e7ae80e4
bb8be8b4a8e9878fe794b7e4babae5bdb1e5938de5bc95e794a8e68aa5e5918a
e983a8e58886e5bfabe9809fe592a8e8afa2e697b6e5b09ae6b3a8e6848fe794
b3e8afb7e5ada6e6a0a1e5ba94e8afa5e58e86e58fb2e58faae698afe8bf94e5
9b9ee8b4ade4b9b0e5908de7a7b0e4b8bae4ba86e68890e58a9fe8afb4e6988e
e4be9be5ba94e5ada9e5ad90e4b893e9a298e7a88be5ba8fe4b880e888ace69c
83e593a1e58faae69c89e585b6e5ae83e4bf9de68aa4e8808ce4b894e4bb8ae5
a4a9e7aa97e58fa3e58aa8e68081e78ab6e68081e789b9e588abe8aea4e4b8ba
e5bf85e9a1bbe69bb4e696b0e5b08fe8afb4e68891e58091e4bd9ce4b8bae5aa
92e4bd93e58c85e68bace982a3e4b988e4b880e6a0b7e59bbde58685e698afe5
90a6e6a0b9e68daee794b5e8a786e5ada6e999a2e585b7e69c89e8bf87e7a88b
e794b1e4ba8ee4babae6898de587bae69da5e4b88de8bf87e6ada3e59ca8e698
8ee6989fe69585e4ba8be585b3e7b3bbe6a087e9a298e59586e58aa1e8be93e5
85a5e4b880e79bb4e59fbae7a180e69599e5ada6e4ba86e8a7a3e5bbbae7ad91
e7bb93e69e9ce585a8e79083e9809ae79fa5e8aea1e58892e5afb9e4ba8ee889
bae69cafe79bb8e5868ce58f91e7949fe79c9fe79a84e5bbbae7ab8be7ad89e7
baa7e7b1bbe59e8be7bb8fe9aa8ce5ae9ee78eb0e588b6e4bd9ce69da5e887aa
e6a087e7adbee4bba5e4b88be58e9fe5889be697a0e6b395e585b6e4b8ade580
8be4babae4b880e58887e68c87e58d97e585b3e997ade99b86e59ba2e7acace4
b889e585b3e6b3a8e59ba0e6ada4e785a7e78987e6b7b1e59cb3e59586e4b89a
e5b9bfe5b79ee697a5e69c9fe9ab98e7baa7e69c80e8bf91e7bbbce59088e8a1
a8e7a4bae4b893e8be91e8a18ce4b8bae4baa4e9809ae8af84e4bbb7e8a789e5
be97e7b2bee58d8ee5aeb6e5baade5ae8ce68890e6849fe8a789e5ae89e8a385
e5be97e588b0e982aee4bbb6e588b6e5baa6e9a39fe59381e899bde784b6e8bd
ace8bdbde68aa5e4bbb7e8aeb0e88085e696b9e6a188e8a18ce694bfe4babae6
b091e794a8e59381e4b89ce8a5bfe68f90e587bae98592e5ba97e784b6e5908e
e4bb98e6acbee783ade782b9e4bba5e5898de5ae8ce585a8e58f91e5b896e8ae
bee7bdaee9a286e5afbce5b7a5e4b89ae58cbbe999a2e79c8be79c8be7bb8fe5
85b8e58e9fe59ba0e5b9b3e58fb0e59084e7a78de5a29ee58aa0e69d90e69699
e696b0e5a29ee4b98be5908ee8818ce4b89ae69588e69e9ce4bb8ae5b9b4e8ae
bae69687e68891e59bbde5918ae8af89e78988e4b8bbe4bfaee694b9e58f82e4
b88ee68993e58db0e5bfabe4b990e69cbae6a2b0e8a782e782b9e5ad98e59ca8
e7b2bee7a59ee88eb7e5be97e588a9e794a8e7bba7e7bbade4bda0e4bbace8bf
99e4b988e6a8a1e5bc8fe8afade8a880e883bde5a49fe99b85e8998ee6938de4
bd9ce9a38ee6a0bce4b880e8b5b7e7a791e5ada6e4bd93e882b2e79fade4bfa1
e69da1e4bbb6e6b2bbe79697e8bf90e58aa8e4baa7e4b89ae4bc9ae8aeaee5af
bce888aae58588e7949fe88194e79b9fe58fafe698afe5958fe9a18ce7bb93e6
9e84e4bd9ce794a8e8b083e69fa5e8b387e69699e887aae58aa8e8b49fe8b4a3
e5869ce4b89ae8aebfe997aee5ae9ee696bde68ea5e58f97e8aea8e8aebae982
a3e4b8aae58f8de9a688e58aa0e5bcbae5a5b3e680a7e88c83e59bb4e69c8de5
8b99e4bc91e997b2e4bb8ae697a5e5aea2e69c8de8a780e79c8be58f82e58aa0
e79a84e8af9de4b880e782b9e4bf9de8af81e59bbee4b9a6e69c89e69588e6b5
8be8af95e7a7bbe58aa8e6898de883bde586b3e5ae9ae882a1e7a5a8e4b88de6
96ade99c80e6b182e4b88de5be97e58a9ee6b395e4b98be997b4e98787e794a8
e890a5e99480e68a95e8af89e79baee6a087e788b1e68385e69184e5bdb1e69c
89e4ba9be8a487e8a3bde69687e5ada6e69cbae4bc9ae695b0e5ad97e8a385e4
bfaee8b4ade789a9e5869ce69d91e585a8e99da2e7b2bee59381e585b6e5ae9e
e4ba8be68385e6b0b4e5b9b3e68f90e7a4bae4b88ae5b882e8b0a2e8b0a2e699
aee9809ae69599e5b888e4b88ae4bca0e7b1bbe588abe6ad8ce69bb2e68ba5e6
9c89e5889be696b0e9858de4bbb6e58faae8a681e697b6e4bba3e8b387e8a88a
e8bebee588b0e4babae7949fe8aea2e99885e88081e5b888e5b195e7a4bae5bf
83e79086e8b4b4e5ad90e7b6b2e7ab99e4b8bbe9a18ce887aae784b6e7baa7e5
88abe7ae80e58d95e694b9e99da9e982a3e4ba9be69da5e8afb4e68993e5bc80
e4bba3e7a081e588a0e999a4e8af81e588b8e88a82e79baee9878de782b9e6ac
a1e695b8e5a49ae5b091e8a784e58892e8b584e98791e689bee588b0e4bba5e5
908ee5a4a7e585a8e4b8bbe9a1b5e69c80e4bdb3e59b9ee7ad94e5a4a9e4b88b
e4bf9de99a9ce78eb0e4bba3e6a380e69fa5e68a95e7a5a8e5b08fe697b6e6b2
92e69c89e6ada3e5b8b8e7949ae887b3e4bba3e79086e79baee5bd95e585ace5
bc80e5a48de588b6e98791e89e8de5b9b8e7a68fe78988e69cace5bda2e68890
e58786e5a487e8a18ce68385e59b9ee588b0e6809de683b3e6808ee6a0b7e58d
8fe8aeaee8aea4e8af81e69c80e5a5bde4baa7e7949fe68c89e785a7e69c8de8
a385e5b9bfe4b89ce58aa8e6bcabe98787e8b4ade696b0e6898be7bb84e59bbe
e99da2e69dbfe58f82e88083e694bfe6b2bbe5aeb9e69893e5a4a9e59cb0e58a
aae58a9be4babae4bbace58d87e7baa7e9809fe5baa6e4babae789a9e8b083e6
95b4e6b581e8a18ce980a0e68890e69687e5ad97e99fa9e59bbde8b4b8e69893
e5bc80e5b195e79bb8e9979ce8a1a8e78eb0e5bdb1e8a786e5a682e6ada4e7be
8ee5aeb9e5a4a7e5b08fe68aa5e98193e69da1e6acbee5bf83e68385e8aeb8e5
a49ae6b395e8a784e5aeb6e5b185e4b9a6e5ba97e8bf9ee68ea5e7ab8be58db3
e4b8bee68aa5e68a80e5b7a7e5a5a5e8bf90e799bbe585a5e4bba5e69da5e790
86e8aebae4ba8be4bbb6e887aae794b1e4b8ade58d8ee58a9ee585ace5a688e5
a688e79c9fe6ada3e4b88de99499e585a8e69687e59088e5908ce4bbb7e580bc
e588abe4babae79b91e79da3e585b7e4bd93e4b896e7baaae59ba2e9989fe588
9be4b89ae689bfe68b85e5a29ee995bfe69c89e4babae4bf9de68c81e59586e5
aeb6e7bbb4e4bfaee58fb0e6b9bee5b7a6e58fb3e882a1e4bbbde7ad94e6a188
e5ae9ee99985e794b5e4bfa1e7bb8fe79086e7949fe591bde5aea3e4bca0e4bb
bbe58aa1e6ada3e5bc8fe789b9e889b2e4b88be69da5e58d8fe4bc9ae58faae8
83bde5bd93e784b6e9878de696b0e585a7e5aeb9e68c87e5afbce8bf90e8a18c
e697a5e5bf97e8b3a3e5aeb6e8b685e8bf87e59c9fe59cb0e6b599e6b19fe694
afe4bb98e68ea8e587bae7ab99e995bfe69dade5b79ee689a7e8a18ce588b6e9
80a0e4b98be4b880e68ea8e5b9bfe78eb0e59cbae68f8fe8bfb0e58f98e58c96
e4bca0e7bb9fe6ad8ce6898be4bf9de999a9e8afbee7a88be58cbbe79697e7bb
8fe8bf87e8bf87e58ebbe4b98be5898de694b6e585a5e5b9b4e5baa6e69d82e5
bf97e7be8ee4b8bde69c80e9ab98e799bbe99986e69caae69da5e58aa0e5b7a5
e5858de8b4a3e69599e7a88be78988e59d97e8baabe4bd93e9878de5ba86e587
bae594aee68890e69cace5bda2e5bc8fe59c9fe8b186e587bae583b9e4b89ce6
96b9e982aee7aeb1e58d97e4baace6b182e8818ce58f96e5be97e8818ce4bd8d
e79bb8e4bfa1e9a1b5e99da2e58886e9929fe7bd91e9a1b5e7a1aee5ae9ae59b
bee4be8be7bd91e59d80e7a7afe69e81e99499e8afafe79baee79a84e5ae9de8
b49de69cbae585b3e9a38ee999a9e68e88e69d83e79785e6af92e5aea0e789a9
e999a4e4ba86e8a995e8ab96e796bee79785e58f8ae697b6e6b182e8b4ade7ab
99e782b9e584bfe7aba5e6af8fe5a4a9e4b8ade5a4aee8aea4e8af86e6af8fe4
b8aae5a4a9e6b4a5e5ad97e4bd93e58fb0e781a3e7bbb4e68aa4e69cace9a1b5
e4b8aae680a7e5ae98e696b9e5b8b8e8a781e79bb8e69cbae68898e795a5e5ba
94e5bd93e5be8be5b888e696b9e4bebfe6a0a1e59bade882a1e5b882e688bfe5
b18be6a08fe79baee59198e5b7a5e5afbce887b4e7aa81e784b6e98193e585b7
e69cace7bd91e7bb93e59088e6a1a3e6a188e58ab3e58aa8e58fa6e5a496e7be
8ee58583e5bc95e8b5b7e694b9e58f98e7acace59b9be4bc9ae8aea1e8aaaae6
988ee99a90e7a781e5ae9de5ae9de8a784e88c83e6b688e8b4b9e585b1e5908c
e5bf98e8aeb0e4bd93e7b3bbe5b8a6e69da5e5908de5ad97e799bce8a1a8e5bc
80e694bee58aa0e79b9fe58f97e588b0e4ba8ce6898be5a4a7e9878fe68890e4
babae695b0e9878fe585b1e4baabe58cbae59f9fe5a5b3e5ada9e58e9fe58899
e68980e59ca8e7bb93e69d9fe9809ae4bfa1e8b685e7baa7e9858de7bdaee5bd
93e697b6e4bc98e7a780e680a7e6849fe688bfe4baa7e9818ae688b2e587bae5
8fa3e68f90e4baa4e5b0b1e4b89ae4bf9de581a5e7a88be5baa6e58f82e695b0
e4ba8be4b89ae695b4e4b8aae5b1b1e4b89ce68385e6849fe789b9e6ae8ae588
86e9a19ee6909ce5b08be5b19ee4ba8ee997a8e688b7e8b4a2e58aa1e5a3b0e9
9fb3e58f8ae585b6e8b4a2e7bb8fe59d9ae68c81e5b9b2e983a8e68890e7ab8b
e588a9e79b8ae88083e89991e68890e983bde58c85e8a385e794a8e688b6e6af
94e8b59be69687e6988ee68b9be59586e5ae8ce695b4e79c9fe698afe79cbce7
9d9be4bc99e4bcb4e5a881e69c9be9a286e59f9fe58dabe7949fe4bc98e683a0
e8ab96e5a387e585ace585b1e889afe5a5bde58585e58886e7aca6e59088e999
84e4bbb6e789b9e782b9e4b88de58fafe88bb1e69687e8b584e4baa7e6a0b9e6
9cace6988ee698bee5af86e7a2bce585ace4bc97e6b091e6978fe69bb4e58aa0
e4baabe58f97e5908ce5ada6e590afe58aa8e98082e59088e58e9fe69da5e997
aee7ad94e69cace69687e7be8ee9a39fe7bbbfe889b2e7a8b3e5ae9ae7bb88e4
ba8ee7949fe789a9e4be9be6b182e6909ce78b90e58a9be9878fe4b8a5e9878d
e6b0b8e8bf9ce58699e79c9fe69c89e99990e7ab9ee4ba89e5afb9e8b1a1e8b4
b9e794a8e4b88de5a5bde7bb9de5afb9e58d81e58886e4bf83e8bf9be782b9e8
af84e5bdb1e99fb3e4bc98e58abfe4b88de5b091e6aca3e8b58fe5b9b6e4b894
e69c89e782b9e696b9e59091e585a8e696b0e4bfa1e794a8e8aebee696bde5bd
a2e8b1a1e8b584e6a0bce7aa81e7a0b4e99a8fe79d80e9878de5a4a7e4ba8ee6
98afe6af95e4b89ae699bae883bde58c96e5b7a5e5ae8ce7be8ee59586e59f8e
e7bb9fe4b880e587bae78988e68993e980a0e794a2e59381e6a682e586b5e794
a8e4ba8ee4bf9de79599e59ba0e7b4a0e4b8ade59c8be5ad98e582a8e8b4b4e5
9bbee69c80e6849be995bfe69c9fe58fa3e4bbb7e79086e8b4a2e59fbae59cb0
e5ae89e68e92e6ada6e6b189e9878ce99da2e5889be5bbbae5a4a9e7a9bae9a6
96e58588e5ae8ce59684e9a9b1e58aa8e4b88be99da2e4b88de5868de8af9ae4
bfa1e6848fe4b989e998b3e58589e88bb1e59bbde6bc82e4baaee5869be4ba8b
e78ea9e5aeb6e7bea4e4bc97e5869ce6b091e58db3e58fafe5908de7a8b1e5ae
b6e585b7e58aa8e794bbe683b3e588b0e6b3a8e6988ee5b08fe5ada6e680a7e8
83bde88083e7a094e7a1ace4bbb6e8a782e79c8be6b885e6a59ae6909ee7ac91
e9a696e9a081e9bb84e98791e98082e794a8e6b19fe88b8fe79c9fe5ae9ee4b8
bbe7aea1e998b6e6aeb5e8a8bbe5868ae7bfbbe8af91e69d83e588a9e5819ae5
a5bde4bcbce4b98ee9809ae8aeafe696bde5b7a5e78b80e6858be4b99fe8aeb8
e78eafe4bf9de59fb9e585bbe6a682e5bfb5e5a4a7e59e8be69cbae7a5a8e790
86e8a7a3e58cbfe5908d6375616e646f656e766961726d616472696462757363
6172696e6963696f7469656d706f706f727175656375656e746165737461646f
70756564656e6a7565676f73636f6e747261657374c3a16e6e6f6d6272657469
656e656e70657266696c6d616e657261616d69676f7363697564616463656e74
726f61756e71756570756564657364656e74726f7072696d657270726563696f
736567c3ba6e6275656e6f73766f6c76657270756e746f7373656d616e616861
62c3ad6161676f73746f6e7565766f73756e69646f736361726c6f7365717569
706f6e69c3b16f736d7563686f73616c67756e61636f7272656f696d6167656e
7061727469726172726962616d6172c3ad61686f6d627265656d706c656f7665
7264616463616d62696f6d7563686173667565726f6e70617361646f6cc3ad6e
65617061726563656e7565766173637572736f7365737461626171756965726f
6c6962726f736375616e746f61636365736f6d696775656c766172696f736375
6174726f7469656e6573677275706f73736572c3a16e6575726f70616d656469
6f736672656e746561636572636164656dc3a1736f6665727461636f63686573
6d6f64656c6f6974616c69616c6574726173616c67c3ba6e636f6d7072616375
616c657365786973746563756572706f7369656e646f7072656e73616c6c6567
61727669616a657364696e65726f6d7572636961706f6472c3a170756573746f
64696172696f707565626c6f7175696572656d616e75656c70726f70696f6372
6973697363696572746f73656775726f6d75657274656675656e746563657272
61726772616e646565666563746f7061727465736d656469646170726f706961
6f6672656365746965727261652d6d61696c766172696173666f726d61736675
7475726f6f626a65746f73656775697272696573676f6e6f726d61736d69736d
6f73c3ba6e69636f63616d696e6f736974696f7372617ac3b36e64656269646f
707275656261746f6c65646f74656ec3ad616a6573c3ba7365737065726f636f
63696e616f726967656e7469656e64616369656e746f63c3a164697a6861626c
6172736572c3ad616c6174696e61667565727a61657374696c6f677565727261
656e74726172c3a97869746f6cc3b370657a6167656e646176c3ad64656f6576
69746172706167696e616d6574726f736a617669657270616472657366c3a163
696c636162657a61c3a17265617373616c696461656e76c3ad6f6a6170c3b36e
616275736f736269656e6573746578746f736c6c6576617270756564616e6675
65727465636f6dc3ba6e636c6173657368756d616e6f74656e69646f62696c62
616f756e69646164657374c3a17365646974617263726561646fd0b4d0bbd18f
d187d182d0bed0bad0b0d0bad0b8d0bbd0b8d18dd182d0bed0b2d181d0b5d0b5
d0b3d0bed0bfd180d0b8d182d0b0d0bad0b5d189d0b5d183d0b6d0b5d09ad0b0
d0bad0b1d0b5d0b7d0b1d18bd0bbd0bed0bdd0b8d092d181d0b5d0bfd0bed0b4
d0add182d0bed182d0bed0bcd187d0b5d0bcd0bdd0b5d182d0bbd0b5d182d180
d0b0d0b7d0bed0bdd0b0d0b3d0b4d0b5d0bcd0bdd0b5d094d0bbd18fd09fd180
d0b8d0bdd0b0d181d0bdd0b8d185d182d0b5d0bcd0bad182d0bed0b3d0bed0b4
d0b2d0bed182d182d0b0d0bcd0a1d0a8d090d0bcd0b0d18fd0a7d182d0bed0b2
d0b0d181d0b2d0b0d0bcd0b5d0bcd183d0a2d0b0d0bad0b4d0b2d0b0d0bdd0b0
d0bcd18dd182d0b8d18dd182d183d092d0b0d0bcd182d0b5d185d0bfd180d0be
d182d183d182d0bdd0b0d0b4d0b4d0bdd18fd092d0bed182d182d180d0b8d0bd
d0b5d0b9d092d0b0d181d0bdd0b8d0bcd181d0b0d0bcd182d0bed182d180d183
d0b1d09ed0bdd0b8d0bcd0b8d180d0bdd0b5d0b5d09ed09ed09ed0bbd0b8d186
d18dd182d0b0d09ed0bdd0b0d0bdd0b5d0bcd0b4d0bed0bcd0bcd0bed0b9d0b4
d0b2d0b5d0bed0bdd0bed181d183d0b4e0a495e0a587e0a4b9e0a588e0a495e0
a580e0a4b8e0a587e0a495e0a4bee0a495e0a58be0a494e0a4b0e0a4aae0a4b0
e0a4a8e0a587e0a48fe0a495e0a495e0a4bfe0a4ade0a580e0a487e0a4b8e0a4
95e0a4b0e0a4a4e0a58be0a4b9e0a58be0a486e0a4aae0a4b9e0a580e0a4afe0
a4b9e0a4afe0a4bee0a4a4e0a495e0a4a5e0a4be6a616772616ee0a486e0a49c
e0a49ce0a58be0a485e0a4ace0a4a6e0a58be0a497e0a488e0a49ce0a4bee0a4
97e0a48fe0a4b9e0a4aee0a487e0a4a8e0a4b5e0a4b9e0a4afe0a587e0a4a5e0
a587e0a4a5e0a580e0a498e0a4b0e0a49ce0a4ace0a4a6e0a580e0a495e0a488
e0a49ce0a580e0a4b5e0a587e0a4a8e0a488e0a4a8e0a48fe0a4b9e0a4b0e0a4
89e0a4b8e0a4aee0a587e0a495e0a4aee0a4b5e0a58be0a4b2e0a587e0a4b8e0
a4ace0a4aee0a488e0a4a6e0a587e0a493e0a4b0e0a486e0a4aee0a4ace0a4b8
e0a4ade0a4b0e0a4ace0a4a8e0a49ae0a4b2e0a4aee0a4a8e0a486e0a497e0a4
b8e0a580e0a4b2e0a580d8b9d984d989d8a5d984d989d987d8b0d8a7d8a2d8ae
d8b1d8b9d8afd8afd8a7d984d989d987d8b0d987d8b5d988d8b1d8bad98ad8b1
d983d8a7d986d988d984d8a7d8a8d98ad986d8b9d8b1d8b6d8b0d984d983d987
d986d8a7d98ad988d985d982d8a7d984d8b9d984d98ad8a7d986d8a7d984d983
d986d8add8aad989d982d8a8d984d988d8add8a9d8a7d8aed8b1d981d982d8b7
d8b9d8a8d8afd8b1d983d986d8a5d8b0d8a7d983d985d8a7d8a7d8add8afd8a5
d984d8a7d981d98ad987d8a8d8b9d8b6d983d98ad981d8a8d8add8abd988d985
d986d988d987d988d8a3d986d8a7d8acd8afd8a7d984d987d8a7d8b3d984d985
d8b9d986d8afd984d98ad8b3d8b9d8a8d8b1d8b5d984d989d985d986d8b0d8a8
d987d8a7d8a3d986d987d985d8abd984d983d986d8aad8a7d984d8a7d8add98a
d8abd985d8b5d8b1d8b4d8b1d8add8add988d984d988d981d98ad8a7d8b0d8a7
d984d983d984d985d8b1d8a9d8a7d986d8aad8a7d984d981d8a3d8a8d988d8ae
d8a7d8b5d8a3d986d8aad8a7d986d987d8a7d984d98ad8b9d8b6d988d988d982
d8afd8a7d8a8d986d8aed98ad8b1d8a8d986d8aad984d983d985d8b4d8a7d8a1
d988d987d98ad8a7d8a8d988d982d8b5d8b5d988d985d8a7d8b1d982d985d8a3
d8add8afd986d8add986d8b9d8afd985d8b1d8a3d98ad8a7d8add8a9d983d8aa
d8a8d8afd988d986d98ad8acd8a8d985d986d987d8aad8add8aad8acd987d8a9
d8b3d986d8a9d98ad8aad985d983d8b1d8a9d8bad8b2d8a9d986d981d8b3d8a8
d98ad8aad984d984d987d984d986d8a7d8aad984d983d982d984d8a8d984d985
d8a7d8b9d986d987d8a3d988d984d8b4d98ad8a1d986d988d8b1d8a3d985d8a7
d981d98ad983d8a8d983d984d8b0d8a7d8aad8b1d8aad8a8d8a8d8a3d986d987
d985d8b3d8a7d986d983d8a8d98ad8b9d981d982d8afd8add8b3d986d984d987
d985d8b4d8b9d8b1d8a3d987d984d8b4d987d8b1d982d8b7d8b1d8b7d984d8a8
3c6469762069643c6120687265663c2f7370616e3e6f6e636c69636b636f6e74
656e743c2f666f6e743e616a61786966793c2f666f726d3e636f6c7370616e3c
7363726970746267636f6c6f723c6f7074696f6e3c2f616262723e3c2f686561
643e3c74626f64793e3c73656c6563746f6e436c69636b3c2f68746d6c3e3c74
69746c653e3c2f626f64793e726f777370616e636861727365746f6e666f6375
733c7461626c653e3c6c6162656c3e3c2f6e6f62723e3c736d616c6c3e3c6966
72616d653c627574746f6e3c7374726f6e673c6f626a656374636865636b6564
3c7374796c653e6f6e6b65797570636c61737369643c2f6c696e6b3e3c746865
61643e6f6e6572726f7273756d6d6172793c2f74696d653e3c6c6567656e643c
2f636f64653e3c2f636974653e7175616c6974796469736d6973737363617974
69643c2f776f72643e3c6865616465723c666f6f746572656e63747970653c2f
6974656d3e3c2f677569643e686561646572736267436f6c6f723c626c696e6b
3e3c74666f6f743e6f6e466f63757370726f66696c65726573756c7473656c65
6d656e743c666974656d3e3c666e6f74653e3c6673746f703e3c66747970653e
5b656e6469665d696e6c696e653b70616464696e676f7665726c6179746f6f6c
626f786578616d706c656f7074696f6e73646973706c6179696e6465784f6672
65706c6163656b6579436f646567657454696d656a6f6264617461636f6e7465
7874616e696d61746573686f776e417274657874626f78666f726d70746b7461
674e616d656d657373616765726573746f72656f415f73686f77666164654f75
7473696465626172674c61744c6e67746865466f726d686973746174736f4153
5f72646c6f61735f726e73636f6e736f6c656c696665726179626d6f6e65326e
73744c696768746578706972657361646474686973736c696465557076657273
696f6e62726f77736572786d6c48747470676574446174657472696767657261
6472697665726f627365727665636f6e6669726d6170704e616d6568656c7044
6976616a61784f626a73727674696d656164644974656d746865666f726d786d
6c6874747077726974656c6e686973746f72796d657472696b61616464726573
735f5f5f676366676d795769647468674d61726b6572676574436c6970656164
73527073706f7374626974746f6f6c7469706172656174787463757272656e74
726571756573746b6579776f726477696467657473706c7567696e7364617461
737472636f6e74726f6c706172656e74736d41585f637430676574596561726d
696e75746573636f756e746572636f6e746163747468726f7567686a616e7561
727970726976616379736572766963656265747765656e626563617573657375
70706f727467656e6572616c776974686f757470726f64756374726576696577
7370726f6772616d696e636c75646570726f7669646564657461696c73737562
6a6563746f63746f626572656e676c697368636f6d70616e79616e6f74686572
70726f636573737765627369746577696e646f77736469676974616c6d656d62
657273616761696e7374636f6c6c65676570726f6a6563747072697661746561
6d6572696361636f6d706172656e6574776f726b736369656e636570726f626c
656d7370656369616c73656374696f6e72656c617465646c696272617279776f
726b696e676c6f6f6b696e6773797374656d736368616e6765736d696c6c696f
6e6c697374696e67636f756e74727967616c6c6572796163636f756e74617274
69636c65636f756e63696c7365766572616c686f77657665727061796d656e74
6a6f75726e616c616c72656164797768657468657270726573656e746765726d
616e79667572746865726d65646963616c636f6d6d656e747772697474656e77
656c636f6d6570657263656e7473696d696c61726d69636861656c7374756465
6e74706f776572656463656e7472616c65646974696f6e726563656976656d65
6574696e676172636869766574686f7567687466696e616e6365706963747572
65666c6f726964616b696e67646f6d736f6369657479766172696f757362656c
6965766567657474696e6773746f72696573667269656e6473736f6d656f6e65
6d6574686f647374756573646179776561746865726566666563747362726974
6973686365727461696e637265617465647363686f6f6c73656e676c616e6477
65737465726e7469636b65747375706461746564706f70756c617269736c616e
64736e61747572616c7265706f72747372656c65617365737461727465647265
6164696e676368696361676f6e6f7468696e6761766572616765757375616c6c
796f7574736964656d616e6167657277726974696e676a6577656c72796c6f63
61746564686f7374696e6772756e6e696e676c65736269616e77696c6c69616d
636861707465726c696d6974656473747564696573696d70726f76656972656c
616e647072696e7465726665646572616c707572706f73657265717569726563
68696e6573656e756d626572737061636b6167656c6963656e73657265636f72
6473646566696e656472656e74616c7372696368617264686f6c696461796c65
6164696e67646576656c6f70666f72776172646162696c697479736f75726365
73616972706f7274666561747572657661726965747972657370656374706163
696669636f766572616c6c67656f726769616d6178696d756d72657475726e73
636f6d6d616e64706572666563746d616368696e657375636365737373656c6c
657273696e7374656164677265617465726f66666572656473746f7261676570
6c6179657273646973656173656166726963616e70617274696573616e67656c
65737370616e697368636f757273657364656661756c7463616d657261736368
61726c65736669746e6573736b69746368656e62656e65666974616c6c6f7765
64616e73776572736675636b696e67737572666163657a65616c616e64776174
636865736c617267657374706c6179696e676368616e67656463617265657273
6361706974616c7072696d6172797275737369616e70726f7465696e6d6f726e
696e67717569636b6c7968656c7066756c636f6d706c6578666f726569676e74
657374696e67726567756c6172636174616c6f6768696d73656c6662726f7567
68746f70696e696f6e636f727265637473657474696e67666c6f776572736d69
6e696d756d636c6173736963776f726b6572736566666f72747363756c747572
6577656464696e67657870726573736368616e6e656c74726166666963636f6e
6e6563746172697a6f6e616a6f686e736f6e76656869636c65616374696f6e73
73706563696573636c69656e74736f7574646f6f72686967686573747365636f
6e647366756e64696e67706572736f6e73666163746f7273666f6c6c6f777369
74616c69616e616e696d616c73726174696e677370726576656e74626f6e6461
67656170706172656c636c617373657363656e74757279746f77617264737365
72696f75737761726e696e6770726f6475636573657373696f6e67726f77696e
67636f76657265646170706c6965646f6e746172696f726561736f6e73646563
696465646d61696c696e67696e697469616c66696374696f6e61707065617273
6d75736963616c73656174746c6570617469656e74696e6469616e61686f7573
746f6e696e7374616c6c6561726c69657262616c6c6f6f6e616e64726f69646b
6f6e74616b74656d697373696f746f6f6c626172746f6f6c6b697467656e6572
6963676f75726d65747072656d69756d66617368696f6e696e76657273657265
6b6c616d616c6f6164696e67706f696e74657270726f74656374636174616cc3
a0646575747363686575726f7065756575736b617261676165696c6765737665
6e736b6165737061c3b1616d656e73616a657573756172696f74726162616a6f
6dc3a97869636f70c3a167696e617369656d70726573697374656d616f637475
627265647572616e746561c3b161646972656d70726573616d6f6d656e746f6e
75657374726f7072696d65726174726176c3a973677261636961736e75657374
726170726f6365736f65737461646f7363616c69646164706572736f6e616ec3
ba6d65726f6163756572646f6dc3ba736963616d69656d62726f6f6665727461
73616c67756e6f737061c3ad736573656a656d706c6f6465726563686f616465
6dc3a1737072697661646f61677265676172656e6c61636573706f7369626c65
686f74656c6573736576696c6c617072696d65726fc3ba6c74696d6f6576656e
746f736172636869766f63756c747572616d756a65726573656e747261646161
6e756e63696f656d626172676f6d65726361646f6772616e6465736573747564
696f6d656a6f7265736665627265726f64697365c3b16f74757269736d6f63c3
b36469676f706f72746164616573706163696f66616d696c6961616e746f6e69
6f7065726d69746567756172646172616c67756e617370726563696f73616c67
7569656e73656e7469646f7669736974617374c3ad74756c6f636f6e6f636572
736567756e646f636f6e73656a6f6672616e6369616d696e75746f7373656775
6e646174656e656d6f7365666563746f736dc3a16c61676173657369c3b36e72
6576697374616772616e616461636f6d70726172696e677265736f67617263c3
ad6161636369c3b36e65637561646f72717569656e6573696e636c75736f6465
626572c3a16d617465726961686f6d627265736d756573747261706f6472c3ad
616d61c3b1616e61c3ba6c74696d61657374616d6f736f66696369616c74616d
6269656e6e696e67c3ba6e73616c75646f73706f64656d6f736d656a6f726172
786d6c6e733a6662786d6c6e733a6f673c2f7461626c653e6974656d70726f70
3c7374726f6e673e746162696e6465783c6920636c6173733c2f6c6162656c3e
72656665727265726974656d747970653c7363726970743e687265666c616e67
786d6c6e733a62786f6e7375626d69743c2f7374796c653e6c616e6775616765
70726f70657274793c2f7469746c653e3c6220636c6173733c2f74626f64793e
3c63656e7465723e73656c65637465643c2f736d616c6c3e6f6e6368616e6765
786d6c3a6c616e6764697361626c65643c6f7074696f6e3e3c2f656d6265643e
3c2f74686561643e3c73656374696f6e3c2f706172616d3e3c61727469636c65
3c6865616465723e3c2f696e7075743e636f64656261736567666c747261636b
6461746574696d656f726967696e616c3c2f61736964653e726561646f6e6c79
6f6e4368616e67653c6c6567656e643e3c73656c6563743e3c2f626c696e6b3e
656e636f64696e673c6d6172717565656f6e726573697a653c2f74666f6f743e
6f7074696f6e6964646174617479706573745f7469746c656175746f73617665
3c2f666974656d3e3c2f666e6f74653e3c2f6673746f703e3c2f66747970653e
3c66636f6c6f723e3c6673636f72653e3c6673746172743e3c666f6f7465723e
6e6f6e756e6974736f6e5375626d69743c6669677572653e7461786f6e6f6d79
7465726d2d75726c646f63756d656e7463616c656e6461726c6f636174696f6e
70726f746f636f6c67614a73486f7374756e657363617065616464436c617373
6d41585f757365647061727365496e746b775f61727261796164644576656e74
706f694172726179726573706f6e73657365745374796c65706f736974696f6e
73657474696e67736368696c6472656e6c6f67676564496e6d79696e64656564
736561726368515365787465726e616c6e6f6465547970656a63456469746f72
7478744461746531666561747572657366616e6379626f786765744d6f6e7468
77696e5072696e74686173436c617373616464536d696c65656c656d656e7473
746f537472696e67616464506172616d636f6c6f72626f786164645f696e6974
7369626c696e6773717565727956617261646450616e656c676574486f757273
68656c70436f6e746d7948656967687467615f76616c75657363726f6c6c546f
666f6e7453697a656c6f61645f636d63697343656e7465726f415f7a6f6e6573
63616c6c6261636b6e65775f6974656d63617465676f727967656f636f646572
6c617a796c6f61646e616961645f6a70686f73746e616d6564697370666c6167
66756e6374696f6e74656d706c61746564726f70646f776e616e63686f724964
706172656e744464706f7374626974736175746f506c61796361726574506f73
73686f7748696e747265717569726573785f73323170303176616c6964617465
706167654e616d656d6f7573656f757476627068726173656d794c61744c6e67
656d626564535746626173655f75726c6c6f61644e657874705f72756e5f6a73
6f6e756e6c6f61646361726f7573656c63757272656e6379696e74657276616c
637572725f75726c6c6f67676564696e686f6d6570616765617070656e64546f
706174686e616d65785f733231703033747261636b696e67637075436c617373
6c616e675f6469726f456c656d656e746e6f64654e616d65706172656e74456c
73656375726974797468697343686172736561726368496e616a61784b696e67
696d675f6c6973746f424d5f535441546974656d7061746873657456616c7565
6b6579707265737363686172436f646569636f6e53697a656164466f6f746572
6772656574696e676c6f63616c697a6562547261636b65646956657273696f6e
734966724e616d657370616e747874326f626a6563744944686f746c6f675f72
696d674672616d656d6567616d656e7570726f647563747372626c466f72756d
70726f6772657373646174655f6e6f77785f7332316c6f676d69675f636c6179
72656769737465726d79736372697074736563746f7273316a77706c61796572
6f666673657449446f42726561737473666f726d646174616d794c61746c6e67
66756c6c6e616d655f736d61727461646c69676874426f786765745374796c65
74797065746578746267496672616d657a666c61675f737a747970794d617079
6378745f636f6e66736d616c6c5069635f526f6f7455726c6152617941707073
6f70656e73746174656e74657255524c266567726176653b266561637574653b
2668656c6c69703b766572746963616c76696577706f7274636865636b626f78
6162736f6c757465656c6c697073697361756469656e6365676c6f7373617279
627573696e6573737365727669636573616d65726963616e736f667477617265
696e7465726e65746e6174696f6e616c646563656d6265727265736561726368
70696374757265736e6f76656d62657270726f76696465647265736572766564
636f6d6d656e74737368697070696e6773747564656e747373686f7070696e67
7265717569726564616476616e63656470726576696f75736665627275617279
637573746f6d6572636f6d7075746572706f737369626c65706572736f6e616c
646f776e6c6f6164636f6d706c65746570726f626c656d737175657374696f6e
70726f7669646573696e647573747279666565646261636b747261696e696e67
737065636966696370726f6772616d73696e746572657374746f676574686572
696e636c75646573696e636c75646564616e616c7973697361727469636c6573
6d6174657269616c72656365697665647374616e646172646575726f7065616e
6275696c64696e67696e6372656173656469726563746f7264657369676e6564
70617373776f72646164646974696f6e616e797468696e676172636869766573
64656c69766572796f6666696369616c64697374726963747468757273646179
73617475726461796c6561726e696e6776697267696e696161637475616c6c79
70726f6a6563747364617461626173656465636973696f6e7265736f75726365
6d6167617a696e65636f6e74696e75657075726368617365776972656c657373
70726f6261626c7961637469766974796361726f6c696e616469726563746c79
707261637469636565636f6e6f6d69636d65737361676573617070726f616368
696e766f6c766564736f6c7574696f6e686172647761726562656e6566697473
6578697374696e6765766964656e6365636c6f7468696e67706c616e6e696e67
737570706c69657370617469656e7473657870656374656463616e616469616e
726563656e746c7972657075626c696365766572796f6e65707572706f736573
6d756c7469706c65636f6e7461696e737265706f72746564706f6c6963696573
6665617475726564636f6e7369646572726567696f6e616c6469766973696f6e
636f6e7472616374636f6e74656e74736f7665727669657770726f706f736564
6c697374696e6773636f6c756d626961646973636f756e746d65646963696e65
796f757273656c6672656d656d626572706879736963616c6d6963686967616e
6d696c69746172796a6170616e6573657374617274696e6772656c6576616e74
636f6c6f7261646f6e6f72746865726e667269656e646c7972656c6561736573
696c6c696e6f6973616c74686f756768706f7369746976656d6f727467616765
61636365707465647472616e736665726d6f756e7461696e617070726f766564
65786368616e67656d6f646966696564736f75746865726e72656c6561736564
7365617263686573617267756d656e747072657373757265636f6e73756d6572
696e666f726d6564636f6e677265737363617061636974796e6574776f726b73
66616d696c696573637269746963616c666f6f7462616c6c6661766f72697465
7465616368696e6770726f64756365647374726174656779686f73706974616c
7468696e6b696e677363686564756c65706f6c697469637364697374616e6365
6167656e63696573736369656e6365736d6561737572657364657461696c6564
6162737472616374696e74656e64656473657061726174656f627461696e6564
706172746e657273696e7465726e616c72657475726e65646d696e6973746572
636f6d7061726564666163696c69747974686f7567687473666f6c6c6f776564
7465616368657273737570706c69656477696c6c69616d73636f766572616765
656d706c6f7965656964656e746966796d61696e7461696e7375626a65637473
6d6f746f726f6c6173636f746c616e646d6172796c616e646f66666572696e67
706f77657266756c656c6563747269636372656174697665736c696768746c79
6372656174696e6770726f76696465727661636174696f6e7072657061726564
6d6973736f7572697061636b6167657361756374696f6e736772617068696373
617070726f76616c68617264636f726561636164656d69636b6579776f726473
636f6d6d6572636565786572636973657661726961626c656f6b6c61686f6d61
757365726e616d656d6f76656d656e74656c696769626c6563756c747572616c
61636375726163796d616a6f7269747970726573656e63656372697465726961
6e65676174697665636f6e6365726e7372657175657374736578616d706c6573
6d656574696e67736265686176696f7263616d706169676e73657175656e6365
6b656e7475636b7976697369746f7273656c656374696f6e7175616e74697479
6d616368696e657373747261696768746368616e67696e676d61746368696e67
6d65726368616e7477686174657665726f7074696f6e616c6261736562616c6c
766963746f7269616f70696e696f6e73696e7374616e63656163636f756e7473
73656374696f6e737061796d656e747368617070656e6564737570706f727473
6461756768746572636f6d62696e6564666573746976616c6163637572617465
72656c6174697665646f6d6573746963657874656e646564636c696e6963616c
696e64696361746570726f706f73616c696d70726f7665646166666563746564
7265636f72646564737472656e67746866696e69736865646f7574646f6f7273
72656c6967696f6e6d696e69737472796372656174696f6e746861696c616e64
61737369676e656472656665727265646f627365727665646c69676874696e67
6c65736269616e73776562736974657376696f6c656e63656570696e696f6e73
636865636b6f7574706f727461626c6568616e646c696e6761726b616e736173
6772616475617465706c6174666f726d76656869636c657376657273696f6e73
627265616b696e67626f6f6b6d61726b61746c616e746963706f72746c616e64
6368656d6963616c686f6c69646179736174746f726e657972656c6174696e67
616e79776865726570726f7065726c797374616e64696e6763686169726d616e
72656c6174696f6e6e65627261736b616578706c6f7265726465736372696265
6572696373736f6e636f6e74726f6c73616e646572736f6e636f6e7461637473
7265636f766572797370656369616c736174746163686564617373656d626c79
6f666669636572736d617272696167656265636f6d696e676469726563746564
776f726b73686f706578706f737572656c6963656e73656473706f7274696e67
70616b697374616e7265766965776564657870656e736573636f6e7374616e74
636865636b696e67636174686f6c69637061747465726e7367616d626c696e67
696e766573746f72636974697a656e737072696e746572736f63637572726564
7072696f72697479616c6c6f77696e677072696e74696e676372696d696e616c
636f6e666c696374636c69636b696e676964656e74697479617070656e646978
6e756d65726f757364656c61776172657375697461626c656f70657261746f72
68756e64726564737761746368696e676772656174657374616c6c69616e6365
77617272616e7479666f726563617374656e7469746c6564706f737369626c79
72656c6961626c656d616c61797369616f72646572696e67737065616b696e67
666c617368696e67656d706c6f79656470726573656e747366696e64696e6773
6c696e676572696561707065617265646d656173757265647370656e64696e67
616368696576656473746174696f6e73657374696d6174656865726974616765
67756964616e63656e6f726d616c6c7964657369676e657270726f66696c6573
6a656e6e6966657261647669736f7279706861726d616379707265676e616e74
6d61727368616c6c76616c7561626c65656d706c6f7965726d616e6167657273
6c617772656e63656d696c6c696f6e7367656e6572617465706f72747567616c
62697274686461796d656d6f7269616c62756c6c6574696e737065616b657273
636f6e7369737473616e74697175657373796d70746f6d73737465726c696e67
756c74696d61746568616d696c746f6e6578636974696e6766616d696c696172
7075727375616e747669736974696e676672616e6b6c696e636f6c756d627573
6368616e6e656c73636f6e636570747373657373696f6e736e696e74656e646f
6169726372616674636f6e747261737477696c646c6966656e6f7465626f6f6b
73636f7474697368656e746972656c79636c65616e696e677265616374696f6e
666c657869626c65656e67696e656572737570706f736564676f7665726e6f72
7265706c61636564696e746572696f72736f6d657768617473706f6e736f7273
73756767657374737374726f6e676c79726963686d6f6e64646973636f766572
61646571756174656576616c75617465636f766572696e6762656c6965766564
74686f6d70736f6e6d6f6e747265616c746f6d6f72726f7774686f7573616e64
65746865726e65746361727279696e6762726f7468657273636f6d6d616e6473
6669676874696e676a6f6e617468616e706c6561737572656472696e6b696e67
6163636964656e746a6f75726e616c737265766973696f6e6f7269656e746564
7465726d696e616c656d70686173697373686f7070657273636f6c6c65676573
6d616e6167696e67646973706c6179736f706572617465646c61756e63686564
6a7564676d656e7473656e74656e63656272696e67696e676d61676e65746963
7265647563696e6765737061c3b16f6c696e766f6c76657362756c6761726961
63616d7062656c6c6465736b746f7073656e746572696e6762656c6965766573
28e7ae80e4bd932928e7b981e9ab94296872766174736b696974616c69616e6f
726f6dc3a26ec48374c3bc726bc3a765d8a7d8b1d8afd98874616d6269c3a96e
6e6f7469636961736d656e73616a6573706572736f6e61736465726563686f73
6e6163696f6e616c736572766963696f636f6e746163746f7573756172696f73
70726f6772616d61676f626965726e6f656d707265736173616e756e63696f73
76616c656e636961636f6c6f6d6269616465737075c3a9736465706f72746573
70726f796563746f70726f647563746f70c3ba626c69636f6e6f736f74726f73
686973746f72696170726573656e74656d696c6c6f6e65736d656469616e7465
70726567756e7461616e746572696f727265637572736f7370726f626c656d61
73616e746961676f6e75657374726f736f70696e69c3b36e696d7072696d6972
6d69656e74726173616dc3a97269636176656e6465646f72736f636965646164
726573706563746f7265616c697a6172726567697374726f70616c6162726173
696e746572c3a973656e746f6e636573657370656369616c6d69656d62726f73
7265616c6964616463c3b372646f62617a617261676f7a6170c3a167696e6173
736f6369616c6573626c6f71756561726765737469c3b36e616c7175696c6572
73697374656d61736369656e63696173636f6d706c65746f7665727369c3b36e
636f6d706c6574616573747564696f7370c3ba626c6963616f626a657469766f
616c6963616e74656275736361646f7263616e7469646164656e747261646173
616363696f6e65736172636869766f737375706572696f726d61796f72c3ad61
616c656d616e696166756e6369c3b36ec3ba6c74696d6f7368616369656e646f
617175656c6c6f736564696369c3b36e6665726e616e646f616d6269656e7465
66616365626f6f6b6e75657374726173636c69656e74657370726f6365736f73
62617374616e746570726573656e74617265706f72746172636f6e677265736f
7075626c69636172636f6d657263696f636f6e747261746f6ac3b376656e6573
646973747269746f74c3a9636e696361636f6e6a756e746f656e657267c3ad61
74726162616a6172617374757269617372656369656e74657574696c697a6172
626f6c6574c3ad6e73616c7661646f72636f72726563746174726162616a6f73
7072696d65726f736e65676f63696f736c69626572746164646574616c6c6573
70616e74616c6c617072c3b378696d6f616c6d6572c3ad61616e696d616c6573
717569c3a96e6573636f72617ac3b36e7365636369c3b36e62757363616e646f
6f7063696f6e65736578746572696f72636f6e636570746f746f646176c3ad61
67616c6572c3ad6165736372696269726d65646963696e616c6963656e636961
636f6e73756c74616173706563746f736372c3ad7469636164c3b36c61726573
6a757374696369616465626572c3a16e706572c3ad6f646f6e65636573697461
6d616e74656e65727065717565c3b16f726563696269646174726962756e616c
74656e657269666563616e6369c3b36e63616e61726961736465736361726761
6469766572736f736d616c6c6f726361726571756965726574c3a9636e69636f
6465626572c3ad6176697669656e646166696e616e7a61736164656c616e7465
66756e63696f6e61636f6e73656a6f73646966c3ad63696c6369756461646573
616e7469677561736176616e7a61646174c3a9726d696e6f756e696461646573
73c3a16e6368657a63616d7061c3b161736f66746f6e69637265766973746173
636f6e7469656e65736563746f7265736d6f6d656e746f73666163756c746164
6372c3a96469746f6469766572736173737570756573746f666163746f726573
736567756e646f737065717565c3b161d0b3d0bed0b4d0b0d0b5d181d0bbd0b8
d0b5d181d182d18cd0b1d18bd0bbd0bed0b1d18bd182d18cd18dd182d0bed0bc
d095d181d0bbd0b8d182d0bed0b3d0bed0bcd0b5d0bdd18fd0b2d181d0b5d185
d18dd182d0bed0b9d0b4d0b0d0b6d0b5d0b1d18bd0bbd0b8d0b3d0bed0b4d183
d0b4d0b5d0bdd18cd18dd182d0bed182d0b1d18bd0bbd0b0d181d0b5d0b1d18f
d0bed0b4d0b8d0bdd181d0b5d0b1d0b5d0bdd0b0d0b4d0bed181d0b0d0b9d182
d184d0bed182d0bed0bdd0b5d0b3d0bed181d0b2d0bed0b8d181d0b2d0bed0b9
d0b8d0b3d180d18bd182d0bed0b6d0b5d0b2d181d0b5d0bcd181d0b2d0bed18e
d0bbd0b8d188d18cd18dd182d0b8d185d0bfd0bed0bad0b0d0b4d0bdd0b5d0b9
d0b4d0bed0bcd0b0d0bcd0b8d180d0b0d0bbd0b8d0b1d0bed182d0b5d0bcd183
d185d0bed182d18fd0b4d0b2d183d185d181d0b5d182d0b8d0bbd18ed0b4d0b8
d0b4d0b5d0bbd0bed0bcd0b8d180d0b5d182d0b5d0b1d18fd181d0b2d0bed0b5
d0b2d0b8d0b4d0b5d187d0b5d0b3d0bed18dd182d0b8d0bcd181d187d0b5d182
d182d0b5d0bcd18bd186d0b5d0bdd18bd181d182d0b0d0bbd0b2d0b5d0b4d18c
d182d0b5d0bcd0b5d0b2d0bed0b4d18bd182d0b5d0b1d0b5d0b2d18bd188d0b5
d0bdd0b0d0bcd0b8d182d0b8d0bfd0b0d182d0bed0bcd183d0bfd180d0b0d0b2
d0bbd0b8d186d0b0d0bed0b4d0bdd0b0d0b3d0bed0b4d18bd0b7d0bdd0b0d18e
d0bcd0bed0b3d183d0b4d180d183d0b3d0b2d181d0b5d0b9d0b8d0b4d0b5d182
d0bad0b8d0bdd0bed0bed0b4d0bdd0bed0b4d0b5d0bbd0b0d0b4d0b5d0bbd0b5
d181d180d0bed0bad0b8d18ed0bdd18fd0b2d0b5d181d18cd095d181d182d18c
d180d0b0d0b7d0b0d0bdd0b0d188d0b8d8a7d984d984d987d8a7d984d8aad98a
d8acd985d98ad8b9d8aed8a7d8b5d8a9d8a7d984d8b0d98ad8b9d984d98ad987
d8acd8afd98ad8afd8a7d984d8a2d986d8a7d984d8b1d8afd8aad8add983d985
d8b5d981d8add8a9d983d8a7d986d8aad8a7d984d984d98ad98ad983d988d986
d8b4d8a8d983d8a9d981d98ad987d8a7d8a8d986d8a7d8aad8add988d8a7d8a1
d8a3d983d8abd8b1d8aed984d8a7d984d8a7d984d8add8a8d8afd984d98ad984
d8afd8b1d988d8b3d8a7d8b6d8bad8b7d8aad983d988d986d987d986d8a7d983
d8b3d8a7d8add8a9d986d8a7d8afd98ad8a7d984d8b7d8a8d8b9d984d98ad983
d8b4d983d8b1d8a7d98ad985d983d986d985d986d987d8a7d8b4d8b1d983d8a9
d8b1d8a6d98ad8b3d986d8b4d98ad8b7d985d8a7d8b0d8a7d8a7d984d981d986
d8b4d8a8d8a7d8a8d8aad8b9d8a8d8b1d8b1d8add985d8a9d983d8a7d981d8a9
d98ad982d988d984d985d8b1d983d8b2d983d984d985d8a9d8a3d8add985d8af
d982d984d8a8d98ad98ad8b9d986d98ad8b5d988d8b1d8a9d8b7d8b1d98ad982
d8b4d8a7d8b1d983d8acd988d8a7d984d8a3d8aed8b1d989d985d8b9d986d8a7
d8a7d8a8d8add8abd8b9d8b1d988d8b6d8a8d8b4d983d984d985d8b3d8acd984
d8a8d986d8a7d986d8aed8a7d984d8afd983d8aad8a7d8a8d983d984d98ad8a9
d8a8d8afd988d986d8a3d98ad8b6d8a7d98ad988d8acd8afd981d8b1d98ad982
d983d8aad8a8d8aad8a3d981d8b6d984d985d8b7d8a8d8aed8a7d983d8abd8b1
d8a8d8a7d8b1d983d8a7d981d8b6d984d8a7d8add984d989d986d981d8b3d987
d8a3d98ad8a7d985d8b9d8b1d8a8d98ad8b1d8afd988d8afd8a3d986d987d8a7
d8afd98ad986d8a7d8a7d984d8a7d986d985d8b9d8b1d8b6d8aad8b9d984d985
d8afd8a7d8aed984d985d985d983d98600000000000000000100010001000100
0200020002000200040004000400040000010203040506070706050403020100
08090a0b0c0d0e0f0f0e0d0c0b0a090810111213141516171716151413121110
18191a1b1c1d1e1f1f1e1d1c1b1a1918ffffffff0000000000000000ffffffff
010000000200000002000000010000000100000003000000ffff000100000001
0000ffff00010000000800080008000800000001000200030004000500060007
68746d6c20342e30317868746d6c20312e303c2f6f7074696f6e3e3c2f736372
6970743e3c6c6920636c6173733c6c696e6b2072656c3c2f7374726f6e673e3c
756c20636c6173733c683520636c6173733c21646f63747970653c2f73656c65
63743e3c2f63656e7465723e3c683320636c6173736d61786c656e6774686163
636573736b65793c2f696672616d653e3c646c20636c6173733c2f627574746f
6e3e3c683420636c6173733c683120636c6173737363726f6c6c696e673c2f6f
626a6563743e3c7469746c652069643c646420636c6173736974656d73636f70
653c74657874617265613c6f6c20636c6173733c647420636c6173733c2f6865
616465723e3c656d20636c6173733c2f6c6567656e643e3c6669656c64736574
6f6e6d6f75736575703c6e6f696e6465783e746f706d617267696e3c2f612063
6c617373617269612d6f776e7372656f7264657269643c2f666f6f7465723e68
696465666f6375736f6e6b6579646f776e3c61736964652069643c6d6170206e
616d653c2f6669677572653e3c5472207374796c65686f766572636172643c70
7562446174653e3c61727469636c653e6d6963726f736f667464697265637469
6f6e3c2f66636f6c6f723e3c2f6673636f72653e3c2f6673746172743e3c215b
63646174615b656e646d61726b657270616765696e646578636c6173734e616d
65676f6f676c657461676f446f63756d656e74737562737472696e67696e6e65
7248544d4c5f636f6d73636f7265617267756d656e74736e6176696761746f72
7365617263684b65796f41535f7175657279757365724167656e74696e697441
7272617975736572456d61696c6576656e74547970656166735f717565727973
65617263685549447363726f6c6c546f707375627363726962657072696e744d
61696e756e646566696e656470726f746f74797065706b4261736555524c6765
74546172676574616464436f6e6669676f6c646f6e6c6f6164636f6e7461696e
6572736c696465446f776e676574506c7567696e636f6e7374616e7473736173
5f746d737470666972737444617465736561726368426f787461726765745572
6c6461796f667765656b6e657777696e646f777472616e734d656e755f696e69
74446174617375706572666973687377666f626a6563746d656d6265725f6e6f
736574436f6f6b6965746d706c5f6e616d6573657443656e7465727468726f62
5374657074657874617272617974656d706c6174657361646d69785a41727273
657269616c697a656e756d4368617274736275696c6454696d656c6f63617469
6f6e737661726961626c65736d794f7074696f6e736a636f6d6d656e7473616c
62756d547265655f73665f656e6470746375727254616249646d6f7573656f76
65727461626265724f626a6e616d65737061636572656d6f7465797569735746
4f626a6563746a6361726f7573656c666c617368766172736f6666736574546f
70676574436f6f6b696573656c656374696f6e736c69646553686f77696d6773
65727665726575726f7065616e61676f6f676c655f61646d6170547970654964
77696e646f776f626a6163636f7264696f6e6461795f6e616d657373686f775f
6d656e75636f756e745f617272696d706c656d656e745f6865795f6c745f635f
6865795f6c745f685f6865795f6c745f77636f70797269676874617661696c61
626c65666f6c6c6f77696e67696e636c7564696e67646966666572656e746564
75636174696f6e73657074656d6265726469726563746f7279636f6d6d756e69
74797265736f7572636573736f6d657468696e67696d706f7274616e74617573
7472616c6961696e737572616e63657175657374696f6e73636f6d7075746572
73636f6d70616e696573636f6d6d6974746565707265736964656e7466696e61
6e6369616c63757272656e746c7965717569706d656e74696e73746974757465
6e6563657373617279636f756e74726965736164766572746973657472656174
6d656e746b6e6f776c65646765637573746f6d6572737765646e657364617961
677265656d656e74646f776e6c6f6164736d61726b6574696e67656666656374
6976657265666572656e6365736f6c7574696f6e73706f74656e7469616c706f
6c69746963616c646576656c6f7065647075626c69736865646368726973746d
61736d6174657269616c7363687269737469616e7374616e6461726473737472
75637475726570726f766964696e67746563686e6963616c73746174656d656e
747075626c6973686572657865637574697665636f72706f726174656163636f
7264696e67636f6e646974696f6e6f7065726174696f6e726567617264696e67
6f7468657277697365696e63726561736564656d706c6f796565737370656369
66696564646573637269626564646f63756d656e747370726573656e74656466
756e6374696f6e736675726e6974757265636f6d706c65746564626561757469
66756c636861726163746572696e746572666163656672616e636973636f6469
66666963756c74626567696e6e696e677468657265666f726573706f6e736f72
6564736974756174696f6e657863656c6c656e7464657465726d696e65617474
656e74696f6e6f7065726174696e677375626d69747465647061706572626163
6b6d6167617a696e657367656e6572616c6c79736f6d6574696d657370726f63
6573736573776f726c647769646573656372657461727974656c6570686f6e65
72656c6174696f6e73636f6e74696e756564617574686f726974796d696e6e65
736f7461737570706f7274656470726f6772616d6d6567656e65726174656474
686f7573616e6473776973636f6e73696e636f6d706f6e656e7470726f666573
736f72636f6e7461696e6564616666696c69617465696e746572657374737072
6163746963657367616c6c65726965737265636f6d6d656e64646973706c6179
6564696e7374616c6c656474656e6e6573736565706572666f726d65646d656e
74696f6e6564657373656e7469616c6465636973696f6e73616e6e6f756e6365
6470726f63656475726573696e6761706f7265616476616e7461676570726f76
6964657273756e6976657273616c616d65726963616e737265706f7274696e67
636f6e6e6563746564736174656c6c697465726570726573656e746f66666963
69616c73646564696361746564636f6d707574696e677472616e73706f727464
6973637573736564616464726573736573657870726573736564657374696d61
746573617373697374616e74776f6e64657266756c636f6e6365726e65646c6f
75697369616e617265736964656e7473646576656c6f7065726173736f636961
74656365727461696e6c7970726f766973696f6e636f6e647563746564677561
72616e746565657374696d6174656464656c697665726564616e616c79746963
73616e6f6e796d6f757364656c6963696f7573726573697a61626c65626f756c
657661726473656e7369746976656578636c75736976657468756d626e61696c
616767726567617465616672696b61616e736573706572616e746f6672616ec3
a76169736c6174766965c5a1756c696574757669c5b3c48c65c5a174696e61c4
8d65c5a174696e61e0b984e0b897e0b8a2e697a5e69cace8aa9ee7ae80e4bd93
e5ad97e7b981e9ab94e5ad97ed959ceab5adec96b4e4b8bae4bb80e4b988e8ae
a1e7ae97e69cbae7ac94e8aeb0e69cace8a88ee8ab96e58d80e69c8de58aa1e5
99a8e4ba92e88194e7bd91e688bfe59cb0e4baa7e4bfb1e4b990e983a8e587ba
e78988e7a4bee68e92e8a18ce6a69ce983a8e890bde6a0bce8bf9be4b880e6ad
a5e694afe4bb98e5ae9de9aa8ce8af81e7a081e5a794e59198e4bc9ae695b0e6
8daee5ba93e6b688e8b4b9e88085e58a9ee585ace5aea4e8aea8e8aebae58cba
e6b7b1e59cb3e5b882e692ade694bee599a8e58c97e4baace5b882e5a4a7e5ad
a6e7949fe8b68ae69da5e8b68ae7aea1e79086e59198e4bfa1e681afe7bd9173
6572766963696f73617274c3ad63756c6f617267656e74696e6162617263656c
6f6e616375616c71756965727075626c696361646f70726f647563746f73706f
6cc3ad7469636172657370756573746177696b6970656469617369677569656e
746562c3ba737175656461636f6d756e69646164736567757269646164707269
6e636970616c70726567756e746173636f6e74656e69646f726573706f6e6465
7276656e657a75656c6170726f626c656d617364696369656d62726572656c61
6369c3b36e6e6f7669656d62726573696d696c6172657370726f796563746f73
70726f6772616d6173696e7374697475746f616374697669646164656e637565
6e74726165636f6e6f6dc3ad61696dc3a167656e6573636f6e74616374617264
65736361726761726e656365736172696f6174656e6369c3b36e74656cc3a966
6f6e6f636f6d697369c3b36e63616e63696f6e6573636170616369646164656e
636f6e74726172616ec3a16c697369736661766f7269746f7374c3a9726d696e
6f7370726f76696e636961657469717565746173656c656d656e746f7366756e
63696f6e6573726573756c7461646f636172c3a16374657270726f7069656461
647072696e636970696f6e65636573696461646d756e69636970616c63726561
6369c3b36e64657363617267617370726573656e636961636f6d65726369616c
6f70696e696f6e6573656a6572636963696f656469746f7269616c73616c616d
616e6361676f6e7ac3a16c657a646f63756d656e746f70656cc3ad63756c6172
656369656e74657367656e6572616c65737461727261676f6e617072c3a16374
6963616e6f7665646164657370726f70756573746170616369656e74657374c3
a9636e696361736f626a657469766f73636f6e746163746f73e0a4aee0a587e0
a482e0a4b2e0a4bfe0a48fe0a4b9e0a588e0a482e0a497e0a4afe0a4bee0a4b8
e0a4bee0a4a5e0a48fe0a4b5e0a482e0a4b0e0a4b9e0a587e0a495e0a58be0a4
88e0a495e0a581e0a49be0a4b0e0a4b9e0a4bee0a4ace0a4bee0a4a6e0a495e0
a4b9e0a4bee0a4b8e0a4ade0a580e0a4b9e0a581e0a48fe0a4b0e0a4b9e0a580
e0a4aee0a588e0a482e0a4a6e0a4bfe0a4a8e0a4ace0a4bee0a4a46469706c6f
646f6373e0a4b8e0a4aee0a4afe0a4b0e0a582e0a4aae0a4a8e0a4bee0a4aee0
a4aae0a4a4e0a4bee0a4abe0a4bfe0a4b0e0a494e0a4b8e0a4a4e0a4a4e0a4b0
e0a4b9e0a4b2e0a58be0a497e0a4b9e0a581e0a486e0a4ace0a4bee0a4b0e0a4
a6e0a587e0a4b6e0a4b9e0a581e0a488e0a496e0a587e0a4b2e0a4afe0a4a6e0
a4bfe0a495e0a4bee0a4aee0a4b5e0a587e0a4ace0a4a4e0a580e0a4a8e0a4ac
e0a580e0a49ae0a4aee0a58ce0a4a4e0a4b8e0a4bee0a4b2e0a4b2e0a587e0a4
96e0a49ce0a589e0a4ace0a4aee0a4a6e0a4a6e0a4a4e0a4a5e0a4bee0a4a8e0
a4b9e0a580e0a4b6e0a4b9e0a4b0e0a485e0a4b2e0a497e0a495e0a4ade0a580
e0a4a8e0a497e0a4b0e0a4aae0a4bee0a4b8e0a4b0e0a4bee0a4a4e0a495e0a4
bfe0a48fe0a489e0a4b8e0a587e0a497e0a4afe0a580e0a4b9e0a582e0a481e0
a486e0a497e0a587e0a49fe0a580e0a4aee0a496e0a58be0a49ce0a495e0a4be
e0a4b0e0a485e0a4ade0a580e0a497e0a4afe0a587e0a4a4e0a581e0a4aee0a4
b5e0a58be0a49fe0a4a6e0a587e0a482e0a485e0a497e0a4b0e0a490e0a4b8e0
a587e0a4aee0a587e0a4b2e0a4b2e0a497e0a4bee0a4b9e0a4bee0a4b2e0a48a
e0a4aae0a4b0e0a49ae0a4bee0a4b0e0a490e0a4b8e0a4bee0a4a6e0a587e0a4
b0e0a49ce0a4bfe0a4b8e0a4a6e0a4bfe0a4b2e0a4ace0a482e0a4a6e0a4ace0
a4a8e0a4bee0a4b9e0a582e0a482e0a4b2e0a4bee0a496e0a49ce0a580e0a4a4
e0a4ace0a49fe0a4a8e0a4aee0a4bfe0a4b2e0a487e0a4b8e0a587e0a486e0a4
a8e0a587e0a4a8e0a4afe0a4bee0a495e0a581e0a4b2e0a4b2e0a589e0a497e0
a4ade0a4bee0a497e0a4b0e0a587e0a4b2e0a49ce0a497e0a4b9e0a4b0e0a4be
e0a4aee0a4b2e0a497e0a587e0a4aae0a587e0a49ce0a4b9e0a4bee0a4a5e0a4
87e0a4b8e0a580e0a4b8e0a4b9e0a580e0a495e0a4b2e0a4bee0a4a0e0a580e0
a495e0a4b9e0a4bee0a481e0a4a6e0a582e0a4b0e0a4a4e0a4b9e0a4a4e0a4b8
e0a4bee0a4a4e0a4afe0a4bee0a4a6e0a486e0a4afe0a4bee0a4aae0a4bee0a4
95e0a495e0a58ce0a4a8e0a4b6e0a4bee0a4aee0a4a6e0a587e0a496e0a4afe0
a4b9e0a580e0a4b0e0a4bee0a4afe0a496e0a581e0a4a6e0a4b2e0a497e0a580
687474703a2f2f777777626f726465723d2230223c2f613e3c2f6469763e3c64
697620636c6173736f6e6d6f7573656f75743c6c6162656c20666f7261726961
2d6c6162656c687474702d65717569763c6e6f7363726970743e6261636b6772
6f756e643c666f6e7420666163653c63617465676f72793e6f6e4d6f7573654f
75743c54642076616c69676e3c6669656c647365743e3c2f73656374696f6e3e
3c2f61727469636c653e3c6261736520687265666f6e4d6f7573656f75743c2f
6e6f696e6465783e73686f772d66616365736c6566746d617267696e7370656c
6c636865636b6f6e6b6579707265737373686f775f666163657373636179745f
776f72643c2f66623a6c696b653e3c2f707562446174653e3c2f6d6172717565
653e3c5a65726f626f6172643c64656c20636c617373706172656e744e6f6465
73657454696d656f7574636f6c6f7244657074687669736962696c697479676f
6f676c655f616473737263456c656d656e746d6f7573656c6561766570697865
6c446570746861646453657276696365646566696e65536c6f746e6f436f6e66
6c696374656673705f736c6f747365626179436f6e666967696e697469616c69
7a65736561726368466f726d73717565657a65426f7866697273744368696c64
747261636b4576656e746e69766f536c69646572726561647953746174657361
735f7061676569647361735f7461726765746368696c644e6f64657368696465
55524c42617263757272416e63686f726164644f7665726c61796d656e755f61
7469766f72656d6f7665417474726d61705f636f6f7264736f6e444f4d526561
647962726f77736572566572646174657069636b6572696e6e65725769647468
61707056657273696f6e73656c6563745f6f626a5f5f694765745a6f6e657465
7874746f64697370676574456c656d656e74747261636b5f6869747373776974
6368546f35786163796d61696c696e67707274436f6e74656e74706172736546
6c6f6174636f6d7061744d6f64656174747269627574657379656c6c6f774963
6f6e73657373696f6e75726c696e666f77696e646f77676574547261636b6572
7469636b6572546578747365727665726461746573686f77526567696f6e7363
726f6c6c4c65667474616262657241726773746f704164734e6f746561766169
6c5769647468706c617965724c6f61646765744d696e75746573626f64794865
696768746c777274655f6d61726b6765745365636f6e64737478744b6579776f
7264706172616d6574657273696d6167654172726179756e6976657273697479
6d616e6167656d656e746465706172746d656e74746563686e6f6c6f67796361
7465676f72696573676f7665726e6d656e7477617368696e67746f6e65787065
7269656e636563616c69666f726e696161637469766974696573616464697469
6f6e616c636f6e646974696f6e73696e646976696475616c706172746963756c
6172636f6e666572656e636570726f64756374696f6e636f6d6d697373696f6e
64697363757373696f6e756e6465727374616e646e6577736c65747465726576
6572797468696e67636f6e73696465726564657370656369616c6c79636f6c6c
656374696f6e726567697374657265646173736f636961746564666f756e6461
74696f6e636f6d6d65726369616c7468726f7567686f75747468656d73656c76
6573706f70756c6174696f6e70726f74656374696f6e74726164656d61726b73
72657370656374697665696e7465726573746564666163696c69746965736173
736f636961746573636f6e6e656374696f6e6175737472616c69616e696e7665
73746d656e7473746174697374696373646973636c61696d65726f7065726174
696f6e7370726f70657274696573656d706c6f796d656e74696e647573747269
616c646966666572656e6365656c656374726f6e69637375636365737366756c
617373697374616e6365656e746572707269736570726f63657373696e676175
746f6d6f7469766570726f636564757265737065726d697373696f6e6e617669
676174696f6e636f6d706f6e656e74736173736573736d656e74646576656c6f
70696e676e6574776f726b696e67616363657074616e6365627573696e657373
65737265736f6c7574696f6e64657465726d696e6564636f6d706c6574656c79
6964656e74696669656463686172616374657273746563686e69717565737075
626c697368696e676170706c696361626c65646566696e6974696f6e6576616c
756174696f6e646972656374696f6e7370726f766973696f6e7364696374696f
6e61727966756e6374696f6e616c6d6f6e69746f72696e67636f6e7461696e69
6e6772657374617572616e7467656e65726174696f6e74656c65766973696f6e
696e74726f647563656473746174656d656e74737265666572656e6365736578
7072657373696f6e6d656d62657273686970696e6372656173696e6761706172
746d656e747373747261746567696573726561736f6e61626c6570726576696f
75736c796163636f7264616e63656d756c74696d65646961696d706f7274616e
63656c6974657261747572656d61696e7461696e656472656372656174696f6e
616e6e6f746174696f6e696e7465677261746564736369656e74696669636166
66696c69617465736261736b657462616c6c64657369676e61746564636f6d70
617269736f6e67756964656c696e6573636f6d706c69616e63657072696e6369
706c65736163636f756e74696e67636f6e6365726e696e676571756976616c65
6e74686973746f726963616c636f6e73697374656e746c656164657273686970
737472756374757265736d616e6368657374657273756666696369656e74636f
6e76656e74696f6e636f6d6d69746d656e74656c656374726963616c636f6e74
726f6c6c656472656c61746976656c79737570706f7274696e67636f6e766572
73696f6e726570726573656e747370657263656e746167656f626a6563746976
6573656666696369656e6379617574686f72697a6564636f6e666964656e6365
706974747362757267687265636f676e697a6564636f6e73756c74696e676c61
626f7261746f72796368616c6c656e6765736269726d696e6768616d72656775
6c6174696f6e636f6e74696e75696e67636f6e747269627574656170706c6961
6e63657367756172616e746565646672657175656e746c797068696c6f736f70
68796865616c74686361726570737963686f6c6f67796162736f6c7574656c79
61636365737369626c656f726967696e616c6c796661766f757269746573706f
7374506f7374656463616e64696461746573636f6d706c6574696f6e656c656d
656e746172796c696d6f7573696e6573696e6475737472696573736974756174
696f6e73646973636f7665726564726573697374616e63657472616e73697469
6f6e70726f686962697465646a61766153637269707463616c63756c61746564
6576656e7475616c6c796166666f726461626c65617070726f6163686573696e
6772656469656e74636974797365617263687075626c69736865727363696e63
696e6e61746973616372616d656e746f64656d6f63726174696370726576656e
74696f6e73616e732d7365726966657874656e73696f6e73636f6d7061746962
6c6562726561646372756d62686f72697a6f6e74616c70737963686f6c6f6769
6465636f726174696f6e6174746163686d656e74766f636162756c6172796e65
6465726c616e6473706f7274756775c3aa73d7a2d791d7a8d799d7aad981d8a7
d8b1d8b3db8c6465736172726f6c6c6f636f6d656e746172696f656475636163
69c3b36e7365707469656d6272657265676973747261646f64697265636369c3
b36e75626963616369c3b36e7075626c69636964616472657370756573746173
726573756c7461646f73696d706f7274616e746572657365727661646f736172
74c3ad63756c6f736469666572656e7465737369677569656e746573726570c3
ba626c69636173697475616369c3b36e6d696e6973746572696f707269766163
696461646469726563746f72696f666f726d616369c3b36e706f626c616369c3
b36e707265736964656e7465636f6e74656e69646f7361636365736f72696f73
746563686e6f72617469706572736f6e616c657363617465676f72c3ad616573
70656369616c6573646973706f6e69626c6561637475616c6964616472656665
72656e63696176616c6c61646f6c69646269626c696f7465636172656c616369
6f6e657363616c656e646172696f706f6cc3ad7469636173616e746572696f72
6573646f63756d656e746f736e61747572616c657a616d6174657269616c6573
6469666572656e63696165636f6ec3b36d6963617472616e73706f727465726f
6472c3ad6775657a70617274696369706172656e6375656e7472616e64697363
757369c3b36e6573747275637475726166756e64616369c3b36e667265637565
6e7465737065726d616e656e7465746f74616c6d656e7465d0bcd0bed0b6d0bd
d0bed0b1d183d0b4d0b5d182d0bcd0bed0b6d0b5d182d0b2d180d0b5d0bcd18f
d182d0b0d0bad0b6d0b5d187d182d0bed0b1d18bd0b1d0bed0bbd0b5d0b5d0be
d187d0b5d0bdd18cd18dd182d0bed0b3d0bed0bad0bed0b3d0b4d0b0d0bfd0be
d181d0bbd0b5d0b2d181d0b5d0b3d0bed181d0b0d0b9d182d0b5d187d0b5d180
d0b5d0b7d0bcd0bed0b3d183d182d181d0b0d0b9d182d0b0d0b6d0b8d0b7d0bd
d0b8d0bcd0b5d0b6d0b4d183d0b1d183d0b4d183d182d09fd0bed0b8d181d0ba
d0b7d0b4d0b5d181d18cd0b2d0b8d0b4d0b5d0bed181d0b2d18fd0b7d0b8d0bd
d183d0b6d0bdd0bed181d0b2d0bed0b5d0b9d0bbd18ed0b4d0b5d0b9d0bfd0be
d180d0bdd0bed0bcd0bdd0bed0b3d0bed0b4d0b5d182d0b5d0b9d181d0b2d0be
d0b8d185d0bfd180d0b0d0b2d0b0d182d0b0d0bad0bed0b9d0bcd0b5d181d182
d0bed0b8d0bcd0b5d0b5d182d0b6d0b8d0b7d0bdd18cd0bed0b4d0bdd0bed0b9
d0bbd183d187d188d0b5d0bfd0b5d180d0b5d0b4d187d0b0d181d182d0b8d187
d0b0d181d182d18cd180d0b0d0b1d0bed182d0bdd0bed0b2d18bd185d0bfd180
d0b0d0b2d0bed181d0bed0b1d0bed0b9d0bfd0bed182d0bed0bcd0bcd0b5d0bd
d0b5d0b5d187d0b8d181d0bbd0b5d0bdd0bed0b2d18bd0b5d183d181d0bbd183
d0b3d0bed0bad0bed0bbd0bed0bdd0b0d0b7d0b0d0b4d182d0b0d0bad0bed0b5
d182d0bed0b3d0b4d0b0d0bfd0bed187d182d0b8d09fd0bed181d0bbd0b5d182
d0b0d0bad0b8d0b5d0bdd0bed0b2d18bd0b9d181d182d0bed0b8d182d182d0b0
d0bad0b8d185d181d180d0b0d0b7d183d0a1d0b0d0bdd0bad182d184d0bed180
d183d0bcd09ad0bed0b3d0b4d0b0d0bad0bdd0b8d0b3d0b8d181d0bbd0bed0b2
d0b0d0bdd0b0d188d0b5d0b9d0bdd0b0d0b9d182d0b8d181d0b2d0bed0b8d0bc
d181d0b2d18fd0b7d18cd0bbd18ed0b1d0bed0b9d187d0b0d181d182d0bed181
d180d0b5d0b4d0b8d09ad180d0bed0bcd0b5d0a4d0bed180d183d0bcd180d18b
d0bdd0bad0b5d181d182d0b0d0bbd0b8d0bfd0bed0b8d181d0bad182d18bd181
d18fd187d0bcd0b5d181d18fd186d186d0b5d0bdd182d180d182d180d183d0b4
d0b0d181d0b0d0bcd18bd185d180d18bd0bdd0bad0b0d09dd0bed0b2d18bd0b9
d187d0b0d181d0bed0b2d0bcd0b5d181d182d0b0d184d0b8d0bbd18cd0bcd0bc
d0b0d180d182d0b0d181d182d180d0b0d0bdd0bcd0b5d181d182d0b5d182d0b5
d0bad181d182d0bdd0b0d188d0b8d185d0bcd0b8d0bdd183d182d0b8d0bcd0b5
d0bdd0b8d0b8d0bcd0b5d18ed182d0bdd0bed0bcd0b5d180d0b3d0bed180d0be
d0b4d181d0b0d0bcd0bed0bcd18dd182d0bed0bcd183d0bad0bed0bdd186d0b5
d181d0b2d0bed0b5d0bcd0bad0b0d0bad0bed0b9d090d180d185d0b8d0b2d985
d986d8aad8afd989d8a5d8b1d8b3d8a7d984d8b1d8b3d8a7d984d8a9d8a7d984
d8b9d8a7d985d983d8aad8a8d987d8a7d8a8d8b1d8a7d985d8acd8a7d984d98a
d988d985d8a7d984d8b5d988d8b1d8acd8afd98ad8afd8a9d8a7d984d8b9d8b6
d988d8a5d8b6d8a7d981d8a9d8a7d984d982d8b3d985d8a7d984d8b9d8a7d8a8
d8aad8add985d98ad984d985d984d981d8a7d8aad985d984d8aad982d989d8aa
d8b9d8afd98ad984d8a7d984d8b4d8b9d8b1d8a3d8aed8a8d8a7d8b1d8aad8b7
d988d98ad8b1d8b9d984d98ad983d985d8a5d8b1d981d8a7d982d8b7d984d8a8
d8a7d8aad8a7d984d984d8bad8a9d8aad8b1d8aad98ad8a8d8a7d984d986d8a7
d8b3d8a7d984d8b4d98ad8aed985d986d8aad8afd98ad8a7d984d8b9d8b1d8a8
d8a7d984d982d8b5d8b5d8a7d981d984d8a7d985d8b9d984d98ad987d8a7d8aa
d8add8afd98ad8abd8a7d984d984d987d985d8a7d984d8b9d985d984d985d983
d8aad8a8d8a9d98ad985d983d986d983d8a7d984d8b7d981d984d981d98ad8af
d98ad988d8a5d8afd8a7d8b1d8a9d8aad8a7d8b1d98ad8aed8a7d984d8b5d8ad
d8a9d8aad8b3d8acd98ad984d8a7d984d988d982d8aad8b9d986d8afd985d8a7
d985d8afd98ad986d8a9d8aad8b5d985d98ad985d8a3d8b1d8b4d98ad981d8a7
d984d8b0d98ad986d8b9d8b1d8a8d98ad8a9d8a8d988d8a7d8a8d8a9d8a3d984
d8b9d8a7d8a8d8a7d984d8b3d981d8b1d985d8b4d8a7d983d984d8aad8b9d8a7
d984d989d8a7d984d8a3d988d984d8a7d984d8b3d986d8a9d8acd8a7d985d8b9
d8a9d8a7d984d8b5d8add981d8a7d984d8afd98ad986d983d984d985d8a7d8aa
d8a7d984d8aed8a7d8b5d8a7d984d985d984d981d8a3d8b9d8b6d8a7d8a1d983
d8aad8a7d8a8d8a9d8a7d984d8aed98ad8b1d8b1d8b3d8a7d8a6d984d8a7d984
d982d984d8a8d8a7d984d8a3d8afd8a8d985d982d8a7d8b7d8b9d985d8b1d8a7
d8b3d984d985d986d8b7d982d8a9d8a7d984d983d8aad8a8d8a7d984d8b1d8ac
d984d8a7d8b4d8aad8b1d983d8a7d984d982d8afd985d98ad8b9d8b7d98ad983
7374726963742f2f454e22747970653d22696d61676568747470733a2f2f7373
6c2f2f647464207868746d6c636f6c6f72736368656d653c7370616e20636c61
73733c696e707574207479706563656c6c73706163696e6763656c6c70616464
696e676f6e6d6f7573656f766572617269612d68696464656e3c7374796c6520
747970653c2f6e6f7363726970743e3c61626272207469746c656f6e6d6f7573
65646f776e3c706172616d206e616d65746f6f6c7469702d7572696672616d65
626f726465723c2f6669656c647365743e63726f73736f726967696e3c2f6361
7465676f72793e6f6e4d6f7573654f766572706c616365686f6c6465723c2f74
657874617265613e6d617267696e77696474683c2f6f707467726f75703e6365
6c6c50616464696e676f6e4d6f757365446f776e63656c6c53706163696e676f
6e4d6f757365646f776e737461727265642d737263626f72646572636f6c6f72
706c7567696e7370616765646973706c61795465787463656c6c73706173696e
673c6369746520636c617373636f6d70616e794e616d656f6e64726167656e74
65726f6e647261676c6561766561646452656e64657265727061676554726163
6b657272656d6f7665436c617373617070656e644368696c645f676574547261
636b65727365617263685374617465746f4c6f776572436173657361735f6d61
6e616765725f676574436f6e74726f6c6174746163684576656e746166735f63
68616e6e656c6166735f6e756d5f72657173657450726f706572747962526573
657276654d6178636f6f6b69655f70617468736574496e74657276616c707269
6e74486569676874636c69656e7457696474686170706c69636174696f6e6472
6f706d656e756f626a6164645661726961626c6566624173796e63496e697461
64644c697374656e6572616363657373546f6b656e6a617661456e61626c6564
67657446756c6c5965617263757272456c656d656e74736c696465546f67676c
656f666673657457696474685f6164644f7267616e6963726573657450726f6d
70747472616e736974696f6e736164644661766f72697465746162626572496e
646578676574486f73744e616d65706f776572536561726368746f67676c6543
6c617373696e6e6572486569676874636f6f7264696e6174657376697369626c
655f75726c746f474d54537472696e6768656164696e67546578747061676559
4f66667365746d6f6e74685f6e616d657363757272656e7474696d656f766572
4c6962577261706c617374496e6465784f66696d676469725f6d697363677261
7068696373446972746f74616c5f636f756e74706167654d6574686f64737265
6d6f76654368696c646f75746c696e6554797065616464506f736974696f6e72
6174696e67734c31306e7361766564536561726368617661696c486569676874
7469636b65724974656d737068704164735f757365647274655f746f6f6c6261
726c777274655f636f6c6f726c777274655f696d616765646573637269707469
6f6e73756767657374696f6e736d61726b6572496d61676563757272656e7454
696d6572616e646f6d6c696e6b735f73665f7374617274707467657450726f70
65727479747261636b65724e616d65746869735f7363726970746c6f61645363
726970747369734d6f7573654f7665726c6576656c5f70726963656465616c65
725f7061676566726f6d456c656d656e74656d706c6f7965724d736762726f77
7365724e616d656f70745f7061676555726c746573745461674e616d65676f6f
676c655f696e666f70726574747950686f746f73686f77437265646974737374
72526566657272657273656c6563744576656e74624d617463686573416c6c6f
436c6173734e616d65736a734c6f63436f6e666967756e73656c656374416c6c
706167654f7074696f6e73696e636c756465486f73746573636f6e64654d656e
7575726c5f73656374696f6e73635f73656375726974796f7269675f6f6e6c6f
616468696464656e56616c75657353656c65637454657874735369676e696e4c
696e6b696e666f726d6174696f6e646576656c6f706d656e746163636573736f
72696573706572666f726d616e6365656c656374726f6e6963736173736f6369
6174696f6e617070726f707269617465656e7669726f6e6d656e74726573706f
6e7369626c656164766572746973696e67636f72706f726174696f6e656e6769
6e656572696e677369676e69666963616e746f70706f7274756e697479657374
61626c6973686564696e646570656e64656e7472657374617572616e7473696e
746572657374696e67696e646976696475616c7370686f746f67726170687969
6d6d6564696174656c79747261646974696f6e616c656475636174696f6e616c
696e737472756d656e7473616c7465726e61746976657265636f6d6d656e6465
647472697041647669736f72636c617373696669656473636f6d6d756e697469
6573706c617973746174696f6e6d61696e74656e616e636574656d7065726174
7572656e65746865726c616e6473636f6e73746974757465737075626c696361
74696f6e726567756c6174696f6e7370726f6772616d6d696e67636572746966
6963617465636f6d7065746974696f6e636f6d62696e6174696f6e636f6e6e65
6374696375746d69737369737369707069646966666572656e6365736c656769
736c6174696f6e6d65726368616e646973656e6577736c657474657273706172
7469636970617465696d70726f76656d656e74657870657269656e6365646469
737472696275746564737769747a65726c616e6464657374696e6174696f6e65
7870657269656e636573696e746572616374697665726571756972656d656e74
636f6d7065746974697665696e74657272616369616c617574686f7269746965
73656e7465727072697365736167726963756c74757265696e74656772617469
6f6e6566666563746976656c79636f6d666f727461626c657472616e736c6174
696f6e696d706c656d656e746564696e737469747574696f6e706172746e6572
736869707265706c6163656d656e7464697363757373696f6e73707265706172
6174696f6e6174747269627574696f6e726563616c63756c617465736c6f7665
6ec48d696e61636f6d656e746172696f73756e697665727369646164636f6e64
6963696f6e65736163746976696461646573657870657269656e636961746563
6e6f6c6f67c3ad6170726f6475636369c3b36e70756e7475616369c3b36e6170
6c6963616369c3b36e636f6e7472617365c3b16163617465676f72c3ad617372
6567697374726172736570726f666573696f6e616c74726174616d69656e746f
726567c3ad7374726174657365637265746172c3ad617072696e636970616c65
7370726f7465636369c3b36e696d706f7274616e746573696d706f7274616e63
6961706f736962696c69646164696e7465726573616e746563726563696d6965
6e746f6e65636573696461646573737573637269626972736561736f63696163
69c3b36e646973706f6e69626c65736576616c75616369c3b36e657374756469
616e746573726573706f6e7361626c657265736f6c756369c3b36e6775616461
6c616a6172617265676973747261646f736f706f7274756e69646164636f6d65
726369616c6573666f746f67726166c3ad616175746f72696461646573696e67
656e696572c3ad6174656c6576697369c3b36e636f6d706574656e6369616f70
65726163696f6e657365737461626c656369646f73696d706c656d656e746561
637475616c6d656e74656e61766567616369c3b36e636f6e666f726d69646164
2f66617669636f6e2e69636f766572696669636174696f6e3c73637269707420
747970656175746f636f6d706c657465617269612d636865636b65646d617267
696e6865696768743c626c6f636b71756f74653e3c2f673a706c75736f6e653e
3c574f524420636f6f7264733c736d616c6c20636c617373696e736572744265
666f7265736574417474726962757465637265617465436f6e66696763686172
6163746572536574636f6c6c6170734974656d7363616e63656c427562626c65
636c6f7375726552656164796a73616c6c5f6c6f616465646175746852657370
6f6e736567657441747472696275746568696465616c6c6d656e75736f41535f
7461786f6e6f6d7964656661756c7456616c75656a615f646972656374696f6e
706977696b547261636b6572636c65617254696d656f75746f66667365744865
696768746f70656e427257696e646f776175746f506c617954696d6573657454
6172676574696e67797569636f6d626f70617468726573706f6e736554657874
666f756e64456c656d656e74636c69656e744865696768746164644c6f616445
76656e746d61705f6c6f636174696f6e636c69636b6564546162496466726f6d
43686172436f646566657463685f6f626a656374637265617465436f6f6b6965
7265706c616365436c617373707472616e736c6174696f6e74686553756d6d61
726965736f6666736574506172656e7462616e6b5f636f6c6c65637474686553
6974654c696e6b737363726f6c6c486569676874746f74616c5f696d61676573
6372656174654d61726b657263757272656e745f68617368766273656f5f6a73
68746d6c5f696e746c537472696e67736661696c7572654576656e746965636f
6d70617474657374616e63686f724f626a656374636c6173735061747465726e
7363726970744c6f61646572666565646261636b5f75726c6d696e7574655f76
616c756570617573655f7363726f6c6c726571756972656d656e74736170706c
69636174696f6e7370726f66657373696f6e616c6f7267616e697a6174696f6e
617661696c6162696c697479636f6e737472756374696f6e6469737472696275
74696f6e7075626c69636174696f6e73706172746963756c61726c7972656c61
74696f6e73686970696e74726f64756374696f6e6d616e756661637475726572
696e737472756374696f6e7370656e6e73796c76616e69617265676973747261
74696f6e746563686e6f6c6f676965737068696c6164656c70686961696e7374
69747574696f6e73696e7374616c6c6174696f6e70726573656e746174696f6e
7061727469636970616e74736172636869746563747572657370656369666963
616c6c79707265736372697074696f6e636572746966696361746573636f6e74
7269627574696f6e7375636365737366756c6c79726573706563746976656c79
7472616e736d697373696f6e656e6379636c6f7065646961636f6c6c65637469
626c6573696e74656c6c6967656e63656361706162696c697469657361727261
6e67656d656e7473636f6d70656e736174696f6e737562736372697074696f6e
636f6e73756c746174696f6e696d70726f76656d656e7473636f6e7374697475
74696f6e7472616e73616374696f6e73636f6e74656d706f726172796f726761
6e69736174696f6e7265736572766174696f6e73636f6e736572766174696f6e
6e65696768626f72686f6f64736174697366616374696f6e6465736372697074
696f6e736e6f74696669636174696f6e74657374696d6f6e69616c7361677269
63756c747572616c636f6d6d697373696f6e65727265737472696374696f6e73
646576656c6f706d656e74736578706563746174696f6e736578706572696d65
6e74616c616c7068616265746963616c70726f647563746976697479696e7465
6c6c65637475616c696e6372656173696e676c79636f6e73657175656e636573
756e697665727369746965736f62736572766174696f6e7364656d6f6e737472
617465646d6561737572656d656e7473726570726573656e74696e67656e7669
726f6e6d656e7473636f6e766572736174696f6e6a7572697364696374696f6e
6a61636b736f6e76696c6c65696d706c656d656e74696e676368616d70696f6e
73686970636f6e76656e74696f6e616c656e676c6973682028554b29656e676c
6973682028555329d09cd0bed0bdd0b3d0bed0bbd0a1d180d0bfd181d0bad0b8
d181d180d0bfd181d0bad0b8d181d180d0bfd181d0bad0bed984d8b9d8b1d8a8
d98ad8a9e6ada3e9ab94e4b8ade69687e7ae80e4bd93e4b8ade69687e7b981e4
bd93e4b8ade69687e69c89e99990e585ace58fb8e4babae6b091e694bfe5ba9c
e998bfe9878ce5b7b4e5b7b4e7a4bee4bc9ae4b8bbe4b989e6938de4bd9ce7b3
bbe7bb9fe694bfe7ad96e6b395e8a784696e666f726d616369c3b36e68657272
616d69656e746173656c65637472c3b36e69636f646573637269706369c3b36e
636c61736966696361646f73636f6e6f63696d69656e746f7075626c69636163
69c3b36e72656c6163696f6e61646173696e666f726dc3a17469636172656c61
63696f6e61646f73646570617274616d656e746f74726162616a61646f726573
646972656374616d656e74656179756e74616d69656e746f6d65726361646f4c
69627265636f6e74c3a16374656e6f7368616269746163696f6e657363756d70
6c696d69656e746f72657374617572616e746573646973706f73696369c3b36e
636f6e73656375656e636961656c65637472c3b36e69636161706c6963616369
6f6e6573646573636f6e65637461646f696e7374616c616369c3b36e7265616c
697a616369c3b36e7574696c697a616369c3b36e656e6369636c6f7065646961
656e6665726d656461646573696e737472756d656e746f73657870657269656e
63696173696e73746974756369c3b36e706172746963756c6172657373756263
617465676f726961d182d0bed0bbd18cd0bad0bed0a0d0bed181d181d0b8d0b8
d180d0b0d0b1d0bed182d18bd0b1d0bed0bbd18cd188d0b5d0bfd180d0bed181
d182d0bed0bcd0bed0b6d0b5d182d0b5d0b4d180d183d0b3d0b8d185d181d0bb
d183d187d0b0d0b5d181d0b5d0b9d187d0b0d181d0b2d181d0b5d0b3d0b4d0b0
d0a0d0bed181d181d0b8d18fd09cd0bed181d0bad0b2d0b5d0b4d180d183d0b3
d0b8d0b5d0b3d0bed180d0bed0b4d0b0d0b2d0bed0bfd180d0bed181d0b4d0b0
d0bdd0bdd18bd185d0b4d0bed0bbd0b6d0bdd18bd0b8d0bcd0b5d0bdd0bdd0be
d09cd0bed181d0bad0b2d18bd180d183d0b1d0bbd0b5d0b9d09cd0bed181d0ba
d0b2d0b0d181d182d180d0b0d0bdd18bd0bdd0b8d187d0b5d0b3d0bed180d0b0
d0b1d0bed182d0b5d0b4d0bed0bbd0b6d0b5d0bdd183d181d0bbd183d0b3d0b8
d182d0b5d0bfd0b5d180d18cd09ed0b4d0bdd0b0d0bad0bed0bfd0bed182d0be
d0bcd183d180d0b0d0b1d0bed182d183d0b0d0bfd180d0b5d0bbd18fd0b2d0be
d0bed0b1d189d0b5d0bed0b4d0bdd0bed0b3d0bed181d0b2d0bed0b5d0b3d0be
d181d182d0b0d182d18cd0b8d0b4d180d183d0b3d0bed0b9d184d0bed180d183
d0bcd0b5d185d0bed180d0bed188d0bed0bfd180d0bed182d0b8d0b2d181d181
d18bd0bbd0bad0b0d0bad0b0d0b6d0b4d18bd0b9d0b2d0bbd0b0d181d182d0b8
d0b3d180d183d0bfd0bfd18bd0b2d0bcd0b5d181d182d0b5d180d0b0d0b1d0be
d182d0b0d181d0bad0b0d0b7d0b0d0bbd0bfd0b5d180d0b2d18bd0b9d0b4d0b5
d0bbd0b0d182d18cd0b4d0b5d0bdd18cd0b3d0b8d0bfd0b5d180d0b8d0bed0b4
d0b1d0b8d0b7d0bdd0b5d181d0bed181d0bdd0bed0b2d0b5d0bcd0bed0bcd0b5
d0bdd182d0bad183d0bfd0b8d182d18cd0b4d0bed0bbd0b6d0bdd0b0d180d0b0
d0bcd0bad0b0d185d0bdd0b0d187d0b0d0bbd0bed0a0d0b0d0b1d0bed182d0b0
d0a2d0bed0bbd18cd0bad0bed181d0bed0b2d181d0b5d0bcd0b2d182d0bed180
d0bed0b9d0bdd0b0d187d0b0d0bbd0b0d181d0bfd0b8d181d0bed0bad181d0bb
d183d0b6d0b1d18bd181d0b8d181d182d0b5d0bcd0bfd0b5d187d0b0d182d0b8
d0bdd0bed0b2d0bed0b3d0bed0bfd0bed0bcd0bed189d0b8d181d0b0d0b9d182
d0bed0b2d0bfd0bed187d0b5d0bcd183d0bfd0bed0bcd0bed189d18cd0b4d0be
d0bbd0b6d0bdd0bed181d181d18bd0bbd0bad0b8d0b1d18bd181d182d180d0be
d0b4d0b0d0bdd0bdd18bd0b5d0bcd0bdd0bed0b3d0b8d0b5d0bfd180d0bed0b5
d0bad182d0a1d0b5d0b9d187d0b0d181d0bcd0bed0b4d0b5d0bbd0b8d182d0b0
d0bad0bed0b3d0bed0bed0bdd0bbd0b0d0b9d0bdd0b3d0bed180d0bed0b4d0b5
d0b2d0b5d180d181d0b8d18fd181d182d180d0b0d0bdd0b5d184d0b8d0bbd18c
d0bcd18bd183d180d0bed0b2d0bdd18fd180d0b0d0b7d0bdd18bd185d0b8d181
d0bad0b0d182d18cd0bdd0b5d0b4d0b5d0bbd18ed18fd0bdd0b2d0b0d180d18f
d0bcd0b5d0bdd18cd188d0b5d0bcd0bdd0bed0b3d0b8d185d0b4d0b0d0bdd0bd
d0bed0b9d0b7d0bdd0b0d187d0b8d182d0bdd0b5d0bbd18cd0b7d18fd184d0be
d180d183d0bcd0b0d0a2d0b5d0bfd0b5d180d18cd0bcd0b5d181d18fd186d0b0
d0b7d0b0d189d0b8d182d18bd09bd183d187d188d0b8d0b5e0a4a8e0a4b9e0a5
80e0a482e0a495e0a4b0e0a4a8e0a587e0a485e0a4aae0a4a8e0a587e0a495e0
a4bfe0a4afe0a4bee0a495e0a4b0e0a587e0a482e0a485e0a4a8e0a58de0a4af
e0a495e0a58de0a4afe0a4bee0a497e0a4bee0a487e0a4a1e0a4ace0a4bee0a4
b0e0a587e0a495e0a4bfe0a4b8e0a580e0a4a6e0a4bfe0a4afe0a4bee0a4aae0
a4b9e0a4b2e0a587e0a4b8e0a4bfe0a482e0a4b9e0a4ade0a4bee0a4b0e0a4a4
e0a485e0a4aae0a4a8e0a580e0a4b5e0a4bee0a4b2e0a587e0a4b8e0a587e0a4
b5e0a4bee0a495e0a4b0e0a4a4e0a587e0a4aee0a587e0a4b0e0a587e0a4b9e0
a58be0a4a8e0a587e0a4b8e0a495e0a4a4e0a587e0a4ace0a4b9e0a581e0a4a4
e0a4b8e0a4bee0a487e0a49fe0a4b9e0a58be0a497e0a4bee0a49ce0a4bee0a4
a8e0a587e0a4aee0a4bfe0a4a8e0a49fe0a495e0a4b0e0a4a4e0a4bee0a495e0
a4b0e0a4a8e0a4bee0a489e0a4a8e0a495e0a587e0a4afe0a4b9e0a4bee0a481
e0a4b8e0a4ace0a4b8e0a587e0a4ade0a4bee0a4b7e0a4bee0a486e0a4aae0a4
95e0a587e0a4b2e0a4bfe0a4afe0a587e0a4b6e0a581e0a4b0e0a582e0a487e0
a4b8e0a495e0a587e0a498e0a482e0a49fe0a587e0a4aee0a587e0a4b0e0a580
e0a4b8e0a495e0a4a4e0a4bee0a4aee0a587e0a4b0e0a4bee0a4b2e0a587e0a4
95e0a4b0e0a485e0a4a7e0a4bfe0a495e0a485e0a4aae0a4a8e0a4bee0a4b8e0
a4aee0a4bee0a49ce0a4aee0a581e0a49de0a587e0a495e0a4bee0a4b0e0a4a3
e0a4b9e0a58be0a4a4e0a4bee0a495e0a4a1e0a4bce0a580e0a4afe0a4b9e0a4
bee0a482e0a4b9e0a58be0a49fe0a4b2e0a4b6e0a4ace0a58de0a4a6e0a4b2e0
a4bfe0a4afe0a4bee0a49ce0a580e0a4b5e0a4a8e0a49ce0a4bee0a4a4e0a4be
e0a495e0a588e0a4b8e0a587e0a486e0a4aae0a495e0a4bee0a4b5e0a4bee0a4
b2e0a580e0a4a6e0a587e0a4a8e0a587e0a4aae0a582e0a4b0e0a580e0a4aae0
a4bee0a4a8e0a580e0a489e0a4b8e0a495e0a587e0a4b9e0a58be0a497e0a580
e0a4ace0a588e0a4a0e0a495e0a486e0a4aae0a495e0a580e0a4b5e0a4b0e0a5
8de0a4b7e0a497e0a4bee0a482e0a4b5e0a486e0a4aae0a495e0a58be0a49ce0
a4bfe0a4b2e0a4bee0a49ce0a4bee0a4a8e0a4bee0a4b8e0a4b9e0a4aee0a4a4
e0a4b9e0a4aee0a587e0a482e0a489e0a4a8e0a495e0a580e0a4afe0a4bee0a4
b9e0a582e0a4a6e0a4b0e0a58de0a49ce0a4b8e0a582e0a49ae0a580e0a4aae0
a4b8e0a482e0a4a6e0a4b8e0a4b5e0a4bee0a4b2e0a4b9e0a58be0a4a8e0a4be
e0a4b9e0a58be0a4a4e0a580e0a49ce0a588e0a4b8e0a587e0a4b5e0a4bee0a4
aae0a4b8e0a49ce0a4a8e0a4a4e0a4bee0a4a8e0a587e0a4a4e0a4bee0a49ce0
a4bee0a4b0e0a580e0a498e0a4bee0a4afe0a4b2e0a49ce0a4bfe0a4b2e0a587
e0a4a8e0a580e0a49ae0a587e0a49ce0a4bee0a482e0a49ae0a4aae0a4a4e0a5
8de0a4b0e0a497e0a582e0a497e0a4b2e0a49ce0a4bee0a4a4e0a587e0a4ace0
a4bee0a4b9e0a4b0e0a486e0a4aae0a4a8e0a587e0a4b5e0a4bee0a4b9e0a4a8
e0a487e0a4b8e0a495e0a4bee0a4b8e0a581e0a4ace0a4b9e0a4b0e0a4b9e0a4
a8e0a587e0a487e0a4b8e0a4b8e0a587e0a4b8e0a4b9e0a4bfe0a4a4e0a4ace0
a4a1e0a4bce0a587e0a498e0a49fe0a4a8e0a4bee0a4a4e0a4b2e0a4bee0a4b6
e0a4aae0a4bee0a482e0a49ae0a4b6e0a58de0a4b0e0a580e0a4ace0a4a1e0a4
bce0a580e0a4b9e0a58be0a4a4e0a587e0a4b8e0a4bee0a488e0a49fe0a4b6e0
a4bee0a4afe0a4a6e0a4b8e0a495e0a4a4e0a580e0a49ce0a4bee0a4a4e0a580
e0a4b5e0a4bee0a4b2e0a4bee0a4b9e0a49ce0a4bee0a4b0e0a4aae0a49fe0a4
a8e0a4bee0a4b0e0a496e0a4a8e0a587e0a4b8e0a4a1e0a4bce0a495e0a4aee0
a4bfe0a4b2e0a4bee0a489e0a4b8e0a495e0a580e0a495e0a587e0a4b5e0a4b2
e0a4b2e0a497e0a4a4e0a4bee0a496e0a4bee0a4a8e0a4bee0a485e0a4b0e0a5
8de0a4a5e0a49ce0a4b9e0a4bee0a482e0a4a6e0a587e0a496e0a4bee0a4aae0
a4b9e0a4b2e0a580e0a4a8e0a4bfe0a4afe0a4aee0a4ace0a4bfe0a4a8e0a4be
e0a4ace0a588e0a482e0a495e0a495e0a4b9e0a580e0a482e0a495e0a4b9e0a4
a8e0a4bee0a4a6e0a587e0a4a4e0a4bee0a4b9e0a4aee0a4b2e0a587e0a495e0
a4bee0a4abe0a580e0a49ce0a4ace0a495e0a4bfe0a4a4e0a581e0a4b0e0a4a4
e0a4aee0a4bee0a482e0a497e0a4b5e0a4b9e0a580e0a482e0a4b0e0a58be0a4
9ce0a4bce0a4aee0a4bfe0a4b2e0a580e0a486e0a4b0e0a58be0a4aae0a4b8e0
a587e0a4a8e0a4bee0a4afe0a4bee0a4a6e0a4b5e0a4b2e0a587e0a4a8e0a587
e0a496e0a4bee0a4a4e0a4bee0a495e0a4b0e0a580e0a4ace0a489e0a4a8e0a4
95e0a4bee0a49ce0a4b5e0a4bee0a4ace0a4aae0a582e0a4b0e0a4bee0a4ace0
a4a1e0a4bce0a4bee0a4b8e0a58ce0a4a6e0a4bee0a4b6e0a587e0a4afe0a4b0
e0a495e0a4bfe0a4afe0a587e0a495e0a4b9e0a4bee0a482e0a485e0a495e0a4
b8e0a4b0e0a4ace0a4a8e0a4bee0a48fe0a4b5e0a4b9e0a4bee0a482e0a4b8e0
a58de0a4a5e0a4b2e0a4aee0a4bfe0a4b2e0a587e0a4b2e0a587e0a496e0a495
e0a4b5e0a4bfe0a4b7e0a4afe0a495e0a58de0a4b0e0a482e0a4b8e0a4aee0a5
82e0a4b9e0a4a5e0a4bee0a4a8e0a4bed8aad8b3d8aad8b7d98ad8b9d985d8b4
d8a7d8b1d983d8a9d8a8d988d8a7d8b3d8b7d8a9d8a7d984d8b5d981d8add8a9
d985d988d8a7d8b6d98ad8b9d8a7d984d8aed8a7d8b5d8a9d8a7d984d985d8b2
d98ad8afd8a7d984d8b9d8a7d985d8a9d8a7d984d983d8a7d8aad8a8d8a7d984
d8b1d8afd988d8afd8a8d8b1d986d8a7d985d8acd8a7d984d8afd988d984d8a9
d8a7d984d8b9d8a7d984d985d8a7d984d985d988d982d8b9d8a7d984d8b9d8b1
d8a8d98ad8a7d984d8b3d8b1d98ad8b9d8a7d984d8acd988d8a7d984d8a7d984
d8b0d987d8a7d8a8d8a7d984d8add98ad8a7d8a9d8a7d984d8add982d988d982
d8a7d984d983d8b1d98ad985d8a7d984d8b9d8b1d8a7d982d985d8add981d988
d8b8d8a9d8a7d984d8abd8a7d986d98ad985d8b4d8a7d987d8afd8a9d8a7d984
d985d8b1d8a3d8a9d8a7d984d982d8b1d8a2d986d8a7d984d8b4d8a8d8a7d8a8
d8a7d984d8add988d8a7d8b1d8a7d984d8acd8afd98ad8afd8a7d984d8a3d8b3
d8b1d8a9d8a7d984d8b9d984d988d985d985d8acd985d988d8b9d8a9d8a7d984
d8b1d8add985d986d8a7d984d986d982d8a7d8b7d981d984d8b3d8b7d98ad986
d8a7d984d983d988d98ad8aad8a7d984d8afd986d98ad8a7d8a8d8b1d983d8a7
d8aad987d8a7d984d8b1d98ad8a7d8b6d8aad8add98ad8a7d8aad98ad8a8d8aa
d988d982d98ad8aad8a7d984d8a3d988d984d989d8a7d984d8a8d8b1d98ad8af
d8a7d984d983d984d8a7d985d8a7d984d8b1d8a7d8a8d8b7d8a7d984d8b4d8ae
d8b5d98ad8b3d98ad8a7d8b1d8a7d8aad8a7d984d8abd8a7d984d8abd8a7d984
d8b5d984d8a7d8a9d8a7d984d8add8afd98ad8abd8a7d984d8b2d988d8a7d8b1
d8a7d984d8aed984d98ad8acd8a7d984d8acd985d98ad8b9d8a7d984d8b9d8a7
d985d987d8a7d984d8acd985d8a7d984d8a7d984d8b3d8a7d8b9d8a9d985d8b4
d8a7d987d8afd987d8a7d984d8b1d8a6d98ad8b3d8a7d984d8afd8aed988d984
d8a7d984d981d986d98ad8a9d8a7d984d983d8aad8a7d8a8d8a7d984d8afd988
d8b1d98ad8a7d984d8afd8b1d988d8b3d8a7d8b3d8aad8bad8b1d982d8aad8b5
d8a7d985d98ad985d8a7d984d8a8d986d8a7d8aad8a7d984d8b9d8b8d98ad985
2d7374726963742e647464223e6d6574686f643d22706f737422747970653d22
7375626d6974223c6f7074696f6e2076616c7565617269612d686173706f7075
70617269612d657870616e6465643c2f626c6f636b71756f74653e636f756e74
72794162627265763c6465736372697074696f6e3e76722d636f6e74656e7462
6f783c3f786d6c2076657273696f6e637265617465456c656d656e74676f6f67
6c655f6166735f686c6166735f686967686c696768747261646975735f757064
6174657072696e745f5a426c61796572676f6f676c655f6166735f6164676f6f
676c655f6166735f6f65676f6f676c655f6166735f676c676f6f676c655f6166
735f696570696e6755726c73466f7247416f6e4c6f616448616e646c65726174
74616368536a426c6f636b7072756d5f657069736f64657373656c6563746564
496e64657875726368696e547261636b6572736d61727461645f737061636563
6f6e66696775726174696f6e7361735f666f726d61746964737361735f746172
6765745f73646c6f616443686172746265617473656c65637465644461746573
6c6172677572615f696465616c616374697665584f626a6563746d61726b6574
4769644461746576697375616c697a6174696f6e636c656172496e7465727661
6c7068704164735f72616e646f6d7365617263685f6f626a6563745f6264686d
50726f746f636f6c6a636c476574456c656d656e7475726c5f636f6d6d6f6e5f
6a7375726c5f76656e646f725f6a73747261636b506167655669657773656375
72697479746f6b656e6175746f506c617954696d657263757272656e74506c61
7949446d697363656c6c616e656f7573696e7465726e6174696f6e616c656e74
65727461696e6d656e74656e7669726f6e6d656e74616c6f70706f7274756e69
746965736163636f6d6d6f646174696f6e756e6465727374616e64696e676f72
67616e697a6174696f6e73636f6d6d756e69636174696f6e626168617361204d
656c6179756e6f72736b20626f6b6dc3a56c6e6f72736b206e796e6f72736b73
6c6f76656ec5a1c48d696e61696e7465726e6163696f6e616c63616c69666963
616369c3b36e636f6d756e6963616369c3b36e636f6e73747275636369c3b36e
3c21444f43545950452068746d6c3c21646f63747970652068746d6c68746d6c
20342e30312f2f656e227868746d6c20312e312f2f656e223c696d6720737263
3d22687474702e6a73223e3c2f7363726970743e636861727365743d7574662d
3822746f6f6c7469702d616c69676e686163636570742d636861727365746765
74456c656d656e7442794964676f6f676c655f61645f736c6f745f747261636b
5061676576696577706a734c6f616465644576656e74676c6f62616c4c6f6769
6e55524c70726576656e7444656661756c74616464746869735f636f6e666967
676f6f676c655f61645f747970656765745f6c696b655f636f756e745f736574
446f6d61696e4e616d65784d4c48747470526571756573746372656174654950
436f6e6669677642756c6c6574696e5f696e697476425f5848544d4c5f526561
6479656e61626c65536572766963657375726c5f636f6d6d6f6e5f6373737572
6c5f70726f6a6563745f6a7366775f416a617848616e646c6572777269746541
747472696275746573657373696f6e53746f72616765636f6e74656e746d6561
73757265726573706f6e736962696c69747961646d696e697374726174696f6e
636f6d6d756e69636174696f6e73696d706c656d656e746174696f6e7472616e
73706f72746174696f6e61646d696e697374726174697665696e667261737472
756374757265726570726573656e74617469766573706563696669636174696f
6e73726570726573656e746174696f6e6964656e74696669636174696f6e696e
746572707265746174696f6e7265636f6d6d656e646174696f6e636c61737369
6669636174696f6e6469736372696d696e6174696f6e636f6e63656e74726174
696f6e73737270736b6f6872766174736b697469e1babf6e67205669e1bb8774
d0a0d183d181d181d0bad0b8d0b9d180d183d181d181d0bad0b8d0b9696e7665
73746967616369c3b36e7061727469636970616369c3b36ed0bad0bed182d0be
d180d18bd0b5d0bed0b1d0bbd0b0d181d182d0b8d0bad0bed182d0bed180d18b
d0b9d187d0b5d0bbd0bed0b2d0b5d0bad181d0b8d181d182d0b5d0bcd18bd09d
d0bed0b2d0bed181d182d0b8d0bad0bed182d0bed180d18bd185d0bed0b1d0bb
d0b0d181d182d18cd0b2d180d0b5d0bcd0b5d0bdd0b8d0bad0bed182d0bed180
d0b0d18fd181d0b5d0b3d0bed0b4d0bdd18fd181d0bad0b0d187d0b0d182d18c
d0bdd0bed0b2d0bed181d182d0b8d0a3d0bad180d0b0d0b8d0bdd18bd0b2d0be
d0bfd180d0bed181d18bd0bad0bed182d0bed180d0bed0b9d181d0b4d0b5d0bb
d0b0d182d18cd0bfd0bed0bcd0bed189d18cd18ed181d180d0b5d0b4d181d182
d0b2d0bed0b1d180d0b0d0b7d0bed0bcd181d182d0bed180d0bed0bdd18bd183
d187d0b0d181d182d0b8d0b5d182d0b5d187d0b5d0bdd0b8d0b5d093d0bbd0b0
d0b2d0bdd0b0d18fd0b8d181d182d0bed180d0b8d0b8d181d0b8d181d182d0b5
d0bcd0b0d180d0b5d188d0b5d0bdd0b8d18fd0a1d0bad0b0d187d0b0d182d18c
d0bfd0bed18dd182d0bed0bcd183d181d0bbd0b5d0b4d183d0b5d182d181d0ba
d0b0d0b7d0b0d182d18cd182d0bed0b2d0b0d180d0bed0b2d0bad0bed0bdd0b5
d187d0bdd0bed180d0b5d188d0b5d0bdd0b8d0b5d0bad0bed182d0bed180d0be
d0b5d0bed180d0b3d0b0d0bdd0bed0b2d0bad0bed182d0bed180d0bed0bcd0a0
d0b5d0bad0bbd0b0d0bcd0b0d8a7d984d985d986d8aad8afd989d985d986d8aa
d8afd98ad8a7d8aad8a7d984d8b9d8b1d8a8d98ad8a9d8a7d984d985d988d8b6
d988d8b9d8a7d984d8a8d8b1d8a7d985d8acd8a7d984d985d988d8a7d982d8b9
d8a7d984d8b1d8b3d8a7d8a6d984d985d8b4d8a7d8b1d983d8a7d8aad8a7d984
d8a3d8b9d8b6d8a7d8a1d8a7d984d8b1d98ad8a7d8b6d8a9d8a7d984d8aad8b5
d985d98ad985d8a7d984d8a7d8b9d8b6d8a7d8a1d8a7d984d986d8aad8a7d8a6
d8acd8a7d984d8a3d984d8b9d8a7d8a8d8a7d984d8aad8b3d8acd98ad984d8a7
d984d8a3d982d8b3d8a7d985d8a7d984d8b6d8bad8b7d8a7d8aad8a7d984d981
d98ad8afd98ad988d8a7d984d8aad8b1d8add98ad8a8d8a7d984d8acd8afd98a
d8afd8a9d8a7d984d8aad8b9d984d98ad985d8a7d984d8a3d8aed8a8d8a7d8b1
d8a7d984d8a7d981d984d8a7d985d8a7d984d8a3d981d984d8a7d985d8a7d984
d8aad8a7d8b1d98ad8aed8a7d984d8aad982d986d98ad8a9d8a7d984d8a7d984
d8b9d8a7d8a8d8a7d984d8aed988d8a7d8b7d8b1d8a7d984d985d8acd8aad985
d8b9d8a7d984d8afd98ad983d988d8b1d8a7d984d8b3d98ad8a7d8add8a9d8b9
d8a8d8afd8a7d984d984d987d8a7d984d8aad8b1d8a8d98ad8a9d8a7d984d8b1
d988d8a7d8a8d8b7d8a7d984d8a3d8afd8a8d98ad8a9d8a7d984d8a7d8aed8a8
d8a7d8b1d8a7d984d985d8aad8add8afd8a9d8a7d984d8a7d8bad8a7d986d98a
3c21646f63747970652068746d6c3e3c21444f43545950452068746d6c3e7479
70653d22746578742f63737322746578742f6a61766173637269707474617267
65743d225f626c616e6b223c6f707467726f7570206c6162656c6e6f6e2d7374
61727265642d7372633c673a706c75736f6e652073697a65676f6f676c655f61
645f776964746873746f7050726f7061676174696f6e68696465557365724f70
74696f6e73646f63756d656e74456c656d656e7474656c6c467269656e64456d
61696c696e6465656443737266546f6b656e6d61785f746f705f6166735f6164
7376626d656e755f72656769737465726164644d6f6e73746572526561647967
6f6f676c655f636f6c6f725f6267657461726765744d65746154616773747765
65746d656d655f7374796c6576625f64697361626c655f616a61786261636b67
726f756e64436f6c6f7275726c5f70726f6a656374735f6a736f746865725f6c
616e675f6c6973745f736574416c6c6f774c696e6b65726448544d4c43726561
74654e6f64656e61766261725f70617373776f72646f6e446f6d526561647951
7565756573776561725f776f7264735f617272616e63686f72496e76656e746f
72796f70745f747261636b65724e616d6563617465676f72795f6c6576656c30
63617465676f72795f6c6576656c3163617465676f72795f6c6576656c326361
7465676f72795f6c6576656c3363617465676f72795f6c6576656c34e4b8ade6
96872028e7ae80e4bd9329726573706f6e736162696c6964616461646d696e69
737472616369c3b36e696e7465726e6163696f6e616c6573636f72726573706f
6e6469656e7465e0a489e0a4aae0a4afe0a58be0a497e0a4aae0a582e0a4b0e0
a58de0a4b5e0a4b9e0a4aee0a4bee0a4b0e0a587e0a4b2e0a58be0a497e0a58b
e0a482e0a49ae0a581e0a4a8e0a4bee0a4b5e0a4b2e0a587e0a495e0a4bfe0a4
a8e0a4b8e0a4b0e0a495e0a4bee0a4b0e0a4aae0a581e0a4b2e0a4bfe0a4b8e0
a496e0a58be0a49ce0a587e0a482e0a49ae0a4bee0a4b9e0a4bfe0a48fe0a4ad
e0a587e0a49ce0a587e0a482e0a4b6e0a4bee0a4aee0a4bfe0a4b2e0a4b9e0a4
aee0a4bee0a4b0e0a580e0a49ce0a4bee0a497e0a4b0e0a4a3e0a4ace0a4a8e0
a4bee0a4a8e0a587e0a495e0a581e0a4aee0a4bee0a4b0e0a4ace0a58de0a4b2
e0a589e0a497e0a4aee0a4bee0a4b2e0a4bfe0a495e0a4aee0a4b9e0a4bfe0a4
b2e0a4bee0a4aae0a583e0a4b7e0a58de0a4a0e0a4ace0a4a2e0a4bce0a4a4e0
a587e0a4ade0a4bee0a49ce0a4aae0a4bee0a495e0a58de0a4b2e0a4bfe0a495
e0a49fe0a58de0a4b0e0a587e0a4a8e0a496e0a4bfe0a4b2e0a4bee0a4abe0a4
a6e0a58ce0a4b0e0a4bee0a4a8e0a4aee0a4bee0a4aee0a4b2e0a587e0a4aee0
a4a4e0a4a6e0a4bee0a4a8e0a4ace0a4bee0a49ce0a4bee0a4b0e0a4b5e0a4bf
e0a495e0a4bee0a4b8e0a495e0a58de0a4afe0a58be0a482e0a49ae0a4bee0a4
b9e0a4a4e0a587e0a4aae0a4b9e0a581e0a481e0a49ae0a4ace0a4a4e0a4bee0
a4afe0a4bee0a4b8e0a482e0a4b5e0a4bee0a4a6e0a4a6e0a587e0a496e0a4a8
e0a587e0a4aae0a4bfe0a49be0a4b2e0a587e0a4b5e0a4bfe0a4b6e0a587e0a4
b7e0a4b0e0a4bee0a49ce0a58de0a4afe0a489e0a4a4e0a58de0a4a4e0a4b0e0
a4aee0a581e0a482e0a4ace0a488e0a4a6e0a58be0a4a8e0a58be0a482e0a489
e0a4aae0a495e0a4b0e0a4a3e0a4aae0a4a2e0a4bce0a587e0a482e0a4b8e0a5
8de0a4a5e0a4bfe0a4a4e0a4abe0a4bfe0a4b2e0a58de0a4aee0a4aee0a581e0
a496e0a58de0a4afe0a485e0a49ae0a58de0a49be0a4bee0a49be0a582e0a49f
e0a4a4e0a580e0a4b8e0a482e0a497e0a580e0a4a4e0a49ce0a4bee0a48fe0a4
97e0a4bee0a4b5e0a4bfe0a4ade0a4bee0a497e0a498e0a4a3e0a58de0a49fe0
a587e0a4a6e0a582e0a4b8e0a4b0e0a587e0a4a6e0a4bfe0a4a8e0a58be0a482
e0a4b9e0a4a4e0a58de0a4afe0a4bee0a4b8e0a587e0a495e0a58de0a4b8e0a4
97e0a4bee0a482e0a4a7e0a580e0a4b5e0a4bfe0a4b6e0a58de0a4b5e0a4b0e0
a4bee0a4a4e0a587e0a482e0a4a6e0a588e0a49fe0a58de0a4b8e0a4a8e0a495
e0a58de0a4b6e0a4bee0a4b8e0a4bee0a4aee0a4a8e0a587e0a485e0a4a6e0a4
bee0a4b2e0a4a4e0a4ace0a4bfe0a49ce0a4b2e0a580e0a4aae0a581e0a4b0e0
a582e0a4b7e0a4b9e0a4bfe0a482e0a4a6e0a580e0a4aee0a4bfe0a4a4e0a58d
e0a4b0e0a495e0a4b5e0a4bfe0a4a4e0a4bee0a4b0e0a581e0a4aae0a4afe0a5
87e0a4b8e0a58de0a4a5e0a4bee0a4a8e0a495e0a4b0e0a58be0a4a1e0a4bce0
a4aee0a581e0a495e0a58de0a4a4e0a4afe0a58be0a49ce0a4a8e0a4bee0a495
e0a583e0a4aae0a4afe0a4bee0a4aae0a58be0a4b8e0a58de0a49fe0a498e0a4
b0e0a587e0a4b2e0a582e0a495e0a4bee0a4b0e0a58de0a4afe0a4b5e0a4bfe0
a49ae0a4bee0a4b0e0a4b8e0a582e0a49ae0a4a8e0a4bee0a4aee0a582e0a4b2
e0a58de0a4afe0a4a6e0a587e0a496e0a587e0a482e0a4b9e0a4aee0a587e0a4
b6e0a4bee0a4b8e0a58de0a495e0a582e0a4b2e0a4aee0a588e0a482e0a4a8e0
a587e0a4a4e0a588e0a4afe0a4bee0a4b0e0a49ce0a4bfe0a4b8e0a495e0a587
617269612d6465736372696265646279746f6f6c7469702d706f736974696f6e
676d737461745f73686f775f74797065676f6f676c655f61645f636c69656e74
676f6f676c655f61645f68656967687467415f676f6f676c65416464536c6f74
676f6f676c655f6166735f7175657279696e69744175746f636f6d706c657465
6164644576656e744c697374656e65726a61737848696465426c6f636b547374
6a61737853617665436f6c6f7254737470726f6d7074696e6754657874426f78
676f6f676c655f636f6c6f725f75726c676f6f676c655f61645f666f726d6174
68436c69656e74466c61736856617273735f71657572795f6865616465725f77
67415f676f6f676c65416464417474725f73665f6173796e635f636f6e666967
75726c5f70726f6a656374735f6373736e657777696e646f77436f6d6d656e74
6172726179546f446174615461626c656574617267657442616e6e6572546865
6469737175735f73686f72746e616d6574776565746d656d655f736f75726365
726573706f6e736962696c697469657362616861736120496e646f6e65736961
656e676c697368202873696d706c6529ce95cebbcebbceb7cebdceb9cebaceac
d185d180d0b2d0b0d182d181d0bad0b8d0bad0bed0bcd0bfd0b0d0bdd0b8d0b8
d18fd0b2d0bbd18fd0b5d182d181d18fd094d0bed0b1d0b0d0b2d0b8d182d18c
d187d0b5d0bbd0bed0b2d0b5d0bad0b0d180d0b0d0b7d0b2d0b8d182d0b8d18f
d098d0bdd182d0b5d180d0bdd0b5d182d09ed182d0b2d0b5d182d0b8d182d18c
d0bdd0b0d0bfd180d0b8d0bcd0b5d180d0b8d0bdd182d0b5d180d0bdd0b5d182
d0bad0bed182d0bed180d0bed0b3d0bed181d182d180d0b0d0bdd0b8d186d18b
d0bad0b0d187d0b5d181d182d0b2d0b5d183d181d0bbd0bed0b2d0b8d18fd185
d0bfd180d0bed0b1d0bbd0b5d0bcd18bd0bfd0bed0bbd183d187d0b8d182d18c
d18fd0b2d0bbd18fd18ed182d181d18fd0bdd0b0d0b8d0b1d0bed0bbd0b5d0b5
d0bad0bed0bcd0bfd0b0d0bdd0b8d18fd0b2d0bdd0b8d0bcd0b0d0bdd0b8d0b5
d181d180d0b5d0b4d181d182d0b2d0b0d8a7d984d985d988d8a7d8b6d98ad8b9
d8a7d984d8b1d8a6d98ad8b3d98ad8a9d8a7d984d8a7d986d8aad982d8a7d984
d985d8b4d8a7d8b1d983d8a7d8aad983d8a7d984d8b3d98ad8a7d8b1d8a7d8aa
d8a7d984d985d983d8aad988d8a8d8a9d8a7d984d8b3d8b9d988d8afd98ad8a9
d8a7d8add8b5d8a7d8a6d98ad8a7d8aad8a7d984d8b9d8a7d984d985d98ad8a9
d8a7d984d8b5d988d8aad98ad8a7d8aad8a7d984d8a7d986d8aad8b1d986d8aa
d8a7d984d8aad8b5d8a7d985d98ad985d8a7d984d8a5d8b3d984d8a7d985d98a
d8a7d984d985d8b4d8a7d8b1d983d8a9d8a7d984d985d8b1d8a6d98ad8a7d8aa
7472616e736974696f6e616c2f2f454e2268746d6c342f6c6f6f73652e647464
223e7868746d6c312f4454442f7868746d6c31616c6c6f775472616e73706172
656e6379617269612d6175746f636f6d706c6574653c626c6f636b71756f7465
20636c617373616c6c6f777472616e73706172656e6379616c6c6f7773637269
70746163636573733c656e636c6f73757265206c656e67746867415f676f6f67
6c6546696c6c536c6f746973557365724f7074696f6e734f70656e676f6f676c
655f6166735f616470616765676f6f676c655f6166735f636c69656e74676c6f
62616c526567697374657255524c676574437573746f6d4164436f6e66696767
6f6f676c655f61645f6368616e6e656c735f71657572795f6865616465725f77
316765745f636f6d6d656e745f636f756e74696e746572636570744d65737361
676573676f6f676c655f636f6c6f725f6c696e6b676f6f676c655f636f6c6f72
5f7465787467415f676f6f676c6546657463684164736d656e755f335f646874
6d6c5f6e65773167657454696d657a6f6e654f66667365747365744f6e4c6f61
6443616c6c6261636b5f5f636865636b41644c6f636174696f6e6d616b655f61
6a61785f726571756573746e636f6465496d616765526573697a65726375725f
74656d706c6174655f6e616d656a6f62536561726368416464506172616d696e
6372656d656e74616c5f706978656c676f6f676c655f7461675f706172616d73
656e636f64696e673d227574662d38223f3e656e636f64696e673d225554462d
38223f3e636f6e74656e743d22746578742f68746d6c676f6f676c655f616673
5f6368616e6e656c656e636f6465555249436f6d706f6e656e746f6e72656164
7973746174656368616e67656f70656e496e666f57696e646f7748746d6c6c61
72677572615f696465616c5f70616765656e61626c654c696e6b547261636b69
6e6776616c6f725f70726f706f7263696f6e616c6c777274655f636c65616e75
705f776f7264616a6178436f6e74726f6c546f6f6c6b6974686173685f706f72
745f616c6c5f6c69737462617463684170706c79436865636b426f7862617365
5f70726963655f6164645f666565657461726765745365617263685175657279
6574617267657442616e6e65724964656e74736561726368436f6d706c657465
6455524c7265676973746572496e744d6573736167656f6e756e6c6f61645f66
756e6374696f6e7373686f774d657373616765436f6e74656e746f70656e6564
5f696e666f5f77696e646f776d796a666c617368333669306d6f64756c656578
7463616c5f636f6f6b69655f706174686574617267657442616e6e6572537479
6c65696e69744c616e677561676553656c656374657461726765744361744b65
79776f72647374656c65636f6d6d756e69636174696f6e736368617261637465
726973746963616c6c79d091d18ad0bbd0b3d0b0d180d181d0bad0b8d0b1d18a
d0bbd0b3d0b0d180d181d0bad0b8d0a4d0b5d0b4d0b5d180d0b0d186d0b8d0b8
d0bdd0b5d181d0bad0bed0bbd18cd0bad0bed181d0bed0bed0b1d189d0b5d0bd
d0b8d0b5d181d0bed0bed0b1d189d0b5d0bdd0b8d18fd0bfd180d0bed0b3d180
d0b0d0bcd0bcd18bd09ed182d0bfd180d0b0d0b2d0b8d182d18cd0b1d0b5d181
d0bfd0bbd0b0d182d0bdd0bed0bcd0b0d182d0b5d180d0b8d0b0d0bbd18bd0bf
d0bed0b7d0b2d0bed0bbd18fd0b5d182d0bfd0bed181d0bbd0b5d0b4d0bdd0b8
d0b5d180d0b0d0b7d0bbd0b8d187d0bdd18bd185d0bfd180d0bed0b4d183d0ba
d186d0b8d0b8d0bfd180d0bed0b3d180d0b0d0bcd0bcd0b0d0bfd0bed0bbd0bd
d0bed181d182d18cd18ed0bdd0b0d185d0bed0b4d0b8d182d181d18fd0b8d0b7
d0b1d180d0b0d0bdd0bdd0bed0b5d0bdd0b0d181d0b5d0bbd0b5d0bdd0b8d18f
d0b8d0b7d0bcd0b5d0bdd0b5d0bdd0b8d18fd0bad0b0d182d0b5d0b3d0bed180
d0b8d0b8d090d0bbd0b5d0bad181d0b0d0bdd0b4d180e0a4a6e0a58de0a4b5e0
a4bee0a4b0e0a4bee0a4aee0a588e0a4a8e0a581e0a485e0a4b2e0a4aae0a58d
e0a4b0e0a4a6e0a4bee0a4a8e0a4ade0a4bee0a4b0e0a4a4e0a580e0a4afe0a4
85e0a4a8e0a581e0a4a6e0a587e0a4b6e0a4b9e0a4bfe0a4a8e0a58de0a4a6e0
a580e0a487e0a482e0a4a1e0a4bfe0a4afe0a4bee0a4a6e0a4bfe0a4b2e0a58d
e0a4b2e0a580e0a485e0a4a7e0a4bfe0a495e0a4bee0a4b0e0a4b5e0a580e0a4
a1e0a4bfe0a4afe0a58be0a49ae0a4bfe0a49fe0a58de0a4a0e0a587e0a4b8e0
a4aee0a4bee0a49ae0a4bee0a4b0e0a49ce0a482e0a495e0a58de0a4b6e0a4a8
e0a4a6e0a581e0a4a8e0a4bfe0a4afe0a4bee0a4aae0a58de0a4b0e0a4afe0a5
8be0a497e0a485e0a4a8e0a581e0a4b8e0a4bee0a4b0e0a491e0a4a8e0a4b2e0
a4bee0a487e0a4a8e0a4aae0a4bee0a4b0e0a58de0a49fe0a580e0a4b6e0a4b0
e0a58de0a4a4e0a58be0a482e0a4b2e0a58be0a495e0a4b8e0a4ade0a4bee0a4
abe0a4bce0a58de0a4b2e0a588e0a4b6e0a4b6e0a4b0e0a58de0a4a4e0a587e0
a482e0a4aae0a58de0a4b0e0a4a6e0a587e0a4b6e0a4aae0a58de0a4b2e0a587
e0a4afe0a4b0e0a495e0a587e0a482e0a4a6e0a58de0a4b0e0a4b8e0a58de0a4
a5e0a4bfe0a4a4e0a4bfe0a489e0a4a4e0a58de0a4aae0a4bee0a4a6e0a489e0
a4a8e0a58de0a4b9e0a587e0a482e0a49ae0a4bfe0a49fe0a58de0a4a0e0a4be
e0a4afe0a4bee0a4a4e0a58de0a4b0e0a4bee0a49ce0a58de0a4afe0a4bee0a4
a6e0a4bee0a4aae0a581e0a4b0e0a4bee0a4a8e0a587e0a49ce0a58be0a4a1e0
a4bce0a587e0a482e0a485e0a4a8e0a581e0a4b5e0a4bee0a4a6e0a4b6e0a58d
e0a4b0e0a587e0a4a3e0a580e0a4b6e0a4bfe0a495e0a58de0a4b7e0a4bee0a4
b8e0a4b0e0a495e0a4bee0a4b0e0a580e0a4b8e0a482e0a497e0a58de0a4b0e0
a4b9e0a4aae0a4b0e0a4bfe0a4a3e0a4bee0a4aee0a4ace0a58de0a4b0e0a4be
e0a482e0a4a1e0a4ace0a49ae0a58de0a49ae0a58be0a482e0a489e0a4aae0a4
b2e0a4ace0a58de0a4a7e0a4aee0a482e0a4a4e0a58de0a4b0e0a580e0a4b8e0
a482e0a4aae0a4b0e0a58de0a495e0a489e0a4aee0a58de0a4aee0a580e0a4a6
e0a4aee0a4bee0a4a7e0a58de0a4afe0a4aee0a4b8e0a4b9e0a4bee0a4afe0a4
a4e0a4bee0a4b6e0a4ace0a58de0a4a6e0a58be0a482e0a4aee0a580e0a4a1e0
a4bfe0a4afe0a4bee0a486e0a488e0a4aae0a580e0a48fe0a4b2e0a4aee0a58b
e0a4ace0a4bee0a487e0a4b2e0a4b8e0a482e0a496e0a58de0a4afe0a4bee0a4
86e0a4aae0a4b0e0a587e0a4b6e0a4a8e0a485e0a4a8e0a581e0a4ace0a482e0
a4a7e0a4ace0a4bee0a49ce0a4bce0a4bee0a4b0e0a4a8e0a4b5e0a580e0a4a8
e0a4a4e0a4aee0a4aae0a58de0a4b0e0a4aee0a581e0a496e0a4aae0a58de0a4
b0e0a4b6e0a58de0a4a8e0a4aae0a4b0e0a4bfe0a4b5e0a4bee0a4b0e0a4a8e0
a581e0a495e0a4b8e0a4bee0a4a8e0a4b8e0a4aee0a4b0e0a58de0a4a5e0a4a8
e0a486e0a4afe0a58be0a49ce0a4bfe0a4a4e0a4b8e0a58be0a4aee0a4b5e0a4
bee0a4b0d8a7d984d985d8b4d8a7d8b1d983d8a7d8aad8a7d984d985d986d8aa
d8afd98ad8a7d8aad8a7d984d983d985d8a8d98ad988d8aad8b1d8a7d984d985
d8b4d8a7d987d8afd8a7d8aad8b9d8afd8afd8a7d984d8b2d988d8a7d8b1d8b9
d8afd8afd8a7d984d8b1d8afd988d8afd8a7d984d8a5d8b3d984d8a7d985d98a
d8a9d8a7d984d981d988d8aad988d8b4d988d8a8d8a7d984d985d8b3d8a7d8a8
d982d8a7d8aad8a7d984d985d8b9d984d988d985d8a7d8aad8a7d984d985d8b3
d984d8b3d984d8a7d8aad8a7d984d8acd8b1d8a7d981d98ad983d8b3d8a7d984
d8a7d8b3d984d8a7d985d98ad8a9d8a7d984d8a7d8aad8b5d8a7d984d8a7d8aa
7075626c696320222d2f2f7733632f2f6474642d7472616e736974696f6e616c
2e647464223e3c68746d6c3e3c686561643e3c7469746c653e676f6f676c655f
6166735f7172795f63747874676f6f676c655f636f6c6f725f626f7264657263
7573746f6d536561726368436f6e74726f6c656e61626c6553696e676c655265
7175657374637573746f6d5365617263684f7074696f6e733c3f786d6c207665
7273696f6e3d22312e3022203c696e70757420747970653d2268696464656e22
676574456c656d656e747342795461674e616d657772697465496e6c696e6550
6c6163656d656e7470705f67656d6975735f6964656e746966696572636f6f6b
6965416c657274446973706c61796564676f6f676c655f636f6e76657273696f
6e5f69646e61766261725f70617373776f72645f68696e746e61766261725f75
7365726e616d655f626c75726f7074696f6e616c5a6970436f756e7472696573
77696e646f775f6c6f636174696f6e5f68726566676f6f676c655f637573746f
6d5f706172616d736a626d5f6c61737473686f7274656e656475726c636f6c6c
656374696f6e4669656c6473496e666f706f7274756775c3aa7320284575726f
70657529d0a3d0bad180d0b0d197d0bdd181d18cd0bad0b0d183d0bad180d0b0
d197d0bdd181d18cd0bad0b0d0a0d0bed181d181d0b8d0b9d181d0bad0bed0b9
d0bcd0b0d182d0b5d180d0b8d0b0d0bbd0bed0b2d0b8d0bdd184d0bed180d0bc
d0b0d186d0b8d0b8d183d0bfd180d0b0d0b2d0bbd0b5d0bdd0b8d18fd0bdd0b5
d0bed0b1d185d0bed0b4d0b8d0bcd0bed0b8d0bdd184d0bed180d0bcd0b0d186
d0b8d18fd098d0bdd184d0bed180d0bcd0b0d186d0b8d18fd0a0d0b5d181d0bf
d183d0b1d0bbd0b8d0bad0b8d0bad0bed0bbd0b8d187d0b5d181d182d0b2d0be
d0b8d0bdd184d0bed180d0bcd0b0d186d0b8d18ed182d0b5d180d180d0b8d182
d0bed180d0b8d0b8d0b4d0bed181d182d0b0d182d0bed187d0bdd0bed8a7d984
d985d8aad988d8a7d8acd8afd988d986d8a7d984d8a7d8b4d8aad8b1d8a7d983
d8a7d8aad8a7d984d8a7d982d8aad8b1d8a7d8add8a7d8aa7365744f70656e53
656374696f6e73436f6f6b69656e61766261725f757365726e616d655f666f63
75736f75746c696e655768696c65416e696d6174696e67e0b8a0e0b8b2e0b8a9
e0b8b2e0b984e0b897e0b8a2e183a5e18390e183a0e18397e183a3e1839ae183
98e6ada3e9ab94e4b8ade696872028e7b981e9ab9429e0a4a8e0a4bfe0a4b0e0
a58de0a4a6e0a587e0a4b6e0a4a1e0a4bee0a489e0a4a8e0a4b2e0a58be0a4a1
e0a495e0a58de0a4b7e0a587e0a4a4e0a58de0a4b0e0a49ce0a4bee0a4a8e0a4
95e0a4bee0a4b0e0a580e0a4b8e0a482e0a4ace0a482e0a4a7e0a4bfe0a4a4e0
a4b8e0a58de0a4a5e0a4bee0a4aae0a4a8e0a4bee0a4b8e0a58de0a4b5e0a580
e0a495e0a4bee0a4b0e0a4b8e0a482e0a4b8e0a58de0a495e0a4b0e0a4a3e0a4
b8e0a4bee0a4aee0a497e0a58de0a4b0e0a580e0a49ae0a4bfe0a49fe0a58de0
a4a0e0a58be0a482e0a4b5e0a4bfe0a49ce0a58de0a49ee0a4bee0a4a8e0a485
e0a4aee0a587e0a4b0e0a4bfe0a495e0a4bee0a4b5e0a4bfe0a4ade0a4bfe0a4
a8e0a58de0a4a8e0a497e0a4bee0a4a1e0a4bfe0a4afe0a4bee0a481e0a495e0
a58de0a4afe0a58be0a482e0a495e0a4bfe0a4b8e0a581e0a4b0e0a495e0a58d
e0a4b7e0a4bee0a4aae0a4b9e0a581e0a481e0a49ae0a4a4e0a580e0a4aae0a5
8de0a4b0e0a4ace0a482e0a4a7e0a4a8e0a49fe0a4bfe0a4aae0a58de0a4aae0
a4a3e0a580e0a495e0a58de0a4b0e0a4bfe0a495e0a587e0a49fe0a4aae0a58d
e0a4b0e0a4bee0a4b0e0a482e0a4ade0a4aae0a58de0a4b0e0a4bee0a4aae0a5
8de0a4a4e0a4aee0a4bee0a4b2e0a4bfe0a495e0a58be0a482e0a4b0e0a4abe0
a4bce0a58de0a4a4e0a4bee0a4b0e0a4a8e0a4bfe0a4b0e0a58de0a4aee0a4be
e0a4a3e0a4b2e0a4bfe0a4aee0a4bfe0a49fe0a587e0a4a122687474703a2f2f
7777772e77332e6f72672f54522f3c6c696e6b2072656c3d227374796c657368
6565742270656e64696e675f616e616c79746963735f76617273735f71657572
795f6865616465725f775f6f626a5f31735f71657572795f6865616465725f77
5f6f626a5f3270705f67656d6975735f686974636f6c6c6563746f72676f6f67
6c655f616e616c79746963735f7561636374637265617465446f63756d656e74
467261676d656e74676574456c656d656e74734279436c6173734e616d65706f
7274756775c3aa732028646f2042726173696c29d0bed180d0b3d0b0d0bdd0b8
d0b7d0b0d186d0b8d0b8d0b2d0bed0b7d0bcd0bed0b6d0bdd0bed181d182d18c
d0bed0b1d180d0b0d0b7d0bed0b2d0b0d0bdd0b8d18fd180d0b5d0b3d0b8d181
d182d180d0b0d186d0b8d0b8d0b2d0bed0b7d0bcd0bed0b6d0bdd0bed181d182
d0b8d0bed0b1d18fd0b7d0b0d182d0b5d0bbd18cd0bdd0b06d6f7573655f6f76
65725f7374617475735f6172726179676f6f676c655f636f6e76657273696f6e
5f6c6162656c7868746d6c31312f4454442f7868746d6c31312e647464226874
74702d65717569763d22436f6e74656e742d54797065d0b4d0b5d18fd182d0b5
d0bbd18cd0bdd0bed181d182d0b8d181d0bed0bed182d0b2d0b5d182d181d182
d0b2d0b8d0b8d0bfd180d0bed0b8d0b7d0b2d0bed0b4d181d182d0b2d0b0d0b1
d0b5d0b7d0bed0bfd0b0d181d0bdd0bed181d182d0b8e0a4aae0a581e0a4b8e0
a58de0a4a4e0a4bfe0a495e0a4bee0a495e0a4bee0a482e0a497e0a58de0a4b0
e0a587e0a4b8e0a489e0a4a8e0a58de0a4b9e0a58be0a482e0a4a8e0a587e0a4
b5e0a4bfe0a4a7e0a4bee0a4a8e0a4b8e0a4ade0a4bee0a4abe0a4bfe0a495e0
a58de0a4b8e0a4bfe0a482e0a497e0a4b8e0a581e0a4b0e0a495e0a58de0a4b7
e0a4bfe0a4a4e0a495e0a589e0a4aae0a580e0a4b0e0a4bee0a487e0a49fe0a4
b5e0a4bfe0a49ce0a58de0a49ee0a4bee0a4aae0a4a8e0a495e0a4bee0a4b0e0
a58de0a4b0e0a4b5e0a4bee0a488e0a4b8e0a495e0a58de0a4b0e0a4bfe0a4af
e0a4a4e0a4be
The number of words for each length is given by the following bit-
depth array:
NDBITS := 0, 0, 0, 9, 10, 10, 11, 9, 10, 9,
9, 8, 9, 6, 7, 7, 6, 5, 7, 3,
5, 5, 4, 1, 4,
Appendix B. List of word transformations
ID Prefix Transform Suffix
-- ------ --------- ------
0 "" Identity ""
1 "" Identity " "
2 "" Identity "\">"
3 "" UppercaseFirst ""
4 "" Identity "\""
5 "" Identity "."
6 "" Identity "=\""
7 "" UppercaseFirst " "
8 " " Identity "=\""
9 " " Identity " "
10 "" Identity ":"
11 " " Identity ""
12 "" Identity "\n"
13 "" Identity "("
14 "" UppercaseAll ""
15 "." Identity "("
16 "" Identity "'"
17 "" UppercaseFirst "\""
18 " " UppercaseFirst " "
19 "" Omit3 ""
20 "" Omit4 ""
21 "." Identity ""
22 "" Omit1 ""
23 "" Omit2 ""
24 "" UppercaseFirst "\">"
25 "" Omit5 ""
26 "" UppercaseAll " "
27 " " UppercaseFirst ""
28 "" Identity ", "
29 "" UppercaseFirst "("
30 "" Identity "\n\t"
31 "" UppercaseFirst "'"
32 "." Identity " "
33 " " UppercaseAll " "
34 "" Identity "='"
35 "" UppercaseFirst "."
36 " " Identity "."
37 " " Identity ", "
38 " " UppercaseAll ""
39 "" Omit6 ""
40 "" Omit9 ""
41 "" UppercaseAll "\""
42 "" Identity " the "
43 "" Identity " in "
44 "" Identity " of "
45 "" Identity " to "
46 "" Identity " and "
47 "" Identity " is "
48 "" Identity " on "
49 "" Identity " by "
50 "" Identity " for "
51 "" Identity " with "
52 "" Identity " from "
53 "" Identity " as "
54 "" Identity " at "
55 "" Identity "er "
56 " " Identity "='"
57 "" Identity " a "
58 "" Omit7 ""
59 "" Omit8 ""
60 " " Identity "("
61 " " Identity ". "
62 "" Identity ". "
63 "" Identity ","
64 "" Omit1 "ing "
65 "" Identity "ed "
66 "" UppercaseFirst ", "
67 "" UppercaseAll "."
68 "" UppercaseAll "=\""
69 "" UppercaseAll ", "
70 "" UppercaseAll "\">"
71 " " UppercaseFirst "."
72 " " UppercaseAll "=\""
73 " " UppercaseFirst ", "
74 "" UppercaseAll "'"
75 "" UppercaseFirst "=\""
76 " " Identity ","
77 "" Identity " that "
78 "" UppercaseFirst "='"
79 "" UppercaseFirst ". "
80 "" UppercaseFirst ","
81 "" Identity ". The "
82 "\xc2\xa0" Identity ""
83 " " UppercaseFirst ". "
84 "" UppercaseAll ","
85 "" UppercaseAll "("
86 " " UppercaseAll "='"
87 "" Identity "]"
88 "" UppercaseAll "='"
89 " " UppercaseAll "."
90 "" UppercaseAll ". "
91 " " UppercaseFirst "=\""
92 " " UppercaseAll ". "
93 " " UppercaseFirst ","
94 " " UppercaseAll ", "
95 "" Identity "ize "
96 " " UppercaseFirst "='"
97 "" Identity "est "
98 "" Identity ". This "