From 33c0e8efec783d3f3d504cd0619ab4ac234ce4d6 Mon Sep 17 00:00:00 2001 From: Manuel Holtgrewe Date: Mon, 23 Oct 2023 20:45:45 +0200 Subject: [PATCH] feat: adding async I/O, espec. for SV caller guessing (#230) --- Cargo.lock | 411 ++- Cargo.toml | 11 +- build.rs | 1 + src/annotate/seqvars/csq.rs | 8 +- src/annotate/strucvars/mod.rs | 129 +- src/common/io/mod.rs | 4 + ...test__open_read_maybe_gz@14kb.txt.bgz.snap | 3005 +++++++++++++++++ ..._test__open_read_maybe_gz@14kb.txt.gz.snap | 3005 +++++++++++++++++ ...td__test__open_read_maybe_gz@14kb.txt.snap | 3005 +++++++++++++++++ ...t__open_write_maybe_bgzf@14kb.txt.bgz.snap | 872 +++++ ...st__open_write_maybe_bgzf@14kb.txt.gz.snap | 410 +++ ..._test__open_write_maybe_bgzf@14kb.txt.snap | 872 +++++ ..._std__test__open_write_maybe_gz@false.snap | 5 + ...__std__test__open_write_maybe_gz@true.snap | 5 + ...ri__common__io__std__test__read_lines.snap | 8 + ...test__open_read_maybe_gz@14kb.txt.bgz.snap | 3005 +++++++++++++++++ ..._test__open_read_maybe_gz@14kb.txt.gz.snap | 3005 +++++++++++++++++ ...io__test__open_read_maybe_gz@14kb.txt.snap | 3005 +++++++++++++++++ ...t__open_write_maybe_bgzf@14kb.txt.bgz.snap | 412 +++ ...st__open_write_maybe_bgzf@14kb.txt.gz.snap | 412 +++ ..._test__open_write_maybe_bgzf@14kb.txt.snap | 872 +++++ src/common/io/std.rs | 155 + src/common/io/tokio.rs | 142 + src/{common.rs => common/mod.rs} | 52 +- src/common/noodles.rs | 43 + src/main.rs | 48 +- tests/common/io/14kb.txt | 3000 ++++++++++++++++ tests/common/io/14kb.txt.bgz | 1 + tests/common/io/14kb.txt.gz | Bin 0 -> 5896 bytes tests/common/io/bootstrap.sh | 13 + tests/common/io/lines.txt | 3 + tests/common/{ => io}/test.txt | 0 tests/common/{ => io}/test.txt.gz | Bin 33 files changed, 25751 insertions(+), 168 deletions(-) create mode 100644 src/common/io/mod.rs create mode 100644 src/common/io/snapshots/mehari__common__io__std__test__open_read_maybe_gz@14kb.txt.bgz.snap create mode 100644 src/common/io/snapshots/mehari__common__io__std__test__open_read_maybe_gz@14kb.txt.gz.snap create mode 100644 src/common/io/snapshots/mehari__common__io__std__test__open_read_maybe_gz@14kb.txt.snap create mode 100644 src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_bgzf@14kb.txt.bgz.snap create mode 100644 src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_bgzf@14kb.txt.gz.snap create mode 100644 src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_bgzf@14kb.txt.snap create mode 100644 src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_gz@false.snap create mode 100644 src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_gz@true.snap create mode 100644 src/common/io/snapshots/mehari__common__io__std__test__read_lines.snap create mode 100644 src/common/io/snapshots/mehari__common__io__tokio__test__open_read_maybe_gz@14kb.txt.bgz.snap create mode 100644 src/common/io/snapshots/mehari__common__io__tokio__test__open_read_maybe_gz@14kb.txt.gz.snap create mode 100644 src/common/io/snapshots/mehari__common__io__tokio__test__open_read_maybe_gz@14kb.txt.snap create mode 100644 src/common/io/snapshots/mehari__common__io__tokio__test__open_write_maybe_bgzf@14kb.txt.bgz.snap create mode 100644 src/common/io/snapshots/mehari__common__io__tokio__test__open_write_maybe_bgzf@14kb.txt.gz.snap create mode 100644 src/common/io/snapshots/mehari__common__io__tokio__test__open_write_maybe_bgzf@14kb.txt.snap create mode 100644 src/common/io/std.rs create mode 100644 src/common/io/tokio.rs rename src/{common.rs => common/mod.rs} (71%) create mode 100644 src/common/noodles.rs create mode 100644 tests/common/io/14kb.txt create mode 120000 tests/common/io/14kb.txt.bgz create mode 100644 tests/common/io/14kb.txt.gz create mode 100644 tests/common/io/bootstrap.sh create mode 100644 tests/common/io/lines.txt rename tests/common/{ => io}/test.txt (100%) rename tests/common/{ => io}/test.txt.gz (100%) diff --git a/Cargo.lock b/Cargo.lock index 9fcd021f..2002e3b6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -103,7 +103,7 @@ dependencies = [ "futures-core", "futures-util", "mio", - "socket2", + "socket2 0.5.5", "tokio", "tracing", ] @@ -164,7 +164,7 @@ dependencies = [ "serde_json", "serde_urlencoded", "smallvec", - "socket2", + "socket2 0.5.5", "time", "url", ] @@ -198,14 +198,15 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] name = "ahash" -version = "0.8.3" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f" +checksum = "cd7d5a2cecb58716e47d67d5703a249964b14c7be1ec3cad3affc295b2d1c35d" dependencies = [ "cfg-if", "getrandom", "once_cell", "version_check", + "zerocopy", ] [[package]] @@ -255,9 +256,9 @@ dependencies = [ [[package]] name = "annonars" -version = "0.24.2" +version = "0.24.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "264ef5bcefef042e0c4e39fa5b6a30aebaceca9876917915974823a54668d426" +checksum = "0433a67ac720f710267253606ae2470969ea29d0e0c712835744483c967225ed" dependencies = [ "actix-web", "anyhow", @@ -358,6 +359,131 @@ dependencies = [ "num-traits", ] +[[package]] +name = "async-attributes" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3203e79f4dd9bdda415ed03cf14dae5a2bf775c683a00f94e9cd1faf0f596e5" +dependencies = [ + "quote", + "syn 1.0.109", +] + +[[package]] +name = "async-channel" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" +dependencies = [ + "concurrent-queue", + "event-listener", + "futures-core", +] + +[[package]] +name = "async-compression" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f658e2baef915ba0f26f1f7c42bfb8e12f532a01f449a090ded75ae7a07e9ba2" +dependencies = [ + "flate2", + "futures-core", + "memchr", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "async-executor" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b0c4a4f319e45986f347ee47fef8bf5e81c9abc3f6f58dc2391439f30df65f0" +dependencies = [ + "async-lock", + "async-task", + "concurrent-queue", + "fastrand 2.0.1", + "futures-lite", + "slab", +] + +[[package]] +name = "async-global-executor" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1b6f5d7df27bd294849f8eec66ecfc63d11814df7a4f5d74168a2394467b776" +dependencies = [ + "async-channel", + "async-executor", + "async-io", + "async-lock", + "blocking", + "futures-lite", + "once_cell", +] + +[[package]] +name = "async-io" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af" +dependencies = [ + "async-lock", + "autocfg", + "cfg-if", + "concurrent-queue", + "futures-lite", + "log", + "parking", + "polling", + "rustix 0.37.26", + "slab", + "socket2 0.4.10", + "waker-fn", +] + +[[package]] +name = "async-lock" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b" +dependencies = [ + "event-listener", +] + +[[package]] +name = "async-std" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62565bb4402e926b29953c785397c6dc0391b7b446e45008b0049eb43cec6f5d" +dependencies = [ + "async-attributes", + "async-channel", + "async-global-executor", + "async-io", + "async-lock", + "crossbeam-utils", + "futures-channel", + "futures-core", + "futures-io", + "futures-lite", + "gloo-timers", + "kv-log-macro", + "log", + "memchr", + "once_cell", + "pin-project-lite", + "pin-utils", + "slab", + "wasm-bindgen-futures", +] + +[[package]] +name = "async-task" +version = "4.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4eb2cdb97421e01129ccb49169d8279ed21e829929144f4a22a6e54ac549ca1" + [[package]] name = "async-trait" version = "0.1.74" @@ -369,6 +495,12 @@ dependencies = [ "syn 2.0.38", ] +[[package]] +name = "atomic-waker" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" + [[package]] name = "autocfg" version = "1.1.0" @@ -398,9 +530,9 @@ checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" [[package]] name = "base64" -version = "0.21.4" +version = "0.21.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2" +checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9" [[package]] name = "bgzip" @@ -538,6 +670,22 @@ dependencies = [ "generic-array", ] +[[package]] +name = "blocking" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c36a4d0d48574b3dd360b4b7d95cc651d2b6557b6402848a27d4b228a473e2a" +dependencies = [ + "async-channel", + "async-lock", + "async-task", + "fastrand 2.0.1", + "futures-io", + "futures-lite", + "piper", + "tracing", +] + [[package]] name = "boolvec" version = "0.2.6" @@ -593,9 +741,9 @@ dependencies = [ [[package]] name = "bytecount" -version = "0.6.4" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad152d03a2c813c80bb94fedbf3a3f02b28f793e39e7c214c8a0bcc196343de7" +checksum = "d1a12477b7237a01c11a80a51278165f9ba0edd28fa6db00a65ab230320dc58c" [[package]] name = "bytemuck" @@ -698,9 +846,9 @@ dependencies = [ [[package]] name = "clap-verbosity-flag" -version = "2.0.1" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1eef05769009513df2eb1c3b4613e7fad873a14c600ff025b08f250f59fee7de" +checksum = "e5fdbb015d790cfb378aca82caf9cc52a38be96a7eecdb92f31b4366a8afc019" dependencies = [ "clap", "log", @@ -742,6 +890,15 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" +[[package]] +name = "concurrent-queue" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f057a694a54f12365049b0958a1685bb52d567f5593b355fbf685838e873d400" +dependencies = [ + "crossbeam-utils", +] + [[package]] name = "console" version = "0.15.7" @@ -1070,6 +1227,12 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "event-listener" +version = "2.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" + [[package]] name = "fallible-iterator" version = "0.2.0" @@ -1082,6 +1245,15 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a" +[[package]] +name = "fastrand" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" +dependencies = [ + "instant", +] + [[package]] name = "fastrand" version = "2.0.1" @@ -1179,6 +1351,21 @@ version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964" +[[package]] +name = "futures-lite" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" +dependencies = [ + "fastrand 1.9.0", + "futures-core", + "futures-io", + "memchr", + "parking", + "pin-project-lite", + "waker-fn", +] + [[package]] name = "futures-macro" version = "0.3.28" @@ -1280,6 +1467,18 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" +[[package]] +name = "gloo-timers" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b995a66bb87bebce9a0f4a95aed01daca4872c050bfcb21653361c03bc35e5c" +dependencies = [ + "futures-channel", + "futures-core", + "js-sys", + "wasm-bindgen", +] + [[package]] name = "h2" version = "0.3.21" @@ -1416,6 +1615,12 @@ version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" +[[package]] +name = "hxdmp" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a17b27f28a7466846baca75f0a5244e546e44178eb7f1c07a3820f413e91c6b0" + [[package]] name = "iana-time-zone" version = "0.1.58" @@ -1589,6 +1794,15 @@ dependencies = [ "thiserror", ] +[[package]] +name = "kv-log-macro" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0de8b303297635ad57c9f5059fd9cee7a47f8e8daa09df0fcd07dd39fb22977f" +dependencies = [ + "log", +] + [[package]] name = "language-tags" version = "0.3.2" @@ -1678,6 +1892,12 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4" +[[package]] +name = "linux-raw-sys" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" + [[package]] name = "linux-raw-sys" version = "0.4.10" @@ -1716,6 +1936,9 @@ name = "log" version = "0.4.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" +dependencies = [ + "value-bag", +] [[package]] name = "lz4-sys" @@ -1754,6 +1977,8 @@ dependencies = [ "actix-web", "annonars", "anyhow", + "async-compression", + "async-std", "bgzip", "bio", "biocommons-bioutils", @@ -1766,7 +1991,9 @@ dependencies = [ "derivative", "env_logger", "flate2", + "futures", "hgvs", + "hxdmp", "indexmap 2.0.2", "indicatif", "insta", @@ -1799,6 +2026,7 @@ dependencies = [ "temp_testdir", "tempfile", "thousands", + "tokio", "tracing", "tracing-subscriber", "uuid", @@ -1843,9 +2071,9 @@ dependencies = [ [[package]] name = "mio" -version = "0.8.8" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" +checksum = "3dce281c5e46beae905d4de1870d8b1509a9142b62eedf18b443b011ca8343d0" dependencies = [ "libc", "log", @@ -1954,6 +2182,10 @@ dependencies = [ "bytes", "crossbeam-channel", "flate2", + "futures", + "pin-project-lite", + "tokio", + "tokio-util", ] [[package]] @@ -2001,23 +2233,25 @@ dependencies = [ [[package]] name = "noodles-tabix" -version = "0.30.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f69786c5eaa25460ae5ea61215f8869edd7eb1728c043f314420cea0bbe59ed3" +checksum = "d12d6981ba752798cb03abc9604324ff6cbc1e5354252f95c372545d967a6daf" dependencies = [ "bit-vec", "byteorder", "noodles-bgzf 0.25.0", "noodles-core", "noodles-csi", + "tokio", ] [[package]] name = "noodles-vcf" -version = "0.41.0" +version = "0.43.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0c31d3f5fd3bef22fcca702e2a85ab93f1c076a9e34cb94bc0c21874d2f4e02" +checksum = "f13f0225114584f7ab147f146532dccc584e810006a4dfb275544957e7722884" dependencies = [ + "futures", "indexmap 2.0.2", "memchr", "noodles-bgzf 0.25.0", @@ -2025,6 +2259,7 @@ dependencies = [ "noodles-csi", "noodles-tabix", "percent-encoding", + "tokio", ] [[package]] @@ -2077,6 +2312,16 @@ dependencies = [ "libm", ] +[[package]] +name = "num_cpus" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +dependencies = [ + "hermit-abi", + "libc", +] + [[package]] name = "number_prefix" version = "0.4.0" @@ -2113,6 +2358,12 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" +[[package]] +name = "parking" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae" + [[package]] name = "parking_lot" version = "0.12.1" @@ -2220,17 +2471,44 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" +[[package]] +name = "piper" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4" +dependencies = [ + "atomic-waker", + "fastrand 2.0.1", + "futures-io", +] + [[package]] name = "pkg-config" version = "0.3.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" +[[package]] +name = "polling" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" +dependencies = [ + "autocfg", + "bitflags 1.3.2", + "cfg-if", + "concurrent-queue", + "libc", + "log", + "pin-project-lite", + "windows-sys 0.48.0", +] + [[package]] name = "portable-atomic" -version = "1.4.3" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31114a898e107c51bb1609ffaf55a0e011cf6a4d7f1170d0015a165082c0338b" +checksum = "b559898e0b4931ed2d3b959ab0c2da4d99cc644c4b0b1a35b4d344027f474023" [[package]] name = "postgres" @@ -2664,6 +2942,20 @@ dependencies = [ "windows-sys 0.45.0", ] +[[package]] +name = "rustix" +version = "0.37.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84f3f8f960ed3b5a59055428714943298bf3fa2d4a1d53135084e0544829d995" +dependencies = [ + "bitflags 1.3.2", + "errno", + "io-lifetimes", + "libc", + "linux-raw-sys 0.3.8", + "windows-sys 0.48.0", +] + [[package]] name = "rustix" version = "0.38.20" @@ -2890,6 +3182,16 @@ version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" +[[package]] +name = "socket2" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" +dependencies = [ + "libc", + "winapi", +] + [[package]] name = "socket2" version = "0.5.5" @@ -3016,7 +3318,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef" dependencies = [ "cfg-if", - "fastrand", + "fastrand 2.0.1", "redox_syscall 0.3.5", "rustix 0.38.20", "windows-sys 0.48.0", @@ -3121,13 +3423,26 @@ dependencies = [ "bytes", "libc", "mio", + "num_cpus", "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2", + "socket2 0.5.5", + "tokio-macros", "windows-sys 0.48.0", ] +[[package]] +name = "tokio-macros" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.38", +] + [[package]] name = "tokio-postgres" version = "0.7.10" @@ -3148,7 +3463,7 @@ dependencies = [ "postgres-protocol", "postgres-types", "rand", - "socket2", + "socket2 0.5.5", "tokio", "tokio-util", "whoami", @@ -3203,12 +3518,12 @@ dependencies = [ [[package]] name = "tracing-log" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" +checksum = "f751112709b4e791d8ce53e32c4ed2d353565a795ce84da2285393f41557bdf2" dependencies = [ - "lazy_static", "log", + "once_cell", "tracing-core", ] @@ -3305,6 +3620,12 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" +[[package]] +name = "value-bag" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a72e1902dde2bd6441347de2b70b7f5d59bf157c6c62f0c44572607a1d55bbe" + [[package]] name = "vcpkg" version = "0.2.15" @@ -3326,6 +3647,12 @@ version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" +[[package]] +name = "waker-fn" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690" + [[package]] name = "wasi" version = "0.11.0+wasi-snapshot-preview1" @@ -3357,6 +3684,18 @@ dependencies = [ "wasm-bindgen-shared", ] +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + [[package]] name = "wasm-bindgen-macro" version = "0.2.87" @@ -3615,6 +3954,26 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" +[[package]] +name = "zerocopy" +version = "0.7.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c19fae0c8a9efc6a8281f2e623db8af1db9e57852e04cde3e754dd2dc29340f" +dependencies = [ + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc56589e9ddd1f1c28d4b4b5c773ce232910a6bb67a70133d61c9e347585efe9" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.38", +] + [[package]] name = "zstd" version = "0.12.4" diff --git a/Cargo.toml b/Cargo.toml index 7478b4ee..e65bf40e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -29,6 +29,7 @@ path = "src/main.rs" actix-web = "4.4" annonars = "0.24" anyhow = "1.0" +async-compression = { version = "0.4", features = ["tokio", "gzip"] } bgzip = "0.3" bio = "1.3" biocommons-bioutils = "0.1.4" @@ -41,6 +42,7 @@ csv = "1.3" derivative = "2.2" env_logger = "0.10" flate2 = "1.0" +futures = "0.3.28" hgvs = "0.12" indexmap = { version = "2.0", features = ["serde"] } indicatif = "0.17" @@ -48,12 +50,12 @@ jsonl = "4.0" lazy_static = "1.4" log = "0.4" nom = "7.1" -noodles-bgzf = "0.25" +noodles-bgzf = { version = "0.25", features = ["async"] } noodles-core = "0.12" noodles-csi = "0.25" noodles-fasta = "0.30" -noodles-tabix = "0.30" -noodles-vcf = "0.41" +noodles-tabix = "0.31" +noodles-vcf = { version = "0.43", features = ["async"] } parse-display = "0.8" procfs = "0.15" prost = "0.12" @@ -69,6 +71,7 @@ serde_with = { version = "3.3", features = ["indexmap_2"] } strum = { version = "0.25", features = ["derive"] } tempfile = "3" thousands = "0.2" +tokio = { version = "1.33", features = ["full"] } tracing = { version = "0.1", features = ["log"] } tracing-subscriber = "0.3" uuid = { version = "1.4", features = ["fast-rng", "serde"] } @@ -78,7 +81,9 @@ zstd = "0.13" prost-build = "0.12" [dev-dependencies] +async-std = { version = "1.12", features = ["attributes"] } csv = "1.3" +hxdmp = "0.2.1" insta = { version = "1.34", features = ["yaml"] } pretty_assertions = "1.4" rstest = "0.18" diff --git a/build.rs b/build.rs index 06aaba26..7e96650c 100644 --- a/build.rs +++ b/build.rs @@ -1,5 +1,6 @@ // The custom build script, needed as we use prost. fn main() { + println!("cargo:rerun-if-changed=src/db/create/txs/data.proto3"); prost_build::compile_protos(&["src/db/create/txs/data.proto3"], &["src/"]).unwrap(); } diff --git a/src/annotate/seqvars/csq.rs b/src/annotate/seqvars/csq.rs index fc8b7a58..84d3c4df 100644 --- a/src/annotate/seqvars/csq.rs +++ b/src/annotate/seqvars/csq.rs @@ -738,13 +738,9 @@ mod test { #[case] spdi: &str, #[case] expected_dist: i32, ) -> Result<(), anyhow::Error> { - crate::common::set_snapshot_suffix!("{}", spdi.replace(":", "-")); + crate::common::set_snapshot_suffix!("{}", spdi.replace(':', "-")); - let spdi = spdi - .split(":") - .into_iter() - .map(|s| s.to_string()) - .collect::>(); + let spdi = spdi.split(':').map(|s| s.to_string()).collect::>(); let tx_path = "tests/data/annotate/db/grch37/txs.bin.zst"; let tx_db = load_tx_db(tx_path)?; diff --git a/src/annotate/strucvars/mod.rs b/src/annotate/strucvars/mod.rs index 9fab7d6e..f03007ba 100644 --- a/src/annotate/strucvars/mod.rs +++ b/src/annotate/strucvars/mod.rs @@ -10,7 +10,8 @@ use std::path::Path; use std::str::FromStr; use std::{fs::File, io::BufWriter}; -use crate::common::{open_read_maybe_gz, GenomeRelease}; +use crate::common::noodles::{open_vcf_reader, AsyncVcfReader}; +use crate::common::GenomeRelease; use crate::ped::PedigreeByName; use annonars::common::cli::CANONICAL; use annonars::freqs::cli::import::reading::guess_assembly; @@ -20,6 +21,7 @@ use chrono::Utc; use clap::{Args as ClapArgs, Parser}; use flate2::write::GzEncoder; use flate2::Compression; +use futures::TryStreamExt; use noodles_bgzf::Writer as BgzfWriter; use noodles_vcf::reader::Builder as VariantReaderBuilder; use noodles_vcf::record::alternate_bases::Allele; @@ -1626,13 +1628,14 @@ impl SvCaller { } /// Guess the `SvCaller` from the VCF file at the given path. -pub fn guess_sv_caller(reader: Box) -> Result { - let mut reader = noodles_vcf::reader::Builder.build_from_reader(reader)?; - let header = reader.read_header()?; +pub async fn guess_sv_caller(reader: &mut AsyncVcfReader) -> Result { + let header = reader.read_header().await?; let mut records = reader.records(&header); let record = records - .next() - .ok_or(anyhow::anyhow!("No records found"))??; + .try_next() + .await + .map_err(|e| anyhow::anyhow!("Problem reading VCF records: {}", e))? + .ok_or(anyhow::anyhow!("No records found"))?; for caller in SvCaller::iter() { if caller.caller_compatible(&header) { @@ -2641,9 +2644,9 @@ pub fn build_vcf_record_converter>( /// Convert the records in the VCF reader to the JSONL file per contig in `tmp_dir`. /// /// Note that we will consider the "25 canonical" contigs only (chr1..chr22, chrX, chrY, chrM). -pub fn run_vcf_to_jsonl( +pub async fn run_vcf_to_jsonl( pedigree: &PedigreeByName, - reader: &mut noodles_vcf::Reader>, + reader: &mut AsyncVcfReader, header: &VcfHeader, sv_caller: &SvCaller, tmp_dir: &tempfile::TempDir, @@ -2678,11 +2681,16 @@ pub fn run_vcf_to_jsonl( let mapping = CHROM_TO_CHROM_NO.deref(); let mut uuid_buf = [0u8; 16]; - for record in reader.records(header) { + let mut records = reader.records(header); + while let Some(record) = records + .try_next() + .await + .map_err(|e| anyhow::anyhow!("problem reading VCF record: {}", e))? + { rng.fill_bytes(&mut uuid_buf); let uuid = Uuid::from_bytes(uuid_buf); - let mut record = converter.convert(pedigree, &record?, uuid, GenomeRelease::Grch37)?; + let mut record = converter.convert(pedigree, &record, uuid, GenomeRelease::Grch37)?; annotate_cov_mq(&mut record, cov_readers)?; if let Some(chromosome_no) = mapping.get(&record.chromosome) { let out_jsonl = &mut tmp_files[*chromosome_no as usize - 1]; @@ -2854,7 +2862,7 @@ pub fn read_and_cluster_for_contig( /// * `args`: The command line arguments. /// * `pedigree`: The pedigree of case. /// * `header`: The input VCF header. -fn run_with_writer( +async fn run_with_writer( writer: &mut dyn AnnotatedVcfWriter, args: &Args, pedigree: &PedigreeByName, @@ -2886,12 +2894,14 @@ fn run_with_writer( tracing::info!("Input VCF files to temporary files..."); for path_input in args.path_input_vcf.iter() { tracing::debug!("processing VCF file {}", path_input); - let reader = open_read_maybe_gz(path_input)?; - let sv_caller = guess_sv_caller(reader)?; + let sv_caller = { + let mut reader = open_vcf_reader(path_input).await?; + guess_sv_caller(&mut reader).await? + }; tracing::debug!("guessed caller/version to be {:?}", &sv_caller); - let mut reader = noodles_vcf::reader::Builder.build_from_path(path_input)?; - let header: VcfHeader = reader.read_header()?; + let mut reader = open_vcf_reader(path_input).await?; + let header: VcfHeader = reader.read_header().await?; run_vcf_to_jsonl( pedigree, &mut reader, @@ -2900,7 +2910,8 @@ fn run_with_writer( &tmp_dir, &mut cov_readers, &mut rng, - )?; + ) + .await?; } tracing::info!("... done converting input files."); @@ -2942,7 +2953,7 @@ fn run_with_writer( } /// Main entry point for `annotate strucvars` sub command. -pub fn run(_common: &crate::common::Args, args: &Args) -> Result<(), anyhow::Error> { +pub async fn run(_common: &crate::common::Args, args: &Args) -> Result<(), anyhow::Error> { tracing::info!("config = {:#?}", &args); // Load the pedigree. tracing::info!("Loading pedigree..."); @@ -2979,13 +2990,13 @@ pub fn run(_common: &crate::common::Args, args: &Args) -> Result<(), anyhow::Err ); writer.set_assembly(assembly); writer.set_pedigree(&pedigree); - run_with_writer(&mut writer, &args, &pedigree, &header)?; + run_with_writer(&mut writer, &args, &pedigree, &header).await?; } else { let mut writer = noodles_vcf::Writer::new(File::create(path_output_vcf).map(BufWriter::new)?); writer.set_assembly(assembly); writer.set_pedigree(&pedigree); - run_with_writer(&mut writer, &args, &pedigree, &header)?; + run_with_writer(&mut writer, &args, &pedigree, &header).await?; } } else { let path_output_tsv = args @@ -2997,7 +3008,7 @@ pub fn run(_common: &crate::common::Args, args: &Args) -> Result<(), anyhow::Err writer.set_assembly(assembly); writer.set_pedigree(&pedigree); - run_with_writer(&mut writer, &args, &pedigree, &header)?; + run_with_writer(&mut writer, &args, &pedigree, &header).await?; } Ok(()) @@ -3150,7 +3161,7 @@ mod test { VarFishStrucvarTsvRecord, }, }, - common::{open_read_maybe_gz, GenomeRelease}, + common::{noodles::open_vcf_reader, GenomeRelease}, ped::{Disease, Individual, PedigreeByName, Sex}, }; @@ -3375,8 +3386,8 @@ mod test { ) } - #[test] - fn vcf_to_jsonl_with_detection() -> Result<(), anyhow::Error> { + #[tokio::test] + async fn vcf_to_jsonl_with_detection() -> Result<(), anyhow::Error> { let keys = &[ "delly2", "dragen-cnv", @@ -3391,7 +3402,8 @@ mod test { let path_expected_txt = format!("tests/data/annotate/strucvars/{}-min.out.jsonl", key); let samples = vcf_samples(&path_input_vcf)?; let pedigree: PedigreeByName = sample_ped(&samples); - let sv_caller = guess_sv_caller(open_read_maybe_gz(&path_input_vcf)?)?; + let mut reader = open_vcf_reader(&path_input_vcf).await?; + let sv_caller = guess_sv_caller(&mut reader).await?; let converter = build_vcf_record_converter(&sv_caller, &samples); run_test_vcf_to_jsonl( @@ -3405,71 +3417,65 @@ mod test { Ok(()) } - #[test] - fn guess_sv_caller_delly() -> Result<(), anyhow::Error> { - let sv_caller = guess_sv_caller(open_read_maybe_gz( - "tests/data/annotate/strucvars/delly2-min.vcf", - )?)?; + #[tokio::test] + async fn guess_sv_caller_delly() -> Result<(), anyhow::Error> { + let mut reader = open_vcf_reader("tests/data/annotate/strucvars/delly2-min.vcf").await?; + let sv_caller = guess_sv_caller(&mut reader).await?; insta::assert_debug_snapshot!(sv_caller); Ok(()) } - #[test] - fn guess_sv_caller_dragen_sv() -> Result<(), anyhow::Error> { - let sv_caller = guess_sv_caller(open_read_maybe_gz( - "tests/data/annotate/strucvars/dragen-sv-min.vcf", - )?)?; + #[tokio::test] + async fn guess_sv_caller_dragen_sv() -> Result<(), anyhow::Error> { + let mut reader = open_vcf_reader("tests/data/annotate/strucvars/dragen-sv-min.vcf").await?; + let sv_caller = guess_sv_caller(&mut reader).await?; insta::assert_debug_snapshot!(sv_caller); Ok(()) } - #[test] - fn guess_sv_caller_dragen_cnv() -> Result<(), anyhow::Error> { - let sv_caller = guess_sv_caller(open_read_maybe_gz( - "tests/data/annotate/strucvars/dragen-cnv-min.vcf", - )?)?; + #[tokio::test] + async fn guess_sv_caller_dragen_cnv() -> Result<(), anyhow::Error> { + let mut reader = + open_vcf_reader("tests/data/annotate/strucvars/dragen-cnv-min.vcf").await?; + let sv_caller = guess_sv_caller(&mut reader).await?; insta::assert_debug_snapshot!(sv_caller); Ok(()) } - #[test] - fn guess_sv_caller_gcnv() -> Result<(), anyhow::Error> { - let sv_caller = guess_sv_caller(open_read_maybe_gz( - "tests/data/annotate/strucvars/gcnv-min.vcf", - )?)?; + #[tokio::test] + async fn guess_sv_caller_gcnv() -> Result<(), anyhow::Error> { + let mut reader = open_vcf_reader("tests/data/annotate/strucvars/gcnv-min.vcf").await?; + let sv_caller = guess_sv_caller(&mut reader).await?; insta::assert_debug_snapshot!(sv_caller); Ok(()) } - #[test] - fn guess_sv_caller_manta() -> Result<(), anyhow::Error> { - let sv_caller = guess_sv_caller(open_read_maybe_gz( - "tests/data/annotate/strucvars/manta-min.vcf", - )?)?; + #[tokio::test] + async fn guess_sv_caller_manta() -> Result<(), anyhow::Error> { + let mut reader = open_vcf_reader("tests/data/annotate/strucvars/manta-min.vcf").await?; + let sv_caller = guess_sv_caller(&mut reader).await?; insta::assert_debug_snapshot!(sv_caller); Ok(()) } - #[test] - fn guess_sv_caller_melt() -> Result<(), anyhow::Error> { - let sv_caller = guess_sv_caller(open_read_maybe_gz( - "tests/data/annotate/strucvars/melt-min.vcf", - )?)?; + #[tokio::test] + async fn guess_sv_caller_melt() -> Result<(), anyhow::Error> { + let mut reader = open_vcf_reader("tests/data/annotate/strucvars/melt-min.vcf").await?; + let sv_caller = guess_sv_caller(&mut reader).await?; insta::assert_debug_snapshot!(sv_caller); Ok(()) } - #[test] - fn guess_sv_caller_popdel() -> Result<(), anyhow::Error> { - let sv_caller = guess_sv_caller(open_read_maybe_gz( - "tests/data/annotate/strucvars/popdel-min.vcf", - )?)?; + #[tokio::test] + async fn guess_sv_caller_popdel() -> Result<(), anyhow::Error> { + let mut reader = open_vcf_reader("tests/data/annotate/strucvars/popdel-min.vcf").await?; + let sv_caller = guess_sv_caller(&mut reader).await?; insta::assert_debug_snapshot!(sv_caller); Ok(()) @@ -3814,7 +3820,8 @@ mod test { #[rstest] #[case(true)] #[case(false)] - fn test_with_maelstrom_reader(#[case] is_tsv: bool) -> Result<(), anyhow::Error> { + #[tokio::test] + async fn test_with_maelstrom_reader(#[case] is_tsv: bool) -> Result<(), anyhow::Error> { let temp = TempDir::default(); let args_common = crate::common::Args { @@ -3853,7 +3860,7 @@ mod test { rng_seed: Some(42), }; - run(&args_common, &args)?; + run(&args_common, &args).await?; let expected = std::fs::read_to_string(format!( "tests/data/annotate/strucvars/maelstrom/delly2-min-with-maelstrom{}", diff --git a/src/common/io/mod.rs b/src/common/io/mod.rs new file mode 100644 index 00000000..3e064acb --- /dev/null +++ b/src/common/io/mod.rs @@ -0,0 +1,4 @@ +//! Common, IO-related code. + +pub mod std; +pub mod tokio; diff --git a/src/common/io/snapshots/mehari__common__io__std__test__open_read_maybe_gz@14kb.txt.bgz.snap b/src/common/io/snapshots/mehari__common__io__std__test__open_read_maybe_gz@14kb.txt.bgz.snap new file mode 100644 index 00000000..4c5fc901 --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__std__test__open_read_maybe_gz@14kb.txt.bgz.snap @@ -0,0 +1,3005 @@ +--- +source: src/common/io/std.rs +expression: "String::from_utf8(buf)?" +--- +1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +197 +198 +199 +200 +201 +202 +203 +204 +205 +206 +207 +208 +209 +210 +211 +212 +213 +214 +215 +216 +217 +218 +219 +220 +221 +222 +223 +224 +225 +226 +227 +228 +229 +230 +231 +232 +233 +234 +235 +236 +237 +238 +239 +240 +241 +242 +243 +244 +245 +246 +247 +248 +249 +250 +251 +252 +253 +254 +255 +256 +257 +258 +259 +260 +261 +262 +263 +264 +265 +266 +267 +268 +269 +270 +271 +272 +273 +274 +275 +276 +277 +278 +279 +280 +281 +282 +283 +284 +285 +286 +287 +288 +289 +290 +291 +292 +293 +294 +295 +296 +297 +298 +299 +300 +301 +302 +303 +304 +305 +306 +307 +308 +309 +310 +311 +312 +313 +314 +315 +316 +317 +318 +319 +320 +321 +322 +323 +324 +325 +326 +327 +328 +329 +330 +331 +332 +333 +334 +335 +336 +337 +338 +339 +340 +341 +342 +343 +344 +345 +346 +347 +348 +349 +350 +351 +352 +353 +354 +355 +356 +357 +358 +359 +360 +361 +362 +363 +364 +365 +366 +367 +368 +369 +370 +371 +372 +373 +374 +375 +376 +377 +378 +379 +380 +381 +382 +383 +384 +385 +386 +387 +388 +389 +390 +391 +392 +393 +394 +395 +396 +397 +398 +399 +400 +401 +402 +403 +404 +405 +406 +407 +408 +409 +410 +411 +412 +413 +414 +415 +416 +417 +418 +419 +420 +421 +422 +423 +424 +425 +426 +427 +428 +429 +430 +431 +432 +433 +434 +435 +436 +437 +438 +439 +440 +441 +442 +443 +444 +445 +446 +447 +448 +449 +450 +451 +452 +453 +454 +455 +456 +457 +458 +459 +460 +461 +462 +463 +464 +465 +466 +467 +468 +469 +470 +471 +472 +473 +474 +475 +476 +477 +478 +479 +480 +481 +482 +483 +484 +485 +486 +487 +488 +489 +490 +491 +492 +493 +494 +495 +496 +497 +498 +499 +500 +501 +502 +503 +504 +505 +506 +507 +508 +509 +510 +511 +512 +513 +514 +515 +516 +517 +518 +519 +520 +521 +522 +523 +524 +525 +526 +527 +528 +529 +530 +531 +532 +533 +534 +535 +536 +537 +538 +539 +540 +541 +542 +543 +544 +545 +546 +547 +548 +549 +550 +551 +552 +553 +554 +555 +556 +557 +558 +559 +560 +561 +562 +563 +564 +565 +566 +567 +568 +569 +570 +571 +572 +573 +574 +575 +576 +577 +578 +579 +580 +581 +582 +583 +584 +585 +586 +587 +588 +589 +590 +591 +592 +593 +594 +595 +596 +597 +598 +599 +600 +601 +602 +603 +604 +605 +606 +607 +608 +609 +610 +611 +612 +613 +614 +615 +616 +617 +618 +619 +620 +621 +622 +623 +624 +625 +626 +627 +628 +629 +630 +631 +632 +633 +634 +635 +636 +637 +638 +639 +640 +641 +642 +643 +644 +645 +646 +647 +648 +649 +650 +651 +652 +653 +654 +655 +656 +657 +658 +659 +660 +661 +662 +663 +664 +665 +666 +667 +668 +669 +670 +671 +672 +673 +674 +675 +676 +677 +678 +679 +680 +681 +682 +683 +684 +685 +686 +687 +688 +689 +690 +691 +692 +693 +694 +695 +696 +697 +698 +699 +700 +701 +702 +703 +704 +705 +706 +707 +708 +709 +710 +711 +712 +713 +714 +715 +716 +717 +718 +719 +720 +721 +722 +723 +724 +725 +726 +727 +728 +729 +730 +731 +732 +733 +734 +735 +736 +737 +738 +739 +740 +741 +742 +743 +744 +745 +746 +747 +748 +749 +750 +751 +752 +753 +754 +755 +756 +757 +758 +759 +760 +761 +762 +763 +764 +765 +766 +767 +768 +769 +770 +771 +772 +773 +774 +775 +776 +777 +778 +779 +780 +781 +782 +783 +784 +785 +786 +787 +788 +789 +790 +791 +792 +793 +794 +795 +796 +797 +798 +799 +800 +801 +802 +803 +804 +805 +806 +807 +808 +809 +810 +811 +812 +813 +814 +815 +816 +817 +818 +819 +820 +821 +822 +823 +824 +825 +826 +827 +828 +829 +830 +831 +832 +833 +834 +835 +836 +837 +838 +839 +840 +841 +842 +843 +844 +845 +846 +847 +848 +849 +850 +851 +852 +853 +854 +855 +856 +857 +858 +859 +860 +861 +862 +863 +864 +865 +866 +867 +868 +869 +870 +871 +872 +873 +874 +875 +876 +877 +878 +879 +880 +881 +882 +883 +884 +885 +886 +887 +888 +889 +890 +891 +892 +893 +894 +895 +896 +897 +898 +899 +900 +901 +902 +903 +904 +905 +906 +907 +908 +909 +910 +911 +912 +913 +914 +915 +916 +917 +918 +919 +920 +921 +922 +923 +924 +925 +926 +927 +928 +929 +930 +931 +932 +933 +934 +935 +936 +937 +938 +939 +940 +941 +942 +943 +944 +945 +946 +947 +948 +949 +950 +951 +952 +953 +954 +955 +956 +957 +958 +959 +960 +961 +962 +963 +964 +965 +966 +967 +968 +969 +970 +971 +972 +973 +974 +975 +976 +977 +978 +979 +980 +981 +982 +983 +984 +985 +986 +987 +988 +989 +990 +991 +992 +993 +994 +995 +996 +997 +998 +999 +1000 +1001 +1002 +1003 +1004 +1005 +1006 +1007 +1008 +1009 +1010 +1011 +1012 +1013 +1014 +1015 +1016 +1017 +1018 +1019 +1020 +1021 +1022 +1023 +1024 +1025 +1026 +1027 +1028 +1029 +1030 +1031 +1032 +1033 +1034 +1035 +1036 +1037 +1038 +1039 +1040 +1041 +1042 +1043 +1044 +1045 +1046 +1047 +1048 +1049 +1050 +1051 +1052 +1053 +1054 +1055 +1056 +1057 +1058 +1059 +1060 +1061 +1062 +1063 +1064 +1065 +1066 +1067 +1068 +1069 +1070 +1071 +1072 +1073 +1074 +1075 +1076 +1077 +1078 +1079 +1080 +1081 +1082 +1083 +1084 +1085 +1086 +1087 +1088 +1089 +1090 +1091 +1092 +1093 +1094 +1095 +1096 +1097 +1098 +1099 +1100 +1101 +1102 +1103 +1104 +1105 +1106 +1107 +1108 +1109 +1110 +1111 +1112 +1113 +1114 +1115 +1116 +1117 +1118 +1119 +1120 +1121 +1122 +1123 +1124 +1125 +1126 +1127 +1128 +1129 +1130 +1131 +1132 +1133 +1134 +1135 +1136 +1137 +1138 +1139 +1140 +1141 +1142 +1143 +1144 +1145 +1146 +1147 +1148 +1149 +1150 +1151 +1152 +1153 +1154 +1155 +1156 +1157 +1158 +1159 +1160 +1161 +1162 +1163 +1164 +1165 +1166 +1167 +1168 +1169 +1170 +1171 +1172 +1173 +1174 +1175 +1176 +1177 +1178 +1179 +1180 +1181 +1182 +1183 +1184 +1185 +1186 +1187 +1188 +1189 +1190 +1191 +1192 +1193 +1194 +1195 +1196 +1197 +1198 +1199 +1200 +1201 +1202 +1203 +1204 +1205 +1206 +1207 +1208 +1209 +1210 +1211 +1212 +1213 +1214 +1215 +1216 +1217 +1218 +1219 +1220 +1221 +1222 +1223 +1224 +1225 +1226 +1227 +1228 +1229 +1230 +1231 +1232 +1233 +1234 +1235 +1236 +1237 +1238 +1239 +1240 +1241 +1242 +1243 +1244 +1245 +1246 +1247 +1248 +1249 +1250 +1251 +1252 +1253 +1254 +1255 +1256 +1257 +1258 +1259 +1260 +1261 +1262 +1263 +1264 +1265 +1266 +1267 +1268 +1269 +1270 +1271 +1272 +1273 +1274 +1275 +1276 +1277 +1278 +1279 +1280 +1281 +1282 +1283 +1284 +1285 +1286 +1287 +1288 +1289 +1290 +1291 +1292 +1293 +1294 +1295 +1296 +1297 +1298 +1299 +1300 +1301 +1302 +1303 +1304 +1305 +1306 +1307 +1308 +1309 +1310 +1311 +1312 +1313 +1314 +1315 +1316 +1317 +1318 +1319 +1320 +1321 +1322 +1323 +1324 +1325 +1326 +1327 +1328 +1329 +1330 +1331 +1332 +1333 +1334 +1335 +1336 +1337 +1338 +1339 +1340 +1341 +1342 +1343 +1344 +1345 +1346 +1347 +1348 +1349 +1350 +1351 +1352 +1353 +1354 +1355 +1356 +1357 +1358 +1359 +1360 +1361 +1362 +1363 +1364 +1365 +1366 +1367 +1368 +1369 +1370 +1371 +1372 +1373 +1374 +1375 +1376 +1377 +1378 +1379 +1380 +1381 +1382 +1383 +1384 +1385 +1386 +1387 +1388 +1389 +1390 +1391 +1392 +1393 +1394 +1395 +1396 +1397 +1398 +1399 +1400 +1401 +1402 +1403 +1404 +1405 +1406 +1407 +1408 +1409 +1410 +1411 +1412 +1413 +1414 +1415 +1416 +1417 +1418 +1419 +1420 +1421 +1422 +1423 +1424 +1425 +1426 +1427 +1428 +1429 +1430 +1431 +1432 +1433 +1434 +1435 +1436 +1437 +1438 +1439 +1440 +1441 +1442 +1443 +1444 +1445 +1446 +1447 +1448 +1449 +1450 +1451 +1452 +1453 +1454 +1455 +1456 +1457 +1458 +1459 +1460 +1461 +1462 +1463 +1464 +1465 +1466 +1467 +1468 +1469 +1470 +1471 +1472 +1473 +1474 +1475 +1476 +1477 +1478 +1479 +1480 +1481 +1482 +1483 +1484 +1485 +1486 +1487 +1488 +1489 +1490 +1491 +1492 +1493 +1494 +1495 +1496 +1497 +1498 +1499 +1500 +1501 +1502 +1503 +1504 +1505 +1506 +1507 +1508 +1509 +1510 +1511 +1512 +1513 +1514 +1515 +1516 +1517 +1518 +1519 +1520 +1521 +1522 +1523 +1524 +1525 +1526 +1527 +1528 +1529 +1530 +1531 +1532 +1533 +1534 +1535 +1536 +1537 +1538 +1539 +1540 +1541 +1542 +1543 +1544 +1545 +1546 +1547 +1548 +1549 +1550 +1551 +1552 +1553 +1554 +1555 +1556 +1557 +1558 +1559 +1560 +1561 +1562 +1563 +1564 +1565 +1566 +1567 +1568 +1569 +1570 +1571 +1572 +1573 +1574 +1575 +1576 +1577 +1578 +1579 +1580 +1581 +1582 +1583 +1584 +1585 +1586 +1587 +1588 +1589 +1590 +1591 +1592 +1593 +1594 +1595 +1596 +1597 +1598 +1599 +1600 +1601 +1602 +1603 +1604 +1605 +1606 +1607 +1608 +1609 +1610 +1611 +1612 +1613 +1614 +1615 +1616 +1617 +1618 +1619 +1620 +1621 +1622 +1623 +1624 +1625 +1626 +1627 +1628 +1629 +1630 +1631 +1632 +1633 +1634 +1635 +1636 +1637 +1638 +1639 +1640 +1641 +1642 +1643 +1644 +1645 +1646 +1647 +1648 +1649 +1650 +1651 +1652 +1653 +1654 +1655 +1656 +1657 +1658 +1659 +1660 +1661 +1662 +1663 +1664 +1665 +1666 +1667 +1668 +1669 +1670 +1671 +1672 +1673 +1674 +1675 +1676 +1677 +1678 +1679 +1680 +1681 +1682 +1683 +1684 +1685 +1686 +1687 +1688 +1689 +1690 +1691 +1692 +1693 +1694 +1695 +1696 +1697 +1698 +1699 +1700 +1701 +1702 +1703 +1704 +1705 +1706 +1707 +1708 +1709 +1710 +1711 +1712 +1713 +1714 +1715 +1716 +1717 +1718 +1719 +1720 +1721 +1722 +1723 +1724 +1725 +1726 +1727 +1728 +1729 +1730 +1731 +1732 +1733 +1734 +1735 +1736 +1737 +1738 +1739 +1740 +1741 +1742 +1743 +1744 +1745 +1746 +1747 +1748 +1749 +1750 +1751 +1752 +1753 +1754 +1755 +1756 +1757 +1758 +1759 +1760 +1761 +1762 +1763 +1764 +1765 +1766 +1767 +1768 +1769 +1770 +1771 +1772 +1773 +1774 +1775 +1776 +1777 +1778 +1779 +1780 +1781 +1782 +1783 +1784 +1785 +1786 +1787 +1788 +1789 +1790 +1791 +1792 +1793 +1794 +1795 +1796 +1797 +1798 +1799 +1800 +1801 +1802 +1803 +1804 +1805 +1806 +1807 +1808 +1809 +1810 +1811 +1812 +1813 +1814 +1815 +1816 +1817 +1818 +1819 +1820 +1821 +1822 +1823 +1824 +1825 +1826 +1827 +1828 +1829 +1830 +1831 +1832 +1833 +1834 +1835 +1836 +1837 +1838 +1839 +1840 +1841 +1842 +1843 +1844 +1845 +1846 +1847 +1848 +1849 +1850 +1851 +1852 +1853 +1854 +1855 +1856 +1857 +1858 +1859 +1860 +1861 +1862 +1863 +1864 +1865 +1866 +1867 +1868 +1869 +1870 +1871 +1872 +1873 +1874 +1875 +1876 +1877 +1878 +1879 +1880 +1881 +1882 +1883 +1884 +1885 +1886 +1887 +1888 +1889 +1890 +1891 +1892 +1893 +1894 +1895 +1896 +1897 +1898 +1899 +1900 +1901 +1902 +1903 +1904 +1905 +1906 +1907 +1908 +1909 +1910 +1911 +1912 +1913 +1914 +1915 +1916 +1917 +1918 +1919 +1920 +1921 +1922 +1923 +1924 +1925 +1926 +1927 +1928 +1929 +1930 +1931 +1932 +1933 +1934 +1935 +1936 +1937 +1938 +1939 +1940 +1941 +1942 +1943 +1944 +1945 +1946 +1947 +1948 +1949 +1950 +1951 +1952 +1953 +1954 +1955 +1956 +1957 +1958 +1959 +1960 +1961 +1962 +1963 +1964 +1965 +1966 +1967 +1968 +1969 +1970 +1971 +1972 +1973 +1974 +1975 +1976 +1977 +1978 +1979 +1980 +1981 +1982 +1983 +1984 +1985 +1986 +1987 +1988 +1989 +1990 +1991 +1992 +1993 +1994 +1995 +1996 +1997 +1998 +1999 +2000 +2001 +2002 +2003 +2004 +2005 +2006 +2007 +2008 +2009 +2010 +2011 +2012 +2013 +2014 +2015 +2016 +2017 +2018 +2019 +2020 +2021 +2022 +2023 +2024 +2025 +2026 +2027 +2028 +2029 +2030 +2031 +2032 +2033 +2034 +2035 +2036 +2037 +2038 +2039 +2040 +2041 +2042 +2043 +2044 +2045 +2046 +2047 +2048 +2049 +2050 +2051 +2052 +2053 +2054 +2055 +2056 +2057 +2058 +2059 +2060 +2061 +2062 +2063 +2064 +2065 +2066 +2067 +2068 +2069 +2070 +2071 +2072 +2073 +2074 +2075 +2076 +2077 +2078 +2079 +2080 +2081 +2082 +2083 +2084 +2085 +2086 +2087 +2088 +2089 +2090 +2091 +2092 +2093 +2094 +2095 +2096 +2097 +2098 +2099 +2100 +2101 +2102 +2103 +2104 +2105 +2106 +2107 +2108 +2109 +2110 +2111 +2112 +2113 +2114 +2115 +2116 +2117 +2118 +2119 +2120 +2121 +2122 +2123 +2124 +2125 +2126 +2127 +2128 +2129 +2130 +2131 +2132 +2133 +2134 +2135 +2136 +2137 +2138 +2139 +2140 +2141 +2142 +2143 +2144 +2145 +2146 +2147 +2148 +2149 +2150 +2151 +2152 +2153 +2154 +2155 +2156 +2157 +2158 +2159 +2160 +2161 +2162 +2163 +2164 +2165 +2166 +2167 +2168 +2169 +2170 +2171 +2172 +2173 +2174 +2175 +2176 +2177 +2178 +2179 +2180 +2181 +2182 +2183 +2184 +2185 +2186 +2187 +2188 +2189 +2190 +2191 +2192 +2193 +2194 +2195 +2196 +2197 +2198 +2199 +2200 +2201 +2202 +2203 +2204 +2205 +2206 +2207 +2208 +2209 +2210 +2211 +2212 +2213 +2214 +2215 +2216 +2217 +2218 +2219 +2220 +2221 +2222 +2223 +2224 +2225 +2226 +2227 +2228 +2229 +2230 +2231 +2232 +2233 +2234 +2235 +2236 +2237 +2238 +2239 +2240 +2241 +2242 +2243 +2244 +2245 +2246 +2247 +2248 +2249 +2250 +2251 +2252 +2253 +2254 +2255 +2256 +2257 +2258 +2259 +2260 +2261 +2262 +2263 +2264 +2265 +2266 +2267 +2268 +2269 +2270 +2271 +2272 +2273 +2274 +2275 +2276 +2277 +2278 +2279 +2280 +2281 +2282 +2283 +2284 +2285 +2286 +2287 +2288 +2289 +2290 +2291 +2292 +2293 +2294 +2295 +2296 +2297 +2298 +2299 +2300 +2301 +2302 +2303 +2304 +2305 +2306 +2307 +2308 +2309 +2310 +2311 +2312 +2313 +2314 +2315 +2316 +2317 +2318 +2319 +2320 +2321 +2322 +2323 +2324 +2325 +2326 +2327 +2328 +2329 +2330 +2331 +2332 +2333 +2334 +2335 +2336 +2337 +2338 +2339 +2340 +2341 +2342 +2343 +2344 +2345 +2346 +2347 +2348 +2349 +2350 +2351 +2352 +2353 +2354 +2355 +2356 +2357 +2358 +2359 +2360 +2361 +2362 +2363 +2364 +2365 +2366 +2367 +2368 +2369 +2370 +2371 +2372 +2373 +2374 +2375 +2376 +2377 +2378 +2379 +2380 +2381 +2382 +2383 +2384 +2385 +2386 +2387 +2388 +2389 +2390 +2391 +2392 +2393 +2394 +2395 +2396 +2397 +2398 +2399 +2400 +2401 +2402 +2403 +2404 +2405 +2406 +2407 +2408 +2409 +2410 +2411 +2412 +2413 +2414 +2415 +2416 +2417 +2418 +2419 +2420 +2421 +2422 +2423 +2424 +2425 +2426 +2427 +2428 +2429 +2430 +2431 +2432 +2433 +2434 +2435 +2436 +2437 +2438 +2439 +2440 +2441 +2442 +2443 +2444 +2445 +2446 +2447 +2448 +2449 +2450 +2451 +2452 +2453 +2454 +2455 +2456 +2457 +2458 +2459 +2460 +2461 +2462 +2463 +2464 +2465 +2466 +2467 +2468 +2469 +2470 +2471 +2472 +2473 +2474 +2475 +2476 +2477 +2478 +2479 +2480 +2481 +2482 +2483 +2484 +2485 +2486 +2487 +2488 +2489 +2490 +2491 +2492 +2493 +2494 +2495 +2496 +2497 +2498 +2499 +2500 +2501 +2502 +2503 +2504 +2505 +2506 +2507 +2508 +2509 +2510 +2511 +2512 +2513 +2514 +2515 +2516 +2517 +2518 +2519 +2520 +2521 +2522 +2523 +2524 +2525 +2526 +2527 +2528 +2529 +2530 +2531 +2532 +2533 +2534 +2535 +2536 +2537 +2538 +2539 +2540 +2541 +2542 +2543 +2544 +2545 +2546 +2547 +2548 +2549 +2550 +2551 +2552 +2553 +2554 +2555 +2556 +2557 +2558 +2559 +2560 +2561 +2562 +2563 +2564 +2565 +2566 +2567 +2568 +2569 +2570 +2571 +2572 +2573 +2574 +2575 +2576 +2577 +2578 +2579 +2580 +2581 +2582 +2583 +2584 +2585 +2586 +2587 +2588 +2589 +2590 +2591 +2592 +2593 +2594 +2595 +2596 +2597 +2598 +2599 +2600 +2601 +2602 +2603 +2604 +2605 +2606 +2607 +2608 +2609 +2610 +2611 +2612 +2613 +2614 +2615 +2616 +2617 +2618 +2619 +2620 +2621 +2622 +2623 +2624 +2625 +2626 +2627 +2628 +2629 +2630 +2631 +2632 +2633 +2634 +2635 +2636 +2637 +2638 +2639 +2640 +2641 +2642 +2643 +2644 +2645 +2646 +2647 +2648 +2649 +2650 +2651 +2652 +2653 +2654 +2655 +2656 +2657 +2658 +2659 +2660 +2661 +2662 +2663 +2664 +2665 +2666 +2667 +2668 +2669 +2670 +2671 +2672 +2673 +2674 +2675 +2676 +2677 +2678 +2679 +2680 +2681 +2682 +2683 +2684 +2685 +2686 +2687 +2688 +2689 +2690 +2691 +2692 +2693 +2694 +2695 +2696 +2697 +2698 +2699 +2700 +2701 +2702 +2703 +2704 +2705 +2706 +2707 +2708 +2709 +2710 +2711 +2712 +2713 +2714 +2715 +2716 +2717 +2718 +2719 +2720 +2721 +2722 +2723 +2724 +2725 +2726 +2727 +2728 +2729 +2730 +2731 +2732 +2733 +2734 +2735 +2736 +2737 +2738 +2739 +2740 +2741 +2742 +2743 +2744 +2745 +2746 +2747 +2748 +2749 +2750 +2751 +2752 +2753 +2754 +2755 +2756 +2757 +2758 +2759 +2760 +2761 +2762 +2763 +2764 +2765 +2766 +2767 +2768 +2769 +2770 +2771 +2772 +2773 +2774 +2775 +2776 +2777 +2778 +2779 +2780 +2781 +2782 +2783 +2784 +2785 +2786 +2787 +2788 +2789 +2790 +2791 +2792 +2793 +2794 +2795 +2796 +2797 +2798 +2799 +2800 +2801 +2802 +2803 +2804 +2805 +2806 +2807 +2808 +2809 +2810 +2811 +2812 +2813 +2814 +2815 +2816 +2817 +2818 +2819 +2820 +2821 +2822 +2823 +2824 +2825 +2826 +2827 +2828 +2829 +2830 +2831 +2832 +2833 +2834 +2835 +2836 +2837 +2838 +2839 +2840 +2841 +2842 +2843 +2844 +2845 +2846 +2847 +2848 +2849 +2850 +2851 +2852 +2853 +2854 +2855 +2856 +2857 +2858 +2859 +2860 +2861 +2862 +2863 +2864 +2865 +2866 +2867 +2868 +2869 +2870 +2871 +2872 +2873 +2874 +2875 +2876 +2877 +2878 +2879 +2880 +2881 +2882 +2883 +2884 +2885 +2886 +2887 +2888 +2889 +2890 +2891 +2892 +2893 +2894 +2895 +2896 +2897 +2898 +2899 +2900 +2901 +2902 +2903 +2904 +2905 +2906 +2907 +2908 +2909 +2910 +2911 +2912 +2913 +2914 +2915 +2916 +2917 +2918 +2919 +2920 +2921 +2922 +2923 +2924 +2925 +2926 +2927 +2928 +2929 +2930 +2931 +2932 +2933 +2934 +2935 +2936 +2937 +2938 +2939 +2940 +2941 +2942 +2943 +2944 +2945 +2946 +2947 +2948 +2949 +2950 +2951 +2952 +2953 +2954 +2955 +2956 +2957 +2958 +2959 +2960 +2961 +2962 +2963 +2964 +2965 +2966 +2967 +2968 +2969 +2970 +2971 +2972 +2973 +2974 +2975 +2976 +2977 +2978 +2979 +2980 +2981 +2982 +2983 +2984 +2985 +2986 +2987 +2988 +2989 +2990 +2991 +2992 +2993 +2994 +2995 +2996 +2997 +2998 +2999 +3000 + diff --git a/src/common/io/snapshots/mehari__common__io__std__test__open_read_maybe_gz@14kb.txt.gz.snap b/src/common/io/snapshots/mehari__common__io__std__test__open_read_maybe_gz@14kb.txt.gz.snap new file mode 100644 index 00000000..4c5fc901 --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__std__test__open_read_maybe_gz@14kb.txt.gz.snap @@ -0,0 +1,3005 @@ +--- +source: src/common/io/std.rs +expression: "String::from_utf8(buf)?" +--- +1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +197 +198 +199 +200 +201 +202 +203 +204 +205 +206 +207 +208 +209 +210 +211 +212 +213 +214 +215 +216 +217 +218 +219 +220 +221 +222 +223 +224 +225 +226 +227 +228 +229 +230 +231 +232 +233 +234 +235 +236 +237 +238 +239 +240 +241 +242 +243 +244 +245 +246 +247 +248 +249 +250 +251 +252 +253 +254 +255 +256 +257 +258 +259 +260 +261 +262 +263 +264 +265 +266 +267 +268 +269 +270 +271 +272 +273 +274 +275 +276 +277 +278 +279 +280 +281 +282 +283 +284 +285 +286 +287 +288 +289 +290 +291 +292 +293 +294 +295 +296 +297 +298 +299 +300 +301 +302 +303 +304 +305 +306 +307 +308 +309 +310 +311 +312 +313 +314 +315 +316 +317 +318 +319 +320 +321 +322 +323 +324 +325 +326 +327 +328 +329 +330 +331 +332 +333 +334 +335 +336 +337 +338 +339 +340 +341 +342 +343 +344 +345 +346 +347 +348 +349 +350 +351 +352 +353 +354 +355 +356 +357 +358 +359 +360 +361 +362 +363 +364 +365 +366 +367 +368 +369 +370 +371 +372 +373 +374 +375 +376 +377 +378 +379 +380 +381 +382 +383 +384 +385 +386 +387 +388 +389 +390 +391 +392 +393 +394 +395 +396 +397 +398 +399 +400 +401 +402 +403 +404 +405 +406 +407 +408 +409 +410 +411 +412 +413 +414 +415 +416 +417 +418 +419 +420 +421 +422 +423 +424 +425 +426 +427 +428 +429 +430 +431 +432 +433 +434 +435 +436 +437 +438 +439 +440 +441 +442 +443 +444 +445 +446 +447 +448 +449 +450 +451 +452 +453 +454 +455 +456 +457 +458 +459 +460 +461 +462 +463 +464 +465 +466 +467 +468 +469 +470 +471 +472 +473 +474 +475 +476 +477 +478 +479 +480 +481 +482 +483 +484 +485 +486 +487 +488 +489 +490 +491 +492 +493 +494 +495 +496 +497 +498 +499 +500 +501 +502 +503 +504 +505 +506 +507 +508 +509 +510 +511 +512 +513 +514 +515 +516 +517 +518 +519 +520 +521 +522 +523 +524 +525 +526 +527 +528 +529 +530 +531 +532 +533 +534 +535 +536 +537 +538 +539 +540 +541 +542 +543 +544 +545 +546 +547 +548 +549 +550 +551 +552 +553 +554 +555 +556 +557 +558 +559 +560 +561 +562 +563 +564 +565 +566 +567 +568 +569 +570 +571 +572 +573 +574 +575 +576 +577 +578 +579 +580 +581 +582 +583 +584 +585 +586 +587 +588 +589 +590 +591 +592 +593 +594 +595 +596 +597 +598 +599 +600 +601 +602 +603 +604 +605 +606 +607 +608 +609 +610 +611 +612 +613 +614 +615 +616 +617 +618 +619 +620 +621 +622 +623 +624 +625 +626 +627 +628 +629 +630 +631 +632 +633 +634 +635 +636 +637 +638 +639 +640 +641 +642 +643 +644 +645 +646 +647 +648 +649 +650 +651 +652 +653 +654 +655 +656 +657 +658 +659 +660 +661 +662 +663 +664 +665 +666 +667 +668 +669 +670 +671 +672 +673 +674 +675 +676 +677 +678 +679 +680 +681 +682 +683 +684 +685 +686 +687 +688 +689 +690 +691 +692 +693 +694 +695 +696 +697 +698 +699 +700 +701 +702 +703 +704 +705 +706 +707 +708 +709 +710 +711 +712 +713 +714 +715 +716 +717 +718 +719 +720 +721 +722 +723 +724 +725 +726 +727 +728 +729 +730 +731 +732 +733 +734 +735 +736 +737 +738 +739 +740 +741 +742 +743 +744 +745 +746 +747 +748 +749 +750 +751 +752 +753 +754 +755 +756 +757 +758 +759 +760 +761 +762 +763 +764 +765 +766 +767 +768 +769 +770 +771 +772 +773 +774 +775 +776 +777 +778 +779 +780 +781 +782 +783 +784 +785 +786 +787 +788 +789 +790 +791 +792 +793 +794 +795 +796 +797 +798 +799 +800 +801 +802 +803 +804 +805 +806 +807 +808 +809 +810 +811 +812 +813 +814 +815 +816 +817 +818 +819 +820 +821 +822 +823 +824 +825 +826 +827 +828 +829 +830 +831 +832 +833 +834 +835 +836 +837 +838 +839 +840 +841 +842 +843 +844 +845 +846 +847 +848 +849 +850 +851 +852 +853 +854 +855 +856 +857 +858 +859 +860 +861 +862 +863 +864 +865 +866 +867 +868 +869 +870 +871 +872 +873 +874 +875 +876 +877 +878 +879 +880 +881 +882 +883 +884 +885 +886 +887 +888 +889 +890 +891 +892 +893 +894 +895 +896 +897 +898 +899 +900 +901 +902 +903 +904 +905 +906 +907 +908 +909 +910 +911 +912 +913 +914 +915 +916 +917 +918 +919 +920 +921 +922 +923 +924 +925 +926 +927 +928 +929 +930 +931 +932 +933 +934 +935 +936 +937 +938 +939 +940 +941 +942 +943 +944 +945 +946 +947 +948 +949 +950 +951 +952 +953 +954 +955 +956 +957 +958 +959 +960 +961 +962 +963 +964 +965 +966 +967 +968 +969 +970 +971 +972 +973 +974 +975 +976 +977 +978 +979 +980 +981 +982 +983 +984 +985 +986 +987 +988 +989 +990 +991 +992 +993 +994 +995 +996 +997 +998 +999 +1000 +1001 +1002 +1003 +1004 +1005 +1006 +1007 +1008 +1009 +1010 +1011 +1012 +1013 +1014 +1015 +1016 +1017 +1018 +1019 +1020 +1021 +1022 +1023 +1024 +1025 +1026 +1027 +1028 +1029 +1030 +1031 +1032 +1033 +1034 +1035 +1036 +1037 +1038 +1039 +1040 +1041 +1042 +1043 +1044 +1045 +1046 +1047 +1048 +1049 +1050 +1051 +1052 +1053 +1054 +1055 +1056 +1057 +1058 +1059 +1060 +1061 +1062 +1063 +1064 +1065 +1066 +1067 +1068 +1069 +1070 +1071 +1072 +1073 +1074 +1075 +1076 +1077 +1078 +1079 +1080 +1081 +1082 +1083 +1084 +1085 +1086 +1087 +1088 +1089 +1090 +1091 +1092 +1093 +1094 +1095 +1096 +1097 +1098 +1099 +1100 +1101 +1102 +1103 +1104 +1105 +1106 +1107 +1108 +1109 +1110 +1111 +1112 +1113 +1114 +1115 +1116 +1117 +1118 +1119 +1120 +1121 +1122 +1123 +1124 +1125 +1126 +1127 +1128 +1129 +1130 +1131 +1132 +1133 +1134 +1135 +1136 +1137 +1138 +1139 +1140 +1141 +1142 +1143 +1144 +1145 +1146 +1147 +1148 +1149 +1150 +1151 +1152 +1153 +1154 +1155 +1156 +1157 +1158 +1159 +1160 +1161 +1162 +1163 +1164 +1165 +1166 +1167 +1168 +1169 +1170 +1171 +1172 +1173 +1174 +1175 +1176 +1177 +1178 +1179 +1180 +1181 +1182 +1183 +1184 +1185 +1186 +1187 +1188 +1189 +1190 +1191 +1192 +1193 +1194 +1195 +1196 +1197 +1198 +1199 +1200 +1201 +1202 +1203 +1204 +1205 +1206 +1207 +1208 +1209 +1210 +1211 +1212 +1213 +1214 +1215 +1216 +1217 +1218 +1219 +1220 +1221 +1222 +1223 +1224 +1225 +1226 +1227 +1228 +1229 +1230 +1231 +1232 +1233 +1234 +1235 +1236 +1237 +1238 +1239 +1240 +1241 +1242 +1243 +1244 +1245 +1246 +1247 +1248 +1249 +1250 +1251 +1252 +1253 +1254 +1255 +1256 +1257 +1258 +1259 +1260 +1261 +1262 +1263 +1264 +1265 +1266 +1267 +1268 +1269 +1270 +1271 +1272 +1273 +1274 +1275 +1276 +1277 +1278 +1279 +1280 +1281 +1282 +1283 +1284 +1285 +1286 +1287 +1288 +1289 +1290 +1291 +1292 +1293 +1294 +1295 +1296 +1297 +1298 +1299 +1300 +1301 +1302 +1303 +1304 +1305 +1306 +1307 +1308 +1309 +1310 +1311 +1312 +1313 +1314 +1315 +1316 +1317 +1318 +1319 +1320 +1321 +1322 +1323 +1324 +1325 +1326 +1327 +1328 +1329 +1330 +1331 +1332 +1333 +1334 +1335 +1336 +1337 +1338 +1339 +1340 +1341 +1342 +1343 +1344 +1345 +1346 +1347 +1348 +1349 +1350 +1351 +1352 +1353 +1354 +1355 +1356 +1357 +1358 +1359 +1360 +1361 +1362 +1363 +1364 +1365 +1366 +1367 +1368 +1369 +1370 +1371 +1372 +1373 +1374 +1375 +1376 +1377 +1378 +1379 +1380 +1381 +1382 +1383 +1384 +1385 +1386 +1387 +1388 +1389 +1390 +1391 +1392 +1393 +1394 +1395 +1396 +1397 +1398 +1399 +1400 +1401 +1402 +1403 +1404 +1405 +1406 +1407 +1408 +1409 +1410 +1411 +1412 +1413 +1414 +1415 +1416 +1417 +1418 +1419 +1420 +1421 +1422 +1423 +1424 +1425 +1426 +1427 +1428 +1429 +1430 +1431 +1432 +1433 +1434 +1435 +1436 +1437 +1438 +1439 +1440 +1441 +1442 +1443 +1444 +1445 +1446 +1447 +1448 +1449 +1450 +1451 +1452 +1453 +1454 +1455 +1456 +1457 +1458 +1459 +1460 +1461 +1462 +1463 +1464 +1465 +1466 +1467 +1468 +1469 +1470 +1471 +1472 +1473 +1474 +1475 +1476 +1477 +1478 +1479 +1480 +1481 +1482 +1483 +1484 +1485 +1486 +1487 +1488 +1489 +1490 +1491 +1492 +1493 +1494 +1495 +1496 +1497 +1498 +1499 +1500 +1501 +1502 +1503 +1504 +1505 +1506 +1507 +1508 +1509 +1510 +1511 +1512 +1513 +1514 +1515 +1516 +1517 +1518 +1519 +1520 +1521 +1522 +1523 +1524 +1525 +1526 +1527 +1528 +1529 +1530 +1531 +1532 +1533 +1534 +1535 +1536 +1537 +1538 +1539 +1540 +1541 +1542 +1543 +1544 +1545 +1546 +1547 +1548 +1549 +1550 +1551 +1552 +1553 +1554 +1555 +1556 +1557 +1558 +1559 +1560 +1561 +1562 +1563 +1564 +1565 +1566 +1567 +1568 +1569 +1570 +1571 +1572 +1573 +1574 +1575 +1576 +1577 +1578 +1579 +1580 +1581 +1582 +1583 +1584 +1585 +1586 +1587 +1588 +1589 +1590 +1591 +1592 +1593 +1594 +1595 +1596 +1597 +1598 +1599 +1600 +1601 +1602 +1603 +1604 +1605 +1606 +1607 +1608 +1609 +1610 +1611 +1612 +1613 +1614 +1615 +1616 +1617 +1618 +1619 +1620 +1621 +1622 +1623 +1624 +1625 +1626 +1627 +1628 +1629 +1630 +1631 +1632 +1633 +1634 +1635 +1636 +1637 +1638 +1639 +1640 +1641 +1642 +1643 +1644 +1645 +1646 +1647 +1648 +1649 +1650 +1651 +1652 +1653 +1654 +1655 +1656 +1657 +1658 +1659 +1660 +1661 +1662 +1663 +1664 +1665 +1666 +1667 +1668 +1669 +1670 +1671 +1672 +1673 +1674 +1675 +1676 +1677 +1678 +1679 +1680 +1681 +1682 +1683 +1684 +1685 +1686 +1687 +1688 +1689 +1690 +1691 +1692 +1693 +1694 +1695 +1696 +1697 +1698 +1699 +1700 +1701 +1702 +1703 +1704 +1705 +1706 +1707 +1708 +1709 +1710 +1711 +1712 +1713 +1714 +1715 +1716 +1717 +1718 +1719 +1720 +1721 +1722 +1723 +1724 +1725 +1726 +1727 +1728 +1729 +1730 +1731 +1732 +1733 +1734 +1735 +1736 +1737 +1738 +1739 +1740 +1741 +1742 +1743 +1744 +1745 +1746 +1747 +1748 +1749 +1750 +1751 +1752 +1753 +1754 +1755 +1756 +1757 +1758 +1759 +1760 +1761 +1762 +1763 +1764 +1765 +1766 +1767 +1768 +1769 +1770 +1771 +1772 +1773 +1774 +1775 +1776 +1777 +1778 +1779 +1780 +1781 +1782 +1783 +1784 +1785 +1786 +1787 +1788 +1789 +1790 +1791 +1792 +1793 +1794 +1795 +1796 +1797 +1798 +1799 +1800 +1801 +1802 +1803 +1804 +1805 +1806 +1807 +1808 +1809 +1810 +1811 +1812 +1813 +1814 +1815 +1816 +1817 +1818 +1819 +1820 +1821 +1822 +1823 +1824 +1825 +1826 +1827 +1828 +1829 +1830 +1831 +1832 +1833 +1834 +1835 +1836 +1837 +1838 +1839 +1840 +1841 +1842 +1843 +1844 +1845 +1846 +1847 +1848 +1849 +1850 +1851 +1852 +1853 +1854 +1855 +1856 +1857 +1858 +1859 +1860 +1861 +1862 +1863 +1864 +1865 +1866 +1867 +1868 +1869 +1870 +1871 +1872 +1873 +1874 +1875 +1876 +1877 +1878 +1879 +1880 +1881 +1882 +1883 +1884 +1885 +1886 +1887 +1888 +1889 +1890 +1891 +1892 +1893 +1894 +1895 +1896 +1897 +1898 +1899 +1900 +1901 +1902 +1903 +1904 +1905 +1906 +1907 +1908 +1909 +1910 +1911 +1912 +1913 +1914 +1915 +1916 +1917 +1918 +1919 +1920 +1921 +1922 +1923 +1924 +1925 +1926 +1927 +1928 +1929 +1930 +1931 +1932 +1933 +1934 +1935 +1936 +1937 +1938 +1939 +1940 +1941 +1942 +1943 +1944 +1945 +1946 +1947 +1948 +1949 +1950 +1951 +1952 +1953 +1954 +1955 +1956 +1957 +1958 +1959 +1960 +1961 +1962 +1963 +1964 +1965 +1966 +1967 +1968 +1969 +1970 +1971 +1972 +1973 +1974 +1975 +1976 +1977 +1978 +1979 +1980 +1981 +1982 +1983 +1984 +1985 +1986 +1987 +1988 +1989 +1990 +1991 +1992 +1993 +1994 +1995 +1996 +1997 +1998 +1999 +2000 +2001 +2002 +2003 +2004 +2005 +2006 +2007 +2008 +2009 +2010 +2011 +2012 +2013 +2014 +2015 +2016 +2017 +2018 +2019 +2020 +2021 +2022 +2023 +2024 +2025 +2026 +2027 +2028 +2029 +2030 +2031 +2032 +2033 +2034 +2035 +2036 +2037 +2038 +2039 +2040 +2041 +2042 +2043 +2044 +2045 +2046 +2047 +2048 +2049 +2050 +2051 +2052 +2053 +2054 +2055 +2056 +2057 +2058 +2059 +2060 +2061 +2062 +2063 +2064 +2065 +2066 +2067 +2068 +2069 +2070 +2071 +2072 +2073 +2074 +2075 +2076 +2077 +2078 +2079 +2080 +2081 +2082 +2083 +2084 +2085 +2086 +2087 +2088 +2089 +2090 +2091 +2092 +2093 +2094 +2095 +2096 +2097 +2098 +2099 +2100 +2101 +2102 +2103 +2104 +2105 +2106 +2107 +2108 +2109 +2110 +2111 +2112 +2113 +2114 +2115 +2116 +2117 +2118 +2119 +2120 +2121 +2122 +2123 +2124 +2125 +2126 +2127 +2128 +2129 +2130 +2131 +2132 +2133 +2134 +2135 +2136 +2137 +2138 +2139 +2140 +2141 +2142 +2143 +2144 +2145 +2146 +2147 +2148 +2149 +2150 +2151 +2152 +2153 +2154 +2155 +2156 +2157 +2158 +2159 +2160 +2161 +2162 +2163 +2164 +2165 +2166 +2167 +2168 +2169 +2170 +2171 +2172 +2173 +2174 +2175 +2176 +2177 +2178 +2179 +2180 +2181 +2182 +2183 +2184 +2185 +2186 +2187 +2188 +2189 +2190 +2191 +2192 +2193 +2194 +2195 +2196 +2197 +2198 +2199 +2200 +2201 +2202 +2203 +2204 +2205 +2206 +2207 +2208 +2209 +2210 +2211 +2212 +2213 +2214 +2215 +2216 +2217 +2218 +2219 +2220 +2221 +2222 +2223 +2224 +2225 +2226 +2227 +2228 +2229 +2230 +2231 +2232 +2233 +2234 +2235 +2236 +2237 +2238 +2239 +2240 +2241 +2242 +2243 +2244 +2245 +2246 +2247 +2248 +2249 +2250 +2251 +2252 +2253 +2254 +2255 +2256 +2257 +2258 +2259 +2260 +2261 +2262 +2263 +2264 +2265 +2266 +2267 +2268 +2269 +2270 +2271 +2272 +2273 +2274 +2275 +2276 +2277 +2278 +2279 +2280 +2281 +2282 +2283 +2284 +2285 +2286 +2287 +2288 +2289 +2290 +2291 +2292 +2293 +2294 +2295 +2296 +2297 +2298 +2299 +2300 +2301 +2302 +2303 +2304 +2305 +2306 +2307 +2308 +2309 +2310 +2311 +2312 +2313 +2314 +2315 +2316 +2317 +2318 +2319 +2320 +2321 +2322 +2323 +2324 +2325 +2326 +2327 +2328 +2329 +2330 +2331 +2332 +2333 +2334 +2335 +2336 +2337 +2338 +2339 +2340 +2341 +2342 +2343 +2344 +2345 +2346 +2347 +2348 +2349 +2350 +2351 +2352 +2353 +2354 +2355 +2356 +2357 +2358 +2359 +2360 +2361 +2362 +2363 +2364 +2365 +2366 +2367 +2368 +2369 +2370 +2371 +2372 +2373 +2374 +2375 +2376 +2377 +2378 +2379 +2380 +2381 +2382 +2383 +2384 +2385 +2386 +2387 +2388 +2389 +2390 +2391 +2392 +2393 +2394 +2395 +2396 +2397 +2398 +2399 +2400 +2401 +2402 +2403 +2404 +2405 +2406 +2407 +2408 +2409 +2410 +2411 +2412 +2413 +2414 +2415 +2416 +2417 +2418 +2419 +2420 +2421 +2422 +2423 +2424 +2425 +2426 +2427 +2428 +2429 +2430 +2431 +2432 +2433 +2434 +2435 +2436 +2437 +2438 +2439 +2440 +2441 +2442 +2443 +2444 +2445 +2446 +2447 +2448 +2449 +2450 +2451 +2452 +2453 +2454 +2455 +2456 +2457 +2458 +2459 +2460 +2461 +2462 +2463 +2464 +2465 +2466 +2467 +2468 +2469 +2470 +2471 +2472 +2473 +2474 +2475 +2476 +2477 +2478 +2479 +2480 +2481 +2482 +2483 +2484 +2485 +2486 +2487 +2488 +2489 +2490 +2491 +2492 +2493 +2494 +2495 +2496 +2497 +2498 +2499 +2500 +2501 +2502 +2503 +2504 +2505 +2506 +2507 +2508 +2509 +2510 +2511 +2512 +2513 +2514 +2515 +2516 +2517 +2518 +2519 +2520 +2521 +2522 +2523 +2524 +2525 +2526 +2527 +2528 +2529 +2530 +2531 +2532 +2533 +2534 +2535 +2536 +2537 +2538 +2539 +2540 +2541 +2542 +2543 +2544 +2545 +2546 +2547 +2548 +2549 +2550 +2551 +2552 +2553 +2554 +2555 +2556 +2557 +2558 +2559 +2560 +2561 +2562 +2563 +2564 +2565 +2566 +2567 +2568 +2569 +2570 +2571 +2572 +2573 +2574 +2575 +2576 +2577 +2578 +2579 +2580 +2581 +2582 +2583 +2584 +2585 +2586 +2587 +2588 +2589 +2590 +2591 +2592 +2593 +2594 +2595 +2596 +2597 +2598 +2599 +2600 +2601 +2602 +2603 +2604 +2605 +2606 +2607 +2608 +2609 +2610 +2611 +2612 +2613 +2614 +2615 +2616 +2617 +2618 +2619 +2620 +2621 +2622 +2623 +2624 +2625 +2626 +2627 +2628 +2629 +2630 +2631 +2632 +2633 +2634 +2635 +2636 +2637 +2638 +2639 +2640 +2641 +2642 +2643 +2644 +2645 +2646 +2647 +2648 +2649 +2650 +2651 +2652 +2653 +2654 +2655 +2656 +2657 +2658 +2659 +2660 +2661 +2662 +2663 +2664 +2665 +2666 +2667 +2668 +2669 +2670 +2671 +2672 +2673 +2674 +2675 +2676 +2677 +2678 +2679 +2680 +2681 +2682 +2683 +2684 +2685 +2686 +2687 +2688 +2689 +2690 +2691 +2692 +2693 +2694 +2695 +2696 +2697 +2698 +2699 +2700 +2701 +2702 +2703 +2704 +2705 +2706 +2707 +2708 +2709 +2710 +2711 +2712 +2713 +2714 +2715 +2716 +2717 +2718 +2719 +2720 +2721 +2722 +2723 +2724 +2725 +2726 +2727 +2728 +2729 +2730 +2731 +2732 +2733 +2734 +2735 +2736 +2737 +2738 +2739 +2740 +2741 +2742 +2743 +2744 +2745 +2746 +2747 +2748 +2749 +2750 +2751 +2752 +2753 +2754 +2755 +2756 +2757 +2758 +2759 +2760 +2761 +2762 +2763 +2764 +2765 +2766 +2767 +2768 +2769 +2770 +2771 +2772 +2773 +2774 +2775 +2776 +2777 +2778 +2779 +2780 +2781 +2782 +2783 +2784 +2785 +2786 +2787 +2788 +2789 +2790 +2791 +2792 +2793 +2794 +2795 +2796 +2797 +2798 +2799 +2800 +2801 +2802 +2803 +2804 +2805 +2806 +2807 +2808 +2809 +2810 +2811 +2812 +2813 +2814 +2815 +2816 +2817 +2818 +2819 +2820 +2821 +2822 +2823 +2824 +2825 +2826 +2827 +2828 +2829 +2830 +2831 +2832 +2833 +2834 +2835 +2836 +2837 +2838 +2839 +2840 +2841 +2842 +2843 +2844 +2845 +2846 +2847 +2848 +2849 +2850 +2851 +2852 +2853 +2854 +2855 +2856 +2857 +2858 +2859 +2860 +2861 +2862 +2863 +2864 +2865 +2866 +2867 +2868 +2869 +2870 +2871 +2872 +2873 +2874 +2875 +2876 +2877 +2878 +2879 +2880 +2881 +2882 +2883 +2884 +2885 +2886 +2887 +2888 +2889 +2890 +2891 +2892 +2893 +2894 +2895 +2896 +2897 +2898 +2899 +2900 +2901 +2902 +2903 +2904 +2905 +2906 +2907 +2908 +2909 +2910 +2911 +2912 +2913 +2914 +2915 +2916 +2917 +2918 +2919 +2920 +2921 +2922 +2923 +2924 +2925 +2926 +2927 +2928 +2929 +2930 +2931 +2932 +2933 +2934 +2935 +2936 +2937 +2938 +2939 +2940 +2941 +2942 +2943 +2944 +2945 +2946 +2947 +2948 +2949 +2950 +2951 +2952 +2953 +2954 +2955 +2956 +2957 +2958 +2959 +2960 +2961 +2962 +2963 +2964 +2965 +2966 +2967 +2968 +2969 +2970 +2971 +2972 +2973 +2974 +2975 +2976 +2977 +2978 +2979 +2980 +2981 +2982 +2983 +2984 +2985 +2986 +2987 +2988 +2989 +2990 +2991 +2992 +2993 +2994 +2995 +2996 +2997 +2998 +2999 +3000 + diff --git a/src/common/io/snapshots/mehari__common__io__std__test__open_read_maybe_gz@14kb.txt.snap b/src/common/io/snapshots/mehari__common__io__std__test__open_read_maybe_gz@14kb.txt.snap new file mode 100644 index 00000000..4c5fc901 --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__std__test__open_read_maybe_gz@14kb.txt.snap @@ -0,0 +1,3005 @@ +--- +source: src/common/io/std.rs +expression: "String::from_utf8(buf)?" +--- +1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +197 +198 +199 +200 +201 +202 +203 +204 +205 +206 +207 +208 +209 +210 +211 +212 +213 +214 +215 +216 +217 +218 +219 +220 +221 +222 +223 +224 +225 +226 +227 +228 +229 +230 +231 +232 +233 +234 +235 +236 +237 +238 +239 +240 +241 +242 +243 +244 +245 +246 +247 +248 +249 +250 +251 +252 +253 +254 +255 +256 +257 +258 +259 +260 +261 +262 +263 +264 +265 +266 +267 +268 +269 +270 +271 +272 +273 +274 +275 +276 +277 +278 +279 +280 +281 +282 +283 +284 +285 +286 +287 +288 +289 +290 +291 +292 +293 +294 +295 +296 +297 +298 +299 +300 +301 +302 +303 +304 +305 +306 +307 +308 +309 +310 +311 +312 +313 +314 +315 +316 +317 +318 +319 +320 +321 +322 +323 +324 +325 +326 +327 +328 +329 +330 +331 +332 +333 +334 +335 +336 +337 +338 +339 +340 +341 +342 +343 +344 +345 +346 +347 +348 +349 +350 +351 +352 +353 +354 +355 +356 +357 +358 +359 +360 +361 +362 +363 +364 +365 +366 +367 +368 +369 +370 +371 +372 +373 +374 +375 +376 +377 +378 +379 +380 +381 +382 +383 +384 +385 +386 +387 +388 +389 +390 +391 +392 +393 +394 +395 +396 +397 +398 +399 +400 +401 +402 +403 +404 +405 +406 +407 +408 +409 +410 +411 +412 +413 +414 +415 +416 +417 +418 +419 +420 +421 +422 +423 +424 +425 +426 +427 +428 +429 +430 +431 +432 +433 +434 +435 +436 +437 +438 +439 +440 +441 +442 +443 +444 +445 +446 +447 +448 +449 +450 +451 +452 +453 +454 +455 +456 +457 +458 +459 +460 +461 +462 +463 +464 +465 +466 +467 +468 +469 +470 +471 +472 +473 +474 +475 +476 +477 +478 +479 +480 +481 +482 +483 +484 +485 +486 +487 +488 +489 +490 +491 +492 +493 +494 +495 +496 +497 +498 +499 +500 +501 +502 +503 +504 +505 +506 +507 +508 +509 +510 +511 +512 +513 +514 +515 +516 +517 +518 +519 +520 +521 +522 +523 +524 +525 +526 +527 +528 +529 +530 +531 +532 +533 +534 +535 +536 +537 +538 +539 +540 +541 +542 +543 +544 +545 +546 +547 +548 +549 +550 +551 +552 +553 +554 +555 +556 +557 +558 +559 +560 +561 +562 +563 +564 +565 +566 +567 +568 +569 +570 +571 +572 +573 +574 +575 +576 +577 +578 +579 +580 +581 +582 +583 +584 +585 +586 +587 +588 +589 +590 +591 +592 +593 +594 +595 +596 +597 +598 +599 +600 +601 +602 +603 +604 +605 +606 +607 +608 +609 +610 +611 +612 +613 +614 +615 +616 +617 +618 +619 +620 +621 +622 +623 +624 +625 +626 +627 +628 +629 +630 +631 +632 +633 +634 +635 +636 +637 +638 +639 +640 +641 +642 +643 +644 +645 +646 +647 +648 +649 +650 +651 +652 +653 +654 +655 +656 +657 +658 +659 +660 +661 +662 +663 +664 +665 +666 +667 +668 +669 +670 +671 +672 +673 +674 +675 +676 +677 +678 +679 +680 +681 +682 +683 +684 +685 +686 +687 +688 +689 +690 +691 +692 +693 +694 +695 +696 +697 +698 +699 +700 +701 +702 +703 +704 +705 +706 +707 +708 +709 +710 +711 +712 +713 +714 +715 +716 +717 +718 +719 +720 +721 +722 +723 +724 +725 +726 +727 +728 +729 +730 +731 +732 +733 +734 +735 +736 +737 +738 +739 +740 +741 +742 +743 +744 +745 +746 +747 +748 +749 +750 +751 +752 +753 +754 +755 +756 +757 +758 +759 +760 +761 +762 +763 +764 +765 +766 +767 +768 +769 +770 +771 +772 +773 +774 +775 +776 +777 +778 +779 +780 +781 +782 +783 +784 +785 +786 +787 +788 +789 +790 +791 +792 +793 +794 +795 +796 +797 +798 +799 +800 +801 +802 +803 +804 +805 +806 +807 +808 +809 +810 +811 +812 +813 +814 +815 +816 +817 +818 +819 +820 +821 +822 +823 +824 +825 +826 +827 +828 +829 +830 +831 +832 +833 +834 +835 +836 +837 +838 +839 +840 +841 +842 +843 +844 +845 +846 +847 +848 +849 +850 +851 +852 +853 +854 +855 +856 +857 +858 +859 +860 +861 +862 +863 +864 +865 +866 +867 +868 +869 +870 +871 +872 +873 +874 +875 +876 +877 +878 +879 +880 +881 +882 +883 +884 +885 +886 +887 +888 +889 +890 +891 +892 +893 +894 +895 +896 +897 +898 +899 +900 +901 +902 +903 +904 +905 +906 +907 +908 +909 +910 +911 +912 +913 +914 +915 +916 +917 +918 +919 +920 +921 +922 +923 +924 +925 +926 +927 +928 +929 +930 +931 +932 +933 +934 +935 +936 +937 +938 +939 +940 +941 +942 +943 +944 +945 +946 +947 +948 +949 +950 +951 +952 +953 +954 +955 +956 +957 +958 +959 +960 +961 +962 +963 +964 +965 +966 +967 +968 +969 +970 +971 +972 +973 +974 +975 +976 +977 +978 +979 +980 +981 +982 +983 +984 +985 +986 +987 +988 +989 +990 +991 +992 +993 +994 +995 +996 +997 +998 +999 +1000 +1001 +1002 +1003 +1004 +1005 +1006 +1007 +1008 +1009 +1010 +1011 +1012 +1013 +1014 +1015 +1016 +1017 +1018 +1019 +1020 +1021 +1022 +1023 +1024 +1025 +1026 +1027 +1028 +1029 +1030 +1031 +1032 +1033 +1034 +1035 +1036 +1037 +1038 +1039 +1040 +1041 +1042 +1043 +1044 +1045 +1046 +1047 +1048 +1049 +1050 +1051 +1052 +1053 +1054 +1055 +1056 +1057 +1058 +1059 +1060 +1061 +1062 +1063 +1064 +1065 +1066 +1067 +1068 +1069 +1070 +1071 +1072 +1073 +1074 +1075 +1076 +1077 +1078 +1079 +1080 +1081 +1082 +1083 +1084 +1085 +1086 +1087 +1088 +1089 +1090 +1091 +1092 +1093 +1094 +1095 +1096 +1097 +1098 +1099 +1100 +1101 +1102 +1103 +1104 +1105 +1106 +1107 +1108 +1109 +1110 +1111 +1112 +1113 +1114 +1115 +1116 +1117 +1118 +1119 +1120 +1121 +1122 +1123 +1124 +1125 +1126 +1127 +1128 +1129 +1130 +1131 +1132 +1133 +1134 +1135 +1136 +1137 +1138 +1139 +1140 +1141 +1142 +1143 +1144 +1145 +1146 +1147 +1148 +1149 +1150 +1151 +1152 +1153 +1154 +1155 +1156 +1157 +1158 +1159 +1160 +1161 +1162 +1163 +1164 +1165 +1166 +1167 +1168 +1169 +1170 +1171 +1172 +1173 +1174 +1175 +1176 +1177 +1178 +1179 +1180 +1181 +1182 +1183 +1184 +1185 +1186 +1187 +1188 +1189 +1190 +1191 +1192 +1193 +1194 +1195 +1196 +1197 +1198 +1199 +1200 +1201 +1202 +1203 +1204 +1205 +1206 +1207 +1208 +1209 +1210 +1211 +1212 +1213 +1214 +1215 +1216 +1217 +1218 +1219 +1220 +1221 +1222 +1223 +1224 +1225 +1226 +1227 +1228 +1229 +1230 +1231 +1232 +1233 +1234 +1235 +1236 +1237 +1238 +1239 +1240 +1241 +1242 +1243 +1244 +1245 +1246 +1247 +1248 +1249 +1250 +1251 +1252 +1253 +1254 +1255 +1256 +1257 +1258 +1259 +1260 +1261 +1262 +1263 +1264 +1265 +1266 +1267 +1268 +1269 +1270 +1271 +1272 +1273 +1274 +1275 +1276 +1277 +1278 +1279 +1280 +1281 +1282 +1283 +1284 +1285 +1286 +1287 +1288 +1289 +1290 +1291 +1292 +1293 +1294 +1295 +1296 +1297 +1298 +1299 +1300 +1301 +1302 +1303 +1304 +1305 +1306 +1307 +1308 +1309 +1310 +1311 +1312 +1313 +1314 +1315 +1316 +1317 +1318 +1319 +1320 +1321 +1322 +1323 +1324 +1325 +1326 +1327 +1328 +1329 +1330 +1331 +1332 +1333 +1334 +1335 +1336 +1337 +1338 +1339 +1340 +1341 +1342 +1343 +1344 +1345 +1346 +1347 +1348 +1349 +1350 +1351 +1352 +1353 +1354 +1355 +1356 +1357 +1358 +1359 +1360 +1361 +1362 +1363 +1364 +1365 +1366 +1367 +1368 +1369 +1370 +1371 +1372 +1373 +1374 +1375 +1376 +1377 +1378 +1379 +1380 +1381 +1382 +1383 +1384 +1385 +1386 +1387 +1388 +1389 +1390 +1391 +1392 +1393 +1394 +1395 +1396 +1397 +1398 +1399 +1400 +1401 +1402 +1403 +1404 +1405 +1406 +1407 +1408 +1409 +1410 +1411 +1412 +1413 +1414 +1415 +1416 +1417 +1418 +1419 +1420 +1421 +1422 +1423 +1424 +1425 +1426 +1427 +1428 +1429 +1430 +1431 +1432 +1433 +1434 +1435 +1436 +1437 +1438 +1439 +1440 +1441 +1442 +1443 +1444 +1445 +1446 +1447 +1448 +1449 +1450 +1451 +1452 +1453 +1454 +1455 +1456 +1457 +1458 +1459 +1460 +1461 +1462 +1463 +1464 +1465 +1466 +1467 +1468 +1469 +1470 +1471 +1472 +1473 +1474 +1475 +1476 +1477 +1478 +1479 +1480 +1481 +1482 +1483 +1484 +1485 +1486 +1487 +1488 +1489 +1490 +1491 +1492 +1493 +1494 +1495 +1496 +1497 +1498 +1499 +1500 +1501 +1502 +1503 +1504 +1505 +1506 +1507 +1508 +1509 +1510 +1511 +1512 +1513 +1514 +1515 +1516 +1517 +1518 +1519 +1520 +1521 +1522 +1523 +1524 +1525 +1526 +1527 +1528 +1529 +1530 +1531 +1532 +1533 +1534 +1535 +1536 +1537 +1538 +1539 +1540 +1541 +1542 +1543 +1544 +1545 +1546 +1547 +1548 +1549 +1550 +1551 +1552 +1553 +1554 +1555 +1556 +1557 +1558 +1559 +1560 +1561 +1562 +1563 +1564 +1565 +1566 +1567 +1568 +1569 +1570 +1571 +1572 +1573 +1574 +1575 +1576 +1577 +1578 +1579 +1580 +1581 +1582 +1583 +1584 +1585 +1586 +1587 +1588 +1589 +1590 +1591 +1592 +1593 +1594 +1595 +1596 +1597 +1598 +1599 +1600 +1601 +1602 +1603 +1604 +1605 +1606 +1607 +1608 +1609 +1610 +1611 +1612 +1613 +1614 +1615 +1616 +1617 +1618 +1619 +1620 +1621 +1622 +1623 +1624 +1625 +1626 +1627 +1628 +1629 +1630 +1631 +1632 +1633 +1634 +1635 +1636 +1637 +1638 +1639 +1640 +1641 +1642 +1643 +1644 +1645 +1646 +1647 +1648 +1649 +1650 +1651 +1652 +1653 +1654 +1655 +1656 +1657 +1658 +1659 +1660 +1661 +1662 +1663 +1664 +1665 +1666 +1667 +1668 +1669 +1670 +1671 +1672 +1673 +1674 +1675 +1676 +1677 +1678 +1679 +1680 +1681 +1682 +1683 +1684 +1685 +1686 +1687 +1688 +1689 +1690 +1691 +1692 +1693 +1694 +1695 +1696 +1697 +1698 +1699 +1700 +1701 +1702 +1703 +1704 +1705 +1706 +1707 +1708 +1709 +1710 +1711 +1712 +1713 +1714 +1715 +1716 +1717 +1718 +1719 +1720 +1721 +1722 +1723 +1724 +1725 +1726 +1727 +1728 +1729 +1730 +1731 +1732 +1733 +1734 +1735 +1736 +1737 +1738 +1739 +1740 +1741 +1742 +1743 +1744 +1745 +1746 +1747 +1748 +1749 +1750 +1751 +1752 +1753 +1754 +1755 +1756 +1757 +1758 +1759 +1760 +1761 +1762 +1763 +1764 +1765 +1766 +1767 +1768 +1769 +1770 +1771 +1772 +1773 +1774 +1775 +1776 +1777 +1778 +1779 +1780 +1781 +1782 +1783 +1784 +1785 +1786 +1787 +1788 +1789 +1790 +1791 +1792 +1793 +1794 +1795 +1796 +1797 +1798 +1799 +1800 +1801 +1802 +1803 +1804 +1805 +1806 +1807 +1808 +1809 +1810 +1811 +1812 +1813 +1814 +1815 +1816 +1817 +1818 +1819 +1820 +1821 +1822 +1823 +1824 +1825 +1826 +1827 +1828 +1829 +1830 +1831 +1832 +1833 +1834 +1835 +1836 +1837 +1838 +1839 +1840 +1841 +1842 +1843 +1844 +1845 +1846 +1847 +1848 +1849 +1850 +1851 +1852 +1853 +1854 +1855 +1856 +1857 +1858 +1859 +1860 +1861 +1862 +1863 +1864 +1865 +1866 +1867 +1868 +1869 +1870 +1871 +1872 +1873 +1874 +1875 +1876 +1877 +1878 +1879 +1880 +1881 +1882 +1883 +1884 +1885 +1886 +1887 +1888 +1889 +1890 +1891 +1892 +1893 +1894 +1895 +1896 +1897 +1898 +1899 +1900 +1901 +1902 +1903 +1904 +1905 +1906 +1907 +1908 +1909 +1910 +1911 +1912 +1913 +1914 +1915 +1916 +1917 +1918 +1919 +1920 +1921 +1922 +1923 +1924 +1925 +1926 +1927 +1928 +1929 +1930 +1931 +1932 +1933 +1934 +1935 +1936 +1937 +1938 +1939 +1940 +1941 +1942 +1943 +1944 +1945 +1946 +1947 +1948 +1949 +1950 +1951 +1952 +1953 +1954 +1955 +1956 +1957 +1958 +1959 +1960 +1961 +1962 +1963 +1964 +1965 +1966 +1967 +1968 +1969 +1970 +1971 +1972 +1973 +1974 +1975 +1976 +1977 +1978 +1979 +1980 +1981 +1982 +1983 +1984 +1985 +1986 +1987 +1988 +1989 +1990 +1991 +1992 +1993 +1994 +1995 +1996 +1997 +1998 +1999 +2000 +2001 +2002 +2003 +2004 +2005 +2006 +2007 +2008 +2009 +2010 +2011 +2012 +2013 +2014 +2015 +2016 +2017 +2018 +2019 +2020 +2021 +2022 +2023 +2024 +2025 +2026 +2027 +2028 +2029 +2030 +2031 +2032 +2033 +2034 +2035 +2036 +2037 +2038 +2039 +2040 +2041 +2042 +2043 +2044 +2045 +2046 +2047 +2048 +2049 +2050 +2051 +2052 +2053 +2054 +2055 +2056 +2057 +2058 +2059 +2060 +2061 +2062 +2063 +2064 +2065 +2066 +2067 +2068 +2069 +2070 +2071 +2072 +2073 +2074 +2075 +2076 +2077 +2078 +2079 +2080 +2081 +2082 +2083 +2084 +2085 +2086 +2087 +2088 +2089 +2090 +2091 +2092 +2093 +2094 +2095 +2096 +2097 +2098 +2099 +2100 +2101 +2102 +2103 +2104 +2105 +2106 +2107 +2108 +2109 +2110 +2111 +2112 +2113 +2114 +2115 +2116 +2117 +2118 +2119 +2120 +2121 +2122 +2123 +2124 +2125 +2126 +2127 +2128 +2129 +2130 +2131 +2132 +2133 +2134 +2135 +2136 +2137 +2138 +2139 +2140 +2141 +2142 +2143 +2144 +2145 +2146 +2147 +2148 +2149 +2150 +2151 +2152 +2153 +2154 +2155 +2156 +2157 +2158 +2159 +2160 +2161 +2162 +2163 +2164 +2165 +2166 +2167 +2168 +2169 +2170 +2171 +2172 +2173 +2174 +2175 +2176 +2177 +2178 +2179 +2180 +2181 +2182 +2183 +2184 +2185 +2186 +2187 +2188 +2189 +2190 +2191 +2192 +2193 +2194 +2195 +2196 +2197 +2198 +2199 +2200 +2201 +2202 +2203 +2204 +2205 +2206 +2207 +2208 +2209 +2210 +2211 +2212 +2213 +2214 +2215 +2216 +2217 +2218 +2219 +2220 +2221 +2222 +2223 +2224 +2225 +2226 +2227 +2228 +2229 +2230 +2231 +2232 +2233 +2234 +2235 +2236 +2237 +2238 +2239 +2240 +2241 +2242 +2243 +2244 +2245 +2246 +2247 +2248 +2249 +2250 +2251 +2252 +2253 +2254 +2255 +2256 +2257 +2258 +2259 +2260 +2261 +2262 +2263 +2264 +2265 +2266 +2267 +2268 +2269 +2270 +2271 +2272 +2273 +2274 +2275 +2276 +2277 +2278 +2279 +2280 +2281 +2282 +2283 +2284 +2285 +2286 +2287 +2288 +2289 +2290 +2291 +2292 +2293 +2294 +2295 +2296 +2297 +2298 +2299 +2300 +2301 +2302 +2303 +2304 +2305 +2306 +2307 +2308 +2309 +2310 +2311 +2312 +2313 +2314 +2315 +2316 +2317 +2318 +2319 +2320 +2321 +2322 +2323 +2324 +2325 +2326 +2327 +2328 +2329 +2330 +2331 +2332 +2333 +2334 +2335 +2336 +2337 +2338 +2339 +2340 +2341 +2342 +2343 +2344 +2345 +2346 +2347 +2348 +2349 +2350 +2351 +2352 +2353 +2354 +2355 +2356 +2357 +2358 +2359 +2360 +2361 +2362 +2363 +2364 +2365 +2366 +2367 +2368 +2369 +2370 +2371 +2372 +2373 +2374 +2375 +2376 +2377 +2378 +2379 +2380 +2381 +2382 +2383 +2384 +2385 +2386 +2387 +2388 +2389 +2390 +2391 +2392 +2393 +2394 +2395 +2396 +2397 +2398 +2399 +2400 +2401 +2402 +2403 +2404 +2405 +2406 +2407 +2408 +2409 +2410 +2411 +2412 +2413 +2414 +2415 +2416 +2417 +2418 +2419 +2420 +2421 +2422 +2423 +2424 +2425 +2426 +2427 +2428 +2429 +2430 +2431 +2432 +2433 +2434 +2435 +2436 +2437 +2438 +2439 +2440 +2441 +2442 +2443 +2444 +2445 +2446 +2447 +2448 +2449 +2450 +2451 +2452 +2453 +2454 +2455 +2456 +2457 +2458 +2459 +2460 +2461 +2462 +2463 +2464 +2465 +2466 +2467 +2468 +2469 +2470 +2471 +2472 +2473 +2474 +2475 +2476 +2477 +2478 +2479 +2480 +2481 +2482 +2483 +2484 +2485 +2486 +2487 +2488 +2489 +2490 +2491 +2492 +2493 +2494 +2495 +2496 +2497 +2498 +2499 +2500 +2501 +2502 +2503 +2504 +2505 +2506 +2507 +2508 +2509 +2510 +2511 +2512 +2513 +2514 +2515 +2516 +2517 +2518 +2519 +2520 +2521 +2522 +2523 +2524 +2525 +2526 +2527 +2528 +2529 +2530 +2531 +2532 +2533 +2534 +2535 +2536 +2537 +2538 +2539 +2540 +2541 +2542 +2543 +2544 +2545 +2546 +2547 +2548 +2549 +2550 +2551 +2552 +2553 +2554 +2555 +2556 +2557 +2558 +2559 +2560 +2561 +2562 +2563 +2564 +2565 +2566 +2567 +2568 +2569 +2570 +2571 +2572 +2573 +2574 +2575 +2576 +2577 +2578 +2579 +2580 +2581 +2582 +2583 +2584 +2585 +2586 +2587 +2588 +2589 +2590 +2591 +2592 +2593 +2594 +2595 +2596 +2597 +2598 +2599 +2600 +2601 +2602 +2603 +2604 +2605 +2606 +2607 +2608 +2609 +2610 +2611 +2612 +2613 +2614 +2615 +2616 +2617 +2618 +2619 +2620 +2621 +2622 +2623 +2624 +2625 +2626 +2627 +2628 +2629 +2630 +2631 +2632 +2633 +2634 +2635 +2636 +2637 +2638 +2639 +2640 +2641 +2642 +2643 +2644 +2645 +2646 +2647 +2648 +2649 +2650 +2651 +2652 +2653 +2654 +2655 +2656 +2657 +2658 +2659 +2660 +2661 +2662 +2663 +2664 +2665 +2666 +2667 +2668 +2669 +2670 +2671 +2672 +2673 +2674 +2675 +2676 +2677 +2678 +2679 +2680 +2681 +2682 +2683 +2684 +2685 +2686 +2687 +2688 +2689 +2690 +2691 +2692 +2693 +2694 +2695 +2696 +2697 +2698 +2699 +2700 +2701 +2702 +2703 +2704 +2705 +2706 +2707 +2708 +2709 +2710 +2711 +2712 +2713 +2714 +2715 +2716 +2717 +2718 +2719 +2720 +2721 +2722 +2723 +2724 +2725 +2726 +2727 +2728 +2729 +2730 +2731 +2732 +2733 +2734 +2735 +2736 +2737 +2738 +2739 +2740 +2741 +2742 +2743 +2744 +2745 +2746 +2747 +2748 +2749 +2750 +2751 +2752 +2753 +2754 +2755 +2756 +2757 +2758 +2759 +2760 +2761 +2762 +2763 +2764 +2765 +2766 +2767 +2768 +2769 +2770 +2771 +2772 +2773 +2774 +2775 +2776 +2777 +2778 +2779 +2780 +2781 +2782 +2783 +2784 +2785 +2786 +2787 +2788 +2789 +2790 +2791 +2792 +2793 +2794 +2795 +2796 +2797 +2798 +2799 +2800 +2801 +2802 +2803 +2804 +2805 +2806 +2807 +2808 +2809 +2810 +2811 +2812 +2813 +2814 +2815 +2816 +2817 +2818 +2819 +2820 +2821 +2822 +2823 +2824 +2825 +2826 +2827 +2828 +2829 +2830 +2831 +2832 +2833 +2834 +2835 +2836 +2837 +2838 +2839 +2840 +2841 +2842 +2843 +2844 +2845 +2846 +2847 +2848 +2849 +2850 +2851 +2852 +2853 +2854 +2855 +2856 +2857 +2858 +2859 +2860 +2861 +2862 +2863 +2864 +2865 +2866 +2867 +2868 +2869 +2870 +2871 +2872 +2873 +2874 +2875 +2876 +2877 +2878 +2879 +2880 +2881 +2882 +2883 +2884 +2885 +2886 +2887 +2888 +2889 +2890 +2891 +2892 +2893 +2894 +2895 +2896 +2897 +2898 +2899 +2900 +2901 +2902 +2903 +2904 +2905 +2906 +2907 +2908 +2909 +2910 +2911 +2912 +2913 +2914 +2915 +2916 +2917 +2918 +2919 +2920 +2921 +2922 +2923 +2924 +2925 +2926 +2927 +2928 +2929 +2930 +2931 +2932 +2933 +2934 +2935 +2936 +2937 +2938 +2939 +2940 +2941 +2942 +2943 +2944 +2945 +2946 +2947 +2948 +2949 +2950 +2951 +2952 +2953 +2954 +2955 +2956 +2957 +2958 +2959 +2960 +2961 +2962 +2963 +2964 +2965 +2966 +2967 +2968 +2969 +2970 +2971 +2972 +2973 +2974 +2975 +2976 +2977 +2978 +2979 +2980 +2981 +2982 +2983 +2984 +2985 +2986 +2987 +2988 +2989 +2990 +2991 +2992 +2993 +2994 +2995 +2996 +2997 +2998 +2999 +3000 + diff --git a/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_bgzf@14kb.txt.bgz.snap b/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_bgzf@14kb.txt.bgz.snap new file mode 100644 index 00000000..962471d0 --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_bgzf@14kb.txt.bgz.snap @@ -0,0 +1,872 @@ +--- +source: src/common/io/std.rs +expression: "String::from_utf8_lossy(&buffer)" +--- +0000: 31 0A 32 0A 33 0A 34 0A 35 0A 36 0A 37 0A 38 0A 1.2.3.4.5.6.7.8. +0016: 39 0A 31 30 0A 31 31 0A 31 32 0A 31 33 0A 31 34 9.10.11.12.13.14 +0032: 0A 31 35 0A 31 36 0A 31 37 0A 31 38 0A 31 39 0A .15.16.17.18.19. +0048: 32 30 0A 32 31 0A 32 32 0A 32 33 0A 32 34 0A 32 20.21.22.23.24.2 +0064: 35 0A 32 36 0A 32 37 0A 32 38 0A 32 39 0A 33 30 5.26.27.28.29.30 +0080: 0A 33 31 0A 33 32 0A 33 33 0A 33 34 0A 33 35 0A .31.32.33.34.35. +0096: 33 36 0A 33 37 0A 33 38 0A 33 39 0A 34 30 0A 34 36.37.38.39.40.4 +0112: 31 0A 34 32 0A 34 33 0A 34 34 0A 34 35 0A 34 36 1.42.43.44.45.46 +0128: 0A 34 37 0A 34 38 0A 34 39 0A 35 30 0A 35 31 0A .47.48.49.50.51. +0144: 35 32 0A 35 33 0A 35 34 0A 35 35 0A 35 36 0A 35 52.53.54.55.56.5 +0160: 37 0A 35 38 0A 35 39 0A 36 30 0A 36 31 0A 36 32 7.58.59.60.61.62 +0176: 0A 36 33 0A 36 34 0A 36 35 0A 36 36 0A 36 37 0A .63.64.65.66.67. +0192: 36 38 0A 36 39 0A 37 30 0A 37 31 0A 37 32 0A 37 68.69.70.71.72.7 +0208: 33 0A 37 34 0A 37 35 0A 37 36 0A 37 37 0A 37 38 3.74.75.76.77.78 +0224: 0A 37 39 0A 38 30 0A 38 31 0A 38 32 0A 38 33 0A .79.80.81.82.83. +0240: 38 34 0A 38 35 0A 38 36 0A 38 37 0A 38 38 0A 38 84.85.86.87.88.8 +0256: 39 0A 39 30 0A 39 31 0A 39 32 0A 39 33 0A 39 34 9.90.91.92.93.94 +0272: 0A 39 35 0A 39 36 0A 39 37 0A 39 38 0A 39 39 0A .95.96.97.98.99. +0288: 31 30 30 0A 31 30 31 0A 31 30 32 0A 31 30 33 0A 100.101.102.103. +0304: 31 30 34 0A 31 30 35 0A 31 30 36 0A 31 30 37 0A 104.105.106.107. +0320: 31 30 38 0A 31 30 39 0A 31 31 30 0A 31 31 31 0A 108.109.110.111. +0336: 31 31 32 0A 31 31 33 0A 31 31 34 0A 31 31 35 0A 112.113.114.115. +0352: 31 31 36 0A 31 31 37 0A 31 31 38 0A 31 31 39 0A 116.117.118.119. +0368: 31 32 30 0A 31 32 31 0A 31 32 32 0A 31 32 33 0A 120.121.122.123. +0384: 31 32 34 0A 31 32 35 0A 31 32 36 0A 31 32 37 0A 124.125.126.127. +0400: 31 32 38 0A 31 32 39 0A 31 33 30 0A 31 33 31 0A 128.129.130.131. +0416: 31 33 32 0A 31 33 33 0A 31 33 34 0A 31 33 35 0A 132.133.134.135. +0432: 31 33 36 0A 31 33 37 0A 31 33 38 0A 31 33 39 0A 136.137.138.139. +0448: 31 34 30 0A 31 34 31 0A 31 34 32 0A 31 34 33 0A 140.141.142.143. +0464: 31 34 34 0A 31 34 35 0A 31 34 36 0A 31 34 37 0A 144.145.146.147. +0480: 31 34 38 0A 31 34 39 0A 31 35 30 0A 31 35 31 0A 148.149.150.151. +0496: 31 35 32 0A 31 35 33 0A 31 35 34 0A 31 35 35 0A 152.153.154.155. +0512: 31 35 36 0A 31 35 37 0A 31 35 38 0A 31 35 39 0A 156.157.158.159. +0528: 31 36 30 0A 31 36 31 0A 31 36 32 0A 31 36 33 0A 160.161.162.163. +0544: 31 36 34 0A 31 36 35 0A 31 36 36 0A 31 36 37 0A 164.165.166.167. +0560: 31 36 38 0A 31 36 39 0A 31 37 30 0A 31 37 31 0A 168.169.170.171. +0576: 31 37 32 0A 31 37 33 0A 31 37 34 0A 31 37 35 0A 172.173.174.175. +0592: 31 37 36 0A 31 37 37 0A 31 37 38 0A 31 37 39 0A 176.177.178.179. +0608: 31 38 30 0A 31 38 31 0A 31 38 32 0A 31 38 33 0A 180.181.182.183. +0624: 31 38 34 0A 31 38 35 0A 31 38 36 0A 31 38 37 0A 184.185.186.187. +0640: 31 38 38 0A 31 38 39 0A 31 39 30 0A 31 39 31 0A 188.189.190.191. +0656: 31 39 32 0A 31 39 33 0A 31 39 34 0A 31 39 35 0A 192.193.194.195. +0672: 31 39 36 0A 31 39 37 0A 31 39 38 0A 31 39 39 0A 196.197.198.199. +0688: 32 30 30 0A 32 30 31 0A 32 30 32 0A 32 30 33 0A 200.201.202.203. +0704: 32 30 34 0A 32 30 35 0A 32 30 36 0A 32 30 37 0A 204.205.206.207. +0720: 32 30 38 0A 32 30 39 0A 32 31 30 0A 32 31 31 0A 208.209.210.211. +0736: 32 31 32 0A 32 31 33 0A 32 31 34 0A 32 31 35 0A 212.213.214.215. +0752: 32 31 36 0A 32 31 37 0A 32 31 38 0A 32 31 39 0A 216.217.218.219. +0768: 32 32 30 0A 32 32 31 0A 32 32 32 0A 32 32 33 0A 220.221.222.223. +0784: 32 32 34 0A 32 32 35 0A 32 32 36 0A 32 32 37 0A 224.225.226.227. +0800: 32 32 38 0A 32 32 39 0A 32 33 30 0A 32 33 31 0A 228.229.230.231. +0816: 32 33 32 0A 32 33 33 0A 32 33 34 0A 32 33 35 0A 232.233.234.235. +0832: 32 33 36 0A 32 33 37 0A 32 33 38 0A 32 33 39 0A 236.237.238.239. +0848: 32 34 30 0A 32 34 31 0A 32 34 32 0A 32 34 33 0A 240.241.242.243. +0864: 32 34 34 0A 32 34 35 0A 32 34 36 0A 32 34 37 0A 244.245.246.247. +0880: 32 34 38 0A 32 34 39 0A 32 35 30 0A 32 35 31 0A 248.249.250.251. +0896: 32 35 32 0A 32 35 33 0A 32 35 34 0A 32 35 35 0A 252.253.254.255. +0912: 32 35 36 0A 32 35 37 0A 32 35 38 0A 32 35 39 0A 256.257.258.259. +0928: 32 36 30 0A 32 36 31 0A 32 36 32 0A 32 36 33 0A 260.261.262.263. +0944: 32 36 34 0A 32 36 35 0A 32 36 36 0A 32 36 37 0A 264.265.266.267. +0960: 32 36 38 0A 32 36 39 0A 32 37 30 0A 32 37 31 0A 268.269.270.271. +0976: 32 37 32 0A 32 37 33 0A 32 37 34 0A 32 37 35 0A 272.273.274.275. +0992: 32 37 36 0A 32 37 37 0A 32 37 38 0A 32 37 39 0A 276.277.278.279. +1008: 32 38 30 0A 32 38 31 0A 32 38 32 0A 32 38 33 0A 280.281.282.283. +1024: 32 38 34 0A 32 38 35 0A 32 38 36 0A 32 38 37 0A 284.285.286.287. +1040: 32 38 38 0A 32 38 39 0A 32 39 30 0A 32 39 31 0A 288.289.290.291. +1056: 32 39 32 0A 32 39 33 0A 32 39 34 0A 32 39 35 0A 292.293.294.295. +1072: 32 39 36 0A 32 39 37 0A 32 39 38 0A 32 39 39 0A 296.297.298.299. +1088: 33 30 30 0A 33 30 31 0A 33 30 32 0A 33 30 33 0A 300.301.302.303. +1104: 33 30 34 0A 33 30 35 0A 33 30 36 0A 33 30 37 0A 304.305.306.307. +1120: 33 30 38 0A 33 30 39 0A 33 31 30 0A 33 31 31 0A 308.309.310.311. +1136: 33 31 32 0A 33 31 33 0A 33 31 34 0A 33 31 35 0A 312.313.314.315. +1152: 33 31 36 0A 33 31 37 0A 33 31 38 0A 33 31 39 0A 316.317.318.319. +1168: 33 32 30 0A 33 32 31 0A 33 32 32 0A 33 32 33 0A 320.321.322.323. +1184: 33 32 34 0A 33 32 35 0A 33 32 36 0A 33 32 37 0A 324.325.326.327. +1200: 33 32 38 0A 33 32 39 0A 33 33 30 0A 33 33 31 0A 328.329.330.331. +1216: 33 33 32 0A 33 33 33 0A 33 33 34 0A 33 33 35 0A 332.333.334.335. +1232: 33 33 36 0A 33 33 37 0A 33 33 38 0A 33 33 39 0A 336.337.338.339. +1248: 33 34 30 0A 33 34 31 0A 33 34 32 0A 33 34 33 0A 340.341.342.343. +1264: 33 34 34 0A 33 34 35 0A 33 34 36 0A 33 34 37 0A 344.345.346.347. +1280: 33 34 38 0A 33 34 39 0A 33 35 30 0A 33 35 31 0A 348.349.350.351. +1296: 33 35 32 0A 33 35 33 0A 33 35 34 0A 33 35 35 0A 352.353.354.355. +1312: 33 35 36 0A 33 35 37 0A 33 35 38 0A 33 35 39 0A 356.357.358.359. +1328: 33 36 30 0A 33 36 31 0A 33 36 32 0A 33 36 33 0A 360.361.362.363. +1344: 33 36 34 0A 33 36 35 0A 33 36 36 0A 33 36 37 0A 364.365.366.367. +1360: 33 36 38 0A 33 36 39 0A 33 37 30 0A 33 37 31 0A 368.369.370.371. +1376: 33 37 32 0A 33 37 33 0A 33 37 34 0A 33 37 35 0A 372.373.374.375. +1392: 33 37 36 0A 33 37 37 0A 33 37 38 0A 33 37 39 0A 376.377.378.379. +1408: 33 38 30 0A 33 38 31 0A 33 38 32 0A 33 38 33 0A 380.381.382.383. +1424: 33 38 34 0A 33 38 35 0A 33 38 36 0A 33 38 37 0A 384.385.386.387. +1440: 33 38 38 0A 33 38 39 0A 33 39 30 0A 33 39 31 0A 388.389.390.391. +1456: 33 39 32 0A 33 39 33 0A 33 39 34 0A 33 39 35 0A 392.393.394.395. +1472: 33 39 36 0A 33 39 37 0A 33 39 38 0A 33 39 39 0A 396.397.398.399. +1488: 34 30 30 0A 34 30 31 0A 34 30 32 0A 34 30 33 0A 400.401.402.403. +1504: 34 30 34 0A 34 30 35 0A 34 30 36 0A 34 30 37 0A 404.405.406.407. +1520: 34 30 38 0A 34 30 39 0A 34 31 30 0A 34 31 31 0A 408.409.410.411. +1536: 34 31 32 0A 34 31 33 0A 34 31 34 0A 34 31 35 0A 412.413.414.415. +1552: 34 31 36 0A 34 31 37 0A 34 31 38 0A 34 31 39 0A 416.417.418.419. +1568: 34 32 30 0A 34 32 31 0A 34 32 32 0A 34 32 33 0A 420.421.422.423. +1584: 34 32 34 0A 34 32 35 0A 34 32 36 0A 34 32 37 0A 424.425.426.427. +1600: 34 32 38 0A 34 32 39 0A 34 33 30 0A 34 33 31 0A 428.429.430.431. +1616: 34 33 32 0A 34 33 33 0A 34 33 34 0A 34 33 35 0A 432.433.434.435. +1632: 34 33 36 0A 34 33 37 0A 34 33 38 0A 34 33 39 0A 436.437.438.439. +1648: 34 34 30 0A 34 34 31 0A 34 34 32 0A 34 34 33 0A 440.441.442.443. +1664: 34 34 34 0A 34 34 35 0A 34 34 36 0A 34 34 37 0A 444.445.446.447. +1680: 34 34 38 0A 34 34 39 0A 34 35 30 0A 34 35 31 0A 448.449.450.451. +1696: 34 35 32 0A 34 35 33 0A 34 35 34 0A 34 35 35 0A 452.453.454.455. +1712: 34 35 36 0A 34 35 37 0A 34 35 38 0A 34 35 39 0A 456.457.458.459. +1728: 34 36 30 0A 34 36 31 0A 34 36 32 0A 34 36 33 0A 460.461.462.463. +1744: 34 36 34 0A 34 36 35 0A 34 36 36 0A 34 36 37 0A 464.465.466.467. +1760: 34 36 38 0A 34 36 39 0A 34 37 30 0A 34 37 31 0A 468.469.470.471. +1776: 34 37 32 0A 34 37 33 0A 34 37 34 0A 34 37 35 0A 472.473.474.475. +1792: 34 37 36 0A 34 37 37 0A 34 37 38 0A 34 37 39 0A 476.477.478.479. +1808: 34 38 30 0A 34 38 31 0A 34 38 32 0A 34 38 33 0A 480.481.482.483. +1824: 34 38 34 0A 34 38 35 0A 34 38 36 0A 34 38 37 0A 484.485.486.487. +1840: 34 38 38 0A 34 38 39 0A 34 39 30 0A 34 39 31 0A 488.489.490.491. +1856: 34 39 32 0A 34 39 33 0A 34 39 34 0A 34 39 35 0A 492.493.494.495. +1872: 34 39 36 0A 34 39 37 0A 34 39 38 0A 34 39 39 0A 496.497.498.499. +1888: 35 30 30 0A 35 30 31 0A 35 30 32 0A 35 30 33 0A 500.501.502.503. +1904: 35 30 34 0A 35 30 35 0A 35 30 36 0A 35 30 37 0A 504.505.506.507. +1920: 35 30 38 0A 35 30 39 0A 35 31 30 0A 35 31 31 0A 508.509.510.511. +1936: 35 31 32 0A 35 31 33 0A 35 31 34 0A 35 31 35 0A 512.513.514.515. +1952: 35 31 36 0A 35 31 37 0A 35 31 38 0A 35 31 39 0A 516.517.518.519. +1968: 35 32 30 0A 35 32 31 0A 35 32 32 0A 35 32 33 0A 520.521.522.523. +1984: 35 32 34 0A 35 32 35 0A 35 32 36 0A 35 32 37 0A 524.525.526.527. +2000: 35 32 38 0A 35 32 39 0A 35 33 30 0A 35 33 31 0A 528.529.530.531. +2016: 35 33 32 0A 35 33 33 0A 35 33 34 0A 35 33 35 0A 532.533.534.535. +2032: 35 33 36 0A 35 33 37 0A 35 33 38 0A 35 33 39 0A 536.537.538.539. +2048: 35 34 30 0A 35 34 31 0A 35 34 32 0A 35 34 33 0A 540.541.542.543. +2064: 35 34 34 0A 35 34 35 0A 35 34 36 0A 35 34 37 0A 544.545.546.547. +2080: 35 34 38 0A 35 34 39 0A 35 35 30 0A 35 35 31 0A 548.549.550.551. +2096: 35 35 32 0A 35 35 33 0A 35 35 34 0A 35 35 35 0A 552.553.554.555. +2112: 35 35 36 0A 35 35 37 0A 35 35 38 0A 35 35 39 0A 556.557.558.559. +2128: 35 36 30 0A 35 36 31 0A 35 36 32 0A 35 36 33 0A 560.561.562.563. +2144: 35 36 34 0A 35 36 35 0A 35 36 36 0A 35 36 37 0A 564.565.566.567. +2160: 35 36 38 0A 35 36 39 0A 35 37 30 0A 35 37 31 0A 568.569.570.571. +2176: 35 37 32 0A 35 37 33 0A 35 37 34 0A 35 37 35 0A 572.573.574.575. +2192: 35 37 36 0A 35 37 37 0A 35 37 38 0A 35 37 39 0A 576.577.578.579. +2208: 35 38 30 0A 35 38 31 0A 35 38 32 0A 35 38 33 0A 580.581.582.583. +2224: 35 38 34 0A 35 38 35 0A 35 38 36 0A 35 38 37 0A 584.585.586.587. +2240: 35 38 38 0A 35 38 39 0A 35 39 30 0A 35 39 31 0A 588.589.590.591. +2256: 35 39 32 0A 35 39 33 0A 35 39 34 0A 35 39 35 0A 592.593.594.595. +2272: 35 39 36 0A 35 39 37 0A 35 39 38 0A 35 39 39 0A 596.597.598.599. +2288: 36 30 30 0A 36 30 31 0A 36 30 32 0A 36 30 33 0A 600.601.602.603. +2304: 36 30 34 0A 36 30 35 0A 36 30 36 0A 36 30 37 0A 604.605.606.607. +2320: 36 30 38 0A 36 30 39 0A 36 31 30 0A 36 31 31 0A 608.609.610.611. +2336: 36 31 32 0A 36 31 33 0A 36 31 34 0A 36 31 35 0A 612.613.614.615. +2352: 36 31 36 0A 36 31 37 0A 36 31 38 0A 36 31 39 0A 616.617.618.619. +2368: 36 32 30 0A 36 32 31 0A 36 32 32 0A 36 32 33 0A 620.621.622.623. +2384: 36 32 34 0A 36 32 35 0A 36 32 36 0A 36 32 37 0A 624.625.626.627. +2400: 36 32 38 0A 36 32 39 0A 36 33 30 0A 36 33 31 0A 628.629.630.631. +2416: 36 33 32 0A 36 33 33 0A 36 33 34 0A 36 33 35 0A 632.633.634.635. +2432: 36 33 36 0A 36 33 37 0A 36 33 38 0A 36 33 39 0A 636.637.638.639. +2448: 36 34 30 0A 36 34 31 0A 36 34 32 0A 36 34 33 0A 640.641.642.643. +2464: 36 34 34 0A 36 34 35 0A 36 34 36 0A 36 34 37 0A 644.645.646.647. +2480: 36 34 38 0A 36 34 39 0A 36 35 30 0A 36 35 31 0A 648.649.650.651. +2496: 36 35 32 0A 36 35 33 0A 36 35 34 0A 36 35 35 0A 652.653.654.655. +2512: 36 35 36 0A 36 35 37 0A 36 35 38 0A 36 35 39 0A 656.657.658.659. +2528: 36 36 30 0A 36 36 31 0A 36 36 32 0A 36 36 33 0A 660.661.662.663. +2544: 36 36 34 0A 36 36 35 0A 36 36 36 0A 36 36 37 0A 664.665.666.667. +2560: 36 36 38 0A 36 36 39 0A 36 37 30 0A 36 37 31 0A 668.669.670.671. +2576: 36 37 32 0A 36 37 33 0A 36 37 34 0A 36 37 35 0A 672.673.674.675. +2592: 36 37 36 0A 36 37 37 0A 36 37 38 0A 36 37 39 0A 676.677.678.679. +2608: 36 38 30 0A 36 38 31 0A 36 38 32 0A 36 38 33 0A 680.681.682.683. +2624: 36 38 34 0A 36 38 35 0A 36 38 36 0A 36 38 37 0A 684.685.686.687. +2640: 36 38 38 0A 36 38 39 0A 36 39 30 0A 36 39 31 0A 688.689.690.691. +2656: 36 39 32 0A 36 39 33 0A 36 39 34 0A 36 39 35 0A 692.693.694.695. +2672: 36 39 36 0A 36 39 37 0A 36 39 38 0A 36 39 39 0A 696.697.698.699. +2688: 37 30 30 0A 37 30 31 0A 37 30 32 0A 37 30 33 0A 700.701.702.703. +2704: 37 30 34 0A 37 30 35 0A 37 30 36 0A 37 30 37 0A 704.705.706.707. +2720: 37 30 38 0A 37 30 39 0A 37 31 30 0A 37 31 31 0A 708.709.710.711. +2736: 37 31 32 0A 37 31 33 0A 37 31 34 0A 37 31 35 0A 712.713.714.715. +2752: 37 31 36 0A 37 31 37 0A 37 31 38 0A 37 31 39 0A 716.717.718.719. +2768: 37 32 30 0A 37 32 31 0A 37 32 32 0A 37 32 33 0A 720.721.722.723. +2784: 37 32 34 0A 37 32 35 0A 37 32 36 0A 37 32 37 0A 724.725.726.727. +2800: 37 32 38 0A 37 32 39 0A 37 33 30 0A 37 33 31 0A 728.729.730.731. +2816: 37 33 32 0A 37 33 33 0A 37 33 34 0A 37 33 35 0A 732.733.734.735. +2832: 37 33 36 0A 37 33 37 0A 37 33 38 0A 37 33 39 0A 736.737.738.739. +2848: 37 34 30 0A 37 34 31 0A 37 34 32 0A 37 34 33 0A 740.741.742.743. +2864: 37 34 34 0A 37 34 35 0A 37 34 36 0A 37 34 37 0A 744.745.746.747. +2880: 37 34 38 0A 37 34 39 0A 37 35 30 0A 37 35 31 0A 748.749.750.751. +2896: 37 35 32 0A 37 35 33 0A 37 35 34 0A 37 35 35 0A 752.753.754.755. +2912: 37 35 36 0A 37 35 37 0A 37 35 38 0A 37 35 39 0A 756.757.758.759. +2928: 37 36 30 0A 37 36 31 0A 37 36 32 0A 37 36 33 0A 760.761.762.763. +2944: 37 36 34 0A 37 36 35 0A 37 36 36 0A 37 36 37 0A 764.765.766.767. +2960: 37 36 38 0A 37 36 39 0A 37 37 30 0A 37 37 31 0A 768.769.770.771. +2976: 37 37 32 0A 37 37 33 0A 37 37 34 0A 37 37 35 0A 772.773.774.775. +2992: 37 37 36 0A 37 37 37 0A 37 37 38 0A 37 37 39 0A 776.777.778.779. +3008: 37 38 30 0A 37 38 31 0A 37 38 32 0A 37 38 33 0A 780.781.782.783. +3024: 37 38 34 0A 37 38 35 0A 37 38 36 0A 37 38 37 0A 784.785.786.787. +3040: 37 38 38 0A 37 38 39 0A 37 39 30 0A 37 39 31 0A 788.789.790.791. +3056: 37 39 32 0A 37 39 33 0A 37 39 34 0A 37 39 35 0A 792.793.794.795. +3072: 37 39 36 0A 37 39 37 0A 37 39 38 0A 37 39 39 0A 796.797.798.799. +3088: 38 30 30 0A 38 30 31 0A 38 30 32 0A 38 30 33 0A 800.801.802.803. +3104: 38 30 34 0A 38 30 35 0A 38 30 36 0A 38 30 37 0A 804.805.806.807. +3120: 38 30 38 0A 38 30 39 0A 38 31 30 0A 38 31 31 0A 808.809.810.811. +3136: 38 31 32 0A 38 31 33 0A 38 31 34 0A 38 31 35 0A 812.813.814.815. +3152: 38 31 36 0A 38 31 37 0A 38 31 38 0A 38 31 39 0A 816.817.818.819. +3168: 38 32 30 0A 38 32 31 0A 38 32 32 0A 38 32 33 0A 820.821.822.823. +3184: 38 32 34 0A 38 32 35 0A 38 32 36 0A 38 32 37 0A 824.825.826.827. +3200: 38 32 38 0A 38 32 39 0A 38 33 30 0A 38 33 31 0A 828.829.830.831. +3216: 38 33 32 0A 38 33 33 0A 38 33 34 0A 38 33 35 0A 832.833.834.835. +3232: 38 33 36 0A 38 33 37 0A 38 33 38 0A 38 33 39 0A 836.837.838.839. +3248: 38 34 30 0A 38 34 31 0A 38 34 32 0A 38 34 33 0A 840.841.842.843. +3264: 38 34 34 0A 38 34 35 0A 38 34 36 0A 38 34 37 0A 844.845.846.847. +3280: 38 34 38 0A 38 34 39 0A 38 35 30 0A 38 35 31 0A 848.849.850.851. +3296: 38 35 32 0A 38 35 33 0A 38 35 34 0A 38 35 35 0A 852.853.854.855. +3312: 38 35 36 0A 38 35 37 0A 38 35 38 0A 38 35 39 0A 856.857.858.859. +3328: 38 36 30 0A 38 36 31 0A 38 36 32 0A 38 36 33 0A 860.861.862.863. +3344: 38 36 34 0A 38 36 35 0A 38 36 36 0A 38 36 37 0A 864.865.866.867. +3360: 38 36 38 0A 38 36 39 0A 38 37 30 0A 38 37 31 0A 868.869.870.871. +3376: 38 37 32 0A 38 37 33 0A 38 37 34 0A 38 37 35 0A 872.873.874.875. +3392: 38 37 36 0A 38 37 37 0A 38 37 38 0A 38 37 39 0A 876.877.878.879. +3408: 38 38 30 0A 38 38 31 0A 38 38 32 0A 38 38 33 0A 880.881.882.883. +3424: 38 38 34 0A 38 38 35 0A 38 38 36 0A 38 38 37 0A 884.885.886.887. +3440: 38 38 38 0A 38 38 39 0A 38 39 30 0A 38 39 31 0A 888.889.890.891. +3456: 38 39 32 0A 38 39 33 0A 38 39 34 0A 38 39 35 0A 892.893.894.895. +3472: 38 39 36 0A 38 39 37 0A 38 39 38 0A 38 39 39 0A 896.897.898.899. +3488: 39 30 30 0A 39 30 31 0A 39 30 32 0A 39 30 33 0A 900.901.902.903. +3504: 39 30 34 0A 39 30 35 0A 39 30 36 0A 39 30 37 0A 904.905.906.907. +3520: 39 30 38 0A 39 30 39 0A 39 31 30 0A 39 31 31 0A 908.909.910.911. +3536: 39 31 32 0A 39 31 33 0A 39 31 34 0A 39 31 35 0A 912.913.914.915. +3552: 39 31 36 0A 39 31 37 0A 39 31 38 0A 39 31 39 0A 916.917.918.919. +3568: 39 32 30 0A 39 32 31 0A 39 32 32 0A 39 32 33 0A 920.921.922.923. +3584: 39 32 34 0A 39 32 35 0A 39 32 36 0A 39 32 37 0A 924.925.926.927. +3600: 39 32 38 0A 39 32 39 0A 39 33 30 0A 39 33 31 0A 928.929.930.931. +3616: 39 33 32 0A 39 33 33 0A 39 33 34 0A 39 33 35 0A 932.933.934.935. +3632: 39 33 36 0A 39 33 37 0A 39 33 38 0A 39 33 39 0A 936.937.938.939. +3648: 39 34 30 0A 39 34 31 0A 39 34 32 0A 39 34 33 0A 940.941.942.943. +3664: 39 34 34 0A 39 34 35 0A 39 34 36 0A 39 34 37 0A 944.945.946.947. +3680: 39 34 38 0A 39 34 39 0A 39 35 30 0A 39 35 31 0A 948.949.950.951. +3696: 39 35 32 0A 39 35 33 0A 39 35 34 0A 39 35 35 0A 952.953.954.955. +3712: 39 35 36 0A 39 35 37 0A 39 35 38 0A 39 35 39 0A 956.957.958.959. +3728: 39 36 30 0A 39 36 31 0A 39 36 32 0A 39 36 33 0A 960.961.962.963. +3744: 39 36 34 0A 39 36 35 0A 39 36 36 0A 39 36 37 0A 964.965.966.967. +3760: 39 36 38 0A 39 36 39 0A 39 37 30 0A 39 37 31 0A 968.969.970.971. +3776: 39 37 32 0A 39 37 33 0A 39 37 34 0A 39 37 35 0A 972.973.974.975. +3792: 39 37 36 0A 39 37 37 0A 39 37 38 0A 39 37 39 0A 976.977.978.979. +3808: 39 38 30 0A 39 38 31 0A 39 38 32 0A 39 38 33 0A 980.981.982.983. +3824: 39 38 34 0A 39 38 35 0A 39 38 36 0A 39 38 37 0A 984.985.986.987. +3840: 39 38 38 0A 39 38 39 0A 39 39 30 0A 39 39 31 0A 988.989.990.991. +3856: 39 39 32 0A 39 39 33 0A 39 39 34 0A 39 39 35 0A 992.993.994.995. +3872: 39 39 36 0A 39 39 37 0A 39 39 38 0A 39 39 39 0A 996.997.998.999. +3888: 31 30 30 30 0A 31 30 30 31 0A 31 30 30 32 0A 31 1000.1001.1002.1 +3904: 30 30 33 0A 31 30 30 34 0A 31 30 30 35 0A 31 30 003.1004.1005.10 +3920: 30 36 0A 31 30 30 37 0A 31 30 30 38 0A 31 30 30 06.1007.1008.100 +3936: 39 0A 31 30 31 30 0A 31 30 31 31 0A 31 30 31 32 9.1010.1011.1012 +3952: 0A 31 30 31 33 0A 31 30 31 34 0A 31 30 31 35 0A .1013.1014.1015. +3968: 31 30 31 36 0A 31 30 31 37 0A 31 30 31 38 0A 31 1016.1017.1018.1 +3984: 30 31 39 0A 31 30 32 30 0A 31 30 32 31 0A 31 30 019.1020.1021.10 +4000: 32 32 0A 31 30 32 33 0A 31 30 32 34 0A 31 30 32 22.1023.1024.102 +4016: 35 0A 31 30 32 36 0A 31 30 32 37 0A 31 30 32 38 5.1026.1027.1028 +4032: 0A 31 30 32 39 0A 31 30 33 30 0A 31 30 33 31 0A .1029.1030.1031. +4048: 31 30 33 32 0A 31 30 33 33 0A 31 30 33 34 0A 31 1032.1033.1034.1 +4064: 30 33 35 0A 31 30 33 36 0A 31 30 33 37 0A 31 30 035.1036.1037.10 +4080: 33 38 0A 31 30 33 39 0A 31 30 34 30 0A 31 30 34 38.1039.1040.104 +4096: 31 0A 31 30 34 32 0A 31 30 34 33 0A 31 30 34 34 1.1042.1043.1044 +4112: 0A 31 30 34 35 0A 31 30 34 36 0A 31 30 34 37 0A .1045.1046.1047. +4128: 31 30 34 38 0A 31 30 34 39 0A 31 30 35 30 0A 31 1048.1049.1050.1 +4144: 30 35 31 0A 31 30 35 32 0A 31 30 35 33 0A 31 30 051.1052.1053.10 +4160: 35 34 0A 31 30 35 35 0A 31 30 35 36 0A 31 30 35 54.1055.1056.105 +4176: 37 0A 31 30 35 38 0A 31 30 35 39 0A 31 30 36 30 7.1058.1059.1060 +4192: 0A 31 30 36 31 0A 31 30 36 32 0A 31 30 36 33 0A .1061.1062.1063. +4208: 31 30 36 34 0A 31 30 36 35 0A 31 30 36 36 0A 31 1064.1065.1066.1 +4224: 30 36 37 0A 31 30 36 38 0A 31 30 36 39 0A 31 30 067.1068.1069.10 +4240: 37 30 0A 31 30 37 31 0A 31 30 37 32 0A 31 30 37 70.1071.1072.107 +4256: 33 0A 31 30 37 34 0A 31 30 37 35 0A 31 30 37 36 3.1074.1075.1076 +4272: 0A 31 30 37 37 0A 31 30 37 38 0A 31 30 37 39 0A .1077.1078.1079. +4288: 31 30 38 30 0A 31 30 38 31 0A 31 30 38 32 0A 31 1080.1081.1082.1 +4304: 30 38 33 0A 31 30 38 34 0A 31 30 38 35 0A 31 30 083.1084.1085.10 +4320: 38 36 0A 31 30 38 37 0A 31 30 38 38 0A 31 30 38 86.1087.1088.108 +4336: 39 0A 31 30 39 30 0A 31 30 39 31 0A 31 30 39 32 9.1090.1091.1092 +4352: 0A 31 30 39 33 0A 31 30 39 34 0A 31 30 39 35 0A .1093.1094.1095. +4368: 31 30 39 36 0A 31 30 39 37 0A 31 30 39 38 0A 31 1096.1097.1098.1 +4384: 30 39 39 0A 31 31 30 30 0A 31 31 30 31 0A 31 31 099.1100.1101.11 +4400: 30 32 0A 31 31 30 33 0A 31 31 30 34 0A 31 31 30 02.1103.1104.110 +4416: 35 0A 31 31 30 36 0A 31 31 30 37 0A 31 31 30 38 5.1106.1107.1108 +4432: 0A 31 31 30 39 0A 31 31 31 30 0A 31 31 31 31 0A .1109.1110.1111. +4448: 31 31 31 32 0A 31 31 31 33 0A 31 31 31 34 0A 31 1112.1113.1114.1 +4464: 31 31 35 0A 31 31 31 36 0A 31 31 31 37 0A 31 31 115.1116.1117.11 +4480: 31 38 0A 31 31 31 39 0A 31 31 32 30 0A 31 31 32 18.1119.1120.112 +4496: 31 0A 31 31 32 32 0A 31 31 32 33 0A 31 31 32 34 1.1122.1123.1124 +4512: 0A 31 31 32 35 0A 31 31 32 36 0A 31 31 32 37 0A .1125.1126.1127. +4528: 31 31 32 38 0A 31 31 32 39 0A 31 31 33 30 0A 31 1128.1129.1130.1 +4544: 31 33 31 0A 31 31 33 32 0A 31 31 33 33 0A 31 31 131.1132.1133.11 +4560: 33 34 0A 31 31 33 35 0A 31 31 33 36 0A 31 31 33 34.1135.1136.113 +4576: 37 0A 31 31 33 38 0A 31 31 33 39 0A 31 31 34 30 7.1138.1139.1140 +4592: 0A 31 31 34 31 0A 31 31 34 32 0A 31 31 34 33 0A .1141.1142.1143. +4608: 31 31 34 34 0A 31 31 34 35 0A 31 31 34 36 0A 31 1144.1145.1146.1 +4624: 31 34 37 0A 31 31 34 38 0A 31 31 34 39 0A 31 31 147.1148.1149.11 +4640: 35 30 0A 31 31 35 31 0A 31 31 35 32 0A 31 31 35 50.1151.1152.115 +4656: 33 0A 31 31 35 34 0A 31 31 35 35 0A 31 31 35 36 3.1154.1155.1156 +4672: 0A 31 31 35 37 0A 31 31 35 38 0A 31 31 35 39 0A .1157.1158.1159. +4688: 31 31 36 30 0A 31 31 36 31 0A 31 31 36 32 0A 31 1160.1161.1162.1 +4704: 31 36 33 0A 31 31 36 34 0A 31 31 36 35 0A 31 31 163.1164.1165.11 +4720: 36 36 0A 31 31 36 37 0A 31 31 36 38 0A 31 31 36 66.1167.1168.116 +4736: 39 0A 31 31 37 30 0A 31 31 37 31 0A 31 31 37 32 9.1170.1171.1172 +4752: 0A 31 31 37 33 0A 31 31 37 34 0A 31 31 37 35 0A .1173.1174.1175. +4768: 31 31 37 36 0A 31 31 37 37 0A 31 31 37 38 0A 31 1176.1177.1178.1 +4784: 31 37 39 0A 31 31 38 30 0A 31 31 38 31 0A 31 31 179.1180.1181.11 +4800: 38 32 0A 31 31 38 33 0A 31 31 38 34 0A 31 31 38 82.1183.1184.118 +4816: 35 0A 31 31 38 36 0A 31 31 38 37 0A 31 31 38 38 5.1186.1187.1188 +4832: 0A 31 31 38 39 0A 31 31 39 30 0A 31 31 39 31 0A .1189.1190.1191. +4848: 31 31 39 32 0A 31 31 39 33 0A 31 31 39 34 0A 31 1192.1193.1194.1 +4864: 31 39 35 0A 31 31 39 36 0A 31 31 39 37 0A 31 31 195.1196.1197.11 +4880: 39 38 0A 31 31 39 39 0A 31 32 30 30 0A 31 32 30 98.1199.1200.120 +4896: 31 0A 31 32 30 32 0A 31 32 30 33 0A 31 32 30 34 1.1202.1203.1204 +4912: 0A 31 32 30 35 0A 31 32 30 36 0A 31 32 30 37 0A .1205.1206.1207. +4928: 31 32 30 38 0A 31 32 30 39 0A 31 32 31 30 0A 31 1208.1209.1210.1 +4944: 32 31 31 0A 31 32 31 32 0A 31 32 31 33 0A 31 32 211.1212.1213.12 +4960: 31 34 0A 31 32 31 35 0A 31 32 31 36 0A 31 32 31 14.1215.1216.121 +4976: 37 0A 31 32 31 38 0A 31 32 31 39 0A 31 32 32 30 7.1218.1219.1220 +4992: 0A 31 32 32 31 0A 31 32 32 32 0A 31 32 32 33 0A .1221.1222.1223. +5008: 31 32 32 34 0A 31 32 32 35 0A 31 32 32 36 0A 31 1224.1225.1226.1 +5024: 32 32 37 0A 31 32 32 38 0A 31 32 32 39 0A 31 32 227.1228.1229.12 +5040: 33 30 0A 31 32 33 31 0A 31 32 33 32 0A 31 32 33 30.1231.1232.123 +5056: 33 0A 31 32 33 34 0A 31 32 33 35 0A 31 32 33 36 3.1234.1235.1236 +5072: 0A 31 32 33 37 0A 31 32 33 38 0A 31 32 33 39 0A .1237.1238.1239. +5088: 31 32 34 30 0A 31 32 34 31 0A 31 32 34 32 0A 31 1240.1241.1242.1 +5104: 32 34 33 0A 31 32 34 34 0A 31 32 34 35 0A 31 32 243.1244.1245.12 +5120: 34 36 0A 31 32 34 37 0A 31 32 34 38 0A 31 32 34 46.1247.1248.124 +5136: 39 0A 31 32 35 30 0A 31 32 35 31 0A 31 32 35 32 9.1250.1251.1252 +5152: 0A 31 32 35 33 0A 31 32 35 34 0A 31 32 35 35 0A .1253.1254.1255. +5168: 31 32 35 36 0A 31 32 35 37 0A 31 32 35 38 0A 31 1256.1257.1258.1 +5184: 32 35 39 0A 31 32 36 30 0A 31 32 36 31 0A 31 32 259.1260.1261.12 +5200: 36 32 0A 31 32 36 33 0A 31 32 36 34 0A 31 32 36 62.1263.1264.126 +5216: 35 0A 31 32 36 36 0A 31 32 36 37 0A 31 32 36 38 5.1266.1267.1268 +5232: 0A 31 32 36 39 0A 31 32 37 30 0A 31 32 37 31 0A .1269.1270.1271. +5248: 31 32 37 32 0A 31 32 37 33 0A 31 32 37 34 0A 31 1272.1273.1274.1 +5264: 32 37 35 0A 31 32 37 36 0A 31 32 37 37 0A 31 32 275.1276.1277.12 +5280: 37 38 0A 31 32 37 39 0A 31 32 38 30 0A 31 32 38 78.1279.1280.128 +5296: 31 0A 31 32 38 32 0A 31 32 38 33 0A 31 32 38 34 1.1282.1283.1284 +5312: 0A 31 32 38 35 0A 31 32 38 36 0A 31 32 38 37 0A .1285.1286.1287. +5328: 31 32 38 38 0A 31 32 38 39 0A 31 32 39 30 0A 31 1288.1289.1290.1 +5344: 32 39 31 0A 31 32 39 32 0A 31 32 39 33 0A 31 32 291.1292.1293.12 +5360: 39 34 0A 31 32 39 35 0A 31 32 39 36 0A 31 32 39 94.1295.1296.129 +5376: 37 0A 31 32 39 38 0A 31 32 39 39 0A 31 33 30 30 7.1298.1299.1300 +5392: 0A 31 33 30 31 0A 31 33 30 32 0A 31 33 30 33 0A .1301.1302.1303. +5408: 31 33 30 34 0A 31 33 30 35 0A 31 33 30 36 0A 31 1304.1305.1306.1 +5424: 33 30 37 0A 31 33 30 38 0A 31 33 30 39 0A 31 33 307.1308.1309.13 +5440: 31 30 0A 31 33 31 31 0A 31 33 31 32 0A 31 33 31 10.1311.1312.131 +5456: 33 0A 31 33 31 34 0A 31 33 31 35 0A 31 33 31 36 3.1314.1315.1316 +5472: 0A 31 33 31 37 0A 31 33 31 38 0A 31 33 31 39 0A .1317.1318.1319. +5488: 31 33 32 30 0A 31 33 32 31 0A 31 33 32 32 0A 31 1320.1321.1322.1 +5504: 33 32 33 0A 31 33 32 34 0A 31 33 32 35 0A 31 33 323.1324.1325.13 +5520: 32 36 0A 31 33 32 37 0A 31 33 32 38 0A 31 33 32 26.1327.1328.132 +5536: 39 0A 31 33 33 30 0A 31 33 33 31 0A 31 33 33 32 9.1330.1331.1332 +5552: 0A 31 33 33 33 0A 31 33 33 34 0A 31 33 33 35 0A .1333.1334.1335. +5568: 31 33 33 36 0A 31 33 33 37 0A 31 33 33 38 0A 31 1336.1337.1338.1 +5584: 33 33 39 0A 31 33 34 30 0A 31 33 34 31 0A 31 33 339.1340.1341.13 +5600: 34 32 0A 31 33 34 33 0A 31 33 34 34 0A 31 33 34 42.1343.1344.134 +5616: 35 0A 31 33 34 36 0A 31 33 34 37 0A 31 33 34 38 5.1346.1347.1348 +5632: 0A 31 33 34 39 0A 31 33 35 30 0A 31 33 35 31 0A .1349.1350.1351. +5648: 31 33 35 32 0A 31 33 35 33 0A 31 33 35 34 0A 31 1352.1353.1354.1 +5664: 33 35 35 0A 31 33 35 36 0A 31 33 35 37 0A 31 33 355.1356.1357.13 +5680: 35 38 0A 31 33 35 39 0A 31 33 36 30 0A 31 33 36 58.1359.1360.136 +5696: 31 0A 31 33 36 32 0A 31 33 36 33 0A 31 33 36 34 1.1362.1363.1364 +5712: 0A 31 33 36 35 0A 31 33 36 36 0A 31 33 36 37 0A .1365.1366.1367. +5728: 31 33 36 38 0A 31 33 36 39 0A 31 33 37 30 0A 31 1368.1369.1370.1 +5744: 33 37 31 0A 31 33 37 32 0A 31 33 37 33 0A 31 33 371.1372.1373.13 +5760: 37 34 0A 31 33 37 35 0A 31 33 37 36 0A 31 33 37 74.1375.1376.137 +5776: 37 0A 31 33 37 38 0A 31 33 37 39 0A 31 33 38 30 7.1378.1379.1380 +5792: 0A 31 33 38 31 0A 31 33 38 32 0A 31 33 38 33 0A .1381.1382.1383. +5808: 31 33 38 34 0A 31 33 38 35 0A 31 33 38 36 0A 31 1384.1385.1386.1 +5824: 33 38 37 0A 31 33 38 38 0A 31 33 38 39 0A 31 33 387.1388.1389.13 +5840: 39 30 0A 31 33 39 31 0A 31 33 39 32 0A 31 33 39 90.1391.1392.139 +5856: 33 0A 31 33 39 34 0A 31 33 39 35 0A 31 33 39 36 3.1394.1395.1396 +5872: 0A 31 33 39 37 0A 31 33 39 38 0A 31 33 39 39 0A .1397.1398.1399. +5888: 31 34 30 30 0A 31 34 30 31 0A 31 34 30 32 0A 31 1400.1401.1402.1 +5904: 34 30 33 0A 31 34 30 34 0A 31 34 30 35 0A 31 34 403.1404.1405.14 +5920: 30 36 0A 31 34 30 37 0A 31 34 30 38 0A 31 34 30 06.1407.1408.140 +5936: 39 0A 31 34 31 30 0A 31 34 31 31 0A 31 34 31 32 9.1410.1411.1412 +5952: 0A 31 34 31 33 0A 31 34 31 34 0A 31 34 31 35 0A .1413.1414.1415. +5968: 31 34 31 36 0A 31 34 31 37 0A 31 34 31 38 0A 31 1416.1417.1418.1 +5984: 34 31 39 0A 31 34 32 30 0A 31 34 32 31 0A 31 34 419.1420.1421.14 +6000: 32 32 0A 31 34 32 33 0A 31 34 32 34 0A 31 34 32 22.1423.1424.142 +6016: 35 0A 31 34 32 36 0A 31 34 32 37 0A 31 34 32 38 5.1426.1427.1428 +6032: 0A 31 34 32 39 0A 31 34 33 30 0A 31 34 33 31 0A .1429.1430.1431. +6048: 31 34 33 32 0A 31 34 33 33 0A 31 34 33 34 0A 31 1432.1433.1434.1 +6064: 34 33 35 0A 31 34 33 36 0A 31 34 33 37 0A 31 34 435.1436.1437.14 +6080: 33 38 0A 31 34 33 39 0A 31 34 34 30 0A 31 34 34 38.1439.1440.144 +6096: 31 0A 31 34 34 32 0A 31 34 34 33 0A 31 34 34 34 1.1442.1443.1444 +6112: 0A 31 34 34 35 0A 31 34 34 36 0A 31 34 34 37 0A .1445.1446.1447. +6128: 31 34 34 38 0A 31 34 34 39 0A 31 34 35 30 0A 31 1448.1449.1450.1 +6144: 34 35 31 0A 31 34 35 32 0A 31 34 35 33 0A 31 34 451.1452.1453.14 +6160: 35 34 0A 31 34 35 35 0A 31 34 35 36 0A 31 34 35 54.1455.1456.145 +6176: 37 0A 31 34 35 38 0A 31 34 35 39 0A 31 34 36 30 7.1458.1459.1460 +6192: 0A 31 34 36 31 0A 31 34 36 32 0A 31 34 36 33 0A .1461.1462.1463. +6208: 31 34 36 34 0A 31 34 36 35 0A 31 34 36 36 0A 31 1464.1465.1466.1 +6224: 34 36 37 0A 31 34 36 38 0A 31 34 36 39 0A 31 34 467.1468.1469.14 +6240: 37 30 0A 31 34 37 31 0A 31 34 37 32 0A 31 34 37 70.1471.1472.147 +6256: 33 0A 31 34 37 34 0A 31 34 37 35 0A 31 34 37 36 3.1474.1475.1476 +6272: 0A 31 34 37 37 0A 31 34 37 38 0A 31 34 37 39 0A .1477.1478.1479. +6288: 31 34 38 30 0A 31 34 38 31 0A 31 34 38 32 0A 31 1480.1481.1482.1 +6304: 34 38 33 0A 31 34 38 34 0A 31 34 38 35 0A 31 34 483.1484.1485.14 +6320: 38 36 0A 31 34 38 37 0A 31 34 38 38 0A 31 34 38 86.1487.1488.148 +6336: 39 0A 31 34 39 30 0A 31 34 39 31 0A 31 34 39 32 9.1490.1491.1492 +6352: 0A 31 34 39 33 0A 31 34 39 34 0A 31 34 39 35 0A .1493.1494.1495. +6368: 31 34 39 36 0A 31 34 39 37 0A 31 34 39 38 0A 31 1496.1497.1498.1 +6384: 34 39 39 0A 31 35 30 30 0A 31 35 30 31 0A 31 35 499.1500.1501.15 +6400: 30 32 0A 31 35 30 33 0A 31 35 30 34 0A 31 35 30 02.1503.1504.150 +6416: 35 0A 31 35 30 36 0A 31 35 30 37 0A 31 35 30 38 5.1506.1507.1508 +6432: 0A 31 35 30 39 0A 31 35 31 30 0A 31 35 31 31 0A .1509.1510.1511. +6448: 31 35 31 32 0A 31 35 31 33 0A 31 35 31 34 0A 31 1512.1513.1514.1 +6464: 35 31 35 0A 31 35 31 36 0A 31 35 31 37 0A 31 35 515.1516.1517.15 +6480: 31 38 0A 31 35 31 39 0A 31 35 32 30 0A 31 35 32 18.1519.1520.152 +6496: 31 0A 31 35 32 32 0A 31 35 32 33 0A 31 35 32 34 1.1522.1523.1524 +6512: 0A 31 35 32 35 0A 31 35 32 36 0A 31 35 32 37 0A .1525.1526.1527. +6528: 31 35 32 38 0A 31 35 32 39 0A 31 35 33 30 0A 31 1528.1529.1530.1 +6544: 35 33 31 0A 31 35 33 32 0A 31 35 33 33 0A 31 35 531.1532.1533.15 +6560: 33 34 0A 31 35 33 35 0A 31 35 33 36 0A 31 35 33 34.1535.1536.153 +6576: 37 0A 31 35 33 38 0A 31 35 33 39 0A 31 35 34 30 7.1538.1539.1540 +6592: 0A 31 35 34 31 0A 31 35 34 32 0A 31 35 34 33 0A .1541.1542.1543. +6608: 31 35 34 34 0A 31 35 34 35 0A 31 35 34 36 0A 31 1544.1545.1546.1 +6624: 35 34 37 0A 31 35 34 38 0A 31 35 34 39 0A 31 35 547.1548.1549.15 +6640: 35 30 0A 31 35 35 31 0A 31 35 35 32 0A 31 35 35 50.1551.1552.155 +6656: 33 0A 31 35 35 34 0A 31 35 35 35 0A 31 35 35 36 3.1554.1555.1556 +6672: 0A 31 35 35 37 0A 31 35 35 38 0A 31 35 35 39 0A .1557.1558.1559. +6688: 31 35 36 30 0A 31 35 36 31 0A 31 35 36 32 0A 31 1560.1561.1562.1 +6704: 35 36 33 0A 31 35 36 34 0A 31 35 36 35 0A 31 35 563.1564.1565.15 +6720: 36 36 0A 31 35 36 37 0A 31 35 36 38 0A 31 35 36 66.1567.1568.156 +6736: 39 0A 31 35 37 30 0A 31 35 37 31 0A 31 35 37 32 9.1570.1571.1572 +6752: 0A 31 35 37 33 0A 31 35 37 34 0A 31 35 37 35 0A .1573.1574.1575. +6768: 31 35 37 36 0A 31 35 37 37 0A 31 35 37 38 0A 31 1576.1577.1578.1 +6784: 35 37 39 0A 31 35 38 30 0A 31 35 38 31 0A 31 35 579.1580.1581.15 +6800: 38 32 0A 31 35 38 33 0A 31 35 38 34 0A 31 35 38 82.1583.1584.158 +6816: 35 0A 31 35 38 36 0A 31 35 38 37 0A 31 35 38 38 5.1586.1587.1588 +6832: 0A 31 35 38 39 0A 31 35 39 30 0A 31 35 39 31 0A .1589.1590.1591. +6848: 31 35 39 32 0A 31 35 39 33 0A 31 35 39 34 0A 31 1592.1593.1594.1 +6864: 35 39 35 0A 31 35 39 36 0A 31 35 39 37 0A 31 35 595.1596.1597.15 +6880: 39 38 0A 31 35 39 39 0A 31 36 30 30 0A 31 36 30 98.1599.1600.160 +6896: 31 0A 31 36 30 32 0A 31 36 30 33 0A 31 36 30 34 1.1602.1603.1604 +6912: 0A 31 36 30 35 0A 31 36 30 36 0A 31 36 30 37 0A .1605.1606.1607. +6928: 31 36 30 38 0A 31 36 30 39 0A 31 36 31 30 0A 31 1608.1609.1610.1 +6944: 36 31 31 0A 31 36 31 32 0A 31 36 31 33 0A 31 36 611.1612.1613.16 +6960: 31 34 0A 31 36 31 35 0A 31 36 31 36 0A 31 36 31 14.1615.1616.161 +6976: 37 0A 31 36 31 38 0A 31 36 31 39 0A 31 36 32 30 7.1618.1619.1620 +6992: 0A 31 36 32 31 0A 31 36 32 32 0A 31 36 32 33 0A .1621.1622.1623. +7008: 31 36 32 34 0A 31 36 32 35 0A 31 36 32 36 0A 31 1624.1625.1626.1 +7024: 36 32 37 0A 31 36 32 38 0A 31 36 32 39 0A 31 36 627.1628.1629.16 +7040: 33 30 0A 31 36 33 31 0A 31 36 33 32 0A 31 36 33 30.1631.1632.163 +7056: 33 0A 31 36 33 34 0A 31 36 33 35 0A 31 36 33 36 3.1634.1635.1636 +7072: 0A 31 36 33 37 0A 31 36 33 38 0A 31 36 33 39 0A .1637.1638.1639. +7088: 31 36 34 30 0A 31 36 34 31 0A 31 36 34 32 0A 31 1640.1641.1642.1 +7104: 36 34 33 0A 31 36 34 34 0A 31 36 34 35 0A 31 36 643.1644.1645.16 +7120: 34 36 0A 31 36 34 37 0A 31 36 34 38 0A 31 36 34 46.1647.1648.164 +7136: 39 0A 31 36 35 30 0A 31 36 35 31 0A 31 36 35 32 9.1650.1651.1652 +7152: 0A 31 36 35 33 0A 31 36 35 34 0A 31 36 35 35 0A .1653.1654.1655. +7168: 31 36 35 36 0A 31 36 35 37 0A 31 36 35 38 0A 31 1656.1657.1658.1 +7184: 36 35 39 0A 31 36 36 30 0A 31 36 36 31 0A 31 36 659.1660.1661.16 +7200: 36 32 0A 31 36 36 33 0A 31 36 36 34 0A 31 36 36 62.1663.1664.166 +7216: 35 0A 31 36 36 36 0A 31 36 36 37 0A 31 36 36 38 5.1666.1667.1668 +7232: 0A 31 36 36 39 0A 31 36 37 30 0A 31 36 37 31 0A .1669.1670.1671. +7248: 31 36 37 32 0A 31 36 37 33 0A 31 36 37 34 0A 31 1672.1673.1674.1 +7264: 36 37 35 0A 31 36 37 36 0A 31 36 37 37 0A 31 36 675.1676.1677.16 +7280: 37 38 0A 31 36 37 39 0A 31 36 38 30 0A 31 36 38 78.1679.1680.168 +7296: 31 0A 31 36 38 32 0A 31 36 38 33 0A 31 36 38 34 1.1682.1683.1684 +7312: 0A 31 36 38 35 0A 31 36 38 36 0A 31 36 38 37 0A .1685.1686.1687. +7328: 31 36 38 38 0A 31 36 38 39 0A 31 36 39 30 0A 31 1688.1689.1690.1 +7344: 36 39 31 0A 31 36 39 32 0A 31 36 39 33 0A 31 36 691.1692.1693.16 +7360: 39 34 0A 31 36 39 35 0A 31 36 39 36 0A 31 36 39 94.1695.1696.169 +7376: 37 0A 31 36 39 38 0A 31 36 39 39 0A 31 37 30 30 7.1698.1699.1700 +7392: 0A 31 37 30 31 0A 31 37 30 32 0A 31 37 30 33 0A .1701.1702.1703. +7408: 31 37 30 34 0A 31 37 30 35 0A 31 37 30 36 0A 31 1704.1705.1706.1 +7424: 37 30 37 0A 31 37 30 38 0A 31 37 30 39 0A 31 37 707.1708.1709.17 +7440: 31 30 0A 31 37 31 31 0A 31 37 31 32 0A 31 37 31 10.1711.1712.171 +7456: 33 0A 31 37 31 34 0A 31 37 31 35 0A 31 37 31 36 3.1714.1715.1716 +7472: 0A 31 37 31 37 0A 31 37 31 38 0A 31 37 31 39 0A .1717.1718.1719. +7488: 31 37 32 30 0A 31 37 32 31 0A 31 37 32 32 0A 31 1720.1721.1722.1 +7504: 37 32 33 0A 31 37 32 34 0A 31 37 32 35 0A 31 37 723.1724.1725.17 +7520: 32 36 0A 31 37 32 37 0A 31 37 32 38 0A 31 37 32 26.1727.1728.172 +7536: 39 0A 31 37 33 30 0A 31 37 33 31 0A 31 37 33 32 9.1730.1731.1732 +7552: 0A 31 37 33 33 0A 31 37 33 34 0A 31 37 33 35 0A .1733.1734.1735. +7568: 31 37 33 36 0A 31 37 33 37 0A 31 37 33 38 0A 31 1736.1737.1738.1 +7584: 37 33 39 0A 31 37 34 30 0A 31 37 34 31 0A 31 37 739.1740.1741.17 +7600: 34 32 0A 31 37 34 33 0A 31 37 34 34 0A 31 37 34 42.1743.1744.174 +7616: 35 0A 31 37 34 36 0A 31 37 34 37 0A 31 37 34 38 5.1746.1747.1748 +7632: 0A 31 37 34 39 0A 31 37 35 30 0A 31 37 35 31 0A .1749.1750.1751. +7648: 31 37 35 32 0A 31 37 35 33 0A 31 37 35 34 0A 31 1752.1753.1754.1 +7664: 37 35 35 0A 31 37 35 36 0A 31 37 35 37 0A 31 37 755.1756.1757.17 +7680: 35 38 0A 31 37 35 39 0A 31 37 36 30 0A 31 37 36 58.1759.1760.176 +7696: 31 0A 31 37 36 32 0A 31 37 36 33 0A 31 37 36 34 1.1762.1763.1764 +7712: 0A 31 37 36 35 0A 31 37 36 36 0A 31 37 36 37 0A .1765.1766.1767. +7728: 31 37 36 38 0A 31 37 36 39 0A 31 37 37 30 0A 31 1768.1769.1770.1 +7744: 37 37 31 0A 31 37 37 32 0A 31 37 37 33 0A 31 37 771.1772.1773.17 +7760: 37 34 0A 31 37 37 35 0A 31 37 37 36 0A 31 37 37 74.1775.1776.177 +7776: 37 0A 31 37 37 38 0A 31 37 37 39 0A 31 37 38 30 7.1778.1779.1780 +7792: 0A 31 37 38 31 0A 31 37 38 32 0A 31 37 38 33 0A .1781.1782.1783. +7808: 31 37 38 34 0A 31 37 38 35 0A 31 37 38 36 0A 31 1784.1785.1786.1 +7824: 37 38 37 0A 31 37 38 38 0A 31 37 38 39 0A 31 37 787.1788.1789.17 +7840: 39 30 0A 31 37 39 31 0A 31 37 39 32 0A 31 37 39 90.1791.1792.179 +7856: 33 0A 31 37 39 34 0A 31 37 39 35 0A 31 37 39 36 3.1794.1795.1796 +7872: 0A 31 37 39 37 0A 31 37 39 38 0A 31 37 39 39 0A .1797.1798.1799. +7888: 31 38 30 30 0A 31 38 30 31 0A 31 38 30 32 0A 31 1800.1801.1802.1 +7904: 38 30 33 0A 31 38 30 34 0A 31 38 30 35 0A 31 38 803.1804.1805.18 +7920: 30 36 0A 31 38 30 37 0A 31 38 30 38 0A 31 38 30 06.1807.1808.180 +7936: 39 0A 31 38 31 30 0A 31 38 31 31 0A 31 38 31 32 9.1810.1811.1812 +7952: 0A 31 38 31 33 0A 31 38 31 34 0A 31 38 31 35 0A .1813.1814.1815. +7968: 31 38 31 36 0A 31 38 31 37 0A 31 38 31 38 0A 31 1816.1817.1818.1 +7984: 38 31 39 0A 31 38 32 30 0A 31 38 32 31 0A 31 38 819.1820.1821.18 +8000: 32 32 0A 31 38 32 33 0A 31 38 32 34 0A 31 38 32 22.1823.1824.182 +8016: 35 0A 31 38 32 36 0A 31 38 32 37 0A 31 38 32 38 5.1826.1827.1828 +8032: 0A 31 38 32 39 0A 31 38 33 30 0A 31 38 33 31 0A .1829.1830.1831. +8048: 31 38 33 32 0A 31 38 33 33 0A 31 38 33 34 0A 31 1832.1833.1834.1 +8064: 38 33 35 0A 31 38 33 36 0A 31 38 33 37 0A 31 38 835.1836.1837.18 +8080: 33 38 0A 31 38 33 39 0A 31 38 34 30 0A 31 38 34 38.1839.1840.184 +8096: 31 0A 31 38 34 32 0A 31 38 34 33 0A 31 38 34 34 1.1842.1843.1844 +8112: 0A 31 38 34 35 0A 31 38 34 36 0A 31 38 34 37 0A .1845.1846.1847. +8128: 31 38 34 38 0A 31 38 34 39 0A 31 38 35 30 0A 31 1848.1849.1850.1 +8144: 38 35 31 0A 31 38 35 32 0A 31 38 35 33 0A 31 38 851.1852.1853.18 +8160: 35 34 0A 31 38 35 35 0A 31 38 35 36 0A 31 38 35 54.1855.1856.185 +8176: 37 0A 31 38 35 38 0A 31 38 35 39 0A 31 38 36 30 7.1858.1859.1860 +8192: 0A 31 38 36 31 0A 31 38 36 32 0A 31 38 36 33 0A .1861.1862.1863. +8208: 31 38 36 34 0A 31 38 36 35 0A 31 38 36 36 0A 31 1864.1865.1866.1 +8224: 38 36 37 0A 31 38 36 38 0A 31 38 36 39 0A 31 38 867.1868.1869.18 +8240: 37 30 0A 31 38 37 31 0A 31 38 37 32 0A 31 38 37 70.1871.1872.187 +8256: 33 0A 31 38 37 34 0A 31 38 37 35 0A 31 38 37 36 3.1874.1875.1876 +8272: 0A 31 38 37 37 0A 31 38 37 38 0A 31 38 37 39 0A .1877.1878.1879. +8288: 31 38 38 30 0A 31 38 38 31 0A 31 38 38 32 0A 31 1880.1881.1882.1 +8304: 38 38 33 0A 31 38 38 34 0A 31 38 38 35 0A 31 38 883.1884.1885.18 +8320: 38 36 0A 31 38 38 37 0A 31 38 38 38 0A 31 38 38 86.1887.1888.188 +8336: 39 0A 31 38 39 30 0A 31 38 39 31 0A 31 38 39 32 9.1890.1891.1892 +8352: 0A 31 38 39 33 0A 31 38 39 34 0A 31 38 39 35 0A .1893.1894.1895. +8368: 31 38 39 36 0A 31 38 39 37 0A 31 38 39 38 0A 31 1896.1897.1898.1 +8384: 38 39 39 0A 31 39 30 30 0A 31 39 30 31 0A 31 39 899.1900.1901.19 +8400: 30 32 0A 31 39 30 33 0A 31 39 30 34 0A 31 39 30 02.1903.1904.190 +8416: 35 0A 31 39 30 36 0A 31 39 30 37 0A 31 39 30 38 5.1906.1907.1908 +8432: 0A 31 39 30 39 0A 31 39 31 30 0A 31 39 31 31 0A .1909.1910.1911. +8448: 31 39 31 32 0A 31 39 31 33 0A 31 39 31 34 0A 31 1912.1913.1914.1 +8464: 39 31 35 0A 31 39 31 36 0A 31 39 31 37 0A 31 39 915.1916.1917.19 +8480: 31 38 0A 31 39 31 39 0A 31 39 32 30 0A 31 39 32 18.1919.1920.192 +8496: 31 0A 31 39 32 32 0A 31 39 32 33 0A 31 39 32 34 1.1922.1923.1924 +8512: 0A 31 39 32 35 0A 31 39 32 36 0A 31 39 32 37 0A .1925.1926.1927. +8528: 31 39 32 38 0A 31 39 32 39 0A 31 39 33 30 0A 31 1928.1929.1930.1 +8544: 39 33 31 0A 31 39 33 32 0A 31 39 33 33 0A 31 39 931.1932.1933.19 +8560: 33 34 0A 31 39 33 35 0A 31 39 33 36 0A 31 39 33 34.1935.1936.193 +8576: 37 0A 31 39 33 38 0A 31 39 33 39 0A 31 39 34 30 7.1938.1939.1940 +8592: 0A 31 39 34 31 0A 31 39 34 32 0A 31 39 34 33 0A .1941.1942.1943. +8608: 31 39 34 34 0A 31 39 34 35 0A 31 39 34 36 0A 31 1944.1945.1946.1 +8624: 39 34 37 0A 31 39 34 38 0A 31 39 34 39 0A 31 39 947.1948.1949.19 +8640: 35 30 0A 31 39 35 31 0A 31 39 35 32 0A 31 39 35 50.1951.1952.195 +8656: 33 0A 31 39 35 34 0A 31 39 35 35 0A 31 39 35 36 3.1954.1955.1956 +8672: 0A 31 39 35 37 0A 31 39 35 38 0A 31 39 35 39 0A .1957.1958.1959. +8688: 31 39 36 30 0A 31 39 36 31 0A 31 39 36 32 0A 31 1960.1961.1962.1 +8704: 39 36 33 0A 31 39 36 34 0A 31 39 36 35 0A 31 39 963.1964.1965.19 +8720: 36 36 0A 31 39 36 37 0A 31 39 36 38 0A 31 39 36 66.1967.1968.196 +8736: 39 0A 31 39 37 30 0A 31 39 37 31 0A 31 39 37 32 9.1970.1971.1972 +8752: 0A 31 39 37 33 0A 31 39 37 34 0A 31 39 37 35 0A .1973.1974.1975. +8768: 31 39 37 36 0A 31 39 37 37 0A 31 39 37 38 0A 31 1976.1977.1978.1 +8784: 39 37 39 0A 31 39 38 30 0A 31 39 38 31 0A 31 39 979.1980.1981.19 +8800: 38 32 0A 31 39 38 33 0A 31 39 38 34 0A 31 39 38 82.1983.1984.198 +8816: 35 0A 31 39 38 36 0A 31 39 38 37 0A 31 39 38 38 5.1986.1987.1988 +8832: 0A 31 39 38 39 0A 31 39 39 30 0A 31 39 39 31 0A .1989.1990.1991. +8848: 31 39 39 32 0A 31 39 39 33 0A 31 39 39 34 0A 31 1992.1993.1994.1 +8864: 39 39 35 0A 31 39 39 36 0A 31 39 39 37 0A 31 39 995.1996.1997.19 +8880: 39 38 0A 31 39 39 39 0A 32 30 30 30 0A 32 30 30 98.1999.2000.200 +8896: 31 0A 32 30 30 32 0A 32 30 30 33 0A 32 30 30 34 1.2002.2003.2004 +8912: 0A 32 30 30 35 0A 32 30 30 36 0A 32 30 30 37 0A .2005.2006.2007. +8928: 32 30 30 38 0A 32 30 30 39 0A 32 30 31 30 0A 32 2008.2009.2010.2 +8944: 30 31 31 0A 32 30 31 32 0A 32 30 31 33 0A 32 30 011.2012.2013.20 +8960: 31 34 0A 32 30 31 35 0A 32 30 31 36 0A 32 30 31 14.2015.2016.201 +8976: 37 0A 32 30 31 38 0A 32 30 31 39 0A 32 30 32 30 7.2018.2019.2020 +8992: 0A 32 30 32 31 0A 32 30 32 32 0A 32 30 32 33 0A .2021.2022.2023. +9008: 32 30 32 34 0A 32 30 32 35 0A 32 30 32 36 0A 32 2024.2025.2026.2 +9024: 30 32 37 0A 32 30 32 38 0A 32 30 32 39 0A 32 30 027.2028.2029.20 +9040: 33 30 0A 32 30 33 31 0A 32 30 33 32 0A 32 30 33 30.2031.2032.203 +9056: 33 0A 32 30 33 34 0A 32 30 33 35 0A 32 30 33 36 3.2034.2035.2036 +9072: 0A 32 30 33 37 0A 32 30 33 38 0A 32 30 33 39 0A .2037.2038.2039. +9088: 32 30 34 30 0A 32 30 34 31 0A 32 30 34 32 0A 32 2040.2041.2042.2 +9104: 30 34 33 0A 32 30 34 34 0A 32 30 34 35 0A 32 30 043.2044.2045.20 +9120: 34 36 0A 32 30 34 37 0A 32 30 34 38 0A 32 30 34 46.2047.2048.204 +9136: 39 0A 32 30 35 30 0A 32 30 35 31 0A 32 30 35 32 9.2050.2051.2052 +9152: 0A 32 30 35 33 0A 32 30 35 34 0A 32 30 35 35 0A .2053.2054.2055. +9168: 32 30 35 36 0A 32 30 35 37 0A 32 30 35 38 0A 32 2056.2057.2058.2 +9184: 30 35 39 0A 32 30 36 30 0A 32 30 36 31 0A 32 30 059.2060.2061.20 +9200: 36 32 0A 32 30 36 33 0A 32 30 36 34 0A 32 30 36 62.2063.2064.206 +9216: 35 0A 32 30 36 36 0A 32 30 36 37 0A 32 30 36 38 5.2066.2067.2068 +9232: 0A 32 30 36 39 0A 32 30 37 30 0A 32 30 37 31 0A .2069.2070.2071. +9248: 32 30 37 32 0A 32 30 37 33 0A 32 30 37 34 0A 32 2072.2073.2074.2 +9264: 30 37 35 0A 32 30 37 36 0A 32 30 37 37 0A 32 30 075.2076.2077.20 +9280: 37 38 0A 32 30 37 39 0A 32 30 38 30 0A 32 30 38 78.2079.2080.208 +9296: 31 0A 32 30 38 32 0A 32 30 38 33 0A 32 30 38 34 1.2082.2083.2084 +9312: 0A 32 30 38 35 0A 32 30 38 36 0A 32 30 38 37 0A .2085.2086.2087. +9328: 32 30 38 38 0A 32 30 38 39 0A 32 30 39 30 0A 32 2088.2089.2090.2 +9344: 30 39 31 0A 32 30 39 32 0A 32 30 39 33 0A 32 30 091.2092.2093.20 +9360: 39 34 0A 32 30 39 35 0A 32 30 39 36 0A 32 30 39 94.2095.2096.209 +9376: 37 0A 32 30 39 38 0A 32 30 39 39 0A 32 31 30 30 7.2098.2099.2100 +9392: 0A 32 31 30 31 0A 32 31 30 32 0A 32 31 30 33 0A .2101.2102.2103. +9408: 32 31 30 34 0A 32 31 30 35 0A 32 31 30 36 0A 32 2104.2105.2106.2 +9424: 31 30 37 0A 32 31 30 38 0A 32 31 30 39 0A 32 31 107.2108.2109.21 +9440: 31 30 0A 32 31 31 31 0A 32 31 31 32 0A 32 31 31 10.2111.2112.211 +9456: 33 0A 32 31 31 34 0A 32 31 31 35 0A 32 31 31 36 3.2114.2115.2116 +9472: 0A 32 31 31 37 0A 32 31 31 38 0A 32 31 31 39 0A .2117.2118.2119. +9488: 32 31 32 30 0A 32 31 32 31 0A 32 31 32 32 0A 32 2120.2121.2122.2 +9504: 31 32 33 0A 32 31 32 34 0A 32 31 32 35 0A 32 31 123.2124.2125.21 +9520: 32 36 0A 32 31 32 37 0A 32 31 32 38 0A 32 31 32 26.2127.2128.212 +9536: 39 0A 32 31 33 30 0A 32 31 33 31 0A 32 31 33 32 9.2130.2131.2132 +9552: 0A 32 31 33 33 0A 32 31 33 34 0A 32 31 33 35 0A .2133.2134.2135. +9568: 32 31 33 36 0A 32 31 33 37 0A 32 31 33 38 0A 32 2136.2137.2138.2 +9584: 31 33 39 0A 32 31 34 30 0A 32 31 34 31 0A 32 31 139.2140.2141.21 +9600: 34 32 0A 32 31 34 33 0A 32 31 34 34 0A 32 31 34 42.2143.2144.214 +9616: 35 0A 32 31 34 36 0A 32 31 34 37 0A 32 31 34 38 5.2146.2147.2148 +9632: 0A 32 31 34 39 0A 32 31 35 30 0A 32 31 35 31 0A .2149.2150.2151. +9648: 32 31 35 32 0A 32 31 35 33 0A 32 31 35 34 0A 32 2152.2153.2154.2 +9664: 31 35 35 0A 32 31 35 36 0A 32 31 35 37 0A 32 31 155.2156.2157.21 +9680: 35 38 0A 32 31 35 39 0A 32 31 36 30 0A 32 31 36 58.2159.2160.216 +9696: 31 0A 32 31 36 32 0A 32 31 36 33 0A 32 31 36 34 1.2162.2163.2164 +9712: 0A 32 31 36 35 0A 32 31 36 36 0A 32 31 36 37 0A .2165.2166.2167. +9728: 32 31 36 38 0A 32 31 36 39 0A 32 31 37 30 0A 32 2168.2169.2170.2 +9744: 31 37 31 0A 32 31 37 32 0A 32 31 37 33 0A 32 31 171.2172.2173.21 +9760: 37 34 0A 32 31 37 35 0A 32 31 37 36 0A 32 31 37 74.2175.2176.217 +9776: 37 0A 32 31 37 38 0A 32 31 37 39 0A 32 31 38 30 7.2178.2179.2180 +9792: 0A 32 31 38 31 0A 32 31 38 32 0A 32 31 38 33 0A .2181.2182.2183. +9808: 32 31 38 34 0A 32 31 38 35 0A 32 31 38 36 0A 32 2184.2185.2186.2 +9824: 31 38 37 0A 32 31 38 38 0A 32 31 38 39 0A 32 31 187.2188.2189.21 +9840: 39 30 0A 32 31 39 31 0A 32 31 39 32 0A 32 31 39 90.2191.2192.219 +9856: 33 0A 32 31 39 34 0A 32 31 39 35 0A 32 31 39 36 3.2194.2195.2196 +9872: 0A 32 31 39 37 0A 32 31 39 38 0A 32 31 39 39 0A .2197.2198.2199. +9888: 32 32 30 30 0A 32 32 30 31 0A 32 32 30 32 0A 32 2200.2201.2202.2 +9904: 32 30 33 0A 32 32 30 34 0A 32 32 30 35 0A 32 32 203.2204.2205.22 +9920: 30 36 0A 32 32 30 37 0A 32 32 30 38 0A 32 32 30 06.2207.2208.220 +9936: 39 0A 32 32 31 30 0A 32 32 31 31 0A 32 32 31 32 9.2210.2211.2212 +9952: 0A 32 32 31 33 0A 32 32 31 34 0A 32 32 31 35 0A .2213.2214.2215. +9968: 32 32 31 36 0A 32 32 31 37 0A 32 32 31 38 0A 32 2216.2217.2218.2 +9984: 32 31 39 0A 32 32 32 30 0A 32 32 32 31 0A 32 32 219.2220.2221.22 +10000: 32 32 0A 32 32 32 33 0A 32 32 32 34 0A 32 32 32 22.2223.2224.222 +10016: 35 0A 32 32 32 36 0A 32 32 32 37 0A 32 32 32 38 5.2226.2227.2228 +10032: 0A 32 32 32 39 0A 32 32 33 30 0A 32 32 33 31 0A .2229.2230.2231. +10048: 32 32 33 32 0A 32 32 33 33 0A 32 32 33 34 0A 32 2232.2233.2234.2 +10064: 32 33 35 0A 32 32 33 36 0A 32 32 33 37 0A 32 32 235.2236.2237.22 +10080: 33 38 0A 32 32 33 39 0A 32 32 34 30 0A 32 32 34 38.2239.2240.224 +10096: 31 0A 32 32 34 32 0A 32 32 34 33 0A 32 32 34 34 1.2242.2243.2244 +10112: 0A 32 32 34 35 0A 32 32 34 36 0A 32 32 34 37 0A .2245.2246.2247. +10128: 32 32 34 38 0A 32 32 34 39 0A 32 32 35 30 0A 32 2248.2249.2250.2 +10144: 32 35 31 0A 32 32 35 32 0A 32 32 35 33 0A 32 32 251.2252.2253.22 +10160: 35 34 0A 32 32 35 35 0A 32 32 35 36 0A 32 32 35 54.2255.2256.225 +10176: 37 0A 32 32 35 38 0A 32 32 35 39 0A 32 32 36 30 7.2258.2259.2260 +10192: 0A 32 32 36 31 0A 32 32 36 32 0A 32 32 36 33 0A .2261.2262.2263. +10208: 32 32 36 34 0A 32 32 36 35 0A 32 32 36 36 0A 32 2264.2265.2266.2 +10224: 32 36 37 0A 32 32 36 38 0A 32 32 36 39 0A 32 32 267.2268.2269.22 +10240: 37 30 0A 32 32 37 31 0A 32 32 37 32 0A 32 32 37 70.2271.2272.227 +10256: 33 0A 32 32 37 34 0A 32 32 37 35 0A 32 32 37 36 3.2274.2275.2276 +10272: 0A 32 32 37 37 0A 32 32 37 38 0A 32 32 37 39 0A .2277.2278.2279. +10288: 32 32 38 30 0A 32 32 38 31 0A 32 32 38 32 0A 32 2280.2281.2282.2 +10304: 32 38 33 0A 32 32 38 34 0A 32 32 38 35 0A 32 32 283.2284.2285.22 +10320: 38 36 0A 32 32 38 37 0A 32 32 38 38 0A 32 32 38 86.2287.2288.228 +10336: 39 0A 32 32 39 30 0A 32 32 39 31 0A 32 32 39 32 9.2290.2291.2292 +10352: 0A 32 32 39 33 0A 32 32 39 34 0A 32 32 39 35 0A .2293.2294.2295. +10368: 32 32 39 36 0A 32 32 39 37 0A 32 32 39 38 0A 32 2296.2297.2298.2 +10384: 32 39 39 0A 32 33 30 30 0A 32 33 30 31 0A 32 33 299.2300.2301.23 +10400: 30 32 0A 32 33 30 33 0A 32 33 30 34 0A 32 33 30 02.2303.2304.230 +10416: 35 0A 32 33 30 36 0A 32 33 30 37 0A 32 33 30 38 5.2306.2307.2308 +10432: 0A 32 33 30 39 0A 32 33 31 30 0A 32 33 31 31 0A .2309.2310.2311. +10448: 32 33 31 32 0A 32 33 31 33 0A 32 33 31 34 0A 32 2312.2313.2314.2 +10464: 33 31 35 0A 32 33 31 36 0A 32 33 31 37 0A 32 33 315.2316.2317.23 +10480: 31 38 0A 32 33 31 39 0A 32 33 32 30 0A 32 33 32 18.2319.2320.232 +10496: 31 0A 32 33 32 32 0A 32 33 32 33 0A 32 33 32 34 1.2322.2323.2324 +10512: 0A 32 33 32 35 0A 32 33 32 36 0A 32 33 32 37 0A .2325.2326.2327. +10528: 32 33 32 38 0A 32 33 32 39 0A 32 33 33 30 0A 32 2328.2329.2330.2 +10544: 33 33 31 0A 32 33 33 32 0A 32 33 33 33 0A 32 33 331.2332.2333.23 +10560: 33 34 0A 32 33 33 35 0A 32 33 33 36 0A 32 33 33 34.2335.2336.233 +10576: 37 0A 32 33 33 38 0A 32 33 33 39 0A 32 33 34 30 7.2338.2339.2340 +10592: 0A 32 33 34 31 0A 32 33 34 32 0A 32 33 34 33 0A .2341.2342.2343. +10608: 32 33 34 34 0A 32 33 34 35 0A 32 33 34 36 0A 32 2344.2345.2346.2 +10624: 33 34 37 0A 32 33 34 38 0A 32 33 34 39 0A 32 33 347.2348.2349.23 +10640: 35 30 0A 32 33 35 31 0A 32 33 35 32 0A 32 33 35 50.2351.2352.235 +10656: 33 0A 32 33 35 34 0A 32 33 35 35 0A 32 33 35 36 3.2354.2355.2356 +10672: 0A 32 33 35 37 0A 32 33 35 38 0A 32 33 35 39 0A .2357.2358.2359. +10688: 32 33 36 30 0A 32 33 36 31 0A 32 33 36 32 0A 32 2360.2361.2362.2 +10704: 33 36 33 0A 32 33 36 34 0A 32 33 36 35 0A 32 33 363.2364.2365.23 +10720: 36 36 0A 32 33 36 37 0A 32 33 36 38 0A 32 33 36 66.2367.2368.236 +10736: 39 0A 32 33 37 30 0A 32 33 37 31 0A 32 33 37 32 9.2370.2371.2372 +10752: 0A 32 33 37 33 0A 32 33 37 34 0A 32 33 37 35 0A .2373.2374.2375. +10768: 32 33 37 36 0A 32 33 37 37 0A 32 33 37 38 0A 32 2376.2377.2378.2 +10784: 33 37 39 0A 32 33 38 30 0A 32 33 38 31 0A 32 33 379.2380.2381.23 +10800: 38 32 0A 32 33 38 33 0A 32 33 38 34 0A 32 33 38 82.2383.2384.238 +10816: 35 0A 32 33 38 36 0A 32 33 38 37 0A 32 33 38 38 5.2386.2387.2388 +10832: 0A 32 33 38 39 0A 32 33 39 30 0A 32 33 39 31 0A .2389.2390.2391. +10848: 32 33 39 32 0A 32 33 39 33 0A 32 33 39 34 0A 32 2392.2393.2394.2 +10864: 33 39 35 0A 32 33 39 36 0A 32 33 39 37 0A 32 33 395.2396.2397.23 +10880: 39 38 0A 32 33 39 39 0A 32 34 30 30 0A 32 34 30 98.2399.2400.240 +10896: 31 0A 32 34 30 32 0A 32 34 30 33 0A 32 34 30 34 1.2402.2403.2404 +10912: 0A 32 34 30 35 0A 32 34 30 36 0A 32 34 30 37 0A .2405.2406.2407. +10928: 32 34 30 38 0A 32 34 30 39 0A 32 34 31 30 0A 32 2408.2409.2410.2 +10944: 34 31 31 0A 32 34 31 32 0A 32 34 31 33 0A 32 34 411.2412.2413.24 +10960: 31 34 0A 32 34 31 35 0A 32 34 31 36 0A 32 34 31 14.2415.2416.241 +10976: 37 0A 32 34 31 38 0A 32 34 31 39 0A 32 34 32 30 7.2418.2419.2420 +10992: 0A 32 34 32 31 0A 32 34 32 32 0A 32 34 32 33 0A .2421.2422.2423. +11008: 32 34 32 34 0A 32 34 32 35 0A 32 34 32 36 0A 32 2424.2425.2426.2 +11024: 34 32 37 0A 32 34 32 38 0A 32 34 32 39 0A 32 34 427.2428.2429.24 +11040: 33 30 0A 32 34 33 31 0A 32 34 33 32 0A 32 34 33 30.2431.2432.243 +11056: 33 0A 32 34 33 34 0A 32 34 33 35 0A 32 34 33 36 3.2434.2435.2436 +11072: 0A 32 34 33 37 0A 32 34 33 38 0A 32 34 33 39 0A .2437.2438.2439. +11088: 32 34 34 30 0A 32 34 34 31 0A 32 34 34 32 0A 32 2440.2441.2442.2 +11104: 34 34 33 0A 32 34 34 34 0A 32 34 34 35 0A 32 34 443.2444.2445.24 +11120: 34 36 0A 32 34 34 37 0A 32 34 34 38 0A 32 34 34 46.2447.2448.244 +11136: 39 0A 32 34 35 30 0A 32 34 35 31 0A 32 34 35 32 9.2450.2451.2452 +11152: 0A 32 34 35 33 0A 32 34 35 34 0A 32 34 35 35 0A .2453.2454.2455. +11168: 32 34 35 36 0A 32 34 35 37 0A 32 34 35 38 0A 32 2456.2457.2458.2 +11184: 34 35 39 0A 32 34 36 30 0A 32 34 36 31 0A 32 34 459.2460.2461.24 +11200: 36 32 0A 32 34 36 33 0A 32 34 36 34 0A 32 34 36 62.2463.2464.246 +11216: 35 0A 32 34 36 36 0A 32 34 36 37 0A 32 34 36 38 5.2466.2467.2468 +11232: 0A 32 34 36 39 0A 32 34 37 30 0A 32 34 37 31 0A .2469.2470.2471. +11248: 32 34 37 32 0A 32 34 37 33 0A 32 34 37 34 0A 32 2472.2473.2474.2 +11264: 34 37 35 0A 32 34 37 36 0A 32 34 37 37 0A 32 34 475.2476.2477.24 +11280: 37 38 0A 32 34 37 39 0A 32 34 38 30 0A 32 34 38 78.2479.2480.248 +11296: 31 0A 32 34 38 32 0A 32 34 38 33 0A 32 34 38 34 1.2482.2483.2484 +11312: 0A 32 34 38 35 0A 32 34 38 36 0A 32 34 38 37 0A .2485.2486.2487. +11328: 32 34 38 38 0A 32 34 38 39 0A 32 34 39 30 0A 32 2488.2489.2490.2 +11344: 34 39 31 0A 32 34 39 32 0A 32 34 39 33 0A 32 34 491.2492.2493.24 +11360: 39 34 0A 32 34 39 35 0A 32 34 39 36 0A 32 34 39 94.2495.2496.249 +11376: 37 0A 32 34 39 38 0A 32 34 39 39 0A 32 35 30 30 7.2498.2499.2500 +11392: 0A 32 35 30 31 0A 32 35 30 32 0A 32 35 30 33 0A .2501.2502.2503. +11408: 32 35 30 34 0A 32 35 30 35 0A 32 35 30 36 0A 32 2504.2505.2506.2 +11424: 35 30 37 0A 32 35 30 38 0A 32 35 30 39 0A 32 35 507.2508.2509.25 +11440: 31 30 0A 32 35 31 31 0A 32 35 31 32 0A 32 35 31 10.2511.2512.251 +11456: 33 0A 32 35 31 34 0A 32 35 31 35 0A 32 35 31 36 3.2514.2515.2516 +11472: 0A 32 35 31 37 0A 32 35 31 38 0A 32 35 31 39 0A .2517.2518.2519. +11488: 32 35 32 30 0A 32 35 32 31 0A 32 35 32 32 0A 32 2520.2521.2522.2 +11504: 35 32 33 0A 32 35 32 34 0A 32 35 32 35 0A 32 35 523.2524.2525.25 +11520: 32 36 0A 32 35 32 37 0A 32 35 32 38 0A 32 35 32 26.2527.2528.252 +11536: 39 0A 32 35 33 30 0A 32 35 33 31 0A 32 35 33 32 9.2530.2531.2532 +11552: 0A 32 35 33 33 0A 32 35 33 34 0A 32 35 33 35 0A .2533.2534.2535. +11568: 32 35 33 36 0A 32 35 33 37 0A 32 35 33 38 0A 32 2536.2537.2538.2 +11584: 35 33 39 0A 32 35 34 30 0A 32 35 34 31 0A 32 35 539.2540.2541.25 +11600: 34 32 0A 32 35 34 33 0A 32 35 34 34 0A 32 35 34 42.2543.2544.254 +11616: 35 0A 32 35 34 36 0A 32 35 34 37 0A 32 35 34 38 5.2546.2547.2548 +11632: 0A 32 35 34 39 0A 32 35 35 30 0A 32 35 35 31 0A .2549.2550.2551. +11648: 32 35 35 32 0A 32 35 35 33 0A 32 35 35 34 0A 32 2552.2553.2554.2 +11664: 35 35 35 0A 32 35 35 36 0A 32 35 35 37 0A 32 35 555.2556.2557.25 +11680: 35 38 0A 32 35 35 39 0A 32 35 36 30 0A 32 35 36 58.2559.2560.256 +11696: 31 0A 32 35 36 32 0A 32 35 36 33 0A 32 35 36 34 1.2562.2563.2564 +11712: 0A 32 35 36 35 0A 32 35 36 36 0A 32 35 36 37 0A .2565.2566.2567. +11728: 32 35 36 38 0A 32 35 36 39 0A 32 35 37 30 0A 32 2568.2569.2570.2 +11744: 35 37 31 0A 32 35 37 32 0A 32 35 37 33 0A 32 35 571.2572.2573.25 +11760: 37 34 0A 32 35 37 35 0A 32 35 37 36 0A 32 35 37 74.2575.2576.257 +11776: 37 0A 32 35 37 38 0A 32 35 37 39 0A 32 35 38 30 7.2578.2579.2580 +11792: 0A 32 35 38 31 0A 32 35 38 32 0A 32 35 38 33 0A .2581.2582.2583. +11808: 32 35 38 34 0A 32 35 38 35 0A 32 35 38 36 0A 32 2584.2585.2586.2 +11824: 35 38 37 0A 32 35 38 38 0A 32 35 38 39 0A 32 35 587.2588.2589.25 +11840: 39 30 0A 32 35 39 31 0A 32 35 39 32 0A 32 35 39 90.2591.2592.259 +11856: 33 0A 32 35 39 34 0A 32 35 39 35 0A 32 35 39 36 3.2594.2595.2596 +11872: 0A 32 35 39 37 0A 32 35 39 38 0A 32 35 39 39 0A .2597.2598.2599. +11888: 32 36 30 30 0A 32 36 30 31 0A 32 36 30 32 0A 32 2600.2601.2602.2 +11904: 36 30 33 0A 32 36 30 34 0A 32 36 30 35 0A 32 36 603.2604.2605.26 +11920: 30 36 0A 32 36 30 37 0A 32 36 30 38 0A 32 36 30 06.2607.2608.260 +11936: 39 0A 32 36 31 30 0A 32 36 31 31 0A 32 36 31 32 9.2610.2611.2612 +11952: 0A 32 36 31 33 0A 32 36 31 34 0A 32 36 31 35 0A .2613.2614.2615. +11968: 32 36 31 36 0A 32 36 31 37 0A 32 36 31 38 0A 32 2616.2617.2618.2 +11984: 36 31 39 0A 32 36 32 30 0A 32 36 32 31 0A 32 36 619.2620.2621.26 +12000: 32 32 0A 32 36 32 33 0A 32 36 32 34 0A 32 36 32 22.2623.2624.262 +12016: 35 0A 32 36 32 36 0A 32 36 32 37 0A 32 36 32 38 5.2626.2627.2628 +12032: 0A 32 36 32 39 0A 32 36 33 30 0A 32 36 33 31 0A .2629.2630.2631. +12048: 32 36 33 32 0A 32 36 33 33 0A 32 36 33 34 0A 32 2632.2633.2634.2 +12064: 36 33 35 0A 32 36 33 36 0A 32 36 33 37 0A 32 36 635.2636.2637.26 +12080: 33 38 0A 32 36 33 39 0A 32 36 34 30 0A 32 36 34 38.2639.2640.264 +12096: 31 0A 32 36 34 32 0A 32 36 34 33 0A 32 36 34 34 1.2642.2643.2644 +12112: 0A 32 36 34 35 0A 32 36 34 36 0A 32 36 34 37 0A .2645.2646.2647. +12128: 32 36 34 38 0A 32 36 34 39 0A 32 36 35 30 0A 32 2648.2649.2650.2 +12144: 36 35 31 0A 32 36 35 32 0A 32 36 35 33 0A 32 36 651.2652.2653.26 +12160: 35 34 0A 32 36 35 35 0A 32 36 35 36 0A 32 36 35 54.2655.2656.265 +12176: 37 0A 32 36 35 38 0A 32 36 35 39 0A 32 36 36 30 7.2658.2659.2660 +12192: 0A 32 36 36 31 0A 32 36 36 32 0A 32 36 36 33 0A .2661.2662.2663. +12208: 32 36 36 34 0A 32 36 36 35 0A 32 36 36 36 0A 32 2664.2665.2666.2 +12224: 36 36 37 0A 32 36 36 38 0A 32 36 36 39 0A 32 36 667.2668.2669.26 +12240: 37 30 0A 32 36 37 31 0A 32 36 37 32 0A 32 36 37 70.2671.2672.267 +12256: 33 0A 32 36 37 34 0A 32 36 37 35 0A 32 36 37 36 3.2674.2675.2676 +12272: 0A 32 36 37 37 0A 32 36 37 38 0A 32 36 37 39 0A .2677.2678.2679. +12288: 32 36 38 30 0A 32 36 38 31 0A 32 36 38 32 0A 32 2680.2681.2682.2 +12304: 36 38 33 0A 32 36 38 34 0A 32 36 38 35 0A 32 36 683.2684.2685.26 +12320: 38 36 0A 32 36 38 37 0A 32 36 38 38 0A 32 36 38 86.2687.2688.268 +12336: 39 0A 32 36 39 30 0A 32 36 39 31 0A 32 36 39 32 9.2690.2691.2692 +12352: 0A 32 36 39 33 0A 32 36 39 34 0A 32 36 39 35 0A .2693.2694.2695. +12368: 32 36 39 36 0A 32 36 39 37 0A 32 36 39 38 0A 32 2696.2697.2698.2 +12384: 36 39 39 0A 32 37 30 30 0A 32 37 30 31 0A 32 37 699.2700.2701.27 +12400: 30 32 0A 32 37 30 33 0A 32 37 30 34 0A 32 37 30 02.2703.2704.270 +12416: 35 0A 32 37 30 36 0A 32 37 30 37 0A 32 37 30 38 5.2706.2707.2708 +12432: 0A 32 37 30 39 0A 32 37 31 30 0A 32 37 31 31 0A .2709.2710.2711. +12448: 32 37 31 32 0A 32 37 31 33 0A 32 37 31 34 0A 32 2712.2713.2714.2 +12464: 37 31 35 0A 32 37 31 36 0A 32 37 31 37 0A 32 37 715.2716.2717.27 +12480: 31 38 0A 32 37 31 39 0A 32 37 32 30 0A 32 37 32 18.2719.2720.272 +12496: 31 0A 32 37 32 32 0A 32 37 32 33 0A 32 37 32 34 1.2722.2723.2724 +12512: 0A 32 37 32 35 0A 32 37 32 36 0A 32 37 32 37 0A .2725.2726.2727. +12528: 32 37 32 38 0A 32 37 32 39 0A 32 37 33 30 0A 32 2728.2729.2730.2 +12544: 37 33 31 0A 32 37 33 32 0A 32 37 33 33 0A 32 37 731.2732.2733.27 +12560: 33 34 0A 32 37 33 35 0A 32 37 33 36 0A 32 37 33 34.2735.2736.273 +12576: 37 0A 32 37 33 38 0A 32 37 33 39 0A 32 37 34 30 7.2738.2739.2740 +12592: 0A 32 37 34 31 0A 32 37 34 32 0A 32 37 34 33 0A .2741.2742.2743. +12608: 32 37 34 34 0A 32 37 34 35 0A 32 37 34 36 0A 32 2744.2745.2746.2 +12624: 37 34 37 0A 32 37 34 38 0A 32 37 34 39 0A 32 37 747.2748.2749.27 +12640: 35 30 0A 32 37 35 31 0A 32 37 35 32 0A 32 37 35 50.2751.2752.275 +12656: 33 0A 32 37 35 34 0A 32 37 35 35 0A 32 37 35 36 3.2754.2755.2756 +12672: 0A 32 37 35 37 0A 32 37 35 38 0A 32 37 35 39 0A .2757.2758.2759. +12688: 32 37 36 30 0A 32 37 36 31 0A 32 37 36 32 0A 32 2760.2761.2762.2 +12704: 37 36 33 0A 32 37 36 34 0A 32 37 36 35 0A 32 37 763.2764.2765.27 +12720: 36 36 0A 32 37 36 37 0A 32 37 36 38 0A 32 37 36 66.2767.2768.276 +12736: 39 0A 32 37 37 30 0A 32 37 37 31 0A 32 37 37 32 9.2770.2771.2772 +12752: 0A 32 37 37 33 0A 32 37 37 34 0A 32 37 37 35 0A .2773.2774.2775. +12768: 32 37 37 36 0A 32 37 37 37 0A 32 37 37 38 0A 32 2776.2777.2778.2 +12784: 37 37 39 0A 32 37 38 30 0A 32 37 38 31 0A 32 37 779.2780.2781.27 +12800: 38 32 0A 32 37 38 33 0A 32 37 38 34 0A 32 37 38 82.2783.2784.278 +12816: 35 0A 32 37 38 36 0A 32 37 38 37 0A 32 37 38 38 5.2786.2787.2788 +12832: 0A 32 37 38 39 0A 32 37 39 30 0A 32 37 39 31 0A .2789.2790.2791. +12848: 32 37 39 32 0A 32 37 39 33 0A 32 37 39 34 0A 32 2792.2793.2794.2 +12864: 37 39 35 0A 32 37 39 36 0A 32 37 39 37 0A 32 37 795.2796.2797.27 +12880: 39 38 0A 32 37 39 39 0A 32 38 30 30 0A 32 38 30 98.2799.2800.280 +12896: 31 0A 32 38 30 32 0A 32 38 30 33 0A 32 38 30 34 1.2802.2803.2804 +12912: 0A 32 38 30 35 0A 32 38 30 36 0A 32 38 30 37 0A .2805.2806.2807. +12928: 32 38 30 38 0A 32 38 30 39 0A 32 38 31 30 0A 32 2808.2809.2810.2 +12944: 38 31 31 0A 32 38 31 32 0A 32 38 31 33 0A 32 38 811.2812.2813.28 +12960: 31 34 0A 32 38 31 35 0A 32 38 31 36 0A 32 38 31 14.2815.2816.281 +12976: 37 0A 32 38 31 38 0A 32 38 31 39 0A 32 38 32 30 7.2818.2819.2820 +12992: 0A 32 38 32 31 0A 32 38 32 32 0A 32 38 32 33 0A .2821.2822.2823. +13008: 32 38 32 34 0A 32 38 32 35 0A 32 38 32 36 0A 32 2824.2825.2826.2 +13024: 38 32 37 0A 32 38 32 38 0A 32 38 32 39 0A 32 38 827.2828.2829.28 +13040: 33 30 0A 32 38 33 31 0A 32 38 33 32 0A 32 38 33 30.2831.2832.283 +13056: 33 0A 32 38 33 34 0A 32 38 33 35 0A 32 38 33 36 3.2834.2835.2836 +13072: 0A 32 38 33 37 0A 32 38 33 38 0A 32 38 33 39 0A .2837.2838.2839. +13088: 32 38 34 30 0A 32 38 34 31 0A 32 38 34 32 0A 32 2840.2841.2842.2 +13104: 38 34 33 0A 32 38 34 34 0A 32 38 34 35 0A 32 38 843.2844.2845.28 +13120: 34 36 0A 32 38 34 37 0A 32 38 34 38 0A 32 38 34 46.2847.2848.284 +13136: 39 0A 32 38 35 30 0A 32 38 35 31 0A 32 38 35 32 9.2850.2851.2852 +13152: 0A 32 38 35 33 0A 32 38 35 34 0A 32 38 35 35 0A .2853.2854.2855. +13168: 32 38 35 36 0A 32 38 35 37 0A 32 38 35 38 0A 32 2856.2857.2858.2 +13184: 38 35 39 0A 32 38 36 30 0A 32 38 36 31 0A 32 38 859.2860.2861.28 +13200: 36 32 0A 32 38 36 33 0A 32 38 36 34 0A 32 38 36 62.2863.2864.286 +13216: 35 0A 32 38 36 36 0A 32 38 36 37 0A 32 38 36 38 5.2866.2867.2868 +13232: 0A 32 38 36 39 0A 32 38 37 30 0A 32 38 37 31 0A .2869.2870.2871. +13248: 32 38 37 32 0A 32 38 37 33 0A 32 38 37 34 0A 32 2872.2873.2874.2 +13264: 38 37 35 0A 32 38 37 36 0A 32 38 37 37 0A 32 38 875.2876.2877.28 +13280: 37 38 0A 32 38 37 39 0A 32 38 38 30 0A 32 38 38 78.2879.2880.288 +13296: 31 0A 32 38 38 32 0A 32 38 38 33 0A 32 38 38 34 1.2882.2883.2884 +13312: 0A 32 38 38 35 0A 32 38 38 36 0A 32 38 38 37 0A .2885.2886.2887. +13328: 32 38 38 38 0A 32 38 38 39 0A 32 38 39 30 0A 32 2888.2889.2890.2 +13344: 38 39 31 0A 32 38 39 32 0A 32 38 39 33 0A 32 38 891.2892.2893.28 +13360: 39 34 0A 32 38 39 35 0A 32 38 39 36 0A 32 38 39 94.2895.2896.289 +13376: 37 0A 32 38 39 38 0A 32 38 39 39 0A 32 39 30 30 7.2898.2899.2900 +13392: 0A 32 39 30 31 0A 32 39 30 32 0A 32 39 30 33 0A .2901.2902.2903. +13408: 32 39 30 34 0A 32 39 30 35 0A 32 39 30 36 0A 32 2904.2905.2906.2 +13424: 39 30 37 0A 32 39 30 38 0A 32 39 30 39 0A 32 39 907.2908.2909.29 +13440: 31 30 0A 32 39 31 31 0A 32 39 31 32 0A 32 39 31 10.2911.2912.291 +13456: 33 0A 32 39 31 34 0A 32 39 31 35 0A 32 39 31 36 3.2914.2915.2916 +13472: 0A 32 39 31 37 0A 32 39 31 38 0A 32 39 31 39 0A .2917.2918.2919. +13488: 32 39 32 30 0A 32 39 32 31 0A 32 39 32 32 0A 32 2920.2921.2922.2 +13504: 39 32 33 0A 32 39 32 34 0A 32 39 32 35 0A 32 39 923.2924.2925.29 +13520: 32 36 0A 32 39 32 37 0A 32 39 32 38 0A 32 39 32 26.2927.2928.292 +13536: 39 0A 32 39 33 30 0A 32 39 33 31 0A 32 39 33 32 9.2930.2931.2932 +13552: 0A 32 39 33 33 0A 32 39 33 34 0A 32 39 33 35 0A .2933.2934.2935. +13568: 32 39 33 36 0A 32 39 33 37 0A 32 39 33 38 0A 32 2936.2937.2938.2 +13584: 39 33 39 0A 32 39 34 30 0A 32 39 34 31 0A 32 39 939.2940.2941.29 +13600: 34 32 0A 32 39 34 33 0A 32 39 34 34 0A 32 39 34 42.2943.2944.294 +13616: 35 0A 32 39 34 36 0A 32 39 34 37 0A 32 39 34 38 5.2946.2947.2948 +13632: 0A 32 39 34 39 0A 32 39 35 30 0A 32 39 35 31 0A .2949.2950.2951. +13648: 32 39 35 32 0A 32 39 35 33 0A 32 39 35 34 0A 32 2952.2953.2954.2 +13664: 39 35 35 0A 32 39 35 36 0A 32 39 35 37 0A 32 39 955.2956.2957.29 +13680: 35 38 0A 32 39 35 39 0A 32 39 36 30 0A 32 39 36 58.2959.2960.296 +13696: 31 0A 32 39 36 32 0A 32 39 36 33 0A 32 39 36 34 1.2962.2963.2964 +13712: 0A 32 39 36 35 0A 32 39 36 36 0A 32 39 36 37 0A .2965.2966.2967. +13728: 32 39 36 38 0A 32 39 36 39 0A 32 39 37 30 0A 32 2968.2969.2970.2 +13744: 39 37 31 0A 32 39 37 32 0A 32 39 37 33 0A 32 39 971.2972.2973.29 +13760: 37 34 0A 32 39 37 35 0A 32 39 37 36 0A 32 39 37 74.2975.2976.297 +13776: 37 0A 32 39 37 38 0A 32 39 37 39 0A 32 39 38 30 7.2978.2979.2980 +13792: 0A 32 39 38 31 0A 32 39 38 32 0A 32 39 38 33 0A .2981.2982.2983. +13808: 32 39 38 34 0A 32 39 38 35 0A 32 39 38 36 0A 32 2984.2985.2986.2 +13824: 39 38 37 0A 32 39 38 38 0A 32 39 38 39 0A 32 39 987.2988.2989.29 +13840: 39 30 0A 32 39 39 31 0A 32 39 39 32 0A 32 39 39 90.2991.2992.299 +13856: 33 0A 32 39 39 34 0A 32 39 39 35 0A 32 39 39 36 3.2994.2995.2996 +13872: 0A 32 39 39 37 0A 32 39 39 38 0A 32 39 39 39 0A .2997.2998.2999. diff --git a/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_bgzf@14kb.txt.gz.snap b/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_bgzf@14kb.txt.gz.snap new file mode 100644 index 00000000..940a0e2a --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_bgzf@14kb.txt.gz.snap @@ -0,0 +1,410 @@ +--- +source: src/common/io/std.rs +expression: "String::from_utf8_lossy(&buffer)" +--- +0000: 1F 8B 08 00 00 00 00 00 00 FF 24 DB C9 81 EB 30 ..........$....0 +0016: 12 04 D1 3B AD 61 06 37 C0 7F C7 94 51 BA 43 B3 ...;.a.7....Q.C. +0032: 20 FA B7 58 8F D5 39 38 AE E3 3E 9E E3 3D BE 63 ...X..98..>..=.c +0048: 1D FB C8 79 24 47 38 72 1D B9 8F 3C 47 DE 23 DF ...y$G8r......r| +0176: 1C DF 75 7C F7 F1 3D C7 D7 FF 3B DF F1 AD E3 DB ..u|..=...;..... +0192: C7 3A 8F 95 63 71 AC EB 58 F7 B1 9E 63 BD C7 EA .:..cq..X...c... +0208: FF DB 75 AC 7D EC F3 D8 39 36 C7 BE 8E 7D 1F FB ..u.}...96...}.. +0224: 39 F6 7B EC EF D8 BD 0C 6F A3 D7 71 F6 3E CE 5E 9.{.....o..q.>.^ +0240: C8 D9 1B 39 7B 25 67 EF E4 EC A5 9C BD 95 B3 D7 ...9{%g......... +0256: 72 F6 DC 5C 5B CF 79 71 DE 9C 57 E7 DD 79 79 DE r..\[.yq..W..yy. +0272: 9E D7 D7 FB 4B 2F 30 78 BF 3D D7 3B 4C 2F 31 BD ....K/0x.=.;L/1. +0288: C5 F4 1A D3 7B 4C 2F 32 BD C9 F4 2A D3 BB CC 65 ....{L/2...*...e +0304: 88 9E EB 75 A6 F7 99 5E 68 7A A3 E9 95 A6 77 9A ...u...^hz....w. +0320: 5E 6A 7A AB E9 B5 E6 B6 58 CF F5 66 D3 AB 4D EF ^jz.....X..f..M. +0336: 36 BD DC F4 76 D3 EB 4D EF 37 BD E0 F4 86 F3 98 6...v..M.7...... +0352: B6 E7 7A C9 E9 2D A7 D7 9C DE 73 7A D1 E9 4D A7 ..z..-....sz..M. +0368: 57 9D DE 75 7A D9 79 FD 19 E8 B9 DE 77 7A E1 E9 W..uz.y.....wz.. +0384: 8D A7 57 9E DE 79 7A E9 E9 AD A7 D7 9E DE 7B 3E ..W..yz.......{> +0400: 7F 58 7A AE 57 9F DE 7D 7A F9 E9 ED A7 D7 9F DE .Xz.W..}z....... +0416: 7F 1A 20 2D 90 26 C8 F2 A7 AA E7 5A 21 CD 90 76 ...-.&.....Z!..v +0432: 48 43 A4 25 D2 14 69 8B 34 46 5A 23 DB 1F 3F 7F HC.%..i.4FZ#..?. +0448: FE FA 03 D8 1E B4 07 ED 41 7B D0 1E B4 07 ED 41 ........A{.....A +0464: 7B D0 1E C4 1F D4 9E 6B 0F DA 83 F6 A0 3D 68 0F {......k.....=h. +0480: DA 83 F6 C0 9F 67 7F A0 E7 27 BA E7 FC 99 F6 87 .....g...'...... +0496: DA 9F 6A 7F AC FD B9 F6 07 BB 3D 68 0F DA 83 CB ..j.......=h.... +0512: 1F FD 9E 6B 0F DA 83 F6 A0 3D 68 0F DA 83 F6 A0 ...k.....=h..... +0528: 3D 68 0F 6E FF 8D F4 5C 7B D0 1E B4 07 ED 41 7B =h.n...\{.....A{ +0544: D0 1E B4 07 ED 41 7B F0 F8 8F A9 E7 DA 83 F6 A0 .....A{......... +0560: 3D 68 0F DA 83 F6 A0 3D 68 0F DA 83 D7 7F 75 3D =h.....=h.....u= +0576: D7 1E B4 07 ED 41 7B D0 1E B4 07 ED 41 7B D0 1E .....A{.....A{.. +0592: 7C FE F3 EC B9 F6 A0 3D 68 0F DA 83 F6 A0 3D 68 |......=h.....=h +0608: 0F DA 83 F6 60 F9 EF B8 E7 DA 83 F6 A0 3D 68 0F ....`........=h. +0624: DA 83 F6 A0 3D 68 0F DA 83 ED 3F 78 FF C5 F7 9F ....=h....?x.... +0640: 7C 7B 5C ED 71 B5 C7 D5 1E 57 7B 5C ED 71 B5 C7 |{\.q....W{\.q.. +0656: D5 1E 57 7B 5C F1 57 43 CF B5 C7 D5 1E 57 7B 5C ..W{\.WC.....W{\ +0672: ED 71 B5 C7 D5 1E 57 7B 5C ED 71 B5 C7 85 BF 43 .q....W{\.q....C +0688: 7A AE 3D AE F6 B8 DA E3 6A 8F AB 3D AE F6 B8 FC z.=.....j..=.... +0704: 4D E3 AF 1A 7F D7 CC 2F 9B 9E F3 D7 8D BF 6F FC M....../......o. +0720: 85 E3 6F 1C 7F E5 B4 C7 D5 1E 57 7B 5C ED 71 DD ..o.......W{\.q. +0736: FE 56 EA B9 F6 B8 DA E3 6A 8F AB 3D AE F6 B8 DA .V......j..=.... +0752: E3 6A 8F AB 3D AE F6 B8 1E 7F 7D F5 5C 7B 5C ED .j..=.....}.\{\. +0768: 71 B5 C7 D5 1E 57 7B 5C ED 71 B5 C7 D5 1E 57 7B q....W{\.q....W{ +0784: 5C AF BF E7 7A AE 3D AE F6 B8 DA E3 6A 8F AB 3D \...z.=.....j..= +0800: AE F6 B8 DA E3 6A 8F AB 3D AE CF 5F 88 3D D7 1E .....j..=.._.=.. +0816: 57 7B 5C ED 71 B5 C7 D5 1E 57 7B 5C ED 71 B5 C7 W{\.q....W{\.q.. +0832: D5 1E D7 F2 37 67 CF B5 C7 D5 1E 57 7B 5C ED 71 ....7g.....W{\.q +0848: B5 C7 D5 1E 57 7B 5C ED 71 B5 C7 B5 FD 15 EB EF ....W{\.q....... +0864: D8 FE 92 6D 8F BB 3D EE F6 B8 DB E3 6E 8F BB 3D ...m..=.....n..= +0880: EE F6 B8 DB E3 6E 8F 3B FE 32 EE B9 F6 B8 DB E3 .....n.;.2...... +0896: 6E 8F BB 3D EE F6 B8 DB E3 6E 8F BB 3D EE F6 B8 n..=.....n..=... +0912: F1 B7 76 CF B5 C7 DD 1E 77 7B DC ED 71 B7 C7 DD ..v.....w{..q... +0928: 1E 77 7B DC ED 71 B7 C7 7D F9 EB BD E7 DA E3 6E .w{..q..}......n +0944: 8F BB 3D EE F6 B8 DB E3 F6 3B C0 2F 01 BF 05 FC ..=......;./.... +0960: 1A 98 EF 81 9E F3 9B C0 AF 02 BF 0B FC 32 68 8F .............2h. +0976: BB 3D EE F6 B8 DB E3 6E 8F FB F1 0B A3 E7 DA E3 .=.....n........ +0992: 6E 8F BB 3D EE F6 B8 DB E3 6E 8F BB 3D EE F6 B8 n..=.....n..=... +1008: DB E3 7E FD 66 E9 B9 F6 B8 DB E3 6E 8F BB 3D EE ..~.f......n..=. +1024: F6 B8 DB E3 6E 8F BB 3D EE F6 B8 3F BF 82 7A AE ....n..=...?..z. +1040: 3D EE F6 B8 DB E3 6E 8F BB 3D EE F6 B8 DB E3 6E =.....n..=.....n +1056: 8F BB 3D EE E5 77 55 CF B5 C7 DD 1E 77 7B DC ED ..=..wU.....w{.. +1072: 71 B7 C7 DD 1E 77 7B DC ED 71 B7 C7 BD FD 52 F3 q....w{..q....R. +1088: 5B AD 5F 6B ED F1 B4 C7 D3 1E 4F 7B 3C ED F1 B4 [._k......O{<... +1104: C7 D3 1E 4F 7B 3C ED F1 C4 AF BF 9E 6B 8F A7 3D ...O{<......k..= +1120: 9E F6 78 DA E3 69 8F A7 3D 9E F6 78 DA E3 69 8F ..x..i..=..x..i. +1136: 07 BF 27 7B AE 3D 9E F6 78 DA E3 69 8F A7 3D 9E ..'{.=..x..i..=. +1152: F6 78 DA E3 69 8F A7 3D 9E CB 2F D4 9E 6B 8F A7 .x..i..=../..k.. +1168: 3D 9E F6 78 DA E3 69 8F A7 3D 9E F6 78 DA E3 69 =..x..i..=..x..i +1184: 8F E7 F6 9B B7 E7 DA E3 69 8F A7 3D 9E F6 78 FC ........i..=..x. +1200: 76 F6 EB D9 EF 67 BF A0 FD 86 9E AF E8 9E F3 4B v....g.........K +1216: DA 6F 69 BF A6 DB E3 69 8F A7 3D 9E F6 78 DA E3 .oi....i..=..x.. +1232: 69 8F E7 F5 BB BC E7 DA E3 69 8F A7 3D 9E F6 78 i........i..=..x +1248: DA E3 69 8F A7 3D 9E F6 78 DA E3 F9 FC D2 EF B9 ..i..=..x....... +1264: F6 78 DA E3 69 8F A7 3D 9E F6 78 DA E3 69 8F A7 .x..i..=..x..i.. +1280: 3D 9E F6 78 96 4F 07 3D D7 1E 4F 7B 3C ED F1 B4 =..x.O.=..O{<... +1296: C7 D3 1E 4F 7B 3C ED F1 B4 C7 D3 1E CF F6 31 C2 ...O{<........1. +1312: E7 88 3E 48 B4 C7 DB 1E 6F 7B BC ED F1 B6 C7 DB ..>H....o{...... +1328: 1E 6F 7B BC ED F1 B6 C7 1B 1F 38 7A AE 3D DE F6 .o{.......8z.=.. +1344: 78 DB E3 6D 8F B7 3D DE F6 78 DB E3 6D 8F B7 3D x..m..=..x..m..= +1360: 5E 7C 32 E9 B9 F6 78 DB E3 6D 8F B7 3D DE F6 78 ^|2...x..m..=..x +1376: DB E3 6D 8F B7 3D DE F6 78 2F 1F 61 7A AE 3D DE ..m..=..x/.az.=. +1392: F6 78 DB E3 6D 8F B7 3D DE F6 78 DB E3 6D 8F B7 .x..m..=..x..m.. +1408: 3D DE DB 67 9D 9E 6B 8F B7 3D DE F6 78 DB E3 6D =..g..k..=..x..m +1424: 8F B7 3D DE F6 78 DB E3 6D 8F F7 F1 A1 A8 E7 DA ..=..x..m....... +1440: E3 6D 8F B7 3D 5E 9F 9B 7C 70 F2 C9 C9 47 27 9F .m..=^..|p...G'. +1456: 9D 7C 78 9A A7 A7 9E F3 F9 C9 07 A8 F6 78 DB E3 .|x..........x.. +1472: 6D 8F B7 3D DE F6 78 DB E3 6D 8F F7 F3 31 AB E7 m..=..x..m...1.. +1488: DA E3 6D 8F B7 3D DE F6 78 DB E3 6D 8F B7 3D DE ..m..=..x..m..=. +1504: F6 78 DB E3 5D 3E 8F F5 5C 7B BC ED F1 B6 C7 DB .x..]>..\{...... +1520: 1E 6F 7B BC ED F1 B6 C7 DB 1E 6F 7B BC DB 07 37 .o{.......o{...7 +1536: 9F DC FA E8 D6 1E 5F 7B 7C ED F1 B5 C7 D7 1E 5F ......_{|......_ +1552: 7B 7C ED F1 B5 C7 D7 1E 5F 7C C4 EB B9 F6 F8 DA {|......_|...... +1568: E3 6B 8F AF 3D BE F6 F8 DA E3 6B 8F AF 3D BE F6 .k..=.....k..=.. +1584: F8 F0 59 B0 E7 DA E3 6B 8F AF 3D BE F6 F8 DA E3 ..Y....k..=..... +1600: 6B 8F AF 3D BE F6 F8 DA E3 BB 7C 68 EC B9 F6 F8 k..=......|h.... +1616: DA E3 6B 8F AF 3D BE F6 F8 DA E3 6B 8F AF 3D BE ..k..=.....k..=. +1632: F6 F8 6E 9F 2E 7B AE 3D BE F6 F8 DA E3 6B 8F AF ..n..{.=.....k.. +1648: 3D BE F6 F8 DA E3 6B 8F AF 3D BE C7 C7 D0 9E 6B =.....k..=.....k +1664: 8F AF 3D BE F6 F8 DA E3 6B 8F AF 3D BE F6 F8 DA ..=.....k..=.... +1680: E3 6B 8F EF F5 79 B5 E7 DA E3 6B 8F CF 27 5A 1F .k...y....k..'Z. +1696: 69 7D A6 F5 A1 D6 A7 5A 1F 6B 7D AE 9D 07 DB 9E i}.....Z.k}..... +1712: F3 D1 B6 3D BE F6 F8 DA E3 6B 8F AF 3D BE F6 F8 ...=.....k..=... +1728: DA E3 6B 8F 6F F9 04 DC 73 ED F1 B5 C7 D7 1E 5F ..k.o...s......_ +1744: 7B 7C ED F1 B5 C7 D7 1E 5F 7B 7C ED F1 6D 1F 95 {|......_{|..m.. +1760: 7D 56 EE C3 72 7B AC F6 58 ED B1 DA 63 B5 C7 6A }V..r{..X...c..j +1776: 8F D5 1E AB 3D 56 7B AC F8 50 DD 73 ED B1 DA 63 ....=V{..P.s...c +1792: B5 C7 6A 8F D5 1E AB 3D 56 7B AC F6 58 ED B1 F0 ..j....=V{..X... +1808: E9 BB E7 DA 63 B5 C7 6A 8F D5 1E AB 3D 56 7B AC ....c..j....=V{. +1824: F6 58 ED B1 DA 63 5D 3E A6 F7 5C 7B AC F6 58 ED .X...c]>..\{..X. +1840: B1 DA 63 B5 C7 6A 8F D5 1E AB 3D 56 7B AC DB E7 ..c..j....=V{... +1856: F9 9E 6B 8F D5 1E AB 3D 56 7B AC F6 58 ED B1 DA ..k....=V{..X... +1872: 63 B5 C7 6A 8F F5 F8 E0 DF 73 ED B1 DA 63 B5 C7 c..j.....s...c.. +1888: 6A 8F D5 1E AB 3D 56 7B AC F6 58 ED B1 5E 27 84 j....=V{..X..^'. +1904: 9E 6B 8F D5 1E AB 3D 56 7B AC F6 58 ED B1 DA 63 .k....=V{..X...c +1920: B5 C7 6A 8F F5 39 4A F4 5C 7B 2C 67 0D 87 0D A7 ..j..9J.\{,g.... +1936: 0D C7 0D E7 0D 07 0E 27 0E 47 8E 99 39 7A AE 3D .......'.G..9z.= +1952: 56 7B AC F6 58 ED B1 DA 63 B5 C7 6A 8F D5 1E AB V{..X...c..j.... +1968: 3D D6 76 38 71 3A E9 78 D2 1E BB 3D 76 7B EC F6 =.v8q:.x...=v{.. +1984: D8 ED B1 DB 63 B7 C7 6E 8F DD 1E 3B 8E 31 3D D7 ....c..n...;.1=. +2000: 1E BB 3D 76 7B EC F6 D8 ED B1 DB 63 B7 C7 6E 8F ..=v{......c..n. +2016: DD 1E 1B E7 9D 9E 6B 8F DD 1E BB 3D 76 7B EC F6 ......k....=v{.. +2032: D8 ED B1 DB 63 B7 C7 6E 8F 7D 39 18 F5 5C 7B EC ....c..n.}9..\{. +2048: F6 D8 ED B1 DB 63 B7 C7 6E 8F DD 1E BB 3D 76 7B .....c..n....=v{ +2064: EC DB 09 AA E7 DA 63 B7 C7 6E 8F DD 1E BB 3D 76 ......c..n....=v +2080: 7B EC F6 D8 ED B1 DB 63 3F 8E 5A 3D D7 1E BB 3D {......c?.Z=...= +2096: 76 7B EC F6 D8 ED B1 DB 63 B7 C7 6E 8F DD 1E FB v{......c..n.... +2112: 75 26 EB B9 F6 D8 ED B1 DB 63 B7 C7 6E 8F DD 1E u&.......c..n... +2128: BB 3D 76 7B EC F6 D8 9F C3 5B CF B5 C7 6E 8F DD .=v{.....[...n.. +2144: 1E BB 3D 76 7B EC F6 D8 ED B1 DB 63 B7 C7 5E 4E ..=v{......c..^N +2160: 79 3D E7 14 E8 18 E8 1C E8 20 E8 24 E8 28 E8 2C y=.........$.(., +2176: E8 30 E8 34 38 E3 E0 CC 83 0E 84 33 11 CE 48 38 .0.48......3..H8 +2192: 33 E1 0C 85 33 15 CE 58 38 73 E1 0C 86 4E 86 67 3...3..X8s...N.g +2208: 66 84 F4 13 0E 87 A7 D3 E1 E9 78 78 3A 1F 9E 0E f.........xx:... +2224: 88 A7 13 E2 E9 88 78 3A 23 9E 0E 89 27 33 75 FA ......x:#...'3u. +2240: 09 E7 C4 D3 41 F1 74 52 3C 1D 15 4F 67 C5 D3 61 ....A.tR<..Og..a +2256: F1 74 5A 3C 1D 17 4F E7 C5 F3 9A 41 D5 4F 38 32 .tZ<..O....A.O82 +2272: 9E CE 8C A7 43 E3 E9 D4 78 3A 36 9E CE 8D A7 83 ....C...x:6..... +2288: E3 E9 E4 78 3A 3A 9E F7 CC B6 7E C2 E9 F1 74 7C ...x::....~...t| +2304: 3C 9D 1F 4F 07 C8 D3 09 F2 74 84 3C 9D 21 4F 87 <..O.....t.<.!O. +2320: C8 D3 29 F2 7C 66 1C F6 13 0E 92 A7 93 E4 E9 28 ..).|f.........( +2336: 79 3A 4B 9E 0E 93 A7 D3 E4 E9 38 79 3A 4F 9E 0E y:K.......8y:O.. +2352: 94 E7 3B 13 B4 9F 70 A6 3C 1D 2A 4F A7 CA D3 B1 ..;...p.<.*O.... +2368: F2 74 AE 3C 1D 2C 4F 27 CB D3 D1 F2 74 B6 3C BF .t.<.,O'....t.<. +2384: 19 BA FD 84 E3 E5 E9 7C 79 3A 60 9E 4E 98 A7 23 .......|y:`.N..# +2400: E6 E9 8C 79 3A 64 9E 4E 99 A7 63 E6 B9 66 4E F7 ...y:d.N..c..fN. +2416: 13 4E 9A A7 A3 E6 E9 AC 79 3A 6C 9E 4E 9B A7 E3 .N......y:l.N... +2432: E6 E9 BC 79 3A 70 9E 4E 9C E7 9E D1 7E 66 7B 87 ...y:p.N....~f{. +2448: 7B 9B 0F 03 8C 03 0C 04 8C 04 0C 05 8C 05 0C 06 {............... +2464: FC 35 E0 CF 01 7E 62 40 60 44 60 48 60 4C 60 50 .5...~b@`D`H`L`P +2480: 60 54 60 58 C0 E6 03 03 23 03 43 03 63 03 83 03 `T`X....#.C.c... +2496: A3 03 C3 03 E3 03 03 04 23 04 43 04 63 04 83 04 ........#.C.c... +2512: A3 04 C3 04 E3 04 03 05 23 05 43 05 63 05 83 05 ........#.C.c... +2528: A3 05 C3 05 E3 05 03 06 23 06 43 06 63 06 83 06 ........#.C.c... +2544: A3 06 C3 06 E3 06 03 07 23 07 43 07 63 07 83 07 ........#.C.c... +2560: A3 07 C3 07 E3 07 03 08 23 08 43 08 63 08 83 08 ........#.C.c... +2576: A3 08 C3 08 E3 08 03 09 23 09 43 09 63 09 83 09 ........#.C.c... +2592: A3 09 C3 09 E3 09 03 0A 23 0A 43 0A 63 0A 83 0A ........#.C.c... +2608: A3 0A C3 0A E3 0A 03 0B 23 0B 43 0B 63 0B 83 0B ........#.C.c... +2624: A3 0B C3 0B E3 0B 03 0C 23 0C 43 0C 63 0C 83 0C ........#.C.c... +2640: A3 0C C3 0C 3A 43 84 86 28 0D 91 1A A2 35 44 6C ....:C..(....5Dl +2656: 88 DA 10 B9 21 7A 43 04 87 28 0E 91 1C C2 D8 99 ....!zC..(...... +2672: CD 55 87 C8 0E D1 1D 22 3C 44 79 88 F4 10 C6 82 .U.....".|D.....#. +2960: 47 E4 8F E8 1F 11 40 A2 80 44 02 89 06 12 11 24 G.....@..D.....$ +2976: 2A 48 64 90 E8 20 11 42 A2 84 44 0A 89 16 12 31 *Hd....B..D....1 +2992: 24 6A 48 E4 90 E8 21 11 44 A2 88 44 12 89 26 12 $jH...!.D..D..&. +3008: 51 24 AA 48 64 91 E8 22 11 46 A2 8C 44 1A 89 36 Q$.Hd..".F..D..6 +3024: 12 71 24 EA 48 E4 91 E8 23 11 48 A2 90 44 22 89 .q$.H...#.H..D". +3040: 46 12 91 24 2A 49 64 92 E8 24 11 4A A2 94 44 2A F..$*Id..$.J..D* +3056: 89 56 12 B1 24 6A 49 E4 92 E8 25 11 4C A2 98 44 .V..$jI...%.L..D +3072: 32 89 66 12 D1 24 AA 49 64 93 E8 26 11 4E A2 9C 2.f..$.Id..&.N.. +3088: 44 3A 89 76 12 F1 24 F7 38 B9 CD F5 93 08 28 51 D:.v..$.8.....(Q +3104: 50 22 A1 44 43 89 88 12 15 25 32 4A 74 94 08 29 P".DC....%2Jt..) +3120: 51 52 22 A5 44 4B 89 98 12 35 25 72 4A F4 94 08 QR".DK...5%rJ... +3136: 2A 51 54 22 A9 44 53 89 A8 12 55 25 B2 4A EE 71 *QT".DS...U%.J.q +3152: E0 81 E0 91 E0 A1 E0 BF 05 FB 89 D1 E0 E1 E0 F1 ................ +3168: E0 01 61 9B 4B 2C D1 58 22 B2 44 65 89 CC 12 9D ..a.K,.X".De.... +3184: 25 42 4B 94 96 48 2D D1 5A 22 B6 44 6D 89 DC 12 %BK..H-.Z".Dm... +3200: BD 25 82 4B 14 97 48 2E D1 5C 22 BA 44 75 89 EC .%.K..H..\".Du.. +3216: 12 DD 25 C2 4B 94 97 48 2F D1 5E 22 BE 44 7D 89 ..%.K..H/.^".D}. +3232: FC 12 FD 25 02 4C 14 98 48 30 D1 60 22 C2 44 85 ...%.L..H0.`".D. +3248: 89 0C 13 1D 26 42 4C 94 98 48 31 D1 62 22 C6 44 ....&BL..H1.b".D +3264: 8D 89 1C 13 3D 26 82 4C 14 99 48 32 D1 64 22 CA ....=&.L..H2.d". +3280: 44 95 89 2C 13 5D 26 C2 4C 94 99 48 33 D1 66 22 D..,.]&.L..H3.f" +3296: CE 44 9D 89 3C 13 7D 26 02 4D 14 9A 3C F3 76 C4 .D..<.}&.M..<.v. +3312: E6 22 4D 54 9A C8 34 D1 69 22 D4 44 A9 89 54 13 ."MT..4.i".D..T. +3328: AD 26 62 4D D4 9A C8 35 D1 6B 22 D8 44 B1 89 64 .&bM...5.k".D..d +3344: 13 CD 26 A2 4D 54 9B C8 36 D1 6D 22 DC 44 B9 89 ..&.MT..6.m".D.. +3360: 74 13 ED 26 E2 4D D4 9B C8 37 D1 6F 22 E0 44 C1 t..&.M...7.o".D. +3376: 89 84 13 0D 27 22 4E 9E 79 0B 30 AF 01 E6 3D C0 ....'"N.y.0...=. +3392: BC 08 98 37 01 FF 57 01 7E 62 5E 06 CC DB 80 79 ...7..W.~b^....y +3408: 1D 60 73 41 27 8A 4E 24 9D 68 3A 11 75 A2 EA 44 .`sA'.N$.h:.u..D +3424: D6 89 AE 13 61 27 CA 4E A4 9D 68 3B 11 77 A2 EE ....a'.N..h;.w.. +3440: 44 DE 89 BE 13 81 27 0A 4F 24 9E 68 3C 11 79 A2 D.....'.O$.h<.y. +3456: F2 44 E6 89 CE 13 A1 27 4A 4F A4 9E 68 3D 11 7B .D.....'JO..h=.{ +3472: A2 F6 44 EE 89 DE 13 C1 27 8A 4F 24 9F 68 3E 11 ..D.....'.O$.h>. +3488: 7D A2 FA 44 F6 89 EE 13 E1 27 CA 4F A4 9F 68 3F }..D.....'.O..h? +3504: 11 7F A2 FE 44 FE 89 FE 13 01 28 0A 50 24 A0 68 ....D.....(.P$.h +3520: 40 11 81 A2 02 45 06 CA 3B EF C4 6C AE 04 45 0A @....E..;..l..E. +3536: 8A 16 14 31 28 6A 50 E4 A0 E8 41 11 84 A2 08 45 ...1(jP...A....E +3552: 12 8A 26 14 51 28 AA 50 64 A1 E8 42 11 86 A2 0C ..&.Q(.Pd..B.... +3568: 45 1A 8A 36 14 71 28 EA 50 E4 A1 E8 43 11 88 A2 E..6.q(.P...C... +3584: 10 45 22 8A 46 14 91 28 2A 51 64 A2 E8 44 11 8A .E".F..(*Qd..D.. +3600: A2 14 45 2A 8A 56 14 B1 28 6A 51 E4 A2 E8 45 11 ..E*.V..(jQ...E. +3616: 8C A2 18 45 32 CA 3B EF 80 E6 25 D0 BC 05 9A D7 ...E2.;...%..... +3632: 40 F3 1E 68 5E 04 FD DF 04 F9 89 79 17 34 2F 83 @..h^......y.4/. +3648: 6C 2E 1F 45 3F 8A 80 14 05 29 12 52 34 A4 88 48 l..E?....).R4..H +3664: 51 91 22 23 45 47 8A 90 14 25 29 52 52 B4 A4 88 Q."#EG...%)RR... +3680: 49 51 93 22 27 45 4F 8A A0 14 45 29 92 52 34 A5 IQ."'EO...E).R4. +3696: 88 4A 51 95 22 2B 45 57 8A B0 14 65 29 D2 52 B4 .JQ."+EW...e).R. +3712: A5 88 4B 51 97 22 2F 45 5F 8A C0 14 85 29 12 53 ..KQ."/E_....).S +3728: 34 A6 88 4C 51 99 22 33 45 67 8A D0 14 A5 29 52 4..LQ."3Eg....)R +3744: 53 B4 A6 7C F3 26 D4 E6 72 53 F4 A6 08 4E 51 9C S..|.&..rS...NQ. +3760: 22 39 45 73 8A E8 14 D5 29 B2 53 74 A7 08 4F 51 "9Es....).St..OQ +3776: 9E 22 3D 45 7B 8A F8 14 F5 29 F2 53 F4 A7 08 50 ."=E{....).S...P +3792: 51 A0 22 41 45 83 8A 08 15 15 2A 32 54 74 A8 08 Q."AE.....*2Tt.. +3808: 51 51 A2 22 45 45 8B 8A 18 15 35 2A 72 54 F4 A8 QQ."EE....5*rT.. +3824: 08 52 51 A4 22 49 45 93 8A 28 15 55 2A B2 54 74 .RQ."IE..(.U*.Tt +3840: A9 08 53 51 A6 22 4D 45 9B 8A 38 15 75 2A F2 54 ..SQ."ME..8.u*.T +3856: F4 A9 08 54 F9 E6 0D E0 BC 02 9C 77 80 F3 12 70 ...T.......w...p +3872: DE 02 CE 6B C0 79 0F F8 7F 11 E8 27 E6 55 A0 CD ...k.y.....'.U.. +3888: C5 AA A8 55 91 AB A2 57 45 B0 8A 62 15 C9 2A 9A ...U...WE..b..*. +3904: 55 44 AB A8 56 91 AD A2 5B 45 B8 8A 72 15 E9 2A UD..V...[E..r..* +3920: DA 55 C4 AB A8 57 91 AF A2 5F 45 C0 8A 82 15 09 .U...W..._E..... +3936: 2B 1A 56 44 AC A8 58 91 B1 A2 63 45 C8 8A 92 15 +.VD..X...cE.... +3952: 29 2B 5A 56 C4 AC A8 59 91 B3 A2 67 45 D0 CA 9A )+ZV...Y...gE... +3968: F7 DF 36 D7 B4 22 6A 45 D5 8A AC 15 5D 2B C2 56 ..6.."jE....]+.V +3984: 94 AD 48 5B D1 B6 22 6E 45 DD 8A BC 15 7D 2B 02 ..H[.."nE....}+. +4000: 57 14 AE 48 5C D1 B8 22 72 45 E5 8A CC 15 9D 2B W..H\.."rE.....+ +4016: 42 57 94 AE 48 5D D1 BA 22 76 45 ED 8A DC 15 BD BW..H].."vE..... +4032: 2B 82 57 14 AF 48 5E D1 BC 22 7A 45 F5 8A EC 15 +.W..H^.."zE.... +4048: DD 2B C2 57 94 AF 48 5F D1 BE 22 7E 45 FD 8A FC .+.W..H_.."~E... +4064: 15 FD 2B 02 58 14 B0 48 60 D1 C0 22 82 45 05 8B ..+.X..H`..".E.. +4080: 0C 16 1D 2C 42 58 94 B0 48 61 D1 C2 22 86 45 0D ...,BX..Ha..".E. +4096: 8B 1C 96 35 EF 7F E7 05 F0 BC 01 9E 57 C0 F3 0E ...5........W... +4112: 78 5E 02 CF 5B E0 79 0D FC 7F 0F EC 27 6C 2E 8D x^..[.y.....'l.. +4128: 45 1B 8B 38 16 75 2C F2 58 F4 B1 08 64 51 C8 22 E..8.u,.X...dQ." +4144: 91 45 23 8B 48 16 95 2C 32 59 74 B2 08 65 51 CA .E#.H..,2Yt..eQ. +4160: 22 95 45 2B 8B 58 16 B5 2C 72 59 F4 B2 08 66 51 ".E+.X..,rY...fQ +4176: CC 22 99 45 33 8B 68 16 D5 2C 7B B6 1E 6C 2E 9C .".E3.h..,{..l.. +4192: 45 39 8B 74 16 ED 2C E2 59 D4 B3 C8 67 D1 CF 22 E9.t..,.Y...g.." +4208: A0 45 41 8B 84 16 0D 2D 22 5A 54 B4 C8 68 D1 D1 .EA....-"ZT..h.. +4224: 22 A4 45 49 8B 94 16 2D 2D 62 5A D4 B4 C8 69 D1 ".EI...--bZ...i. +4240: D3 22 A8 45 51 8B A4 16 4D 2D A2 5A 54 B5 C8 6A .".EQ...M-.ZT..j +4256: D1 D5 22 AC 45 59 8B B4 16 6D 2D E2 5A D4 B5 C8 ..".EY...m-.Z... +4272: 6B D1 D7 22 B0 45 61 8B C4 16 8D 2D 22 5B 54 B6 k..".Ea....-"[T. +4288: C8 6C D1 D9 22 B4 45 69 8B D4 16 AD 2D 62 5B D4 .l..".Ei....-b[. +4304: B6 C8 6D D1 DB 22 B8 45 71 8B E4 16 CD 2D A2 5B ..m..".Eq....-.[ +4320: 54 B7 C8 6E D1 DD 22 BC 45 79 8B F4 16 ED 2D E2 T..n..".Ey....-. +4336: 5B F6 BC FD 9F D7 FF F3 FE 7F 16 00 66 03 60 56 [...........f.`V +4352: 00 66 07 60 96 00 66 0B E0 BF 06 30 7B 00 2E 02 .f.`..f....0{... +4368: CC 26 C0 AC 02 CC 2E C0 2C 03 CC 36 C0 AC 03 CC .&......,..6.... +4384: 3E C0 2C 04 B8 11 A0 C3 A1 C3 A1 C3 A1 C3 A1 C3 >.,............. +4400: A1 C3 A1 C3 A1 C3 A1 C3 71 CE AE 8B CB 01 3A 1C ........q.....:. +4416: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4432: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4448: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4464: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4480: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4496: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4512: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4528: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4544: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4560: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4576: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 99 2D :.:.:.:.:.:.:..- +4592: 90 FF 1A 88 9F 98 45 90 D9 04 99 55 90 D9 05 99 ......E....U.... +4608: 65 90 D9 06 99 75 10 9B 67 36 9C 98 CD 11 3F 61 e....u..g6....?a +4624: 73 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D s............... +4640: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4656: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4672: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4688: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4704: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4720: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4736: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4752: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4768: 0E 1D 0E 1D 0E 1D 8E D9 F7 99 85 9F D9 F8 99 95 ................ +4784: 9F D9 F9 99 A5 9F D9 FA 99 B5 9F D9 FB 99 C5 9F ................ +4800: D9 FC 99 D5 9F D9 FD 99 E5 9F D9 FE 99 F5 9F D9 ................ +4816: FF 99 05 A0 D9 00 9A 15 A0 FF 0E D0 2C 01 FD B7 ............,... +4832: 80 FC C4 EC 01 CD 22 D0 6C 02 CD 2A D0 EC 02 CD ......".l..*.... +4848: 32 90 CD 67 1D 68 F6 81 66 21 68 36 82 66 25 68 2..g.h..f!h6.f%h +4864: 76 82 66 29 68 B6 82 66 2D 68 F6 82 66 31 68 36 v.f)h..f-h..f1h6 +4880: 83 66 35 68 76 83 66 39 68 B6 83 66 3D 68 F6 83 .f5hv.f9h..f=h.. +4896: 66 41 68 36 84 66 45 68 76 84 66 49 68 B6 84 66 fAh6.fEhv.fIh..f +4912: 4D 68 F6 84 66 51 68 36 85 66 55 68 76 85 66 59 Mh..fQh6.fUhv.fY +4928: 68 B6 85 66 5D 68 F6 85 66 61 68 36 86 66 65 68 h..f]h..fah6.feh +4944: 76 86 66 69 68 B6 86 66 6D 68 F6 86 66 71 68 36 v.fih..fmh..fqh6 +4960: 87 66 75 68 76 87 66 79 68 B6 87 66 7D 68 F6 87 .fuhv.fyh..f}h.. +4976: 66 81 68 36 88 66 85 68 76 88 66 89 68 B6 88 66 f.h6.f.hv.f.h..f +4992: 8D 68 F6 88 66 91 68 36 89 66 95 68 76 89 66 99 .h..f.h6.f.hv.f. +5008: 68 B6 89 66 9D 68 F6 89 66 A1 68 36 8A 66 A5 48 h..f.h..f.h6.f.H +5024: 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 .C.C.C.C.C.C.C.C +5040: 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 .C.C.C.C.C.C.C.C +5056: 87 43 87 43 87 43 87 43 87 43 87 43 87 E3 9A 6D .C.C.C.C.C.C...m +5072: 46 9B EB 70 E8 70 E8 70 E8 70 E8 70 5C B3 01 36 F..p.p.p.p.p\..6 +5088: 2B 60 B3 03 F6 5F 02 F3 13 B3 06 36 7B 60 B3 08 +`..._.....6{`.. +5104: 36 9B 60 B3 0A 66 73 1D 0E 1D 0E 1D 0E 1D 0E 1D 6.`..fs......... +5120: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5136: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5152: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5168: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5184: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5200: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5216: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5232: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5248: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5264: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 8E 7B 76 58 .............{vX +5280: 6D AE C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 m............... +5296: C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 71 CF FE .............q.. +5312: DF 2C 00 CE 06 E0 AC 00 FE 77 00 FD C4 6C 01 CE .,.......w...l.. +5328: 1A E0 EC 01 CE 22 A0 CD 75 38 74 38 74 38 74 38 ....."..u8t8t8t8 +5344: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5360: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5376: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5392: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5408: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5424: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5440: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5456: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5472: 74 38 74 38 74 38 74 38 74 38 74 38 9E D9 5C B6 t8t8t8t8t8t8..\. +5488: B9 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E ................ +5504: 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E ................ +5520: 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E C7 33 ...............3 +5536: DB 9F B3 FE 39 FB 9F B3 00 3A 1B A0 FF 15 50 3F ....9....:....P? +5552: 31 4B A0 B3 05 3A 6B A0 36 D7 E1 D0 E1 D0 E1 D0 1K...:k.6....... +5568: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5584: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5600: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5616: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5632: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5648: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5664: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5680: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 78 67 5F DD E6 ...........xg_.. +5696: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +5712: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +5728: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +5744: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +5760: EF EC FE CE F2 EF 6C FF CE FA EF EC FF CE 02 F0 ......l......... +5776: 7F 03 D8 4F CC 0E F0 2C 01 DB 5C 87 43 87 43 87 ...O...,..\.C.C. +5792: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5808: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5824: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5840: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5856: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5872: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5888: 43 87 43 87 43 87 43 87 43 87 E3 9B BF 52 B0 B9 C.C.C.C.C....R.. +5904: 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 ................ +5920: 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 ................ +5936: 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 ................ +5952: 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 ................ +5968: 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 ................ +5984: 0E C7 37 9B DF B3 FA 3D BB DF B3 FC 3D DB DF B3 ..7....=....=... +6000: FE 3D FB DF FF 05 70 3F 31 2B E0 36 D7 E1 D0 E1 .=....p?1+.6.... +6016: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6032: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6048: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6064: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6080: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6096: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 58 F3 B7 29 36 D7 ..........X..)6. +6112: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6128: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6144: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6160: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6176: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6192: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6208: E1 D0 E1 58 B3 F7 3F 8B FF B3 F9 3F AB FF B3 FB ...X..?....?.... +6224: 3F CB FF B3 FD 3F EB FF FF FD 7F 3F 61 73 1D 0E ?....?.....?as.. +6240: 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E ................ +6256: 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E ................ +6272: 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E ................ +6288: 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E ................ +6304: 1D 0E 1D 0E 1D 0E 1D 0E 1D 8E 3D 7F 91 64 73 1D ..........=..ds. +6320: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6336: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6352: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6368: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6384: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6400: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6416: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6432: 0E 1D 0E 1D 8E 3D 7F F5 31 7F F6 31 7F F7 31 7F .....=..1..1..1. +6448: F8 31 7F F9 31 7F FA 31 7F FB 31 7F FC 31 7F FD .1..1..1..1..1.. +6464: F1 FF F3 8F 7D FC 00 00 00 FF FF 03 00 80 99 73 ....}..........s +6480: 8A 40 36 00 00 .@6.. diff --git a/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_bgzf@14kb.txt.snap b/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_bgzf@14kb.txt.snap new file mode 100644 index 00000000..962471d0 --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_bgzf@14kb.txt.snap @@ -0,0 +1,872 @@ +--- +source: src/common/io/std.rs +expression: "String::from_utf8_lossy(&buffer)" +--- +0000: 31 0A 32 0A 33 0A 34 0A 35 0A 36 0A 37 0A 38 0A 1.2.3.4.5.6.7.8. +0016: 39 0A 31 30 0A 31 31 0A 31 32 0A 31 33 0A 31 34 9.10.11.12.13.14 +0032: 0A 31 35 0A 31 36 0A 31 37 0A 31 38 0A 31 39 0A .15.16.17.18.19. +0048: 32 30 0A 32 31 0A 32 32 0A 32 33 0A 32 34 0A 32 20.21.22.23.24.2 +0064: 35 0A 32 36 0A 32 37 0A 32 38 0A 32 39 0A 33 30 5.26.27.28.29.30 +0080: 0A 33 31 0A 33 32 0A 33 33 0A 33 34 0A 33 35 0A .31.32.33.34.35. +0096: 33 36 0A 33 37 0A 33 38 0A 33 39 0A 34 30 0A 34 36.37.38.39.40.4 +0112: 31 0A 34 32 0A 34 33 0A 34 34 0A 34 35 0A 34 36 1.42.43.44.45.46 +0128: 0A 34 37 0A 34 38 0A 34 39 0A 35 30 0A 35 31 0A .47.48.49.50.51. +0144: 35 32 0A 35 33 0A 35 34 0A 35 35 0A 35 36 0A 35 52.53.54.55.56.5 +0160: 37 0A 35 38 0A 35 39 0A 36 30 0A 36 31 0A 36 32 7.58.59.60.61.62 +0176: 0A 36 33 0A 36 34 0A 36 35 0A 36 36 0A 36 37 0A .63.64.65.66.67. +0192: 36 38 0A 36 39 0A 37 30 0A 37 31 0A 37 32 0A 37 68.69.70.71.72.7 +0208: 33 0A 37 34 0A 37 35 0A 37 36 0A 37 37 0A 37 38 3.74.75.76.77.78 +0224: 0A 37 39 0A 38 30 0A 38 31 0A 38 32 0A 38 33 0A .79.80.81.82.83. +0240: 38 34 0A 38 35 0A 38 36 0A 38 37 0A 38 38 0A 38 84.85.86.87.88.8 +0256: 39 0A 39 30 0A 39 31 0A 39 32 0A 39 33 0A 39 34 9.90.91.92.93.94 +0272: 0A 39 35 0A 39 36 0A 39 37 0A 39 38 0A 39 39 0A .95.96.97.98.99. +0288: 31 30 30 0A 31 30 31 0A 31 30 32 0A 31 30 33 0A 100.101.102.103. +0304: 31 30 34 0A 31 30 35 0A 31 30 36 0A 31 30 37 0A 104.105.106.107. +0320: 31 30 38 0A 31 30 39 0A 31 31 30 0A 31 31 31 0A 108.109.110.111. +0336: 31 31 32 0A 31 31 33 0A 31 31 34 0A 31 31 35 0A 112.113.114.115. +0352: 31 31 36 0A 31 31 37 0A 31 31 38 0A 31 31 39 0A 116.117.118.119. +0368: 31 32 30 0A 31 32 31 0A 31 32 32 0A 31 32 33 0A 120.121.122.123. +0384: 31 32 34 0A 31 32 35 0A 31 32 36 0A 31 32 37 0A 124.125.126.127. +0400: 31 32 38 0A 31 32 39 0A 31 33 30 0A 31 33 31 0A 128.129.130.131. +0416: 31 33 32 0A 31 33 33 0A 31 33 34 0A 31 33 35 0A 132.133.134.135. +0432: 31 33 36 0A 31 33 37 0A 31 33 38 0A 31 33 39 0A 136.137.138.139. +0448: 31 34 30 0A 31 34 31 0A 31 34 32 0A 31 34 33 0A 140.141.142.143. +0464: 31 34 34 0A 31 34 35 0A 31 34 36 0A 31 34 37 0A 144.145.146.147. +0480: 31 34 38 0A 31 34 39 0A 31 35 30 0A 31 35 31 0A 148.149.150.151. +0496: 31 35 32 0A 31 35 33 0A 31 35 34 0A 31 35 35 0A 152.153.154.155. +0512: 31 35 36 0A 31 35 37 0A 31 35 38 0A 31 35 39 0A 156.157.158.159. +0528: 31 36 30 0A 31 36 31 0A 31 36 32 0A 31 36 33 0A 160.161.162.163. +0544: 31 36 34 0A 31 36 35 0A 31 36 36 0A 31 36 37 0A 164.165.166.167. +0560: 31 36 38 0A 31 36 39 0A 31 37 30 0A 31 37 31 0A 168.169.170.171. +0576: 31 37 32 0A 31 37 33 0A 31 37 34 0A 31 37 35 0A 172.173.174.175. +0592: 31 37 36 0A 31 37 37 0A 31 37 38 0A 31 37 39 0A 176.177.178.179. +0608: 31 38 30 0A 31 38 31 0A 31 38 32 0A 31 38 33 0A 180.181.182.183. +0624: 31 38 34 0A 31 38 35 0A 31 38 36 0A 31 38 37 0A 184.185.186.187. +0640: 31 38 38 0A 31 38 39 0A 31 39 30 0A 31 39 31 0A 188.189.190.191. +0656: 31 39 32 0A 31 39 33 0A 31 39 34 0A 31 39 35 0A 192.193.194.195. +0672: 31 39 36 0A 31 39 37 0A 31 39 38 0A 31 39 39 0A 196.197.198.199. +0688: 32 30 30 0A 32 30 31 0A 32 30 32 0A 32 30 33 0A 200.201.202.203. +0704: 32 30 34 0A 32 30 35 0A 32 30 36 0A 32 30 37 0A 204.205.206.207. +0720: 32 30 38 0A 32 30 39 0A 32 31 30 0A 32 31 31 0A 208.209.210.211. +0736: 32 31 32 0A 32 31 33 0A 32 31 34 0A 32 31 35 0A 212.213.214.215. +0752: 32 31 36 0A 32 31 37 0A 32 31 38 0A 32 31 39 0A 216.217.218.219. +0768: 32 32 30 0A 32 32 31 0A 32 32 32 0A 32 32 33 0A 220.221.222.223. +0784: 32 32 34 0A 32 32 35 0A 32 32 36 0A 32 32 37 0A 224.225.226.227. +0800: 32 32 38 0A 32 32 39 0A 32 33 30 0A 32 33 31 0A 228.229.230.231. +0816: 32 33 32 0A 32 33 33 0A 32 33 34 0A 32 33 35 0A 232.233.234.235. +0832: 32 33 36 0A 32 33 37 0A 32 33 38 0A 32 33 39 0A 236.237.238.239. +0848: 32 34 30 0A 32 34 31 0A 32 34 32 0A 32 34 33 0A 240.241.242.243. +0864: 32 34 34 0A 32 34 35 0A 32 34 36 0A 32 34 37 0A 244.245.246.247. +0880: 32 34 38 0A 32 34 39 0A 32 35 30 0A 32 35 31 0A 248.249.250.251. +0896: 32 35 32 0A 32 35 33 0A 32 35 34 0A 32 35 35 0A 252.253.254.255. +0912: 32 35 36 0A 32 35 37 0A 32 35 38 0A 32 35 39 0A 256.257.258.259. +0928: 32 36 30 0A 32 36 31 0A 32 36 32 0A 32 36 33 0A 260.261.262.263. +0944: 32 36 34 0A 32 36 35 0A 32 36 36 0A 32 36 37 0A 264.265.266.267. +0960: 32 36 38 0A 32 36 39 0A 32 37 30 0A 32 37 31 0A 268.269.270.271. +0976: 32 37 32 0A 32 37 33 0A 32 37 34 0A 32 37 35 0A 272.273.274.275. +0992: 32 37 36 0A 32 37 37 0A 32 37 38 0A 32 37 39 0A 276.277.278.279. +1008: 32 38 30 0A 32 38 31 0A 32 38 32 0A 32 38 33 0A 280.281.282.283. +1024: 32 38 34 0A 32 38 35 0A 32 38 36 0A 32 38 37 0A 284.285.286.287. +1040: 32 38 38 0A 32 38 39 0A 32 39 30 0A 32 39 31 0A 288.289.290.291. +1056: 32 39 32 0A 32 39 33 0A 32 39 34 0A 32 39 35 0A 292.293.294.295. +1072: 32 39 36 0A 32 39 37 0A 32 39 38 0A 32 39 39 0A 296.297.298.299. +1088: 33 30 30 0A 33 30 31 0A 33 30 32 0A 33 30 33 0A 300.301.302.303. +1104: 33 30 34 0A 33 30 35 0A 33 30 36 0A 33 30 37 0A 304.305.306.307. +1120: 33 30 38 0A 33 30 39 0A 33 31 30 0A 33 31 31 0A 308.309.310.311. +1136: 33 31 32 0A 33 31 33 0A 33 31 34 0A 33 31 35 0A 312.313.314.315. +1152: 33 31 36 0A 33 31 37 0A 33 31 38 0A 33 31 39 0A 316.317.318.319. +1168: 33 32 30 0A 33 32 31 0A 33 32 32 0A 33 32 33 0A 320.321.322.323. +1184: 33 32 34 0A 33 32 35 0A 33 32 36 0A 33 32 37 0A 324.325.326.327. +1200: 33 32 38 0A 33 32 39 0A 33 33 30 0A 33 33 31 0A 328.329.330.331. +1216: 33 33 32 0A 33 33 33 0A 33 33 34 0A 33 33 35 0A 332.333.334.335. +1232: 33 33 36 0A 33 33 37 0A 33 33 38 0A 33 33 39 0A 336.337.338.339. +1248: 33 34 30 0A 33 34 31 0A 33 34 32 0A 33 34 33 0A 340.341.342.343. +1264: 33 34 34 0A 33 34 35 0A 33 34 36 0A 33 34 37 0A 344.345.346.347. +1280: 33 34 38 0A 33 34 39 0A 33 35 30 0A 33 35 31 0A 348.349.350.351. +1296: 33 35 32 0A 33 35 33 0A 33 35 34 0A 33 35 35 0A 352.353.354.355. +1312: 33 35 36 0A 33 35 37 0A 33 35 38 0A 33 35 39 0A 356.357.358.359. +1328: 33 36 30 0A 33 36 31 0A 33 36 32 0A 33 36 33 0A 360.361.362.363. +1344: 33 36 34 0A 33 36 35 0A 33 36 36 0A 33 36 37 0A 364.365.366.367. +1360: 33 36 38 0A 33 36 39 0A 33 37 30 0A 33 37 31 0A 368.369.370.371. +1376: 33 37 32 0A 33 37 33 0A 33 37 34 0A 33 37 35 0A 372.373.374.375. +1392: 33 37 36 0A 33 37 37 0A 33 37 38 0A 33 37 39 0A 376.377.378.379. +1408: 33 38 30 0A 33 38 31 0A 33 38 32 0A 33 38 33 0A 380.381.382.383. +1424: 33 38 34 0A 33 38 35 0A 33 38 36 0A 33 38 37 0A 384.385.386.387. +1440: 33 38 38 0A 33 38 39 0A 33 39 30 0A 33 39 31 0A 388.389.390.391. +1456: 33 39 32 0A 33 39 33 0A 33 39 34 0A 33 39 35 0A 392.393.394.395. +1472: 33 39 36 0A 33 39 37 0A 33 39 38 0A 33 39 39 0A 396.397.398.399. +1488: 34 30 30 0A 34 30 31 0A 34 30 32 0A 34 30 33 0A 400.401.402.403. +1504: 34 30 34 0A 34 30 35 0A 34 30 36 0A 34 30 37 0A 404.405.406.407. +1520: 34 30 38 0A 34 30 39 0A 34 31 30 0A 34 31 31 0A 408.409.410.411. +1536: 34 31 32 0A 34 31 33 0A 34 31 34 0A 34 31 35 0A 412.413.414.415. +1552: 34 31 36 0A 34 31 37 0A 34 31 38 0A 34 31 39 0A 416.417.418.419. +1568: 34 32 30 0A 34 32 31 0A 34 32 32 0A 34 32 33 0A 420.421.422.423. +1584: 34 32 34 0A 34 32 35 0A 34 32 36 0A 34 32 37 0A 424.425.426.427. +1600: 34 32 38 0A 34 32 39 0A 34 33 30 0A 34 33 31 0A 428.429.430.431. +1616: 34 33 32 0A 34 33 33 0A 34 33 34 0A 34 33 35 0A 432.433.434.435. +1632: 34 33 36 0A 34 33 37 0A 34 33 38 0A 34 33 39 0A 436.437.438.439. +1648: 34 34 30 0A 34 34 31 0A 34 34 32 0A 34 34 33 0A 440.441.442.443. +1664: 34 34 34 0A 34 34 35 0A 34 34 36 0A 34 34 37 0A 444.445.446.447. +1680: 34 34 38 0A 34 34 39 0A 34 35 30 0A 34 35 31 0A 448.449.450.451. +1696: 34 35 32 0A 34 35 33 0A 34 35 34 0A 34 35 35 0A 452.453.454.455. +1712: 34 35 36 0A 34 35 37 0A 34 35 38 0A 34 35 39 0A 456.457.458.459. +1728: 34 36 30 0A 34 36 31 0A 34 36 32 0A 34 36 33 0A 460.461.462.463. +1744: 34 36 34 0A 34 36 35 0A 34 36 36 0A 34 36 37 0A 464.465.466.467. +1760: 34 36 38 0A 34 36 39 0A 34 37 30 0A 34 37 31 0A 468.469.470.471. +1776: 34 37 32 0A 34 37 33 0A 34 37 34 0A 34 37 35 0A 472.473.474.475. +1792: 34 37 36 0A 34 37 37 0A 34 37 38 0A 34 37 39 0A 476.477.478.479. +1808: 34 38 30 0A 34 38 31 0A 34 38 32 0A 34 38 33 0A 480.481.482.483. +1824: 34 38 34 0A 34 38 35 0A 34 38 36 0A 34 38 37 0A 484.485.486.487. +1840: 34 38 38 0A 34 38 39 0A 34 39 30 0A 34 39 31 0A 488.489.490.491. +1856: 34 39 32 0A 34 39 33 0A 34 39 34 0A 34 39 35 0A 492.493.494.495. +1872: 34 39 36 0A 34 39 37 0A 34 39 38 0A 34 39 39 0A 496.497.498.499. +1888: 35 30 30 0A 35 30 31 0A 35 30 32 0A 35 30 33 0A 500.501.502.503. +1904: 35 30 34 0A 35 30 35 0A 35 30 36 0A 35 30 37 0A 504.505.506.507. +1920: 35 30 38 0A 35 30 39 0A 35 31 30 0A 35 31 31 0A 508.509.510.511. +1936: 35 31 32 0A 35 31 33 0A 35 31 34 0A 35 31 35 0A 512.513.514.515. +1952: 35 31 36 0A 35 31 37 0A 35 31 38 0A 35 31 39 0A 516.517.518.519. +1968: 35 32 30 0A 35 32 31 0A 35 32 32 0A 35 32 33 0A 520.521.522.523. +1984: 35 32 34 0A 35 32 35 0A 35 32 36 0A 35 32 37 0A 524.525.526.527. +2000: 35 32 38 0A 35 32 39 0A 35 33 30 0A 35 33 31 0A 528.529.530.531. +2016: 35 33 32 0A 35 33 33 0A 35 33 34 0A 35 33 35 0A 532.533.534.535. +2032: 35 33 36 0A 35 33 37 0A 35 33 38 0A 35 33 39 0A 536.537.538.539. +2048: 35 34 30 0A 35 34 31 0A 35 34 32 0A 35 34 33 0A 540.541.542.543. +2064: 35 34 34 0A 35 34 35 0A 35 34 36 0A 35 34 37 0A 544.545.546.547. +2080: 35 34 38 0A 35 34 39 0A 35 35 30 0A 35 35 31 0A 548.549.550.551. +2096: 35 35 32 0A 35 35 33 0A 35 35 34 0A 35 35 35 0A 552.553.554.555. +2112: 35 35 36 0A 35 35 37 0A 35 35 38 0A 35 35 39 0A 556.557.558.559. +2128: 35 36 30 0A 35 36 31 0A 35 36 32 0A 35 36 33 0A 560.561.562.563. +2144: 35 36 34 0A 35 36 35 0A 35 36 36 0A 35 36 37 0A 564.565.566.567. +2160: 35 36 38 0A 35 36 39 0A 35 37 30 0A 35 37 31 0A 568.569.570.571. +2176: 35 37 32 0A 35 37 33 0A 35 37 34 0A 35 37 35 0A 572.573.574.575. +2192: 35 37 36 0A 35 37 37 0A 35 37 38 0A 35 37 39 0A 576.577.578.579. +2208: 35 38 30 0A 35 38 31 0A 35 38 32 0A 35 38 33 0A 580.581.582.583. +2224: 35 38 34 0A 35 38 35 0A 35 38 36 0A 35 38 37 0A 584.585.586.587. +2240: 35 38 38 0A 35 38 39 0A 35 39 30 0A 35 39 31 0A 588.589.590.591. +2256: 35 39 32 0A 35 39 33 0A 35 39 34 0A 35 39 35 0A 592.593.594.595. +2272: 35 39 36 0A 35 39 37 0A 35 39 38 0A 35 39 39 0A 596.597.598.599. +2288: 36 30 30 0A 36 30 31 0A 36 30 32 0A 36 30 33 0A 600.601.602.603. +2304: 36 30 34 0A 36 30 35 0A 36 30 36 0A 36 30 37 0A 604.605.606.607. +2320: 36 30 38 0A 36 30 39 0A 36 31 30 0A 36 31 31 0A 608.609.610.611. +2336: 36 31 32 0A 36 31 33 0A 36 31 34 0A 36 31 35 0A 612.613.614.615. +2352: 36 31 36 0A 36 31 37 0A 36 31 38 0A 36 31 39 0A 616.617.618.619. +2368: 36 32 30 0A 36 32 31 0A 36 32 32 0A 36 32 33 0A 620.621.622.623. +2384: 36 32 34 0A 36 32 35 0A 36 32 36 0A 36 32 37 0A 624.625.626.627. +2400: 36 32 38 0A 36 32 39 0A 36 33 30 0A 36 33 31 0A 628.629.630.631. +2416: 36 33 32 0A 36 33 33 0A 36 33 34 0A 36 33 35 0A 632.633.634.635. +2432: 36 33 36 0A 36 33 37 0A 36 33 38 0A 36 33 39 0A 636.637.638.639. +2448: 36 34 30 0A 36 34 31 0A 36 34 32 0A 36 34 33 0A 640.641.642.643. +2464: 36 34 34 0A 36 34 35 0A 36 34 36 0A 36 34 37 0A 644.645.646.647. +2480: 36 34 38 0A 36 34 39 0A 36 35 30 0A 36 35 31 0A 648.649.650.651. +2496: 36 35 32 0A 36 35 33 0A 36 35 34 0A 36 35 35 0A 652.653.654.655. +2512: 36 35 36 0A 36 35 37 0A 36 35 38 0A 36 35 39 0A 656.657.658.659. +2528: 36 36 30 0A 36 36 31 0A 36 36 32 0A 36 36 33 0A 660.661.662.663. +2544: 36 36 34 0A 36 36 35 0A 36 36 36 0A 36 36 37 0A 664.665.666.667. +2560: 36 36 38 0A 36 36 39 0A 36 37 30 0A 36 37 31 0A 668.669.670.671. +2576: 36 37 32 0A 36 37 33 0A 36 37 34 0A 36 37 35 0A 672.673.674.675. +2592: 36 37 36 0A 36 37 37 0A 36 37 38 0A 36 37 39 0A 676.677.678.679. +2608: 36 38 30 0A 36 38 31 0A 36 38 32 0A 36 38 33 0A 680.681.682.683. +2624: 36 38 34 0A 36 38 35 0A 36 38 36 0A 36 38 37 0A 684.685.686.687. +2640: 36 38 38 0A 36 38 39 0A 36 39 30 0A 36 39 31 0A 688.689.690.691. +2656: 36 39 32 0A 36 39 33 0A 36 39 34 0A 36 39 35 0A 692.693.694.695. +2672: 36 39 36 0A 36 39 37 0A 36 39 38 0A 36 39 39 0A 696.697.698.699. +2688: 37 30 30 0A 37 30 31 0A 37 30 32 0A 37 30 33 0A 700.701.702.703. +2704: 37 30 34 0A 37 30 35 0A 37 30 36 0A 37 30 37 0A 704.705.706.707. +2720: 37 30 38 0A 37 30 39 0A 37 31 30 0A 37 31 31 0A 708.709.710.711. +2736: 37 31 32 0A 37 31 33 0A 37 31 34 0A 37 31 35 0A 712.713.714.715. +2752: 37 31 36 0A 37 31 37 0A 37 31 38 0A 37 31 39 0A 716.717.718.719. +2768: 37 32 30 0A 37 32 31 0A 37 32 32 0A 37 32 33 0A 720.721.722.723. +2784: 37 32 34 0A 37 32 35 0A 37 32 36 0A 37 32 37 0A 724.725.726.727. +2800: 37 32 38 0A 37 32 39 0A 37 33 30 0A 37 33 31 0A 728.729.730.731. +2816: 37 33 32 0A 37 33 33 0A 37 33 34 0A 37 33 35 0A 732.733.734.735. +2832: 37 33 36 0A 37 33 37 0A 37 33 38 0A 37 33 39 0A 736.737.738.739. +2848: 37 34 30 0A 37 34 31 0A 37 34 32 0A 37 34 33 0A 740.741.742.743. +2864: 37 34 34 0A 37 34 35 0A 37 34 36 0A 37 34 37 0A 744.745.746.747. +2880: 37 34 38 0A 37 34 39 0A 37 35 30 0A 37 35 31 0A 748.749.750.751. +2896: 37 35 32 0A 37 35 33 0A 37 35 34 0A 37 35 35 0A 752.753.754.755. +2912: 37 35 36 0A 37 35 37 0A 37 35 38 0A 37 35 39 0A 756.757.758.759. +2928: 37 36 30 0A 37 36 31 0A 37 36 32 0A 37 36 33 0A 760.761.762.763. +2944: 37 36 34 0A 37 36 35 0A 37 36 36 0A 37 36 37 0A 764.765.766.767. +2960: 37 36 38 0A 37 36 39 0A 37 37 30 0A 37 37 31 0A 768.769.770.771. +2976: 37 37 32 0A 37 37 33 0A 37 37 34 0A 37 37 35 0A 772.773.774.775. +2992: 37 37 36 0A 37 37 37 0A 37 37 38 0A 37 37 39 0A 776.777.778.779. +3008: 37 38 30 0A 37 38 31 0A 37 38 32 0A 37 38 33 0A 780.781.782.783. +3024: 37 38 34 0A 37 38 35 0A 37 38 36 0A 37 38 37 0A 784.785.786.787. +3040: 37 38 38 0A 37 38 39 0A 37 39 30 0A 37 39 31 0A 788.789.790.791. +3056: 37 39 32 0A 37 39 33 0A 37 39 34 0A 37 39 35 0A 792.793.794.795. +3072: 37 39 36 0A 37 39 37 0A 37 39 38 0A 37 39 39 0A 796.797.798.799. +3088: 38 30 30 0A 38 30 31 0A 38 30 32 0A 38 30 33 0A 800.801.802.803. +3104: 38 30 34 0A 38 30 35 0A 38 30 36 0A 38 30 37 0A 804.805.806.807. +3120: 38 30 38 0A 38 30 39 0A 38 31 30 0A 38 31 31 0A 808.809.810.811. +3136: 38 31 32 0A 38 31 33 0A 38 31 34 0A 38 31 35 0A 812.813.814.815. +3152: 38 31 36 0A 38 31 37 0A 38 31 38 0A 38 31 39 0A 816.817.818.819. +3168: 38 32 30 0A 38 32 31 0A 38 32 32 0A 38 32 33 0A 820.821.822.823. +3184: 38 32 34 0A 38 32 35 0A 38 32 36 0A 38 32 37 0A 824.825.826.827. +3200: 38 32 38 0A 38 32 39 0A 38 33 30 0A 38 33 31 0A 828.829.830.831. +3216: 38 33 32 0A 38 33 33 0A 38 33 34 0A 38 33 35 0A 832.833.834.835. +3232: 38 33 36 0A 38 33 37 0A 38 33 38 0A 38 33 39 0A 836.837.838.839. +3248: 38 34 30 0A 38 34 31 0A 38 34 32 0A 38 34 33 0A 840.841.842.843. +3264: 38 34 34 0A 38 34 35 0A 38 34 36 0A 38 34 37 0A 844.845.846.847. +3280: 38 34 38 0A 38 34 39 0A 38 35 30 0A 38 35 31 0A 848.849.850.851. +3296: 38 35 32 0A 38 35 33 0A 38 35 34 0A 38 35 35 0A 852.853.854.855. +3312: 38 35 36 0A 38 35 37 0A 38 35 38 0A 38 35 39 0A 856.857.858.859. +3328: 38 36 30 0A 38 36 31 0A 38 36 32 0A 38 36 33 0A 860.861.862.863. +3344: 38 36 34 0A 38 36 35 0A 38 36 36 0A 38 36 37 0A 864.865.866.867. +3360: 38 36 38 0A 38 36 39 0A 38 37 30 0A 38 37 31 0A 868.869.870.871. +3376: 38 37 32 0A 38 37 33 0A 38 37 34 0A 38 37 35 0A 872.873.874.875. +3392: 38 37 36 0A 38 37 37 0A 38 37 38 0A 38 37 39 0A 876.877.878.879. +3408: 38 38 30 0A 38 38 31 0A 38 38 32 0A 38 38 33 0A 880.881.882.883. +3424: 38 38 34 0A 38 38 35 0A 38 38 36 0A 38 38 37 0A 884.885.886.887. +3440: 38 38 38 0A 38 38 39 0A 38 39 30 0A 38 39 31 0A 888.889.890.891. +3456: 38 39 32 0A 38 39 33 0A 38 39 34 0A 38 39 35 0A 892.893.894.895. +3472: 38 39 36 0A 38 39 37 0A 38 39 38 0A 38 39 39 0A 896.897.898.899. +3488: 39 30 30 0A 39 30 31 0A 39 30 32 0A 39 30 33 0A 900.901.902.903. +3504: 39 30 34 0A 39 30 35 0A 39 30 36 0A 39 30 37 0A 904.905.906.907. +3520: 39 30 38 0A 39 30 39 0A 39 31 30 0A 39 31 31 0A 908.909.910.911. +3536: 39 31 32 0A 39 31 33 0A 39 31 34 0A 39 31 35 0A 912.913.914.915. +3552: 39 31 36 0A 39 31 37 0A 39 31 38 0A 39 31 39 0A 916.917.918.919. +3568: 39 32 30 0A 39 32 31 0A 39 32 32 0A 39 32 33 0A 920.921.922.923. +3584: 39 32 34 0A 39 32 35 0A 39 32 36 0A 39 32 37 0A 924.925.926.927. +3600: 39 32 38 0A 39 32 39 0A 39 33 30 0A 39 33 31 0A 928.929.930.931. +3616: 39 33 32 0A 39 33 33 0A 39 33 34 0A 39 33 35 0A 932.933.934.935. +3632: 39 33 36 0A 39 33 37 0A 39 33 38 0A 39 33 39 0A 936.937.938.939. +3648: 39 34 30 0A 39 34 31 0A 39 34 32 0A 39 34 33 0A 940.941.942.943. +3664: 39 34 34 0A 39 34 35 0A 39 34 36 0A 39 34 37 0A 944.945.946.947. +3680: 39 34 38 0A 39 34 39 0A 39 35 30 0A 39 35 31 0A 948.949.950.951. +3696: 39 35 32 0A 39 35 33 0A 39 35 34 0A 39 35 35 0A 952.953.954.955. +3712: 39 35 36 0A 39 35 37 0A 39 35 38 0A 39 35 39 0A 956.957.958.959. +3728: 39 36 30 0A 39 36 31 0A 39 36 32 0A 39 36 33 0A 960.961.962.963. +3744: 39 36 34 0A 39 36 35 0A 39 36 36 0A 39 36 37 0A 964.965.966.967. +3760: 39 36 38 0A 39 36 39 0A 39 37 30 0A 39 37 31 0A 968.969.970.971. +3776: 39 37 32 0A 39 37 33 0A 39 37 34 0A 39 37 35 0A 972.973.974.975. +3792: 39 37 36 0A 39 37 37 0A 39 37 38 0A 39 37 39 0A 976.977.978.979. +3808: 39 38 30 0A 39 38 31 0A 39 38 32 0A 39 38 33 0A 980.981.982.983. +3824: 39 38 34 0A 39 38 35 0A 39 38 36 0A 39 38 37 0A 984.985.986.987. +3840: 39 38 38 0A 39 38 39 0A 39 39 30 0A 39 39 31 0A 988.989.990.991. +3856: 39 39 32 0A 39 39 33 0A 39 39 34 0A 39 39 35 0A 992.993.994.995. +3872: 39 39 36 0A 39 39 37 0A 39 39 38 0A 39 39 39 0A 996.997.998.999. +3888: 31 30 30 30 0A 31 30 30 31 0A 31 30 30 32 0A 31 1000.1001.1002.1 +3904: 30 30 33 0A 31 30 30 34 0A 31 30 30 35 0A 31 30 003.1004.1005.10 +3920: 30 36 0A 31 30 30 37 0A 31 30 30 38 0A 31 30 30 06.1007.1008.100 +3936: 39 0A 31 30 31 30 0A 31 30 31 31 0A 31 30 31 32 9.1010.1011.1012 +3952: 0A 31 30 31 33 0A 31 30 31 34 0A 31 30 31 35 0A .1013.1014.1015. +3968: 31 30 31 36 0A 31 30 31 37 0A 31 30 31 38 0A 31 1016.1017.1018.1 +3984: 30 31 39 0A 31 30 32 30 0A 31 30 32 31 0A 31 30 019.1020.1021.10 +4000: 32 32 0A 31 30 32 33 0A 31 30 32 34 0A 31 30 32 22.1023.1024.102 +4016: 35 0A 31 30 32 36 0A 31 30 32 37 0A 31 30 32 38 5.1026.1027.1028 +4032: 0A 31 30 32 39 0A 31 30 33 30 0A 31 30 33 31 0A .1029.1030.1031. +4048: 31 30 33 32 0A 31 30 33 33 0A 31 30 33 34 0A 31 1032.1033.1034.1 +4064: 30 33 35 0A 31 30 33 36 0A 31 30 33 37 0A 31 30 035.1036.1037.10 +4080: 33 38 0A 31 30 33 39 0A 31 30 34 30 0A 31 30 34 38.1039.1040.104 +4096: 31 0A 31 30 34 32 0A 31 30 34 33 0A 31 30 34 34 1.1042.1043.1044 +4112: 0A 31 30 34 35 0A 31 30 34 36 0A 31 30 34 37 0A .1045.1046.1047. +4128: 31 30 34 38 0A 31 30 34 39 0A 31 30 35 30 0A 31 1048.1049.1050.1 +4144: 30 35 31 0A 31 30 35 32 0A 31 30 35 33 0A 31 30 051.1052.1053.10 +4160: 35 34 0A 31 30 35 35 0A 31 30 35 36 0A 31 30 35 54.1055.1056.105 +4176: 37 0A 31 30 35 38 0A 31 30 35 39 0A 31 30 36 30 7.1058.1059.1060 +4192: 0A 31 30 36 31 0A 31 30 36 32 0A 31 30 36 33 0A .1061.1062.1063. +4208: 31 30 36 34 0A 31 30 36 35 0A 31 30 36 36 0A 31 1064.1065.1066.1 +4224: 30 36 37 0A 31 30 36 38 0A 31 30 36 39 0A 31 30 067.1068.1069.10 +4240: 37 30 0A 31 30 37 31 0A 31 30 37 32 0A 31 30 37 70.1071.1072.107 +4256: 33 0A 31 30 37 34 0A 31 30 37 35 0A 31 30 37 36 3.1074.1075.1076 +4272: 0A 31 30 37 37 0A 31 30 37 38 0A 31 30 37 39 0A .1077.1078.1079. +4288: 31 30 38 30 0A 31 30 38 31 0A 31 30 38 32 0A 31 1080.1081.1082.1 +4304: 30 38 33 0A 31 30 38 34 0A 31 30 38 35 0A 31 30 083.1084.1085.10 +4320: 38 36 0A 31 30 38 37 0A 31 30 38 38 0A 31 30 38 86.1087.1088.108 +4336: 39 0A 31 30 39 30 0A 31 30 39 31 0A 31 30 39 32 9.1090.1091.1092 +4352: 0A 31 30 39 33 0A 31 30 39 34 0A 31 30 39 35 0A .1093.1094.1095. +4368: 31 30 39 36 0A 31 30 39 37 0A 31 30 39 38 0A 31 1096.1097.1098.1 +4384: 30 39 39 0A 31 31 30 30 0A 31 31 30 31 0A 31 31 099.1100.1101.11 +4400: 30 32 0A 31 31 30 33 0A 31 31 30 34 0A 31 31 30 02.1103.1104.110 +4416: 35 0A 31 31 30 36 0A 31 31 30 37 0A 31 31 30 38 5.1106.1107.1108 +4432: 0A 31 31 30 39 0A 31 31 31 30 0A 31 31 31 31 0A .1109.1110.1111. +4448: 31 31 31 32 0A 31 31 31 33 0A 31 31 31 34 0A 31 1112.1113.1114.1 +4464: 31 31 35 0A 31 31 31 36 0A 31 31 31 37 0A 31 31 115.1116.1117.11 +4480: 31 38 0A 31 31 31 39 0A 31 31 32 30 0A 31 31 32 18.1119.1120.112 +4496: 31 0A 31 31 32 32 0A 31 31 32 33 0A 31 31 32 34 1.1122.1123.1124 +4512: 0A 31 31 32 35 0A 31 31 32 36 0A 31 31 32 37 0A .1125.1126.1127. +4528: 31 31 32 38 0A 31 31 32 39 0A 31 31 33 30 0A 31 1128.1129.1130.1 +4544: 31 33 31 0A 31 31 33 32 0A 31 31 33 33 0A 31 31 131.1132.1133.11 +4560: 33 34 0A 31 31 33 35 0A 31 31 33 36 0A 31 31 33 34.1135.1136.113 +4576: 37 0A 31 31 33 38 0A 31 31 33 39 0A 31 31 34 30 7.1138.1139.1140 +4592: 0A 31 31 34 31 0A 31 31 34 32 0A 31 31 34 33 0A .1141.1142.1143. +4608: 31 31 34 34 0A 31 31 34 35 0A 31 31 34 36 0A 31 1144.1145.1146.1 +4624: 31 34 37 0A 31 31 34 38 0A 31 31 34 39 0A 31 31 147.1148.1149.11 +4640: 35 30 0A 31 31 35 31 0A 31 31 35 32 0A 31 31 35 50.1151.1152.115 +4656: 33 0A 31 31 35 34 0A 31 31 35 35 0A 31 31 35 36 3.1154.1155.1156 +4672: 0A 31 31 35 37 0A 31 31 35 38 0A 31 31 35 39 0A .1157.1158.1159. +4688: 31 31 36 30 0A 31 31 36 31 0A 31 31 36 32 0A 31 1160.1161.1162.1 +4704: 31 36 33 0A 31 31 36 34 0A 31 31 36 35 0A 31 31 163.1164.1165.11 +4720: 36 36 0A 31 31 36 37 0A 31 31 36 38 0A 31 31 36 66.1167.1168.116 +4736: 39 0A 31 31 37 30 0A 31 31 37 31 0A 31 31 37 32 9.1170.1171.1172 +4752: 0A 31 31 37 33 0A 31 31 37 34 0A 31 31 37 35 0A .1173.1174.1175. +4768: 31 31 37 36 0A 31 31 37 37 0A 31 31 37 38 0A 31 1176.1177.1178.1 +4784: 31 37 39 0A 31 31 38 30 0A 31 31 38 31 0A 31 31 179.1180.1181.11 +4800: 38 32 0A 31 31 38 33 0A 31 31 38 34 0A 31 31 38 82.1183.1184.118 +4816: 35 0A 31 31 38 36 0A 31 31 38 37 0A 31 31 38 38 5.1186.1187.1188 +4832: 0A 31 31 38 39 0A 31 31 39 30 0A 31 31 39 31 0A .1189.1190.1191. +4848: 31 31 39 32 0A 31 31 39 33 0A 31 31 39 34 0A 31 1192.1193.1194.1 +4864: 31 39 35 0A 31 31 39 36 0A 31 31 39 37 0A 31 31 195.1196.1197.11 +4880: 39 38 0A 31 31 39 39 0A 31 32 30 30 0A 31 32 30 98.1199.1200.120 +4896: 31 0A 31 32 30 32 0A 31 32 30 33 0A 31 32 30 34 1.1202.1203.1204 +4912: 0A 31 32 30 35 0A 31 32 30 36 0A 31 32 30 37 0A .1205.1206.1207. +4928: 31 32 30 38 0A 31 32 30 39 0A 31 32 31 30 0A 31 1208.1209.1210.1 +4944: 32 31 31 0A 31 32 31 32 0A 31 32 31 33 0A 31 32 211.1212.1213.12 +4960: 31 34 0A 31 32 31 35 0A 31 32 31 36 0A 31 32 31 14.1215.1216.121 +4976: 37 0A 31 32 31 38 0A 31 32 31 39 0A 31 32 32 30 7.1218.1219.1220 +4992: 0A 31 32 32 31 0A 31 32 32 32 0A 31 32 32 33 0A .1221.1222.1223. +5008: 31 32 32 34 0A 31 32 32 35 0A 31 32 32 36 0A 31 1224.1225.1226.1 +5024: 32 32 37 0A 31 32 32 38 0A 31 32 32 39 0A 31 32 227.1228.1229.12 +5040: 33 30 0A 31 32 33 31 0A 31 32 33 32 0A 31 32 33 30.1231.1232.123 +5056: 33 0A 31 32 33 34 0A 31 32 33 35 0A 31 32 33 36 3.1234.1235.1236 +5072: 0A 31 32 33 37 0A 31 32 33 38 0A 31 32 33 39 0A .1237.1238.1239. +5088: 31 32 34 30 0A 31 32 34 31 0A 31 32 34 32 0A 31 1240.1241.1242.1 +5104: 32 34 33 0A 31 32 34 34 0A 31 32 34 35 0A 31 32 243.1244.1245.12 +5120: 34 36 0A 31 32 34 37 0A 31 32 34 38 0A 31 32 34 46.1247.1248.124 +5136: 39 0A 31 32 35 30 0A 31 32 35 31 0A 31 32 35 32 9.1250.1251.1252 +5152: 0A 31 32 35 33 0A 31 32 35 34 0A 31 32 35 35 0A .1253.1254.1255. +5168: 31 32 35 36 0A 31 32 35 37 0A 31 32 35 38 0A 31 1256.1257.1258.1 +5184: 32 35 39 0A 31 32 36 30 0A 31 32 36 31 0A 31 32 259.1260.1261.12 +5200: 36 32 0A 31 32 36 33 0A 31 32 36 34 0A 31 32 36 62.1263.1264.126 +5216: 35 0A 31 32 36 36 0A 31 32 36 37 0A 31 32 36 38 5.1266.1267.1268 +5232: 0A 31 32 36 39 0A 31 32 37 30 0A 31 32 37 31 0A .1269.1270.1271. +5248: 31 32 37 32 0A 31 32 37 33 0A 31 32 37 34 0A 31 1272.1273.1274.1 +5264: 32 37 35 0A 31 32 37 36 0A 31 32 37 37 0A 31 32 275.1276.1277.12 +5280: 37 38 0A 31 32 37 39 0A 31 32 38 30 0A 31 32 38 78.1279.1280.128 +5296: 31 0A 31 32 38 32 0A 31 32 38 33 0A 31 32 38 34 1.1282.1283.1284 +5312: 0A 31 32 38 35 0A 31 32 38 36 0A 31 32 38 37 0A .1285.1286.1287. +5328: 31 32 38 38 0A 31 32 38 39 0A 31 32 39 30 0A 31 1288.1289.1290.1 +5344: 32 39 31 0A 31 32 39 32 0A 31 32 39 33 0A 31 32 291.1292.1293.12 +5360: 39 34 0A 31 32 39 35 0A 31 32 39 36 0A 31 32 39 94.1295.1296.129 +5376: 37 0A 31 32 39 38 0A 31 32 39 39 0A 31 33 30 30 7.1298.1299.1300 +5392: 0A 31 33 30 31 0A 31 33 30 32 0A 31 33 30 33 0A .1301.1302.1303. +5408: 31 33 30 34 0A 31 33 30 35 0A 31 33 30 36 0A 31 1304.1305.1306.1 +5424: 33 30 37 0A 31 33 30 38 0A 31 33 30 39 0A 31 33 307.1308.1309.13 +5440: 31 30 0A 31 33 31 31 0A 31 33 31 32 0A 31 33 31 10.1311.1312.131 +5456: 33 0A 31 33 31 34 0A 31 33 31 35 0A 31 33 31 36 3.1314.1315.1316 +5472: 0A 31 33 31 37 0A 31 33 31 38 0A 31 33 31 39 0A .1317.1318.1319. +5488: 31 33 32 30 0A 31 33 32 31 0A 31 33 32 32 0A 31 1320.1321.1322.1 +5504: 33 32 33 0A 31 33 32 34 0A 31 33 32 35 0A 31 33 323.1324.1325.13 +5520: 32 36 0A 31 33 32 37 0A 31 33 32 38 0A 31 33 32 26.1327.1328.132 +5536: 39 0A 31 33 33 30 0A 31 33 33 31 0A 31 33 33 32 9.1330.1331.1332 +5552: 0A 31 33 33 33 0A 31 33 33 34 0A 31 33 33 35 0A .1333.1334.1335. +5568: 31 33 33 36 0A 31 33 33 37 0A 31 33 33 38 0A 31 1336.1337.1338.1 +5584: 33 33 39 0A 31 33 34 30 0A 31 33 34 31 0A 31 33 339.1340.1341.13 +5600: 34 32 0A 31 33 34 33 0A 31 33 34 34 0A 31 33 34 42.1343.1344.134 +5616: 35 0A 31 33 34 36 0A 31 33 34 37 0A 31 33 34 38 5.1346.1347.1348 +5632: 0A 31 33 34 39 0A 31 33 35 30 0A 31 33 35 31 0A .1349.1350.1351. +5648: 31 33 35 32 0A 31 33 35 33 0A 31 33 35 34 0A 31 1352.1353.1354.1 +5664: 33 35 35 0A 31 33 35 36 0A 31 33 35 37 0A 31 33 355.1356.1357.13 +5680: 35 38 0A 31 33 35 39 0A 31 33 36 30 0A 31 33 36 58.1359.1360.136 +5696: 31 0A 31 33 36 32 0A 31 33 36 33 0A 31 33 36 34 1.1362.1363.1364 +5712: 0A 31 33 36 35 0A 31 33 36 36 0A 31 33 36 37 0A .1365.1366.1367. +5728: 31 33 36 38 0A 31 33 36 39 0A 31 33 37 30 0A 31 1368.1369.1370.1 +5744: 33 37 31 0A 31 33 37 32 0A 31 33 37 33 0A 31 33 371.1372.1373.13 +5760: 37 34 0A 31 33 37 35 0A 31 33 37 36 0A 31 33 37 74.1375.1376.137 +5776: 37 0A 31 33 37 38 0A 31 33 37 39 0A 31 33 38 30 7.1378.1379.1380 +5792: 0A 31 33 38 31 0A 31 33 38 32 0A 31 33 38 33 0A .1381.1382.1383. +5808: 31 33 38 34 0A 31 33 38 35 0A 31 33 38 36 0A 31 1384.1385.1386.1 +5824: 33 38 37 0A 31 33 38 38 0A 31 33 38 39 0A 31 33 387.1388.1389.13 +5840: 39 30 0A 31 33 39 31 0A 31 33 39 32 0A 31 33 39 90.1391.1392.139 +5856: 33 0A 31 33 39 34 0A 31 33 39 35 0A 31 33 39 36 3.1394.1395.1396 +5872: 0A 31 33 39 37 0A 31 33 39 38 0A 31 33 39 39 0A .1397.1398.1399. +5888: 31 34 30 30 0A 31 34 30 31 0A 31 34 30 32 0A 31 1400.1401.1402.1 +5904: 34 30 33 0A 31 34 30 34 0A 31 34 30 35 0A 31 34 403.1404.1405.14 +5920: 30 36 0A 31 34 30 37 0A 31 34 30 38 0A 31 34 30 06.1407.1408.140 +5936: 39 0A 31 34 31 30 0A 31 34 31 31 0A 31 34 31 32 9.1410.1411.1412 +5952: 0A 31 34 31 33 0A 31 34 31 34 0A 31 34 31 35 0A .1413.1414.1415. +5968: 31 34 31 36 0A 31 34 31 37 0A 31 34 31 38 0A 31 1416.1417.1418.1 +5984: 34 31 39 0A 31 34 32 30 0A 31 34 32 31 0A 31 34 419.1420.1421.14 +6000: 32 32 0A 31 34 32 33 0A 31 34 32 34 0A 31 34 32 22.1423.1424.142 +6016: 35 0A 31 34 32 36 0A 31 34 32 37 0A 31 34 32 38 5.1426.1427.1428 +6032: 0A 31 34 32 39 0A 31 34 33 30 0A 31 34 33 31 0A .1429.1430.1431. +6048: 31 34 33 32 0A 31 34 33 33 0A 31 34 33 34 0A 31 1432.1433.1434.1 +6064: 34 33 35 0A 31 34 33 36 0A 31 34 33 37 0A 31 34 435.1436.1437.14 +6080: 33 38 0A 31 34 33 39 0A 31 34 34 30 0A 31 34 34 38.1439.1440.144 +6096: 31 0A 31 34 34 32 0A 31 34 34 33 0A 31 34 34 34 1.1442.1443.1444 +6112: 0A 31 34 34 35 0A 31 34 34 36 0A 31 34 34 37 0A .1445.1446.1447. +6128: 31 34 34 38 0A 31 34 34 39 0A 31 34 35 30 0A 31 1448.1449.1450.1 +6144: 34 35 31 0A 31 34 35 32 0A 31 34 35 33 0A 31 34 451.1452.1453.14 +6160: 35 34 0A 31 34 35 35 0A 31 34 35 36 0A 31 34 35 54.1455.1456.145 +6176: 37 0A 31 34 35 38 0A 31 34 35 39 0A 31 34 36 30 7.1458.1459.1460 +6192: 0A 31 34 36 31 0A 31 34 36 32 0A 31 34 36 33 0A .1461.1462.1463. +6208: 31 34 36 34 0A 31 34 36 35 0A 31 34 36 36 0A 31 1464.1465.1466.1 +6224: 34 36 37 0A 31 34 36 38 0A 31 34 36 39 0A 31 34 467.1468.1469.14 +6240: 37 30 0A 31 34 37 31 0A 31 34 37 32 0A 31 34 37 70.1471.1472.147 +6256: 33 0A 31 34 37 34 0A 31 34 37 35 0A 31 34 37 36 3.1474.1475.1476 +6272: 0A 31 34 37 37 0A 31 34 37 38 0A 31 34 37 39 0A .1477.1478.1479. +6288: 31 34 38 30 0A 31 34 38 31 0A 31 34 38 32 0A 31 1480.1481.1482.1 +6304: 34 38 33 0A 31 34 38 34 0A 31 34 38 35 0A 31 34 483.1484.1485.14 +6320: 38 36 0A 31 34 38 37 0A 31 34 38 38 0A 31 34 38 86.1487.1488.148 +6336: 39 0A 31 34 39 30 0A 31 34 39 31 0A 31 34 39 32 9.1490.1491.1492 +6352: 0A 31 34 39 33 0A 31 34 39 34 0A 31 34 39 35 0A .1493.1494.1495. +6368: 31 34 39 36 0A 31 34 39 37 0A 31 34 39 38 0A 31 1496.1497.1498.1 +6384: 34 39 39 0A 31 35 30 30 0A 31 35 30 31 0A 31 35 499.1500.1501.15 +6400: 30 32 0A 31 35 30 33 0A 31 35 30 34 0A 31 35 30 02.1503.1504.150 +6416: 35 0A 31 35 30 36 0A 31 35 30 37 0A 31 35 30 38 5.1506.1507.1508 +6432: 0A 31 35 30 39 0A 31 35 31 30 0A 31 35 31 31 0A .1509.1510.1511. +6448: 31 35 31 32 0A 31 35 31 33 0A 31 35 31 34 0A 31 1512.1513.1514.1 +6464: 35 31 35 0A 31 35 31 36 0A 31 35 31 37 0A 31 35 515.1516.1517.15 +6480: 31 38 0A 31 35 31 39 0A 31 35 32 30 0A 31 35 32 18.1519.1520.152 +6496: 31 0A 31 35 32 32 0A 31 35 32 33 0A 31 35 32 34 1.1522.1523.1524 +6512: 0A 31 35 32 35 0A 31 35 32 36 0A 31 35 32 37 0A .1525.1526.1527. +6528: 31 35 32 38 0A 31 35 32 39 0A 31 35 33 30 0A 31 1528.1529.1530.1 +6544: 35 33 31 0A 31 35 33 32 0A 31 35 33 33 0A 31 35 531.1532.1533.15 +6560: 33 34 0A 31 35 33 35 0A 31 35 33 36 0A 31 35 33 34.1535.1536.153 +6576: 37 0A 31 35 33 38 0A 31 35 33 39 0A 31 35 34 30 7.1538.1539.1540 +6592: 0A 31 35 34 31 0A 31 35 34 32 0A 31 35 34 33 0A .1541.1542.1543. +6608: 31 35 34 34 0A 31 35 34 35 0A 31 35 34 36 0A 31 1544.1545.1546.1 +6624: 35 34 37 0A 31 35 34 38 0A 31 35 34 39 0A 31 35 547.1548.1549.15 +6640: 35 30 0A 31 35 35 31 0A 31 35 35 32 0A 31 35 35 50.1551.1552.155 +6656: 33 0A 31 35 35 34 0A 31 35 35 35 0A 31 35 35 36 3.1554.1555.1556 +6672: 0A 31 35 35 37 0A 31 35 35 38 0A 31 35 35 39 0A .1557.1558.1559. +6688: 31 35 36 30 0A 31 35 36 31 0A 31 35 36 32 0A 31 1560.1561.1562.1 +6704: 35 36 33 0A 31 35 36 34 0A 31 35 36 35 0A 31 35 563.1564.1565.15 +6720: 36 36 0A 31 35 36 37 0A 31 35 36 38 0A 31 35 36 66.1567.1568.156 +6736: 39 0A 31 35 37 30 0A 31 35 37 31 0A 31 35 37 32 9.1570.1571.1572 +6752: 0A 31 35 37 33 0A 31 35 37 34 0A 31 35 37 35 0A .1573.1574.1575. +6768: 31 35 37 36 0A 31 35 37 37 0A 31 35 37 38 0A 31 1576.1577.1578.1 +6784: 35 37 39 0A 31 35 38 30 0A 31 35 38 31 0A 31 35 579.1580.1581.15 +6800: 38 32 0A 31 35 38 33 0A 31 35 38 34 0A 31 35 38 82.1583.1584.158 +6816: 35 0A 31 35 38 36 0A 31 35 38 37 0A 31 35 38 38 5.1586.1587.1588 +6832: 0A 31 35 38 39 0A 31 35 39 30 0A 31 35 39 31 0A .1589.1590.1591. +6848: 31 35 39 32 0A 31 35 39 33 0A 31 35 39 34 0A 31 1592.1593.1594.1 +6864: 35 39 35 0A 31 35 39 36 0A 31 35 39 37 0A 31 35 595.1596.1597.15 +6880: 39 38 0A 31 35 39 39 0A 31 36 30 30 0A 31 36 30 98.1599.1600.160 +6896: 31 0A 31 36 30 32 0A 31 36 30 33 0A 31 36 30 34 1.1602.1603.1604 +6912: 0A 31 36 30 35 0A 31 36 30 36 0A 31 36 30 37 0A .1605.1606.1607. +6928: 31 36 30 38 0A 31 36 30 39 0A 31 36 31 30 0A 31 1608.1609.1610.1 +6944: 36 31 31 0A 31 36 31 32 0A 31 36 31 33 0A 31 36 611.1612.1613.16 +6960: 31 34 0A 31 36 31 35 0A 31 36 31 36 0A 31 36 31 14.1615.1616.161 +6976: 37 0A 31 36 31 38 0A 31 36 31 39 0A 31 36 32 30 7.1618.1619.1620 +6992: 0A 31 36 32 31 0A 31 36 32 32 0A 31 36 32 33 0A .1621.1622.1623. +7008: 31 36 32 34 0A 31 36 32 35 0A 31 36 32 36 0A 31 1624.1625.1626.1 +7024: 36 32 37 0A 31 36 32 38 0A 31 36 32 39 0A 31 36 627.1628.1629.16 +7040: 33 30 0A 31 36 33 31 0A 31 36 33 32 0A 31 36 33 30.1631.1632.163 +7056: 33 0A 31 36 33 34 0A 31 36 33 35 0A 31 36 33 36 3.1634.1635.1636 +7072: 0A 31 36 33 37 0A 31 36 33 38 0A 31 36 33 39 0A .1637.1638.1639. +7088: 31 36 34 30 0A 31 36 34 31 0A 31 36 34 32 0A 31 1640.1641.1642.1 +7104: 36 34 33 0A 31 36 34 34 0A 31 36 34 35 0A 31 36 643.1644.1645.16 +7120: 34 36 0A 31 36 34 37 0A 31 36 34 38 0A 31 36 34 46.1647.1648.164 +7136: 39 0A 31 36 35 30 0A 31 36 35 31 0A 31 36 35 32 9.1650.1651.1652 +7152: 0A 31 36 35 33 0A 31 36 35 34 0A 31 36 35 35 0A .1653.1654.1655. +7168: 31 36 35 36 0A 31 36 35 37 0A 31 36 35 38 0A 31 1656.1657.1658.1 +7184: 36 35 39 0A 31 36 36 30 0A 31 36 36 31 0A 31 36 659.1660.1661.16 +7200: 36 32 0A 31 36 36 33 0A 31 36 36 34 0A 31 36 36 62.1663.1664.166 +7216: 35 0A 31 36 36 36 0A 31 36 36 37 0A 31 36 36 38 5.1666.1667.1668 +7232: 0A 31 36 36 39 0A 31 36 37 30 0A 31 36 37 31 0A .1669.1670.1671. +7248: 31 36 37 32 0A 31 36 37 33 0A 31 36 37 34 0A 31 1672.1673.1674.1 +7264: 36 37 35 0A 31 36 37 36 0A 31 36 37 37 0A 31 36 675.1676.1677.16 +7280: 37 38 0A 31 36 37 39 0A 31 36 38 30 0A 31 36 38 78.1679.1680.168 +7296: 31 0A 31 36 38 32 0A 31 36 38 33 0A 31 36 38 34 1.1682.1683.1684 +7312: 0A 31 36 38 35 0A 31 36 38 36 0A 31 36 38 37 0A .1685.1686.1687. +7328: 31 36 38 38 0A 31 36 38 39 0A 31 36 39 30 0A 31 1688.1689.1690.1 +7344: 36 39 31 0A 31 36 39 32 0A 31 36 39 33 0A 31 36 691.1692.1693.16 +7360: 39 34 0A 31 36 39 35 0A 31 36 39 36 0A 31 36 39 94.1695.1696.169 +7376: 37 0A 31 36 39 38 0A 31 36 39 39 0A 31 37 30 30 7.1698.1699.1700 +7392: 0A 31 37 30 31 0A 31 37 30 32 0A 31 37 30 33 0A .1701.1702.1703. +7408: 31 37 30 34 0A 31 37 30 35 0A 31 37 30 36 0A 31 1704.1705.1706.1 +7424: 37 30 37 0A 31 37 30 38 0A 31 37 30 39 0A 31 37 707.1708.1709.17 +7440: 31 30 0A 31 37 31 31 0A 31 37 31 32 0A 31 37 31 10.1711.1712.171 +7456: 33 0A 31 37 31 34 0A 31 37 31 35 0A 31 37 31 36 3.1714.1715.1716 +7472: 0A 31 37 31 37 0A 31 37 31 38 0A 31 37 31 39 0A .1717.1718.1719. +7488: 31 37 32 30 0A 31 37 32 31 0A 31 37 32 32 0A 31 1720.1721.1722.1 +7504: 37 32 33 0A 31 37 32 34 0A 31 37 32 35 0A 31 37 723.1724.1725.17 +7520: 32 36 0A 31 37 32 37 0A 31 37 32 38 0A 31 37 32 26.1727.1728.172 +7536: 39 0A 31 37 33 30 0A 31 37 33 31 0A 31 37 33 32 9.1730.1731.1732 +7552: 0A 31 37 33 33 0A 31 37 33 34 0A 31 37 33 35 0A .1733.1734.1735. +7568: 31 37 33 36 0A 31 37 33 37 0A 31 37 33 38 0A 31 1736.1737.1738.1 +7584: 37 33 39 0A 31 37 34 30 0A 31 37 34 31 0A 31 37 739.1740.1741.17 +7600: 34 32 0A 31 37 34 33 0A 31 37 34 34 0A 31 37 34 42.1743.1744.174 +7616: 35 0A 31 37 34 36 0A 31 37 34 37 0A 31 37 34 38 5.1746.1747.1748 +7632: 0A 31 37 34 39 0A 31 37 35 30 0A 31 37 35 31 0A .1749.1750.1751. +7648: 31 37 35 32 0A 31 37 35 33 0A 31 37 35 34 0A 31 1752.1753.1754.1 +7664: 37 35 35 0A 31 37 35 36 0A 31 37 35 37 0A 31 37 755.1756.1757.17 +7680: 35 38 0A 31 37 35 39 0A 31 37 36 30 0A 31 37 36 58.1759.1760.176 +7696: 31 0A 31 37 36 32 0A 31 37 36 33 0A 31 37 36 34 1.1762.1763.1764 +7712: 0A 31 37 36 35 0A 31 37 36 36 0A 31 37 36 37 0A .1765.1766.1767. +7728: 31 37 36 38 0A 31 37 36 39 0A 31 37 37 30 0A 31 1768.1769.1770.1 +7744: 37 37 31 0A 31 37 37 32 0A 31 37 37 33 0A 31 37 771.1772.1773.17 +7760: 37 34 0A 31 37 37 35 0A 31 37 37 36 0A 31 37 37 74.1775.1776.177 +7776: 37 0A 31 37 37 38 0A 31 37 37 39 0A 31 37 38 30 7.1778.1779.1780 +7792: 0A 31 37 38 31 0A 31 37 38 32 0A 31 37 38 33 0A .1781.1782.1783. +7808: 31 37 38 34 0A 31 37 38 35 0A 31 37 38 36 0A 31 1784.1785.1786.1 +7824: 37 38 37 0A 31 37 38 38 0A 31 37 38 39 0A 31 37 787.1788.1789.17 +7840: 39 30 0A 31 37 39 31 0A 31 37 39 32 0A 31 37 39 90.1791.1792.179 +7856: 33 0A 31 37 39 34 0A 31 37 39 35 0A 31 37 39 36 3.1794.1795.1796 +7872: 0A 31 37 39 37 0A 31 37 39 38 0A 31 37 39 39 0A .1797.1798.1799. +7888: 31 38 30 30 0A 31 38 30 31 0A 31 38 30 32 0A 31 1800.1801.1802.1 +7904: 38 30 33 0A 31 38 30 34 0A 31 38 30 35 0A 31 38 803.1804.1805.18 +7920: 30 36 0A 31 38 30 37 0A 31 38 30 38 0A 31 38 30 06.1807.1808.180 +7936: 39 0A 31 38 31 30 0A 31 38 31 31 0A 31 38 31 32 9.1810.1811.1812 +7952: 0A 31 38 31 33 0A 31 38 31 34 0A 31 38 31 35 0A .1813.1814.1815. +7968: 31 38 31 36 0A 31 38 31 37 0A 31 38 31 38 0A 31 1816.1817.1818.1 +7984: 38 31 39 0A 31 38 32 30 0A 31 38 32 31 0A 31 38 819.1820.1821.18 +8000: 32 32 0A 31 38 32 33 0A 31 38 32 34 0A 31 38 32 22.1823.1824.182 +8016: 35 0A 31 38 32 36 0A 31 38 32 37 0A 31 38 32 38 5.1826.1827.1828 +8032: 0A 31 38 32 39 0A 31 38 33 30 0A 31 38 33 31 0A .1829.1830.1831. +8048: 31 38 33 32 0A 31 38 33 33 0A 31 38 33 34 0A 31 1832.1833.1834.1 +8064: 38 33 35 0A 31 38 33 36 0A 31 38 33 37 0A 31 38 835.1836.1837.18 +8080: 33 38 0A 31 38 33 39 0A 31 38 34 30 0A 31 38 34 38.1839.1840.184 +8096: 31 0A 31 38 34 32 0A 31 38 34 33 0A 31 38 34 34 1.1842.1843.1844 +8112: 0A 31 38 34 35 0A 31 38 34 36 0A 31 38 34 37 0A .1845.1846.1847. +8128: 31 38 34 38 0A 31 38 34 39 0A 31 38 35 30 0A 31 1848.1849.1850.1 +8144: 38 35 31 0A 31 38 35 32 0A 31 38 35 33 0A 31 38 851.1852.1853.18 +8160: 35 34 0A 31 38 35 35 0A 31 38 35 36 0A 31 38 35 54.1855.1856.185 +8176: 37 0A 31 38 35 38 0A 31 38 35 39 0A 31 38 36 30 7.1858.1859.1860 +8192: 0A 31 38 36 31 0A 31 38 36 32 0A 31 38 36 33 0A .1861.1862.1863. +8208: 31 38 36 34 0A 31 38 36 35 0A 31 38 36 36 0A 31 1864.1865.1866.1 +8224: 38 36 37 0A 31 38 36 38 0A 31 38 36 39 0A 31 38 867.1868.1869.18 +8240: 37 30 0A 31 38 37 31 0A 31 38 37 32 0A 31 38 37 70.1871.1872.187 +8256: 33 0A 31 38 37 34 0A 31 38 37 35 0A 31 38 37 36 3.1874.1875.1876 +8272: 0A 31 38 37 37 0A 31 38 37 38 0A 31 38 37 39 0A .1877.1878.1879. +8288: 31 38 38 30 0A 31 38 38 31 0A 31 38 38 32 0A 31 1880.1881.1882.1 +8304: 38 38 33 0A 31 38 38 34 0A 31 38 38 35 0A 31 38 883.1884.1885.18 +8320: 38 36 0A 31 38 38 37 0A 31 38 38 38 0A 31 38 38 86.1887.1888.188 +8336: 39 0A 31 38 39 30 0A 31 38 39 31 0A 31 38 39 32 9.1890.1891.1892 +8352: 0A 31 38 39 33 0A 31 38 39 34 0A 31 38 39 35 0A .1893.1894.1895. +8368: 31 38 39 36 0A 31 38 39 37 0A 31 38 39 38 0A 31 1896.1897.1898.1 +8384: 38 39 39 0A 31 39 30 30 0A 31 39 30 31 0A 31 39 899.1900.1901.19 +8400: 30 32 0A 31 39 30 33 0A 31 39 30 34 0A 31 39 30 02.1903.1904.190 +8416: 35 0A 31 39 30 36 0A 31 39 30 37 0A 31 39 30 38 5.1906.1907.1908 +8432: 0A 31 39 30 39 0A 31 39 31 30 0A 31 39 31 31 0A .1909.1910.1911. +8448: 31 39 31 32 0A 31 39 31 33 0A 31 39 31 34 0A 31 1912.1913.1914.1 +8464: 39 31 35 0A 31 39 31 36 0A 31 39 31 37 0A 31 39 915.1916.1917.19 +8480: 31 38 0A 31 39 31 39 0A 31 39 32 30 0A 31 39 32 18.1919.1920.192 +8496: 31 0A 31 39 32 32 0A 31 39 32 33 0A 31 39 32 34 1.1922.1923.1924 +8512: 0A 31 39 32 35 0A 31 39 32 36 0A 31 39 32 37 0A .1925.1926.1927. +8528: 31 39 32 38 0A 31 39 32 39 0A 31 39 33 30 0A 31 1928.1929.1930.1 +8544: 39 33 31 0A 31 39 33 32 0A 31 39 33 33 0A 31 39 931.1932.1933.19 +8560: 33 34 0A 31 39 33 35 0A 31 39 33 36 0A 31 39 33 34.1935.1936.193 +8576: 37 0A 31 39 33 38 0A 31 39 33 39 0A 31 39 34 30 7.1938.1939.1940 +8592: 0A 31 39 34 31 0A 31 39 34 32 0A 31 39 34 33 0A .1941.1942.1943. +8608: 31 39 34 34 0A 31 39 34 35 0A 31 39 34 36 0A 31 1944.1945.1946.1 +8624: 39 34 37 0A 31 39 34 38 0A 31 39 34 39 0A 31 39 947.1948.1949.19 +8640: 35 30 0A 31 39 35 31 0A 31 39 35 32 0A 31 39 35 50.1951.1952.195 +8656: 33 0A 31 39 35 34 0A 31 39 35 35 0A 31 39 35 36 3.1954.1955.1956 +8672: 0A 31 39 35 37 0A 31 39 35 38 0A 31 39 35 39 0A .1957.1958.1959. +8688: 31 39 36 30 0A 31 39 36 31 0A 31 39 36 32 0A 31 1960.1961.1962.1 +8704: 39 36 33 0A 31 39 36 34 0A 31 39 36 35 0A 31 39 963.1964.1965.19 +8720: 36 36 0A 31 39 36 37 0A 31 39 36 38 0A 31 39 36 66.1967.1968.196 +8736: 39 0A 31 39 37 30 0A 31 39 37 31 0A 31 39 37 32 9.1970.1971.1972 +8752: 0A 31 39 37 33 0A 31 39 37 34 0A 31 39 37 35 0A .1973.1974.1975. +8768: 31 39 37 36 0A 31 39 37 37 0A 31 39 37 38 0A 31 1976.1977.1978.1 +8784: 39 37 39 0A 31 39 38 30 0A 31 39 38 31 0A 31 39 979.1980.1981.19 +8800: 38 32 0A 31 39 38 33 0A 31 39 38 34 0A 31 39 38 82.1983.1984.198 +8816: 35 0A 31 39 38 36 0A 31 39 38 37 0A 31 39 38 38 5.1986.1987.1988 +8832: 0A 31 39 38 39 0A 31 39 39 30 0A 31 39 39 31 0A .1989.1990.1991. +8848: 31 39 39 32 0A 31 39 39 33 0A 31 39 39 34 0A 31 1992.1993.1994.1 +8864: 39 39 35 0A 31 39 39 36 0A 31 39 39 37 0A 31 39 995.1996.1997.19 +8880: 39 38 0A 31 39 39 39 0A 32 30 30 30 0A 32 30 30 98.1999.2000.200 +8896: 31 0A 32 30 30 32 0A 32 30 30 33 0A 32 30 30 34 1.2002.2003.2004 +8912: 0A 32 30 30 35 0A 32 30 30 36 0A 32 30 30 37 0A .2005.2006.2007. +8928: 32 30 30 38 0A 32 30 30 39 0A 32 30 31 30 0A 32 2008.2009.2010.2 +8944: 30 31 31 0A 32 30 31 32 0A 32 30 31 33 0A 32 30 011.2012.2013.20 +8960: 31 34 0A 32 30 31 35 0A 32 30 31 36 0A 32 30 31 14.2015.2016.201 +8976: 37 0A 32 30 31 38 0A 32 30 31 39 0A 32 30 32 30 7.2018.2019.2020 +8992: 0A 32 30 32 31 0A 32 30 32 32 0A 32 30 32 33 0A .2021.2022.2023. +9008: 32 30 32 34 0A 32 30 32 35 0A 32 30 32 36 0A 32 2024.2025.2026.2 +9024: 30 32 37 0A 32 30 32 38 0A 32 30 32 39 0A 32 30 027.2028.2029.20 +9040: 33 30 0A 32 30 33 31 0A 32 30 33 32 0A 32 30 33 30.2031.2032.203 +9056: 33 0A 32 30 33 34 0A 32 30 33 35 0A 32 30 33 36 3.2034.2035.2036 +9072: 0A 32 30 33 37 0A 32 30 33 38 0A 32 30 33 39 0A .2037.2038.2039. +9088: 32 30 34 30 0A 32 30 34 31 0A 32 30 34 32 0A 32 2040.2041.2042.2 +9104: 30 34 33 0A 32 30 34 34 0A 32 30 34 35 0A 32 30 043.2044.2045.20 +9120: 34 36 0A 32 30 34 37 0A 32 30 34 38 0A 32 30 34 46.2047.2048.204 +9136: 39 0A 32 30 35 30 0A 32 30 35 31 0A 32 30 35 32 9.2050.2051.2052 +9152: 0A 32 30 35 33 0A 32 30 35 34 0A 32 30 35 35 0A .2053.2054.2055. +9168: 32 30 35 36 0A 32 30 35 37 0A 32 30 35 38 0A 32 2056.2057.2058.2 +9184: 30 35 39 0A 32 30 36 30 0A 32 30 36 31 0A 32 30 059.2060.2061.20 +9200: 36 32 0A 32 30 36 33 0A 32 30 36 34 0A 32 30 36 62.2063.2064.206 +9216: 35 0A 32 30 36 36 0A 32 30 36 37 0A 32 30 36 38 5.2066.2067.2068 +9232: 0A 32 30 36 39 0A 32 30 37 30 0A 32 30 37 31 0A .2069.2070.2071. +9248: 32 30 37 32 0A 32 30 37 33 0A 32 30 37 34 0A 32 2072.2073.2074.2 +9264: 30 37 35 0A 32 30 37 36 0A 32 30 37 37 0A 32 30 075.2076.2077.20 +9280: 37 38 0A 32 30 37 39 0A 32 30 38 30 0A 32 30 38 78.2079.2080.208 +9296: 31 0A 32 30 38 32 0A 32 30 38 33 0A 32 30 38 34 1.2082.2083.2084 +9312: 0A 32 30 38 35 0A 32 30 38 36 0A 32 30 38 37 0A .2085.2086.2087. +9328: 32 30 38 38 0A 32 30 38 39 0A 32 30 39 30 0A 32 2088.2089.2090.2 +9344: 30 39 31 0A 32 30 39 32 0A 32 30 39 33 0A 32 30 091.2092.2093.20 +9360: 39 34 0A 32 30 39 35 0A 32 30 39 36 0A 32 30 39 94.2095.2096.209 +9376: 37 0A 32 30 39 38 0A 32 30 39 39 0A 32 31 30 30 7.2098.2099.2100 +9392: 0A 32 31 30 31 0A 32 31 30 32 0A 32 31 30 33 0A .2101.2102.2103. +9408: 32 31 30 34 0A 32 31 30 35 0A 32 31 30 36 0A 32 2104.2105.2106.2 +9424: 31 30 37 0A 32 31 30 38 0A 32 31 30 39 0A 32 31 107.2108.2109.21 +9440: 31 30 0A 32 31 31 31 0A 32 31 31 32 0A 32 31 31 10.2111.2112.211 +9456: 33 0A 32 31 31 34 0A 32 31 31 35 0A 32 31 31 36 3.2114.2115.2116 +9472: 0A 32 31 31 37 0A 32 31 31 38 0A 32 31 31 39 0A .2117.2118.2119. +9488: 32 31 32 30 0A 32 31 32 31 0A 32 31 32 32 0A 32 2120.2121.2122.2 +9504: 31 32 33 0A 32 31 32 34 0A 32 31 32 35 0A 32 31 123.2124.2125.21 +9520: 32 36 0A 32 31 32 37 0A 32 31 32 38 0A 32 31 32 26.2127.2128.212 +9536: 39 0A 32 31 33 30 0A 32 31 33 31 0A 32 31 33 32 9.2130.2131.2132 +9552: 0A 32 31 33 33 0A 32 31 33 34 0A 32 31 33 35 0A .2133.2134.2135. +9568: 32 31 33 36 0A 32 31 33 37 0A 32 31 33 38 0A 32 2136.2137.2138.2 +9584: 31 33 39 0A 32 31 34 30 0A 32 31 34 31 0A 32 31 139.2140.2141.21 +9600: 34 32 0A 32 31 34 33 0A 32 31 34 34 0A 32 31 34 42.2143.2144.214 +9616: 35 0A 32 31 34 36 0A 32 31 34 37 0A 32 31 34 38 5.2146.2147.2148 +9632: 0A 32 31 34 39 0A 32 31 35 30 0A 32 31 35 31 0A .2149.2150.2151. +9648: 32 31 35 32 0A 32 31 35 33 0A 32 31 35 34 0A 32 2152.2153.2154.2 +9664: 31 35 35 0A 32 31 35 36 0A 32 31 35 37 0A 32 31 155.2156.2157.21 +9680: 35 38 0A 32 31 35 39 0A 32 31 36 30 0A 32 31 36 58.2159.2160.216 +9696: 31 0A 32 31 36 32 0A 32 31 36 33 0A 32 31 36 34 1.2162.2163.2164 +9712: 0A 32 31 36 35 0A 32 31 36 36 0A 32 31 36 37 0A .2165.2166.2167. +9728: 32 31 36 38 0A 32 31 36 39 0A 32 31 37 30 0A 32 2168.2169.2170.2 +9744: 31 37 31 0A 32 31 37 32 0A 32 31 37 33 0A 32 31 171.2172.2173.21 +9760: 37 34 0A 32 31 37 35 0A 32 31 37 36 0A 32 31 37 74.2175.2176.217 +9776: 37 0A 32 31 37 38 0A 32 31 37 39 0A 32 31 38 30 7.2178.2179.2180 +9792: 0A 32 31 38 31 0A 32 31 38 32 0A 32 31 38 33 0A .2181.2182.2183. +9808: 32 31 38 34 0A 32 31 38 35 0A 32 31 38 36 0A 32 2184.2185.2186.2 +9824: 31 38 37 0A 32 31 38 38 0A 32 31 38 39 0A 32 31 187.2188.2189.21 +9840: 39 30 0A 32 31 39 31 0A 32 31 39 32 0A 32 31 39 90.2191.2192.219 +9856: 33 0A 32 31 39 34 0A 32 31 39 35 0A 32 31 39 36 3.2194.2195.2196 +9872: 0A 32 31 39 37 0A 32 31 39 38 0A 32 31 39 39 0A .2197.2198.2199. +9888: 32 32 30 30 0A 32 32 30 31 0A 32 32 30 32 0A 32 2200.2201.2202.2 +9904: 32 30 33 0A 32 32 30 34 0A 32 32 30 35 0A 32 32 203.2204.2205.22 +9920: 30 36 0A 32 32 30 37 0A 32 32 30 38 0A 32 32 30 06.2207.2208.220 +9936: 39 0A 32 32 31 30 0A 32 32 31 31 0A 32 32 31 32 9.2210.2211.2212 +9952: 0A 32 32 31 33 0A 32 32 31 34 0A 32 32 31 35 0A .2213.2214.2215. +9968: 32 32 31 36 0A 32 32 31 37 0A 32 32 31 38 0A 32 2216.2217.2218.2 +9984: 32 31 39 0A 32 32 32 30 0A 32 32 32 31 0A 32 32 219.2220.2221.22 +10000: 32 32 0A 32 32 32 33 0A 32 32 32 34 0A 32 32 32 22.2223.2224.222 +10016: 35 0A 32 32 32 36 0A 32 32 32 37 0A 32 32 32 38 5.2226.2227.2228 +10032: 0A 32 32 32 39 0A 32 32 33 30 0A 32 32 33 31 0A .2229.2230.2231. +10048: 32 32 33 32 0A 32 32 33 33 0A 32 32 33 34 0A 32 2232.2233.2234.2 +10064: 32 33 35 0A 32 32 33 36 0A 32 32 33 37 0A 32 32 235.2236.2237.22 +10080: 33 38 0A 32 32 33 39 0A 32 32 34 30 0A 32 32 34 38.2239.2240.224 +10096: 31 0A 32 32 34 32 0A 32 32 34 33 0A 32 32 34 34 1.2242.2243.2244 +10112: 0A 32 32 34 35 0A 32 32 34 36 0A 32 32 34 37 0A .2245.2246.2247. +10128: 32 32 34 38 0A 32 32 34 39 0A 32 32 35 30 0A 32 2248.2249.2250.2 +10144: 32 35 31 0A 32 32 35 32 0A 32 32 35 33 0A 32 32 251.2252.2253.22 +10160: 35 34 0A 32 32 35 35 0A 32 32 35 36 0A 32 32 35 54.2255.2256.225 +10176: 37 0A 32 32 35 38 0A 32 32 35 39 0A 32 32 36 30 7.2258.2259.2260 +10192: 0A 32 32 36 31 0A 32 32 36 32 0A 32 32 36 33 0A .2261.2262.2263. +10208: 32 32 36 34 0A 32 32 36 35 0A 32 32 36 36 0A 32 2264.2265.2266.2 +10224: 32 36 37 0A 32 32 36 38 0A 32 32 36 39 0A 32 32 267.2268.2269.22 +10240: 37 30 0A 32 32 37 31 0A 32 32 37 32 0A 32 32 37 70.2271.2272.227 +10256: 33 0A 32 32 37 34 0A 32 32 37 35 0A 32 32 37 36 3.2274.2275.2276 +10272: 0A 32 32 37 37 0A 32 32 37 38 0A 32 32 37 39 0A .2277.2278.2279. +10288: 32 32 38 30 0A 32 32 38 31 0A 32 32 38 32 0A 32 2280.2281.2282.2 +10304: 32 38 33 0A 32 32 38 34 0A 32 32 38 35 0A 32 32 283.2284.2285.22 +10320: 38 36 0A 32 32 38 37 0A 32 32 38 38 0A 32 32 38 86.2287.2288.228 +10336: 39 0A 32 32 39 30 0A 32 32 39 31 0A 32 32 39 32 9.2290.2291.2292 +10352: 0A 32 32 39 33 0A 32 32 39 34 0A 32 32 39 35 0A .2293.2294.2295. +10368: 32 32 39 36 0A 32 32 39 37 0A 32 32 39 38 0A 32 2296.2297.2298.2 +10384: 32 39 39 0A 32 33 30 30 0A 32 33 30 31 0A 32 33 299.2300.2301.23 +10400: 30 32 0A 32 33 30 33 0A 32 33 30 34 0A 32 33 30 02.2303.2304.230 +10416: 35 0A 32 33 30 36 0A 32 33 30 37 0A 32 33 30 38 5.2306.2307.2308 +10432: 0A 32 33 30 39 0A 32 33 31 30 0A 32 33 31 31 0A .2309.2310.2311. +10448: 32 33 31 32 0A 32 33 31 33 0A 32 33 31 34 0A 32 2312.2313.2314.2 +10464: 33 31 35 0A 32 33 31 36 0A 32 33 31 37 0A 32 33 315.2316.2317.23 +10480: 31 38 0A 32 33 31 39 0A 32 33 32 30 0A 32 33 32 18.2319.2320.232 +10496: 31 0A 32 33 32 32 0A 32 33 32 33 0A 32 33 32 34 1.2322.2323.2324 +10512: 0A 32 33 32 35 0A 32 33 32 36 0A 32 33 32 37 0A .2325.2326.2327. +10528: 32 33 32 38 0A 32 33 32 39 0A 32 33 33 30 0A 32 2328.2329.2330.2 +10544: 33 33 31 0A 32 33 33 32 0A 32 33 33 33 0A 32 33 331.2332.2333.23 +10560: 33 34 0A 32 33 33 35 0A 32 33 33 36 0A 32 33 33 34.2335.2336.233 +10576: 37 0A 32 33 33 38 0A 32 33 33 39 0A 32 33 34 30 7.2338.2339.2340 +10592: 0A 32 33 34 31 0A 32 33 34 32 0A 32 33 34 33 0A .2341.2342.2343. +10608: 32 33 34 34 0A 32 33 34 35 0A 32 33 34 36 0A 32 2344.2345.2346.2 +10624: 33 34 37 0A 32 33 34 38 0A 32 33 34 39 0A 32 33 347.2348.2349.23 +10640: 35 30 0A 32 33 35 31 0A 32 33 35 32 0A 32 33 35 50.2351.2352.235 +10656: 33 0A 32 33 35 34 0A 32 33 35 35 0A 32 33 35 36 3.2354.2355.2356 +10672: 0A 32 33 35 37 0A 32 33 35 38 0A 32 33 35 39 0A .2357.2358.2359. +10688: 32 33 36 30 0A 32 33 36 31 0A 32 33 36 32 0A 32 2360.2361.2362.2 +10704: 33 36 33 0A 32 33 36 34 0A 32 33 36 35 0A 32 33 363.2364.2365.23 +10720: 36 36 0A 32 33 36 37 0A 32 33 36 38 0A 32 33 36 66.2367.2368.236 +10736: 39 0A 32 33 37 30 0A 32 33 37 31 0A 32 33 37 32 9.2370.2371.2372 +10752: 0A 32 33 37 33 0A 32 33 37 34 0A 32 33 37 35 0A .2373.2374.2375. +10768: 32 33 37 36 0A 32 33 37 37 0A 32 33 37 38 0A 32 2376.2377.2378.2 +10784: 33 37 39 0A 32 33 38 30 0A 32 33 38 31 0A 32 33 379.2380.2381.23 +10800: 38 32 0A 32 33 38 33 0A 32 33 38 34 0A 32 33 38 82.2383.2384.238 +10816: 35 0A 32 33 38 36 0A 32 33 38 37 0A 32 33 38 38 5.2386.2387.2388 +10832: 0A 32 33 38 39 0A 32 33 39 30 0A 32 33 39 31 0A .2389.2390.2391. +10848: 32 33 39 32 0A 32 33 39 33 0A 32 33 39 34 0A 32 2392.2393.2394.2 +10864: 33 39 35 0A 32 33 39 36 0A 32 33 39 37 0A 32 33 395.2396.2397.23 +10880: 39 38 0A 32 33 39 39 0A 32 34 30 30 0A 32 34 30 98.2399.2400.240 +10896: 31 0A 32 34 30 32 0A 32 34 30 33 0A 32 34 30 34 1.2402.2403.2404 +10912: 0A 32 34 30 35 0A 32 34 30 36 0A 32 34 30 37 0A .2405.2406.2407. +10928: 32 34 30 38 0A 32 34 30 39 0A 32 34 31 30 0A 32 2408.2409.2410.2 +10944: 34 31 31 0A 32 34 31 32 0A 32 34 31 33 0A 32 34 411.2412.2413.24 +10960: 31 34 0A 32 34 31 35 0A 32 34 31 36 0A 32 34 31 14.2415.2416.241 +10976: 37 0A 32 34 31 38 0A 32 34 31 39 0A 32 34 32 30 7.2418.2419.2420 +10992: 0A 32 34 32 31 0A 32 34 32 32 0A 32 34 32 33 0A .2421.2422.2423. +11008: 32 34 32 34 0A 32 34 32 35 0A 32 34 32 36 0A 32 2424.2425.2426.2 +11024: 34 32 37 0A 32 34 32 38 0A 32 34 32 39 0A 32 34 427.2428.2429.24 +11040: 33 30 0A 32 34 33 31 0A 32 34 33 32 0A 32 34 33 30.2431.2432.243 +11056: 33 0A 32 34 33 34 0A 32 34 33 35 0A 32 34 33 36 3.2434.2435.2436 +11072: 0A 32 34 33 37 0A 32 34 33 38 0A 32 34 33 39 0A .2437.2438.2439. +11088: 32 34 34 30 0A 32 34 34 31 0A 32 34 34 32 0A 32 2440.2441.2442.2 +11104: 34 34 33 0A 32 34 34 34 0A 32 34 34 35 0A 32 34 443.2444.2445.24 +11120: 34 36 0A 32 34 34 37 0A 32 34 34 38 0A 32 34 34 46.2447.2448.244 +11136: 39 0A 32 34 35 30 0A 32 34 35 31 0A 32 34 35 32 9.2450.2451.2452 +11152: 0A 32 34 35 33 0A 32 34 35 34 0A 32 34 35 35 0A .2453.2454.2455. +11168: 32 34 35 36 0A 32 34 35 37 0A 32 34 35 38 0A 32 2456.2457.2458.2 +11184: 34 35 39 0A 32 34 36 30 0A 32 34 36 31 0A 32 34 459.2460.2461.24 +11200: 36 32 0A 32 34 36 33 0A 32 34 36 34 0A 32 34 36 62.2463.2464.246 +11216: 35 0A 32 34 36 36 0A 32 34 36 37 0A 32 34 36 38 5.2466.2467.2468 +11232: 0A 32 34 36 39 0A 32 34 37 30 0A 32 34 37 31 0A .2469.2470.2471. +11248: 32 34 37 32 0A 32 34 37 33 0A 32 34 37 34 0A 32 2472.2473.2474.2 +11264: 34 37 35 0A 32 34 37 36 0A 32 34 37 37 0A 32 34 475.2476.2477.24 +11280: 37 38 0A 32 34 37 39 0A 32 34 38 30 0A 32 34 38 78.2479.2480.248 +11296: 31 0A 32 34 38 32 0A 32 34 38 33 0A 32 34 38 34 1.2482.2483.2484 +11312: 0A 32 34 38 35 0A 32 34 38 36 0A 32 34 38 37 0A .2485.2486.2487. +11328: 32 34 38 38 0A 32 34 38 39 0A 32 34 39 30 0A 32 2488.2489.2490.2 +11344: 34 39 31 0A 32 34 39 32 0A 32 34 39 33 0A 32 34 491.2492.2493.24 +11360: 39 34 0A 32 34 39 35 0A 32 34 39 36 0A 32 34 39 94.2495.2496.249 +11376: 37 0A 32 34 39 38 0A 32 34 39 39 0A 32 35 30 30 7.2498.2499.2500 +11392: 0A 32 35 30 31 0A 32 35 30 32 0A 32 35 30 33 0A .2501.2502.2503. +11408: 32 35 30 34 0A 32 35 30 35 0A 32 35 30 36 0A 32 2504.2505.2506.2 +11424: 35 30 37 0A 32 35 30 38 0A 32 35 30 39 0A 32 35 507.2508.2509.25 +11440: 31 30 0A 32 35 31 31 0A 32 35 31 32 0A 32 35 31 10.2511.2512.251 +11456: 33 0A 32 35 31 34 0A 32 35 31 35 0A 32 35 31 36 3.2514.2515.2516 +11472: 0A 32 35 31 37 0A 32 35 31 38 0A 32 35 31 39 0A .2517.2518.2519. +11488: 32 35 32 30 0A 32 35 32 31 0A 32 35 32 32 0A 32 2520.2521.2522.2 +11504: 35 32 33 0A 32 35 32 34 0A 32 35 32 35 0A 32 35 523.2524.2525.25 +11520: 32 36 0A 32 35 32 37 0A 32 35 32 38 0A 32 35 32 26.2527.2528.252 +11536: 39 0A 32 35 33 30 0A 32 35 33 31 0A 32 35 33 32 9.2530.2531.2532 +11552: 0A 32 35 33 33 0A 32 35 33 34 0A 32 35 33 35 0A .2533.2534.2535. +11568: 32 35 33 36 0A 32 35 33 37 0A 32 35 33 38 0A 32 2536.2537.2538.2 +11584: 35 33 39 0A 32 35 34 30 0A 32 35 34 31 0A 32 35 539.2540.2541.25 +11600: 34 32 0A 32 35 34 33 0A 32 35 34 34 0A 32 35 34 42.2543.2544.254 +11616: 35 0A 32 35 34 36 0A 32 35 34 37 0A 32 35 34 38 5.2546.2547.2548 +11632: 0A 32 35 34 39 0A 32 35 35 30 0A 32 35 35 31 0A .2549.2550.2551. +11648: 32 35 35 32 0A 32 35 35 33 0A 32 35 35 34 0A 32 2552.2553.2554.2 +11664: 35 35 35 0A 32 35 35 36 0A 32 35 35 37 0A 32 35 555.2556.2557.25 +11680: 35 38 0A 32 35 35 39 0A 32 35 36 30 0A 32 35 36 58.2559.2560.256 +11696: 31 0A 32 35 36 32 0A 32 35 36 33 0A 32 35 36 34 1.2562.2563.2564 +11712: 0A 32 35 36 35 0A 32 35 36 36 0A 32 35 36 37 0A .2565.2566.2567. +11728: 32 35 36 38 0A 32 35 36 39 0A 32 35 37 30 0A 32 2568.2569.2570.2 +11744: 35 37 31 0A 32 35 37 32 0A 32 35 37 33 0A 32 35 571.2572.2573.25 +11760: 37 34 0A 32 35 37 35 0A 32 35 37 36 0A 32 35 37 74.2575.2576.257 +11776: 37 0A 32 35 37 38 0A 32 35 37 39 0A 32 35 38 30 7.2578.2579.2580 +11792: 0A 32 35 38 31 0A 32 35 38 32 0A 32 35 38 33 0A .2581.2582.2583. +11808: 32 35 38 34 0A 32 35 38 35 0A 32 35 38 36 0A 32 2584.2585.2586.2 +11824: 35 38 37 0A 32 35 38 38 0A 32 35 38 39 0A 32 35 587.2588.2589.25 +11840: 39 30 0A 32 35 39 31 0A 32 35 39 32 0A 32 35 39 90.2591.2592.259 +11856: 33 0A 32 35 39 34 0A 32 35 39 35 0A 32 35 39 36 3.2594.2595.2596 +11872: 0A 32 35 39 37 0A 32 35 39 38 0A 32 35 39 39 0A .2597.2598.2599. +11888: 32 36 30 30 0A 32 36 30 31 0A 32 36 30 32 0A 32 2600.2601.2602.2 +11904: 36 30 33 0A 32 36 30 34 0A 32 36 30 35 0A 32 36 603.2604.2605.26 +11920: 30 36 0A 32 36 30 37 0A 32 36 30 38 0A 32 36 30 06.2607.2608.260 +11936: 39 0A 32 36 31 30 0A 32 36 31 31 0A 32 36 31 32 9.2610.2611.2612 +11952: 0A 32 36 31 33 0A 32 36 31 34 0A 32 36 31 35 0A .2613.2614.2615. +11968: 32 36 31 36 0A 32 36 31 37 0A 32 36 31 38 0A 32 2616.2617.2618.2 +11984: 36 31 39 0A 32 36 32 30 0A 32 36 32 31 0A 32 36 619.2620.2621.26 +12000: 32 32 0A 32 36 32 33 0A 32 36 32 34 0A 32 36 32 22.2623.2624.262 +12016: 35 0A 32 36 32 36 0A 32 36 32 37 0A 32 36 32 38 5.2626.2627.2628 +12032: 0A 32 36 32 39 0A 32 36 33 30 0A 32 36 33 31 0A .2629.2630.2631. +12048: 32 36 33 32 0A 32 36 33 33 0A 32 36 33 34 0A 32 2632.2633.2634.2 +12064: 36 33 35 0A 32 36 33 36 0A 32 36 33 37 0A 32 36 635.2636.2637.26 +12080: 33 38 0A 32 36 33 39 0A 32 36 34 30 0A 32 36 34 38.2639.2640.264 +12096: 31 0A 32 36 34 32 0A 32 36 34 33 0A 32 36 34 34 1.2642.2643.2644 +12112: 0A 32 36 34 35 0A 32 36 34 36 0A 32 36 34 37 0A .2645.2646.2647. +12128: 32 36 34 38 0A 32 36 34 39 0A 32 36 35 30 0A 32 2648.2649.2650.2 +12144: 36 35 31 0A 32 36 35 32 0A 32 36 35 33 0A 32 36 651.2652.2653.26 +12160: 35 34 0A 32 36 35 35 0A 32 36 35 36 0A 32 36 35 54.2655.2656.265 +12176: 37 0A 32 36 35 38 0A 32 36 35 39 0A 32 36 36 30 7.2658.2659.2660 +12192: 0A 32 36 36 31 0A 32 36 36 32 0A 32 36 36 33 0A .2661.2662.2663. +12208: 32 36 36 34 0A 32 36 36 35 0A 32 36 36 36 0A 32 2664.2665.2666.2 +12224: 36 36 37 0A 32 36 36 38 0A 32 36 36 39 0A 32 36 667.2668.2669.26 +12240: 37 30 0A 32 36 37 31 0A 32 36 37 32 0A 32 36 37 70.2671.2672.267 +12256: 33 0A 32 36 37 34 0A 32 36 37 35 0A 32 36 37 36 3.2674.2675.2676 +12272: 0A 32 36 37 37 0A 32 36 37 38 0A 32 36 37 39 0A .2677.2678.2679. +12288: 32 36 38 30 0A 32 36 38 31 0A 32 36 38 32 0A 32 2680.2681.2682.2 +12304: 36 38 33 0A 32 36 38 34 0A 32 36 38 35 0A 32 36 683.2684.2685.26 +12320: 38 36 0A 32 36 38 37 0A 32 36 38 38 0A 32 36 38 86.2687.2688.268 +12336: 39 0A 32 36 39 30 0A 32 36 39 31 0A 32 36 39 32 9.2690.2691.2692 +12352: 0A 32 36 39 33 0A 32 36 39 34 0A 32 36 39 35 0A .2693.2694.2695. +12368: 32 36 39 36 0A 32 36 39 37 0A 32 36 39 38 0A 32 2696.2697.2698.2 +12384: 36 39 39 0A 32 37 30 30 0A 32 37 30 31 0A 32 37 699.2700.2701.27 +12400: 30 32 0A 32 37 30 33 0A 32 37 30 34 0A 32 37 30 02.2703.2704.270 +12416: 35 0A 32 37 30 36 0A 32 37 30 37 0A 32 37 30 38 5.2706.2707.2708 +12432: 0A 32 37 30 39 0A 32 37 31 30 0A 32 37 31 31 0A .2709.2710.2711. +12448: 32 37 31 32 0A 32 37 31 33 0A 32 37 31 34 0A 32 2712.2713.2714.2 +12464: 37 31 35 0A 32 37 31 36 0A 32 37 31 37 0A 32 37 715.2716.2717.27 +12480: 31 38 0A 32 37 31 39 0A 32 37 32 30 0A 32 37 32 18.2719.2720.272 +12496: 31 0A 32 37 32 32 0A 32 37 32 33 0A 32 37 32 34 1.2722.2723.2724 +12512: 0A 32 37 32 35 0A 32 37 32 36 0A 32 37 32 37 0A .2725.2726.2727. +12528: 32 37 32 38 0A 32 37 32 39 0A 32 37 33 30 0A 32 2728.2729.2730.2 +12544: 37 33 31 0A 32 37 33 32 0A 32 37 33 33 0A 32 37 731.2732.2733.27 +12560: 33 34 0A 32 37 33 35 0A 32 37 33 36 0A 32 37 33 34.2735.2736.273 +12576: 37 0A 32 37 33 38 0A 32 37 33 39 0A 32 37 34 30 7.2738.2739.2740 +12592: 0A 32 37 34 31 0A 32 37 34 32 0A 32 37 34 33 0A .2741.2742.2743. +12608: 32 37 34 34 0A 32 37 34 35 0A 32 37 34 36 0A 32 2744.2745.2746.2 +12624: 37 34 37 0A 32 37 34 38 0A 32 37 34 39 0A 32 37 747.2748.2749.27 +12640: 35 30 0A 32 37 35 31 0A 32 37 35 32 0A 32 37 35 50.2751.2752.275 +12656: 33 0A 32 37 35 34 0A 32 37 35 35 0A 32 37 35 36 3.2754.2755.2756 +12672: 0A 32 37 35 37 0A 32 37 35 38 0A 32 37 35 39 0A .2757.2758.2759. +12688: 32 37 36 30 0A 32 37 36 31 0A 32 37 36 32 0A 32 2760.2761.2762.2 +12704: 37 36 33 0A 32 37 36 34 0A 32 37 36 35 0A 32 37 763.2764.2765.27 +12720: 36 36 0A 32 37 36 37 0A 32 37 36 38 0A 32 37 36 66.2767.2768.276 +12736: 39 0A 32 37 37 30 0A 32 37 37 31 0A 32 37 37 32 9.2770.2771.2772 +12752: 0A 32 37 37 33 0A 32 37 37 34 0A 32 37 37 35 0A .2773.2774.2775. +12768: 32 37 37 36 0A 32 37 37 37 0A 32 37 37 38 0A 32 2776.2777.2778.2 +12784: 37 37 39 0A 32 37 38 30 0A 32 37 38 31 0A 32 37 779.2780.2781.27 +12800: 38 32 0A 32 37 38 33 0A 32 37 38 34 0A 32 37 38 82.2783.2784.278 +12816: 35 0A 32 37 38 36 0A 32 37 38 37 0A 32 37 38 38 5.2786.2787.2788 +12832: 0A 32 37 38 39 0A 32 37 39 30 0A 32 37 39 31 0A .2789.2790.2791. +12848: 32 37 39 32 0A 32 37 39 33 0A 32 37 39 34 0A 32 2792.2793.2794.2 +12864: 37 39 35 0A 32 37 39 36 0A 32 37 39 37 0A 32 37 795.2796.2797.27 +12880: 39 38 0A 32 37 39 39 0A 32 38 30 30 0A 32 38 30 98.2799.2800.280 +12896: 31 0A 32 38 30 32 0A 32 38 30 33 0A 32 38 30 34 1.2802.2803.2804 +12912: 0A 32 38 30 35 0A 32 38 30 36 0A 32 38 30 37 0A .2805.2806.2807. +12928: 32 38 30 38 0A 32 38 30 39 0A 32 38 31 30 0A 32 2808.2809.2810.2 +12944: 38 31 31 0A 32 38 31 32 0A 32 38 31 33 0A 32 38 811.2812.2813.28 +12960: 31 34 0A 32 38 31 35 0A 32 38 31 36 0A 32 38 31 14.2815.2816.281 +12976: 37 0A 32 38 31 38 0A 32 38 31 39 0A 32 38 32 30 7.2818.2819.2820 +12992: 0A 32 38 32 31 0A 32 38 32 32 0A 32 38 32 33 0A .2821.2822.2823. +13008: 32 38 32 34 0A 32 38 32 35 0A 32 38 32 36 0A 32 2824.2825.2826.2 +13024: 38 32 37 0A 32 38 32 38 0A 32 38 32 39 0A 32 38 827.2828.2829.28 +13040: 33 30 0A 32 38 33 31 0A 32 38 33 32 0A 32 38 33 30.2831.2832.283 +13056: 33 0A 32 38 33 34 0A 32 38 33 35 0A 32 38 33 36 3.2834.2835.2836 +13072: 0A 32 38 33 37 0A 32 38 33 38 0A 32 38 33 39 0A .2837.2838.2839. +13088: 32 38 34 30 0A 32 38 34 31 0A 32 38 34 32 0A 32 2840.2841.2842.2 +13104: 38 34 33 0A 32 38 34 34 0A 32 38 34 35 0A 32 38 843.2844.2845.28 +13120: 34 36 0A 32 38 34 37 0A 32 38 34 38 0A 32 38 34 46.2847.2848.284 +13136: 39 0A 32 38 35 30 0A 32 38 35 31 0A 32 38 35 32 9.2850.2851.2852 +13152: 0A 32 38 35 33 0A 32 38 35 34 0A 32 38 35 35 0A .2853.2854.2855. +13168: 32 38 35 36 0A 32 38 35 37 0A 32 38 35 38 0A 32 2856.2857.2858.2 +13184: 38 35 39 0A 32 38 36 30 0A 32 38 36 31 0A 32 38 859.2860.2861.28 +13200: 36 32 0A 32 38 36 33 0A 32 38 36 34 0A 32 38 36 62.2863.2864.286 +13216: 35 0A 32 38 36 36 0A 32 38 36 37 0A 32 38 36 38 5.2866.2867.2868 +13232: 0A 32 38 36 39 0A 32 38 37 30 0A 32 38 37 31 0A .2869.2870.2871. +13248: 32 38 37 32 0A 32 38 37 33 0A 32 38 37 34 0A 32 2872.2873.2874.2 +13264: 38 37 35 0A 32 38 37 36 0A 32 38 37 37 0A 32 38 875.2876.2877.28 +13280: 37 38 0A 32 38 37 39 0A 32 38 38 30 0A 32 38 38 78.2879.2880.288 +13296: 31 0A 32 38 38 32 0A 32 38 38 33 0A 32 38 38 34 1.2882.2883.2884 +13312: 0A 32 38 38 35 0A 32 38 38 36 0A 32 38 38 37 0A .2885.2886.2887. +13328: 32 38 38 38 0A 32 38 38 39 0A 32 38 39 30 0A 32 2888.2889.2890.2 +13344: 38 39 31 0A 32 38 39 32 0A 32 38 39 33 0A 32 38 891.2892.2893.28 +13360: 39 34 0A 32 38 39 35 0A 32 38 39 36 0A 32 38 39 94.2895.2896.289 +13376: 37 0A 32 38 39 38 0A 32 38 39 39 0A 32 39 30 30 7.2898.2899.2900 +13392: 0A 32 39 30 31 0A 32 39 30 32 0A 32 39 30 33 0A .2901.2902.2903. +13408: 32 39 30 34 0A 32 39 30 35 0A 32 39 30 36 0A 32 2904.2905.2906.2 +13424: 39 30 37 0A 32 39 30 38 0A 32 39 30 39 0A 32 39 907.2908.2909.29 +13440: 31 30 0A 32 39 31 31 0A 32 39 31 32 0A 32 39 31 10.2911.2912.291 +13456: 33 0A 32 39 31 34 0A 32 39 31 35 0A 32 39 31 36 3.2914.2915.2916 +13472: 0A 32 39 31 37 0A 32 39 31 38 0A 32 39 31 39 0A .2917.2918.2919. +13488: 32 39 32 30 0A 32 39 32 31 0A 32 39 32 32 0A 32 2920.2921.2922.2 +13504: 39 32 33 0A 32 39 32 34 0A 32 39 32 35 0A 32 39 923.2924.2925.29 +13520: 32 36 0A 32 39 32 37 0A 32 39 32 38 0A 32 39 32 26.2927.2928.292 +13536: 39 0A 32 39 33 30 0A 32 39 33 31 0A 32 39 33 32 9.2930.2931.2932 +13552: 0A 32 39 33 33 0A 32 39 33 34 0A 32 39 33 35 0A .2933.2934.2935. +13568: 32 39 33 36 0A 32 39 33 37 0A 32 39 33 38 0A 32 2936.2937.2938.2 +13584: 39 33 39 0A 32 39 34 30 0A 32 39 34 31 0A 32 39 939.2940.2941.29 +13600: 34 32 0A 32 39 34 33 0A 32 39 34 34 0A 32 39 34 42.2943.2944.294 +13616: 35 0A 32 39 34 36 0A 32 39 34 37 0A 32 39 34 38 5.2946.2947.2948 +13632: 0A 32 39 34 39 0A 32 39 35 30 0A 32 39 35 31 0A .2949.2950.2951. +13648: 32 39 35 32 0A 32 39 35 33 0A 32 39 35 34 0A 32 2952.2953.2954.2 +13664: 39 35 35 0A 32 39 35 36 0A 32 39 35 37 0A 32 39 955.2956.2957.29 +13680: 35 38 0A 32 39 35 39 0A 32 39 36 30 0A 32 39 36 58.2959.2960.296 +13696: 31 0A 32 39 36 32 0A 32 39 36 33 0A 32 39 36 34 1.2962.2963.2964 +13712: 0A 32 39 36 35 0A 32 39 36 36 0A 32 39 36 37 0A .2965.2966.2967. +13728: 32 39 36 38 0A 32 39 36 39 0A 32 39 37 30 0A 32 2968.2969.2970.2 +13744: 39 37 31 0A 32 39 37 32 0A 32 39 37 33 0A 32 39 971.2972.2973.29 +13760: 37 34 0A 32 39 37 35 0A 32 39 37 36 0A 32 39 37 74.2975.2976.297 +13776: 37 0A 32 39 37 38 0A 32 39 37 39 0A 32 39 38 30 7.2978.2979.2980 +13792: 0A 32 39 38 31 0A 32 39 38 32 0A 32 39 38 33 0A .2981.2982.2983. +13808: 32 39 38 34 0A 32 39 38 35 0A 32 39 38 36 0A 32 2984.2985.2986.2 +13824: 39 38 37 0A 32 39 38 38 0A 32 39 38 39 0A 32 39 987.2988.2989.29 +13840: 39 30 0A 32 39 39 31 0A 32 39 39 32 0A 32 39 39 90.2991.2992.299 +13856: 33 0A 32 39 39 34 0A 32 39 39 35 0A 32 39 39 36 3.2994.2995.2996 +13872: 0A 32 39 39 37 0A 32 39 39 38 0A 32 39 39 39 0A .2997.2998.2999. diff --git a/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_gz@false.snap b/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_gz@false.snap new file mode 100644 index 00000000..5a708147 --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_gz@false.snap @@ -0,0 +1,5 @@ +--- +source: src/common/io/std.rs +expression: "format!(\"{:x?}\", & buf)" +--- +[1f, 8b, 8, 0, 0, 0, 0, 0, 0, ff, 2, 0, 0, 0, ff, ff, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0] diff --git a/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_gz@true.snap b/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_gz@true.snap new file mode 100644 index 00000000..b6b85aba --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__std__test__open_write_maybe_gz@true.snap @@ -0,0 +1,5 @@ +--- +source: src/common/io/std.rs +expression: "format!(\"{:x?}\", & buf)" +--- +[] diff --git a/src/common/io/snapshots/mehari__common__io__std__test__read_lines.snap b/src/common/io/snapshots/mehari__common__io__std__test__read_lines.snap new file mode 100644 index 00000000..31fc36f1 --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__std__test__read_lines.snap @@ -0,0 +1,8 @@ +--- +source: src/common/io/std.rs +expression: lines +--- +- one +- two +- three + diff --git a/src/common/io/snapshots/mehari__common__io__tokio__test__open_read_maybe_gz@14kb.txt.bgz.snap b/src/common/io/snapshots/mehari__common__io__tokio__test__open_read_maybe_gz@14kb.txt.bgz.snap new file mode 100644 index 00000000..02d28846 --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__tokio__test__open_read_maybe_gz@14kb.txt.bgz.snap @@ -0,0 +1,3005 @@ +--- +source: src/common/io/tokio.rs +expression: "String::from_utf8(buf)?" +--- +1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +197 +198 +199 +200 +201 +202 +203 +204 +205 +206 +207 +208 +209 +210 +211 +212 +213 +214 +215 +216 +217 +218 +219 +220 +221 +222 +223 +224 +225 +226 +227 +228 +229 +230 +231 +232 +233 +234 +235 +236 +237 +238 +239 +240 +241 +242 +243 +244 +245 +246 +247 +248 +249 +250 +251 +252 +253 +254 +255 +256 +257 +258 +259 +260 +261 +262 +263 +264 +265 +266 +267 +268 +269 +270 +271 +272 +273 +274 +275 +276 +277 +278 +279 +280 +281 +282 +283 +284 +285 +286 +287 +288 +289 +290 +291 +292 +293 +294 +295 +296 +297 +298 +299 +300 +301 +302 +303 +304 +305 +306 +307 +308 +309 +310 +311 +312 +313 +314 +315 +316 +317 +318 +319 +320 +321 +322 +323 +324 +325 +326 +327 +328 +329 +330 +331 +332 +333 +334 +335 +336 +337 +338 +339 +340 +341 +342 +343 +344 +345 +346 +347 +348 +349 +350 +351 +352 +353 +354 +355 +356 +357 +358 +359 +360 +361 +362 +363 +364 +365 +366 +367 +368 +369 +370 +371 +372 +373 +374 +375 +376 +377 +378 +379 +380 +381 +382 +383 +384 +385 +386 +387 +388 +389 +390 +391 +392 +393 +394 +395 +396 +397 +398 +399 +400 +401 +402 +403 +404 +405 +406 +407 +408 +409 +410 +411 +412 +413 +414 +415 +416 +417 +418 +419 +420 +421 +422 +423 +424 +425 +426 +427 +428 +429 +430 +431 +432 +433 +434 +435 +436 +437 +438 +439 +440 +441 +442 +443 +444 +445 +446 +447 +448 +449 +450 +451 +452 +453 +454 +455 +456 +457 +458 +459 +460 +461 +462 +463 +464 +465 +466 +467 +468 +469 +470 +471 +472 +473 +474 +475 +476 +477 +478 +479 +480 +481 +482 +483 +484 +485 +486 +487 +488 +489 +490 +491 +492 +493 +494 +495 +496 +497 +498 +499 +500 +501 +502 +503 +504 +505 +506 +507 +508 +509 +510 +511 +512 +513 +514 +515 +516 +517 +518 +519 +520 +521 +522 +523 +524 +525 +526 +527 +528 +529 +530 +531 +532 +533 +534 +535 +536 +537 +538 +539 +540 +541 +542 +543 +544 +545 +546 +547 +548 +549 +550 +551 +552 +553 +554 +555 +556 +557 +558 +559 +560 +561 +562 +563 +564 +565 +566 +567 +568 +569 +570 +571 +572 +573 +574 +575 +576 +577 +578 +579 +580 +581 +582 +583 +584 +585 +586 +587 +588 +589 +590 +591 +592 +593 +594 +595 +596 +597 +598 +599 +600 +601 +602 +603 +604 +605 +606 +607 +608 +609 +610 +611 +612 +613 +614 +615 +616 +617 +618 +619 +620 +621 +622 +623 +624 +625 +626 +627 +628 +629 +630 +631 +632 +633 +634 +635 +636 +637 +638 +639 +640 +641 +642 +643 +644 +645 +646 +647 +648 +649 +650 +651 +652 +653 +654 +655 +656 +657 +658 +659 +660 +661 +662 +663 +664 +665 +666 +667 +668 +669 +670 +671 +672 +673 +674 +675 +676 +677 +678 +679 +680 +681 +682 +683 +684 +685 +686 +687 +688 +689 +690 +691 +692 +693 +694 +695 +696 +697 +698 +699 +700 +701 +702 +703 +704 +705 +706 +707 +708 +709 +710 +711 +712 +713 +714 +715 +716 +717 +718 +719 +720 +721 +722 +723 +724 +725 +726 +727 +728 +729 +730 +731 +732 +733 +734 +735 +736 +737 +738 +739 +740 +741 +742 +743 +744 +745 +746 +747 +748 +749 +750 +751 +752 +753 +754 +755 +756 +757 +758 +759 +760 +761 +762 +763 +764 +765 +766 +767 +768 +769 +770 +771 +772 +773 +774 +775 +776 +777 +778 +779 +780 +781 +782 +783 +784 +785 +786 +787 +788 +789 +790 +791 +792 +793 +794 +795 +796 +797 +798 +799 +800 +801 +802 +803 +804 +805 +806 +807 +808 +809 +810 +811 +812 +813 +814 +815 +816 +817 +818 +819 +820 +821 +822 +823 +824 +825 +826 +827 +828 +829 +830 +831 +832 +833 +834 +835 +836 +837 +838 +839 +840 +841 +842 +843 +844 +845 +846 +847 +848 +849 +850 +851 +852 +853 +854 +855 +856 +857 +858 +859 +860 +861 +862 +863 +864 +865 +866 +867 +868 +869 +870 +871 +872 +873 +874 +875 +876 +877 +878 +879 +880 +881 +882 +883 +884 +885 +886 +887 +888 +889 +890 +891 +892 +893 +894 +895 +896 +897 +898 +899 +900 +901 +902 +903 +904 +905 +906 +907 +908 +909 +910 +911 +912 +913 +914 +915 +916 +917 +918 +919 +920 +921 +922 +923 +924 +925 +926 +927 +928 +929 +930 +931 +932 +933 +934 +935 +936 +937 +938 +939 +940 +941 +942 +943 +944 +945 +946 +947 +948 +949 +950 +951 +952 +953 +954 +955 +956 +957 +958 +959 +960 +961 +962 +963 +964 +965 +966 +967 +968 +969 +970 +971 +972 +973 +974 +975 +976 +977 +978 +979 +980 +981 +982 +983 +984 +985 +986 +987 +988 +989 +990 +991 +992 +993 +994 +995 +996 +997 +998 +999 +1000 +1001 +1002 +1003 +1004 +1005 +1006 +1007 +1008 +1009 +1010 +1011 +1012 +1013 +1014 +1015 +1016 +1017 +1018 +1019 +1020 +1021 +1022 +1023 +1024 +1025 +1026 +1027 +1028 +1029 +1030 +1031 +1032 +1033 +1034 +1035 +1036 +1037 +1038 +1039 +1040 +1041 +1042 +1043 +1044 +1045 +1046 +1047 +1048 +1049 +1050 +1051 +1052 +1053 +1054 +1055 +1056 +1057 +1058 +1059 +1060 +1061 +1062 +1063 +1064 +1065 +1066 +1067 +1068 +1069 +1070 +1071 +1072 +1073 +1074 +1075 +1076 +1077 +1078 +1079 +1080 +1081 +1082 +1083 +1084 +1085 +1086 +1087 +1088 +1089 +1090 +1091 +1092 +1093 +1094 +1095 +1096 +1097 +1098 +1099 +1100 +1101 +1102 +1103 +1104 +1105 +1106 +1107 +1108 +1109 +1110 +1111 +1112 +1113 +1114 +1115 +1116 +1117 +1118 +1119 +1120 +1121 +1122 +1123 +1124 +1125 +1126 +1127 +1128 +1129 +1130 +1131 +1132 +1133 +1134 +1135 +1136 +1137 +1138 +1139 +1140 +1141 +1142 +1143 +1144 +1145 +1146 +1147 +1148 +1149 +1150 +1151 +1152 +1153 +1154 +1155 +1156 +1157 +1158 +1159 +1160 +1161 +1162 +1163 +1164 +1165 +1166 +1167 +1168 +1169 +1170 +1171 +1172 +1173 +1174 +1175 +1176 +1177 +1178 +1179 +1180 +1181 +1182 +1183 +1184 +1185 +1186 +1187 +1188 +1189 +1190 +1191 +1192 +1193 +1194 +1195 +1196 +1197 +1198 +1199 +1200 +1201 +1202 +1203 +1204 +1205 +1206 +1207 +1208 +1209 +1210 +1211 +1212 +1213 +1214 +1215 +1216 +1217 +1218 +1219 +1220 +1221 +1222 +1223 +1224 +1225 +1226 +1227 +1228 +1229 +1230 +1231 +1232 +1233 +1234 +1235 +1236 +1237 +1238 +1239 +1240 +1241 +1242 +1243 +1244 +1245 +1246 +1247 +1248 +1249 +1250 +1251 +1252 +1253 +1254 +1255 +1256 +1257 +1258 +1259 +1260 +1261 +1262 +1263 +1264 +1265 +1266 +1267 +1268 +1269 +1270 +1271 +1272 +1273 +1274 +1275 +1276 +1277 +1278 +1279 +1280 +1281 +1282 +1283 +1284 +1285 +1286 +1287 +1288 +1289 +1290 +1291 +1292 +1293 +1294 +1295 +1296 +1297 +1298 +1299 +1300 +1301 +1302 +1303 +1304 +1305 +1306 +1307 +1308 +1309 +1310 +1311 +1312 +1313 +1314 +1315 +1316 +1317 +1318 +1319 +1320 +1321 +1322 +1323 +1324 +1325 +1326 +1327 +1328 +1329 +1330 +1331 +1332 +1333 +1334 +1335 +1336 +1337 +1338 +1339 +1340 +1341 +1342 +1343 +1344 +1345 +1346 +1347 +1348 +1349 +1350 +1351 +1352 +1353 +1354 +1355 +1356 +1357 +1358 +1359 +1360 +1361 +1362 +1363 +1364 +1365 +1366 +1367 +1368 +1369 +1370 +1371 +1372 +1373 +1374 +1375 +1376 +1377 +1378 +1379 +1380 +1381 +1382 +1383 +1384 +1385 +1386 +1387 +1388 +1389 +1390 +1391 +1392 +1393 +1394 +1395 +1396 +1397 +1398 +1399 +1400 +1401 +1402 +1403 +1404 +1405 +1406 +1407 +1408 +1409 +1410 +1411 +1412 +1413 +1414 +1415 +1416 +1417 +1418 +1419 +1420 +1421 +1422 +1423 +1424 +1425 +1426 +1427 +1428 +1429 +1430 +1431 +1432 +1433 +1434 +1435 +1436 +1437 +1438 +1439 +1440 +1441 +1442 +1443 +1444 +1445 +1446 +1447 +1448 +1449 +1450 +1451 +1452 +1453 +1454 +1455 +1456 +1457 +1458 +1459 +1460 +1461 +1462 +1463 +1464 +1465 +1466 +1467 +1468 +1469 +1470 +1471 +1472 +1473 +1474 +1475 +1476 +1477 +1478 +1479 +1480 +1481 +1482 +1483 +1484 +1485 +1486 +1487 +1488 +1489 +1490 +1491 +1492 +1493 +1494 +1495 +1496 +1497 +1498 +1499 +1500 +1501 +1502 +1503 +1504 +1505 +1506 +1507 +1508 +1509 +1510 +1511 +1512 +1513 +1514 +1515 +1516 +1517 +1518 +1519 +1520 +1521 +1522 +1523 +1524 +1525 +1526 +1527 +1528 +1529 +1530 +1531 +1532 +1533 +1534 +1535 +1536 +1537 +1538 +1539 +1540 +1541 +1542 +1543 +1544 +1545 +1546 +1547 +1548 +1549 +1550 +1551 +1552 +1553 +1554 +1555 +1556 +1557 +1558 +1559 +1560 +1561 +1562 +1563 +1564 +1565 +1566 +1567 +1568 +1569 +1570 +1571 +1572 +1573 +1574 +1575 +1576 +1577 +1578 +1579 +1580 +1581 +1582 +1583 +1584 +1585 +1586 +1587 +1588 +1589 +1590 +1591 +1592 +1593 +1594 +1595 +1596 +1597 +1598 +1599 +1600 +1601 +1602 +1603 +1604 +1605 +1606 +1607 +1608 +1609 +1610 +1611 +1612 +1613 +1614 +1615 +1616 +1617 +1618 +1619 +1620 +1621 +1622 +1623 +1624 +1625 +1626 +1627 +1628 +1629 +1630 +1631 +1632 +1633 +1634 +1635 +1636 +1637 +1638 +1639 +1640 +1641 +1642 +1643 +1644 +1645 +1646 +1647 +1648 +1649 +1650 +1651 +1652 +1653 +1654 +1655 +1656 +1657 +1658 +1659 +1660 +1661 +1662 +1663 +1664 +1665 +1666 +1667 +1668 +1669 +1670 +1671 +1672 +1673 +1674 +1675 +1676 +1677 +1678 +1679 +1680 +1681 +1682 +1683 +1684 +1685 +1686 +1687 +1688 +1689 +1690 +1691 +1692 +1693 +1694 +1695 +1696 +1697 +1698 +1699 +1700 +1701 +1702 +1703 +1704 +1705 +1706 +1707 +1708 +1709 +1710 +1711 +1712 +1713 +1714 +1715 +1716 +1717 +1718 +1719 +1720 +1721 +1722 +1723 +1724 +1725 +1726 +1727 +1728 +1729 +1730 +1731 +1732 +1733 +1734 +1735 +1736 +1737 +1738 +1739 +1740 +1741 +1742 +1743 +1744 +1745 +1746 +1747 +1748 +1749 +1750 +1751 +1752 +1753 +1754 +1755 +1756 +1757 +1758 +1759 +1760 +1761 +1762 +1763 +1764 +1765 +1766 +1767 +1768 +1769 +1770 +1771 +1772 +1773 +1774 +1775 +1776 +1777 +1778 +1779 +1780 +1781 +1782 +1783 +1784 +1785 +1786 +1787 +1788 +1789 +1790 +1791 +1792 +1793 +1794 +1795 +1796 +1797 +1798 +1799 +1800 +1801 +1802 +1803 +1804 +1805 +1806 +1807 +1808 +1809 +1810 +1811 +1812 +1813 +1814 +1815 +1816 +1817 +1818 +1819 +1820 +1821 +1822 +1823 +1824 +1825 +1826 +1827 +1828 +1829 +1830 +1831 +1832 +1833 +1834 +1835 +1836 +1837 +1838 +1839 +1840 +1841 +1842 +1843 +1844 +1845 +1846 +1847 +1848 +1849 +1850 +1851 +1852 +1853 +1854 +1855 +1856 +1857 +1858 +1859 +1860 +1861 +1862 +1863 +1864 +1865 +1866 +1867 +1868 +1869 +1870 +1871 +1872 +1873 +1874 +1875 +1876 +1877 +1878 +1879 +1880 +1881 +1882 +1883 +1884 +1885 +1886 +1887 +1888 +1889 +1890 +1891 +1892 +1893 +1894 +1895 +1896 +1897 +1898 +1899 +1900 +1901 +1902 +1903 +1904 +1905 +1906 +1907 +1908 +1909 +1910 +1911 +1912 +1913 +1914 +1915 +1916 +1917 +1918 +1919 +1920 +1921 +1922 +1923 +1924 +1925 +1926 +1927 +1928 +1929 +1930 +1931 +1932 +1933 +1934 +1935 +1936 +1937 +1938 +1939 +1940 +1941 +1942 +1943 +1944 +1945 +1946 +1947 +1948 +1949 +1950 +1951 +1952 +1953 +1954 +1955 +1956 +1957 +1958 +1959 +1960 +1961 +1962 +1963 +1964 +1965 +1966 +1967 +1968 +1969 +1970 +1971 +1972 +1973 +1974 +1975 +1976 +1977 +1978 +1979 +1980 +1981 +1982 +1983 +1984 +1985 +1986 +1987 +1988 +1989 +1990 +1991 +1992 +1993 +1994 +1995 +1996 +1997 +1998 +1999 +2000 +2001 +2002 +2003 +2004 +2005 +2006 +2007 +2008 +2009 +2010 +2011 +2012 +2013 +2014 +2015 +2016 +2017 +2018 +2019 +2020 +2021 +2022 +2023 +2024 +2025 +2026 +2027 +2028 +2029 +2030 +2031 +2032 +2033 +2034 +2035 +2036 +2037 +2038 +2039 +2040 +2041 +2042 +2043 +2044 +2045 +2046 +2047 +2048 +2049 +2050 +2051 +2052 +2053 +2054 +2055 +2056 +2057 +2058 +2059 +2060 +2061 +2062 +2063 +2064 +2065 +2066 +2067 +2068 +2069 +2070 +2071 +2072 +2073 +2074 +2075 +2076 +2077 +2078 +2079 +2080 +2081 +2082 +2083 +2084 +2085 +2086 +2087 +2088 +2089 +2090 +2091 +2092 +2093 +2094 +2095 +2096 +2097 +2098 +2099 +2100 +2101 +2102 +2103 +2104 +2105 +2106 +2107 +2108 +2109 +2110 +2111 +2112 +2113 +2114 +2115 +2116 +2117 +2118 +2119 +2120 +2121 +2122 +2123 +2124 +2125 +2126 +2127 +2128 +2129 +2130 +2131 +2132 +2133 +2134 +2135 +2136 +2137 +2138 +2139 +2140 +2141 +2142 +2143 +2144 +2145 +2146 +2147 +2148 +2149 +2150 +2151 +2152 +2153 +2154 +2155 +2156 +2157 +2158 +2159 +2160 +2161 +2162 +2163 +2164 +2165 +2166 +2167 +2168 +2169 +2170 +2171 +2172 +2173 +2174 +2175 +2176 +2177 +2178 +2179 +2180 +2181 +2182 +2183 +2184 +2185 +2186 +2187 +2188 +2189 +2190 +2191 +2192 +2193 +2194 +2195 +2196 +2197 +2198 +2199 +2200 +2201 +2202 +2203 +2204 +2205 +2206 +2207 +2208 +2209 +2210 +2211 +2212 +2213 +2214 +2215 +2216 +2217 +2218 +2219 +2220 +2221 +2222 +2223 +2224 +2225 +2226 +2227 +2228 +2229 +2230 +2231 +2232 +2233 +2234 +2235 +2236 +2237 +2238 +2239 +2240 +2241 +2242 +2243 +2244 +2245 +2246 +2247 +2248 +2249 +2250 +2251 +2252 +2253 +2254 +2255 +2256 +2257 +2258 +2259 +2260 +2261 +2262 +2263 +2264 +2265 +2266 +2267 +2268 +2269 +2270 +2271 +2272 +2273 +2274 +2275 +2276 +2277 +2278 +2279 +2280 +2281 +2282 +2283 +2284 +2285 +2286 +2287 +2288 +2289 +2290 +2291 +2292 +2293 +2294 +2295 +2296 +2297 +2298 +2299 +2300 +2301 +2302 +2303 +2304 +2305 +2306 +2307 +2308 +2309 +2310 +2311 +2312 +2313 +2314 +2315 +2316 +2317 +2318 +2319 +2320 +2321 +2322 +2323 +2324 +2325 +2326 +2327 +2328 +2329 +2330 +2331 +2332 +2333 +2334 +2335 +2336 +2337 +2338 +2339 +2340 +2341 +2342 +2343 +2344 +2345 +2346 +2347 +2348 +2349 +2350 +2351 +2352 +2353 +2354 +2355 +2356 +2357 +2358 +2359 +2360 +2361 +2362 +2363 +2364 +2365 +2366 +2367 +2368 +2369 +2370 +2371 +2372 +2373 +2374 +2375 +2376 +2377 +2378 +2379 +2380 +2381 +2382 +2383 +2384 +2385 +2386 +2387 +2388 +2389 +2390 +2391 +2392 +2393 +2394 +2395 +2396 +2397 +2398 +2399 +2400 +2401 +2402 +2403 +2404 +2405 +2406 +2407 +2408 +2409 +2410 +2411 +2412 +2413 +2414 +2415 +2416 +2417 +2418 +2419 +2420 +2421 +2422 +2423 +2424 +2425 +2426 +2427 +2428 +2429 +2430 +2431 +2432 +2433 +2434 +2435 +2436 +2437 +2438 +2439 +2440 +2441 +2442 +2443 +2444 +2445 +2446 +2447 +2448 +2449 +2450 +2451 +2452 +2453 +2454 +2455 +2456 +2457 +2458 +2459 +2460 +2461 +2462 +2463 +2464 +2465 +2466 +2467 +2468 +2469 +2470 +2471 +2472 +2473 +2474 +2475 +2476 +2477 +2478 +2479 +2480 +2481 +2482 +2483 +2484 +2485 +2486 +2487 +2488 +2489 +2490 +2491 +2492 +2493 +2494 +2495 +2496 +2497 +2498 +2499 +2500 +2501 +2502 +2503 +2504 +2505 +2506 +2507 +2508 +2509 +2510 +2511 +2512 +2513 +2514 +2515 +2516 +2517 +2518 +2519 +2520 +2521 +2522 +2523 +2524 +2525 +2526 +2527 +2528 +2529 +2530 +2531 +2532 +2533 +2534 +2535 +2536 +2537 +2538 +2539 +2540 +2541 +2542 +2543 +2544 +2545 +2546 +2547 +2548 +2549 +2550 +2551 +2552 +2553 +2554 +2555 +2556 +2557 +2558 +2559 +2560 +2561 +2562 +2563 +2564 +2565 +2566 +2567 +2568 +2569 +2570 +2571 +2572 +2573 +2574 +2575 +2576 +2577 +2578 +2579 +2580 +2581 +2582 +2583 +2584 +2585 +2586 +2587 +2588 +2589 +2590 +2591 +2592 +2593 +2594 +2595 +2596 +2597 +2598 +2599 +2600 +2601 +2602 +2603 +2604 +2605 +2606 +2607 +2608 +2609 +2610 +2611 +2612 +2613 +2614 +2615 +2616 +2617 +2618 +2619 +2620 +2621 +2622 +2623 +2624 +2625 +2626 +2627 +2628 +2629 +2630 +2631 +2632 +2633 +2634 +2635 +2636 +2637 +2638 +2639 +2640 +2641 +2642 +2643 +2644 +2645 +2646 +2647 +2648 +2649 +2650 +2651 +2652 +2653 +2654 +2655 +2656 +2657 +2658 +2659 +2660 +2661 +2662 +2663 +2664 +2665 +2666 +2667 +2668 +2669 +2670 +2671 +2672 +2673 +2674 +2675 +2676 +2677 +2678 +2679 +2680 +2681 +2682 +2683 +2684 +2685 +2686 +2687 +2688 +2689 +2690 +2691 +2692 +2693 +2694 +2695 +2696 +2697 +2698 +2699 +2700 +2701 +2702 +2703 +2704 +2705 +2706 +2707 +2708 +2709 +2710 +2711 +2712 +2713 +2714 +2715 +2716 +2717 +2718 +2719 +2720 +2721 +2722 +2723 +2724 +2725 +2726 +2727 +2728 +2729 +2730 +2731 +2732 +2733 +2734 +2735 +2736 +2737 +2738 +2739 +2740 +2741 +2742 +2743 +2744 +2745 +2746 +2747 +2748 +2749 +2750 +2751 +2752 +2753 +2754 +2755 +2756 +2757 +2758 +2759 +2760 +2761 +2762 +2763 +2764 +2765 +2766 +2767 +2768 +2769 +2770 +2771 +2772 +2773 +2774 +2775 +2776 +2777 +2778 +2779 +2780 +2781 +2782 +2783 +2784 +2785 +2786 +2787 +2788 +2789 +2790 +2791 +2792 +2793 +2794 +2795 +2796 +2797 +2798 +2799 +2800 +2801 +2802 +2803 +2804 +2805 +2806 +2807 +2808 +2809 +2810 +2811 +2812 +2813 +2814 +2815 +2816 +2817 +2818 +2819 +2820 +2821 +2822 +2823 +2824 +2825 +2826 +2827 +2828 +2829 +2830 +2831 +2832 +2833 +2834 +2835 +2836 +2837 +2838 +2839 +2840 +2841 +2842 +2843 +2844 +2845 +2846 +2847 +2848 +2849 +2850 +2851 +2852 +2853 +2854 +2855 +2856 +2857 +2858 +2859 +2860 +2861 +2862 +2863 +2864 +2865 +2866 +2867 +2868 +2869 +2870 +2871 +2872 +2873 +2874 +2875 +2876 +2877 +2878 +2879 +2880 +2881 +2882 +2883 +2884 +2885 +2886 +2887 +2888 +2889 +2890 +2891 +2892 +2893 +2894 +2895 +2896 +2897 +2898 +2899 +2900 +2901 +2902 +2903 +2904 +2905 +2906 +2907 +2908 +2909 +2910 +2911 +2912 +2913 +2914 +2915 +2916 +2917 +2918 +2919 +2920 +2921 +2922 +2923 +2924 +2925 +2926 +2927 +2928 +2929 +2930 +2931 +2932 +2933 +2934 +2935 +2936 +2937 +2938 +2939 +2940 +2941 +2942 +2943 +2944 +2945 +2946 +2947 +2948 +2949 +2950 +2951 +2952 +2953 +2954 +2955 +2956 +2957 +2958 +2959 +2960 +2961 +2962 +2963 +2964 +2965 +2966 +2967 +2968 +2969 +2970 +2971 +2972 +2973 +2974 +2975 +2976 +2977 +2978 +2979 +2980 +2981 +2982 +2983 +2984 +2985 +2986 +2987 +2988 +2989 +2990 +2991 +2992 +2993 +2994 +2995 +2996 +2997 +2998 +2999 +3000 + diff --git a/src/common/io/snapshots/mehari__common__io__tokio__test__open_read_maybe_gz@14kb.txt.gz.snap b/src/common/io/snapshots/mehari__common__io__tokio__test__open_read_maybe_gz@14kb.txt.gz.snap new file mode 100644 index 00000000..02d28846 --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__tokio__test__open_read_maybe_gz@14kb.txt.gz.snap @@ -0,0 +1,3005 @@ +--- +source: src/common/io/tokio.rs +expression: "String::from_utf8(buf)?" +--- +1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +197 +198 +199 +200 +201 +202 +203 +204 +205 +206 +207 +208 +209 +210 +211 +212 +213 +214 +215 +216 +217 +218 +219 +220 +221 +222 +223 +224 +225 +226 +227 +228 +229 +230 +231 +232 +233 +234 +235 +236 +237 +238 +239 +240 +241 +242 +243 +244 +245 +246 +247 +248 +249 +250 +251 +252 +253 +254 +255 +256 +257 +258 +259 +260 +261 +262 +263 +264 +265 +266 +267 +268 +269 +270 +271 +272 +273 +274 +275 +276 +277 +278 +279 +280 +281 +282 +283 +284 +285 +286 +287 +288 +289 +290 +291 +292 +293 +294 +295 +296 +297 +298 +299 +300 +301 +302 +303 +304 +305 +306 +307 +308 +309 +310 +311 +312 +313 +314 +315 +316 +317 +318 +319 +320 +321 +322 +323 +324 +325 +326 +327 +328 +329 +330 +331 +332 +333 +334 +335 +336 +337 +338 +339 +340 +341 +342 +343 +344 +345 +346 +347 +348 +349 +350 +351 +352 +353 +354 +355 +356 +357 +358 +359 +360 +361 +362 +363 +364 +365 +366 +367 +368 +369 +370 +371 +372 +373 +374 +375 +376 +377 +378 +379 +380 +381 +382 +383 +384 +385 +386 +387 +388 +389 +390 +391 +392 +393 +394 +395 +396 +397 +398 +399 +400 +401 +402 +403 +404 +405 +406 +407 +408 +409 +410 +411 +412 +413 +414 +415 +416 +417 +418 +419 +420 +421 +422 +423 +424 +425 +426 +427 +428 +429 +430 +431 +432 +433 +434 +435 +436 +437 +438 +439 +440 +441 +442 +443 +444 +445 +446 +447 +448 +449 +450 +451 +452 +453 +454 +455 +456 +457 +458 +459 +460 +461 +462 +463 +464 +465 +466 +467 +468 +469 +470 +471 +472 +473 +474 +475 +476 +477 +478 +479 +480 +481 +482 +483 +484 +485 +486 +487 +488 +489 +490 +491 +492 +493 +494 +495 +496 +497 +498 +499 +500 +501 +502 +503 +504 +505 +506 +507 +508 +509 +510 +511 +512 +513 +514 +515 +516 +517 +518 +519 +520 +521 +522 +523 +524 +525 +526 +527 +528 +529 +530 +531 +532 +533 +534 +535 +536 +537 +538 +539 +540 +541 +542 +543 +544 +545 +546 +547 +548 +549 +550 +551 +552 +553 +554 +555 +556 +557 +558 +559 +560 +561 +562 +563 +564 +565 +566 +567 +568 +569 +570 +571 +572 +573 +574 +575 +576 +577 +578 +579 +580 +581 +582 +583 +584 +585 +586 +587 +588 +589 +590 +591 +592 +593 +594 +595 +596 +597 +598 +599 +600 +601 +602 +603 +604 +605 +606 +607 +608 +609 +610 +611 +612 +613 +614 +615 +616 +617 +618 +619 +620 +621 +622 +623 +624 +625 +626 +627 +628 +629 +630 +631 +632 +633 +634 +635 +636 +637 +638 +639 +640 +641 +642 +643 +644 +645 +646 +647 +648 +649 +650 +651 +652 +653 +654 +655 +656 +657 +658 +659 +660 +661 +662 +663 +664 +665 +666 +667 +668 +669 +670 +671 +672 +673 +674 +675 +676 +677 +678 +679 +680 +681 +682 +683 +684 +685 +686 +687 +688 +689 +690 +691 +692 +693 +694 +695 +696 +697 +698 +699 +700 +701 +702 +703 +704 +705 +706 +707 +708 +709 +710 +711 +712 +713 +714 +715 +716 +717 +718 +719 +720 +721 +722 +723 +724 +725 +726 +727 +728 +729 +730 +731 +732 +733 +734 +735 +736 +737 +738 +739 +740 +741 +742 +743 +744 +745 +746 +747 +748 +749 +750 +751 +752 +753 +754 +755 +756 +757 +758 +759 +760 +761 +762 +763 +764 +765 +766 +767 +768 +769 +770 +771 +772 +773 +774 +775 +776 +777 +778 +779 +780 +781 +782 +783 +784 +785 +786 +787 +788 +789 +790 +791 +792 +793 +794 +795 +796 +797 +798 +799 +800 +801 +802 +803 +804 +805 +806 +807 +808 +809 +810 +811 +812 +813 +814 +815 +816 +817 +818 +819 +820 +821 +822 +823 +824 +825 +826 +827 +828 +829 +830 +831 +832 +833 +834 +835 +836 +837 +838 +839 +840 +841 +842 +843 +844 +845 +846 +847 +848 +849 +850 +851 +852 +853 +854 +855 +856 +857 +858 +859 +860 +861 +862 +863 +864 +865 +866 +867 +868 +869 +870 +871 +872 +873 +874 +875 +876 +877 +878 +879 +880 +881 +882 +883 +884 +885 +886 +887 +888 +889 +890 +891 +892 +893 +894 +895 +896 +897 +898 +899 +900 +901 +902 +903 +904 +905 +906 +907 +908 +909 +910 +911 +912 +913 +914 +915 +916 +917 +918 +919 +920 +921 +922 +923 +924 +925 +926 +927 +928 +929 +930 +931 +932 +933 +934 +935 +936 +937 +938 +939 +940 +941 +942 +943 +944 +945 +946 +947 +948 +949 +950 +951 +952 +953 +954 +955 +956 +957 +958 +959 +960 +961 +962 +963 +964 +965 +966 +967 +968 +969 +970 +971 +972 +973 +974 +975 +976 +977 +978 +979 +980 +981 +982 +983 +984 +985 +986 +987 +988 +989 +990 +991 +992 +993 +994 +995 +996 +997 +998 +999 +1000 +1001 +1002 +1003 +1004 +1005 +1006 +1007 +1008 +1009 +1010 +1011 +1012 +1013 +1014 +1015 +1016 +1017 +1018 +1019 +1020 +1021 +1022 +1023 +1024 +1025 +1026 +1027 +1028 +1029 +1030 +1031 +1032 +1033 +1034 +1035 +1036 +1037 +1038 +1039 +1040 +1041 +1042 +1043 +1044 +1045 +1046 +1047 +1048 +1049 +1050 +1051 +1052 +1053 +1054 +1055 +1056 +1057 +1058 +1059 +1060 +1061 +1062 +1063 +1064 +1065 +1066 +1067 +1068 +1069 +1070 +1071 +1072 +1073 +1074 +1075 +1076 +1077 +1078 +1079 +1080 +1081 +1082 +1083 +1084 +1085 +1086 +1087 +1088 +1089 +1090 +1091 +1092 +1093 +1094 +1095 +1096 +1097 +1098 +1099 +1100 +1101 +1102 +1103 +1104 +1105 +1106 +1107 +1108 +1109 +1110 +1111 +1112 +1113 +1114 +1115 +1116 +1117 +1118 +1119 +1120 +1121 +1122 +1123 +1124 +1125 +1126 +1127 +1128 +1129 +1130 +1131 +1132 +1133 +1134 +1135 +1136 +1137 +1138 +1139 +1140 +1141 +1142 +1143 +1144 +1145 +1146 +1147 +1148 +1149 +1150 +1151 +1152 +1153 +1154 +1155 +1156 +1157 +1158 +1159 +1160 +1161 +1162 +1163 +1164 +1165 +1166 +1167 +1168 +1169 +1170 +1171 +1172 +1173 +1174 +1175 +1176 +1177 +1178 +1179 +1180 +1181 +1182 +1183 +1184 +1185 +1186 +1187 +1188 +1189 +1190 +1191 +1192 +1193 +1194 +1195 +1196 +1197 +1198 +1199 +1200 +1201 +1202 +1203 +1204 +1205 +1206 +1207 +1208 +1209 +1210 +1211 +1212 +1213 +1214 +1215 +1216 +1217 +1218 +1219 +1220 +1221 +1222 +1223 +1224 +1225 +1226 +1227 +1228 +1229 +1230 +1231 +1232 +1233 +1234 +1235 +1236 +1237 +1238 +1239 +1240 +1241 +1242 +1243 +1244 +1245 +1246 +1247 +1248 +1249 +1250 +1251 +1252 +1253 +1254 +1255 +1256 +1257 +1258 +1259 +1260 +1261 +1262 +1263 +1264 +1265 +1266 +1267 +1268 +1269 +1270 +1271 +1272 +1273 +1274 +1275 +1276 +1277 +1278 +1279 +1280 +1281 +1282 +1283 +1284 +1285 +1286 +1287 +1288 +1289 +1290 +1291 +1292 +1293 +1294 +1295 +1296 +1297 +1298 +1299 +1300 +1301 +1302 +1303 +1304 +1305 +1306 +1307 +1308 +1309 +1310 +1311 +1312 +1313 +1314 +1315 +1316 +1317 +1318 +1319 +1320 +1321 +1322 +1323 +1324 +1325 +1326 +1327 +1328 +1329 +1330 +1331 +1332 +1333 +1334 +1335 +1336 +1337 +1338 +1339 +1340 +1341 +1342 +1343 +1344 +1345 +1346 +1347 +1348 +1349 +1350 +1351 +1352 +1353 +1354 +1355 +1356 +1357 +1358 +1359 +1360 +1361 +1362 +1363 +1364 +1365 +1366 +1367 +1368 +1369 +1370 +1371 +1372 +1373 +1374 +1375 +1376 +1377 +1378 +1379 +1380 +1381 +1382 +1383 +1384 +1385 +1386 +1387 +1388 +1389 +1390 +1391 +1392 +1393 +1394 +1395 +1396 +1397 +1398 +1399 +1400 +1401 +1402 +1403 +1404 +1405 +1406 +1407 +1408 +1409 +1410 +1411 +1412 +1413 +1414 +1415 +1416 +1417 +1418 +1419 +1420 +1421 +1422 +1423 +1424 +1425 +1426 +1427 +1428 +1429 +1430 +1431 +1432 +1433 +1434 +1435 +1436 +1437 +1438 +1439 +1440 +1441 +1442 +1443 +1444 +1445 +1446 +1447 +1448 +1449 +1450 +1451 +1452 +1453 +1454 +1455 +1456 +1457 +1458 +1459 +1460 +1461 +1462 +1463 +1464 +1465 +1466 +1467 +1468 +1469 +1470 +1471 +1472 +1473 +1474 +1475 +1476 +1477 +1478 +1479 +1480 +1481 +1482 +1483 +1484 +1485 +1486 +1487 +1488 +1489 +1490 +1491 +1492 +1493 +1494 +1495 +1496 +1497 +1498 +1499 +1500 +1501 +1502 +1503 +1504 +1505 +1506 +1507 +1508 +1509 +1510 +1511 +1512 +1513 +1514 +1515 +1516 +1517 +1518 +1519 +1520 +1521 +1522 +1523 +1524 +1525 +1526 +1527 +1528 +1529 +1530 +1531 +1532 +1533 +1534 +1535 +1536 +1537 +1538 +1539 +1540 +1541 +1542 +1543 +1544 +1545 +1546 +1547 +1548 +1549 +1550 +1551 +1552 +1553 +1554 +1555 +1556 +1557 +1558 +1559 +1560 +1561 +1562 +1563 +1564 +1565 +1566 +1567 +1568 +1569 +1570 +1571 +1572 +1573 +1574 +1575 +1576 +1577 +1578 +1579 +1580 +1581 +1582 +1583 +1584 +1585 +1586 +1587 +1588 +1589 +1590 +1591 +1592 +1593 +1594 +1595 +1596 +1597 +1598 +1599 +1600 +1601 +1602 +1603 +1604 +1605 +1606 +1607 +1608 +1609 +1610 +1611 +1612 +1613 +1614 +1615 +1616 +1617 +1618 +1619 +1620 +1621 +1622 +1623 +1624 +1625 +1626 +1627 +1628 +1629 +1630 +1631 +1632 +1633 +1634 +1635 +1636 +1637 +1638 +1639 +1640 +1641 +1642 +1643 +1644 +1645 +1646 +1647 +1648 +1649 +1650 +1651 +1652 +1653 +1654 +1655 +1656 +1657 +1658 +1659 +1660 +1661 +1662 +1663 +1664 +1665 +1666 +1667 +1668 +1669 +1670 +1671 +1672 +1673 +1674 +1675 +1676 +1677 +1678 +1679 +1680 +1681 +1682 +1683 +1684 +1685 +1686 +1687 +1688 +1689 +1690 +1691 +1692 +1693 +1694 +1695 +1696 +1697 +1698 +1699 +1700 +1701 +1702 +1703 +1704 +1705 +1706 +1707 +1708 +1709 +1710 +1711 +1712 +1713 +1714 +1715 +1716 +1717 +1718 +1719 +1720 +1721 +1722 +1723 +1724 +1725 +1726 +1727 +1728 +1729 +1730 +1731 +1732 +1733 +1734 +1735 +1736 +1737 +1738 +1739 +1740 +1741 +1742 +1743 +1744 +1745 +1746 +1747 +1748 +1749 +1750 +1751 +1752 +1753 +1754 +1755 +1756 +1757 +1758 +1759 +1760 +1761 +1762 +1763 +1764 +1765 +1766 +1767 +1768 +1769 +1770 +1771 +1772 +1773 +1774 +1775 +1776 +1777 +1778 +1779 +1780 +1781 +1782 +1783 +1784 +1785 +1786 +1787 +1788 +1789 +1790 +1791 +1792 +1793 +1794 +1795 +1796 +1797 +1798 +1799 +1800 +1801 +1802 +1803 +1804 +1805 +1806 +1807 +1808 +1809 +1810 +1811 +1812 +1813 +1814 +1815 +1816 +1817 +1818 +1819 +1820 +1821 +1822 +1823 +1824 +1825 +1826 +1827 +1828 +1829 +1830 +1831 +1832 +1833 +1834 +1835 +1836 +1837 +1838 +1839 +1840 +1841 +1842 +1843 +1844 +1845 +1846 +1847 +1848 +1849 +1850 +1851 +1852 +1853 +1854 +1855 +1856 +1857 +1858 +1859 +1860 +1861 +1862 +1863 +1864 +1865 +1866 +1867 +1868 +1869 +1870 +1871 +1872 +1873 +1874 +1875 +1876 +1877 +1878 +1879 +1880 +1881 +1882 +1883 +1884 +1885 +1886 +1887 +1888 +1889 +1890 +1891 +1892 +1893 +1894 +1895 +1896 +1897 +1898 +1899 +1900 +1901 +1902 +1903 +1904 +1905 +1906 +1907 +1908 +1909 +1910 +1911 +1912 +1913 +1914 +1915 +1916 +1917 +1918 +1919 +1920 +1921 +1922 +1923 +1924 +1925 +1926 +1927 +1928 +1929 +1930 +1931 +1932 +1933 +1934 +1935 +1936 +1937 +1938 +1939 +1940 +1941 +1942 +1943 +1944 +1945 +1946 +1947 +1948 +1949 +1950 +1951 +1952 +1953 +1954 +1955 +1956 +1957 +1958 +1959 +1960 +1961 +1962 +1963 +1964 +1965 +1966 +1967 +1968 +1969 +1970 +1971 +1972 +1973 +1974 +1975 +1976 +1977 +1978 +1979 +1980 +1981 +1982 +1983 +1984 +1985 +1986 +1987 +1988 +1989 +1990 +1991 +1992 +1993 +1994 +1995 +1996 +1997 +1998 +1999 +2000 +2001 +2002 +2003 +2004 +2005 +2006 +2007 +2008 +2009 +2010 +2011 +2012 +2013 +2014 +2015 +2016 +2017 +2018 +2019 +2020 +2021 +2022 +2023 +2024 +2025 +2026 +2027 +2028 +2029 +2030 +2031 +2032 +2033 +2034 +2035 +2036 +2037 +2038 +2039 +2040 +2041 +2042 +2043 +2044 +2045 +2046 +2047 +2048 +2049 +2050 +2051 +2052 +2053 +2054 +2055 +2056 +2057 +2058 +2059 +2060 +2061 +2062 +2063 +2064 +2065 +2066 +2067 +2068 +2069 +2070 +2071 +2072 +2073 +2074 +2075 +2076 +2077 +2078 +2079 +2080 +2081 +2082 +2083 +2084 +2085 +2086 +2087 +2088 +2089 +2090 +2091 +2092 +2093 +2094 +2095 +2096 +2097 +2098 +2099 +2100 +2101 +2102 +2103 +2104 +2105 +2106 +2107 +2108 +2109 +2110 +2111 +2112 +2113 +2114 +2115 +2116 +2117 +2118 +2119 +2120 +2121 +2122 +2123 +2124 +2125 +2126 +2127 +2128 +2129 +2130 +2131 +2132 +2133 +2134 +2135 +2136 +2137 +2138 +2139 +2140 +2141 +2142 +2143 +2144 +2145 +2146 +2147 +2148 +2149 +2150 +2151 +2152 +2153 +2154 +2155 +2156 +2157 +2158 +2159 +2160 +2161 +2162 +2163 +2164 +2165 +2166 +2167 +2168 +2169 +2170 +2171 +2172 +2173 +2174 +2175 +2176 +2177 +2178 +2179 +2180 +2181 +2182 +2183 +2184 +2185 +2186 +2187 +2188 +2189 +2190 +2191 +2192 +2193 +2194 +2195 +2196 +2197 +2198 +2199 +2200 +2201 +2202 +2203 +2204 +2205 +2206 +2207 +2208 +2209 +2210 +2211 +2212 +2213 +2214 +2215 +2216 +2217 +2218 +2219 +2220 +2221 +2222 +2223 +2224 +2225 +2226 +2227 +2228 +2229 +2230 +2231 +2232 +2233 +2234 +2235 +2236 +2237 +2238 +2239 +2240 +2241 +2242 +2243 +2244 +2245 +2246 +2247 +2248 +2249 +2250 +2251 +2252 +2253 +2254 +2255 +2256 +2257 +2258 +2259 +2260 +2261 +2262 +2263 +2264 +2265 +2266 +2267 +2268 +2269 +2270 +2271 +2272 +2273 +2274 +2275 +2276 +2277 +2278 +2279 +2280 +2281 +2282 +2283 +2284 +2285 +2286 +2287 +2288 +2289 +2290 +2291 +2292 +2293 +2294 +2295 +2296 +2297 +2298 +2299 +2300 +2301 +2302 +2303 +2304 +2305 +2306 +2307 +2308 +2309 +2310 +2311 +2312 +2313 +2314 +2315 +2316 +2317 +2318 +2319 +2320 +2321 +2322 +2323 +2324 +2325 +2326 +2327 +2328 +2329 +2330 +2331 +2332 +2333 +2334 +2335 +2336 +2337 +2338 +2339 +2340 +2341 +2342 +2343 +2344 +2345 +2346 +2347 +2348 +2349 +2350 +2351 +2352 +2353 +2354 +2355 +2356 +2357 +2358 +2359 +2360 +2361 +2362 +2363 +2364 +2365 +2366 +2367 +2368 +2369 +2370 +2371 +2372 +2373 +2374 +2375 +2376 +2377 +2378 +2379 +2380 +2381 +2382 +2383 +2384 +2385 +2386 +2387 +2388 +2389 +2390 +2391 +2392 +2393 +2394 +2395 +2396 +2397 +2398 +2399 +2400 +2401 +2402 +2403 +2404 +2405 +2406 +2407 +2408 +2409 +2410 +2411 +2412 +2413 +2414 +2415 +2416 +2417 +2418 +2419 +2420 +2421 +2422 +2423 +2424 +2425 +2426 +2427 +2428 +2429 +2430 +2431 +2432 +2433 +2434 +2435 +2436 +2437 +2438 +2439 +2440 +2441 +2442 +2443 +2444 +2445 +2446 +2447 +2448 +2449 +2450 +2451 +2452 +2453 +2454 +2455 +2456 +2457 +2458 +2459 +2460 +2461 +2462 +2463 +2464 +2465 +2466 +2467 +2468 +2469 +2470 +2471 +2472 +2473 +2474 +2475 +2476 +2477 +2478 +2479 +2480 +2481 +2482 +2483 +2484 +2485 +2486 +2487 +2488 +2489 +2490 +2491 +2492 +2493 +2494 +2495 +2496 +2497 +2498 +2499 +2500 +2501 +2502 +2503 +2504 +2505 +2506 +2507 +2508 +2509 +2510 +2511 +2512 +2513 +2514 +2515 +2516 +2517 +2518 +2519 +2520 +2521 +2522 +2523 +2524 +2525 +2526 +2527 +2528 +2529 +2530 +2531 +2532 +2533 +2534 +2535 +2536 +2537 +2538 +2539 +2540 +2541 +2542 +2543 +2544 +2545 +2546 +2547 +2548 +2549 +2550 +2551 +2552 +2553 +2554 +2555 +2556 +2557 +2558 +2559 +2560 +2561 +2562 +2563 +2564 +2565 +2566 +2567 +2568 +2569 +2570 +2571 +2572 +2573 +2574 +2575 +2576 +2577 +2578 +2579 +2580 +2581 +2582 +2583 +2584 +2585 +2586 +2587 +2588 +2589 +2590 +2591 +2592 +2593 +2594 +2595 +2596 +2597 +2598 +2599 +2600 +2601 +2602 +2603 +2604 +2605 +2606 +2607 +2608 +2609 +2610 +2611 +2612 +2613 +2614 +2615 +2616 +2617 +2618 +2619 +2620 +2621 +2622 +2623 +2624 +2625 +2626 +2627 +2628 +2629 +2630 +2631 +2632 +2633 +2634 +2635 +2636 +2637 +2638 +2639 +2640 +2641 +2642 +2643 +2644 +2645 +2646 +2647 +2648 +2649 +2650 +2651 +2652 +2653 +2654 +2655 +2656 +2657 +2658 +2659 +2660 +2661 +2662 +2663 +2664 +2665 +2666 +2667 +2668 +2669 +2670 +2671 +2672 +2673 +2674 +2675 +2676 +2677 +2678 +2679 +2680 +2681 +2682 +2683 +2684 +2685 +2686 +2687 +2688 +2689 +2690 +2691 +2692 +2693 +2694 +2695 +2696 +2697 +2698 +2699 +2700 +2701 +2702 +2703 +2704 +2705 +2706 +2707 +2708 +2709 +2710 +2711 +2712 +2713 +2714 +2715 +2716 +2717 +2718 +2719 +2720 +2721 +2722 +2723 +2724 +2725 +2726 +2727 +2728 +2729 +2730 +2731 +2732 +2733 +2734 +2735 +2736 +2737 +2738 +2739 +2740 +2741 +2742 +2743 +2744 +2745 +2746 +2747 +2748 +2749 +2750 +2751 +2752 +2753 +2754 +2755 +2756 +2757 +2758 +2759 +2760 +2761 +2762 +2763 +2764 +2765 +2766 +2767 +2768 +2769 +2770 +2771 +2772 +2773 +2774 +2775 +2776 +2777 +2778 +2779 +2780 +2781 +2782 +2783 +2784 +2785 +2786 +2787 +2788 +2789 +2790 +2791 +2792 +2793 +2794 +2795 +2796 +2797 +2798 +2799 +2800 +2801 +2802 +2803 +2804 +2805 +2806 +2807 +2808 +2809 +2810 +2811 +2812 +2813 +2814 +2815 +2816 +2817 +2818 +2819 +2820 +2821 +2822 +2823 +2824 +2825 +2826 +2827 +2828 +2829 +2830 +2831 +2832 +2833 +2834 +2835 +2836 +2837 +2838 +2839 +2840 +2841 +2842 +2843 +2844 +2845 +2846 +2847 +2848 +2849 +2850 +2851 +2852 +2853 +2854 +2855 +2856 +2857 +2858 +2859 +2860 +2861 +2862 +2863 +2864 +2865 +2866 +2867 +2868 +2869 +2870 +2871 +2872 +2873 +2874 +2875 +2876 +2877 +2878 +2879 +2880 +2881 +2882 +2883 +2884 +2885 +2886 +2887 +2888 +2889 +2890 +2891 +2892 +2893 +2894 +2895 +2896 +2897 +2898 +2899 +2900 +2901 +2902 +2903 +2904 +2905 +2906 +2907 +2908 +2909 +2910 +2911 +2912 +2913 +2914 +2915 +2916 +2917 +2918 +2919 +2920 +2921 +2922 +2923 +2924 +2925 +2926 +2927 +2928 +2929 +2930 +2931 +2932 +2933 +2934 +2935 +2936 +2937 +2938 +2939 +2940 +2941 +2942 +2943 +2944 +2945 +2946 +2947 +2948 +2949 +2950 +2951 +2952 +2953 +2954 +2955 +2956 +2957 +2958 +2959 +2960 +2961 +2962 +2963 +2964 +2965 +2966 +2967 +2968 +2969 +2970 +2971 +2972 +2973 +2974 +2975 +2976 +2977 +2978 +2979 +2980 +2981 +2982 +2983 +2984 +2985 +2986 +2987 +2988 +2989 +2990 +2991 +2992 +2993 +2994 +2995 +2996 +2997 +2998 +2999 +3000 + diff --git a/src/common/io/snapshots/mehari__common__io__tokio__test__open_read_maybe_gz@14kb.txt.snap b/src/common/io/snapshots/mehari__common__io__tokio__test__open_read_maybe_gz@14kb.txt.snap new file mode 100644 index 00000000..02d28846 --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__tokio__test__open_read_maybe_gz@14kb.txt.snap @@ -0,0 +1,3005 @@ +--- +source: src/common/io/tokio.rs +expression: "String::from_utf8(buf)?" +--- +1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +197 +198 +199 +200 +201 +202 +203 +204 +205 +206 +207 +208 +209 +210 +211 +212 +213 +214 +215 +216 +217 +218 +219 +220 +221 +222 +223 +224 +225 +226 +227 +228 +229 +230 +231 +232 +233 +234 +235 +236 +237 +238 +239 +240 +241 +242 +243 +244 +245 +246 +247 +248 +249 +250 +251 +252 +253 +254 +255 +256 +257 +258 +259 +260 +261 +262 +263 +264 +265 +266 +267 +268 +269 +270 +271 +272 +273 +274 +275 +276 +277 +278 +279 +280 +281 +282 +283 +284 +285 +286 +287 +288 +289 +290 +291 +292 +293 +294 +295 +296 +297 +298 +299 +300 +301 +302 +303 +304 +305 +306 +307 +308 +309 +310 +311 +312 +313 +314 +315 +316 +317 +318 +319 +320 +321 +322 +323 +324 +325 +326 +327 +328 +329 +330 +331 +332 +333 +334 +335 +336 +337 +338 +339 +340 +341 +342 +343 +344 +345 +346 +347 +348 +349 +350 +351 +352 +353 +354 +355 +356 +357 +358 +359 +360 +361 +362 +363 +364 +365 +366 +367 +368 +369 +370 +371 +372 +373 +374 +375 +376 +377 +378 +379 +380 +381 +382 +383 +384 +385 +386 +387 +388 +389 +390 +391 +392 +393 +394 +395 +396 +397 +398 +399 +400 +401 +402 +403 +404 +405 +406 +407 +408 +409 +410 +411 +412 +413 +414 +415 +416 +417 +418 +419 +420 +421 +422 +423 +424 +425 +426 +427 +428 +429 +430 +431 +432 +433 +434 +435 +436 +437 +438 +439 +440 +441 +442 +443 +444 +445 +446 +447 +448 +449 +450 +451 +452 +453 +454 +455 +456 +457 +458 +459 +460 +461 +462 +463 +464 +465 +466 +467 +468 +469 +470 +471 +472 +473 +474 +475 +476 +477 +478 +479 +480 +481 +482 +483 +484 +485 +486 +487 +488 +489 +490 +491 +492 +493 +494 +495 +496 +497 +498 +499 +500 +501 +502 +503 +504 +505 +506 +507 +508 +509 +510 +511 +512 +513 +514 +515 +516 +517 +518 +519 +520 +521 +522 +523 +524 +525 +526 +527 +528 +529 +530 +531 +532 +533 +534 +535 +536 +537 +538 +539 +540 +541 +542 +543 +544 +545 +546 +547 +548 +549 +550 +551 +552 +553 +554 +555 +556 +557 +558 +559 +560 +561 +562 +563 +564 +565 +566 +567 +568 +569 +570 +571 +572 +573 +574 +575 +576 +577 +578 +579 +580 +581 +582 +583 +584 +585 +586 +587 +588 +589 +590 +591 +592 +593 +594 +595 +596 +597 +598 +599 +600 +601 +602 +603 +604 +605 +606 +607 +608 +609 +610 +611 +612 +613 +614 +615 +616 +617 +618 +619 +620 +621 +622 +623 +624 +625 +626 +627 +628 +629 +630 +631 +632 +633 +634 +635 +636 +637 +638 +639 +640 +641 +642 +643 +644 +645 +646 +647 +648 +649 +650 +651 +652 +653 +654 +655 +656 +657 +658 +659 +660 +661 +662 +663 +664 +665 +666 +667 +668 +669 +670 +671 +672 +673 +674 +675 +676 +677 +678 +679 +680 +681 +682 +683 +684 +685 +686 +687 +688 +689 +690 +691 +692 +693 +694 +695 +696 +697 +698 +699 +700 +701 +702 +703 +704 +705 +706 +707 +708 +709 +710 +711 +712 +713 +714 +715 +716 +717 +718 +719 +720 +721 +722 +723 +724 +725 +726 +727 +728 +729 +730 +731 +732 +733 +734 +735 +736 +737 +738 +739 +740 +741 +742 +743 +744 +745 +746 +747 +748 +749 +750 +751 +752 +753 +754 +755 +756 +757 +758 +759 +760 +761 +762 +763 +764 +765 +766 +767 +768 +769 +770 +771 +772 +773 +774 +775 +776 +777 +778 +779 +780 +781 +782 +783 +784 +785 +786 +787 +788 +789 +790 +791 +792 +793 +794 +795 +796 +797 +798 +799 +800 +801 +802 +803 +804 +805 +806 +807 +808 +809 +810 +811 +812 +813 +814 +815 +816 +817 +818 +819 +820 +821 +822 +823 +824 +825 +826 +827 +828 +829 +830 +831 +832 +833 +834 +835 +836 +837 +838 +839 +840 +841 +842 +843 +844 +845 +846 +847 +848 +849 +850 +851 +852 +853 +854 +855 +856 +857 +858 +859 +860 +861 +862 +863 +864 +865 +866 +867 +868 +869 +870 +871 +872 +873 +874 +875 +876 +877 +878 +879 +880 +881 +882 +883 +884 +885 +886 +887 +888 +889 +890 +891 +892 +893 +894 +895 +896 +897 +898 +899 +900 +901 +902 +903 +904 +905 +906 +907 +908 +909 +910 +911 +912 +913 +914 +915 +916 +917 +918 +919 +920 +921 +922 +923 +924 +925 +926 +927 +928 +929 +930 +931 +932 +933 +934 +935 +936 +937 +938 +939 +940 +941 +942 +943 +944 +945 +946 +947 +948 +949 +950 +951 +952 +953 +954 +955 +956 +957 +958 +959 +960 +961 +962 +963 +964 +965 +966 +967 +968 +969 +970 +971 +972 +973 +974 +975 +976 +977 +978 +979 +980 +981 +982 +983 +984 +985 +986 +987 +988 +989 +990 +991 +992 +993 +994 +995 +996 +997 +998 +999 +1000 +1001 +1002 +1003 +1004 +1005 +1006 +1007 +1008 +1009 +1010 +1011 +1012 +1013 +1014 +1015 +1016 +1017 +1018 +1019 +1020 +1021 +1022 +1023 +1024 +1025 +1026 +1027 +1028 +1029 +1030 +1031 +1032 +1033 +1034 +1035 +1036 +1037 +1038 +1039 +1040 +1041 +1042 +1043 +1044 +1045 +1046 +1047 +1048 +1049 +1050 +1051 +1052 +1053 +1054 +1055 +1056 +1057 +1058 +1059 +1060 +1061 +1062 +1063 +1064 +1065 +1066 +1067 +1068 +1069 +1070 +1071 +1072 +1073 +1074 +1075 +1076 +1077 +1078 +1079 +1080 +1081 +1082 +1083 +1084 +1085 +1086 +1087 +1088 +1089 +1090 +1091 +1092 +1093 +1094 +1095 +1096 +1097 +1098 +1099 +1100 +1101 +1102 +1103 +1104 +1105 +1106 +1107 +1108 +1109 +1110 +1111 +1112 +1113 +1114 +1115 +1116 +1117 +1118 +1119 +1120 +1121 +1122 +1123 +1124 +1125 +1126 +1127 +1128 +1129 +1130 +1131 +1132 +1133 +1134 +1135 +1136 +1137 +1138 +1139 +1140 +1141 +1142 +1143 +1144 +1145 +1146 +1147 +1148 +1149 +1150 +1151 +1152 +1153 +1154 +1155 +1156 +1157 +1158 +1159 +1160 +1161 +1162 +1163 +1164 +1165 +1166 +1167 +1168 +1169 +1170 +1171 +1172 +1173 +1174 +1175 +1176 +1177 +1178 +1179 +1180 +1181 +1182 +1183 +1184 +1185 +1186 +1187 +1188 +1189 +1190 +1191 +1192 +1193 +1194 +1195 +1196 +1197 +1198 +1199 +1200 +1201 +1202 +1203 +1204 +1205 +1206 +1207 +1208 +1209 +1210 +1211 +1212 +1213 +1214 +1215 +1216 +1217 +1218 +1219 +1220 +1221 +1222 +1223 +1224 +1225 +1226 +1227 +1228 +1229 +1230 +1231 +1232 +1233 +1234 +1235 +1236 +1237 +1238 +1239 +1240 +1241 +1242 +1243 +1244 +1245 +1246 +1247 +1248 +1249 +1250 +1251 +1252 +1253 +1254 +1255 +1256 +1257 +1258 +1259 +1260 +1261 +1262 +1263 +1264 +1265 +1266 +1267 +1268 +1269 +1270 +1271 +1272 +1273 +1274 +1275 +1276 +1277 +1278 +1279 +1280 +1281 +1282 +1283 +1284 +1285 +1286 +1287 +1288 +1289 +1290 +1291 +1292 +1293 +1294 +1295 +1296 +1297 +1298 +1299 +1300 +1301 +1302 +1303 +1304 +1305 +1306 +1307 +1308 +1309 +1310 +1311 +1312 +1313 +1314 +1315 +1316 +1317 +1318 +1319 +1320 +1321 +1322 +1323 +1324 +1325 +1326 +1327 +1328 +1329 +1330 +1331 +1332 +1333 +1334 +1335 +1336 +1337 +1338 +1339 +1340 +1341 +1342 +1343 +1344 +1345 +1346 +1347 +1348 +1349 +1350 +1351 +1352 +1353 +1354 +1355 +1356 +1357 +1358 +1359 +1360 +1361 +1362 +1363 +1364 +1365 +1366 +1367 +1368 +1369 +1370 +1371 +1372 +1373 +1374 +1375 +1376 +1377 +1378 +1379 +1380 +1381 +1382 +1383 +1384 +1385 +1386 +1387 +1388 +1389 +1390 +1391 +1392 +1393 +1394 +1395 +1396 +1397 +1398 +1399 +1400 +1401 +1402 +1403 +1404 +1405 +1406 +1407 +1408 +1409 +1410 +1411 +1412 +1413 +1414 +1415 +1416 +1417 +1418 +1419 +1420 +1421 +1422 +1423 +1424 +1425 +1426 +1427 +1428 +1429 +1430 +1431 +1432 +1433 +1434 +1435 +1436 +1437 +1438 +1439 +1440 +1441 +1442 +1443 +1444 +1445 +1446 +1447 +1448 +1449 +1450 +1451 +1452 +1453 +1454 +1455 +1456 +1457 +1458 +1459 +1460 +1461 +1462 +1463 +1464 +1465 +1466 +1467 +1468 +1469 +1470 +1471 +1472 +1473 +1474 +1475 +1476 +1477 +1478 +1479 +1480 +1481 +1482 +1483 +1484 +1485 +1486 +1487 +1488 +1489 +1490 +1491 +1492 +1493 +1494 +1495 +1496 +1497 +1498 +1499 +1500 +1501 +1502 +1503 +1504 +1505 +1506 +1507 +1508 +1509 +1510 +1511 +1512 +1513 +1514 +1515 +1516 +1517 +1518 +1519 +1520 +1521 +1522 +1523 +1524 +1525 +1526 +1527 +1528 +1529 +1530 +1531 +1532 +1533 +1534 +1535 +1536 +1537 +1538 +1539 +1540 +1541 +1542 +1543 +1544 +1545 +1546 +1547 +1548 +1549 +1550 +1551 +1552 +1553 +1554 +1555 +1556 +1557 +1558 +1559 +1560 +1561 +1562 +1563 +1564 +1565 +1566 +1567 +1568 +1569 +1570 +1571 +1572 +1573 +1574 +1575 +1576 +1577 +1578 +1579 +1580 +1581 +1582 +1583 +1584 +1585 +1586 +1587 +1588 +1589 +1590 +1591 +1592 +1593 +1594 +1595 +1596 +1597 +1598 +1599 +1600 +1601 +1602 +1603 +1604 +1605 +1606 +1607 +1608 +1609 +1610 +1611 +1612 +1613 +1614 +1615 +1616 +1617 +1618 +1619 +1620 +1621 +1622 +1623 +1624 +1625 +1626 +1627 +1628 +1629 +1630 +1631 +1632 +1633 +1634 +1635 +1636 +1637 +1638 +1639 +1640 +1641 +1642 +1643 +1644 +1645 +1646 +1647 +1648 +1649 +1650 +1651 +1652 +1653 +1654 +1655 +1656 +1657 +1658 +1659 +1660 +1661 +1662 +1663 +1664 +1665 +1666 +1667 +1668 +1669 +1670 +1671 +1672 +1673 +1674 +1675 +1676 +1677 +1678 +1679 +1680 +1681 +1682 +1683 +1684 +1685 +1686 +1687 +1688 +1689 +1690 +1691 +1692 +1693 +1694 +1695 +1696 +1697 +1698 +1699 +1700 +1701 +1702 +1703 +1704 +1705 +1706 +1707 +1708 +1709 +1710 +1711 +1712 +1713 +1714 +1715 +1716 +1717 +1718 +1719 +1720 +1721 +1722 +1723 +1724 +1725 +1726 +1727 +1728 +1729 +1730 +1731 +1732 +1733 +1734 +1735 +1736 +1737 +1738 +1739 +1740 +1741 +1742 +1743 +1744 +1745 +1746 +1747 +1748 +1749 +1750 +1751 +1752 +1753 +1754 +1755 +1756 +1757 +1758 +1759 +1760 +1761 +1762 +1763 +1764 +1765 +1766 +1767 +1768 +1769 +1770 +1771 +1772 +1773 +1774 +1775 +1776 +1777 +1778 +1779 +1780 +1781 +1782 +1783 +1784 +1785 +1786 +1787 +1788 +1789 +1790 +1791 +1792 +1793 +1794 +1795 +1796 +1797 +1798 +1799 +1800 +1801 +1802 +1803 +1804 +1805 +1806 +1807 +1808 +1809 +1810 +1811 +1812 +1813 +1814 +1815 +1816 +1817 +1818 +1819 +1820 +1821 +1822 +1823 +1824 +1825 +1826 +1827 +1828 +1829 +1830 +1831 +1832 +1833 +1834 +1835 +1836 +1837 +1838 +1839 +1840 +1841 +1842 +1843 +1844 +1845 +1846 +1847 +1848 +1849 +1850 +1851 +1852 +1853 +1854 +1855 +1856 +1857 +1858 +1859 +1860 +1861 +1862 +1863 +1864 +1865 +1866 +1867 +1868 +1869 +1870 +1871 +1872 +1873 +1874 +1875 +1876 +1877 +1878 +1879 +1880 +1881 +1882 +1883 +1884 +1885 +1886 +1887 +1888 +1889 +1890 +1891 +1892 +1893 +1894 +1895 +1896 +1897 +1898 +1899 +1900 +1901 +1902 +1903 +1904 +1905 +1906 +1907 +1908 +1909 +1910 +1911 +1912 +1913 +1914 +1915 +1916 +1917 +1918 +1919 +1920 +1921 +1922 +1923 +1924 +1925 +1926 +1927 +1928 +1929 +1930 +1931 +1932 +1933 +1934 +1935 +1936 +1937 +1938 +1939 +1940 +1941 +1942 +1943 +1944 +1945 +1946 +1947 +1948 +1949 +1950 +1951 +1952 +1953 +1954 +1955 +1956 +1957 +1958 +1959 +1960 +1961 +1962 +1963 +1964 +1965 +1966 +1967 +1968 +1969 +1970 +1971 +1972 +1973 +1974 +1975 +1976 +1977 +1978 +1979 +1980 +1981 +1982 +1983 +1984 +1985 +1986 +1987 +1988 +1989 +1990 +1991 +1992 +1993 +1994 +1995 +1996 +1997 +1998 +1999 +2000 +2001 +2002 +2003 +2004 +2005 +2006 +2007 +2008 +2009 +2010 +2011 +2012 +2013 +2014 +2015 +2016 +2017 +2018 +2019 +2020 +2021 +2022 +2023 +2024 +2025 +2026 +2027 +2028 +2029 +2030 +2031 +2032 +2033 +2034 +2035 +2036 +2037 +2038 +2039 +2040 +2041 +2042 +2043 +2044 +2045 +2046 +2047 +2048 +2049 +2050 +2051 +2052 +2053 +2054 +2055 +2056 +2057 +2058 +2059 +2060 +2061 +2062 +2063 +2064 +2065 +2066 +2067 +2068 +2069 +2070 +2071 +2072 +2073 +2074 +2075 +2076 +2077 +2078 +2079 +2080 +2081 +2082 +2083 +2084 +2085 +2086 +2087 +2088 +2089 +2090 +2091 +2092 +2093 +2094 +2095 +2096 +2097 +2098 +2099 +2100 +2101 +2102 +2103 +2104 +2105 +2106 +2107 +2108 +2109 +2110 +2111 +2112 +2113 +2114 +2115 +2116 +2117 +2118 +2119 +2120 +2121 +2122 +2123 +2124 +2125 +2126 +2127 +2128 +2129 +2130 +2131 +2132 +2133 +2134 +2135 +2136 +2137 +2138 +2139 +2140 +2141 +2142 +2143 +2144 +2145 +2146 +2147 +2148 +2149 +2150 +2151 +2152 +2153 +2154 +2155 +2156 +2157 +2158 +2159 +2160 +2161 +2162 +2163 +2164 +2165 +2166 +2167 +2168 +2169 +2170 +2171 +2172 +2173 +2174 +2175 +2176 +2177 +2178 +2179 +2180 +2181 +2182 +2183 +2184 +2185 +2186 +2187 +2188 +2189 +2190 +2191 +2192 +2193 +2194 +2195 +2196 +2197 +2198 +2199 +2200 +2201 +2202 +2203 +2204 +2205 +2206 +2207 +2208 +2209 +2210 +2211 +2212 +2213 +2214 +2215 +2216 +2217 +2218 +2219 +2220 +2221 +2222 +2223 +2224 +2225 +2226 +2227 +2228 +2229 +2230 +2231 +2232 +2233 +2234 +2235 +2236 +2237 +2238 +2239 +2240 +2241 +2242 +2243 +2244 +2245 +2246 +2247 +2248 +2249 +2250 +2251 +2252 +2253 +2254 +2255 +2256 +2257 +2258 +2259 +2260 +2261 +2262 +2263 +2264 +2265 +2266 +2267 +2268 +2269 +2270 +2271 +2272 +2273 +2274 +2275 +2276 +2277 +2278 +2279 +2280 +2281 +2282 +2283 +2284 +2285 +2286 +2287 +2288 +2289 +2290 +2291 +2292 +2293 +2294 +2295 +2296 +2297 +2298 +2299 +2300 +2301 +2302 +2303 +2304 +2305 +2306 +2307 +2308 +2309 +2310 +2311 +2312 +2313 +2314 +2315 +2316 +2317 +2318 +2319 +2320 +2321 +2322 +2323 +2324 +2325 +2326 +2327 +2328 +2329 +2330 +2331 +2332 +2333 +2334 +2335 +2336 +2337 +2338 +2339 +2340 +2341 +2342 +2343 +2344 +2345 +2346 +2347 +2348 +2349 +2350 +2351 +2352 +2353 +2354 +2355 +2356 +2357 +2358 +2359 +2360 +2361 +2362 +2363 +2364 +2365 +2366 +2367 +2368 +2369 +2370 +2371 +2372 +2373 +2374 +2375 +2376 +2377 +2378 +2379 +2380 +2381 +2382 +2383 +2384 +2385 +2386 +2387 +2388 +2389 +2390 +2391 +2392 +2393 +2394 +2395 +2396 +2397 +2398 +2399 +2400 +2401 +2402 +2403 +2404 +2405 +2406 +2407 +2408 +2409 +2410 +2411 +2412 +2413 +2414 +2415 +2416 +2417 +2418 +2419 +2420 +2421 +2422 +2423 +2424 +2425 +2426 +2427 +2428 +2429 +2430 +2431 +2432 +2433 +2434 +2435 +2436 +2437 +2438 +2439 +2440 +2441 +2442 +2443 +2444 +2445 +2446 +2447 +2448 +2449 +2450 +2451 +2452 +2453 +2454 +2455 +2456 +2457 +2458 +2459 +2460 +2461 +2462 +2463 +2464 +2465 +2466 +2467 +2468 +2469 +2470 +2471 +2472 +2473 +2474 +2475 +2476 +2477 +2478 +2479 +2480 +2481 +2482 +2483 +2484 +2485 +2486 +2487 +2488 +2489 +2490 +2491 +2492 +2493 +2494 +2495 +2496 +2497 +2498 +2499 +2500 +2501 +2502 +2503 +2504 +2505 +2506 +2507 +2508 +2509 +2510 +2511 +2512 +2513 +2514 +2515 +2516 +2517 +2518 +2519 +2520 +2521 +2522 +2523 +2524 +2525 +2526 +2527 +2528 +2529 +2530 +2531 +2532 +2533 +2534 +2535 +2536 +2537 +2538 +2539 +2540 +2541 +2542 +2543 +2544 +2545 +2546 +2547 +2548 +2549 +2550 +2551 +2552 +2553 +2554 +2555 +2556 +2557 +2558 +2559 +2560 +2561 +2562 +2563 +2564 +2565 +2566 +2567 +2568 +2569 +2570 +2571 +2572 +2573 +2574 +2575 +2576 +2577 +2578 +2579 +2580 +2581 +2582 +2583 +2584 +2585 +2586 +2587 +2588 +2589 +2590 +2591 +2592 +2593 +2594 +2595 +2596 +2597 +2598 +2599 +2600 +2601 +2602 +2603 +2604 +2605 +2606 +2607 +2608 +2609 +2610 +2611 +2612 +2613 +2614 +2615 +2616 +2617 +2618 +2619 +2620 +2621 +2622 +2623 +2624 +2625 +2626 +2627 +2628 +2629 +2630 +2631 +2632 +2633 +2634 +2635 +2636 +2637 +2638 +2639 +2640 +2641 +2642 +2643 +2644 +2645 +2646 +2647 +2648 +2649 +2650 +2651 +2652 +2653 +2654 +2655 +2656 +2657 +2658 +2659 +2660 +2661 +2662 +2663 +2664 +2665 +2666 +2667 +2668 +2669 +2670 +2671 +2672 +2673 +2674 +2675 +2676 +2677 +2678 +2679 +2680 +2681 +2682 +2683 +2684 +2685 +2686 +2687 +2688 +2689 +2690 +2691 +2692 +2693 +2694 +2695 +2696 +2697 +2698 +2699 +2700 +2701 +2702 +2703 +2704 +2705 +2706 +2707 +2708 +2709 +2710 +2711 +2712 +2713 +2714 +2715 +2716 +2717 +2718 +2719 +2720 +2721 +2722 +2723 +2724 +2725 +2726 +2727 +2728 +2729 +2730 +2731 +2732 +2733 +2734 +2735 +2736 +2737 +2738 +2739 +2740 +2741 +2742 +2743 +2744 +2745 +2746 +2747 +2748 +2749 +2750 +2751 +2752 +2753 +2754 +2755 +2756 +2757 +2758 +2759 +2760 +2761 +2762 +2763 +2764 +2765 +2766 +2767 +2768 +2769 +2770 +2771 +2772 +2773 +2774 +2775 +2776 +2777 +2778 +2779 +2780 +2781 +2782 +2783 +2784 +2785 +2786 +2787 +2788 +2789 +2790 +2791 +2792 +2793 +2794 +2795 +2796 +2797 +2798 +2799 +2800 +2801 +2802 +2803 +2804 +2805 +2806 +2807 +2808 +2809 +2810 +2811 +2812 +2813 +2814 +2815 +2816 +2817 +2818 +2819 +2820 +2821 +2822 +2823 +2824 +2825 +2826 +2827 +2828 +2829 +2830 +2831 +2832 +2833 +2834 +2835 +2836 +2837 +2838 +2839 +2840 +2841 +2842 +2843 +2844 +2845 +2846 +2847 +2848 +2849 +2850 +2851 +2852 +2853 +2854 +2855 +2856 +2857 +2858 +2859 +2860 +2861 +2862 +2863 +2864 +2865 +2866 +2867 +2868 +2869 +2870 +2871 +2872 +2873 +2874 +2875 +2876 +2877 +2878 +2879 +2880 +2881 +2882 +2883 +2884 +2885 +2886 +2887 +2888 +2889 +2890 +2891 +2892 +2893 +2894 +2895 +2896 +2897 +2898 +2899 +2900 +2901 +2902 +2903 +2904 +2905 +2906 +2907 +2908 +2909 +2910 +2911 +2912 +2913 +2914 +2915 +2916 +2917 +2918 +2919 +2920 +2921 +2922 +2923 +2924 +2925 +2926 +2927 +2928 +2929 +2930 +2931 +2932 +2933 +2934 +2935 +2936 +2937 +2938 +2939 +2940 +2941 +2942 +2943 +2944 +2945 +2946 +2947 +2948 +2949 +2950 +2951 +2952 +2953 +2954 +2955 +2956 +2957 +2958 +2959 +2960 +2961 +2962 +2963 +2964 +2965 +2966 +2967 +2968 +2969 +2970 +2971 +2972 +2973 +2974 +2975 +2976 +2977 +2978 +2979 +2980 +2981 +2982 +2983 +2984 +2985 +2986 +2987 +2988 +2989 +2990 +2991 +2992 +2993 +2994 +2995 +2996 +2997 +2998 +2999 +3000 + diff --git a/src/common/io/snapshots/mehari__common__io__tokio__test__open_write_maybe_bgzf@14kb.txt.bgz.snap b/src/common/io/snapshots/mehari__common__io__tokio__test__open_write_maybe_bgzf@14kb.txt.bgz.snap new file mode 100644 index 00000000..402149b8 --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__tokio__test__open_write_maybe_bgzf@14kb.txt.bgz.snap @@ -0,0 +1,412 @@ +--- +source: src/common/io/tokio.rs +expression: "String::from_utf8_lossy(&buffer)" +--- +0000: 1F 8B 08 04 00 00 00 00 00 FF 06 00 42 43 02 00 ............BC.. +0016: 56 19 25 DB C9 81 EB 30 12 04 D1 3B AD 61 06 37 V.%....0...;.a.7 +0032: C0 7F C7 94 51 BA 43 B3 20 FA B7 58 8F D5 39 38 ....Q.C....X..98 +0048: AE E3 3E 9E E3 3D BE 63 1D FB C8 79 24 47 38 72 ..>..=.c...y$G8r +0064: 1D B9 8F 3C 47 DE 23 DF 91 75 64 1F 9C 07 39 E0 ......r|..u|..=. +0192: D7 FF 3B DF F1 AD E3 DB C7 3A 8F 95 63 71 AC EB ..;......:..cq.. +0208: 58 F7 B1 9E 63 BD C7 EA FF DB 75 AC 7D EC F3 D8 X...c.....u.}... +0224: 39 36 C7 BE 8E 7D 1F FB 39 F6 7B EC EF D8 BD 0C 96...}..9.{..... +0240: 6F A3 D7 71 F6 3E CE 5E C8 D9 1B 39 7B 25 67 EF o..q.>.^...9{%g. +0256: E4 EC A5 9C BD 95 B3 D7 72 F6 DC 5C 5B CF 79 71 ........r..\[.yq +0272: DE 9C 57 E7 DD 79 79 DE 9E D7 D7 FB 4B 2F 30 78 ..W..yy.....K/0x +0288: BF 3D D7 3B 4C 2F 31 BD C5 F4 1A D3 7B 4C 2F 32 .=.;L/1.....{L/2 +0304: BD C9 F4 2A D3 BB CC 65 88 9E EB 75 A6 F7 99 5E ...*...e...u...^ +0320: 68 7A A3 E9 95 A6 77 9A 5E 6A 7A AB E9 B5 E6 B6 hz....w.^jz..... +0336: 58 CF F5 66 D3 AB 4D EF 36 BD DC F4 76 D3 EB 4D X..f..M.6...v..M +0352: EF 37 BD E0 F4 86 F3 98 B6 E7 7A C9 E9 2D A7 D7 .7........z..-.. +0368: 9C DE 73 7A D1 E9 4D A7 57 9D DE 75 7A D9 79 FD ..sz..M.W..uz.y. +0384: 19 E8 B9 DE 77 7A E1 E9 8D A7 57 9E DE 79 7A E9 ....wz....W..yz. +0400: E9 AD A7 D7 9E DE 7B 3E 7F 58 7A AE 57 9F DE 7D ......{>.Xz.W..} +0416: 7A F9 E9 ED A7 D7 9F DE 7F 1A 20 2D 90 26 C8 F2 z..........-.&.. +0432: A7 AA E7 5A 21 CD 90 76 48 43 A4 25 D2 14 69 8B ...Z!..vHC.%..i. +0448: 34 46 5A 23 DB 1F 3F 7F FE FA 03 D8 1E B4 07 ED 4FZ#..?......... +0464: 41 7B D0 1E B4 07 ED 41 7B D0 1E C4 1F D4 9E 6B A{.....A{......k +0480: 0F DA 83 F6 A0 3D 68 0F DA 83 F6 C0 9F 67 7F A0 .....=h......g.. +0496: E7 27 BA E7 FC 99 F6 87 DA 9F 6A 7F AC FD B9 F6 .'........j..... +0512: 07 BB 3D 68 0F DA 83 CB 1F FD 9E 6B 0F DA 83 F6 ..=h.......k.... +0528: A0 3D 68 0F DA 83 F6 A0 3D 68 0F 6E FF 8D F4 5C .=h.....=h.n...\ +0544: 7B D0 1E B4 07 ED 41 7B D0 1E B4 07 ED 41 7B F0 {.....A{.....A{. +0560: F8 8F A9 E7 DA 83 F6 A0 3D 68 0F DA 83 F6 A0 3D ........=h.....= +0576: 68 0F DA 83 D7 7F 75 3D D7 1E B4 07 ED 41 7B D0 h.....u=.....A{. +0592: 1E B4 07 ED 41 7B D0 1E 7C FE F3 EC B9 F6 A0 3D ....A{..|......= +0608: 68 0F DA 83 F6 A0 3D 68 0F DA 83 F6 60 F9 EF B8 h.....=h....`... +0624: E7 DA 83 F6 A0 3D 68 0F DA 83 F6 A0 3D 68 0F DA .....=h.....=h.. +0640: 83 ED 3F 78 FF C5 F7 9F 7C 7B 5C ED 71 B5 C7 D5 ..?x....|{\.q... +0656: 1E 57 7B 5C ED 71 B5 C7 D5 1E 57 7B 5C F1 57 43 .W{\.q....W{\.WC +0672: CF B5 C7 D5 1E 57 7B 5C ED 71 B5 C7 D5 1E 57 7B .....W{\.q....W{ +0688: 5C ED 71 B5 C7 85 BF 43 7A AE 3D AE F6 B8 DA E3 \.q....Cz.=..... +0704: 6A 8F AB 3D AE F6 B8 FC 4D E3 AF 1A 7F D7 CC 2F j..=....M....../ +0720: 9B 9E F3 D7 8D BF 6F FC 85 E3 6F 1C 7F E5 B4 C7 ......o...o..... +0736: D5 1E 57 7B 5C ED 71 DD FE 56 EA B9 F6 B8 DA E3 ..W{\.q..V...... +0752: 6A 8F AB 3D AE F6 B8 DA E3 6A 8F AB 3D AE F6 B8 j..=.....j..=... +0768: 1E 7F 7D F5 5C 7B 5C ED 71 B5 C7 D5 1E 57 7B 5C ..}.\{\.q....W{\ +0784: ED 71 B5 C7 D5 1E 57 7B 5C AF BF E7 7A AE 3D AE .q....W{\...z.=. +0800: F6 B8 DA E3 6A 8F AB 3D AE F6 B8 DA E3 6A 8F AB ....j..=.....j.. +0816: 3D AE CF 5F 88 3D D7 1E 57 7B 5C ED 71 B5 C7 D5 =.._.=..W{\.q... +0832: 1E 57 7B 5C ED 71 B5 C7 D5 1E D7 F2 37 67 CF B5 .W{\.q......7g.. +0848: C7 D5 1E 57 7B 5C ED 71 B5 C7 D5 1E 57 7B 5C ED ...W{\.q....W{\. +0864: 71 B5 C7 B5 FD 15 EB EF D8 FE 92 6D 8F BB 3D EE q..........m..=. +0880: F6 B8 DB E3 6E 8F BB 3D EE F6 B8 DB E3 6E 8F 3B ....n..=.....n.; +0896: FE 32 EE B9 F6 B8 DB E3 6E 8F BB 3D EE F6 B8 DB .2......n..=.... +0912: E3 6E 8F BB 3D EE F6 B8 F1 B7 76 CF B5 C7 DD 1E .n..=.....v..... +0928: 77 7B DC ED 71 B7 C7 DD 1E 77 7B DC ED 71 B7 C7 w{..q....w{..q.. +0944: 7D F9 EB BD E7 DA E3 6E 8F BB 3D EE F6 B8 DB E3 }......n..=..... +0960: F6 3B C0 2F 01 BF 05 FC 1A 98 EF 81 9E F3 9B C0 .;./............ +0976: AF 02 BF 0B FC 32 68 8F BB 3D EE F6 B8 DB E3 6E .....2h..=.....n +0992: 8F FB F1 0B A3 E7 DA E3 6E 8F BB 3D EE F6 B8 DB ........n..=.... +1008: E3 6E 8F BB 3D EE F6 B8 DB E3 7E FD 66 E9 B9 F6 .n..=.....~.f... +1024: B8 DB E3 6E 8F BB 3D EE F6 B8 DB E3 6E 8F BB 3D ...n..=.....n..= +1040: EE F6 B8 3F BF 82 7A AE 3D EE F6 B8 DB E3 6E 8F ...?..z.=.....n. +1056: BB 3D EE F6 B8 DB E3 6E 8F BB 3D EE E5 77 55 CF .=.....n..=..wU. +1072: B5 C7 DD 1E 77 7B DC ED 71 B7 C7 DD 1E 77 7B DC ....w{..q....w{. +1088: ED 71 B7 C7 BD FD 52 F3 5B AD 5F 6B ED F1 B4 C7 .q....R.[._k.... +1104: D3 1E 4F 7B 3C ED F1 B4 C7 D3 1E 4F 7B 3C ED F1 ..O{<......O{<.. +1120: C4 AF BF 9E 6B 8F A7 3D 9E F6 78 DA E3 69 8F A7 ....k..=..x..i.. +1136: 3D 9E F6 78 DA E3 69 8F 07 BF 27 7B AE 3D 9E F6 =..x..i...'{.=.. +1152: 78 DA E3 69 8F A7 3D 9E F6 78 DA E3 69 8F A7 3D x..i..=..x..i..= +1168: 9E CB 2F D4 9E 6B 8F A7 3D 9E F6 78 DA E3 69 8F ../..k..=..x..i. +1184: A7 3D 9E F6 78 DA E3 69 8F E7 F6 9B B7 E7 DA E3 .=..x..i........ +1200: 69 8F A7 3D 9E F6 78 FC 76 F6 EB D9 EF 67 BF A0 i..=..x.v....g.. +1216: FD 86 9E AF E8 9E F3 4B DA 6F 69 BF A6 DB E3 69 .......K.oi....i +1232: 8F A7 3D 9E F6 78 DA E3 69 8F E7 F5 BB BC E7 DA ..=..x..i....... +1248: E3 69 8F A7 3D 9E F6 78 DA E3 69 8F A7 3D 9E F6 .i..=..x..i..=.. +1264: 78 DA E3 F9 FC D2 EF B9 F6 78 DA E3 69 8F A7 3D x........x..i..= +1280: 9E F6 78 DA E3 69 8F A7 3D 9E F6 78 96 4F 07 3D ..x..i..=..x.O.= +1296: D7 1E 4F 7B 3C ED F1 B4 C7 D3 1E 4F 7B 3C ED F1 ..O{<......O{<.. +1312: B4 C7 D3 1E CF F6 31 C2 E7 88 3E 48 B4 C7 DB 1E ......1...>H.... +1328: 6F 7B BC ED F1 B6 C7 DB 1E 6F 7B BC ED F1 B6 C7 o{.......o{..... +1344: 1B 1F 38 7A AE 3D DE F6 78 DB E3 6D 8F B7 3D DE ..8z.=..x..m..=. +1360: F6 78 DB E3 6D 8F B7 3D 5E 7C 32 E9 B9 F6 78 DB .x..m..=^|2...x. +1376: E3 6D 8F B7 3D DE F6 78 DB E3 6D 8F B7 3D DE F6 .m..=..x..m..=.. +1392: 78 2F 1F 61 7A AE 3D DE F6 78 DB E3 6D 8F B7 3D x/.az.=..x..m..= +1408: DE F6 78 DB E3 6D 8F B7 3D DE DB 67 9D 9E 6B 8F ..x..m..=..g..k. +1424: B7 3D DE F6 78 DB E3 6D 8F B7 3D DE F6 78 DB E3 .=..x..m..=..x.. +1440: 6D 8F F7 F1 A1 A8 E7 DA E3 6D 8F B7 3D 5E 9F 9B m........m..=^.. +1456: 7C 70 F2 C9 C9 47 27 9F 9D 7C 78 9A A7 A7 9E F3 |p...G'..|x..... +1472: F9 C9 07 A8 F6 78 DB E3 6D 8F B7 3D DE F6 78 DB .....x..m..=..x. +1488: E3 6D 8F F7 F3 31 AB E7 DA E3 6D 8F B7 3D DE F6 .m...1....m..=.. +1504: 78 DB E3 6D 8F B7 3D DE F6 78 DB E3 5D 3E 8F F5 x..m..=..x..]>.. +1520: 5C 7B BC ED F1 B6 C7 DB 1E 6F 7B BC ED F1 B6 C7 \{.......o{..... +1536: DB 1E 6F 7B BC DB 07 37 9F DC FA E8 D6 1E 5F 7B ..o{...7......_{ +1552: 7C ED F1 B5 C7 D7 1E 5F 7B 7C ED F1 B5 C7 D7 1E |......_{|...... +1568: 5F 7C C4 EB B9 F6 F8 DA E3 6B 8F AF 3D BE F6 F8 _|.......k..=... +1584: DA E3 6B 8F AF 3D BE F6 F8 F0 59 B0 E7 DA E3 6B ..k..=....Y....k +1600: 8F AF 3D BE F6 F8 DA E3 6B 8F AF 3D BE F6 F8 DA ..=.....k..=.... +1616: E3 BB 7C 68 EC B9 F6 F8 DA E3 6B 8F AF 3D BE F6 ..|h......k..=.. +1632: F8 DA E3 6B 8F AF 3D BE F6 F8 6E 9F 2E 7B AE 3D ...k..=...n..{.= +1648: BE F6 F8 DA E3 6B 8F AF 3D BE F6 F8 DA E3 6B 8F .....k..=.....k. +1664: AF 3D BE C7 C7 D0 9E 6B 8F AF 3D BE F6 F8 DA E3 .=.....k..=..... +1680: 6B 8F AF 3D BE F6 F8 DA E3 6B 8F EF F5 79 B5 E7 k..=.....k...y.. +1696: DA E3 6B 8F CF 27 5A 1F 69 7D A6 F5 A1 D6 A7 5A ..k..'Z.i}.....Z +1712: 1F 6B 7D AE 9D 07 DB 9E F3 D1 B6 3D BE F6 F8 DA .k}........=.... +1728: E3 6B 8F AF 3D BE F6 F8 DA E3 6B 8F 6F F9 04 DC .k..=.....k.o... +1744: 73 ED F1 B5 C7 D7 1E 5F 7B 7C ED F1 B5 C7 D7 1E s......_{|...... +1760: 5F 7B 7C ED F1 6D 1F 95 7D 56 EE C3 72 7B AC F6 _{|..m..}V..r{.. +1776: 58 ED B1 DA 63 B5 C7 6A 8F D5 1E AB 3D 56 7B AC X...c..j....=V{. +1792: F8 50 DD 73 ED B1 DA 63 B5 C7 6A 8F D5 1E AB 3D .P.s...c..j....= +1808: 56 7B AC F6 58 ED B1 F0 E9 BB E7 DA 63 B5 C7 6A V{..X.......c..j +1824: 8F D5 1E AB 3D 56 7B AC F6 58 ED B1 DA 63 5D 3E ....=V{..X...c]> +1840: A6 F7 5C 7B AC F6 58 ED B1 DA 63 B5 C7 6A 8F D5 ..\{..X...c..j.. +1856: 1E AB 3D 56 7B AC DB E7 F9 9E 6B 8F D5 1E AB 3D ..=V{.....k....= +1872: 56 7B AC F6 58 ED B1 DA 63 B5 C7 6A 8F F5 F8 E0 V{..X...c..j.... +1888: DF 73 ED B1 DA 63 B5 C7 6A 8F D5 1E AB 3D 56 7B .s...c..j....=V{ +1904: AC F6 58 ED B1 5E 27 84 9E 6B 8F D5 1E AB 3D 56 ..X..^'..k....=V +1920: 7B AC F6 58 ED B1 DA 63 B5 C7 6A 8F F5 39 4A F4 {..X...c..j..9J. +1936: 5C 7B 2C 67 0D 87 0D A7 0D C7 0D E7 0D 07 0E 27 \{,g...........' +1952: 0E 47 8E 99 39 7A AE 3D 56 7B AC F6 58 ED B1 DA .G..9z.=V{..X... +1968: 63 B5 C7 6A 8F D5 1E AB 3D D6 76 38 71 3A E9 78 c..j....=.v8q:.x +1984: D2 1E BB 3D 76 7B EC F6 D8 ED B1 DB 63 B7 C7 6E ...=v{......c..n +2000: 8F DD 1E 3B 8E 31 3D D7 1E BB 3D 76 7B EC F6 D8 ...;.1=...=v{... +2016: ED B1 DB 63 B7 C7 6E 8F DD 1E 1B E7 9D 9E 6B 8F ...c..n.......k. +2032: DD 1E BB 3D 76 7B EC F6 D8 ED B1 DB 63 B7 C7 6E ...=v{......c..n +2048: 8F 7D 39 18 F5 5C 7B EC F6 D8 ED B1 DB 63 B7 C7 .}9..\{......c.. +2064: 6E 8F DD 1E BB 3D 76 7B EC DB 09 AA E7 DA 63 B7 n....=v{......c. +2080: C7 6E 8F DD 1E BB 3D 76 7B EC F6 D8 ED B1 DB 63 .n....=v{......c +2096: 3F 8E 5A 3D D7 1E BB 3D 76 7B EC F6 D8 ED B1 DB ?.Z=...=v{...... +2112: 63 B7 C7 6E 8F DD 1E FB 75 26 EB B9 F6 D8 ED B1 c..n....u&...... +2128: DB 63 B7 C7 6E 8F DD 1E BB 3D 76 7B EC F6 D8 9F .c..n....=v{.... +2144: C3 5B CF B5 C7 6E 8F DD 1E BB 3D 76 7B EC F6 D8 .[...n....=v{... +2160: ED B1 DB 63 B7 C7 5E 4E 79 3D E7 14 E8 18 E8 1C ...c..^Ny=...... +2176: E8 20 E8 24 E8 28 E8 2C E8 30 E8 34 38 E3 E0 CC ...$.(.,.0.48... +2192: 83 0E 84 33 11 CE 48 38 33 E1 0C 85 33 15 CE 58 ...3..H83...3..X +2208: 38 73 E1 0C 86 4E 86 67 66 84 F4 13 0E 87 A7 D3 8s...N.gf....... +2224: E1 E9 78 78 3A 1F 9E 0E 88 A7 13 E2 E9 88 78 3A ..xx:.........x: +2240: 23 9E 0E 89 27 33 75 FA 09 E7 C4 D3 41 F1 74 52 #...'3u.....A.tR +2256: 3C 1D 15 4F 67 C5 D3 61 F1 74 5A 3C 1D 17 4F E7 <..Og..a.tZ<..O. +2272: C5 F3 9A 41 D5 4F 38 32 9E CE 8C A7 43 E3 E9 D4 ...A.O82....C... +2288: 78 3A 36 9E CE 8D A7 83 E3 E9 E4 78 3A 3A 9E F7 x:6........x::.. +2304: CC B6 7E C2 E9 F1 74 7C 3C 9D 1F 4F 07 C8 D3 09 ..~...t|<..O.... +2320: F2 74 84 3C 9D 21 4F 87 C8 D3 29 F2 7C 66 1C F6 .t.<.!O...).|f.. +2336: 13 0E 92 A7 93 E4 E9 28 79 3A 4B 9E 0E 93 A7 D3 .......(y:K..... +2352: E4 E9 38 79 3A 4F 9E 0E 94 E7 3B 13 B4 9F 70 A6 ..8y:O....;...p. +2368: 3C 1D 2A 4F A7 CA D3 B1 F2 74 AE 3C 1D 2C 4F 27 <.*O.....t.<.,O' +2384: CB D3 D1 F2 74 B6 3C BF 19 BA FD 84 E3 E5 E9 7C ....t.<........| +2400: 79 3A 60 9E 4E 98 A7 23 E6 E9 8C 79 3A 64 9E 4E y:`.N..#...y:d.N +2416: 99 A7 63 E6 B9 66 4E F7 13 4E 9A A7 A3 E6 E9 AC ..c..fN..N...... +2432: 79 3A 6C 9E 4E 9B A7 E3 E6 E9 BC 79 3A 70 9E 4E y:l.N......y:p.N +2448: 9C E7 9E D1 7E 66 7B 87 7B 9B 0F 03 8C 03 0C 04 ....~f{.{....... +2464: 8C 04 0C 05 8C 05 0C 06 FC 35 E0 CF 01 7E 62 40 .........5...~b@ +2480: 60 44 60 48 60 4C 60 50 60 54 60 58 C0 E6 03 03 `D`H`L`P`T`X.... +2496: 23 03 43 03 63 03 83 03 A3 03 C3 03 E3 03 03 04 #.C.c........... +2512: 23 04 43 04 63 04 83 04 A3 04 C3 04 E3 04 03 05 #.C.c........... +2528: 23 05 43 05 63 05 83 05 A3 05 C3 05 E3 05 03 06 #.C.c........... +2544: 23 06 43 06 63 06 83 06 A3 06 C3 06 E3 06 03 07 #.C.c........... +2560: 23 07 43 07 63 07 83 07 A3 07 C3 07 E3 07 03 08 #.C.c........... +2576: 23 08 43 08 63 08 83 08 A3 08 C3 08 E3 08 03 09 #.C.c........... +2592: 23 09 43 09 63 09 83 09 A3 09 C3 09 E3 09 03 0A #.C.c........... +2608: 23 0A 43 0A 63 0A 83 0A A3 0A C3 0A E3 0A 03 0B #.C.c........... +2624: 23 0B 43 0B 63 0B 83 0B A3 0B C3 0B E3 0B 03 0C #.C.c........... +2640: 23 0C 43 0C 63 0C 83 0C A3 0C C3 0C 3A 43 84 86 #.C.c.......:C.. +2656: 28 0D 91 1A A2 35 44 6C 88 DA 10 B9 21 7A 43 04 (....5Dl....!zC. +2672: 87 28 0E 91 1C C2 D8 99 CD 55 87 C8 0E D1 1D 22 .(.......U....." +2688: 3C 44 79 88 F4 10 C6 82 06 83 FE 1A E4 27 C6 83 .| +2960: 44 FA 88 F6 11 F1 23 EA 47 E4 8F E8 1F 11 40 A2 D.....#.G.....@. +2976: 80 44 02 89 06 12 11 24 2A 48 64 90 E8 20 11 42 .D.....$*Hd....B +2992: A2 84 44 0A 89 16 12 31 24 6A 48 E4 90 E8 21 11 ..D....1$jH...!. +3008: 44 A2 88 44 12 89 26 12 51 24 AA 48 64 91 E8 22 D..D..&.Q$.Hd.." +3024: 11 46 A2 8C 44 1A 89 36 12 71 24 EA 48 E4 91 E8 .F..D..6.q$.H... +3040: 23 11 48 A2 90 44 22 89 46 12 91 24 2A 49 64 92 #.H..D".F..$*Id. +3056: E8 24 11 4A A2 94 44 2A 89 56 12 B1 24 6A 49 E4 .$.J..D*.V..$jI. +3072: 92 E8 25 11 4C A2 98 44 32 89 66 12 D1 24 AA 49 ..%.L..D2.f..$.I +3088: 64 93 E8 26 11 4E A2 9C 44 3A 89 76 12 F1 24 F7 d..&.N..D:.v..$. +3104: 38 B9 CD F5 93 08 28 51 50 22 A1 44 43 89 88 12 8.....(QP".DC... +3120: 15 25 32 4A 74 94 08 29 51 52 22 A5 44 4B 89 98 .%2Jt..)QR".DK.. +3136: 12 35 25 72 4A F4 94 08 2A 51 54 22 A9 44 53 89 .5%rJ...*QT".DS. +3152: A8 12 55 25 B2 4A EE 71 E0 81 E0 91 E0 A1 E0 BF ..U%.J.q........ +3168: 05 FB 89 D1 E0 E1 E0 F1 E0 01 61 9B 4B 2C D1 58 ..........a.K,.X +3184: 22 B2 44 65 89 CC 12 9D 25 42 4B 94 96 48 2D D1 ".De....%BK..H-. +3200: 5A 22 B6 44 6D 89 DC 12 BD 25 82 4B 14 97 48 2E Z".Dm....%.K..H. +3216: D1 5C 22 BA 44 75 89 EC 12 DD 25 C2 4B 94 97 48 .\".Du....%.K..H +3232: 2F D1 5E 22 BE 44 7D 89 FC 12 FD 25 02 4C 14 98 /.^".D}....%.L.. +3248: 48 30 D1 60 22 C2 44 85 89 0C 13 1D 26 42 4C 94 H0.`".D.....&BL. +3264: 98 48 31 D1 62 22 C6 44 8D 89 1C 13 3D 26 82 4C .H1.b".D....=&.L +3280: 14 99 48 32 D1 64 22 CA 44 95 89 2C 13 5D 26 C2 ..H2.d".D..,.]&. +3296: 4C 94 99 48 33 D1 66 22 CE 44 9D 89 3C 13 7D 26 L..H3.f".D..<.}& +3312: 02 4D 14 9A 3C F3 76 C4 E6 22 4D 54 9A C8 34 D1 .M..<.v.."MT..4. +3328: 69 22 D4 44 A9 89 54 13 AD 26 62 4D D4 9A C8 35 i".D..T..&bM...5 +3344: D1 6B 22 D8 44 B1 89 64 13 CD 26 A2 4D 54 9B C8 .k".D..d..&.MT.. +3360: 36 D1 6D 22 DC 44 B9 89 74 13 ED 26 E2 4D D4 9B 6.m".D..t..&.M.. +3376: C8 37 D1 6F 22 E0 44 C1 89 84 13 0D 27 22 4E 9E .7.o".D.....'"N. +3392: 79 0B 30 AF 01 E6 3D C0 BC 08 98 37 01 FF 57 01 y.0...=....7..W. +3408: 7E 62 5E 06 CC DB 80 79 1D 60 73 41 27 8A 4E 24 ~b^....y.`sA'.N$ +3424: 9D 68 3A 11 75 A2 EA 44 D6 89 AE 13 61 27 CA 4E .h:.u..D....a'.N +3440: A4 9D 68 3B 11 77 A2 EE 44 DE 89 BE 13 81 27 0A ..h;.w..D.....'. +3456: 4F 24 9E 68 3C 11 79 A2 F2 44 E6 89 CE 13 A1 27 O$.h<.y..D.....' +3472: 4A 4F A4 9E 68 3D 11 7B A2 F6 44 EE 89 DE 13 C1 JO..h=.{..D..... +3488: 27 8A 4F 24 9F 68 3E 11 7D A2 FA 44 F6 89 EE 13 '.O$.h>.}..D.... +3504: E1 27 CA 4F A4 9F 68 3F 11 7F A2 FE 44 FE 89 FE .'.O..h?....D... +3520: 13 01 28 0A 50 24 A0 68 40 11 81 A2 02 45 06 CA ..(.P$.h@....E.. +3536: 3B EF C4 6C AE 04 45 0A 8A 16 14 31 28 6A 50 E4 ;..l..E....1(jP. +3552: A0 E8 41 11 84 A2 08 45 12 8A 26 14 51 28 AA 50 ..A....E..&.Q(.P +3568: 64 A1 E8 42 11 86 A2 0C 45 1A 8A 36 14 71 28 EA d..B....E..6.q(. +3584: 50 E4 A1 E8 43 11 88 A2 10 45 22 8A 46 14 91 28 P...C....E".F..( +3600: 2A 51 64 A2 E8 44 11 8A A2 14 45 2A 8A 56 14 B1 *Qd..D....E*.V.. +3616: 28 6A 51 E4 A2 E8 45 11 8C A2 18 45 32 CA 3B EF (jQ...E....E2.;. +3632: 80 E6 25 D0 BC 05 9A D7 40 F3 1E 68 5E 04 FD DF ..%.....@..h^... +3648: 04 F9 89 79 17 34 2F 83 6C 2E 1F 45 3F 8A 80 14 ...y.4/.l..E?... +3664: 05 29 12 52 34 A4 88 48 51 91 22 23 45 47 8A 90 .).R4..HQ."#EG.. +3680: 14 25 29 52 52 B4 A4 88 49 51 93 22 27 45 4F 8A .%)RR...IQ."'EO. +3696: A0 14 45 29 92 52 34 A5 88 4A 51 95 22 2B 45 57 ..E).R4..JQ."+EW +3712: 8A B0 14 65 29 D2 52 B4 A5 88 4B 51 97 22 2F 45 ...e).R...KQ."/E +3728: 5F 8A C0 14 85 29 12 53 34 A6 88 4C 51 99 22 33 _....).S4..LQ."3 +3744: 45 67 8A D0 14 A5 29 52 53 B4 A6 7C F3 26 D4 E6 Eg....)RS..|.&.. +3760: 72 53 F4 A6 08 4E 51 9C 22 39 45 73 8A E8 14 D5 rS...NQ."9Es.... +3776: 29 B2 53 74 A7 08 4F 51 9E 22 3D 45 7B 8A F8 14 ).St..OQ."=E{... +3792: F5 29 F2 53 F4 A7 08 50 51 A0 22 41 45 83 8A 08 .).S...PQ."AE... +3808: 15 15 2A 32 54 74 A8 08 51 51 A2 22 45 45 8B 8A ..*2Tt..QQ."EE.. +3824: 18 15 35 2A 72 54 F4 A8 08 52 51 A4 22 49 45 93 ..5*rT...RQ."IE. +3840: 8A 28 15 55 2A B2 54 74 A9 08 53 51 A6 22 4D 45 .(.U*.Tt..SQ."ME +3856: 9B 8A 38 15 75 2A F2 54 F4 A9 08 54 F9 E6 0D E0 ..8.u*.T...T.... +3872: BC 02 9C 77 80 F3 12 70 DE 02 CE 6B C0 79 0F F8 ...w...p...k.y.. +3888: 7F 11 E8 27 E6 55 A0 CD C5 AA A8 55 91 AB A2 57 ...'.U.....U...W +3904: 45 B0 8A 62 15 C9 2A 9A 55 44 AB A8 56 91 AD A2 E..b..*.UD..V... +3920: 5B 45 B8 8A 72 15 E9 2A DA 55 C4 AB A8 57 91 AF [E..r..*.U...W.. +3936: A2 5F 45 C0 8A 82 15 09 2B 1A 56 44 AC A8 58 91 ._E.....+.VD..X. +3952: B1 A2 63 45 C8 8A 92 15 29 2B 5A 56 C4 AC A8 59 ..cE....)+ZV...Y +3968: 91 B3 A2 67 45 D0 CA 9A F7 DF 36 D7 B4 22 6A 45 ...gE.....6.."jE +3984: D5 8A AC 15 5D 2B C2 56 94 AD 48 5B D1 B6 22 6E ....]+.V..H[.."n +4000: 45 DD 8A BC 15 7D 2B 02 57 14 AE 48 5C D1 B8 22 E....}+.W..H\.." +4016: 72 45 E5 8A CC 15 9D 2B 42 57 94 AE 48 5D D1 BA rE.....+BW..H].. +4032: 22 76 45 ED 8A DC 15 BD 2B 82 57 14 AF 48 5E D1 "vE.....+.W..H^. +4048: BC 22 7A 45 F5 8A EC 15 DD 2B C2 57 94 AF 48 5F ."zE.....+.W..H_ +4064: D1 BE 22 7E 45 FD 8A FC 15 FD 2B 02 58 14 B0 48 .."~E.....+.X..H +4080: 60 D1 C0 22 82 45 05 8B 0C 16 1D 2C 42 58 94 B0 `..".E.....,BX.. +4096: 48 61 D1 C2 22 86 45 0D 8B 1C 96 35 EF 7F E7 05 Ha..".E....5.... +4112: F0 BC 01 9E 57 C0 F3 0E 78 5E 02 CF 5B E0 79 0D ....W...x^..[.y. +4128: FC 7F 0F EC 27 6C 2E 8D 45 1B 8B 38 16 75 2C F2 ....'l..E..8.u,. +4144: 58 F4 B1 08 64 51 C8 22 91 45 23 8B 48 16 95 2C X...dQ.".E#.H.., +4160: 32 59 74 B2 08 65 51 CA 22 95 45 2B 8B 58 16 B5 2Yt..eQ.".E+.X.. +4176: 2C 72 59 F4 B2 08 66 51 CC 22 99 45 33 8B 68 16 ,rY...fQ.".E3.h. +4192: D5 2C 7B B6 1E 6C 2E 9C 45 39 8B 74 16 ED 2C E2 .,{..l..E9.t..,. +4208: 59 D4 B3 C8 67 D1 CF 22 A0 45 41 8B 84 16 0D 2D Y...g..".EA....- +4224: 22 5A 54 B4 C8 68 D1 D1 22 A4 45 49 8B 94 16 2D "ZT..h..".EI...- +4240: 2D 62 5A D4 B4 C8 69 D1 D3 22 A8 45 51 8B A4 16 -bZ...i..".EQ... +4256: 4D 2D A2 5A 54 B5 C8 6A D1 D5 22 AC 45 59 8B B4 M-.ZT..j..".EY.. +4272: 16 6D 2D E2 5A D4 B5 C8 6B D1 D7 22 B0 45 61 8B .m-.Z...k..".Ea. +4288: C4 16 8D 2D 22 5B 54 B6 C8 6C D1 D9 22 B4 45 69 ...-"[T..l..".Ei +4304: 8B D4 16 AD 2D 62 5B D4 B6 C8 6D D1 DB 22 B8 45 ....-b[...m..".E +4320: 71 8B E4 16 CD 2D A2 5B 54 B7 C8 6E D1 DD 22 BC q....-.[T..n..". +4336: 45 79 8B F4 16 ED 2D E2 5B F6 BC FD 9F D7 FF F3 Ey....-.[....... +4352: FE 7F 16 00 66 03 60 56 00 66 07 60 96 00 66 0B ....f.`V.f.`..f. +4368: E0 BF 06 30 7B 00 2E 02 CC 26 C0 AC 02 CC 2E C0 ...0{....&...... +4384: 2C 03 CC 36 C0 AC 03 CC 3E C0 2C 04 B8 11 A0 C3 ,..6....>.,..... +4400: A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 ................ +4416: 71 CE AE 8B CB 01 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C q.....:.:.:.:.:. +4432: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4448: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4464: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4480: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4496: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4512: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4528: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4544: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4560: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4576: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4592: 3A 1C 3A 1C 3A 1C 99 2D 90 FF 1A 88 9F 98 45 90 :.:.:..-......E. +4608: D9 04 99 55 90 D9 05 99 65 90 D9 06 99 75 10 9B ...U....e....u.. +4624: 67 36 9C 98 CD 11 3F 61 73 1D 0E 1D 0E 1D 0E 1D g6....?as....... +4640: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4656: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4672: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4688: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4704: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4720: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4736: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4752: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4768: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 8E D9 ................ +4784: F7 99 85 9F D9 F8 99 95 9F D9 F9 99 A5 9F D9 FA ................ +4800: 99 B5 9F D9 FB 99 C5 9F D9 FC 99 D5 9F D9 FD 99 ................ +4816: E5 9F D9 FE 99 F5 9F D9 FF 99 05 A0 D9 00 9A 15 ................ +4832: A0 FF 0E D0 2C 01 FD B7 80 FC C4 EC 01 CD 22 D0 ....,.........". +4848: 6C 02 CD 2A D0 EC 02 CD 32 90 CD 67 1D 68 F6 81 l..*....2..g.h.. +4864: 66 21 68 36 82 66 25 68 76 82 66 29 68 B6 82 66 f!h6.f%hv.f)h..f +4880: 2D 68 F6 82 66 31 68 36 83 66 35 68 76 83 66 39 -h..f1h6.f5hv.f9 +4896: 68 B6 83 66 3D 68 F6 83 66 41 68 36 84 66 45 68 h..f=h..fAh6.fEh +4912: 76 84 66 49 68 B6 84 66 4D 68 F6 84 66 51 68 36 v.fIh..fMh..fQh6 +4928: 85 66 55 68 76 85 66 59 68 B6 85 66 5D 68 F6 85 .fUhv.fYh..f]h.. +4944: 66 61 68 36 86 66 65 68 76 86 66 69 68 B6 86 66 fah6.fehv.fih..f +4960: 6D 68 F6 86 66 71 68 36 87 66 75 68 76 87 66 79 mh..fqh6.fuhv.fy +4976: 68 B6 87 66 7D 68 F6 87 66 81 68 36 88 66 85 68 h..f}h..f.h6.f.h +4992: 76 88 66 89 68 B6 88 66 8D 68 F6 88 66 91 68 36 v.f.h..f.h..f.h6 +5008: 89 66 95 68 76 89 66 99 68 B6 89 66 9D 68 F6 89 .f.hv.f.h..f.h.. +5024: 66 A1 68 36 8A 66 A5 48 87 43 87 43 87 43 87 43 f.h6.f.H.C.C.C.C +5040: 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 .C.C.C.C.C.C.C.C +5056: 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 .C.C.C.C.C.C.C.C +5072: 87 43 87 43 87 E3 9A 6D 46 9B EB 70 E8 70 E8 70 .C.C...mF..p.p.p +5088: E8 70 E8 70 5C B3 01 36 2B 60 B3 03 F6 5F 02 F3 .p.p\..6+`..._.. +5104: 13 B3 06 36 7B 60 B3 08 36 9B 60 B3 0A 66 73 1D ...6{`..6.`..fs. +5120: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5136: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5152: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5168: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5184: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5200: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5216: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5232: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5248: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5264: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5280: 0E 1D 0E 1D 8E 7B 76 58 6D AE C3 A1 C3 A1 C3 A1 .....{vXm....... +5296: C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 ................ +5312: C3 A1 C3 A1 C3 71 CF FE DF 2C 00 CE 06 E0 AC 00 .....q...,...... +5328: FE 77 00 FD C4 6C 01 CE 1A E0 EC 01 CE 22 A0 CD .w...l.......".. +5344: 75 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 u8t8t8t8t8t8t8t8 +5360: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5376: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5392: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5408: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5424: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5440: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5456: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5472: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5488: 74 38 74 38 9E D9 5C B6 B9 0E 87 0E 87 0E 87 0E t8t8..\......... +5504: 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E ................ +5520: 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E ................ +5536: 87 0E 87 0E 87 0E C7 33 DB 9F B3 FE 39 FB 9F B3 .......3....9... +5552: 00 3A 1B A0 FF 15 50 3F 31 4B A0 B3 05 3A 6B A0 .:....P?1K...:k. +5568: 36 D7 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 6............... +5584: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5600: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5616: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5632: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5648: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5664: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5680: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5696: E1 D0 E1 78 67 5F DD E6 3A 1C 3A 1C 3A 1C 3A 1C ...xg_..:.:.:.:. +5712: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +5728: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +5744: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +5760: 3A 1C 3A 1C 3A 1C 3A 1C EF EC FE CE F2 EF 6C FF :.:.:.:.......l. +5776: CE FA EF EC FF CE 02 F0 7F 03 D8 4F CC 0E F0 2C ...........O..., +5792: 01 DB 5C 87 43 87 43 87 43 87 43 87 43 87 43 87 ..\.C.C.C.C.C.C. +5808: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5824: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5840: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5856: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5872: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5888: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5904: 43 87 E3 9B BF 52 B0 B9 0E 87 0E 87 0E 87 0E 87 C....R.......... +5920: 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 ................ +5936: 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 ................ +5952: 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 ................ +5968: 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 ................ +5984: 0E 87 0E 87 0E 87 0E 87 0E C7 37 9B DF B3 FA 3D ..........7....= +6000: BB DF B3 FC 3D DB DF B3 FE 3D FB DF FF 05 70 3F ....=....=....p? +6016: 31 2B E0 36 D7 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 1+.6............ +6032: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6048: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6064: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6080: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6096: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6112: D0 E1 58 F3 B7 29 36 D7 E1 D0 E1 D0 E1 D0 E1 D0 ..X..)6......... +6128: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6144: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6160: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6176: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6192: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6208: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 58 B3 F7 3F 8B ...........X..?. +6224: FF B3 F9 3F AB FF B3 FB 3F CB FF B3 FD 3F EB FF ...?....?....?.. +6240: FF FD 7F 3F 61 73 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E ...?as.......... +6256: 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E ................ +6272: 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E ................ +6288: 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E ................ +6304: 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E ................ +6320: 1D 8E 3D 7F 91 64 73 1D 0E 1D 0E 1D 0E 1D 0E 1D ..=..ds......... +6336: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6352: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6368: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6384: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6400: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6416: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6432: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 8E 3D 7F F5 .............=.. +6448: 31 7F F6 31 7F F7 31 7F F8 31 7F F9 31 7F FA 31 1..1..1..1..1..1 +6464: 7F FB 31 7F FC 31 7F FD F1 FF F3 8F 7D FC 00 80 ..1..1......}... +6480: 99 73 8A 40 36 00 00 1F 8B 08 04 00 00 00 00 00 .s.@6........... +6496: FF 06 00 42 43 02 00 1B 00 03 00 00 00 00 00 00 ...BC........... +6512: 00 00 00 ... diff --git a/src/common/io/snapshots/mehari__common__io__tokio__test__open_write_maybe_bgzf@14kb.txt.gz.snap b/src/common/io/snapshots/mehari__common__io__tokio__test__open_write_maybe_bgzf@14kb.txt.gz.snap new file mode 100644 index 00000000..402149b8 --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__tokio__test__open_write_maybe_bgzf@14kb.txt.gz.snap @@ -0,0 +1,412 @@ +--- +source: src/common/io/tokio.rs +expression: "String::from_utf8_lossy(&buffer)" +--- +0000: 1F 8B 08 04 00 00 00 00 00 FF 06 00 42 43 02 00 ............BC.. +0016: 56 19 25 DB C9 81 EB 30 12 04 D1 3B AD 61 06 37 V.%....0...;.a.7 +0032: C0 7F C7 94 51 BA 43 B3 20 FA B7 58 8F D5 39 38 ....Q.C....X..98 +0048: AE E3 3E 9E E3 3D BE 63 1D FB C8 79 24 47 38 72 ..>..=.c...y$G8r +0064: 1D B9 8F 3C 47 DE 23 DF 91 75 64 1F 9C 07 39 E0 ......r|..u|..=. +0192: D7 FF 3B DF F1 AD E3 DB C7 3A 8F 95 63 71 AC EB ..;......:..cq.. +0208: 58 F7 B1 9E 63 BD C7 EA FF DB 75 AC 7D EC F3 D8 X...c.....u.}... +0224: 39 36 C7 BE 8E 7D 1F FB 39 F6 7B EC EF D8 BD 0C 96...}..9.{..... +0240: 6F A3 D7 71 F6 3E CE 5E C8 D9 1B 39 7B 25 67 EF o..q.>.^...9{%g. +0256: E4 EC A5 9C BD 95 B3 D7 72 F6 DC 5C 5B CF 79 71 ........r..\[.yq +0272: DE 9C 57 E7 DD 79 79 DE 9E D7 D7 FB 4B 2F 30 78 ..W..yy.....K/0x +0288: BF 3D D7 3B 4C 2F 31 BD C5 F4 1A D3 7B 4C 2F 32 .=.;L/1.....{L/2 +0304: BD C9 F4 2A D3 BB CC 65 88 9E EB 75 A6 F7 99 5E ...*...e...u...^ +0320: 68 7A A3 E9 95 A6 77 9A 5E 6A 7A AB E9 B5 E6 B6 hz....w.^jz..... +0336: 58 CF F5 66 D3 AB 4D EF 36 BD DC F4 76 D3 EB 4D X..f..M.6...v..M +0352: EF 37 BD E0 F4 86 F3 98 B6 E7 7A C9 E9 2D A7 D7 .7........z..-.. +0368: 9C DE 73 7A D1 E9 4D A7 57 9D DE 75 7A D9 79 FD ..sz..M.W..uz.y. +0384: 19 E8 B9 DE 77 7A E1 E9 8D A7 57 9E DE 79 7A E9 ....wz....W..yz. +0400: E9 AD A7 D7 9E DE 7B 3E 7F 58 7A AE 57 9F DE 7D ......{>.Xz.W..} +0416: 7A F9 E9 ED A7 D7 9F DE 7F 1A 20 2D 90 26 C8 F2 z..........-.&.. +0432: A7 AA E7 5A 21 CD 90 76 48 43 A4 25 D2 14 69 8B ...Z!..vHC.%..i. +0448: 34 46 5A 23 DB 1F 3F 7F FE FA 03 D8 1E B4 07 ED 4FZ#..?......... +0464: 41 7B D0 1E B4 07 ED 41 7B D0 1E C4 1F D4 9E 6B A{.....A{......k +0480: 0F DA 83 F6 A0 3D 68 0F DA 83 F6 C0 9F 67 7F A0 .....=h......g.. +0496: E7 27 BA E7 FC 99 F6 87 DA 9F 6A 7F AC FD B9 F6 .'........j..... +0512: 07 BB 3D 68 0F DA 83 CB 1F FD 9E 6B 0F DA 83 F6 ..=h.......k.... +0528: A0 3D 68 0F DA 83 F6 A0 3D 68 0F 6E FF 8D F4 5C .=h.....=h.n...\ +0544: 7B D0 1E B4 07 ED 41 7B D0 1E B4 07 ED 41 7B F0 {.....A{.....A{. +0560: F8 8F A9 E7 DA 83 F6 A0 3D 68 0F DA 83 F6 A0 3D ........=h.....= +0576: 68 0F DA 83 D7 7F 75 3D D7 1E B4 07 ED 41 7B D0 h.....u=.....A{. +0592: 1E B4 07 ED 41 7B D0 1E 7C FE F3 EC B9 F6 A0 3D ....A{..|......= +0608: 68 0F DA 83 F6 A0 3D 68 0F DA 83 F6 60 F9 EF B8 h.....=h....`... +0624: E7 DA 83 F6 A0 3D 68 0F DA 83 F6 A0 3D 68 0F DA .....=h.....=h.. +0640: 83 ED 3F 78 FF C5 F7 9F 7C 7B 5C ED 71 B5 C7 D5 ..?x....|{\.q... +0656: 1E 57 7B 5C ED 71 B5 C7 D5 1E 57 7B 5C F1 57 43 .W{\.q....W{\.WC +0672: CF B5 C7 D5 1E 57 7B 5C ED 71 B5 C7 D5 1E 57 7B .....W{\.q....W{ +0688: 5C ED 71 B5 C7 85 BF 43 7A AE 3D AE F6 B8 DA E3 \.q....Cz.=..... +0704: 6A 8F AB 3D AE F6 B8 FC 4D E3 AF 1A 7F D7 CC 2F j..=....M....../ +0720: 9B 9E F3 D7 8D BF 6F FC 85 E3 6F 1C 7F E5 B4 C7 ......o...o..... +0736: D5 1E 57 7B 5C ED 71 DD FE 56 EA B9 F6 B8 DA E3 ..W{\.q..V...... +0752: 6A 8F AB 3D AE F6 B8 DA E3 6A 8F AB 3D AE F6 B8 j..=.....j..=... +0768: 1E 7F 7D F5 5C 7B 5C ED 71 B5 C7 D5 1E 57 7B 5C ..}.\{\.q....W{\ +0784: ED 71 B5 C7 D5 1E 57 7B 5C AF BF E7 7A AE 3D AE .q....W{\...z.=. +0800: F6 B8 DA E3 6A 8F AB 3D AE F6 B8 DA E3 6A 8F AB ....j..=.....j.. +0816: 3D AE CF 5F 88 3D D7 1E 57 7B 5C ED 71 B5 C7 D5 =.._.=..W{\.q... +0832: 1E 57 7B 5C ED 71 B5 C7 D5 1E D7 F2 37 67 CF B5 .W{\.q......7g.. +0848: C7 D5 1E 57 7B 5C ED 71 B5 C7 D5 1E 57 7B 5C ED ...W{\.q....W{\. +0864: 71 B5 C7 B5 FD 15 EB EF D8 FE 92 6D 8F BB 3D EE q..........m..=. +0880: F6 B8 DB E3 6E 8F BB 3D EE F6 B8 DB E3 6E 8F 3B ....n..=.....n.; +0896: FE 32 EE B9 F6 B8 DB E3 6E 8F BB 3D EE F6 B8 DB .2......n..=.... +0912: E3 6E 8F BB 3D EE F6 B8 F1 B7 76 CF B5 C7 DD 1E .n..=.....v..... +0928: 77 7B DC ED 71 B7 C7 DD 1E 77 7B DC ED 71 B7 C7 w{..q....w{..q.. +0944: 7D F9 EB BD E7 DA E3 6E 8F BB 3D EE F6 B8 DB E3 }......n..=..... +0960: F6 3B C0 2F 01 BF 05 FC 1A 98 EF 81 9E F3 9B C0 .;./............ +0976: AF 02 BF 0B FC 32 68 8F BB 3D EE F6 B8 DB E3 6E .....2h..=.....n +0992: 8F FB F1 0B A3 E7 DA E3 6E 8F BB 3D EE F6 B8 DB ........n..=.... +1008: E3 6E 8F BB 3D EE F6 B8 DB E3 7E FD 66 E9 B9 F6 .n..=.....~.f... +1024: B8 DB E3 6E 8F BB 3D EE F6 B8 DB E3 6E 8F BB 3D ...n..=.....n..= +1040: EE F6 B8 3F BF 82 7A AE 3D EE F6 B8 DB E3 6E 8F ...?..z.=.....n. +1056: BB 3D EE F6 B8 DB E3 6E 8F BB 3D EE E5 77 55 CF .=.....n..=..wU. +1072: B5 C7 DD 1E 77 7B DC ED 71 B7 C7 DD 1E 77 7B DC ....w{..q....w{. +1088: ED 71 B7 C7 BD FD 52 F3 5B AD 5F 6B ED F1 B4 C7 .q....R.[._k.... +1104: D3 1E 4F 7B 3C ED F1 B4 C7 D3 1E 4F 7B 3C ED F1 ..O{<......O{<.. +1120: C4 AF BF 9E 6B 8F A7 3D 9E F6 78 DA E3 69 8F A7 ....k..=..x..i.. +1136: 3D 9E F6 78 DA E3 69 8F 07 BF 27 7B AE 3D 9E F6 =..x..i...'{.=.. +1152: 78 DA E3 69 8F A7 3D 9E F6 78 DA E3 69 8F A7 3D x..i..=..x..i..= +1168: 9E CB 2F D4 9E 6B 8F A7 3D 9E F6 78 DA E3 69 8F ../..k..=..x..i. +1184: A7 3D 9E F6 78 DA E3 69 8F E7 F6 9B B7 E7 DA E3 .=..x..i........ +1200: 69 8F A7 3D 9E F6 78 FC 76 F6 EB D9 EF 67 BF A0 i..=..x.v....g.. +1216: FD 86 9E AF E8 9E F3 4B DA 6F 69 BF A6 DB E3 69 .......K.oi....i +1232: 8F A7 3D 9E F6 78 DA E3 69 8F E7 F5 BB BC E7 DA ..=..x..i....... +1248: E3 69 8F A7 3D 9E F6 78 DA E3 69 8F A7 3D 9E F6 .i..=..x..i..=.. +1264: 78 DA E3 F9 FC D2 EF B9 F6 78 DA E3 69 8F A7 3D x........x..i..= +1280: 9E F6 78 DA E3 69 8F A7 3D 9E F6 78 96 4F 07 3D ..x..i..=..x.O.= +1296: D7 1E 4F 7B 3C ED F1 B4 C7 D3 1E 4F 7B 3C ED F1 ..O{<......O{<.. +1312: B4 C7 D3 1E CF F6 31 C2 E7 88 3E 48 B4 C7 DB 1E ......1...>H.... +1328: 6F 7B BC ED F1 B6 C7 DB 1E 6F 7B BC ED F1 B6 C7 o{.......o{..... +1344: 1B 1F 38 7A AE 3D DE F6 78 DB E3 6D 8F B7 3D DE ..8z.=..x..m..=. +1360: F6 78 DB E3 6D 8F B7 3D 5E 7C 32 E9 B9 F6 78 DB .x..m..=^|2...x. +1376: E3 6D 8F B7 3D DE F6 78 DB E3 6D 8F B7 3D DE F6 .m..=..x..m..=.. +1392: 78 2F 1F 61 7A AE 3D DE F6 78 DB E3 6D 8F B7 3D x/.az.=..x..m..= +1408: DE F6 78 DB E3 6D 8F B7 3D DE DB 67 9D 9E 6B 8F ..x..m..=..g..k. +1424: B7 3D DE F6 78 DB E3 6D 8F B7 3D DE F6 78 DB E3 .=..x..m..=..x.. +1440: 6D 8F F7 F1 A1 A8 E7 DA E3 6D 8F B7 3D 5E 9F 9B m........m..=^.. +1456: 7C 70 F2 C9 C9 47 27 9F 9D 7C 78 9A A7 A7 9E F3 |p...G'..|x..... +1472: F9 C9 07 A8 F6 78 DB E3 6D 8F B7 3D DE F6 78 DB .....x..m..=..x. +1488: E3 6D 8F F7 F3 31 AB E7 DA E3 6D 8F B7 3D DE F6 .m...1....m..=.. +1504: 78 DB E3 6D 8F B7 3D DE F6 78 DB E3 5D 3E 8F F5 x..m..=..x..]>.. +1520: 5C 7B BC ED F1 B6 C7 DB 1E 6F 7B BC ED F1 B6 C7 \{.......o{..... +1536: DB 1E 6F 7B BC DB 07 37 9F DC FA E8 D6 1E 5F 7B ..o{...7......_{ +1552: 7C ED F1 B5 C7 D7 1E 5F 7B 7C ED F1 B5 C7 D7 1E |......_{|...... +1568: 5F 7C C4 EB B9 F6 F8 DA E3 6B 8F AF 3D BE F6 F8 _|.......k..=... +1584: DA E3 6B 8F AF 3D BE F6 F8 F0 59 B0 E7 DA E3 6B ..k..=....Y....k +1600: 8F AF 3D BE F6 F8 DA E3 6B 8F AF 3D BE F6 F8 DA ..=.....k..=.... +1616: E3 BB 7C 68 EC B9 F6 F8 DA E3 6B 8F AF 3D BE F6 ..|h......k..=.. +1632: F8 DA E3 6B 8F AF 3D BE F6 F8 6E 9F 2E 7B AE 3D ...k..=...n..{.= +1648: BE F6 F8 DA E3 6B 8F AF 3D BE F6 F8 DA E3 6B 8F .....k..=.....k. +1664: AF 3D BE C7 C7 D0 9E 6B 8F AF 3D BE F6 F8 DA E3 .=.....k..=..... +1680: 6B 8F AF 3D BE F6 F8 DA E3 6B 8F EF F5 79 B5 E7 k..=.....k...y.. +1696: DA E3 6B 8F CF 27 5A 1F 69 7D A6 F5 A1 D6 A7 5A ..k..'Z.i}.....Z +1712: 1F 6B 7D AE 9D 07 DB 9E F3 D1 B6 3D BE F6 F8 DA .k}........=.... +1728: E3 6B 8F AF 3D BE F6 F8 DA E3 6B 8F 6F F9 04 DC .k..=.....k.o... +1744: 73 ED F1 B5 C7 D7 1E 5F 7B 7C ED F1 B5 C7 D7 1E s......_{|...... +1760: 5F 7B 7C ED F1 6D 1F 95 7D 56 EE C3 72 7B AC F6 _{|..m..}V..r{.. +1776: 58 ED B1 DA 63 B5 C7 6A 8F D5 1E AB 3D 56 7B AC X...c..j....=V{. +1792: F8 50 DD 73 ED B1 DA 63 B5 C7 6A 8F D5 1E AB 3D .P.s...c..j....= +1808: 56 7B AC F6 58 ED B1 F0 E9 BB E7 DA 63 B5 C7 6A V{..X.......c..j +1824: 8F D5 1E AB 3D 56 7B AC F6 58 ED B1 DA 63 5D 3E ....=V{..X...c]> +1840: A6 F7 5C 7B AC F6 58 ED B1 DA 63 B5 C7 6A 8F D5 ..\{..X...c..j.. +1856: 1E AB 3D 56 7B AC DB E7 F9 9E 6B 8F D5 1E AB 3D ..=V{.....k....= +1872: 56 7B AC F6 58 ED B1 DA 63 B5 C7 6A 8F F5 F8 E0 V{..X...c..j.... +1888: DF 73 ED B1 DA 63 B5 C7 6A 8F D5 1E AB 3D 56 7B .s...c..j....=V{ +1904: AC F6 58 ED B1 5E 27 84 9E 6B 8F D5 1E AB 3D 56 ..X..^'..k....=V +1920: 7B AC F6 58 ED B1 DA 63 B5 C7 6A 8F F5 39 4A F4 {..X...c..j..9J. +1936: 5C 7B 2C 67 0D 87 0D A7 0D C7 0D E7 0D 07 0E 27 \{,g...........' +1952: 0E 47 8E 99 39 7A AE 3D 56 7B AC F6 58 ED B1 DA .G..9z.=V{..X... +1968: 63 B5 C7 6A 8F D5 1E AB 3D D6 76 38 71 3A E9 78 c..j....=.v8q:.x +1984: D2 1E BB 3D 76 7B EC F6 D8 ED B1 DB 63 B7 C7 6E ...=v{......c..n +2000: 8F DD 1E 3B 8E 31 3D D7 1E BB 3D 76 7B EC F6 D8 ...;.1=...=v{... +2016: ED B1 DB 63 B7 C7 6E 8F DD 1E 1B E7 9D 9E 6B 8F ...c..n.......k. +2032: DD 1E BB 3D 76 7B EC F6 D8 ED B1 DB 63 B7 C7 6E ...=v{......c..n +2048: 8F 7D 39 18 F5 5C 7B EC F6 D8 ED B1 DB 63 B7 C7 .}9..\{......c.. +2064: 6E 8F DD 1E BB 3D 76 7B EC DB 09 AA E7 DA 63 B7 n....=v{......c. +2080: C7 6E 8F DD 1E BB 3D 76 7B EC F6 D8 ED B1 DB 63 .n....=v{......c +2096: 3F 8E 5A 3D D7 1E BB 3D 76 7B EC F6 D8 ED B1 DB ?.Z=...=v{...... +2112: 63 B7 C7 6E 8F DD 1E FB 75 26 EB B9 F6 D8 ED B1 c..n....u&...... +2128: DB 63 B7 C7 6E 8F DD 1E BB 3D 76 7B EC F6 D8 9F .c..n....=v{.... +2144: C3 5B CF B5 C7 6E 8F DD 1E BB 3D 76 7B EC F6 D8 .[...n....=v{... +2160: ED B1 DB 63 B7 C7 5E 4E 79 3D E7 14 E8 18 E8 1C ...c..^Ny=...... +2176: E8 20 E8 24 E8 28 E8 2C E8 30 E8 34 38 E3 E0 CC ...$.(.,.0.48... +2192: 83 0E 84 33 11 CE 48 38 33 E1 0C 85 33 15 CE 58 ...3..H83...3..X +2208: 38 73 E1 0C 86 4E 86 67 66 84 F4 13 0E 87 A7 D3 8s...N.gf....... +2224: E1 E9 78 78 3A 1F 9E 0E 88 A7 13 E2 E9 88 78 3A ..xx:.........x: +2240: 23 9E 0E 89 27 33 75 FA 09 E7 C4 D3 41 F1 74 52 #...'3u.....A.tR +2256: 3C 1D 15 4F 67 C5 D3 61 F1 74 5A 3C 1D 17 4F E7 <..Og..a.tZ<..O. +2272: C5 F3 9A 41 D5 4F 38 32 9E CE 8C A7 43 E3 E9 D4 ...A.O82....C... +2288: 78 3A 36 9E CE 8D A7 83 E3 E9 E4 78 3A 3A 9E F7 x:6........x::.. +2304: CC B6 7E C2 E9 F1 74 7C 3C 9D 1F 4F 07 C8 D3 09 ..~...t|<..O.... +2320: F2 74 84 3C 9D 21 4F 87 C8 D3 29 F2 7C 66 1C F6 .t.<.!O...).|f.. +2336: 13 0E 92 A7 93 E4 E9 28 79 3A 4B 9E 0E 93 A7 D3 .......(y:K..... +2352: E4 E9 38 79 3A 4F 9E 0E 94 E7 3B 13 B4 9F 70 A6 ..8y:O....;...p. +2368: 3C 1D 2A 4F A7 CA D3 B1 F2 74 AE 3C 1D 2C 4F 27 <.*O.....t.<.,O' +2384: CB D3 D1 F2 74 B6 3C BF 19 BA FD 84 E3 E5 E9 7C ....t.<........| +2400: 79 3A 60 9E 4E 98 A7 23 E6 E9 8C 79 3A 64 9E 4E y:`.N..#...y:d.N +2416: 99 A7 63 E6 B9 66 4E F7 13 4E 9A A7 A3 E6 E9 AC ..c..fN..N...... +2432: 79 3A 6C 9E 4E 9B A7 E3 E6 E9 BC 79 3A 70 9E 4E y:l.N......y:p.N +2448: 9C E7 9E D1 7E 66 7B 87 7B 9B 0F 03 8C 03 0C 04 ....~f{.{....... +2464: 8C 04 0C 05 8C 05 0C 06 FC 35 E0 CF 01 7E 62 40 .........5...~b@ +2480: 60 44 60 48 60 4C 60 50 60 54 60 58 C0 E6 03 03 `D`H`L`P`T`X.... +2496: 23 03 43 03 63 03 83 03 A3 03 C3 03 E3 03 03 04 #.C.c........... +2512: 23 04 43 04 63 04 83 04 A3 04 C3 04 E3 04 03 05 #.C.c........... +2528: 23 05 43 05 63 05 83 05 A3 05 C3 05 E3 05 03 06 #.C.c........... +2544: 23 06 43 06 63 06 83 06 A3 06 C3 06 E3 06 03 07 #.C.c........... +2560: 23 07 43 07 63 07 83 07 A3 07 C3 07 E3 07 03 08 #.C.c........... +2576: 23 08 43 08 63 08 83 08 A3 08 C3 08 E3 08 03 09 #.C.c........... +2592: 23 09 43 09 63 09 83 09 A3 09 C3 09 E3 09 03 0A #.C.c........... +2608: 23 0A 43 0A 63 0A 83 0A A3 0A C3 0A E3 0A 03 0B #.C.c........... +2624: 23 0B 43 0B 63 0B 83 0B A3 0B C3 0B E3 0B 03 0C #.C.c........... +2640: 23 0C 43 0C 63 0C 83 0C A3 0C C3 0C 3A 43 84 86 #.C.c.......:C.. +2656: 28 0D 91 1A A2 35 44 6C 88 DA 10 B9 21 7A 43 04 (....5Dl....!zC. +2672: 87 28 0E 91 1C C2 D8 99 CD 55 87 C8 0E D1 1D 22 .(.......U....." +2688: 3C 44 79 88 F4 10 C6 82 06 83 FE 1A E4 27 C6 83 .| +2960: 44 FA 88 F6 11 F1 23 EA 47 E4 8F E8 1F 11 40 A2 D.....#.G.....@. +2976: 80 44 02 89 06 12 11 24 2A 48 64 90 E8 20 11 42 .D.....$*Hd....B +2992: A2 84 44 0A 89 16 12 31 24 6A 48 E4 90 E8 21 11 ..D....1$jH...!. +3008: 44 A2 88 44 12 89 26 12 51 24 AA 48 64 91 E8 22 D..D..&.Q$.Hd.." +3024: 11 46 A2 8C 44 1A 89 36 12 71 24 EA 48 E4 91 E8 .F..D..6.q$.H... +3040: 23 11 48 A2 90 44 22 89 46 12 91 24 2A 49 64 92 #.H..D".F..$*Id. +3056: E8 24 11 4A A2 94 44 2A 89 56 12 B1 24 6A 49 E4 .$.J..D*.V..$jI. +3072: 92 E8 25 11 4C A2 98 44 32 89 66 12 D1 24 AA 49 ..%.L..D2.f..$.I +3088: 64 93 E8 26 11 4E A2 9C 44 3A 89 76 12 F1 24 F7 d..&.N..D:.v..$. +3104: 38 B9 CD F5 93 08 28 51 50 22 A1 44 43 89 88 12 8.....(QP".DC... +3120: 15 25 32 4A 74 94 08 29 51 52 22 A5 44 4B 89 98 .%2Jt..)QR".DK.. +3136: 12 35 25 72 4A F4 94 08 2A 51 54 22 A9 44 53 89 .5%rJ...*QT".DS. +3152: A8 12 55 25 B2 4A EE 71 E0 81 E0 91 E0 A1 E0 BF ..U%.J.q........ +3168: 05 FB 89 D1 E0 E1 E0 F1 E0 01 61 9B 4B 2C D1 58 ..........a.K,.X +3184: 22 B2 44 65 89 CC 12 9D 25 42 4B 94 96 48 2D D1 ".De....%BK..H-. +3200: 5A 22 B6 44 6D 89 DC 12 BD 25 82 4B 14 97 48 2E Z".Dm....%.K..H. +3216: D1 5C 22 BA 44 75 89 EC 12 DD 25 C2 4B 94 97 48 .\".Du....%.K..H +3232: 2F D1 5E 22 BE 44 7D 89 FC 12 FD 25 02 4C 14 98 /.^".D}....%.L.. +3248: 48 30 D1 60 22 C2 44 85 89 0C 13 1D 26 42 4C 94 H0.`".D.....&BL. +3264: 98 48 31 D1 62 22 C6 44 8D 89 1C 13 3D 26 82 4C .H1.b".D....=&.L +3280: 14 99 48 32 D1 64 22 CA 44 95 89 2C 13 5D 26 C2 ..H2.d".D..,.]&. +3296: 4C 94 99 48 33 D1 66 22 CE 44 9D 89 3C 13 7D 26 L..H3.f".D..<.}& +3312: 02 4D 14 9A 3C F3 76 C4 E6 22 4D 54 9A C8 34 D1 .M..<.v.."MT..4. +3328: 69 22 D4 44 A9 89 54 13 AD 26 62 4D D4 9A C8 35 i".D..T..&bM...5 +3344: D1 6B 22 D8 44 B1 89 64 13 CD 26 A2 4D 54 9B C8 .k".D..d..&.MT.. +3360: 36 D1 6D 22 DC 44 B9 89 74 13 ED 26 E2 4D D4 9B 6.m".D..t..&.M.. +3376: C8 37 D1 6F 22 E0 44 C1 89 84 13 0D 27 22 4E 9E .7.o".D.....'"N. +3392: 79 0B 30 AF 01 E6 3D C0 BC 08 98 37 01 FF 57 01 y.0...=....7..W. +3408: 7E 62 5E 06 CC DB 80 79 1D 60 73 41 27 8A 4E 24 ~b^....y.`sA'.N$ +3424: 9D 68 3A 11 75 A2 EA 44 D6 89 AE 13 61 27 CA 4E .h:.u..D....a'.N +3440: A4 9D 68 3B 11 77 A2 EE 44 DE 89 BE 13 81 27 0A ..h;.w..D.....'. +3456: 4F 24 9E 68 3C 11 79 A2 F2 44 E6 89 CE 13 A1 27 O$.h<.y..D.....' +3472: 4A 4F A4 9E 68 3D 11 7B A2 F6 44 EE 89 DE 13 C1 JO..h=.{..D..... +3488: 27 8A 4F 24 9F 68 3E 11 7D A2 FA 44 F6 89 EE 13 '.O$.h>.}..D.... +3504: E1 27 CA 4F A4 9F 68 3F 11 7F A2 FE 44 FE 89 FE .'.O..h?....D... +3520: 13 01 28 0A 50 24 A0 68 40 11 81 A2 02 45 06 CA ..(.P$.h@....E.. +3536: 3B EF C4 6C AE 04 45 0A 8A 16 14 31 28 6A 50 E4 ;..l..E....1(jP. +3552: A0 E8 41 11 84 A2 08 45 12 8A 26 14 51 28 AA 50 ..A....E..&.Q(.P +3568: 64 A1 E8 42 11 86 A2 0C 45 1A 8A 36 14 71 28 EA d..B....E..6.q(. +3584: 50 E4 A1 E8 43 11 88 A2 10 45 22 8A 46 14 91 28 P...C....E".F..( +3600: 2A 51 64 A2 E8 44 11 8A A2 14 45 2A 8A 56 14 B1 *Qd..D....E*.V.. +3616: 28 6A 51 E4 A2 E8 45 11 8C A2 18 45 32 CA 3B EF (jQ...E....E2.;. +3632: 80 E6 25 D0 BC 05 9A D7 40 F3 1E 68 5E 04 FD DF ..%.....@..h^... +3648: 04 F9 89 79 17 34 2F 83 6C 2E 1F 45 3F 8A 80 14 ...y.4/.l..E?... +3664: 05 29 12 52 34 A4 88 48 51 91 22 23 45 47 8A 90 .).R4..HQ."#EG.. +3680: 14 25 29 52 52 B4 A4 88 49 51 93 22 27 45 4F 8A .%)RR...IQ."'EO. +3696: A0 14 45 29 92 52 34 A5 88 4A 51 95 22 2B 45 57 ..E).R4..JQ."+EW +3712: 8A B0 14 65 29 D2 52 B4 A5 88 4B 51 97 22 2F 45 ...e).R...KQ."/E +3728: 5F 8A C0 14 85 29 12 53 34 A6 88 4C 51 99 22 33 _....).S4..LQ."3 +3744: 45 67 8A D0 14 A5 29 52 53 B4 A6 7C F3 26 D4 E6 Eg....)RS..|.&.. +3760: 72 53 F4 A6 08 4E 51 9C 22 39 45 73 8A E8 14 D5 rS...NQ."9Es.... +3776: 29 B2 53 74 A7 08 4F 51 9E 22 3D 45 7B 8A F8 14 ).St..OQ."=E{... +3792: F5 29 F2 53 F4 A7 08 50 51 A0 22 41 45 83 8A 08 .).S...PQ."AE... +3808: 15 15 2A 32 54 74 A8 08 51 51 A2 22 45 45 8B 8A ..*2Tt..QQ."EE.. +3824: 18 15 35 2A 72 54 F4 A8 08 52 51 A4 22 49 45 93 ..5*rT...RQ."IE. +3840: 8A 28 15 55 2A B2 54 74 A9 08 53 51 A6 22 4D 45 .(.U*.Tt..SQ."ME +3856: 9B 8A 38 15 75 2A F2 54 F4 A9 08 54 F9 E6 0D E0 ..8.u*.T...T.... +3872: BC 02 9C 77 80 F3 12 70 DE 02 CE 6B C0 79 0F F8 ...w...p...k.y.. +3888: 7F 11 E8 27 E6 55 A0 CD C5 AA A8 55 91 AB A2 57 ...'.U.....U...W +3904: 45 B0 8A 62 15 C9 2A 9A 55 44 AB A8 56 91 AD A2 E..b..*.UD..V... +3920: 5B 45 B8 8A 72 15 E9 2A DA 55 C4 AB A8 57 91 AF [E..r..*.U...W.. +3936: A2 5F 45 C0 8A 82 15 09 2B 1A 56 44 AC A8 58 91 ._E.....+.VD..X. +3952: B1 A2 63 45 C8 8A 92 15 29 2B 5A 56 C4 AC A8 59 ..cE....)+ZV...Y +3968: 91 B3 A2 67 45 D0 CA 9A F7 DF 36 D7 B4 22 6A 45 ...gE.....6.."jE +3984: D5 8A AC 15 5D 2B C2 56 94 AD 48 5B D1 B6 22 6E ....]+.V..H[.."n +4000: 45 DD 8A BC 15 7D 2B 02 57 14 AE 48 5C D1 B8 22 E....}+.W..H\.." +4016: 72 45 E5 8A CC 15 9D 2B 42 57 94 AE 48 5D D1 BA rE.....+BW..H].. +4032: 22 76 45 ED 8A DC 15 BD 2B 82 57 14 AF 48 5E D1 "vE.....+.W..H^. +4048: BC 22 7A 45 F5 8A EC 15 DD 2B C2 57 94 AF 48 5F ."zE.....+.W..H_ +4064: D1 BE 22 7E 45 FD 8A FC 15 FD 2B 02 58 14 B0 48 .."~E.....+.X..H +4080: 60 D1 C0 22 82 45 05 8B 0C 16 1D 2C 42 58 94 B0 `..".E.....,BX.. +4096: 48 61 D1 C2 22 86 45 0D 8B 1C 96 35 EF 7F E7 05 Ha..".E....5.... +4112: F0 BC 01 9E 57 C0 F3 0E 78 5E 02 CF 5B E0 79 0D ....W...x^..[.y. +4128: FC 7F 0F EC 27 6C 2E 8D 45 1B 8B 38 16 75 2C F2 ....'l..E..8.u,. +4144: 58 F4 B1 08 64 51 C8 22 91 45 23 8B 48 16 95 2C X...dQ.".E#.H.., +4160: 32 59 74 B2 08 65 51 CA 22 95 45 2B 8B 58 16 B5 2Yt..eQ.".E+.X.. +4176: 2C 72 59 F4 B2 08 66 51 CC 22 99 45 33 8B 68 16 ,rY...fQ.".E3.h. +4192: D5 2C 7B B6 1E 6C 2E 9C 45 39 8B 74 16 ED 2C E2 .,{..l..E9.t..,. +4208: 59 D4 B3 C8 67 D1 CF 22 A0 45 41 8B 84 16 0D 2D Y...g..".EA....- +4224: 22 5A 54 B4 C8 68 D1 D1 22 A4 45 49 8B 94 16 2D "ZT..h..".EI...- +4240: 2D 62 5A D4 B4 C8 69 D1 D3 22 A8 45 51 8B A4 16 -bZ...i..".EQ... +4256: 4D 2D A2 5A 54 B5 C8 6A D1 D5 22 AC 45 59 8B B4 M-.ZT..j..".EY.. +4272: 16 6D 2D E2 5A D4 B5 C8 6B D1 D7 22 B0 45 61 8B .m-.Z...k..".Ea. +4288: C4 16 8D 2D 22 5B 54 B6 C8 6C D1 D9 22 B4 45 69 ...-"[T..l..".Ei +4304: 8B D4 16 AD 2D 62 5B D4 B6 C8 6D D1 DB 22 B8 45 ....-b[...m..".E +4320: 71 8B E4 16 CD 2D A2 5B 54 B7 C8 6E D1 DD 22 BC q....-.[T..n..". +4336: 45 79 8B F4 16 ED 2D E2 5B F6 BC FD 9F D7 FF F3 Ey....-.[....... +4352: FE 7F 16 00 66 03 60 56 00 66 07 60 96 00 66 0B ....f.`V.f.`..f. +4368: E0 BF 06 30 7B 00 2E 02 CC 26 C0 AC 02 CC 2E C0 ...0{....&...... +4384: 2C 03 CC 36 C0 AC 03 CC 3E C0 2C 04 B8 11 A0 C3 ,..6....>.,..... +4400: A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 ................ +4416: 71 CE AE 8B CB 01 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C q.....:.:.:.:.:. +4432: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4448: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4464: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4480: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4496: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4512: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4528: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4544: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4560: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4576: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +4592: 3A 1C 3A 1C 3A 1C 99 2D 90 FF 1A 88 9F 98 45 90 :.:.:..-......E. +4608: D9 04 99 55 90 D9 05 99 65 90 D9 06 99 75 10 9B ...U....e....u.. +4624: 67 36 9C 98 CD 11 3F 61 73 1D 0E 1D 0E 1D 0E 1D g6....?as....... +4640: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4656: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4672: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4688: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4704: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4720: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4736: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4752: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +4768: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 8E D9 ................ +4784: F7 99 85 9F D9 F8 99 95 9F D9 F9 99 A5 9F D9 FA ................ +4800: 99 B5 9F D9 FB 99 C5 9F D9 FC 99 D5 9F D9 FD 99 ................ +4816: E5 9F D9 FE 99 F5 9F D9 FF 99 05 A0 D9 00 9A 15 ................ +4832: A0 FF 0E D0 2C 01 FD B7 80 FC C4 EC 01 CD 22 D0 ....,.........". +4848: 6C 02 CD 2A D0 EC 02 CD 32 90 CD 67 1D 68 F6 81 l..*....2..g.h.. +4864: 66 21 68 36 82 66 25 68 76 82 66 29 68 B6 82 66 f!h6.f%hv.f)h..f +4880: 2D 68 F6 82 66 31 68 36 83 66 35 68 76 83 66 39 -h..f1h6.f5hv.f9 +4896: 68 B6 83 66 3D 68 F6 83 66 41 68 36 84 66 45 68 h..f=h..fAh6.fEh +4912: 76 84 66 49 68 B6 84 66 4D 68 F6 84 66 51 68 36 v.fIh..fMh..fQh6 +4928: 85 66 55 68 76 85 66 59 68 B6 85 66 5D 68 F6 85 .fUhv.fYh..f]h.. +4944: 66 61 68 36 86 66 65 68 76 86 66 69 68 B6 86 66 fah6.fehv.fih..f +4960: 6D 68 F6 86 66 71 68 36 87 66 75 68 76 87 66 79 mh..fqh6.fuhv.fy +4976: 68 B6 87 66 7D 68 F6 87 66 81 68 36 88 66 85 68 h..f}h..f.h6.f.h +4992: 76 88 66 89 68 B6 88 66 8D 68 F6 88 66 91 68 36 v.f.h..f.h..f.h6 +5008: 89 66 95 68 76 89 66 99 68 B6 89 66 9D 68 F6 89 .f.hv.f.h..f.h.. +5024: 66 A1 68 36 8A 66 A5 48 87 43 87 43 87 43 87 43 f.h6.f.H.C.C.C.C +5040: 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 .C.C.C.C.C.C.C.C +5056: 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 .C.C.C.C.C.C.C.C +5072: 87 43 87 43 87 E3 9A 6D 46 9B EB 70 E8 70 E8 70 .C.C...mF..p.p.p +5088: E8 70 E8 70 5C B3 01 36 2B 60 B3 03 F6 5F 02 F3 .p.p\..6+`..._.. +5104: 13 B3 06 36 7B 60 B3 08 36 9B 60 B3 0A 66 73 1D ...6{`..6.`..fs. +5120: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5136: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5152: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5168: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5184: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5200: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5216: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5232: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5248: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5264: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +5280: 0E 1D 0E 1D 8E 7B 76 58 6D AE C3 A1 C3 A1 C3 A1 .....{vXm....... +5296: C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 C3 A1 ................ +5312: C3 A1 C3 A1 C3 71 CF FE DF 2C 00 CE 06 E0 AC 00 .....q...,...... +5328: FE 77 00 FD C4 6C 01 CE 1A E0 EC 01 CE 22 A0 CD .w...l.......".. +5344: 75 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 u8t8t8t8t8t8t8t8 +5360: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5376: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5392: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5408: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5424: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5440: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5456: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5472: 74 38 74 38 74 38 74 38 74 38 74 38 74 38 74 38 t8t8t8t8t8t8t8t8 +5488: 74 38 74 38 9E D9 5C B6 B9 0E 87 0E 87 0E 87 0E t8t8..\......... +5504: 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E ................ +5520: 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E ................ +5536: 87 0E 87 0E 87 0E C7 33 DB 9F B3 FE 39 FB 9F B3 .......3....9... +5552: 00 3A 1B A0 FF 15 50 3F 31 4B A0 B3 05 3A 6B A0 .:....P?1K...:k. +5568: 36 D7 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 6............... +5584: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5600: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5616: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5632: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5648: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5664: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5680: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +5696: E1 D0 E1 78 67 5F DD E6 3A 1C 3A 1C 3A 1C 3A 1C ...xg_..:.:.:.:. +5712: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +5728: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +5744: 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C 3A 1C :.:.:.:.:.:.:.:. +5760: 3A 1C 3A 1C 3A 1C 3A 1C EF EC FE CE F2 EF 6C FF :.:.:.:.......l. +5776: CE FA EF EC FF CE 02 F0 7F 03 D8 4F CC 0E F0 2C ...........O..., +5792: 01 DB 5C 87 43 87 43 87 43 87 43 87 43 87 43 87 ..\.C.C.C.C.C.C. +5808: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5824: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5840: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5856: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5872: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5888: 43 87 43 87 43 87 43 87 43 87 43 87 43 87 43 87 C.C.C.C.C.C.C.C. +5904: 43 87 E3 9B BF 52 B0 B9 0E 87 0E 87 0E 87 0E 87 C....R.......... +5920: 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 ................ +5936: 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 ................ +5952: 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 ................ +5968: 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 0E 87 ................ +5984: 0E 87 0E 87 0E 87 0E 87 0E C7 37 9B DF B3 FA 3D ..........7....= +6000: BB DF B3 FC 3D DB DF B3 FE 3D FB DF FF 05 70 3F ....=....=....p? +6016: 31 2B E0 36 D7 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 1+.6............ +6032: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6048: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6064: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6080: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6096: D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 ................ +6112: D0 E1 58 F3 B7 29 36 D7 E1 D0 E1 D0 E1 D0 E1 D0 ..X..)6......... +6128: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6144: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6160: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6176: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6192: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 ................ +6208: E1 D0 E1 D0 E1 D0 E1 D0 E1 D0 E1 58 B3 F7 3F 8B ...........X..?. +6224: FF B3 F9 3F AB FF B3 FB 3F CB FF B3 FD 3F EB FF ...?....?....?.. +6240: FF FD 7F 3F 61 73 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E ...?as.......... +6256: 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E ................ +6272: 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E ................ +6288: 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E ................ +6304: 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E ................ +6320: 1D 8E 3D 7F 91 64 73 1D 0E 1D 0E 1D 0E 1D 0E 1D ..=..ds......... +6336: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6352: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6368: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6384: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6400: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6416: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D ................ +6432: 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 0E 1D 8E 3D 7F F5 .............=.. +6448: 31 7F F6 31 7F F7 31 7F F8 31 7F F9 31 7F FA 31 1..1..1..1..1..1 +6464: 7F FB 31 7F FC 31 7F FD F1 FF F3 8F 7D FC 00 80 ..1..1......}... +6480: 99 73 8A 40 36 00 00 1F 8B 08 04 00 00 00 00 00 .s.@6........... +6496: FF 06 00 42 43 02 00 1B 00 03 00 00 00 00 00 00 ...BC........... +6512: 00 00 00 ... diff --git a/src/common/io/snapshots/mehari__common__io__tokio__test__open_write_maybe_bgzf@14kb.txt.snap b/src/common/io/snapshots/mehari__common__io__tokio__test__open_write_maybe_bgzf@14kb.txt.snap new file mode 100644 index 00000000..70a4b444 --- /dev/null +++ b/src/common/io/snapshots/mehari__common__io__tokio__test__open_write_maybe_bgzf@14kb.txt.snap @@ -0,0 +1,872 @@ +--- +source: src/common/io/tokio.rs +expression: "String::from_utf8_lossy(&buffer)" +--- +0000: 31 0A 32 0A 33 0A 34 0A 35 0A 36 0A 37 0A 38 0A 1.2.3.4.5.6.7.8. +0016: 39 0A 31 30 0A 31 31 0A 31 32 0A 31 33 0A 31 34 9.10.11.12.13.14 +0032: 0A 31 35 0A 31 36 0A 31 37 0A 31 38 0A 31 39 0A .15.16.17.18.19. +0048: 32 30 0A 32 31 0A 32 32 0A 32 33 0A 32 34 0A 32 20.21.22.23.24.2 +0064: 35 0A 32 36 0A 32 37 0A 32 38 0A 32 39 0A 33 30 5.26.27.28.29.30 +0080: 0A 33 31 0A 33 32 0A 33 33 0A 33 34 0A 33 35 0A .31.32.33.34.35. +0096: 33 36 0A 33 37 0A 33 38 0A 33 39 0A 34 30 0A 34 36.37.38.39.40.4 +0112: 31 0A 34 32 0A 34 33 0A 34 34 0A 34 35 0A 34 36 1.42.43.44.45.46 +0128: 0A 34 37 0A 34 38 0A 34 39 0A 35 30 0A 35 31 0A .47.48.49.50.51. +0144: 35 32 0A 35 33 0A 35 34 0A 35 35 0A 35 36 0A 35 52.53.54.55.56.5 +0160: 37 0A 35 38 0A 35 39 0A 36 30 0A 36 31 0A 36 32 7.58.59.60.61.62 +0176: 0A 36 33 0A 36 34 0A 36 35 0A 36 36 0A 36 37 0A .63.64.65.66.67. +0192: 36 38 0A 36 39 0A 37 30 0A 37 31 0A 37 32 0A 37 68.69.70.71.72.7 +0208: 33 0A 37 34 0A 37 35 0A 37 36 0A 37 37 0A 37 38 3.74.75.76.77.78 +0224: 0A 37 39 0A 38 30 0A 38 31 0A 38 32 0A 38 33 0A .79.80.81.82.83. +0240: 38 34 0A 38 35 0A 38 36 0A 38 37 0A 38 38 0A 38 84.85.86.87.88.8 +0256: 39 0A 39 30 0A 39 31 0A 39 32 0A 39 33 0A 39 34 9.90.91.92.93.94 +0272: 0A 39 35 0A 39 36 0A 39 37 0A 39 38 0A 39 39 0A .95.96.97.98.99. +0288: 31 30 30 0A 31 30 31 0A 31 30 32 0A 31 30 33 0A 100.101.102.103. +0304: 31 30 34 0A 31 30 35 0A 31 30 36 0A 31 30 37 0A 104.105.106.107. +0320: 31 30 38 0A 31 30 39 0A 31 31 30 0A 31 31 31 0A 108.109.110.111. +0336: 31 31 32 0A 31 31 33 0A 31 31 34 0A 31 31 35 0A 112.113.114.115. +0352: 31 31 36 0A 31 31 37 0A 31 31 38 0A 31 31 39 0A 116.117.118.119. +0368: 31 32 30 0A 31 32 31 0A 31 32 32 0A 31 32 33 0A 120.121.122.123. +0384: 31 32 34 0A 31 32 35 0A 31 32 36 0A 31 32 37 0A 124.125.126.127. +0400: 31 32 38 0A 31 32 39 0A 31 33 30 0A 31 33 31 0A 128.129.130.131. +0416: 31 33 32 0A 31 33 33 0A 31 33 34 0A 31 33 35 0A 132.133.134.135. +0432: 31 33 36 0A 31 33 37 0A 31 33 38 0A 31 33 39 0A 136.137.138.139. +0448: 31 34 30 0A 31 34 31 0A 31 34 32 0A 31 34 33 0A 140.141.142.143. +0464: 31 34 34 0A 31 34 35 0A 31 34 36 0A 31 34 37 0A 144.145.146.147. +0480: 31 34 38 0A 31 34 39 0A 31 35 30 0A 31 35 31 0A 148.149.150.151. +0496: 31 35 32 0A 31 35 33 0A 31 35 34 0A 31 35 35 0A 152.153.154.155. +0512: 31 35 36 0A 31 35 37 0A 31 35 38 0A 31 35 39 0A 156.157.158.159. +0528: 31 36 30 0A 31 36 31 0A 31 36 32 0A 31 36 33 0A 160.161.162.163. +0544: 31 36 34 0A 31 36 35 0A 31 36 36 0A 31 36 37 0A 164.165.166.167. +0560: 31 36 38 0A 31 36 39 0A 31 37 30 0A 31 37 31 0A 168.169.170.171. +0576: 31 37 32 0A 31 37 33 0A 31 37 34 0A 31 37 35 0A 172.173.174.175. +0592: 31 37 36 0A 31 37 37 0A 31 37 38 0A 31 37 39 0A 176.177.178.179. +0608: 31 38 30 0A 31 38 31 0A 31 38 32 0A 31 38 33 0A 180.181.182.183. +0624: 31 38 34 0A 31 38 35 0A 31 38 36 0A 31 38 37 0A 184.185.186.187. +0640: 31 38 38 0A 31 38 39 0A 31 39 30 0A 31 39 31 0A 188.189.190.191. +0656: 31 39 32 0A 31 39 33 0A 31 39 34 0A 31 39 35 0A 192.193.194.195. +0672: 31 39 36 0A 31 39 37 0A 31 39 38 0A 31 39 39 0A 196.197.198.199. +0688: 32 30 30 0A 32 30 31 0A 32 30 32 0A 32 30 33 0A 200.201.202.203. +0704: 32 30 34 0A 32 30 35 0A 32 30 36 0A 32 30 37 0A 204.205.206.207. +0720: 32 30 38 0A 32 30 39 0A 32 31 30 0A 32 31 31 0A 208.209.210.211. +0736: 32 31 32 0A 32 31 33 0A 32 31 34 0A 32 31 35 0A 212.213.214.215. +0752: 32 31 36 0A 32 31 37 0A 32 31 38 0A 32 31 39 0A 216.217.218.219. +0768: 32 32 30 0A 32 32 31 0A 32 32 32 0A 32 32 33 0A 220.221.222.223. +0784: 32 32 34 0A 32 32 35 0A 32 32 36 0A 32 32 37 0A 224.225.226.227. +0800: 32 32 38 0A 32 32 39 0A 32 33 30 0A 32 33 31 0A 228.229.230.231. +0816: 32 33 32 0A 32 33 33 0A 32 33 34 0A 32 33 35 0A 232.233.234.235. +0832: 32 33 36 0A 32 33 37 0A 32 33 38 0A 32 33 39 0A 236.237.238.239. +0848: 32 34 30 0A 32 34 31 0A 32 34 32 0A 32 34 33 0A 240.241.242.243. +0864: 32 34 34 0A 32 34 35 0A 32 34 36 0A 32 34 37 0A 244.245.246.247. +0880: 32 34 38 0A 32 34 39 0A 32 35 30 0A 32 35 31 0A 248.249.250.251. +0896: 32 35 32 0A 32 35 33 0A 32 35 34 0A 32 35 35 0A 252.253.254.255. +0912: 32 35 36 0A 32 35 37 0A 32 35 38 0A 32 35 39 0A 256.257.258.259. +0928: 32 36 30 0A 32 36 31 0A 32 36 32 0A 32 36 33 0A 260.261.262.263. +0944: 32 36 34 0A 32 36 35 0A 32 36 36 0A 32 36 37 0A 264.265.266.267. +0960: 32 36 38 0A 32 36 39 0A 32 37 30 0A 32 37 31 0A 268.269.270.271. +0976: 32 37 32 0A 32 37 33 0A 32 37 34 0A 32 37 35 0A 272.273.274.275. +0992: 32 37 36 0A 32 37 37 0A 32 37 38 0A 32 37 39 0A 276.277.278.279. +1008: 32 38 30 0A 32 38 31 0A 32 38 32 0A 32 38 33 0A 280.281.282.283. +1024: 32 38 34 0A 32 38 35 0A 32 38 36 0A 32 38 37 0A 284.285.286.287. +1040: 32 38 38 0A 32 38 39 0A 32 39 30 0A 32 39 31 0A 288.289.290.291. +1056: 32 39 32 0A 32 39 33 0A 32 39 34 0A 32 39 35 0A 292.293.294.295. +1072: 32 39 36 0A 32 39 37 0A 32 39 38 0A 32 39 39 0A 296.297.298.299. +1088: 33 30 30 0A 33 30 31 0A 33 30 32 0A 33 30 33 0A 300.301.302.303. +1104: 33 30 34 0A 33 30 35 0A 33 30 36 0A 33 30 37 0A 304.305.306.307. +1120: 33 30 38 0A 33 30 39 0A 33 31 30 0A 33 31 31 0A 308.309.310.311. +1136: 33 31 32 0A 33 31 33 0A 33 31 34 0A 33 31 35 0A 312.313.314.315. +1152: 33 31 36 0A 33 31 37 0A 33 31 38 0A 33 31 39 0A 316.317.318.319. +1168: 33 32 30 0A 33 32 31 0A 33 32 32 0A 33 32 33 0A 320.321.322.323. +1184: 33 32 34 0A 33 32 35 0A 33 32 36 0A 33 32 37 0A 324.325.326.327. +1200: 33 32 38 0A 33 32 39 0A 33 33 30 0A 33 33 31 0A 328.329.330.331. +1216: 33 33 32 0A 33 33 33 0A 33 33 34 0A 33 33 35 0A 332.333.334.335. +1232: 33 33 36 0A 33 33 37 0A 33 33 38 0A 33 33 39 0A 336.337.338.339. +1248: 33 34 30 0A 33 34 31 0A 33 34 32 0A 33 34 33 0A 340.341.342.343. +1264: 33 34 34 0A 33 34 35 0A 33 34 36 0A 33 34 37 0A 344.345.346.347. +1280: 33 34 38 0A 33 34 39 0A 33 35 30 0A 33 35 31 0A 348.349.350.351. +1296: 33 35 32 0A 33 35 33 0A 33 35 34 0A 33 35 35 0A 352.353.354.355. +1312: 33 35 36 0A 33 35 37 0A 33 35 38 0A 33 35 39 0A 356.357.358.359. +1328: 33 36 30 0A 33 36 31 0A 33 36 32 0A 33 36 33 0A 360.361.362.363. +1344: 33 36 34 0A 33 36 35 0A 33 36 36 0A 33 36 37 0A 364.365.366.367. +1360: 33 36 38 0A 33 36 39 0A 33 37 30 0A 33 37 31 0A 368.369.370.371. +1376: 33 37 32 0A 33 37 33 0A 33 37 34 0A 33 37 35 0A 372.373.374.375. +1392: 33 37 36 0A 33 37 37 0A 33 37 38 0A 33 37 39 0A 376.377.378.379. +1408: 33 38 30 0A 33 38 31 0A 33 38 32 0A 33 38 33 0A 380.381.382.383. +1424: 33 38 34 0A 33 38 35 0A 33 38 36 0A 33 38 37 0A 384.385.386.387. +1440: 33 38 38 0A 33 38 39 0A 33 39 30 0A 33 39 31 0A 388.389.390.391. +1456: 33 39 32 0A 33 39 33 0A 33 39 34 0A 33 39 35 0A 392.393.394.395. +1472: 33 39 36 0A 33 39 37 0A 33 39 38 0A 33 39 39 0A 396.397.398.399. +1488: 34 30 30 0A 34 30 31 0A 34 30 32 0A 34 30 33 0A 400.401.402.403. +1504: 34 30 34 0A 34 30 35 0A 34 30 36 0A 34 30 37 0A 404.405.406.407. +1520: 34 30 38 0A 34 30 39 0A 34 31 30 0A 34 31 31 0A 408.409.410.411. +1536: 34 31 32 0A 34 31 33 0A 34 31 34 0A 34 31 35 0A 412.413.414.415. +1552: 34 31 36 0A 34 31 37 0A 34 31 38 0A 34 31 39 0A 416.417.418.419. +1568: 34 32 30 0A 34 32 31 0A 34 32 32 0A 34 32 33 0A 420.421.422.423. +1584: 34 32 34 0A 34 32 35 0A 34 32 36 0A 34 32 37 0A 424.425.426.427. +1600: 34 32 38 0A 34 32 39 0A 34 33 30 0A 34 33 31 0A 428.429.430.431. +1616: 34 33 32 0A 34 33 33 0A 34 33 34 0A 34 33 35 0A 432.433.434.435. +1632: 34 33 36 0A 34 33 37 0A 34 33 38 0A 34 33 39 0A 436.437.438.439. +1648: 34 34 30 0A 34 34 31 0A 34 34 32 0A 34 34 33 0A 440.441.442.443. +1664: 34 34 34 0A 34 34 35 0A 34 34 36 0A 34 34 37 0A 444.445.446.447. +1680: 34 34 38 0A 34 34 39 0A 34 35 30 0A 34 35 31 0A 448.449.450.451. +1696: 34 35 32 0A 34 35 33 0A 34 35 34 0A 34 35 35 0A 452.453.454.455. +1712: 34 35 36 0A 34 35 37 0A 34 35 38 0A 34 35 39 0A 456.457.458.459. +1728: 34 36 30 0A 34 36 31 0A 34 36 32 0A 34 36 33 0A 460.461.462.463. +1744: 34 36 34 0A 34 36 35 0A 34 36 36 0A 34 36 37 0A 464.465.466.467. +1760: 34 36 38 0A 34 36 39 0A 34 37 30 0A 34 37 31 0A 468.469.470.471. +1776: 34 37 32 0A 34 37 33 0A 34 37 34 0A 34 37 35 0A 472.473.474.475. +1792: 34 37 36 0A 34 37 37 0A 34 37 38 0A 34 37 39 0A 476.477.478.479. +1808: 34 38 30 0A 34 38 31 0A 34 38 32 0A 34 38 33 0A 480.481.482.483. +1824: 34 38 34 0A 34 38 35 0A 34 38 36 0A 34 38 37 0A 484.485.486.487. +1840: 34 38 38 0A 34 38 39 0A 34 39 30 0A 34 39 31 0A 488.489.490.491. +1856: 34 39 32 0A 34 39 33 0A 34 39 34 0A 34 39 35 0A 492.493.494.495. +1872: 34 39 36 0A 34 39 37 0A 34 39 38 0A 34 39 39 0A 496.497.498.499. +1888: 35 30 30 0A 35 30 31 0A 35 30 32 0A 35 30 33 0A 500.501.502.503. +1904: 35 30 34 0A 35 30 35 0A 35 30 36 0A 35 30 37 0A 504.505.506.507. +1920: 35 30 38 0A 35 30 39 0A 35 31 30 0A 35 31 31 0A 508.509.510.511. +1936: 35 31 32 0A 35 31 33 0A 35 31 34 0A 35 31 35 0A 512.513.514.515. +1952: 35 31 36 0A 35 31 37 0A 35 31 38 0A 35 31 39 0A 516.517.518.519. +1968: 35 32 30 0A 35 32 31 0A 35 32 32 0A 35 32 33 0A 520.521.522.523. +1984: 35 32 34 0A 35 32 35 0A 35 32 36 0A 35 32 37 0A 524.525.526.527. +2000: 35 32 38 0A 35 32 39 0A 35 33 30 0A 35 33 31 0A 528.529.530.531. +2016: 35 33 32 0A 35 33 33 0A 35 33 34 0A 35 33 35 0A 532.533.534.535. +2032: 35 33 36 0A 35 33 37 0A 35 33 38 0A 35 33 39 0A 536.537.538.539. +2048: 35 34 30 0A 35 34 31 0A 35 34 32 0A 35 34 33 0A 540.541.542.543. +2064: 35 34 34 0A 35 34 35 0A 35 34 36 0A 35 34 37 0A 544.545.546.547. +2080: 35 34 38 0A 35 34 39 0A 35 35 30 0A 35 35 31 0A 548.549.550.551. +2096: 35 35 32 0A 35 35 33 0A 35 35 34 0A 35 35 35 0A 552.553.554.555. +2112: 35 35 36 0A 35 35 37 0A 35 35 38 0A 35 35 39 0A 556.557.558.559. +2128: 35 36 30 0A 35 36 31 0A 35 36 32 0A 35 36 33 0A 560.561.562.563. +2144: 35 36 34 0A 35 36 35 0A 35 36 36 0A 35 36 37 0A 564.565.566.567. +2160: 35 36 38 0A 35 36 39 0A 35 37 30 0A 35 37 31 0A 568.569.570.571. +2176: 35 37 32 0A 35 37 33 0A 35 37 34 0A 35 37 35 0A 572.573.574.575. +2192: 35 37 36 0A 35 37 37 0A 35 37 38 0A 35 37 39 0A 576.577.578.579. +2208: 35 38 30 0A 35 38 31 0A 35 38 32 0A 35 38 33 0A 580.581.582.583. +2224: 35 38 34 0A 35 38 35 0A 35 38 36 0A 35 38 37 0A 584.585.586.587. +2240: 35 38 38 0A 35 38 39 0A 35 39 30 0A 35 39 31 0A 588.589.590.591. +2256: 35 39 32 0A 35 39 33 0A 35 39 34 0A 35 39 35 0A 592.593.594.595. +2272: 35 39 36 0A 35 39 37 0A 35 39 38 0A 35 39 39 0A 596.597.598.599. +2288: 36 30 30 0A 36 30 31 0A 36 30 32 0A 36 30 33 0A 600.601.602.603. +2304: 36 30 34 0A 36 30 35 0A 36 30 36 0A 36 30 37 0A 604.605.606.607. +2320: 36 30 38 0A 36 30 39 0A 36 31 30 0A 36 31 31 0A 608.609.610.611. +2336: 36 31 32 0A 36 31 33 0A 36 31 34 0A 36 31 35 0A 612.613.614.615. +2352: 36 31 36 0A 36 31 37 0A 36 31 38 0A 36 31 39 0A 616.617.618.619. +2368: 36 32 30 0A 36 32 31 0A 36 32 32 0A 36 32 33 0A 620.621.622.623. +2384: 36 32 34 0A 36 32 35 0A 36 32 36 0A 36 32 37 0A 624.625.626.627. +2400: 36 32 38 0A 36 32 39 0A 36 33 30 0A 36 33 31 0A 628.629.630.631. +2416: 36 33 32 0A 36 33 33 0A 36 33 34 0A 36 33 35 0A 632.633.634.635. +2432: 36 33 36 0A 36 33 37 0A 36 33 38 0A 36 33 39 0A 636.637.638.639. +2448: 36 34 30 0A 36 34 31 0A 36 34 32 0A 36 34 33 0A 640.641.642.643. +2464: 36 34 34 0A 36 34 35 0A 36 34 36 0A 36 34 37 0A 644.645.646.647. +2480: 36 34 38 0A 36 34 39 0A 36 35 30 0A 36 35 31 0A 648.649.650.651. +2496: 36 35 32 0A 36 35 33 0A 36 35 34 0A 36 35 35 0A 652.653.654.655. +2512: 36 35 36 0A 36 35 37 0A 36 35 38 0A 36 35 39 0A 656.657.658.659. +2528: 36 36 30 0A 36 36 31 0A 36 36 32 0A 36 36 33 0A 660.661.662.663. +2544: 36 36 34 0A 36 36 35 0A 36 36 36 0A 36 36 37 0A 664.665.666.667. +2560: 36 36 38 0A 36 36 39 0A 36 37 30 0A 36 37 31 0A 668.669.670.671. +2576: 36 37 32 0A 36 37 33 0A 36 37 34 0A 36 37 35 0A 672.673.674.675. +2592: 36 37 36 0A 36 37 37 0A 36 37 38 0A 36 37 39 0A 676.677.678.679. +2608: 36 38 30 0A 36 38 31 0A 36 38 32 0A 36 38 33 0A 680.681.682.683. +2624: 36 38 34 0A 36 38 35 0A 36 38 36 0A 36 38 37 0A 684.685.686.687. +2640: 36 38 38 0A 36 38 39 0A 36 39 30 0A 36 39 31 0A 688.689.690.691. +2656: 36 39 32 0A 36 39 33 0A 36 39 34 0A 36 39 35 0A 692.693.694.695. +2672: 36 39 36 0A 36 39 37 0A 36 39 38 0A 36 39 39 0A 696.697.698.699. +2688: 37 30 30 0A 37 30 31 0A 37 30 32 0A 37 30 33 0A 700.701.702.703. +2704: 37 30 34 0A 37 30 35 0A 37 30 36 0A 37 30 37 0A 704.705.706.707. +2720: 37 30 38 0A 37 30 39 0A 37 31 30 0A 37 31 31 0A 708.709.710.711. +2736: 37 31 32 0A 37 31 33 0A 37 31 34 0A 37 31 35 0A 712.713.714.715. +2752: 37 31 36 0A 37 31 37 0A 37 31 38 0A 37 31 39 0A 716.717.718.719. +2768: 37 32 30 0A 37 32 31 0A 37 32 32 0A 37 32 33 0A 720.721.722.723. +2784: 37 32 34 0A 37 32 35 0A 37 32 36 0A 37 32 37 0A 724.725.726.727. +2800: 37 32 38 0A 37 32 39 0A 37 33 30 0A 37 33 31 0A 728.729.730.731. +2816: 37 33 32 0A 37 33 33 0A 37 33 34 0A 37 33 35 0A 732.733.734.735. +2832: 37 33 36 0A 37 33 37 0A 37 33 38 0A 37 33 39 0A 736.737.738.739. +2848: 37 34 30 0A 37 34 31 0A 37 34 32 0A 37 34 33 0A 740.741.742.743. +2864: 37 34 34 0A 37 34 35 0A 37 34 36 0A 37 34 37 0A 744.745.746.747. +2880: 37 34 38 0A 37 34 39 0A 37 35 30 0A 37 35 31 0A 748.749.750.751. +2896: 37 35 32 0A 37 35 33 0A 37 35 34 0A 37 35 35 0A 752.753.754.755. +2912: 37 35 36 0A 37 35 37 0A 37 35 38 0A 37 35 39 0A 756.757.758.759. +2928: 37 36 30 0A 37 36 31 0A 37 36 32 0A 37 36 33 0A 760.761.762.763. +2944: 37 36 34 0A 37 36 35 0A 37 36 36 0A 37 36 37 0A 764.765.766.767. +2960: 37 36 38 0A 37 36 39 0A 37 37 30 0A 37 37 31 0A 768.769.770.771. +2976: 37 37 32 0A 37 37 33 0A 37 37 34 0A 37 37 35 0A 772.773.774.775. +2992: 37 37 36 0A 37 37 37 0A 37 37 38 0A 37 37 39 0A 776.777.778.779. +3008: 37 38 30 0A 37 38 31 0A 37 38 32 0A 37 38 33 0A 780.781.782.783. +3024: 37 38 34 0A 37 38 35 0A 37 38 36 0A 37 38 37 0A 784.785.786.787. +3040: 37 38 38 0A 37 38 39 0A 37 39 30 0A 37 39 31 0A 788.789.790.791. +3056: 37 39 32 0A 37 39 33 0A 37 39 34 0A 37 39 35 0A 792.793.794.795. +3072: 37 39 36 0A 37 39 37 0A 37 39 38 0A 37 39 39 0A 796.797.798.799. +3088: 38 30 30 0A 38 30 31 0A 38 30 32 0A 38 30 33 0A 800.801.802.803. +3104: 38 30 34 0A 38 30 35 0A 38 30 36 0A 38 30 37 0A 804.805.806.807. +3120: 38 30 38 0A 38 30 39 0A 38 31 30 0A 38 31 31 0A 808.809.810.811. +3136: 38 31 32 0A 38 31 33 0A 38 31 34 0A 38 31 35 0A 812.813.814.815. +3152: 38 31 36 0A 38 31 37 0A 38 31 38 0A 38 31 39 0A 816.817.818.819. +3168: 38 32 30 0A 38 32 31 0A 38 32 32 0A 38 32 33 0A 820.821.822.823. +3184: 38 32 34 0A 38 32 35 0A 38 32 36 0A 38 32 37 0A 824.825.826.827. +3200: 38 32 38 0A 38 32 39 0A 38 33 30 0A 38 33 31 0A 828.829.830.831. +3216: 38 33 32 0A 38 33 33 0A 38 33 34 0A 38 33 35 0A 832.833.834.835. +3232: 38 33 36 0A 38 33 37 0A 38 33 38 0A 38 33 39 0A 836.837.838.839. +3248: 38 34 30 0A 38 34 31 0A 38 34 32 0A 38 34 33 0A 840.841.842.843. +3264: 38 34 34 0A 38 34 35 0A 38 34 36 0A 38 34 37 0A 844.845.846.847. +3280: 38 34 38 0A 38 34 39 0A 38 35 30 0A 38 35 31 0A 848.849.850.851. +3296: 38 35 32 0A 38 35 33 0A 38 35 34 0A 38 35 35 0A 852.853.854.855. +3312: 38 35 36 0A 38 35 37 0A 38 35 38 0A 38 35 39 0A 856.857.858.859. +3328: 38 36 30 0A 38 36 31 0A 38 36 32 0A 38 36 33 0A 860.861.862.863. +3344: 38 36 34 0A 38 36 35 0A 38 36 36 0A 38 36 37 0A 864.865.866.867. +3360: 38 36 38 0A 38 36 39 0A 38 37 30 0A 38 37 31 0A 868.869.870.871. +3376: 38 37 32 0A 38 37 33 0A 38 37 34 0A 38 37 35 0A 872.873.874.875. +3392: 38 37 36 0A 38 37 37 0A 38 37 38 0A 38 37 39 0A 876.877.878.879. +3408: 38 38 30 0A 38 38 31 0A 38 38 32 0A 38 38 33 0A 880.881.882.883. +3424: 38 38 34 0A 38 38 35 0A 38 38 36 0A 38 38 37 0A 884.885.886.887. +3440: 38 38 38 0A 38 38 39 0A 38 39 30 0A 38 39 31 0A 888.889.890.891. +3456: 38 39 32 0A 38 39 33 0A 38 39 34 0A 38 39 35 0A 892.893.894.895. +3472: 38 39 36 0A 38 39 37 0A 38 39 38 0A 38 39 39 0A 896.897.898.899. +3488: 39 30 30 0A 39 30 31 0A 39 30 32 0A 39 30 33 0A 900.901.902.903. +3504: 39 30 34 0A 39 30 35 0A 39 30 36 0A 39 30 37 0A 904.905.906.907. +3520: 39 30 38 0A 39 30 39 0A 39 31 30 0A 39 31 31 0A 908.909.910.911. +3536: 39 31 32 0A 39 31 33 0A 39 31 34 0A 39 31 35 0A 912.913.914.915. +3552: 39 31 36 0A 39 31 37 0A 39 31 38 0A 39 31 39 0A 916.917.918.919. +3568: 39 32 30 0A 39 32 31 0A 39 32 32 0A 39 32 33 0A 920.921.922.923. +3584: 39 32 34 0A 39 32 35 0A 39 32 36 0A 39 32 37 0A 924.925.926.927. +3600: 39 32 38 0A 39 32 39 0A 39 33 30 0A 39 33 31 0A 928.929.930.931. +3616: 39 33 32 0A 39 33 33 0A 39 33 34 0A 39 33 35 0A 932.933.934.935. +3632: 39 33 36 0A 39 33 37 0A 39 33 38 0A 39 33 39 0A 936.937.938.939. +3648: 39 34 30 0A 39 34 31 0A 39 34 32 0A 39 34 33 0A 940.941.942.943. +3664: 39 34 34 0A 39 34 35 0A 39 34 36 0A 39 34 37 0A 944.945.946.947. +3680: 39 34 38 0A 39 34 39 0A 39 35 30 0A 39 35 31 0A 948.949.950.951. +3696: 39 35 32 0A 39 35 33 0A 39 35 34 0A 39 35 35 0A 952.953.954.955. +3712: 39 35 36 0A 39 35 37 0A 39 35 38 0A 39 35 39 0A 956.957.958.959. +3728: 39 36 30 0A 39 36 31 0A 39 36 32 0A 39 36 33 0A 960.961.962.963. +3744: 39 36 34 0A 39 36 35 0A 39 36 36 0A 39 36 37 0A 964.965.966.967. +3760: 39 36 38 0A 39 36 39 0A 39 37 30 0A 39 37 31 0A 968.969.970.971. +3776: 39 37 32 0A 39 37 33 0A 39 37 34 0A 39 37 35 0A 972.973.974.975. +3792: 39 37 36 0A 39 37 37 0A 39 37 38 0A 39 37 39 0A 976.977.978.979. +3808: 39 38 30 0A 39 38 31 0A 39 38 32 0A 39 38 33 0A 980.981.982.983. +3824: 39 38 34 0A 39 38 35 0A 39 38 36 0A 39 38 37 0A 984.985.986.987. +3840: 39 38 38 0A 39 38 39 0A 39 39 30 0A 39 39 31 0A 988.989.990.991. +3856: 39 39 32 0A 39 39 33 0A 39 39 34 0A 39 39 35 0A 992.993.994.995. +3872: 39 39 36 0A 39 39 37 0A 39 39 38 0A 39 39 39 0A 996.997.998.999. +3888: 31 30 30 30 0A 31 30 30 31 0A 31 30 30 32 0A 31 1000.1001.1002.1 +3904: 30 30 33 0A 31 30 30 34 0A 31 30 30 35 0A 31 30 003.1004.1005.10 +3920: 30 36 0A 31 30 30 37 0A 31 30 30 38 0A 31 30 30 06.1007.1008.100 +3936: 39 0A 31 30 31 30 0A 31 30 31 31 0A 31 30 31 32 9.1010.1011.1012 +3952: 0A 31 30 31 33 0A 31 30 31 34 0A 31 30 31 35 0A .1013.1014.1015. +3968: 31 30 31 36 0A 31 30 31 37 0A 31 30 31 38 0A 31 1016.1017.1018.1 +3984: 30 31 39 0A 31 30 32 30 0A 31 30 32 31 0A 31 30 019.1020.1021.10 +4000: 32 32 0A 31 30 32 33 0A 31 30 32 34 0A 31 30 32 22.1023.1024.102 +4016: 35 0A 31 30 32 36 0A 31 30 32 37 0A 31 30 32 38 5.1026.1027.1028 +4032: 0A 31 30 32 39 0A 31 30 33 30 0A 31 30 33 31 0A .1029.1030.1031. +4048: 31 30 33 32 0A 31 30 33 33 0A 31 30 33 34 0A 31 1032.1033.1034.1 +4064: 30 33 35 0A 31 30 33 36 0A 31 30 33 37 0A 31 30 035.1036.1037.10 +4080: 33 38 0A 31 30 33 39 0A 31 30 34 30 0A 31 30 34 38.1039.1040.104 +4096: 31 0A 31 30 34 32 0A 31 30 34 33 0A 31 30 34 34 1.1042.1043.1044 +4112: 0A 31 30 34 35 0A 31 30 34 36 0A 31 30 34 37 0A .1045.1046.1047. +4128: 31 30 34 38 0A 31 30 34 39 0A 31 30 35 30 0A 31 1048.1049.1050.1 +4144: 30 35 31 0A 31 30 35 32 0A 31 30 35 33 0A 31 30 051.1052.1053.10 +4160: 35 34 0A 31 30 35 35 0A 31 30 35 36 0A 31 30 35 54.1055.1056.105 +4176: 37 0A 31 30 35 38 0A 31 30 35 39 0A 31 30 36 30 7.1058.1059.1060 +4192: 0A 31 30 36 31 0A 31 30 36 32 0A 31 30 36 33 0A .1061.1062.1063. +4208: 31 30 36 34 0A 31 30 36 35 0A 31 30 36 36 0A 31 1064.1065.1066.1 +4224: 30 36 37 0A 31 30 36 38 0A 31 30 36 39 0A 31 30 067.1068.1069.10 +4240: 37 30 0A 31 30 37 31 0A 31 30 37 32 0A 31 30 37 70.1071.1072.107 +4256: 33 0A 31 30 37 34 0A 31 30 37 35 0A 31 30 37 36 3.1074.1075.1076 +4272: 0A 31 30 37 37 0A 31 30 37 38 0A 31 30 37 39 0A .1077.1078.1079. +4288: 31 30 38 30 0A 31 30 38 31 0A 31 30 38 32 0A 31 1080.1081.1082.1 +4304: 30 38 33 0A 31 30 38 34 0A 31 30 38 35 0A 31 30 083.1084.1085.10 +4320: 38 36 0A 31 30 38 37 0A 31 30 38 38 0A 31 30 38 86.1087.1088.108 +4336: 39 0A 31 30 39 30 0A 31 30 39 31 0A 31 30 39 32 9.1090.1091.1092 +4352: 0A 31 30 39 33 0A 31 30 39 34 0A 31 30 39 35 0A .1093.1094.1095. +4368: 31 30 39 36 0A 31 30 39 37 0A 31 30 39 38 0A 31 1096.1097.1098.1 +4384: 30 39 39 0A 31 31 30 30 0A 31 31 30 31 0A 31 31 099.1100.1101.11 +4400: 30 32 0A 31 31 30 33 0A 31 31 30 34 0A 31 31 30 02.1103.1104.110 +4416: 35 0A 31 31 30 36 0A 31 31 30 37 0A 31 31 30 38 5.1106.1107.1108 +4432: 0A 31 31 30 39 0A 31 31 31 30 0A 31 31 31 31 0A .1109.1110.1111. +4448: 31 31 31 32 0A 31 31 31 33 0A 31 31 31 34 0A 31 1112.1113.1114.1 +4464: 31 31 35 0A 31 31 31 36 0A 31 31 31 37 0A 31 31 115.1116.1117.11 +4480: 31 38 0A 31 31 31 39 0A 31 31 32 30 0A 31 31 32 18.1119.1120.112 +4496: 31 0A 31 31 32 32 0A 31 31 32 33 0A 31 31 32 34 1.1122.1123.1124 +4512: 0A 31 31 32 35 0A 31 31 32 36 0A 31 31 32 37 0A .1125.1126.1127. +4528: 31 31 32 38 0A 31 31 32 39 0A 31 31 33 30 0A 31 1128.1129.1130.1 +4544: 31 33 31 0A 31 31 33 32 0A 31 31 33 33 0A 31 31 131.1132.1133.11 +4560: 33 34 0A 31 31 33 35 0A 31 31 33 36 0A 31 31 33 34.1135.1136.113 +4576: 37 0A 31 31 33 38 0A 31 31 33 39 0A 31 31 34 30 7.1138.1139.1140 +4592: 0A 31 31 34 31 0A 31 31 34 32 0A 31 31 34 33 0A .1141.1142.1143. +4608: 31 31 34 34 0A 31 31 34 35 0A 31 31 34 36 0A 31 1144.1145.1146.1 +4624: 31 34 37 0A 31 31 34 38 0A 31 31 34 39 0A 31 31 147.1148.1149.11 +4640: 35 30 0A 31 31 35 31 0A 31 31 35 32 0A 31 31 35 50.1151.1152.115 +4656: 33 0A 31 31 35 34 0A 31 31 35 35 0A 31 31 35 36 3.1154.1155.1156 +4672: 0A 31 31 35 37 0A 31 31 35 38 0A 31 31 35 39 0A .1157.1158.1159. +4688: 31 31 36 30 0A 31 31 36 31 0A 31 31 36 32 0A 31 1160.1161.1162.1 +4704: 31 36 33 0A 31 31 36 34 0A 31 31 36 35 0A 31 31 163.1164.1165.11 +4720: 36 36 0A 31 31 36 37 0A 31 31 36 38 0A 31 31 36 66.1167.1168.116 +4736: 39 0A 31 31 37 30 0A 31 31 37 31 0A 31 31 37 32 9.1170.1171.1172 +4752: 0A 31 31 37 33 0A 31 31 37 34 0A 31 31 37 35 0A .1173.1174.1175. +4768: 31 31 37 36 0A 31 31 37 37 0A 31 31 37 38 0A 31 1176.1177.1178.1 +4784: 31 37 39 0A 31 31 38 30 0A 31 31 38 31 0A 31 31 179.1180.1181.11 +4800: 38 32 0A 31 31 38 33 0A 31 31 38 34 0A 31 31 38 82.1183.1184.118 +4816: 35 0A 31 31 38 36 0A 31 31 38 37 0A 31 31 38 38 5.1186.1187.1188 +4832: 0A 31 31 38 39 0A 31 31 39 30 0A 31 31 39 31 0A .1189.1190.1191. +4848: 31 31 39 32 0A 31 31 39 33 0A 31 31 39 34 0A 31 1192.1193.1194.1 +4864: 31 39 35 0A 31 31 39 36 0A 31 31 39 37 0A 31 31 195.1196.1197.11 +4880: 39 38 0A 31 31 39 39 0A 31 32 30 30 0A 31 32 30 98.1199.1200.120 +4896: 31 0A 31 32 30 32 0A 31 32 30 33 0A 31 32 30 34 1.1202.1203.1204 +4912: 0A 31 32 30 35 0A 31 32 30 36 0A 31 32 30 37 0A .1205.1206.1207. +4928: 31 32 30 38 0A 31 32 30 39 0A 31 32 31 30 0A 31 1208.1209.1210.1 +4944: 32 31 31 0A 31 32 31 32 0A 31 32 31 33 0A 31 32 211.1212.1213.12 +4960: 31 34 0A 31 32 31 35 0A 31 32 31 36 0A 31 32 31 14.1215.1216.121 +4976: 37 0A 31 32 31 38 0A 31 32 31 39 0A 31 32 32 30 7.1218.1219.1220 +4992: 0A 31 32 32 31 0A 31 32 32 32 0A 31 32 32 33 0A .1221.1222.1223. +5008: 31 32 32 34 0A 31 32 32 35 0A 31 32 32 36 0A 31 1224.1225.1226.1 +5024: 32 32 37 0A 31 32 32 38 0A 31 32 32 39 0A 31 32 227.1228.1229.12 +5040: 33 30 0A 31 32 33 31 0A 31 32 33 32 0A 31 32 33 30.1231.1232.123 +5056: 33 0A 31 32 33 34 0A 31 32 33 35 0A 31 32 33 36 3.1234.1235.1236 +5072: 0A 31 32 33 37 0A 31 32 33 38 0A 31 32 33 39 0A .1237.1238.1239. +5088: 31 32 34 30 0A 31 32 34 31 0A 31 32 34 32 0A 31 1240.1241.1242.1 +5104: 32 34 33 0A 31 32 34 34 0A 31 32 34 35 0A 31 32 243.1244.1245.12 +5120: 34 36 0A 31 32 34 37 0A 31 32 34 38 0A 31 32 34 46.1247.1248.124 +5136: 39 0A 31 32 35 30 0A 31 32 35 31 0A 31 32 35 32 9.1250.1251.1252 +5152: 0A 31 32 35 33 0A 31 32 35 34 0A 31 32 35 35 0A .1253.1254.1255. +5168: 31 32 35 36 0A 31 32 35 37 0A 31 32 35 38 0A 31 1256.1257.1258.1 +5184: 32 35 39 0A 31 32 36 30 0A 31 32 36 31 0A 31 32 259.1260.1261.12 +5200: 36 32 0A 31 32 36 33 0A 31 32 36 34 0A 31 32 36 62.1263.1264.126 +5216: 35 0A 31 32 36 36 0A 31 32 36 37 0A 31 32 36 38 5.1266.1267.1268 +5232: 0A 31 32 36 39 0A 31 32 37 30 0A 31 32 37 31 0A .1269.1270.1271. +5248: 31 32 37 32 0A 31 32 37 33 0A 31 32 37 34 0A 31 1272.1273.1274.1 +5264: 32 37 35 0A 31 32 37 36 0A 31 32 37 37 0A 31 32 275.1276.1277.12 +5280: 37 38 0A 31 32 37 39 0A 31 32 38 30 0A 31 32 38 78.1279.1280.128 +5296: 31 0A 31 32 38 32 0A 31 32 38 33 0A 31 32 38 34 1.1282.1283.1284 +5312: 0A 31 32 38 35 0A 31 32 38 36 0A 31 32 38 37 0A .1285.1286.1287. +5328: 31 32 38 38 0A 31 32 38 39 0A 31 32 39 30 0A 31 1288.1289.1290.1 +5344: 32 39 31 0A 31 32 39 32 0A 31 32 39 33 0A 31 32 291.1292.1293.12 +5360: 39 34 0A 31 32 39 35 0A 31 32 39 36 0A 31 32 39 94.1295.1296.129 +5376: 37 0A 31 32 39 38 0A 31 32 39 39 0A 31 33 30 30 7.1298.1299.1300 +5392: 0A 31 33 30 31 0A 31 33 30 32 0A 31 33 30 33 0A .1301.1302.1303. +5408: 31 33 30 34 0A 31 33 30 35 0A 31 33 30 36 0A 31 1304.1305.1306.1 +5424: 33 30 37 0A 31 33 30 38 0A 31 33 30 39 0A 31 33 307.1308.1309.13 +5440: 31 30 0A 31 33 31 31 0A 31 33 31 32 0A 31 33 31 10.1311.1312.131 +5456: 33 0A 31 33 31 34 0A 31 33 31 35 0A 31 33 31 36 3.1314.1315.1316 +5472: 0A 31 33 31 37 0A 31 33 31 38 0A 31 33 31 39 0A .1317.1318.1319. +5488: 31 33 32 30 0A 31 33 32 31 0A 31 33 32 32 0A 31 1320.1321.1322.1 +5504: 33 32 33 0A 31 33 32 34 0A 31 33 32 35 0A 31 33 323.1324.1325.13 +5520: 32 36 0A 31 33 32 37 0A 31 33 32 38 0A 31 33 32 26.1327.1328.132 +5536: 39 0A 31 33 33 30 0A 31 33 33 31 0A 31 33 33 32 9.1330.1331.1332 +5552: 0A 31 33 33 33 0A 31 33 33 34 0A 31 33 33 35 0A .1333.1334.1335. +5568: 31 33 33 36 0A 31 33 33 37 0A 31 33 33 38 0A 31 1336.1337.1338.1 +5584: 33 33 39 0A 31 33 34 30 0A 31 33 34 31 0A 31 33 339.1340.1341.13 +5600: 34 32 0A 31 33 34 33 0A 31 33 34 34 0A 31 33 34 42.1343.1344.134 +5616: 35 0A 31 33 34 36 0A 31 33 34 37 0A 31 33 34 38 5.1346.1347.1348 +5632: 0A 31 33 34 39 0A 31 33 35 30 0A 31 33 35 31 0A .1349.1350.1351. +5648: 31 33 35 32 0A 31 33 35 33 0A 31 33 35 34 0A 31 1352.1353.1354.1 +5664: 33 35 35 0A 31 33 35 36 0A 31 33 35 37 0A 31 33 355.1356.1357.13 +5680: 35 38 0A 31 33 35 39 0A 31 33 36 30 0A 31 33 36 58.1359.1360.136 +5696: 31 0A 31 33 36 32 0A 31 33 36 33 0A 31 33 36 34 1.1362.1363.1364 +5712: 0A 31 33 36 35 0A 31 33 36 36 0A 31 33 36 37 0A .1365.1366.1367. +5728: 31 33 36 38 0A 31 33 36 39 0A 31 33 37 30 0A 31 1368.1369.1370.1 +5744: 33 37 31 0A 31 33 37 32 0A 31 33 37 33 0A 31 33 371.1372.1373.13 +5760: 37 34 0A 31 33 37 35 0A 31 33 37 36 0A 31 33 37 74.1375.1376.137 +5776: 37 0A 31 33 37 38 0A 31 33 37 39 0A 31 33 38 30 7.1378.1379.1380 +5792: 0A 31 33 38 31 0A 31 33 38 32 0A 31 33 38 33 0A .1381.1382.1383. +5808: 31 33 38 34 0A 31 33 38 35 0A 31 33 38 36 0A 31 1384.1385.1386.1 +5824: 33 38 37 0A 31 33 38 38 0A 31 33 38 39 0A 31 33 387.1388.1389.13 +5840: 39 30 0A 31 33 39 31 0A 31 33 39 32 0A 31 33 39 90.1391.1392.139 +5856: 33 0A 31 33 39 34 0A 31 33 39 35 0A 31 33 39 36 3.1394.1395.1396 +5872: 0A 31 33 39 37 0A 31 33 39 38 0A 31 33 39 39 0A .1397.1398.1399. +5888: 31 34 30 30 0A 31 34 30 31 0A 31 34 30 32 0A 31 1400.1401.1402.1 +5904: 34 30 33 0A 31 34 30 34 0A 31 34 30 35 0A 31 34 403.1404.1405.14 +5920: 30 36 0A 31 34 30 37 0A 31 34 30 38 0A 31 34 30 06.1407.1408.140 +5936: 39 0A 31 34 31 30 0A 31 34 31 31 0A 31 34 31 32 9.1410.1411.1412 +5952: 0A 31 34 31 33 0A 31 34 31 34 0A 31 34 31 35 0A .1413.1414.1415. +5968: 31 34 31 36 0A 31 34 31 37 0A 31 34 31 38 0A 31 1416.1417.1418.1 +5984: 34 31 39 0A 31 34 32 30 0A 31 34 32 31 0A 31 34 419.1420.1421.14 +6000: 32 32 0A 31 34 32 33 0A 31 34 32 34 0A 31 34 32 22.1423.1424.142 +6016: 35 0A 31 34 32 36 0A 31 34 32 37 0A 31 34 32 38 5.1426.1427.1428 +6032: 0A 31 34 32 39 0A 31 34 33 30 0A 31 34 33 31 0A .1429.1430.1431. +6048: 31 34 33 32 0A 31 34 33 33 0A 31 34 33 34 0A 31 1432.1433.1434.1 +6064: 34 33 35 0A 31 34 33 36 0A 31 34 33 37 0A 31 34 435.1436.1437.14 +6080: 33 38 0A 31 34 33 39 0A 31 34 34 30 0A 31 34 34 38.1439.1440.144 +6096: 31 0A 31 34 34 32 0A 31 34 34 33 0A 31 34 34 34 1.1442.1443.1444 +6112: 0A 31 34 34 35 0A 31 34 34 36 0A 31 34 34 37 0A .1445.1446.1447. +6128: 31 34 34 38 0A 31 34 34 39 0A 31 34 35 30 0A 31 1448.1449.1450.1 +6144: 34 35 31 0A 31 34 35 32 0A 31 34 35 33 0A 31 34 451.1452.1453.14 +6160: 35 34 0A 31 34 35 35 0A 31 34 35 36 0A 31 34 35 54.1455.1456.145 +6176: 37 0A 31 34 35 38 0A 31 34 35 39 0A 31 34 36 30 7.1458.1459.1460 +6192: 0A 31 34 36 31 0A 31 34 36 32 0A 31 34 36 33 0A .1461.1462.1463. +6208: 31 34 36 34 0A 31 34 36 35 0A 31 34 36 36 0A 31 1464.1465.1466.1 +6224: 34 36 37 0A 31 34 36 38 0A 31 34 36 39 0A 31 34 467.1468.1469.14 +6240: 37 30 0A 31 34 37 31 0A 31 34 37 32 0A 31 34 37 70.1471.1472.147 +6256: 33 0A 31 34 37 34 0A 31 34 37 35 0A 31 34 37 36 3.1474.1475.1476 +6272: 0A 31 34 37 37 0A 31 34 37 38 0A 31 34 37 39 0A .1477.1478.1479. +6288: 31 34 38 30 0A 31 34 38 31 0A 31 34 38 32 0A 31 1480.1481.1482.1 +6304: 34 38 33 0A 31 34 38 34 0A 31 34 38 35 0A 31 34 483.1484.1485.14 +6320: 38 36 0A 31 34 38 37 0A 31 34 38 38 0A 31 34 38 86.1487.1488.148 +6336: 39 0A 31 34 39 30 0A 31 34 39 31 0A 31 34 39 32 9.1490.1491.1492 +6352: 0A 31 34 39 33 0A 31 34 39 34 0A 31 34 39 35 0A .1493.1494.1495. +6368: 31 34 39 36 0A 31 34 39 37 0A 31 34 39 38 0A 31 1496.1497.1498.1 +6384: 34 39 39 0A 31 35 30 30 0A 31 35 30 31 0A 31 35 499.1500.1501.15 +6400: 30 32 0A 31 35 30 33 0A 31 35 30 34 0A 31 35 30 02.1503.1504.150 +6416: 35 0A 31 35 30 36 0A 31 35 30 37 0A 31 35 30 38 5.1506.1507.1508 +6432: 0A 31 35 30 39 0A 31 35 31 30 0A 31 35 31 31 0A .1509.1510.1511. +6448: 31 35 31 32 0A 31 35 31 33 0A 31 35 31 34 0A 31 1512.1513.1514.1 +6464: 35 31 35 0A 31 35 31 36 0A 31 35 31 37 0A 31 35 515.1516.1517.15 +6480: 31 38 0A 31 35 31 39 0A 31 35 32 30 0A 31 35 32 18.1519.1520.152 +6496: 31 0A 31 35 32 32 0A 31 35 32 33 0A 31 35 32 34 1.1522.1523.1524 +6512: 0A 31 35 32 35 0A 31 35 32 36 0A 31 35 32 37 0A .1525.1526.1527. +6528: 31 35 32 38 0A 31 35 32 39 0A 31 35 33 30 0A 31 1528.1529.1530.1 +6544: 35 33 31 0A 31 35 33 32 0A 31 35 33 33 0A 31 35 531.1532.1533.15 +6560: 33 34 0A 31 35 33 35 0A 31 35 33 36 0A 31 35 33 34.1535.1536.153 +6576: 37 0A 31 35 33 38 0A 31 35 33 39 0A 31 35 34 30 7.1538.1539.1540 +6592: 0A 31 35 34 31 0A 31 35 34 32 0A 31 35 34 33 0A .1541.1542.1543. +6608: 31 35 34 34 0A 31 35 34 35 0A 31 35 34 36 0A 31 1544.1545.1546.1 +6624: 35 34 37 0A 31 35 34 38 0A 31 35 34 39 0A 31 35 547.1548.1549.15 +6640: 35 30 0A 31 35 35 31 0A 31 35 35 32 0A 31 35 35 50.1551.1552.155 +6656: 33 0A 31 35 35 34 0A 31 35 35 35 0A 31 35 35 36 3.1554.1555.1556 +6672: 0A 31 35 35 37 0A 31 35 35 38 0A 31 35 35 39 0A .1557.1558.1559. +6688: 31 35 36 30 0A 31 35 36 31 0A 31 35 36 32 0A 31 1560.1561.1562.1 +6704: 35 36 33 0A 31 35 36 34 0A 31 35 36 35 0A 31 35 563.1564.1565.15 +6720: 36 36 0A 31 35 36 37 0A 31 35 36 38 0A 31 35 36 66.1567.1568.156 +6736: 39 0A 31 35 37 30 0A 31 35 37 31 0A 31 35 37 32 9.1570.1571.1572 +6752: 0A 31 35 37 33 0A 31 35 37 34 0A 31 35 37 35 0A .1573.1574.1575. +6768: 31 35 37 36 0A 31 35 37 37 0A 31 35 37 38 0A 31 1576.1577.1578.1 +6784: 35 37 39 0A 31 35 38 30 0A 31 35 38 31 0A 31 35 579.1580.1581.15 +6800: 38 32 0A 31 35 38 33 0A 31 35 38 34 0A 31 35 38 82.1583.1584.158 +6816: 35 0A 31 35 38 36 0A 31 35 38 37 0A 31 35 38 38 5.1586.1587.1588 +6832: 0A 31 35 38 39 0A 31 35 39 30 0A 31 35 39 31 0A .1589.1590.1591. +6848: 31 35 39 32 0A 31 35 39 33 0A 31 35 39 34 0A 31 1592.1593.1594.1 +6864: 35 39 35 0A 31 35 39 36 0A 31 35 39 37 0A 31 35 595.1596.1597.15 +6880: 39 38 0A 31 35 39 39 0A 31 36 30 30 0A 31 36 30 98.1599.1600.160 +6896: 31 0A 31 36 30 32 0A 31 36 30 33 0A 31 36 30 34 1.1602.1603.1604 +6912: 0A 31 36 30 35 0A 31 36 30 36 0A 31 36 30 37 0A .1605.1606.1607. +6928: 31 36 30 38 0A 31 36 30 39 0A 31 36 31 30 0A 31 1608.1609.1610.1 +6944: 36 31 31 0A 31 36 31 32 0A 31 36 31 33 0A 31 36 611.1612.1613.16 +6960: 31 34 0A 31 36 31 35 0A 31 36 31 36 0A 31 36 31 14.1615.1616.161 +6976: 37 0A 31 36 31 38 0A 31 36 31 39 0A 31 36 32 30 7.1618.1619.1620 +6992: 0A 31 36 32 31 0A 31 36 32 32 0A 31 36 32 33 0A .1621.1622.1623. +7008: 31 36 32 34 0A 31 36 32 35 0A 31 36 32 36 0A 31 1624.1625.1626.1 +7024: 36 32 37 0A 31 36 32 38 0A 31 36 32 39 0A 31 36 627.1628.1629.16 +7040: 33 30 0A 31 36 33 31 0A 31 36 33 32 0A 31 36 33 30.1631.1632.163 +7056: 33 0A 31 36 33 34 0A 31 36 33 35 0A 31 36 33 36 3.1634.1635.1636 +7072: 0A 31 36 33 37 0A 31 36 33 38 0A 31 36 33 39 0A .1637.1638.1639. +7088: 31 36 34 30 0A 31 36 34 31 0A 31 36 34 32 0A 31 1640.1641.1642.1 +7104: 36 34 33 0A 31 36 34 34 0A 31 36 34 35 0A 31 36 643.1644.1645.16 +7120: 34 36 0A 31 36 34 37 0A 31 36 34 38 0A 31 36 34 46.1647.1648.164 +7136: 39 0A 31 36 35 30 0A 31 36 35 31 0A 31 36 35 32 9.1650.1651.1652 +7152: 0A 31 36 35 33 0A 31 36 35 34 0A 31 36 35 35 0A .1653.1654.1655. +7168: 31 36 35 36 0A 31 36 35 37 0A 31 36 35 38 0A 31 1656.1657.1658.1 +7184: 36 35 39 0A 31 36 36 30 0A 31 36 36 31 0A 31 36 659.1660.1661.16 +7200: 36 32 0A 31 36 36 33 0A 31 36 36 34 0A 31 36 36 62.1663.1664.166 +7216: 35 0A 31 36 36 36 0A 31 36 36 37 0A 31 36 36 38 5.1666.1667.1668 +7232: 0A 31 36 36 39 0A 31 36 37 30 0A 31 36 37 31 0A .1669.1670.1671. +7248: 31 36 37 32 0A 31 36 37 33 0A 31 36 37 34 0A 31 1672.1673.1674.1 +7264: 36 37 35 0A 31 36 37 36 0A 31 36 37 37 0A 31 36 675.1676.1677.16 +7280: 37 38 0A 31 36 37 39 0A 31 36 38 30 0A 31 36 38 78.1679.1680.168 +7296: 31 0A 31 36 38 32 0A 31 36 38 33 0A 31 36 38 34 1.1682.1683.1684 +7312: 0A 31 36 38 35 0A 31 36 38 36 0A 31 36 38 37 0A .1685.1686.1687. +7328: 31 36 38 38 0A 31 36 38 39 0A 31 36 39 30 0A 31 1688.1689.1690.1 +7344: 36 39 31 0A 31 36 39 32 0A 31 36 39 33 0A 31 36 691.1692.1693.16 +7360: 39 34 0A 31 36 39 35 0A 31 36 39 36 0A 31 36 39 94.1695.1696.169 +7376: 37 0A 31 36 39 38 0A 31 36 39 39 0A 31 37 30 30 7.1698.1699.1700 +7392: 0A 31 37 30 31 0A 31 37 30 32 0A 31 37 30 33 0A .1701.1702.1703. +7408: 31 37 30 34 0A 31 37 30 35 0A 31 37 30 36 0A 31 1704.1705.1706.1 +7424: 37 30 37 0A 31 37 30 38 0A 31 37 30 39 0A 31 37 707.1708.1709.17 +7440: 31 30 0A 31 37 31 31 0A 31 37 31 32 0A 31 37 31 10.1711.1712.171 +7456: 33 0A 31 37 31 34 0A 31 37 31 35 0A 31 37 31 36 3.1714.1715.1716 +7472: 0A 31 37 31 37 0A 31 37 31 38 0A 31 37 31 39 0A .1717.1718.1719. +7488: 31 37 32 30 0A 31 37 32 31 0A 31 37 32 32 0A 31 1720.1721.1722.1 +7504: 37 32 33 0A 31 37 32 34 0A 31 37 32 35 0A 31 37 723.1724.1725.17 +7520: 32 36 0A 31 37 32 37 0A 31 37 32 38 0A 31 37 32 26.1727.1728.172 +7536: 39 0A 31 37 33 30 0A 31 37 33 31 0A 31 37 33 32 9.1730.1731.1732 +7552: 0A 31 37 33 33 0A 31 37 33 34 0A 31 37 33 35 0A .1733.1734.1735. +7568: 31 37 33 36 0A 31 37 33 37 0A 31 37 33 38 0A 31 1736.1737.1738.1 +7584: 37 33 39 0A 31 37 34 30 0A 31 37 34 31 0A 31 37 739.1740.1741.17 +7600: 34 32 0A 31 37 34 33 0A 31 37 34 34 0A 31 37 34 42.1743.1744.174 +7616: 35 0A 31 37 34 36 0A 31 37 34 37 0A 31 37 34 38 5.1746.1747.1748 +7632: 0A 31 37 34 39 0A 31 37 35 30 0A 31 37 35 31 0A .1749.1750.1751. +7648: 31 37 35 32 0A 31 37 35 33 0A 31 37 35 34 0A 31 1752.1753.1754.1 +7664: 37 35 35 0A 31 37 35 36 0A 31 37 35 37 0A 31 37 755.1756.1757.17 +7680: 35 38 0A 31 37 35 39 0A 31 37 36 30 0A 31 37 36 58.1759.1760.176 +7696: 31 0A 31 37 36 32 0A 31 37 36 33 0A 31 37 36 34 1.1762.1763.1764 +7712: 0A 31 37 36 35 0A 31 37 36 36 0A 31 37 36 37 0A .1765.1766.1767. +7728: 31 37 36 38 0A 31 37 36 39 0A 31 37 37 30 0A 31 1768.1769.1770.1 +7744: 37 37 31 0A 31 37 37 32 0A 31 37 37 33 0A 31 37 771.1772.1773.17 +7760: 37 34 0A 31 37 37 35 0A 31 37 37 36 0A 31 37 37 74.1775.1776.177 +7776: 37 0A 31 37 37 38 0A 31 37 37 39 0A 31 37 38 30 7.1778.1779.1780 +7792: 0A 31 37 38 31 0A 31 37 38 32 0A 31 37 38 33 0A .1781.1782.1783. +7808: 31 37 38 34 0A 31 37 38 35 0A 31 37 38 36 0A 31 1784.1785.1786.1 +7824: 37 38 37 0A 31 37 38 38 0A 31 37 38 39 0A 31 37 787.1788.1789.17 +7840: 39 30 0A 31 37 39 31 0A 31 37 39 32 0A 31 37 39 90.1791.1792.179 +7856: 33 0A 31 37 39 34 0A 31 37 39 35 0A 31 37 39 36 3.1794.1795.1796 +7872: 0A 31 37 39 37 0A 31 37 39 38 0A 31 37 39 39 0A .1797.1798.1799. +7888: 31 38 30 30 0A 31 38 30 31 0A 31 38 30 32 0A 31 1800.1801.1802.1 +7904: 38 30 33 0A 31 38 30 34 0A 31 38 30 35 0A 31 38 803.1804.1805.18 +7920: 30 36 0A 31 38 30 37 0A 31 38 30 38 0A 31 38 30 06.1807.1808.180 +7936: 39 0A 31 38 31 30 0A 31 38 31 31 0A 31 38 31 32 9.1810.1811.1812 +7952: 0A 31 38 31 33 0A 31 38 31 34 0A 31 38 31 35 0A .1813.1814.1815. +7968: 31 38 31 36 0A 31 38 31 37 0A 31 38 31 38 0A 31 1816.1817.1818.1 +7984: 38 31 39 0A 31 38 32 30 0A 31 38 32 31 0A 31 38 819.1820.1821.18 +8000: 32 32 0A 31 38 32 33 0A 31 38 32 34 0A 31 38 32 22.1823.1824.182 +8016: 35 0A 31 38 32 36 0A 31 38 32 37 0A 31 38 32 38 5.1826.1827.1828 +8032: 0A 31 38 32 39 0A 31 38 33 30 0A 31 38 33 31 0A .1829.1830.1831. +8048: 31 38 33 32 0A 31 38 33 33 0A 31 38 33 34 0A 31 1832.1833.1834.1 +8064: 38 33 35 0A 31 38 33 36 0A 31 38 33 37 0A 31 38 835.1836.1837.18 +8080: 33 38 0A 31 38 33 39 0A 31 38 34 30 0A 31 38 34 38.1839.1840.184 +8096: 31 0A 31 38 34 32 0A 31 38 34 33 0A 31 38 34 34 1.1842.1843.1844 +8112: 0A 31 38 34 35 0A 31 38 34 36 0A 31 38 34 37 0A .1845.1846.1847. +8128: 31 38 34 38 0A 31 38 34 39 0A 31 38 35 30 0A 31 1848.1849.1850.1 +8144: 38 35 31 0A 31 38 35 32 0A 31 38 35 33 0A 31 38 851.1852.1853.18 +8160: 35 34 0A 31 38 35 35 0A 31 38 35 36 0A 31 38 35 54.1855.1856.185 +8176: 37 0A 31 38 35 38 0A 31 38 35 39 0A 31 38 36 30 7.1858.1859.1860 +8192: 0A 31 38 36 31 0A 31 38 36 32 0A 31 38 36 33 0A .1861.1862.1863. +8208: 31 38 36 34 0A 31 38 36 35 0A 31 38 36 36 0A 31 1864.1865.1866.1 +8224: 38 36 37 0A 31 38 36 38 0A 31 38 36 39 0A 31 38 867.1868.1869.18 +8240: 37 30 0A 31 38 37 31 0A 31 38 37 32 0A 31 38 37 70.1871.1872.187 +8256: 33 0A 31 38 37 34 0A 31 38 37 35 0A 31 38 37 36 3.1874.1875.1876 +8272: 0A 31 38 37 37 0A 31 38 37 38 0A 31 38 37 39 0A .1877.1878.1879. +8288: 31 38 38 30 0A 31 38 38 31 0A 31 38 38 32 0A 31 1880.1881.1882.1 +8304: 38 38 33 0A 31 38 38 34 0A 31 38 38 35 0A 31 38 883.1884.1885.18 +8320: 38 36 0A 31 38 38 37 0A 31 38 38 38 0A 31 38 38 86.1887.1888.188 +8336: 39 0A 31 38 39 30 0A 31 38 39 31 0A 31 38 39 32 9.1890.1891.1892 +8352: 0A 31 38 39 33 0A 31 38 39 34 0A 31 38 39 35 0A .1893.1894.1895. +8368: 31 38 39 36 0A 31 38 39 37 0A 31 38 39 38 0A 31 1896.1897.1898.1 +8384: 38 39 39 0A 31 39 30 30 0A 31 39 30 31 0A 31 39 899.1900.1901.19 +8400: 30 32 0A 31 39 30 33 0A 31 39 30 34 0A 31 39 30 02.1903.1904.190 +8416: 35 0A 31 39 30 36 0A 31 39 30 37 0A 31 39 30 38 5.1906.1907.1908 +8432: 0A 31 39 30 39 0A 31 39 31 30 0A 31 39 31 31 0A .1909.1910.1911. +8448: 31 39 31 32 0A 31 39 31 33 0A 31 39 31 34 0A 31 1912.1913.1914.1 +8464: 39 31 35 0A 31 39 31 36 0A 31 39 31 37 0A 31 39 915.1916.1917.19 +8480: 31 38 0A 31 39 31 39 0A 31 39 32 30 0A 31 39 32 18.1919.1920.192 +8496: 31 0A 31 39 32 32 0A 31 39 32 33 0A 31 39 32 34 1.1922.1923.1924 +8512: 0A 31 39 32 35 0A 31 39 32 36 0A 31 39 32 37 0A .1925.1926.1927. +8528: 31 39 32 38 0A 31 39 32 39 0A 31 39 33 30 0A 31 1928.1929.1930.1 +8544: 39 33 31 0A 31 39 33 32 0A 31 39 33 33 0A 31 39 931.1932.1933.19 +8560: 33 34 0A 31 39 33 35 0A 31 39 33 36 0A 31 39 33 34.1935.1936.193 +8576: 37 0A 31 39 33 38 0A 31 39 33 39 0A 31 39 34 30 7.1938.1939.1940 +8592: 0A 31 39 34 31 0A 31 39 34 32 0A 31 39 34 33 0A .1941.1942.1943. +8608: 31 39 34 34 0A 31 39 34 35 0A 31 39 34 36 0A 31 1944.1945.1946.1 +8624: 39 34 37 0A 31 39 34 38 0A 31 39 34 39 0A 31 39 947.1948.1949.19 +8640: 35 30 0A 31 39 35 31 0A 31 39 35 32 0A 31 39 35 50.1951.1952.195 +8656: 33 0A 31 39 35 34 0A 31 39 35 35 0A 31 39 35 36 3.1954.1955.1956 +8672: 0A 31 39 35 37 0A 31 39 35 38 0A 31 39 35 39 0A .1957.1958.1959. +8688: 31 39 36 30 0A 31 39 36 31 0A 31 39 36 32 0A 31 1960.1961.1962.1 +8704: 39 36 33 0A 31 39 36 34 0A 31 39 36 35 0A 31 39 963.1964.1965.19 +8720: 36 36 0A 31 39 36 37 0A 31 39 36 38 0A 31 39 36 66.1967.1968.196 +8736: 39 0A 31 39 37 30 0A 31 39 37 31 0A 31 39 37 32 9.1970.1971.1972 +8752: 0A 31 39 37 33 0A 31 39 37 34 0A 31 39 37 35 0A .1973.1974.1975. +8768: 31 39 37 36 0A 31 39 37 37 0A 31 39 37 38 0A 31 1976.1977.1978.1 +8784: 39 37 39 0A 31 39 38 30 0A 31 39 38 31 0A 31 39 979.1980.1981.19 +8800: 38 32 0A 31 39 38 33 0A 31 39 38 34 0A 31 39 38 82.1983.1984.198 +8816: 35 0A 31 39 38 36 0A 31 39 38 37 0A 31 39 38 38 5.1986.1987.1988 +8832: 0A 31 39 38 39 0A 31 39 39 30 0A 31 39 39 31 0A .1989.1990.1991. +8848: 31 39 39 32 0A 31 39 39 33 0A 31 39 39 34 0A 31 1992.1993.1994.1 +8864: 39 39 35 0A 31 39 39 36 0A 31 39 39 37 0A 31 39 995.1996.1997.19 +8880: 39 38 0A 31 39 39 39 0A 32 30 30 30 0A 32 30 30 98.1999.2000.200 +8896: 31 0A 32 30 30 32 0A 32 30 30 33 0A 32 30 30 34 1.2002.2003.2004 +8912: 0A 32 30 30 35 0A 32 30 30 36 0A 32 30 30 37 0A .2005.2006.2007. +8928: 32 30 30 38 0A 32 30 30 39 0A 32 30 31 30 0A 32 2008.2009.2010.2 +8944: 30 31 31 0A 32 30 31 32 0A 32 30 31 33 0A 32 30 011.2012.2013.20 +8960: 31 34 0A 32 30 31 35 0A 32 30 31 36 0A 32 30 31 14.2015.2016.201 +8976: 37 0A 32 30 31 38 0A 32 30 31 39 0A 32 30 32 30 7.2018.2019.2020 +8992: 0A 32 30 32 31 0A 32 30 32 32 0A 32 30 32 33 0A .2021.2022.2023. +9008: 32 30 32 34 0A 32 30 32 35 0A 32 30 32 36 0A 32 2024.2025.2026.2 +9024: 30 32 37 0A 32 30 32 38 0A 32 30 32 39 0A 32 30 027.2028.2029.20 +9040: 33 30 0A 32 30 33 31 0A 32 30 33 32 0A 32 30 33 30.2031.2032.203 +9056: 33 0A 32 30 33 34 0A 32 30 33 35 0A 32 30 33 36 3.2034.2035.2036 +9072: 0A 32 30 33 37 0A 32 30 33 38 0A 32 30 33 39 0A .2037.2038.2039. +9088: 32 30 34 30 0A 32 30 34 31 0A 32 30 34 32 0A 32 2040.2041.2042.2 +9104: 30 34 33 0A 32 30 34 34 0A 32 30 34 35 0A 32 30 043.2044.2045.20 +9120: 34 36 0A 32 30 34 37 0A 32 30 34 38 0A 32 30 34 46.2047.2048.204 +9136: 39 0A 32 30 35 30 0A 32 30 35 31 0A 32 30 35 32 9.2050.2051.2052 +9152: 0A 32 30 35 33 0A 32 30 35 34 0A 32 30 35 35 0A .2053.2054.2055. +9168: 32 30 35 36 0A 32 30 35 37 0A 32 30 35 38 0A 32 2056.2057.2058.2 +9184: 30 35 39 0A 32 30 36 30 0A 32 30 36 31 0A 32 30 059.2060.2061.20 +9200: 36 32 0A 32 30 36 33 0A 32 30 36 34 0A 32 30 36 62.2063.2064.206 +9216: 35 0A 32 30 36 36 0A 32 30 36 37 0A 32 30 36 38 5.2066.2067.2068 +9232: 0A 32 30 36 39 0A 32 30 37 30 0A 32 30 37 31 0A .2069.2070.2071. +9248: 32 30 37 32 0A 32 30 37 33 0A 32 30 37 34 0A 32 2072.2073.2074.2 +9264: 30 37 35 0A 32 30 37 36 0A 32 30 37 37 0A 32 30 075.2076.2077.20 +9280: 37 38 0A 32 30 37 39 0A 32 30 38 30 0A 32 30 38 78.2079.2080.208 +9296: 31 0A 32 30 38 32 0A 32 30 38 33 0A 32 30 38 34 1.2082.2083.2084 +9312: 0A 32 30 38 35 0A 32 30 38 36 0A 32 30 38 37 0A .2085.2086.2087. +9328: 32 30 38 38 0A 32 30 38 39 0A 32 30 39 30 0A 32 2088.2089.2090.2 +9344: 30 39 31 0A 32 30 39 32 0A 32 30 39 33 0A 32 30 091.2092.2093.20 +9360: 39 34 0A 32 30 39 35 0A 32 30 39 36 0A 32 30 39 94.2095.2096.209 +9376: 37 0A 32 30 39 38 0A 32 30 39 39 0A 32 31 30 30 7.2098.2099.2100 +9392: 0A 32 31 30 31 0A 32 31 30 32 0A 32 31 30 33 0A .2101.2102.2103. +9408: 32 31 30 34 0A 32 31 30 35 0A 32 31 30 36 0A 32 2104.2105.2106.2 +9424: 31 30 37 0A 32 31 30 38 0A 32 31 30 39 0A 32 31 107.2108.2109.21 +9440: 31 30 0A 32 31 31 31 0A 32 31 31 32 0A 32 31 31 10.2111.2112.211 +9456: 33 0A 32 31 31 34 0A 32 31 31 35 0A 32 31 31 36 3.2114.2115.2116 +9472: 0A 32 31 31 37 0A 32 31 31 38 0A 32 31 31 39 0A .2117.2118.2119. +9488: 32 31 32 30 0A 32 31 32 31 0A 32 31 32 32 0A 32 2120.2121.2122.2 +9504: 31 32 33 0A 32 31 32 34 0A 32 31 32 35 0A 32 31 123.2124.2125.21 +9520: 32 36 0A 32 31 32 37 0A 32 31 32 38 0A 32 31 32 26.2127.2128.212 +9536: 39 0A 32 31 33 30 0A 32 31 33 31 0A 32 31 33 32 9.2130.2131.2132 +9552: 0A 32 31 33 33 0A 32 31 33 34 0A 32 31 33 35 0A .2133.2134.2135. +9568: 32 31 33 36 0A 32 31 33 37 0A 32 31 33 38 0A 32 2136.2137.2138.2 +9584: 31 33 39 0A 32 31 34 30 0A 32 31 34 31 0A 32 31 139.2140.2141.21 +9600: 34 32 0A 32 31 34 33 0A 32 31 34 34 0A 32 31 34 42.2143.2144.214 +9616: 35 0A 32 31 34 36 0A 32 31 34 37 0A 32 31 34 38 5.2146.2147.2148 +9632: 0A 32 31 34 39 0A 32 31 35 30 0A 32 31 35 31 0A .2149.2150.2151. +9648: 32 31 35 32 0A 32 31 35 33 0A 32 31 35 34 0A 32 2152.2153.2154.2 +9664: 31 35 35 0A 32 31 35 36 0A 32 31 35 37 0A 32 31 155.2156.2157.21 +9680: 35 38 0A 32 31 35 39 0A 32 31 36 30 0A 32 31 36 58.2159.2160.216 +9696: 31 0A 32 31 36 32 0A 32 31 36 33 0A 32 31 36 34 1.2162.2163.2164 +9712: 0A 32 31 36 35 0A 32 31 36 36 0A 32 31 36 37 0A .2165.2166.2167. +9728: 32 31 36 38 0A 32 31 36 39 0A 32 31 37 30 0A 32 2168.2169.2170.2 +9744: 31 37 31 0A 32 31 37 32 0A 32 31 37 33 0A 32 31 171.2172.2173.21 +9760: 37 34 0A 32 31 37 35 0A 32 31 37 36 0A 32 31 37 74.2175.2176.217 +9776: 37 0A 32 31 37 38 0A 32 31 37 39 0A 32 31 38 30 7.2178.2179.2180 +9792: 0A 32 31 38 31 0A 32 31 38 32 0A 32 31 38 33 0A .2181.2182.2183. +9808: 32 31 38 34 0A 32 31 38 35 0A 32 31 38 36 0A 32 2184.2185.2186.2 +9824: 31 38 37 0A 32 31 38 38 0A 32 31 38 39 0A 32 31 187.2188.2189.21 +9840: 39 30 0A 32 31 39 31 0A 32 31 39 32 0A 32 31 39 90.2191.2192.219 +9856: 33 0A 32 31 39 34 0A 32 31 39 35 0A 32 31 39 36 3.2194.2195.2196 +9872: 0A 32 31 39 37 0A 32 31 39 38 0A 32 31 39 39 0A .2197.2198.2199. +9888: 32 32 30 30 0A 32 32 30 31 0A 32 32 30 32 0A 32 2200.2201.2202.2 +9904: 32 30 33 0A 32 32 30 34 0A 32 32 30 35 0A 32 32 203.2204.2205.22 +9920: 30 36 0A 32 32 30 37 0A 32 32 30 38 0A 32 32 30 06.2207.2208.220 +9936: 39 0A 32 32 31 30 0A 32 32 31 31 0A 32 32 31 32 9.2210.2211.2212 +9952: 0A 32 32 31 33 0A 32 32 31 34 0A 32 32 31 35 0A .2213.2214.2215. +9968: 32 32 31 36 0A 32 32 31 37 0A 32 32 31 38 0A 32 2216.2217.2218.2 +9984: 32 31 39 0A 32 32 32 30 0A 32 32 32 31 0A 32 32 219.2220.2221.22 +10000: 32 32 0A 32 32 32 33 0A 32 32 32 34 0A 32 32 32 22.2223.2224.222 +10016: 35 0A 32 32 32 36 0A 32 32 32 37 0A 32 32 32 38 5.2226.2227.2228 +10032: 0A 32 32 32 39 0A 32 32 33 30 0A 32 32 33 31 0A .2229.2230.2231. +10048: 32 32 33 32 0A 32 32 33 33 0A 32 32 33 34 0A 32 2232.2233.2234.2 +10064: 32 33 35 0A 32 32 33 36 0A 32 32 33 37 0A 32 32 235.2236.2237.22 +10080: 33 38 0A 32 32 33 39 0A 32 32 34 30 0A 32 32 34 38.2239.2240.224 +10096: 31 0A 32 32 34 32 0A 32 32 34 33 0A 32 32 34 34 1.2242.2243.2244 +10112: 0A 32 32 34 35 0A 32 32 34 36 0A 32 32 34 37 0A .2245.2246.2247. +10128: 32 32 34 38 0A 32 32 34 39 0A 32 32 35 30 0A 32 2248.2249.2250.2 +10144: 32 35 31 0A 32 32 35 32 0A 32 32 35 33 0A 32 32 251.2252.2253.22 +10160: 35 34 0A 32 32 35 35 0A 32 32 35 36 0A 32 32 35 54.2255.2256.225 +10176: 37 0A 32 32 35 38 0A 32 32 35 39 0A 32 32 36 30 7.2258.2259.2260 +10192: 0A 32 32 36 31 0A 32 32 36 32 0A 32 32 36 33 0A .2261.2262.2263. +10208: 32 32 36 34 0A 32 32 36 35 0A 32 32 36 36 0A 32 2264.2265.2266.2 +10224: 32 36 37 0A 32 32 36 38 0A 32 32 36 39 0A 32 32 267.2268.2269.22 +10240: 37 30 0A 32 32 37 31 0A 32 32 37 32 0A 32 32 37 70.2271.2272.227 +10256: 33 0A 32 32 37 34 0A 32 32 37 35 0A 32 32 37 36 3.2274.2275.2276 +10272: 0A 32 32 37 37 0A 32 32 37 38 0A 32 32 37 39 0A .2277.2278.2279. +10288: 32 32 38 30 0A 32 32 38 31 0A 32 32 38 32 0A 32 2280.2281.2282.2 +10304: 32 38 33 0A 32 32 38 34 0A 32 32 38 35 0A 32 32 283.2284.2285.22 +10320: 38 36 0A 32 32 38 37 0A 32 32 38 38 0A 32 32 38 86.2287.2288.228 +10336: 39 0A 32 32 39 30 0A 32 32 39 31 0A 32 32 39 32 9.2290.2291.2292 +10352: 0A 32 32 39 33 0A 32 32 39 34 0A 32 32 39 35 0A .2293.2294.2295. +10368: 32 32 39 36 0A 32 32 39 37 0A 32 32 39 38 0A 32 2296.2297.2298.2 +10384: 32 39 39 0A 32 33 30 30 0A 32 33 30 31 0A 32 33 299.2300.2301.23 +10400: 30 32 0A 32 33 30 33 0A 32 33 30 34 0A 32 33 30 02.2303.2304.230 +10416: 35 0A 32 33 30 36 0A 32 33 30 37 0A 32 33 30 38 5.2306.2307.2308 +10432: 0A 32 33 30 39 0A 32 33 31 30 0A 32 33 31 31 0A .2309.2310.2311. +10448: 32 33 31 32 0A 32 33 31 33 0A 32 33 31 34 0A 32 2312.2313.2314.2 +10464: 33 31 35 0A 32 33 31 36 0A 32 33 31 37 0A 32 33 315.2316.2317.23 +10480: 31 38 0A 32 33 31 39 0A 32 33 32 30 0A 32 33 32 18.2319.2320.232 +10496: 31 0A 32 33 32 32 0A 32 33 32 33 0A 32 33 32 34 1.2322.2323.2324 +10512: 0A 32 33 32 35 0A 32 33 32 36 0A 32 33 32 37 0A .2325.2326.2327. +10528: 32 33 32 38 0A 32 33 32 39 0A 32 33 33 30 0A 32 2328.2329.2330.2 +10544: 33 33 31 0A 32 33 33 32 0A 32 33 33 33 0A 32 33 331.2332.2333.23 +10560: 33 34 0A 32 33 33 35 0A 32 33 33 36 0A 32 33 33 34.2335.2336.233 +10576: 37 0A 32 33 33 38 0A 32 33 33 39 0A 32 33 34 30 7.2338.2339.2340 +10592: 0A 32 33 34 31 0A 32 33 34 32 0A 32 33 34 33 0A .2341.2342.2343. +10608: 32 33 34 34 0A 32 33 34 35 0A 32 33 34 36 0A 32 2344.2345.2346.2 +10624: 33 34 37 0A 32 33 34 38 0A 32 33 34 39 0A 32 33 347.2348.2349.23 +10640: 35 30 0A 32 33 35 31 0A 32 33 35 32 0A 32 33 35 50.2351.2352.235 +10656: 33 0A 32 33 35 34 0A 32 33 35 35 0A 32 33 35 36 3.2354.2355.2356 +10672: 0A 32 33 35 37 0A 32 33 35 38 0A 32 33 35 39 0A .2357.2358.2359. +10688: 32 33 36 30 0A 32 33 36 31 0A 32 33 36 32 0A 32 2360.2361.2362.2 +10704: 33 36 33 0A 32 33 36 34 0A 32 33 36 35 0A 32 33 363.2364.2365.23 +10720: 36 36 0A 32 33 36 37 0A 32 33 36 38 0A 32 33 36 66.2367.2368.236 +10736: 39 0A 32 33 37 30 0A 32 33 37 31 0A 32 33 37 32 9.2370.2371.2372 +10752: 0A 32 33 37 33 0A 32 33 37 34 0A 32 33 37 35 0A .2373.2374.2375. +10768: 32 33 37 36 0A 32 33 37 37 0A 32 33 37 38 0A 32 2376.2377.2378.2 +10784: 33 37 39 0A 32 33 38 30 0A 32 33 38 31 0A 32 33 379.2380.2381.23 +10800: 38 32 0A 32 33 38 33 0A 32 33 38 34 0A 32 33 38 82.2383.2384.238 +10816: 35 0A 32 33 38 36 0A 32 33 38 37 0A 32 33 38 38 5.2386.2387.2388 +10832: 0A 32 33 38 39 0A 32 33 39 30 0A 32 33 39 31 0A .2389.2390.2391. +10848: 32 33 39 32 0A 32 33 39 33 0A 32 33 39 34 0A 32 2392.2393.2394.2 +10864: 33 39 35 0A 32 33 39 36 0A 32 33 39 37 0A 32 33 395.2396.2397.23 +10880: 39 38 0A 32 33 39 39 0A 32 34 30 30 0A 32 34 30 98.2399.2400.240 +10896: 31 0A 32 34 30 32 0A 32 34 30 33 0A 32 34 30 34 1.2402.2403.2404 +10912: 0A 32 34 30 35 0A 32 34 30 36 0A 32 34 30 37 0A .2405.2406.2407. +10928: 32 34 30 38 0A 32 34 30 39 0A 32 34 31 30 0A 32 2408.2409.2410.2 +10944: 34 31 31 0A 32 34 31 32 0A 32 34 31 33 0A 32 34 411.2412.2413.24 +10960: 31 34 0A 32 34 31 35 0A 32 34 31 36 0A 32 34 31 14.2415.2416.241 +10976: 37 0A 32 34 31 38 0A 32 34 31 39 0A 32 34 32 30 7.2418.2419.2420 +10992: 0A 32 34 32 31 0A 32 34 32 32 0A 32 34 32 33 0A .2421.2422.2423. +11008: 32 34 32 34 0A 32 34 32 35 0A 32 34 32 36 0A 32 2424.2425.2426.2 +11024: 34 32 37 0A 32 34 32 38 0A 32 34 32 39 0A 32 34 427.2428.2429.24 +11040: 33 30 0A 32 34 33 31 0A 32 34 33 32 0A 32 34 33 30.2431.2432.243 +11056: 33 0A 32 34 33 34 0A 32 34 33 35 0A 32 34 33 36 3.2434.2435.2436 +11072: 0A 32 34 33 37 0A 32 34 33 38 0A 32 34 33 39 0A .2437.2438.2439. +11088: 32 34 34 30 0A 32 34 34 31 0A 32 34 34 32 0A 32 2440.2441.2442.2 +11104: 34 34 33 0A 32 34 34 34 0A 32 34 34 35 0A 32 34 443.2444.2445.24 +11120: 34 36 0A 32 34 34 37 0A 32 34 34 38 0A 32 34 34 46.2447.2448.244 +11136: 39 0A 32 34 35 30 0A 32 34 35 31 0A 32 34 35 32 9.2450.2451.2452 +11152: 0A 32 34 35 33 0A 32 34 35 34 0A 32 34 35 35 0A .2453.2454.2455. +11168: 32 34 35 36 0A 32 34 35 37 0A 32 34 35 38 0A 32 2456.2457.2458.2 +11184: 34 35 39 0A 32 34 36 30 0A 32 34 36 31 0A 32 34 459.2460.2461.24 +11200: 36 32 0A 32 34 36 33 0A 32 34 36 34 0A 32 34 36 62.2463.2464.246 +11216: 35 0A 32 34 36 36 0A 32 34 36 37 0A 32 34 36 38 5.2466.2467.2468 +11232: 0A 32 34 36 39 0A 32 34 37 30 0A 32 34 37 31 0A .2469.2470.2471. +11248: 32 34 37 32 0A 32 34 37 33 0A 32 34 37 34 0A 32 2472.2473.2474.2 +11264: 34 37 35 0A 32 34 37 36 0A 32 34 37 37 0A 32 34 475.2476.2477.24 +11280: 37 38 0A 32 34 37 39 0A 32 34 38 30 0A 32 34 38 78.2479.2480.248 +11296: 31 0A 32 34 38 32 0A 32 34 38 33 0A 32 34 38 34 1.2482.2483.2484 +11312: 0A 32 34 38 35 0A 32 34 38 36 0A 32 34 38 37 0A .2485.2486.2487. +11328: 32 34 38 38 0A 32 34 38 39 0A 32 34 39 30 0A 32 2488.2489.2490.2 +11344: 34 39 31 0A 32 34 39 32 0A 32 34 39 33 0A 32 34 491.2492.2493.24 +11360: 39 34 0A 32 34 39 35 0A 32 34 39 36 0A 32 34 39 94.2495.2496.249 +11376: 37 0A 32 34 39 38 0A 32 34 39 39 0A 32 35 30 30 7.2498.2499.2500 +11392: 0A 32 35 30 31 0A 32 35 30 32 0A 32 35 30 33 0A .2501.2502.2503. +11408: 32 35 30 34 0A 32 35 30 35 0A 32 35 30 36 0A 32 2504.2505.2506.2 +11424: 35 30 37 0A 32 35 30 38 0A 32 35 30 39 0A 32 35 507.2508.2509.25 +11440: 31 30 0A 32 35 31 31 0A 32 35 31 32 0A 32 35 31 10.2511.2512.251 +11456: 33 0A 32 35 31 34 0A 32 35 31 35 0A 32 35 31 36 3.2514.2515.2516 +11472: 0A 32 35 31 37 0A 32 35 31 38 0A 32 35 31 39 0A .2517.2518.2519. +11488: 32 35 32 30 0A 32 35 32 31 0A 32 35 32 32 0A 32 2520.2521.2522.2 +11504: 35 32 33 0A 32 35 32 34 0A 32 35 32 35 0A 32 35 523.2524.2525.25 +11520: 32 36 0A 32 35 32 37 0A 32 35 32 38 0A 32 35 32 26.2527.2528.252 +11536: 39 0A 32 35 33 30 0A 32 35 33 31 0A 32 35 33 32 9.2530.2531.2532 +11552: 0A 32 35 33 33 0A 32 35 33 34 0A 32 35 33 35 0A .2533.2534.2535. +11568: 32 35 33 36 0A 32 35 33 37 0A 32 35 33 38 0A 32 2536.2537.2538.2 +11584: 35 33 39 0A 32 35 34 30 0A 32 35 34 31 0A 32 35 539.2540.2541.25 +11600: 34 32 0A 32 35 34 33 0A 32 35 34 34 0A 32 35 34 42.2543.2544.254 +11616: 35 0A 32 35 34 36 0A 32 35 34 37 0A 32 35 34 38 5.2546.2547.2548 +11632: 0A 32 35 34 39 0A 32 35 35 30 0A 32 35 35 31 0A .2549.2550.2551. +11648: 32 35 35 32 0A 32 35 35 33 0A 32 35 35 34 0A 32 2552.2553.2554.2 +11664: 35 35 35 0A 32 35 35 36 0A 32 35 35 37 0A 32 35 555.2556.2557.25 +11680: 35 38 0A 32 35 35 39 0A 32 35 36 30 0A 32 35 36 58.2559.2560.256 +11696: 31 0A 32 35 36 32 0A 32 35 36 33 0A 32 35 36 34 1.2562.2563.2564 +11712: 0A 32 35 36 35 0A 32 35 36 36 0A 32 35 36 37 0A .2565.2566.2567. +11728: 32 35 36 38 0A 32 35 36 39 0A 32 35 37 30 0A 32 2568.2569.2570.2 +11744: 35 37 31 0A 32 35 37 32 0A 32 35 37 33 0A 32 35 571.2572.2573.25 +11760: 37 34 0A 32 35 37 35 0A 32 35 37 36 0A 32 35 37 74.2575.2576.257 +11776: 37 0A 32 35 37 38 0A 32 35 37 39 0A 32 35 38 30 7.2578.2579.2580 +11792: 0A 32 35 38 31 0A 32 35 38 32 0A 32 35 38 33 0A .2581.2582.2583. +11808: 32 35 38 34 0A 32 35 38 35 0A 32 35 38 36 0A 32 2584.2585.2586.2 +11824: 35 38 37 0A 32 35 38 38 0A 32 35 38 39 0A 32 35 587.2588.2589.25 +11840: 39 30 0A 32 35 39 31 0A 32 35 39 32 0A 32 35 39 90.2591.2592.259 +11856: 33 0A 32 35 39 34 0A 32 35 39 35 0A 32 35 39 36 3.2594.2595.2596 +11872: 0A 32 35 39 37 0A 32 35 39 38 0A 32 35 39 39 0A .2597.2598.2599. +11888: 32 36 30 30 0A 32 36 30 31 0A 32 36 30 32 0A 32 2600.2601.2602.2 +11904: 36 30 33 0A 32 36 30 34 0A 32 36 30 35 0A 32 36 603.2604.2605.26 +11920: 30 36 0A 32 36 30 37 0A 32 36 30 38 0A 32 36 30 06.2607.2608.260 +11936: 39 0A 32 36 31 30 0A 32 36 31 31 0A 32 36 31 32 9.2610.2611.2612 +11952: 0A 32 36 31 33 0A 32 36 31 34 0A 32 36 31 35 0A .2613.2614.2615. +11968: 32 36 31 36 0A 32 36 31 37 0A 32 36 31 38 0A 32 2616.2617.2618.2 +11984: 36 31 39 0A 32 36 32 30 0A 32 36 32 31 0A 32 36 619.2620.2621.26 +12000: 32 32 0A 32 36 32 33 0A 32 36 32 34 0A 32 36 32 22.2623.2624.262 +12016: 35 0A 32 36 32 36 0A 32 36 32 37 0A 32 36 32 38 5.2626.2627.2628 +12032: 0A 32 36 32 39 0A 32 36 33 30 0A 32 36 33 31 0A .2629.2630.2631. +12048: 32 36 33 32 0A 32 36 33 33 0A 32 36 33 34 0A 32 2632.2633.2634.2 +12064: 36 33 35 0A 32 36 33 36 0A 32 36 33 37 0A 32 36 635.2636.2637.26 +12080: 33 38 0A 32 36 33 39 0A 32 36 34 30 0A 32 36 34 38.2639.2640.264 +12096: 31 0A 32 36 34 32 0A 32 36 34 33 0A 32 36 34 34 1.2642.2643.2644 +12112: 0A 32 36 34 35 0A 32 36 34 36 0A 32 36 34 37 0A .2645.2646.2647. +12128: 32 36 34 38 0A 32 36 34 39 0A 32 36 35 30 0A 32 2648.2649.2650.2 +12144: 36 35 31 0A 32 36 35 32 0A 32 36 35 33 0A 32 36 651.2652.2653.26 +12160: 35 34 0A 32 36 35 35 0A 32 36 35 36 0A 32 36 35 54.2655.2656.265 +12176: 37 0A 32 36 35 38 0A 32 36 35 39 0A 32 36 36 30 7.2658.2659.2660 +12192: 0A 32 36 36 31 0A 32 36 36 32 0A 32 36 36 33 0A .2661.2662.2663. +12208: 32 36 36 34 0A 32 36 36 35 0A 32 36 36 36 0A 32 2664.2665.2666.2 +12224: 36 36 37 0A 32 36 36 38 0A 32 36 36 39 0A 32 36 667.2668.2669.26 +12240: 37 30 0A 32 36 37 31 0A 32 36 37 32 0A 32 36 37 70.2671.2672.267 +12256: 33 0A 32 36 37 34 0A 32 36 37 35 0A 32 36 37 36 3.2674.2675.2676 +12272: 0A 32 36 37 37 0A 32 36 37 38 0A 32 36 37 39 0A .2677.2678.2679. +12288: 32 36 38 30 0A 32 36 38 31 0A 32 36 38 32 0A 32 2680.2681.2682.2 +12304: 36 38 33 0A 32 36 38 34 0A 32 36 38 35 0A 32 36 683.2684.2685.26 +12320: 38 36 0A 32 36 38 37 0A 32 36 38 38 0A 32 36 38 86.2687.2688.268 +12336: 39 0A 32 36 39 30 0A 32 36 39 31 0A 32 36 39 32 9.2690.2691.2692 +12352: 0A 32 36 39 33 0A 32 36 39 34 0A 32 36 39 35 0A .2693.2694.2695. +12368: 32 36 39 36 0A 32 36 39 37 0A 32 36 39 38 0A 32 2696.2697.2698.2 +12384: 36 39 39 0A 32 37 30 30 0A 32 37 30 31 0A 32 37 699.2700.2701.27 +12400: 30 32 0A 32 37 30 33 0A 32 37 30 34 0A 32 37 30 02.2703.2704.270 +12416: 35 0A 32 37 30 36 0A 32 37 30 37 0A 32 37 30 38 5.2706.2707.2708 +12432: 0A 32 37 30 39 0A 32 37 31 30 0A 32 37 31 31 0A .2709.2710.2711. +12448: 32 37 31 32 0A 32 37 31 33 0A 32 37 31 34 0A 32 2712.2713.2714.2 +12464: 37 31 35 0A 32 37 31 36 0A 32 37 31 37 0A 32 37 715.2716.2717.27 +12480: 31 38 0A 32 37 31 39 0A 32 37 32 30 0A 32 37 32 18.2719.2720.272 +12496: 31 0A 32 37 32 32 0A 32 37 32 33 0A 32 37 32 34 1.2722.2723.2724 +12512: 0A 32 37 32 35 0A 32 37 32 36 0A 32 37 32 37 0A .2725.2726.2727. +12528: 32 37 32 38 0A 32 37 32 39 0A 32 37 33 30 0A 32 2728.2729.2730.2 +12544: 37 33 31 0A 32 37 33 32 0A 32 37 33 33 0A 32 37 731.2732.2733.27 +12560: 33 34 0A 32 37 33 35 0A 32 37 33 36 0A 32 37 33 34.2735.2736.273 +12576: 37 0A 32 37 33 38 0A 32 37 33 39 0A 32 37 34 30 7.2738.2739.2740 +12592: 0A 32 37 34 31 0A 32 37 34 32 0A 32 37 34 33 0A .2741.2742.2743. +12608: 32 37 34 34 0A 32 37 34 35 0A 32 37 34 36 0A 32 2744.2745.2746.2 +12624: 37 34 37 0A 32 37 34 38 0A 32 37 34 39 0A 32 37 747.2748.2749.27 +12640: 35 30 0A 32 37 35 31 0A 32 37 35 32 0A 32 37 35 50.2751.2752.275 +12656: 33 0A 32 37 35 34 0A 32 37 35 35 0A 32 37 35 36 3.2754.2755.2756 +12672: 0A 32 37 35 37 0A 32 37 35 38 0A 32 37 35 39 0A .2757.2758.2759. +12688: 32 37 36 30 0A 32 37 36 31 0A 32 37 36 32 0A 32 2760.2761.2762.2 +12704: 37 36 33 0A 32 37 36 34 0A 32 37 36 35 0A 32 37 763.2764.2765.27 +12720: 36 36 0A 32 37 36 37 0A 32 37 36 38 0A 32 37 36 66.2767.2768.276 +12736: 39 0A 32 37 37 30 0A 32 37 37 31 0A 32 37 37 32 9.2770.2771.2772 +12752: 0A 32 37 37 33 0A 32 37 37 34 0A 32 37 37 35 0A .2773.2774.2775. +12768: 32 37 37 36 0A 32 37 37 37 0A 32 37 37 38 0A 32 2776.2777.2778.2 +12784: 37 37 39 0A 32 37 38 30 0A 32 37 38 31 0A 32 37 779.2780.2781.27 +12800: 38 32 0A 32 37 38 33 0A 32 37 38 34 0A 32 37 38 82.2783.2784.278 +12816: 35 0A 32 37 38 36 0A 32 37 38 37 0A 32 37 38 38 5.2786.2787.2788 +12832: 0A 32 37 38 39 0A 32 37 39 30 0A 32 37 39 31 0A .2789.2790.2791. +12848: 32 37 39 32 0A 32 37 39 33 0A 32 37 39 34 0A 32 2792.2793.2794.2 +12864: 37 39 35 0A 32 37 39 36 0A 32 37 39 37 0A 32 37 795.2796.2797.27 +12880: 39 38 0A 32 37 39 39 0A 32 38 30 30 0A 32 38 30 98.2799.2800.280 +12896: 31 0A 32 38 30 32 0A 32 38 30 33 0A 32 38 30 34 1.2802.2803.2804 +12912: 0A 32 38 30 35 0A 32 38 30 36 0A 32 38 30 37 0A .2805.2806.2807. +12928: 32 38 30 38 0A 32 38 30 39 0A 32 38 31 30 0A 32 2808.2809.2810.2 +12944: 38 31 31 0A 32 38 31 32 0A 32 38 31 33 0A 32 38 811.2812.2813.28 +12960: 31 34 0A 32 38 31 35 0A 32 38 31 36 0A 32 38 31 14.2815.2816.281 +12976: 37 0A 32 38 31 38 0A 32 38 31 39 0A 32 38 32 30 7.2818.2819.2820 +12992: 0A 32 38 32 31 0A 32 38 32 32 0A 32 38 32 33 0A .2821.2822.2823. +13008: 32 38 32 34 0A 32 38 32 35 0A 32 38 32 36 0A 32 2824.2825.2826.2 +13024: 38 32 37 0A 32 38 32 38 0A 32 38 32 39 0A 32 38 827.2828.2829.28 +13040: 33 30 0A 32 38 33 31 0A 32 38 33 32 0A 32 38 33 30.2831.2832.283 +13056: 33 0A 32 38 33 34 0A 32 38 33 35 0A 32 38 33 36 3.2834.2835.2836 +13072: 0A 32 38 33 37 0A 32 38 33 38 0A 32 38 33 39 0A .2837.2838.2839. +13088: 32 38 34 30 0A 32 38 34 31 0A 32 38 34 32 0A 32 2840.2841.2842.2 +13104: 38 34 33 0A 32 38 34 34 0A 32 38 34 35 0A 32 38 843.2844.2845.28 +13120: 34 36 0A 32 38 34 37 0A 32 38 34 38 0A 32 38 34 46.2847.2848.284 +13136: 39 0A 32 38 35 30 0A 32 38 35 31 0A 32 38 35 32 9.2850.2851.2852 +13152: 0A 32 38 35 33 0A 32 38 35 34 0A 32 38 35 35 0A .2853.2854.2855. +13168: 32 38 35 36 0A 32 38 35 37 0A 32 38 35 38 0A 32 2856.2857.2858.2 +13184: 38 35 39 0A 32 38 36 30 0A 32 38 36 31 0A 32 38 859.2860.2861.28 +13200: 36 32 0A 32 38 36 33 0A 32 38 36 34 0A 32 38 36 62.2863.2864.286 +13216: 35 0A 32 38 36 36 0A 32 38 36 37 0A 32 38 36 38 5.2866.2867.2868 +13232: 0A 32 38 36 39 0A 32 38 37 30 0A 32 38 37 31 0A .2869.2870.2871. +13248: 32 38 37 32 0A 32 38 37 33 0A 32 38 37 34 0A 32 2872.2873.2874.2 +13264: 38 37 35 0A 32 38 37 36 0A 32 38 37 37 0A 32 38 875.2876.2877.28 +13280: 37 38 0A 32 38 37 39 0A 32 38 38 30 0A 32 38 38 78.2879.2880.288 +13296: 31 0A 32 38 38 32 0A 32 38 38 33 0A 32 38 38 34 1.2882.2883.2884 +13312: 0A 32 38 38 35 0A 32 38 38 36 0A 32 38 38 37 0A .2885.2886.2887. +13328: 32 38 38 38 0A 32 38 38 39 0A 32 38 39 30 0A 32 2888.2889.2890.2 +13344: 38 39 31 0A 32 38 39 32 0A 32 38 39 33 0A 32 38 891.2892.2893.28 +13360: 39 34 0A 32 38 39 35 0A 32 38 39 36 0A 32 38 39 94.2895.2896.289 +13376: 37 0A 32 38 39 38 0A 32 38 39 39 0A 32 39 30 30 7.2898.2899.2900 +13392: 0A 32 39 30 31 0A 32 39 30 32 0A 32 39 30 33 0A .2901.2902.2903. +13408: 32 39 30 34 0A 32 39 30 35 0A 32 39 30 36 0A 32 2904.2905.2906.2 +13424: 39 30 37 0A 32 39 30 38 0A 32 39 30 39 0A 32 39 907.2908.2909.29 +13440: 31 30 0A 32 39 31 31 0A 32 39 31 32 0A 32 39 31 10.2911.2912.291 +13456: 33 0A 32 39 31 34 0A 32 39 31 35 0A 32 39 31 36 3.2914.2915.2916 +13472: 0A 32 39 31 37 0A 32 39 31 38 0A 32 39 31 39 0A .2917.2918.2919. +13488: 32 39 32 30 0A 32 39 32 31 0A 32 39 32 32 0A 32 2920.2921.2922.2 +13504: 39 32 33 0A 32 39 32 34 0A 32 39 32 35 0A 32 39 923.2924.2925.29 +13520: 32 36 0A 32 39 32 37 0A 32 39 32 38 0A 32 39 32 26.2927.2928.292 +13536: 39 0A 32 39 33 30 0A 32 39 33 31 0A 32 39 33 32 9.2930.2931.2932 +13552: 0A 32 39 33 33 0A 32 39 33 34 0A 32 39 33 35 0A .2933.2934.2935. +13568: 32 39 33 36 0A 32 39 33 37 0A 32 39 33 38 0A 32 2936.2937.2938.2 +13584: 39 33 39 0A 32 39 34 30 0A 32 39 34 31 0A 32 39 939.2940.2941.29 +13600: 34 32 0A 32 39 34 33 0A 32 39 34 34 0A 32 39 34 42.2943.2944.294 +13616: 35 0A 32 39 34 36 0A 32 39 34 37 0A 32 39 34 38 5.2946.2947.2948 +13632: 0A 32 39 34 39 0A 32 39 35 30 0A 32 39 35 31 0A .2949.2950.2951. +13648: 32 39 35 32 0A 32 39 35 33 0A 32 39 35 34 0A 32 2952.2953.2954.2 +13664: 39 35 35 0A 32 39 35 36 0A 32 39 35 37 0A 32 39 955.2956.2957.29 +13680: 35 38 0A 32 39 35 39 0A 32 39 36 30 0A 32 39 36 58.2959.2960.296 +13696: 31 0A 32 39 36 32 0A 32 39 36 33 0A 32 39 36 34 1.2962.2963.2964 +13712: 0A 32 39 36 35 0A 32 39 36 36 0A 32 39 36 37 0A .2965.2966.2967. +13728: 32 39 36 38 0A 32 39 36 39 0A 32 39 37 30 0A 32 2968.2969.2970.2 +13744: 39 37 31 0A 32 39 37 32 0A 32 39 37 33 0A 32 39 971.2972.2973.29 +13760: 37 34 0A 32 39 37 35 0A 32 39 37 36 0A 32 39 37 74.2975.2976.297 +13776: 37 0A 32 39 37 38 0A 32 39 37 39 0A 32 39 38 30 7.2978.2979.2980 +13792: 0A 32 39 38 31 0A 32 39 38 32 0A 32 39 38 33 0A .2981.2982.2983. +13808: 32 39 38 34 0A 32 39 38 35 0A 32 39 38 36 0A 32 2984.2985.2986.2 +13824: 39 38 37 0A 32 39 38 38 0A 32 39 38 39 0A 32 39 987.2988.2989.29 +13840: 39 30 0A 32 39 39 31 0A 32 39 39 32 0A 32 39 39 90.2991.2992.299 +13856: 33 0A 32 39 39 34 0A 32 39 39 35 0A 32 39 39 36 3.2994.2995.2996 +13872: 0A 32 39 39 37 0A 32 39 39 38 0A 32 39 39 39 0A .2997.2998.2999. diff --git a/src/common/io/std.rs b/src/common/io/std.rs new file mode 100644 index 00000000..d58b02f1 --- /dev/null +++ b/src/common/io/std.rs @@ -0,0 +1,155 @@ +//! Common I/O code using sync I/O. + +use std::{ + fs::File, + io::{BufRead, BufReader, BufWriter, Write}, + path::Path, +}; + +use flate2::{bufread::MultiGzDecoder, write::GzEncoder, Compression}; + +/// Returns whether the path looks like a gzip or bgzip file. +pub fn is_gz

(path: P) -> bool +where + P: AsRef, +{ + [Some(Some("gz")), Some(Some("bgz"))].contains(&path.as_ref().extension().map(|s| s.to_str())) +} + +/// Transparently open a file with bgzip encoder for writing. +/// +/// Note that decoding of multi-member gzip files is automatically supported, as is needed for +/// `bgzip`` files. +/// +/// # Arguments +/// +/// * `path` - A path to the file to open. +pub fn open_read_maybe_gz

(path: P) -> Result, anyhow::Error> +where + P: AsRef, +{ + if is_gz(path.as_ref()) { + tracing::trace!("Opening {:?} as gzip for reading", path.as_ref()); + let file = File::open(path)?; + let bufreader = BufReader::new(file); + let decoder = MultiGzDecoder::new(bufreader); + Ok(Box::new(BufReader::new(decoder))) + } else { + tracing::trace!("Opening {:?} as plain text for reading", path.as_ref()); + let file = File::open(path).map(BufReader::new)?; + Ok(Box::new(BufReader::new(file))) + } +} + +/// Transparently open a file with bgzip encoder for writing. +/// +/// Note that decoding of multi-member gzip files is automatically supported, as is needed for +/// `bgzip`` files. +/// +/// # Arguments +/// +/// * `path` - A path to the file to open. +pub fn open_write_maybe_bgzf

(path: P) -> Result, anyhow::Error> +where + P: AsRef, +{ + if path.as_ref().extension().map(|s| s.to_str()) == Some(Some("gz")) { + tracing::trace!("Opening {:?} as gzip for writing", path.as_ref()); + let file = File::create(path)?; + let bufwriter = BufWriter::new(file); + let encoder = GzEncoder::new(bufwriter, Compression::default()); + Ok(Box::new(encoder)) + } else { + tracing::trace!("Opening {:?} as plain text for writing", path.as_ref()); + let file = File::create(path)?; + Ok(Box::new(file)) + } +} + +/// Return `std::io::Lines<>` for buffered reading from a file. +/// +/// The output is wrapped in a Result to allow matching on errors +/// Returns an Iterator to the Reader of the lines of the file. +pub fn read_lines>( + filename: P, +) -> std::io::Result>> +where + P: AsRef, +{ + let file = File::open(filename)?; + Ok(std::io::BufReader::new(file).lines()) +} + +/// Helper function to read a file to a byte vector. +pub fn read_to_bytes

(path: P) -> Result, anyhow::Error> +where + P: AsRef, +{ + use std::io::Read; + + let mut f = std::fs::File::open(&path).expect("no file found"); + let metadata = std::fs::metadata(&path).expect("unable to read metadata"); + let mut buffer = vec![0; metadata.len() as usize]; + f.read_exact(&mut buffer).expect("buffer overflow"); + Ok(buffer) +} + +#[cfg(test)] +mod test { + use std::io::Read; + + #[rstest::rstest] + #[case("14kb.txt")] + #[case("14kb.txt.gz")] + #[case("14kb.txt.bgz")] + fn open_read_maybe_gz(#[case] path: &str) -> Result<(), anyhow::Error> { + crate::common::set_snapshot_suffix!("{}", path); + // Note that the 14kb.txt file contains about 14 KB of data so bgz will have multiple 4KB + // blocks. + + let mut reader = super::open_read_maybe_gz(&format!("tests/common/io/{}", path))?; + let mut buf = Vec::new(); + reader.read_to_end(&mut buf)?; + + insta::assert_snapshot!(String::from_utf8(buf)?); + + Ok(()) + } + + #[rstest::rstest] + #[case("14kb.txt")] + #[case("14kb.txt.gz")] + #[case("14kb.txt.bgz")] + fn open_write_maybe_bgzf(#[case] filename: &str) -> Result<(), anyhow::Error> { + crate::common::set_snapshot_suffix!("{}", filename); + + let tmp_dir = temp_testdir::TempDir::default(); + let tmp_file_path = tmp_dir.join(filename); + + { + let mut writer = super::open_write_maybe_bgzf(&tmp_file_path)?; + for i in 1..3000 { + writer.write_all(format!("{}\n", i).as_bytes())?; + } + + writer.flush()?; + } + std::thread::sleep(std::time::Duration::from_millis(100)); + + let mut buffer: Vec = Vec::new(); + hxdmp::hexdump(&super::read_to_bytes(&tmp_file_path)?, &mut buffer)?; + insta::assert_snapshot!(String::from_utf8_lossy(&buffer)); + + Ok(()) + } + + #[test] + fn read_lines() -> Result<(), anyhow::Error> { + let lines = + super::read_lines("tests/common/io/lines.txt")?.collect::, _>>()?; + + insta::assert_yaml_snapshot!(lines); + + Ok(()) + } +} diff --git a/src/common/io/tokio.rs b/src/common/io/tokio.rs new file mode 100644 index 00000000..2b8e71f5 --- /dev/null +++ b/src/common/io/tokio.rs @@ -0,0 +1,142 @@ +//! Tokio-based async common I/O code. + +use async_compression::tokio::bufread::GzipDecoder; +use noodles_bgzf as bgzf; +use std::path::Path; +use std::pin::Pin; +use tokio::fs::File; +use tokio::io::{AsyncBufRead, AsyncWrite, BufReader, BufWriter}; + +use crate::common::io::std::is_gz; + +/// Transparently open a file with gzip decoder for reading. +/// +/// Note that decoding of multi-member gzip files is automatically supported, as is needed for +/// `bgzip`` files. +/// +/// # Arguments +/// +/// * `path` - A path to the file to open. +pub async fn open_read_maybe_gz

(path: P) -> Result>, anyhow::Error> +where + P: AsRef, +{ + let path_is_gzip = is_gz(path.as_ref()); + tracing::trace!( + "Opening {} as {} for reading (async)", + path.as_ref().display(), + if path_is_gzip { + "gzip (allow multi-member)" + } else { + "plain text" + } + ); + let file = File::open(path.as_ref()) + .await + .map_err(|e| anyhow::anyhow!("could not open file {}: {}", path.as_ref().display(), e))?; + + if path_is_gzip { + let bufreader = BufReader::new(file); + let decoder = { + let mut decoder = GzipDecoder::new(bufreader); + decoder.multiple_members(true); + decoder + }; + Ok(Box::pin(BufReader::new(decoder))) + } else { + Ok(Box::pin(BufReader::new(file))) + } +} + +/// Transparently open a file with bgzip encoder for writing. +/// +/// Note that decoding of multi-member gzip files is automatically supported, as is needed for +/// `bgzip`` files. +/// +/// # Arguments +/// +/// * `path` - A path to the file to open. +pub async fn open_write_maybe_bgzf

(path: P) -> Result>, anyhow::Error> +where + P: AsRef, +{ + let path_is_gzip = is_gz(path.as_ref()); + tracing::trace!( + "Opening {} as {} for writing (async)", + path.as_ref().display(), + if path_is_gzip { + "bgzip (block gzip)" + } else { + "plain text" + } + ); + let file = File::create(path.as_ref()) + .await + .map_err(|e| anyhow::anyhow!("could not open file {}: {}", path.as_ref().display(), e))?; + + if path_is_gzip { + Ok(Box::pin(BufWriter::new( + bgzf::r#async::writer::Writer::new(file), + ))) + } else { + Ok(Box::pin(BufWriter::new(file))) + } +} + +#[cfg(test)] +mod test { + use tokio::io::{AsyncReadExt, AsyncWriteExt}; + + #[rstest::rstest] + #[case("14kb.txt")] + #[case("14kb.txt.gz")] + #[case("14kb.txt.bgz")] + #[tokio::test] + async fn open_read_maybe_gz(#[case] path: &str) -> Result<(), anyhow::Error> { + crate::common::set_snapshot_suffix!("{}", path); + // Note that the 14kb.txt file contains about 14 KB of data so bgz will have multiple 4KB + // blocks. + + let mut reader = super::open_read_maybe_gz(&format!("tests/common/io/{}", path)).await?; + let mut buf = Vec::new(); + reader.read_to_end(&mut buf).await?; + + insta::assert_snapshot!(String::from_utf8(buf)?); + + Ok(()) + } + + #[rstest::rstest] + #[case("14kb.txt")] + #[case("14kb.txt.gz")] + #[case("14kb.txt.bgz")] + #[tokio::test] + async fn open_write_maybe_bgzf(#[case] filename: &str) -> Result<(), anyhow::Error> { + crate::common::set_snapshot_suffix!("{}", filename); + // Note that the 14kb.txt file contains about 14 KB of data so bgz will have multiple 4KB + // blocks. + + let tmp_dir = temp_testdir::TempDir::default(); + let tmp_file_path = tmp_dir.join(filename); + + { + let mut writer = super::open_write_maybe_bgzf(&tmp_file_path).await?; + for i in 1..3000 { + writer.write_all(format!("{}\n", i).as_bytes()).await?; + } + + writer.flush().await?; + writer.shutdown().await?; + } + std::thread::sleep(std::time::Duration::from_millis(100)); + + let mut buffer: Vec = Vec::new(); + hxdmp::hexdump( + &crate::common::io::std::read_to_bytes(&tmp_file_path)?, + &mut buffer, + )?; + insta::assert_snapshot!(String::from_utf8_lossy(&buffer)); + + Ok(()) + } +} diff --git a/src/common.rs b/src/common/mod.rs similarity index 71% rename from src/common.rs rename to src/common/mod.rs index 685452c7..69fc5d0a 100644 --- a/src/common.rs +++ b/src/common/mod.rs @@ -1,17 +1,14 @@ //! Commonly used code. -use std::{ - fs::File, - io::{BufRead, BufReader}, - ops::Range, - path::Path, -}; +use std::ops::Range; use biocommons_bioutils::assemblies::Assembly; use byte_unit::Byte; use clap::Parser; use clap_verbosity_flag::{InfoLevel, Verbosity}; -use flate2::bufread::MultiGzDecoder; + +pub mod io; +pub mod noodles; /// Commonly used command line arguments. #[derive(Parser, Debug)] @@ -98,24 +95,6 @@ pub fn version() -> &'static str { return VERSION; } -/// Transparently open a file with gzip decoder. -pub fn open_read_maybe_gz

(path: P) -> Result, anyhow::Error> -where - P: AsRef, -{ - if path.as_ref().extension().map(|s| s.to_str()) == Some(Some("gz")) { - tracing::trace!("Opening {:?} as gzip for reading", path.as_ref()); - let file = File::open(path)?; - let bufreader = BufReader::new(file); - let decoder = MultiGzDecoder::new(bufreader); - Ok(Box::new(BufReader::new(decoder))) - } else { - tracing::trace!("Opening {:?} as plain text for reading", path.as_ref()); - let file = File::open(path).map(BufReader::new)?; - Ok(Box::new(BufReader::new(file))) - } -} - /// Version information that is returned by the HTTP server. #[derive(serde::Serialize, serde::Deserialize, Default, Debug, Clone)] #[serde_with::skip_serializing_none] @@ -149,26 +128,3 @@ macro_rules! set_snapshot_suffix { } pub use set_snapshot_suffix; - -#[cfg(test)] -mod test { - #[rstest::rstest] - #[case(true)] - #[case(false)] - fn open_read_maybe_gz(#[case] is_gzip: bool) -> Result<(), anyhow::Error> { - crate::common::set_snapshot_suffix!("{:?}", is_gzip); - - let mut f = super::open_read_maybe_gz(if is_gzip { - "tests/common/test.txt.gz" - } else { - "tests/common/test.txt" - })?; - - let mut buf = String::new(); - f.read_to_string(&mut buf)?; - - insta::assert_snapshot!(&buf); - - Ok(()) - } -} diff --git a/src/common/noodles.rs b/src/common/noodles.rs new file mode 100644 index 00000000..7c43b607 --- /dev/null +++ b/src/common/noodles.rs @@ -0,0 +1,43 @@ +//! Helper code for using noodles. + +use futures::future::join_all; +use noodles_vcf as vcf; +use tokio::io::{AsyncBufRead, AsyncWrite}; + +use super::io::{tokio::open_read_maybe_gz, tokio::open_write_maybe_bgzf}; + +/// Alias for the async vcf reader type that we will use. +pub type AsyncVcfReader = vcf::AsyncReader>>; + +/// Helper function that opens one VCF reader at the given path. +pub async fn open_vcf_reader(path_in: &str) -> Result { + Ok(vcf::AsyncReader::new( + open_read_maybe_gz(path_in) + .await + .map_err(|e| anyhow::anyhow!("could not build VCF reader: {}", e))?, + )) +} + +/// Helper function that opens a list of paths as VCF readers. +pub async fn open_vcf_readers(paths: &[String]) -> Result, anyhow::Error> { + Ok(join_all(paths.iter().map(open_read_maybe_gz)) + .await + .into_iter() + .collect::, _>>() + .map_err(|e| anyhow::anyhow!("could not build VCF reader: {}", e))? + .into_iter() + .map(vcf::AsyncReader::new) + .collect::>()) +} + +/// Alias for the async vcf writer that we use. +pub type AsyncVcfWriter = vcf::AsyncWriter>>; + +/// Helper function that opens one VCF write at the given path. +pub async fn open_vcf_writer(path_out: &str) -> Result { + Ok(vcf::AsyncWriter::new( + open_write_maybe_bgzf(path_out) + .await + .map_err(|e| anyhow::anyhow!("could not build VCF writer: {}", e))?, + )) +} diff --git a/src/main.rs b/src/main.rs index 09d92996..7262e2c9 100644 --- a/src/main.rs +++ b/src/main.rs @@ -167,7 +167,8 @@ enum VerifyCommands { Seqvars(verify::seqvars::Args), } -fn main() -> Result<(), anyhow::Error> { +#[tokio::main] +async fn main() -> Result<(), anyhow::Error> { let cli = Cli::parse(); // Build a tracing subscriber according to the configuration in `cli.common`. @@ -185,32 +186,31 @@ fn main() -> Result<(), anyhow::Error> { }) .compact() .finish(); + tracing::subscriber::set_global_default(collector)?; // Install collector and go into sub commands. - tracing::subscriber::with_default(collector, || { - tracing::info!("Mehari startup -- letting the dromedary off the leash..."); - - match &cli.command { - Commands::Db(db) => match &db.command { - DbCommands::Create(db_create) => match &db_create.command { - DbCreateCommands::Txs(args) => db::create::txs::run(&cli.common, args)?, - }, - }, - Commands::Annotate(annotate) => match &annotate.command { - AnnotateCommands::Seqvars(args) => annotate::seqvars::run(&cli.common, args)?, - AnnotateCommands::Strucvars(args) => annotate::strucvars::run(&cli.common, args)?, - }, - Commands::Verify(verify) => match &verify.command { - VerifyCommands::Seqvars(args) => verify::seqvars::run(&cli.common, args)?, - }, - Commands::RunServer(args) => server::run(&cli.common, args)?, - } + tracing::info!("Mehari startup -- letting the dromedary off the leash..."); - tracing::info!("... the dromedary is back in the stable."); - tracing::info!("All done. Have a nice day!"); - - Ok::<(), anyhow::Error>(()) - })?; + match &cli.command { + Commands::Db(db) => match &db.command { + DbCommands::Create(db_create) => match &db_create.command { + DbCreateCommands::Txs(args) => db::create::txs::run(&cli.common, args)?, + }, + }, + Commands::Annotate(annotate) => match &annotate.command { + AnnotateCommands::Seqvars(args) => annotate::seqvars::run(&cli.common, args)?, + AnnotateCommands::Strucvars(args) => { + annotate::strucvars::run(&cli.common, args).await? + } + }, + Commands::Verify(verify) => match &verify.command { + VerifyCommands::Seqvars(args) => verify::seqvars::run(&cli.common, args)?, + }, + Commands::RunServer(args) => server::run(&cli.common, args)?, + } + + tracing::info!("... the dromedary is back in the stable."); + tracing::info!("All done. Have a nice day!"); Ok(()) } diff --git a/tests/common/io/14kb.txt b/tests/common/io/14kb.txt new file mode 100644 index 00000000..1127304b --- /dev/null +++ b/tests/common/io/14kb.txt @@ -0,0 +1,3000 @@ +1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +197 +198 +199 +200 +201 +202 +203 +204 +205 +206 +207 +208 +209 +210 +211 +212 +213 +214 +215 +216 +217 +218 +219 +220 +221 +222 +223 +224 +225 +226 +227 +228 +229 +230 +231 +232 +233 +234 +235 +236 +237 +238 +239 +240 +241 +242 +243 +244 +245 +246 +247 +248 +249 +250 +251 +252 +253 +254 +255 +256 +257 +258 +259 +260 +261 +262 +263 +264 +265 +266 +267 +268 +269 +270 +271 +272 +273 +274 +275 +276 +277 +278 +279 +280 +281 +282 +283 +284 +285 +286 +287 +288 +289 +290 +291 +292 +293 +294 +295 +296 +297 +298 +299 +300 +301 +302 +303 +304 +305 +306 +307 +308 +309 +310 +311 +312 +313 +314 +315 +316 +317 +318 +319 +320 +321 +322 +323 +324 +325 +326 +327 +328 +329 +330 +331 +332 +333 +334 +335 +336 +337 +338 +339 +340 +341 +342 +343 +344 +345 +346 +347 +348 +349 +350 +351 +352 +353 +354 +355 +356 +357 +358 +359 +360 +361 +362 +363 +364 +365 +366 +367 +368 +369 +370 +371 +372 +373 +374 +375 +376 +377 +378 +379 +380 +381 +382 +383 +384 +385 +386 +387 +388 +389 +390 +391 +392 +393 +394 +395 +396 +397 +398 +399 +400 +401 +402 +403 +404 +405 +406 +407 +408 +409 +410 +411 +412 +413 +414 +415 +416 +417 +418 +419 +420 +421 +422 +423 +424 +425 +426 +427 +428 +429 +430 +431 +432 +433 +434 +435 +436 +437 +438 +439 +440 +441 +442 +443 +444 +445 +446 +447 +448 +449 +450 +451 +452 +453 +454 +455 +456 +457 +458 +459 +460 +461 +462 +463 +464 +465 +466 +467 +468 +469 +470 +471 +472 +473 +474 +475 +476 +477 +478 +479 +480 +481 +482 +483 +484 +485 +486 +487 +488 +489 +490 +491 +492 +493 +494 +495 +496 +497 +498 +499 +500 +501 +502 +503 +504 +505 +506 +507 +508 +509 +510 +511 +512 +513 +514 +515 +516 +517 +518 +519 +520 +521 +522 +523 +524 +525 +526 +527 +528 +529 +530 +531 +532 +533 +534 +535 +536 +537 +538 +539 +540 +541 +542 +543 +544 +545 +546 +547 +548 +549 +550 +551 +552 +553 +554 +555 +556 +557 +558 +559 +560 +561 +562 +563 +564 +565 +566 +567 +568 +569 +570 +571 +572 +573 +574 +575 +576 +577 +578 +579 +580 +581 +582 +583 +584 +585 +586 +587 +588 +589 +590 +591 +592 +593 +594 +595 +596 +597 +598 +599 +600 +601 +602 +603 +604 +605 +606 +607 +608 +609 +610 +611 +612 +613 +614 +615 +616 +617 +618 +619 +620 +621 +622 +623 +624 +625 +626 +627 +628 +629 +630 +631 +632 +633 +634 +635 +636 +637 +638 +639 +640 +641 +642 +643 +644 +645 +646 +647 +648 +649 +650 +651 +652 +653 +654 +655 +656 +657 +658 +659 +660 +661 +662 +663 +664 +665 +666 +667 +668 +669 +670 +671 +672 +673 +674 +675 +676 +677 +678 +679 +680 +681 +682 +683 +684 +685 +686 +687 +688 +689 +690 +691 +692 +693 +694 +695 +696 +697 +698 +699 +700 +701 +702 +703 +704 +705 +706 +707 +708 +709 +710 +711 +712 +713 +714 +715 +716 +717 +718 +719 +720 +721 +722 +723 +724 +725 +726 +727 +728 +729 +730 +731 +732 +733 +734 +735 +736 +737 +738 +739 +740 +741 +742 +743 +744 +745 +746 +747 +748 +749 +750 +751 +752 +753 +754 +755 +756 +757 +758 +759 +760 +761 +762 +763 +764 +765 +766 +767 +768 +769 +770 +771 +772 +773 +774 +775 +776 +777 +778 +779 +780 +781 +782 +783 +784 +785 +786 +787 +788 +789 +790 +791 +792 +793 +794 +795 +796 +797 +798 +799 +800 +801 +802 +803 +804 +805 +806 +807 +808 +809 +810 +811 +812 +813 +814 +815 +816 +817 +818 +819 +820 +821 +822 +823 +824 +825 +826 +827 +828 +829 +830 +831 +832 +833 +834 +835 +836 +837 +838 +839 +840 +841 +842 +843 +844 +845 +846 +847 +848 +849 +850 +851 +852 +853 +854 +855 +856 +857 +858 +859 +860 +861 +862 +863 +864 +865 +866 +867 +868 +869 +870 +871 +872 +873 +874 +875 +876 +877 +878 +879 +880 +881 +882 +883 +884 +885 +886 +887 +888 +889 +890 +891 +892 +893 +894 +895 +896 +897 +898 +899 +900 +901 +902 +903 +904 +905 +906 +907 +908 +909 +910 +911 +912 +913 +914 +915 +916 +917 +918 +919 +920 +921 +922 +923 +924 +925 +926 +927 +928 +929 +930 +931 +932 +933 +934 +935 +936 +937 +938 +939 +940 +941 +942 +943 +944 +945 +946 +947 +948 +949 +950 +951 +952 +953 +954 +955 +956 +957 +958 +959 +960 +961 +962 +963 +964 +965 +966 +967 +968 +969 +970 +971 +972 +973 +974 +975 +976 +977 +978 +979 +980 +981 +982 +983 +984 +985 +986 +987 +988 +989 +990 +991 +992 +993 +994 +995 +996 +997 +998 +999 +1000 +1001 +1002 +1003 +1004 +1005 +1006 +1007 +1008 +1009 +1010 +1011 +1012 +1013 +1014 +1015 +1016 +1017 +1018 +1019 +1020 +1021 +1022 +1023 +1024 +1025 +1026 +1027 +1028 +1029 +1030 +1031 +1032 +1033 +1034 +1035 +1036 +1037 +1038 +1039 +1040 +1041 +1042 +1043 +1044 +1045 +1046 +1047 +1048 +1049 +1050 +1051 +1052 +1053 +1054 +1055 +1056 +1057 +1058 +1059 +1060 +1061 +1062 +1063 +1064 +1065 +1066 +1067 +1068 +1069 +1070 +1071 +1072 +1073 +1074 +1075 +1076 +1077 +1078 +1079 +1080 +1081 +1082 +1083 +1084 +1085 +1086 +1087 +1088 +1089 +1090 +1091 +1092 +1093 +1094 +1095 +1096 +1097 +1098 +1099 +1100 +1101 +1102 +1103 +1104 +1105 +1106 +1107 +1108 +1109 +1110 +1111 +1112 +1113 +1114 +1115 +1116 +1117 +1118 +1119 +1120 +1121 +1122 +1123 +1124 +1125 +1126 +1127 +1128 +1129 +1130 +1131 +1132 +1133 +1134 +1135 +1136 +1137 +1138 +1139 +1140 +1141 +1142 +1143 +1144 +1145 +1146 +1147 +1148 +1149 +1150 +1151 +1152 +1153 +1154 +1155 +1156 +1157 +1158 +1159 +1160 +1161 +1162 +1163 +1164 +1165 +1166 +1167 +1168 +1169 +1170 +1171 +1172 +1173 +1174 +1175 +1176 +1177 +1178 +1179 +1180 +1181 +1182 +1183 +1184 +1185 +1186 +1187 +1188 +1189 +1190 +1191 +1192 +1193 +1194 +1195 +1196 +1197 +1198 +1199 +1200 +1201 +1202 +1203 +1204 +1205 +1206 +1207 +1208 +1209 +1210 +1211 +1212 +1213 +1214 +1215 +1216 +1217 +1218 +1219 +1220 +1221 +1222 +1223 +1224 +1225 +1226 +1227 +1228 +1229 +1230 +1231 +1232 +1233 +1234 +1235 +1236 +1237 +1238 +1239 +1240 +1241 +1242 +1243 +1244 +1245 +1246 +1247 +1248 +1249 +1250 +1251 +1252 +1253 +1254 +1255 +1256 +1257 +1258 +1259 +1260 +1261 +1262 +1263 +1264 +1265 +1266 +1267 +1268 +1269 +1270 +1271 +1272 +1273 +1274 +1275 +1276 +1277 +1278 +1279 +1280 +1281 +1282 +1283 +1284 +1285 +1286 +1287 +1288 +1289 +1290 +1291 +1292 +1293 +1294 +1295 +1296 +1297 +1298 +1299 +1300 +1301 +1302 +1303 +1304 +1305 +1306 +1307 +1308 +1309 +1310 +1311 +1312 +1313 +1314 +1315 +1316 +1317 +1318 +1319 +1320 +1321 +1322 +1323 +1324 +1325 +1326 +1327 +1328 +1329 +1330 +1331 +1332 +1333 +1334 +1335 +1336 +1337 +1338 +1339 +1340 +1341 +1342 +1343 +1344 +1345 +1346 +1347 +1348 +1349 +1350 +1351 +1352 +1353 +1354 +1355 +1356 +1357 +1358 +1359 +1360 +1361 +1362 +1363 +1364 +1365 +1366 +1367 +1368 +1369 +1370 +1371 +1372 +1373 +1374 +1375 +1376 +1377 +1378 +1379 +1380 +1381 +1382 +1383 +1384 +1385 +1386 +1387 +1388 +1389 +1390 +1391 +1392 +1393 +1394 +1395 +1396 +1397 +1398 +1399 +1400 +1401 +1402 +1403 +1404 +1405 +1406 +1407 +1408 +1409 +1410 +1411 +1412 +1413 +1414 +1415 +1416 +1417 +1418 +1419 +1420 +1421 +1422 +1423 +1424 +1425 +1426 +1427 +1428 +1429 +1430 +1431 +1432 +1433 +1434 +1435 +1436 +1437 +1438 +1439 +1440 +1441 +1442 +1443 +1444 +1445 +1446 +1447 +1448 +1449 +1450 +1451 +1452 +1453 +1454 +1455 +1456 +1457 +1458 +1459 +1460 +1461 +1462 +1463 +1464 +1465 +1466 +1467 +1468 +1469 +1470 +1471 +1472 +1473 +1474 +1475 +1476 +1477 +1478 +1479 +1480 +1481 +1482 +1483 +1484 +1485 +1486 +1487 +1488 +1489 +1490 +1491 +1492 +1493 +1494 +1495 +1496 +1497 +1498 +1499 +1500 +1501 +1502 +1503 +1504 +1505 +1506 +1507 +1508 +1509 +1510 +1511 +1512 +1513 +1514 +1515 +1516 +1517 +1518 +1519 +1520 +1521 +1522 +1523 +1524 +1525 +1526 +1527 +1528 +1529 +1530 +1531 +1532 +1533 +1534 +1535 +1536 +1537 +1538 +1539 +1540 +1541 +1542 +1543 +1544 +1545 +1546 +1547 +1548 +1549 +1550 +1551 +1552 +1553 +1554 +1555 +1556 +1557 +1558 +1559 +1560 +1561 +1562 +1563 +1564 +1565 +1566 +1567 +1568 +1569 +1570 +1571 +1572 +1573 +1574 +1575 +1576 +1577 +1578 +1579 +1580 +1581 +1582 +1583 +1584 +1585 +1586 +1587 +1588 +1589 +1590 +1591 +1592 +1593 +1594 +1595 +1596 +1597 +1598 +1599 +1600 +1601 +1602 +1603 +1604 +1605 +1606 +1607 +1608 +1609 +1610 +1611 +1612 +1613 +1614 +1615 +1616 +1617 +1618 +1619 +1620 +1621 +1622 +1623 +1624 +1625 +1626 +1627 +1628 +1629 +1630 +1631 +1632 +1633 +1634 +1635 +1636 +1637 +1638 +1639 +1640 +1641 +1642 +1643 +1644 +1645 +1646 +1647 +1648 +1649 +1650 +1651 +1652 +1653 +1654 +1655 +1656 +1657 +1658 +1659 +1660 +1661 +1662 +1663 +1664 +1665 +1666 +1667 +1668 +1669 +1670 +1671 +1672 +1673 +1674 +1675 +1676 +1677 +1678 +1679 +1680 +1681 +1682 +1683 +1684 +1685 +1686 +1687 +1688 +1689 +1690 +1691 +1692 +1693 +1694 +1695 +1696 +1697 +1698 +1699 +1700 +1701 +1702 +1703 +1704 +1705 +1706 +1707 +1708 +1709 +1710 +1711 +1712 +1713 +1714 +1715 +1716 +1717 +1718 +1719 +1720 +1721 +1722 +1723 +1724 +1725 +1726 +1727 +1728 +1729 +1730 +1731 +1732 +1733 +1734 +1735 +1736 +1737 +1738 +1739 +1740 +1741 +1742 +1743 +1744 +1745 +1746 +1747 +1748 +1749 +1750 +1751 +1752 +1753 +1754 +1755 +1756 +1757 +1758 +1759 +1760 +1761 +1762 +1763 +1764 +1765 +1766 +1767 +1768 +1769 +1770 +1771 +1772 +1773 +1774 +1775 +1776 +1777 +1778 +1779 +1780 +1781 +1782 +1783 +1784 +1785 +1786 +1787 +1788 +1789 +1790 +1791 +1792 +1793 +1794 +1795 +1796 +1797 +1798 +1799 +1800 +1801 +1802 +1803 +1804 +1805 +1806 +1807 +1808 +1809 +1810 +1811 +1812 +1813 +1814 +1815 +1816 +1817 +1818 +1819 +1820 +1821 +1822 +1823 +1824 +1825 +1826 +1827 +1828 +1829 +1830 +1831 +1832 +1833 +1834 +1835 +1836 +1837 +1838 +1839 +1840 +1841 +1842 +1843 +1844 +1845 +1846 +1847 +1848 +1849 +1850 +1851 +1852 +1853 +1854 +1855 +1856 +1857 +1858 +1859 +1860 +1861 +1862 +1863 +1864 +1865 +1866 +1867 +1868 +1869 +1870 +1871 +1872 +1873 +1874 +1875 +1876 +1877 +1878 +1879 +1880 +1881 +1882 +1883 +1884 +1885 +1886 +1887 +1888 +1889 +1890 +1891 +1892 +1893 +1894 +1895 +1896 +1897 +1898 +1899 +1900 +1901 +1902 +1903 +1904 +1905 +1906 +1907 +1908 +1909 +1910 +1911 +1912 +1913 +1914 +1915 +1916 +1917 +1918 +1919 +1920 +1921 +1922 +1923 +1924 +1925 +1926 +1927 +1928 +1929 +1930 +1931 +1932 +1933 +1934 +1935 +1936 +1937 +1938 +1939 +1940 +1941 +1942 +1943 +1944 +1945 +1946 +1947 +1948 +1949 +1950 +1951 +1952 +1953 +1954 +1955 +1956 +1957 +1958 +1959 +1960 +1961 +1962 +1963 +1964 +1965 +1966 +1967 +1968 +1969 +1970 +1971 +1972 +1973 +1974 +1975 +1976 +1977 +1978 +1979 +1980 +1981 +1982 +1983 +1984 +1985 +1986 +1987 +1988 +1989 +1990 +1991 +1992 +1993 +1994 +1995 +1996 +1997 +1998 +1999 +2000 +2001 +2002 +2003 +2004 +2005 +2006 +2007 +2008 +2009 +2010 +2011 +2012 +2013 +2014 +2015 +2016 +2017 +2018 +2019 +2020 +2021 +2022 +2023 +2024 +2025 +2026 +2027 +2028 +2029 +2030 +2031 +2032 +2033 +2034 +2035 +2036 +2037 +2038 +2039 +2040 +2041 +2042 +2043 +2044 +2045 +2046 +2047 +2048 +2049 +2050 +2051 +2052 +2053 +2054 +2055 +2056 +2057 +2058 +2059 +2060 +2061 +2062 +2063 +2064 +2065 +2066 +2067 +2068 +2069 +2070 +2071 +2072 +2073 +2074 +2075 +2076 +2077 +2078 +2079 +2080 +2081 +2082 +2083 +2084 +2085 +2086 +2087 +2088 +2089 +2090 +2091 +2092 +2093 +2094 +2095 +2096 +2097 +2098 +2099 +2100 +2101 +2102 +2103 +2104 +2105 +2106 +2107 +2108 +2109 +2110 +2111 +2112 +2113 +2114 +2115 +2116 +2117 +2118 +2119 +2120 +2121 +2122 +2123 +2124 +2125 +2126 +2127 +2128 +2129 +2130 +2131 +2132 +2133 +2134 +2135 +2136 +2137 +2138 +2139 +2140 +2141 +2142 +2143 +2144 +2145 +2146 +2147 +2148 +2149 +2150 +2151 +2152 +2153 +2154 +2155 +2156 +2157 +2158 +2159 +2160 +2161 +2162 +2163 +2164 +2165 +2166 +2167 +2168 +2169 +2170 +2171 +2172 +2173 +2174 +2175 +2176 +2177 +2178 +2179 +2180 +2181 +2182 +2183 +2184 +2185 +2186 +2187 +2188 +2189 +2190 +2191 +2192 +2193 +2194 +2195 +2196 +2197 +2198 +2199 +2200 +2201 +2202 +2203 +2204 +2205 +2206 +2207 +2208 +2209 +2210 +2211 +2212 +2213 +2214 +2215 +2216 +2217 +2218 +2219 +2220 +2221 +2222 +2223 +2224 +2225 +2226 +2227 +2228 +2229 +2230 +2231 +2232 +2233 +2234 +2235 +2236 +2237 +2238 +2239 +2240 +2241 +2242 +2243 +2244 +2245 +2246 +2247 +2248 +2249 +2250 +2251 +2252 +2253 +2254 +2255 +2256 +2257 +2258 +2259 +2260 +2261 +2262 +2263 +2264 +2265 +2266 +2267 +2268 +2269 +2270 +2271 +2272 +2273 +2274 +2275 +2276 +2277 +2278 +2279 +2280 +2281 +2282 +2283 +2284 +2285 +2286 +2287 +2288 +2289 +2290 +2291 +2292 +2293 +2294 +2295 +2296 +2297 +2298 +2299 +2300 +2301 +2302 +2303 +2304 +2305 +2306 +2307 +2308 +2309 +2310 +2311 +2312 +2313 +2314 +2315 +2316 +2317 +2318 +2319 +2320 +2321 +2322 +2323 +2324 +2325 +2326 +2327 +2328 +2329 +2330 +2331 +2332 +2333 +2334 +2335 +2336 +2337 +2338 +2339 +2340 +2341 +2342 +2343 +2344 +2345 +2346 +2347 +2348 +2349 +2350 +2351 +2352 +2353 +2354 +2355 +2356 +2357 +2358 +2359 +2360 +2361 +2362 +2363 +2364 +2365 +2366 +2367 +2368 +2369 +2370 +2371 +2372 +2373 +2374 +2375 +2376 +2377 +2378 +2379 +2380 +2381 +2382 +2383 +2384 +2385 +2386 +2387 +2388 +2389 +2390 +2391 +2392 +2393 +2394 +2395 +2396 +2397 +2398 +2399 +2400 +2401 +2402 +2403 +2404 +2405 +2406 +2407 +2408 +2409 +2410 +2411 +2412 +2413 +2414 +2415 +2416 +2417 +2418 +2419 +2420 +2421 +2422 +2423 +2424 +2425 +2426 +2427 +2428 +2429 +2430 +2431 +2432 +2433 +2434 +2435 +2436 +2437 +2438 +2439 +2440 +2441 +2442 +2443 +2444 +2445 +2446 +2447 +2448 +2449 +2450 +2451 +2452 +2453 +2454 +2455 +2456 +2457 +2458 +2459 +2460 +2461 +2462 +2463 +2464 +2465 +2466 +2467 +2468 +2469 +2470 +2471 +2472 +2473 +2474 +2475 +2476 +2477 +2478 +2479 +2480 +2481 +2482 +2483 +2484 +2485 +2486 +2487 +2488 +2489 +2490 +2491 +2492 +2493 +2494 +2495 +2496 +2497 +2498 +2499 +2500 +2501 +2502 +2503 +2504 +2505 +2506 +2507 +2508 +2509 +2510 +2511 +2512 +2513 +2514 +2515 +2516 +2517 +2518 +2519 +2520 +2521 +2522 +2523 +2524 +2525 +2526 +2527 +2528 +2529 +2530 +2531 +2532 +2533 +2534 +2535 +2536 +2537 +2538 +2539 +2540 +2541 +2542 +2543 +2544 +2545 +2546 +2547 +2548 +2549 +2550 +2551 +2552 +2553 +2554 +2555 +2556 +2557 +2558 +2559 +2560 +2561 +2562 +2563 +2564 +2565 +2566 +2567 +2568 +2569 +2570 +2571 +2572 +2573 +2574 +2575 +2576 +2577 +2578 +2579 +2580 +2581 +2582 +2583 +2584 +2585 +2586 +2587 +2588 +2589 +2590 +2591 +2592 +2593 +2594 +2595 +2596 +2597 +2598 +2599 +2600 +2601 +2602 +2603 +2604 +2605 +2606 +2607 +2608 +2609 +2610 +2611 +2612 +2613 +2614 +2615 +2616 +2617 +2618 +2619 +2620 +2621 +2622 +2623 +2624 +2625 +2626 +2627 +2628 +2629 +2630 +2631 +2632 +2633 +2634 +2635 +2636 +2637 +2638 +2639 +2640 +2641 +2642 +2643 +2644 +2645 +2646 +2647 +2648 +2649 +2650 +2651 +2652 +2653 +2654 +2655 +2656 +2657 +2658 +2659 +2660 +2661 +2662 +2663 +2664 +2665 +2666 +2667 +2668 +2669 +2670 +2671 +2672 +2673 +2674 +2675 +2676 +2677 +2678 +2679 +2680 +2681 +2682 +2683 +2684 +2685 +2686 +2687 +2688 +2689 +2690 +2691 +2692 +2693 +2694 +2695 +2696 +2697 +2698 +2699 +2700 +2701 +2702 +2703 +2704 +2705 +2706 +2707 +2708 +2709 +2710 +2711 +2712 +2713 +2714 +2715 +2716 +2717 +2718 +2719 +2720 +2721 +2722 +2723 +2724 +2725 +2726 +2727 +2728 +2729 +2730 +2731 +2732 +2733 +2734 +2735 +2736 +2737 +2738 +2739 +2740 +2741 +2742 +2743 +2744 +2745 +2746 +2747 +2748 +2749 +2750 +2751 +2752 +2753 +2754 +2755 +2756 +2757 +2758 +2759 +2760 +2761 +2762 +2763 +2764 +2765 +2766 +2767 +2768 +2769 +2770 +2771 +2772 +2773 +2774 +2775 +2776 +2777 +2778 +2779 +2780 +2781 +2782 +2783 +2784 +2785 +2786 +2787 +2788 +2789 +2790 +2791 +2792 +2793 +2794 +2795 +2796 +2797 +2798 +2799 +2800 +2801 +2802 +2803 +2804 +2805 +2806 +2807 +2808 +2809 +2810 +2811 +2812 +2813 +2814 +2815 +2816 +2817 +2818 +2819 +2820 +2821 +2822 +2823 +2824 +2825 +2826 +2827 +2828 +2829 +2830 +2831 +2832 +2833 +2834 +2835 +2836 +2837 +2838 +2839 +2840 +2841 +2842 +2843 +2844 +2845 +2846 +2847 +2848 +2849 +2850 +2851 +2852 +2853 +2854 +2855 +2856 +2857 +2858 +2859 +2860 +2861 +2862 +2863 +2864 +2865 +2866 +2867 +2868 +2869 +2870 +2871 +2872 +2873 +2874 +2875 +2876 +2877 +2878 +2879 +2880 +2881 +2882 +2883 +2884 +2885 +2886 +2887 +2888 +2889 +2890 +2891 +2892 +2893 +2894 +2895 +2896 +2897 +2898 +2899 +2900 +2901 +2902 +2903 +2904 +2905 +2906 +2907 +2908 +2909 +2910 +2911 +2912 +2913 +2914 +2915 +2916 +2917 +2918 +2919 +2920 +2921 +2922 +2923 +2924 +2925 +2926 +2927 +2928 +2929 +2930 +2931 +2932 +2933 +2934 +2935 +2936 +2937 +2938 +2939 +2940 +2941 +2942 +2943 +2944 +2945 +2946 +2947 +2948 +2949 +2950 +2951 +2952 +2953 +2954 +2955 +2956 +2957 +2958 +2959 +2960 +2961 +2962 +2963 +2964 +2965 +2966 +2967 +2968 +2969 +2970 +2971 +2972 +2973 +2974 +2975 +2976 +2977 +2978 +2979 +2980 +2981 +2982 +2983 +2984 +2985 +2986 +2987 +2988 +2989 +2990 +2991 +2992 +2993 +2994 +2995 +2996 +2997 +2998 +2999 +3000 diff --git a/tests/common/io/14kb.txt.bgz b/tests/common/io/14kb.txt.bgz new file mode 120000 index 00000000..5debaa3e --- /dev/null +++ b/tests/common/io/14kb.txt.bgz @@ -0,0 +1 @@ +14kb.txt.gz \ No newline at end of file diff --git a/tests/common/io/14kb.txt.gz b/tests/common/io/14kb.txt.gz new file mode 100644 index 0000000000000000000000000000000000000000..68c68967dab449ef435e6f75b8d50027995a2a8d GIT binary patch literal 5896 zcmZA5`#%#5!}#&*Rw!au7-1%aMdQkGj%BmyDu+!@WhhE=968Le`}UeWYi1#&7}>Z> zCC4zwVvHQO5Q(u(S#p@dlzQ&x`+R?VK0kc^h_^oN$l*W!xBn>o0Y}LF@l_N0vEv_y z+>UYHfM(7-d;K3Sh%x#nOwHs%Ze)>A(!2Z{rxT@peZ}m$Z}Q3FRXGf;Y$SAi0k>+TaBr) zzeYg^K~0e)ueP~JO2{62h-$5cO&YYdUr3?|5Iz#^p7WM`^BtWYw*yU!x3V9i=(W%!(qv zk2(~`g1(}s@+{^NGTzY&zI>;9phRb}Dma<4#PQkJe*MOB+x(Z#>%N3-r#g!9nF#rS za9}`$%KLD=J&tBu(;=rO<*p{hj3&Sk#{k4V4pZ|GMuA8XiJ%F}WffEmaoT~)7qR3Qi7NGjDQx|Cq21=23bt~Z7`#9`kUBf}M>uDjZfjI>t?`~&-0%k6 z4RRF7G_lEfz&lRNLC)onaB3F)Uic%HLL<>}14B>uKMUP8j(ZLK+2jr?%)fB_wjpWw zRP)_fL&~u6x4Q&)DnuRVZj3?tsoT0kF&;ZcSKZ4cCmpF4ta6C~f$AC#K5NJwIDGbR z&*M`A$If0FJAQB%*kodN*DIVhXOen1Bs`z(!MJOk=!R7b9I#D9EU2ZeWUQ$F@a#Pq zcE4eGc18Ca^vAtvBV%6^V9kBM!f0Pa^xt}4Jg(MwIbJaRVz^jC*}3m(1=cp?+&HZL zH>!|-b``@s=f_Q&F<;J;YWZPTS z=Aw1OuD9Uk(siTNLZc*4?}DNg4F|7@f|eCfM?SVNCW*9gs(m;viLziU8_rmvIu~iJ z7^fpci|kjR=^i~EE||$_Vh zNBUp3^@I9*>{eg(D_^T}d}i^ye2qzX<{AyQWpSqu+y3o^nVLRkdubeVPz!8*Vpr=G zO`Cs`S{o9b-|10NYn|d2;u|<^n}S&MP20)XQUC4vx+?5lgJgC`_b2rCz4z6|SDyf1 z-4EbLUq!^+*4yw1e&yv9WxByyd_~!N=jsU7V{wuX>;3J)=O-W2yEMfAA zq)j}zBf&c6*L##otU}xZ-}xuoh9G9&r6iy0M7DoX?JU}4b$tPMmTp$B@{I_dKD?qG z4HvITUds-sCqI-QLm&xi+9h!Wis0WeNyZM8tNW$K07(4{Mq<> zZu)rlb%E8^2^UoO4OAaQ8(1A_llOpsmY6pZR-iWJhT&W)wBG|HOEI5 zPs+bsCp>bE1Y3u5#|~S+^*lQ@cFcNo?CilqU`wRkL$65Mhse~2A(8nVLyU*kclxka zfn&CJI15&3>ly3n2V=e0!kQcAX4iH1pa=J6B8&qffpz!&o1z0a(O2}o4qdGqcMLN9 z8opRZ*==^U1M7x!Vh`)SMK$qbkLiwbn|{n`lt)_6dD_v&Bk#;%?ebp^J(#l!?h9!4 zkF^cvyl+m4J=Zqa_Cd9+Xd}Gq1GuepBVx75D0R%cv1nbxX?&uwWgXO&AJP<)N?N?p zJ{OltS-dHm%UGwnv}mmxXAFk6*snt~hI)ov5+@gwH;rYv8RI=dLDCk?#and4yYI9E z@abn8#)GLuB4h9agLEg!Vq!cUX1OXBB^p?aA#sIR4XyD(ToV>lntv(rwgqW)rI{UT zK^gt@jZMH(&F=uQ#({(WcWklHz@c67Rc!g!WycPS`tq+rLWgTS*j~h4IBfscD{*S! znEmK@;sG1j{@IT06;J#4Ih7p}pWii9!M0B83rPxGuubDECM~(_^D^LD+C5s59``LE zp@E-45(MuEm`^E{IhA>paxTUMvz=+lZQc~?DPj`fqU@sUqDb)G!Ad&#->X)Ulax^B z9k_(dr=7P{>w)aB_%t_5%^uj!H)bi^k{+r+cqF;WETxC45;`QGn1O&EHNwpuGu{jL z2Bn_pooL<*WP@rCQPRqbsh-UaH6?^dQmSW3p_YU!$v7e*M{uI&=#B}$9G;-lqrDT! zFGnQk6U=wsOX8~9sRB*HN6AK2J52y4$aqf7G}M+{&!wGuUKeUhp(l7}vp|3#zzHZq z_Kw;Y;JcU_`wI#Dz(c*DlRNVNkpFrAUrJe+^Q7K0Rfunh=7QK$iucvul2=gQPNo-T zUf3>xU$|a#q~<~mq$aB7L`_f)tS0lq=^7hf1z!_iOaVxo2w6 zl%DB4Q+THNO!b+*ukthcboMlLnmkRPCQZ|(DK>!HIX0-W^JVU3@G?}HTN$zpF;95~ zziJeBGR`p0AkJvx#xwK-w60@Sa61?K1vBkv0xAR2uxuuX$CY~-*$!&)Sm^_35vj77@ zLol`IT1*r=3L`=9GaJ!!5DCL5JV5@`O|9}1s>i?`5g%wqHi1PCdC_(NtO zwvbjx3gkEXDkQF0wb;AZqBy=7TpU{LTD*<^FZ6$5P*r*E+GH!8o5x0iiW4ER(rJtTFf_x|QNhixKDIUGxL=157|wo% z_9yv~OT~eZ28^Jp8<|d7bMf=3t;F=4-&LD2_iMoPxb14rIQbE3Px)Dy$(tFQ0nKd9 zRLr1edS>VRG|hBN4wa~vD3|D#D3)lI0Q{Z(4E(P99j`USAep%+AjwSAAM`x4*0=Uu ztrhwvYXn|GH&gVtc<$`Ci!MQzVEn6oKKU2ipZ;9IANt(U?>D*?-HJ)6T63QvKiBmK zJP-BDs{PE=Vd_+uowub%E6vzE*Y<0v{fyo~w8C3at=ZA)Gn&ui{G4i2F&oTI%397^ z-kRKu@pE&(+1hyYBC8Ye8@y&ZJy{!8MWp@&uFcjiRS{`F^`c#-)uOdqG*6qSID*&yT>ES7$aG%NP)LyC`tu;pnvg+X>^iG8o=$hm7Z*)7l9g|kI>HZt)M(76Q*9ot~WfyEPQ7ryI6&0yYG0`v6D6=U$X7ebj znRlc5ty>Yz1mNXjV{CKN1{h_=_hUXoT_!!z^wKLMMqQ1Xk8_0#Gl`zi@v6e}Q`8_5%3= z@s;u(9#frCmBLD4rd01%?Xq^6bc$V$U7np>+^KoUD}Gc2kISMX$^mgoaXN7d^PaD+ zM78igSB)dfDQ)0+wRx*~rB@|UFL(jfFWrJ^ZK`qSUO`{Qz0!+v;-@k{HT6FIsr|NFBAF`Zxc_rgj@+$eERXy$* zOl;td06D_3~)Fty@p<-PN~jt}76(R148Ec8ZAEM~bybVP}Ym`=2*Yz6SkD+8*UJfQiPxM)v)e1F2y^;>`Zcav&{CkN8^}Bb?mIc4d{>$61leJ_zcdC7)oy+1Cpr!2Yt3fOS*`S0*L3j`6=ZU+GH_pgEP`gC_ zH}~DO+fB(q#30QF^iOY+!aEulg1~1i9{|k30Y}X9fZ0GQkPM^)NkAHqQUWk1mvBek zj0}wQk8nr&Mg~VX&nf=>W)c3^{KNgP`$x=Nn+cz}zRQWe-rD5Y=-AZR*x5vABsBeO z{Cu6>$PH2tDhj$BG!FOz43eC zd)xOa@1gJY_A=&t<|gMX8^gk1_Y>*A6%L?#PO&brM}xTm*UX#z=b~d(+BE;EFbwz) zuwZ-jUyS{t^YOo~oV08MIDu1-IOXYO>rwT{dUQRK9!-x@0dOK$a3|hO3{3P-a3}gE z1}8Z6l#qUlh`?)s;epo!BWAD7hR2Zppa~&>!ErN3rdHr2_Zs= zxb_W(TCL<^drt?{3R}bNaQOXvElTi^)->=JAgW{wLG z)%9PYwrCEwEMG zCa0sngWHjPM}1XuB97q%OH14oc2mCRe9!wXw`x3L&X|QI-~^&>&Mvs#6g$ZdT_#Y! z0_$hlf@K2jtDc1mR?R}YRIXI5RH;;_RH0O}RJBy!Lb;SanmtM#C6CfaNu#t;iaEIc z&-%aWk6;VgEF4mt+XtkXs|LDaPh)Rmwb@pQH-#hI5|X)AAh@2uzQ`V7o8ht!zry*8 zpZEFGUZ@71!$PrfSUt95Vv2B$J41S*6{ugI&PK7hY!jT9sI1?X9-}aOrrrU2fP0C1 znHaY`KhR2!(VbPT55Z=zH-(NuM{(zy6zW%{S=)MDY&&}s_nLBWRA#-Y#SRk@$p^NZ z_Ut7QkrE7O&k5$feDiYPW&ca=%f6R`FF6~OkNt7t)a6uBsxVc&x4b9X6W*gZsc5x61IJx&E6O({($O<~h>;R?GYadmlOu!7PB-c;MP+EiL7VZXoyitGDA zXkDsl=N6y~aSM8Er^J8Cu@hy>n}ds#4Djah&9j?F7mCnFz;FGpjgwH5XbDrismGd#KG;^N8M@y$g&p1;6 zA7vk1AH_;<=Ma47_RjK`!70iuaOLsJvz14ki||jRnSW$T$3%}fEr3a-Nu5cBN-yVN zeB1W=@`u3|$||^0z0$f;*|`*7FU5*G`tHzHRkt$mkEO2StZbRFAP^rW&LYX6f;9ZD z^dkOdw^H}TZnN&_Zk_I{-HzQvJha;`R58>vR4ddz6cB0|sxQFf5qJ*XNQx5C`*rE| z3JGTfuhDq>Iqtc_-+?`#`d1Df|8b#mX{{CbxLr$dkTL`Iw7jybOE-Mwsf`>1YX_2`1Wn$ zfB$oPQ`ke1<;e16a$Cj%^X^%Ef>a>t;mE+frkRubq01T6Enx5LzF;|nwx#FllBwpZ z{aEg?+GC~1I*%0|Yd%(etnaG)m_C_3Nu4B5(kDriv`LC3xcATAzj}{k7Vfj8NHMKX zi)N`B=9+mr^LD28zSZ_k;V8G1WT_Pf?j`JB+#lIDllqHZ^as)#6vCjrj+wuuti$MnxM2~)2p4?vj17S!D;Vr=eB1js4r>u#$`I~ zr*3ZuyC_>ZTX|b@OUAwCnX~)x(yT3gk8auiKg2%rP^8@-f9U@o>(>3_(Eq3J|K0xp DjG|Dn literal 0 HcmV?d00001 diff --git a/tests/common/io/bootstrap.sh b/tests/common/io/bootstrap.sh new file mode 100644 index 00000000..e401ee7f --- /dev/null +++ b/tests/common/io/bootstrap.sh @@ -0,0 +1,13 @@ +#!/usr/bin/env bash + +set -x + +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +cd $SCRIPT_DIR + +rm -rf 14kb.txt 14kb.txt.gz 14kb.txt.bgz + +seq 3000 > 14kb.txt +bgzip -c 14kb.txt >14kb.txt.gz +ln -sr 14kb.txt.gz 14kb.txt.bgz diff --git a/tests/common/io/lines.txt b/tests/common/io/lines.txt new file mode 100644 index 00000000..4cb29ea3 --- /dev/null +++ b/tests/common/io/lines.txt @@ -0,0 +1,3 @@ +one +two +three diff --git a/tests/common/test.txt b/tests/common/io/test.txt similarity index 100% rename from tests/common/test.txt rename to tests/common/io/test.txt diff --git a/tests/common/test.txt.gz b/tests/common/io/test.txt.gz similarity index 100% rename from tests/common/test.txt.gz rename to tests/common/io/test.txt.gz