diff --git a/crates/sparse-ngrams/README.md b/crates/sparse-ngrams/README.md index 1772382d..3d9b4659 100644 --- a/crates/sparse-ngrams/README.md +++ b/crates/sparse-ngrams/README.md @@ -10,17 +10,19 @@ For background, see: ## Caveats -The integrated bigram table contains only lowercase ASCII bigrams. Callers should lowercase and normalize input before extraction (e.g. fold uppercase to lowercase, map non-ASCII bytes to a single sentinel value). This makes the implementation suitable for case-insensitive search indexes. +The bigram priority model only scores index-folded ASCII byte pairs; any byte with the high bit set resolves to priority `0`. Correct output requires index-folding and normalization with the [casefold](../casefold) crate in this workspace before extraction (including folding uppercase to lowercase and mapping non-ASCII bytes to high-bit-set bytes). This makes the implementation suitable for case-insensitive search indexes. ## How it works -Each consecutive byte pair (bigram) is assigned a frequency-based priority from a precomputed table. An n-gram boundary occurs wherever a bigram has lower priority than all bigrams between it and the previous boundary. This is computed efficiently using a monotone deque or a scan-based approach. +Each consecutive byte pair (bigram) is assigned a frequency-based priority from a compact factored model (see [Bigram priority model](#bigram-priority-model)). An n-gram boundary occurs wherever a bigram has lower priority than the bigrams between it and the previous boundary. This is computed efficiently using a monotone deque or a scan-based approach. For a document of N bytes, this produces at most 3(N−1) n-grams: N−1 bigrams, plus up to 2(N−1) algorithmically selected longer n-grams (up to 8 bytes). +Each n-gram is returned as an opaque 32-bit `NGram` key that packs the byte length together with a payload — the raw bytes for grams of 3 bytes or fewer, a multiplicative hash for longer ones — so grams of different lengths never collide. The packed value is run through a bijective mixing permutation so the key bits are well distributed. + ### Selection criterion -A substring of length 3–8 is emitted as a sparse n-gram if and only if every interior bigram priority is strictly greater than the maximum of the left and right boundary bigram priorities. +A substring of length 3–8 is emitted as a sparse n-gram when both its left and right boundary bigram priorities are strictly less than every interior bigram priority. ## Usage @@ -31,39 +33,42 @@ let input = b"hello world"; let grams = collect_sparse_grams(input); for gram in &grams { assert!(gram.len() >= 2); - assert!(gram.len() <= MAX_SPARSE_GRAM_SIZE as usize); + assert!(gram.len() <= MAX_SPARSE_GRAM_SIZE); } ``` +`collect_sparse_grams` is a convenience wrapper that collects into a `Vec`. To avoid the +intermediate allocation — streaming grams straight into an index, deduplicating, or filtering — +call `collect_sparse_grams_deque` (or `collect_sparse_grams_scan`) with your own closure, which is +invoked once per n-gram in emission order: + +```rust +use sparse_ngrams::{collect_sparse_grams_deque, NGram}; + +let mut count = 0; +collect_sparse_grams_deque(b"hello world", |gram: NGram| { + count += 1; + // ... insert `gram` into an index, hash it, etc. +}); +assert!(count > 0); +``` + ## Performance -Benchmarks on an Apple M1 (15 KB input, `lib.rs` source file): +Throughput on an Apple M4 Max (the ~15 KB `benchmarks/fixtures/sample_code.txt` corpus): | Variant | Throughput | |---------|-----------| -| `deque` | ~3.5 GB/s | -| `scan` | ~4.9 GB/s | - -The `scan` variant is ~40% faster than the deque variant by replacing the monotone deque with a fixed-size circular buffer and a suffix-minimum scan. - -## Bigram table size +| `deque` | ~220 MiB/s | +| `scan` | ~320 MiB/s | -The priority table maps byte pairs to frequency-based priorities. Increasing the table size (number of ranked bigrams) produces more distinct longer n-grams, but saturates quickly: +The `scan` variant is ~45% faster than the deque variant by replacing the monotone deque with a fixed-size circular buffer and a suffix-minimum scan. -![Unique n-grams vs. table size](images/unique_ngrams_vs_table_size.png) +The factored bigram model computes each priority (instead of reading a large lookup table) and each key is passed through a mixing permutation. Compared to the earlier table-based implementation this trades roughly 1.6× throughput for a ~7.5× smaller table (~8.5 KB vs ~64 KB in memory) and better-distributed keys. -| Table size | Unique n-grams | % of max | -|-----------|-----------------|----------| -| 100 | 5.8M | 77.0% | -| 200 | 6.4M | 84.4% | -| 400 | 6.8M | 90.2% | -| 800 | 7.3M | 96.0% | -| 1,600 | 7.5M | 99.2% | -| 3,200 | 7.6M | 99.9% | -| 5,845 | 7.6M | 100% | +## Bigram priority model -The current bigram table contains the 5,845 most frequent bigrams from a large code corpus. -The table saturates quickly — the first ~1,600 bigrams already capture 99% of the unique n-grams. +Priorities come from a compact factored model (~8.5 KB) rather than a full 256×256 lookup table (~64 KB in memory). The ASCII bigram `(a, b)` is scored as `H[a] + H[b] + (code << 10) + 1`, where `H` is a shared 128-entry per-byte weight and `code` is a 4-bit per-bigram correction; a per-bigram index folded into the low bits makes every priority unique while a higher score still means a more frequent bigram. The model was trained offline against a frequency ranking from a large code corpus (~1.4% inversions vs. the exact ranking). ## Maximum n-gram length diff --git a/crates/sparse-ngrams/benchmarks/fixtures/sample_code.txt b/crates/sparse-ngrams/benchmarks/fixtures/sample_code.txt new file mode 100644 index 00000000..17225ee0 --- /dev/null +++ b/crates/sparse-ngrams/benchmarks/fixtures/sample_code.txt @@ -0,0 +1,299 @@ +// Frozen benchmark corpus for `sparse-ngrams` (see benchmarks/performance.rs). +// A snapshot of realistic source code, committed so the "large" benchmark input stays +// fixed and does not drift when the crate sources are edited. Do not regenerate. + +//! Bigram priority model. +//! +//! Assigns a frequency-based priority to each byte pair, used by the sparse n-gram +//! extraction algorithm to decide where n-gram boundaries fall. +//! +//! Priorities used to be a full 256×256 `u16` table baked from a `bigrams.bin` frequency +//! ranking (~64kB in memory). They are now reconstructed from a compact *factored* model +//! (~8.5kB) tuned offline against that ranking. The ascii bigram `(a, b)` is scored as +//! `BIGRAM_H[a] + BIGRAM_H[b] + (code << BIGRAM_CODE_SHIFT) + 1`, where [`BIGRAM_H`] is a single +//! shared per-byte weight and `code` is a 4-bit (`0..=15`) per-bigram correction. Bigrams absent +//! from the training data carry `code == 0` and are not special-cased: they fall back to the bare +//! factored score, i.e. the model extrapolates a priority for them. The byte index `idx` is folded +//! into the low 16 bits so every bigram gets a *unique* priority, while a higher score still means +//! a more frequent bigram (~1.9% inversions vs. the exact ranking). + +/// A casefolded indexable byte uses 7 bits for ascii characters; any non-ascii (unicode) +/// character is expected to have its high bit set. Only ascii bigrams are ever present, so +/// non-ascii characters always resolve to priority `0`. The model therefore only covers the 128 +/// ascii values per character. +const BIGRAM_ALPHABET: usize = 128; + +/// The per-bigram 4-bit correction code is scaled by `1 << BIGRAM_CODE_SHIFT` and added to the +/// shared per-byte weights. A plain shift replaces what used to be a lookup into a learned +/// 16-entry offset table, at a negligible accuracy cost (~1.9% vs ~1.87% inversions). +const BIGRAM_CODE_SHIFT: u32 = 8; + +/// 4-bit correction code per ascii bigram, packed two codes per byte (the even index in the low +/// nibble). Scaled by `1 << BIGRAM_CODE_SHIFT` and added to the shared per-byte weights. +static BIGRAM_CODE: &[u8; BIGRAM_ALPHABET * BIGRAM_ALPHABET / 2] = include_bytes!("bigram_code.bin"); + +/// Shared per-byte weight. `BIGRAM_H[b]` contributes to the priority of every bigram containing +/// byte `b`; `3134` is the filler weight for bytes absent from the training data. +static BIGRAM_H: [u16; BIGRAM_ALPHABET] = [ + 3134, 0, 3134, 3134, 3134, 3134, 3134, 478, 3134, 3259, 3982, 3134, 541, 2332, 3134, 3134, + 3134, 3134, 3134, 243, 3134, 3134, 3134, 3134, 3134, 3134, 3134, 671, 3134, 3134, 3134, 3134, + 4433, 2411, 3784, 3065, 2238, 2305, 2643, 2950, 3427, 3280, 2982, 2601, 3306, 3261, 3491, 3565, + 3296, 3431, 3319, 3142, 3121, 3142, 3122, 3090, 3103, 3063, 3153, 3072, 3065, 3208, 3087, 1901, + 2506, 3134, 3134, 3134, 3134, 3134, 3134, 3134, 3134, 3134, 3134, 3134, 3134, 3134, 3134, 3134, + 3134, 3134, 3134, 3134, 3134, 3134, 3134, 3134, 3134, 3134, 3134, 2626, 2519, 2739, 2382, 3238, + 2578, 3803, 3467, 3773, 3752, 3989, 3500, 3524, 3152, 3571, 2639, 3249, 3542, 3437, 3647, 3554, + 3503, 2503, 3741, 4069, 3831, 3564, 3162, 3137, 3082, 3080, 2860, 2794, 2396, 2852, 2450, 3134, +]; + +/// Reconstructs the priority of the ascii bigram `(a, b)`; see [`bigram_priority`]. This rolling +/// variant avoids re-loading `BIGRAM_H[a]`: consecutive bigrams overlap by one byte, so the caller +/// passes the `h_b` returned for the previous position as `h_a` and gets `BIGRAM_H[b]` back for the +/// next one. The `H` value is only used for ascii bytes; for a non-ascii byte the bigram is absent, +/// so the masked lookup (`b & 0x7f`) merely returns a value that the next step discards. +#[inline] +pub(crate) fn bigram_priority_rolling(a: u8, b: u8, h_a: u32) -> (u32, u32) { + let h_b = BIGRAM_H[(b & (BIGRAM_ALPHABET as u8 - 1)) as usize] as u32; + if (a | b) >= BIGRAM_ALPHABET as u8 { + return (0, h_b); + } + let idx = a as usize * BIGRAM_ALPHABET + b as usize; + let code = (BIGRAM_CODE[idx >> 1] >> ((idx & 1) * 4)) & 0xF; + // The 4-bit `code` is scaled by `1 << BIGRAM_CODE_SHIFT` (a plain shift in place of an offset + // table) and added to the shared per-byte weights. Absent bigrams carry `code == 0`, so they + // fall back to the bare factored score `h_a + h_b + 1`. A higher score still means a more + // frequent bigram; `base` fits in 16 bits, so the unique per-bigram `idx` in the low 16 bits + // keeps every priority unique. + let base = h_a + h_b + ((code as u32) << BIGRAM_CODE_SHIFT) + 1; + ((base << 16) | idx as u32, h_b) +} + +/// The `BIGRAM_H` weight of a single byte, used to seed [`bigram_priority_rolling`]. +#[inline] +pub(crate) fn bigram_h(a: u8) -> u32 { + BIGRAM_H[(a & (BIGRAM_ALPHABET as u8 - 1)) as usize] as u32 +} + +/// Reconstructs the frequency-ranking priority of the ascii bigram `(a, b)`. Absent or non-ascii +/// bigrams resolve to `0`; present bigrams get a strictly positive, unique priority where a higher +/// value means a more frequent bigram. This priority is used to split strings into smaller +/// n-grams. +pub fn bigram_priority(a: u8, b: u8) -> u32 { + bigram_priority_rolling(a, b, bigram_h(a)).0 +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn non_ascii_is_zero() { + assert_eq!(bigram_priority(0x80, b'a'), 0); + assert_eq!(bigram_priority(b'a', 0x80), 0); + assert_eq!(bigram_priority(0xff, 0xff), 0); + } + + #[test] + fn ascii_bigrams_are_positive_and_unique() { + // Distinct ascii bigrams get distinct, strictly positive priorities (the `idx` in the low + // 16 bits guarantees uniqueness). + assert!(bigram_priority(b'a', b'b') > 0); + assert_ne!(bigram_priority(b'a', b'b'), bigram_priority(b'b', b'a')); + assert_ne!(bigram_priority(b'a', b'b'), bigram_priority(b'a', b'c')); + } + + #[test] + fn rolling_matches_direct() { + // The rolling variant must reproduce the standalone `bigram_priority` for every ascii pair, + // and hand back `BIGRAM_H[b]` for the next step. + for a in 0u8..128 { + for b in 0u8..128 { + let (p, h_b) = bigram_priority_rolling(a, b, bigram_h(a)); + assert_eq!(p, bigram_priority(a, b), "mismatch at ({a}, {b})"); + assert_eq!(h_b, bigram_h(b), "h_b mismatch at ({a}, {b})"); + } + } + } +} +//! Compact n-gram representation. +//! +//! An [`NGram`] packs a substring's byte length and a payload into the low **27 bits** of a +//! `u32` (the top 5 bits are always zero): +//! +//! ```text +//! bit 31 27 24 0 +//! +-----------------+-----------+-----------+ +//! | 00000 (unused) | len - 2 | payload | +//! +-----------------+-----------+-----------+ +//! 5 bits 3 bits 24 bits +//! ``` +//! +//! * **Length** (`len - 2`, bits 24..27): substring byte-lengths range from 2 (bigrams) to +//! [`MAX_SPARSE_GRAM_SIZE`] (8), so biasing by 2 fits the 7 possible values into 3 bits. +//! * **Payload** (bits 0..24): for substrings of at most 3 bytes the bytes are packed +//! losslessly (left-aligned, so distinct short grams never collide); longer substrings are +//! hashed down to 24 bits with a multiplicative hash. +//! +//! Because the length lives in its own field, an `NGram` of one size never collides with an +//! `NGram` of another size. The packed value is finally run through a bijective [`mix27`] +//! permutation so the most-significant bits (which callers may use for bucketing or sorting) are +//! well distributed even though the packed value is highly structured. + +use std::fmt::{self, Write as _}; + +use crate::MAX_SPARSE_GRAM_SIZE; + +/// Odd multiplicative constant (the golden-ratio / Fibonacci hashing constant) used to hash grams +/// longer than 3 bytes down to the 24-bit payload. +const MULTIPLICATIVE_HASH: u64 = 0x9E37_79B9_7F4A_7C15; + +/// A compact n-gram identifier. See the module-level documentation for the bit layout. +/// +/// Note: we could store n-grams up to length 8 verbatim in a `u64`. However, that would explode +/// the number of distinct keys in a search dictionary. For that reason we compress n-grams into a +/// `u32`, which puts a more reasonable upper bound on the number of dictionary keys. +/// +/// Note: by storing the length explicitly, we ensure that only n-grams of the same length can +/// collide. This is important because there are exponentially more long n-grams than short ones. +/// At the same time, longer n-grams occur less frequently, so colliding long n-grams won't +/// increase the false-positive rate too much. +/// +/// # Construction +/// +/// Use [`NGram::from_bytes`] for one-off hashing, or the rolling 8-byte window helper inside the +/// extraction loop for amortised O(1) computation per n-gram. +#[derive(Clone, Copy, PartialEq, Eq, Hash, PartialOrd, Ord, Default)] +#[repr(transparent)] +pub struct NGram(pub(crate) u32); + +impl NGram { + /// Smallest indexed gram length (bigrams); subtracted from the stored length so the biased + /// value fits in [`Self::LEN_BITS`] bits. + const LEN_BIAS: u32 = 2; + /// Number of bits used to encode the biased length. + const LEN_BITS: u32 = 3; + /// Mask selecting the biased-length field (once shifted down). + const LEN_MASK: u32 = (1 << Self::LEN_BITS) - 1; + /// Number of low bits used by the payload; the length sits just above it. + const PAYLOAD_BITS: u32 = 24; + /// Mask selecting the payload field. + const PAYLOAD_MASK: u32 = (1 << Self::PAYLOAD_BITS) - 1; + /// Total number of significant bits in the packed representation (the top 5 bits of the `u32` + /// are always zero). + pub(crate) const BITS: u32 = Self::PAYLOAD_BITS + Self::LEN_BITS; + /// Mask selecting the significant [`Self::BITS`] bits. + pub(crate) const MASK: u32 = (1 << Self::BITS) - 1; + + /// Build an `NGram` by hashing the given byte slice from scratch. + /// + /// # Panics + /// + /// In debug builds, panics if `src.len()` is not in `2..=`[`MAX_SPARSE_GRAM_SIZE`]. + pub fn from_bytes(src: &[u8]) -> Self { + debug_assert!( + (Self::LEN_BIAS as usize..=MAX_SPARSE_GRAM_SIZE).contains(&src.len()), + "ngram length {} out of range [{}, {}]", + src.len(), + Self::LEN_BIAS, + MAX_SPARSE_GRAM_SIZE, + ); + // 24-bit payload: short grams are packed losslessly, longer ones hashed. + let payload = if src.len() <= 3 { + // Pack the 2-3 bytes into the low 24 bits, most-significant byte first. + let mut p = 0u32; + for &byte in src { + p = (p << 8) | byte as u32; + } + p + } else { + // Grams here are 4..=MAX_SPARSE_GRAM_SIZE (8) bytes, so they fit in a single u64. A + // multiplicative hash is much cheaper than a per-byte loop, and the top bits of the + // product mix in every input byte. `from_le_bytes` keeps the result independent of + // host endianness, and the gram length lives in its own field so the payload hash + // needn't encode it. + let mut buf = [0u8; 8]; + buf[..src.len()].copy_from_slice(src); + let product = u64::from_le_bytes(buf).wrapping_mul(MULTIPLICATIVE_HASH); + (product >> (u64::BITS - Self::PAYLOAD_BITS)) as u32 + }; + Self::pack(src.len(), payload) + } + + /// Builds an `NGram` from a big-endian packing of its bytes: the `len` gram bytes occupy the + /// most-significant bytes of `value` (the first gram byte in the top byte) and the low + /// `8 - len` bytes are zero. This is the form the extraction loop's rolling 8-byte window + /// produces, so it can construct grams without re-reading them from a slice. It returns exactly + /// the same value as [`from_bytes`](Self::from_bytes) would for the same gram (see the + /// `from_window_matches_from_bytes` test), so the two paths stay interchangeable. + #[inline] + pub(crate) fn from_window(value: u64, len: usize) -> Self { + debug_assert!( + (Self::LEN_BIAS as usize..=MAX_SPARSE_GRAM_SIZE).contains(&len), + "ngram length {len} out of range [{}, {}]", + Self::LEN_BIAS, + MAX_SPARSE_GRAM_SIZE, + ); + // 24-bit payload: short grams are packed losslessly, longer ones hashed. + let payload = if len <= 3 { + // The bytes sit in the top `len` bytes, most-significant byte first; shifting them down + // to the low bits reproduces `from_bytes`'s lossless packing. + (value >> (u64::BITS - len as u32 * 8)) as u32 + } else { + // `swap_bytes` turns the big-endian window into the little-endian byte order that + // `from_bytes` feeds to the multiplicative hash, so both paths agree bit-for-bit. + let product = value.swap_bytes().wrapping_mul(MULTIPLICATIVE_HASH); + (product >> (u64::BITS - Self::PAYLOAD_BITS)) as u32 + }; + Self::pack(len, payload) + } + + /// Packs a length and payload into the structured value, then stores it *mixed* (via [`mix27`]) + /// so the hot sorting/bucketing paths read a well-distributed value directly from the field; + /// [`len`](Self::len) and [`Debug`] unmix on demand. + #[inline] + fn pack(len: usize, payload: u32) -> Self { + let packed = ((len as u32 - Self::LEN_BIAS) << Self::PAYLOAD_BITS) | payload; + Self(mix27(packed)) + } + + /// The byte length of the n-gram. + #[inline] + pub fn len(&self) -> usize { + // The length lives in the *packed* value; unmix the stored value first. + let packed = unmix27(self.0); + (((packed >> Self::PAYLOAD_BITS) & Self::LEN_MASK) + Self::LEN_BIAS) as usize + } + + /// Whether this represents an empty gram. Valid n-grams are always at least 2 bytes long, so + /// this only holds for a default-constructed placeholder. + #[inline] + pub fn is_empty(&self) -> bool { + self.len() == 0 + } + + /// The raw packed `u32`. This is an opaque, well-distributed identifier suitable as a hash-map + /// or hash-set key. + #[inline] + pub fn as_u32(&self) -> u32 { + self.0 + } +} + +/// A bijective 27-bit mixing permutation. The packed gram value is highly structured — the length +/// sits in the top 3 bits and short grams carry raw ASCII bytes — which would make the +/// most-significant bits badly skewed. This xorshift-multiply finalizer, restricted to 27 bits, +/// spreads entropy across all bits while remaining a bijection on `[0, 2^27)` (each step is +/// invertible: xorshifts are triangular GF(2) maps, and multiplication by an odd constant is a +/// unit modulo `2^27`), so distinct grams stay distinct. +fn mix27(mut x: u32) -> u32 { + debug_assert!(x <= NGram::MASK, "mix27 input must be a 27-bit value"); + x ^= x >> 15; + x = x.wrapping_mul(0x2c1b_3c6d) & NGram::MASK; + x ^= x >> 12; + x = x.wrapping_mul(0x297a_2d39) & NGram::MASK; + x ^= x >> 15; + x +} + +/// Inverse of [`mix27`]: recovers the packed (length + payload) value from the stored value. Each +/// step undoes the corresponding `mix27` step in reverse: the `>> 15` xorshifts are self-inverse +/// (since `2 * 15 >= 27`), the `>> 12` xorshift is undone by the doubling `>> 12` then `>> 24`, and diff --git a/crates/sparse-ngrams/benchmarks/performance.rs b/crates/sparse-ngrams/benchmarks/performance.rs index 123588a0..1f8825df 100644 --- a/crates/sparse-ngrams/benchmarks/performance.rs +++ b/crates/sparse-ngrams/benchmarks/performance.rs @@ -16,7 +16,7 @@ fn bench_collect(c: &mut Criterion) { ), ( "large_15KB", - include_str!("../src/lib.rs").as_bytes().to_vec(), + include_bytes!("fixtures/sample_code.txt").to_vec(), ), ]; @@ -26,10 +26,24 @@ fn bench_collect(c: &mut Criterion) { group.throughput(Throughput::Bytes(input.len() as u64)); group.bench_with_input(BenchmarkId::new("deque", name), input, |b, input| { - b.iter(|| collect_sparse_grams_deque(black_box(input), &mut buf)) + b.iter(|| { + let mut w = 0usize; + collect_sparse_grams_deque(black_box(input), |gram| { + buf[w] = gram; + w += 1; + }); + w + }) }); group.bench_with_input(BenchmarkId::new("scan", name), input, |b, input| { - b.iter(|| collect_sparse_grams_scan(black_box(input), &mut buf)) + b.iter(|| { + let mut w = 0usize; + collect_sparse_grams_scan(black_box(input), |gram| { + buf[w] = gram; + w += 1; + }); + w + }) }); } group.finish(); diff --git a/crates/sparse-ngrams/data/bigrams.out b/crates/sparse-ngrams/data/bigrams.out new file mode 100644 index 00000000..e4326e39 --- /dev/null +++ b/crates/sparse-ngrams/data/bigrams.out @@ -0,0 +1,10406 @@ +ascii bigrams 10403 +243980322 "\n\t" +243980322 "\n\u{7}" +243980322 "\n\u{8}" +243980322 "\n\u{5}" +243980322 "\n\n" +243980322 "\n\u{b}" +243980322 "\n\u{c}" +243980322 "\n\r" +243980322 "\n\u{e}" +243980322 "\n\u{f}" +243980322 "\n\u{10}" +243980322 "\n\u{11}" +243980322 "\n\u{12}" +243980322 "\n\u{13}" +243980322 "\n\u{14}" +243980322 "\n\u{15}" +243980322 "\n\u{16}" +243980322 "\n\u{17}" +243980322 "\n\u{18}" +243980322 "\n\u{19}" +243980322 "\n\u{1a}" +243980322 "\n\u{1b}" +243980322 "\n\u{1c}" +243980322 "\n\u{1d}" +243980322 "\n\u{1e}" +243980322 "\n\u{1f}" +243980322 "\n " +243980322 "\n!" +243980322 "\n\"" +243980322 "\n#" +243980322 "\n$" +243980322 "\n\0" +243980322 "\n%" +243980322 "\n&" +243980322 "\n'" +243980322 "\n(" +243980322 "\n)" +243980322 "\n*" +243980322 "\n+" +243980322 "\n," +243980322 "\n-" +243980322 "\n." +243980322 "\n/" +243980322 "\n0" +243980322 "\n1" +243980322 "\n2" +243980322 "\n3" +243980322 "\n4" +243980322 "\n5" +243980322 "\n6" +243980322 "\n7" +243980322 "\n8" +243980322 "\n9" +243980322 "\n:" +243980322 "\n;" +243980322 "\n<" +243980322 "\n=" +243980322 "\n>" +243980322 "\n?" +243980322 "\n@" +243980322 "\n\u{6}" +243980322 "\n\\" +243980322 "\n]" +243980322 "\n^" +243980322 "\n_" +243980322 "\n`" +243980322 "\na" +243980322 "\nb" +243980322 "\nc" +243980322 "\nd" +243980322 "\ne" +243980322 "\n\u{1}" +243980322 "\nf" +243980322 "\ng" +243980322 "\nh" +243980322 "\ni" +243980322 "\nj" +243980322 "\nk" +243980322 "\nl" +243980322 "\nm" +243980322 "\nn" +243980322 "\no" +243980322 "\np" +243980322 "\nq" +243980322 "\nr" +243980322 "\ns" +243980322 "\nt" +243980322 "\n\u{4}" +243980322 "\nu" +243980322 "\nv" +243980322 "\n\u{3}" +243980322 "\n\u{2}" +243980322 "\nw" +243980322 "\nx" +243980322 "\ny" +243980322 "\nz" +243980322 "\n{" +243980322 "\n|" +243980322 "\n}" +243980322 "\n~" +243980322 "\n\u{7f}" +243980322 "\n[" +220070912 "on" +219104384 "er" +213352192 "in" +210464384 "co" +209464192 "re" +208679424 "te" +207949696 "or" +207590400 "at" +206819456 "en" +206014848 "st" +202920832 "ti" +201984896 "es" +201757568 "de" +199113344 "le" +198859904 "nt" +198558720 "io" +197937664 "se" +196093440 "me" +191141376 "ta" +190159104 "e " +189758336 "it" +188657792 "al" +188613376 "ro" +186606592 "as" +186500736 "et" +185966208 "ri" +185468672 "ar" +185258496 "li" +184046848 "an" +184016128 " " +183860992 "om" +183349376 "ng" +181675904 "tr" +181491840 "la" +181339392 "ec" +181309824 " s" +180688256 "ac" +180444288 "id" +179878784 "ce" +179786624 "th" +178389120 "ra" +178128640 "ed" +177968640 "t " +177643776 "ct" +177509120 "to" +177360384 "pe" +176949888 " c" +176713600 "ne" +176544768 "nd" +175797760 "ge" +175636864 "ns" +175618816 "na" +174287616 "ma" +173251840 "ve" +172976384 "am" +172527488 "pa" +172100864 "si" +171066368 " t" +170416512 "ur" +170276480 "rt" +169225472 "ic" +169173888 "ea" +168939264 "n " +168733952 "ss" +168209920 "po" +167742336 "is" +166800256 "s " +166339584 "el" +165340160 " f" +165301760 "ex" +165022976 "pr" +163350656 " i" +163057664 " a" +162826752 "lo" +161291776 "di" +160477824 " p" +160467456 "il" +160271616 "fi" +160133632 "ou" +159971328 "im" +158555648 "he" +158275968 "ut" +158012160 "ca" +157663744 "d " +157139072 "nc" +156816384 "da" +155915392 "un" +155904128 "us" +155528192 "rs" +155416960 "ll" +154910592 "ad" +154742400 "ch" +154709632 " d" +154465408 "mp" +154159360 " r" +154047488 "em" +154040320 ": " +153717888 "od" +153021056 "cl" +152818816 "ty" +151438464 "r " +150252800 ", " +149515392 "ol" +148341760 "ul" +148145792 "ts" +147838720 "fo" +146756864 " e" +145882880 " n" +144785664 "ag" +143952256 "bl" +142657280 "ef" +142372736 "l " +142277248 "ha" +141910400 "no" +140973440 " m" +140756096 "tt" +140750080 "ap" +140739712 "tu" +140603904 "sp" +139350912 "ue" +138707584 "fa" +138574080 "ie" +138557824 "mo" +137861376 "ot" +137561344 " {" +137110144 " b" +136217216 "pl" +135188864 "so" +134834176 "ab" +134626688 "va" +132842112 "op" +132465280 "ig" +132219648 "s." +132196096 "ai" +132162048 "cr" +132144000 "}\n" +132095360 " o" +131624448 "sc" +130923648 "ls" +129095040 "ck" +128369664 " l" +128173056 "if" +127756544 "be" +127723008 "g " +127492864 " v" +127395328 "vi" +127009152 "mi" +126669568 "ni" +126439040 "ho" +125885056 "hi" +124760448 "os" +124706816 ".c" +124674560 "lu" +123871104 "ba" +123781120 "y " +123549440 "rn" +123533312 "sh" +122268800 "su" +122090240 "{\n" +121561216 "pt" +121430528 "do" +121295360 "yp" +121268864 "ru" +120707968 "oc" +120274560 "e." +119751296 "fr" +119370240 "m " +119280000 "iv" +118755200 ") " +118754944 "bo" +118695936 "ht" +118632576 " h" +118403712 "ow" +117426816 "ep" +117316352 "lt" +117101184 "rc" +116897664 "ry" +116741888 " =" +116434048 "= " +116416768 "um" +116006272 "xt" +115745152 " u" +115095808 " (" +115047552 "ub" +114328832 "pu" +113923072 "wi" +113817216 "ke" +113148032 " \"" +112996864 "rr" +112736256 " w" +112642816 " g" +112641536 "au" +112209152 "gi" +111469312 "nu" +111363840 "ir" +110995840 " }" +110860160 "20" +110538880 "ee" +110331392 "00" +110084480 "sa" +109640064 "o " +109505280 " 1" +109400320 "ia" +109314688 "f " +109033216 "rm" +108690176 "qu" +108226176 "oo" +108198400 "s:" +107829248 "up" +107633024 "rd" +106645504 "tp" +106050688 "pp" +105446016 "a " +105065344 "ew" +104974336 "ip" +104788096 "cu" +104221824 "ev" +104157056 "ld" +103886720 "t." +103138304 "of" +102144128 "gr" +101699840 "//" +101612416 "ui" +101348608 "c " +101246080 "10" +100796416 "h " +100087040 "ay" +100047104 "bu" +99365760 "e," +98587520 "e\"" +96677888 "e:" +96651520 "rg" +96448512 "tc" +96251392 "dd" +95995776 "pi" +94965632 "ds" +94710784 ";\n" +94438144 ".s" +93466752 "ps" +93406720 ",\n" +93365376 "oi" +93042176 "e\n" +92940288 "ci" +92525568 "()" +92328704 " 2" +92242432 "iz" +91884416 "nf" +91638272 "fe" +91357184 "eg" +91341696 "ov" +91243008 "/s" +90997376 "ei" +90947200 "av" +90838528 "e(" +89473280 ")\n" +88506240 "tl" +88285696 "ob" +87394176 "e_" +86821376 " -" +86368896 "s\"" +86292352 "fu" +86255744 "n." +84999168 "ze" +84910080 "og" +84883456 "> " +84538624 "xp" +84513664 " 0" +84446464 "wa" +84162688 ");" +83932288 "ly" +83851520 "we" +83080064 "r." +83007104 "du" +82715264 " [" +82330880 "\" " +82290688 "t_" +82243328 "uc" +82062464 "t\"" +82048128 "t(" +82036736 " /" +81875456 ".p" +81552512 "gh" +81374464 "w " +80806400 "eq" +80456192 "cc" +80362240 "ms" +80145536 "p " +79456896 "s/" +79431936 "ib" +79295232 "e)" +79068672 "e-" +78951808 "mb" +78821120 "1." +78583552 "\"s" +78561792 "12" +78507904 "oa" +78373760 "t-" +78322176 "\"c" +77303552 "mm" +77217024 " <" +77149312 "bi" +76848256 "rv" +76600832 "d\"" +76514304 "_c" +76428800 "t:" +75972864 ".t" +75926016 "ys" +75574528 "\"," +75564288 "n\"" +75557376 "sy" +75543552 "_s" +75096320 "01" +74935040 "k " +74851200 "s\n" +74739712 ".a" +74602112 "d." +74491520 "je" +74114176 "eb" +73976320 "ga" +73535488 "02" +73522304 "ff" +73424000 ".m" +73164032 "dr" +73043968 "nn" +72993792 "fl" +72836864 "\"\n" +72664448 "\"t" +72551808 ".g" +72023680 ".0" +71978880 ".d" +71858688 "ua" +71769728 "t," +71436800 "s," +71311360 "gs" +71308928 " '" +71199744 "- " +71007872 "by" +70881024 ".i" +70835712 "/c" +70405248 "wo" +70103424 "go" +69101568 "wh" +69092096 "gu" +69062784 "0." +69007104 "rl" +68852864 "_t" +68665600 "ey" +68530560 "tm" +68274560 "_i" +67951616 "25" +67934336 "nv" +67925632 "50" +67612544 "r\"" +67291264 "0 " +67199488 "n:" +67167744 "d:" +67033472 "r(" +66506624 "ft" +66481408 "t\n" +66465792 "rk" +66443520 "s)" +66429440 ">\n" +66418304 "tf" +66199296 "br" +66112768 "hr" +66090368 "gn" +65964416 "ml" +65826048 "dt" +65491840 "_p" +65354496 "/d" +65243904 "11" +65001472 "30" +64870784 "\"a" +64832512 "\"p" +64763264 "15" +64706560 "n(" +64262400 "r:" +64258688 "nl" +64244608 "-s" +64025088 "/a" +63896832 "16" +63758720 "ud" +63757312 "e=" +63447168 "=\"" +63292416 ".e" +63244160 ". " +63160320 " 3" +63156352 "d_" +63084672 "l." +62976384 "))" +62961920 ":/" +62815744 " j" +62707840 "-c" +62700160 "nk" +62576512 "-1" +62424320 ".r" +62277888 "ok" +62265472 "s_" +62163200 "_a" +61967872 "/p" +61965184 "t)" +61857024 "40" +61807488 "eo" +61714304 "s(" +61684096 "n_" +61402880 "vo" +61121536 "0," +60990976 "ki" +60738816 "1 " +60687488 "\"m" +60605056 "n\n" +60495872 "(s" +60493568 "r_" +60450432 "d," +60159360 "} " +60067968 "14" +60040192 "g." +59916288 " *" +59833856 "mu" +59639680 ".l" +59616384 "\"r" +59473280 "/ " +59435008 "gl" +59257472 "\"d" +58919680 "cs" +58918016 "y." +58609792 "m." +58398464 "18" +58277632 "" +48916992 "-d" +48848256 "tw" +48554752 "_e" +48321536 "(t" +48233728 "-b" +48133120 ".h" +48107008 "56" +48082816 "t;" +48054656 "]\n" +47854720 "(i" +47743616 "/m" +47742080 "/b" +47700992 "xi" +47648768 "rp" +47628544 ":\n" +47450112 "tn" +47390208 "_b" +47355904 " &" +47328896 "js" +47237888 "28" +47135104 "06" +47104640 "e/" +47083264 "m/" +46932992 "(\"" +46799744 "-2" +46633984 "lp" +46545152 "08" +46497152 "t/" +46444032 ".." +46419968 "})" +46200960 "e'" +46090368 "wr" +46007680 "-p" +45989248 "64" +45969024 "/i" +45967360 "-r" +45919104 "ug" +45821440 "t=" +45788160 "'s" +45714048 "0)" +45237376 "t'" +45199872 ".b" +45069824 "(\n" +45027840 "y(" +45022464 "90" +44966784 "70" +44946048 "y_" +44891008 "4 " +44853888 "sf" +44798080 "xe" +44733696 " \n" +44646528 "p." +44562176 "09" +44386560 "'," +44340096 "31" +44325376 "gt" +44255232 "45" +44179456 "07" +44162688 "py" +44047360 "-i" +43954176 "w." +43948928 "27" +43945344 "-f" +43905664 "hu" +43876608 "sw" +43712512 "3 " +43704064 "gg" +43596672 "/r" +43564032 "eu" +43535744 ".j" +43521408 "y," +43449216 "l\n" +43334016 "')" +43305728 "l:" +43303424 "35" +43250048 "36" +43249536 "0\n" +43215360 "v " +43179136 "(e" +43090304 ".u" +43043840 "]," +43019008 "-0" +42928128 "34" +42884096 "d=" +42825088 "55" +42705536 "l)" +42657408 "29" +42625920 " |" +42566784 "(a" +42529920 "33" +42498432 "99" +42486784 "n)" +42463616 "[]" +42355968 "48" +42194432 "l(" +42154240 "\":" +42152576 "42" +42120576 ".w" +42092416 "(p" +42062592 "-m" +42025984 "1\"" +41828608 "sn" +41645184 "yt" +41591168 "l-" +41494528 " ." +41401728 "1\n" +41387776 "xc" +41316352 "ix" +41074048 "e>" +41045376 "' " +40945152 " )" +40854144 "\"1" +40821376 "g," +40804352 "('" +40778112 "44" +40772864 "s;" +40703872 "/h" +40674560 "4." +40671232 "(f" +40640000 "o." +40578304 "s'" +40572032 "| " +40527104 "eh" +40512000 "41" +40489216 "lf" +40467712 " 6" +40388096 "43" +40376320 ".2" +40328704 "n'" +40292864 "51" +40223360 "2," +40196736 "75" +40148352 "(r" +40105984 "_o" +40020864 "tb" +39989248 "/g" +39961216 "n=" +39893120 "y\n" +39827072 "nm" +39809152 "ja" +39753984 "-e" +39708160 "-8" +39588096 " +" +39483776 "38" +39413376 "(d" +39406208 "37" +39405440 "b " +39276672 "cy" +39132928 "g(" +39108864 "m\"" +39076608 "_u" +39034624 "52" +39033344 ".5" +39026816 "g:" +39022592 "b." +38960000 "t>" +38938624 "lc" +38916480 "/w" +38903808 "=>" +38797056 "/u" +38732672 "/f" +38690688 "m_" +38553344 "46" +38529664 " !" +38427264 "y-" +38361472 "n/" +38353280 "39" +38325504 "65" +38236160 "2\"" +38211584 "54" +38208768 "53" +38157696 "47" +38071424 "5 " +38039808 "dm" +38022528 "n;" +38006144 "49" +37845376 "(n" +37785728 "72" +37650432 "a\"" +37617920 "/e" +37559424 "85" +37548800 "\"\"" +37499264 "u " +37476864 "/*" +37458432 "fy" +37399680 "/>" +37281024 "1)" +37269248 "95" +37239552 "df" +37188352 "" +36888064 "/\n" +36826880 "\"w" +36790016 "f-" +36713728 "58" +36640256 "\"g" +36597120 "a-" +36583424 "+ " +36577024 "96" +36571520 "57" +36522496 "\"o" +36508288 "76" +36363392 "62" +36280832 "c." +36280832 "jo" +36233600 "98" +36082432 "63" +36045312 "ox" +36032896 "p\"" +36010368 "(m" +36006656 "61" +35991552 "sd" +35976064 " x" +35970688 "86" +35970048 "h:" +35894784 " 8" +35892224 "r;" +35889280 "84" +35847040 "g_" +35825664 "78" +35811584 "*/" +35796224 "g/" +35785728 "66" +35759104 "\"v" +35751936 "81" +35667456 "5." +35589888 "91" +35560320 "89" +35539200 "8\"" +35537536 "**" +35484288 "88" +35455232 "h(" +35443328 "p_" +35398912 "82" +35324160 " q" +35320192 "fs" +35309056 "za" +35281792 "& " +35269760 "" +34078976 "->" +34065152 "77" +34046336 "md" +34029056 "79" +33979008 "-w" +33917696 "o\"" +33852288 "ym" +33775232 ".3" +33765760 "dg" +33764096 "y)" +33746944 "g-" +33498880 " ]" +33431296 "/v" +33344000 "ln" +33304576 "r/" +33281792 "h." +33274624 "yi" +32861056 "l;" +32814592 "[\n" +32796928 "6 " +32742912 " $" +32648448 " @" +32635264 "? " +32565376 "'t" +32540160 "d'" +32430080 "o-" +32299136 "xm" +32279552 "o_" +32136448 "5," +32079360 "" +29046400 "cd" +28980224 "r=" +28977280 "h," +28938496 "nb" +28925440 " #" +28886784 "\";" +28843392 "/o" +28788736 "-h" +28786176 "p\n" +28782336 "ww" +28733696 "a," +28700032 "gm" +28622592 "*\n" +28618880 "a:" +28588416 "0;" +28572672 "t<" +28519680 "c/" +28491136 "(l" +28402688 " ?" +28389248 "8." +28364160 "h_" +28356224 "((" +28352640 "d>" +28308352 "yr" +28242176 "l>" +27978240 "m-" +27938560 "oj" +27912576 "xa" +27845376 "(b" +27773952 "e}" +27732992 "-g" +27603968 "/2" +27597056 " _" +27494144 "bc" +27459072 "pc" +27403008 "2\n" +27384704 ".7" +27356800 "ik" +27273088 "m," +27101568 "'r" +27098496 "c_" +27093120 ".6" +27090048 "iu" +27059456 "(o" +26960768 "\"." +26713216 "mt" +26709120 ".8" +26697088 "'a" +26644224 "a_" +26636160 "><" +26384384 "hp" +26384256 "2)" +26354560 "6," +26306944 "y>" +26190592 "&&" +26082944 "k_" +26080000 "" +25169664 "y=" +25119872 "5\"" +25119232 "||" +25028096 "m(" +24913408 "0-" +24911872 "h\n" +24847360 "pn" +24829952 "7 " +24827520 "px" +24648832 "h-" +24577536 "'\n" +24397056 " `" +24331264 "'." +24281088 "lm" +24272640 "(v" +24256896 "" +22614016 "mc" +22585344 "fc" +22579456 "7," +22553600 "{}" +22504832 "(u" +22439040 "s[" +22433280 "0]" +22372352 "cp" +22365824 "w-" +22135296 "o\n" +22077696 "mg" +22021888 "y;" +22011904 "i/" +21940096 "cf" +21917312 "m\n" +21876352 "v1" +21834240 " z" +21814912 "9," +21782528 "hy" +21762560 "p>" +21742848 "f." +21740544 "(!" +21734528 "e1" +21640832 "o:" +21523328 "-v" +21507200 "4\n" +21493248 "gc" +21442048 "c-" +21420160 "bm" +21419008 "\t\t" +21411072 "/1" +21375360 "x_" +21320448 "w\"" +21310080 ":0" +21265664 "5\n" +21174656 "s" +21092096 "[0" +21081472 "lg" +21044480 ":1" +20997376 "4-" +20939008 ":s" +20888704 "o," +20862464 "ek" +20846976 "y'" +20800256 "a(" +20733056 "uf" +20678784 "=1" +20568192 "cm" +20559232 "oy" +20472960 "-6" +20441984 "zi" +20403456 "3-" +20368256 ">c" +20342528 "'i" +20311936 "cb" +20295040 "m)" +20277120 "::" +20270720 "(2" +20226560 "g;" +20215040 "/j" +20208128 "w_" +20192512 "p," +20107776 "0:" +20075904 "(h" +20074624 "k-" +20021376 "h)" +20006528 "ko" +20003712 "\"]" +19972992 "i-" +19906944 "c)" +19870848 "-\n" +19838720 "1/" +19812608 "s<" +19808896 "ku" +19771392 ":c" +19768448 "k(" +19690240 "tg" +19689984 "kt" +19680128 "x)" +19607168 "}\"" +19511296 "w(" +19483008 ">(" +19365376 "${" +19357824 "gb" +19326848 "fd" +19260672 ">t" +19186816 "2:" +19142528 "'e" +19093504 "3d" +19049728 "a>" +18984448 "'m" +18984192 "b\"" +18943872 "k," +18915968 "-9" +18896128 "sg" +18878976 "c1" +18852736 "gp" +18777728 "hn" +18721280 "< " +18658304 ")}" +18597504 "k:" +18558208 ">a" +18550912 "'n" +18524672 "a1" +18497920 "0/" +18496768 "bf" +18496128 "c2" +18400896 "g'" +18381824 "wp" +18348288 "c:" +18296448 "k\n" +18284160 "''" +18282112 "'l" +18255872 "o(" +18254208 "'u" +18251904 "x:" +18247040 "p/" +18218880 "kl" +18188416 "a/" +18164608 "az" +18143104 "y/" +18094336 "rh" +18043392 "m;" +18024576 "p;" +17961984 "i_" +17940992 "1;" +17933824 "bg" +17902208 "'f" +17874944 "']" +17868288 "[s" +17862912 "c=" +17852288 "s>" +17849344 "pg" +17849216 "iq" +17834752 "" +16876672 "1e" +16839936 "p)" +16837504 ">p" +16805376 "t1" +16753920 "e0" +16731648 "d}" +16729856 "4)" +16711040 "c3" +16645504 "2d" +16642560 "2e" +16602496 "6:" +16411904 "vg" +16369792 "ql" +16364416 "c0" +16354560 ":2" +16310528 "0p" +16305536 ":3" +16302720 "c," +16286976 "f_" +16257152 "mr" +16247936 "{s" +16244608 "f," +16240128 "b/" +16218496 "0f" +16194944 "o/" +16151552 "i\"" +16149120 "k=" +16133760 "4c" +16130560 "e6" +16066944 "hb" +16047360 "ej" +16032000 "yw" +15994624 "kd" +15975424 "-7" +15936896 "xl" +15881600 "s]" +15878144 "3:" +15856128 "'b" +15849216 "a3" +15846016 "v." +15812480 "1c" +15803008 "f4" +15779456 "1f" +15777152 "4e" +15713536 "2f" +15690240 "b2" +15686784 "x(" +15679488 "1]" +15656192 "uo" +15639424 "7\n" +15638784 "0%" +15627520 "f0" +15627264 "0a" +15602432 "f1" +15590400 "0e" +15563776 "c4" +15562752 "0d" +15562112 "##" +15523840 ">d" +15503744 ":a" +15476736 "\\n" +15468288 "f\n" +15460864 "c(" +15452800 "k)" +15452160 "h2" +15401856 "1a" +15397504 "3a" +15390976 "x;" +15379072 "t}" +15367296 "f8" +15365632 "[1" +15343104 "d<" +15336576 "dw" +15319936 "e4" +15319552 "{\"" +15311488 "0c" +15309056 "gy" +15305984 "c\n" +15301120 "5e" +15299712 "h1" +15288576 "{c" +15288064 "a0" +15267968 "lk" +15267456 ":i" +15228544 "4a" +15222656 "f2" +15221760 "b1" +15216384 "gf" +15216000 "([" +15195520 ">f" +15163648 "2a" +15106176 ",2" +15100672 "\"#" +15097344 "\"j" +15052928 "vs" +15022592 "5c" +14974336 "d3" +14972032 "='" +14963328 "i" +14722688 "d4" +14716672 "\"k" +14715392 "4f" +14661248 "wl" +14649984 "e5" +14626048 "kb" +14603904 "0b" +14603392 "9-" +14590464 "\"4" +14577536 "" +14129408 "wt" +14114432 "oh" +14101120 "7c" +14076416 "a;" +14060928 "d5" +14054272 "wb" +14034944 "/\"" +14033920 "a'" +13984128 "c6" +13979264 "mf" +13978496 "d]" +13971328 ":5" +13969280 "8a" +13931520 "3f" +13923200 "k;" +13915904 ">n" +13907712 "i," +13900160 "5f" +13893632 "6e" +13889152 ":p" +13870848 "[c" +13854208 "c9" +13849984 "f5" +13826304 "f)" +13824768 "nw" +13822720 "s?" +13801472 "lh" +13798400 "_2" +13796864 "f3" +13796480 "c8" +13753344 "v\"" +13735168 "\"5" +13733760 "c7" +13721856 "e?" +13712128 ">r" +13689984 ".x" +13689984 "ez" +13680512 "f9" +13679872 "a8" +13660800 "ah" +13654016 "3b" +13648512 ".k" +13634560 "8b" +13613824 "5d" +13610752 "kc" +13607808 "b4" +13603584 "7e" +13600000 ":b" +13584512 "dh" +13571200 "e7" +13567872 ">e" +13554816 "!d" +13542656 "pf" +13535872 "\"}" +13519104 "9a" +13518464 ")]" +13514880 "7a" +13510144 " \\" +13479296 "8f" +13471104 "`\n" +13467008 "{f" +13450240 "wd" +13418240 "9f" +13418112 "s\\" +13406976 ".<" +13406848 "{i" +13404544 "kf" +13373568 "/x" +13364608 "f6" +13363584 "e9" +13352576 "a6" +13332480 "s}" +13326336 "\r\n" +13325056 "p'" +13303424 "6a" +13291648 "w\n" +13279360 ",\"" +13273600 "m" +12963584 "++" +12954752 "kr" +12952576 ",1" +12947456 "6f" +12942208 "a9" +12927360 "($" +12911360 "!-" +12904960 "b9" +12902016 "\"?" +12881920 "d8" +12872448 "b6" +12867840 "d7" +12863360 "i\n" +12856448 "b5" +12834944 "h;" +12832000 " %" +12829440 "4:" +12809856 "o'" +12792320 "8d" +12786944 "b7" +12780160 "v2" +12751232 ":r" +12734976 "5b" +12721280 "\"y" +12713344 "2/" +12712064 "k/" +12705024 "\"-" +12700672 "l<" +12686080 "jp" +12640000 "d9" +12624640 "9b" +12601344 "0'" +12597248 "c;" +12591232 ",0" +12574208 "t2" +12554240 "7d" +12537728 "6)" +12519296 "i)" +12504448 "ii" +12484736 ":d" +12462592 "6d" +12430208 "'o" +12412288 "e\\" +12356864 "kp" +12332544 "7b" +12324352 "9d" +12320000 "ux" +12319360 "[d" +12266496 "h>" +12264704 "! " +12259328 "\"_" +12229632 "{p" +12224000 "/0" +12167424 "@p" +12140544 "{r" +12127744 "i:" +12124032 ">l" +12123008 "\"@" +12087296 "dx" +12058752 "'@" +12054656 "h/" +12032512 "r]" +11971072 "z\"" +11952640 "p=" +11942272 ":u" +11939584 "=\n" +11892608 "\ti" +11840768 "}<" +11832704 "r}" +11812864 "-x" +11763968 ">g" +11718528 "5:" +11702656 "e[" +11702144 "1_" +11691136 "\"x" +11661696 "h'" +11636096 ":m" +11633664 "=d" +11629184 "h3" +11622272 "(3" +11610368 "x\n" +11591424 ".q" +11590144 "'g" +11588608 "}`" +11538560 "{{" +11516288 "#f" +11438208 "f:" +11390976 ":l" +11358336 ">=" +11338624 "yg" +11337984 "\tr" +11322240 "l1" +11314816 "k'" +11307904 "#e" +11307264 "l}" +11290112 "'v" +11280000 "=0" +11271296 "i>" +11270144 "8)" +11267584 "@c" +11253760 "tk" +11247744 ">b" +11242368 "\"6" +11226112 "wm" +11209344 "mv" +11206528 "2_" +11185024 "@a" +11110400 "\tp" +11085824 "4/" +11073536 "bn" +11060608 "pk" +11060224 "':" +11046272 "@s" +11004032 "u." +10999424 "'/" +10996608 "?." +10969344 "t?" +10962176 "b," +10954368 "b:" +10938368 "\"{" +10923392 "z " +10892160 "nq" +10839424 "uu" +10826368 "vc" +10815360 "n\\" +10814208 "w)" +10814080 "km" +10806144 "b)" +10804096 "\ts" +10785920 "v-" +10782592 ";\"" +10749184 "b\n" +10739840 "@t" +10708992 "[t" +10701568 "1'" +10688640 "_0" +10675456 "#i" +10670336 "n]" +10651520 "xo" +10644480 ">{" +10642432 "[p" +10564736 "[a" +10564480 "?p" +10563200 "vr" +10555136 "_q" +10530688 ":h" +10528640 ">h" +10486400 "2p" +10478080 "\tc" +10429952 "2;" +10351360 "{d" +10325632 "yu" +10305280 "o" +10054528 "2>" +9946368 "_ " +9946112 "(_" +9925120 "1}" +9913984 "{e" +9909632 "3/" +9906304 "aq" +9893888 "" +9756416 "-y" +9724928 "[r" +9688064 "1>" +9687936 "\"8" +9674368 "=f" +9634944 "=s" +9544832 "p<" +9543552 "\"$" +9541760 "2]" +9501312 "xy" +9494016 "!i" +9481088 "(5" +9471360 "1p" +9470464 "}:" +9469952 "gv" +9465472 "x/" +9439616 "\"\\" +9433856 "sx" +9432192 "y]" +9425024 "(k" +9404544 "9:" +9403136 "vm" +9401088 "8:" +9398656 "r2" +9388416 "|\n" +9354496 "{a" +9323520 "(j" +9319168 "ji" +9310848 "\"7" +9290496 ">u" +9262592 "9/" +9261184 "u\"" +9257856 "(`" +9257344 ".y" +9257344 "0_" +9246464 "(4" +9241600 "+=" +9228928 ":g" +9224832 "xd" +9188096 "/k" +9171968 "0x" +9160832 "m=" +9156096 "7:" +9142144 "]]" +9132288 "6/" +9123840 "=2" +9096576 ">1" +9060992 "hf" +9054080 "@i" +9053056 "=n" +9047680 "m1" +9039232 "-j" +9034496 "oz" +9027456 "vu" +9014016 "\tt" +9012992 "v\n" +9007360 "?:" +8978048 "l2" +8973184 "0<" +8955008 "uk" +8951040 ":e" +8938752 "s1" +8934784 "_3" +8925696 "nz" +8913792 "x'" +8910848 "){" +8910720 "t3" +8896256 "i'" +8882816 "kw" +8862080 "-k" +8852864 "r1" +8818688 "#d" +8751744 "_j" +8739840 ",3" +8724352 "\tf" +8704896 "x1" +8703872 "'1" +8702848 "vb" +8696832 "@m" +8692480 "cg" +8678784 "\"9" +8664320 "q " +8663040 "}/" +8653952 "uv" +8648064 "wf" +8644224 "5p" +8604160 "bh" +8600192 "cv" +8577920 ">w" +8570880 "$t" +8540288 "pv" +8527104 "]}" +8519040 "7)" +8508416 "/3" +8505984 "4p" +8451328 "tz" +8440064 ">v" +8405760 "(-" +8388096 "[2" +8385536 "xh" +8361344 "yv" +8355712 "+)" +8319744 "fg" +8311936 "2'" +8303232 "[e" +8283392 "i+" +8258304 "<=" +8240512 "vl" +8231296 "\td" +8224896 "]\"" +8195840 "v=" +8195200 "xf" +8192128 ",4" +8188288 ",s" +8174592 "tj" +8160768 "kh" +8156800 "\\s" +8145280 "rq" +8144512 "zu" +8118016 "s`" +8113280 "n1" +8105984 "w'" +8105472 "xr" +8094976 ">>" +8093824 "2" +7724416 ":o" +7697024 "=c" +7693952 "c<" +7690880 "._" +7681792 ")[" +7670144 "}]" +7667456 "ih" +7661312 "vp" +7644928 "@/" +7630976 "m<" +7611520 "`s" +7594240 "g]" +7589888 "5/" +7582208 "[f" +7571328 "\t/" +7561856 "nx" +7555456 "}." +7545344 "n3" +7523072 "{l" +7511424 "]:" +7505664 "$s" +7486208 "xx" +7484288 "3;" +7475328 "x2" +7470720 "6p" +7438336 "v/" +7421696 "hw" +7417600 "u-" +7412480 "3_" +7394304 "@e" +7391616 ".*" +7390464 "[m" +7387648 "a<" +7387264 "(x" +7383168 "v3" +7379968 "#c" +7375232 "jq" +7374464 ">\"" +7373312 "zy" +7372416 "5;" +7364992 "](" +7362048 "``" +7348224 "\"<" +7347712 "mw" +7325312 "2x" +7321984 "k<" +7304320 "vd" +7285504 ":v" +7274880 "f'" +7270144 "\t<" +7270016 "bk" +7268480 "@o" +7254528 "hh" +7253888 "'}" +7230848 "o=" +7227392 "/4" +7219584 "4;" +7217280 "l]" +7214720 ":\\" +7211520 ",'" +7164544 "cx" +7163648 "'\"" +7158144 "tq" +7113728 "][" +7110656 "[l" +7109120 "\\d" +7101184 "y3" +7089152 "p2" +7073152 "o<" +7067904 "4_" +7067008 "-q" +7060608 "d?" +7056256 "2}" +7006592 "mh" +6994688 ">&" +6991232 "zz" +6978944 "w/" +6968832 "n[" +6966016 "=u" +6955264 ")'" +6953216 "wg" +6942720 ",c" +6919680 "yh" +6918784 "*c" +6918656 "v)" +6904064 "0m" +6902784 "3}" +6898944 "i=" +6877440 "fw" +6864256 "*a" +6859008 ")(" +6858496 "r?" +6857728 "?\n" +6850176 "3>" +6845824 "n?" +6843520 "#0" +6843264 "cw" +6825472 "xb" +6816128 "`c" +6801792 "/q" +6784384 "gw" +6783232 "z-" +6780416 ":{" +6769024 "2<" +6767616 ",6" +6767360 "s*" +6765312 "\t\n" +6764928 ">," +6750464 "{n" +6740480 "r\\" +6730752 "hv" +6721408 "{b" +6712448 "d`" +6710400 "`$" +6705664 "#1" +6705280 "t`" +6692352 "/5" +6673024 "qa" +6664064 "8/" +6661248 "r[" +6655360 ":<" +6646400 "=3" +6638592 ">." +6637056 "v4" +6635904 "=e" +6632832 ",t" +6617728 "\tm" +6605696 "u_" +6592896 "zm" +6574976 "ij" +6571520 "uz" +6569088 "v," +6567424 "$c" +6564224 "{o" +6560896 "*p" +6559360 "e*" +6536704 "3]" +6532608 "`p" +6529152 ":w" +6506624 ";<" +6479360 "3p" +6477824 "yk" +6468736 "{(" +6453248 "{h" +6451840 "+1" +6446080 "`." +6431488 ";\r" +6429056 ":'" +6423168 "vn" +6415232 "}\r" +6408960 "_4" +6400896 ",7" +6375808 "hk" +6366720 "=a" +6365312 "7/" +6352000 "\tl" +6344320 "d\\" +6336640 "h}" +6335360 "\tb" +6330752 "/$" +6328576 "bv" +6323584 "g}" +6318976 "{\r" +6313472 "b'" +6281728 "$(" +6279296 "wu" +6264832 "kv" +6250112 "*t" +6234368 "%;" +6211328 "\"z" +6196352 "'2" +6190336 "j." +6187776 "_y" +6185344 "u'" +6173568 "}'" +6172160 ".)" +6168448 "p\\" +6155520 "$r" +6151424 "l?" +6149632 "`t" +6147584 "(." +6144896 "hq" +6142848 "dq" +6140544 "=p" +6140160 "l3" +6130176 "i1" +6115584 "cq" +6101120 ",8" +6092032 "!s" +6078848 ">0" +6073216 "<>" +6064640 "t*" +6039936 "/'" +6035328 "2s" +6034816 "n`" +6033664 "vh" +6031616 "$p" +6030080 "3'" +6027136 ">)" +5997824 "b;" +5996416 "\tv" +5990656 "y2" +5954816 "(6" +5953536 "0z" +5945728 ".z" +5937664 "qr" +5937408 "qt" +5934464 "vy" +5928064 ":8" +5907328 "g?" +5904256 "'0" +5895168 "[ " +5884928 "-z" +5878400 "6;" +5874816 "iw" +5870976 "&a" +5868800 "xn" +5866496 ",a" +5866240 ")-" +5859200 "oq" +5848704 ".," +5842048 ".\\" +5838080 "h5" +5821824 "r3" +5814144 "\"[" +5809792 "\\c" +5794048 ",i" +5793664 "wv" +5792384 "6_" +5784704 "jd" +5780992 "\t{" +5764608 "m3" +5759616 "!u" +5754112 "1s" +5753216 "`a" +5747840 "w=" +5746944 "v:" +5742080 "4'" +5741312 "f/" +5736192 "q." +5732480 "hg" +5729920 "h<" +5728128 "fx" +5712128 "5%" +5706240 "xu" +5705728 "sz" +5696896 "\\m" +5688448 "\\r" +5679872 "=m" +5677952 " ," +5661696 "w;" +5658240 "sj" +5657984 "g1" +5649024 "(q" +5641344 "@d" +5637120 ",9" +5636736 ">;" +5636480 ":[" +5632512 "+0" +5626496 "0s" +5612672 ",d" +5609600 "qs" +5605504 "4]" +5602048 "u," +5598976 "*d" +5597312 "\\u" +5590784 "*\"" +5590528 "3<" +5575936 "x0" +5557120 "kk" +5525632 "]>" +5514496 "rz" +5489152 "fk" +5485696 "%\"" +5481728 "'#" +5475200 "rj" +5468544 "_5" +5462528 "9;" +5462528 "$i" +5461632 "`;" +5460736 "#p" +5455360 "{v" +5444736 "zl" +5443968 "p3" +5438720 "[3" +5437440 "mj" +5434368 "_x" +5429120 "_6" +5426816 "/y" +5423360 "e\r" +5419136 "=r" +5406336 ",f" +5372544 "5_" +5361024 "t6" +5355776 "4<" +5349248 "bw" +5347200 "\"'" +5344512 ",p" +5338624 "8'" +5327744 ")\r" +5325184 "8;" +5320960 "i;" +5307904 "#s" +5306496 "k>" +5299456 "`d" +5287040 "g2" +5282560 "jc" +5280000 "lj" +5279872 "=i" +5275008 "-[" +5269888 "x3" +5265792 "[b" +5248512 "$d" +5232384 "1t" +5223936 "=l" +5222528 "!\n" +5220224 "l4" +5214208 "y1" +5212928 "#3" +5210112 ":x" +5208064 "zh" +5193984 "*r" +5191808 "xw" +5173888 "jw" +5169280 ">\r" +5169152 "gk" +5169024 "'>" +5168384 "&n" +5163392 "0v" +5159680 "?\"" +5159424 ":*" +5151744 "'j" +5149952 "=4" +5141504 "%y" +5139328 "vf" +5137792 "2h" +5125120 "\tw" +5116800 "%s" +5113344 "#a" +5103104 "*." +5102080 " \t" +5099904 "5<" +5093760 "i(" +5093248 "`b" +5087104 "iy" +5082752 "e!" +5082624 "*m" +5079296 "_z" +5077760 "x8" +5073792 "@n" +5072896 " ~" +5068416 "uh" +5067008 "\\\\" +5061376 "t4" +5057024 "[[" +5051136 "[o" +5039232 "/6" +5029120 ">3" +5018240 "5]" +5014400 "9]" +5008256 ">j" +5000192 "u/" +4995584 ",r" +4986240 "*)" +4983808 "`r" +4980096 "xv" +4969984 "1l" +4968192 "v0" +4967808 "zw" +4960768 "&l" +4960128 "(*" +4952576 "vw" +4951296 "5s" +4944128 ")`" +4943616 ",m" +4942848 "lq" +4940032 "y?" +4940032 "*n" +4933248 "gz" +4932096 "!c" +4930560 "n*" +4924160 "d[" +4923392 "i<" +4916992 "1r" +4911232 "2m" +4901888 "\\a" +4900736 "$e" +4898944 "3s" +4894720 "\\t" +4893824 "'y" +4892160 "(8" +4890368 "h6" +4887040 "\"%" +4884608 "y[" +4880768 "0t" +4867072 ";c" +4863488 "l\\" +4851712 "mq" +4849664 ",n" +4844160 "{u" +4843136 "b>" +4842752 "{1" +4830848 "p0" +4825728 "l5" +4825472 "wk" +4821760 "5'" +4806528 "$a" +4799232 "!\"" +4793600 "2t" +4788736 "m4" +4781056 "#2" +4774272 "*i" +4766976 "s4" +4761856 "2l" +4759296 "e{" +4755712 "wy" +4750592 "@v" +4745984 "\to" +4743424 "qi" +4732672 "(/" +4710528 "2(" +4709248 "t+" +4703104 "`m" +4701440 "\"*" +4693760 "4}" +4686592 ">4" +4686080 "/{" +4684800 "s+" +4684416 "=5" +4680704 "2z" +4675840 "zs" +4675584 "#\"" +4674048 "u\n" +4673664 "cj" +4657536 "@g" +4655488 "7;" +4655488 "d+" +4642688 "-/" +4633344 "e+" +4625664 "fh" +4621440 "hz" +4621184 "/8" +4621056 "1m" +4619648 " \r" +4617728 "\"(" +4617088 "\tg" +4615808 ",l" +4609536 "l`" +4601728 "\t\"" +4597248 "`f" +4596736 "r*" +4595584 "t8" +4591360 "\tn" +4587008 "r0" +4585600 "_(" +4576768 "o>" +4576384 "s0" +4575744 "lz" +4573952 "a\\" +4573056 "x}" +4572928 "f<" +4568832 "m]" +4564992 "8_" +4549760 "qc" +4548608 "_\"" +4548096 "uj" +4544640 "m0" +4542592 "=$" +4541056 "2r" +4538880 "fv" +4521984 "![" +4517632 "2v" +4513024 "jm" +4509056 ":6" +4495744 "=[" +4491392 ">'" +4489984 "1h" +4489216 "[k" +4482432 "r`" +4469504 "8<" +4468352 "mz" +4463488 "6<" +4461952 "\\f" +4461440 "`i" +4457600 "_)" +4455808 "v(" +4453632 "@l" +4451456 "{'" +4447616 "[h" +4446080 "@f" +4444800 "*f" +4436864 "'-" +4433664 "x<" +4427648 "/z" +4425984 "cz" +4423040 "p4" +4421248 "/7" +4420864 "8n" +4418176 "4x" +4415872 ",e" +4413312 "`/" +4412160 "=b" +4410112 "0l" +4406400 "s\r" +4405376 "4h" +4389504 "*e" +4387712 "bx" +4379776 ")\\" +4374272 "hj" +4372864 "%t" +4365952 "x4" +4362752 "\tu" +4361984 "5z" +4355456 "zt" +4353920 "o2" +4349184 "vv" +4340864 "&c" +4340352 "v'" +4339712 "\\b" +4335104 "gq" +4329984 "3x" +4319616 "zd" +4317184 "4t" +4313728 "yj" +4307840 "!r" +4307328 "qd" +4305408 "5m" +4304384 "5t" +4287360 "5r" +4279040 "uw" +4272768 "m6" +4271360 "3r" +4266880 ")?" +4263424 "q\"" +4262656 "l0" +4260224 "/9" +4258176 "zc" +4257664 "lx" +4255744 "h]" +4248960 "jk" +4244864 "p]" +4240768 "jb" +4239488 "xg" +4236416 "1z" +4235264 "-\"" +4221952 "9t" +4220416 "[u" +4220160 "m5" +4209408 "y\\" +4206464 "zn" +4201472 "6]" +4200960 "x6" +4199040 "jv" +4191872 "jn" +4191104 "u!" +4189824 "*:" +4188800 "d*" +4187776 "t!" +4184960 "#r" +4184320 "6'" +4174336 "dz" +4174208 "!e" +4169088 "_," +4168192 "'<" +4166656 "q_" +4162048 "$f" +4156160 "9<" +4155648 ";s" +4154368 "9p" +4153344 ">5" +4151168 "e&" +4148608 "a]" +4142592 "/}" +4137856 "f}" +4135552 "kq" +4129536 "'\\" +4128896 "'{" +4126720 "u0" +4117632 "`e" +4111872 "!t" +4101504 "4z" +4098560 "xj" +4093696 "2n" +4092416 "g\\" +4089088 "\th" +4087040 "+\n" +4086784 "v5" +4085376 "jl" +4082816 "z\n" +4081024 "y`" +4071040 "v6" +4068352 "w<" +4067200 "jr" +4067072 ";t" +4066560 "4s" +4056960 "7<" +4049536 "[v" +4046208 "5}" +4044672 "3z" +4042496 "\\p" +4039552 "3t" +4039040 "'_" +4036480 "[4" +4029952 "_8" +4025600 "\\e" +4025600 ",\r" +4023040 "t@" +4020736 "6l" +4017152 ",b" +4013824 "@b" +4011776 "gx" +4010624 "5l" +4009984 "+i" +4006528 "n0" +3997568 "3l" +3996032 "x5" +3991040 ":7" +3990784 "bq" +3990528 "4l" +3982336 "jt" +3981696 ":-" +3979264 "s5" +3977856 "o1" +3975680 "7p" +3970688 " ;" +3968128 "r4" +3967360 "a?" +3964288 "wx" +3964160 "6z" +3964032 "0+" +3963136 "&g" +3955712 "(7" +3953280 "z." +3948416 ":9" +3947136 "*b" +3944960 "8]" +3944320 "{/" +3939712 "6t" +3938944 "k1" +3938560 "/_" +3934464 "5v" +3928832 "8t" +3921024 "o]" +3920128 "h0" +3919488 "#\n" +3915776 "yx" +3913216 "k2" +3895936 "9z" +3892224 "7z" +3888896 "=h" +3884800 "t\r" +3884672 "pj" +3883008 "t&" +3870336 "8s" +3866880 "$m" +3859328 "!p" +3858560 "i2" +3854080 "pq" +3852928 "8z" +3846400 "qp" +3844864 "%2" +3843584 "l[" +3839872 "3m" +3836160 "w1" +3834880 "7t" +3833600 "yq" +3826688 "5h" +3815424 "%d" +3811200 "0h" +3808768 "(9" +3806208 "d!" +3804800 "{g" +3800960 "qw" +3797632 "u2" +3796992 ";p" +3794176 "+;" +3792640 "qm" +3785472 "gj" +3779584 "[g" +3771008 "p[" +3763968 "vk" +3762816 "g3" +3761280 "kj" +3761024 "|-" +3757568 "" +3710976 "3h" +3703552 "qe" +3697152 "`}" +3688320 "(y" +3683712 ".$" +3679488 "/)" +3679360 "`n" +3678848 "zp" +3673984 "'k" +3673600 ";}" +3672320 "(\\" +3670272 "p?" +3669248 "b=" +3664896 "4v" +3663872 "pz" +3656704 "0\\" +3656320 "$l" +3655936 "zr" +3652096 "#4" +3651456 "%)" +3650816 "4j" +3645184 "m9" +3643392 "4m" +3641600 "\\\n" +3635072 "6}" +3632896 "fq" +3632640 "wq" +3631232 "x7" +3628928 "1v" +3625344 "9_" +3617152 "8h" +3614848 "3v" +3612800 "jf" +3612672 ">-" +3611776 "=6" +3608704 "e|" +3606144 "\"+" +3604608 "=(" +3598976 "{2" +3597568 "kz" +3597184 "/-" +3592960 "w>" +3589888 "fj" +3589376 "=g" +3583488 "g4" +3583360 "n4" +3579136 "0k" +3576576 "8l" +3572224 "*l" +3566848 "u1" +3564544 ")*" +3562496 "c+" +3561600 "`h" +3561216 ",o" +3558528 "#6" +3550720 "v7" +3547392 "&s" +3543424 ">k" +3542144 "7_" +3542016 "l7" +3540736 "f]" +3535744 "#t" +3522560 "!!" +3504512 "&\n" +3503744 "xz" +3503488 ";f" +3501440 "+s" +3496064 "n+" +3488640 "a}" +3488512 "qb" +3484544 "o3" +3481856 "qq" +3472896 ">/" +3469824 "6h" +3463296 "qo" +3462784 "s6" +3457536 "#b" +3453056 "l8" +3452160 ";i" +3446400 "1\\" +3443584 "r5" +3440768 ">y" +3438592 "{0" +3437696 "m\\" +3437440 ".\r" +3433216 "{x" +3426432 "k]" +3420160 "{`" +3420032 "v8" +3419904 "<<" +3419904 "(&" +3413888 "7]" +3406592 "6m" +3404672 "9l" +3399168 "8v" +3395840 "7l" +3390592 "!a" +3390080 "&#" +3384960 "vx" +3383552 "[5" +3382528 "*," +3380096 "!1" +3379968 "=o" +3376128 "b<" +3365120 "{w" +3360256 "q," +3356544 "hx" +3354496 "9'" +3352832 "z0" +3349632 "m8" +3328128 "jg" +3326976 "6x" +3326720 "zk" +3326464 "$1" +3325696 "jj" +3325440 ",v" +3310592 "h8" +3306880 "qv" +3305472 "`g" +3304320 "qg" +3302656 "j)" +3301504 "h7" +3297536 "zx" +3297408 "p5" +3295360 "`l" +3294848 "q1" +3293184 "wj" +3292800 "#m" +3292800 "!(" +3289216 "zf" +3284352 "[:" +3281280 "qh" +3279744 "g0" +3274496 "1n" +3272192 "w2" +3271424 "m7" +3256832 "8}" +3255680 ",h" +3255296 "6s" +3254144 "*o" +3250688 "\"\r" +3250176 "vz" +3249792 ";b" +3249664 "0n" +3249408 ".[" +3244032 "qf" +3242112 "d\r" +3239552 ",-" +3231616 "6v" +3230464 "y*" +3228928 "-|" +3228800 ">6" +3227264 "!/" +3226624 "c>" +3224064 "0i" +3211264 ":=" +3209472 "-$" +3207680 "?i" +3206400 "jz" +3202048 "'$" +3198208 "`u" +3197824 "=8" +3193216 "xq" +3188864 "#!" +3185152 "i3" +3182592 "zv" +3182464 "0r" +3181952 "5x" +3170560 "s7" +3169280 "s8" +3167360 "q2" +3166848 "n5" +3164416 "\\." +3163776 "/<" +3162112 "jy" +3161344 "-'" +3154432 "fz" +3150592 "=\\" +3149952 "8m" +3149440 "l9" +3144320 "$n" +3141504 "wz" +3135360 "r\r" +3135232 "k}" +3135232 "n6" +3117952 "s&" +3117440 "uq" +3117184 ";d" +3116160 "j\"" +3114112 "m[" +3109504 "_9" +3104384 "0&" +3103872 "q=" +3096448 "qk" +3095424 "1x" +3090176 "n&" +3087744 "u:" +3087488 "u)" +3085440 "3n" +3084544 "2%" +3082624 "7h" +3080320 "p}" +3080192 "4r" +3076864 "9h" +3075968 "r&" +3075456 "7'" +3070336 "xk" +3070208 "kx" +3067520 "[." +3056128 "9v" +3053824 ";a" +3048192 "1=" +3046912 "+\"" +3036416 "+c" +3035904 "!f" +3035264 ";&" +3029888 "#8" +3024768 "r+" +3023360 "2\\" +3022464 ";m" +3021568 "9s" +3019136 "u3" +3011072 "h9" +3009664 "vq" +3009280 "[-" +3005824 "s9" +3005056 "'%" +2999808 "vj" +2999424 "\\i" +2998912 "t7" +2997888 "'3" +2995072 "(@" +2992384 "k8" +2990464 "x9" +2990208 "w[" +2988672 "v9" +2988032 "&d" +2983296 "qx" +2982784 "i0" +2978432 ",{" +2973696 "2i" +2973440 "l+" +2973184 "$b" +2972160 "zq" +2971392 ">q" +2970368 "g`" +2967680 "7v" +2962816 "0g" +2955648 "'q" +2948608 "+x" +2945408 "zj" +2939904 "n{" +2935808 ">}" +2934144 "w0" +2925312 "t{" +2918144 "n!" +2913536 "(<" +2912768 "$u" +2908032 ";r" +2905344 "#n" +2902016 "c}" +2901120 "&1" +2901120 "$\"" +2896128 "c]" +2894208 "x+" +2893952 "qy" +2888064 ":#" +2883968 "qz" +2882816 "#9" +2881792 "+2" +2879616 ">$" +2871680 ",g" +2847744 "3%" +2842880 "'[" +2841728 "4n" +2840320 "x>" +2839936 ";l" +2839296 "]=" +2836736 "}-" +2836096 ">8" +2833024 "c\\" +2827392 ")=" +2825728 "r6" +2819968 "1(" +2819840 "z:" +2818432 "&t" +2818432 "j," +2813696 "p6" +2813696 "2g" +2811776 "$o" +2809728 "/\r" +2806016 "\\l" +2803968 "jx" +2800640 "y0" +2798464 "8r" +2796160 "[w" +2795776 "w5" +2794112 "2=" +2784256 "k3" +2784128 "q)" +2781952 "1i" +2777600 "{\\" +2772864 ">7" +2772096 "7s" +2765824 "z," +2763392 "l*" +2759552 "1%" +2759296 "\\h" +2758656 "g5" +2757120 "8x" +2753152 "?s" +2750592 "*g" +2748928 "z2" +2746752 ":$" +2744064 "qj" +2740736 "\"`" +2738176 "i6" +2737024 "q3" +2729728 "r8" +2727936 "g9" +2727296 "o\\" +2726656 ">[" +2725632 "i4" +2723328 "]+" +2716928 "+d" +2715008 "_\n" +2709888 "\t@" +2709120 "k0" +2708992 "#5" +2707200 "0u" +2702592 "%'" +2696064 "y4" +2695808 "t9" +2687744 "n8" +2676480 "{." +2676224 "1g" +2673920 "2k" +2672384 "q(" +2672128 "$v" +2668032 "7x" +2667904 "4(" +2665472 "[6" +2661760 "\t)" +2660992 "8%" +2660352 "6r" +2660096 "+p" +2657152 "_'" +2656128 ".(" +2655488 "q4" +2654720 "1+" +2653312 "n7" +2652288 "[j" +2642688 "j2" +2642560 "9" +2618368 "0o" +2612608 "y5" +2608256 "?f" +2607872 "7m" +2607488 "o}" +2606464 "9m" +2605824 "g*" +2602752 "0\r" +2602112 ",u" +2601728 "_." +2598016 "g+" +2594816 "*v" +2591744 "|s" +2589696 "*w" +2587520 "'x" +2577920 "u6" +2574080 "=w" +2571648 "*u" +2570112 "=v" +2567552 "2+" +2564352 "&r" +2563200 "z/" +2563072 "(z" +2562688 "p8" +2562304 "0w" +2562176 "p9" +2561536 "*h" +2557824 "?<" +2557568 "o0" +2555392 "1k" +2546176 "o4" +2545920 "4k" +2545024 "/`" +2540672 "\"=" +2540544 "d&" +2536448 ",w" +2535168 "=-" +2531072 "(#" +2530432 "l\r" +2529024 "2o" +2526208 "+a" +2525824 "4i" +2522240 "9r" +2520320 "w4" +2520192 "+j" +2519936 "e%" +2514304 "k4" +2514048 "s@" +2512512 "j1" +2509824 "&p" +2503552 "?)" +2503552 "#l" +2503040 "5k" +2501888 "o?" +2501376 "k5" +2500608 "&m" +2499968 "i5" +2496768 "k\\" +2494720 "5n" +2486272 "t|" +2484096 "=7" +2483712 "q0" +2474624 "u<" +2466304 "\t$" +2463744 "h?" +2463616 "d{" +2461568 "\"^" +2457472 "+t" +2448256 "-<" +2447872 "7}" +2445312 "%," +2445056 "n9" +2443264 "r9" +2441984 "[$" +2439168 "`w" +2437120 "u5" +2436992 "}{" +2432384 "?'" +2431744 "!m" +2426368 "q-" +2422528 "h\\" +2421376 "*;" +2418560 "]-" +2415872 "*'" +2414336 "4o" +2414080 "\\/" +2413824 "<{" +2413056 "n@" +2409984 "i\\" +2403840 "/?" +2402304 "j0" +2399872 "i}" +2395392 "3j" +2393600 "2w" +2393344 "4%" +2390144 "h`" +2388864 "$ " +2384512 "m?" +2382336 "2j" +2381696 "1o" +2380288 "y\r" +2378368 "0y" +2377856 "e@" +2375552 "r{" +2361600 "3g" +2361344 "=9" +2358144 "u4" +2355712 "4u" +2354688 "@h" +2353408 "+/" +2353152 "'5" +2351744 "$h" +2345088 "g6" +2343296 "3i" +2342912 "'4" +2338432 "-." +2337152 ":j" +2333824 "7r" +2332416 "q5" +2331520 "6i" +2331264 "j+" +2331136 "1w" +2322304 "6%" +2318464 "5g" +2318464 "#7" +2316544 "g8" +2315136 "'+" +2315008 "4w" +2313984 "z1" +2308608 ">`" +2305792 "3u" +2300160 ":" +2245120 "9u" +2243456 "q:" +2241536 "1j" +2235264 "&q" +2234112 "o8" +2233856 "w6" +2232704 "2y" +2229376 "1\r" +2229120 "`j" +2227840 "3\\" +2226304 "3q" +2225408 "k6" +2225024 "3o" +2224640 "z3" +2223744 "q6" +2223360 ";h" +2222336 "'?" +2221696 "2q" +2217216 "p`" +2212864 "3k" +2211968 "(:" +2207744 "g7" +2206848 "6k" +2203520 ";/" +2203136 "\t(" +2202624 "s|" +2202240 "z)" +2201984 "y6" +2200192 "5+" +2199936 "9k" +2197760 "5j" +2196864 "1&" +2196352 "{k" +2195200 ";o" +2190592 "+n" +2188160 "+3" +2187520 "y8" +2185088 "/[" +2183552 "o5" +2181376 "j4" +2177024 "k?" +2175744 "j/" +2172800 "6g" +2170752 "\"&" +2169600 "f\\" +2169344 "9j" +2166528 "5o" +2156416 "~/" +2155648 "c[" +2155264 "9y" +2153216 "*k" +2152704 "d%" +2150656 "q8" +2148992 "[8" +2145152 "{3" +2143744 "9w" +2142464 "5q" +2141696 "o6" +2136960 "5u" +2135424 "3+" +2133888 "[7" +2132864 "6q" +2132352 "`:" +2131328 "[\\" +2130816 "t%" +2130304 "r!" +2129152 "k9" +2123264 "v[" +2121088 "y+" +2119936 ")+" +2112512 "k7" +2112000 "v;" +2111104 "q9" +2108800 "$_" +2106624 "i7" +2105984 "9i" +2105472 "0j" +2103424 "4y" +2101504 "8q" +2100224 "0q" +2099840 "y7" +2099072 "|a" +2094976 "`v" +2094336 "+f" +2093696 "*(" +2093568 "]<" +2093440 "w8" +2092800 "u7" +2091648 ";v" +2091392 "3y" +2091136 "+b" +2090880 "!<" +2089216 "\\w" +2085888 "5w" +2085120 "q7" +2084480 "]\r" +2082816 "j9" +2081408 "j3" +2079744 "l&" +2077696 "w]" +2076544 "$/" +2073856 "$2" +2071040 "9x" +2069376 "/#" +2068352 "}$" +2067328 "$g" +2064512 "\t." +2064128 "]/" +2063104 "3w" +2062208 "[(" +2061184 "6n" +2059520 ";e" +2058496 "4q" +2057216 "w+" +2057216 "9q" +2056064 "7i" +2054912 "8u" +2054656 "b]" +2051840 "5\\" +2051200 "8i" +2050176 "9n" +2050176 "m`" +2047872 "*\r" +2046720 "i9" +2045440 "8w" +2043264 "w7" +2042240 "j5" +2036736 "k+" +2034816 "5y" +2032896 "[x" +2032512 "z4" +2026240 "o[" +2023040 ":k" +2018688 "4+" +2017408 "6u" +2016640 "\t-" +2010624 "f>" +2009984 "7k" +2009344 "z'" +2005376 "*1" +2004352 "j_" +2003456 "g&" +2001408 "6w" +2000384 "!o" +1999360 "7n" +1998720 "'z" +1993344 "\"~" +1988608 "o7" +1987584 "0`" +1986688 "=/" +1985280 "-%" +1978880 "-=" +1978752 "p+" +1973248 "j8" +1971712 "l!" +1971456 "h+" +1971072 "\\v" +1970432 "{[" +1964672 "9g" +1960192 "7q" +1959168 "8j" +1958656 "6j" +1956736 "=y" +1954432 "%3" +1952256 "+'" +1951232 "7g" +1946112 "!n" +1945344 "y{" +1941376 ">\\" +1939584 "8\\" +1937152 "7j" +1936768 "g|" +1936000 "6o" +1935488 "*\\" +1934464 "{$" +1932800 "*-" +1931776 "0(" +1931008 "3(" +1929472 "x`" +1928320 "s{" +1928192 "7u" +1927040 "o+" +1926656 "d|" +1922432 "8+" +1921408 "+h" +1920384 ">x" +1920384 "j6" +1915776 "[^" +1913984 "j\n" +1912576 "/(" +1911424 "n|" +1910144 "q\n" +1900672 "8y" +1894784 "&2" +1894400 "j7" +1894400 "]*" +1893632 "z9" +1891712 "6y" +1891456 "j-" +1891072 "/^" +1886592 "6+" +1884416 "%m" +1881216 "{4" +1881088 "^2" +1880192 "!'" +1878400 "|c" +1878272 "[9" +1877888 "#g" +1874816 ",j" +1868288 "g\r" +1868032 "+o" +1868032 "}e" +1864320 "o9" +1863680 "z5" +1863424 ".]" +1860992 "a`" +1859968 "$." +1857408 "7w" +1854592 "9o" +1854208 "z8" +1847424 "!v" +1842304 ";'" +1841664 "1`" +1837312 "?c" +1836928 "+4" +1835648 "@j" +1835520 "8o" +1833984 "y&" +1832960 "7o" +1832704 "]?" +1830656 "e\t" +1830528 "f[" +1830016 "n%" +1829376 "'=" +1825536 ";n" +1824256 "5>" +1820288 "z6" +1816576 "7y" +1815552 "&f" +1813632 ";\t" +1810048 " ^" +1809920 "a%" +1806464 "z7" +1805312 "9+" +1804288 "+v" +1799552 "!$" +1796096 "/," +1795456 "r@" +1784064 ",." +1783040 "\t1" +1782144 "j;" +1779968 "a*" +1778304 ")s" +1777536 ":." +1773312 "k`" +1769344 "!2" +1768320 "u=" +1767040 "}_" +1764608 "b+" +1757824 "{j" +1757056 "]\\" +1754368 "6\\" +1751424 "/@" +1750784 "\\o" +1749248 "&i" +1748992 "7+" +1747712 "(?" +1745408 "h[" +1744640 "p\r" +1743744 "v<" +1742720 "]{" +1741056 ":]" +1740288 "2\r" +1740032 "!l" +1728256 "+g" +1728128 "}%" +1725696 ")>" +1722496 "]`" +1722112 "_{" +1716736 "|f" +1716352 "}(" +1714816 "\\'" +1705344 "?v" +1704960 "&o" +1701632 "'6" +1698048 "{@" +1697280 "?t" +1688448 "$\n" +1684992 "o`" +1680384 "x\\" +1676416 ">*" +1670144 "!)" +1669888 "~1" +1666560 "%}" +1657472 "!h" +1657472 "#{" +1652096 "|t" +1651840 "-\\" +1651456 "r|" +1649408 "+5" +1645440 "+u" +1641728 "=<" +1640064 "+w" +1638528 "u+" +1638528 "\\g" +1638400 "*<" +1636096 "x[" +1633408 "7\\" +1620480 "^1" +1619200 "0=" +1619200 "2*" +1618304 "?a" +1617664 "j]" +1616512 "w}" +1614208 "*2" +1613056 "%>" +1613056 "m*" +1612032 ")$" +1611520 "'&" +1610112 "b}" +1607808 "(\r" +1601536 "@k" +1601152 "2&" +1596544 "&b" +1594752 ";\\" +1593984 "f+" +1592448 "\t" +1503616 "#" +1490048 "g{" +1489152 "\tj" +1485184 ",k" +1484032 "b[" +1483904 "{%" +1481088 "g!" +1480320 "*=" +1477248 "\t\r" +1476736 "s#" +1475968 "<%" +1474176 "i[" +1472896 "+6" +1472640 "$0" +1468928 ".{" +1467904 "c%" +1465472 "@\"" +1463808 "\t'" +1459072 "|m" +1452672 "w?" +1449728 "+8" +1446400 "*`" +1444224 "=%" +1439872 "m&" +1437568 "3\r" +1436032 "+9" +1433600 "$k" +1432832 ">z" +1432320 "#o" +1415680 "v`" +1414784 "\t2" +1413760 "%<" +1413248 "p*" +1410304 "|e" +1409408 ":(" +1409280 "+y" +1408768 "l{" +1406208 "#'" +1405824 "4\r" +1405568 ",$" +1404672 "`[" +1404416 "l|" +1403392 "/%" +1401088 "o&" +1400448 "p&" +1396480 "}[" +1392640 "\t0" +1391744 ";u" +1390336 "`-" +1389568 "_$" +1389312 ")!" +1388800 "o*" +1385984 "~ " +1383936 "^0" +1382016 "{q" +1380864 "k*" +1380480 ";1" +1380224 "-\r" +1378432 "o!" +1375744 "|r" +1372544 "'7" +1372032 "/:" +1369856 "+7" +1369600 "n#" +1369472 "3&" +1367808 "+z" +1366528 "^3" +1363072 "v+" +1362048 "+q" +1360256 ",," +1359488 "z+" +1355776 "k[" +1355776 ":%" +1349376 ";;" +1348352 "5\r" +1345664 "-{" +1342336 "\t]" +1335552 "6(" +1334272 "q+" +1333248 "^\\" +1325952 ";g" +1319296 ")&" +1318272 "!." +1317248 "?," +1315584 "/+" +1307264 "\tk" +1305728 "$q" +1291776 ";j" +1288320 "d\t" +1286400 "r%" +1284736 "f\r" +1283840 "h\r" +1281280 "2`" +1277440 "{-" +1273984 "m%" +1268224 "x?" +1267328 "<-" +1264384 "?r" +1254656 "5&" +1252864 "{<" +1246720 ":_" +1245184 "%." +1245184 "$3" +1239040 "+$" +1238144 "&h" +1238016 "\\(" +1237504 "-(" +1236992 "~2" +1236352 "{6" +1234176 "}s" +1232896 "`{" +1232640 "#x" +1232256 "z<" +1230592 "4&" +1230208 ")i" +1228416 "u;" +1227520 "-)" +1226880 "^4" +1226752 "+\\" +1226368 ">_" +1223296 "&:" +1216000 "\t#" +1214080 "l@" +1213824 "n\t" +1209472 "+(" +1207296 "?u" +1206400 "#v" +1205120 "f%" +1202944 ")v" +1200640 "#w" +1199232 "?\\" +1196416 "6\r" +1195776 "@w" +1193728 "?(" +1193728 ")c" +1192960 "r$" +1192320 "1\t" +1189888 "d@" +1187456 "j:" +1178240 "v\\" +1177088 "<\n" +1175552 ":q" +1171328 "8\r" +1170560 "{5" +1168000 "w`" +1167360 "=&" +1165312 ")r" +1164928 "^5" +1164672 "\t*" +1163520 "'\r" +1161472 "0\t" +1160960 "@@" +1160192 "q'" +1160064 "h%" +1159936 "z]" +1157632 "s\t" +1155072 "c*" +1153792 "i?" +1152000 "y|" +1146624 "f`" +1146368 "e#" +1146368 "u>" +1146240 "l%" +1146240 "s$" +1144704 ">]" +1143296 "b`" +1143168 "&u" +1142016 "r\t" +1141760 "j<" +1139968 "n$" +1139328 "y%" +1138304 "v]" +1136768 "|[" +1134336 "%h" +1132928 ">@" +1132288 "c&" +1127168 "=." +1127040 "@2" +1126784 "a@" +1121792 "j=" +1121024 "=x" +1119744 "_-" +1115648 "0>" +1114624 "(+" +1113600 "'`" +1112576 ",)" +1111552 "[#" +1110784 "2[" +1110528 "2\t" +1108608 ">?" +1107712 "[q" +1105920 "=k" +1105536 "`*" +1101440 "y@" +1100032 "|b" +1097984 "1[" +1097344 "@{" +1097216 "5(" +1095424 "|\\" +1094656 "!4" +1094144 ",(" +1091584 "&v" +1091584 "8&" +1091200 "&w" +1089280 "e$" +1087360 "]|" +1083392 "*[" +1079808 "3=" +1078528 "#[" +1078272 "!g" +1075968 "<1" +1073280 ":`" +1070976 ")a" +1066880 "i*" +1066752 "t$" +1066624 "k\r" +1061888 ")t" +1059328 "$5" +1058816 "c\r" +1058432 "%a" +1057920 "a!" +1056512 "|l" +1055872 "t#" +1055872 "!w" +1051392 "^[" +1048576 "}c" +1048064 "\t3" +1047040 "_*" +1046528 "9&" +1046016 "?=" +1045504 "6&" +1044992 "?l" +1043456 ":," +1042176 "7\r" +1040000 "c#" +1036416 ",x" +1032448 "6>" +1030912 "^(" +1029376 "b%" +1028992 "4=" +1026304 "w*" +1024256 "`1" +1021696 "%=" +1019264 "0|" +1019008 ";2" +1019008 "`(" +1018624 "]s" +1016192 "9\r" +1015808 "}&" +1012352 ":&" +1011968 "f?" +1010816 "[_" +1008256 ")d" +1005440 "4*" +1003136 "`]" +1001600 "i`" +1000320 "v}" +999936 "{8" +999296 "p%" +997248 "-]" +995328 "\"|" +989952 "\tq" +986496 "=_" +986496 "{y" +986112 "8(" +986112 "(~" +985728 "?d" +985216 "'|" +983808 "1|" +982912 "`\\" +981632 "*$" +981120 "*3" +978688 "|\"" +978176 "g%" +976256 "[`" +974464 "_/" +973056 "<\"" +969856 "/\t" +969856 "%b" +968320 "$4" +967296 "h&" +965504 "p{" +964480 "<'" +964480 "`y" +962176 "3*" +961664 ";0" +961152 "3\t" +960128 "4\t" +959872 "u\\" +957056 "%c" +955904 "x*" +952832 "!\\" +952320 ",q" +952064 "m|" +950016 "`_" +949248 "!," +948992 ":)" +947712 "$)" +946304 "\tx" +944896 "z(" +942336 "[y" +940544 "z=" +940160 "=q" +940160 ".-" +939648 ")l" +936704 "5*" +935936 "d#" +932480 "3`" +931200 "^6" +928256 "&4" +926720 "\\ " +924032 "7&" +922752 "\\x" +922496 "-+" +922112 "%e" +920704 "\\0" +920576 "{_" +918912 "^8" +918784 "a{" +917888 "%%" +917504 "~3" +913664 "-;" +911360 ")p" +906752 "*>" +905984 "\t&" +905344 "5\t" +904960 "/;" +904064 ")\t" +903168 "c?" +902144 "}*" +901760 "/=" +900736 "\t4" +896256 "\\j" +895488 ".&" +894848 "`k" +894592 "|=" +894208 "*q" +893440 "i@" +893056 "a|" +892416 "$'" +892032 ";," +889088 "6\t" +886144 "}\t" +885632 "|'" +884992 "}?" +883584 ";5" +879360 "/&" +879360 ")m" +877440 "^7" +876416 "?b" +874240 "~5" +869504 "q<" +867712 "*j" +865792 "%i" +864768 "%@" +863616 "8\t" +863104 "i&" +860800 ";*" +860544 "@3" +857984 "[\r" +855936 "<(" +852992 "#/" +850176 "\t5" +847104 "2|" +846848 "&(" +846720 "_;" +840576 "p@" +839296 "d$" +836864 "{:" +834304 "l\t" +832512 ".=" +831232 "[<" +830208 ")_" +830208 "4`" +829440 "m{" +828544 "|g" +828160 "|w" +827648 "+-" +825728 "p|" +824192 ";7" +823424 "\t:" +823296 "7\t" +819712 "`0" +819200 "|o" +817024 "\\$" +816384 ";6" +815232 "f&" +809600 "?q" +809472 ";3" +806272 "z;" +805120 "k!" +802944 "c|" +802688 "|(" +797952 ">+" +795904 "{#" +793472 "m@" +791680 "9\t" +790656 "o%" +790016 "j(" +789632 "|u" +789504 "\\)" +789504 "$j" +786560 "&." +786176 ">%" +785152 "j'" +783616 "|h" +782592 "@4" +780288 "%-" +778368 ":z" +777856 "}m" +777472 "_:" +777088 ",z" +776576 ".:" +775808 "%p" +774400 "*_" +773248 "+." +773120 "[@" +772992 "}p" +772480 "$<" +772480 "5`" +769664 "o{" +768896 "b&" +768768 ";4" +766848 "!;" +765568 "k&" +764800 ",&" +762496 "?$" +759808 "^ " +759296 "&7" +755712 "k%" +753920 "|" +615040 "x%" +614784 "%f" +611072 "=*" +610944 "#-" +609408 "&6" +607232 "*y" +606080 "7(" +605056 "\\-" +604672 "*!" +604544 ")o" +604032 "f|" +602240 "+<" +601216 ";?" +600960 "6=" +595584 "`x" +595328 "1?" +593664 "8>" +591104 "%(" +590336 "v&" +589824 "*5" +589440 "*0" +589056 "|j" +588544 "&_" +587264 "%{" +585728 "=`" +585600 ":?" +582912 "x|" +581632 "&'" +581120 "+]" +580608 "|2" +580096 "@\n" +578560 "5|" +578560 "a\t" +575872 "c!" +572416 ";:" +571264 "(|" +571136 "j\\" +569088 "i%" +568448 "v%" +566528 "2{" +565120 "&5" +564736 "]!" +564608 "a$" +564224 "%8" +563072 ",\t" +562688 "k|" +562176 "2@" +561792 "}i" +561408 ";z" +561408 "\t?" +561280 "]b" +561024 "x{" +559872 "$7" +559488 "\\1" +559232 "0!" +558848 "%r" +558464 "&8" +558208 "!0" +556160 ":+" +551808 "$x" +550400 "%]" +550016 "u&" +547328 "*?" +547200 "-#" +546560 ")b" +546048 "c@" +545664 "!3" +545152 ",*" +544000 "<3" +541056 "~~" +540928 "=z" +537088 "8`" +536704 "#." +536192 ",/" +536192 "%\\" +535552 "=!" +535168 "1@" +534400 "[/" +534144 "*\t" +534016 "#," +533888 "l$" +533888 "6|" +533376 "x&" +533120 "(>" +531584 "~6" +531456 "}t" +530688 "~c" +530304 ";q" +528640 "\\{" +528640 "y$" +528384 "c\t" +527872 "}f" +526720 "\\<" +524416 "\\k" +523904 "j[" +523264 "" +496128 "%9" +496128 "|<" +496000 "@+" +495744 "g#" +493440 "q|" +492800 "0$" +492160 "?w" +491520 "q%" +490368 "*x" +490240 "]i" +489728 "7|" +488832 "+%" +487296 "%n" +486528 "-:" +486400 "u}" +486016 "*}" +485888 "\\|" +485376 ";|" +484992 "$9" +484608 "7*" +484480 "{z" +484224 "\t+" +483840 "(=" +483456 "}r" +483456 "2$" +480640 "o\t" +479872 ";$" +477184 "9|" +476800 "?*" +476672 "f{" +475648 "}d" +474880 "#_" +473984 "|k" +473856 ">!" +473344 "_[" +472192 "i!" +471936 "~s" +470656 "*@" +470656 ";k" +470272 "=#" +470144 "*z" +469888 "f\t" +469504 ",%" +466688 "9`" +464896 ")g" +464512 "@y" +464512 "&9" +463872 "m#" +461312 "h\t" +460928 "?!" +460672 "?;" +455680 "|x" +453504 "<5" +452480 "!q" +452096 ":@" +449024 "7`" +449024 "b@" +447360 "!*" +445696 "$@" +443136 ".;" +442496 "_=" +442112 ";]" +440960 "}|" +440192 "^{" +438528 "|0" +437120 "#:" +436864 "w{" +435584 "~m" +435200 "{*" +434432 "9*" +432512 ",@" +432128 "w|" +430592 "?h" +430080 "b{" +429824 "p$" +428800 "&=" +428544 "i{" +426496 "j%" +425856 "*8" +424832 "#k" +421632 "$y" +421376 "q&" +419968 "]$" +419840 "%5" +418816 "%u" +418688 "0@" +418432 ",]" +418304 "&k" +417792 "u@" +416768 "}h" +416384 ";9" +415232 "|_" +412928 "q[" +411776 "|3" +410112 "x@" +409600 ";`" +407808 ".#" +404352 "v\r" +403840 "v|" +402048 "`?" +400384 "$;" +400256 "7=" +399744 "<4" +399488 ":;" +398080 "%4" +395392 ")h" +394752 ";_" +394496 "\\}" +393984 "-\t" +393728 "(;" +393088 "?`" +392576 "#j" +392320 "4?" +391040 "q]" +390400 "3@" +389632 "}b" +388992 "$?" +388992 "u\r" +387840 ";y" +387328 "#\\" +386944 "<_" +385920 ";{" +385280 "=~" +384768 "&$" +382976 "k\t" +382336 "x!" +382336 "4[" +381952 "_`" +381056 "1#" +380800 "+:" +380672 "3?" +378112 "3{" +377600 "m$" +376960 "y#" +376704 "#q" +376320 "\"\t" +375808 "?&" +373632 "0{" +373376 "]&" +372224 ";x" +371712 "?[" +371712 "w%" +368256 "4@" +368128 "~7" +366336 "!k" +365952 "|\r" +365568 "_}" +365056 "x$" +364672 "{&" +362752 "v@" +362624 "g$" +360960 "~a" +359040 "1!" +358272 "?\r" +356992 "&)" +354560 "?g" +354304 ")w" +354048 ":|" +353536 "%+" +352896 "^\"" +350720 ";=" +350592 "#)" +349952 "c$" +349696 "|{" +349568 "v*" +348800 "~\n" +348800 "`~" +348544 "v$" +347264 "*7" +347264 "?}" +343552 "5?" +340096 ",:" +339456 "@]" +339072 "9=" +338688 ")0" +338432 "!:" +337536 ")^" +336768 "!6" +336640 "-`" +336512 "\t|" +336512 "?k" +336128 ":!" +336128 "|4" +336000 "x\t" +335616 "0#" +335488 "}v" +334976 "f@" +334464 "#%" +334336 "@[" +333056 "`3" +332416 "u*" +331520 "~\"" +330880 "\\+" +330880 "~8" +330752 "~d" +330624 ")u" +330368 "~i" +329600 "?1" +329088 "<$" +328448 "!\r" +327936 "`4" +326016 "~p" +324608 "?]" +323968 "f!" +323840 "\\:" +322816 "p#" +322048 "q\\" +320384 "&[" +319104 "!j" +318592 "_|" +317312 "%x" +317184 "|>" +317056 ".\t" +314624 "@6" +314496 "}#" +313984 "]a" +313216 "q}" +312960 "v?" +312448 "f$" +311808 "b\t" +310656 "u[" +310656 ")z" +310016 "7>" +308736 "|5" +308096 "%/" +307968 "?-" +307072 "z}" +306816 "5@" +306816 "4{" +306688 "i$" +306304 "2!" +305152 "z`" +304768 "!`" +304768 "+@" +304640 "#(" +304384 "@_" +303488 "*&" +302720 "8?" +302720 "~t" +302464 "$:" +302464 "+\r" +302336 "*#" +301568 ".?" +300800 "<6" +300288 "*|" +299904 "*9" +299776 "]c" +299648 "*+" +298624 "2^" +298112 "%*" +298112 "!}" +297728 "\\`" +296576 "9>" +295808 "`z" +295680 "3!" +295040 "j}" +293888 "=?" +292480 "2#" +291968 "u`" +291968 "6?" +290944 "}!" +290816 "+[" +289920 "$z" +289664 "|y" +289536 "s^" +289280 "6@" +288768 "&z" +288256 ".|" +288128 "#}" +287616 "\\?" +287616 "=:" +287360 "!]" +287232 "^." +286720 "^/" +284928 "k$" +284288 "`\r" +284032 "!7" +284032 "/|" +283904 "\\&" +281984 "~=" +281856 "`5" +281472 "i\t" +279296 "=+" +277632 "@z" +277376 "\t`" +276864 "(^" +276864 "\\z" +276224 "b!" +276224 ")1" +276096 "[+" +273536 "w@" +273280 "#=" +272896 "&>" +272512 "3$" +272512 "u%" +270976 ";%" +269440 "<[" +269312 "?/" +268928 "q>" +268800 "5[" +267008 "@*" +266368 "&x" +265856 "!9" +264832 "@7" +264448 "?_" +264320 "|:" +264064 "+?" +263424 "q!" +263424 "/~" +263168 "'\t" +262784 "^-" +260992 "3#" +259072 "~(" +258560 "|^" +258176 "_\r" +258048 "8@" +255872 "z@" +255488 "$#" +254848 "6[" +254720 "]\t" +254720 "~r" +254464 "9?" +254464 "z\r" +254336 "\t;" +253952 ",!" +253568 "~$" +252800 "^^" +252288 "#\r" +251776 "0^" +251520 "^s" +251008 "&]" +251008 "\r\r" +250624 "9@" +250112 ";[" +249856 "^h" +249728 "!5" +249728 "@-" +249472 "+{" +249216 "<8" +248832 "]m" +248320 "h$" +248192 ")#" +245120 "`+" +244992 "|6" +243456 "%o" +243072 "u|" +242688 "e~" +242432 "z&" +242432 "{|" +241792 "v#" +241792 ",`" +241024 "7?" +240896 "s~" +240896 "%$" +240000 "}x" +239616 "f#" +239616 "@." +239360 "+|" +238848 "@\\" +237824 "\t!" +237184 "$*" +236416 "`%" +236032 "~9" +235392 "^c" +233856 "%#" +232064 "^t" +232064 "w\t" +231680 "|/" +231680 "0~" +231296 "o$" +231040 ")2" +230272 "1~" +229888 "e^" +229760 "7@" +229760 "q`" +229504 "|." +226944 "%q" +226176 "\\3" +225024 "=)" +224640 ";#" +224640 "~>" +224384 "~e" +224128 "$!" +223104 "}l" +222848 "4!" +222592 "\\%" +222592 "(\t" +221952 "]t" +221952 "$|" +220672 "\\y" +220288 "^n" +220032 "b#" +219520 "$%" +218624 "&j" +218240 "_#" +216704 "w$" +216704 ";!" +216704 "%_" +216704 "#*" +216576 "|q" +216320 "~b" +216320 "~f" +216192 "j&" +215936 "^'" +215424 "=," +214144 "%g" +214016 "}w" +213248 "z[" +213248 "|7" +212608 "@8" +212352 "[?" +211456 "+_" +210560 "~\\" +210304 "}n" +209920 "_>" +209664 "#]" +208896 "\t\\" +208768 "|!" +208768 "!@" +208768 "d^" +208384 "5{" +207616 "@<" +207616 "^d" +207488 "#>" +207360 "a^" +207104 "^>" +205312 "-@" +205184 "o#" +204800 "+#" +204672 "!x" +204544 "^#" +203776 "<7" +203392 "#+" +203136 "^$" +202752 "4$" +202752 "=;" +202624 "}^" +201984 "|8" +201856 "`=" +201728 "#y" +200960 "~n" +200704 "=\t" +200576 "~'" +200448 "5#" +200064 "^p" +199680 "#\t" +199552 "^\n" +199296 "~l" +199168 "v\t" +198912 "z*" +198784 "5!" +197888 "|9" +197504 "}+" +197120 "]p" +196992 "?0" +196608 "n^" +196480 "u{" +196352 "m^" +196224 "(," +195712 "8[" +195584 "$-" +195584 "6{" +195328 "$\r" +195072 "q?" +194176 "!8" +194048 ".@" +194048 "&!" +194048 "&\\" +194048 "^&" +193920 "|}" +193408 "-?" +190976 ";+" +190720 "4#" +190336 "}g" +190208 "@#" +190208 "]d" +190080 "<&" +189824 "&," +189696 "?|" +189696 ".>" +189184 "|z" +188928 "%\r" +187904 "?2" +187904 "-!" +187776 "\\," +187520 "*%" +187136 "]e" +187008 "h#" +186880 "^i" +186496 "|*" +186368 "?{" +185216 "+`" +184192 "^m" +183552 "]r" +183424 ",?" +182784 "^b" +182016 "^|" +181888 "5$" +180992 "`6" +180992 ",~" +180736 "`|" +179840 ",+" +179584 "^r" +179584 "x^" +179328 ":^" +179200 ">~" +178176 "z?" +178048 "*~" +177920 ")j" +177792 "6#" +177408 "{?" +176896 "]f" +176768 "+*" +176512 "&y" +176128 "\\;" +175872 "_&" +175616 "&\r" +174848 "j>" +173696 ":}" +173568 "z|" +173568 "z>" +172288 "]_" +172032 "`8" +171776 "+}" +170624 "f^" +169856 "d~" +168576 "!?" +168576 "`&" +167552 "r^" +166912 "}o" +166784 "t^" +166400 "%:" +165760 "}u" +164224 "<#" +164096 "~g" +163712 "#z" +163456 "@9" +163200 ")x" +162816 ";>" +162816 "=]" +162048 "8!" +161920 "%&" +161792 "\\#" +161664 "\\\r" +161536 "^)" +161408 ":>" +161152 "x#" +160768 "[~" +160384 "`!" +160256 "u\t" +160128 "#@" +160000 "6!" +159104 "t~" +158976 "<:" +158720 "j\r" +158592 ".!" +157824 ")k" +157696 "k#" +155904 "^e" +155904 "\\@" +155648 "7[" +155648 "8#" +154880 "i#" +154880 "9#" +154112 "\t%" +153216 "|`" +153216 "n~" +152832 "}k" +152448 "7#" +152064 "<." +150272 "\t~" +149760 "_+" +149376 "?j" +149248 "^<" +148864 "j|" +148352 "~o" +148224 "$[" +147968 "6$" +147712 "?#" +147712 "`9" +147456 "]o" +147072 "%!" +145664 "%z" +144640 "q\r" +144512 "}1" +144384 "=}" +144256 "~h" +143872 "&*" +143744 "`7" +143104 "2~" +142336 "z%" +142208 "$&" +142080 "&/" +142080 "%6" +141952 "=|" +141440 "|)" +140416 "^_" +140416 "$`" +140160 "~u" +136960 "@^" +136960 "\\>" +136448 "!&" +135936 "$=" +135552 "+&" +135296 "`>" +135296 "]u" +134912 "q{" +134784 "9[" +134272 "j?" +132864 ")@" +132864 "j@" +132480 "]%" +131840 "^f" +131712 "\\4" +131200 "7!" +130816 "~w" +130560 "u$" +129792 "9!" +129280 "8$" +128384 "l~" +128384 "@}" +128128 "q@" +127616 "j`" +126592 "@)" +126080 "]n" +125952 "j*" +125568 "1^" +124672 "%j" +124672 ")3" +124416 "!z" +124160 "<|" +123520 "z\t" +123392 "^v" +122496 "~v" +122240 ";@" +121344 "j$" +121216 "v!" +121088 "<9" +120960 "|," +120960 "$}" +120192 "q*" +120192 "^l" +119808 ",>" +119424 "<*" +117888 "[=" +117376 "r~" +116608 "q$" +115456 "`^" +114944 "q\t" +114688 "!y" +114560 "|#" +114560 "a~" +114432 "\u{1b}[" +113536 "8{" +112768 "}2" +112512 "<@" +112512 "m~" +112512 "^o" +112384 "w#" +112128 ",;" +112128 "{+" +112128 "%^" +111744 "+>" +111104 "&0" +110976 "%|" +110208 "i^" +109568 "\\5" +108672 "9$" +108288 "]l" +107520 "7$" +107392 "~{" +107136 "z!" +107008 "^x" +106752 "y^" +106752 "\\!" +106624 "5~" +106368 "\\9" +106240 ".^" +106112 "3~" +105728 "_@" +104960 "^;" +104960 "+\t" +103936 "7{" +103680 ">^" +103168 "^g" +103168 "\u{c}\n" +102912 "\\6" +102912 "%[" +102528 "$]" +101760 "c^" +101376 "l^" +101376 "#?" +100992 "9{" +100480 "]#" +100096 "^w" +99968 "@%" +99712 "|;" +99456 "^u" +99328 "]g" +99328 "|~" +98304 "#|" +98176 "z$" +97920 "@:" +97152 "4~" +96512 "#&" +96384 ".~" +95872 "]h" +95744 "]@" +95488 "\\8" +94464 "|%" +93440 ")4" +92032 "\\7" +91392 "!~" +91136 ")q" +91008 "^k" +90368 "^:" +90112 "|]" +89856 "\r " +89856 "b^" +89344 ")~" +89088 "\\=" +88832 "]1" +88576 "j\t" +87552 "p^" +87296 "!{" +87040 "6~" +86912 "#;" +86656 "g^" +86656 "^*" +86016 "!#" +85888 "?y" +85760 "#`" +85248 "?3" +85120 ")9" +85120 "y~" +84736 "g~" +84224 "%k" +83840 "}0" +82560 "$^" +82304 "@," +82304 "~<" +82176 "3^" +81792 " \u{1b}" +81024 "\\^" +80896 "_?" +80640 "}~" +80384 "^@" +80256 "~x" +79872 ")5" +79360 "~]" +79104 ")y" +79104 "]v" +78336 "k^" +78208 "?4" +77952 "h^" +77824 "}j" +77824 "~." +77440 "8~" +76800 "~*" +76544 "]2" +75392 "]w" +75264 "9~" +74880 "]^" +74880 "@`" +74496 ")6" +73088 "&<" +72960 "7~" +72832 "o~" +72704 "$>" +72320 "\r<" +72192 "?z" +72064 "5^" +71808 "?^" +71168 "}y" +70784 "{=" +70528 "^`" +70400 "@!" +69888 ")8" +69888 "^," +69888 "&|" +69760 "|+" +69120 "~q" +68992 "{>" +68736 "~," +68480 "~j" +68224 "4^" +68096 "c~" +67968 ",|" +67200 "|@" +66944 "v^" +66816 "%~" +66560 "u^" +66304 "[|" +66176 "~k" +66048 "#^" +65920 "|\t" +65792 "j!" +65408 "?%" +65024 ")7" +64896 "<]" +64640 "i~" +64384 "q#" +64000 "h~" +63872 "%\t" +63616 "~-" +63488 "{," +63488 "^j" +62976 "p~" +62848 "}5" +62080 "o^" +61824 "z{" +61696 ",=" +61056 "u#" +60160 "^}" +59776 "&`" +59520 "!%" +59520 "}3" +58880 "j{" +58496 "#~" +58496 "^~" +57984 "~`" +57088 "}z" +56832 "z^" +56704 "<," +56448 "}q" +56320 "@=" +56064 "}4" +55936 "?@" +55936 "~:" +55936 "?6" +55808 "[>" +55552 "@;" +55296 "z#" +55040 "]0" +54656 "f~" +54272 "_\t" +54272 "_!" +53888 "@&" +53632 "?5" +53504 "w^" +53248 "&{" +53120 "6^" +52864 "~#" +52864 "k~" +52608 "b~" +52352 "<`" +52352 "?\t" +51968 "%?" +51840 "~@" +51712 "x~" +51456 "m\u{1b}" +51328 "<~" +51200 "]k" +50944 "=^" +50816 "7^" +50432 "^%" +49280 "8^" +49280 "(]" +49152 "-~" +49152 "~y" +49152 "<\r" +49024 "@>" +47872 "$+" +47616 "9^" +47616 "@?" +47616 "u~" +47232 "\\~" +45824 "?8" +45440 "{^" +44928 "~)" +44544 "*^" +44416 "_^" +44160 "<)" +44032 "^y" +43776 "]j" +43648 "!|" +43648 "w~" +43136 "?7" +42752 "?9" +42496 "^q" +42112 "[)" +41856 "\rc" +41344 "&+" +41216 "q^" +40960 ",^" +40960 "!>" +40960 "[;" +40832 "j^" +40832 "~!" +40192 "<+" +40192 "~z" +40192 "~[" +40064 "&%" +39680 "^]" +39424 "]3" +39168 "!\t" +38784 "~_" +38784 "{~" +38528 "_~" +38016 "\rs" +38016 "^z" +37760 "^+" +37504 "&\t" +37376 "^?" +37120 "~%" +36736 "{;" +36736 "]x" +36608 "~^" +36480 "\ri" +36352 "~|" +35968 "{]" +35584 "q~" +35456 "]q" +35456 "\u{1a}\n" +35456 "]y" +35328 "!^" +35072 "\rt" +34560 "-^" +34176 "}6" +34176 "e\u{1b}" +34048 "@\r" +33920 "s\u{1b}" +33792 "@~" +33664 "\rf" +33536 "|?" +33536 "\rp" +33024 "\rr" +32896 "\re" +32640 "v~" +32640 "]4" +32512 "+!" +32384 "&;" +32128 ";^" +32000 "\ro" +31360 "@|" +31360 "+~" +31360 "j#" +31232 ";~" +31104 "(}" +30976 "}8" +30720 "]z" +30464 "\r-" +29952 "]8" +29824 "[\t" +29696 "[}" +29056 "\r\t" +28800 "!+" +28544 "]~" +28416 "<}" +27648 "\rl" +27648 "?+" +27392 "&?" +27136 "~+" +26880 "\rd" +26880 "n\u{1b}" +26752 "]5" +26752 "~}" +26624 "t\u{1b}" +26624 ".\u{1b}" +26496 "\t^" +26240 "$~" +26240 "]7" +26112 "{)" +26112 "$\t" +25856 ")\u{1b}" +24960 "~&" +24960 "\r*" +24832 "~\r" +24704 "\rw" +24192 "^!" +24064 "z~" +23936 "}7" +23424 "d\u{1b}" +23424 "]6" +23296 "+^" +22912 "?~" +22784 "&~" +22528 "r\u{1b}" +22528 "}9" +21632 "\rn" +21504 "\rq" +21504 "0\u{1b}" +21376 "&@" +20992 "\rv" +20736 "@\t" +20608 "1\u{1b}" +20480 "j~" +20096 "<;" +19840 ":\u{1b}" +19840 "k\u{1b}" +19584 "\rg" +19456 "l\u{1b}" +19328 "\0\n" +18944 "\rm" +18560 "\r1" +18432 "~?" +18304 "&}" +18176 "o\u{1b}" +17664 "&^" +17536 "\u{c} " +17536 "\rb" +17536 "\\\t" +17280 "]\u{1b}" +17152 "2\u{1b}" +16512 "~;" +16384 "a\u{1b}" +16256 "]9" +16256 "`\t" +16128 "=\u{1b}" +16000 "\ra" +15872 "^\r" +15616 "g\u{1b}" +15488 "\"\u{1b}" +15232 "4\u{1b}" +14592 "y\u{1b}" +14336 "\r/" +13952 "3\u{1b}" +13568 "h\u{1b}" +13440 "\u{c}a" +13440 "<^" +13056 ">\u{1b}" +12800 "[\u{1b}" +12800 "p\u{1b}" +12800 "5\u{1b}" +12544 "c\u{1b}" +12288 "8\u{1b}" +12032 "9\u{1b}" +11904 "6\u{1b}" +11648 "\ru" +11392 "b\u{1b}" +10880 "7\u{1b}" +10368 "\r{" +10240 "\r}" +9728 "\u{c}2" +9216 "<\t" +9216 "\rh" +9088 "\r2" +9088 "\r[" +8960 "(\u{1b}" +8960 "\u{c}t" +8832 "-\u{1b}" +8832 "'\u{1b}" +8704 "\r\u{1b}" +8576 "f\u{1b}" +8064 "\u{c}c" +7808 "\r\"" +7680 "x\u{1b}" +7552 "\u{c}3" +7296 " \0" +6912 "\u{7f}\"" +6912 "\u{c}s" +6784 "^\t" +6656 "i\u{1b}" +6528 "\0\r" +6528 "\"\u{7f}" +6400 "/\u{1b}" +6400 "\u{c}1" +6400 "\u{c}4" +6272 "\r#" +6272 "v\u{1b}" +6144 "~\t" +6144 "\r(" +6144 "\r3" +6144 "}\u{1b}" +5760 "!\u{1b}" +5760 "\u{c}p" +5632 "\u{c}i" +5504 "\r0" +5504 "\u{1b}(" +5376 "\r4" +5376 "j\u{1b}" +5376 "\rj" +5376 "\0 " +5248 "\u{c}\r" +5248 "\r5" +5248 "\u{c}d" +5248 "w\u{1b}" +5120 "u\u{1b}" +4992 "\u{c}r" +4992 "~\u{1b}" +4864 "*\u{1b}" +4864 "\u{c}5" +4864 ",\u{1b}" +4736 "|\u{1b}" +4608 "\u{c}m" +4608 "\r6" +4608 "\u{c}f" +4608 " \u{8}" +4480 "z\u{1b}" +4480 "\u{c}6" +4480 "#\u{1b}" +4352 "\u{7f}<" +4352 "\r7" +4224 "\u{c}e" +4224 "e\0" +4096 "\r8" +3968 "\u{c}b" +3840 " \u{3}" +3840 ";\u{1b}" +3840 "\u{1b}$" +3840 "+\u{1b}" +3840 "\r9" +3712 "n\u{4}" +3712 "\u{c}o" +3712 " \u{c}" +3456 "q\u{1b}" +3456 "\0s" +3456 "\u{c}w" +3456 "^\u{1b}" +3456 "\u{4}l" +3456 "\"\0" +3456 "\r," +3328 "\u{c}8" +3328 "\0r" +3328 "\u{c}7" +3200 "\u{1b}]" +3200 "\0e" +3200 "\u{c}l" +3200 "\r." +3200 ">\0" +3200 "{\u{1b}" +3200 "\u{c}<" +3200 "t\0" +3072 "a\0" +3072 "\0a" +3072 " \u{1}" +3072 "\0t" +3072 "\u{c}n" +3072 "_\u{1b}" +3072 "\u{1b}c" +2944 "\u{8}\u{8}" +2944 "\u{1b}e" +2944 "\r@" +2944 "1\u{7f}" +2944 "3\u{7f}" +2816 "\r)" +2816 "?\u{1b}" +2816 "0\u{2}" +2816 "\0c" +2816 "r\0" +2816 "\t\u{1b}" +2688 "\u{c}g" +2688 "e\u{2}" +2688 "\r&" +2688 "\u{8} " +2688 "\r\0" +2688 "\u{c}h" +2688 "#\0" +2688 "\0i" +2688 "2\u{7f}" +2688 "4\u{7f}" +2688 "5\u{7f}" +2688 "6\u{7f}" +2688 "7\u{7f}" +2560 "\u{3}\n" +2560 "n\0" +2560 "\u{c}9" +2560 "\0o" +2560 "\u{2}0" +2560 "0\u{7f}" +2560 "9\u{7f}" +2432 "e\u{7f}" +2432 "\u{1} " +2432 "`\u{1b}" +2432 "\0p" +2432 "n\u{2}" +2432 "l\0" +2432 "*\0" +2432 "<\u{1b}" +2432 "\r$" +2432 "s\0" +2432 "8\u{7f}" +2304 "\u{1}\n" +2304 "\u{c}u" +2304 "r\u{2}" +2304 "\u{1b}p" +2304 "\u{c}\u{c}" +2304 "i\0" +2304 " \u{2}" +2304 "\0l" +2304 "t\u{7f}" +2304 "o\0" +2304 "\0n" +2304 "n\u{7f}" +2304 "r\u{7f}" +2304 "s\u{7f}" +2176 "\u{7f}s" +2176 "s\u{2}" +2176 "\u{2}2" +2176 "0\u{3}" +2176 " \u{7f}" +2176 "\0d" +2176 "t\u{2}" +2176 "\0m" +2176 "d\u{7f}" +2048 "\u{f} " +2048 "\u{c}v" +2048 ">\u{c}" +2048 "c\0" +2048 "\u{7f}o" +2048 "\u{7f}t" +2048 "\u{7f}m" +2048 "\u{7f}e" +2048 "c\u{7f}" +2048 "\u{2} " +2048 "4\0" +2048 "l\u{7f}" +2048 "\r\\" +2048 "p\u{7f}" +2048 "d\u{2}" +2048 "%\u{1b}" +1920 "\u{7f}i" +1920 "p\0" +1920 "\u{7f}c" +1920 "\0f" +1920 "\u{7f}p" +1920 "\u{7f}a" +1920 "&\u{1b}" +1920 "\0-" +1920 "\u{7f}b" +1920 "\u{7f}\u{7f}" +1920 " \u{7}" +1920 "\ry" +1920 "\u{2}c" +1920 "d\0" +1920 "\u{2}1" +1920 "\u{7f}d" +1920 "y\u{2}" +1920 "\u{7f}n" +1920 "\u{7f}u" +1920 "m\0" +1920 "a\u{7f}" +1920 " \u{b}" +1920 "f\u{7f}" +1920 "g\u{7f}" +1920 "m\u{7f}" +1920 "o\u{7f}" +1920 "\r'" +1920 "\r]" +1920 "\u{c}(" +1920 "y\u{7f}" +1792 ">\u{17}" +1792 "\u{7}\u{1b}" +1792 "\u{7f} " +1792 "p\u{2}" +1792 "\u{7f}y" +1792 "\"\u{7}" +1792 "o\u{2}" +1792 "\u{3}1" +1792 "\u{18}<" +1792 "\u{7}\"" +1792 "\u{8}/" +1792 "\u{7f}r" +1792 "\u{7f}f" +1792 "\0b" +1792 "b\u{7f}" +1792 "2\u{3}" +1792 "\u{10}\n" +1792 "h\u{7f}" +1792 "i\u{7f}" +1792 "@\u{1b}" +1792 "3\u{18}" +1792 "\0u" +1792 "\\\u{1b}" +1792 "\u{2}\u{2}" +1792 "v\u{7f}" +1792 "w\u{7f}" +1792 "x\u{7f}" +1664 "a\u{2}" +1664 "\u{7f}j" +1664 "\u{7f}l" +1664 "\u{7f}\\" +1664 "g\u{2}" +1664 "\u{7f}h" +1664 "\u{7f}q" +1664 "\u{7f}v" +1664 "\u{7f}g" +1664 "\rk" +1664 "\u{8}o" +1664 "l\u{2}" +1664 "-\0" +1664 "2\u{2}" +1664 "u\u{7f}" +1664 "\u{17}<" +1664 "\u{7f}x" +1664 "$\u{1b}" +1664 "1\u{2}" +1536 "q\u{7f}" +1536 "z\u{7f}" +1536 "~\u{7f}" +1536 "\u{c}[" +1536 "1\u{3}" +1536 "0\0" +1536 "\u{3} " +1536 "\u{4} " +1536 "\u{1}\"" +1536 "/\u{8}" +1536 "\u{7f}k" +1536 "u\0" +1536 "y\0" +1536 "\u{7}\n" +1536 "\u{8}\n" +1536 "\0*" +1536 "\u{c}*" +1536 "4\u{2}" +1536 "\u{7f}w" +1536 "\u{3}2" +1536 "\u{2}4" +1536 "j\u{7f}" +1536 "k\u{7f}" +1408 "'\u{1}" +1408 "6\u{3}" +1408 "9\u{3}" +1408 "\u{8}\\" +1408 "\u{1b}\\" +1408 "\0_" +1408 "\r;" +1408 "\0g" +1408 "\0h" +1408 "\r%" +1408 ";\u{7}" +1408 "e\u{7}" +1408 "\u{1b}&" +1408 "-\u{8}" +1408 "\\\u{8}" +1408 "\u{1}'" +1408 "f\0" +1408 "g\0" +1408 "\u{2}m" +1408 "\u{3}6" +1408 "\u{1a}\u{1a}" +1408 "\u{2}s" +1408 "\u{2}t" +1408 "3\u{2}" +1408 "\u{3}7" +1408 "5\u{2}" +1408 "m\u{2}" +1408 "\01" +1408 "\rz" +1408 "\u{7f}z" +1408 "\u{2}3" +1408 "\u{3}3" +1408 "3\u{3}" +1408 "\u{3}4" +1408 "\u{2}5" +1408 "\u{3}5" +1408 "4\u{3}" +1408 "5\u{3}" +1408 "7\u{3}" +1280 "i\u{2}" +1280 "\u{11}\n" +1280 "\u{13}\n" +1280 "\u{15}\n" +1280 "\u{16} " +1280 "\u{2}p" +1280 "s\u{3}" +1280 "\u{7}-" +1280 "\u{8}-" +1280 " \u{4}" +1280 ",\u{2}" +1280 "/\u{2}" +1280 "7\u{4}" +1280 "0\u{8}" +1280 "\u{c}k" +1280 "8\u{3}" +1280 "\r?" +1280 " \u{f}" +1280 "\0\"" +1280 "\0y" +1280 " \u{10}" +1280 "|\u{8}" +1280 "\u{3}8" +1280 "b\0" +1280 "\u{3}a" +1280 " \u{15}" +1280 "\u{8}|" +1280 "h\0" +1280 "\u{3}9" +1280 "\u{7f}4" +1280 "\r=" +1280 "\r>" +1280 "\u{1}\u{1}" +1280 "\u{2}\n" +1280 "\u{1}\0" +1280 "\u{10} " +1280 "\u{2}d" +1152 "\u{7f}2" +1152 "\u{17} " +1152 "6\u{2}" +1152 "7\u{2}" +1152 "8\u{2}" +1152 "9\u{2}" +1152 "b\u{2}" +1152 "h\u{2}" +1152 "\u{b}\n" +1152 "\0<" +1152 "\0v" +1152 "\u{2}/" +1152 "\0w" +1152 "\00" +1152 "\u{2}8" +1152 "\rx" +1152 "\u{1a} " +1152 "7\u{f}" +1152 "\u{c}j" +1152 " \u{13}" +1152 "\u{e} " +1152 "e\u{1}" +1152 "\u{7f}1" +1152 "\02" +1152 "\u{7f}]" +1152 " \u{1a}" +1152 "\u{2}6" +1152 " \u{5}" +1152 "\0," +1152 "k\0" +1152 "\r|" +1152 "x\u{2}" +1152 "\u{2}e" +1152 "\u{c}-" +1152 "\u{8}\r" +1152 "x\0" +1152 "\"\u{2}" +1152 "\0k" +1152 "\u{13} " +1152 "\r!" +1152 "0\u{1}" +1024 "\u{1b}*" +1024 "\u{2}i" +1024 " \u{14}" +1024 "\0j" +1024 " \u{1c}" +1024 "\u{3}<" +1024 "\0(" +1024 "1\u{1e}" +1024 "v\0" +1024 "w\0" +1024 "\u{2}a" +1024 "\0\u{1}" +1024 "\"\u{1}" +1024 "v\u{2}" +1024 "\u{12}\n" +1024 "\u{5} " +1024 "\u{7} " +1024 "\u{19}\n" +1024 "\u{2}7" +1024 "\u{12} " +1024 "}\u{7f}" +1024 "\0\u{2}" +1024 "\u{1}\u{2}" +1024 "\u{12}," +1024 "|\u{7f}" +1024 "e\u{c}" +1024 "\u{3}\r" +1024 ".\u{2}" +1024 "1\0" +1024 "\u{2}9" +1024 "0\u{4}" +1024 "\u{c}." +1024 "c\u{2}" +1024 "f\u{2}" +1024 "k\u{2}" +1024 "\u{7}c" +1024 " \u{e}" +1024 "\u{10}c" +1024 "\u{8}w" +1024 "2\0" +1024 ")\0" +1024 "\u{c}\"" +1024 "\u{7f}}" +1024 "$\u{12}" +1024 " \u{6}" +1024 " \u{16}" +1024 "\u{7f}~" +1024 "'\u{7f}" +1024 ".\u{7f}" +1024 "?\u{7f}" +1024 "\\\u{7f}" +1024 "\u{2}h" +1024 "{\u{7f}" +1024 "0\u{c}" +896 "\u{3}t" +896 "\u{7f}[" +896 "\u{2}n" +896 "\u{2}\\" +896 "7\u{17}" +896 "\u{1b}\n" +896 "\u{1f}\n" +896 "\u{b} " +896 "1\u{1}" +896 "2\u{1}" +896 "\u{3}o" +896 "d\u{1}" +896 "n\u{1}" +896 "s\u{1}" +896 "t\u{1}" +896 "\u{11} " +896 "\0'" +896 "7\u{16}" +896 "\u{3}\u{2}" +896 "\u{7f}\n" +896 "\u{b}\u{b}" +896 "\u{3}p" +896 "\u{c}q" +896 "\u{14} " +896 "1\u{c}" +896 "\u{3}s" +896 "\u{7}s" +896 "\u{1b}s" +896 "s\u{c}" +896 "\u{7f}?" +896 "\0\u{3}" +896 "\u{2}b" +896 "\u{7f}@" +896 "\u{b}t" +896 "n\u{3}" +896 "o\u{3}" +896 "\u{1}i" +896 "\u{3}\u{4}" +896 "h\u{7}" +896 "\0." +896 "*\u{1e}" +896 "r\u{7}" +896 "\u{7f}_" +896 "\u{3}c" +896 "'\0" +896 "\u{2}\u{3}" +896 "\u{c}/" +896 "\u{1e}/" +896 "7\u{e}" +896 "\u{3}\u{3}" +896 "e\u{4}" +896 "\u{c}0" +896 "\u{f}0" +896 "\0x" +896 "\u{2}x" +896 "\u{3}d" +896 "\u{1}1" +896 "\u{8}1" +896 ".\0" +896 "\u{2}\"" +896 "\u{1}2" +896 "\u{3}\"" +896 "1\u{7}" +896 "}\0" +896 "\u{7f}5" +896 " \u{11}" +896 "\u{7f}{" +896 "\0#" +896 "\u{7f}|" +896 "\u{7f}3" +896 " \u{12}" +896 "\u{7f}7" +896 "\r~" +896 "\u{2}\0" +896 "\u{7}a" +896 "\u{8}a" +896 "@\u{7f}" +896 "[\u{7f}" +896 "\u{7f}6" +896 "]\u{7f}" +896 "_\u{7f}" +896 ",\0" +768 "l\u{c}" +768 "\"\u{4}" +768 "\u{2}r" +768 "\u{3}r" +768 ":\u{2}" +768 "8\u{1}" +768 "\u{1b}u" +768 "\u{1}c" +768 "j\0" +768 "\u{2}," +768 "s\u{8}" +768 "\u{4}c" +768 "\r`" +768 "\u{14}\0" +768 "\"\u{c}" +768 " \u{1f}" +768 "s\u{7}" +768 "\"\u{e}" +768 "\0/" +768 "*\u{c}" +768 ".\u{c}" +768 "/\u{c}" +768 "\08" +768 "]\u{8}" +768 "\0\u{8}" +768 "2\u{c}" +768 "3\u{c}" +768 "\u{1}s" +768 "\u{7f}`" +768 "\u{15} " +768 "\u{14}\n" +768 "t\u{4}" +768 "\u{4}\u{3}" +768 "\u{e}n" +768 "m\u{f}" +768 "\u{7f}0" +768 "\u{4}d" +768 "d\u{c}" +768 "\u{8}d" +768 "\u{c}y" +768 "\u{7f}^" +768 "\u{15}1" +768 "3\0" +768 "\u{c}z" +768 "\t\0" +768 "0\u{10}" +768 "\u{10}'" +768 "\u{1}\\" +768 "\r\u{c}" +768 "2\u{15}" +768 "\u{4}2" +768 "\u{4}\"" +768 "t\u{c}" +768 "z\u{c}" +768 "\03" +768 "a\u{3}" +768 "\0\u{16}" +768 "r\u{1}" +768 "\u{1}p" +768 "\u{8}e" +768 "_\0" +768 "\u{1b}|" +768 "\u{7f}8" +768 "\u{1d} " +768 "\04" +768 "\u{1}#" +768 "\u{3}f" +768 "\r:" +768 "(\u{7}" +768 "\u{1a}\r" +768 "u\u{2}" +768 "\u{3}\0" +768 "\u{2}\u{1}" +768 "\u{7}p" +768 ")\u{2}" +768 "\u{4}\n" +768 ".\u{b}" +768 ";\u{7f}" +768 "=\u{7f}" +768 ">\u{7f}" +768 "e\u{3}" +768 "\u{4}n" +768 "\u{1b}\u{1b}" +768 "\u{2}\u{4}" +768 "e\u{b}" +768 "^\u{7f}" +768 "\u{6}\u{4}" +768 "`\u{7f}" +768 "\u{7f}9" +768 " \u{17}" +768 "\u{3}h" +768 "5\0" +768 "\u{f}\n" +768 "\r_" +768 "n\u{c}" +640 "\u{7f}>" +640 "1\u{15}" +640 "3\u{15}" +640 "\u{6} " +640 "5\u{15}" +640 "\09" +640 "\u{1}b" +640 "\u{19} " +640 "\u{1b} " +640 "\u{1c} " +640 "\u{1f} " +640 "\u{15}9" +640 "r\u{3}" +640 "t\u{3}" +640 "w\u{3}" +640 "\0\u{4}" +640 "\u{4}\u{4}" +640 "w\u{2}" +640 "1\u{4}" +640 "\u{8}c" +640 "2\u{4}" +640 "\u{b}c" +640 "\0:" +640 "4\u{4}" +640 "5\u{4}" +640 "6\u{4}" +640 "9\u{4}" +640 "d\u{4}" +640 "h\u{4}" +640 "o\u{4}" +640 "r\u{4}" +640 "s\u{4}" +640 "\u{1}d" +640 "\u{7}d" +640 "\u{1b}d" +640 "\u{4}\u{5}" +640 "\u{3}e" +640 "\u{7}e" +640 "\u{b}e" +640 "\u{c}#" +640 "\u{f}#" +640 "\u{2}f" +640 "\07" +640 "\u{5}\u{6}" +640 "\0$" +640 "\u{c}$" +640 "\u{7}\u{7}" +640 "\u{b}<" +640 "6\0" +640 "7\0" +640 "\u{c}%" +640 "\u{1b}%" +640 "\u{3}i" +640 "\u{7}i" +640 "\u{8}i" +640 "\u{b}i" +640 " \u{18}" +640 "8\0" +640 ":\0" +640 "\"\u{8}" +640 "\u{1b}k" +640 "[\u{8}" +640 "_\u{8}" +640 "e\u{8}" +640 "\u{4}'" +640 "n\u{8}" +640 "t\u{8}" +640 "y\u{8}" +640 "\0\t" +640 "\u{3}l" +640 "\u{8}l" +640 "\u{8}\t" +640 ";\0" +640 "\u{c}\0" +640 "\u{4}\0" +640 "\u{7f}'" +640 "\u{2}(" +640 "\u{10}\0" +640 "\u{e}(" +640 "\u{3}m" +640 "\u{1b}m" +640 "z\0" +640 "#\u{1}" +640 "\u{7f}(" +640 "\0)" +640 "\u{3}n" +640 "\u{7}n" +640 ")\u{1}" +640 "\u{15}7" +640 "4\u{1}" +640 "6\u{1}" +640 "\u{1}\u{3}" +640 ">\u{1}" +640 "a\u{1}" +640 "c\u{1}" +640 "\u{2}o" +640 "\u{f}a" +640 "l\u{1}" +640 "o\u{1}" +640 "y\u{1}" +640 "\06" +640 "\u{8}p" +640 "\u{6}\u{2}" +640 ")\u{b}" +640 "\0q" +640 "s\u{b}" +640 "\0\u{c}" +640 "\u{7}r" +640 "\u{8}r" +640 "\"\u{3}" +640 ")\u{c}" +640 "/\0" +640 "7\u{c}" +640 "a\u{c}" +640 "\u{8}s" +640 "c\u{c}" +640 "\u{b}s" +640 "g\u{c}" +640 "r\u{c}" +640 "w\u{c}" +640 "y\u{c}" +640 "\u{1}\r" +640 "\u{3}\\" +640 "\u{4}\\" +640 "\u{7}\r" +640 "\u{e}\r" +640 "\u{f}\r" +640 "\u{10}\r" +640 "\u{4}t" +640 "\u{7}t" +640 "\u{8}t" +640 "\u{1b}t" +640 "(\u{2}" +640 "\u{e}\\" +640 "\u{5}\0" +640 "\u{3}u" +640 "\u{6}\0" +640 "\u{1d}\u{1d}" +640 " \u{1d}" +640 "\u{7f}." +640 "\u{15}8" +640 "0\u{e}" +640 "\u{3}\u{f}" +640 "(\0" +640 "\u{3}0" +640 "\u{8}0" +640 "\u{1b}0" +640 "\u{c}x" +640 "'\u{f}" +640 "1\u{f}" +640 "e\u{1d}" +640 "r\u{f}" +640 "\u{4}1" +640 "n\u{1d}" +640 "\u{4}y" +640 "\0\u{10}" +640 "\0z" +640 ")\u{10}" +640 "\u{15}2" +640 "\u{1}3" +640 " \u{1e}" +640 "\u{15}3" +640 "\u{1}4" +640 "\u{15}4" +640 "\u{8}\0" +640 "d\u{3}" +640 "\05" +640 "\u{1}5" +640 "\u{15}5" +640 "(\u{7f}" +640 "/\u{7f}" +640 ":\u{7f}" +640 "\u{1}a" +640 "\u{15}6" +640 "0\u{15}" +640 "\u{b}a" +640 "g\u{1}" +512 "\u{f}3" +512 "\u{2}l" +512 "7\u{15}" +512 "\u{7}l" +512 "\u{7f}:" +512 "m\u{3}" +512 "\0;" +512 "\u{c}\t" +512 "=\0" +512 "\u{b}\0" +512 "?\0" +512 "@\0" +512 "[\0" +512 "\u{b}d" +512 "\u{17}d" +512 "\u{e}\0" +512 "8\u{15}" +512 " \u{19}" +512 "\u{1}(" +512 "\0\u{5}" +512 "\u{4}(" +512 "\u{b}(" +512 "\u{1}\u{5}" +512 "\u{3}\u{5}" +512 "\u{1}m" +512 "\0?" +512 "y\u{3}" +512 "\u{7}m" +512 "\u{8}m" +512 "\u{b}m" +512 "\u{f}m" +512 "\u{17}m" +512 "\u{10};" +512 "\u{1}?" +512 "q\0" +512 "\u{13}\u{14}" +512 "\u{16}\u{17}" +512 "\0\u{1a}" +512 "\u{14}\u{14}" +512 "\u{3}\u{1}" +512 "\u{4}\u{1}" +512 "\u{5}\u{1}" +512 "\u{6}\u{1}" +512 "\u{16}\u{1}" +512 "\u{5}\n" +512 "\u{6}\n" +512 ".\u{1a}" +512 "\u{1a}\0" +512 "0\u{1a}" +512 "\u{5}\"" +512 "\u{e}\n" +512 "\0@" +512 "\u{2}@" +512 "\u{8}\"" +512 "\u{10}\"" +512 "\u{1}n" +512 "\u{1b}\"" +512 "\u{1}e" +512 "\u{8}n" +512 "\u{1d}n" +512 "\u{7})" +512 "\u{10})" +512 "\u{1b})" +512 "\u{16}\n" +512 "\u{18}\n" +512 "\u{1c}\n" +512 "\u{1}\u{1b}" +512 "(\u{1}" +512 "9\u{15}" +512 ".\u{1}" +512 "\u{1}\u{4}" +512 "3\u{1}" +512 "g\u{3}" +512 "5\u{1}" +512 "\u{8}#" +512 "\u{5}\u{4}" +512 "9\u{1}" +512 ";\u{1}" +512 "\u{7}\u{4}" +512 "\u{1}f" +512 "b\u{1}" +512 "\u{8}\u{4}" +512 "\u{12}\u{4}" +512 "\u{7}o" +512 "\u{15}\u{1b}" +512 "\u{1b}7" +512 "f\u{1}" +512 "\u{b}o" +512 "\u{7}f" +512 "h\u{1}" +512 "\u{1b}o" +512 "i\u{1}" +512 "k\u{1}" +512 "\u{8}f" +512 "m\u{1}" +512 "\0[" +512 "\u{b}f" +512 "p\u{1}" +512 "\u{8}[" +512 "x\u{1}" +512 "\u{1b}f" +512 "\u{1d}f" +512 "(\u{14}" +512 "\0\u{b}" +512 "\u{4}p" +512 "\0\u{6}" +512 "\u{b}p" +512 "\u{14}p" +512 "\u{4}\u{6}" +512 "\u{1e}\u{4}" +512 "\0+" +512 "\u{6}\u{6}" +512 "a\u{b}" +512 "d\u{b}" +512 "n\u{b}" +512 "r\u{b}" +512 "(\u{6}" +512 "t\u{b}" +512 "y\u{b}" +512 "\u{1}g" +512 "\u{b}\u{c}" +512 "\u{8}\u{2}" +512 "\u{1}r" +512 "\u{2}g" +512 "\u{8}g" +512 "\u{b}r" +512 "\u{1b}g" +512 "\u{1b}r" +512 "\u{1}," +512 "'\u{3}" +512 "\u{c}," +512 "(\u{3}" +512 ")\u{3}" +512 "#\u{c}" +512 "\u{7f}#" +512 ".\u{3}" +512 "\u{1}9" +512 "4\u{c}" +512 "5\u{c}" +512 "6\u{c}" +512 "%\u{4}" +512 "8\u{c}" +512 "9\u{c}" +512 "\u{1c}\0" +512 "n\u{6}" +512 "e\u{14}" +512 "n\u{14}" +512 "\u{4}s" +512 "\u{4}h" +512 "\u{7}h" +512 "t\u{14}" +512 "\u{1b}h" +512 "\u{1}6" +512 "\u{19}s" +512 "\u{6}\u{7}" +512 "h\u{c}" +512 "i\u{c}" +512 "k\u{c}" +512 ">\u{3}" +512 "m\u{c}" +512 "o\u{c}" +512 "p\u{c}" +512 "'\u{4}" +512 "\u{13}\u{13}" +512 "e\u{1f}" +512 "4\u{15}" +512 "\0\\" +512 "\u{7f}," +512 "\u{1}8" +512 "\0\u{14}" +512 "\u{2}\r" +512 "\u{3}b" +512 "\u{4}b" +512 "\u{f}-" +512 "\u{1b}-" +512 "\0\u{18}" +512 ")\u{7}" +512 "3\u{4}" +512 "\u{4}i" +512 "\u{1}t" +512 "\u{6}\\" +512 "\u{7}b" +512 "\0!" +512 "\u{8}b" +512 "\u{10}t" +512 "\u{16}i" +512 "'\u{2}" +512 "a\u{7}" +512 "b\u{7}" +512 "d\u{7}" +512 "\u{1c}\u{1c}" +512 "\u{1}." +512 "\u{1}u" +512 "l\u{7}" +512 "\u{4}u" +512 "\u{7}u" +512 "\u{8}u" +512 "!\0" +512 "n\u{7}" +512 "\u{7}\0" +512 "\0\u{e}" +512 "\u{1c}\u{1d}" +512 "!\u{e}" +512 "\u{18} " +512 "\u{2}v" +512 "\u{3}v" +512 "t\u{7}" +512 "y\u{7}" +512 "\u{7f}%" +512 ".\u{e}" +512 "\u{7}\u{8}" +512 "0\u{1d}" +512 "?\u{e}" +512 "e\u{e}" +512 "1\u{1d}" +512 "\u{3}w" +512 "\u{f}w" +512 "\0\u{f}" +512 "\0=" +512 "\u{8}\u{f}" +512 "h\u{3}" +512 "\u{1}0" +512 "\u{e}\u{f}" +512 "\t\u{8}" +512 "\u{4}0" +512 "9\0" +512 "i\u{3}" +512 "\u{1d}0" +512 "\u{1e}0" +512 "8\u{1d}" +512 "8\u{4}" +512 "%\u{8}" +512 "(\u{f}" +512 "0\u{f}" +512 ")\u{8}" +512 "2\u{f}" +512 "3\u{f}" +512 "5\u{f}" +512 "6\u{f}" +512 "8\u{f}" +512 "9\u{f}" +512 "a\u{f}" +512 "\u{12}\u{13}" +512 "g\u{1d}" +512 "1\u{8}" +512 "2\u{8}" +512 ">\u{8}" +512 "\u{1b}=" +512 "\u{f}1" +512 "\u{1b}1" +512 "\u{1d}1" +512 "\u{1b}b" +512 "\u{10}\u{10}" +512 "\"\u{10}" +512 "a\u{4}" +512 "c\u{4}" +512 "\u{1b}8" +512 "\u{8}2" +512 "\u{e}2" +512 "\u{f}2" +512 "a\u{8}" +512 "\u{1d}2" +512 "\u{1b}{" +512 "\0\u{11}" +512 "\u{f}_" +512 "\u{10}\u{11}" +512 "\u{11}\u{11}" +512 "\u{1d}\u{1e}" +512 "c\u{8}" +512 "d\u{8}" +512 "\u{4}3" +512 "\u{1b}a" +512 "6\u{15}" +512 "\u{1b}}" +512 "\0\u{12}" +512 "\0`" +512 "\u{2}'" +512 "\u{13}\u{15}" +512 "\u{1e} " +512 "g\u{8}" +512 "\u{c}'" +512 "i\u{8}" +512 "\u{8}>" +512 "\u{14}\u{15}" +512 "\u{8}5" +512 "\u{f}5" +512 "l\u{8}" +512 "%\u{7f}" +512 "l\u{4}" +512 ")\u{7f}" +512 ",\u{7f}" +512 "-\u{7f}" +512 "p\u{8}" +512 "r\u{8}" +512 "<\u{7f}" +512 "\u{c}>" +512 "k\u{3}" +512 "\u{4}a" +512 "(\u{15}" +512 "l\u{3}" +512 "p\u{3}" +512 "\u{1}l" +512 "\0\u{13}" +512 ")\u{4}" +384 "\u{3}\u{12}" +384 "\u{10}l" +384 "\u{12}l" +384 "\u{1b}l" +384 "\u{e}\u{5}" +384 "\u{10}\u{5}" +384 "<\0" +384 "\u{7f}!" +384 "\u{15}\u{13}" +384 "\u{10}\t" +384 "y\u{15}" +384 "\u{10}\u{14}" +384 "\u{10}\u{17}" +384 "r\u{13}" +384 "\\\0" +384 "]\0" +384 "\u{18}\u{19}" +384 "`\0" +384 "f\u{3}" +384 "\u{19}\u{19}" +384 "\u{6}\"" +384 "\t\u{4}" +384 "\u{f}\0" +384 "\u{1a}\u{19}" +384 "\u{b}\"" +384 "\u{17}\u{17}" +384 "s\u{13}" +384 "\u{12}\"" +384 "\u{3}(" +384 "\u{13}\"" +384 "\u{8}(" +384 "d\u{19}" +384 "e\u{19}" +384 "\u{14}\"" +384 "\u{18}\"" +384 "n\u{19}" +384 "\u{1a}\"" +384 "\u{12}\u{14}" +384 "\u{b}\u{4}" +384 "\u{1c}\"" +384 "\u{1d}\"" +384 "\u{4}m" +384 "\u{1e}\"" +384 "\u{1f}\"" +384 "\u{11}\u{14}" +384 "\u{11}\0" +384 "\u{12}\0" +384 "\"\u{5}" +384 "\u{10}m" +384 "\u{11}m" +384 "\u{14}m" +384 "\u{c}\u{4}" +384 "(\u{17}" +384 "\u{1d}m" +384 "\u{13}\0" +384 "\r\u{4}" +384 "\u{15}\0" +384 "\u{4}e" +384 "\u{16}\0" +384 "\u{17}\0" +384 "\u{18}\0" +384 "\u{3}?" +384 "\u{4}?" +384 "r\u{19}" +384 "\u{5}e" +384 "t\u{19}" +384 "\u{6}e" +384 "|\0" +384 "y\u{19}" +384 "\u{e}\u{4}" +384 "\u{19}\u{1a}" +384 "*\u{17}" +384 "(\u{5}" +384 "\u{f}\u{4}" +384 "\u{10}e" +384 "\u{12}e" +384 "\u{7}\u{1}" +384 "\u{8}\u{1}" +384 "\t\u{1}" +384 "\u{19}\0" +384 "\u{e}\u{1}" +384 "\u{f}\u{1}" +384 "\u{10}\u{1}" +384 "\u{11}\u{1}" +384 "\u{12}\u{1}" +384 "\u{13}e" +384 "\u{18}\u{1}" +384 "\u{15}\u{14}" +384 "\"\u{1a}" +384 "'\u{1a}" +384 "\u{14}e" +384 "\u{16}e" +384 "(\u{1a}" +384 "\u{1a}e" +384 "\u{1c}e" +384 "\u{1d}e" +384 "3\u{1a}" +384 "\u{1f}e" +384 "a\u{5}" +384 "\u{f}7" +384 "d\u{5}" +384 "e\u{5}" +384 "n\u{5}" +384 "2\u{17}" +384 "\u{1})" +384 "\u{2})" +384 "\u{11}\u{13}" +384 ">\u{1a}" +384 "\u{10}\u{4}" +384 "d\u{1a}" +384 "\u{8}9" +384 "\u{13}\u{4}" +384 "\u{3})" +384 "\u{b}n" +384 "e\u{1a}" +384 "\u{10}n" +384 "\u{12}n" +384 "\u{13}n" +384 "\u{1a}n" +384 "\u{1b}n" +384 "\u{1c}n" +384 "\u{10}#" +384 "\u{1f}n" +384 "\u{14}\u{4}" +384 "i\u{1a}" +384 "n\u{1a}" +384 "r\u{1a}" +384 "\u{f})" +384 "\u{15}\u{4}" +384 "\u{14})" +384 "\u{15})" +384 "\u{16})" +384 "\u{17})" +384 "\u{18}\u{4}" +384 "\u{4}f" +384 "\u{17}\n" +384 "\u{6}f" +384 "s\u{1a}" +384 "t\u{1a}" +384 "\u{1a}\u{4}" +384 "\u{1d}\n" +384 "\u{1e}\n" +384 "\0\u{1b}" +384 "\u{1b}\u{4}" +384 "\u{1c}\u{4}" +384 "\u{f}f" +384 ",\u{1}" +384 "\u{10}f" +384 "/\u{1}" +384 "~\u{2}" +384 "\u{8}\u{1b}" +384 "\u{16}f" +384 "\u{1f}a" +384 "\u{1c}f" +384 "\u{3}\u{16}" +384 "\u{1f}f" +384 "7\u{1}" +384 "e\u{13}" +384 "\u{1}\u{6}" +384 ":\u{1}" +384 "\u{2}\u{6}" +384 "=\u{1}" +384 "\u{3}\u{6}" +384 "?\u{1}" +384 "[\u{1}" +384 "]\u{1}" +384 "_\u{1}" +384 "$\u{4}" +384 "8\u{1f}" +384 "&\u{4}" +384 "\u{1}o" +384 "\u{7}\u{6}" +384 "\u{f}\u{1b}" +384 "\u{4}o" +384 "\u{8}\u{6}" +384 "\u{7f};" +384 "\u{10}\u{6}" +384 "\u{12}\u{6}" +384 "\u{1}7" +384 "a\u{1f}" +384 "0\u{6}" +384 "\u{f}o" +384 "\u{10}o" +384 "\u{1a}o" +384 "1\u{6}" +384 "2\u{6}" +384 "j\u{1}" +384 "\u{1}<" +384 "(\u{4}" +384 "c\u{1f}" +384 "\u{3}g" +384 "\u{4}g" +384 "\u{7}g" +384 "\u{15}\u{16}" +384 "\u{1a}\u{1b}" +384 "\u{1d}7" +384 "u\u{1}" +384 "v\u{1}" +384 "w\u{1}" +384 "\u{b}g" +384 "\u{10}g" +384 "z\u{1}" +384 "\u{7f})" +384 "\u{16}\u{16}" +384 "\u{8}*" +384 "\u{1c}g" +384 "}\u{1}" +384 "0\u{14}" +384 "1\u{14}" +384 "\u{5}\u{3}" +384 "\u{1b}\0" +384 "\u{6}\u{3}" +384 "\u{4}\u{2}" +384 "\u{7}\u{3}" +384 "\u{1d}g" +384 "\u{3}\u{b}" +384 "\u{8}\u{b}" +384 "\u{5}\u{2}" +384 "\u{8}\u{3}" +384 "\t\u{3}" +384 "2\u{14}" +384 "\u{c}\u{3}" +384 "\u{1f}g" +384 "\u{6}p" +384 "\u{e}\u{3}" +384 "d\u{1f}" +384 "\r\u{b}" +384 "\u{17}\u{16}" +384 "\u{f}p" +384 "\u{10}p" +384 "\u{12}p" +384 "t\u{13}" +384 "\u{16}p" +384 "\u{17}p" +384 "\u{1a}p" +384 "\u{10}\u{b}" +384 "\u{1d}p" +384 "\u{1f}p" +384 "a\u{6}" +384 "\"\u{b}" +384 "(\u{b}" +384 "b\u{6}" +384 ",\u{b}" +384 "\u{f}\u{3}" +384 "0\u{b}" +384 "1\u{b}" +384 "2\u{b}" +384 ":\u{b}" +384 "\u{7f}*" +384 "d\u{6}" +384 ">\u{b}" +384 "\r+" +384 "e\u{6}" +384 "\u{1}q" +384 "\u{3}q" +384 "\u{10}\u{3}" +384 "\u{12}q" +384 "?\u{b}" +384 "\u{6}c" +384 "r\u{6}" +384 "\u{11}\u{3}" +384 "g\u{b}" +384 "h\u{b}" +384 "i\u{b}" +384 "k\u{b}" +384 "l\u{b}" +384 "m\u{b}" +384 "s\u{6}" +384 "o\u{b}" +384 "p\u{b}" +384 "t\u{6}" +384 "\0\u{7}" +384 "\u{1}\u{7}" +384 "u\u{b}" +384 "\"\u{13}" +384 "\u{1}h" +384 "\u{3}\u{c}" +384 "\t\u{c}" +384 "\u{7}\u{2}" +384 "\u{8}<" +384 "d\u{17}" +384 "\u{13}\u{3}" +384 "\u{10}\u{c}" +384 "\u{b}b" +384 "\u{18}\u{3}" +384 "3\u{14}" +384 "\u{4}r" +384 "\u{6}r" +384 ">\u{15}" +384 "\u{8}h" +384 "\u{2}\u{7}" +384 "\u{3}\u{7}" +384 "\u{10}r" +384 "\u{12}r" +384 "\u{17}r" +384 "\u{19}r" +384 "\u{1a}r" +384 "\u{b}h" +384 "\u{1c}r" +384 "\u{4}\u{7}" +384 "\u{5}\u{7}" +384 "\u{3}," +384 "\u{4}," +384 "\u{10}h" +384 "\u{f}," +384 "\u{10}," +384 "\u{1c}a" +384 "!\u{c}" +384 "\u{1c}h" +384 "\u{1f}h" +384 "'\u{c}" +384 "(\u{c}" +384 "\u{10}b" +384 ",\u{3}" +384 ",\u{c}" +384 "-\u{c}" +384 "-\u{3}" +384 "\u{14}b" +384 "\u{8}\u{7}" +384 "6\u{14}" +384 "b\u{14}" +384 "c\u{14}" +384 "\t\u{7}" +384 "i\u{1f}" +384 "\u{10}\u{7}" +384 "\u{e}c" +384 "\u{f}c" +384 "\u{7f}$" +384 ":\u{c}" +384 ";\u{c}" +384 "\0%" +384 "?\u{c}" +384 "\u{1d}b" +384 "b\u{c}" +384 "\u{e}<" +384 "f\u{14}" +384 "\u{14}c" +384 "'\u{7}" +384 "\u{5}s" +384 "\u{6}s" +384 "s\u{14}" +384 "\u{16}c" +384 "\u{1a}c" +384 "z\u{2}" +384 "\u{10}\u{18}" +384 "\u{1c}c" +384 "f\u{c}" +384 "\u{e}s" +384 "\u{f}s" +384 "\u{10}s" +384 "\u{12}s" +384 "\u{14}s" +384 "\u{16}s" +384 "\u{1d}c" +384 "\u{1a}s" +384 ";\u{3}" +384 "\u{1c}s" +384 "\u{1d}s" +384 "\u{1f}s" +384 "\u{6}i" +384 "\u{1e}c" +384 "\u{1f}c" +384 "\u{1f}b" +384 "0\u{7}" +384 "\u{11}\u{18}" +384 "?\u{3}" +384 "\u{f}i" +384 "\u{10}i" +384 "q\u{c}" +384 "\u{11}i" +384 "[\u{3}" +384 "\u{12}i" +384 "u\u{c}" +384 "v\u{c}" +384 "\u{14}i" +384 "x\u{c}" +384 "j\u{3}" +384 "\u{17}i" +384 "}\u{c}" +384 "\u{1b}i" +384 "\u{1}-" +384 "\u{1c}i" +384 "\u{14}\u{13}" +384 "\u{17}\u{18}" +384 "=\u{7}" +384 "\u{b}-" +384 "\u{3}:" +384 "\u{f}9" +384 "c\u{7}" +384 "\"\u{16}" +384 "\u{4}\r" +384 "\u{5}\r" +384 "\u{6}\r" +384 "\u{18}\u{18}" +384 "\u{5}\\" +384 "\u{b}\r" +384 "g\u{7}" +384 "\u{19}\u{18}" +384 "i\u{7}" +384 "k\u{7}" +384 "m\u{1f}" +384 "\u{7}\\" +384 "m\u{7}" +384 "\u{6}t" +384 "n\u{1f}" +384 "o\u{7}" +384 "\u{11}\r" +384 "\u{8}6" +384 "\u{13}\r" +384 "\u{f}t" +384 "p\u{7}" +384 "\u{14}t" +384 "\u{15}t" +384 "\u{17}t" +384 "\u{19}t" +384 "\u{1a}t" +384 "\u{1a}\u{18}" +384 "\u{1c}t" +384 "\u{1d}t" +384 "\u{1e}t" +384 "\u{b}\\" +384 "\u{10}\u{2}" +384 "\u{18}\u{2}" +384 "\u{1d}\0" +384 "!\u{2}" +384 "\u{c}\\" +384 "&\u{2}" +384 ";\u{4}" +384 "o\u{1f}" +384 "b\u{4}" +384 "*\u{2}" +384 "\u{4}8" +384 "-\u{2}" +384 "\0\u{1c}" +384 "\u{8}8" +384 "\u{1e}\0" +384 "\u{1f}\0" +384 "}\u{7}" +384 "\u{1b}\u{1c}" +384 "\"\u{18}" +384 "\u{f}8" +384 "\"\u{1c}" +384 "(\u{1c}" +384 "0\u{1c}" +384 "\u{7f}-" +384 "1\u{1c}" +384 "\u{1}\u{8}" +384 "\u{2}." +384 "\u{3}." +384 "\u{8}." +384 "2\u{1c}" +384 "4\u{1c}" +384 "\0]" +384 ";\u{2}" +384 "\u{f}." +384 "\u{10}." +384 "\u{f}l" +384 "\u{2}u" +384 "\u{3}\u{8}" +384 "\u{4}\u{8}" +384 "\u{1d}9" +384 "\0&" +384 "\u{b}u" +384 "\u{8}]" +384 "\u{1c}u" +384 "\u{1b}." +384 ">\u{2}" +384 "?\u{2}" +384 "\u{3}&" +384 "b\u{1c}" +384 "e\u{1c}" +384 "\u{5}\u{8}" +384 "\u{6}\u{8}" +384 "l\u{1c}" +384 "$\0" +384 "n\u{1c}" +384 "y\u{1c}" +384 "j\u{2}" +384 "z\u{1c}" +384 "%\0" +384 "\0\u{1d}" +384 "&\0" +384 "(\u{18}" +384 "\u{1}\u{e}" +384 "\u{3}\u{e}" +384 "\u{7}\u{e}" +384 "\u{8}\u{e}" +384 "b\u{3}" +384 "\u{c}\u{e}" +384 "\u{e}\u{e}" +384 "\u{f}\u{e}" +384 "\u{10}\u{e}" +384 "\u{11}\u{e}" +384 "\u{1}j" +384 "\u{2}j" +384 "\u{3}j" +384 "\u{1}v" +384 "\u{4}j" +384 "\u{8}j" +384 "\u{4}v" +384 "\u{7}v" +384 "\u{8}v" +384 "\u{c}&" +384 "\u{b}v" +384 "\u{1b}v" +384 "(\u{e}" +384 "p\u{1f}" +384 "\"\u{1d}" +384 "\u{1}/" +384 "\u{3}\u{14}" +384 ",\u{e}" +384 "\r^" +384 "\u{10}j" +384 "\u{15}^" +384 "\u{10}&" +384 "\u{3}=" +384 "g\u{4}" +384 "a\u{e}" +384 "d\u{e}" +384 "q\u{3}" +384 "h\u{e}" +384 "k\u{4}" +384 "\u{1}w" +384 "\u{2}w" +384 "\u{f}\u{8}" +384 "\u{4}w" +384 "\u{7}w" +384 "2\u{1d}" +384 "i\u{e}" +384 "\u{b}w" +384 "l\u{e}" +384 "\u{10}\u{8}" +384 "\u{10}w" +384 "\u{16}w" +384 "\u{1b}w" +384 "m\u{e}" +384 "n\u{e}" +384 "o\u{e}" +384 "r\u{e}" +384 "s\u{e}" +384 "t\u{e}" +384 "u\u{e}" +384 "r\u{1f}" +384 "(\u{16}" +384 "e\u{15}" +384 "'\u{8}" +384 "\u{7f}/" +384 "3\u{1d}" +384 "(\u{8}" +384 "p\u{4}" +384 "*\u{8}" +384 "+\u{8}" +384 "0\u{18}" +384 "\u{f}\u{f}" +384 "\u{10}\u{f}" +384 "\u{b}0" +384 "4\u{1d}" +384 "5\u{1d}" +384 "\u{15}0" +384 ".\u{8}" +384 "\u{c}=" +384 "s\u{1f}" +384 "\u{1f}0" +384 "\u{12}\u{f}" +384 "6\u{1d}" +384 "7\u{1d}" +384 "\u{1}x" +384 "u\u{3}" +384 "\u{3}x" +384 "\u{8}x" +384 "2\u{16}" +384 "9\u{1d}" +384 "\u{10}x" +384 "\u{1b}x" +384 "\u{1d}x" +384 "a\u{1d}" +384 "3\u{8}" +384 "4\u{8}" +384 "-\u{f}" +384 "5\u{8}" +384 "6\u{8}" +384 "7\u{8}" +384 "8\u{8}" +384 "4\u{f}" +384 "9\u{8}" +384 "\u{10}=" +384 "b\u{1d}" +384 "\u{1}k" +384 "\u{2}k" +384 "_\u{f}" +384 "\u{3}k" +384 "b\u{f}" +384 "d\u{f}" +384 "e\u{f}" +384 "f\u{f}" +384 "g\u{f}" +384 "h\u{f}" +384 "k\u{f}" +384 "d\u{1d}" +384 "n\u{f}" +384 "o\u{f}" +384 "\u{7}k" +384 "\u{8}k" +384 "h\u{1d}" +384 "u\u{4}" +384 "\u{b}k" +384 "w\u{4}" +384 "\u{1}y" +384 "\u{3}y" +384 "y\u{4}" +384 "\u{8}y" +384 "p\u{1d}" +384 "\u{7}1" +384 "\u{f}y" +384 "\u{1c}y" +384 "r\u{1d}" +384 "s\u{f}" +384 "t\u{f}" +384 "\u{b}1" +384 "v\u{3}" +384 "\u{12}1" +384 "s\u{1d}" +384 "a\u{18}" +384 "\u{1c}1" +384 "\0\u{19}" +384 "\u{1e}1" +384 "x\u{f}" +384 "\u{4}\u{14}" +384 "\u{1}\u{10}" +384 "\u{3}\u{10}" +384 "\u{f}\u{10}" +384 "`\u{8}" +384 "\u{11}\u{10}" +384 "\u{12}\u{10}" +384 "\u{14}\u{10}" +384 "t\u{1d}" +384 "\0\u{17}" +384 "b\u{8}" +384 "\u{1}z" +384 "\u{3}z" +384 "\u{8}z" +384 "x\u{1d}" +384 "y\u{1d}" +384 "\u{12}z" +384 "\u{1b}z" +384 "\u{1d}z" +384 "\u{1f}z" +384 "'\u{10}" +384 "t\u{1f}" +384 "z\u{1d}" +384 "\0\u{1e}" +384 "\u{6}d" +384 "\u{1d}8" +384 "c\u{3}" +384 "\u{c}_" +384 "x\u{3}" +384 "\u{b}2" +384 "f\u{8}" +384 "\u{7f}&" +384 "\u{11}2" +384 "\u{13}2" +384 "\u{7f}=" +384 "\u{1b}2" +384 "\0>" +384 "\u{1f}2" +384 "a\u{10}" +384 "b\u{10}" +384 "d\u{10}" +384 "e\u{10}" +384 "f\u{10}" +384 "g\u{10}" +384 "h\u{10}" +384 "i\u{10}" +384 "\0\u{15}" +384 "\0{" +384 "\u{c}{" +384 "l\u{10}" +384 "=\u{15}" +384 "m\u{10}" +384 "n\u{10}" +384 "o\u{10}" +384 "p\u{10}" +384 "q\u{10}" +384 "r\u{10}" +384 "s\u{10}" +384 "t\u{10}" +384 "u\u{10}" +384 "x\u{10}" +384 "y\u{10}" +384 "\u{3}'" +384 "\u{1}\u{11}" +384 "\u{3}\u{11}" +384 "z\u{3}" +384 "\u{7}'" +384 "\u{8}'" +384 "\u{12}\u{11}" +384 "\u{13}\u{11}" +384 "\u{15}\u{11}" +384 "\u{f}d" +384 "\u{1e}\u{1e}" +384 "h\u{8}" +384 "\u{10}d" +384 "\"\u{1e}" +384 "\u{16}d" +384 "\u{8}3" +384 "(\u{1e}" +384 "\"\u{11}" +384 "i\u{13}" +384 "\u{3}\u{15}" +384 "\0|" +384 "\u{f}6" +384 ">\u{1e}" +384 "d\u{1e}" +384 "\u{1a}'" +384 "\u{1d}3" +384 "2\u{11}" +384 "c\u{11}" +384 "e\u{11}" +384 "n\u{11}" +384 "o\u{11}" +384 "r\u{11}" +384 "t\u{11}" +384 "e\u{1e}" +384 "\0}" +384 "\u{1b}'" +384 "j\u{8}" +384 "\u{1}\u{12}" +384 "\u{12}\u{15}" +384 "k\u{8}" +384 "x\u{1f}" +384 "m\u{8}" +384 "n\u{1e}" +384 "\u{4}4" +384 "\u{8}4" +384 "+\0" +384 "\u{4}\u{12}" +384 "\u{f}4" +384 "\u{1c}d" +384 "o\u{8}" +384 "\u{10}\u{12}" +384 "\u{11}\u{12}" +384 "\u{12}\u{12}" +384 "\u{13}\u{12}" +384 "\u{14}\u{12}" +384 "\0\u{1f}" +384 "\u{1d}d" +384 "\"\u{12}" +384 "\u{1d}\u{1f}" +384 "\u{1e}\u{1f}" +384 "(\u{12}" +384 "b\u{12}" +384 "d\u{12}" +384 "e\u{12}" +384 "\u{1f}\u{1f}" +384 "\u{1f}d" +384 "n\u{15}" +384 "t\u{15}" +384 "\"\u{1f}" +384 "\u{4}5" +384 "u\u{8}" +384 "h\u{12}" +384 "i\u{12}" +384 "v\u{8}" +384 "w\u{8}" +384 "-\u{1f}" +384 "\u{2}\u{7f}" +384 "\u{12}\u{7f}" +384 "\u{1f}\u{7f}" +384 "!\u{7f}" +384 "\u{1d}5" +384 "#\u{7f}" +384 "$\u{7f}" +384 "x\u{8}" +384 "0\u{1f}" +384 "\u{2}\u{5}" +384 "{\u{8}" +384 "*\u{7f}" +384 "+\u{7f}" +384 "\u{8}7" +384 "}\u{8}" +384 "\u{15}\u{15}" +384 "\u{1d}a" +384 "l\u{12}" +384 "n\u{12}" +384 "o\u{12}" +384 "\u{1b}>" +384 "2\u{1f}" +384 "\u{1}\t" +384 "n\u{13}" +384 "\u{16}\u{15}" +384 "\u{5}\u{5}" +384 "\u{6}\u{5}" +384 "\u{6}a" +384 "\u{7}\u{5}" +384 "\u{c};" +384 "\u{3}\t" +384 "\u{b}l" +384 "\u{10}a" +384 "r\u{12}" +384 "s\u{12}" +384 "t\u{12}" +384 "\u{12}a" +384 "\u{13}a" +384 "~\u{12}" +384 "\u{14}a" +384 "\u{e}l" +384 "\u{3}\u{13}" +384 "\u{15}a" +384 "\u{16}a" +384 "\u{17}a" +384 "\u{1a}a" +384 "\u{2}\u{8}" +256 "\u{7f}\t" +256 "]\u{13}" +256 "f\u{1e}" +256 "g\u{1e}" +256 "h\u{1e}" +256 "i\u{1e}" +256 "j\u{1e}" +256 ";\u{15}" +256 "\u{1}`" +256 "\u{2}`" +256 "\u{3}`" +256 "\u{4}`" +256 "\u{6}`" +256 "\u{7}`" +256 "\u{8}`" +256 "k\u{1e}" +256 "l\u{1e}" +256 "\u{b}`" +256 "\u{c}`" +256 "\u{10}`" +256 "\u{12}`" +256 "\u{1b}`" +256 "\u{1c}`" +256 "\u{1d}`" +256 "m\u{1e}" +256 "o\u{1e}" +256 "p\u{1e}" +256 "q\u{1e}" +256 "r\u{1e}" +256 "s\u{1e}" +256 "t\u{1e}" +256 "u\u{1e}" +256 "v\u{1e}" +256 "w\u{1e}" +256 "x\u{1e}" +256 "y\u{1e}" +256 "z\u{1e}" +256 "|\u{1e}" +256 "}\u{1e}" +256 "~\u{1e}" +256 "\u{1}\u{1f}" +256 "\u{2}\u{1f}" +256 "\u{3}\u{1f}" +256 "\u{4}\u{1f}" +256 "\u{5}\u{1f}" +256 "\u{6}\u{1f}" +256 "\u{7}\u{1f}" +256 "\u{8}\u{1f}" +256 "\t\u{1f}" +256 "`\u{13}" +256 "\u{c}\u{1f}" +256 "\u{e}\u{1f}" +256 "\u{f}\u{1f}" +256 "\u{10}\u{1f}" +256 "\u{11}\u{1f}" +256 "\u{12}\u{1f}" +256 "\u{13}\u{1f}" +256 "\u{14}\u{1f}" +256 "\u{15}\u{1f}" +256 "\u{16}\u{1f}" +256 "\u{17}\u{1f}" +256 "\u{18}\u{1f}" +256 "\u{19}\u{1f}" +256 "\u{1a}\u{1f}" +256 "\u{1b}\u{1f}" +256 "\u{1c}\u{1f}" +256 "a\u{13}" +256 "b\u{13}" +256 "c\u{13}" +256 "\u{4}9" +256 "!\u{1f}" +256 "\u{5}9" +256 "#\u{1f}" +256 "$\u{1f}" +256 "%\u{1f}" +256 "'\u{1f}" +256 "(\u{1f}" +256 ")\u{1f}" +256 "*\u{1f}" +256 "+\u{1f}" +256 ",\u{1f}" +256 "\u{6}9" +256 ".\u{1f}" +256 "/\u{1f}" +256 "\u{7}9" +256 "1\u{1f}" +256 "d\u{13}" +256 "\u{1a}\u{13}" +256 "?\u{15}" +256 "\u{b}9" +256 "@\u{15}" +256 "[\u{15}" +256 "\u{5}a" +256 "f\u{13}" +256 "\u{10}9" +256 "3\u{1f}" +256 "4\u{1f}" +256 "\u{11}9" +256 "5\u{1f}" +256 "6\u{1f}" +256 "\u{e}a" +256 "\u{12}9" +256 "\u{11}a" +256 "\u{14}9" +256 "g\u{13}" +256 "\u{17}9" +256 "\u{18}9" +256 "\u{19}9" +256 "\u{18}a" +256 "\u{19}a" +256 "\u{1a}9" +256 "\u{1b}9" +256 "\u{1c}9" +256 "h\u{13}" +256 "\u{1e}a" +256 "\u{1e}9" +256 "7\u{1f}" +256 "\u{1f}9" +256 "9\u{1f}" +256 ":\u{1f}" +256 ";\u{1f}" +256 "=\u{1f}" +256 ">\u{1f}" +256 "?\u{1f}" +256 "@\u{1f}" +256 "[\u{1f}" +256 "\\\u{15}" +256 "b\u{1f}" +256 "]\u{15}" +256 "^\u{15}" +256 "_\u{15}" +256 "f\u{1f}" +256 "g\u{1f}" +256 "h\u{1f}" +256 "j\u{1f}" +256 "k\u{1f}" +256 "l\u{1f}" +256 "a\u{15}" +256 "b\u{15}" +256 "c\u{15}" +256 "d\u{15}" +256 "q\u{1f}" +256 "\u{1b}\u{13}" +256 "f\u{15}" +256 "g\u{15}" +256 "u\u{1f}" +256 "v\u{1f}" +256 "w\u{1f}" +256 "h\u{15}" +256 "y\u{1f}" +256 "z\u{1f}" +256 "{\u{1f}" +256 "|\u{1f}" +256 "}\u{1f}" +256 "~\u{1f}" +256 "\u{7f}\u{1f}" +256 "i\u{15}" +256 "j\u{15}" +256 "k\u{15}" +256 "l\u{15}" +256 "m\u{15}" +256 "j\u{13}" +256 "o\u{15}" +256 "p\u{15}" +256 "q\u{15}" +256 "r\u{15}" +256 "s\u{15}" +256 "k\u{13}" +256 "u\u{15}" +256 "v\u{15}" +256 "w\u{15}" +256 "x\u{15}" +256 "l\u{13}" +256 "z\u{15}" +256 "}\u{15}" +256 "m\u{13}" +256 "\u{1}\u{16}" +256 "\u{2}\u{16}" +256 "\u{1c}\u{13}" +256 "\u{4}\u{16}" +256 "\u{5}b" +256 "\u{6}b" +256 "\u{5}\u{16}" +256 "\u{6}\u{16}" +256 "\u{7}\u{16}" +256 "\u{8}\u{16}" +256 "\t\u{16}" +256 "o\u{13}" +256 "\u{b}\u{16}" +256 "\u{e}b" +256 "\u{f}b" +256 "\u{c}\u{16}" +256 "\u{11}b" +256 "\u{12}b" +256 "\u{13}b" +256 "\u{15}b" +256 "\u{16}b" +256 "\u{17}b" +256 "\u{18}b" +256 "\u{19}b" +256 "\u{1a}b" +256 "\u{e}\u{16}" +256 "\u{1c}b" +256 "\u{f}\u{16}" +256 "\u{1e}b" +256 "\u{10}\u{16}" +256 "\u{11}\u{16}" +256 "\u{12}\u{16}" +256 "\u{13}\u{16}" +256 "\u{14}\u{16}" +256 "p\u{13}" +256 "q\u{13}" +256 "\u{1d}\u{13}" +256 "\u{18}\u{16}" +256 "\u{19}\u{16}" +256 "\u{1a}\u{16}" +256 "\u{1b}\u{16}" +256 "\u{1c}\u{16}" +256 "\u{1d}\u{16}" +256 "\u{1e}\u{16}" +256 "\u{1f}\u{16}" +256 "\u{1e}\u{13}" +256 "\u{1f}\u{13}" +256 "|\u{3}" +256 "}\u{3}" +256 "~\u{3}" +256 "\u{7f}\u{3}" +256 "u\u{13}" +256 "\u{1}:" +256 "\u{2}:" +256 "v\u{13}" +256 "\u{4}:" +256 "\u{5}:" +256 "\u{6}:" +256 "\u{7}:" +256 "\u{8}:" +256 "!\u{16}" +256 "w\u{13}" +256 "\u{b}:" +256 "\u{c}:" +256 "x\u{13}" +256 "\u{e}:" +256 "\u{f}:" +256 "\u{10}:" +256 "\u{11}\u{4}" +256 "\u{12}:" +256 "\u{13}:" +256 "\u{14}:" +256 "\u{16}\u{4}" +256 "\u{17}\u{4}" +256 "\u{15}:" +256 "\u{19}\u{4}" +256 "\u{16}:" +256 "\u{18}:" +256 "\u{1d}\u{4}" +256 "\u{19}:" +256 "\u{1f}\u{4}" +256 "\u{1a}:" +256 "!\u{4}" +256 "\u{1b}:" +256 "#\u{4}" +256 "\u{1c}:" +256 "\u{1d}:" +256 "\u{1e}:" +256 "\u{1f}:" +256 "#\u{16}" +256 "$\u{16}" +256 "*\u{4}" +256 "+\u{4}" +256 ",\u{4}" +256 "-\u{4}" +256 ".\u{4}" +256 "/\u{4}" +256 "%\u{16}" +256 "'\u{16}" +256 "y\u{13}" +256 ")\u{16}" +256 "\u{5}c" +256 "*\u{16}" +256 "+\u{16}" +256 ",\u{16}" +256 "-\u{16}" +256 ".\u{16}" +256 "/\u{16}" +256 "0\u{16}" +256 "\u{1}!" +256 "1\u{16}" +256 "z\u{13}" +256 "3\u{16}" +256 "\u{11}c" +256 "\u{12}c" +256 "\u{13}c" +256 "4\u{16}" +256 "\u{15}c" +256 "5\u{16}" +256 "\u{17}c" +256 "\u{18}c" +256 "\u{19}c" +256 "6\u{16}" +256 "\u{2}!" +256 "{\u{13}" +256 "8\u{16}" +256 "9\u{16}" +256 ":\u{16}" +256 "\u{3}!" +256 "\u{4}!" +256 "\u{5}!" +256 "\u{6}!" +256 "\u{7}!" +256 "\u{8}!" +256 ";\u{16}" +256 "\u{b}!" +256 "\u{c}!" +256 "\u{e}!" +256 "\u{f}!" +256 "\u{10}!" +256 "\u{11}!" +256 "\u{12}!" +256 "\u{13}!" +256 "\u{14}!" +256 "\u{15}!" +256 "\u{16}!" +256 "\u{17}!" +256 "\u{18}!" +256 "\u{19}!" +256 "\u{1a}!" +256 "\u{1b}!" +256 "\u{1c}!" +256 "\u{1d}!" +256 "\u{1e}!" +256 "\u{1f}!" +256 ">\u{16}" +256 "?\u{16}" +256 ":\u{4}" +256 "\\\u{16}" +256 "=\u{4}" +256 ">\u{4}" +256 "?\u{4}" +256 "@\u{4}" +256 "[\u{4}" +256 "\\\u{4}" +256 "]\u{4}" +256 "`\u{4}" +256 "]\u{16}" +256 "a\u{16}" +256 "f\u{4}" +256 "b\u{16}" +256 "c\u{16}" +256 "i\u{4}" +256 "j\u{4}" +256 "d\u{16}" +256 "e\u{16}" +256 "m\u{4}" +256 "f\u{16}" +256 "g\u{16}" +256 "h\u{16}" +256 "q\u{4}" +256 "i\u{16}" +256 "j\u{16}" +256 "k\u{16}" +256 "l\u{16}" +256 "v\u{4}" +256 "m\u{16}" +256 "x\u{4}" +256 "n\u{16}" +256 "o\u{16}" +256 "p\u{16}" +256 "q\u{16}" +256 "r\u{16}" +256 "\u{5}d" +256 "s\u{16}" +256 "t\u{16}" +256 "u\u{16}" +256 "z\u{4}" +256 "{\u{4}" +256 "v\u{16}" +256 "|\u{4}" +256 "}\u{4}" +256 "\u{e}d" +256 "w\u{16}" +256 "x\u{16}" +256 "\u{11}d" +256 "\u{12}d" +256 "\u{13}d" +256 "\u{14}d" +256 "\u{15}d" +256 "y\u{16}" +256 "z\u{16}" +256 "\u{18}d" +256 "\u{19}d" +256 "\u{1a}d" +256 "}\u{16}" +256 "\u{1e}d" +256 "~\u{4}" +256 "|\u{13}" +256 "\u{1}\u{17}" +256 "}\u{13}" +256 "\u{1};" +256 "\u{2};" +256 "\u{3};" +256 "\u{8}\u{5}" +256 "\t\u{5}" +256 "\u{4};" +256 "\u{b}\u{5}" +256 "\u{c}\u{5}" +256 "\u{5};" +256 "\u{f}\u{5}" +256 "\u{6};" +256 "\u{11}\u{5}" +256 "\u{12}\u{5}" +256 "\u{13}\u{5}" +256 "\u{14}\u{5}" +256 "\u{7};" +256 "\u{8};" +256 "\u{2}\u{17}" +256 "\u{3}\u{17}" +256 "\u{b};" +256 "\u{7f}\u{13}" +256 "\u{10}\u{13}" +256 "\u{e};" +256 "\u{15}\u{5}" +256 "\u{f};" +256 "\u{16}\u{5}" +256 "\u{17}\u{5}" +256 "\u{1}\u{14}" +256 "\u{18}\u{5}" +256 "\u{e}\"" +256 "\u{f}\"" +256 "\u{12};" +256 "\u{11}\"" +256 "\u{15};" +256 "\u{15}\"" +256 "\u{16}\"" +256 "\u{17}\"" +256 "\u{16};" +256 "\u{19}\"" +256 "\u{17};" +256 "\u{18};" +256 "\u{19};" +256 "\u{1a};" +256 "\u{1b};" +256 "\u{1c};" +256 "\u{19}\u{5}" +256 "\u{1a}\u{5}" +256 "\u{1b}\u{5}" +256 "\u{1c}\u{5}" +256 "\u{1d}\u{5}" +256 "\u{1e}\u{5}" +256 "\u{1f}\u{5}" +256 "\u{1d};" +256 "!\u{5}" +256 "\u{1e};" +256 "#\u{5}" +256 "$\u{5}" +256 "%\u{5}" +256 "'\u{5}" +256 "\u{1f};" +256 "\u{4}\u{17}" +256 "\u{5}\u{17}" +256 "\u{6}\u{17}" +256 "\u{7}\u{17}" +256 "\u{8}\u{17}" +256 "\t\u{17}" +256 "\u{2}\u{14}" +256 "\u{b}\u{17}" +256 ")\u{5}" +256 "\u{c}\u{17}" +256 "*\u{5}" +256 "+\u{5}" +256 "\u{e}e" +256 "\u{f}e" +256 "\u{11}e" +256 "\u{e}\u{17}" +256 "\u{f}\u{17}" +256 "!\u{13}" +256 "\u{15}e" +256 "\u{11}\u{17}" +256 "\u{17}e" +256 "\u{18}e" +256 "\u{19}e" +256 "\u{12}\u{17}" +256 ",\u{5}" +256 "\u{13}\u{17}" +256 "\u{14}\u{17}" +256 "\u{1e}e" +256 "\u{15}\u{17}" +256 "-\u{5}" +256 ".\u{5}" +256 "/\u{5}" +256 "0\u{5}" +256 "1\u{5}" +256 "2\u{5}" +256 "3\u{5}" +256 "4\u{5}" +256 "5\u{5}" +256 "6\u{5}" +256 "7\u{5}" +256 "8\u{5}" +256 "9\u{5}" +256 ":\u{5}" +256 ";\u{5}" +256 "=\u{5}" +256 ">\u{5}" +256 "?\u{5}" +256 "@\u{5}" +256 "[\u{5}" +256 "\\\u{5}" +256 "^\u{5}" +256 "`\u{5}" +256 "\u{b}\u{13}" +256 "b\u{5}" +256 "c\u{5}" +256 "\u{5}\u{14}" +256 "\u{18}\u{17}" +256 "f\u{5}" +256 "g\u{5}" +256 "h\u{5}" +256 "i\u{5}" +256 "j\u{5}" +256 "k\u{5}" +256 "l\u{5}" +256 "m\u{5}" +256 "\u{19}\u{17}" +256 "o\u{5}" +256 "p\u{5}" +256 "q\u{5}" +256 "r\u{5}" +256 "s\u{5}" +256 "t\u{5}" +256 "u\u{5}" +256 "v\u{5}" +256 "w\u{5}" +256 "x\u{5}" +256 "\u{1a}\u{17}" +256 "\u{1b}\u{17}" +256 "\u{2}#" +256 "\u{3}#" +256 "\u{4}#" +256 "\u{5}#" +256 "\u{6}#" +256 "\u{7}#" +256 "\u{1c}\u{17}" +256 "y\u{5}" +256 "z\u{5}" +256 "\u{b}#" +256 "\u{1d}\u{17}" +256 "\u{e}#" +256 "\u{1e}\u{17}" +256 "\u{1f}\u{17}" +256 "\u{11}#" +256 "\u{12}#" +256 "\u{13}#" +256 "\u{14}#" +256 "\u{6}\u{14}" +256 "!\u{17}" +256 "\"\u{17}" +256 "#\u{17}" +256 "\u{5}f" +256 "$\u{17}" +256 "%\u{17}" +256 "\u{15}#" +256 "\u{16}#" +256 "'\u{17}" +256 "\u{17}#" +256 "\u{18}#" +256 "\u{e}f" +256 "\u{7}\u{14}" +256 ")\u{17}" +256 "\u{11}f" +256 "\u{12}f" +256 "\u{13}f" +256 "\u{14}f" +256 "\u{15}f" +256 "\u{8}\u{14}" +256 "\u{17}f" +256 "\u{18}f" +256 "\u{19}f" +256 "\u{1a}f" +256 "+\u{17}" +256 ",\u{17}" +256 "-\u{17}" +256 "\u{1e}f" +256 ".\u{17}" +256 "\u{19}#" +256 "\u{1a}#" +256 "\u{1b}#" +256 "\u{1c}#" +256 "\u{1d}#" +256 "\u{1e}#" +256 "\u{1f}#" +256 "|\u{5}" +256 "}\u{5}" +256 "/\u{17}" +256 "0\u{17}" +256 "1\u{17}" +256 "\t\u{14}" +256 "3\u{17}" +256 "4\u{17}" +256 "5\u{17}" +256 "6\u{17}" +256 "#\u{13}" +256 "\t\u{6}" +256 "\u{b}\u{6}" +256 "\u{c}\u{6}" +256 "\u{e}\u{6}" +256 "\u{f}\u{6}" +256 "9\u{17}" +256 "\u{11}\u{6}" +256 "\u{13}\u{6}" +256 "\u{14}\u{6}" +256 "\u{15}\u{6}" +256 "\u{16}\u{6}" +256 "\u{17}\u{6}" +256 "\u{18}\u{6}" +256 "\u{19}\u{6}" +256 "\u{1a}\u{6}" +256 "\u{1b}\u{6}" +256 "\u{1c}\u{6}" +256 "\u{1d}\u{6}" +256 "\u{1e}\u{6}" +256 "\u{1f}\u{6}" +256 ";\u{17}" +256 "!\u{6}" +256 "\"\u{6}" +256 "#\u{6}" +256 "$\u{6}" +256 "%\u{6}" +256 "'\u{6}" +256 ")\u{6}" +256 "*\u{6}" +256 "+\u{6}" +256 ",\u{6}" +256 "-\u{6}" +256 ".\u{6}" +256 "/\u{6}" +256 "=\u{17}" +256 "\u{b}\u{14}" +256 "?\u{17}" +256 "3\u{6}" +256 "4\u{6}" +256 "5\u{6}" +256 "6\u{6}" +256 "7\u{6}" +256 "8\u{6}" +256 "9\u{6}" +256 ":\u{6}" +256 "\u{5}g" +256 "\u{6}g" +256 ";\u{6}" +256 "a\u{17}" +256 "=\u{6}" +256 ">\u{6}" +256 "\u{e}g" +256 "\u{f}g" +256 "b\u{17}" +256 "\u{11}g" +256 "\u{12}g" +256 "\u{13}g" +256 "\u{14}g" +256 "\u{15}g" +256 "\u{16}g" +256 "\u{17}g" +256 "\u{18}g" +256 "\u{19}g" +256 "\u{1a}g" +256 "\u{c}\u{14}" +256 "\u{e}\u{14}" +256 "\u{1e}g" +256 "\u{2}<" +256 "?\u{6}" +256 "@\u{6}" +256 "\u{f}\u{14}" +256 "\u{4}<" +256 "\u{1}$" +256 "\u{2}$" +256 "\u{3}$" +256 "\u{4}$" +256 "\u{5}$" +256 "\u{6}$" +256 "\u{7}$" +256 "\u{8}$" +256 "\u{b}$" +256 "\u{5}<" +256 "]\u{6}" +256 "\u{e}$" +256 "\u{f}$" +256 "\u{10}$" +256 "\u{11}$" +256 "\u{12}$" +256 "\u{13}$" +256 "\u{14}$" +256 "\u{15}$" +256 "\u{16}$" +256 "\u{17}$" +256 "\u{18}$" +256 "\u{19}$" +256 "\u{1a}$" +256 "\u{1c}$" +256 "\u{1d}$" +256 "\u{1e}$" +256 "\u{1f}$" +256 "`\u{6}" +256 "\u{6}<" +256 "\u{7}<" +256 "c\u{6}" +256 "$\u{13}" +256 "c\u{17}" +256 "f\u{6}" +256 "g\u{6}" +256 "h\u{6}" +256 "i\u{6}" +256 "j\u{6}" +256 "k\u{6}" +256 "l\u{6}" +256 "m\u{6}" +256 "%\u{13}" +256 "o\u{6}" +256 "p\u{6}" +256 "q\u{6}" +256 "e\u{17}" +256 "f\u{17}" +256 "u\u{6}" +256 "v\u{6}" +256 "w\u{6}" +256 "x\u{6}" +256 "y\u{6}" +256 "z\u{6}" +256 "}\u{6}" +256 "'\u{13}" +256 "\u{f}<" +256 "\u{10}<" +256 "\u{11}<" +256 "\u{12}<" +256 "\u{13}<" +256 "\u{14}<" +256 "\u{5}h" +256 "\u{6}h" +256 "\u{15}<" +256 "\u{16}<" +256 "g\u{17}" +256 "h\u{17}" +256 "\u{19}<" +256 "\u{1a}<" +256 "\u{1b}<" +256 "\u{e}h" +256 "\u{f}h" +256 "\u{1c}<" +256 "\u{11}h" +256 "\u{12}h" +256 "\u{13}h" +256 "\u{14}h" +256 "\u{15}h" +256 "\u{16}h" +256 "\u{17}h" +256 "\u{18}h" +256 "\u{19}h" +256 "\u{1a}h" +256 "\u{1d}<" +256 "\u{1e}<" +256 "\u{1d}h" +256 "\u{1e}h" +256 "\u{1f}<" +256 "i\u{17}" +256 "j\u{17}" +256 "k\u{17}" +256 "l\u{17}" +256 "m\u{17}" +256 "\u{b}\u{7}" +256 "\u{c}\u{7}" +256 "\r\u{7}" +256 "\u{e}\u{7}" +256 "\u{f}\u{7}" +256 "n\u{17}" +256 "\u{11}\u{7}" +256 "\u{12}\u{7}" +256 "\u{13}\u{7}" +256 "\u{14}\u{7}" +256 "\u{15}\u{7}" +256 "\u{16}\u{7}" +256 "\u{17}\u{7}" +256 "\u{18}\u{7}" +256 "\u{19}\u{7}" +256 "\u{1a}\u{7}" +256 "\u{1b}\u{7}" +256 "\u{1c}\u{7}" +256 "\u{1d}\u{7}" +256 "\u{1e}\u{7}" +256 "\u{1f}\u{7}" +256 "o\u{17}" +256 "!\u{7}" +256 "p\u{17}" +256 "#\u{7}" +256 "q\u{17}" +256 "r\u{17}" +256 "\u{1}%" +256 "\u{2}%" +256 "\u{3}%" +256 "\u{4}%" +256 "\u{5}%" +256 "\u{6}%" +256 "\u{7}%" +256 "\u{8}%" +256 "$\u{7}" +256 "%\u{7}" +256 "\u{b}%" +256 "s\u{17}" +256 "t\u{17}" +256 "\u{f}%" +256 "\u{10}%" +256 "\u{11}%" +256 "\u{12}%" +256 "\u{13}%" +256 "\u{14}%" +256 "\u{15}%" +256 "\u{16}%" +256 "\u{17}%" +256 "\u{18}%" +256 "\u{19}%" +256 "\u{1a}%" +256 "u\u{17}" +256 "\u{1c}%" +256 "\u{1d}%" +256 "\u{1e}%" +256 "\u{1f}%" +256 "&\u{7}" +256 "v\u{17}" +256 "w\u{17}" +256 "x\u{17}" +256 "*\u{7}" +256 "+\u{7}" +256 ",\u{7}" +256 "-\u{7}" +256 "y\u{17}" +256 "z\u{17}" +256 "\u{5}i" +256 "}\u{17}" +256 ".\u{7}" +256 "/\u{7}" +256 "(\u{13}" +256 "\u{1}\u{18}" +256 "\u{2}\u{18}" +256 "\u{e}i" +256 "\u{3}\u{18}" +256 "\u{4}\u{18}" +256 "\u{5}\u{18}" +256 "\u{6}\u{18}" +256 "\u{13}i" +256 "\u{7}\u{18}" +256 "\u{15}i" +256 "\u{8}\u{18}" +256 "\t\u{18}" +256 "\u{18}i" +256 "\u{19}i" +256 "\u{1a}i" +256 ")\u{13}" +256 "\u{b}\u{18}" +256 "\u{1d}i" +256 "\u{1e}i" +256 "\u{1f}i" +256 "2\u{7}" +256 "3\u{7}" +256 "4\u{7}" +256 "5\u{7}" +256 "6\u{7}" +256 "7\u{7}" +256 "8\u{7}" +256 "9\u{7}" +256 ":\u{7}" +256 "\u{c}\u{18}" +256 "<\u{7}" +256 ">\u{7}" +256 "?\u{7}" +256 "@\u{7}" +256 "[\u{7}" +256 "\\\u{7}" +256 "]\u{7}" +256 "^\u{7}" +256 "_\u{7}" +256 "`\u{7}" +256 "\u{e}\u{18}" +256 "\u{f}\u{18}" +256 "*\u{13}" +256 "\u{4}7" +256 "\u{12}\u{18}" +256 "f\u{7}" +256 "\u{13}\u{18}" +256 "\u{14}\u{18}" +256 "\u{15}\u{18}" +256 "j\u{7}" +256 "\u{16}\u{18}" +256 "\u{5}7" +256 "\u{6}7" +256 "\u{7}7" +256 "+\u{13}" +256 "\u{1b}\u{18}" +256 "q\u{7}" +256 "\u{1c}\u{18}" +256 "\u{1d}\u{18}" +256 "\u{1e}\u{18}" +256 "u\u{7}" +256 "v\u{7}" +256 "w\u{7}" +256 "x\u{7}" +256 "\u{1f}\u{18}" +256 "z\u{7}" +256 "{\u{7}" +256 "|\u{7}" +256 ",\u{13}" +256 "~\u{7}" +256 "!\u{18}" +256 "-\u{13}" +256 "#\u{18}" +256 "$\u{18}" +256 "%\u{18}" +256 "'\u{18}" +256 "\u{1}&" +256 "\u{2}&" +256 "\u{b}7" +256 "\u{4}&" +256 "\u{5}&" +256 "\u{6}&" +256 "\u{7}&" +256 "\u{8}&" +256 ")\u{18}" +256 "*\u{18}" +256 "\u{b}&" +256 "+\u{18}" +256 ",\u{18}" +256 "-\u{18}" +256 ".\u{18}" +256 ".\u{13}" +256 "\u{5}j" +256 "\u{6}j" +256 "\u{7}j" +256 "\u{1}=" +256 "\u{2}=" +256 "\u{c}\u{13}" +256 "\u{b}j" +256 "\u{4}=" +256 "\u{e}&" +256 "\u{e}j" +256 "\u{f}j" +256 "\u{5}=" +256 "\u{11}j" +256 "\u{12}j" +256 "\u{13}j" +256 "\u{14}j" +256 "\u{15}j" +256 "\u{16}j" +256 "\u{17}j" +256 "\u{18}j" +256 "\u{19}j" +256 "\u{1a}j" +256 "\u{1b}j" +256 "\u{1c}j" +256 "\u{1d}j" +256 "\u{1e}j" +256 "\u{1f}j" +256 "\u{f}&" +256 "\u{6}=" +256 "\u{11}&" +256 "\u{12}&" +256 "\u{13}&" +256 "\u{14}&" +256 "\u{15}&" +256 "\u{16}&" +256 "\u{17}&" +256 "\u{18}&" +256 "\u{19}&" +256 "\u{1a}&" +256 "\u{7}=" +256 "\u{1c}&" +256 "\u{1d}&" +256 "\u{1e}&" +256 "\u{1f}&" +256 "\u{8}=" +256 "/\u{18}" +256 "\u{e}7" +256 "\u{b}\u{8}" +256 "\u{c}\u{8}" +256 "\u{e}\u{8}" +256 "\u{b}=" +256 "\u{11}\u{8}" +256 "\u{12}\u{8}" +256 "\u{13}\u{8}" +256 "\u{14}\u{8}" +256 "\u{15}\u{8}" +256 "\u{16}\u{8}" +256 "\u{17}\u{8}" +256 "\u{18}\u{8}" +256 "\u{19}\u{8}" +256 "\u{1a}\u{8}" +256 "\u{1b}\u{8}" +256 "\u{1c}\u{8}" +256 "\u{1d}\u{8}" +256 "\u{1e}\u{8}" +256 "\u{1f}\u{8}" +256 "\u{10}7" +256 "!\u{8}" +256 "\u{e}=" +256 "#\u{8}" +256 "$\u{8}" +256 "\u{f}=" +256 "\u{11}7" +256 "\u{11}=" +256 "\u{12}=" +256 "\u{13}=" +256 "\u{14}=" +256 ",\u{8}" +256 "\u{15}=" +256 "\u{16}=" +256 "\u{17}=" +256 "\u{18}=" +256 "\u{19}=" +256 "\u{1a}=" +256 "\u{1c}=" +256 "\u{1d}=" +256 "\u{1e}=" +256 "\u{1f}=" +256 "1\u{18}" +256 "2\u{18}" +256 ":\u{8}" +256 ";\u{8}" +256 "<\u{8}" +256 "{\u{2}" +256 "4\u{18}" +256 "5\u{18}" +256 "6\u{18}" +256 "\u{4}k" +256 "\u{5}k" +256 "\u{6}k" +256 "7\u{18}" +256 "8\u{18}" +256 "=\u{8}" +256 "9\u{18}" +256 ":\u{18}" +256 ";\u{18}" +256 "?\u{8}" +256 "\u{e}k" +256 "\u{f}k" +256 "\u{10}k" +256 "\u{11}k" +256 "\u{12}k" +256 "\u{13}k" +256 "\u{14}k" +256 "\u{15}k" +256 "\u{16}k" +256 "\u{17}k" +256 "\u{18}k" +256 "\u{19}k" +256 "\u{1a}k" +256 "\u{1c}k" +256 "\u{1d}k" +256 "\u{1e}k" +256 "\u{1f}k" +256 "@\u{8}" +256 "=\u{18}" +256 ">\u{18}" +256 "?\u{18}" +256 "@\u{18}" +256 "[\u{18}" +256 "\\\u{18}" +256 "]\u{18}" +256 "`\u{18}" +256 "\u{13}7" +256 "b\u{18}" +256 "c\u{18}" +256 "d\u{18}" +256 "e\u{18}" +256 "f\u{18}" +256 "g\u{18}" +256 "\u{5}'" +256 "\u{6}'" +256 "h\u{18}" +256 "i\u{18}" +256 "j\u{18}" +256 "k\u{18}" +256 "\u{b}'" +256 "l\u{18}" +256 "m\u{18}" +256 "\u{e}'" +256 "\u{f}'" +256 "n\u{18}" +256 "\u{11}'" +256 "\u{12}'" +256 "\u{13}'" +256 "\u{14}'" +256 "\u{15}'" +256 "\u{16}'" +256 "\u{17}'" +256 "\u{18}'" +256 "\u{19}'" +256 "o\u{18}" +256 "p\u{18}" +256 "\u{1c}'" +256 "\u{1d}'" +256 "\u{1e}'" +256 "\u{1f}'" +256 "q\u{18}" +256 "r\u{18}" +256 "s\u{18}" +256 "t\u{18}" +256 "u\u{18}" +256 "v\u{18}" +256 "w\u{18}" +256 "q\u{8}" +256 "x\u{18}" +256 "y\u{18}" +256 "z\u{18}" +256 "{\u{18}" +256 "z\u{8}" +256 "\u{14}7" +256 "\u{1}\u{19}" +256 "\u{2}\u{19}" +256 "\u{7f}\u{8}" +256 "\u{3}\u{19}" +256 "\u{4}\u{19}" +256 "\u{5}\u{19}" +256 "\u{6}\u{19}" +256 "\u{7}\u{19}" +256 "\u{8}\u{19}" +256 "\u{2}\t" +256 "\u{5}l" +256 "\u{6}l" +256 "\t\u{19}" +256 "|\u{2}" +256 "\u{b}\u{19}" +256 "\u{4}\t" +256 "\u{c}\u{19}" +256 "\u{5}\t" +256 "\u{6}\t" +256 "\u{e}\u{19}" +256 "\u{f}\u{19}" +256 "\u{11}l" +256 "\u{e}\u{13}" +256 "\u{13}l" +256 "\u{14}l" +256 "\u{15}l" +256 "\u{16}l" +256 "\u{17}l" +256 "\u{18}l" +256 "\u{19}l" +256 "\u{1a}l" +256 "\u{16}7" +256 "\u{1c}l" +256 "\u{1d}l" +256 "\u{1e}l" +256 "\u{1f}l" +256 "\u{7}\t" +256 "\u{1}>" +256 "\u{3}>" +256 "\u{b}\t" +256 "\u{4}>" +256 "\u{e}\t" +256 "\u{f}\t" +256 "\u{6}>" +256 "\u{11}\t" +256 "\u{12}\t" +256 "\u{13}\t" +256 "\u{14}\t" +256 "\u{15}\t" +256 "\u{16}\t" +256 "\u{19}\t" +256 "\u{1a}\t" +256 "\u{1b}\t" +256 "\u{1c}\t" +256 "\u{1d}\t" +256 "\u{1e}\t" +256 "\u{1f}\t" +256 "\u{7}>" +256 "\u{17}7" +256 "\u{10}\u{19}" +256 "\u{11}\u{19}" +256 "\u{18}7" +256 "^\0" +256 "\u{19}7" +256 "\u{f}>" +256 "\u{10}>" +256 "\u{14}>" +256 "\u{18}>" +256 "\u{1a}>" +256 "\u{5}(" +256 "\u{6}(" +256 "\u{7}(" +256 "\u{1a}7" +256 "\u{1e}>" +256 "\u{1f}>" +256 "\u{12}\u{19}" +256 "\u{13}\u{19}" +256 "\u{f}(" +256 "\u{10}(" +256 "\u{11}(" +256 "\u{12}(" +256 "\u{13}(" +256 "\u{14}(" +256 "\u{15}(" +256 "\u{16}(" +256 "\u{17}(" +256 "\u{18}(" +256 "\u{19}(" +256 "\u{1a}(" +256 "\u{14}\u{19}" +256 "\u{1c}(" +256 "\u{1d}(" +256 "\u{15}\u{19}" +256 "\u{16}\u{19}" +256 "\u{17}\u{19}" +256 "\u{f}\u{13}" +256 "\u{5}m" +256 "\u{6}m" +256 "\u{1c}7" +256 "\u{16}\u{13}" +256 "\u{1e}(" +256 "\u{1f}(" +256 "\u{1b}\u{19}" +256 "\u{1c}\u{19}" +256 "\u{1d}\u{19}" +256 "\u{e}m" +256 "\u{1e}\u{19}" +256 "\u{1f}\u{19}" +256 "\u{1e}7" +256 "\u{12}m" +256 "\u{13}m" +256 "!\u{19}" +256 "\u{15}m" +256 "\u{16}m" +256 "\"\u{19}" +256 "\u{18}m" +256 "\u{19}m" +256 "\u{1a}m" +256 "#\u{19}" +256 "\u{1c}m" +256 "$\u{19}" +256 "\u{1e}m" +256 "\u{1f}m" +256 "%\u{19}" +256 "'\u{19}" +256 "(\u{19}" +256 ")\u{19}" +256 "*\u{19}" +256 "+\u{19}" +256 ",\u{19}" +256 "-\u{19}" +256 ".\u{19}" +256 "/\u{19}" +256 "0\u{19}" +256 "1\u{19}" +256 "{\0" +256 "2\u{19}" +256 "3\u{19}" +256 "~\0" +256 "\u{7f}\0" +256 "4\u{19}" +256 "5\u{19}" +256 "6\u{19}" +256 "7\u{19}" +256 "8\u{19}" +256 "9\u{19}" +256 ":\u{19}" +256 ";\u{19}" +256 "=\u{19}" +256 ">\u{19}" +256 "\u{b}\u{1}" +256 "\u{c}\u{1}" +256 "\r\u{1}" +256 "?\u{19}" +256 "[\u{19}" +256 "\u{13}\u{1}" +256 "\u{14}\u{1}" +256 "\u{15}\u{1}" +256 "^\u{19}" +256 "\u{17}\u{1}" +256 "\u{19}\u{1}" +256 "\u{1a}\u{1}" +256 "\u{1b}\u{1}" +256 "\u{1c}\u{1}" +256 "\u{1d}\u{1}" +256 "\u{1e}\u{1}" +256 "a\u{19}" +256 "\u{1f}\u{1}" +256 "b\u{19}" +256 "c\u{19}" +256 "\u{1f}7" +256 "\u{16}\u{14}" +256 "f\u{19}" +256 "g\u{19}" +256 "!\u{1}" +256 "h\u{19}" +256 "i\u{19}" +256 "j\u{19}" +256 "k\u{19}" +256 "l\u{19}" +256 "$\u{1}" +256 "m\u{19}" +256 "\u{17}\u{14}" +256 "o\u{19}" +256 "p\u{19}" +256 "\u{18}\u{14}" +256 "\u{19}\u{14}" +256 "\u{1a}\u{14}" +256 "\u{2}?" +256 "\u{1b}\u{14}" +256 "\u{1c}\u{14}" +256 "\u{5}n" +256 "\u{6}n" +256 "\u{5}?" +256 "\u{6}?" +256 "\u{7}?" +256 "\u{4})" +256 "\u{8}?" +256 "\u{5})" +256 "\u{6})" +256 "q\u{19}" +256 "\u{f}n" +256 "\u{1d}\u{14}" +256 "\u{11}n" +256 "\u{b}?" +256 "\u{c}?" +256 "\u{14}n" +256 "\u{15}n" +256 "\u{16}n" +256 "\u{17}n" +256 "\u{18}n" +256 "\u{19}n" +256 "\u{1e}\u{14}" +256 "\u{e}?" +256 "\u{f}?" +256 "\u{10}?" +256 "\u{1e}n" +256 "\u{11}?" +256 "\u{12}?" +256 "\u{8})" +256 "\u{13}?" +256 "\u{14}?" +256 "\u{b})" +256 "\u{c})" +256 "\u{15}?" +256 "\u{e})" +256 "\u{16}?" +256 "\u{17}?" +256 "\u{11})" +256 "\u{12})" +256 "\u{13})" +256 "\u{18}?" +256 "\u{19}?" +256 "\u{1a}?" +256 "\u{1b}?" +256 "\u{18})" +256 "\u{19})" +256 "\u{1a})" +256 "\u{1c}?" +256 "\u{1c})" +256 "\u{1d})" +256 "\u{1e})" +256 "\u{1f})" +256 "\u{1d}?" +256 "\u{1e}?" +256 "\u{1f}?" +256 "s\u{19}" +256 "%\u{1}" +256 "\u{1f}\u{14}" +256 "u\u{19}" +256 "v\u{19}" +256 "w\u{19}" +256 "x\u{19}" +256 "&\u{1}" +256 "\u{4}6" +256 "z\u{19}" +256 "*\u{1}" +256 "+\u{1}" +256 "-\u{1}" +256 "!\u{14}" +256 "\u{1}\u{1a}" +256 "\u{2}\u{1a}" +256 "\u{3}\u{1a}" +256 "\u{4}\u{1a}" +256 "\u{5}\u{1a}" +256 "\u{6}\u{1a}" +256 "\u{7}\u{1a}" +256 "\u{8}\u{1a}" +256 "\t\u{1a}" +256 "}\u{2}" +256 "<\u{1}" +256 "\u{b}\u{1a}" +256 "\u{c}\u{1a}" +256 "@\u{1}" +256 "\u{e}\u{1a}" +256 "\\\u{1}" +256 "\u{f}\u{1a}" +256 "^\u{1}" +256 "\u{10}\u{1a}" +256 "`\u{1}" +256 "\u{11}\u{1a}" +256 "\u{12}\u{1a}" +256 "\u{13}\u{1a}" +256 "\u{14}\u{1a}" +256 "\u{15}\u{1a}" +256 "\u{16}\u{1a}" +256 "\u{17}\u{1a}" +256 "\u{5}o" +256 "\u{6}o" +256 "\u{18}\u{1a}" +256 "\"\u{14}" +256 "#\u{14}" +256 "\u{1b}\u{1a}" +256 "\u{1c}\u{1a}" +256 "\u{1d}\u{1a}" +256 "\u{1e}\u{1a}" +256 "\u{e}o" +256 "\u{1f}\u{1a}" +256 "$\u{14}" +256 "\u{11}o" +256 "\u{12}o" +256 "\u{13}o" +256 "\u{14}o" +256 "\u{15}o" +256 "\u{16}o" +256 "\u{17}o" +256 "\u{18}o" +256 "\u{19}o" +256 "!\u{1a}" +256 "%\u{14}" +256 "\u{1c}o" +256 "\u{1d}o" +256 "\u{1e}o" +256 "\u{1f}o" +256 "#\u{1a}" +256 "$\u{1a}" +256 "%\u{1a}" +256 "'\u{14}" +256 ")\u{1a}" +256 "*\u{1a}" +256 "q\u{1}" +256 "+\u{1a}" +256 ",\u{1a}" +256 "-\u{1a}" +256 "\u{5}6" +256 "/\u{1a}" +256 ")\u{14}" +256 "1\u{1a}" +256 "2\u{1a}" +256 "*\u{14}" +256 "4\u{1a}" +256 "5\u{1a}" +256 "\u{1}*" +256 "\u{2}*" +256 "\u{3}*" +256 "\u{4}*" +256 "\u{5}*" +256 "\u{6}*" +256 "\u{7}*" +256 "6\u{1a}" +256 "{\u{1}" +256 "|\u{1}" +256 "\u{b}*" +256 "7\u{1a}" +256 "+\u{14}" +256 "\u{e}*" +256 "\u{f}*" +256 "\u{10}*" +256 "\u{11}*" +256 "\u{12}*" +256 "\u{13}*" +256 "\u{14}*" +256 "\u{15}*" +256 "\u{16}*" +256 "\u{17}*" +256 "\u{18}*" +256 "\u{19}*" +256 "\u{1a}*" +256 ",\u{14}" +256 "\u{1c}*" +256 "\u{1d}*" +256 "\u{1e}*" +256 "\u{1f}*" +256 "~\u{1}" +256 "\u{7f}\u{1}" +256 "\u{1}@" +256 "-\u{14}" +256 "\u{3}@" +256 "\u{4}@" +256 "\u{5}@" +256 "\u{6}@" +256 "\u{7}@" +256 "\u{1}\u{b}" +256 "\u{2}\u{b}" +256 "\u{8}@" +256 "\u{4}\u{b}" +256 "\u{5}\u{b}" +256 "\u{6}\u{b}" +256 "\u{7}\u{b}" +256 "8\u{1a}" +256 "\t\u{b}" +256 "9\u{1a}" +256 "\u{b}@" +256 "\u{c}@" +256 ":\u{1a}" +256 "\u{e}@" +256 "\u{f}@" +256 "\u{5}p" +256 "\u{10}@" +256 "\u{11}@" +256 "\u{12}@" +256 "\u{c}\u{b}" +256 "\u{13}@" +256 "\u{14}@" +256 "\u{e}\u{b}" +256 "\u{f}\u{b}" +256 "\u{e}p" +256 "\u{16}@" +256 "\u{11}p" +256 "\u{13}p" +256 "\u{18}@" +256 "\u{15}p" +256 "\u{19}@" +256 "\u{1a}@" +256 "\u{18}p" +256 "\u{19}p" +256 "\u{1b}@" +256 "\u{1c}@" +256 "\u{1c}p" +256 "\u{1e}p" +256 "\u{11}\u{b}" +256 "\u{12}\u{b}" +256 "\u{13}\u{b}" +256 "\u{14}\u{b}" +256 "\u{15}\u{b}" +256 "\u{16}\u{b}" +256 "\u{17}\u{b}" +256 "\u{18}\u{b}" +256 "\u{19}\u{b}" +256 "\u{1a}\u{b}" +256 "\u{1b}\u{b}" +256 "\u{1c}\u{b}" +256 "\u{1d}\u{b}" +256 "\u{1e}\u{b}" +256 "\u{1f}\u{b}" +256 "\u{1f}@" +256 "!\u{b}" +256 ";\u{1a}" +256 "$\u{b}" +256 "%\u{b}" +256 "'\u{b}" +256 "<\u{1a}" +256 "=\u{1a}" +256 "*\u{b}" +256 "+\u{b}" +256 ".\u{14}" +256 "-\u{b}" +256 "?\u{1a}" +256 "/\u{b}" +256 "@\u{1a}" +256 "[\u{1a}" +256 "\\\u{1a}" +256 "3\u{b}" +256 "4\u{b}" +256 "5\u{b}" +256 "6\u{b}" +256 "7\u{b}" +256 "8\u{b}" +256 "9\u{b}" +256 "]\u{1a}" +256 ";\u{b}" +256 "\u{1}+" +256 "\u{2}+" +256 "\u{3}+" +256 "\u{4}+" +256 "\u{5}+" +256 "\u{6}+" +256 "\u{8}+" +256 "=\u{b}" +256 "`\u{1a}" +256 "\u{b}+" +256 "\u{c}+" +256 "a\u{1a}" +256 "\u{e}+" +256 "\u{f}+" +256 "\u{10}+" +256 "\u{12}+" +256 "\u{13}+" +256 "\u{15}+" +256 "\u{16}+" +256 "\u{17}+" +256 "\u{18}+" +256 "b\u{1a}" +256 "c\u{1a}" +256 "\u{2}q" +256 "/\u{14}" +256 "\u{4}q" +256 "\u{5}q" +256 "\u{6}q" +256 "\u{7}q" +256 "\u{8}q" +256 "\u{19}+" +256 "\u{1a}+" +256 "\u{b}q" +256 "\u{6}6" +256 "\u{1b}+" +256 "\u{e}q" +256 "\u{f}q" +256 "\u{10}q" +256 "\u{11}q" +256 "f\u{1a}" +256 "\u{13}q" +256 "\u{14}q" +256 "\u{15}q" +256 "\u{16}q" +256 "\u{17}q" +256 "\u{18}q" +256 "\u{19}q" +256 "\u{1a}q" +256 "\u{1b}q" +256 "\u{1c}q" +256 "\u{1d}q" +256 "\u{1e}q" +256 "\u{1f}q" +256 "\u{1c}+" +256 "\u{1d}+" +256 "\u{1e}+" +256 "\u{1f}+" +256 "g\u{1a}" +256 "@\u{b}" +256 "[\u{b}" +256 "\\\u{b}" +256 "]\u{b}" +256 "_\u{b}" +256 "h\u{1a}" +256 "b\u{b}" +256 "c\u{b}" +256 "\u{7}6" +256 "j\u{1a}" +256 "f\u{b}" +256 "k\u{1a}" +256 "l\u{1a}" +256 "m\u{1a}" +256 "j\u{b}" +256 "\u{17}\u{13}" +256 "o\u{1a}" +256 "p\u{1a}" +256 "q\u{1a}" +256 "/\u{13}" +256 "4\u{14}" +256 "q\u{b}" +256 "5\u{14}" +256 "u\u{1a}" +256 "v\u{1a}" +256 "w\u{1a}" +256 "v\u{b}" +256 "w\u{b}" +256 "x\u{b}" +256 "x\u{1a}" +256 "z\u{b}" +256 "{\u{b}" +256 "|\u{b}" +256 "}\u{b}" +256 "y\u{1a}" +256 "\u{1}\u{c}" +256 "\u{2}\u{c}" +256 "z\u{1a}" +256 "\u{4}\u{c}" +256 "\u{5}\u{c}" +256 "\u{6}\u{c}" +256 "\u{7}\u{c}" +256 "\u{8}\u{c}" +256 "}\u{1a}" +256 "~\u{1a}" +256 "\u{7f}\u{1a}" +256 "\u{e}\u{c}" +256 "\u{f}\u{c}" +256 "0\u{13}" +256 "\u{11}\u{c}" +256 "\u{12}\u{c}" +256 "\u{13}\u{c}" +256 "\u{14}\u{c}" +256 "\u{15}\u{c}" +256 "\u{16}\u{c}" +256 "\u{17}\u{c}" +256 "\u{18}\u{c}" +256 "\u{19}\u{c}" +256 "\u{1a}\u{c}" +256 "\u{1b}\u{c}" +256 "7\u{14}" +256 "\u{2}\u{1b}" +256 "\u{3}\u{1b}" +256 "\u{4}\u{1b}" +256 "\u{5}r" +256 "\u{5}\u{1b}" +256 "\u{6}\u{1b}" +256 "8\u{14}" +256 "\u{1c}\u{c}" +256 "\u{1d}\u{c}" +256 "9\u{14}" +256 "\u{7f}+" +256 "\u{e}r" +256 "\u{f}r" +256 ":\u{14}" +256 "\u{11}r" +256 "\u{b}\u{1b}" +256 "\u{13}r" +256 "\t\u{13}" +256 "\u{15}r" +256 "\u{16}r" +256 "\u{c}\u{1b}" +256 "\u{18}r" +256 ";\u{14}" +256 "\u{e}\u{1b}" +256 "<\u{14}" +256 "\u{10}\u{1b}" +256 "\u{1d}r" +256 "\u{1e}r" +256 "\u{1f}r" +256 "\u{11}\u{1b}" +256 "\u{12}\u{1b}" +256 "\u{13}\u{1b}" +256 "\u{14}\u{1b}" +256 "\u{5}," +256 "\u{6}," +256 "\u{7}," +256 "\u{8}," +256 "\u{1e}\u{c}" +256 "\u{1f}\u{c}" +256 "\u{b}," +256 "=\u{14}" +256 "\t\u{2}" +256 "\u{e}," +256 "\u{16}\u{1b}" +256 "\u{17}\u{1b}" +256 "\u{11}," +256 "\u{18}\u{1b}" +256 "\u{13}," +256 "\u{14}," +256 "\u{15}," +256 "\u{16}," +256 "\u{17}," +256 "\u{18}," +256 "\u{19}," +256 "\u{1a}," +256 "\u{1b}," +256 "\u{1c}," +256 "\u{1d}," +256 "\u{1e}," +256 "\u{1f}," +256 "\u{19}\u{1b}" +256 ">\u{14}" +256 "?\u{14}" +256 "$\u{c}" +256 "%\u{c}" +256 "&\u{c}" +256 "\u{1}[" +256 "\u{2}[" +256 "\u{3}[" +256 "\u{4}[" +256 "+\u{c}" +256 "\u{5}[" +256 "\u{7}[" +256 "@\u{14}" +256 "\u{b}[" +256 "\u{1c}\u{1b}" +256 "\u{10}[" +256 "\u{12}[" +256 "\u{13}[" +256 "<\u{c}" +256 "=\u{c}" +256 "\u{16}[" +256 "@\u{c}" +256 "[\u{c}" +256 "\\\u{c}" +256 "]\u{c}" +256 "^\u{c}" +256 "_\u{c}" +256 "`\u{c}" +256 "\u{19}[" +256 "\u{1a}[" +256 "\u{1d}\u{1b}" +256 "\u{1d}[" +256 "\u{1e}[" +256 "\u{1e}\u{1b}" +256 "\u{1f}\u{1b}" +256 "`\u{14}" +256 "a\u{14}" +256 "\u{b}6" +256 "1\u{13}" +256 "d\u{14}" +256 "\u{11}s" +256 "2\u{13}" +256 "\u{13}s" +256 "\u{e}6" +256 "\u{15}s" +256 "\u{b}\u{3}" +256 "\u{17}s" +256 "\u{18}s" +256 "g\u{14}" +256 "h\u{14}" +256 "i\u{14}" +256 "j\u{14}" +256 "\u{1e}s" +256 "k\u{14}" +256 "\u{12}\u{3}" +256 "l\u{14}" +256 "\u{14}\u{3}" +256 "j\u{c}" +256 "\u{15}\u{3}" +256 "\u{16}\u{3}" +256 "\u{17}\u{3}" +256 "m\u{14}" +256 "\u{19}\u{3}" +256 "\u{1a}\u{3}" +256 "\u{1b}\u{3}" +256 "\u{1c}\u{3}" +256 "\u{1d}\u{3}" +256 "\u{1e}\u{3}" +256 "\u{1f}\u{3}" +256 "\u{18}\u{13}" +256 "!\u{3}" +256 "o\u{14}" +256 "#\u{3}" +256 "$\u{3}" +256 "{\u{c}" +256 "|\u{c}" +256 "%\u{3}" +256 "~\u{c}" +256 "\u{7f}\u{c}" +256 "\u{b}\u{2}" +256 "p\u{14}" +256 "\u{2}-" +256 "\u{3}-" +256 "\u{4}-" +256 "\u{5}-" +256 "q\u{14}" +256 "r\u{14}" +256 "*\u{3}" +256 "+\u{3}" +256 "\u{10}6" +256 "\u{11}6" +256 "\u{12}6" +256 "\u{e}-" +256 "/\u{3}" +256 "\u{10}-" +256 "\u{11}-" +256 "\u{12}-" +256 "\u{13}-" +256 "\u{14}-" +256 "\u{15}-" +256 "\u{16}-" +256 "\u{17}-" +256 "\u{18}-" +256 "\u{19}-" +256 "\u{1a}-" +256 "\u{13}6" +256 "\u{1c}-" +256 "\u{1d}-" +256 "\u{1e}-" +256 "\u{1f}-" +256 "\u{14}6" +256 "\u{19}\u{13}" +256 "\u{16}6" +256 "\u{17}6" +256 "\u{5}8" +256 "\u{c}\u{2}" +256 "\u{6}8" +256 "\u{e}\u{2}" +256 "\u{f}\u{2}" +256 "\u{7}8" +256 "\u{18}6" +256 "u\u{14}" +256 ":\u{3}" +256 "v\u{14}" +256 "<\u{3}" +256 "=\u{3}" +256 "\u{5}t" +256 "\u{b}8" +256 "w\u{14}" +256 "@\u{3}" +256 "x\u{14}" +256 "\u{12}\r" +256 "\\\u{3}" +256 "]\u{3}" +256 "\u{14}\r" +256 "\u{e}t" +256 "^\u{3}" +256 "\u{e}8" +256 "\u{11}t" +256 "\u{12}t" +256 "\u{13}t" +256 "\u{19}6" +256 "\u{10}8" +256 "\u{16}t" +256 "\u{11}8" +256 "\u{18}t" +256 "\u{12}8" +256 "\u{14}8" +256 "\u{1a}6" +256 "\u{16}8" +256 "\u{1f}t" +256 "\u{15}\r" +256 "\u{16}\r" +256 "\u{17}\r" +256 "\u{18}\r" +256 "\u{19}\r" +256 "_\u{3}" +256 "\u{1b}\r" +256 "\u{1c}\r" +256 "\u{1d}\r" +256 "\u{1e}\r" +256 "\u{1f}\r" +256 "`\u{3}" +256 "\u{11}\u{2}" +256 "\u{12}\u{2}" +256 "\u{13}\u{2}" +256 "\u{14}\u{2}" +256 "\u{15}\u{2}" +256 "\u{16}\u{2}" +256 "\u{17}\u{2}" +256 "\u{18}8" +256 "\u{19}\u{2}" +256 "\u{1a}\u{2}" +256 "\u{1b}\u{2}" +256 "\u{1c}\u{2}" +256 "\u{1d}\u{2}" +256 "\u{1e}\u{2}" +256 "\u{1f}\u{2}" +256 "\u{19}8" +256 "\u{7f}\u{1b}" +256 "\u{1a}8" +256 "#\u{2}" +256 "$\u{2}" +256 "%\u{2}" +256 "\u{f}\\" +256 "\u{10}\\" +256 "\u{11}\\" +256 "\u{12}\\" +256 "\u{13}\\" +256 "+\u{2}" +256 "\u{14}\\" +256 "\u{15}\\" +256 "\u{16}\\" +256 "\u{17}\\" +256 "\u{18}\\" +256 "\u{19}\\" +256 "\u{1a}\\" +256 "\u{1b}6" +256 "\u{1c}\\" +256 "\u{1d}\\" +256 "\u{1e}\\" +256 "\u{1f}\\" +256 "\u{1c}8" +256 "\u{1}\u{1c}" +256 "\u{2}\u{1c}" +256 "\u{3}\u{1c}" +256 "\u{4}\u{1c}" +256 "\u{5}\u{1c}" +256 "\u{4}." +256 "\u{5}." +256 "\u{6}." +256 "\u{7}." +256 "\u{6}\u{1c}" +256 "\u{7}\u{1c}" +256 "\u{8}\u{1c}" +256 "\u{b}." +256 "\t\u{1c}" +256 "\u{1c}6" +256 "\u{e}." +256 "\u{b}\u{1c}" +256 "\u{c}\u{1c}" +256 "\u{11}." +256 "\u{e}\u{1c}" +256 "\u{f}\u{1c}" +256 "\u{10}\u{1c}" +256 "\u{5}u" +256 "\u{6}u" +256 "\u{11}\u{1c}" +256 "\u{12}\u{1c}" +256 "\u{12}." +256 "\u{13}." +256 "\u{13}\u{1c}" +256 "\u{14}." +256 "\u{15}." +256 "\u{e}u" +256 "\u{f}u" +256 "\u{10}u" +256 "\u{11}u" +256 "\u{12}u" +256 "\u{13}u" +256 "\u{14}u" +256 "\u{15}u" +256 "\u{16}u" +256 "\u{17}u" +256 "\u{18}u" +256 "\u{19}u" +256 "\u{1a}u" +256 "\u{14}\u{1c}" +256 "\u{15}\u{1c}" +256 "\u{1d}u" +256 "\u{1e}u" +256 "\u{1f}u" +256 "\u{16}." +256 "\u{17}." +256 "\u{18}." +256 "\u{19}." +256 "\u{1a}." +256 "\u{16}\u{1c}" +256 "\u{1c}." +256 "\u{1d}." +256 "\u{1e}." +256 "\u{1f}." +256 "<\u{2}" +256 "=\u{2}" +256 "\u{17}\u{1c}" +256 "\u{18}\u{1c}" +256 "@\u{2}" +256 "[\u{2}" +256 "\\\u{2}" +256 "]\u{2}" +256 "^\u{2}" +256 "_\u{2}" +256 "`\u{2}" +256 "\u{19}\u{1c}" +256 "\u{1a}\u{1c}" +256 "\u{1e}8" +256 "\u{1f}8" +256 "\u{1d}\u{1c}" +256 "\u{1e}\u{1c}" +256 "\u{1f}\u{1c}" +256 "y\u{14}" +256 "!\u{1c}" +256 "z\u{14}" +256 "#\u{1c}" +256 "$\u{1c}" +256 "%\u{1c}" +256 "\u{7f}\r" +256 "'\u{1c}" +256 "\u{2}\u{e}" +256 ")\u{1c}" +256 "\u{4}\u{e}" +256 "\u{5}\u{e}" +256 "\u{6}\u{e}" +256 "*\u{1c}" +256 "+\u{1c}" +256 "\t\u{e}" +256 ",\u{1c}" +256 "\u{b}\u{e}" +256 "-\u{1c}" +256 "\r\u{e}" +256 ".\u{1c}" +256 "/\u{1c}" +256 "}\u{14}" +256 "\u{12}\u{e}" +256 "\u{13}\u{e}" +256 "\u{14}\u{e}" +256 "\u{15}\u{e}" +256 "\u{16}\u{e}" +256 "\u{17}\u{e}" +256 "\u{18}\u{e}" +256 "\u{19}\u{e}" +256 "\u{1a}\u{e}" +256 "\u{1b}\u{e}" +256 "\u{1c}\u{e}" +256 "\u{1d}\u{e}" +256 "\u{1e}\u{e}" +256 "\u{1f}\u{e}" +256 "~\u{14}" +256 "3\u{1c}" +256 "5\u{1c}" +256 "6\u{1c}" +256 "7\u{1c}" +256 "8\u{1c}" +256 "\u{5}v" +256 "\u{6}v" +256 "9\u{1c}" +256 ":\u{1c}" +256 ";\u{1c}" +256 "#\u{e}" +256 "%\u{e}" +256 "\u{e}v" +256 "\u{f}v" +256 "\u{10}v" +256 "\u{11}v" +256 "\u{12}v" +256 "\u{13}v" +256 "\u{14}v" +256 "\u{15}v" +256 "\u{16}v" +256 "\u{17}v" +256 "\u{18}v" +256 "\u{19}v" +256 "\u{1a}v" +256 "=\u{1c}" +256 "\u{1c}v" +256 "\u{1d}v" +256 "\u{1e}v" +256 "\u{1f}v" +256 "'\u{e}" +256 ">\u{1c}" +256 ")\u{e}" +256 "*\u{e}" +256 "?\u{1c}" +256 "@\u{1c}" +256 "\\\u{1c}" +256 "\u{3}/" +256 "\u{4}/" +256 "\u{5}/" +256 "\u{6}/" +256 "\u{7}/" +256 "+\u{e}" +256 "-\u{e}" +256 "\u{b}/" +256 "^\u{1c}" +256 "\u{f}/" +256 "\u{10}/" +256 "\u{12}/" +256 "\u{13}/" +256 "\u{14}/" +256 "\u{15}/" +256 "\u{16}/" +256 "\u{17}/" +256 "\u{19}/" +256 "\u{1a}/" +256 "\u{1b}/" +256 "\u{1c}/" +256 "\u{1d}/" +256 "\u{1d}6" +256 "\u{1f}/" +256 "/\u{e}" +256 "\u{1}]" +256 "1\u{e}" +256 "2\u{e}" +256 "3\u{e}" +256 "4\u{e}" +256 "5\u{e}" +256 "\u{2}]" +256 "8\u{e}" +256 "9\u{e}" +256 ":\u{e}" +256 ";\u{e}" +256 "<\u{e}" +256 "=\u{e}" +256 "\u{3}]" +256 "@\u{e}" +256 "[\u{e}" +256 "\\\u{e}" +256 "]\u{e}" +256 "^\u{e}" +256 "`\u{e}" +256 "\u{4}]" +256 "b\u{e}" +256 "c\u{e}" +256 "\u{5}]" +256 "\u{6}]" +256 "f\u{e}" +256 "g\u{e}" +256 "\u{7}]" +256 "\u{1}\u{15}" +256 "`\u{1c}" +256 "a\u{1c}" +256 "\u{b}]" +256 "\u{c}]" +256 "\u{5}w" +256 "\u{6}w" +256 "\u{2}\u{15}" +256 "\u{e}]" +256 "\u{f}]" +256 "j\u{e}" +256 "\u{10}]" +256 "k\u{e}" +256 "\u{11}]" +256 "\u{e}w" +256 "\u{12}]" +256 "\u{13}]" +256 "\u{11}w" +256 "\u{12}w" +256 "\u{13}w" +256 "\u{14}w" +256 "\u{15}w" +256 "\u{14}]" +256 "\u{17}w" +256 "\u{18}w" +256 "\u{19}w" +256 "\u{1a}w" +256 "\u{15}]" +256 "\u{1c}w" +256 "\u{1d}w" +256 "\u{1e}w" +256 "\u{1f}w" +256 "\u{16}]" +256 "\u{17}]" +256 "\u{18}]" +256 "p\u{e}" +256 "q\u{e}" +256 "\u{19}]" +256 "\u{1a}]" +256 "c\u{1c}" +256 "v\u{e}" +256 "w\u{e}" +256 "x\u{e}" +256 "y\u{e}" +256 "z\u{e}" +256 "}\u{e}" +256 "\u{1}\u{f}" +256 "\u{2}\u{f}" +256 "\u{1e}]" +256 "\u{4}\u{f}" +256 "\u{5}\u{f}" +256 "\u{6}\u{f}" +256 "\u{7}\u{f}" +256 "\u{1f}]" +256 "\t\u{f}" +256 "d\u{1c}" +256 "\u{b}\u{f}" +256 "\u{c}\u{f}" +256 "\u{1e}6" +256 "f\u{1c}" +256 "g\u{1c}" +256 "h\u{1c}" +256 "i\u{1c}" +256 "j\u{1c}" +256 "\u{5}0" +256 "\u{6}0" +256 "\u{7}0" +256 "k\u{1c}" +256 "\u{4}\u{15}" +256 "m\u{1c}" +256 "\u{5}\u{15}" +256 "o\u{1c}" +256 "\u{11}\u{f}" +256 "\u{e}0" +256 "p\u{1c}" +256 "\u{10}0" +256 "\u{11}0" +256 "\u{12}0" +256 "\u{13}0" +256 "\u{14}0" +256 "q\u{1c}" +256 "\u{16}0" +256 "\u{17}0" +256 "\u{18}0" +256 "\u{19}0" +256 "\u{1a}0" +256 "r\u{1c}" +256 "\u{1c}0" +256 "s\u{1c}" +256 "t\u{1c}" +256 "u\u{1c}" +256 "v\u{1c}" +256 "\u{13}\u{f}" +256 "\u{14}\u{f}" +256 "w\u{1c}" +256 "x\u{1c}" +256 "\u{6}\u{15}" +256 "\u{7}\u{15}" +256 "{\u{1c}" +256 "\u{4}x" +256 "\u{5}x" +256 "\u{6}x" +256 "\u{7}x" +256 "\u{15}\u{f}" +256 "\u{16}\u{f}" +256 "\u{b}x" +256 "}\u{1c}" +256 "\u{e}x" +256 "\u{f}x" +256 "\u{11}x" +256 "\u{12}x" +256 "\u{13}x" +256 "\u{14}x" +256 "\u{15}x" +256 "\u{16}x" +256 "\u{17}x" +256 "\u{18}x" +256 "\u{19}x" +256 "\u{1a}x" +256 "\u{8}\u{15}" +256 "\u{1c}x" +256 "\u{1}\u{1d}" +256 "\u{1e}x" +256 "\u{1f}x" +256 "\u{17}\u{f}" +256 "\u{18}\u{f}" +256 "\u{19}\u{f}" +256 "\u{1a}\u{f}" +256 "\u{1b}\u{f}" +256 "\u{1c}\u{f}" +256 "\u{1d}\u{f}" +256 "\u{1e}\u{f}" +256 "\u{1f}\u{f}" +256 "\u{2}\u{1d}" +256 "!\u{f}" +256 "\"\u{f}" +256 "#\u{f}" +256 "$\u{f}" +256 "%\u{f}" +256 "&\u{f}" +256 "\u{3}\u{1d}" +256 "\u{4}\u{1d}" +256 ")\u{f}" +256 "*\u{f}" +256 "+\u{f}" +256 ",\u{f}" +256 "\u{5}\u{1d}" +256 ".\u{f}" +256 "/\u{f}" +256 "\u{6}\u{1d}" +256 "\u{7}\u{1d}" +256 "\u{8}\u{1d}" +256 "\t\u{1d}" +256 "\t\u{15}" +256 "\u{e}\u{1d}" +256 "\u{f}\u{1d}" +256 ":\u{f}" +256 ";\u{f}" +256 "<\u{f}" +256 "=\u{f}" +256 ">\u{f}" +256 "?\u{f}" +256 "@\u{f}" +256 "[\u{f}" +256 "\\\u{f}" +256 "]\u{f}" +256 "^\u{f}" +256 "\u{10}\u{1d}" +256 "\u{11}\u{1d}" +256 "\u{12}\u{1d}" +256 "c\u{f}" +256 "\u{13}\u{1d}" +256 "\u{14}\u{1d}" +256 "\u{15}\u{1d}" +256 "\u{16}\u{1d}" +256 "\u{17}\u{1d}" +256 "i\u{f}" +256 "j\u{f}" +256 "\u{18}\u{1d}" +256 "l\u{f}" +256 "\u{19}\u{1d}" +256 "\u{1a}\u{1d}" +256 "\u{1b}\u{1d}" +256 "p\u{f}" +256 "\u{1f}6" +256 "\u{b}\u{15}" +256 "\u{1e}\u{1d}" +256 "q\u{f}" +256 "\u{1f}\u{1d}" +256 "\u{c}\u{15}" +256 "!\u{1d}" +256 "\u{2}y" +256 "#\u{1d}" +256 "$\u{1d}" +256 "\u{5}y" +256 "\u{6}y" +256 "\u{7}y" +256 "%\u{1d}" +256 "\u{5}1" +256 "\u{6}1" +256 "\u{b}y" +256 "'\u{1d}" +256 "\u{e}y" +256 "(\u{1d}" +256 "\u{10}y" +256 "\u{11}y" +256 "\u{12}y" +256 "\u{13}y" +256 "\u{14}y" +256 "\u{15}y" +256 "\u{16}y" +256 "\u{17}y" +256 "\u{18}y" +256 "\u{19}y" +256 "\u{1a}y" +256 "\u{1b}y" +256 "\u{e}\u{15}" +256 "\u{1d}y" +256 "\u{1e}y" +256 "\u{1f}y" +256 "\0^" +256 "\u{1}^" +256 "\u{3}^" +256 "u\u{f}" +256 "v\u{f}" +256 "\u{e}1" +256 "\u{4}^" +256 "\u{10}1" +256 "\u{11}1" +256 "\u{5}^" +256 "\u{13}1" +256 "\u{14}1" +256 "\u{16}1" +256 "\u{17}1" +256 "\u{18}1" +256 "\u{19}1" +256 "\u{1a}1" +256 "\u{8}^" +256 ")\u{1d}" +256 "*\u{1d}" +256 "\u{1f}1" +256 "w\u{f}" +256 "y\u{f}" +256 "z\u{f}" +256 "{\u{f}" +256 "|\u{f}" +256 "}\u{f}" +256 "~\u{f}" +256 "\u{7f}\u{f}" +256 "\u{c}^" +256 "\u{f}\u{15}" +256 "\u{2}\u{10}" +256 "\u{4}\u{10}" +256 "\u{5}\u{10}" +256 "\u{6}\u{10}" +256 "\u{7}\u{10}" +256 "\u{8}\u{10}" +256 "\t\u{10}" +256 "q\u{2}" +256 "\u{b}\u{10}" +256 "\u{c}\u{10}" +256 "\u{e}\u{10}" +256 "\u{f}^" +256 "\u{10}^" +256 "\u{12}^" +256 "\u{13}\u{10}" +256 "\u{15}\u{10}" +256 "\u{16}\u{10}" +256 "\u{17}\u{10}" +256 "\u{18}\u{10}" +256 "\u{19}\u{10}" +256 "\u{1a}\u{10}" +256 "\u{1b}\u{10}" +256 "\u{1c}\u{10}" +256 "\u{1d}\u{10}" +256 "\u{1e}\u{10}" +256 "\u{1f}\u{10}" +256 "\u{14}^" +256 "!\u{10}" +256 "\u{10}\u{15}" +256 "#\u{10}" +256 "$\u{10}" +256 "\u{16}^" +256 "\u{17}^" +256 "\u{2}z" +256 "\u{4}z" +256 "\u{5}z" +256 "\u{6}z" +256 "\u{7}z" +256 "%\u{10}" +256 "\u{b}z" +256 "\u{1a}^" +256 "\u{1b}^" +256 "\u{e}z" +256 "\u{f}z" +256 "\u{10}z" +256 "\u{11}z" +256 "\u{13}z" +256 "\u{14}z" +256 "\u{15}z" +256 "\u{16}z" +256 "\u{17}z" +256 "\u{18}z" +256 "\u{19}z" +256 "\u{1a}z" +256 "\u{1d}^" +256 "\u{1c}z" +256 "\u{1e}z" +256 "+\u{1d}" +256 "(\u{10}" +256 ",\u{1d}" +256 "*\u{10}" +256 "+\u{10}" +256 ",\u{10}" +256 "-\u{10}" +256 ".\u{10}" +256 "/\u{10}" +256 "-\u{1d}" +256 "1\u{10}" +256 "2\u{10}" +256 "3\u{10}" +256 "4\u{10}" +256 "5\u{10}" +256 "6\u{10}" +256 "7\u{10}" +256 "8\u{10}" +256 "9\u{10}" +256 ":\u{10}" +256 ";\u{10}" +256 ".\u{1d}" +256 "/\u{1d}" +256 "\u{11}\u{15}" +256 "<\u{10}" +256 "3\u{13}" +256 "4\u{13}" +256 "\u{5}2" +256 "\u{6}2" +256 "\u{7}2" +256 "5\u{13}" +256 "=\u{10}" +256 ">\u{10}" +256 "6\u{13}" +256 "?\u{10}" +256 "@\u{10}" +256 "7\u{13}" +256 "\u{17}\u{15}" +256 "\u{10}2" +256 "\u{18}\u{15}" +256 "\u{12}2" +256 "\u{19}\u{15}" +256 "\u{14}2" +256 "\u{1a}\u{15}" +256 "\u{16}2" +256 "\u{17}2" +256 "\u{18}2" +256 "\u{19}2" +256 "\u{1a}2" +256 ":\u{1d}" +256 "\u{1c}2" +256 ";\u{1d}" +256 "\u{1e}2" +256 "[\u{10}" +256 "\\\u{10}" +256 "]\u{10}" +256 "^\u{10}" +256 "_\u{10}" +256 "`\u{10}" +256 ">\u{1d}" +256 "c\u{10}" +256 "?\u{1d}" +256 "@\u{1d}" +256 "^\u{1d}" +256 "\u{1}{" +256 "\u{2}{" +256 "\u{4}{" +256 "\u{6}{" +256 "j\u{10}" +256 "k\u{10}" +256 "\u{b}{" +256 "\u{1b}\u{15}" +256 "\u{1c}\u{15}" +256 "\u{10}{" +256 "\u{18}{" +256 "\u{19}{" +256 "c\u{1d}" +256 "\u{1d}\u{15}" +256 "\u{1e}\u{15}" +256 "f\u{1d}" +256 "\u{1f}\u{15}" +256 "i\u{1d}" +256 "j\u{1d}" +256 "k\u{1d}" +256 "l\u{1d}" +256 "v\u{10}" +256 "w\u{10}" +256 "m\u{1d}" +256 "!\u{15}" +256 "z\u{10}" +256 "|\u{10}" +256 "}\u{10}" +256 "\u{7f}\u{10}" +256 "o\u{1d}" +256 "\"\u{15}" +256 "\u{2}\u{11}" +256 "q\u{1d}" +256 "\u{4}\u{11}" +256 "\u{5}\u{11}" +256 "\u{6}\u{11}" +256 "\u{7}\u{11}" +256 "\u{8}\u{11}" +256 "\t\u{11}" +256 "#\u{15}" +256 "\u{b}\u{11}" +256 "\u{c}\u{11}" +256 "\u{e}\u{11}" +256 "\u{f}\u{11}" +256 "$\u{15}" +256 "%\u{15}" +256 "u\u{1d}" +256 "v\u{1d}" +256 "\u{14}\u{11}" +256 "w\u{1d}" +256 "\u{16}\u{11}" +256 "\u{17}\u{11}" +256 "\u{18}\u{11}" +256 "\u{19}\u{11}" +256 "\u{1a}\u{11}" +256 "\u{1b}\u{11}" +256 "\u{1c}\u{11}" +256 "\u{1d}\u{11}" +256 "\u{1e}\u{11}" +256 "\u{1f}\u{11}" +256 "'\u{15}" +256 "9\u{13}" +256 "\u{5}3" +256 "\u{6}3" +256 "\u{7}3" +256 "!\u{11}" +256 "\u{b}3" +256 ")\u{15}" +256 "#\u{11}" +256 "\u{e}3" +256 "\u{1}\u{1e}" +256 "\u{10}3" +256 "\u{2}\u{1e}" +256 "\u{3}\u{1e}" +256 "\u{1}|" +256 "\u{2}|" +256 "\u{3}|" +256 "\u{4}|" +256 "\u{5}|" +256 "\u{4}\u{1e}" +256 "\u{11}3" +256 "\u{12}3" +256 "\u{c}|" +256 "\u{5}\u{1e}" +256 "\u{f}|" +256 "\u{10}|" +256 "\u{11}|" +256 "\u{12}|" +256 "\u{16}|" +256 "\u{1a}|" +256 "\u{6}\u{1e}" +256 "\u{1c}|" +256 "\u{1f}|" +256 "\u{13}3" +256 "\u{14}3" +256 "\u{7}\u{1e}" +256 "\u{16}3" +256 "\u{17}3" +256 "\u{18}3" +256 "\u{19}3" +256 "\u{1a}3" +256 "\u{1b}3" +256 "\u{1c}3" +256 "\u{8}\u{1e}" +256 "\u{1e}3" +256 "\u{1f}3" +256 "$\u{11}" +256 "%\u{11}" +256 "'\u{11}" +256 "(\u{11}" +256 ")\u{11}" +256 "*\u{11}" +256 "+\u{11}" +256 ",\u{11}" +256 "-\u{11}" +256 ".\u{11}" +256 "/\u{11}" +256 "0\u{11}" +256 "1\u{11}" +256 "\t\u{1e}" +256 "3\u{11}" +256 "4\u{11}" +256 "5\u{11}" +256 "6\u{11}" +256 "7\u{11}" +256 "8\u{11}" +256 "9\u{11}" +256 ":\u{11}" +256 ";\u{11}" +256 ">\u{11}" +256 "?\u{11}" +256 "@\u{11}" +256 "[\u{11}" +256 "\\\u{11}" +256 "]\u{11}" +256 "^\u{11}" +256 "_\u{11}" +256 "`\u{11}" +256 "a\u{11}" +256 "b\u{11}" +256 "*\u{15}" +256 "d\u{11}" +256 "+\u{15}" +256 "f\u{11}" +256 "g\u{11}" +256 "h\u{11}" +256 "i\u{11}" +256 "j\u{11}" +256 "k\u{11}" +256 "l\u{11}" +256 "m\u{11}" +256 "\u{1}_" +256 "p\u{11}" +256 "q\u{11}" +256 "s\u{11}" +256 "u\u{11}" +256 "\u{1}}" +256 "\u{2}}" +256 "\u{3}}" +256 "\u{4}}" +256 "\u{6}}" +256 "\u{7}}" +256 "v\u{11}" +256 "w\u{11}" +256 "\u{b}}" +256 "\u{c}}" +256 "x\u{11}" +256 "\u{e}}" +256 "\u{f}}" +256 "\u{10}}" +256 "\u{1f}}" +256 "y\u{11}" +256 "z\u{11}" +256 "|\u{11}" +256 "}\u{11}" +256 "\u{7f}\u{11}" +256 "\u{8}_" +256 ",\u{15}" +256 "\u{2}\u{12}" +256 "\u{b}\u{1e}" +256 "\u{b}_" +256 "-\u{15}" +256 ".\u{15}" +256 "/\u{15}" +256 "\u{5}4" +256 "\u{6}4" +256 "\u{7}4" +256 "\u{10}_" +256 "\u{11}_" +256 "\u{b}4" +256 "\u{5}\u{12}" +256 "\u{6}\u{12}" +256 "\u{e}4" +256 "\u{13}_" +256 "\u{10}4" +256 "\u{11}4" +256 "\u{12}4" +256 "\u{13}4" +256 "\u{14}4" +256 "\u{16}4" +256 "\u{17}4" +256 "\u{18}4" +256 "\u{19}4" +256 "\u{1a}4" +256 "\u{1b}4" +256 "\u{1c}4" +256 "\u{1d}4" +256 "\u{1e}4" +256 "\u{1f}4" +256 "\u{7}\u{12}" +256 "\u{8}\u{12}" +256 "\t\u{12}" +256 "\u{b}\u{12}" +256 "\u{c}\u{12}" +256 "\u{e}\u{12}" +256 "\u{f}\u{12}" +256 "\u{19}_" +256 "\u{15}\u{12}" +256 "\u{16}\u{12}" +256 "\u{17}\u{12}" +256 "\u{18}\u{12}" +256 "\u{19}\u{12}" +256 "\u{1a}\u{12}" +256 "\u{1b}\u{12}" +256 "\u{1c}\u{12}" +256 "\u{1d}\u{12}" +256 "\u{1e}\u{12}" +256 "\u{1f}\u{12}" +256 "\u{1b}_" +256 "\0~" +256 "\u{1}~" +256 "\u{2}~" +256 "\u{3}~" +256 "\u{4}~" +256 "\u{6}~" +256 "\u{7}~" +256 "\u{8}~" +256 "!\u{12}" +256 "\u{b}~" +256 "\u{c}~" +256 "\u{e}~" +256 "\u{f}~" +256 "\u{10}~" +256 "\u{11}~" +256 "\u{12}~" +256 "\u{14}~" +256 "\u{15}~" +256 "\u{18}~" +256 "\u{19}~" +256 "\u{1b}~" +256 "\u{1c}~" +256 "\u{1d}~" +256 "\u{1e}~" +256 "\u{1f}~" +256 "#\u{12}" +256 "\u{1f}_" +256 "%\u{12}" +256 "'\u{12}" +256 "\u{c}\u{1e}" +256 ")\u{12}" +256 "*\u{12}" +256 "+\u{12}" +256 ",\u{12}" +256 "-\u{12}" +256 ".\u{12}" +256 "/\u{12}" +256 "0\u{12}" +256 "1\u{12}" +256 "2\u{12}" +256 "3\u{12}" +256 "4\u{12}" +256 "5\u{12}" +256 "6\u{12}" +256 "7\u{12}" +256 "8\u{12}" +256 "9\u{12}" +256 ":\u{12}" +256 ";\u{12}" +256 "=\u{12}" +256 ">\u{12}" +256 "?\u{12}" +256 "@\u{12}" +256 "\\\u{12}" +256 "]\u{12}" +256 "^\u{12}" +256 "_\u{12}" +256 "`\u{12}" +256 "a\u{12}" +256 "c\u{12}" +256 "\u{e}\u{1e}" +256 "\u{f}\u{1e}" +256 "\u{10}\u{1e}" +256 "\u{11}\u{1e}" +256 "\u{12}\u{1e}" +256 "\u{13}\u{1e}" +256 "\u{14}\u{1e}" +256 "\u{15}\u{1e}" +256 "\u{5}5" +256 "\u{6}5" +256 "\u{7}5" +256 "\u{16}\u{1e}" +256 "f\u{12}" +256 "g\u{12}" +256 "\u{b}5" +256 "\u{17}\u{1e}" +256 "\u{18}\u{1e}" +256 "\u{e}5" +256 "\u{19}\u{1e}" +256 "\u{10}5" +256 "\u{11}5" +256 "\u{12}5" +256 "\u{13}5" +256 "\u{14}5" +256 "\u{1a}\u{1e}" +256 "\u{17}5" +256 "\u{18}5" +256 "\u{19}5" +256 "\u{1a}5" +256 "\u{1b}\u{1e}" +256 "\0\u{7f}" +256 "\u{1}\u{7f}" +256 "\u{1c}\u{1e}" +256 "\u{3}\u{7f}" +256 "\u{4}\u{7f}" +256 "\u{5}\u{7f}" +256 "\u{6}\u{7f}" +256 "\u{7}\u{7f}" +256 "\t\u{7f}" +256 "\u{1b}5" +256 "\u{c}\u{7f}" +256 "\u{e}\u{7f}" +256 "\u{f}\u{7f}" +256 "\u{10}\u{7f}" +256 "\u{13}\u{7f}" +256 "\u{14}\u{7f}" +256 "\u{15}\u{7f}" +256 "\u{17}\u{7f}" +256 "\u{1a}\u{7f}" +256 "\u{1b}\u{7f}" +256 "\u{1d}\u{7f}" +256 ";\u{13}" +256 "\u{1c}5" +256 "\u{1f}\u{1e}" +256 "!\u{1e}" +256 "=\u{13}" +256 "#\u{1e}" +256 "&\u{7f}" +256 "$\u{1e}" +256 "%\u{1e}" +256 "'\u{1e}" +256 ">\u{13}" +256 ")\u{1e}" +256 "?\u{13}" +256 "+\u{1e}" +256 ",\u{1e}" +256 "\u{1e}5" +256 "\u{1f}5" +256 "j\u{12}" +256 "k\u{12}" +256 "-\u{1e}" +256 "m\u{12}" +256 ".\u{1e}" +256 "/\u{1e}" +256 "p\u{12}" +256 "q\u{12}" +256 "0\u{1e}" +256 "2\u{1e}" +256 "3\u{1e}" +256 "4\u{1e}" +256 "5\u{1e}" +256 "6\u{1e}" +256 "7\u{1e}" +256 "8\u{1e}" +256 "9\u{1e}" +256 ";\u{1e}" +256 "=\u{1e}" +256 "?\u{1e}" +256 "u\u{12}" +256 "v\u{12}" +256 "w\u{12}" +256 "x\u{12}" +256 "y\u{12}" +256 "z\u{12}" +256 "@\u{1e}" +256 "[\u{1e}" +256 "}\u{12}" +256 "\\\u{1e}" +256 "\u{7f}\u{12}" +256 "]\u{1e}" +256 "^\u{1e}" +256 "\u{1}\u{13}" +256 "\u{2}\u{13}" +256 "\u{4}\u{13}" +256 "\u{5}\u{13}" +256 "\u{6}\u{13}" +256 "\u{7}\u{13}" +256 "a\u{1e}" +256 "b\u{1e}" +256 "c\u{1e}" +256 "\u{8}\u{13}" +256 "\u{14}r" +128 "\u{1d}{" +128 "~\u{13}" +128 "\r\u{f}" +128 "&\u{5}" +128 "\\\u{1f}" +128 "]\u{1f}" +128 "\r\u{1a}" +128 "{\u{17}" +128 "|\u{17}" +128 "<\u{11}" +128 "=\u{11}" +128 "^\u{1f}" +128 "&\u{1c}" +128 "_\u{1f}" +128 "~\u{17}" +128 "{\u{14}" +128 "\u{7f}\u{17}" +128 "`\u{1f}" +128 "<\u{19}" +128 "\u{13}9" +128 "\u{1f}`" +128 "~\u{5}" +128 "\u{18}^" +128 "#\u{b}" +128 "\u{7f}\u{5}" +128 "\u{7f}\u{1e}" +128 "\u{7f}\u{2}" +128 "\u{19}^" +128 "&\u{b}" +128 "&\u{10}" +128 "\r\u{2}" +128 "\r\u{5}" +128 "@\u{19}" +128 "|\u{14}" +128 "\u{2}_" +128 "\u{2}>" +128 "\\\u{19}" +128 "\u{3}_" +128 "]\u{19}" +128 "\u{4}_" +128 "\u{1c}^" +128 "\u{5}_" +128 "\u{6}_" +128 "<\u{16}" +128 "\r\u{14}" +128 "_\u{13}" +128 "\u{5}>" +128 "\u{5}}" +128 "\r\u{16}" +128 "_\u{19}" +128 "\u{8}}" +128 "=\u{16}" +128 "\u{16}9" +128 "\u{5}`" +128 "<\u{18}" +128 "\u{1e}^" +128 "`\u{19}" +128 "\u{1f}^" +128 "&\u{16}" +128 "\u{11}}" +128 "\u{12}}" +128 "\u{13}}" +128 "\u{14}}" +128 "\u{15}}" +128 "\u{16}}" +128 "\u{17}}" +128 "\u{18}}" +128 "\u{19}}" +128 "\u{1a}}" +128 "\u{7}_" +128 "\u{1c}}" +128 "\u{1d}}" +128 "\u{1e}}" +128 "\r\u{17}" +128 "8\u{17}" +128 "\u{7f}\u{14}" +128 "{\u{11}" +128 "^\u{13}" +128 "|\u{1c}" +128 "~\u{11}" +128 "\u{17}\t" +128 "<\u{b}" +128 "^\u{1a}" +128 "_\u{1a}" +128 "~\u{1c}" +128 "\u{18}\t" +128 "\u{11}`" +128 "\u{7f}\u{1c}" +128 "\u{e}_" +128 "\r\u{6}" +128 "`\u{15}" +128 ":\u{15}" +128 "<\u{1c}" +128 "$\u{e}" +128 "^\u{8}" +128 "\u{12}_" +128 "\u{7}+" +128 "\u{13}8" +128 "\u{13}`" +128 "\u{14}`" +128 "[\u{6}" +128 "\u{17}8" +128 "\\\u{6}" +128 "&\u{1a}" +128 "&\u{14}" +128 "^\u{18}" +128 "\u{14}_" +128 "_\u{18}" +128 "\u{b}>" +128 "\u{11}+" +128 ":\u{17}" +128 "\u{15}`" +128 "\u{14}+" +128 "\u{16}`" +128 "\u{e}>" +128 "&\u{e}" +128 "\u{17}`" +128 "\u{18}`" +128 "\u{11}>" +128 "\u{12}>" +128 "\u{15}_" +128 "\u{13}>" +128 "\u{11}:" +128 "\r\u{12}" +128 "[\u{1c}" +128 "\u{15}>" +128 "\u{16}_" +128 "\u{17}_" +128 "\u{18}_" +128 "\u{16}>" +128 "\u{1a}_" +128 "\u{17}>" +128 "{\u{5}" +128 "\u{19}>" +128 "{\u{15}" +128 "\r\u{18}" +128 "<\u{1d}" +128 "]\u{1c}" +128 "|\u{15}" +128 "\u{6}[" +128 "\u{11};" +128 "_\u{1c}" +128 "\u{e}/" +128 "\u{1c}_" +128 "=\u{1d}" +128 "\u{b}\u{1d}" +128 "\u{c}\u{1d}" +128 "\r\u{1d}" +128 "\u{b}\u{1f}" +128 "\u{5}~" +128 "[\u{1d}" +128 "\\\u{1d}" +128 "]\u{1d}" +128 "[\u{14}" +128 "\u{1d}_" +128 "_\u{1d}" +128 "`\u{1d}" +128 "\u{1e}_" +128 "\u{11}/" +128 "\\\u{14}" +128 "\u{3}{" +128 "\u{1c}>" +128 "\u{5}{" +128 "\u{13}~" +128 "]\u{14}" +128 "\u{7}{" +128 "\u{16}~" +128 "\u{17}~" +128 "\u{8}{" +128 "\u{1d}>" +128 "\u{1a}~" +128 "\u{e}[" +128 "\u{f}[" +128 "\u{18}/" +128 "~\u{15}" +128 "\u{e}{" +128 "\u{f}{" +128 "\u{11}[" +128 "\u{11}{" +128 "&\u{12}" +128 "\u{12}{" +128 "\u{13}{" +128 "\u{14}{" +128 "\u{15}{" +128 "\u{16}{" +128 "\u{17}{" +128 "\u{7f}\u{15}" +128 "\u{e}9" +128 "\u{1a}{" +128 "`\u{f}" +128 "\u{1c}{" +128 "{\u{3}" +128 "\u{13}^" +128 "\u{1f}{" +128 "\u{14}[" +128 "@\u{16}" +128 "\u{13};" +128 "\u{15}[" +128 "8\u{13}" +128 "^\u{6}" +128 "\u{14};" +128 "<\u{12}" +128 "\r\u{8}" +128 "[\u{16}" +128 "\u{19}`" +128 "\r\u{13}" +128 "[\u{12}" +128 "6\u{e}" +128 "\r\u{1f}" +128 "_\u{6}" +128 "{\u{10}" +128 "\u{17}[" +128 "\u{18}[" +128 "\r\u{1e}" +128 "~\u{10}" +128 "&\u{6}" +128 "<\u{4}" +128 "<\u{17}" +128 ">\u{e}" +128 "\u{1c}[" +128 "&\u{17}" +128 "\u{17}:" +128 "\u{1f}[" +128 "\r\u{15}" +128 "\u{1a}`" +128 "<\u{15}" +128 "_\u{e}" +128 "^\u{14}" +128 "_\u{14}" +128 "\r\u{11}" +128 "<\u{1f}" +128 "&\u{1f}" +128 "<\u{5}" +128 "\u{e}`" +128 "{\u{1e}" +128 "&\u{1d}" +128 "^\u{b}" +128 "^\u{4}" +128 "\r\u{1c}" +128 "`\u{b}" +128 "\u{16}5" +128 "_\u{4}" +128 "{\u{16}" +128 "|\u{16}" +128 "]\u{5}" +128 "\u{e}%" +128 "\u{f}`" +128 "\r\u{3}" +128 "&\u{8}" +128 "&\u{15}" +128 "&\u{13}" +128 "_\u{5}" +128 "{\u{1d}" +128 "|\u{1d}" +128 "\u{8}\u{7f}" +128 "}\u{1d}" +128 "|\u{18}" +128 "\u{b}\u{7f}" +128 "}\u{18}" +128 "\r\u{7f}" +128 "~\u{18}" +128 "~\u{1d}" +128 "\u{7f}\u{1d}" +128 "\u{11}\u{7f}" +128 ":\u{13}" +128 "\u{7f}\u{18}" +128 "\u{1e}`" +128 "~\u{16}" +128 "\u{16}\u{7f}" +128 "@\u{17}" +128 "\u{18}\u{7f}" +128 "\u{19}\u{7f}" +128 "\u{2}^" +128 "[\u{17}" +128 "\u{1c}\u{7f}" +128 "~\u{8}" +128 "\u{1e}\u{7f}" +128 "\u{7f}\u{7}" +128 "\\\u{17}" +128 "]\u{17}" +128 "<\u{13}" +128 "^\u{17}" +128 "{\u{6}" +128 "|\u{6}" +128 "\u{12}7" +128 "\u{6}|" +128 "\u{7}|" +128 "&\u{1e}" +128 "&\u{19}" +128 "\u{6}^" +128 "{\u{19}" +128 "\u{b}|" +128 "&\u{18}" +128 "^\u{16}" +128 "\u{e}|" +128 "~\u{b}" +128 "\u{7f}\u{b}" +128 "\u{7}^" +128 "\u{15}@" +128 "\u{13}|" +128 "\u{14}|" +128 "\u{15}|" +128 "|\u{19}" +128 "\u{17}|" +128 "\u{18}|" +128 "@\u{13}" +128 "\u{19}|" +128 "~\u{6}" +128 "\u{17}@" +128 "}\u{19}" +128 "\u{1d}|" +128 "\u{1e}|" +128 "\u{b}^" +128 "&\u{3}" +128 ":\u{1e}" +128 "\u{1c}]" +128 "<\u{1e}" +128 "~\u{19}" +128 "[\u{13}" +128 "\u{7f}\u{19}" +128 "\u{7f}\u{6}" +128 "\u{7f}\u{4}" +128 "{\u{1a}" +128 "{\u{e}" +128 "|\u{e}" +128 "|\u{1a}" +128 "\u{e}^" +128 "~\u{e}" +128 "{\u{12}" +128 "|\u{12}" +128 "\u{7f}\u{e}" +128 "\u{1d}]" +128 "\u{6}-" +128 "&\u{11}" +128 "_\u{17}" +128 "`\u{17}" +128 "\u{7f}\u{16}" +128 "_\u{1e}" +128 "<\u{6}" +128 "_\u{16}" +128 "\r\u{10}" +128 "\u{1d}@" +128 "`\u{1e}" +128 "\r\u{19}" +128 "\u{1e}@" +128 "\u{11}^" +128 "\\\u{13}" +128 "`\u{16}" +128 "\u{1e}{" +deleted bigrams: [] +inserted bigrams: ["/}", "qo", "\u{15}`", "a\u{6}", "e\u{1c}", "8\u{6}", "|\u{15}", "-\n", "*=", "|t", "\u{19}q", "\u{8}]", "*\u{15}", "+\u{12}", "\u{13}5", "\nn", "w\u{6}", "c[", "m\u{1c}", "\u{15}\\", "\u{15}\0", "5x", "wg", "\u{16}-", ",(", "9\u{1c}", "_\\", "b\u{c}", "\u{19}k", " \u{1c}", "\u{1f}*", "\u{17}q", "\u{b}\u{f}", "#\u{8}", ";b", "[}", ";<", ")6", "\\?", "\\@", "\u{1d}%", "+&", "\u{14}\u{1d}", "\t&", ".w", "1'", "|f", "vw", "\u{4}\u{17}", "\u{7}\u{10}", "[\u{10}", "{s", "7z", "\u{2}\u{2}", "\u{1c}d", "`y", "\u{c}q", "7\u{b}", "^\u{1a}", "\u{17}\u{2}", "b\u{13}", "\u{1f}u", "j-", "b+", "\u{4}\u{1c}", "\u{19}\u{6}", "\u{3}]", "\u{1}+", "\">", "a\u{12}", "71", "6 ", "?q", "]z", "6'", "dm", "\"\u{c}", "qi", "=\u{7}", "\u{12}g", "\u{19}w", "[^", "\u{7})", "?r", "#$", "*!", "\u{8}^", "}5", "3z", "oh", "_\u{c}", "z\u{10}", "q^", "[l", "(j", "$r", "~\"", "\u{2}b", "41", "\u{6}<", "+\u{1c}", "\u{1b}\u{11}", "rb", "d\\", "c\u{1d}", "*7", "sj", "/'", "'h", "oo", "r\u{1}", "\u{7}g", ";\u{2}", "g\u{14}", "*\u{e}", ".^", "`\u{1b}", "5\u{14}", "/\u{1e}", "\u{7}\u{1f}", "s\u{18}", "{\u{15}", "\u{1c}\u{e}", "\u{3}>", "\u{16}\u{17}", "\u{1b}8", "\u{11}'", "\u{15}b", "\u{16}\u{5}", "\u{1c}^", "2]", "9t", "35", "a2", "qh", "g@", "\u{4}6", "\u{e}~", "\u{15}~", "\r\u{12}", "\n;", "\0%", "/q", "#[", "\u{f}8", "\u{e}<", "\u{f}l", "l,", "m\u{b}", "\u{10}\u{1f}", "4_", "\u{17}h", "b\n", "@`", "-i", "5;", "c~", "*k", "\u{4}v", "\u{13}/", "\\\u{6}", "\u{1a}\u{3}", "\u{12}$", "3\u{17}", "o\u{1f}", "|g", "<*", ":j", "\0)", "\u{4}\u{16}", "3\u{16}", "\u{1f}\u{1d}", ".n", "?\u{10}", "\u{14}8", "\u{17}=", "t\u{c}", "\\\u{12}", "\u{f}?", "\u{7f}m", "+.", "j\u{19}", "6\u{1c}", "_$", "r\0", "*v", "\\v", "\u{8}'", "!\u{16}", "\u{16}u", "\u{b}x", "ls", "\u{3}\0", "\u{10}{", "\u{7f}\u{f}", "\u{1c}\u{5}", "\u{e}}", "\u{1e}\u{7f}", "%=", ")4", "!\u{19}", "_\u{3}", "=\u{6}", "'3", "z,", ")s", "+j", "p\u{18}", "89", "%_", "a\u{10}", "\u{15}/", "\u{f}\u{12}", "/h", "v\u{1e}", "0%", "[\r", "6^", "(\u{c}", ".]", "\u{1d}/", "s\u{1a}", "\u{1b}1", "\u{3}m", "|!", "#w", "_:", "x&", "\u{7}\u{b}", "9\u{1a}", "x\u{b}", " \u{1b}", "\u{18}r", "q\u{1d}", "\nu", "0a", "{.", "\u{b}\r", "<\u{1b}", "?\u{2}", "\u{14}3", "m3", "-\u{1f}", "z\u{1a}", "/0", "i\u{12}", "j\u{1c}", "m1", ",~", "2(", "\u{5}d", "3\u{11}", "f{", "!'", "1\u{e}", "\u{17}_", "lx", "ii", "0:", "4n", "+o", "\u{10}\u{e}", "\u{1f}5", "v\u{12}", "?\u{6}", "o7", "\u{e}\n", "\u{1d}\\", "\u{1c}/", "kn", "v3", "\u{11}s", "-3", "h\u{c}", "!-", "%\u{e}", "/_", "\u{1d}\u{15}", "za", "~f", "q#", "\u{10}\u{1d}", "}_", "\u{1b}^", "?\r", "\u{15}z", "\u{10}3", "\u{2}\u{1b}", "\u{8}!", "c'", "\u{13}\u{c}", "\u{13}%", "5\n", "w/", "l\r", "4?", "p\u{1b}", "e\0", "\u{18}0", "*%", "v[", "j\t", "\u{10},", ">7", "y\u{f}", "2)", "q\n", "8}", "<,", "\u{19}5", "[\u{1e}", "\u{12}d", "e&", "s0", "9 ", "^-", "d9", "\u{13}$", "\\\u{1c}", "[\u{6}", "ua", "$-", "\u{1f})", "07", "r^", "):", "mk", "\t\u{7}", "a\u{18}", "[m", "e*", "\u{b}.", "\t ", "/ ", "=%", "j\\", "%5", ">\0", "\u{1e}\r", "\u{c}<", "k\u{e}", "\u{3}u", "|`", "\n\u{18}", "\u{f}e", "t\0", "\u{b}0", "\u{1c}\u{1a}", "\u{1a}\u{1c}", "e\u{2}", ",6", "\u{1f}b", "a\u{e}", "[@", "2[", "\0\u{1}", "\u{3}t", "\u{b}\\", "..", "\u{13}\u{7}", "\u{4}_", "o\u{1}", "\u{14}f", ":\u{19}", "|6", "t:", "gj", "\u{1e}\u{4}", "|\u{18}", "\u{3}a", "?\u{19}", "13", "],", "`+", "99", "@g", "7t", "|9", "&+", "b-", "\u{7f}\u{7f}", "+ ", "\u{c}[", "\t?", "\u{1b}h", "bt", "=}", "\"\u{1b}", "\u{1d}!", "0\u{2}", "ov", "}\u{7f}", "#*", ":\u{b}", "\u{10}\u{c}", "}g", "\u{14}s", "=\u{5}", ")\u{6}", "y[", "\u{1c}\u{1d}", "\u{10}\u{2}", "y\u{16}", "p\u{17}", "\u{1d}v", "\u{14}2", "x9", "\u{5}f", "\u{6}\u{1e}", "j\u{12}", "=b", "1-", "$\u{1a}", "\\(", "\0\u{3}", "-!", "\u{7}b", "\u{15})", "\u{18}\u{4}", "%'", "<\u{14}", "qt", "\u{14}:", "\u{1b}&", "\u{1d}.", "\u{17}\u{e}", "k\u{1c}", "\u{5}\u{15}", "tq", "\u{1b}\u{15}", "\u{2}~", "\u{1c}f", "8q", "\u{13} ", "/5", "\u{1a}l", "\u{e}\u{1f}", "p(", "4q", "e\u{13}", "\u{6},", "\u{19}\u{7}", "\u{18}2", "`3", "|]", "m4", ")\u{c}", "\u{19}\u{4}", "\u{11}.", "-7", "0w", ",/", "\u{1a}p", "|\u{1}", "*[", "d)", "s\u{c}", ",\0", "<9", "s~", "x4", "$\u{1f}", "\u{12}!", "{_", "c<", ":w", "'c", "0v", "\u{1a}r", "\u{5}<", "\u{12}\u{13}", ")\u{18}", "_\u{2}", ">\u{1d}", "~\u{17}", "\u{1}\u{e}", "@|", "\u{1c}[", ".\u{1a}", "\u{3}.", "\u{19}{", "w\u{1e}", "z@", "dc", "\u{b}\u{4}", "oq", "^*", "\u{15}1", ";p", "\u{f}\"", "\u{3}7", "i9", "?8", "\u{f}\u{16}", "ph", ">.", "&\u{f}", "\u{1}\u{10}", "\u{11}\u{8}", "\u{13}\u{1d}", "].", "xr", "\u{7f}i", "\u{3}\u{e}", "\u{7}=", "\u{15}\t", "9\u{13}", "1+", "\u{17}}", "q}", "\tu", "1\t", "2\u{1f}", "\u{1b}y", "!|", "u&", "\u{13}9", "\u{1d}_", ":m", "\u{1}9", "zc", "28", "b)", "%&", "k%", "[,", "ze", "5\u{7f}", "\u{c}k", "\u{8}?", "\u{f}\u{7}", "n5", "\u{c}\u{1c}", "#,", "\u{8}v", "\u{10}`", "*\n", "jx", "ww", "&b", "i4", "k", "(\u{1}", "\u{1e}\u{1e}", "ak", "n\u{1d}", "ye", "\u{18}v", "\\`", "v-", "\" ", "uh", "g\u{10}", "n'", "]\t", "y4", "0f", "\u{1b}.", "?p", "3\\", "3k", "_3", "\u{4}q", "l>", "4\u{18}", "\u{e}:", "\r[", "\u{19}\u{13}", "`/", "a0", "1%", "\u{b}b", "\u{19}\"", "+\u{f}", "v\u{7f}", "o\u{17}", "\u{5}\t", "r]", "\r7", "3\u{8}", "g3", "w,", "\u{c}!", "\u{1e}!", "\u{c}\u{6}", "1\u{c}", "\u{14}*", ".\u{b}", "\u{12}'", "\u{3}:", "c7", "\"[", "d\u{f}", "5$", "u0", "e\u{7f}", "%m", "\u{b}2", ")n", "7$", "(~", "'\"", "~`", "i\u{1f}", "\u{b}\t", "\t>", "\u{1d}8", "\u{7f}\u{11}", "!\u{1}", "\u{5}\u{13}", "\"\u{18}", "=m", "&g", "\u{6}\u{f}", "\u{1f}\u{12}", "iv", "n@", "]2", "\0_", "\u{14}\u{1e}", "s\t", "vs", "?u", "!{", "2\0", "fy", "1`", "a\u{5}", "9?", "'\u{7}", "p\u{7}", "\u{13}\u{b}", "9y", "?}", "\u{14}=", "hr", "0b", "m}", "c5", "dh", "*,", "t{", "o$", "ql", "z\u{1b}", "\0(", "\u{4}(", "\u{17}@", "4o", "v\u{3}", "\u{1}s", ">\"", "\u{1e}_", "#\u{7f}", ";[", "e>", "\u{5}\\", "%>", "d!", "\u{14}\r", "65", "\\p", "'\u{5}", "\\l", "\u{5}#", "\u{b}~", "\nt", "<>", "^\\", "\t*", "t.", "l\u{1a}", "\r1", "@6", "kw", "\u{6}\u{c}", "\u{11}o", "@", "-+", "_7", "\u{19}n", "\u{8}i", "\u{3}^", "\u{11}a", "\u{12}\u{19}", "n>", "iy", "c\0", "\u{3}z", "j\u{1f}", "\u{1b}4", ". ", "s|", "y+", "j\u{18}", ")\u{11}", "\u{1b}\0", "03", "a?", "~1", "\u{4}\u{8}", "\u{1}f", "#\u{f}", "\u{17}g", "\u{17}0", "*&", "\u{17}z", "7m", "~$", "6{", "\rq", "?g", "i(", "\\\u{15}", "\u{5}:", "c\u{10}", "ko", "\t\u{16}", ",7", "u-", "\u{5}]", "[\u{1a}", "f:", "3^", ")\u{1b}", ".\u{8}", "\u{e}e", "e\u{1e}", "oa", ":1", "t\r", "m\u{6}", "\"\u{1a}", "\u{10}@", "\u{14}\u{17}", "s\u{4}", "]9", "e\u{1f}", "e\u{1d}", "t/", "3+", "e5", "q\u{11}", "8\u{7}", "km", "\0x", "\u{1f}j", "!>", "r&", "9\u{b}", "7\u{19}", "3j", " \u{14}", "r\\", "p\u{19}", "\u{4}k", "y=", "v.", "q%", "6\u{8}", "n\u{1f}", "v\u{14}", "t\u{4}", "q\u{5}", "\\6", "$v", "f\u{1}", "\u{4}]", "\u{2}^", "7}", "`e", "p5", "]\r", "]t", "y/", ",[", "hn", "\u{7f} ", ">h", "%\n", "\u{5}s", "_{", "'!", "{\u{6}", "4\u{c}", "!\u{4}", "&=", "\u{1b} ", "x\u{13}", "6y", "%3", "@j", "g\u{13}", "\u{1a}\u{1}", "?0", "01", "\u{8}9", "i\u{6}", "e\u{e}", "\u{8}@", "r=", "1e", "='", ";s", "\06", "n\u{5}", "i\u{1d}", "\u{6}-", "==", "u\u{17}", "#-", ">/", ")8", "& ", " /", "\u{7}o", "=#", "8s", "\u{7}\u{1d}", "!\u{14}", "n\u{7}", "\u{5}\u{7f}", "5\u{c}", "\u{e}[", "f\u{11}", "f\u{13}", "5w", "\u{6}2", " 8", "\u{4}3", "\u{5}q", "q+", "\u{1d}\r", "\"%", "&m", "-\u{14}", "b>", "?\u{13}", "y\\", "4i", "\u{8}w", ":i", "90", "c,", "\u{2}9", "c\u{7}", "&\u{1}", "\"o", "|\u{16}", "9_", "\u{12}>", "pn", "\u{1}|", "7r", "\u{1a}\u{18}", "_\u{10}", "\u{b}\"", "\u{1e}:", "yf", "m\u{7}", "{?", "fe", "\u{17}:", "\u{e}\u{3}", "\u{10}2", "\u{13}6", "rw", "\u{7f}\u{1c}", "y%", "\u{18}p", "\u{1b}\r", "\u{5}8", "!\u{13}", "\u{12}\u{c}", "!h", "\u{12}-", "v\u{1d}", "\r\u{1c}", "{8", ";2", "~\u{e}", "_@", "o&", "x2", "\u{f}x", "s\u{1}", "8x", "s,", "'(", "g\u{1e}", ")\u{13}", "lg", "\u{6}z", "\u{1e}4", ";{", "h)", "k\u{f}", "d\u{1}", "\u{1b}!", "\u{7f}\\", "k,", "!\u{7f}", "=j", "\u{6}h", "\u{1b}\u{1}", "58", "a(", "8_", ":=", "\u{19}+", "!s", "yi", "o\u{10}", ";/", "u\u{1e}", "_t", "c\r", "\u{7}.", "_\t", "\u{17}f", "i^", "y-", "\u{4}\u{c}", "=\n", "\u{18}4", "\u{1c}\u{11}", "\u{7f}\u{16}", "fa", "\u{12}.", "]`", "\u{4}\u{13}", "<)", "\0?", "n{", "(.", "r\u{19}", "f=", "\u{1a}5", "';", "j<", "\0\u{b}", "k\u{17}", "\u{1a}i", "\u{1d}-", "]6", "\r4", "9*", "$]", "b\u{1b}", ",\u{19}", "> ", "\u{12}s", "}1", "jf", "|x", "v\u{16}", "\u{7f}(", "e\"", "\u{16}7", "|o", ")g", ">c", "l(", "\\5", "hz", "\u{1}\r", "\u{6}\"", "t\u{14}", "kf", "^6", "\u{1e}1", "\u{1e}(", ")\u{1c}", "\u{12}5", "{%", "p\u{1c}", "59", "$3", "}\t", "\u{11}\u{1a}", "}m", "~h", "\u{5}\n", "\u{14})", "a`", "\u{14}m", "j\u{16}", "b=", "z8", "k<", "\u{1e}@", "\u{7f}*", "j\n", "*z", ",o", "p,", "l3", "%\"", "\u{1c}}", "y\u{1d}", ">m", "2\u{18}", "\u{3}4", "\u{18}1", "\u{14}[", "j0", "{\u{10}", "2m", "1\"", "/g", "!!", "7\u{10}", "\u{12}3", "``", "q;", ")\u{1f}", "\u{f}:", "\u{b}%", "\u{10}\u{1e}", "<\u{6}", "c\u{8}", "r{", "\u{6}s", "\u{19}l", "`-", "a\u{3}", "_\u{12}", "\u{7f}^", ".j", ">\u{e}", "` ", " ,", "l-", "\u{3})", "cy", ";\u{17}", "\u{1f}f", "6)", "/&", ".!", "e\u{1}", "\u{15},", "\u{14}0", "'f", "tj", "`0", "$!", "%\u{2}", "=\u{1d}", "87", "u\u{16}", "\u{4}#", "\rr", "`p", "7'", "\\d", "\r\u{1d}", "\u{b}\u{6}", "\u{3}`", "lc", "\u{7}/", ";v", "/)", "\u{17}\u{1}", ")*", "!0", "\u{2}$", "5)", "m6", ",9", "@z", "6@", "\"v", "\r(", "$\u{4}", "\u{17}\u{1c}", "vq", "v'", ")[", "{4", "*w", "6,", "+\u{13}", "\u{11}\u{1b}", "\u{13}\u{1b}", "b\u{2}", "-|", "6<", "vx", "^\u{18}", "(9", "?f", "\u{7}e", "\"1", "l+", "\u{11}w", "\n\u{2}", "t4", "\"]", "z7", "1;", "\u{5}5", ",3", "wy", "\u{17}7", "1\u{13}", "b|", "\u{12}7", "\u{16}\u{7}", "\u{1e}[", "\u{16}&", "\u{e}@", "d]", "\u{10}_", "go", "\u{f}o", "p\"", "\u{b}w", "]\\", "2u", "\u{1a}\n", "\u{f}n", "\u{18}]", "4}", "\u{19}]", "dv", "+@", "\r.", "'\u{1e}", "\u{12}h", "\u{7f}n", "1\u{16}", "u\u{18}", "3\u{5}", "|^", "\u{1e}*", "=)", "@y", "\u{11}|", "\u{f}y", "eg", ".\n", "@\u{c}", "'$", "q\u{16}", "(<", "v`", "$e", "\u{c}z", "\u{2}0", "\u{13}:", "o@", "7\t", ">\u{17}", "*\u{7}", "\u{7}%", "\u{1}\u{1}", "\0$", ";'", "\u{c}5", "m-", ",v", "5\u{6}", "\u{1f}&", "f\u{f}", "$\u{13}", "+\u{7}", "/\u{6}", "_\u{19}", ",:", "jy", "%r", "!q", "2\u{1c}", "f\u{7f}", "4\u{16}", "04", "\u{1e}w", "@f", "\r\u{6}", "j\"", "o|", ".\u{1b}", "4h", "j\0", "0y", "e<", "\u{16}\u{1d}", "4[", "#f", "z ", "w\\", "\u{2}\r", "r\u{6}", "\u{14}\u{1a}", "\u{1c}*", "'\u{1c}", "<\u{18}", "q{", "v{", "*8", "+\u{17}", "&\"", "11", "\u{2}c", "ju", "4\\", "(?", "]4", "\u{1f}]", "$4", "38", "3\u{3}", "\"\u{3}", "q\"", "\\&", "\u{1}e", "\u{16}\n", "x\u{15}", "^k", ">\u{15}", "\u{1f}\u{5}", "\u{15}%", "\u{12}|", "\u{1}n", "*o", "\0\"", "\u{15}\u{5}", "`\u{1a}", "s#", "\u{18}$", "\t#", " \u{b}", "!1", "jh", "\"\u{5}", "0-", "\u{1a}]", "p\u{1f}", "\u{1a}\u{b}", "d@", "\u{2}\u{5}", "\tk", "f%", "t\u{2}", "\u{10}\u{3}", "@\u{15}", "u\n", "\tr", "hd", "\u{1e}\u{19}", "\u{5}*", "u_", "?*", "5\u{11}", " \u{1d}", "\u{2}\u{11}", "&\u{1b}", "8l", "\u{15}6", ">~", "\u{10}\u{1a}", "+]", "\u{1f}\r", "%\u{12}", "f\u{6}", "\u{19}a", "\u{b}\u{1a}", "-w", "~n", "\u{12}#", "\u{1}g", "z\u{19}", "@<", "]=", "?\u{b}", ";>", "&c", "7\u{1c}", " \u{7f}", "\u{1f}<", "3g", "2?", "\u{12}\u{11}", "\u{3}k", "7+", "y\u{7f}", "\u{10}\u{10}", "2z", "7\u{5}", "\u{19}'", "\u{7}i", "\u{17}v", "\u{f}/", "nb", "o.", "#d", "\u{17}a", "bd", "4t", "m9", "\t6", "%9", "\u{6}o", "9\"", "5~", "b\t", "\u{1}i", "\u{12}\u{2}", "9\u{8}", "u\u{7}", "0n", "$\u{8}", "4\u{19}", "\u{3}\u{15}", "\u{f}\u{1d}", "i\u{c}", "-]", "2\r", ".-", "06", "*q", "h$", "i ", "\\k", "3\u{12}", "6\u{14}", "?\u{e}", "7\\", "<\u{1e}", "-,", "\0o", "94", "79", ";\\", ".3", "\t3", "~i", "v\u{1a}", " \u{7}", "2r", "2\t", "+\r", "\0a", "7\u{1d}", ",\r", "\u{b}m", "\u{1a}n", ":\u{1f}", "\0=", "*i", "\t7", "\0\n", "\u{11}\u{5}", "\u{12}6", "u^", "\u{4}\u{1}", "`\0", "o=", "5\u{1e}", "\u{15}0", "\th", "\\-", "7\u{1b}", "\"\t", "b\u{1}", "\u{16}^", "`\u{f}", "%^", "ku", "dj", "7\u{7}", "mm", "\u{16}\u{e}", "nw", "\u{17}\u{10}", "|z", "\u{1}@", ">#", "\t,", "\u{11}\u{f}", "\u{13}u", "\u{12}&", "\u{f}f", "\u{18}\u{13}", "\u{1d}\n", "\u{19}-", "\u{19}~", "\u{18}\u{17}", "1r", "`\t", "rz", "d:", "(\\", "<<", "8&", "|_", "\t\u{13}", "5>", "&*", "\u{b}}", "'\u{12}", "`\u{1e}", "|#", "jr", "!_", "n|", "][", "\\r", "\u{8}7", "(,", "?s", "\\8", "l\u{13}", "&j", ">i", "q6", "h#", "w_", "\u{c}\u{16}", "ez", "\r9", "/p", "\u{3}\u{1b}", "\u{c})", "\u{14},", "\u{1f},", "\u{18}-", ";g", "7\u{11}", "(2", "<.", "h=", "|\u{13}", "^:", "h[", "8[", "?~", "\t\u{1c}", "#\u{1c}", "(@", "4\u{17}", "e\u{4}", "\u{10}w", "[j", "\u{4}'", "t\u{16}", "h\t", "b\u{15}", "\u{7f}\u{7}", "*t", "<\n", "\0y", "t\u{e}", "=9", "{5", "\r)", "\u{8}}", "%#", "\u{b}\u{3}", "k\r", "|\u{7}", "/\"", ":\u{1c}", ";\u{f}", ")\u{19}", "s\u{11}", ",c", "\nb", "$\u{c}", "\u{3}x", "rd", ";%", "\u{16}\u{15}", "p8", "s_", "~\u{15}", "\u{19}/", "`o", "\u{10}\u{14}", "\u{1d})", "\r\u{18}", " &", "\u{15}\u{1c}", "\u{6}b", "*\u{2}", "!]", "\u{6}%", "n^", "rp", "<\u{1c}", "uz", "lw", "tn", "]s", "m\n", "k\u{7f}", "\u{8}/", "\u{1b}%", "t\u{19}", "r\u{1e}", "\u{11}9", "a\u{11}", "(w", "\"6", "(5", "i\u{2}", "'g", "^\u{13}", "av", "`t", "'0", "\\x", "\u{1a}b", "\u{1d}\u{2}", "r\t", "}2", "\u{1}v", "<'", "/\u{5}", "sw", "{}", "\u{5}/", "\t\u{3}", "\u{b}\u{1c}", "_\u{b}", "#\u{1e}", "\u{7} ", "1=", "\u{19}6", "fw", "%;", "\no", "\u{1d}\u{1e}", "?\u{5}", "\u{13}i", "@!", "xa", "\u{b}1", "u5", "$x", "\u{1d}i", "\u{1f}\u{2}", "~\u{f}", "\u{1f}m", "\u{1f}\u{19}", "t}", "\u{c}7", "x5", "t\n", "#\\", "\u{f}\u{18}", "~\0", "^\u{c}", "\u{1c}\u{2}", "[|", "h\u{10}", "n4", "(_", "}-", "d\u{5}", "%*", "\u{2} ", "\u{1}!", "$\u{14}", "\u{11}q", "a$", "\u{3}\n", ";\u{7f}", "\u{8}5", "\u{7}\u{3}", "x\u{10}", "\u{10}9", "(:", "i[", "/\u{1f}", "\u{b}5", "<\u{b}", "\u{16}\u{13}", "q(", "x[", "v\t", "%i", ".=", "|\u{c}", "\u{f}\t", "\u{f}b", "\u{3}5", "h5", "\u{c}y", "q@", "{\u{1}", "=_", "k\u{c}", ")2", "v\0", ">d", "\u{19}[", ";-", "2\n", "\u{13}a", "\u{e}\u{18}", "z\u{c}", "\u{19})", "_)", "\u{1c}{", "\u{19}|", ";(", "c\u{6}", "?\u{7}", "}\u{3}", "q\u{13}", "\r3", "_?", "/\u{13}", "c\u{19}", "?5", "4(", "\0\u{7}", "_\u{17}", "\u{e}\u{c}", "\u{5}\u{2}", ";@", "n&", "\ty", "\u{16}$", "\u{14}\"", "++", "n\"", "h\u{1f}", "\u{4}\"", "\u{2}?", "3q", "(]", "\u{7f}2", "\n\u{13}", "p\u{12}", "\u{11}6", "\u{b}r", "7\u{18}", "\u{c}9", "v>", "l0", "'l", "a#", "\"\u{8}", "d/", "7&", "c\u{c}", "\"y", "\u{2}.", "%8", "\u{16}\u{1f}", "g\u{15}", "\\\u{1a}", "?\u{14}", "\u{1d}{", "_#", "e2", "\u{1d}\0", "\u{6}\u{1c}", "\u{1b}w", "\ra", ",a", "dn", "^/", ".+", "\u{7}\u{e}", "(!", "s'", ",<", "3\u{b}", "\u{7f}]", "x\u{4}", "\u{2}\u{18}", "&\u{7f}", "4r", ")d", "^\n", "a+", "@\r", "l\\", "@\u{1c}", "#\u{c}", "\\1", "~6", ")\u{8}", ",\u{14}", "#n", "sf", "\u{15}j", "!\u{1a}", "\u{16} ", "\u{1a}v", "b", "\\^", ".\u{e}", "\u{7}w", "]u", "\u{7f}\u{1b}", "b\u{f}", "\u{e}\r", "\r\u{7f}", "u\u{14}", "\u{1f}{", "\u{1e}|", "\n\u{1e}", "<\u{f}", "\nz", "^^", "\u{8}z", "\u{1a}\u{19}", ">6", "\u{5}@", "lb", "9\u{15}", "d>", "\u{18}!", "\t<", "uf", "a\"", "{h", "k5", "[=", ")\u{1a}", "\u{14}\\", "#\u{1}", "(#", "^<", "b'", "&\t", "\u{4}.", "\u{1a}'", "\0n", "%<", "=\r", "w\u{1b}", "c\\", "h\u{1d}", "f\u{15}", "@?", "5}", "_=", "~8", "\u{15}\u{15}", "u%", "\u{17}#", "-t", "-\u{1c}", "\u{7}\u{13}", " ]", "%d", "dq", "<\u{2}", "\u{5}\u{6}", "*}", "@\u{7f}", "\u{f}9", "=|", "0c", "`:", "]\u{1}", "5\u{1a}", "~>", "f]", "3#", "a\u{1a}", "?\u{1c}", "\u{1d}>", "'y", "%n", "rv", "\u{b}#", "(7", "\u{1e}\u{3}", "\u{c}'", "h\u{5}", "\u{f}'", "\u{f}*", "\u{1e} ", "36", "r>", "\r\r", "wc", "\u{1f}\u{14}", "\u{c}\u{10}", "\u{7f}k", "\u{5}|", "!\u{12}", "/\\", "}\u{1c}", "4\r", "\"?", "\u{b}]", "\u{14}{", "\u{b}?", "5=", "`f", "a\u{15}", ".7", "\\\r", "+?", "\u{6}\u{16}", "x\u{18}", "8e", "\u{1c}\u{1e}", "\u{5}~", "](", "`,", "1u", "k$", "\u{1f}g", "cz", "ht", "!b", "{#", "`?", "\u{18}\"", "g-", "c{", "o<", "\r\u{2}", "+v", "\u{1}j", "3_", "g'", "p~", "\\\u{1d}", "6`", "i2", "|k", "~,", "~}", "\u{b}\u{18}", "\t\r", "\r_", "'n", "0=", "vu", " 3", "/r", "bq", "\u{18}\u{11}", "-b", ":h", ">3", "u\"", "$\n", "\u{4}r", "*\u{10}", "\u{14}|", "\u{1}6", "\u{17}\u{19}", "-\u{11}", "'/", "\u{17}/", "l]", "6f", "9\t", "!\u{2}", ")!", "b%", "{,", "\u{1d}9", "m\u{1a}", "pi", "\u{18}w", "b\u{1d}", "\u{1}\u{f}", "9a", "qm", "]\u{11}", "!/", "{=", "vf", "]\u{4}", "&d", "+\u{11}", "0<", "+0", "v0", "\u{2}t", "52", ",&", "+\u{e}", "w\u{1}", "\u{1}&", "\u{1d}t", "\u{c}{", ">\u{1c}", "%j", "!3", "m\"", "5u", "^}", "\u{1}k", "\u{8}\u{11}", "!j", "10", "\u{8}\n", "\u{18}i", "\u{16}a", "\u{1b}\u{3}", "\r\u{e}", "}3", "\t(", "\r\u{13}", "9\u{e}", "]l", "\u{b}e", "=\u{19}", "@\u{18}", "2d", "\u{f}\u{3}", "r\u{13}", "1\r", "\u{1b}$", "\u{2},", "\u{11}2", "z<", "\u{16}s", "51", "5*", "\t", "#>", "l8", "\u{3}1", "5'", "v)", "<0", "\u{14}\u{11}", ":\u{c}", "*|", "?\u{1d}", "e\u{1a}", "k ", "=0", "!r", "&\u{2}", "\u{13}7", "-\u{13}", "t\u{1b}", "d\u{1c}", "\u{8}d", "1v", "1$", "\u{13}w", "0\u{1a}", "\u{7}^", "=!", "-0", "i&", "\u{c}\r", "m5", "$\u{2}", "\u{7}\u{1c}", "~~", "q\u{1f}", "*d", "7(", "`\u{7}", "12", " 9", "w:", ">+", "y\u{3}", "\u{7}h", "\u{13}\u{8}", "\u{1e}\\", "\u{19}g", "5\u{f}", "b9", "/\u{3}", "\u{16}|", "m\u{3}", "\u{7f}\u{14}", "1/", "\ru", ":\u{13}", "\u{16}m", "\u{15}\u{1f}", "x{", "~9", "vk", "b\u{14}", "\u{14}5", "\u{17}\t", "d\u{7}", "3:", "\u{12}\"", "pk", "n3", "\\h", "\u{13}.", "\u{17}\u{7f}", ",\u{f}", "~)", "\u{1}-", "\u{5}\u{e}", "/:", ",1", "h\u{13}", "\u{15}<", "5_", "xg", "$u", "t$", "#&", "_-", "l\u{12}", ".t", "% ", "\u{2}#", "\u{3}2", "\u{4} ", "\u{18}8", "e\u{7}", "9\u{10}", "n\u{8}", "_1", "s>", "4<", "s6", "!f", "z6", "\u{8}c", "\u{f}k", "@\u{17}", "1&", "[\u{14}", "\u{1}4", "_\u{1e}", ".a", "xz", "0\r", "q!", "=?", "\u{7f}p", "a\t", ",-", "\t[", "`\u{19}", "x3", "{\u{5}", "b\r", "u\u{10}", "q[", "`%", "\u{7}\u{19}", "\u{7f}\u{1}", "\u{12}~", "|u", "c@", "y$", "3\n", "d~", ":)", "t+", ";3", "n8", "2i", "z\u{1f}", "w\u{19}", "cn", "-k", "[#", "6m", "!}", "\u{17}\u{c}", "aw", "$\\", "}%", "u{", "3\u{f}", "h ", "\\i", "\u{b}\u{c}", "@\"", "\u{16}d", "q=", "\u{17}%", "eo", "\r]", "\u{1f}\u{c}", "!\u{1d}", "\t\u{10}", "\u{e}\u{7f}", "i1", "\u{11}~", "\u{3}6", "\u{1d}f", "1p", "(&", "(f", "\0q", "\r\"", "=3", "uc", "zn", " [", ":o", "2\u{2}", "\"\u{e}", "1\u{15}", "\u{1f}-", "|=", "r6", "\u{7}@", "\u{15}a", "\u{b}\u{11}", "^\u{f}", "\u{12}\u{1e}", "w\u{3}", "\u{4},", "f#", "\u{e}s", "fu", "w\u{c}", "\u{1d}\u{17}", "(1", "n<", "%a", "5!", ")\u{12}", "e(", "\0<", "uu", "^?", "c)", "\\4", "\u{8}p", "&}", "\u{8})", "d5", "#=", "@9", "z#", "v;", "~%", "\u{10}1", ".\u{19}", "?\u{12}", "%6", "3]", "e?", "fp", "*^", "%\0", "\u{15}5", "k=", "i]", "xb", "[_", "u]", "]_", "|;", "^+", "\u{1f}x", "\u{1e}{", "\u{b}8", "\u{f}w", "@\u{16}", "$\u{7}", "h9", "hc", "\u{18}\u{7}", "$\u{1c}", "\t\u{f}", "!4", "\0\u{6}", "g\r", "v\u{c}", ":n", "+\0", "+c", "\u{1a}\t", "\u{b}(", "-\u{19}", ";\r", "\t0", "\u{f}v", "/\t", "\n$", "l\u{8}", "\u{16}v", "+\u{10}", "lj", "|\u{1d}", "+\u{6}", "?%", "\"\u{11}", "m=", "~z", "bj", "s;", "<=", "hv", "\u{6}\u{19}", "a%", ">;", "\u{1a}h", "&v", "\u{e}\u{1c}", "\u{1f}\u{1c}", ":\u{2}", "~\u{7}", "=\u{e}", "by", "|8", "\u{11}3", "z\u{11}", "/i", "\u{7f}y", "b\"", "#\0", "/\u{4}", "\u{11}]", "\u{f}\u{8}", "\u{16}0", "/\u{11}", "!~", "\u{1}?", "0\u{7f}", "\u{b}>", "v\u{5}", "\u{1c}z", "\u{17})", "\u{1e}\u{8}", "ru", "1c", "0u", "4\u{1f}", "*\u{f}", "\u{7}5", "_o", "k\u{1}", "\u{1a}\u{1f}", ";\u{12}", "&^", "9f", "=$", "a\u{7f}", "w+", "\u{7f}`", "c\u{1}", "\u{17}*", "=\u{4}", "2\u{1a}", "`(", "\u{1b}\u{1f}", ",\u{11}", "(-", "\u{18}\u{3}", "_`", "8=", "t~", "^\u{19}", ">$", "~3", "3~", "!a", "\u{5}\u{3}", "\u{3}w", "\ng", ",5", "u~", "\u{15}\u{14}", "\u{14}g", ",\u{7}", "\u{5}\u{18}", "nq", "6i", "o!", "0{", "\u{18}>", "\u{15}(", "%\u{1}", "!#", "\u{e}*", "\u{2}x", "b\u{7}", "\u{19}\t", "\n5", "=\u{14}", "?l", "\u{1a}/", "$\u{f}", "/\u{12}", "x(", "pg", "+g", "s2", "aj", "~\u{1a}", "r\u{15}", "\\\u{16}", "-\r", "\u{1a}\u{1a}", "j\u{10}", "a,", "\t\u{1a}", "\u{1}\u{1c}", "&\u{13}", "ub", ".1", "}q", "r\u{4}", "\u{12}\u{1c}", "l#", "h\u{14}", "|}", "sr", "\u{17}\u{18}", "n\u{1}", "_9", "l^", "\u{4}\u{f}", "|)", "\"\\", "#\u{7}", "\0r", ",\u{7f}", "\u{4}e", "\u{1a}\u{14}", "\u{1a}7", "21", "9\u{7f}", "p\u{1a}", "%:", "\u{13})", "#\u{12}", "6g", "\u{f}\u{2}", "5\"", "\u{e}+", "\u{18}\r", "%h", "p\u{1e}", "9z", "\0\u{1c}", "\u{4}\u{e}", "9;", "s\u{7f}", "#g", "ew", "bh", "#7", "cw", "7\u{15}", "5 ", "4\u{7f}", "f\u{e}", "ik", "\u{7}\u{8}", "[5", "j\u{3}", "\r\u{19}", " 2", "&i", "h\r", "\u{18}^", "(\u{1f}", "\u{1c}\u{10}", "s7", "\u{1f}\u{13}", "t\u{5}", "\u{16}%", "\u{17}\u{1d}", "a-", "pp", "@n", "gv", "q*", " _", "\"=", "&3", "\u{1c}\r", "\u{5}u", "n?", "q\u{1c}", "\u{2}\u{1d}", "\u{c}\u{5}", ";\u{13}", "y\u{2}", "5.", "\u{1c}\0", "7-", "'\u{6}", "\u{4}t", "}\u{e}", "\u{1e}~", "\0\u{4}", "7\r", "\u{15}\u{7}", "^\u{1d}", "6\u{1e}", "\u{16}{", "|m", "r;", "\u{19}\u{14}", "}t", "4 ", "-m", " !", "\u{7f}/", "\u{e}=", "[d", "l\u{7}", "\u{1}w", "\rv", "$>", "5?", "v\u{8}", "dt", "f4", "\u{12}\u{b}", "\"<", "r8", "e3", "bc", "u:", "\u{f}p", ">z", "s\u{16}", "3\u{6}", "m\u{17}", "x\u{1}", "\u{7f}a", "\u{c}\u{13}", "\u{16}j", "\u{13}'", "]\u{12}", "&\u{6}", "\u{4}/", "\u{7f}\u{4}", "\u{4}i", "&\0", "\"j", "", "l\u{1d}", "\u{e}\u{11}", ";\u{11}", "\u{18}\u{e}", "b8", "&x", "09", "~:", "#\u{1b}", "-\u{17}", "l\u{14}", "_\u{1}", "\u{8}\u{5}", "\u{3}\u{10}", "~5", "\u{4}u", "\"\u{f}", " -", "+f", "i?", "\\~", "19", ",t", "z2", "[\u{7f}", " k", "j[", "^!", "m#", "\n'", "{'", "-\u{e}", "tw", "d\u{10}", "^\u{8}", "\u{1c}=", "9x", "8@", "6;", "g4", "p+", "\u{1}\u{7}", "\u{14}\u{6}", "\\\u{1e}", "f\u{17}", "{`", ".i", "#;", "77", "\u{10})", "\u{3},", "\u{1e}j", "6\u{b}", "\u{17}$", ";\u{b}", "\u{1b}+", "\u{1c}|", "\u{1c}>", "rh", "{\u{e}", "\u{14}#", "o6", "&,", "\u{16};", "%+", "8t", ",?", "n\u{c}", "]\"", "6\u{1a}", "?d", "d1", "g\u{12}", "^\u{7f}", "^\u{5}", "$0", "1g", "%`", "o\u{12}", "i\u{15}", "\r\u{11}", "\u{1c}g", "+\u{5}", "2\u{16}", "&/", "\u{7f}7", "d\u{4}", "ft", "\u{c}j", "\u{17}t", "\u{16}\u{4}", "\u{1a}\u{10}", "\u{5}\0", ")z", "&2", "s3", "[\u{12}", "%g", "^1", "8\u{e}", "84", "}e", "l)", "\u{17}o", "}c", "7>", "^o", ">{", "h|", "\ro", "\r\u{14}", "\u{17}>", "\u{b}\u{7f}", "e\u{14}", "\u{1f}8", "\u{4}p", "\r/", "l?", "97", "f,", "bx", "\u{2}i", "\u{16}c", "\\\u{2}", "\t@", "r-", "-g", "'%", "\0l", "z\u{16}", ".\u{1e}", "ij", " \u{1a}", "r1", "%\u{1f}", "\u{17}x", "!\u{11}", "\r\u{10}", "\u{e}^", "\u{12}<", "|7", "o]", "\u{16}\u{8}", "\u{b}\n", "c+", "\u{f}\u{c}", "\\0", "i.", "@'", "t9", "[8", "]b", "\u{10}\u{7}", "\u{1d}a", "9<", "8\u{10}", "w9", "\u{1b})", "\u{19}\u{15}", "\u{12}]", "f8", "=.", "w\n", "+5", "1\u{b}", "w\u{1d}", "d\u{1d}", "$2", "\u{13}\u{4}", ">:", "+1", "\u{14}\n", ";\t", "r*", "\u{5};", "\u{1c})", "`6", "\u{18}s", "h\"", "\u{19}@", "\u{16}\u{c}", ",p", "v?", "8\u{c}", "/9", "u\u{1b}", " \u{19}", "\n-", "8r", "`~", "e\u{c}", "\u{10}\t", "o>", "x\n", "&\u{17}", "t3", "cv", "\u{17}<", "?y", "\u{1b}{", "\u{6}'", "j\u{e}", "~\u{1c}", "+`", ">s", "8w", "={", "\u{7}7", "0d", "@\u{1a}", "o)", "_\u{14}", "pq", "3\u{1b}", "y\u{8}", ">!", "\nl", "j'", "\u{b}l", "\u{4}c", "@\u{8}", "(\n", ">]", "b!", "+}", "\u{8}j", "\u{1}\u{14}", "\u{1c}l", "\u{16}1", "\u{1b}5", "@5", "\u{1}\u{18}", "#:", "6q", "\\z", ")\u{3}", "j\u{1d}", ",\u{15}", "'\\", "\u{15}g", "*\u{1b}", "3\r", "`m", "2;", "g\u{1c}", "&f", "\u{b}f", "\u{4}}", "\r=", "t\u{10}", "\u{16}.", "\u{15}\u{19}", "\u{10}b", "h\u{19}", "7n", "\"\u{13}", "\u{1d}<", "i\u{18}", "\u{7}4", "4,", "64", "\u{16},", "6+", "\u{1e}g", "$\u{16}", "x^", "8\u{8}", "y\t", "\n7", "\u{2}\0", "/\u{e}", "f/", "\u{19}_", "zd", "]{", "]\u{8}", "o\u{13}", "\u{7}~", "@\0", "?b", "&0", "jo", "s-", "z\"", "']", "}y", "#\u{11}", "b\u{12}", "d,", "\u{1e}?", "!v", "c6", "/|", "g>", ")~", ":\u{6}", "2\"", ",}", "r$", "k\u{14}", "=\u{7f}", "lp", "(\u{f}", "c\u{3}", "7j", "~7", "kk", "h2", "\u{7f}\u{1d}", "k;", "{\t", ",@", "mh", "\u{1d}\u{f}", "6h", "\rd", "\u{14}\u{8}", " %", ")k", "\u{1b}z", "\u{5}c", "\u{13}\0", "[[", "^3", "hg", "`5", "(\u{16}", "\u{6}l", "\u{8}\u{4}", "\u{b}\u{15}", "ip", "6\u{19}", "0\u{4}", "\\}", "_(", "\u{c}$", "d\u{17}", "p\t", "\u{1f}\n", "3s", "&\u{12}", "!.", "5y", "\u{16}x", ")l", "\u{f}>", "\u{1c}_", "3n", "?<", "*s", "x<", "7)", "#\r", "\u{14}!", "\u{7f}8", "kj", "`h", "\u{c} ", "wa", "\u{14}\u{15}", "}\u{1f}", "|v", "\u{10}\u{1c}", "\u{19}*", "g$", "2\u{12}", "\u{6}g", "\u{1f}=", "\u{19}\u{12}", "1 ", "u\u{e}", "&\\", ";\u{1a}", "h8", "m~", "\u{19},", "\u{1e}r", ".l", "d{", "\u{e}\"", "\u{10}|", "tl", "]&", "\u{1}`", "\u{c}\u{7}", "\u{1d}[", "\u{7f}\u{5}", "<\u{4}", "r_", "\u{14}\u{10}", "\u{7f}=", "\u{12}z", "!\u{15}", "<~", "7l", "\n6", "!?", "i0", ">^", "\u{14}/", "&8", "#\"", "~\u{1}", "f$", "\u{1b}\u{7f}", "5p", "\u{1f}\u{8}", "\u{16}(", "\u{13}m", "\n+", "\u{1b},", "\u{1a}\u{f}", "_[", "p`", "\u{14}4", "\u{e}\u{16}", "b3", "\n\u{1f}", ":?", ":k", "d#", "-\u{1a}", "\u{1c}.", "<_", ":9", "~q", "j\u{8}", "@\u{1e}", "\u{1e}8", "v\u{b}", "}?", "\u{12}\u{1a}", "\u{7}\u{12}", "!`", "\u{2}o", "\u{6}\t", "\u{f}6", "s\u{3}", "\u{1}z", "\u{11}\u{e}", "|5", "2\u{8}", "3\u{13}", "4;", "\u{19}#", "8g", "_*", "c\u{14}", "\u{7}2", "\u{17}\u{5}", ";,", ".'", "!6", "\u{18}\u{5}", ",\u{1f}", " \u{16}", "c!", "\u{7}r", "\u{f}%", "_\u{7f}", "\u{13}}", "1>", "$,", "i\u{1e}", "f\u{3}", ":\u{4}", "\n\u{7}", "zo", "xo", "f}", "_/", "\u{c}\u{c}", "[\u{3}", "h\u{f}", "bz", "\u{1c}`", "\u{2}\u{14}", "\tv", "7q", "!p", "`q", ",\u{13}", "v|", "\u{8}l", "b;", "\u{1d}\u{14}", "\u{e}m", "\u{10}\u{19}", "3x", ":#", "n\u{1e}", "\u{4}l", "a\u{1e}", "-*", "\u{13}j", "h\u{7f}", ")\u{17}", "@b", "\u{c}\u{14}", "!m", "\u{4}7", ":0", "\u{1c}\u{6}", "_ ", "-\u{7}", "[%", "\u{13}|", "\u{c}i", "\u{14}\u{c}", ">u", "v\"", ";.", "\u{1b}k", "=\u{1f}", "\u{13};", "\u{7}\u{15}", "j+", "8y", ">w", "e\u{b}", "@e", "3\"", ";_", "96", "+b", "({", "h\u{8}", "\u{1e}\u{13}", "i\u{f}", "eb", "\u{e},", "x\"", "2c", "\u{1d}\u{13}", "iu", "\u{1a}>", "[\u{19}", "\u{7f}z", "mt", "\u{15}\u{3}", "2j", "\u{7}\u{7}", "?.", "4\u{e}", "f\0", "u;", "\u{1a}u", "y\u{b}", ")#", "\u{8}\u{e}", "\u{5}$", "=5", "\u{b}j", "w4", "\u{1d}4", "\u{10}~", "\u{4}%", "5#", "\u{1f}o", "2\u{10}", "z$", ",#", "1|", "4!", "o`", "\u{2}\u{1}", "n$", "\\q", "\":", "gt", "o#", "\u{3}f", "['", "@d", "z\u{18}", "\u{1b}\t", "\u{16}\u{1c}", "9\u{1d}", "og", "\u{7}\u{1e}", "m:", "3\u{7f}", "qb", "\t\u{1e}", "w\"", "{@", "\u{6}n", "3a", "@7", "5d", ">\u{7f}", "\"@", "^\0", "q?", "\u{1b}_", "\u{1b}~", "wn", "\r\t", "{\u{2}", "}6", "rm", "\u{12}q", "^{", "%f", "6v", "\u{7}\u{2}", "!&", "i;", "#\u{6}", "\u{13}h", "j;", "a\u{1f}", "\u{5}a", "a\u{1d}", "oe", "::", "! ", "5`", "@.", "f_", "\u{15}'", "bb", "t\u{12}", "\u{5}\u{b}", "\u{6}7", "q_", "24", "lm", "#a", "\0k", "qf", "x|", "t@", "[$", "j9", ":_", ":5", "\u{8}\\", "-4", ">&", "\u{b}o", " 4", "\u{17}\u{3}", "\u{e}y", "$m", "?k", "1x", "m\u{c}", "8z", "_\u{8}", "\u{17}\u{1a}", "; ", "8p", "'`", "\u{3}g", "\\%", "t\u{7}", "\u{5}6", "d^", "*\u{8}", "+3", "6j", "\u{18}\u{1}", "\u{5}=", "o*", "\u{7}`", "ux", "3[", "9\u{c}", "[b", "*\r", "\u{1}8", "\u{7f}\"", "\u{18}e", "/\u{c}", ")w", "\u{13}\u{f}", "0m", "q8", "\u{1d}=", "<\u{c}", "d\u{16}", "f\"", "2%", "\u{17};", "\"g", "a\n", "{n", "}b", "z}", "n-", "\u{14}\u{4}", "\u{1f}#", "^=", "\u{1c}\u{19}", "'-", "gm", "i8", "+\u{b}", "w\u{1c}", "!\t", ")9", "^h", "v\u{4}", "-q", "u*", "\u{3}\u{1e}", "\u{f}[", "\u{13}{", "\u{16}l", "p|", "\u{1c}\u{8}", "\u{18}\u{c}", "},", "\u{17} ", "\u{1a}o", "`\u{e}", "\u{4}\u{b}", "(\u{1d}", "\u{b}\u{16}", "?\u{17}", "m\u{12}", "\u{18}~", "\u{18}7", "\u{1d}b", "\u{c}r", "\u{15}\u{8}", "j1", "\0p", "f+", ":t", "(\u{19}", "#h", "@\u{1b}", "\u{5}k", "'\u{14}", "\t\u{b}", "\u{13}\u{e}", "\u{18}y", "r2", "j8", "\0\u{1a}", "a\u{1b}", "3\u{c}", ">8", "]'", "?-", "e\u{12}", "&{", "6l", "\u{4}\u{4}", "\n>", "+\u{1a}", "/v", "mi", "@k", "'t", "\u{19}\\", "\u{1b}\u{4}", " \u{3}", "?", "\t=", "(\0", "\u{c}\u{1f}", "0\u{16}", ":\u{1a}", "&>", "?1", "|\u{f}", "n6", "n[", "8$", "8^", "\u{1e}`", "\u{13}+", "_\u{4}", "9\u{4}", "dd", "\u{10}\u{5}", "+\\", "`)", "$b", "~t", "\u{7f}\u{b}", "\u{4}>", "\u{16}\u{19}", "u\u{1d}", "1(", "\u{8}\u{13}", "\u{11};", "\u{11}j", "/%", ".(", "\n&", "\tj", "]1", "hb", "\u{1c}+", "[\u{2}", "\"!", "o_", "`\n", "9p", "\u{11}\u{14}", "\u{17}\u{14}", "\u{16}\u{2}", ")t", "9/", "\u{3}\r", ">(", "\u{1}<", "\u{1e}]", "\u{3}&", "t\u{17}", "tc", "h%", "\u{4}\u{6}", "-@", "}\r", "-y", "z>", ".)", "\u{e}\u{1d}", "fc", "q<", "x\u{19}", "?\u{7f}", "7e", "y5", "\u{1f}.", "\u{8}~", "\u{10}\0", "9(", "(\u{14}", "\u{f} ", "\u{7f}t", "k\u{4}", "~\u{12}", "\u{1c}b", "\u{12}\\", "\t\u{1d}", "\u{16}9", "m\u{5}", "'8", " \u{e}", "\u{2}\u{15}", "d|", "-r", "|\\", "<]", "@;", "\u{2}j", "8\t", "1a", "c^", "\u{4}\0", "5\u{16}", ">\u{5}", "\u{1c}a", "\u{13}x", "\u{8}_", "b\u{19}", "\u{7f}?", "i#", "\u{1c}x", "4c", "d\u{3}", "\u{1a}\u{12}", "0i", ",j", "b]", "7d", "s\u{b}", "&#", "g(", "1\u{1e}", "j&", "o\u{1e}", "6%", "\u{16}\t", "v!", "7o", "0'", "\u{11}^", "f\u{7}", "o%", " q", "n\u{17}", ">p", ":\u{10}", "\u{1b}\u{1e}", "\u{1d} ", "\u{c}\u{1e}", "\u{13}z", "f&", "\n\r", "\r;", "=d", "\r\n", "\r?", "2\u{b}", "\u{c}_", "}\u{6}", "z=", "%\u{c}", "_p", "&z", "z!", "\u{8}\u{7f}", "c#", "_~", "\r>", "\u{e}5", "c8", "hu", "3o", " \u{15}", "\u{14}j", "\u{18}m", "\u{12}\r", "\u{8}&", "9'", "\u{11}_", "\u{4}\u{15}", "/x", "\0,", "wf", "0[", "$a", "\u{17}4", "j2", "u$", "w;", "~\t", ".:", "0+", "0x", "+t", "]5", "*\u{6}", "\u{8}q", "\u{1a}[", "v6", "zx", "-1", "4k", ">\u{1f}", "\u{5}x", "f\u{1b}", "\"\u{1d}", "\u{e}'", "\u{8}\r", "z;", "\u{1}.", "\u{f}\u{5}", "\u{f}u", ":\t", "\u{10}\u{15}", "\\\u{19}", "o}", "f\u{1e}", "\u{18}\u{8}", "/\u{1a}", "'r", "/~", ")u", "%-", "^e", "r\u{2}", "08", ",\u{16}", "c?", "k'", "g{", "oy", "u3", "\\)", "a\u{14}", "\u{1}}", "!7", "\u{7}\u{5}", "]:", "%{", "/$", "\u{b}d", "\u{e}\\", "5i", "]p", "t`", "d\u{c}", "\u{17}8", "1\u{2}", "\u{16}\\", "\u{1b}\u{7}", "_r", "[\0", "\u{12}+", "\u{10}\u{12}", "x\u{c}", "$;", "b\u{3}", "s/", "\"\u{10}", "\u{4}`", "l_", ".\u{2}", "_b", "4v", "\u{1d}\u{1c}", "\\\u{11}", "' ", "gz", "`8", "\u{1b}*", "p\u{15}", "\u{10}$", "~\u{c}", "\u{17}6", "\t\u{e}", "m7", "5v", "p!", "k}", "\u{e}\u{6}", "\u{5}_", "/[", "cu", "b\u{7f}", "15", "x_", "]w", "\u{19}\u{1f}", "\u{7f}r", "\u{15}\u{18}", "4\u{13}", "qr", "6|", "6\u{c}", "m\u{1e}", "4.", "y<", "[a", "xh", "3`", "_!", "\u{7f}h", "8i", "\u{3}\u{2}", "$\u{18}", "|l", "\u{16}'", "\u{e}z", "\\\u{10}", "3}", "\u{18}\u{1e}", "\u{2}!", ".\u{18}", "e~", "5\u{5}", "i+", "0$", "\u{17}-", "$\u{e}", "/z", "\t-", "=:", "\u{16}\u{11}", "p\u{e}", "e\n", "u>", "v9", ">\u{3}", "\u{5}0", "\u{4}d", "js", "^\u{1}", "y\u{e}", "\u{e}|", "^\u{17}", "", "d\u{19}", "%\u{19}", "e\r", "'p", "b:", "!g", "\u{16}\u{b}", "5b", "g\\", "7\u{7f}", "*b", "]7", "\r#", "\u{1b}?", "\u{11}$", ")\"", "s\u{7}", "#\u{2}", "\u{16}t", "(a", "u/", "\u{1c}\u{c}", ".`", "`\u{2}", "6\u{12}", "^b", "8b", "g.", "]e", "]n", "\u{8}\u{16}", "m?", "<@", "{\u{12}", "\nq", "\u{7}p", "\u{1d}|", "\"5", ">\u{1e}", "\u{8}(", "jk", "nz", "sz", "j7", "\u{10}y", ">\r", "\u{12}x", "{\u{14}", "\u{5}9", "\u{13}>", "b\u{16}", "\u{7}#", "\u{4}\u{19}", " 7", "x+", "_'", "\0{", "\u{5}j", "\u{1a}\u{8}", "!,", "*@", "~-", "=\u{17}", "\u{13}@", "^u", ".\0", "^\u{1c}", "-{", "oi", "\u{2}\u{f}", "c\"", "r\u{7f}", "~*", "*-", "vt", "\u{1c}3", "t1", "[ ", "6!", "9^", "\u{6}&", "\u{1a}|", "y#", "}\u{11}", "nl", ",\u{12}", "?m", "s4", "\u{2}\u{1a}", "ey", "\\", "u\u{12}", "2t", "\u{13}q", "\u{1}\u{5}", "y*", "!n", "\u{e}4", "|r", "\u{2}n", "\0f", "&t", "7v", ">a", "&\u{c}", "~\u{5}", "\u{15}2", "\u{1f}\u{7f}", "g\u{1b}", "\u{7f},", "&<", "n\u{11}", "0!", "\u{12}\u{5}", "a\u{1c}", "7w", "}\u{1d}", "az", "\0\u{2}", "6*", "\u{15}^", "$|", " \\", "\u{e}r", "\u{6}\u{1d}", "_a", "mu", "v~", "\u{19}t", "wj", ",\u{1d}", "e\\", "@x", "\u{2}/", "\u{1}\u{8}", "\u{12}\u{3}", "\0\u{16}", "]?", "\u{5}\u{14}", "`w", "\u{7f}\u{2}", "\u{4}{", "\u{2}(", "^d", "*\u{12}", "0\u{10}", "r|", "'\u{b}", "0\u{f}", ")\u{e}", "\u{3}+", "yn", "c\u{1e}", "\u{e}0", "-l", "7u", "\u{4}\u{3}", "{\u{1c}", "f\r", "#~", "\u{e}q", "m\u{18}", "\u{4}=", "9e", "k/", "k\u{1f}", "\u{7}\u{16}", ";\u{16}", "e:", "p\u{14}", "\u{e}\u{15}", "\u{13}1", "nm", "\u{c}|", "=\u{f}", "e^", "\u{4}!", "?(", "/\u{10}", "c\n", "?\t", "1\u{17}", "9[", "\u{c}*", "\u{e}t", "\"w", "=\u{10}", "b\u{1c}", "\u{1c} ", "g]", "\u{7}8", "@m", "\u{16}y", "b~", "b\u{5}", "\u{10}v", "`\r", "xp", "fx", "\u{7}v", "\u{17}]", "i'", "\u{1c}\u{1f}", "\u{11}n", "l\u{f}", "\u{1e}\u{12}", "2}", "\u{17}\u{12}", "\"\u{b}", "\u{15}x", "\u{1e}0", "\u{6}}", "~\u{1f}", "0s", "f\u{1f}", "7p", "*\u{5}", "yb", "\u{13}&", "\u{1b}r", "?\\", "\u{c}\u{4}", "\r5", "l4", "\u{1b}2", "\u{1c}8", "\u{11}u", "\u{17}2", "61", ",\u{5}", "=\u{1c}", "f[", "w\u{5}", "*\u{1c}", "\u{1d}+", "", "yq", "\u{f}i", "\u{e}.", "8\u{2}", "aa", "\u{1}1", "u\u{2}", "*4", "\u{1e}&", ")r", "\u{16}\u{1a}", "\u{8}\u{1}", "\u{10}i", "\u{1a}f", "\u{1a}\u{4}", "w?", "i\u{17}", "\u{5}[", " j", "v\u{1b}", "\u{13}r", "\u{1b}\u{18}", "dy", "6k", "3!", "\")", "d}", "\u{17}9", "*#", "m\u{4}", "\u{4}@", "r:", "\u{c}+", "\t\u{12}", "!x", "\u{1f}1", "<\u{11}", "~=", ".{", "z0", "'q", "9+", "(+", "45", "?=", "(\u{4}", "d2", "iw", "", "!@", "]j", "\u{c}\u{17}", "k6", "v$", "x!", "\u{f}q", "\u{1f}\u{1e}", "1\u{12}", "\u{6}\u{1}", "%\u{8}", ")\r", "o{", "\u{13}\u{1c}", "k*", "3i", "\u{17}{", "\u{14}h", "\u{13}~", "hq", "y:", "g?", "^\t", "\u{6}\\", "`_", "\u{10}d", "m_", "\rx", "\u{2}r", "g\u{6}", "/e", "\n\u{1a}", "h'", "7k", "*c", "k|", "y\u{19}", "&5", "1\u{1c}", "\u{e}\u{2}", "\\m", "\u{5}.", "\u{11}\u{2}", "l\0", "%\u{14}", "w'", "4\u{3}", "\t!", "$\u{15}", "w7", "*j", "dk", "]+", "^\u{15}", "6t", "\u{2}%", "`\u{11}", "\u{10}\u{18}", "2#", "\u{4}*", "\u{1f}y", "a\u{19}", "#u", "5\\", "p%", "\u{1b}a", "\u{12}\u{1d}", "\u{13}4", "\u{1a}\u{7}", "| ", "\u{4}4", "+u", "%\u{18}", "!y", ",d", "\u{16}:", "_\u{1a}", "y.", "$)", "mx", "%[", "2\u{1d}", "1k", "'a", "\t\u{1}", "\u{e}l", "z\u{6}", "bf", "9\u{2}", ")\u{10}", "v\u{15}", "\u{14}@", ":\"", "q\\", "\u{1f}\0", "<\u{1a}", "\"\u{7}", "j\u{1}", "\u{19}9", "?\u{4}", "\u{1d}^", "\u{17}\u{11}", "))", "\"\u{1f}", "i\u{10}", "\u{e}2", "f\u{14}", "[\u{18}", "\u{17},", "\u{5}\u{1d}", "\n!", "\u{8}<", "}\u{8}", "\u{f}m", "h]", "\u{14}x", "~\u{7f}", "\u{17}\u{6}", "'>", "\t\n", "`l", "\u{10}?", ":6", "|<", "8\u{1d}", "7]", "nv", "tz", "6s", ">\u{4}", "\u{b}\u{2}", "(\t", "\u{13}k", "\u{2}|", "\u{1a}?", "\u{1a}^", "\\ ", "n\u{6}", "t\u{1d}", "y\u{1a}", "2-", "\u{8}\u{1f}", "x,", "]i", "&?", "\u{11}h", "p)", "($", "qp", "\0\u{13}", "0\u{12}", "!\\", "\r}", "k8", "\u{5}!", "\u{13}y", "`@", "0\\", "|.", "\u{3}\u{1d}", "\u{14}.", "", "n\u{7f}", "|s", "\u{11}p", "o\u{1a}", ",%", "\u{4}\u{1f}", ">}", "\u{1e}q", "t(", "@ ", "#\u{e}", "~\r", "\u{1b}<", "\u{6}6", "q0", "'~", "\u{3}*", "\u{11},", "q\u{1}", "\u{17}c", "5\u{1c}", ";:", "ji", "0?", "\"t", "$q", "i~", "w6", "0h", "\u{1}0", "h\\", "%7", "\u{1a}\"", "\u{15}\u{1a}", "k!", "\u{18}_", "b\u{11}", ":\\", "\u{11}[", "\u{4}\u{12}", "g&", "h7", "\u{4}^", "&_", "\u{c}/", "w!", "!\u{18}", "{{", "4\u{f}", "@8", "k~", "$\"", "'7", "n(", "\u{c}m", ",\u{b}", "\u{1d}\u{e}", "86", "$\u{1e}", "\u{1d}1", "5]", "wq", "{^", "\0\u{12}", "\u{4}\u{1d}", "v+", "\u{18}=", "\\7", "\u{1d}\u{16}", "\u{7f}5", " \u{1f}", "u\u{15}", "t%", "g\0", "\u{15}\u{4}", "(|", "\u{8}+", "\u{4}<", "\u{7}z", "o\u{18}", "##", "1\n", "\n[", "", "p\u{2}", "\u{6}\u{18}", "\u{18}\u{18}", "\u{16}\u{1e}", "e!", "9)", "%b", "\u{f}\u{b}", "i\u{1a}", "\u{11}y", "#\t", "e;", "y)", "q\u{1b}", ")|", "yo", "\u{8}`", "\u{19}:", "\u{1a}@", "`^", "\u{7f}>", "\u{8}\u{1b}", "\u{15}o", "\u{13},", ",\u{10}", "4|", "1l", "-\u{c}", "\u{5}\u{8}", ">\u{c}", "=[", "ks", "\u{10}z", "@t", "!9", "o\u{3}", "\u{1b}\u{6}", "n#", "0r", "\u{19}(", "\u{1c}~", "\u{7}\\", "my", "|,", "\u{4}?", "*\0", "\0|", "\u{2}]", "\u{b}z", "g\u{1f}", "~&", "vz", "\u{1d}\u{6}", "a\u{17}", "o[", "2\u{c}", "\u{7}[", "\u{c}8", "[]", "<$", "s{", "\u{1a}m", "v%", "g+", "\u{15}3", "\u{1a}q", ":\u{3}", "\u{f}\u{6}", "zj", "q&", "wb", "\u{1b}-", "\u{16}}", "b2", "#e", "\u{e}\u{10}", "%q", "b\u{18}", "w<", "[.", "\u{8}x", "\u{11}\u{1e}", ";q", "7\u{13}", "\t\u{15}", "3,", "-:", "1^", "@p", ".s", "{k", "\t{", "\u{1d}e", "%l", "\u{1d}\u{8}", "\u{3} ", "tb", "\u{1f}q", "~\u{8}", "ja", "\u{1e}-", "`k", "\u{1}\u{6}", "3-", "^,", "r9", "\u{2}4", "<#", "q\u{2}", "\u{1d}]", "~\u{13}", "w{", "+!", "+k", "!\u{1b}", "\u{1b}i", "\r@", "\u{17}\u{7}", "\u{16}\u{16}", "\u{3}j", "", "k9", "9b", "1h", "',", "05", "1?", "{t", "$`", "8\u{1c}", "\u{14}_", "\0\u{11}", "j\u{1b}", ">'", "c\u{5}", "\u{b}q", "\u{18}3", "z]", "=\u{1b}", "b4", "k\t", "a^", "\u{f}t", "[\u{15}", "\u{11}t", "q3", "\u{1e}6", "w\u{15}", "&\u{1d}", "70", "4p", "\u{7}\t", "\u{e}%", "g\u{11}", "2\u{14}", "\u{e}-", "5\u{1d}", "b\u{17}", "\u{19}<", "zg", "`\u{1}", "&n", "*]", "-\u{f}", "\n\"", "\u{1f}\t", "\u{3};", "?\u{15}", "0\u{19}", "\u{15}!", "\u{6}~", "\u{1d}\u{3}", ",^", "2>", "x\u{16}", "\u{4}-", "m,", "j\u{c}", ";t", "\u{14}w", "y>", "q~", "\rk", "5m", "2\u{15}", "vd", "\t/", "o\u{8}", "\u{4}\r", "`<", "%0", ",u", ">[", "\u{c}a", "([", "x@", "v^", "j=", "\u{3}<", "\u{c}\u{15}", "\u{5}y", "\u{16}!", "\u{1b}/", "a!", "m$", "7!", "\u{6}t", "2a", "*\u{b}", "*'", "0*", "\u{18}g", "\n0", "0,", "d$", "h-", "`}", "\u{7}a", "@\u{14}", "(\u{15}", "|$", "qj", ".\u{3}", "k\u{13}", "\u{e}?", "\u{6}9", " \0", "\\\0", "b0", "3\u{1c}", "@^", "i*", "l\u{16}", "\u{14};", "?\u{1f}", "\u{18}q", ";k", "a_", "\u{1a},", "d4", "gy", "%?", "xc", "3e", "&h", "'\r", "p6", "e\t", "<6", "!5", "`|", "w\0", "#.", "&`", "9\u{3}", "d6", "8u", "i\u{3}", "\u{1a}!", "\u{1a}#", "2&", "_q", "?;", "9\u{7}", "3\u{19}", "\0;", "\u{b})", "\u{10}\u{1b}", "<\u{1d}", "\0\u{f}", "\u{12}o", "~r", "\u{1b}e", "\u{15}\u{10}", "\rw", "\u{2}g", "?\u{3}", "3\u{2}", "\u{13}\\", "\u{1c}#", "\t+", "{;", "9\u{6}", "nx", "t", "\u{11}\u{1}", "\u{11}z", ":e", "\u{b}6", "\u{17}\"", "4+", "\u{b}\u{12}", "a\u{7}", "n0", "\u{17}w", "g%", ";?", "w#", "\u{c}(", "]\u{15}", ",*", "px", " \u{c}", "%~", "23", " 5", ";8", "|\r", "#0", "p\u{1}", "7\u{1}", "\u{b}-", "\u{11}\u{17}", "\u{12}k", "25", "\u{1b}v", "\u{1e}7", "c\u{2}", "xl", "*\u{1}", "\u{b}!", "}\u{7}", "\u{e}1", "\u{f}(", "~#", "\u{10}]", "fg", "\u{13}n", "m*", "~|", "c.", "s\\", "\"*", "@>", ":.", "!\u{6}", "\u{1c};", ".v", "\u{6}p", "\n\u{15}", "\u{c}\u{11}", "\u{1}\u{2}", "8n", "0q", "e\u{15}", ":p", "5&", "g`", "\u{7}c", "h\u{1}", "`\"", "s\0", "\nj", "zk", ";u", " \u{12}", "\u{13}\u{13}", "\u{11}\u{11}", "\u{e}!", "", "|&", "b1", "cp", "\u{12}p", "n\u{13}", "\u{1f}a", "w8", "\u{b}/", "^\u{10}", "xd", "n)", "\u{3}l", "\0\u{10}", "\u{11}:", "-}", "\u{1}\u{1b}", "yl", "\u{14}~", "n\u{4}", "fh", "yr", "\n\u{c}", "57", "1z", "b{", "7\"", "|:", "o^", "g,", "\rg", "\u{11}\u{1d}", "k\u{11}", ".5", "2e", "=f", "[\u{17}", "!=", "+r", "z|", "'1", "(d", "s&", "}9", "f<", "&r", "x\u{1d}", "\u{17}j", "\u{3}@", ":>", "\u{1}#", "\n4", ":[", "-'", "<\u{3}", "\u{e}p", "\\s", "h.", "{1", "3{", "\u{5}\u{7}", "\u{4}y", "\u{1e}p", "\u{1c}:", "\u{1c}\u{14}", "a8", "\u{14}\u{1c}", "-=", "\u{e}\u{12}", "t\u{b}", "$\u{11}", "\u{7}\u{18}", "#r", "v\u{2}", "kz", "\u{7f}0", "\u{2}\u{17}", "\u{f}&", "^[", "\u{1e}\u{1}", "$=", "1<", "+{", "`", "\u{1b}'", ")\u{16}", "\u{14}&", "j#", "-x", "9s", "8o", "\u{5}\u{1c}", "('", "e\u{5}", "\u{f}j", "p9", "o+", "9w", "^7", "\u{1b};", "48", "\u{19}i", "^@", "x\u{14}", "8\u{12}", "'\u{17}", "4:", "`.", "0\u{1c}", "9\u{11}", "i\u{e}", " 1", "\u{19}y", "-;", "[9", "5e", ",!", "n!", "c\u{1a}", "2\u{17}", "gf", "ei", "95", "yj", "$'", "\u{f}\r", "]c", "\u{19}\u{2}", "j\u{7f}", "\u{3}\u{1f}", "<\u{10}", "34", "[\u{c}", "\u{7}3", "pc", "s\u{1f}", "\u{11}\n", ":\0", "\u{2}\u{c}", "`n", "4\u{12}", "5\u{2}", "\u{f}\u{1a}", "1\u{8}", "&\u{11}", "g*", "o\r", "\u{14}\0", "v/", "\u{15}t", "hs", "6\u{16}", "w=", "mv", "@\u{1f}", "j:", "j\u{15}", "a\u{16}", "\u{12}f", "\u{c}.", "\u{1e}\u{14}", "\u{b}|", "g}", "91", "./", ":^", "l\u{7f}", "\u{5} ", "v\u{17}", "\\{", ":\u{1b}", "\u{13}o", "1m", "1[", "8(", "\u{f}4", "\n<", "2<", "\u{b}\u{5}", "\u{1f}\u{e}", "6\u{7}", "\u{1c}w", "\u{4}z", ")\u{15}", "\u{1c}5", "9:", "^\u{16}", "[y", "g_", "\n:", "ys", ">f", "cj", "hy", "!w", "6\u{7f}", "\u{15}8", "\u{1d}\u{4}", "'|", "^\u{e}", "bu", "\u{10}#", "t\u{7f}", ".\u{1f}", ":v", "/4", "[(", "\"m", "*\u{16}", "[*", "+\u{14}", "x\t", "2=", "`>", "\u{b}p", "\u{1c}7", "\u{c}x", "]-", "d\u{b}", "\u{1c}\u{13}", "\u{11}b", "@[", "c=", "b#", "\u{7f}[", "5\r", "[x", "\u{13}2", "${", "p;", ";)", "\u{6}q", "z\u{b}", "o,", "2p", "46", "\0\u{8}", "\u{2}\u{e}", "l;", "-#", ":;", "o1", "\u{b};", "/k", "l|", "=>", "i-", "o5", "\u{7f}b", "q\u{1e}", ";9", "\u{14}\u{12}", "6]", "5a", "u'", "sk", "z\u{13}", "k\u{12}", "69", "\r+", "d\"", "8f", "'\u{7f}", ":3", "\u{11}\\", "{o", "\u{2}}", "zr", "}\u{1}", ";i", "\u{12}_", "\u{4}~", "@-", "1\0", "`\u{1d}", "\0z", "\u{e}>", "<+", "\u{1c}n", "hf", "\u{2}-", "uv", "\u{11}\u{15}", "\04", "5/", "#\u{19}", "&o", "\u{1e}=", "9\u{1e}", "u.", "(\u{7f}", "sm", "\u{14}\u{16}", "3)", "5-", "%x", "sq", "@i", "$\u{1b}", "jj", "}!", "\u{e}&", "<\u{8}", "\u{1e}\u{e}", "\0 ", "=v", "i}", "r\u{7}", "\u{6}3", "[f", "`4", "\u{7}x", "\u{12}@", "]v", "\u{4}\t", ")\\", "e8", "\u{18}x", "\t:", "^8", "\u{17}\n", "l\u{3}", "\u{8}1", "o\u{6}", "\u{19}\u{1a}", "\u{1d}s", "\u{14}\u{1f}", "~\u{16}", "\u{17}\r", "76", "\u{8}\u{15}", "w\u{10}", "k-", "3\u{4}", "{g", "b\u{1e}", ")}", "v@", "t>", "\u{e}\u{5}", "k\u{16}", "\u{f}@", "j\u{1a}", "+6", "q`", "\u{6}^", " 0", "\u{2}e", "\u{5}\u{5}", "t\u{1f}", "*\u{18}", "/3", "\t5", "\u{17}y", "\u{13}\u{18}", "\u{5})", "#\u{5}", "1o", "zy", "s\n", "}=", ".@", "5\u{19}", "\\\u{3}", "j ", "(\r", "^t", "\u{6}\u{7}", "\u{18}t", ".\u{11}", "\u{11}\u{16}", "&\u{1c}", "_\u{16}", "#!", "]\u{5}", "z\u{1}", "kd", "\u{6}\u{17}", "\u{1c}\t", "\u{16}k", "\u{f}z", "\\'", "?c", "|@", "\u{12}n", "ym", "\\\u{18}", ",.", "}[", "\u{1}l", "\u{1e}\n", "&\u{10}", "#\u{3}", "~\n", "=n", ")+", "\0[", "9r", ";j", "s:", "`\\", "\u{8}[", "\u{11}f", "n\u{15}", "\r~", "#\u{1a}", "\u{7}{", "\u{16}5", "_%", "j\u{5}", ".\u{4}", "m\r", "|~", "jm", "\u{1}\u{13}", "\t9", "7:", ">\u{8}", "r%", "\u{1c}u", "\t\u{14}", "\u{12}\u{17}", ";6", "4l", "1{", "\u{e}i", "y9", "|h", ";#", "0;", "\u{7f}\n", " .", "@%", "\u{10}\"", "%\u{6}", "7%", "3t", "\u{7f}d", "/#", "\u{7}(", "5\u{10}", "\u{14}r", "d\u{12}", "\u{11}\u{7}", "=^", "*5", "\u{17}r", "\u{3}e", "\u{13}f", "u\u{7f}", "h\u{1c}", "}\u{17}", "k:", "4g", "\rz", "\u{1f}\u{1}", "i5", ">r", "'m", "o(", "m]", "!2", "~s", "o2", "2k", "}0", "\u{14}i", "\u{6}\u{5}", "%z", "\u{15}l", "\u{3}-", "{\u{11}", "\u{1c}]", "44", "8:", "}k", "{7", "\nh", "yd", "p\u{16}", "\u{18}\u{1d}", "_>", "l\u{17}", "'j", "'}", "n~", "\u{2}8", "\u{7}1", "2\u{f}", "\u{12}0", ")q", "qy", "\"0", "2f", ")m", "-.", "\ry", "\u{2}k", "\u{c}3", "\u{15}\u{c}", "\u{12}\u{18}", "\u{17}1", "!\"", "@(", "82", "~a", "'\t", "n\u{1a}", "fl", "\u{17}\u{1e}", "u\u{f}", "&(", "\u{18}d", "\u{19}\u{c}", "\u{11}e", "\u{1}\n", "\u{15}q", "\u{2}\"", "}j", "sd", "-e", "!<", "p\u{11}", "\";", "^\u{4}", ">4", "\u{7f}\u{10}", "\0\u{1d}", "m\0", "(u", "\u{15}\u{1e}", "\u{13}\u{7f}", ":\u{17}", "bv", "gn", "^&", "\u{1b}\u{b}", "w\u{2}", "\u{1a}-", ";&", "\t2", "~{", "$f", "x>", ")%", "\u{1c}9", "\u{10}l", "\u{f}g", "hp", "4\n", "l\t", "\\f", "{|", "0\0", "t\u{8}", "\"9", "1w", "\u{10}\u{6}", "\u{11}\u{12}", "m\u{16}", "/>", "\u{14}<", "\u{12}1", "1\u{18}", "n\u{14}", "u8", "\u{2}`", "50", "\u{14}1", "m\u{1d}", "&\u{18}", "v#", "\u{7}<", "\u{17}\u{13}", "{)", "\u{1}\u{1a}", "+\u{1}", "\u{15}\u{2}", "\n\u{17}", "ld", "e9", "?\"", "\u{1e}\u{11}", "r\u{16}", "c$", "\u{11}%", "/l", "_c", "4a", "\rl", ".x", "t|", "\u{7f}s", "h0", ".%", "s\u{19}", "0t", "/\u{8}", "u1", "=s", "i\0", "*{", "\\>", "\t\0", "\u{15}:", "8.", "\u{1c}h", "\u{1c}e", "\u{f}\0", "\u{6}]", ";\u{1e}", "@#", "y\u{15}", "\u{7}q", "}\u{16}", "/{", "y}", ":~", "\u{b}{", "@~", "^a", "k&", "pw", "\u{1d}:", "\u{1}~", "\u{4}a", "\u{e}f", "!(", "\u{f}^", "\u{1c}\u{b}", "}\"", "zs", "\u{7f}l", "\u{1}o", "\u{14}u", "x\u{1e}", "\u{1d}\u{11}", ";\u{c}", "*$", "4z", "n\t", "#}", "tp", "{\0", "\u{1e}o", ")\u{14}", "c\u{1c}", "\u{2}h", "63", "\u{1f}h", " \u{13}", "&q", "n\u{16}", "7c", "~\u{1d}", "8]", "dp", "\u{1d}p", "9k", "\u{1c}\"", "{>", "\u{11}&", "d\u{11}", "\u{b}n", "\u{1a}4", "\u{3}|", "l/", "a}", "\t~", "p\u{13}", "&\r", "h\u{12}", "0\u{5}", "\u{15}4", "v\u{e}", "pm", "\\\u{5}", "zu", "\u{7f}u", "\t\u{7f}", "vc", "mz", "f-", "[{", "\u{e}\t", "\u{5}{", "k0", "\u{c}#", "p\u{8}", "\u{c}-", "0&", "_;", "5t", "\u{1e}n", " >", "c_", "\u{1c}\\", ")j", "@\u{19}", "b\u{8}", "w}", "r'", "eh", "9\u{16}", "8\u{4}", "$s", "88", "[)", "(c", "ny", "\u{b}a", "];", "4\u{15}", "i:", "}\\", "2!", "\u{12}9", "\u{5}z", "\u{8}3", "\u{13}(", "\u{11}x", "y\u{12}", "0\u{1f}", "\u{11}\u{6}", "\u{18}\u{1b}", "!\u{7}", "~ ", "\nv", "\u{e}g", "\u{1b}|", "8?", "1\u{1f}", ",k", "?6", "\u{1c}\u{17}", "\u{e}v", "cs", "\u{18}\u{12}", "\u{6}\u{7f}", "g\u{1}", "k{", "0\u{1b}", "\u{8}0", "[~", "i\u{13}", "#k", "`=", "\u{1}$", "\u{5}+", "\u{7}d", "n9", "\u{b}=", "\"\u{4}", "t8", "8\u{19}", "@\\", "]k", "\u{1e}%", "+:", "p_", ">-", "+x", "\u{6}\n", "d\u{1a}", "{z", "$\u{19}", "\u{7f}-", "\\[", "\u{6}@", "8h", "3\u{1}", "k\u{2}", "\n~", "d\u{6}", "&s", "#\n", "v\\", "g\u{7}", "i\u{4}", "gh", "\\\u{e}", "\u{12}2", "\u{e}3", "+\u{c}", "<\u{5}", "\u{5}3", "\\y", "db", "|\u{19}", "=/", "(/", "\u{6}a", ")_", "f\u{8}", ">\u{13}", "6a", "5\u{3}", "\u{8}\u{2}", "\t\\", "@@", "\u{15}+", "{\\", "\u{10}4", "\u{11}>", "^f", "#\u{16}", "\u{c}]", "u\u{5}", "\u{f}{", "|+", "\\\u{1}", "*\\", "g~", "\u{12}\u{1}", "u\u{b}", "\u{2}+", "\u{7}_", "\ni", "b/", "\u{e}/", "md", "f>", "g\u{3}", "\u{1f}3", "\"#", "\r\u{17}", "\u{7f}\r", "\r<", "u\t", "_l", "\u{1d}\u{18}", "v4", "\u{1c}y", "\u{7},", "u)", "\u{11}v", "\u{c}\\", "\u{f}\u{11}", "d\u{1f}", "~'", "f\u{5}", "9n", "|\u{4}", "\u{2}*", "r@", "@/", "kc", "$\u{1}", "^\u{2}", ".\r", "'\n", "j6", "9#", "\ti", "75", "\u{c}d", "\u{12}\u{6}", ">\u{b}", "f7", "\u{6}\u{8}", "y7", "+p", "j!", "\u{19}x", "\u{1c}v", "\"(", "<5", "3?", "\u{1}\u{7f}", "ws", "@+", "\u{1}[", "i3", ",\u{2}", "\u{c}\"", "\u{1b}\u{16}", "}'", "\r|", "l\u{18}", "\u{8}\u{1d}", "$k", "\u{1}c", "\u{7}\u{11}", "[\u{1d}", "\u{16}p", "\u{1c}\u{1}", "4u", "(`", "n\r", "2l", "6\t", "v*", "?7", "\u{1d}?", "6\u{13}", "d*", "<|", "-\u{7f}", "\u{17}\u{17}", "\u{17}\0", "\u{3}n", "$\0", "4/", "hx", "<^", "\u{1e}b", "\u{6}_", "\u{12}=", "^~", "\u{b}\0", "~\u{3}", "4@", "\u{6}\u{b}", "~\u{10}", "$l", "y^", "\u{3}\u{12}", "n:", "\u{e}u", "a7", "gw", "$6", "};", "mf", ">\u{f}", ":<", "\u{5}\u{c}", "\u{3}$", "\u{1b}j", "9\u{18}", "\u{1a}\u{c}", "\\+", "*\u{11}", "\u{1a}\u{5}", "66", "/^", "/f", "l6", "'e", "_w", ">\u{7}", "9q", "\u{b}\u{1d}", "m[", "ej", "+l", "8*", "?w", "qg", "h\u{17}", "h\u{1a}", "\u{17}!", "\u{6}y", "f\u{12}", "\ny", "yw", "t<", "n\u{2}", "y\n", "\tl", "@\u{1d}", "#z", "7y", "je", ",q", "2v", ">n", "\u{3}\u{4}", "?!", "rk", "*e", "v\u{1c}", "zm", "\u{12}\u{1b}", "\u{5}p", "l\n", "gp", "y\u{13}", "-\u{15}", "|n", "$\u{7f}", "\u{5}4", "3=", "_^", "5:", "?]", "\n.", "\u{3}8", "\u{f}|", "{y", "?\u{1e}", "t\u{13}", "nr", "\u{1b}0", "\u{4}[", "\u{15}\u{7f}", "qv", "'<", "\u{b}`", "|\u{5}", "#\u{13}", "u+", ".\u{7f}", "\u{1f}~", "\u{2}&", "k+", "3@", "\u{3}p", "\u{11}m", "\u{4}2", "t2", "(s", "v(", "\u{5}t", "6\u{2}", "z\u{3}", "5\u{1f}", "=\u{16}", ".|", "v=", "\u{f}d", "\u{1e}z", "2\u{e}", "@\u{3}", "\u{b}'", "*6", "\u{10}\u{13}", "1\u{19}", "?3", "l\u{6}", "h!", "tv", "4=", "\"\r", "l\u{c}", "^%", "g\u{7f}", "\n\0", "h\u{15}", "\u{1a}{", "o\n", "\"|", "\r\u{1b}", "\u{c};", "/c", "tf", "um", "'6", "m ", "]d", "t\u{11}", "\u{14}`", "6[", "i\r", "^n", "\0:", "9\0", "`\u{4}", "\u{1c}6", "\u{10}\u{4}", "\\n", "(\u{11}", "$o", "\\g", "\u{1}(", "]\u{1b}", "0\u{1d}", "8\u{b}", "^)", "w\u{4}", "\u{15}r", "#q", "\u{17}s", "r\u{17}", "j}", ":\n", "\u{7}\0", "8-", ":f", "c\u{16}", "\u{8}$", "@&", "~v", "q\t", "\u{1e}\u{6}", "+\u{16}", "6w", "83", "3 ", "p=", "\tg", "1~", "\u{10}g", "\u{19}8", "4\u{1}", "y,", "y\u{14}", "\u{1c}2", "b.", "\u{1c}c", "3h", ">)", "\u{15}p", "+h", "f9", "|\u{12}", "%\u{b}", "\u{1a}\r", "_8", "/\u{7f}", "4\t", "\"\u{16}", "'\u{e}", "\u{b} ", "y\u{1}", "- ", "t\u{3}", "d\u{18}", "(\u{7}", ",s", "\u{1d}0", "\u{1f}\u{3}", "e,", "d\t", ".\u{1}", "f2", "\u{1}^", "c1", "r~", "[7", "(0", ",y", "\u{6}c", " )", "\u{1b}\u{13}", "\u{7}&", "\u{19}0", "2\u{5}", "\u{15}.", "\r\u{3}", "\u{12}a", "^4", "'+", "+,", "r\u{c}", ";\u{8}", "&!", "^x", "y`", "\u{7f}j", "\"^", "\u{12}`", "\0i", "\u{b}^", "k\u{3}", "\u{18}\u{16}", "\u{14}7", "\r&", "\u{c}1", "/b", "*.", "m\u{1}", "r\u{1f}", "56", "|2", "3;", "+w", "\0w", "n+", "~y", ":\u{8}", "\u{11}\0", "\"c", "#v", ":|", "^c", "\rf", "d-", "\u{1a}9", "-(", ";|", ".\u{f}", "\u{2}\u{10}", "(\u{10}", ")b", "(}", "\u{b}\u{e}", "qe", "~.", "\u{16}\u{14}", "\u{c}b", "[h", "\u{1e}v", "[q", "\u{6}5", "[\t", "fr", "\u{18}<", "\u{12}\u{4}", "p3", "60", "8\u{3}", ">\u{1a}", "l9", ".d", ")=", "6(", "8c", ";`", "\u{7f}#", "c&", "/\u{1}", "", "\u{15}#", "6\u{17}", "4\u{6}", "#\u{14}", "\u{e}8", "\u{7f}\u{19}", "\".", "r\u{3}", "}|", "\u{3}\u{f}", "8;", "<\u{17}", "~g", "\u{b}\u{7}", "(k", "\u{1}d", "ya", "^z", "n*", "5\u{4}", "\u{1e}\u{18}", "#5", "?`", "*~", "&9", "\u{12}\u{e}", "hw", "\u{16}#", "\u{3}\u{7f}", ",w", "\08", "\u{10}x", "?\u{c}", "\"}", "}<", "]]", "p\u{f}", ":&", "k\u{19}", "o\u{1d}", "\u{1d}\u{7f}", "[\u{1c}", "3\u{18}", "k\u{15}", "\r,", "\u{b}:", "o\u{7f}", ".o", "=c", "?/", "7@", "\u{12}\u{7}", "k\u{8}", "", "\r\u{1a}", "ao", "\u{6}>", "nu", "u(", "\r\u{b}", "\u{3}\u{18}", "m(", "hh", "`\u{3}", "^>", "\u{13}#", "4s", "'v", "\u{1}\t", "4x", "\u{19}%", "\u{12}u", "0#", "\u{3}0", "\u{16}f", "9\u{1b}", "\u{b}t", ";~", "{\r", "9}", "6n", "j\r", "!%", "\u{7}+", "*\u{14}", "9|", "\u{7f}\u{8}", "$p", "\u{10}\u{1}", "\u{3}'", "\u{1a}+", "\u{2};", "/\u{f}", "*h", "u!", "g\u{1a}", ">\u{1b}", "[r", "\u{1a}y", "f^", "=1", "\\t", "\r6", "z.", "4\u{2}", "`\u{17}", " \u{f}", "\u{c}h", "7?", "\u{1b}o", "h3", "\u{2}z", "\tt", "6\u{6}", ">\u{1}", "\u{1b}}", "sl", "\u{1b}\n", "zt", "\u{16}\u{1}", "w.", "qk", "4$", "n\u{b}", "z\u{1d}", "z)", "ka", "\u{7f};", "\u{3}\u{11}", "5\u{13}", "\u{11}/", "_h", "4\u{4}", "]h", "\u{f}s", "`\u{18}", "5n", "n\u{1b}", "~[", "\u{14}\u{e}", "\u{12}v", "|?", "\u{3}b", "oz", "k\"", "x~", "\u{1}\\", "/\u{18}", "[\u{e}", "*0", "\u{b}3", "a<", "(q", "\u{4}g", "\u{4}\u{10}", "4\u{7}", "p?", "\u{18}/", "39", "vh", "cm", "0\u{11}", "(\u{12}", "r.", "\u{f},", "'\u{11}", ".\u{12}", "\u{19}^", "5%", "\u{19}\r", "7.", "ff", "t,", "n.", "7f", "\0\u{15}", "!d", "x\u{12}", "a=", "#b", "ky", "\u{8}=", "\u{15}|", "p\\", "\u{e}$", "\u{1f}p", "l:", "\u{8}\"", "=\u{15}", "v\u{7}", "{r", "\u{5}>", "|1", "k\\", "r!", "\0!", "l\u{10}", "\n?", "(b", "\u{1b}m", "\0\\", "{m", "ga", "\u{1d}$", "8~", "\u{1b}\u{19}", "\u{13}=", "r?", "%\u{1d}", "\u{2}_", "kg", "tx", "d<", "~o", "_x", "\u{2})", "/8", "\u{16}b", "vp", "\u{13}-", "\u{16}q", "mq", "~?", "|\u{8}", ";}", "g\u{c}", "j/", "5o", "(\u{b}", "w\r", "w`", "\u{1c}$", "\u{18}(", "6\"", "\u{1f}:", "\t.", "\u{1a}a", "\u{1c}@", "\u{5}}", ";\u{19}", "[;", "pu", "tk", "\u{14}%", "j\u{14}", "3\u{15}", "w\u{14}", "a;", "3y", "\u{1b}3", "dl", "$8", "\u{7f}9", "\u{f})", "\u{13}]", "u\u{1f}", "^\u{b}", "27", "3%", "+a", "\u{14}v", "d\u{13}", "\u{1a}\u{2}", "\u{1f}\u{10}", "'o", "7i", "\\e", "\u{e};", "+~", "'?", "\u{6}`", "-\u{16}", "8+", "n\\", "\u{4}:", ",\u{1b}", "o\0", "*\t", "uk", "#\u{15}", "x/", "'\u{18}", "_\"", "l\u{e}", "\u{2}\t", "^s", "\u{12}{", "02", "<(", "_\u{6}", "'4", "ih", "'.", "\u{1f}`", "\0\u{14}", "gd", "j_", "7g", "2^", "\"\u{14}", "\n8", "hj", "\u{1}\"", "{9", "d\u{e}", "u\u{3}", "_d", "\u{7f}c", "\u{6}|", "*\u{1e}", "\u{1c}'", "s]", "/y", "\u{c}^", "*)", "[4", "\u{14}a", "\u{12}:", "&~", ":c", "\n{", "]>", "*3", "3c", "=+", "]y", "\u{2}\n", "-`", "\u{8}n", "{\u{7}", "\u{3}}", ")\u{1e}", "3\u{1a}", "<\u{19}", "]\u{14}", "\u{15}f", "}u", "\u{19}>", "\u{1d}\u{10}", "w\u{1f}", " \u{10}", "n\u{12}", "\\o", "j.", "|{", "z5", "t\t", "\u{1f}4", "+=", "\u{16}~", "#x", "\u{1f}\u{7}", "_z", "(l", ",2", "a[", "+_", ")\0", "i\u{19}", "\u{6}\u{15}", "~m", "/!", "fn", "\u{6}\u{14}", "\nx", "\u{e}\u{14}", "{ ", "a\u{2}", "\u{6}:", "\u{19}\u{b}", ":{", " \u{18}", "+\u{1f}", "\"\u{17}", "6o", "m^", "g=", "\u{1f}t", "_\u{1d}", "\n\u{e}", "!\u{1c}", "*m", "\"p", "\u{1a}e", "6p", "6\u{4}", "\u{18}`", "8|", "i<", "jb", "g\u{f}", "?\u{18}", "(\u{5}", "\u{6}\u{13}", "@1", "2:", "rx", "\u{7}:", "\u{1e}m", "{2", "n}", "wz", "$&", "k#", "\u{1}r", "c}", "$d", "a{", "\u{4}j", "\u{2}s", ":%", "\u{8}y", "\u{18}o", "\u{1b}\u{2}", "dz", "\u{6}r", "\u{f}r", "o\u{5}", "k\u{6}", "^`", "7;", "t\u{15}", "bo", "@\n", "1\u{1d}", "\00", "|q", "\u{1}x", ",>", "k]", "\t\u{18}", "[e", "'_", ":b", "jn", "\u{3}o", "7\u{1f}", "y\u{5}", "98", "?n", "*\u{1f}", "m>", "x\u{1b}", "$\u{12}", "e1", "y\u{1b}", "l\u{15}", "\u{1b}#", "\u{10}\u{16}", ".g", "qw", "?o", "/\u{1b}", "\u{7}\u{f}", "\u{18}\u{1c}", "37", "z?", "a\u{c}", "#s", "\u{18}:", "\u{14}\u{f}", "+\t", "\u{11}1", ",l", "+'", ">=", "n]", "sy", "7#", "?'", "l%", "?$", "\u{1} ", "o-", "\u{6} ", "^0", "m\u{15}", "\u{7}6", "@\u{12}", "\u{1f}!", "\r%", "\u{2}p", "\u{1d},", "g\u{8}", "1\u{6}", "\t_", "\t'", "l$", "@\u{5}", "\u{11})", "?#", "\u{1c}\u{1c}", "6\\", "5\u{12}", "6&", "\u{17}\\", " $", "\\\u{7f}", "q:", "h4", "i>", "0p", "n\u{19}", "(>", "b ", "5\u{e}", "\u{1e}\u{1c}", "\u{1d}j", " #", "\u{1c}i", "1t", "4f", "|[", "7`", "\u{f}2", "\u{7f}&", "wd", "\u{15}[", "p2", "\u{1a}\u{15}", "(i", "0\u{6}", "-\u{5}", "z\u{14}", "{p", "5l", "\u{1a}*", "\u{1d}u", "fk", "h\u{b}", "d\u{15}", "\u{19}u", "a\\", ":\u{f}", "b\u{b}", "j\u{1e}", "s@", "\u{1b}\u{17}", "\u{2}\u{1e}", "l.", "(6", "@=", "\u{1d}\u{19}", "}\u{1a}", "_\u{11}", "\u{b}v", "=y", "/<", "\u{1e}\u{c}", "bk", "[0", "7|", "%\u{11}", "\"\u{1}", "\u{1f}\"", "\u{15}&", "o0", "\u{18}z", "\u{1e}>", "-_", "`\u{c}", "~k", "x\u{5}", "\u{1c}q", "%$", "~e", "{3", "\0-", "\u{e}b", "\u{1}\u{1d}", "p]", "m\\", "&6", "~4", "2g", "\u{3}#", "\u{14}\u{5}", "=&", "4\u{11}", "\u{11}l", "s\"", "'@", "|-", "o\u{f}", "\u{3}\"", "wm", "i|", " x", "|3", "\01", "\u{18}#", "f.", "\u{1a}&", "+\u{3}", "\u{e}c", "\u{12}\u{14}", "p^", "z'", "*<", "b\u{1f}", "c\u{18}", "\u{6}\u{11}", "9\u{17}", " ^", "i\u{1b}", "vy", "\u{18}f", "n\u{f}", "kh", "0`", "]\u{16}", "{*", ",\u{1e}", "\u{18}{", "r<", "\u{1e}s", "\u{15}h", "zz", "\u{1b}>", "/\u{17}", "z\u{17}", "w\u{18}", "}\u{10}", "@u", "\u{e}j", "&\u{7}", "$ ", "tm", "\u{f}]", "w|", "\u{e}k", "q)", "\u{c}\u{1d}", ",\u{18}", "f\u{16}", "\u{8}f", "yg", "\u{12}\u{15}", "m\u{7f}", "yk", "\u{e}#", "-z", "s`", "h}", "\u{8}u", "=w", "\u{13}\u{3}", "o\u{15}", "0\u{b}", "lq", "v ", "\0m", "1\u{4}", "\u{b}y", ":*", "\u{14}c", ";\u{5}", "\u{14}\u{13}", "\u{1e}+", "c|", "\u{7f}<", "7<", " \u{1e}", "\n]", "0\u{14}", "+\u{15}", "\u{12}\u{12}", "\"x", "\u{1}3", "]a", "*u", "qu", "\u{10}\u{8}", "30", "w\u{17}", "?\u{11}", "t]", "49", "\u{11}8", "/u", "xy", "j`", "\u{14}z", ">\u{18}", "e{", "\u{1e}\u{1f}", "\u{14}6", "\u{1f}\u{17}", "\u{5}`", ".~", "\u{1c}\n", "\u{1a}.", "wv", "0e", "<\u{1}", "\u{f}3", ".6", "e\u{17}", "i\"", "\u{c}@", "\u{c}\u{8}", "&\u{4}", "ud", "\u{4}\u{1a}", "\u{18}*", "\u{1c}\u{7f}", "\t\u{5}", "2b", "\u{b}\u{19}", "\u{18}+", "\u{1}]", "'\u{10}", "u9", "$~", "u\u{11}", "^\u{3}", "|p", "\u{f}\u{10}", "0\n", "c(", ">\u{14}", "b&", "~\u{11}", "!k", "\u{7f}\t", "#c", "@2", "\u{2}[", "\u{14}(", "\u{17}3", "{e", "\\\u{13}", "7\u{6}", "\nc", "0o", "y6", "\u{1c}o", "\u{1d}5", "_.", "/7", "\u{2}l", "x0", ":\u{1d}", "#]", "`{", ".r", "0\u{18}", "\u{10}8", "\u{1a}0", "\u{7f}\u{12}", "?+", "o\t", "\u{1a}\u{17}", ".$", "-\u{18}", "p1", "\u{1f}w", "\r\u{4}", "ep", "v2", "<\t", "[n", "\u{1f}\\", "@\u{2}", "]\n", "f\u{2}", "\t\u{4}", "=a", "z9", "\u{2}\u{16}", "\u{11}g", "e`", "k@", "fm", "()", "d_", "m8", "+%", "r\u{5}", "4\u{8}", "p\u{6}", "\u{1}\u{15}", "\u{2}<", "1s", "j]", ";c", "\u{13}p", "mc", "@w", "\n\u{10}", "a\u{b}", "\u{10}o", "\u{5}m", "sh", "ev", "\u{3}i", "4b", "6z", "\u{8}\u{6}", "7/", ";\u{3}", "a~", "\07", "{d", "\u{4}8", "jg", "\nk", "-9", "`i", "=q", "g\u{b}", "\u{c}n", "a5", "\u{1d}\u{c}", "xk", "^#", "f@", "\n\u{1b}", "e=", "\u{15}\u{13}", "{l", "h\u{7}", "\u{f}\u{1f}", "$#", "\u{13}\u{1}", "w\u{e}", "@\u{11}", "\u{f}\u{14}", "\u{3}\u{7}", "zl", "\u{1e}u", ";y", "\u{7f}}", "jw", "`2", "\u{17}\u{8}", "jv", "[\u{b}", "\u{7}u", "\t)", "z~", "\u{6}u", "o;", "d\0", "8`", "\u{14}t", "v,", "\u{10}5", "_\u{18}", "\u{8};", "?\u{8}", "*_", "\u{f}}", "\u{1f}?", ".8", "!o", "\u{1a}\u{16}", "m@", "\u{8}t", "3d", "s\u{e}", "a3", "5f", "7a", "\u{2}1", "j\u{11}", "{f", "\\j", "\u{1a}j", "[p", "_}", "h\u{18}", "}w", ")\u{2}", "z`", "a]", "}a", "\u{17}m", "m)", ".p", "p/", "0|", "62", "r5", "1n", "[o", "%%", "\r\u{1e}", "\u{1e}\u{2}", "\u{18}b", "\u{4}\u{14}", "kb", "^\"", "=;", "$9", "\u{10}'", "-\u{2}", "@\u{4}", "b^", "8\u{18}", "\u{6}?", "c\u{12}", "\u{17}.", "f;", ".\u{5}", "\u{4}\u{5}", "pz", "r\u{e}", "(\u{13}", "}o", "v1", "f1", "\u{1b}s", "]}", "] ", "\u{1d}k", "5r", "\u{c}%", ">v", "\u{4}+", "`\u{10}", "e", "\u{7}?", "\u{3}9", "\u{19}\u{1d}", "|\u{14}", "3>", "\\\t", "\u{5}\u{17}", "+4", "5s", "26", "{!", "1!", "ba", ",;", ";\u{1b}", "q7", "@o", "\u{1f}e", "\u{15}\u{16}", "-u", "%\u{f}", "6u", "\u{12}\u{1f}", "0l", "{j", "d\r", "t\"", "y8", ">j", "*2", "}\u{13}", "2$", "i%", "5\0", "?\0", "\u{7}n", "wx", "s1", "\u{19}`", "\u{8}b", "m|", "/d", "\u{1b}7", "\u{e}(", "\u{12}\0", "\u{10}r", "\\\n", "z\u{4}", "\u{6}x", "\u{5}2", "~\u{19}", "i!", "\u{f}$", "\u{8} ", "}}", "3b", "]*", "%\t", "^_", "\u{16}\u{18}", "_f", "\u{17}(", "\tw", "ek", "c\u{13}", "[3", "%s", "\u{10}=", "\u{b}\u{14}", "c\u{4}", "\u{c}~", "g\u{5}", "a.", "3f", "j\u{2}", "\u{19}1", "\u{1b}\u{12}", "%t", "p#", "\03", "\u{7}\u{4}", "c/", ">,", "=\\", "m!", "p\u{3}", "\u{19}\u{1b}", "\u{16}3", "\u{1c}&", "k\u{1d}", "~w", "w~", "r#", "\u{11}!", "\u{19}\u{5}", "#l", ":\u{18}", "3\0", "\u{1c}t", "n\n", "3'", "4>", "g|", "+\u{1e}", "ae", "x\u{11}", "=e", "f`", "]\u{17}", "\u{2}\u{3}", "g\u{18}", "r\u{14}", "<\u{15}", "]\u{1a}", "i\u{14}", "1_", "\u{1d}7", "^;", "\u{c}\u{12}", "f\u{4}", "\n,", "+<", "u`", "p\u{c}", "\u{1d}&", "\u{15}$", "||", "\n@", "z*", "h:", "\u{1e}e", "\u{8}\u{18}", ".\u{6}", "\u{19}\u{10}", "\u{1f}v", "\u{16}@", "\u{8}o", "#\u{b}", "4`", "\0\u{5}", ":,", "\u{e}{", "(4", ";+", "nf", "^$", "\u{10}s", "\u{8}\u{8}", "\u{1}\u{1f}", "x\u{6}", "`\u{8}", "\u{19}v", "td", "n\0", "\u{2}\u{8}", "\u{19}\u{f}", "\u{11}{", "8k", "9\n", "*n", "\u{13}\u{14}", "4\"", "9h", "@\u{1}", "\u{16}*", "\u{e}\u{1a}", "\u{1b}\u{f}", "9>", "!c", "\u{b}\u{8}", "h\0", "%\r", "\u{f}\n", "%\u{1b}", "\u{16}<", "\u{6}{", "#|", "\u{8}k", ",4", "\u{11}\u{c}", "-5", "xw", "`'", "?h", "=@", "\u{10}+", "\u{7f}\u{15}", "b}", "\u{1}a", "g\n", "<\u{7f}", "h;", "]\u{2}", "\u{1a}w", "z^", "u7", "-\u{6}", "\u{15}\u{b}", "\u{12}l", "c\u{7f}", "[\u{7}", "\u{1})", "+y", "?@", "#_", "[/", "(8", "_\0", "7\u{8}", ">\u{2}", "1,", "\u{14}\u{14}", "\u{e}\u{7}", "\u{1d}3", "c\u{b}", "f\u{19}", "\u{1f}^", "7\u{2}", ",\"", "\u{16}]", "5c", "(z", ";;", "\u{e}\u{13}", "r\n", "\u{18}\u{2}", "c:", "=(", "\u{c}\t", "l5", "(\u{1a}", "\u{4}\u{11}", "=\u{1a}", "fz", "#3", "7b", "\u{b}_", "#/", ";\u{1c}", "^y", "\u{1d}w", "w>", "\u{14}>", "c\u{15}", "%!", "fd", "]\u{b}", "f(", "1]", "*a", "\t4", "}i", "!8", "\u{f}7", "r)", "\u{4}h", "\u{3}!", "\u{19}\u{3}", "pv", "cr", "3p", "@\u{b}", "n`", ")a", "\u{b}k", "\"\"", ".y", "\u{8}\u{17}", "<\\", "8\u{15}", ":\u{5}", "/.", "#{", "\u{3}s", "\u{13}\n", "7\u{c}", "_\u{f}", "\u{7f}\u{6}", "k\0", "6d", "\u{4}1", "\n\u{19}", "\td", "\u{13}^", "\u{6}$", "t!", "\0^", "cq", "[\u{5}", "\u{14}-", "7\u{f}", "\u{16}\r", "\nw", "-a", "?x", "y\u{1c}", "6\u{e}", ",,", "j\u{17}", "!l", "6\r", "\u{6}8", "\r ", "c%", "\u{1e}\u{16}", "*`", "\u{16}\0", "fq", "%@", "\u{18}|", ">g", "_4", "{0", "z{", "#(", "zi", "9\u{19}", ";]", "y|", "x\u{1f}", "40", "\n(", "q\u{4}", "|\u{1c}", "$y", "\u{f}\u{19}", "r\u{18}", "~\u{4}", "q'", "c-", "(o", "'x", "4y", "7~", "'\u{c}", "vl", "\u{7}9", "<2", "3&", "c ", ":+", "%1", "]\0", "72", "u\u{6}", "\u{13}\t", "qx", "eu", "-8", "{\u{1d}", "\np", "-p", "\u{12}\u{10}", ";1", "8\u{1a}", "w1", "d\u{14}", "\u{c}t", "k1", "1q", ">_", "l*", "=x", "\t|", "^]", "\\$", "\u{10}t", "\u{1f}\u{11}", "", "\u{1c}\u{12}", "m\u{1f}", "\r*", "\u{3}=", "\u{1d}o", "\u{12}\u{8}", "5\u{8}", "\u{2}=", "^\u{12}", "\u{1b}`", "~2", ":g", "\"\u{6}", "~<", "7\u{1a}", "\0b", "\u{e}6", "v\u{18}", "\t1", "6}", "xi", "zq", "0\u{17}", "r0", "v]", ",x", "$^", "|b", ")/", "5\u{1b}", "\u{1}\u{11}", "$<", "\u{2}6", "o\u{b}", "#2", "\u{12}\n", "\u{11}r", "\u{11}c", "\u{16}r", "\u{18}\\", "w\u{f}", "\u{11}4", "\u{15}w", "\u{19}c", "(x", "h,", "yp", "u\\", "j4", ";!", "\u{3}v", "|a", "\n|", "%c", "y\u{18}", "\u{19}r", "l\u{1e}", "(h", "i/", "]0", "\u{10}e", "\u{8}\u{f}", "iz", "{&", "&$", "\u{1f}(", "+7", "9\r", "^\u{6}", "\u{16}n", "\u{7}\u{1b}", "\u{18}u", "0)", "/\r", "h?", "4\u{1a}", "\u{1e}/", "d;", "\u{4}9", ",\t", ")?", "?_", "(n", "t6", "o9", "{\u{1e}", "&\u{8}", "\u{14}q", "1.", "\u{2}m", "\u{1e};", "\n\u{11}", "t*", "#^", "z-", "+\u{19}", "2`", "\u{14}e", "k`", "kx", "/m", "p&", ",_", " \u{2}", "?>", "\rc", "v8", "e'", "\u{8}#", "\u{18}'", "\u{10}6", "bm", "p[", "9$", "]~", "\u{11}@", "\u{e}w", "p>", "n=", "q,", "|i", "f\u{c}", "\u{1a}}", "\r\u{16}", "4\0", "z&", "{\u{17}", "]/", "|/", "q|", "\u{3}\u{1}", "&;", "!z", "^2", "f\u{1d}", "5@", ":\u{e}", "(3", "3/", "68", "\u{5}\u{f}", "\t;", "~(", "\u{10}m", "[\u{16}", "5j", "^r", "\u{18}6", "\u{3}\u{c}", "\u{12}^", "u2", "\u{13}\"", "{\u{b}", "yt", "\u{c}\n", "\"`", "\r0", ":a", "\\c", ".*", "+i", "h{", ";^", "2\u{3}", "\u{1c}-", "gg", "e.", "ob", "\u{3}c", "\u{17}d", "t\u{1e}", "5\u{7}", "+\u{2}", "\u{3}~", "&\u{5}", "\u{18}\t", "\u{6}\u{1a}", "\t\u{8}", "{/", "w[", "2y", "\u{7}!", "':", "l2", "z\u{f}", "]\u{1c}", "]!", "\u{12}\u{f}", "k(", "g7", "\t\"", ":]", "w)", "ok", "m%", "6>", "|*", "\tm", "2\u{1b}", ".4", "4%", ",{", "\u{c}l", " +", "'\u{f}", "c\u{1f}", "}\u{c}", "y\u{1e}", "s\u{6}", "f\u{1a}", "_+", "i$", "4\u{1d}", "w^", "\u{1d}6", "j~", "\u{15}\n", "\u{16}\u{3}", "??", "\u{1f}|", "y?", "h`", "\u{1d}c", "\u{6}\u{2}", "\u{2}\u{1f}", "a\u{4}", "\u{10}\u{11}", "\u{c}&", "<8", "\u{b}i", "\0\u{17}", "\u{13}\u{1f}", "\u{13}t", "\u{6}/", "\u{1a}\0", "3\u{e}", "\u{18}\u{1f}", "\u{15}y", "}\u{15}", "aq", ".2", "\u{5}\u{10}", "\u{1a}`", "\u{7}\n", "\u{18}\u{7f}", "\u{18}9", "_e", ",0", "\u{16}w", "2|", "6e", "\u{1b}p", "\u{10}q", "s\u{17}", "\n\u{4}", "\rt", "\u{1a}_", "wh", "a>", ":r", "\rp", "f)", "\u{1e})", "2", "\u{c}e", "9d", "2o", ":d", "d7", ">o", "\0~", "o\u{e}", ";h", "29", "qa", ".#", "u#", "\u{19}\u{1e}", "k\u{7}", "\u{7f}+", "@s", "d%", "\r!", "\u{2}a", "\u{1b}u", "\u{6}j", "+\u{1d}", "20", "c*", "g2", "@4", "\u{5}%", "`x", "\u{10}7", "2\u{6}", "\n*", "\u{16}g", "}\u{14}", "\u{6}1", "}l", "\u{17}\u{b}", "jz", "\"\u{19}", "\u{1d}\u{1d}", "3l", "m.", "\u{1f};", "\u{4}0", "]\u{7}", "\u{7}]", "\u{13}s", "r\u{1c}", "\u{7}|", "\u{1f}\u{4}", "x*", "\u{15}i", "\u{e}9", "yx", "ho", "\u{c}6", "8,", "3|", "5^", "]<", ">0", "\u{15}\u{12}", "d3", "m\u{19}", "5,", "!$", "_,", "w\u{11}", "[\u{13}", "}d", "n\u{10}", "\u{16}\"", "_<", "\u{1},", "\u{1b}9", ";z", "l{", "dw", "e-", "\t\u{19}", "y\u{11}", "\u{5}-", "}v", "6~", "\u{10}/", "^'", "\u{8}>", "1\u{1a}", "%,", "'\u{16}", "ly", "g9", "y\u{10}", "\u{18}[", "\n\u{6}", "\u{10}\r", "\u{1b}\u{8}", "\u{b}\u{1f}", "{\u{3}", "f*", " ~", "_\r", "\u{b}<", "3u", "\u{1}{", "4e", "\u{f}\u{15}", "\u{1f}'", "u ", "#@", "\t\u{17}", "1f", "_]", "\u{1b}\u{1d}", "y2", "\"d", "3\u{7}", "i\u{1c}", "o/", "\u{7f}_", "\u{16}>", "]^", "~b", "v\u{10}", "/+", "&y", "$\u{5}", "&a", "\u{16}2", "-%", "h*", "\"b", "`*", "\u{2}3", "yh", ".}", "\u{8}m", "x]", "b\\", "py", "qs", "@v", ".\u{7}", ":}", " ;", "\u{10}\u{b}", "3$", ",\u{e}", "\u{1f}\u{1b}", "^\u{1f}", ",\\", "\u{5}\u{4}", "\u{1}\u{4}", "?\u{1}", "y!", "ci", "s\u{15}", "\u{1e}<", "\u{15}u", "\"\u{2}", "4\u{b}", "74", "h@", "\\9", "~\u{14}", "\u{12}\u{16}", "w(", "=k", "*\u{3}", "\u{4}\n", "-\0", ">l", "\u{8}\u{b}", "xn", "\u{1f}0", "6r", ")y", "\u{e}h", "\u{2}\u{1c}", "\u{e} ", "< ", "_|", "df", "\u{e}\0", "s\u{2}", "l\u{b}", "(\u{e}", "9\u{f}", "n7", "\u{3}?", ".\u{14}", "\u{15}}", "\u{c}g", "6\n", "@:", "h^", "1\u{1b}", "/o", "<1", "4\u{1e}", "\u{15} ", "]f", "?i", "\u{f}+", "4)", "|'", "~\\", ";o", "*;", ".q", "=<", "\u{c}\u{18}", "\u{1a}=", "cg", "\u{10}c", "\u{f}\u{4}", "{\u{f}", "\u{1e}h", "\u{8}\u{10}", "#4", ",'", ":y", ".9", "\"q", "5<", "a@", "h_", "o3", "\tf", "`s", "2\u{4}", "\u{6}\r", "\u{1d}\u{1b}", "\u{6}w", "\u{1d}\u{b}", ",\u{4}", "\u{2}q", "y@", "\u{17}\u{1f}", ":u", "_\n", "#\u{1d}", "\u{18}5", "\u{e}\u{1}", "{i", "d0", "=g", "mb", "m0", "r\u{1b}", "\u{14}o", "-\u{b}", "s\u{13}", "\u{1c}!", "*g", "<`", "\u{4}m", "jd", "\u{17}?", "6_", "[\u{f}", "u[", "31", "\u{6}f", "\u{14}d", "kq", "=h", "\u{18}\u{15}", ".\u{1c}", "4^", "\\]", "/a", "gl", "_u", "4&", "]%", "=\u{11}", "8'", "0 ", "c4", "\n\u{5}", "f'", "\u{8}\u{14}", "\ri", "\u{8}{", "}{", "\u{13}\u{1e}", "\u{5}7", "\"s", "\u{f}c", "nk", "m/", "\u{7f}\u{1a}", "\u{13}v", "p\u{b}", "'^", "z\0", "p\u{1d}", "\u{c}\u{1a}", "c]", "\u{1f}$", "\u{7}\"", "x:", "\"r", "\u{1e}\u{1d}", "\u{1e}3", "\u{13}\u{15}", "\u{10}\u{7f}", "\0+", "-f", "\u{1a}k", "6=", "s\u{8}", "\u{5}n", ")e", "\u{13}l", "<\u{13}", "$\u{6}", "\u{3}\u{6}", "\u{6}m", "e}", "fb", "p$", "=7", "\u{2}'", "&|", "!i", "s?", "g<", "g6", "|\"", "(r", "\u{18}n", "=]", "\u{1b}\u{1a}", "xx", "/]", "\u{15}]", "85", "\\u", "@}", "\r8", "\u{15}-", "i\t", ")5", "z\\", ".\u{c}", "\u{6}\u{1f}", "|\u{e}", "c\u{f}", "g/", "\u{1f}}", "\u{c},", "\n`", "%\u{13}", "z+", "\"'", "\u{f}#", "&]", "/;", "\u{c}c", "%\u{3}", "ia", "\u{11}d", "o\u{1b}", "r4", "1i", ",r", "y\0", "|\u{1e}", "\u{2}\u{19}", "v\u{f}", "uo", "(\u{1e}", "2h", "5\u{b}", "c;", "/`", "\u{1b}]", "\u{1d}\t", "\u{18}\n", "\u{15}\u{e}", "\u{1e}x", "m2", ">|", "b7", "\u{14}\t", "\u{13}8", "\u{13}3", "n_", "\u{8}\u{1a}", "au", "\u{19}", "\u{5}\u{1b}", "[:", "_\u{7}", "t[", "o\u{19}", ")7", "x=", "\u{17}&", "0~", "6b", "\u{1a};", "\u{12} ", " z", "g0", ";r", "\\2", "qq", "\u{c}2", "\u{17}e", "kp", "*1", "a/", "}p", "8\\", "!\u{1e}", "\"\0", "+(", "[+", "^j", "\u{10}:", "\u{8}g", "h(", "\u{10}\n", "\u{7f}\u{1e}", "q\u{7f}", "(;", ";\u{6}", "g\u{19}", "h~", "\u{1}p", "\n9", "(\"", ">*", "q\u{3}", "|\u{1f}", "\u{17}5", "),", "2@", "\u{13}?", "\u{6}4", "\u{15}9", "h1", "&p", "+n", "8 ", "\u{1a}3", "!e", ">q", "\ta", "a*", "\u{18}h", "%\u{7}", "k\u{18}", "\u{16}4", ":l", "_m", "\u{1d}\u{7}", "s^", "@h", "u\0", "}\u{2}", "\u{5}w", "\u{1f}\u{f}", " \u{11}", "`$", "\u{b}@", "(\u{8}", "ki", "\u{e}\u{8}", "9\u{14}", "\u{14}^", "!;", "#6", "e]", "zw", "x\u{8}", "gk", "\u{12}t", "\tb", "\u{12}y", "m\u{10}", "\u{15}>", "<;", "n,", "\t$", "e\u{3}", "\u{c}\u{e}", "\u{f}\u{f}", "x)", "kv", "y1", "*(", "p{", "}x", "~;", "<\u{16}", "=8", "\u{f}.", ")'", "x`", "\u{14}\u{b}", "3r", "=\u{12}", "gq", "nn", "{\u{7f}", "\u{c}\0", "\u{7f}e", "t=", "t\u{18}", "%\u{7f}", "p:", "!*", "wp", "bg", "*l", "\t\u{1b}", "h\u{4}", "\u{11}\u{3}", "9\u{5}", "=t", "!t", "\u{8}.", "6\u{5}", "-n", "f\u{b}", "'\u{1d}", "_0", "~c", " \u{6}", "`a", "\u{4}n", "x\u{1a}", "c2", "q\u{e}", "\u{16}?", "\u{1c}\u{4}", "\u{1a}s", "w\u{b}", "!\u{10}", "\n\u{8}", "\u{16}z", "\u{f}\u{7f}", "@\u{13}", "\u{18}k", "\"-", "]\u{13}", "mr", "9i", "u\u{8}", "\u{12}%", "\u{4}&", "\u{12}4", "nj", "0(", "\u{1a}8", "\u{16})", "\r{", "\u{12}8", "\u{11}}", "9`", "\u{2}7", "\u{8}*", "\"\u{15}", "ds", "22", ".\u{15}", "$\u{10}", "&\u{14}", "-?", "\u{6}[", "\u{1}*", "{~", "gr", "\u{16}\u{1b}", "\n2", "\u{7}m", "vv", "j$", "\u{c}:", "\u{15}\"", "$$", "+>", "\u{13}_", "_6", ">>", "\u{7}\r", "b_", "\u{13}c", "t0", "\tz", "\u{3}\u{17}", "\u{1c}s", "d(", "kl", "\u{1d}#", "{\u{18}", "\u{8}\u{19}", "\u{13}\u{19}", "mj", "o\u{4}", "80", "_\u{5}", "-\t", "fj", "\u{1f}\u{15}", "\u{f}\u{1}", "<3", "\u{6}!", "\u{f}=", "\u{16}\u{12}", "&.", "~\u{b}", "_&", "\u{1f}s", "\u{13}!", "\u{e}]", "q4", "-\u{12}", "^(", ".f", "+\u{1b}", "\r\u{8}", "s\u{1b}", "vb", "[\n", "w&", "!+", "\u{c}w", "\u{10};", "~/", "\u{3}y", "!)", "\u{5}\u{16}", "\u{19}&", "b,", "} ", "|(", "\u{1}_", "e#", "'{", "\u{15}{", "i)", "\u{3}\u{1c}", "]o", "9{", "\u{10}j", "+-", "\u{13}\u{2}", "\u{1}>", "x\u{1c}", "9\u{12}", "qc", ">y", "bs", "&:", "\u{e}7", "s$", "\u{19}z", "/@", "$i", "}n", "s\u{14}", "\u{1f}i", "|%", "\u{b}9", "!:", "\u{8}h", "l7", "\u{13}\u{1a}", "\\\u{c}", "\u{15}e", "\u{18}\u{1a}", "\u{1d}x", "y0", "2x", "a:", "]#", "g)", "\u{8}2", "\u{1e}l", "]$", "\u{5}\u{12}", ")h", "\u{19}\u{1}", "g[", "\u{1c}0", "?|", "\r\\", "2\\", "\u{1f}%", "\u{1a}2", ")$", "9v", "x\u{3}", "\u{13}g", "\u{c}\u{7f}", ":\u{7f}", "/n", "x\u{7f}", "1\u{14}", "q\u{10}", "\u{7f}1", " @", ";$", "\u{19}\0", "#\u{18}", "\u{4}o", "\u{c}?", "g:", "-o", ",=", "'\u{1f}", "9]", "2{", "\05", "\u{14}y", "\r`", "]\u{1f}", "}\u{19}", "\u{1}y", "\u{7}\u{14}", "]\u{f}", "uj", "h\u{11}", "\n\u{f}", "\u{10}\u{f}", "h\u{16}", "\u{16}\u{6}", "\u{11}(", "5{", "cf", "7h", "~\u{1b}", "\u{e}\u{17}", "z%", "\r'", ",m", "\u{15}m", "\u{16}/", "{[", "\u{11}\u{7f}", "8\n", "yu", "%e", "1\u{10}", "\u{12},", "\u{10}a", "(\u{1b}", "l@", "\u{7f}4", "r\u{12}", "\u{1a}t", "(^", "<}", "\u{b}4", "[c", "16", "~u", "b\0", "\u{10}.", "#\u{4}", "+^", ":\u{1e}", "})", "}>", ".\\", "x%", "^v", "qn", ":'", "\u{b}+", "93", "5\u{15}", "\u{18}\u{10}", "[s", "\u{7f}!", "-[", "j\u{7}", "@0", "\u{11}\t", "l\u{1c}", "2~", "\r\u{5}", "&e", ";n", "\u{1e}a", "\u{4}\\", "y\"", "&\u{1f}", "\u{b}u", ";\u{1f}", "r(", "w\u{7}", "*x", ";7", "6\u{3}", "\u{5}1", "zp", ",`", "\u{1b}\u{1b}", "p\u{7f}", "\u{1a}1", "p@", "1\u{7f}", "a\u{1}", "\u{19}h", ">\u{16}", "=6", "\u{17}p", "\u{2}\u{b}", "\t8", "\u{8}\u{1c}", "\u{3}\u{b}", "=p", "-/", "g5", "\r\u{15}", "a\u{f}", "\u{1a}\u{6}", "__", "\u{19}p", "t?", "p\u{4}", "\u{14}\u{1}", "o8", " `", "\\:", "rg", "br", "#p", "6\u{1b}", "zf", "-)", "\u{8}r", "0k", "\u{2}\u{7}", "r\u{10}", "=o", "6$", "4{", "\u{1}:", "\"2", "l\u{1}", "t)", "t\u{1a}", "\u{18}l", " \u{8}", "\rb", "]8", "+d", "(m", "\u{c}p", "0\u{1}", "w*", "^ ", "\u{5}(", ">\u{12}", "ps", "r\u{8}", "?\u{16}", "r+", "\u{16}8", "s)", "o\u{2}", "t5", "rl", "\u{1e}2", "\u{1a}\u{7f}", "[\u{4}", "&\u{1e}", "\u{7f}\u{e}", "a|", "5\u{17}", "g\u{2}", "\u{5}i", "7\0", "{w", "%/", "{\"", "]@", "#m", "lt", " \u{4}", "\u{4}|", "9\\", "+/", "+z", "p*", "$?", "\u{1b}@", "p\u{10}", "|\u{1a}", "w]", "\u{15}*", "\u{1d}\u{1f}", "zv", "*r", "\na", "_\u{1b}", "v\n", "j{", "w\u{7f}", "\u{2}w", "\u{6}.", "y\r", "\u{19}$", "ml", ",f", "q2", "%k", "9o", "$/", "z\u{7f}", "~\u{2}", "\u{4}\u{7f}", "7x", "\u{15};", "._", "5[", "=\t", "&4", "q/", "*\u{7f}", "~d", "\u{e}x", "", "_v", "\"4", "?v", "\u{8}|", "\u{1e}5", "\u{1f}\u{1a}", "\u{1f}+", ";\u{15}", "xm", "<&", "h\u{2}", "\u{5}h", "\u{b}s", "4'", "\u{6}\u{4}", "@\u{7}", "\u{7f}\u{18}", "\u{18}}", "e/", "\u{1e}t", "\u{1}\0", "+;", "9m", "q5", "`u", "\u{12}j", "\u{10}&", "2\u{13}", "a4", "z[", "\u{1d}l", "'\0", "q\u{8}", "\"n", "\u{13}b", "r}", "9c", "`7", "0/", "j^", "\u{e}\u{1b}", "\u{1b}\u{e}", "1\u{5}", "_y", "mg", "[\"", "8v", "}&", "m{", "h\u{3}", "\"+", "*\u{1d}", "3\u{1e}", "}\u{1b}", "|\u{b}", ";0", "*f", ";l", "3\u{1f}", "\u{1d}\u{12}", "f\t", "\\=", "\u{c}f", "p'", "\0*", "gc", "k[", "7{", ":8", "\\<", "7\u{e}", "]3", "\u{2}f", ":(", ".>", "o\u{11}", "\u{1f}\u{1f}", "`#", "b?", "6?", "6/", "$*", "\u{5}g", "|\t", "\u{1e}'", "\u{1c}\u{16}", "\u{1c}?", "\u{17}`", "\u{c}}", "mn", "2\u{19}", ".b", "w ", "p.", "9&", "~]", ":\u{16}", "2\u{1}", "sn", "x6", "\\!", "\u{15}c", "6\u{15}", "/?", "6\u{1f}", "\"k", "\u{3}\u{19}", "w@", "z\u{8}", "hk", "\u{1d}\u{1a}", "\u{1}\u{1e}", "[&", "\u{4}\u{7}", "xq", "\u{8}-", "2\u{1e}", "\u{18};", "i\u{5}", "\u{10}0", "(\u{2}", "q\u{14}", "x\r", "'s", "_\u{1c}", "\tq", "\u{7f}g", "\u{16}i", "(%", "s+", "}r", "\u{1}\u{17}", "a&", "?\n", "\u{3}h", "^5", "\u{10}!", "-\"", "x$", "`z", "[>", ">5", "l\u{4}", "z(", "e\u{19}", "f3", "\u{3}r", "\u{1b}\u{1c}", "#%", "b[", "x7", "\u{7f}$", "jc", "7_", "\u{1}2", "(t", ":/", "bn", "zb", "\t\u{c}", ",+", "\u{6}*", "pd", "^\u{11}", "`d", "8\u{1b}", "\"u", "\tp", "( ", "]|", ";*", "n%", "w\t", ".\u{17}", "$[", "|e", "c\u{17}", "\u{1c},", "/\u{1d}", "\r\u{1f}", "\u{13}\u{5}", "v&", "{<", ";=", "<\"", "[\u{1f}", ",\u{1c}", "\u{1}b", "/\u{b}", "\u{1d}r", "\u{17}n", ">1", "\u{1e}.", "\u{17}'", "'\u{4}", " :", "<-", "z\u{5}", "\u{14}n", "\u{13}\u{10}", "_i", "\u{e}`", "\u{1b}(", "u<", ",\u{c}", "p\r", "\u{7}>", "\\\u{f}", "'d", "o\u{1c}", "0\u{3}", "\u{6}\u{10}", "|\u{11}", "\u{1a}\u{1e}", "\u{1e}}", " ?", " g", ":\u{1}", "\u{13}\u{11}", "&-", "\u{1e}\u{f}", "-c", "|4", "p-", "r\u{1a}", "\u{19};", "\u{1e}\u{5}", "\u{11}#", ",h", "bw", "u\u{13}", "\u{13}\u{6}", "\u{1e}\u{1a}", "&\u{b}", "^\u{7}", "7\u{3}", "\u{11}5", "\n/", "b<", "0]", "1\u{7}", "&\n", "(\u{6}", "\u{19}\u{e}", "j\u{f}", "`\u{1f}", "@{", ">%", "cb", "s\u{f}", "%)", "?&", "$j", "\t\u{11}", "i\u{b}", "&&", "0\t", "\u{10}h", "{a", "\u{1a}g", "w\u{8}", "7\u{1e}", "\u{6}k", "\u{1a}\u{1d}", "e6", "e0", "x ", ")\u{f}", "$\u{1d}", "\u{1a}\\", ".\u{13}", "}\0", "\u{14}l", "\"z", "\u{19}!", "sa", "'i", "5(", "\0d", "\n\u{12}", "x?", "~0", "7^", ";w", "6:", "%v", "d\u{1b}", "dr", "y]", "\u{f}1", "y&", "43", "ax", "]g", "g^", "\u{b}\u{1e}", "hl", "t&", "\nf", "~_", "*+", "z\u{1c}", "#'", "\u{14}\u{3}", "\n\u{3}", "m\u{1b}", "6.", "\u{15}\r", "\r\u{1}", "gu", "u@", "\u{19} ", "@a", "*\u{4}", "<4", "9u", "ix", ".m", "t\u{1c}", "t\\", "\u{14}\u{7}", ";x", "\u{2}\u{4}", "|\u{10}", "\"$", "\u{15}d", "*:", "8\u{1}", "\u{12}[", ":$", "\u{b}\u{b}", "e7", "\u{f}_", "e\u{11}", "\0#", "\0/", "xt", "t7", "6\u{1d}", "=-", "\u{7f}o", "7*", "\u{19}\u{8}", "[t", "6\u{18}", "l\"", "\u{1c}(", "<\u{e}", "@\u{f}", "l~", "\u{7}0", ")>", "e\u{6}", "fv", "\u{10}-", "2q", "\u{7f}x", "\u{1c}\u{3}", "1#", "[\u{1}", "g\u{4}", "\u{1d}n", "\u{b}[", "_\u{e}", "(v", "2+", "t^", ";4", "z\r", "\u{7}f", ".0", "\u{14}b", "f\u{18}", "1j", "\\\u{b}", "\u{19}j", "ib", ".\t", "^p", "}(", "kt", "f!", "\u{17}\u{16}", "*\u{13}", ">\u{11}", "8\"", "j|", "\u{15}s", "m\u{11}", "%\\", "\u{1b}d", "\0\r", "\u{f}\u{1b}", "\u{1f}c", "|\u{2}", "^i", "\u{1f}r", "\0v", "w3", "?:", "\nr", "{\u{1b}", "\"i", "e[", "\u{1a}~", "!\u{17}", "}\u{5}", "\u{7}\u{1a}", ".\u{1d}", ">9", "&'", "=l", "e\u{10}", ".,", "!\u{8}", "8%", "\u{1b}\"", "4j", "\u{12}w", "-\u{4}", "%p", ")(", "\u{7}-", "q\u{15}", "dx", "+\"", "lf", "0_", "\u{16}e", "\u{5}\u{11}", "'k", "\u{4}5", "/,", "w\u{13}", "\u{3}\u{13}", "\rh", "\u{1}7", ";f", "4\u{14}", "k\u{1b}", "bp", "54", "w-", "\u{f}!", "%o", "\u{5}v", "\u{1a}\u{11}", "#<", "(\u{17}", "=i", "8{", "\u{11}\"", "{\u{13}", "~\u{1e}", "3\u{10}", "<%", "o~", "\u{18}\u{f}", "j\u{13}", "\u{1f}9", "\u{3}{", "\u{4}f", "\02", "7\u{16}", "p7", ")\u{1d}", "9\u{1f}", "\"\u{7f}", "?)", "+*", "l\u{2}", "/\u{15}", "\rm", "k\u{1a}", "i\u{16}", "\u{1f}\u{b}", "!\0", "+\n", "1y", "jp", "'z", "j)", "\u{5}\r", "\u{17}\u{4}", "a'", "v:", "1:", "\u{2}\u{7f}", "w\u{16}", "\u{1}\u{19}", "\u{c}\u{19}", "7 ", "\u{6}0", "6\u{10}", ":\u{11}", "4m", "\u{1c}<", "\u{1a}$", ";\u{7}", "q\u{1a}", "\n)", "z:", "\\.", " \u{17}", "[z", "{-", "x\u{f}", "\u{2}>", "z/", "$w", "n/", "%u", "`!", "v_", "\u{14}k", "\u{17}[", "\u{3}%", "\u{6}=", "#i", "\u{4}w", "c\u{11}", "f5", "l<", "%y", "s!", "[2", "5k", "~p", "><", "\u{19}\u{18}", "\u{6}\u{6}", "\u{1d}h", "z_", "`b", "a\r", "5\t", ";\u{1d}", "s[", "\u{5}\"", "\u{3}/", "\n^", "\n\u{1d}", "#8", "'*", "s(", "\u{1}\u{16}", "j,", "8j", "\u{5}\u{1a}", "e\u{16}", "{\u{19}", "4w", "\u{1}u", "\u{10}<", "\u{1a}(", "\u{4}b", "lh", "-^", "\u{c}s", ",z", "\u{1e}\u{17}", "m\t", "q\u{12}", "6c", "\u{1}\u{3}", "]\u{3}", "z\t", "k?", "a6", "(*", "fs", ")0", "0^", "]r", "\u{1}%", "\u{1f}d", "\u{1a})", "lk", "0\u{13}", "\u{15}v", "\n\u{1c}", "])", "\t}", "i6", "c\u{1b}", "\u{7f}.", "\u{7f}\0", "\u{5}b", "\u{1a}<", "=\u{1}", "\u{12}*", "\u{c}o", "&\u{19}", "}]", "\u{11}\u{1c}", "[w", "=\0", "%(", ".k", "~l", "%|", "%\u{4}", "}^", "g8", "\u{1a}z", "hm", "y\u{4}", "$(", "x\0", "\u{1}\u{c}", "\u{1f}>", "e\u{8}", "\u{1d}g", "\u{14}\u{1b}", "\n\u{1}", "[1", "m\u{f}", "67", "\u{4};", "=\u{c}", "p4", "}~", ",$", "8\r", "\u{11}\u{1f}", "]\u{6}", "\\\u{14}", "(g", "e+", "\u{17}b", "\0\u{e}", "\u{14}]", "\u{11}0", "\u{1f}7", "l=", "\0&", "\0c", "5|", "{u", "\0g", "cx", "x8", "\u{14}p", "\u{12}e", "/\u{2}", "d.", "rj", "\tc", ":\u{7}", "\u{15}?", "\u{5}r", "\u{e}_", "8!", ",i", "\u{19}s", "y\u{1f}", ">\u{10}", "-\u{1e}", "#1", "&\u{e}", "\u{6}", "\u{6}(", "d\u{1e}", "5h", "}4", "\u{1b}\u{5}", "w5", "~\u{18}", "-s", "d&", "\u{1f}6", "d?", "\u{2}\u{6}", ";e", "q$", "-d", "m\u{e}", "9-", "\u{18}&", "9j", "\u{14}9", "\u{c}`", "\u{13}0", "v\u{11}", "'2", "8#", "\u{c}\u{1b}", "\u{18}\0", "\u{10}}", "`\u{7f}", "l1", "0.", "9@", "\u{1f}_", "\u{5}\u{1e}", "\tx", "\u{18}%", "=\u{1e}", "v5", "-$", "\u{1f}l", "\u{1}t", "\u{19}\u{7f}", "\u{1}h", "1@", "\0\u{1f}", "-j", "\u{7}y", "d[", "lz", "\u{c}\u{b}", "rf", "~!", "\u{7}l", "\rj", "9~", "7\u{4}", "\u{e}\u{e}", "ox", "pf", "\"&", "\u{b}&", "\u{f}a", "\u{15}\u{17}", "\u{1a}6", " 6", "w0", "]\u{10}", "{c", "8m", ";m", "b(", "o\u{7}", "k3", ":\u{15}", "\n\u{16}", "s*", "\u{17}i", "d'", "u\r", "/\u{1c}", "1d", "mw", "@l", "+s", ";\u{1}", "78", "*y", ";\u{10}", "}z", "'#", "?[", "'\u{1a}", "\u{17}l", "$7", "\u{19}f", "b@", "\u{12}m", "\u{3}\u{1a}", "\u{1d}q", "g\u{1d}", "?\u{f}", "!\r", "\u{1d}@", "\u{3}\\", ">x", "x\\", "$}", "\u{1b}l", "[!", "9\u{1}", "vj", "\u{8}6", "q\0", "%w", "|0", "\0.", "\u{12}i", "k\u{1e}", "i{", "\u{7f}\u{13}", "\u{15}\u{1d}", "\"\u{1c}", "'\u{13}", "`\u{14}", ":`"] diff --git a/crates/sparse-ngrams/images/unique_ngrams_vs_table_size.png b/crates/sparse-ngrams/images/unique_ngrams_vs_table_size.png deleted file mode 100644 index 3876e3b5..00000000 Binary files a/crates/sparse-ngrams/images/unique_ngrams_vs_table_size.png and /dev/null differ diff --git a/crates/sparse-ngrams/src/bigram_code.bin b/crates/sparse-ngrams/src/bigram_code.bin new file mode 100644 index 00000000..07338e40 Binary files /dev/null and b/crates/sparse-ngrams/src/bigram_code.bin differ diff --git a/crates/sparse-ngrams/src/bigrams.bin b/crates/sparse-ngrams/src/bigrams.bin deleted file mode 100644 index d011c90d..00000000 Binary files a/crates/sparse-ngrams/src/bigrams.bin and /dev/null differ diff --git a/crates/sparse-ngrams/src/deque.rs b/crates/sparse-ngrams/src/deque.rs deleted file mode 100644 index 3738ba01..00000000 --- a/crates/sparse-ngrams/src/deque.rs +++ /dev/null @@ -1,71 +0,0 @@ -//! Stack-allocated circular buffer (monotone deque). - -use std::mem::MaybeUninit; - -/// Deque element representing two neighboring bytes in the input. -#[derive(Debug, Clone, Copy)] -pub(crate) struct PosStateBytes { - /// Absolute index position between the two bigram characters. - /// I.e. 1 references the very first bigram. - pub index: u32, - pub value: u16, -} - -/// Stack-allocated circular buffer holding up to `CAP` elements. -/// Replaces `VecDeque` — avoids heap allocation and fits in a -/// single cache line for small CAP values. -pub(crate) struct FixedDeque { - data: [MaybeUninit; CAP], - start: u8, - len: u8, -} - -impl FixedDeque { - pub fn new() -> Self { - Self { - data: [MaybeUninit::uninit(); CAP], - start: 0, - len: 0, - } - } - - #[inline] - pub fn front(&self) -> Option<&PosStateBytes> { - if self.len == 0 { - None - } else { - Some(unsafe { self.data[self.start as usize].assume_init_ref() }) - } - } - - #[inline] - pub fn back(&self) -> Option<&PosStateBytes> { - if self.len == 0 { - None - } else { - let idx = (self.start + self.len - 1) as usize % CAP; - Some(unsafe { self.data[idx].assume_init_ref() }) - } - } - - #[inline] - pub fn pop_front(&mut self) { - debug_assert!(self.len > 0); - self.start = (self.start + 1) % CAP as u8; - self.len -= 1; - } - - #[inline] - pub fn pop_back(&mut self) { - debug_assert!(self.len > 0); - self.len -= 1; - } - - #[inline] - pub fn push_back(&mut self, val: PosStateBytes) { - debug_assert!((self.len as usize) < CAP); - let idx = (self.start + self.len) as usize % CAP; - self.data[idx] = MaybeUninit::new(val); - self.len += 1; - } -} diff --git a/crates/sparse-ngrams/src/extract.rs b/crates/sparse-ngrams/src/extract.rs index 3b55c208..d95de81a 100644 --- a/crates/sparse-ngrams/src/extract.rs +++ b/crates/sparse-ngrams/src/extract.rs @@ -1,12 +1,12 @@ //! Core sparse n-gram extraction algorithm. -use crate::deque::{FixedDeque, PosStateBytes}; -use crate::ngram::{NGram, POLY_HASH_PRIME, POLY_POWERS}; -use crate::table::get_bigram_table; +use crate::ngram::NGram; +use crate::table::{bigram_h, bigram_priority_rolling}; use crate::MAX_SPARSE_GRAM_SIZE; /// Returns the maximum number of sparse n-grams that can be produced from -/// `content_len` bytes of input. Use this to pre-allocate the output slice. +/// `content_len` bytes of input. Use this to reserve capacity for the output (e.g. a `Vec` the +/// emit closure pushes into, or a pre-sized slice it writes). #[inline] pub const fn max_sparse_grams(content_len: usize) -> usize { if content_len < 2 { @@ -16,152 +16,199 @@ pub const fn max_sparse_grams(content_len: usize) -> usize { } } +/// Builds the `len`-byte gram ending at the current position from the rolling `window` (newest byte +/// in the low byte). The gram is the `len` low bytes of `window`; shifting them into the +/// most-significant bytes gives the big-endian layout [`NGram::from_window`] consumes. +#[inline] +fn window_to_gram(window: u64, len: usize) -> NGram { + debug_assert!(len <= MAX_SPARSE_GRAM_SIZE); + NGram::from_window(window << ((MAX_SPARSE_GRAM_SIZE - len) * 8), len) +} + /// Collect all sparse n-grams from the input byte slice into a new [`Vec`]. +/// +/// Convenience wrapper over [`collect_sparse_grams_deque`]. For custom output — streaming into a +/// search index, deduplicating, or filtering without building an intermediate `Vec` — call +/// [`collect_sparse_grams_deque`] or [`collect_sparse_grams_scan`] directly with your own closure. pub fn collect_sparse_grams(content: &[u8]) -> Vec { - let mut buf = vec![NGram::from_rolling_hash(0, 0); max_sparse_grams(content.len())]; - let count = collect_sparse_grams_deque(content, &mut buf); - buf.truncate(count); - buf + // Reserve the exact worst case up front and have the emit closure write straight into the + // uninitialized spare capacity, then fix up the length once at the end. This avoids both the + // per-gram `push` bookkeeping (capacity check + length bump) and the `truncate`/default-fill of + // a pre-sized `vec![_; max]`. + let mut out = Vec::with_capacity(max_sparse_grams(content.len())); + let spare = out.spare_capacity_mut(); + let mut w = 0; + collect_sparse_grams_deque(content, |gram| { + spare[w].write(gram); + w += 1; + }); + // SAFETY: `collect_sparse_grams_deque` emits at most `max_sparse_grams(content.len())` grams — + // exactly the capacity reserved above — so every write above landed within `spare`, and the + // first `w` elements of the allocation are now initialized. + unsafe { out.set_len(w) }; + out } -/// Deque-based extraction. Writes n-grams into `out` (must have at least -/// [`max_sparse_grams`]`(content.len())` slots). Returns the count written. +/// Monotone-deque extraction, with the deque held in fixed ring buffers. Calls `emit` once for +/// every sparse n-gram, in emission order (all bigrams, plus algorithmically selected longer +/// grams). `emit` decides what to do with each gram — push it into a `Vec`, write it into a +/// pre-sized slice, feed it straight into an index, etc. — so no output buffer needs to be sized +/// or allocated up front. /// -/// # Panics +/// The boundary candidates form a monotone run, kept in fixed `[_; MAX_SPARSE_GRAM_SIZE]` ring +/// buffers addressed by a single running depth `tail` — there is no head. Rather than dropping the +/// oldest candidate up front, the walk-back simply stops at the first candidate too far back to +/// form a gram of at most `MAX_SPARSE_GRAM_SIZE` bytes; out-of-window candidates are never read and +/// get overwritten by later pushes (the live window spans fewer than `MAX_SPARSE_GRAM_SIZE` +/// candidates, so the ring never loses one it still needs). /// -/// Panics if `out` is too small. -pub fn collect_sparse_grams_deque(content: &[u8], out: &mut [NGram]) -> usize { +/// A rolling `u64` holds the last 8 bytes of `content` (newest byte in the low byte). A gram is at +/// most [`MAX_SPARSE_GRAM_SIZE`] bytes and always ends at the current index, so it is exactly the +/// `len` low bytes of the window; `window_to_gram` shifts those up to build it straight from +/// registers, without re-slicing `content`. +/// +/// ``` +/// use sparse_ngrams::{collect_sparse_grams_deque, NGram}; +/// +/// let mut count = 0; +/// collect_sparse_grams_deque(b"hello world", |_gram: NGram| count += 1); +/// assert!(count > 0); +/// ``` +pub fn collect_sparse_grams_deque(content: &[u8], mut emit: impl FnMut(NGram)) { let n = content.len(); if n < 2 { - return 0; + return; } - assert!(out.len() >= max_sparse_grams(n)); - let table = get_bigram_table(); - let mut queue = FixedDeque::::new(); - let mut prefix_hashes = [0u32; MAX_SPARSE_GRAM_SIZE]; - prefix_hashes[1] = content[0] as u32; - let mut w = 0usize; + const MASK: usize = MAX_SPARSE_GRAM_SIZE - 1; + // Sentinel index for empty ring slots. It is chosen so the "too-large gram" test in the + // walk-back (`idx - begin + 1 >= MAX_SPARSE_GRAM_SIZE`) fires for it at every `idx >= 1` — the + // subtraction wraps to `idx + MAX_SPARSE_GRAM_SIZE + 1` — so the walk terminates at the bottom + // of the stack purely from the stored values, with no separate emptiness check. + const EMPTY: u32 = 0u32.wrapping_sub(MAX_SPARSE_GRAM_SIZE as u32); + // Monotone deque of boundary candidates (position index + priority), strictly increasing in + // both, held in fixed ring buffers. Only `tail` (the running stack depth) is tracked; a + // candidate at depth `d` lives in slot `d & MASK`. The live window never spans + // `MAX_SPARSE_GRAM_SIZE` candidates, so overwriting slot `tail & MASK` only clobbers an + // out-of-window entry that the walk-back below never reaches. + let mut idx_buf = [EMPTY; MAX_SPARSE_GRAM_SIZE]; + let mut val_buf = [0u32; MAX_SPARSE_GRAM_SIZE]; + let mut tail = 0usize; + + // The rolling window starts with the first byte; each loop iteration shifts in `content[idx]`. + let mut window = content[0] as u64; + // `BIGRAM_H` of the most recent byte, carried between positions so consecutive bigrams (which + // overlap by one byte) only load one new H value each. Seeded with the first byte's H. + let mut h = bigram_h(content[0]); for idx in 1..n as u32 { - let mask = MAX_SPARSE_GRAM_SIZE - 1; - let end_hash = prefix_hashes[idx as usize & mask] - .wrapping_mul(POLY_HASH_PRIME) - .wrapping_add(content[idx as usize] as u32); - - // Bigram - let bigram_hash = end_hash - .wrapping_sub(prefix_hashes[(idx as usize - 1) & mask].wrapping_mul(POLY_POWERS[2])); - out[w] = NGram::from_rolling_hash(bigram_hash, 2); - w += 1; - - let v1 = table[content[idx as usize - 1] as usize * 256 + content[idx as usize] as usize]; - - if let Some(begin) = queue.front() { - if idx - begin.index + 1 >= MAX_SPARSE_GRAM_SIZE as u32 { - queue.pop_front(); + window = (window << 8) | content[idx as usize] as u64; + // The bigram for this position is the low two bytes of the rolling window. `h` is the H + // value of its first byte, carried over from the previous position; `h_b` feeds the next. + let (value, h_b) = bigram_priority_rolling((window >> 8) as u8, window as u8, h); + h = h_b; + + // The bigram (length 2) is always emitted. + emit(window_to_gram(window, 2)); + + // Walk back over the candidates from the tail, emitting one gram each. Stop at the first + // candidate too far back to form a gram of at most `MAX_SPARSE_GRAM_SIZE` bytes (this + // replaces the front-drop and, via the `EMPTY` sentinel, also terminates at the stack + // bottom), or one whose priority is < the current bigram's (it stays as the new left + // boundary). Equal-or-larger priorities are dropped, and the current position overwrites + // the first dropped slot. + let mut t = tail; + loop { + let slot = t.wrapping_sub(1) & MASK; + let begin = idx_buf[slot]; + if idx.wrapping_sub(begin) + 1 >= MAX_SPARSE_GRAM_SIZE as u32 { + break; } - } - while let Some(begin) = queue.back() { - let start = begin.index as usize - 1; - let len = (idx - begin.index + 2) as usize; - let hash = - end_hash.wrapping_sub(prefix_hashes[start & mask].wrapping_mul(POLY_POWERS[len])); - out[w] = NGram::from_rolling_hash(hash, len); - w += 1; - if begin.value == v1 { - queue.pop_back(); + emit(window_to_gram( + window, + (idx.wrapping_sub(begin) + 2) as usize, + )); + let bval = val_buf[slot]; + if bval < value { break; - } else if begin.value <= v1 { + } + t -= 1; + if bval == value { break; } - queue.pop_back(); } - queue.push_back(PosStateBytes { - index: idx, - value: v1, - }); - prefix_hashes[(idx as usize + 1) & mask] = end_hash; + + // Push the current position by overwriting the first dropped (or next free) slot. + idx_buf[t & MASK] = idx; + val_buf[t & MASK] = value; + tail = t + 1; } - w } -/// Queue-free scan-based extraction. Writes n-grams into `out` (must have at least -/// [`max_sparse_grams`]`(content.len())` slots). Returns the count written. -/// -/// Produces identical output (same order) as [`collect_sparse_grams_deque`]. -/// -/// # Panics +/// Queue-free scan-based extraction. Calls `emit` once for every sparse n-gram, in the same order +/// as [`collect_sparse_grams_deque`]. /// -/// Panics if `out` is too small. -pub fn collect_sparse_grams_scan(content: &[u8], out: &mut [NGram]) -> usize { +/// Produces identical output (same order) as [`collect_sparse_grams_deque`]: the boundary +/// candidates are exactly the positions where a backward scan hits a new suffix minimum, so a +/// fixed-size ring of recent priorities replaces the monotone deque. +pub fn collect_sparse_grams_scan(content: &[u8], mut emit: impl FnMut(NGram)) { let n = content.len(); if n < 2 { - return 0; + return; } - assert!(out.len() >= max_sparse_grams(n)); - let table = get_bigram_table(); const MASK: usize = MAX_SPARSE_GRAM_SIZE - 1; - let mut w = 0usize; - let mut prefix_hashes = [0u32; MAX_SPARSE_GRAM_SIZE]; - prefix_hashes[1] = content[0] as u32; - let mut priorities = [u16::MAX; MAX_SPARSE_GRAM_SIZE]; + let mut window = content[0] as u64; + let mut h = bigram_h(content[0]); + // Ring buffer of the most recent bigram priorities, indexed by `idx & MASK`. + let mut priorities = [0u32; MAX_SPARSE_GRAM_SIZE]; for idx in 1..n as u32 { - let end_hash = prefix_hashes[idx as usize & MASK] - .wrapping_mul(POLY_HASH_PRIME) - .wrapping_add(content[idx as usize] as u32); - // Bigram - let bigram_hash = end_hash - .wrapping_sub(prefix_hashes[(idx as usize - 1) & MASK].wrapping_mul(POLY_POWERS[2])); - out[w] = NGram::from_rolling_hash(bigram_hash, 2); - w += 1; - let v1 = table[content[idx as usize - 1] as usize * 256 + content[idx as usize] as usize]; + window = (window << 8) | content[idx as usize] as u64; + let (v1, h_b) = bigram_priority_rolling((window >> 8) as u8, window as u8, h); + h = h_b; priorities[idx as usize & MASK] = v1; - let mut running_min = u16::MAX; + + // The bigram (length 2) is always emitted. + emit(window_to_gram(window, 2)); + + // Scan backwards, tracking the minimum interior priority seen so far. Each new strict + // minimum is a boundary candidate; emit its gram while the right boundary `v1` is strictly + // below the interior minimum, then stop. + let mut running_min = u32::MAX; for d in 1..=(MAX_SPARSE_GRAM_SIZE as u32 - 2) { if d >= idx { break; } - let p = idx.wrapping_sub(d) as usize & MASK; - let v_p = priorities[p]; + let v_p = priorities[(idx - d) as usize & MASK]; if v_p < running_min { - running_min = v_p; - let start = p.wrapping_sub(1) & MASK; - let len = d as usize + 2; - let hash = - end_hash.wrapping_sub(prefix_hashes[start].wrapping_mul(POLY_POWERS[len])); - out[w] = NGram::from_rolling_hash(hash, len); - w += 1; - if v_p <= v1 { + if running_min <= v1 { break; } + let len = d as usize + 2; + emit(window_to_gram(window, len)); + running_min = v_p; } } - prefix_hashes[(idx as usize + 1) & MASK] = end_hash; } - w } #[cfg(test)] mod tests { use super::*; - use crate::table::get_bigram_table; + use crate::table::bigram_priority; use std::collections::HashSet; - fn collect_to_vec(content: &[u8], f: fn(&[u8], &mut [NGram]) -> usize) -> Vec { - let mut buf = vec![NGram::from_rolling_hash(0, 0); max_sparse_grams(content.len())]; - let count = f(content, &mut buf); - buf.truncate(count); - buf + fn collect_to_vec(run: impl FnOnce(&mut dyn FnMut(NGram))) -> Vec { + let mut out = Vec::new(); + run(&mut |gram| out.push(gram)); + out } /// Brute-force reference implementation. /// - /// Enumerates all substrings of length 2..=MAX_SPARSE_GRAM_SIZE and emits those - /// where every interior bigram priority is strictly greater than `max(left, right)` - /// boundary bigram priority. All bigrams (len=2) are always emitted. + /// Enumerates all substrings of length 2..=MAX_SPARSE_GRAM_SIZE and emits those where both the + /// left and right boundary bigram priorities are strictly less than every interior priority. + /// All bigrams (len=2) are always emitted. fn brute_force_sparse_grams(content: &[u8]) -> HashSet { - let table = get_bigram_table(); let n = content.len(); let mut result = HashSet::new(); if n < 2 { @@ -173,23 +220,21 @@ mod tests { } // Longer grams: length 3..=MAX_SPARSE_GRAM_SIZE. for len in 3..=MAX_SPARSE_GRAM_SIZE { - 'outer: for start in 0..=n.saturating_sub(len) { + for start in 0..=n.saturating_sub(len) { if start + len > n { break; } - let left = table[content[start] as usize * 256 + content[start + 1] as usize]; - let right = table - [content[start + len - 2] as usize * 256 + content[start + len - 1] as usize]; - let boundary = left.max(right); - // Inner bigrams: bytes [start+1,start+2], ..., [start+len-3,start+len-2] + let left = bigram_priority(content[start], content[start + 1]); + let right = bigram_priority(content[start + len - 2], content[start + len - 1]); + // Interior bigrams: (start+1,start+2), ..., (start+len-3,start+len-2). + let mut min_interior = u32::MAX; for k in 1..len - 2 { - let p = - table[content[start + k] as usize * 256 + content[start + k + 1] as usize]; - if p <= boundary { - continue 'outer; - } + let p = bigram_priority(content[start + k], content[start + k + 1]); + min_interior = min_interior.min(p); + } + if left < min_interior && right < min_interior { + result.insert(NGram::from_bytes(&content[start..start + len])); } - result.insert(NGram::from_bytes(&content[start..start + len])); } } result @@ -267,8 +312,8 @@ mod tests { fn test_scan_equivalence_small() { for input in [b"" as &[u8], b"x", b"ab", b"abc", b"abcdefgh", b"abcdefghi"] { assert_eq!( - collect_to_vec(input, collect_sparse_grams_deque), - collect_to_vec(input, collect_sparse_grams_scan), + collect_to_vec(|emit| collect_sparse_grams_deque(input, emit)), + collect_to_vec(|emit| collect_sparse_grams_scan(input, emit)), "mismatch on {:?}", std::str::from_utf8(input).unwrap_or("?") ); @@ -279,8 +324,8 @@ mod tests { fn test_scan_equivalence_hello_world() { let input = b"hello world"; assert_eq!( - collect_to_vec(input, collect_sparse_grams_deque), - collect_to_vec(input, collect_sparse_grams_scan), + collect_to_vec(|emit| collect_sparse_grams_deque(input, emit)), + collect_to_vec(|emit| collect_sparse_grams_scan(input, emit)), ); } @@ -288,17 +333,17 @@ mod tests { fn test_scan_equivalence_large() { let input: Vec = (0..1000).map(|i| (i % 256) as u8).collect(); assert_eq!( - collect_to_vec(&input, collect_sparse_grams_deque), - collect_to_vec(&input, collect_sparse_grams_scan), + collect_to_vec(|emit| collect_sparse_grams_deque(&input, emit)), + collect_to_vec(|emit| collect_sparse_grams_scan(&input, emit)), ); } #[test] fn test_scan_equivalence_source_code() { - let input = include_bytes!("lib.rs"); + let input = include_bytes!("extract.rs"); assert_eq!( - collect_to_vec(input, collect_sparse_grams_deque), - collect_to_vec(input, collect_sparse_grams_scan), + collect_to_vec(|emit| collect_sparse_grams_deque(input, emit)), + collect_to_vec(|emit| collect_sparse_grams_scan(input, emit)), ); } @@ -350,15 +395,40 @@ mod tests { assert_matches_brute_force(b"self.reset_states(the_quick_brown_fox_jumps"); } + #[test] + fn test_brute_force_tie_break() { + // Repeated bigrams create exact ties between an interior priority and a boundary; this + // exercises the both-strict `max(L, R) < interior` rule where deque, scan and brute force + // must agree (a gram whose right boundary only ties the smallest interior priority is + // dropped as redundant). + assert_matches_brute_force(b"ababababab"); + assert_matches_brute_force(b"the the the the"); + assert_matches_brute_force(b"a.b.a.b.a.b."); + } + #[test] fn test_brute_force_diverse() { let input: Vec = (0..200).map(|i| (i % 256) as u8).collect(); assert_matches_brute_force(&input); } + #[test] + fn test_brute_force_long_ascending() { + // Long ascending ASCII runs create monotone priority stretches that grow the deque's + // `tail` counter far beyond the ring size, exercising the `EMPTY` sentinel that lets the + // walk-back terminate at the stack bottom without a `t > 0` check. Also runs a scan/deque + // cross-check on the same input. + let input: Vec = (0..3000u32).map(|i| 33 + (i % 90) as u8).collect(); + assert_matches_brute_force(&input); + assert_eq!( + collect_to_vec(|emit| collect_sparse_grams_deque(&input, emit)), + collect_to_vec(|emit| collect_sparse_grams_scan(&input, emit)), + ); + } + #[test] fn test_brute_force_source_code() { - let input = include_bytes!("lib.rs"); + let input = include_bytes!("extract.rs"); assert_matches_brute_force(input); } } diff --git a/crates/sparse-ngrams/src/lib.rs b/crates/sparse-ngrams/src/lib.rs index aa45abcc..f6af7ef7 100644 --- a/crates/sparse-ngrams/src/lib.rs +++ b/crates/sparse-ngrams/src/lib.rs @@ -7,13 +7,23 @@ //! # How it works //! //! Each consecutive byte pair (bigram) is assigned a priority based on how frequently it occurs -//! in a large code corpus. A monotone deque tracks potential n-gram boundaries: an n-gram -//! boundary occurs wherever a bigram has lower priority than all bigrams between it and the -//! previous boundary. +//! in a large code corpus (see [`bigram_priority`]). A monotone deque tracks potential n-gram +//! boundaries: an n-gram boundary occurs wherever a bigram has lower priority than the bigrams +//! between it and the previous boundary. +//! +//! A substring of length 3..=[`MAX_SPARSE_GRAM_SIZE`] is emitted as a sparse n-gram when both its +//! left and right boundary bigrams have a priority strictly below every interior bigram. All +//! bigrams are always emitted. //! //! For a document of N bytes, this produces at most 3(N-1) n-grams: all bigrams plus algorithmically //! selected longer n-grams (up to [`MAX_SPARSE_GRAM_SIZE`] bytes). //! +//! # Normalization +//! +//! The bigram priority model only scores ASCII byte pairs; any byte with the high bit set resolves +//! to priority `0`. Callers building a case-insensitive index should normalize input first (fold +//! uppercase to lowercase, map multi-byte UTF-8 to high-bit-set bytes) before extraction. +//! //! # Example //! //! ``` @@ -28,17 +38,12 @@ //! } //! ``` -mod deque; mod extract; mod ngram; mod table; pub use ngram::NGram; - -/// Number of high-frequency bigrams used to build the priority table. -/// We reserve u16::MAX (65535), since some algorithms need a max value. -/// We also reserve 0 for all non-frequent bigrams. -pub const NUM_FREQUENT_BIGRAMS: usize = 65534; +pub use table::bigram_priority; /// Maximum length (in bytes) of a sparse n-gram. pub const MAX_SPARSE_GRAM_SIZE: usize = 8; diff --git a/crates/sparse-ngrams/src/ngram.rs b/crates/sparse-ngrams/src/ngram.rs index 4ff966b7..8dec4ff8 100644 --- a/crates/sparse-ngrams/src/ngram.rs +++ b/crates/sparse-ngrams/src/ngram.rs @@ -1,89 +1,221 @@ -//! Compact n-gram representation using a polynomial rolling hash. +//! Compact n-gram representation. //! -//! An [`NGram`] packs both a hash and the byte length into a single `u32`: -//! the upper 24 bits hold the rolling hash and the lower 8 bits hold the length. -//! This makes it suitable as a cheap, fixed-size key for hash maps and sets. +//! An [`NGram`] packs a substring's byte length and a payload into the low **27 bits** of a +//! `u32` (the top 5 bits are always zero): +//! +//! ```text +//! bit 31 27 24 0 +//! +-----------------+-----------+-----------+ +//! | 00000 (unused) | len - 2 | payload | +//! +-----------------+-----------+-----------+ +//! 5 bits 3 bits 24 bits +//! ``` +//! +//! * **Length** (`len - 2`, bits 24..27): substring byte-lengths range from 2 (bigrams) to +//! [`MAX_SPARSE_GRAM_SIZE`] (8), so biasing by 2 fits the 7 possible values into 3 bits. +//! * **Payload** (bits 0..24): for substrings of at most 3 bytes the bytes are packed +//! losslessly (left-aligned, so distinct short grams never collide); longer substrings are +//! hashed down to 24 bits with a multiplicative hash. +//! +//! Because the length lives in its own field, an `NGram` of one size never collides with an +//! `NGram` of another size. The packed value is finally run through a bijective [`mix27`] +//! permutation so the most-significant bits (which callers may use for bucketing or sorting) are +//! well distributed even though the packed value is highly structured. -use std::fmt; +use std::fmt::{self, Write as _}; use crate::MAX_SPARSE_GRAM_SIZE; -/// Prime for the polynomial rolling hash. -pub(crate) const POLY_HASH_PRIME: u32 = 2_654_435_761; - -/// Precomputed powers of [`POLY_HASH_PRIME`] for rolling-hash range queries. -/// `POLY_POWERS[i] = POLY_HASH_PRIME.pow(i)` (wrapping `u32`). -pub(crate) const POLY_POWERS: [u32; MAX_SPARSE_GRAM_SIZE + 1] = { - let mut p = [0u32; MAX_SPARSE_GRAM_SIZE + 1]; - p[0] = 1; - let mut i = 1; - while i < p.len() { - p[i] = (p[i - 1] as u64 * POLY_HASH_PRIME as u64) as u32; - i += 1; - } - p -}; +/// Odd multiplicative constant (the golden-ratio / Fibonacci hashing constant) used to hash grams +/// longer than 3 bytes down to the 24-bit payload. +const MULTIPLICATIVE_HASH: u64 = 0x9E37_79B9_7F4A_7C15; -/// A compact n-gram identifier: upper 24 bits are a polynomial rolling hash, -/// lower 8 bits are the byte length of the n-gram. +/// A compact n-gram identifier. See the module-level documentation for the bit layout. /// -/// Note: With could also store ngrams up to length 8 in an u64. However, this -/// would explode the number of ngram keys in a search dictionary. For that reason, -/// we compress ngrams into an u32 which puts a more reasonable upper bound on -/// the number of dictionary keys (~100 million). +/// Note: we could store n-grams up to length 8 verbatim in a `u64`. However, that would explode +/// the number of distinct keys in a search dictionary. For that reason we compress n-grams into a +/// `u32`, which puts a more reasonable upper bound on the number of dictionary keys. /// -/// Note: By storing the length explicitly in the lower 8 bits, we ensure that -/// only ngrams of the same length collide. This is important because there -/// are exponentially more long ngrams than short ngrams. At the same time, -/// longer ngrams occur less frequently. So, colliding long ngrams won't increase -/// the false positive rate too much. +/// Note: by storing the length explicitly, we ensure that only n-grams of the same length can +/// collide. This is important because there are exponentially more long n-grams than short ones. +/// At the same time, longer n-grams occur less frequently, so colliding long n-grams won't +/// increase the false-positive rate too much. /// /// # Construction /// -/// Use [`NGram::from_bytes`] for one-off hashing, or the rolling-hash helpers -/// inside the extraction loop for amortised O(1) computation per n-gram. -#[derive(Clone, Copy, PartialEq, Eq, Hash, PartialOrd, Ord)] +/// Use [`NGram::from_bytes`] for one-off hashing, or the rolling 8-byte window helper inside the +/// extraction loop for amortised O(1) computation per n-gram. +#[derive(Clone, Copy, PartialEq, Eq, Hash, PartialOrd, Ord, Default)] #[repr(transparent)] pub struct NGram(pub(crate) u32); impl NGram { + /// Smallest indexed gram length (bigrams); subtracted from the stored length so the biased + /// value fits in [`Self::LEN_BITS`] bits. + const LEN_BIAS: u32 = 2; + /// Number of bits used to encode the biased length. + const LEN_BITS: u32 = 3; + /// Mask selecting the biased-length field (once shifted down). + const LEN_MASK: u32 = (1 << Self::LEN_BITS) - 1; + /// Number of low bits used by the payload; the length sits just above it. + const PAYLOAD_BITS: u32 = 24; + /// Mask selecting the payload field. + const PAYLOAD_MASK: u32 = (1 << Self::PAYLOAD_BITS) - 1; + /// Total number of significant bits in the packed representation (the top 5 bits of the `u32` + /// are always zero). + pub(crate) const BITS: u32 = Self::PAYLOAD_BITS + Self::LEN_BITS; + /// Mask selecting the significant [`Self::BITS`] bits. + pub(crate) const MASK: u32 = (1 << Self::BITS) - 1; + /// Build an `NGram` by hashing the given byte slice from scratch. + /// + /// # Panics + /// + /// In debug builds, panics if `src.len()` is not in `2..=`[`MAX_SPARSE_GRAM_SIZE`]. pub fn from_bytes(src: &[u8]) -> Self { - let mut hash = 0u32; - for &byte in src { - hash = hash.wrapping_mul(POLY_HASH_PRIME).wrapping_add(byte as u32); - } - Self((hash << 8) | src.len() as u32) + debug_assert!( + (Self::LEN_BIAS as usize..=MAX_SPARSE_GRAM_SIZE).contains(&src.len()), + "ngram length {} out of range [{}, {}]", + src.len(), + Self::LEN_BIAS, + MAX_SPARSE_GRAM_SIZE, + ); + // 24-bit payload: short grams are packed losslessly, longer ones hashed. + let payload = if src.len() <= 3 { + // Pack the 2-3 bytes into the low 24 bits, most-significant byte first. + let mut p = 0u32; + for &byte in src { + p = (p << 8) | byte as u32; + } + p + } else { + // Grams here are 4..=MAX_SPARSE_GRAM_SIZE (8) bytes, so they fit in a single u64. A + // multiplicative hash is much cheaper than a per-byte loop, and the top bits of the + // product mix in every input byte. `from_le_bytes` keeps the result independent of + // host endianness, and the gram length lives in its own field so the payload hash + // needn't encode it. + let mut buf = [0u8; 8]; + buf[..src.len()].copy_from_slice(src); + let product = u64::from_le_bytes(buf).wrapping_mul(MULTIPLICATIVE_HASH); + (product >> (u64::BITS - Self::PAYLOAD_BITS)) as u32 + }; + Self::pack(src.len(), payload) } - /// Build an `NGram` from a precomputed rolling hash and a length. + /// Builds an `NGram` from a big-endian packing of its bytes: the `len` gram bytes occupy the + /// most-significant bytes of `value` (the first gram byte in the top byte) and the low + /// `8 - len` bytes are zero. This is the form the extraction loop's rolling 8-byte window + /// produces, so it can construct grams without re-reading them from a slice. It returns exactly + /// the same value as [`from_bytes`](Self::from_bytes) would for the same gram (see the + /// `from_window_matches_from_bytes` test), so the two paths stay interchangeable. #[inline] - pub(crate) fn from_rolling_hash(hash: u32, len: usize) -> Self { - Self((hash << 8) | len as u32) + pub(crate) fn from_window(value: u64, len: usize) -> Self { + debug_assert!( + (Self::LEN_BIAS as usize..=MAX_SPARSE_GRAM_SIZE).contains(&len), + "ngram length {len} out of range [{}, {}]", + Self::LEN_BIAS, + MAX_SPARSE_GRAM_SIZE, + ); + // 24-bit payload: short grams are packed losslessly, longer ones hashed. + let payload = if len <= 3 { + // The bytes sit in the top `len` bytes, most-significant byte first; shifting them down + // to the low bits reproduces `from_bytes`'s lossless packing. + (value >> (u64::BITS - len as u32 * 8)) as u32 + } else { + // `swap_bytes` turns the big-endian window into the little-endian byte order that + // `from_bytes` feeds to the multiplicative hash, so both paths agree bit-for-bit. + let product = value.swap_bytes().wrapping_mul(MULTIPLICATIVE_HASH); + (product >> (u64::BITS - Self::PAYLOAD_BITS)) as u32 + }; + Self::pack(len, payload) } - /// The byte length of the n-gram (stored in the lower 8 bits). + /// Packs a length and payload into the structured value, then stores it *mixed* (via [`mix27`]) + /// so the hot sorting/bucketing paths read a well-distributed value directly from the field; + /// [`len`](Self::len) and [`Debug`] unmix on demand. + #[inline] + fn pack(len: usize, payload: u32) -> Self { + let packed = ((len as u32 - Self::LEN_BIAS) << Self::PAYLOAD_BITS) | payload; + Self(mix27(packed)) + } + + /// The byte length of the n-gram. #[inline] pub fn len(&self) -> usize { - (self.0 & 0xff) as usize + // The length lives in the *packed* value; unmix the stored value first. + let packed = unmix27(self.0); + (((packed >> Self::PAYLOAD_BITS) & Self::LEN_MASK) + Self::LEN_BIAS) as usize } - /// Whether this represents an empty gram (should never happen in practice). + /// Whether this represents an empty gram. Valid n-grams are always at least 2 bytes long, so + /// this only holds for a default-constructed placeholder. #[inline] pub fn is_empty(&self) -> bool { self.len() == 0 } - /// The raw packed `u32` (hash ≪ 8 | len). + /// The raw packed `u32`. This is an opaque, well-distributed identifier suitable as a hash-map + /// or hash-set key. #[inline] pub fn as_u32(&self) -> u32 { self.0 } } +/// A bijective 27-bit mixing permutation. The packed gram value is highly structured — the length +/// sits in the top 3 bits and short grams carry raw ASCII bytes — which would make the +/// most-significant bits badly skewed. This xorshift-multiply finalizer, restricted to 27 bits, +/// spreads entropy across all bits while remaining a bijection on `[0, 2^27)` (each step is +/// invertible: xorshifts are triangular GF(2) maps, and multiplication by an odd constant is a +/// unit modulo `2^27`), so distinct grams stay distinct. +fn mix27(mut x: u32) -> u32 { + debug_assert!(x <= NGram::MASK, "mix27 input must be a 27-bit value"); + x ^= x >> 15; + x = x.wrapping_mul(0x2c1b_3c6d) & NGram::MASK; + x ^= x >> 12; + x = x.wrapping_mul(0x297a_2d39) & NGram::MASK; + x ^= x >> 15; + x +} + +/// Inverse of [`mix27`]: recovers the packed (length + payload) value from the stored value. Each +/// step undoes the corresponding `mix27` step in reverse: the `>> 15` xorshifts are self-inverse +/// (since `2 * 15 >= 27`), the `>> 12` xorshift is undone by the doubling `>> 12` then `>> 24`, and +/// the multiplies by the modular inverses of their constants (mod `2^27`). +fn unmix27(mut x: u32) -> u32 { + debug_assert!(x <= NGram::MASK, "unmix27 input must be a 27-bit value"); + x ^= x >> 15; + x = x.wrapping_mul(0x4f0_b109) & NGram::MASK; // inverse of 0x297a_2d39 mod 2^27 + x ^= x >> 12; + x ^= x >> 24; + x = x.wrapping_mul(0x4ea_2d65) & NGram::MASK; // inverse of 0x2c1b_3c6d mod 2^27 + x ^= x >> 15; + x +} + +/// The encoded `u32` representation is not human readable. This formatter improves the situation +/// at least for short ascii grams. impl fmt::Debug for NGram { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - write!(f, "NGram({:#x}, len={})", self.0 >> 8, self.len()) + let packed = unmix27(self.0); + let len = (((packed >> Self::PAYLOAD_BITS) & Self::LEN_MASK) + Self::LEN_BIAS) as usize; + let mut s = String::new(); + if len <= 3 { + // The `len` payload bytes sit right-aligned in the low bits of the packed value, + // most-significant byte first (see `from_bytes`). + let payload = packed & Self::PAYLOAD_MASK; + let bytes = [(payload >> 16) as u8, (payload >> 8) as u8, payload as u8]; + for &byte in &bytes[3 - len..3] { + if byte.is_ascii_graphic() || byte == b' ' { + s.push(byte as char); + } else { + write!(s, "\\x{byte:02x}")?; + } + } + } else { + write!(s, "{:#08x}", packed & Self::PAYLOAD_MASK)?; + } + write!(f, "NGram('{s}', len={len})") } } @@ -91,50 +223,87 @@ impl fmt::Debug for NGram { mod tests { use super::*; + #[test] + fn mix27_is_invertible() { + // `mix27` must be a bijection on the 27-bit space so distinct grams never collide; sample + // the space plus boundaries and check the round-trip. + for x in (0..=NGram::MASK).step_by(97) { + assert_eq!(unmix27(mix27(x)), x, "round-trip failed for {x:#x}"); + } + for x in [0, 1, 2, NGram::MASK - 1, NGram::MASK] { + assert_eq!(unmix27(mix27(x)), x, "round-trip failed for {x:#x}"); + } + } + #[test] fn test_from_bytes_roundtrip() { - let ngram = NGram::from_bytes(b"hello"); - assert_eq!(ngram.len(), 5); + for len in 2..=MAX_SPARSE_GRAM_SIZE { + let bytes = vec![b'a'; len]; + assert_eq!( + NGram::from_bytes(&bytes).len(), + len, + "len mismatch for {len}" + ); + } } #[test] fn test_equal_content_equal_ngram() { assert_eq!(NGram::from_bytes(b"abc"), NGram::from_bytes(b"abc")); + assert_eq!(NGram::from_bytes(b"abcdef"), NGram::from_bytes(b"abcdef")); } #[test] - fn test_different_content_likely_different() { - assert_ne!(NGram::from_bytes(b"abc"), NGram::from_bytes(b"abd")); + fn test_short_grams_are_lossless() { + // Distinct grams of length <= 3 are packed losslessly, so they must never collide. + use std::collections::HashSet; + let mut seen = HashSet::new(); + for a in 0u8..64 { + for b in 0u8..64 { + assert!(seen.insert(NGram::from_bytes(&[a, b])), "bigram collision"); + for c in 0u8..8 { + assert!( + seen.insert(NGram::from_bytes(&[a, b, c])), + "trigram collision" + ); + } + } + } } #[test] - fn test_same_hash_different_length() { - // Even if hashes collide, different lengths produce different NGrams. + fn test_same_content_different_length() { + // Even if payloads were to collide, different lengths produce different NGrams. let a = NGram::from_bytes(b"ab"); let b = NGram::from_bytes(b"abc"); assert_ne!(a, b); + assert_ne!(a.len(), b.len()); } #[test] - fn test_rolling_hash_matches_from_bytes() { - let content = b"hello world"; - // Build prefix hashes the same way the extraction loop does. - let mut prefix_hashes = [0u32; MAX_SPARSE_GRAM_SIZE]; - if !content.is_empty() { - prefix_hashes[1] = content[0] as u32; - } - for idx in 1..content.len() { - let end_hash = prefix_hashes[idx & (MAX_SPARSE_GRAM_SIZE - 1)] - .wrapping_mul(POLY_HASH_PRIME) - .wrapping_add(content[idx] as u32); - // Check the bigram content[idx-1..idx+1] - let rolling_hash = end_hash.wrapping_sub( - prefix_hashes[(idx - 1) & (MAX_SPARSE_GRAM_SIZE - 1)].wrapping_mul(POLY_POWERS[2]), + fn from_window_matches_from_bytes() { + // The extraction loop builds grams from a big-endian rolling window via `from_window`; it + // must produce the identical value to `from_bytes`. Check every indexable length with + // distinct bytes. + for len in (NGram::LEN_BIAS as usize)..=MAX_SPARSE_GRAM_SIZE { + let bytes: Vec = (0..len as u8).map(|i| b'a' + i).collect(); + let mut buf = [0u8; 8]; + buf[..len].copy_from_slice(&bytes); + // Gram bytes left-aligned in the most-significant bytes, low bytes zero. + let window = u64::from_be_bytes(buf); + assert_eq!( + NGram::from_window(window, len), + NGram::from_bytes(&bytes), + "mismatch for {len}-byte gram", ); - let rolling = NGram::from_rolling_hash(rolling_hash, 2); - let direct = NGram::from_bytes(&content[idx - 1..idx + 1]); - assert_eq!(rolling, direct, "mismatch at idx={idx}"); - prefix_hashes[(idx + 1) & (MAX_SPARSE_GRAM_SIZE - 1)] = end_hash; } } + + #[test] + fn test_default_is_not_empty() { + // Valid n-grams are always at least 2 bytes, so nothing (not even the default placeholder) + // is ever "empty". + assert!(!NGram::default().is_empty()); + assert_eq!(NGram::default().len(), 2); + } } diff --git a/crates/sparse-ngrams/src/table.rs b/crates/sparse-ngrams/src/table.rs index 96c77f61..59cb2554 100644 --- a/crates/sparse-ngrams/src/table.rs +++ b/crates/sparse-ngrams/src/table.rs @@ -1,41 +1,115 @@ -//! Bigram priority table. +//! Bigram priority model. //! //! Assigns a frequency-based priority to each byte pair, used by the sparse n-gram //! extraction algorithm to decide where n-gram boundaries fall. +//! +//! Priorities used to be a full 256×256 `u16` table baked from a `bigrams.bin` frequency +//! ranking (~64kB in memory). They are now reconstructed from a compact *factored* model +//! (~8.5kB) trained offline against a bigram frequency ranking. The ascii bigram `(a, b)` is +//! scored as +//! `BIGRAM_H[a] + BIGRAM_H[b] + (code << BIGRAM_CODE_SHIFT) + 1`, where [`BIGRAM_H`] is a single +//! shared per-byte weight and `code` is a 4-bit (`0..=15`) per-bigram correction. Bigrams absent +//! from the training data carry `code == 0` and are not special-cased: they fall back to the bare +//! factored score, i.e. the model extrapolates a priority for them. The byte index `idx` is folded +//! into the low 16 bits so every bigram gets a *unique* priority, while a higher score still means +//! a more frequent bigram (~1.4% inversions vs. the reference ranking). + +/// A casefolded indexable byte uses 7 bits for ascii characters; any non-ascii (unicode) +/// character is expected to have its high bit set. Only ascii bigrams are ever present, so +/// non-ascii characters always resolve to priority `0`. The model therefore only covers the 128 +/// ascii values per character. +const BIGRAM_ALPHABET: usize = 128; + +/// The per-bigram 4-bit correction code is scaled by `1 << BIGRAM_CODE_SHIFT` and added to the +/// shared per-byte weights. A plain shift replaces what used to be a lookup into a learned +/// 16-entry offset table, at a negligible accuracy cost. +const BIGRAM_CODE_SHIFT: u32 = 10; + +/// 4-bit correction code per ascii bigram, packed two codes per byte (the even index in the low +/// nibble). Scaled by `1 << BIGRAM_CODE_SHIFT` and added to the shared per-byte weights. +static BIGRAM_CODE: &[u8; BIGRAM_ALPHABET * BIGRAM_ALPHABET / 2] = + include_bytes!("bigram_code.bin"); + +/// Shared per-byte weight. `BIGRAM_H[b]` contributes to the priority of every bigram containing +/// byte `b`; `7272` is the filler weight for bytes absent from the training data. +static BIGRAM_H: [u16; BIGRAM_ALPHABET] = [ + 1712, 811, 1084, 886, 596, 91, 132, 450, 724, 8461, 16403, 286, 1348, 6151, 140, 343, 333, 64, + 162, 45, 103, 178, 27, 5, 35, 0, 161, 2323, 70, 125, 44, 101, 13403, 8259, 11824, 8316, 8468, + 8305, 8173, 10620, 10671, 9834, 9082, 8674, 9982, 10753, 11148, 10895, 10788, 10958, 10844, + 10474, 10331, 10220, 10066, 9935, 10004, 9859, 10243, 9293, 9469, 9631, 9908, 8272, 8073, 7272, + 7272, 7272, 7272, 7272, 7272, 7272, 7272, 7272, 7272, 7272, 7272, 7272, 7272, 7272, 7272, 7272, + 7272, 7272, 7272, 7272, 7272, 7272, 7272, 7272, 7272, 9286, 8956, 8593, 6514, 9968, 8679, + 11923, 11057, 11570, 11787, 12294, 11116, 10949, 10849, 11401, 9455, 10261, 11463, 11238, + 11595, 11281, 11422, 9364, 11668, 12007, 11945, 10678, 10380, 10412, 10197, 10534, 9280, 8890, + 7898, 8767, 6372, 1475, +]; + +/// Reconstructs the priority of the ascii bigram `(a, b)`; see [`bigram_priority`]. This rolling +/// variant avoids re-loading `BIGRAM_H[a]`: consecutive bigrams overlap by one byte, so the caller +/// passes the `h_b` returned for the previous position as `h_a` and gets `BIGRAM_H[b]` back for the +/// next one. The `H` value is only used for ascii bytes; for a non-ascii byte the bigram is absent, +/// so the masked lookup (`b & 0x7f`) merely returns a value that the next step discards. +#[inline] +pub(crate) fn bigram_priority_rolling(a: u8, b: u8, h_a: u32) -> (u32, u32) { + let h_b = BIGRAM_H[(b & (BIGRAM_ALPHABET as u8 - 1)) as usize] as u32; + if (a | b) >= BIGRAM_ALPHABET as u8 { + return (0, h_b); + } + let idx = a as usize * BIGRAM_ALPHABET + b as usize; + let code = (BIGRAM_CODE[idx >> 1] >> ((idx & 1) * 4)) & 0xF; + // The 4-bit `code` is scaled by `1 << BIGRAM_CODE_SHIFT` (a plain shift in place of an offset + // table) and added to the shared per-byte weights. Absent bigrams carry `code == 0`, so they + // fall back to the bare factored score `h_a + h_b + 1`. A higher score still means a more + // frequent bigram; `base` fits in 16 bits, so the unique per-bigram `idx` in the low 16 bits + // keeps every priority unique. + let base = h_a + h_b + ((code as u32) << BIGRAM_CODE_SHIFT) + 1; + ((base << 16) | idx as u32, h_b) +} + +/// The `BIGRAM_H` weight of a single byte, used to seed [`bigram_priority_rolling`]. +#[inline] +pub(crate) fn bigram_h(a: u8) -> u32 { + BIGRAM_H[(a & (BIGRAM_ALPHABET as u8 - 1)) as usize] as u32 +} + +/// Reconstructs the frequency-ranking priority of the ascii bigram `(a, b)`. Absent or non-ascii +/// bigrams resolve to `0`; present bigrams get a strictly positive, unique priority where a higher +/// value means a more frequent bigram. This priority is used to split strings into smaller +/// n-grams. +pub fn bigram_priority(a: u8, b: u8) -> u32 { + bigram_priority_rolling(a, b, bigram_h(a)).0 +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn non_ascii_is_zero() { + assert_eq!(bigram_priority(0x80, b'a'), 0); + assert_eq!(bigram_priority(b'a', 0x80), 0); + assert_eq!(bigram_priority(0xff, 0xff), 0); + } + + #[test] + fn ascii_bigrams_are_positive_and_unique() { + // Distinct ascii bigrams get distinct, strictly positive priorities (the `idx` in the low + // 16 bits guarantees uniqueness). + assert!(bigram_priority(b'a', b'b') > 0); + assert_ne!(bigram_priority(b'a', b'b'), bigram_priority(b'b', b'a')); + assert_ne!(bigram_priority(b'a', b'b'), bigram_priority(b'a', b'c')); + } -use std::sync::OnceLock; - -use crate::NUM_FREQUENT_BIGRAMS; - -/// The bigrams in this string are sorted by how frequently they occur in code (descending). -/// Bigrams are separated by null bytes. -/// Currently contains only the top 5845 bigrams (ascii, case-insensitive). -static BIGRAMS_STR: &str = include_str!("bigrams.bin"); - -/// Flat 256×256 lookup table indexed by `a as usize * 256 + b`. -/// Entries default to 0 for bigrams not in the frequency table. -static BIGRAM_TABLE: OnceLock> = OnceLock::new(); - -/// Returns the bigram priority table. The first call initializes it (thread-safe). -pub(crate) fn get_bigram_table() -> &'static [u16; 256 * 256] { - BIGRAM_TABLE.get_or_init(|| { - let mut table = Box::new([0u16; 256 * 256]); - for (idx, s) in BIGRAMS_STR - .split('\0') - .take(NUM_FREQUENT_BIGRAMS) - .enumerate() - { - let mut chars = s.chars(); - let Some((a, b)) = chars.next().zip(chars.next()) else { - continue; - }; - let a = a as u8; - let b = b as u8; - assert_eq!(table[a as usize * 256 + b as usize], 0); - // Higher-frequency bigrams get HIGHER values so they are more often - // encompassed by longer grams. - table[a as usize * 256 + b as usize] = (NUM_FREQUENT_BIGRAMS - idx) as u16; + #[test] + fn rolling_matches_direct() { + // The rolling variant must reproduce the standalone `bigram_priority` for every ascii pair, + // and hand back `BIGRAM_H[b]` for the next step. + for a in 0u8..128 { + for b in 0u8..128 { + let (p, h_b) = bigram_priority_rolling(a, b, bigram_h(a)); + assert_eq!(p, bigram_priority(a, b), "mismatch at ({a}, {b})"); + assert_eq!(h_b, bigram_h(b), "h_b mismatch at ({a}, {b})"); + } } - table - }) + } }