/* SPDX-License-Identifier: MIT
* unescape_html: decode every HTML character reference in UTF-8 text, the way
* Python's html.unescape does, except that references to control characters and
* noncharacters (such as or ) decode to that code point instead of
* being deleted.
*
* One self-contained C++ file, no standard library. The entity table (Python's
* html.entities.html5, 2,231 names, digest-pinned) is injected at the @@TABLE@@
* marker by gen_table_cpp.py.
*
* Memory layout (20 pages = 1,310,720 bytes): one buffer of 1,258,304 bytes.
* Output is written from buffer[0]; input is read from buffer + GAP, where
* GAP = 209,728. The output can outgrow the consumed input by at most
* floor(1 MiB / 5) = 209,715 bytes (worst case ≫⃒, 5 bytes -> 6), so the
* write pointer never reaches unread input. Plus table and 16 KiB stack.
*
* Build:
* python3 gen_table_cpp.py unescape.cpp build/unescape_full.cpp
* zig c++ -target wasm32-freestanding -O2 -fno-exceptions -fno-rtti -nostdlib \
* -Wl,--no-entry -Wl,--export-memory -Wl,-z,stack-size=16384 \
* -Wl,--initial-memory=1310720 -Wl,--max-memory=1310720 \
* -Wl,--export=input_ptr -Wl,--export=input_utf8_cap \
* -Wl,--export=output_utf8_cap -Wl,--export=render \
* -Wl,--strip-all build/unescape_full.cpp -o unescape.wasm
*/
#include
static constexpr uint32_t GAP = 209728;
static constexpr uint32_t INPUT_CAP = 1048576;
/* floor(INPUT_CAP/5)*6 + INPUT_CAP%5: the proven maximum output size. */
static constexpr uint32_t OUTPUT_CAP = 1258291;
static unsigned char buffer[GAP + INPUT_CAP];
static uint32_t out_len = 0;
extern "C" uint32_t input_ptr() {
return (uint32_t)(buffer + GAP);
}
extern "C" uint32_t input_utf8_cap() {
return INPUT_CAP;
}
extern "C" uint32_t output_utf8_cap() {
return OUTPUT_CAP;
}
/* Windows-1252 remapping for references to 0x80-0x9F; 0 means keep the code point. */
static const uint32_t c1[32] = {0x20AC, 0, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021, 0x02C6,
0x2030, 0x0160, 0x2039, 0x0152, 0, 0x017D, 0, 0, 0x2018, 0x2019,
0x201C, 0x201D, 0x2022, 0x2013, 0x2014, 0x02DC, 0x2122, 0x0161,
0x203A, 0x0153, 0, 0x017E, 0x0178};
static inline void emit_byte(uint8_t b) {
buffer[out_len++] = b;
}
static inline void emit(const unsigned char* p, uint32_t n) {
for (uint32_t k = 0; k < n; k++) buffer[out_len++] = p[k];
}
static void emit_code_point(uint32_t cp) {
if (cp < 0x80) {
emit_byte((uint8_t)cp);
} else if (cp < 0x800) {
emit_byte((uint8_t)(0xC0 | (cp >> 6)));
emit_byte((uint8_t)(0x80 | (cp & 0x3F)));
} else if (cp < 0x10000) {
emit_byte((uint8_t)(0xE0 | (cp >> 12)));
emit_byte((uint8_t)(0x80 | ((cp >> 6) & 0x3F)));
emit_byte((uint8_t)(0x80 | (cp & 0x3F)));
} else {
emit_byte((uint8_t)(0xF0 | (cp >> 18)));
emit_byte((uint8_t)(0x80 | ((cp >> 12) & 0x3F)));
emit_byte((uint8_t)(0x80 | ((cp >> 6) & 0x3F)));
emit_byte((uint8_t)(0x80 | (cp & 0x3F)));
}
}
/* The reference's named character class: anything but \t \n \f space < & # ;. */
static inline bool name_char(uint8_t c) {
return c != '\t' && c != '\n' && c != 0x0C && c != ' ' && c != '<' && c != '&' && c != '#' && c != ';';
}
static const unsigned char table_blob[] = {
65, 69, 108, 105, 103, 195, 134, 65, 69, 108, 105, 103, 59, 195, 134, 65,
77, 80, 38, 65, 77, 80, 59, 38, 65, 97, 99, 117, 116, 101, 195, 129,
65, 97, 99, 117, 116, 101, 59, 195, 129, 65, 98, 114, 101, 118, 101, 59,
196, 130, 65, 99, 105, 114, 99, 195, 130, 65, 99, 105, 114, 99, 59, 195,
130, 65, 99, 121, 59, 208, 144, 65, 102, 114, 59, 240, 157, 148, 132, 65,
103, 114, 97, 118, 101, 195, 128, 65, 103, 114, 97, 118, 101, 59, 195, 128,
65, 108, 112, 104, 97, 59, 206, 145, 65, 109, 97, 99, 114, 59, 196, 128,
65, 110, 100, 59, 226, 169, 147, 65, 111, 103, 111, 110, 59, 196, 132, 65,
111, 112, 102, 59, 240, 157, 148, 184, 65, 112, 112, 108, 121, 70, 117, 110,
99, 116, 105, 111, 110, 59, 226, 129, 161, 65, 114, 105, 110, 103, 195, 133,
65, 114, 105, 110, 103, 59, 195, 133, 65, 115, 99, 114, 59, 240, 157, 146,
156, 65, 115, 115, 105, 103, 110, 59, 226, 137, 148, 65, 116, 105, 108, 100,
101, 195, 131, 65, 116, 105, 108, 100, 101, 59, 195, 131, 65, 117, 109, 108,
195, 132, 65, 117, 109, 108, 59, 195, 132, 66, 97, 99, 107, 115, 108, 97,
115, 104, 59, 226, 136, 150, 66, 97, 114, 118, 59, 226, 171, 167, 66, 97,
114, 119, 101, 100, 59, 226, 140, 134, 66, 99, 121, 59, 208, 145, 66, 101,
99, 97, 117, 115, 101, 59, 226, 136, 181, 66, 101, 114, 110, 111, 117, 108,
108, 105, 115, 59, 226, 132, 172, 66, 101, 116, 97, 59, 206, 146, 66, 102,
114, 59, 240, 157, 148, 133, 66, 111, 112, 102, 59, 240, 157, 148, 185, 66,
114, 101, 118, 101, 59, 203, 152, 66, 115, 99, 114, 59, 226, 132, 172, 66,
117, 109, 112, 101, 113, 59, 226, 137, 142, 67, 72, 99, 121, 59, 208, 167,
67, 79, 80, 89, 194, 169, 67, 79, 80, 89, 59, 194, 169, 67, 97, 99,
117, 116, 101, 59, 196, 134, 67, 97, 112, 59, 226, 139, 146, 67, 97, 112,
105, 116, 97, 108, 68, 105, 102, 102, 101, 114, 101, 110, 116, 105, 97, 108,
68, 59, 226, 133, 133, 67, 97, 121, 108, 101, 121, 115, 59, 226, 132, 173,
67, 99, 97, 114, 111, 110, 59, 196, 140, 67, 99, 101, 100, 105, 108, 195,
135, 67, 99, 101, 100, 105, 108, 59, 195, 135, 67, 99, 105, 114, 99, 59,
196, 136, 67, 99, 111, 110, 105, 110, 116, 59, 226, 136, 176, 67, 100, 111,
116, 59, 196, 138, 67, 101, 100, 105, 108, 108, 97, 59, 194, 184, 67, 101,
110, 116, 101, 114, 68, 111, 116, 59, 194, 183, 67, 102, 114, 59, 226, 132,
173, 67, 104, 105, 59, 206, 167, 67, 105, 114, 99, 108, 101, 68, 111, 116,
59, 226, 138, 153, 67, 105, 114, 99, 108, 101, 77, 105, 110, 117, 115, 59,
226, 138, 150, 67, 105, 114, 99, 108, 101, 80, 108, 117, 115, 59, 226, 138,
149, 67, 105, 114, 99, 108, 101, 84, 105, 109, 101, 115, 59, 226, 138, 151,
67, 108, 111, 99, 107, 119, 105, 115, 101, 67, 111, 110, 116, 111, 117, 114,
73, 110, 116, 101, 103, 114, 97, 108, 59, 226, 136, 178, 67, 108, 111, 115,
101, 67, 117, 114, 108, 121, 68, 111, 117, 98, 108, 101, 81, 117, 111, 116,
101, 59, 226, 128, 157, 67, 108, 111, 115, 101, 67, 117, 114, 108, 121, 81,
117, 111, 116, 101, 59, 226, 128, 153, 67, 111, 108, 111, 110, 59, 226, 136,
183, 67, 111, 108, 111, 110, 101, 59, 226, 169, 180, 67, 111, 110, 103, 114,
117, 101, 110, 116, 59, 226, 137, 161, 67, 111, 110, 105, 110, 116, 59, 226,
136, 175, 67, 111, 110, 116, 111, 117, 114, 73, 110, 116, 101, 103, 114, 97,
108, 59, 226, 136, 174, 67, 111, 112, 102, 59, 226, 132, 130, 67, 111, 112,
114, 111, 100, 117, 99, 116, 59, 226, 136, 144, 67, 111, 117, 110, 116, 101,
114, 67, 108, 111, 99, 107, 119, 105, 115, 101, 67, 111, 110, 116, 111, 117,
114, 73, 110, 116, 101, 103, 114, 97, 108, 59, 226, 136, 179, 67, 114, 111,
115, 115, 59, 226, 168, 175, 67, 115, 99, 114, 59, 240, 157, 146, 158, 67,
117, 112, 59, 226, 139, 147, 67, 117, 112, 67, 97, 112, 59, 226, 137, 141,
68, 68, 59, 226, 133, 133, 68, 68, 111, 116, 114, 97, 104, 100, 59, 226,
164, 145, 68, 74, 99, 121, 59, 208, 130, 68, 83, 99, 121, 59, 208, 133,
68, 90, 99, 121, 59, 208, 143, 68, 97, 103, 103, 101, 114, 59, 226, 128,
161, 68, 97, 114, 114, 59, 226, 134, 161, 68, 97, 115, 104, 118, 59, 226,
171, 164, 68, 99, 97, 114, 111, 110, 59, 196, 142, 68, 99, 121, 59, 208,
148, 68, 101, 108, 59, 226, 136, 135, 68, 101, 108, 116, 97, 59, 206, 148,
68, 102, 114, 59, 240, 157, 148, 135, 68, 105, 97, 99, 114, 105, 116, 105,
99, 97, 108, 65, 99, 117, 116, 101, 59, 194, 180, 68, 105, 97, 99, 114,
105, 116, 105, 99, 97, 108, 68, 111, 116, 59, 203, 153, 68, 105, 97, 99,
114, 105, 116, 105, 99, 97, 108, 68, 111, 117, 98, 108, 101, 65, 99, 117,
116, 101, 59, 203, 157, 68, 105, 97, 99, 114, 105, 116, 105, 99, 97, 108,
71, 114, 97, 118, 101, 59, 96, 68, 105, 97, 99, 114, 105, 116, 105, 99,
97, 108, 84, 105, 108, 100, 101, 59, 203, 156, 68, 105, 97, 109, 111, 110,
100, 59, 226, 139, 132, 68, 105, 102, 102, 101, 114, 101, 110, 116, 105, 97,
108, 68, 59, 226, 133, 134, 68, 111, 112, 102, 59, 240, 157, 148, 187, 68,
111, 116, 59, 194, 168, 68, 111, 116, 68, 111, 116, 59, 226, 131, 156, 68,
111, 116, 69, 113, 117, 97, 108, 59, 226, 137, 144, 68, 111, 117, 98, 108,
101, 67, 111, 110, 116, 111, 117, 114, 73, 110, 116, 101, 103, 114, 97, 108,
59, 226, 136, 175, 68, 111, 117, 98, 108, 101, 68, 111, 116, 59, 194, 168,
68, 111, 117, 98, 108, 101, 68, 111, 119, 110, 65, 114, 114, 111, 119, 59,
226, 135, 147, 68, 111, 117, 98, 108, 101, 76, 101, 102, 116, 65, 114, 114,
111, 119, 59, 226, 135, 144, 68, 111, 117, 98, 108, 101, 76, 101, 102, 116,
82, 105, 103, 104, 116, 65, 114, 114, 111, 119, 59, 226, 135, 148, 68, 111,
117, 98, 108, 101, 76, 101, 102, 116, 84, 101, 101, 59, 226, 171, 164, 68,
111, 117, 98, 108, 101, 76, 111, 110, 103, 76, 101, 102, 116, 65, 114, 114,
111, 119, 59, 226, 159, 184, 68, 111, 117, 98, 108, 101, 76, 111, 110, 103,
76, 101, 102, 116, 82, 105, 103, 104, 116, 65, 114, 114, 111, 119, 59, 226,
159, 186, 68, 111, 117, 98, 108, 101, 76, 111, 110, 103, 82, 105, 103, 104,
116, 65, 114, 114, 111, 119, 59, 226, 159, 185, 68, 111, 117, 98, 108, 101,
82, 105, 103, 104, 116, 65, 114, 114, 111, 119, 59, 226, 135, 146, 68, 111,
117, 98, 108, 101, 82, 105, 103, 104, 116, 84, 101, 101, 59, 226, 138, 168,
68, 111, 117, 98, 108, 101, 85, 112, 65, 114, 114, 111, 119, 59, 226, 135,
145, 68, 111, 117, 98, 108, 101, 85, 112, 68, 111, 119, 110, 65, 114, 114,
111, 119, 59, 226, 135, 149, 68, 111, 117, 98, 108, 101, 86, 101, 114, 116,
105, 99, 97, 108, 66, 97, 114, 59, 226, 136, 165, 68, 111, 119, 110, 65,
114, 114, 111, 119, 59, 226, 134, 147, 68, 111, 119, 110, 65, 114, 114, 111,
119, 66, 97, 114, 59, 226, 164, 147, 68, 111, 119, 110, 65, 114, 114, 111,
119, 85, 112, 65, 114, 114, 111, 119, 59, 226, 135, 181, 68, 111, 119, 110,
66, 114, 101, 118, 101, 59, 204, 145, 68, 111, 119, 110, 76, 101, 102, 116,
82, 105, 103, 104, 116, 86, 101, 99, 116, 111, 114, 59, 226, 165, 144, 68,
111, 119, 110, 76, 101, 102, 116, 84, 101, 101, 86, 101, 99, 116, 111, 114,
59, 226, 165, 158, 68, 111, 119, 110, 76, 101, 102, 116, 86, 101, 99, 116,
111, 114, 59, 226, 134, 189, 68, 111, 119, 110, 76, 101, 102, 116, 86, 101,
99, 116, 111, 114, 66, 97, 114, 59, 226, 165, 150, 68, 111, 119, 110, 82,
105, 103, 104, 116, 84, 101, 101, 86, 101, 99, 116, 111, 114, 59, 226, 165,
159, 68, 111, 119, 110, 82, 105, 103, 104, 116, 86, 101, 99, 116, 111, 114,
59, 226, 135, 129, 68, 111, 119, 110, 82, 105, 103, 104, 116, 86, 101, 99,
116, 111, 114, 66, 97, 114, 59, 226, 165, 151, 68, 111, 119, 110, 84, 101,
101, 59, 226, 138, 164, 68, 111, 119, 110, 84, 101, 101, 65, 114, 114, 111,
119, 59, 226, 134, 167, 68, 111, 119, 110, 97, 114, 114, 111, 119, 59, 226,
135, 147, 68, 115, 99, 114, 59, 240, 157, 146, 159, 68, 115, 116, 114, 111,
107, 59, 196, 144, 69, 78, 71, 59, 197, 138, 69, 84, 72, 195, 144, 69,
84, 72, 59, 195, 144, 69, 97, 99, 117, 116, 101, 195, 137, 69, 97, 99,
117, 116, 101, 59, 195, 137, 69, 99, 97, 114, 111, 110, 59, 196, 154, 69,
99, 105, 114, 99, 195, 138, 69, 99, 105, 114, 99, 59, 195, 138, 69, 99,
121, 59, 208, 173, 69, 100, 111, 116, 59, 196, 150, 69, 102, 114, 59, 240,
157, 148, 136, 69, 103, 114, 97, 118, 101, 195, 136, 69, 103, 114, 97, 118,
101, 59, 195, 136, 69, 108, 101, 109, 101, 110, 116, 59, 226, 136, 136, 69,
109, 97, 99, 114, 59, 196, 146, 69, 109, 112, 116, 121, 83, 109, 97, 108,
108, 83, 113, 117, 97, 114, 101, 59, 226, 151, 187, 69, 109, 112, 116, 121,
86, 101, 114, 121, 83, 109, 97, 108, 108, 83, 113, 117, 97, 114, 101, 59,
226, 150, 171, 69, 111, 103, 111, 110, 59, 196, 152, 69, 111, 112, 102, 59,
240, 157, 148, 188, 69, 112, 115, 105, 108, 111, 110, 59, 206, 149, 69, 113,
117, 97, 108, 59, 226, 169, 181, 69, 113, 117, 97, 108, 84, 105, 108, 100,
101, 59, 226, 137, 130, 69, 113, 117, 105, 108, 105, 98, 114, 105, 117, 109,
59, 226, 135, 140, 69, 115, 99, 114, 59, 226, 132, 176, 69, 115, 105, 109,
59, 226, 169, 179, 69, 116, 97, 59, 206, 151, 69, 117, 109, 108, 195, 139,
69, 117, 109, 108, 59, 195, 139, 69, 120, 105, 115, 116, 115, 59, 226, 136,
131, 69, 120, 112, 111, 110, 101, 110, 116, 105, 97, 108, 69, 59, 226, 133,
135, 70, 99, 121, 59, 208, 164, 70, 102, 114, 59, 240, 157, 148, 137, 70,
105, 108, 108, 101, 100, 83, 109, 97, 108, 108, 83, 113, 117, 97, 114, 101,
59, 226, 151, 188, 70, 105, 108, 108, 101, 100, 86, 101, 114, 121, 83, 109,
97, 108, 108, 83, 113, 117, 97, 114, 101, 59, 226, 150, 170, 70, 111, 112,
102, 59, 240, 157, 148, 189, 70, 111, 114, 65, 108, 108, 59, 226, 136, 128,
70, 111, 117, 114, 105, 101, 114, 116, 114, 102, 59, 226, 132, 177, 70, 115,
99, 114, 59, 226, 132, 177, 71, 74, 99, 121, 59, 208, 131, 71, 84, 62,
71, 84, 59, 62, 71, 97, 109, 109, 97, 59, 206, 147, 71, 97, 109, 109,
97, 100, 59, 207, 156, 71, 98, 114, 101, 118, 101, 59, 196, 158, 71, 99,
101, 100, 105, 108, 59, 196, 162, 71, 99, 105, 114, 99, 59, 196, 156, 71,
99, 121, 59, 208, 147, 71, 100, 111, 116, 59, 196, 160, 71, 102, 114, 59,
240, 157, 148, 138, 71, 103, 59, 226, 139, 153, 71, 111, 112, 102, 59, 240,
157, 148, 190, 71, 114, 101, 97, 116, 101, 114, 69, 113, 117, 97, 108, 59,
226, 137, 165, 71, 114, 101, 97, 116, 101, 114, 69, 113, 117, 97, 108, 76,
101, 115, 115, 59, 226, 139, 155, 71, 114, 101, 97, 116, 101, 114, 70, 117,
108, 108, 69, 113, 117, 97, 108, 59, 226, 137, 167, 71, 114, 101, 97, 116,
101, 114, 71, 114, 101, 97, 116, 101, 114, 59, 226, 170, 162, 71, 114, 101,
97, 116, 101, 114, 76, 101, 115, 115, 59, 226, 137, 183, 71, 114, 101, 97,
116, 101, 114, 83, 108, 97, 110, 116, 69, 113, 117, 97, 108, 59, 226, 169,
190, 71, 114, 101, 97, 116, 101, 114, 84, 105, 108, 100, 101, 59, 226, 137,
179, 71, 115, 99, 114, 59, 240, 157, 146, 162, 71, 116, 59, 226, 137, 171,
72, 65, 82, 68, 99, 121, 59, 208, 170, 72, 97, 99, 101, 107, 59, 203,
135, 72, 97, 116, 59, 94, 72, 99, 105, 114, 99, 59, 196, 164, 72, 102,
114, 59, 226, 132, 140, 72, 105, 108, 98, 101, 114, 116, 83, 112, 97, 99,
101, 59, 226, 132, 139, 72, 111, 112, 102, 59, 226, 132, 141, 72, 111, 114,
105, 122, 111, 110, 116, 97, 108, 76, 105, 110, 101, 59, 226, 148, 128, 72,
115, 99, 114, 59, 226, 132, 139, 72, 115, 116, 114, 111, 107, 59, 196, 166,
72, 117, 109, 112, 68, 111, 119, 110, 72, 117, 109, 112, 59, 226, 137, 142,
72, 117, 109, 112, 69, 113, 117, 97, 108, 59, 226, 137, 143, 73, 69, 99,
121, 59, 208, 149, 73, 74, 108, 105, 103, 59, 196, 178, 73, 79, 99, 121,
59, 208, 129, 73, 97, 99, 117, 116, 101, 195, 141, 73, 97, 99, 117, 116,
101, 59, 195, 141, 73, 99, 105, 114, 99, 195, 142, 73, 99, 105, 114, 99,
59, 195, 142, 73, 99, 121, 59, 208, 152, 73, 100, 111, 116, 59, 196, 176,
73, 102, 114, 59, 226, 132, 145, 73, 103, 114, 97, 118, 101, 195, 140, 73,
103, 114, 97, 118, 101, 59, 195, 140, 73, 109, 59, 226, 132, 145, 73, 109,
97, 99, 114, 59, 196, 170, 73, 109, 97, 103, 105, 110, 97, 114, 121, 73,
59, 226, 133, 136, 73, 109, 112, 108, 105, 101, 115, 59, 226, 135, 146, 73,
110, 116, 59, 226, 136, 172, 73, 110, 116, 101, 103, 114, 97, 108, 59, 226,
136, 171, 73, 110, 116, 101, 114, 115, 101, 99, 116, 105, 111, 110, 59, 226,
139, 130, 73, 110, 118, 105, 115, 105, 98, 108, 101, 67, 111, 109, 109, 97,
59, 226, 129, 163, 73, 110, 118, 105, 115, 105, 98, 108, 101, 84, 105, 109,
101, 115, 59, 226, 129, 162, 73, 111, 103, 111, 110, 59, 196, 174, 73, 111,
112, 102, 59, 240, 157, 149, 128, 73, 111, 116, 97, 59, 206, 153, 73, 115,
99, 114, 59, 226, 132, 144, 73, 116, 105, 108, 100, 101, 59, 196, 168, 73,
117, 107, 99, 121, 59, 208, 134, 73, 117, 109, 108, 195, 143, 73, 117, 109,
108, 59, 195, 143, 74, 99, 105, 114, 99, 59, 196, 180, 74, 99, 121, 59,
208, 153, 74, 102, 114, 59, 240, 157, 148, 141, 74, 111, 112, 102, 59, 240,
157, 149, 129, 74, 115, 99, 114, 59, 240, 157, 146, 165, 74, 115, 101, 114,
99, 121, 59, 208, 136, 74, 117, 107, 99, 121, 59, 208, 132, 75, 72, 99,
121, 59, 208, 165, 75, 74, 99, 121, 59, 208, 140, 75, 97, 112, 112, 97,
59, 206, 154, 75, 99, 101, 100, 105, 108, 59, 196, 182, 75, 99, 121, 59,
208, 154, 75, 102, 114, 59, 240, 157, 148, 142, 75, 111, 112, 102, 59, 240,
157, 149, 130, 75, 115, 99, 114, 59, 240, 157, 146, 166, 76, 74, 99, 121,
59, 208, 137, 76, 84, 60, 76, 84, 59, 60, 76, 97, 99, 117, 116, 101,
59, 196, 185, 76, 97, 109, 98, 100, 97, 59, 206, 155, 76, 97, 110, 103,
59, 226, 159, 170, 76, 97, 112, 108, 97, 99, 101, 116, 114, 102, 59, 226,
132, 146, 76, 97, 114, 114, 59, 226, 134, 158, 76, 99, 97, 114, 111, 110,
59, 196, 189, 76, 99, 101, 100, 105, 108, 59, 196, 187, 76, 99, 121, 59,
208, 155, 76, 101, 102, 116, 65, 110, 103, 108, 101, 66, 114, 97, 99, 107,
101, 116, 59, 226, 159, 168, 76, 101, 102, 116, 65, 114, 114, 111, 119, 59,
226, 134, 144, 76, 101, 102, 116, 65, 114, 114, 111, 119, 66, 97, 114, 59,
226, 135, 164, 76, 101, 102, 116, 65, 114, 114, 111, 119, 82, 105, 103, 104,
116, 65, 114, 114, 111, 119, 59, 226, 135, 134, 76, 101, 102, 116, 67, 101,
105, 108, 105, 110, 103, 59, 226, 140, 136, 76, 101, 102, 116, 68, 111, 117,
98, 108, 101, 66, 114, 97, 99, 107, 101, 116, 59, 226, 159, 166, 76, 101,
102, 116, 68, 111, 119, 110, 84, 101, 101, 86, 101, 99, 116, 111, 114, 59,
226, 165, 161, 76, 101, 102, 116, 68, 111, 119, 110, 86, 101, 99, 116, 111,
114, 59, 226, 135, 131, 76, 101, 102, 116, 68, 111, 119, 110, 86, 101, 99,
116, 111, 114, 66, 97, 114, 59, 226, 165, 153, 76, 101, 102, 116, 70, 108,
111, 111, 114, 59, 226, 140, 138, 76, 101, 102, 116, 82, 105, 103, 104, 116,
65, 114, 114, 111, 119, 59, 226, 134, 148, 76, 101, 102, 116, 82, 105, 103,
104, 116, 86, 101, 99, 116, 111, 114, 59, 226, 165, 142, 76, 101, 102, 116,
84, 101, 101, 59, 226, 138, 163, 76, 101, 102, 116, 84, 101, 101, 65, 114,
114, 111, 119, 59, 226, 134, 164, 76, 101, 102, 116, 84, 101, 101, 86, 101,
99, 116, 111, 114, 59, 226, 165, 154, 76, 101, 102, 116, 84, 114, 105, 97,
110, 103, 108, 101, 59, 226, 138, 178, 76, 101, 102, 116, 84, 114, 105, 97,
110, 103, 108, 101, 66, 97, 114, 59, 226, 167, 143, 76, 101, 102, 116, 84,
114, 105, 97, 110, 103, 108, 101, 69, 113, 117, 97, 108, 59, 226, 138, 180,
76, 101, 102, 116, 85, 112, 68, 111, 119, 110, 86, 101, 99, 116, 111, 114,
59, 226, 165, 145, 76, 101, 102, 116, 85, 112, 84, 101, 101, 86, 101, 99,
116, 111, 114, 59, 226, 165, 160, 76, 101, 102, 116, 85, 112, 86, 101, 99,
116, 111, 114, 59, 226, 134, 191, 76, 101, 102, 116, 85, 112, 86, 101, 99,
116, 111, 114, 66, 97, 114, 59, 226, 165, 152, 76, 101, 102, 116, 86, 101,
99, 116, 111, 114, 59, 226, 134, 188, 76, 101, 102, 116, 86, 101, 99, 116,
111, 114, 66, 97, 114, 59, 226, 165, 146, 76, 101, 102, 116, 97, 114, 114,
111, 119, 59, 226, 135, 144, 76, 101, 102, 116, 114, 105, 103, 104, 116, 97,
114, 114, 111, 119, 59, 226, 135, 148, 76, 101, 115, 115, 69, 113, 117, 97,
108, 71, 114, 101, 97, 116, 101, 114, 59, 226, 139, 154, 76, 101, 115, 115,
70, 117, 108, 108, 69, 113, 117, 97, 108, 59, 226, 137, 166, 76, 101, 115,
115, 71, 114, 101, 97, 116, 101, 114, 59, 226, 137, 182, 76, 101, 115, 115,
76, 101, 115, 115, 59, 226, 170, 161, 76, 101, 115, 115, 83, 108, 97, 110,
116, 69, 113, 117, 97, 108, 59, 226, 169, 189, 76, 101, 115, 115, 84, 105,
108, 100, 101, 59, 226, 137, 178, 76, 102, 114, 59, 240, 157, 148, 143, 76,
108, 59, 226, 139, 152, 76, 108, 101, 102, 116, 97, 114, 114, 111, 119, 59,
226, 135, 154, 76, 109, 105, 100, 111, 116, 59, 196, 191, 76, 111, 110, 103,
76, 101, 102, 116, 65, 114, 114, 111, 119, 59, 226, 159, 181, 76, 111, 110,
103, 76, 101, 102, 116, 82, 105, 103, 104, 116, 65, 114, 114, 111, 119, 59,
226, 159, 183, 76, 111, 110, 103, 82, 105, 103, 104, 116, 65, 114, 114, 111,
119, 59, 226, 159, 182, 76, 111, 110, 103, 108, 101, 102, 116, 97, 114, 114,
111, 119, 59, 226, 159, 184, 76, 111, 110, 103, 108, 101, 102, 116, 114, 105,
103, 104, 116, 97, 114, 114, 111, 119, 59, 226, 159, 186, 76, 111, 110, 103,
114, 105, 103, 104, 116, 97, 114, 114, 111, 119, 59, 226, 159, 185, 76, 111,
112, 102, 59, 240, 157, 149, 131, 76, 111, 119, 101, 114, 76, 101, 102, 116,
65, 114, 114, 111, 119, 59, 226, 134, 153, 76, 111, 119, 101, 114, 82, 105,
103, 104, 116, 65, 114, 114, 111, 119, 59, 226, 134, 152, 76, 115, 99, 114,
59, 226, 132, 146, 76, 115, 104, 59, 226, 134, 176, 76, 115, 116, 114, 111,
107, 59, 197, 129, 76, 116, 59, 226, 137, 170, 77, 97, 112, 59, 226, 164,
133, 77, 99, 121, 59, 208, 156, 77, 101, 100, 105, 117, 109, 83, 112, 97,
99, 101, 59, 226, 129, 159, 77, 101, 108, 108, 105, 110, 116, 114, 102, 59,
226, 132, 179, 77, 102, 114, 59, 240, 157, 148, 144, 77, 105, 110, 117, 115,
80, 108, 117, 115, 59, 226, 136, 147, 77, 111, 112, 102, 59, 240, 157, 149,
132, 77, 115, 99, 114, 59, 226, 132, 179, 77, 117, 59, 206, 156, 78, 74,
99, 121, 59, 208, 138, 78, 97, 99, 117, 116, 101, 59, 197, 131, 78, 99,
97, 114, 111, 110, 59, 197, 135, 78, 99, 101, 100, 105, 108, 59, 197, 133,
78, 99, 121, 59, 208, 157, 78, 101, 103, 97, 116, 105, 118, 101, 77, 101,
100, 105, 117, 109, 83, 112, 97, 99, 101, 59, 226, 128, 139, 78, 101, 103,
97, 116, 105, 118, 101, 84, 104, 105, 99, 107, 83, 112, 97, 99, 101, 59,
226, 128, 139, 78, 101, 103, 97, 116, 105, 118, 101, 84, 104, 105, 110, 83,
112, 97, 99, 101, 59, 226, 128, 139, 78, 101, 103, 97, 116, 105, 118, 101,
86, 101, 114, 121, 84, 104, 105, 110, 83, 112, 97, 99, 101, 59, 226, 128,
139, 78, 101, 115, 116, 101, 100, 71, 114, 101, 97, 116, 101, 114, 71, 114,
101, 97, 116, 101, 114, 59, 226, 137, 171, 78, 101, 115, 116, 101, 100, 76,
101, 115, 115, 76, 101, 115, 115, 59, 226, 137, 170, 78, 101, 119, 76, 105,
110, 101, 59, 10, 78, 102, 114, 59, 240, 157, 148, 145, 78, 111, 66, 114,
101, 97, 107, 59, 226, 129, 160, 78, 111, 110, 66, 114, 101, 97, 107, 105,
110, 103, 83, 112, 97, 99, 101, 59, 194, 160, 78, 111, 112, 102, 59, 226,
132, 149, 78, 111, 116, 59, 226, 171, 172, 78, 111, 116, 67, 111, 110, 103,
114, 117, 101, 110, 116, 59, 226, 137, 162, 78, 111, 116, 67, 117, 112, 67,
97, 112, 59, 226, 137, 173, 78, 111, 116, 68, 111, 117, 98, 108, 101, 86,
101, 114, 116, 105, 99, 97, 108, 66, 97, 114, 59, 226, 136, 166, 78, 111,
116, 69, 108, 101, 109, 101, 110, 116, 59, 226, 136, 137, 78, 111, 116, 69,
113, 117, 97, 108, 59, 226, 137, 160, 78, 111, 116, 69, 113, 117, 97, 108,
84, 105, 108, 100, 101, 59, 226, 137, 130, 204, 184, 78, 111, 116, 69, 120,
105, 115, 116, 115, 59, 226, 136, 132, 78, 111, 116, 71, 114, 101, 97, 116,
101, 114, 59, 226, 137, 175, 78, 111, 116, 71, 114, 101, 97, 116, 101, 114,
69, 113, 117, 97, 108, 59, 226, 137, 177, 78, 111, 116, 71, 114, 101, 97,
116, 101, 114, 70, 117, 108, 108, 69, 113, 117, 97, 108, 59, 226, 137, 167,
204, 184, 78, 111, 116, 71, 114, 101, 97, 116, 101, 114, 71, 114, 101, 97,
116, 101, 114, 59, 226, 137, 171, 204, 184, 78, 111, 116, 71, 114, 101, 97,
116, 101, 114, 76, 101, 115, 115, 59, 226, 137, 185, 78, 111, 116, 71, 114,
101, 97, 116, 101, 114, 83, 108, 97, 110, 116, 69, 113, 117, 97, 108, 59,
226, 169, 190, 204, 184, 78, 111, 116, 71, 114, 101, 97, 116, 101, 114, 84,
105, 108, 100, 101, 59, 226, 137, 181, 78, 111, 116, 72, 117, 109, 112, 68,
111, 119, 110, 72, 117, 109, 112, 59, 226, 137, 142, 204, 184, 78, 111, 116,
72, 117, 109, 112, 69, 113, 117, 97, 108, 59, 226, 137, 143, 204, 184, 78,
111, 116, 76, 101, 102, 116, 84, 114, 105, 97, 110, 103, 108, 101, 59, 226,
139, 170, 78, 111, 116, 76, 101, 102, 116, 84, 114, 105, 97, 110, 103, 108,
101, 66, 97, 114, 59, 226, 167, 143, 204, 184, 78, 111, 116, 76, 101, 102,
116, 84, 114, 105, 97, 110, 103, 108, 101, 69, 113, 117, 97, 108, 59, 226,
139, 172, 78, 111, 116, 76, 101, 115, 115, 59, 226, 137, 174, 78, 111, 116,
76, 101, 115, 115, 69, 113, 117, 97, 108, 59, 226, 137, 176, 78, 111, 116,
76, 101, 115, 115, 71, 114, 101, 97, 116, 101, 114, 59, 226, 137, 184, 78,
111, 116, 76, 101, 115, 115, 76, 101, 115, 115, 59, 226, 137, 170, 204, 184,
78, 111, 116, 76, 101, 115, 115, 83, 108, 97, 110, 116, 69, 113, 117, 97,
108, 59, 226, 169, 189, 204, 184, 78, 111, 116, 76, 101, 115, 115, 84, 105,
108, 100, 101, 59, 226, 137, 180, 78, 111, 116, 78, 101, 115, 116, 101, 100,
71, 114, 101, 97, 116, 101, 114, 71, 114, 101, 97, 116, 101, 114, 59, 226,
170, 162, 204, 184, 78, 111, 116, 78, 101, 115, 116, 101, 100, 76, 101, 115,
115, 76, 101, 115, 115, 59, 226, 170, 161, 204, 184, 78, 111, 116, 80, 114,
101, 99, 101, 100, 101, 115, 59, 226, 138, 128, 78, 111, 116, 80, 114, 101,
99, 101, 100, 101, 115, 69, 113, 117, 97, 108, 59, 226, 170, 175, 204, 184,
78, 111, 116, 80, 114, 101, 99, 101, 100, 101, 115, 83, 108, 97, 110, 116,
69, 113, 117, 97, 108, 59, 226, 139, 160, 78, 111, 116, 82, 101, 118, 101,
114, 115, 101, 69, 108, 101, 109, 101, 110, 116, 59, 226, 136, 140, 78, 111,
116, 82, 105, 103, 104, 116, 84, 114, 105, 97, 110, 103, 108, 101, 59, 226,
139, 171, 78, 111, 116, 82, 105, 103, 104, 116, 84, 114, 105, 97, 110, 103,
108, 101, 66, 97, 114, 59, 226, 167, 144, 204, 184, 78, 111, 116, 82, 105,
103, 104, 116, 84, 114, 105, 97, 110, 103, 108, 101, 69, 113, 117, 97, 108,
59, 226, 139, 173, 78, 111, 116, 83, 113, 117, 97, 114, 101, 83, 117, 98,
115, 101, 116, 59, 226, 138, 143, 204, 184, 78, 111, 116, 83, 113, 117, 97,
114, 101, 83, 117, 98, 115, 101, 116, 69, 113, 117, 97, 108, 59, 226, 139,
162, 78, 111, 116, 83, 113, 117, 97, 114, 101, 83, 117, 112, 101, 114, 115,
101, 116, 59, 226, 138, 144, 204, 184, 78, 111, 116, 83, 113, 117, 97, 114,
101, 83, 117, 112, 101, 114, 115, 101, 116, 69, 113, 117, 97, 108, 59, 226,
139, 163, 78, 111, 116, 83, 117, 98, 115, 101, 116, 59, 226, 138, 130, 226,
131, 146, 78, 111, 116, 83, 117, 98, 115, 101, 116, 69, 113, 117, 97, 108,
59, 226, 138, 136, 78, 111, 116, 83, 117, 99, 99, 101, 101, 100, 115, 59,
226, 138, 129, 78, 111, 116, 83, 117, 99, 99, 101, 101, 100, 115, 69, 113,
117, 97, 108, 59, 226, 170, 176, 204, 184, 78, 111, 116, 83, 117, 99, 99,
101, 101, 100, 115, 83, 108, 97, 110, 116, 69, 113, 117, 97, 108, 59, 226,
139, 161, 78, 111, 116, 83, 117, 99, 99, 101, 101, 100, 115, 84, 105, 108,
100, 101, 59, 226, 137, 191, 204, 184, 78, 111, 116, 83, 117, 112, 101, 114,
115, 101, 116, 59, 226, 138, 131, 226, 131, 146, 78, 111, 116, 83, 117, 112,
101, 114, 115, 101, 116, 69, 113, 117, 97, 108, 59, 226, 138, 137, 78, 111,
116, 84, 105, 108, 100, 101, 59, 226, 137, 129, 78, 111, 116, 84, 105, 108,
100, 101, 69, 113, 117, 97, 108, 59, 226, 137, 132, 78, 111, 116, 84, 105,
108, 100, 101, 70, 117, 108, 108, 69, 113, 117, 97, 108, 59, 226, 137, 135,
78, 111, 116, 84, 105, 108, 100, 101, 84, 105, 108, 100, 101, 59, 226, 137,
137, 78, 111, 116, 86, 101, 114, 116, 105, 99, 97, 108, 66, 97, 114, 59,
226, 136, 164, 78, 115, 99, 114, 59, 240, 157, 146, 169, 78, 116, 105, 108,
100, 101, 195, 145, 78, 116, 105, 108, 100, 101, 59, 195, 145, 78, 117, 59,
206, 157, 79, 69, 108, 105, 103, 59, 197, 146, 79, 97, 99, 117, 116, 101,
195, 147, 79, 97, 99, 117, 116, 101, 59, 195, 147, 79, 99, 105, 114, 99,
195, 148, 79, 99, 105, 114, 99, 59, 195, 148, 79, 99, 121, 59, 208, 158,
79, 100, 98, 108, 97, 99, 59, 197, 144, 79, 102, 114, 59, 240, 157, 148,
146, 79, 103, 114, 97, 118, 101, 195, 146, 79, 103, 114, 97, 118, 101, 59,
195, 146, 79, 109, 97, 99, 114, 59, 197, 140, 79, 109, 101, 103, 97, 59,
206, 169, 79, 109, 105, 99, 114, 111, 110, 59, 206, 159, 79, 111, 112, 102,
59, 240, 157, 149, 134, 79, 112, 101, 110, 67, 117, 114, 108, 121, 68, 111,
117, 98, 108, 101, 81, 117, 111, 116, 101, 59, 226, 128, 156, 79, 112, 101,
110, 67, 117, 114, 108, 121, 81, 117, 111, 116, 101, 59, 226, 128, 152, 79,
114, 59, 226, 169, 148, 79, 115, 99, 114, 59, 240, 157, 146, 170, 79, 115,
108, 97, 115, 104, 195, 152, 79, 115, 108, 97, 115, 104, 59, 195, 152, 79,
116, 105, 108, 100, 101, 195, 149, 79, 116, 105, 108, 100, 101, 59, 195, 149,
79, 116, 105, 109, 101, 115, 59, 226, 168, 183, 79, 117, 109, 108, 195, 150,
79, 117, 109, 108, 59, 195, 150, 79, 118, 101, 114, 66, 97, 114, 59, 226,
128, 190, 79, 118, 101, 114, 66, 114, 97, 99, 101, 59, 226, 143, 158, 79,
118, 101, 114, 66, 114, 97, 99, 107, 101, 116, 59, 226, 142, 180, 79, 118,
101, 114, 80, 97, 114, 101, 110, 116, 104, 101, 115, 105, 115, 59, 226, 143,
156, 80, 97, 114, 116, 105, 97, 108, 68, 59, 226, 136, 130, 80, 99, 121,
59, 208, 159, 80, 102, 114, 59, 240, 157, 148, 147, 80, 104, 105, 59, 206,
166, 80, 105, 59, 206, 160, 80, 108, 117, 115, 77, 105, 110, 117, 115, 59,
194, 177, 80, 111, 105, 110, 99, 97, 114, 101, 112, 108, 97, 110, 101, 59,
226, 132, 140, 80, 111, 112, 102, 59, 226, 132, 153, 80, 114, 59, 226, 170,
187, 80, 114, 101, 99, 101, 100, 101, 115, 59, 226, 137, 186, 80, 114, 101,
99, 101, 100, 101, 115, 69, 113, 117, 97, 108, 59, 226, 170, 175, 80, 114,
101, 99, 101, 100, 101, 115, 83, 108, 97, 110, 116, 69, 113, 117, 97, 108,
59, 226, 137, 188, 80, 114, 101, 99, 101, 100, 101, 115, 84, 105, 108, 100,
101, 59, 226, 137, 190, 80, 114, 105, 109, 101, 59, 226, 128, 179, 80, 114,
111, 100, 117, 99, 116, 59, 226, 136, 143, 80, 114, 111, 112, 111, 114, 116,
105, 111, 110, 59, 226, 136, 183, 80, 114, 111, 112, 111, 114, 116, 105, 111,
110, 97, 108, 59, 226, 136, 157, 80, 115, 99, 114, 59, 240, 157, 146, 171,
80, 115, 105, 59, 206, 168, 81, 85, 79, 84, 34, 81, 85, 79, 84, 59,
34, 81, 102, 114, 59, 240, 157, 148, 148, 81, 111, 112, 102, 59, 226, 132,
154, 81, 115, 99, 114, 59, 240, 157, 146, 172, 82, 66, 97, 114, 114, 59,
226, 164, 144, 82, 69, 71, 194, 174, 82, 69, 71, 59, 194, 174, 82, 97,
99, 117, 116, 101, 59, 197, 148, 82, 97, 110, 103, 59, 226, 159, 171, 82,
97, 114, 114, 59, 226, 134, 160, 82, 97, 114, 114, 116, 108, 59, 226, 164,
150, 82, 99, 97, 114, 111, 110, 59, 197, 152, 82, 99, 101, 100, 105, 108,
59, 197, 150, 82, 99, 121, 59, 208, 160, 82, 101, 59, 226, 132, 156, 82,
101, 118, 101, 114, 115, 101, 69, 108, 101, 109, 101, 110, 116, 59, 226, 136,
139, 82, 101, 118, 101, 114, 115, 101, 69, 113, 117, 105, 108, 105, 98, 114,
105, 117, 109, 59, 226, 135, 139, 82, 101, 118, 101, 114, 115, 101, 85, 112,
69, 113, 117, 105, 108, 105, 98, 114, 105, 117, 109, 59, 226, 165, 175, 82,
102, 114, 59, 226, 132, 156, 82, 104, 111, 59, 206, 161, 82, 105, 103, 104,
116, 65, 110, 103, 108, 101, 66, 114, 97, 99, 107, 101, 116, 59, 226, 159,
169, 82, 105, 103, 104, 116, 65, 114, 114, 111, 119, 59, 226, 134, 146, 82,
105, 103, 104, 116, 65, 114, 114, 111, 119, 66, 97, 114, 59, 226, 135, 165,
82, 105, 103, 104, 116, 65, 114, 114, 111, 119, 76, 101, 102, 116, 65, 114,
114, 111, 119, 59, 226, 135, 132, 82, 105, 103, 104, 116, 67, 101, 105, 108,
105, 110, 103, 59, 226, 140, 137, 82, 105, 103, 104, 116, 68, 111, 117, 98,
108, 101, 66, 114, 97, 99, 107, 101, 116, 59, 226, 159, 167, 82, 105, 103,
104, 116, 68, 111, 119, 110, 84, 101, 101, 86, 101, 99, 116, 111, 114, 59,
226, 165, 157, 82, 105, 103, 104, 116, 68, 111, 119, 110, 86, 101, 99, 116,
111, 114, 59, 226, 135, 130, 82, 105, 103, 104, 116, 68, 111, 119, 110, 86,
101, 99, 116, 111, 114, 66, 97, 114, 59, 226, 165, 149, 82, 105, 103, 104,
116, 70, 108, 111, 111, 114, 59, 226, 140, 139, 82, 105, 103, 104, 116, 84,
101, 101, 59, 226, 138, 162, 82, 105, 103, 104, 116, 84, 101, 101, 65, 114,
114, 111, 119, 59, 226, 134, 166, 82, 105, 103, 104, 116, 84, 101, 101, 86,
101, 99, 116, 111, 114, 59, 226, 165, 155, 82, 105, 103, 104, 116, 84, 114,
105, 97, 110, 103, 108, 101, 59, 226, 138, 179, 82, 105, 103, 104, 116, 84,
114, 105, 97, 110, 103, 108, 101, 66, 97, 114, 59, 226, 167, 144, 82, 105,
103, 104, 116, 84, 114, 105, 97, 110, 103, 108, 101, 69, 113, 117, 97, 108,
59, 226, 138, 181, 82, 105, 103, 104, 116, 85, 112, 68, 111, 119, 110, 86,
101, 99, 116, 111, 114, 59, 226, 165, 143, 82, 105, 103, 104, 116, 85, 112,
84, 101, 101, 86, 101, 99, 116, 111, 114, 59, 226, 165, 156, 82, 105, 103,
104, 116, 85, 112, 86, 101, 99, 116, 111, 114, 59, 226, 134, 190, 82, 105,
103, 104, 116, 85, 112, 86, 101, 99, 116, 111, 114, 66, 97, 114, 59, 226,
165, 148, 82, 105, 103, 104, 116, 86, 101, 99, 116, 111, 114, 59, 226, 135,
128, 82, 105, 103, 104, 116, 86, 101, 99, 116, 111, 114, 66, 97, 114, 59,
226, 165, 147, 82, 105, 103, 104, 116, 97, 114, 114, 111, 119, 59, 226, 135,
146, 82, 111, 112, 102, 59, 226, 132, 157, 82, 111, 117, 110, 100, 73, 109,
112, 108, 105, 101, 115, 59, 226, 165, 176, 82, 114, 105, 103, 104, 116, 97,
114, 114, 111, 119, 59, 226, 135, 155, 82, 115, 99, 114, 59, 226, 132, 155,
82, 115, 104, 59, 226, 134, 177, 82, 117, 108, 101, 68, 101, 108, 97, 121,
101, 100, 59, 226, 167, 180, 83, 72, 67, 72, 99, 121, 59, 208, 169, 83,
72, 99, 121, 59, 208, 168, 83, 79, 70, 84, 99, 121, 59, 208, 172, 83,
97, 99, 117, 116, 101, 59, 197, 154, 83, 99, 59, 226, 170, 188, 83, 99,
97, 114, 111, 110, 59, 197, 160, 83, 99, 101, 100, 105, 108, 59, 197, 158,
83, 99, 105, 114, 99, 59, 197, 156, 83, 99, 121, 59, 208, 161, 83, 102,
114, 59, 240, 157, 148, 150, 83, 104, 111, 114, 116, 68, 111, 119, 110, 65,
114, 114, 111, 119, 59, 226, 134, 147, 83, 104, 111, 114, 116, 76, 101, 102,
116, 65, 114, 114, 111, 119, 59, 226, 134, 144, 83, 104, 111, 114, 116, 82,
105, 103, 104, 116, 65, 114, 114, 111, 119, 59, 226, 134, 146, 83, 104, 111,
114, 116, 85, 112, 65, 114, 114, 111, 119, 59, 226, 134, 145, 83, 105, 103,
109, 97, 59, 206, 163, 83, 109, 97, 108, 108, 67, 105, 114, 99, 108, 101,
59, 226, 136, 152, 83, 111, 112, 102, 59, 240, 157, 149, 138, 83, 113, 114,
116, 59, 226, 136, 154, 83, 113, 117, 97, 114, 101, 59, 226, 150, 161, 83,
113, 117, 97, 114, 101, 73, 110, 116, 101, 114, 115, 101, 99, 116, 105, 111,
110, 59, 226, 138, 147, 83, 113, 117, 97, 114, 101, 83, 117, 98, 115, 101,
116, 59, 226, 138, 143, 83, 113, 117, 97, 114, 101, 83, 117, 98, 115, 101,
116, 69, 113, 117, 97, 108, 59, 226, 138, 145, 83, 113, 117, 97, 114, 101,
83, 117, 112, 101, 114, 115, 101, 116, 59, 226, 138, 144, 83, 113, 117, 97,
114, 101, 83, 117, 112, 101, 114, 115, 101, 116, 69, 113, 117, 97, 108, 59,
226, 138, 146, 83, 113, 117, 97, 114, 101, 85, 110, 105, 111, 110, 59, 226,
138, 148, 83, 115, 99, 114, 59, 240, 157, 146, 174, 83, 116, 97, 114, 59,
226, 139, 134, 83, 117, 98, 59, 226, 139, 144, 83, 117, 98, 115, 101, 116,
59, 226, 139, 144, 83, 117, 98, 115, 101, 116, 69, 113, 117, 97, 108, 59,
226, 138, 134, 83, 117, 99, 99, 101, 101, 100, 115, 59, 226, 137, 187, 83,
117, 99, 99, 101, 101, 100, 115, 69, 113, 117, 97, 108, 59, 226, 170, 176,
83, 117, 99, 99, 101, 101, 100, 115, 83, 108, 97, 110, 116, 69, 113, 117,
97, 108, 59, 226, 137, 189, 83, 117, 99, 99, 101, 101, 100, 115, 84, 105,
108, 100, 101, 59, 226, 137, 191, 83, 117, 99, 104, 84, 104, 97, 116, 59,
226, 136, 139, 83, 117, 109, 59, 226, 136, 145, 83, 117, 112, 59, 226, 139,
145, 83, 117, 112, 101, 114, 115, 101, 116, 59, 226, 138, 131, 83, 117, 112,
101, 114, 115, 101, 116, 69, 113, 117, 97, 108, 59, 226, 138, 135, 83, 117,
112, 115, 101, 116, 59, 226, 139, 145, 84, 72, 79, 82, 78, 195, 158, 84,
72, 79, 82, 78, 59, 195, 158, 84, 82, 65, 68, 69, 59, 226, 132, 162,
84, 83, 72, 99, 121, 59, 208, 139, 84, 83, 99, 121, 59, 208, 166, 84,
97, 98, 59, 9, 84, 97, 117, 59, 206, 164, 84, 99, 97, 114, 111, 110,
59, 197, 164, 84, 99, 101, 100, 105, 108, 59, 197, 162, 84, 99, 121, 59,
208, 162, 84, 102, 114, 59, 240, 157, 148, 151, 84, 104, 101, 114, 101, 102,
111, 114, 101, 59, 226, 136, 180, 84, 104, 101, 116, 97, 59, 206, 152, 84,
104, 105, 99, 107, 83, 112, 97, 99, 101, 59, 226, 129, 159, 226, 128, 138,
84, 104, 105, 110, 83, 112, 97, 99, 101, 59, 226, 128, 137, 84, 105, 108,
100, 101, 59, 226, 136, 188, 84, 105, 108, 100, 101, 69, 113, 117, 97, 108,
59, 226, 137, 131, 84, 105, 108, 100, 101, 70, 117, 108, 108, 69, 113, 117,
97, 108, 59, 226, 137, 133, 84, 105, 108, 100, 101, 84, 105, 108, 100, 101,
59, 226, 137, 136, 84, 111, 112, 102, 59, 240, 157, 149, 139, 84, 114, 105,
112, 108, 101, 68, 111, 116, 59, 226, 131, 155, 84, 115, 99, 114, 59, 240,
157, 146, 175, 84, 115, 116, 114, 111, 107, 59, 197, 166, 85, 97, 99, 117,
116, 101, 195, 154, 85, 97, 99, 117, 116, 101, 59, 195, 154, 85, 97, 114,
114, 59, 226, 134, 159, 85, 97, 114, 114, 111, 99, 105, 114, 59, 226, 165,
137, 85, 98, 114, 99, 121, 59, 208, 142, 85, 98, 114, 101, 118, 101, 59,
197, 172, 85, 99, 105, 114, 99, 195, 155, 85, 99, 105, 114, 99, 59, 195,
155, 85, 99, 121, 59, 208, 163, 85, 100, 98, 108, 97, 99, 59, 197, 176,
85, 102, 114, 59, 240, 157, 148, 152, 85, 103, 114, 97, 118, 101, 195, 153,
85, 103, 114, 97, 118, 101, 59, 195, 153, 85, 109, 97, 99, 114, 59, 197,
170, 85, 110, 100, 101, 114, 66, 97, 114, 59, 95, 85, 110, 100, 101, 114,
66, 114, 97, 99, 101, 59, 226, 143, 159, 85, 110, 100, 101, 114, 66, 114,
97, 99, 107, 101, 116, 59, 226, 142, 181, 85, 110, 100, 101, 114, 80, 97,
114, 101, 110, 116, 104, 101, 115, 105, 115, 59, 226, 143, 157, 85, 110, 105,
111, 110, 59, 226, 139, 131, 85, 110, 105, 111, 110, 80, 108, 117, 115, 59,
226, 138, 142, 85, 111, 103, 111, 110, 59, 197, 178, 85, 111, 112, 102, 59,
240, 157, 149, 140, 85, 112, 65, 114, 114, 111, 119, 59, 226, 134, 145, 85,
112, 65, 114, 114, 111, 119, 66, 97, 114, 59, 226, 164, 146, 85, 112, 65,
114, 114, 111, 119, 68, 111, 119, 110, 65, 114, 114, 111, 119, 59, 226, 135,
133, 85, 112, 68, 111, 119, 110, 65, 114, 114, 111, 119, 59, 226, 134, 149,
85, 112, 69, 113, 117, 105, 108, 105, 98, 114, 105, 117, 109, 59, 226, 165,
174, 85, 112, 84, 101, 101, 59, 226, 138, 165, 85, 112, 84, 101, 101, 65,
114, 114, 111, 119, 59, 226, 134, 165, 85, 112, 97, 114, 114, 111, 119, 59,
226, 135, 145, 85, 112, 100, 111, 119, 110, 97, 114, 114, 111, 119, 59, 226,
135, 149, 85, 112, 112, 101, 114, 76, 101, 102, 116, 65, 114, 114, 111, 119,
59, 226, 134, 150, 85, 112, 112, 101, 114, 82, 105, 103, 104, 116, 65, 114,
114, 111, 119, 59, 226, 134, 151, 85, 112, 115, 105, 59, 207, 146, 85, 112,
115, 105, 108, 111, 110, 59, 206, 165, 85, 114, 105, 110, 103, 59, 197, 174,
85, 115, 99, 114, 59, 240, 157, 146, 176, 85, 116, 105, 108, 100, 101, 59,
197, 168, 85, 117, 109, 108, 195, 156, 85, 117, 109, 108, 59, 195, 156, 86,
68, 97, 115, 104, 59, 226, 138, 171, 86, 98, 97, 114, 59, 226, 171, 171,
86, 99, 121, 59, 208, 146, 86, 100, 97, 115, 104, 59, 226, 138, 169, 86,
100, 97, 115, 104, 108, 59, 226, 171, 166, 86, 101, 101, 59, 226, 139, 129,
86, 101, 114, 98, 97, 114, 59, 226, 128, 150, 86, 101, 114, 116, 59, 226,
128, 150, 86, 101, 114, 116, 105, 99, 97, 108, 66, 97, 114, 59, 226, 136,
163, 86, 101, 114, 116, 105, 99, 97, 108, 76, 105, 110, 101, 59, 124, 86,
101, 114, 116, 105, 99, 97, 108, 83, 101, 112, 97, 114, 97, 116, 111, 114,
59, 226, 157, 152, 86, 101, 114, 116, 105, 99, 97, 108, 84, 105, 108, 100,
101, 59, 226, 137, 128, 86, 101, 114, 121, 84, 104, 105, 110, 83, 112, 97,
99, 101, 59, 226, 128, 138, 86, 102, 114, 59, 240, 157, 148, 153, 86, 111,
112, 102, 59, 240, 157, 149, 141, 86, 115, 99, 114, 59, 240, 157, 146, 177,
86, 118, 100, 97, 115, 104, 59, 226, 138, 170, 87, 99, 105, 114, 99, 59,
197, 180, 87, 101, 100, 103, 101, 59, 226, 139, 128, 87, 102, 114, 59, 240,
157, 148, 154, 87, 111, 112, 102, 59, 240, 157, 149, 142, 87, 115, 99, 114,
59, 240, 157, 146, 178, 88, 102, 114, 59, 240, 157, 148, 155, 88, 105, 59,
206, 158, 88, 111, 112, 102, 59, 240, 157, 149, 143, 88, 115, 99, 114, 59,
240, 157, 146, 179, 89, 65, 99, 121, 59, 208, 175, 89, 73, 99, 121, 59,
208, 135, 89, 85, 99, 121, 59, 208, 174, 89, 97, 99, 117, 116, 101, 195,
157, 89, 97, 99, 117, 116, 101, 59, 195, 157, 89, 99, 105, 114, 99, 59,
197, 182, 89, 99, 121, 59, 208, 171, 89, 102, 114, 59, 240, 157, 148, 156,
89, 111, 112, 102, 59, 240, 157, 149, 144, 89, 115, 99, 114, 59, 240, 157,
146, 180, 89, 117, 109, 108, 59, 197, 184, 90, 72, 99, 121, 59, 208, 150,
90, 97, 99, 117, 116, 101, 59, 197, 185, 90, 99, 97, 114, 111, 110, 59,
197, 189, 90, 99, 121, 59, 208, 151, 90, 100, 111, 116, 59, 197, 187, 90,
101, 114, 111, 87, 105, 100, 116, 104, 83, 112, 97, 99, 101, 59, 226, 128,
139, 90, 101, 116, 97, 59, 206, 150, 90, 102, 114, 59, 226, 132, 168, 90,
111, 112, 102, 59, 226, 132, 164, 90, 115, 99, 114, 59, 240, 157, 146, 181,
97, 97, 99, 117, 116, 101, 195, 161, 97, 97, 99, 117, 116, 101, 59, 195,
161, 97, 98, 114, 101, 118, 101, 59, 196, 131, 97, 99, 59, 226, 136, 190,
97, 99, 69, 59, 226, 136, 190, 204, 179, 97, 99, 100, 59, 226, 136, 191,
97, 99, 105, 114, 99, 195, 162, 97, 99, 105, 114, 99, 59, 195, 162, 97,
99, 117, 116, 101, 194, 180, 97, 99, 117, 116, 101, 59, 194, 180, 97, 99,
121, 59, 208, 176, 97, 101, 108, 105, 103, 195, 166, 97, 101, 108, 105, 103,
59, 195, 166, 97, 102, 59, 226, 129, 161, 97, 102, 114, 59, 240, 157, 148,
158, 97, 103, 114, 97, 118, 101, 195, 160, 97, 103, 114, 97, 118, 101, 59,
195, 160, 97, 108, 101, 102, 115, 121, 109, 59, 226, 132, 181, 97, 108, 101,
112, 104, 59, 226, 132, 181, 97, 108, 112, 104, 97, 59, 206, 177, 97, 109,
97, 99, 114, 59, 196, 129, 97, 109, 97, 108, 103, 59, 226, 168, 191, 97,
109, 112, 38, 97, 109, 112, 59, 38, 97, 110, 100, 59, 226, 136, 167, 97,
110, 100, 97, 110, 100, 59, 226, 169, 149, 97, 110, 100, 100, 59, 226, 169,
156, 97, 110, 100, 115, 108, 111, 112, 101, 59, 226, 169, 152, 97, 110, 100,
118, 59, 226, 169, 154, 97, 110, 103, 59, 226, 136, 160, 97, 110, 103, 101,
59, 226, 166, 164, 97, 110, 103, 108, 101, 59, 226, 136, 160, 97, 110, 103,
109, 115, 100, 59, 226, 136, 161, 97, 110, 103, 109, 115, 100, 97, 97, 59,
226, 166, 168, 97, 110, 103, 109, 115, 100, 97, 98, 59, 226, 166, 169, 97,
110, 103, 109, 115, 100, 97, 99, 59, 226, 166, 170, 97, 110, 103, 109, 115,
100, 97, 100, 59, 226, 166, 171, 97, 110, 103, 109, 115, 100, 97, 101, 59,
226, 166, 172, 97, 110, 103, 109, 115, 100, 97, 102, 59, 226, 166, 173, 97,
110, 103, 109, 115, 100, 97, 103, 59, 226, 166, 174, 97, 110, 103, 109, 115,
100, 97, 104, 59, 226, 166, 175, 97, 110, 103, 114, 116, 59, 226, 136, 159,
97, 110, 103, 114, 116, 118, 98, 59, 226, 138, 190, 97, 110, 103, 114, 116,
118, 98, 100, 59, 226, 166, 157, 97, 110, 103, 115, 112, 104, 59, 226, 136,
162, 97, 110, 103, 115, 116, 59, 195, 133, 97, 110, 103, 122, 97, 114, 114,
59, 226, 141, 188, 97, 111, 103, 111, 110, 59, 196, 133, 97, 111, 112, 102,
59, 240, 157, 149, 146, 97, 112, 59, 226, 137, 136, 97, 112, 69, 59, 226,
169, 176, 97, 112, 97, 99, 105, 114, 59, 226, 169, 175, 97, 112, 101, 59,
226, 137, 138, 97, 112, 105, 100, 59, 226, 137, 139, 97, 112, 111, 115, 59,
39, 97, 112, 112, 114, 111, 120, 59, 226, 137, 136, 97, 112, 112, 114, 111,
120, 101, 113, 59, 226, 137, 138, 97, 114, 105, 110, 103, 195, 165, 97, 114,
105, 110, 103, 59, 195, 165, 97, 115, 99, 114, 59, 240, 157, 146, 182, 97,
115, 116, 59, 42, 97, 115, 121, 109, 112, 59, 226, 137, 136, 97, 115, 121,
109, 112, 101, 113, 59, 226, 137, 141, 97, 116, 105, 108, 100, 101, 195, 163,
97, 116, 105, 108, 100, 101, 59, 195, 163, 97, 117, 109, 108, 195, 164, 97,
117, 109, 108, 59, 195, 164, 97, 119, 99, 111, 110, 105, 110, 116, 59, 226,
136, 179, 97, 119, 105, 110, 116, 59, 226, 168, 145, 98, 78, 111, 116, 59,
226, 171, 173, 98, 97, 99, 107, 99, 111, 110, 103, 59, 226, 137, 140, 98,
97, 99, 107, 101, 112, 115, 105, 108, 111, 110, 59, 207, 182, 98, 97, 99,
107, 112, 114, 105, 109, 101, 59, 226, 128, 181, 98, 97, 99, 107, 115, 105,
109, 59, 226, 136, 189, 98, 97, 99, 107, 115, 105, 109, 101, 113, 59, 226,
139, 141, 98, 97, 114, 118, 101, 101, 59, 226, 138, 189, 98, 97, 114, 119,
101, 100, 59, 226, 140, 133, 98, 97, 114, 119, 101, 100, 103, 101, 59, 226,
140, 133, 98, 98, 114, 107, 59, 226, 142, 181, 98, 98, 114, 107, 116, 98,
114, 107, 59, 226, 142, 182, 98, 99, 111, 110, 103, 59, 226, 137, 140, 98,
99, 121, 59, 208, 177, 98, 100, 113, 117, 111, 59, 226, 128, 158, 98, 101,
99, 97, 117, 115, 59, 226, 136, 181, 98, 101, 99, 97, 117, 115, 101, 59,
226, 136, 181, 98, 101, 109, 112, 116, 121, 118, 59, 226, 166, 176, 98, 101,
112, 115, 105, 59, 207, 182, 98, 101, 114, 110, 111, 117, 59, 226, 132, 172,
98, 101, 116, 97, 59, 206, 178, 98, 101, 116, 104, 59, 226, 132, 182, 98,
101, 116, 119, 101, 101, 110, 59, 226, 137, 172, 98, 102, 114, 59, 240, 157,
148, 159, 98, 105, 103, 99, 97, 112, 59, 226, 139, 130, 98, 105, 103, 99,
105, 114, 99, 59, 226, 151, 175, 98, 105, 103, 99, 117, 112, 59, 226, 139,
131, 98, 105, 103, 111, 100, 111, 116, 59, 226, 168, 128, 98, 105, 103, 111,
112, 108, 117, 115, 59, 226, 168, 129, 98, 105, 103, 111, 116, 105, 109, 101,
115, 59, 226, 168, 130, 98, 105, 103, 115, 113, 99, 117, 112, 59, 226, 168,
134, 98, 105, 103, 115, 116, 97, 114, 59, 226, 152, 133, 98, 105, 103, 116,
114, 105, 97, 110, 103, 108, 101, 100, 111, 119, 110, 59, 226, 150, 189, 98,
105, 103, 116, 114, 105, 97, 110, 103, 108, 101, 117, 112, 59, 226, 150, 179,
98, 105, 103, 117, 112, 108, 117, 115, 59, 226, 168, 132, 98, 105, 103, 118,
101, 101, 59, 226, 139, 129, 98, 105, 103, 119, 101, 100, 103, 101, 59, 226,
139, 128, 98, 107, 97, 114, 111, 119, 59, 226, 164, 141, 98, 108, 97, 99,
107, 108, 111, 122, 101, 110, 103, 101, 59, 226, 167, 171, 98, 108, 97, 99,
107, 115, 113, 117, 97, 114, 101, 59, 226, 150, 170, 98, 108, 97, 99, 107,
116, 114, 105, 97, 110, 103, 108, 101, 59, 226, 150, 180, 98, 108, 97, 99,
107, 116, 114, 105, 97, 110, 103, 108, 101, 100, 111, 119, 110, 59, 226, 150,
190, 98, 108, 97, 99, 107, 116, 114, 105, 97, 110, 103, 108, 101, 108, 101,
102, 116, 59, 226, 151, 130, 98, 108, 97, 99, 107, 116, 114, 105, 97, 110,
103, 108, 101, 114, 105, 103, 104, 116, 59, 226, 150, 184, 98, 108, 97, 110,
107, 59, 226, 144, 163, 98, 108, 107, 49, 50, 59, 226, 150, 146, 98, 108,
107, 49, 52, 59, 226, 150, 145, 98, 108, 107, 51, 52, 59, 226, 150, 147,
98, 108, 111, 99, 107, 59, 226, 150, 136, 98, 110, 101, 59, 61, 226, 131,
165, 98, 110, 101, 113, 117, 105, 118, 59, 226, 137, 161, 226, 131, 165, 98,
110, 111, 116, 59, 226, 140, 144, 98, 111, 112, 102, 59, 240, 157, 149, 147,
98, 111, 116, 59, 226, 138, 165, 98, 111, 116, 116, 111, 109, 59, 226, 138,
165, 98, 111, 119, 116, 105, 101, 59, 226, 139, 136, 98, 111, 120, 68, 76,
59, 226, 149, 151, 98, 111, 120, 68, 82, 59, 226, 149, 148, 98, 111, 120,
68, 108, 59, 226, 149, 150, 98, 111, 120, 68, 114, 59, 226, 149, 147, 98,
111, 120, 72, 59, 226, 149, 144, 98, 111, 120, 72, 68, 59, 226, 149, 166,
98, 111, 120, 72, 85, 59, 226, 149, 169, 98, 111, 120, 72, 100, 59, 226,
149, 164, 98, 111, 120, 72, 117, 59, 226, 149, 167, 98, 111, 120, 85, 76,
59, 226, 149, 157, 98, 111, 120, 85, 82, 59, 226, 149, 154, 98, 111, 120,
85, 108, 59, 226, 149, 156, 98, 111, 120, 85, 114, 59, 226, 149, 153, 98,
111, 120, 86, 59, 226, 149, 145, 98, 111, 120, 86, 72, 59, 226, 149, 172,
98, 111, 120, 86, 76, 59, 226, 149, 163, 98, 111, 120, 86, 82, 59, 226,
149, 160, 98, 111, 120, 86, 104, 59, 226, 149, 171, 98, 111, 120, 86, 108,
59, 226, 149, 162, 98, 111, 120, 86, 114, 59, 226, 149, 159, 98, 111, 120,
98, 111, 120, 59, 226, 167, 137, 98, 111, 120, 100, 76, 59, 226, 149, 149,
98, 111, 120, 100, 82, 59, 226, 149, 146, 98, 111, 120, 100, 108, 59, 226,
148, 144, 98, 111, 120, 100, 114, 59, 226, 148, 140, 98, 111, 120, 104, 59,
226, 148, 128, 98, 111, 120, 104, 68, 59, 226, 149, 165, 98, 111, 120, 104,
85, 59, 226, 149, 168, 98, 111, 120, 104, 100, 59, 226, 148, 172, 98, 111,
120, 104, 117, 59, 226, 148, 180, 98, 111, 120, 109, 105, 110, 117, 115, 59,
226, 138, 159, 98, 111, 120, 112, 108, 117, 115, 59, 226, 138, 158, 98, 111,
120, 116, 105, 109, 101, 115, 59, 226, 138, 160, 98, 111, 120, 117, 76, 59,
226, 149, 155, 98, 111, 120, 117, 82, 59, 226, 149, 152, 98, 111, 120, 117,
108, 59, 226, 148, 152, 98, 111, 120, 117, 114, 59, 226, 148, 148, 98, 111,
120, 118, 59, 226, 148, 130, 98, 111, 120, 118, 72, 59, 226, 149, 170, 98,
111, 120, 118, 76, 59, 226, 149, 161, 98, 111, 120, 118, 82, 59, 226, 149,
158, 98, 111, 120, 118, 104, 59, 226, 148, 188, 98, 111, 120, 118, 108, 59,
226, 148, 164, 98, 111, 120, 118, 114, 59, 226, 148, 156, 98, 112, 114, 105,
109, 101, 59, 226, 128, 181, 98, 114, 101, 118, 101, 59, 203, 152, 98, 114,
118, 98, 97, 114, 194, 166, 98, 114, 118, 98, 97, 114, 59, 194, 166, 98,
115, 99, 114, 59, 240, 157, 146, 183, 98, 115, 101, 109, 105, 59, 226, 129,
143, 98, 115, 105, 109, 59, 226, 136, 189, 98, 115, 105, 109, 101, 59, 226,
139, 141, 98, 115, 111, 108, 59, 92, 98, 115, 111, 108, 98, 59, 226, 167,
133, 98, 115, 111, 108, 104, 115, 117, 98, 59, 226, 159, 136, 98, 117, 108,
108, 59, 226, 128, 162, 98, 117, 108, 108, 101, 116, 59, 226, 128, 162, 98,
117, 109, 112, 59, 226, 137, 142, 98, 117, 109, 112, 69, 59, 226, 170, 174,
98, 117, 109, 112, 101, 59, 226, 137, 143, 98, 117, 109, 112, 101, 113, 59,
226, 137, 143, 99, 97, 99, 117, 116, 101, 59, 196, 135, 99, 97, 112, 59,
226, 136, 169, 99, 97, 112, 97, 110, 100, 59, 226, 169, 132, 99, 97, 112,
98, 114, 99, 117, 112, 59, 226, 169, 137, 99, 97, 112, 99, 97, 112, 59,
226, 169, 139, 99, 97, 112, 99, 117, 112, 59, 226, 169, 135, 99, 97, 112,
100, 111, 116, 59, 226, 169, 128, 99, 97, 112, 115, 59, 226, 136, 169, 239,
184, 128, 99, 97, 114, 101, 116, 59, 226, 129, 129, 99, 97, 114, 111, 110,
59, 203, 135, 99, 99, 97, 112, 115, 59, 226, 169, 141, 99, 99, 97, 114,
111, 110, 59, 196, 141, 99, 99, 101, 100, 105, 108, 195, 167, 99, 99, 101,
100, 105, 108, 59, 195, 167, 99, 99, 105, 114, 99, 59, 196, 137, 99, 99,
117, 112, 115, 59, 226, 169, 140, 99, 99, 117, 112, 115, 115, 109, 59, 226,
169, 144, 99, 100, 111, 116, 59, 196, 139, 99, 101, 100, 105, 108, 194, 184,
99, 101, 100, 105, 108, 59, 194, 184, 99, 101, 109, 112, 116, 121, 118, 59,
226, 166, 178, 99, 101, 110, 116, 194, 162, 99, 101, 110, 116, 59, 194, 162,
99, 101, 110, 116, 101, 114, 100, 111, 116, 59, 194, 183, 99, 102, 114, 59,
240, 157, 148, 160, 99, 104, 99, 121, 59, 209, 135, 99, 104, 101, 99, 107,
59, 226, 156, 147, 99, 104, 101, 99, 107, 109, 97, 114, 107, 59, 226, 156,
147, 99, 104, 105, 59, 207, 135, 99, 105, 114, 59, 226, 151, 139, 99, 105,
114, 69, 59, 226, 167, 131, 99, 105, 114, 99, 59, 203, 134, 99, 105, 114,
99, 101, 113, 59, 226, 137, 151, 99, 105, 114, 99, 108, 101, 97, 114, 114,
111, 119, 108, 101, 102, 116, 59, 226, 134, 186, 99, 105, 114, 99, 108, 101,
97, 114, 114, 111, 119, 114, 105, 103, 104, 116, 59, 226, 134, 187, 99, 105,
114, 99, 108, 101, 100, 82, 59, 194, 174, 99, 105, 114, 99, 108, 101, 100,
83, 59, 226, 147, 136, 99, 105, 114, 99, 108, 101, 100, 97, 115, 116, 59,
226, 138, 155, 99, 105, 114, 99, 108, 101, 100, 99, 105, 114, 99, 59, 226,
138, 154, 99, 105, 114, 99, 108, 101, 100, 100, 97, 115, 104, 59, 226, 138,
157, 99, 105, 114, 101, 59, 226, 137, 151, 99, 105, 114, 102, 110, 105, 110,
116, 59, 226, 168, 144, 99, 105, 114, 109, 105, 100, 59, 226, 171, 175, 99,
105, 114, 115, 99, 105, 114, 59, 226, 167, 130, 99, 108, 117, 98, 115, 59,
226, 153, 163, 99, 108, 117, 98, 115, 117, 105, 116, 59, 226, 153, 163, 99,
111, 108, 111, 110, 59, 58, 99, 111, 108, 111, 110, 101, 59, 226, 137, 148,
99, 111, 108, 111, 110, 101, 113, 59, 226, 137, 148, 99, 111, 109, 109, 97,
59, 44, 99, 111, 109, 109, 97, 116, 59, 64, 99, 111, 109, 112, 59, 226,
136, 129, 99, 111, 109, 112, 102, 110, 59, 226, 136, 152, 99, 111, 109, 112,
108, 101, 109, 101, 110, 116, 59, 226, 136, 129, 99, 111, 109, 112, 108, 101,
120, 101, 115, 59, 226, 132, 130, 99, 111, 110, 103, 59, 226, 137, 133, 99,
111, 110, 103, 100, 111, 116, 59, 226, 169, 173, 99, 111, 110, 105, 110, 116,
59, 226, 136, 174, 99, 111, 112, 102, 59, 240, 157, 149, 148, 99, 111, 112,
114, 111, 100, 59, 226, 136, 144, 99, 111, 112, 121, 194, 169, 99, 111, 112,
121, 59, 194, 169, 99, 111, 112, 121, 115, 114, 59, 226, 132, 151, 99, 114,
97, 114, 114, 59, 226, 134, 181, 99, 114, 111, 115, 115, 59, 226, 156, 151,
99, 115, 99, 114, 59, 240, 157, 146, 184, 99, 115, 117, 98, 59, 226, 171,
143, 99, 115, 117, 98, 101, 59, 226, 171, 145, 99, 115, 117, 112, 59, 226,
171, 144, 99, 115, 117, 112, 101, 59, 226, 171, 146, 99, 116, 100, 111, 116,
59, 226, 139, 175, 99, 117, 100, 97, 114, 114, 108, 59, 226, 164, 184, 99,
117, 100, 97, 114, 114, 114, 59, 226, 164, 181, 99, 117, 101, 112, 114, 59,
226, 139, 158, 99, 117, 101, 115, 99, 59, 226, 139, 159, 99, 117, 108, 97,
114, 114, 59, 226, 134, 182, 99, 117, 108, 97, 114, 114, 112, 59, 226, 164,
189, 99, 117, 112, 59, 226, 136, 170, 99, 117, 112, 98, 114, 99, 97, 112,
59, 226, 169, 136, 99, 117, 112, 99, 97, 112, 59, 226, 169, 134, 99, 117,
112, 99, 117, 112, 59, 226, 169, 138, 99, 117, 112, 100, 111, 116, 59, 226,
138, 141, 99, 117, 112, 111, 114, 59, 226, 169, 133, 99, 117, 112, 115, 59,
226, 136, 170, 239, 184, 128, 99, 117, 114, 97, 114, 114, 59, 226, 134, 183,
99, 117, 114, 97, 114, 114, 109, 59, 226, 164, 188, 99, 117, 114, 108, 121,
101, 113, 112, 114, 101, 99, 59, 226, 139, 158, 99, 117, 114, 108, 121, 101,
113, 115, 117, 99, 99, 59, 226, 139, 159, 99, 117, 114, 108, 121, 118, 101,
101, 59, 226, 139, 142, 99, 117, 114, 108, 121, 119, 101, 100, 103, 101, 59,
226, 139, 143, 99, 117, 114, 114, 101, 110, 194, 164, 99, 117, 114, 114, 101,
110, 59, 194, 164, 99, 117, 114, 118, 101, 97, 114, 114, 111, 119, 108, 101,
102, 116, 59, 226, 134, 182, 99, 117, 114, 118, 101, 97, 114, 114, 111, 119,
114, 105, 103, 104, 116, 59, 226, 134, 183, 99, 117, 118, 101, 101, 59, 226,
139, 142, 99, 117, 119, 101, 100, 59, 226, 139, 143, 99, 119, 99, 111, 110,
105, 110, 116, 59, 226, 136, 178, 99, 119, 105, 110, 116, 59, 226, 136, 177,
99, 121, 108, 99, 116, 121, 59, 226, 140, 173, 100, 65, 114, 114, 59, 226,
135, 147, 100, 72, 97, 114, 59, 226, 165, 165, 100, 97, 103, 103, 101, 114,
59, 226, 128, 160, 100, 97, 108, 101, 116, 104, 59, 226, 132, 184, 100, 97,
114, 114, 59, 226, 134, 147, 100, 97, 115, 104, 59, 226, 128, 144, 100, 97,
115, 104, 118, 59, 226, 138, 163, 100, 98, 107, 97, 114, 111, 119, 59, 226,
164, 143, 100, 98, 108, 97, 99, 59, 203, 157, 100, 99, 97, 114, 111, 110,
59, 196, 143, 100, 99, 121, 59, 208, 180, 100, 100, 59, 226, 133, 134, 100,
100, 97, 103, 103, 101, 114, 59, 226, 128, 161, 100, 100, 97, 114, 114, 59,
226, 135, 138, 100, 100, 111, 116, 115, 101, 113, 59, 226, 169, 183, 100, 101,
103, 194, 176, 100, 101, 103, 59, 194, 176, 100, 101, 108, 116, 97, 59, 206,
180, 100, 101, 109, 112, 116, 121, 118, 59, 226, 166, 177, 100, 102, 105, 115,
104, 116, 59, 226, 165, 191, 100, 102, 114, 59, 240, 157, 148, 161, 100, 104,
97, 114, 108, 59, 226, 135, 131, 100, 104, 97, 114, 114, 59, 226, 135, 130,
100, 105, 97, 109, 59, 226, 139, 132, 100, 105, 97, 109, 111, 110, 100, 59,
226, 139, 132, 100, 105, 97, 109, 111, 110, 100, 115, 117, 105, 116, 59, 226,
153, 166, 100, 105, 97, 109, 115, 59, 226, 153, 166, 100, 105, 101, 59, 194,
168, 100, 105, 103, 97, 109, 109, 97, 59, 207, 157, 100, 105, 115, 105, 110,
59, 226, 139, 178, 100, 105, 118, 59, 195, 183, 100, 105, 118, 105, 100, 101,
195, 183, 100, 105, 118, 105, 100, 101, 59, 195, 183, 100, 105, 118, 105, 100,
101, 111, 110, 116, 105, 109, 101, 115, 59, 226, 139, 135, 100, 105, 118, 111,
110, 120, 59, 226, 139, 135, 100, 106, 99, 121, 59, 209, 146, 100, 108, 99,
111, 114, 110, 59, 226, 140, 158, 100, 108, 99, 114, 111, 112, 59, 226, 140,
141, 100, 111, 108, 108, 97, 114, 59, 36, 100, 111, 112, 102, 59, 240, 157,
149, 149, 100, 111, 116, 59, 203, 153, 100, 111, 116, 101, 113, 59, 226, 137,
144, 100, 111, 116, 101, 113, 100, 111, 116, 59, 226, 137, 145, 100, 111, 116,
109, 105, 110, 117, 115, 59, 226, 136, 184, 100, 111, 116, 112, 108, 117, 115,
59, 226, 136, 148, 100, 111, 116, 115, 113, 117, 97, 114, 101, 59, 226, 138,
161, 100, 111, 117, 98, 108, 101, 98, 97, 114, 119, 101, 100, 103, 101, 59,
226, 140, 134, 100, 111, 119, 110, 97, 114, 114, 111, 119, 59, 226, 134, 147,
100, 111, 119, 110, 100, 111, 119, 110, 97, 114, 114, 111, 119, 115, 59, 226,
135, 138, 100, 111, 119, 110, 104, 97, 114, 112, 111, 111, 110, 108, 101, 102,
116, 59, 226, 135, 131, 100, 111, 119, 110, 104, 97, 114, 112, 111, 111, 110,
114, 105, 103, 104, 116, 59, 226, 135, 130, 100, 114, 98, 107, 97, 114, 111,
119, 59, 226, 164, 144, 100, 114, 99, 111, 114, 110, 59, 226, 140, 159, 100,
114, 99, 114, 111, 112, 59, 226, 140, 140, 100, 115, 99, 114, 59, 240, 157,
146, 185, 100, 115, 99, 121, 59, 209, 149, 100, 115, 111, 108, 59, 226, 167,
182, 100, 115, 116, 114, 111, 107, 59, 196, 145, 100, 116, 100, 111, 116, 59,
226, 139, 177, 100, 116, 114, 105, 59, 226, 150, 191, 100, 116, 114, 105, 102,
59, 226, 150, 190, 100, 117, 97, 114, 114, 59, 226, 135, 181, 100, 117, 104,
97, 114, 59, 226, 165, 175, 100, 119, 97, 110, 103, 108, 101, 59, 226, 166,
166, 100, 122, 99, 121, 59, 209, 159, 100, 122, 105, 103, 114, 97, 114, 114,
59, 226, 159, 191, 101, 68, 68, 111, 116, 59, 226, 169, 183, 101, 68, 111,
116, 59, 226, 137, 145, 101, 97, 99, 117, 116, 101, 195, 169, 101, 97, 99,
117, 116, 101, 59, 195, 169, 101, 97, 115, 116, 101, 114, 59, 226, 169, 174,
101, 99, 97, 114, 111, 110, 59, 196, 155, 101, 99, 105, 114, 59, 226, 137,
150, 101, 99, 105, 114, 99, 195, 170, 101, 99, 105, 114, 99, 59, 195, 170,
101, 99, 111, 108, 111, 110, 59, 226, 137, 149, 101, 99, 121, 59, 209, 141,
101, 100, 111, 116, 59, 196, 151, 101, 101, 59, 226, 133, 135, 101, 102, 68,
111, 116, 59, 226, 137, 146, 101, 102, 114, 59, 240, 157, 148, 162, 101, 103,
59, 226, 170, 154, 101, 103, 114, 97, 118, 101, 195, 168, 101, 103, 114, 97,
118, 101, 59, 195, 168, 101, 103, 115, 59, 226, 170, 150, 101, 103, 115, 100,
111, 116, 59, 226, 170, 152, 101, 108, 59, 226, 170, 153, 101, 108, 105, 110,
116, 101, 114, 115, 59, 226, 143, 167, 101, 108, 108, 59, 226, 132, 147, 101,
108, 115, 59, 226, 170, 149, 101, 108, 115, 100, 111, 116, 59, 226, 170, 151,
101, 109, 97, 99, 114, 59, 196, 147, 101, 109, 112, 116, 121, 59, 226, 136,
133, 101, 109, 112, 116, 121, 115, 101, 116, 59, 226, 136, 133, 101, 109, 112,
116, 121, 118, 59, 226, 136, 133, 101, 109, 115, 112, 49, 51, 59, 226, 128,
132, 101, 109, 115, 112, 49, 52, 59, 226, 128, 133, 101, 109, 115, 112, 59,
226, 128, 131, 101, 110, 103, 59, 197, 139, 101, 110, 115, 112, 59, 226, 128,
130, 101, 111, 103, 111, 110, 59, 196, 153, 101, 111, 112, 102, 59, 240, 157,
149, 150, 101, 112, 97, 114, 59, 226, 139, 149, 101, 112, 97, 114, 115, 108,
59, 226, 167, 163, 101, 112, 108, 117, 115, 59, 226, 169, 177, 101, 112, 115,
105, 59, 206, 181, 101, 112, 115, 105, 108, 111, 110, 59, 206, 181, 101, 112,
115, 105, 118, 59, 207, 181, 101, 113, 99, 105, 114, 99, 59, 226, 137, 150,
101, 113, 99, 111, 108, 111, 110, 59, 226, 137, 149, 101, 113, 115, 105, 109,
59, 226, 137, 130, 101, 113, 115, 108, 97, 110, 116, 103, 116, 114, 59, 226,
170, 150, 101, 113, 115, 108, 97, 110, 116, 108, 101, 115, 115, 59, 226, 170,
149, 101, 113, 117, 97, 108, 115, 59, 61, 101, 113, 117, 101, 115, 116, 59,
226, 137, 159, 101, 113, 117, 105, 118, 59, 226, 137, 161, 101, 113, 117, 105,
118, 68, 68, 59, 226, 169, 184, 101, 113, 118, 112, 97, 114, 115, 108, 59,
226, 167, 165, 101, 114, 68, 111, 116, 59, 226, 137, 147, 101, 114, 97, 114,
114, 59, 226, 165, 177, 101, 115, 99, 114, 59, 226, 132, 175, 101, 115, 100,
111, 116, 59, 226, 137, 144, 101, 115, 105, 109, 59, 226, 137, 130, 101, 116,
97, 59, 206, 183, 101, 116, 104, 195, 176, 101, 116, 104, 59, 195, 176, 101,
117, 109, 108, 195, 171, 101, 117, 109, 108, 59, 195, 171, 101, 117, 114, 111,
59, 226, 130, 172, 101, 120, 99, 108, 59, 33, 101, 120, 105, 115, 116, 59,
226, 136, 131, 101, 120, 112, 101, 99, 116, 97, 116, 105, 111, 110, 59, 226,
132, 176, 101, 120, 112, 111, 110, 101, 110, 116, 105, 97, 108, 101, 59, 226,
133, 135, 102, 97, 108, 108, 105, 110, 103, 100, 111, 116, 115, 101, 113, 59,
226, 137, 146, 102, 99, 121, 59, 209, 132, 102, 101, 109, 97, 108, 101, 59,
226, 153, 128, 102, 102, 105, 108, 105, 103, 59, 239, 172, 131, 102, 102, 108,
105, 103, 59, 239, 172, 128, 102, 102, 108, 108, 105, 103, 59, 239, 172, 132,
102, 102, 114, 59, 240, 157, 148, 163, 102, 105, 108, 105, 103, 59, 239, 172,
129, 102, 106, 108, 105, 103, 59, 102, 106, 102, 108, 97, 116, 59, 226, 153,
173, 102, 108, 108, 105, 103, 59, 239, 172, 130, 102, 108, 116, 110, 115, 59,
226, 150, 177, 102, 110, 111, 102, 59, 198, 146, 102, 111, 112, 102, 59, 240,
157, 149, 151, 102, 111, 114, 97, 108, 108, 59, 226, 136, 128, 102, 111, 114,
107, 59, 226, 139, 148, 102, 111, 114, 107, 118, 59, 226, 171, 153, 102, 112,
97, 114, 116, 105, 110, 116, 59, 226, 168, 141, 102, 114, 97, 99, 49, 50,
194, 189, 102, 114, 97, 99, 49, 50, 59, 194, 189, 102, 114, 97, 99, 49,
51, 59, 226, 133, 147, 102, 114, 97, 99, 49, 52, 194, 188, 102, 114, 97,
99, 49, 52, 59, 194, 188, 102, 114, 97, 99, 49, 53, 59, 226, 133, 149,
102, 114, 97, 99, 49, 54, 59, 226, 133, 153, 102, 114, 97, 99, 49, 56,
59, 226, 133, 155, 102, 114, 97, 99, 50, 51, 59, 226, 133, 148, 102, 114,
97, 99, 50, 53, 59, 226, 133, 150, 102, 114, 97, 99, 51, 52, 194, 190,
102, 114, 97, 99, 51, 52, 59, 194, 190, 102, 114, 97, 99, 51, 53, 59,
226, 133, 151, 102, 114, 97, 99, 51, 56, 59, 226, 133, 156, 102, 114, 97,
99, 52, 53, 59, 226, 133, 152, 102, 114, 97, 99, 53, 54, 59, 226, 133,
154, 102, 114, 97, 99, 53, 56, 59, 226, 133, 157, 102, 114, 97, 99, 55,
56, 59, 226, 133, 158, 102, 114, 97, 115, 108, 59, 226, 129, 132, 102, 114,
111, 119, 110, 59, 226, 140, 162, 102, 115, 99, 114, 59, 240, 157, 146, 187,
103, 69, 59, 226, 137, 167, 103, 69, 108, 59, 226, 170, 140, 103, 97, 99,
117, 116, 101, 59, 199, 181, 103, 97, 109, 109, 97, 59, 206, 179, 103, 97,
109, 109, 97, 100, 59, 207, 157, 103, 97, 112, 59, 226, 170, 134, 103, 98,
114, 101, 118, 101, 59, 196, 159, 103, 99, 105, 114, 99, 59, 196, 157, 103,
99, 121, 59, 208, 179, 103, 100, 111, 116, 59, 196, 161, 103, 101, 59, 226,
137, 165, 103, 101, 108, 59, 226, 139, 155, 103, 101, 113, 59, 226, 137, 165,
103, 101, 113, 113, 59, 226, 137, 167, 103, 101, 113, 115, 108, 97, 110, 116,
59, 226, 169, 190, 103, 101, 115, 59, 226, 169, 190, 103, 101, 115, 99, 99,
59, 226, 170, 169, 103, 101, 115, 100, 111, 116, 59, 226, 170, 128, 103, 101,
115, 100, 111, 116, 111, 59, 226, 170, 130, 103, 101, 115, 100, 111, 116, 111,
108, 59, 226, 170, 132, 103, 101, 115, 108, 59, 226, 139, 155, 239, 184, 128,
103, 101, 115, 108, 101, 115, 59, 226, 170, 148, 103, 102, 114, 59, 240, 157,
148, 164, 103, 103, 59, 226, 137, 171, 103, 103, 103, 59, 226, 139, 153, 103,
105, 109, 101, 108, 59, 226, 132, 183, 103, 106, 99, 121, 59, 209, 147, 103,
108, 59, 226, 137, 183, 103, 108, 69, 59, 226, 170, 146, 103, 108, 97, 59,
226, 170, 165, 103, 108, 106, 59, 226, 170, 164, 103, 110, 69, 59, 226, 137,
169, 103, 110, 97, 112, 59, 226, 170, 138, 103, 110, 97, 112, 112, 114, 111,
120, 59, 226, 170, 138, 103, 110, 101, 59, 226, 170, 136, 103, 110, 101, 113,
59, 226, 170, 136, 103, 110, 101, 113, 113, 59, 226, 137, 169, 103, 110, 115,
105, 109, 59, 226, 139, 167, 103, 111, 112, 102, 59, 240, 157, 149, 152, 103,
114, 97, 118, 101, 59, 96, 103, 115, 99, 114, 59, 226, 132, 138, 103, 115,
105, 109, 59, 226, 137, 179, 103, 115, 105, 109, 101, 59, 226, 170, 142, 103,
115, 105, 109, 108, 59, 226, 170, 144, 103, 116, 62, 103, 116, 59, 62, 103,
116, 99, 99, 59, 226, 170, 167, 103, 116, 99, 105, 114, 59, 226, 169, 186,
103, 116, 100, 111, 116, 59, 226, 139, 151, 103, 116, 108, 80, 97, 114, 59,
226, 166, 149, 103, 116, 113, 117, 101, 115, 116, 59, 226, 169, 188, 103, 116,
114, 97, 112, 112, 114, 111, 120, 59, 226, 170, 134, 103, 116, 114, 97, 114,
114, 59, 226, 165, 184, 103, 116, 114, 100, 111, 116, 59, 226, 139, 151, 103,
116, 114, 101, 113, 108, 101, 115, 115, 59, 226, 139, 155, 103, 116, 114, 101,
113, 113, 108, 101, 115, 115, 59, 226, 170, 140, 103, 116, 114, 108, 101, 115,
115, 59, 226, 137, 183, 103, 116, 114, 115, 105, 109, 59, 226, 137, 179, 103,
118, 101, 114, 116, 110, 101, 113, 113, 59, 226, 137, 169, 239, 184, 128, 103,
118, 110, 69, 59, 226, 137, 169, 239, 184, 128, 104, 65, 114, 114, 59, 226,
135, 148, 104, 97, 105, 114, 115, 112, 59, 226, 128, 138, 104, 97, 108, 102,
59, 194, 189, 104, 97, 109, 105, 108, 116, 59, 226, 132, 139, 104, 97, 114,
100, 99, 121, 59, 209, 138, 104, 97, 114, 114, 59, 226, 134, 148, 104, 97,
114, 114, 99, 105, 114, 59, 226, 165, 136, 104, 97, 114, 114, 119, 59, 226,
134, 173, 104, 98, 97, 114, 59, 226, 132, 143, 104, 99, 105, 114, 99, 59,
196, 165, 104, 101, 97, 114, 116, 115, 59, 226, 153, 165, 104, 101, 97, 114,
116, 115, 117, 105, 116, 59, 226, 153, 165, 104, 101, 108, 108, 105, 112, 59,
226, 128, 166, 104, 101, 114, 99, 111, 110, 59, 226, 138, 185, 104, 102, 114,
59, 240, 157, 148, 165, 104, 107, 115, 101, 97, 114, 111, 119, 59, 226, 164,
165, 104, 107, 115, 119, 97, 114, 111, 119, 59, 226, 164, 166, 104, 111, 97,
114, 114, 59, 226, 135, 191, 104, 111, 109, 116, 104, 116, 59, 226, 136, 187,
104, 111, 111, 107, 108, 101, 102, 116, 97, 114, 114, 111, 119, 59, 226, 134,
169, 104, 111, 111, 107, 114, 105, 103, 104, 116, 97, 114, 114, 111, 119, 59,
226, 134, 170, 104, 111, 112, 102, 59, 240, 157, 149, 153, 104, 111, 114, 98,
97, 114, 59, 226, 128, 149, 104, 115, 99, 114, 59, 240, 157, 146, 189, 104,
115, 108, 97, 115, 104, 59, 226, 132, 143, 104, 115, 116, 114, 111, 107, 59,
196, 167, 104, 121, 98, 117, 108, 108, 59, 226, 129, 131, 104, 121, 112, 104,
101, 110, 59, 226, 128, 144, 105, 97, 99, 117, 116, 101, 195, 173, 105, 97,
99, 117, 116, 101, 59, 195, 173, 105, 99, 59, 226, 129, 163, 105, 99, 105,
114, 99, 195, 174, 105, 99, 105, 114, 99, 59, 195, 174, 105, 99, 121, 59,
208, 184, 105, 101, 99, 121, 59, 208, 181, 105, 101, 120, 99, 108, 194, 161,
105, 101, 120, 99, 108, 59, 194, 161, 105, 102, 102, 59, 226, 135, 148, 105,
102, 114, 59, 240, 157, 148, 166, 105, 103, 114, 97, 118, 101, 195, 172, 105,
103, 114, 97, 118, 101, 59, 195, 172, 105, 105, 59, 226, 133, 136, 105, 105,
105, 105, 110, 116, 59, 226, 168, 140, 105, 105, 105, 110, 116, 59, 226, 136,
173, 105, 105, 110, 102, 105, 110, 59, 226, 167, 156, 105, 105, 111, 116, 97,
59, 226, 132, 169, 105, 106, 108, 105, 103, 59, 196, 179, 105, 109, 97, 99,
114, 59, 196, 171, 105, 109, 97, 103, 101, 59, 226, 132, 145, 105, 109, 97,
103, 108, 105, 110, 101, 59, 226, 132, 144, 105, 109, 97, 103, 112, 97, 114,
116, 59, 226, 132, 145, 105, 109, 97, 116, 104, 59, 196, 177, 105, 109, 111,
102, 59, 226, 138, 183, 105, 109, 112, 101, 100, 59, 198, 181, 105, 110, 59,
226, 136, 136, 105, 110, 99, 97, 114, 101, 59, 226, 132, 133, 105, 110, 102,
105, 110, 59, 226, 136, 158, 105, 110, 102, 105, 110, 116, 105, 101, 59, 226,
167, 157, 105, 110, 111, 100, 111, 116, 59, 196, 177, 105, 110, 116, 59, 226,
136, 171, 105, 110, 116, 99, 97, 108, 59, 226, 138, 186, 105, 110, 116, 101,
103, 101, 114, 115, 59, 226, 132, 164, 105, 110, 116, 101, 114, 99, 97, 108,
59, 226, 138, 186, 105, 110, 116, 108, 97, 114, 104, 107, 59, 226, 168, 151,
105, 110, 116, 112, 114, 111, 100, 59, 226, 168, 188, 105, 111, 99, 121, 59,
209, 145, 105, 111, 103, 111, 110, 59, 196, 175, 105, 111, 112, 102, 59, 240,
157, 149, 154, 105, 111, 116, 97, 59, 206, 185, 105, 112, 114, 111, 100, 59,
226, 168, 188, 105, 113, 117, 101, 115, 116, 194, 191, 105, 113, 117, 101, 115,
116, 59, 194, 191, 105, 115, 99, 114, 59, 240, 157, 146, 190, 105, 115, 105,
110, 59, 226, 136, 136, 105, 115, 105, 110, 69, 59, 226, 139, 185, 105, 115,
105, 110, 100, 111, 116, 59, 226, 139, 181, 105, 115, 105, 110, 115, 59, 226,
139, 180, 105, 115, 105, 110, 115, 118, 59, 226, 139, 179, 105, 115, 105, 110,
118, 59, 226, 136, 136, 105, 116, 59, 226, 129, 162, 105, 116, 105, 108, 100,
101, 59, 196, 169, 105, 117, 107, 99, 121, 59, 209, 150, 105, 117, 109, 108,
195, 175, 105, 117, 109, 108, 59, 195, 175, 106, 99, 105, 114, 99, 59, 196,
181, 106, 99, 121, 59, 208, 185, 106, 102, 114, 59, 240, 157, 148, 167, 106,
109, 97, 116, 104, 59, 200, 183, 106, 111, 112, 102, 59, 240, 157, 149, 155,
106, 115, 99, 114, 59, 240, 157, 146, 191, 106, 115, 101, 114, 99, 121, 59,
209, 152, 106, 117, 107, 99, 121, 59, 209, 148, 107, 97, 112, 112, 97, 59,
206, 186, 107, 97, 112, 112, 97, 118, 59, 207, 176, 107, 99, 101, 100, 105,
108, 59, 196, 183, 107, 99, 121, 59, 208, 186, 107, 102, 114, 59, 240, 157,
148, 168, 107, 103, 114, 101, 101, 110, 59, 196, 184, 107, 104, 99, 121, 59,
209, 133, 107, 106, 99, 121, 59, 209, 156, 107, 111, 112, 102, 59, 240, 157,
149, 156, 107, 115, 99, 114, 59, 240, 157, 147, 128, 108, 65, 97, 114, 114,
59, 226, 135, 154, 108, 65, 114, 114, 59, 226, 135, 144, 108, 65, 116, 97,
105, 108, 59, 226, 164, 155, 108, 66, 97, 114, 114, 59, 226, 164, 142, 108,
69, 59, 226, 137, 166, 108, 69, 103, 59, 226, 170, 139, 108, 72, 97, 114,
59, 226, 165, 162, 108, 97, 99, 117, 116, 101, 59, 196, 186, 108, 97, 101,
109, 112, 116, 121, 118, 59, 226, 166, 180, 108, 97, 103, 114, 97, 110, 59,
226, 132, 146, 108, 97, 109, 98, 100, 97, 59, 206, 187, 108, 97, 110, 103,
59, 226, 159, 168, 108, 97, 110, 103, 100, 59, 226, 166, 145, 108, 97, 110,
103, 108, 101, 59, 226, 159, 168, 108, 97, 112, 59, 226, 170, 133, 108, 97,
113, 117, 111, 194, 171, 108, 97, 113, 117, 111, 59, 194, 171, 108, 97, 114,
114, 59, 226, 134, 144, 108, 97, 114, 114, 98, 59, 226, 135, 164, 108, 97,
114, 114, 98, 102, 115, 59, 226, 164, 159, 108, 97, 114, 114, 102, 115, 59,
226, 164, 157, 108, 97, 114, 114, 104, 107, 59, 226, 134, 169, 108, 97, 114,
114, 108, 112, 59, 226, 134, 171, 108, 97, 114, 114, 112, 108, 59, 226, 164,
185, 108, 97, 114, 114, 115, 105, 109, 59, 226, 165, 179, 108, 97, 114, 114,
116, 108, 59, 226, 134, 162, 108, 97, 116, 59, 226, 170, 171, 108, 97, 116,
97, 105, 108, 59, 226, 164, 153, 108, 97, 116, 101, 59, 226, 170, 173, 108,
97, 116, 101, 115, 59, 226, 170, 173, 239, 184, 128, 108, 98, 97, 114, 114,
59, 226, 164, 140, 108, 98, 98, 114, 107, 59, 226, 157, 178, 108, 98, 114,
97, 99, 101, 59, 123, 108, 98, 114, 97, 99, 107, 59, 91, 108, 98, 114,
107, 101, 59, 226, 166, 139, 108, 98, 114, 107, 115, 108, 100, 59, 226, 166,
143, 108, 98, 114, 107, 115, 108, 117, 59, 226, 166, 141, 108, 99, 97, 114,
111, 110, 59, 196, 190, 108, 99, 101, 100, 105, 108, 59, 196, 188, 108, 99,
101, 105, 108, 59, 226, 140, 136, 108, 99, 117, 98, 59, 123, 108, 99, 121,
59, 208, 187, 108, 100, 99, 97, 59, 226, 164, 182, 108, 100, 113, 117, 111,
59, 226, 128, 156, 108, 100, 113, 117, 111, 114, 59, 226, 128, 158, 108, 100,
114, 100, 104, 97, 114, 59, 226, 165, 167, 108, 100, 114, 117, 115, 104, 97,
114, 59, 226, 165, 139, 108, 100, 115, 104, 59, 226, 134, 178, 108, 101, 59,
226, 137, 164, 108, 101, 102, 116, 97, 114, 114, 111, 119, 59, 226, 134, 144,
108, 101, 102, 116, 97, 114, 114, 111, 119, 116, 97, 105, 108, 59, 226, 134,
162, 108, 101, 102, 116, 104, 97, 114, 112, 111, 111, 110, 100, 111, 119, 110,
59, 226, 134, 189, 108, 101, 102, 116, 104, 97, 114, 112, 111, 111, 110, 117,
112, 59, 226, 134, 188, 108, 101, 102, 116, 108, 101, 102, 116, 97, 114, 114,
111, 119, 115, 59, 226, 135, 135, 108, 101, 102, 116, 114, 105, 103, 104, 116,
97, 114, 114, 111, 119, 59, 226, 134, 148, 108, 101, 102, 116, 114, 105, 103,
104, 116, 97, 114, 114, 111, 119, 115, 59, 226, 135, 134, 108, 101, 102, 116,
114, 105, 103, 104, 116, 104, 97, 114, 112, 111, 111, 110, 115, 59, 226, 135,
139, 108, 101, 102, 116, 114, 105, 103, 104, 116, 115, 113, 117, 105, 103, 97,
114, 114, 111, 119, 59, 226, 134, 173, 108, 101, 102, 116, 116, 104, 114, 101,
101, 116, 105, 109, 101, 115, 59, 226, 139, 139, 108, 101, 103, 59, 226, 139,
154, 108, 101, 113, 59, 226, 137, 164, 108, 101, 113, 113, 59, 226, 137, 166,
108, 101, 113, 115, 108, 97, 110, 116, 59, 226, 169, 189, 108, 101, 115, 59,
226, 169, 189, 108, 101, 115, 99, 99, 59, 226, 170, 168, 108, 101, 115, 100,
111, 116, 59, 226, 169, 191, 108, 101, 115, 100, 111, 116, 111, 59, 226, 170,
129, 108, 101, 115, 100, 111, 116, 111, 114, 59, 226, 170, 131, 108, 101, 115,
103, 59, 226, 139, 154, 239, 184, 128, 108, 101, 115, 103, 101, 115, 59, 226,
170, 147, 108, 101, 115, 115, 97, 112, 112, 114, 111, 120, 59, 226, 170, 133,
108, 101, 115, 115, 100, 111, 116, 59, 226, 139, 150, 108, 101, 115, 115, 101,
113, 103, 116, 114, 59, 226, 139, 154, 108, 101, 115, 115, 101, 113, 113, 103,
116, 114, 59, 226, 170, 139, 108, 101, 115, 115, 103, 116, 114, 59, 226, 137,
182, 108, 101, 115, 115, 115, 105, 109, 59, 226, 137, 178, 108, 102, 105, 115,
104, 116, 59, 226, 165, 188, 108, 102, 108, 111, 111, 114, 59, 226, 140, 138,
108, 102, 114, 59, 240, 157, 148, 169, 108, 103, 59, 226, 137, 182, 108, 103,
69, 59, 226, 170, 145, 108, 104, 97, 114, 100, 59, 226, 134, 189, 108, 104,
97, 114, 117, 59, 226, 134, 188, 108, 104, 97, 114, 117, 108, 59, 226, 165,
170, 108, 104, 98, 108, 107, 59, 226, 150, 132, 108, 106, 99, 121, 59, 209,
153, 108, 108, 59, 226, 137, 170, 108, 108, 97, 114, 114, 59, 226, 135, 135,
108, 108, 99, 111, 114, 110, 101, 114, 59, 226, 140, 158, 108, 108, 104, 97,
114, 100, 59, 226, 165, 171, 108, 108, 116, 114, 105, 59, 226, 151, 186, 108,
109, 105, 100, 111, 116, 59, 197, 128, 108, 109, 111, 117, 115, 116, 59, 226,
142, 176, 108, 109, 111, 117, 115, 116, 97, 99, 104, 101, 59, 226, 142, 176,
108, 110, 69, 59, 226, 137, 168, 108, 110, 97, 112, 59, 226, 170, 137, 108,
110, 97, 112, 112, 114, 111, 120, 59, 226, 170, 137, 108, 110, 101, 59, 226,
170, 135, 108, 110, 101, 113, 59, 226, 170, 135, 108, 110, 101, 113, 113, 59,
226, 137, 168, 108, 110, 115, 105, 109, 59, 226, 139, 166, 108, 111, 97, 110,
103, 59, 226, 159, 172, 108, 111, 97, 114, 114, 59, 226, 135, 189, 108, 111,
98, 114, 107, 59, 226, 159, 166, 108, 111, 110, 103, 108, 101, 102, 116, 97,
114, 114, 111, 119, 59, 226, 159, 181, 108, 111, 110, 103, 108, 101, 102, 116,
114, 105, 103, 104, 116, 97, 114, 114, 111, 119, 59, 226, 159, 183, 108, 111,
110, 103, 109, 97, 112, 115, 116, 111, 59, 226, 159, 188, 108, 111, 110, 103,
114, 105, 103, 104, 116, 97, 114, 114, 111, 119, 59, 226, 159, 182, 108, 111,
111, 112, 97, 114, 114, 111, 119, 108, 101, 102, 116, 59, 226, 134, 171, 108,
111, 111, 112, 97, 114, 114, 111, 119, 114, 105, 103, 104, 116, 59, 226, 134,
172, 108, 111, 112, 97, 114, 59, 226, 166, 133, 108, 111, 112, 102, 59, 240,
157, 149, 157, 108, 111, 112, 108, 117, 115, 59, 226, 168, 173, 108, 111, 116,
105, 109, 101, 115, 59, 226, 168, 180, 108, 111, 119, 97, 115, 116, 59, 226,
136, 151, 108, 111, 119, 98, 97, 114, 59, 95, 108, 111, 122, 59, 226, 151,
138, 108, 111, 122, 101, 110, 103, 101, 59, 226, 151, 138, 108, 111, 122, 102,
59, 226, 167, 171, 108, 112, 97, 114, 59, 40, 108, 112, 97, 114, 108, 116,
59, 226, 166, 147, 108, 114, 97, 114, 114, 59, 226, 135, 134, 108, 114, 99,
111, 114, 110, 101, 114, 59, 226, 140, 159, 108, 114, 104, 97, 114, 59, 226,
135, 139, 108, 114, 104, 97, 114, 100, 59, 226, 165, 173, 108, 114, 109, 59,
226, 128, 142, 108, 114, 116, 114, 105, 59, 226, 138, 191, 108, 115, 97, 113,
117, 111, 59, 226, 128, 185, 108, 115, 99, 114, 59, 240, 157, 147, 129, 108,
115, 104, 59, 226, 134, 176, 108, 115, 105, 109, 59, 226, 137, 178, 108, 115,
105, 109, 101, 59, 226, 170, 141, 108, 115, 105, 109, 103, 59, 226, 170, 143,
108, 115, 113, 98, 59, 91, 108, 115, 113, 117, 111, 59, 226, 128, 152, 108,
115, 113, 117, 111, 114, 59, 226, 128, 154, 108, 115, 116, 114, 111, 107, 59,
197, 130, 108, 116, 60, 108, 116, 59, 60, 108, 116, 99, 99, 59, 226, 170,
166, 108, 116, 99, 105, 114, 59, 226, 169, 185, 108, 116, 100, 111, 116, 59,
226, 139, 150, 108, 116, 104, 114, 101, 101, 59, 226, 139, 139, 108, 116, 105,
109, 101, 115, 59, 226, 139, 137, 108, 116, 108, 97, 114, 114, 59, 226, 165,
182, 108, 116, 113, 117, 101, 115, 116, 59, 226, 169, 187, 108, 116, 114, 80,
97, 114, 59, 226, 166, 150, 108, 116, 114, 105, 59, 226, 151, 131, 108, 116,
114, 105, 101, 59, 226, 138, 180, 108, 116, 114, 105, 102, 59, 226, 151, 130,
108, 117, 114, 100, 115, 104, 97, 114, 59, 226, 165, 138, 108, 117, 114, 117,
104, 97, 114, 59, 226, 165, 166, 108, 118, 101, 114, 116, 110, 101, 113, 113,
59, 226, 137, 168, 239, 184, 128, 108, 118, 110, 69, 59, 226, 137, 168, 239,
184, 128, 109, 68, 68, 111, 116, 59, 226, 136, 186, 109, 97, 99, 114, 194,
175, 109, 97, 99, 114, 59, 194, 175, 109, 97, 108, 101, 59, 226, 153, 130,
109, 97, 108, 116, 59, 226, 156, 160, 109, 97, 108, 116, 101, 115, 101, 59,
226, 156, 160, 109, 97, 112, 59, 226, 134, 166, 109, 97, 112, 115, 116, 111,
59, 226, 134, 166, 109, 97, 112, 115, 116, 111, 100, 111, 119, 110, 59, 226,
134, 167, 109, 97, 112, 115, 116, 111, 108, 101, 102, 116, 59, 226, 134, 164,
109, 97, 112, 115, 116, 111, 117, 112, 59, 226, 134, 165, 109, 97, 114, 107,
101, 114, 59, 226, 150, 174, 109, 99, 111, 109, 109, 97, 59, 226, 168, 169,
109, 99, 121, 59, 208, 188, 109, 100, 97, 115, 104, 59, 226, 128, 148, 109,
101, 97, 115, 117, 114, 101, 100, 97, 110, 103, 108, 101, 59, 226, 136, 161,
109, 102, 114, 59, 240, 157, 148, 170, 109, 104, 111, 59, 226, 132, 167, 109,
105, 99, 114, 111, 194, 181, 109, 105, 99, 114, 111, 59, 194, 181, 109, 105,
100, 59, 226, 136, 163, 109, 105, 100, 97, 115, 116, 59, 42, 109, 105, 100,
99, 105, 114, 59, 226, 171, 176, 109, 105, 100, 100, 111, 116, 194, 183, 109,
105, 100, 100, 111, 116, 59, 194, 183, 109, 105, 110, 117, 115, 59, 226, 136,
146, 109, 105, 110, 117, 115, 98, 59, 226, 138, 159, 109, 105, 110, 117, 115,
100, 59, 226, 136, 184, 109, 105, 110, 117, 115, 100, 117, 59, 226, 168, 170,
109, 108, 99, 112, 59, 226, 171, 155, 109, 108, 100, 114, 59, 226, 128, 166,
109, 110, 112, 108, 117, 115, 59, 226, 136, 147, 109, 111, 100, 101, 108, 115,
59, 226, 138, 167, 109, 111, 112, 102, 59, 240, 157, 149, 158, 109, 112, 59,
226, 136, 147, 109, 115, 99, 114, 59, 240, 157, 147, 130, 109, 115, 116, 112,
111, 115, 59, 226, 136, 190, 109, 117, 59, 206, 188, 109, 117, 108, 116, 105,
109, 97, 112, 59, 226, 138, 184, 109, 117, 109, 97, 112, 59, 226, 138, 184,
110, 71, 103, 59, 226, 139, 153, 204, 184, 110, 71, 116, 59, 226, 137, 171,
226, 131, 146, 110, 71, 116, 118, 59, 226, 137, 171, 204, 184, 110, 76, 101,
102, 116, 97, 114, 114, 111, 119, 59, 226, 135, 141, 110, 76, 101, 102, 116,
114, 105, 103, 104, 116, 97, 114, 114, 111, 119, 59, 226, 135, 142, 110, 76,
108, 59, 226, 139, 152, 204, 184, 110, 76, 116, 59, 226, 137, 170, 226, 131,
146, 110, 76, 116, 118, 59, 226, 137, 170, 204, 184, 110, 82, 105, 103, 104,
116, 97, 114, 114, 111, 119, 59, 226, 135, 143, 110, 86, 68, 97, 115, 104,
59, 226, 138, 175, 110, 86, 100, 97, 115, 104, 59, 226, 138, 174, 110, 97,
98, 108, 97, 59, 226, 136, 135, 110, 97, 99, 117, 116, 101, 59, 197, 132,
110, 97, 110, 103, 59, 226, 136, 160, 226, 131, 146, 110, 97, 112, 59, 226,
137, 137, 110, 97, 112, 69, 59, 226, 169, 176, 204, 184, 110, 97, 112, 105,
100, 59, 226, 137, 139, 204, 184, 110, 97, 112, 111, 115, 59, 197, 137, 110,
97, 112, 112, 114, 111, 120, 59, 226, 137, 137, 110, 97, 116, 117, 114, 59,
226, 153, 174, 110, 97, 116, 117, 114, 97, 108, 59, 226, 153, 174, 110, 97,
116, 117, 114, 97, 108, 115, 59, 226, 132, 149, 110, 98, 115, 112, 194, 160,
110, 98, 115, 112, 59, 194, 160, 110, 98, 117, 109, 112, 59, 226, 137, 142,
204, 184, 110, 98, 117, 109, 112, 101, 59, 226, 137, 143, 204, 184, 110, 99,
97, 112, 59, 226, 169, 131, 110, 99, 97, 114, 111, 110, 59, 197, 136, 110,
99, 101, 100, 105, 108, 59, 197, 134, 110, 99, 111, 110, 103, 59, 226, 137,
135, 110, 99, 111, 110, 103, 100, 111, 116, 59, 226, 169, 173, 204, 184, 110,
99, 117, 112, 59, 226, 169, 130, 110, 99, 121, 59, 208, 189, 110, 100, 97,
115, 104, 59, 226, 128, 147, 110, 101, 59, 226, 137, 160, 110, 101, 65, 114,
114, 59, 226, 135, 151, 110, 101, 97, 114, 104, 107, 59, 226, 164, 164, 110,
101, 97, 114, 114, 59, 226, 134, 151, 110, 101, 97, 114, 114, 111, 119, 59,
226, 134, 151, 110, 101, 100, 111, 116, 59, 226, 137, 144, 204, 184, 110, 101,
113, 117, 105, 118, 59, 226, 137, 162, 110, 101, 115, 101, 97, 114, 59, 226,
164, 168, 110, 101, 115, 105, 109, 59, 226, 137, 130, 204, 184, 110, 101, 120,
105, 115, 116, 59, 226, 136, 132, 110, 101, 120, 105, 115, 116, 115, 59, 226,
136, 132, 110, 102, 114, 59, 240, 157, 148, 171, 110, 103, 69, 59, 226, 137,
167, 204, 184, 110, 103, 101, 59, 226, 137, 177, 110, 103, 101, 113, 59, 226,
137, 177, 110, 103, 101, 113, 113, 59, 226, 137, 167, 204, 184, 110, 103, 101,
113, 115, 108, 97, 110, 116, 59, 226, 169, 190, 204, 184, 110, 103, 101, 115,
59, 226, 169, 190, 204, 184, 110, 103, 115, 105, 109, 59, 226, 137, 181, 110,
103, 116, 59, 226, 137, 175, 110, 103, 116, 114, 59, 226, 137, 175, 110, 104,
65, 114, 114, 59, 226, 135, 142, 110, 104, 97, 114, 114, 59, 226, 134, 174,
110, 104, 112, 97, 114, 59, 226, 171, 178, 110, 105, 59, 226, 136, 139, 110,
105, 115, 59, 226, 139, 188, 110, 105, 115, 100, 59, 226, 139, 186, 110, 105,
118, 59, 226, 136, 139, 110, 106, 99, 121, 59, 209, 154, 110, 108, 65, 114,
114, 59, 226, 135, 141, 110, 108, 69, 59, 226, 137, 166, 204, 184, 110, 108,
97, 114, 114, 59, 226, 134, 154, 110, 108, 100, 114, 59, 226, 128, 165, 110,
108, 101, 59, 226, 137, 176, 110, 108, 101, 102, 116, 97, 114, 114, 111, 119,
59, 226, 134, 154, 110, 108, 101, 102, 116, 114, 105, 103, 104, 116, 97, 114,
114, 111, 119, 59, 226, 134, 174, 110, 108, 101, 113, 59, 226, 137, 176, 110,
108, 101, 113, 113, 59, 226, 137, 166, 204, 184, 110, 108, 101, 113, 115, 108,
97, 110, 116, 59, 226, 169, 189, 204, 184, 110, 108, 101, 115, 59, 226, 169,
189, 204, 184, 110, 108, 101, 115, 115, 59, 226, 137, 174, 110, 108, 115, 105,
109, 59, 226, 137, 180, 110, 108, 116, 59, 226, 137, 174, 110, 108, 116, 114,
105, 59, 226, 139, 170, 110, 108, 116, 114, 105, 101, 59, 226, 139, 172, 110,
109, 105, 100, 59, 226, 136, 164, 110, 111, 112, 102, 59, 240, 157, 149, 159,
110, 111, 116, 194, 172, 110, 111, 116, 59, 194, 172, 110, 111, 116, 105, 110,
59, 226, 136, 137, 110, 111, 116, 105, 110, 69, 59, 226, 139, 185, 204, 184,
110, 111, 116, 105, 110, 100, 111, 116, 59, 226, 139, 181, 204, 184, 110, 111,
116, 105, 110, 118, 97, 59, 226, 136, 137, 110, 111, 116, 105, 110, 118, 98,
59, 226, 139, 183, 110, 111, 116, 105, 110, 118, 99, 59, 226, 139, 182, 110,
111, 116, 110, 105, 59, 226, 136, 140, 110, 111, 116, 110, 105, 118, 97, 59,
226, 136, 140, 110, 111, 116, 110, 105, 118, 98, 59, 226, 139, 190, 110, 111,
116, 110, 105, 118, 99, 59, 226, 139, 189, 110, 112, 97, 114, 59, 226, 136,
166, 110, 112, 97, 114, 97, 108, 108, 101, 108, 59, 226, 136, 166, 110, 112,
97, 114, 115, 108, 59, 226, 171, 189, 226, 131, 165, 110, 112, 97, 114, 116,
59, 226, 136, 130, 204, 184, 110, 112, 111, 108, 105, 110, 116, 59, 226, 168,
148, 110, 112, 114, 59, 226, 138, 128, 110, 112, 114, 99, 117, 101, 59, 226,
139, 160, 110, 112, 114, 101, 59, 226, 170, 175, 204, 184, 110, 112, 114, 101,
99, 59, 226, 138, 128, 110, 112, 114, 101, 99, 101, 113, 59, 226, 170, 175,
204, 184, 110, 114, 65, 114, 114, 59, 226, 135, 143, 110, 114, 97, 114, 114,
59, 226, 134, 155, 110, 114, 97, 114, 114, 99, 59, 226, 164, 179, 204, 184,
110, 114, 97, 114, 114, 119, 59, 226, 134, 157, 204, 184, 110, 114, 105, 103,
104, 116, 97, 114, 114, 111, 119, 59, 226, 134, 155, 110, 114, 116, 114, 105,
59, 226, 139, 171, 110, 114, 116, 114, 105, 101, 59, 226, 139, 173, 110, 115,
99, 59, 226, 138, 129, 110, 115, 99, 99, 117, 101, 59, 226, 139, 161, 110,
115, 99, 101, 59, 226, 170, 176, 204, 184, 110, 115, 99, 114, 59, 240, 157,
147, 131, 110, 115, 104, 111, 114, 116, 109, 105, 100, 59, 226, 136, 164, 110,
115, 104, 111, 114, 116, 112, 97, 114, 97, 108, 108, 101, 108, 59, 226, 136,
166, 110, 115, 105, 109, 59, 226, 137, 129, 110, 115, 105, 109, 101, 59, 226,
137, 132, 110, 115, 105, 109, 101, 113, 59, 226, 137, 132, 110, 115, 109, 105,
100, 59, 226, 136, 164, 110, 115, 112, 97, 114, 59, 226, 136, 166, 110, 115,
113, 115, 117, 98, 101, 59, 226, 139, 162, 110, 115, 113, 115, 117, 112, 101,
59, 226, 139, 163, 110, 115, 117, 98, 59, 226, 138, 132, 110, 115, 117, 98,
69, 59, 226, 171, 133, 204, 184, 110, 115, 117, 98, 101, 59, 226, 138, 136,
110, 115, 117, 98, 115, 101, 116, 59, 226, 138, 130, 226, 131, 146, 110, 115,
117, 98, 115, 101, 116, 101, 113, 59, 226, 138, 136, 110, 115, 117, 98, 115,
101, 116, 101, 113, 113, 59, 226, 171, 133, 204, 184, 110, 115, 117, 99, 99,
59, 226, 138, 129, 110, 115, 117, 99, 99, 101, 113, 59, 226, 170, 176, 204,
184, 110, 115, 117, 112, 59, 226, 138, 133, 110, 115, 117, 112, 69, 59, 226,
171, 134, 204, 184, 110, 115, 117, 112, 101, 59, 226, 138, 137, 110, 115, 117,
112, 115, 101, 116, 59, 226, 138, 131, 226, 131, 146, 110, 115, 117, 112, 115,
101, 116, 101, 113, 59, 226, 138, 137, 110, 115, 117, 112, 115, 101, 116, 101,
113, 113, 59, 226, 171, 134, 204, 184, 110, 116, 103, 108, 59, 226, 137, 185,
110, 116, 105, 108, 100, 101, 195, 177, 110, 116, 105, 108, 100, 101, 59, 195,
177, 110, 116, 108, 103, 59, 226, 137, 184, 110, 116, 114, 105, 97, 110, 103,
108, 101, 108, 101, 102, 116, 59, 226, 139, 170, 110, 116, 114, 105, 97, 110,
103, 108, 101, 108, 101, 102, 116, 101, 113, 59, 226, 139, 172, 110, 116, 114,
105, 97, 110, 103, 108, 101, 114, 105, 103, 104, 116, 59, 226, 139, 171, 110,
116, 114, 105, 97, 110, 103, 108, 101, 114, 105, 103, 104, 116, 101, 113, 59,
226, 139, 173, 110, 117, 59, 206, 189, 110, 117, 109, 59, 35, 110, 117, 109,
101, 114, 111, 59, 226, 132, 150, 110, 117, 109, 115, 112, 59, 226, 128, 135,
110, 118, 68, 97, 115, 104, 59, 226, 138, 173, 110, 118, 72, 97, 114, 114,
59, 226, 164, 132, 110, 118, 97, 112, 59, 226, 137, 141, 226, 131, 146, 110,
118, 100, 97, 115, 104, 59, 226, 138, 172, 110, 118, 103, 101, 59, 226, 137,
165, 226, 131, 146, 110, 118, 103, 116, 59, 62, 226, 131, 146, 110, 118, 105,
110, 102, 105, 110, 59, 226, 167, 158, 110, 118, 108, 65, 114, 114, 59, 226,
164, 130, 110, 118, 108, 101, 59, 226, 137, 164, 226, 131, 146, 110, 118, 108,
116, 59, 60, 226, 131, 146, 110, 118, 108, 116, 114, 105, 101, 59, 226, 138,
180, 226, 131, 146, 110, 118, 114, 65, 114, 114, 59, 226, 164, 131, 110, 118,
114, 116, 114, 105, 101, 59, 226, 138, 181, 226, 131, 146, 110, 118, 115, 105,
109, 59, 226, 136, 188, 226, 131, 146, 110, 119, 65, 114, 114, 59, 226, 135,
150, 110, 119, 97, 114, 104, 107, 59, 226, 164, 163, 110, 119, 97, 114, 114,
59, 226, 134, 150, 110, 119, 97, 114, 114, 111, 119, 59, 226, 134, 150, 110,
119, 110, 101, 97, 114, 59, 226, 164, 167, 111, 83, 59, 226, 147, 136, 111,
97, 99, 117, 116, 101, 195, 179, 111, 97, 99, 117, 116, 101, 59, 195, 179,
111, 97, 115, 116, 59, 226, 138, 155, 111, 99, 105, 114, 59, 226, 138, 154,
111, 99, 105, 114, 99, 195, 180, 111, 99, 105, 114, 99, 59, 195, 180, 111,
99, 121, 59, 208, 190, 111, 100, 97, 115, 104, 59, 226, 138, 157, 111, 100,
98, 108, 97, 99, 59, 197, 145, 111, 100, 105, 118, 59, 226, 168, 184, 111,
100, 111, 116, 59, 226, 138, 153, 111, 100, 115, 111, 108, 100, 59, 226, 166,
188, 111, 101, 108, 105, 103, 59, 197, 147, 111, 102, 99, 105, 114, 59, 226,
166, 191, 111, 102, 114, 59, 240, 157, 148, 172, 111, 103, 111, 110, 59, 203,
155, 111, 103, 114, 97, 118, 101, 195, 178, 111, 103, 114, 97, 118, 101, 59,
195, 178, 111, 103, 116, 59, 226, 167, 129, 111, 104, 98, 97, 114, 59, 226,
166, 181, 111, 104, 109, 59, 206, 169, 111, 105, 110, 116, 59, 226, 136, 174,
111, 108, 97, 114, 114, 59, 226, 134, 186, 111, 108, 99, 105, 114, 59, 226,
166, 190, 111, 108, 99, 114, 111, 115, 115, 59, 226, 166, 187, 111, 108, 105,
110, 101, 59, 226, 128, 190, 111, 108, 116, 59, 226, 167, 128, 111, 109, 97,
99, 114, 59, 197, 141, 111, 109, 101, 103, 97, 59, 207, 137, 111, 109, 105,
99, 114, 111, 110, 59, 206, 191, 111, 109, 105, 100, 59, 226, 166, 182, 111,
109, 105, 110, 117, 115, 59, 226, 138, 150, 111, 111, 112, 102, 59, 240, 157,
149, 160, 111, 112, 97, 114, 59, 226, 166, 183, 111, 112, 101, 114, 112, 59,
226, 166, 185, 111, 112, 108, 117, 115, 59, 226, 138, 149, 111, 114, 59, 226,
136, 168, 111, 114, 97, 114, 114, 59, 226, 134, 187, 111, 114, 100, 59, 226,
169, 157, 111, 114, 100, 101, 114, 59, 226, 132, 180, 111, 114, 100, 101, 114,
111, 102, 59, 226, 132, 180, 111, 114, 100, 102, 194, 170, 111, 114, 100, 102,
59, 194, 170, 111, 114, 100, 109, 194, 186, 111, 114, 100, 109, 59, 194, 186,
111, 114, 105, 103, 111, 102, 59, 226, 138, 182, 111, 114, 111, 114, 59, 226,
169, 150, 111, 114, 115, 108, 111, 112, 101, 59, 226, 169, 151, 111, 114, 118,
59, 226, 169, 155, 111, 115, 99, 114, 59, 226, 132, 180, 111, 115, 108, 97,
115, 104, 195, 184, 111, 115, 108, 97, 115, 104, 59, 195, 184, 111, 115, 111,
108, 59, 226, 138, 152, 111, 116, 105, 108, 100, 101, 195, 181, 111, 116, 105,
108, 100, 101, 59, 195, 181, 111, 116, 105, 109, 101, 115, 59, 226, 138, 151,
111, 116, 105, 109, 101, 115, 97, 115, 59, 226, 168, 182, 111, 117, 109, 108,
195, 182, 111, 117, 109, 108, 59, 195, 182, 111, 118, 98, 97, 114, 59, 226,
140, 189, 112, 97, 114, 59, 226, 136, 165, 112, 97, 114, 97, 194, 182, 112,
97, 114, 97, 59, 194, 182, 112, 97, 114, 97, 108, 108, 101, 108, 59, 226,
136, 165, 112, 97, 114, 115, 105, 109, 59, 226, 171, 179, 112, 97, 114, 115,
108, 59, 226, 171, 189, 112, 97, 114, 116, 59, 226, 136, 130, 112, 99, 121,
59, 208, 191, 112, 101, 114, 99, 110, 116, 59, 37, 112, 101, 114, 105, 111,
100, 59, 46, 112, 101, 114, 109, 105, 108, 59, 226, 128, 176, 112, 101, 114,
112, 59, 226, 138, 165, 112, 101, 114, 116, 101, 110, 107, 59, 226, 128, 177,
112, 102, 114, 59, 240, 157, 148, 173, 112, 104, 105, 59, 207, 134, 112, 104,
105, 118, 59, 207, 149, 112, 104, 109, 109, 97, 116, 59, 226, 132, 179, 112,
104, 111, 110, 101, 59, 226, 152, 142, 112, 105, 59, 207, 128, 112, 105, 116,
99, 104, 102, 111, 114, 107, 59, 226, 139, 148, 112, 105, 118, 59, 207, 150,
112, 108, 97, 110, 99, 107, 59, 226, 132, 143, 112, 108, 97, 110, 99, 107,
104, 59, 226, 132, 142, 112, 108, 97, 110, 107, 118, 59, 226, 132, 143, 112,
108, 117, 115, 59, 43, 112, 108, 117, 115, 97, 99, 105, 114, 59, 226, 168,
163, 112, 108, 117, 115, 98, 59, 226, 138, 158, 112, 108, 117, 115, 99, 105,
114, 59, 226, 168, 162, 112, 108, 117, 115, 100, 111, 59, 226, 136, 148, 112,
108, 117, 115, 100, 117, 59, 226, 168, 165, 112, 108, 117, 115, 101, 59, 226,
169, 178, 112, 108, 117, 115, 109, 110, 194, 177, 112, 108, 117, 115, 109, 110,
59, 194, 177, 112, 108, 117, 115, 115, 105, 109, 59, 226, 168, 166, 112, 108,
117, 115, 116, 119, 111, 59, 226, 168, 167, 112, 109, 59, 194, 177, 112, 111,
105, 110, 116, 105, 110, 116, 59, 226, 168, 149, 112, 111, 112, 102, 59, 240,
157, 149, 161, 112, 111, 117, 110, 100, 194, 163, 112, 111, 117, 110, 100, 59,
194, 163, 112, 114, 59, 226, 137, 186, 112, 114, 69, 59, 226, 170, 179, 112,
114, 97, 112, 59, 226, 170, 183, 112, 114, 99, 117, 101, 59, 226, 137, 188,
112, 114, 101, 59, 226, 170, 175, 112, 114, 101, 99, 59, 226, 137, 186, 112,
114, 101, 99, 97, 112, 112, 114, 111, 120, 59, 226, 170, 183, 112, 114, 101,
99, 99, 117, 114, 108, 121, 101, 113, 59, 226, 137, 188, 112, 114, 101, 99,
101, 113, 59, 226, 170, 175, 112, 114, 101, 99, 110, 97, 112, 112, 114, 111,
120, 59, 226, 170, 185, 112, 114, 101, 99, 110, 101, 113, 113, 59, 226, 170,
181, 112, 114, 101, 99, 110, 115, 105, 109, 59, 226, 139, 168, 112, 114, 101,
99, 115, 105, 109, 59, 226, 137, 190, 112, 114, 105, 109, 101, 59, 226, 128,
178, 112, 114, 105, 109, 101, 115, 59, 226, 132, 153, 112, 114, 110, 69, 59,
226, 170, 181, 112, 114, 110, 97, 112, 59, 226, 170, 185, 112, 114, 110, 115,
105, 109, 59, 226, 139, 168, 112, 114, 111, 100, 59, 226, 136, 143, 112, 114,
111, 102, 97, 108, 97, 114, 59, 226, 140, 174, 112, 114, 111, 102, 108, 105,
110, 101, 59, 226, 140, 146, 112, 114, 111, 102, 115, 117, 114, 102, 59, 226,
140, 147, 112, 114, 111, 112, 59, 226, 136, 157, 112, 114, 111, 112, 116, 111,
59, 226, 136, 157, 112, 114, 115, 105, 109, 59, 226, 137, 190, 112, 114, 117,
114, 101, 108, 59, 226, 138, 176, 112, 115, 99, 114, 59, 240, 157, 147, 133,
112, 115, 105, 59, 207, 136, 112, 117, 110, 99, 115, 112, 59, 226, 128, 136,
113, 102, 114, 59, 240, 157, 148, 174, 113, 105, 110, 116, 59, 226, 168, 140,
113, 111, 112, 102, 59, 240, 157, 149, 162, 113, 112, 114, 105, 109, 101, 59,
226, 129, 151, 113, 115, 99, 114, 59, 240, 157, 147, 134, 113, 117, 97, 116,
101, 114, 110, 105, 111, 110, 115, 59, 226, 132, 141, 113, 117, 97, 116, 105,
110, 116, 59, 226, 168, 150, 113, 117, 101, 115, 116, 59, 63, 113, 117, 101,
115, 116, 101, 113, 59, 226, 137, 159, 113, 117, 111, 116, 34, 113, 117, 111,
116, 59, 34, 114, 65, 97, 114, 114, 59, 226, 135, 155, 114, 65, 114, 114,
59, 226, 135, 146, 114, 65, 116, 97, 105, 108, 59, 226, 164, 156, 114, 66,
97, 114, 114, 59, 226, 164, 143, 114, 72, 97, 114, 59, 226, 165, 164, 114,
97, 99, 101, 59, 226, 136, 189, 204, 177, 114, 97, 99, 117, 116, 101, 59,
197, 149, 114, 97, 100, 105, 99, 59, 226, 136, 154, 114, 97, 101, 109, 112,
116, 121, 118, 59, 226, 166, 179, 114, 97, 110, 103, 59, 226, 159, 169, 114,
97, 110, 103, 100, 59, 226, 166, 146, 114, 97, 110, 103, 101, 59, 226, 166,
165, 114, 97, 110, 103, 108, 101, 59, 226, 159, 169, 114, 97, 113, 117, 111,
194, 187, 114, 97, 113, 117, 111, 59, 194, 187, 114, 97, 114, 114, 59, 226,
134, 146, 114, 97, 114, 114, 97, 112, 59, 226, 165, 181, 114, 97, 114, 114,
98, 59, 226, 135, 165, 114, 97, 114, 114, 98, 102, 115, 59, 226, 164, 160,
114, 97, 114, 114, 99, 59, 226, 164, 179, 114, 97, 114, 114, 102, 115, 59,
226, 164, 158, 114, 97, 114, 114, 104, 107, 59, 226, 134, 170, 114, 97, 114,
114, 108, 112, 59, 226, 134, 172, 114, 97, 114, 114, 112, 108, 59, 226, 165,
133, 114, 97, 114, 114, 115, 105, 109, 59, 226, 165, 180, 114, 97, 114, 114,
116, 108, 59, 226, 134, 163, 114, 97, 114, 114, 119, 59, 226, 134, 157, 114,
97, 116, 97, 105, 108, 59, 226, 164, 154, 114, 97, 116, 105, 111, 59, 226,
136, 182, 114, 97, 116, 105, 111, 110, 97, 108, 115, 59, 226, 132, 154, 114,
98, 97, 114, 114, 59, 226, 164, 141, 114, 98, 98, 114, 107, 59, 226, 157,
179, 114, 98, 114, 97, 99, 101, 59, 125, 114, 98, 114, 97, 99, 107, 59,
93, 114, 98, 114, 107, 101, 59, 226, 166, 140, 114, 98, 114, 107, 115, 108,
100, 59, 226, 166, 142, 114, 98, 114, 107, 115, 108, 117, 59, 226, 166, 144,
114, 99, 97, 114, 111, 110, 59, 197, 153, 114, 99, 101, 100, 105, 108, 59,
197, 151, 114, 99, 101, 105, 108, 59, 226, 140, 137, 114, 99, 117, 98, 59,
125, 114, 99, 121, 59, 209, 128, 114, 100, 99, 97, 59, 226, 164, 183, 114,
100, 108, 100, 104, 97, 114, 59, 226, 165, 169, 114, 100, 113, 117, 111, 59,
226, 128, 157, 114, 100, 113, 117, 111, 114, 59, 226, 128, 157, 114, 100, 115,
104, 59, 226, 134, 179, 114, 101, 97, 108, 59, 226, 132, 156, 114, 101, 97,
108, 105, 110, 101, 59, 226, 132, 155, 114, 101, 97, 108, 112, 97, 114, 116,
59, 226, 132, 156, 114, 101, 97, 108, 115, 59, 226, 132, 157, 114, 101, 99,
116, 59, 226, 150, 173, 114, 101, 103, 194, 174, 114, 101, 103, 59, 194, 174,
114, 102, 105, 115, 104, 116, 59, 226, 165, 189, 114, 102, 108, 111, 111, 114,
59, 226, 140, 139, 114, 102, 114, 59, 240, 157, 148, 175, 114, 104, 97, 114,
100, 59, 226, 135, 129, 114, 104, 97, 114, 117, 59, 226, 135, 128, 114, 104,
97, 114, 117, 108, 59, 226, 165, 172, 114, 104, 111, 59, 207, 129, 114, 104,
111, 118, 59, 207, 177, 114, 105, 103, 104, 116, 97, 114, 114, 111, 119, 59,
226, 134, 146, 114, 105, 103, 104, 116, 97, 114, 114, 111, 119, 116, 97, 105,
108, 59, 226, 134, 163, 114, 105, 103, 104, 116, 104, 97, 114, 112, 111, 111,
110, 100, 111, 119, 110, 59, 226, 135, 129, 114, 105, 103, 104, 116, 104, 97,
114, 112, 111, 111, 110, 117, 112, 59, 226, 135, 128, 114, 105, 103, 104, 116,
108, 101, 102, 116, 97, 114, 114, 111, 119, 115, 59, 226, 135, 132, 114, 105,
103, 104, 116, 108, 101, 102, 116, 104, 97, 114, 112, 111, 111, 110, 115, 59,
226, 135, 140, 114, 105, 103, 104, 116, 114, 105, 103, 104, 116, 97, 114, 114,
111, 119, 115, 59, 226, 135, 137, 114, 105, 103, 104, 116, 115, 113, 117, 105,
103, 97, 114, 114, 111, 119, 59, 226, 134, 157, 114, 105, 103, 104, 116, 116,
104, 114, 101, 101, 116, 105, 109, 101, 115, 59, 226, 139, 140, 114, 105, 110,
103, 59, 203, 154, 114, 105, 115, 105, 110, 103, 100, 111, 116, 115, 101, 113,
59, 226, 137, 147, 114, 108, 97, 114, 114, 59, 226, 135, 132, 114, 108, 104,
97, 114, 59, 226, 135, 140, 114, 108, 109, 59, 226, 128, 143, 114, 109, 111,
117, 115, 116, 59, 226, 142, 177, 114, 109, 111, 117, 115, 116, 97, 99, 104,
101, 59, 226, 142, 177, 114, 110, 109, 105, 100, 59, 226, 171, 174, 114, 111,
97, 110, 103, 59, 226, 159, 173, 114, 111, 97, 114, 114, 59, 226, 135, 190,
114, 111, 98, 114, 107, 59, 226, 159, 167, 114, 111, 112, 97, 114, 59, 226,
166, 134, 114, 111, 112, 102, 59, 240, 157, 149, 163, 114, 111, 112, 108, 117,
115, 59, 226, 168, 174, 114, 111, 116, 105, 109, 101, 115, 59, 226, 168, 181,
114, 112, 97, 114, 59, 41, 114, 112, 97, 114, 103, 116, 59, 226, 166, 148,
114, 112, 112, 111, 108, 105, 110, 116, 59, 226, 168, 146, 114, 114, 97, 114,
114, 59, 226, 135, 137, 114, 115, 97, 113, 117, 111, 59, 226, 128, 186, 114,
115, 99, 114, 59, 240, 157, 147, 135, 114, 115, 104, 59, 226, 134, 177, 114,
115, 113, 98, 59, 93, 114, 115, 113, 117, 111, 59, 226, 128, 153, 114, 115,
113, 117, 111, 114, 59, 226, 128, 153, 114, 116, 104, 114, 101, 101, 59, 226,
139, 140, 114, 116, 105, 109, 101, 115, 59, 226, 139, 138, 114, 116, 114, 105,
59, 226, 150, 185, 114, 116, 114, 105, 101, 59, 226, 138, 181, 114, 116, 114,
105, 102, 59, 226, 150, 184, 114, 116, 114, 105, 108, 116, 114, 105, 59, 226,
167, 142, 114, 117, 108, 117, 104, 97, 114, 59, 226, 165, 168, 114, 120, 59,
226, 132, 158, 115, 97, 99, 117, 116, 101, 59, 197, 155, 115, 98, 113, 117,
111, 59, 226, 128, 154, 115, 99, 59, 226, 137, 187, 115, 99, 69, 59, 226,
170, 180, 115, 99, 97, 112, 59, 226, 170, 184, 115, 99, 97, 114, 111, 110,
59, 197, 161, 115, 99, 99, 117, 101, 59, 226, 137, 189, 115, 99, 101, 59,
226, 170, 176, 115, 99, 101, 100, 105, 108, 59, 197, 159, 115, 99, 105, 114,
99, 59, 197, 157, 115, 99, 110, 69, 59, 226, 170, 182, 115, 99, 110, 97,
112, 59, 226, 170, 186, 115, 99, 110, 115, 105, 109, 59, 226, 139, 169, 115,
99, 112, 111, 108, 105, 110, 116, 59, 226, 168, 147, 115, 99, 115, 105, 109,
59, 226, 137, 191, 115, 99, 121, 59, 209, 129, 115, 100, 111, 116, 59, 226,
139, 133, 115, 100, 111, 116, 98, 59, 226, 138, 161, 115, 100, 111, 116, 101,
59, 226, 169, 166, 115, 101, 65, 114, 114, 59, 226, 135, 152, 115, 101, 97,
114, 104, 107, 59, 226, 164, 165, 115, 101, 97, 114, 114, 59, 226, 134, 152,
115, 101, 97, 114, 114, 111, 119, 59, 226, 134, 152, 115, 101, 99, 116, 194,
167, 115, 101, 99, 116, 59, 194, 167, 115, 101, 109, 105, 59, 59, 115, 101,
115, 119, 97, 114, 59, 226, 164, 169, 115, 101, 116, 109, 105, 110, 117, 115,
59, 226, 136, 150, 115, 101, 116, 109, 110, 59, 226, 136, 150, 115, 101, 120,
116, 59, 226, 156, 182, 115, 102, 114, 59, 240, 157, 148, 176, 115, 102, 114,
111, 119, 110, 59, 226, 140, 162, 115, 104, 97, 114, 112, 59, 226, 153, 175,
115, 104, 99, 104, 99, 121, 59, 209, 137, 115, 104, 99, 121, 59, 209, 136,
115, 104, 111, 114, 116, 109, 105, 100, 59, 226, 136, 163, 115, 104, 111, 114,
116, 112, 97, 114, 97, 108, 108, 101, 108, 59, 226, 136, 165, 115, 104, 121,
194, 173, 115, 104, 121, 59, 194, 173, 115, 105, 103, 109, 97, 59, 207, 131,
115, 105, 103, 109, 97, 102, 59, 207, 130, 115, 105, 103, 109, 97, 118, 59,
207, 130, 115, 105, 109, 59, 226, 136, 188, 115, 105, 109, 100, 111, 116, 59,
226, 169, 170, 115, 105, 109, 101, 59, 226, 137, 131, 115, 105, 109, 101, 113,
59, 226, 137, 131, 115, 105, 109, 103, 59, 226, 170, 158, 115, 105, 109, 103,
69, 59, 226, 170, 160, 115, 105, 109, 108, 59, 226, 170, 157, 115, 105, 109,
108, 69, 59, 226, 170, 159, 115, 105, 109, 110, 101, 59, 226, 137, 134, 115,
105, 109, 112, 108, 117, 115, 59, 226, 168, 164, 115, 105, 109, 114, 97, 114,
114, 59, 226, 165, 178, 115, 108, 97, 114, 114, 59, 226, 134, 144, 115, 109,
97, 108, 108, 115, 101, 116, 109, 105, 110, 117, 115, 59, 226, 136, 150, 115,
109, 97, 115, 104, 112, 59, 226, 168, 179, 115, 109, 101, 112, 97, 114, 115,
108, 59, 226, 167, 164, 115, 109, 105, 100, 59, 226, 136, 163, 115, 109, 105,
108, 101, 59, 226, 140, 163, 115, 109, 116, 59, 226, 170, 170, 115, 109, 116,
101, 59, 226, 170, 172, 115, 109, 116, 101, 115, 59, 226, 170, 172, 239, 184,
128, 115, 111, 102, 116, 99, 121, 59, 209, 140, 115, 111, 108, 59, 47, 115,
111, 108, 98, 59, 226, 167, 132, 115, 111, 108, 98, 97, 114, 59, 226, 140,
191, 115, 111, 112, 102, 59, 240, 157, 149, 164, 115, 112, 97, 100, 101, 115,
59, 226, 153, 160, 115, 112, 97, 100, 101, 115, 117, 105, 116, 59, 226, 153,
160, 115, 112, 97, 114, 59, 226, 136, 165, 115, 113, 99, 97, 112, 59, 226,
138, 147, 115, 113, 99, 97, 112, 115, 59, 226, 138, 147, 239, 184, 128, 115,
113, 99, 117, 112, 59, 226, 138, 148, 115, 113, 99, 117, 112, 115, 59, 226,
138, 148, 239, 184, 128, 115, 113, 115, 117, 98, 59, 226, 138, 143, 115, 113,
115, 117, 98, 101, 59, 226, 138, 145, 115, 113, 115, 117, 98, 115, 101, 116,
59, 226, 138, 143, 115, 113, 115, 117, 98, 115, 101, 116, 101, 113, 59, 226,
138, 145, 115, 113, 115, 117, 112, 59, 226, 138, 144, 115, 113, 115, 117, 112,
101, 59, 226, 138, 146, 115, 113, 115, 117, 112, 115, 101, 116, 59, 226, 138,
144, 115, 113, 115, 117, 112, 115, 101, 116, 101, 113, 59, 226, 138, 146, 115,
113, 117, 59, 226, 150, 161, 115, 113, 117, 97, 114, 101, 59, 226, 150, 161,
115, 113, 117, 97, 114, 102, 59, 226, 150, 170, 115, 113, 117, 102, 59, 226,
150, 170, 115, 114, 97, 114, 114, 59, 226, 134, 146, 115, 115, 99, 114, 59,
240, 157, 147, 136, 115, 115, 101, 116, 109, 110, 59, 226, 136, 150, 115, 115,
109, 105, 108, 101, 59, 226, 140, 163, 115, 115, 116, 97, 114, 102, 59, 226,
139, 134, 115, 116, 97, 114, 59, 226, 152, 134, 115, 116, 97, 114, 102, 59,
226, 152, 133, 115, 116, 114, 97, 105, 103, 104, 116, 101, 112, 115, 105, 108,
111, 110, 59, 207, 181, 115, 116, 114, 97, 105, 103, 104, 116, 112, 104, 105,
59, 207, 149, 115, 116, 114, 110, 115, 59, 194, 175, 115, 117, 98, 59, 226,
138, 130, 115, 117, 98, 69, 59, 226, 171, 133, 115, 117, 98, 100, 111, 116,
59, 226, 170, 189, 115, 117, 98, 101, 59, 226, 138, 134, 115, 117, 98, 101,
100, 111, 116, 59, 226, 171, 131, 115, 117, 98, 109, 117, 108, 116, 59, 226,
171, 129, 115, 117, 98, 110, 69, 59, 226, 171, 139, 115, 117, 98, 110, 101,
59, 226, 138, 138, 115, 117, 98, 112, 108, 117, 115, 59, 226, 170, 191, 115,
117, 98, 114, 97, 114, 114, 59, 226, 165, 185, 115, 117, 98, 115, 101, 116,
59, 226, 138, 130, 115, 117, 98, 115, 101, 116, 101, 113, 59, 226, 138, 134,
115, 117, 98, 115, 101, 116, 101, 113, 113, 59, 226, 171, 133, 115, 117, 98,
115, 101, 116, 110, 101, 113, 59, 226, 138, 138, 115, 117, 98, 115, 101, 116,
110, 101, 113, 113, 59, 226, 171, 139, 115, 117, 98, 115, 105, 109, 59, 226,
171, 135, 115, 117, 98, 115, 117, 98, 59, 226, 171, 149, 115, 117, 98, 115,
117, 112, 59, 226, 171, 147, 115, 117, 99, 99, 59, 226, 137, 187, 115, 117,
99, 99, 97, 112, 112, 114, 111, 120, 59, 226, 170, 184, 115, 117, 99, 99,
99, 117, 114, 108, 121, 101, 113, 59, 226, 137, 189, 115, 117, 99, 99, 101,
113, 59, 226, 170, 176, 115, 117, 99, 99, 110, 97, 112, 112, 114, 111, 120,
59, 226, 170, 186, 115, 117, 99, 99, 110, 101, 113, 113, 59, 226, 170, 182,
115, 117, 99, 99, 110, 115, 105, 109, 59, 226, 139, 169, 115, 117, 99, 99,
115, 105, 109, 59, 226, 137, 191, 115, 117, 109, 59, 226, 136, 145, 115, 117,
110, 103, 59, 226, 153, 170, 115, 117, 112, 49, 194, 185, 115, 117, 112, 49,
59, 194, 185, 115, 117, 112, 50, 194, 178, 115, 117, 112, 50, 59, 194, 178,
115, 117, 112, 51, 194, 179, 115, 117, 112, 51, 59, 194, 179, 115, 117, 112,
59, 226, 138, 131, 115, 117, 112, 69, 59, 226, 171, 134, 115, 117, 112, 100,
111, 116, 59, 226, 170, 190, 115, 117, 112, 100, 115, 117, 98, 59, 226, 171,
152, 115, 117, 112, 101, 59, 226, 138, 135, 115, 117, 112, 101, 100, 111, 116,
59, 226, 171, 132, 115, 117, 112, 104, 115, 111, 108, 59, 226, 159, 137, 115,
117, 112, 104, 115, 117, 98, 59, 226, 171, 151, 115, 117, 112, 108, 97, 114,
114, 59, 226, 165, 187, 115, 117, 112, 109, 117, 108, 116, 59, 226, 171, 130,
115, 117, 112, 110, 69, 59, 226, 171, 140, 115, 117, 112, 110, 101, 59, 226,
138, 139, 115, 117, 112, 112, 108, 117, 115, 59, 226, 171, 128, 115, 117, 112,
115, 101, 116, 59, 226, 138, 131, 115, 117, 112, 115, 101, 116, 101, 113, 59,
226, 138, 135, 115, 117, 112, 115, 101, 116, 101, 113, 113, 59, 226, 171, 134,
115, 117, 112, 115, 101, 116, 110, 101, 113, 59, 226, 138, 139, 115, 117, 112,
115, 101, 116, 110, 101, 113, 113, 59, 226, 171, 140, 115, 117, 112, 115, 105,
109, 59, 226, 171, 136, 115, 117, 112, 115, 117, 98, 59, 226, 171, 148, 115,
117, 112, 115, 117, 112, 59, 226, 171, 150, 115, 119, 65, 114, 114, 59, 226,
135, 153, 115, 119, 97, 114, 104, 107, 59, 226, 164, 166, 115, 119, 97, 114,
114, 59, 226, 134, 153, 115, 119, 97, 114, 114, 111, 119, 59, 226, 134, 153,
115, 119, 110, 119, 97, 114, 59, 226, 164, 170, 115, 122, 108, 105, 103, 195,
159, 115, 122, 108, 105, 103, 59, 195, 159, 116, 97, 114, 103, 101, 116, 59,
226, 140, 150, 116, 97, 117, 59, 207, 132, 116, 98, 114, 107, 59, 226, 142,
180, 116, 99, 97, 114, 111, 110, 59, 197, 165, 116, 99, 101, 100, 105, 108,
59, 197, 163, 116, 99, 121, 59, 209, 130, 116, 100, 111, 116, 59, 226, 131,
155, 116, 101, 108, 114, 101, 99, 59, 226, 140, 149, 116, 102, 114, 59, 240,
157, 148, 177, 116, 104, 101, 114, 101, 52, 59, 226, 136, 180, 116, 104, 101,
114, 101, 102, 111, 114, 101, 59, 226, 136, 180, 116, 104, 101, 116, 97, 59,
206, 184, 116, 104, 101, 116, 97, 115, 121, 109, 59, 207, 145, 116, 104, 101,
116, 97, 118, 59, 207, 145, 116, 104, 105, 99, 107, 97, 112, 112, 114, 111,
120, 59, 226, 137, 136, 116, 104, 105, 99, 107, 115, 105, 109, 59, 226, 136,
188, 116, 104, 105, 110, 115, 112, 59, 226, 128, 137, 116, 104, 107, 97, 112,
59, 226, 137, 136, 116, 104, 107, 115, 105, 109, 59, 226, 136, 188, 116, 104,
111, 114, 110, 195, 190, 116, 104, 111, 114, 110, 59, 195, 190, 116, 105, 108,
100, 101, 59, 203, 156, 116, 105, 109, 101, 115, 195, 151, 116, 105, 109, 101,
115, 59, 195, 151, 116, 105, 109, 101, 115, 98, 59, 226, 138, 160, 116, 105,
109, 101, 115, 98, 97, 114, 59, 226, 168, 177, 116, 105, 109, 101, 115, 100,
59, 226, 168, 176, 116, 105, 110, 116, 59, 226, 136, 173, 116, 111, 101, 97,
59, 226, 164, 168, 116, 111, 112, 59, 226, 138, 164, 116, 111, 112, 98, 111,
116, 59, 226, 140, 182, 116, 111, 112, 99, 105, 114, 59, 226, 171, 177, 116,
111, 112, 102, 59, 240, 157, 149, 165, 116, 111, 112, 102, 111, 114, 107, 59,
226, 171, 154, 116, 111, 115, 97, 59, 226, 164, 169, 116, 112, 114, 105, 109,
101, 59, 226, 128, 180, 116, 114, 97, 100, 101, 59, 226, 132, 162, 116, 114,
105, 97, 110, 103, 108, 101, 59, 226, 150, 181, 116, 114, 105, 97, 110, 103,
108, 101, 100, 111, 119, 110, 59, 226, 150, 191, 116, 114, 105, 97, 110, 103,
108, 101, 108, 101, 102, 116, 59, 226, 151, 131, 116, 114, 105, 97, 110, 103,
108, 101, 108, 101, 102, 116, 101, 113, 59, 226, 138, 180, 116, 114, 105, 97,
110, 103, 108, 101, 113, 59, 226, 137, 156, 116, 114, 105, 97, 110, 103, 108,
101, 114, 105, 103, 104, 116, 59, 226, 150, 185, 116, 114, 105, 97, 110, 103,
108, 101, 114, 105, 103, 104, 116, 101, 113, 59, 226, 138, 181, 116, 114, 105,
100, 111, 116, 59, 226, 151, 172, 116, 114, 105, 101, 59, 226, 137, 156, 116,
114, 105, 109, 105, 110, 117, 115, 59, 226, 168, 186, 116, 114, 105, 112, 108,
117, 115, 59, 226, 168, 185, 116, 114, 105, 115, 98, 59, 226, 167, 141, 116,
114, 105, 116, 105, 109, 101, 59, 226, 168, 187, 116, 114, 112, 101, 122, 105,
117, 109, 59, 226, 143, 162, 116, 115, 99, 114, 59, 240, 157, 147, 137, 116,
115, 99, 121, 59, 209, 134, 116, 115, 104, 99, 121, 59, 209, 155, 116, 115,
116, 114, 111, 107, 59, 197, 167, 116, 119, 105, 120, 116, 59, 226, 137, 172,
116, 119, 111, 104, 101, 97, 100, 108, 101, 102, 116, 97, 114, 114, 111, 119,
59, 226, 134, 158, 116, 119, 111, 104, 101, 97, 100, 114, 105, 103, 104, 116,
97, 114, 114, 111, 119, 59, 226, 134, 160, 117, 65, 114, 114, 59, 226, 135,
145, 117, 72, 97, 114, 59, 226, 165, 163, 117, 97, 99, 117, 116, 101, 195,
186, 117, 97, 99, 117, 116, 101, 59, 195, 186, 117, 97, 114, 114, 59, 226,
134, 145, 117, 98, 114, 99, 121, 59, 209, 158, 117, 98, 114, 101, 118, 101,
59, 197, 173, 117, 99, 105, 114, 99, 195, 187, 117, 99, 105, 114, 99, 59,
195, 187, 117, 99, 121, 59, 209, 131, 117, 100, 97, 114, 114, 59, 226, 135,
133, 117, 100, 98, 108, 97, 99, 59, 197, 177, 117, 100, 104, 97, 114, 59,
226, 165, 174, 117, 102, 105, 115, 104, 116, 59, 226, 165, 190, 117, 102, 114,
59, 240, 157, 148, 178, 117, 103, 114, 97, 118, 101, 195, 185, 117, 103, 114,
97, 118, 101, 59, 195, 185, 117, 104, 97, 114, 108, 59, 226, 134, 191, 117,
104, 97, 114, 114, 59, 226, 134, 190, 117, 104, 98, 108, 107, 59, 226, 150,
128, 117, 108, 99, 111, 114, 110, 59, 226, 140, 156, 117, 108, 99, 111, 114,
110, 101, 114, 59, 226, 140, 156, 117, 108, 99, 114, 111, 112, 59, 226, 140,
143, 117, 108, 116, 114, 105, 59, 226, 151, 184, 117, 109, 97, 99, 114, 59,
197, 171, 117, 109, 108, 194, 168, 117, 109, 108, 59, 194, 168, 117, 111, 103,
111, 110, 59, 197, 179, 117, 111, 112, 102, 59, 240, 157, 149, 166, 117, 112,
97, 114, 114, 111, 119, 59, 226, 134, 145, 117, 112, 100, 111, 119, 110, 97,
114, 114, 111, 119, 59, 226, 134, 149, 117, 112, 104, 97, 114, 112, 111, 111,
110, 108, 101, 102, 116, 59, 226, 134, 191, 117, 112, 104, 97, 114, 112, 111,
111, 110, 114, 105, 103, 104, 116, 59, 226, 134, 190, 117, 112, 108, 117, 115,
59, 226, 138, 142, 117, 112, 115, 105, 59, 207, 133, 117, 112, 115, 105, 104,
59, 207, 146, 117, 112, 115, 105, 108, 111, 110, 59, 207, 133, 117, 112, 117,
112, 97, 114, 114, 111, 119, 115, 59, 226, 135, 136, 117, 114, 99, 111, 114,
110, 59, 226, 140, 157, 117, 114, 99, 111, 114, 110, 101, 114, 59, 226, 140,
157, 117, 114, 99, 114, 111, 112, 59, 226, 140, 142, 117, 114, 105, 110, 103,
59, 197, 175, 117, 114, 116, 114, 105, 59, 226, 151, 185, 117, 115, 99, 114,
59, 240, 157, 147, 138, 117, 116, 100, 111, 116, 59, 226, 139, 176, 117, 116,
105, 108, 100, 101, 59, 197, 169, 117, 116, 114, 105, 59, 226, 150, 181, 117,
116, 114, 105, 102, 59, 226, 150, 180, 117, 117, 97, 114, 114, 59, 226, 135,
136, 117, 117, 109, 108, 195, 188, 117, 117, 109, 108, 59, 195, 188, 117, 119,
97, 110, 103, 108, 101, 59, 226, 166, 167, 118, 65, 114, 114, 59, 226, 135,
149, 118, 66, 97, 114, 59, 226, 171, 168, 118, 66, 97, 114, 118, 59, 226,
171, 169, 118, 68, 97, 115, 104, 59, 226, 138, 168, 118, 97, 110, 103, 114,
116, 59, 226, 166, 156, 118, 97, 114, 101, 112, 115, 105, 108, 111, 110, 59,
207, 181, 118, 97, 114, 107, 97, 112, 112, 97, 59, 207, 176, 118, 97, 114,
110, 111, 116, 104, 105, 110, 103, 59, 226, 136, 133, 118, 97, 114, 112, 104,
105, 59, 207, 149, 118, 97, 114, 112, 105, 59, 207, 150, 118, 97, 114, 112,
114, 111, 112, 116, 111, 59, 226, 136, 157, 118, 97, 114, 114, 59, 226, 134,
149, 118, 97, 114, 114, 104, 111, 59, 207, 177, 118, 97, 114, 115, 105, 103,
109, 97, 59, 207, 130, 118, 97, 114, 115, 117, 98, 115, 101, 116, 110, 101,
113, 59, 226, 138, 138, 239, 184, 128, 118, 97, 114, 115, 117, 98, 115, 101,
116, 110, 101, 113, 113, 59, 226, 171, 139, 239, 184, 128, 118, 97, 114, 115,
117, 112, 115, 101, 116, 110, 101, 113, 59, 226, 138, 139, 239, 184, 128, 118,
97, 114, 115, 117, 112, 115, 101, 116, 110, 101, 113, 113, 59, 226, 171, 140,
239, 184, 128, 118, 97, 114, 116, 104, 101, 116, 97, 59, 207, 145, 118, 97,
114, 116, 114, 105, 97, 110, 103, 108, 101, 108, 101, 102, 116, 59, 226, 138,
178, 118, 97, 114, 116, 114, 105, 97, 110, 103, 108, 101, 114, 105, 103, 104,
116, 59, 226, 138, 179, 118, 99, 121, 59, 208, 178, 118, 100, 97, 115, 104,
59, 226, 138, 162, 118, 101, 101, 59, 226, 136, 168, 118, 101, 101, 98, 97,
114, 59, 226, 138, 187, 118, 101, 101, 101, 113, 59, 226, 137, 154, 118, 101,
108, 108, 105, 112, 59, 226, 139, 174, 118, 101, 114, 98, 97, 114, 59, 124,
118, 101, 114, 116, 59, 124, 118, 102, 114, 59, 240, 157, 148, 179, 118, 108,
116, 114, 105, 59, 226, 138, 178, 118, 110, 115, 117, 98, 59, 226, 138, 130,
226, 131, 146, 118, 110, 115, 117, 112, 59, 226, 138, 131, 226, 131, 146, 118,
111, 112, 102, 59, 240, 157, 149, 167, 118, 112, 114, 111, 112, 59, 226, 136,
157, 118, 114, 116, 114, 105, 59, 226, 138, 179, 118, 115, 99, 114, 59, 240,
157, 147, 139, 118, 115, 117, 98, 110, 69, 59, 226, 171, 139, 239, 184, 128,
118, 115, 117, 98, 110, 101, 59, 226, 138, 138, 239, 184, 128, 118, 115, 117,
112, 110, 69, 59, 226, 171, 140, 239, 184, 128, 118, 115, 117, 112, 110, 101,
59, 226, 138, 139, 239, 184, 128, 118, 122, 105, 103, 122, 97, 103, 59, 226,
166, 154, 119, 99, 105, 114, 99, 59, 197, 181, 119, 101, 100, 98, 97, 114,
59, 226, 169, 159, 119, 101, 100, 103, 101, 59, 226, 136, 167, 119, 101, 100,
103, 101, 113, 59, 226, 137, 153, 119, 101, 105, 101, 114, 112, 59, 226, 132,
152, 119, 102, 114, 59, 240, 157, 148, 180, 119, 111, 112, 102, 59, 240, 157,
149, 168, 119, 112, 59, 226, 132, 152, 119, 114, 59, 226, 137, 128, 119, 114,
101, 97, 116, 104, 59, 226, 137, 128, 119, 115, 99, 114, 59, 240, 157, 147,
140, 120, 99, 97, 112, 59, 226, 139, 130, 120, 99, 105, 114, 99, 59, 226,
151, 175, 120, 99, 117, 112, 59, 226, 139, 131, 120, 100, 116, 114, 105, 59,
226, 150, 189, 120, 102, 114, 59, 240, 157, 148, 181, 120, 104, 65, 114, 114,
59, 226, 159, 186, 120, 104, 97, 114, 114, 59, 226, 159, 183, 120, 105, 59,
206, 190, 120, 108, 65, 114, 114, 59, 226, 159, 184, 120, 108, 97, 114, 114,
59, 226, 159, 181, 120, 109, 97, 112, 59, 226, 159, 188, 120, 110, 105, 115,
59, 226, 139, 187, 120, 111, 100, 111, 116, 59, 226, 168, 128, 120, 111, 112,
102, 59, 240, 157, 149, 169, 120, 111, 112, 108, 117, 115, 59, 226, 168, 129,
120, 111, 116, 105, 109, 101, 59, 226, 168, 130, 120, 114, 65, 114, 114, 59,
226, 159, 185, 120, 114, 97, 114, 114, 59, 226, 159, 182, 120, 115, 99, 114,
59, 240, 157, 147, 141, 120, 115, 113, 99, 117, 112, 59, 226, 168, 134, 120,
117, 112, 108, 117, 115, 59, 226, 168, 132, 120, 117, 116, 114, 105, 59, 226,
150, 179, 120, 118, 101, 101, 59, 226, 139, 129, 120, 119, 101, 100, 103, 101,
59, 226, 139, 128, 121, 97, 99, 117, 116, 101, 195, 189, 121, 97, 99, 117,
116, 101, 59, 195, 189, 121, 97, 99, 121, 59, 209, 143, 121, 99, 105, 114,
99, 59, 197, 183, 121, 99, 121, 59, 209, 139, 121, 101, 110, 194, 165, 121,
101, 110, 59, 194, 165, 121, 102, 114, 59, 240, 157, 148, 182, 121, 105, 99,
121, 59, 209, 151, 121, 111, 112, 102, 59, 240, 157, 149, 170, 121, 115, 99,
114, 59, 240, 157, 147, 142, 121, 117, 99, 121, 59, 209, 142, 121, 117, 109,
108, 195, 191, 121, 117, 109, 108, 59, 195, 191, 122, 97, 99, 117, 116, 101,
59, 197, 186, 122, 99, 97, 114, 111, 110, 59, 197, 190, 122, 99, 121, 59,
208, 183, 122, 100, 111, 116, 59, 197, 188, 122, 101, 101, 116, 114, 102, 59,
226, 132, 168, 122, 101, 116, 97, 59, 206, 182, 122, 102, 114, 59, 240, 157,
148, 183, 122, 104, 99, 121, 59, 208, 182, 122, 105, 103, 114, 97, 114, 114,
59, 226, 135, 157, 122, 111, 112, 102, 59, 240, 157, 149, 171, 122, 115, 99,
114, 59, 240, 157, 147, 143, 122, 119, 106, 59, 226, 128, 141, 122, 119, 110,
106, 59, 226, 128, 140,
};
#define TABLE_ENTRIES 2231
static const uint32_t table_entries[TABLE_ENTRIES] = {
68,
1861,
3874,
4899,
6213,
8262,
10566,
12868,
14661,
16707,
18307,
20293,
22342,
24645,
26693,
28771,
30533,
32644,
34925,
39236,
41029,
43140,
45414,
47941,
49990,
52291,
53828,
55657,
58980,
61030,
63555,
65127,
67946,
71492,
73347,
75396,
77637,
79716,
81766,
84292,
86083,
87620,
89414,
91747,
93556,
99687,
102470,
104773,
106822,
109125,
111207,
113988,
115783,
118345,
121443,
123203,
124777,
128107,
131946,
135531,
139384,
146549,
152943,
157797,
160102,
162665,
165990,
168559,
173412,
175465,
178815,
187749,
190084,
192355,
194150,
196706,
198248,
201284,
203076,
204868,
206694,
209252,
211301,
213574,
215875,
217443,
219205,
221315,
223312,
228174,
232534,
238896,
243536,
248423,
251245,
255620,
257859,
259430,
261992,
265077,
271433,
274543,
279407,
284276,
290413,
294771,
300664,
307828,
313968,
319086,
323693,
328049,
333425,
338793,
342124,
346224,
351305,
354419,
360305,
365678,
370289,
375666,
381295,
386162,
391783,
394604,
398697,
402052,
404294,
406595,
408130,
409411,
410949,
412998,
415302,
417604,
419397,
421443,
422980,
424835,
426821,
428870,
431207,
433989,
436080,
441204,
447301,
449412,
451655,
454245,
456554,
460139,
463972,
466020,
468035,
469571,
471108,
472934,
475500,
479555,
481155,
483185,
488565,
494980,
497254,
499818,
503396,
505412,
507169,
507938,
508997,
511046,
513350,
515654,
517957,
520003,
521540,
523395,
525410,
526980,
529260,
533360,
538480,
543598,
548203,
552049,
557420,
561540,
563810,
565318,
567621,
569635,
570949,
573027,
574828,
578916,
580974,
585572,
587590,
589932,
594025,
597316,
599109,
601156,
602949,
604998,
607300,
609093,
611139,
612676,
614499,
616261,
618310,
620642,
622149,
624234,
627815,
630627,
632424,
635500,
639598,
644206,
648773,
650884,
653124,
654948,
656966,
659269,
661315,
662852,
664645,
666691,
668291,
670340,
672644,
674886,
677189,
679236,
681028,
682821,
684870,
687171,
688771,
690820,
693124,
695364,
697121,
697890,
698950,
701254,
703588,
705642,
709220,
711238,
713542,
715843,
717424,
722537,
725868,
729971,
735851,
739697,
745073,
750446,
755057,
760425,
763758,
768367,
773223,
776044,
780141,
784492,
788591,
793457,
798832,
803951,
808812,
812911,
817770,
821357,
825705,
829038,
833648,
838765,
843115,
846952,
850030,
854633,
857987,
860002,
861546,
865094,
867437,
871794,
877422,
882029,
886386,
892014,
896644,
898926,
903535,
908388,
910435,
912198,
914530,
916067,
917827,
919403,
923241,
926595,
928617,
931972,
934244,
936258,
937540,
939334,
941638,
943942,
946243,
947827,
953714,
959345,
964725,
971124,
977262,
981799,
984195,
986215,
989008,
993892,
995939,
997740,
1001833,
1005172,
1011306,
1014888,
1018029,
1022825,
1026154,
1029743,
1034675,
1041073,
1046894,
1051572,
1058159,
1063087,
1068460,
1073007,
1077938,
1084020,
1090151,
1092972,
1097070,
1101739,
1106097,
1111916,
1116087,
1123505,
1129323,
1133232,
1138805,
1145201,
1150576,
1155763,
1162101,
1168559,
1173876,
1180081,
1185910,
1192649,
1196654,
1201259,
1205168,
1210741,
1217200,
1222859,
1227376,
1232488,
1235565,
1239921,
1245293,
1249646,
1254276,
1256517,
1258566,
1260866,
1262149,
1264197,
1266246,
1268548,
1270341,
1272387,
1273926,
1276291,
1278277,
1280326,
1282629,
1284677,
1286727,
1289348,
1291636,
1297774,
1302370,
1303940,
1306181,
1308230,
1310533,
1312582,
1314918,
1317443,
1318980,
1320807,
1323625,
1326955,
1330799,
1335656,
1338691,
1340291,
1342275,
1343810,
1345097,
1348205,
1352548,
1354594,
1356136,
1359213,
1363570,
1369197,
1373541,
1375847,
1378666,
1382252,
1386372,
1388611,
1390115,
1391396,
1393027,
1395044,
1397124,
1399397,
1401666,
1402947,
1404486,
1406820,
1408868,
1410918,
1413446,
1415750,
1418051,
1419618,
1421166,
1425778,
1431412,
1437539,
1439299,
1440881,
1446250,
1449837,
1454195,
1460076,
1464178,
1469810,
1475439,
1480306,
1485930,
1489512,
1492589,
1496942,
1501549,
1505904,
1511026,
1516657,
1522032,
1527149,
1531504,
1536619,
1540462,
1545066,
1548644,
1550700,
1554795,
1558628,
1560675,
1562475,
1566278,
1568580,
1570374,
1572678,
1575010,
1576518,
1578822,
1581125,
1583171,
1584771,
1586798,
1591406,
1596015,
1600876,
1604933,
1607019,
1610884,
1613156,
1615206,
1617778,
1623404,
1627505,
1632878,
1637491,
1643371,
1647236,
1649508,
1651555,
1653350,
1655915,
1659752,
1662829,
1667186,
1672813,
1677160,
1680227,
1682019,
1683816,
1686893,
1691238,
1693764,
1695557,
1697637,
1699909,
1701956,
1703715,
1705027,
1706566,
1708870,
1711171,
1712771,
1714793,
1718085,
1720266,
1724521,
1727845,
1730154,
1733742,
1738346,
1741956,
1744233,
1747588,
1749830,
1752133,
1754182,
1756516,
1758568,
1761605,
1763654,
1765956,
1767749,
1769795,
1771334,
1773699,
1775685,
1777734,
1780037,
1782056,
1784682,
1788268,
1792368,
1797477,
1799785,
1803077,
1805188,
1807463,
1810282,
1813872,
1818987,
1822829,
1827173,
1829482,
1833063,
1835883,
1839726,
1844335,
1849156,
1850951,
1853509,
1855620,
1857862,
1860163,
1861700,
1863525,
1865828,
1867843,
1869413,
1871718,
1874275,
1876070,
1878628,
1880683,
1884460,
1888113,
1893485,
1897837,
1902211,
1904260,
1906564,
1908838,
1911365,
1913445,
1915779,
1917828,
1920132,
1922435,
1924418,
1925764,
1928068,
1930308,
1932100,
1933892,
1935685,
1937734,
1940037,
1942083,
1943683,
1945732,
1948036,
1950276,
1952068,
1953862,
1956166,
1958467,
1960004,
1961838,
1966404,
1968227,
1970020,
1972100,
1974341,
1976390,
1978694,
1981026,
1982627,
1984867,
1986628,
1988421,
1990468,
1992261,
1994307,
1995844,
1997637,
1999714,
2001283,
2003269,
2005318,
2007655,
2010469,
2012741,
2014789,
2016869,
2019106,
2020131,
2021475,
2023270,
2025828,
2027880,
2030948,
2032995,
2034788,
2036837,
2039142,
2041704,
2044776,
2047848,
2050920,
2053992,
2057064,
2060136,
2063208,
2066277,
2068583,
2071400,
2074470,
2076997,
2079079,
2081861,
2083972,
2086242,
2087779,
2089574,
2092131,
2093924,
2095908,
2097510,
2100072,
2103108,
2104901,
2107012,
2109219,
2110565,
2112871,
2115653,
2117702,
2120003,
2121540,
2123368,
2126437,
2128740,
2130792,
2133835,
2137449,
2140775,
2143593,
2146918,
2149478,
2152040,
2155108,
2157160,
2160229,
2162499,
2164069,
2166374,
2168935,
2171751,
2174533,
2176614,
2179140,
2180964,
2183015,
2185859,
2187878,
2190439,
2193254,
2195815,
2198632,
2201705,
2205032,
2208103,
2210927,
2215789,
2220136,
2223206,
2225768,
2228838,
2231404,
2235499,
2239341,
2243697,
2249073,
2254450,
2260069,
2262373,
2264677,
2266981,
2269285,
2271619,
2273735,
2277220,
2279300,
2281571,
2283366,
2285926,
2288485,
2290789,
2293093,
2295397,
2297700,
2299749,
2302053,
2304357,
2306661,
2308965,
2311269,
2313573,
2315877,
2318180,
2320229,
2322533,
2324837,
2327141,
2329445,
2331749,
2334054,
2336613,
2338917,
2341221,
2343525,
2345828,
2347877,
2350181,
2352485,
2354789,
2357096,
2360167,
2362984,
2366053,
2368357,
2370661,
2372965,
2375268,
2377317,
2379621,
2381925,
2384229,
2386533,
2388837,
2391142,
2393669,
2395717,
2397766,
2400132,
2402405,
2404708,
2406757,
2408996,
2410597,
2412904,
2415972,
2418022,
2420580,
2422629,
2424933,
2427238,
2429766,
2432099,
2433894,
2436456,
2439526,
2442086,
2444646,
2447300,
2450021,
2452293,
2454373,
2456646,
2458949,
2460998,
2463301,
2465381,
2467687,
2470468,
2472260,
2474053,
2476135,
2478915,
2480452,
2482249,
2485379,
2487364,
2489189,
2491497,
2494787,
2496355,
2498148,
2500164,
2501990,
2504559,
2509424,
2514504,
2517352,
2520426,
2524011,
2527851,
2531684,
2533736,
2536806,
2539367,
2542181,
2544488,
2547493,
2549350,
2551911,
2554661,
2556454,
2558564,
2560614,
2563178,
2566761,
2570084,
2572135,
2574950,
2577540,
2579814,
2582339,
2583876,
2585702,
2588261,
2590565,
2592900,
2595172,
2597221,
2599524,
2601573,
2603877,
2606183,
2608999,
2611813,
2614117,
2616422,
2618983,
2621795,
2623592,
2626662,
2629222,
2631782,
2634341,
2636740,
2639462,
2642023,
2644843,
2648683,
2652520,
2655594,
2659141,
2661190,
2663534,
2668143,
2672997,
2675301,
2677608,
2680677,
2682982,
2685540,
2687588,
2689638,
2692198,
2694756,
2696804,
2698853,
2701159,
2703941,
2705990,
2708291,
2709858,
2711399,
2714213,
2716519,
2719298,
2720579,
2722117,
2724199,
2727014,
2729603,
2731621,
2733925,
2736228,
2738279,
2741099,
2744933,
2747203,
2748743,
2751333,
2753603,
2755141,
2757190,
2759533,
2763878,
2766404,
2768230,
2770790,
2773286,
2775428,
2777667,
2779237,
2781544,
2784616,
2787687,
2790505,
2793838,
2798441,
2801774,
2806383,
2811248,
2816360,
2819430,
2821990,
2824580,
2826820,
2828644,
2830662,
2832997,
2835300,
2837349,
2839653,
2841957,
2844263,
2847044,
2848872,
2851941,
2854244,
2856261,
2858310,
2860646,
2863174,
2865508,
2867524,
2869317,
2871398,
2873923,
2875460,
2877282,
2878821,
2881155,
2883170,
2884677,
2886726,
2889059,
2890854,
2893410,
2894952,
2898019,
2899811,
2901606,
2904133,
2906213,
2908520,
2911590,
2914150,
2916710,
2919268,
2921283,
2922852,
2924869,
2926980,
2929252,
2931302,
2933861,
2936132,
2937927,
2940485,
2942566,
2945127,
2947941,
2950250,
2953835,
2957606,
2959718,
2962277,
2964583,
2967400,
2970469,
2972773,
2975076,
2977125,
2979428,
2981443,
2982978,
2984259,
2985795,
2987332,
2989156,
2991140,
2992741,
2995051,
2998892,
3002989,
3007299,
3008870,
3011430,
3013989,
3016294,
3018883,
3020901,
3023173,
3025252,
3027301,
3029605,
3031876,
3033732,
3036006,
3038564,
3040613,
3042920,
3045957,
3048006,
3050342,
3052869,
3054918,
3057254,
3059814,
3062374,
3064934,
3067494,
3070021,
3072070,
3074406,
3076966,
3079526,
3082086,
3084646,
3087206,
3089765,
3092069,
3094404,
3096674,
3098211,
3099974,
3102277,
3104326,
3106659,
3108422,
3110725,
3112771,
3114308,
3116130,
3117667,
3119459,
3121252,
3123304,
3126371,
3128165,
3130470,
3133031,
3135848,
3139012,
3141734,
3144323,
3146338,
3147875,
3149669,
3151940,
3153762,
3155299,
3157091,
3158883,
3160675,
3162468,
3164520,
3167587,
3169380,
3171429,
3173733,
3176068,
3178277,
3180132,
3182180,
3184229,
3186533,
3188769,
3189538,
3190628,
3192677,
3194981,
3197286,
3199847,
3202665,
3205990,
3208550,
3211113,
3214442,
3218023,
3220838,
3223497,
3227588,
3230308,
3232358,
3234884,
3236710,
3239238,
3241572,
3243623,
3246437,
3248740,
3250757,
3252838,
3255401,
3258726,
3261286,
3263875,
3265896,
3268968,
3272037,
3274342,
3276909,
3281262,
3285892,
3288166,
3290756,
3293030,
3295558,
3297894,
3300454,
3302981,
3305030,
3307362,
3308868,
3310661,
3312707,
3314244,
3316036,
3317829,
3319907,
3321731,
3323717,
3325766,
3328098,
3329638,
3332197,
3334502,
3337061,
3339333,
3341381,
3343461,
3345768,
3348840,
3351877,
3353956,
3355973,
3358050,
3359590,
3362149,
3364456,
3367494,
3369827,
3371622,
3374184,
3377256,
3380328,
3383399,
3386180,
3387973,
3390084,
3392324,
3394149,
3396421,
3398470,
3400836,
3403108,
3405157,
3407463,
3410277,
3412582,
3415141,
3417442,
3418950,
3421253,
3423299,
3424836,
3426629,
3428675,
3430275,
3432261,
3434372,
3436676,
3438918,
3441221,
3443269,
3445318,
3447622,
3449923,
3451523,
3453510,
3455812,
3457604,
3459460,
3461764,
3464037,
3466340,
3468390,
3470949,
3473250,
3474787,
3476580,
3478598,
3480936,
3484006,
3486534,
3488868,
3490917,
3493222,
3495779,
3497540,
3499333,
3501412,
3503461,
3505767,
3508582,
3511142,
3513702,
3516262,
3518823,
3521638,
3524195,
3525990,
3528548,
3530693,
3533669,
3535973,
3538214,
3540262,
3542373,
3544679,
3547495,
3550278,
3552582,
3554917,
3557156,
3558723,
3560292,
3562341,
3564646,
3567207,
3570024,
3573092,
3575138,
3576681,
3580013,
3584367,
3589229,
3593582,
3598190,
3602799,
3607665,
3613043,
3618926,
3623523,
3625315,
3627108,
3629160,
3632227,
3634021,
3636326,
3638887,
3641704,
3644868,
3647590,
3650154,
3653735,
3656553,
3659882,
3663463,
3666279,
3669094,
3671654,
3674243,
3676258,
3677795,
3679589,
3681893,
3684198,
3686757,
3689028,
3690850,
3692389,
3694696,
3697766,
3700325,
3702598,
3704934,
3707498,
3711075,
3712868,
3714920,
3717987,
3719780,
3721829,
3724133,
3726437,
3728741,
3731045,
3733357,
3737714,
3743338,
3746926,
3751533,
3755886,
3760485,
3762820,
3765094,
3767655,
3770470,
3772966,
3775075,
3776871,
3779684,
3781668,
3783270,
3785829,
3788136,
3791205,
3793510,
3796067,
3797861,
3800166,
3802756,
3805027,
3806820,
3808869,
3811173,
3813412,
3815013,
3817318,
3819846,
3822113,
3822882,
3823972,
3826021,
3828325,
3830630,
3833190,
3835750,
3838311,
3841126,
3843684,
3845733,
3848037,
3850344,
3853415,
3856329,
3860420,
3863141,
3865411,
3866948,
3868772,
3870820,
3872871,
3875683,
3877478,
3880042,
3883626,
3887208,
3890278,
3892838,
3895363,
3896933,
3899245,
3903619,
3905635,
3907396,
3909189,
3911267,
3912998,
3915110,
3917637,
3919686,
3922021,
3924326,
3926886,
3929447,
3932260,
3934308,
3936358,
3938918,
3941508,
3943778,
3945348,
3947622,
3950146,
3951464,
3954533,
3956899,
3959235,
3961764,
3964266,
3967855,
3972771,
3975107,
3977636,
3980139,
3983974,
3986534,
3989093,
3991366,
3993796,
3996515,
3998372,
4000933,
4003653,
4005735,
4008549,
4010855,
4013672,
4016707,
4018244,
4020133,
4022950,
4025956,
4027974,
4030278,
4032613,
4034984,
4038500,
4040515,
4042085,
4044386,
4045925,
4048230,
4050789,
4053095,
4055973,
4058726,
4061286,
4063909,
4066662,
4069223,
4072067,
4074147,
4076387,
4078180,
4080293,
4083113,
4086948,
4089445,
4091747,
4093540,
4095589,
4097893,
4100197,
4102498,
4104035,
4105828,
4107875,
4109636,
4111461,
4113827,
4116069,
4118372,
4120419,
4122218,
4125807,
4130660,
4132773,
4135593,
4139428,
4141925,
4144229,
4146531,
4148325,
4150630,
4153188,
4155268,
4157506,
4158787,
4160357,
4162726,
4165800,
4169319,
4172135,
4174951,
4177765,
4180071,
4182887,
4185703,
4188516,
4190569,
4193990,
4197285,
4200039,
4202851,
4204646,
4207268,
4209765,
4212135,
4215397,
4217701,
4220070,
4223142,
4226155,
4229989,
4232294,
4234851,
4236646,
4239268,
4241796,
4244073,
4247406,
4252004,
4254053,
4256358,
4258917,
4261221,
4263527,
4266343,
4269156,
4271269,
4274021,
4276423,
4279913,
4283306,
4287333,
4289703,
4292964,
4295077,
4297829,
4300231,
4303721,
4307114,
4311140,
4313157,
4315206,
4317540,
4319597,
4323951,
4328814,
4333424,
4338498,
4339747,
4341094,
4343653,
4345958,
4348518,
4351172,
4353894,
4356548,
4359300,
4361575,
4364390,
4367044,
4369796,
4372167,
4375654,
4378311,
4381893,
4384869,
4387174,
4389733,
4392039,
4394854,
4397410,
4398917,
4400966,
4403300,
4405348,
4407364,
4409157,
4411203,
4412773,
4415046,
4417380,
4419428,
4421478,
4424005,
4426085,
4428419,
4430404,
4432197,
4434246,
4436579,
4438373,
4440643,
4442212,
4444261,
4446565,
4448871,
4451685,
4453987,
4455749,
4457797,
4459847,
4462436,
4464486,
4467076,
4469348,
4471397,
4473701,
4476002,
4477541,
4479843,
4481637,
4483943,
4486723,
4488260,
4490051,
4491588,
4493414,
4495972,
4498023,
4500835,
4502628,
4504645,
4506694,
4509028,
4511045,
4513094,
4515430,
4517992,
4521027,
4522564,
4524389,
4526691,
4528451,
4529988,
4531816,
4534886,
4537445,
4539748,
4541763,
4543270,
4545318,
4547430,
4549988,
4552039,
4554883,
4556867,
4558404,
4560230,
4562789,
4565058,
4566377,
4569667,
4571238,
4573799,
4576614,
4579108,
4580712,
4583781,
4586087,
4588902,
4591462,
4594021,
4596293,
4598342,
4600679,
4603495,
4606274,
4607592,
4610692,
4612932,
4614725,
4616802,
4618339,
4620132,
4622181,
4624483,
4626276,
4628330,
4631915,
4635750,
4638315,
4642152,
4645224,
4648295,
4651109,
4653414,
4655972,
4658021,
4660326,
4662884,
4664936,
4668008,
4671080,
4674148,
4676198,
4678757,
4681062,
4683652,
4685891,
4687462,
4690051,
4692068,
4694148,
4696422,
4699012,
4701291,
4705127,
4707877,
4709735,
4712483,
4713764,
4715365,
4717668,
4719718,
4722277,
4724580,
4726692,
4729158,
4731493,
4733800,
4736868,
4738917,
4741221,
4743526,
4746052,
4747845,
4749924,
4751974,
4754533,
4756839,
4759653,
4761958,
4764518,
4767078,
4769638,
4772199,
4775014,
4777573,
4779878,
4782437,
4784745,
4788069,
4790373,
4792614,
4794662,
4796773,
4799079,
4801895,
4804678,
4806982,
4809317,
4811556,
4813123,
4814692,
4816743,
4819557,
4821862,
4824420,
4826468,
4828519,
4831336,
4834405,
4836708,
4838722,
4840003,
4841574,
4844134,
4846723,
4848741,
4851045,
4853350,
4855875,
4857412,
4859242,
4862830,
4867440,
4872558,
4877167,
4882033,
4887408,
4892527,
4897391,
4902212,
4904044,
4908133,
4910437,
4912739,
4914534,
4917098,
4920677,
4922981,
4925285,
4927589,
4929893,
4932228,
4934502,
4937063,
4939812,
4941414,
4943976,
4947045,
4949350,
4951940,
4954211,
4955940,
4957541,
4959846,
4962406,
4964966,
4967524,
4969573,
4971877,
4974184,
4977255,
4980066,
4981574,
4983909,
4986210,
4987747,
4989540,
4991558,
4993893,
4996195,
4997958,
5000261,
5002340,
5004389,
5006694,
5009256,
5012325,
5014595,
5016164,
5018213,
5020517,
5022821,
5025126,
5027685,
5029991,
5032771,
5034308,
5036068,
5037670,
5040232,
5043301,
5045604,
5047683,
5049702,
5052261,
5054534,
5056836,
5058664,
5061741,
5066050,
5067331,
5068869,
5070918,
5073222,
5075555,
5077350,
5079908,
5081957,
5084260,
5086309,
5088612,
5090661,
5092965,
5095271,
5098087,
5100901,
5103213,
5107558,
5110120,
5113188,
5115237,
5117539,
5119332,
5121477,
5124422,
5126691,
5128036,
5130086,
5132676,
5134950,
5137513,
5140836,
5142885,
5145286,
5148517,
5150918,
5154149,
5156454,
5159016,
5162090,
5165669,
5167974,
5170536,
5173610,
5177187,
5178982,
5181542,
5184100,
5186149,
5188484,
5190758,
5193318,
5195878,
5198436,
5200485,
5202767,
5207371,
5210949,
5213027,
5214820,
5216870,
5219428,
5221479,
5224295,
5227109,
5229413,
5231719,
5234535,
5237350,
5239912,
5242985,
5246313,
5249642,
5253222,
5255782,
5258342,
5260900,
5262954,
5266539,
5270374,
5272939,
5276776,
5279848,
5282919,
5285731,
5287524,
5289539,
5291076,
5292867,
5294404,
5296195,
5297732,
5299555,
5301348,
5303398,
5305959,
5308772,
5310823,
5313639,
5316455,
5319271,
5322087,
5324901,
5327205,
5329511,
5332326,
5334888,
5337961,
5341289,
5344618,
5348198,
5350758,
5353318,
5355877,
5358182,
5360741,
5363047,
5365862,
5368388,
5370181,
5372262,
5374787,
5376356,
5378374,
5380678,
5382979,
5384548,
5386598,
5389187,
5391206,
5393769,
5397061,
5399112,
5401926,
5404267,
5408104,
5411174,
5413733,
5416038,
5418564,
5420357,
5422405,
5424452,
5426245,
5428326,
5430888,
5433958,
5436516,
5438564,
5440611,
5442406,
5444966,
5447556,
5449831,
5452644,
5454694,
5457253,
5459560,
5462636,
5466732,
5470830,
5475433,
5478765,
5483119,
5487974,
5490532,
5492584,
5495655,
5498469,
5500775,
5503592,
5506692,
5508932,
5510725,
5512774,
5515109,
5517424,
5522545,
5527908,
5529956,
5531973,
5534022,
5536356,
5538373,
5540422,
5542724,
5544517,
5546563,
5548133,
5550406,
5552741,
5555046,
5557635,
5559621,
5561670,
5564005,
5566309,
5568613,
5570918,
5573480,
5576550,
5579109,
5581381,
5583426,
5584707,
5586245,
5588356,
5590631,
5593451,
5597293,
5601646,
5606245,
5608516,
5610309,
5612359,
5614954,
5618534,
5621096,
5624166,
5626693,
5628773,
5631108,
5633381,
5635654,
5637988,
5640037,
5642341,
5644611,
5646148,
5647975,
5650788,
5652836,
5654885,
5657189,
5659494,
5662026,
5665352,
5668202,
5671750,
5674053,
5676137,
5679460,
5681478,
5683784,
5686732,
5691597,
5696716,
5701581,
5706568,
5709423,
5714288,
5719363,
5720933,
5723235,
5725030,
5727589,
5729894,
5732390,
5734436,
5736067,
5738085,
5740485,
5743557,
5746564,
5748837,
5751141,
5753476,
5755846,
5759174,
5762502,
5765830,
5769063,
5771845,
5773926,
5776485,
5778790,
5781350,
5783939,
5785988,
5788258,
5789794,
5791334,
5793924,
5796196,
5798245,
5800548,
5802597,
5804931,
5806949,
5809253,
5811522,
5812837,
5815141,
5817444,
5819492,
5821541,
5823876,
5826150,
5828710,
5831269,
5833573,
5835908,
5838182,
5840742,
5843301,
5845604,
5847654,
5850181,
5852230,
5854532,
5856325,
5858371,
5859906,
5861187,
5862787,
5864772,
5866628,
5868932,
5871172,
5872963,
5874500,
5876294,
5878598,
5880899,
5882436,
5884262,
5886788,
5888643,
5890628,
5892455,
5895300,
5897604,
5899875,
5901668,
};
static uint32_t digit(const unsigned char* text, uint32_t len, uint32_t i, bool hex);
/* text[at] is '&' and text[at+1] is '#'. Returns the index after what was consumed. */
static uint32_t numeric_ref(const unsigned char* text, uint32_t len, uint32_t at) {
uint32_t i = at + 2;
bool hex = false;
if (i < len && (text[i] == 'x' || text[i] == 'X')) {
hex = true;
i += 1;
}
uint32_t first = digit(text, len, i, hex);
if (first == 0xFFFFFFFFu) {
emit_byte('&');
return at + 1;
}
uint32_t value = first;
uint32_t mult = hex ? 16 : 10;
i += 1;
while (i < len) {
uint32_t d = digit(text, len, i, hex);
if (d == 0xFFFFFFFFu) break;
/* Saturate: anything past U+10FFFF becomes U+FFFD the same way. */
value = value * mult + d;
if (value > 0x110000u) value = 0x110000u;
i += 1;
}
if (i < len && text[i] == ';') i += 1;
uint32_t v = value;
if (v >= 0x80 && v <= 0x9F && c1[v - 0x80] != 0) v = c1[v - 0x80];
if (v == 0 || (v >= 0xD800 && v <= 0xDFFF) || v > 0x10FFFF) v = 0xFFFD;
emit_code_point(v);
return i;
}
static uint32_t digit(const unsigned char* text, uint32_t len, uint32_t i, bool hex) {
if (i >= len) return 0xFFFFFFFFu;
uint8_t c = text[i];
if (c >= '0' && c <= '9') return c - '0';
if (hex && c >= 'a' && c <= 'f') return c - 'a' + 10;
if (hex && c >= 'A' && c <= 'F') return c - 'A' + 10;
return 0xFFFFFFFFu;
}
/* Binary search over the sorted table; writes the value to out and returns its length. */
static uint32_t lookup(const unsigned char* key, uint32_t key_len, const unsigned char** out) {
uint32_t lo = 0, hi = TABLE_ENTRIES;
while (lo < hi) {
uint32_t mid = lo + (hi - lo) / 2;
uint32_t e = table_entries[mid];
uint32_t off = e >> 8;
uint32_t nl = (e & 0x1F) + 1;
uint32_t vl = (e >> 5) & 7;
int cmp = 0;
uint32_t n = nl < key_len ? nl : key_len;
for (uint32_t k = 0; k < n; k++) {
if (table_blob[off + k] != key[k]) {
cmp = table_blob[off + k] < key[k] ? -1 : 1;
break;
}
}
if (cmp == 0) {
if (nl != key_len) cmp = nl < key_len ? -1 : 1;
else {
*out = &table_blob[off + nl];
return vl;
}
}
if (cmp < 0) lo = mid + 1;
else hi = mid;
}
return 0;
}
/* text[at] is '&' and the next byte is a name character. */
static uint32_t named_ref(const unsigned char* text, uint32_t len, uint32_t at) {
uint32_t end = at + 1;
while (end < len && end - (at + 1) < 32 && name_char(text[end])) end += 1;
if (end < len && text[end] == ';') end += 1;
const unsigned char* name = text + at + 1;
uint32_t name_len = end - (at + 1);
const unsigned char* value;
uint32_t vl = lookup(name, name_len, &value);
if (vl) {
emit(value, vl);
return end;
}
/* Longest table-key prefix wins; the rest (possibly including ';') is copied. */
for (uint32_t x = name_len - 1; x >= 2; x -= 1) {
vl = lookup(name, x, &value);
if (vl) {
emit(value, vl);
emit(name + x, name_len - x);
return end;
}
}
emit_byte('&');
return at + 1;
}
/* text[at] is '&'. Returns the index after what was consumed. */
static uint32_t handle_ref(const unsigned char* text, uint32_t len, uint32_t at) {
if (at + 1 >= len) {
emit_byte('&');
return at + 1;
}
uint8_t c = text[at + 1];
if (c == '#') return numeric_ref(text, len, at);
if (name_char(c)) return named_ref(text, len, at);
emit_byte('&');
return at + 1;
}
extern "C" uint64_t render(uint32_t len) {
if (len > INPUT_CAP) len = INPUT_CAP;
const unsigned char* text = buffer + GAP;
out_len = 0;
uint32_t i = 0;
while (i < len) {
if (text[i] != '&') {
buffer[out_len++] = text[i];
i += 1;
} else {
i = handle_ref(text, len, i);
}
}
return ((uint64_t)(uint32_t)buffer << 32) | out_len;
}