From bff49c22ec1292313434d430c67d49ba1037b5c3 Mon Sep 17 00:00:00 2001 From: Tobias Schmitz <tobiasschmitz2001@gmail.com> Date: Thu, 26 Nov 2020 00:46:09 +0100 Subject: [PATCH] Embedded artwork support (#101) * Embedded artwork support for mp4 and id3 tags * Embedded artwork support for flac tags. * small fixes * use first embedded artwork for directory * added artwork tests * updated Cargo.lock * use first embedded artwork for missing artworks --- Cargo.lock | 2547 +++++++++-------- Cargo.toml | 2 +- src/artwork.rs | 118 + src/index/metadata.rs | 35 + src/index/test.rs | 31 + src/index/update.rs | 19 +- src/main.rs | 1 + src/thumbnails.rs | 5 +- test-data/artwork/Embedded.png | Bin 0 -> 141 bytes test-data/artwork/Folder.png | Bin 0 -> 103 bytes test-data/artwork/sample.ape | Bin 0 -> 30106 bytes test-data/artwork/sample.flac | Bin 0 -> 39532 bytes test-data/artwork/sample.m4a | Bin 0 -> 5803 bytes test-data/artwork/sample.mp3 | Bin 0 -> 24142 bytes test-data/artwork/sample.ogg | Bin 0 -> 15760 bytes test-data/artwork/sample.opus | Bin 0 -> 7190 bytes .../Tobokegao/Picnic/07 - なぜ (Why).mp3 | Bin 5352 -> 41923 bytes 17 files changed, 1529 insertions(+), 1229 deletions(-) create mode 100644 src/artwork.rs create mode 100644 test-data/artwork/Embedded.png create mode 100644 test-data/artwork/Folder.png create mode 100644 test-data/artwork/sample.ape create mode 100644 test-data/artwork/sample.flac create mode 100644 test-data/artwork/sample.m4a create mode 100644 test-data/artwork/sample.mp3 create mode 100644 test-data/artwork/sample.ogg create mode 100644 test-data/artwork/sample.opus diff --git a/Cargo.lock b/Cargo.lock index e05afbe..d63f96b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,3245 +2,3346 @@ # It is not intended for manual editing. [[package]] name = "addr2line" -version = "0.13.0" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c0929d69e78dd9bf5408269919fcbcaeb2e35e5d43e5815517cdc6a8e11a423" dependencies = [ - "gimli 0.22.0 (registry+https://github.com/rust-lang/crates.io-index)", + "gimli", ] [[package]] name = "adler" version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee2a4ec343196209d6594e19543ae87a39f96d5534d7174822a3ad825dd6ed7e" [[package]] name = "adler32" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" [[package]] name = "aead" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cf01b9b56e767bb57b94ebf91a58b338002963785cdd7013e21c0d4679471e4" dependencies = [ - "generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)", + "generic-array 0.12.3", ] [[package]] name = "aes" version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54eb1d8fe354e5fc611daf4f2ea97dd45a765f4f1e4512306ec183ae2e8f20c9" dependencies = [ - "aes-soft 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "aesni 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "aes-soft", + "aesni", + "block-cipher-trait", ] [[package]] name = "aes-gcm" version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "834a6bda386024dbb7c8fc51322856c10ffe69559f972261c868485f5759c638" dependencies = [ - "aead 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "aes 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", - "ghash 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "subtle 2.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "zeroize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "aead", + "aes", + "block-cipher-trait", + "ghash", + "subtle 2.3.0", + "zeroize", ] [[package]] name = "aes-soft" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfd7e7ae3f9a1fb5c03b389fc6bb9a51400d0c13053f0dca698c832bfd893a0d" dependencies = [ - "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "opaque-debug 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "block-cipher-trait", + "byteorder", + "opaque-debug 0.2.3", ] [[package]] name = "aesni" version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f70a6b5f971e473091ab7cfb5ffac6cde81666c4556751d8d5620ead8abf100" dependencies = [ - "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", - "opaque-debug 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "block-cipher-trait", + "opaque-debug 0.2.3", ] [[package]] name = "aho-corasick" -version = "0.7.13" +version = "0.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7404febffaa47dac81aa44dba71523c9d069b1bdc50a77db41195149e17f68e5" dependencies = [ - "memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr", ] [[package]] name = "anyhow" -version = "1.0.31" +version = "1.0.34" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf8dcb5b4bbaa28653b647d8c77bd4ed40183b48882e130c1f1ffb73de069fd7" [[package]] name = "ape" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ced866a80cef5e2218c00bea8f7cbcc6d3a9b1d358250f8a098b6a3e8db110ed" dependencies = [ - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder", ] [[package]] name = "app_dirs" version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e73a24bad9bd6a94d6395382a6c69fe071708ae4409f763c5475e14ee896313d" dependencies = [ - "ole32-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "shell32-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "xdg 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ole32-sys", + "shell32-sys", + "winapi 0.2.8", + "xdg", ] [[package]] name = "atty" version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" dependencies = [ - "hermit-abi 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "hermit-abi", + "libc", + "winapi 0.3.9", ] [[package]] name = "autocfg" version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2" [[package]] name = "autocfg" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a" [[package]] name = "backtrace" -version = "0.3.50" +version = "0.3.55" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef5140344c85b01f9bbb4d4b7288a8aa4b3287ccef913a14bcc78a1063623598" dependencies = [ - "addr2line 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "miniz_oxide 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "object 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", + "addr2line", + "cfg-if 1.0.0", + "libc", + "miniz_oxide 0.4.3", + "object", + "rustc-demangle", ] [[package]] name = "base-x" -version = "0.2.6" +version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4521f3e3d031370679b3b140beb36dfe4801b09ac77e30c61941f97df3ef28b" [[package]] name = "base64" version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643" dependencies = [ - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "safemem 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder", + "safemem", ] [[package]] name = "base64" version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e" dependencies = [ - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder", ] [[package]] name = "base64" version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" [[package]] name = "bitflags" version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" [[package]] name = "block-buffer" version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b" dependencies = [ - "block-padding 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)", + "block-padding", + "byte-tools", + "byteorder", + "generic-array 0.12.3", ] [[package]] name = "block-buffer" version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" dependencies = [ - "generic-array 0.14.3 (registry+https://github.com/rust-lang/crates.io-index)", + "generic-array 0.14.4", ] [[package]] name = "block-cipher-trait" version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c924d49bd09e7c06003acda26cd9742e796e34282ec6c1189404dee0c1f4774" dependencies = [ - "generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)", + "generic-array 0.12.3", ] [[package]] name = "block-padding" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5" dependencies = [ - "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "byte-tools", ] [[package]] name = "bumpalo" version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e8c087f005730276d1096a652e92a8bacee2e2472bcc9715a74d2bec38b5820" [[package]] name = "byte-tools" version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" [[package]] name = "bytemuck" -version = "1.2.0" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41aa2ec95ca3b5c54cf73c91acf06d24f4495d5f1b1c12506ae3483d646177ac" [[package]] name = "byteorder" version = "1.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de" [[package]] name = "bytes" version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" dependencies = [ - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder", + "either", + "iovec", ] [[package]] name = "bytes" version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38" [[package]] name = "cc" -version = "1.0.58" +version = "1.0.65" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95752358c8f7552394baf48cd82695b345628ad3f170d607de3ca03b8dacca15" [[package]] name = "cfg-if" version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.13" +version = "0.4.19" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73" dependencies = [ - "num-integer 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - "num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", + "libc", + "num-integer", + "num-traits", + "time 0.1.44", + "winapi 0.3.9", ] [[package]] name = "cloudabi" version = "0.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" dependencies = [ - "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bitflags", ] [[package]] name = "cloudabi" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4344512281c643ae7638bbabc3af17a11307803ec8f0fcad9fae512a8bf36467" dependencies = [ - "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bitflags", ] [[package]] name = "color_quant" -version = "1.0.1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" + +[[package]] +name = "const_fn" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c478836e029dcef17fb47c89023448c64f781a046e0300e257ad8225ae59afab" [[package]] name = "cookie" version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5795cda0897252e34380a27baf884c53aa7ad9990329cdad96d4c5d027015d44" dependencies = [ - "aes-gcm 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "base64 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)", - "hkdf 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "hmac 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", - "sha2 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", + "aes-gcm", + "base64 0.12.3", + "hkdf", + "hmac 0.7.1", + "percent-encoding 2.1.0", + "rand 0.7.3", + "sha2 0.8.2", + "time 0.1.44", ] [[package]] name = "cookie" version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "888604f00b3db336d2af898ec3c1d5d0ddf5e6d462220f2ededc33a87ac4bbd5" dependencies = [ - "time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.44", + "url 1.7.2", ] [[package]] name = "cookie" -version = "0.14.2" +version = "0.14.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "784ad0fbab4f3e9cef09f20e0aea6000ae08d2cb98ac4c0abc53df18803d702f" dependencies = [ - "time 0.2.16 (registry+https://github.com/rust-lang/crates.io-index)", - "version_check 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.2.23", + "version_check 0.9.2", ] [[package]] name = "cookie_store" version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46750b3f362965f197996c4448e4a0935e791bf7d6631bfce9ee0af3d24c919c" dependencies = [ - "cookie 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", - "failure 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "publicsuffix 1.5.4 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.56 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - "try_from 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", + "cookie 0.12.0", + "failure", + "idna 0.1.5", + "log 0.4.11", + "publicsuffix", + "serde", + "serde_json", + "time 0.1.44", + "try_from", + "url 1.7.2", ] [[package]] name = "core-foundation" -version = "0.7.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a89e2ae426ea83155dccf10c0fa6b1463ef6d5fcb44cee0b224a408fa640a62" dependencies = [ - "core-foundation-sys 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", + "core-foundation-sys", + "libc", ] [[package]] name = "core-foundation-sys" -version = "0.7.0" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea221b5284a47e40033bf9b66f35f984ec0ea2931eb03505246cd27a963f981b" [[package]] name = "cpuid-bool" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8aebca1129a03dc6dc2b127edd729435bbc4a37e1d5f4d7513165089ceb02634" [[package]] name = "crc32fast" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81156fece84ab6a9f2afdb109ce3ae577e42b1228441eded99bd77f627953b1a" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 1.0.0", ] [[package]] name = "crossbeam-channel" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b153fe7cbef478c567df0f972e02e6d736db11affe43dfc9c56a9374d1adfb87" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.7.2", + "maybe-uninit", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dca26ee1f8d361640700bde38b2c37d8c22b3ce2d360e1fc1c74ea4b0aa7d775" +dependencies = [ + "cfg-if 1.0.0", + "crossbeam-utils 0.8.0", ] [[package]] name = "crossbeam-deque" version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285" dependencies = [ - "crossbeam-epoch 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-epoch 0.8.2", + "crossbeam-utils 0.7.2", + "maybe-uninit", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94af6efb46fef72616855b036a624cf27ba656ffc9be1b9a3c931cfc7749a9a9" +dependencies = [ + "cfg-if 1.0.0", + "crossbeam-epoch 0.9.0", + "crossbeam-utils 0.8.0", ] [[package]] name = "crossbeam-epoch" version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace" dependencies = [ - "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "memoffset 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", - "scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 1.0.1", + "cfg-if 0.1.10", + "crossbeam-utils 0.7.2", + "lazy_static 1.4.0", + "maybe-uninit", + "memoffset", + "scopeguard", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0f606a85340376eef0d6d8fec399e6d4a544d648386c6645eb6d0653b27d9f" +dependencies = [ + "cfg-if 1.0.0", + "const_fn", + "crossbeam-utils 0.8.0", + "lazy_static 1.4.0", + "memoffset", + "scopeguard", ] [[package]] name = "crossbeam-queue" version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.10", + "crossbeam-utils 0.7.2", + "maybe-uninit", ] [[package]] name = "crossbeam-utils" version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8" dependencies = [ - "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 1.0.1", + "cfg-if 0.1.10", + "lazy_static 1.4.0", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec91540d98355f690a86367e566ecad2e9e579f230230eb7c21398372be73ea5" +dependencies = [ + "autocfg 1.0.1", + "cfg-if 1.0.0", + "const_fn", + "lazy_static 1.4.0", ] [[package]] name = "crypto-mac" version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5" dependencies = [ - "generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)", - "subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "generic-array 0.12.3", + "subtle 1.0.0", ] [[package]] name = "crypto-mac" version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" dependencies = [ - "generic-array 0.14.3 (registry+https://github.com/rust-lang/crates.io-index)", - "subtle 2.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "generic-array 0.14.4", + "subtle 2.3.0", ] [[package]] name = "deflate" version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73770f8e1fe7d64df17ca66ad28994a0a623ea497fa69486e14984e715c5d174" dependencies = [ - "adler32 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "adler32", + "byteorder", ] [[package]] name = "devise" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74e04ba2d03c5fa0d954c061fc8c9c288badadffc272ebb87679a89846de3ed3" dependencies = [ - "devise_codegen 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "devise_core 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "devise_codegen", + "devise_core", ] [[package]] name = "devise_codegen" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "066ceb7928ca93a9bedc6d0e612a8a0424048b0ab1f75971b203d01420c055d7" dependencies = [ - "devise_core 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)", + "devise_core", + "quote 0.6.13", ] [[package]] name = "devise_core" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf41c59b22b5e3ec0ea55c7847e5f358d340f3a8d6d53a5cf4f1564967f96487" dependencies = [ - "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)", + "bitflags", + "proc-macro2 0.4.30", + "quote 0.6.13", + "syn 0.15.44", ] [[package]] name = "diesel" version = "1.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e2de9deab977a153492a1468d1b1c0662c1cf39e5ea87d0c060ecd59ef18d8c" dependencies = [ - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "diesel_derives 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libsqlite3-sys 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)", - "r2d2 0.8.9 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder", + "diesel_derives", + "libsqlite3-sys", + "r2d2", ] [[package]] name = "diesel_derives" version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45f5098f628d02a7a0f68ddba586fb61e80edec3bdc1be3b921f4ceec60858d3" dependencies = [ - "proc-macro2 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 1.0.24", + "quote 1.0.7", + "syn 1.0.50", ] [[package]] name = "diesel_migrations" version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf3cde8413353dc7f5d72fa8ce0b99a560a359d2c5ef1e5817ca731cd9008f4c" dependencies = [ - "migrations_internals 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "migrations_macros 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "migrations_internals", + "migrations_macros", ] [[package]] name = "digest" version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5" dependencies = [ - "generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)", + "generic-array 0.12.3", ] [[package]] name = "digest" version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" dependencies = [ - "generic-array 0.14.3 (registry+https://github.com/rust-lang/crates.io-index)", + "generic-array 0.14.4", ] [[package]] name = "discard" version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0" [[package]] name = "dtoa" version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "134951f4028bdadb9b84baf4232681efbf277da25144b9b0ad65df75946c422b" [[package]] name = "either" -version = "1.5.3" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" [[package]] name = "encoding" version = "0.2.33" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b0d943856b990d12d3b55b359144ff341533e516d94098b1d3fc1ac666d36ec" dependencies = [ - "encoding-index-japanese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)", - "encoding-index-korean 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)", - "encoding-index-simpchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)", - "encoding-index-singlebyte 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)", - "encoding-index-tradchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)", + "encoding-index-japanese", + "encoding-index-korean", + "encoding-index-simpchinese", + "encoding-index-singlebyte", + "encoding-index-tradchinese", ] [[package]] name = "encoding-index-japanese" version = "1.20141219.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04e8b2ff42e9a05335dbf8b5c6f7567e5591d0d916ccef4e0b1710d32a0d0c91" dependencies = [ - "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "encoding_index_tests", ] [[package]] name = "encoding-index-korean" version = "1.20141219.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4dc33fb8e6bcba213fe2f14275f0963fd16f0a02c878e3095ecfdf5bee529d81" dependencies = [ - "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "encoding_index_tests", ] [[package]] name = "encoding-index-simpchinese" version = "1.20141219.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d87a7194909b9118fc707194baa434a4e3b0fb6a5a757c73c3adb07aa25031f7" dependencies = [ - "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "encoding_index_tests", ] [[package]] name = "encoding-index-singlebyte" version = "1.20141219.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3351d5acffb224af9ca265f435b859c7c01537c0849754d3db3fdf2bfe2ae84a" dependencies = [ - "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "encoding_index_tests", ] [[package]] name = "encoding-index-tradchinese" version = "1.20141219.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd0e20d5688ce3cab59eb3ef3a2083a5c77bf496cb798dc6fcdb75f323890c18" dependencies = [ - "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "encoding_index_tests", ] [[package]] name = "encoding_index_tests" version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569" [[package]] name = "encoding_rs" -version = "0.8.23" +version = "0.8.26" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "801bbab217d7f79c0062f4f7205b5d4427c6d1a7bd7aafdd1475f7c59d62b283" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 1.0.0", ] [[package]] name = "error-chain" -version = "0.12.2" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d2f06b9cac1506ece98fe3231e3cc9c4410ec3d5b1f24ae1c8946f0742cdefc" dependencies = [ - "version_check 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "version_check 0.9.2", ] [[package]] name = "failure" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86" dependencies = [ - "backtrace 0.3.50 (registry+https://github.com/rust-lang/crates.io-index)", - "failure_derive 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace", + "failure_derive", ] [[package]] name = "failure_derive" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4" dependencies = [ - "proc-macro2 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)", - "synstructure 0.12.4 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 1.0.24", + "quote 1.0.7", + "syn 1.0.50", + "synstructure", ] [[package]] name = "fake-simd" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" [[package]] name = "filetime" -version = "0.2.10" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c122a393ea57648015bf06fbd3d372378992e86b9ff5a7a497b076a28c79efe" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.57 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 1.0.0", + "libc", + "redox_syscall", + "winapi 0.3.9", ] [[package]] name = "flame" version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fc2706461e1ee94f55cab2ed2e3d34ae9536cfa830358ef80acff1a3dacab30" dependencies = [ - "lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.56 (registry+https://github.com/rust-lang/crates.io-index)", - "thread-id 3.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 0.2.11", + "serde", + "serde_derive", + "serde_json", + "thread-id", ] [[package]] name = "flamer" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36b732da54fd4ea34452f2431cf464ac7be94ca4b339c9cd3d3d12eb06fe7aab" dependencies = [ - "flame 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)", + "flame", + "quote 1.0.7", + "syn 1.0.50", ] [[package]] name = "flate2" -version = "1.0.16" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7411863d55df97a419aa64cb4d2f167103ea9d767e2c54a1868b7ac3f6b47129" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "miniz_oxide 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 1.0.0", + "crc32fast", + "libc", + "miniz_oxide 0.4.3", ] [[package]] name = "fnv" version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "foreign-types" version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" dependencies = [ - "foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "foreign-types-shared", ] [[package]] name = "foreign-types-shared" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" + +[[package]] +name = "form_urlencoded" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ece68d15c92e84fa4f19d3780f1294e5ca82a78a6d515f1efaabcc144688be00" +dependencies = [ + "matches", + "percent-encoding 2.1.0", +] [[package]] name = "fsevent" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ab7d1bd1bd33cc98b0889831b72da23c0aa4df9cec7e0702f46ecea04b35db6" dependencies = [ - "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "fsevent-sys 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bitflags", + "fsevent-sys", ] [[package]] name = "fsevent-sys" version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f41b048a94555da0f42f1d632e2e19510084fb8e303b0daa2816e733fb3644a0" dependencies = [ - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", + "libc", ] [[package]] name = "fuchsia-cprng" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" [[package]] name = "fuchsia-zircon" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" dependencies = [ - "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "bitflags", + "fuchsia-zircon-sys", ] [[package]] name = "fuchsia-zircon-sys" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" [[package]] name = "futures" -version = "0.1.29" +version = "0.1.30" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c7e4c2612746b0df8fed4ce0c69156021b704c9aefa360311c04e6e9e002eed" [[package]] name = "futures-cpupool" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4" dependencies = [ - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)", + "futures", + "num_cpus", ] [[package]] name = "gcc" version = "0.3.55" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2" [[package]] name = "generic-array" version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec" dependencies = [ - "typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "typenum", ] [[package]] name = "generic-array" -version = "0.14.3" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "501466ecc8a30d1d3b7fc9229b122b2ce8ed6e9d9223f1138d4babb253e51817" dependencies = [ - "typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)", - "version_check 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "typenum", + "version_check 0.9.2", ] [[package]] name = "getopts" version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5" dependencies = [ - "unicode-width 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "unicode-width", ] [[package]] name = "getrandom" -version = "0.1.14" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc587bc0ec293155d5bfa6b9891ec18a1e330c234f896ea47fbada4cadbe47e6" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "wasi 0.9.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.10", + "libc", + "wasi 0.9.0+wasi-snapshot-preview1", ] [[package]] name = "ghash" version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f0930ed19a7184089ea46d2fedead2f6dc2b674c5db4276b7da336c7cd83252" dependencies = [ - "polyval 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "polyval", ] [[package]] name = "gif" -version = "0.10.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02efba560f227847cb41463a7395c514d127d4f74fff12ef0137fff1b84b96c4" dependencies = [ - "color_quant 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "color_quant", + "weezl", ] [[package]] name = "gimli" -version = "0.22.0" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6503fe142514ca4799d4c26297c4248239fe8838d827db6bd6065c6ed29a6ce" [[package]] name = "glob" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574" [[package]] name = "h2" version = "0.1.26" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5b34c246847f938a410a03c5458c7fee2274436675e76d8b903c08efc29c462" dependencies = [ - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "fnv 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "indexmap 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "string 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder", + "bytes 0.4.12", + "fnv", + "futures", + "http 0.1.21", + "indexmap", + "log 0.4.11", + "slab", + "string", + "tokio-io", ] [[package]] name = "hashbrown" -version = "0.8.1" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", -] +checksum = "d7afe4a420e3fe79967a00898cc1f4db7c8a49a9333a29f8a4bd76a253d5cd04" [[package]] name = "hermit-abi" -version = "0.1.15" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5aca5565f760fb5b220e499d72710ed156fdb74e631659e99377d9ebfbd13ae8" dependencies = [ - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", + "libc", ] [[package]] name = "hex" version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "644f9158b2f133fd50f5fb3242878846d9eb792e445c893805ff0e3824006e35" [[package]] name = "hkdf" version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fa08a006102488bd9cd5b8013aabe84955cf5ae22e304c2caf655b633aefae3" dependencies = [ - "digest 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", - "hmac 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "digest 0.8.1", + "hmac 0.7.1", ] [[package]] name = "hmac" version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5dcb5e64cda4c23119ab41ba960d1e170a774c8e4b9d9e6a9bc18aabf5e59695" dependencies = [ - "crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "digest 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crypto-mac 0.7.0", + "digest 0.8.1", ] [[package]] name = "hmac" version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840" dependencies = [ - "crypto-mac 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "digest 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "crypto-mac 0.8.0", + "digest 0.9.0", ] [[package]] name = "http" version = "0.1.21" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6ccf5ede3a895d8856620237b2f02972c1bbc78d2965ad7fe8838d4a0ed41f0" dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "fnv 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12", + "fnv", + "itoa", ] [[package]] name = "http" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28d569972648b2c512421b5f2a405ad6ac9666547189d0c5477a3f200f3e02f9" dependencies = [ - "bytes 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", - "fnv 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.5.6", + "fnv", + "itoa", ] [[package]] name = "http-body" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6741c859c1b2463a423a1dbce98d418e6c3c3fc720fb0d45528657320920292d" dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-buf 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12", + "futures", + "http 0.1.21", + "tokio-buf", ] [[package]] name = "httparse" version = "1.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9" [[package]] name = "hyper" version = "0.10.16" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a0652d9a2609a968c14be1a9ea00bf4b1d64e2e1f53a1b51b6fff3a6e829273" dependencies = [ - "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)", - "httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "mime 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - "traitobject 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "typeable 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", + "base64 0.9.3", + "httparse", + "language-tags", + "log 0.3.9", + "mime 0.2.6", + "num_cpus", + "time 0.1.44", + "traitobject", + "typeable", + "unicase 1.4.2", + "url 1.7.2", ] [[package]] name = "hyper" version = "0.12.35" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9dbe6ed1438e1f8ad955a4701e9a944938e9519f6888d12d8558b645e247d5f6" dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "h2 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "http-body 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "net2 0.2.34 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-buf 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tcp 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", - "want 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12", + "futures", + "futures-cpupool", + "h2", + "http 0.1.21", + "http-body", + "httparse", + "iovec", + "itoa", + "log 0.4.11", + "net2", + "rustc_version", + "time 0.1.44", + "tokio", + "tokio-buf", + "tokio-executor", + "tokio-io", + "tokio-reactor", + "tokio-tcp", + "tokio-threadpool", + "tokio-timer", + "want", ] [[package]] name = "hyper-tls" version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a800d6aa50af4b5850b2b0f659625ce9504df908e9733b635720483be26174f" dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.12.35 (registry+https://github.com/rust-lang/crates.io-index)", - "native-tls 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12", + "futures", + "hyper 0.12.35", + "native-tls", + "tokio-io", ] [[package]] name = "id3" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02c11bb50ce1568516aefbe4b6564c3feaf15a8e5ccbea90fa652012446ae9bf" dependencies = [ - "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "flate2 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "bitflags", + "byteorder", + "encoding", + "flate2", + "lazy_static 1.4.0", ] [[package]] name = "idna" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" dependencies = [ - "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-normalization 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", + "matches", + "unicode-bidi", + "unicode-normalization", ] [[package]] name = "idna" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02e2673c30ee86b5b96a9cb52ad15718aa1f966f5ab9ad54a8b95d5ca33120a9" dependencies = [ - "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-normalization 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", + "matches", + "unicode-bidi", + "unicode-normalization", ] [[package]] name = "image" -version = "0.23.7" +version = "0.23.12" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ce04077ead78e39ae8610ad26216aed811996b043d47beed5090db674f9e9b5" dependencies = [ - "bytemuck 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "gif 0.10.3 (registry+https://github.com/rust-lang/crates.io-index)", - "jpeg-decoder 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)", - "num-iter 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)", - "num-rational 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)", - "png 0.16.7 (registry+https://github.com/rust-lang/crates.io-index)", - "scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tiff 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "bytemuck", + "byteorder", + "color_quant", + "gif", + "jpeg-decoder", + "num-iter", + "num-rational", + "num-traits", + "png", + "scoped_threadpool", + "tiff", ] [[package]] name = "indexmap" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55e2e4c765aa53a0424761bf9f41aa7a6ac1efa87238f59560640e27fca028f2" dependencies = [ - "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "hashbrown 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 1.0.1", + "hashbrown", ] [[package]] name = "inotify" version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4816c66d2c8ae673df83366c18341538f234a26d65a9ecea5c348b453ac1d02f" dependencies = [ - "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "inotify-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", + "bitflags", + "inotify-sys", + "libc", ] [[package]] name = "inotify-sys" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4563555856585ab3180a5bf0b2f9f8d301a728462afffc8195b3f5394229c55" dependencies = [ - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", + "libc", ] [[package]] name = "instant" -version = "0.1.6" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61124eeebbd69b8190558df225adf7e4caafce0d743919e5d6b19652314ec5ec" +dependencies = [ + "cfg-if 1.0.0", +] [[package]] name = "iovec" version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e" dependencies = [ - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", + "libc", ] [[package]] name = "itoa" version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6" [[package]] name = "jpeg-decoder" version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc797adac5f083b8ff0ca6f6294a999393d76e197c36488e2ef732c4715f6fa3" dependencies = [ - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "rayon 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder", + "rayon", ] [[package]] name = "kernel32-sys" version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" dependencies = [ - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.2.8", + "winapi-build", ] [[package]] name = "language-tags" version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" [[package]] name = "lazy_static" version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73" [[package]] name = "lazy_static" version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "lazycell" -version = "1.2.1" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "lewton" version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be42bea7971f4ba0ea1e215730c29bc1ff9bd2a9c10013912f42a8dcf8d77c0d" dependencies = [ - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "ogg 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tinyvec 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder", + "ogg", + "tinyvec 0.3.4", ] [[package]] name = "libc" -version = "0.2.73" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d58d1b70b004888f764dfbf6a26a3b0342a1632d33968e4a179d8011c760614" [[package]] name = "libsqlite3-sys" version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e5b95e89c330291768dc840238db7f9e204fd208511ab6319b56193a7f2ae25" dependencies = [ - "cc 1.0.58 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)", - "vcpkg 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "cc", + "pkg-config", + "vcpkg", ] [[package]] name = "lock_api" version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4da24a77a3d8a6d4862d95f72e6fdb9c09a643ecdb402d754004a557f2bec75" dependencies = [ - "scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "scopeguard", ] [[package]] name = "lock_api" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd96ffd135b2fd7b973ac026d28085defbe8983df057ced3eb4f2130b0831312" dependencies = [ - "scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "scopeguard", ] [[package]] name = "log" version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b" dependencies = [ - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.11", ] [[package]] name = "log" version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.10", ] -[[package]] -name = "lzw" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - [[package]] name = "matches" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" [[package]] name = "maybe-uninit" version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" [[package]] name = "md5" -version = "0.6.1" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "490cc448043f947bae3cbee9c203358d62dbee0db12107a74be5c30ccfd09771" [[package]] name = "memchr" -version = "2.3.3" +version = "2.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525" [[package]] name = "memoffset" -version = "0.5.5" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "043175f069eda7b85febe4a74abbaeff828d9f8b448515d3151a14a3542811aa" dependencies = [ - "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 1.0.1", ] [[package]] name = "metaflac" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4685bf0039a9d2919c2dbb281cba1c58d168dce58f519cbd70c468ce2c36a748" dependencies = [ - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "hex 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder", + "hex", + "log 0.4.11", ] [[package]] name = "migrations_internals" version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b4fc84e4af020b837029e017966f86a1c2d5e83e64b589963d5047525995860" dependencies = [ - "diesel 1.4.5 (registry+https://github.com/rust-lang/crates.io-index)", + "diesel", ] [[package]] name = "migrations_macros" version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9753f12909fd8d923f75ae5c3258cae1ed3c8ec052e1b38c93c21a6d157f789c" dependencies = [ - "migrations_internals 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)", + "migrations_internals", + "proc-macro2 1.0.24", + "quote 1.0.7", + "syn 1.0.50", ] [[package]] name = "mime" version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba626b8a6de5da682e1caa06bdb42a335aee5a84db8e5046a3e8ab17ba0a3ae0" dependencies = [ - "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.3.9", ] [[package]] name = "mime" version = "0.3.16" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" [[package]] name = "mime_guess" version = "2.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2684d4c2e97d99848d30b324b00c8fcc7e5c897b7cbb5819b09e7c90e8baf212" dependencies = [ - "mime 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)", - "unicase 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "mime 0.3.16", + "unicase 2.6.0", ] [[package]] name = "miniz_oxide" version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435" dependencies = [ - "adler32 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "adler32", ] [[package]] name = "miniz_oxide" -version = "0.4.0" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f2d26ec3309788e423cfbf68ad1800f061638098d76a83681af979dc4eda19d" dependencies = [ - "adler 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "adler", + "autocfg 1.0.1", ] [[package]] name = "mio" version = "0.6.22" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fce347092656428bc8eaf6201042cb551b8d67855af7374542a92a0fbfcac430" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "net2 0.2.34 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.10", + "fuchsia-zircon", + "fuchsia-zircon-sys", + "iovec", + "kernel32-sys", + "libc", + "log 0.4.11", + "miow", + "net2", + "slab", + "winapi 0.2.8", ] [[package]] name = "mio-extras" version = "2.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52403fe290012ce777c4626790c8951324a2b9e3316b3143779c72b029742f19" dependencies = [ - "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.22 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "lazycell", + "log 0.4.11", + "mio", + "slab", ] [[package]] name = "miow" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" dependencies = [ - "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "net2 0.2.34 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "kernel32-sys", + "net2", + "winapi 0.2.8", + "ws2_32-sys", ] [[package]] name = "mp3-duration" version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "348bdc7300502f0801e5b57c448815713cd843b744ef9bda252a2698fdf90a0f" dependencies = [ - "thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "thiserror", ] [[package]] name = "mp4ameta" -version = "0.4.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d43d4114a72b4a4a1196473852cd4fb592b45968c57a78be63a98b28749ae31" dependencies = [ - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.4.0", + "mp4ameta_proc", ] [[package]] -name = "native-tls" -version = "0.2.4" +name = "mp4ameta_proc" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b78760a249b7611363d02cfbd56974e1957faf2caa4fce36d4207b7edc803b1" + +[[package]] +name = "native-tls" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fcc7939b5edc4e4f86b1b4a04bb1498afaaf871b1a6691838ed06fcb48d3a3f" dependencies = [ - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl 0.10.30 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.58 (registry+https://github.com/rust-lang/crates.io-index)", - "schannel 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)", - "security-framework 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)", - "security-framework-sys 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.4.0", + "libc", + "log 0.4.11", + "openssl", + "openssl-probe", + "openssl-sys", + "schannel", + "security-framework", + "security-framework-sys", + "tempfile", ] [[package]] name = "net2" -version = "0.2.34" +version = "0.2.35" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ebc3ec692ed7c9a255596c67808dee269f64655d8baf7b4f0638e51ba1d6853" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.10", + "libc", + "winapi 0.3.9", ] [[package]] name = "notify" version = "4.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80ae4a7688d1fab81c5bf19c64fc8db920be8d519ce6336ed4e7efe024724dbd" dependencies = [ - "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "filetime 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", - "fsevent 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "fsevent-sys 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "inotify 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.22 (registry+https://github.com/rust-lang/crates.io-index)", - "mio-extras 2.0.6 (registry+https://github.com/rust-lang/crates.io-index)", - "walkdir 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "bitflags", + "filetime", + "fsevent", + "fsevent-sys", + "inotify", + "libc", + "mio", + "mio-extras", + "walkdir", + "winapi 0.3.9", ] [[package]] name = "num-integer" -version = "0.1.43" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db" dependencies = [ - "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 1.0.1", + "num-traits", ] [[package]] name = "num-iter" -version = "0.1.41" +version = "0.1.42" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2021c8337a54d21aca0d59a92577a029af9431cb59b909b03252b9c164fad59" dependencies = [ - "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "num-integer 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - "num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 1.0.1", + "num-integer", + "num-traits", ] [[package]] name = "num-rational" -version = "0.3.0" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07" dependencies = [ - "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "num-integer 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - "num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 1.0.1", + "num-integer", + "num-traits", ] [[package]] name = "num-traits" -version = "0.2.12" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290" dependencies = [ - "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 1.0.1", ] [[package]] name = "num_cpus" version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3" dependencies = [ - "hermit-abi 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", + "hermit-abi", + "libc", ] [[package]] name = "object" -version = "0.20.0" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d3b63360ec3cb337817c2dbd47ab4a0f170d285d8e5a2064600f3def1402397" [[package]] name = "ogg" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13e571c3517af9e1729d4c63571a27edd660ade0667973bfc74a67c660c2b651" dependencies = [ - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder", ] [[package]] name = "ole32-sys" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d2c49021782e5233cd243168edfa8037574afed4eba4bbaf538b3d8d1789d8c" dependencies = [ - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.2.8", + "winapi-build", ] [[package]] name = "opaque-debug" version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c" [[package]] name = "opaque-debug" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] name = "openssl" version = "0.10.30" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d575eff3665419f9b83678ff2815858ad9d11567e082f5ac1814baba4e2bcb4" dependencies = [ - "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.58 (registry+https://github.com/rust-lang/crates.io-index)", + "bitflags", + "cfg-if 0.1.10", + "foreign-types", + "lazy_static 1.4.0", + "libc", + "openssl-sys", ] [[package]] name = "openssl-probe" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" [[package]] name = "openssl-sys" version = "0.9.58" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a842db4709b604f0fe5d1170ae3565899be2ad3d9cbc72dedc789ac0511f78de" dependencies = [ - "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "cc 1.0.58 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)", - "vcpkg 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 1.0.1", + "cc", + "libc", + "pkg-config", + "vcpkg", ] [[package]] name = "opus_headers" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afbb993947f111397c2bc536944f8dac7f54a4e73383d478efe1990b56404b60" [[package]] name = "parking_lot" version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252" dependencies = [ - "lock_api 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot_core 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "lock_api 0.3.4", + "parking_lot_core 0.6.2", + "rustc_version", ] [[package]] name = "parking_lot" -version = "0.11.0" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb" dependencies = [ - "instant 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "lock_api 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot_core 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "instant", + "lock_api 0.4.2", + "parking_lot_core 0.8.0", ] [[package]] name = "parking_lot_core" version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.57 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.10", + "cloudabi 0.0.3", + "libc", + "redox_syscall", + "rustc_version", + "smallvec 0.6.13", + "winapi 0.3.9", ] [[package]] name = "parking_lot_core" version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c361aa727dd08437f2f1447be8b59a33b0edd15e0fcee698f935613d9efbca9b" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "cloudabi 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "instant 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.57 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.10", + "cloudabi 0.1.0", + "instant", + "libc", + "redox_syscall", + "smallvec 1.5.0", + "winapi 0.3.9", ] [[package]] name = "pbkdf2" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "216eaa586a190f0a738f2f918511eecfa90f13295abec0e457cdebcceda80cbd" dependencies = [ - "base64 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)", - "crypto-mac 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "hmac 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "sha2 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", - "subtle 2.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "base64 0.12.3", + "crypto-mac 0.8.0", + "hmac 0.8.1", + "rand 0.7.3", + "rand_core 0.5.1", + "sha2 0.9.2", + "subtle 2.3.0", ] [[package]] name = "pear" version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5320f212db967792b67cfe12bd469d08afd6318a249bd917d5c19bc92200ab8a" dependencies = [ - "pear_codegen 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "pear_codegen", ] [[package]] name = "pear_codegen" version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfc1c836fdc3d1ef87c348b237b5b5c4dff922156fb2d968f57734f9669768ca" dependencies = [ - "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)", - "version_check 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "yansi 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.30", + "quote 0.6.13", + "syn 0.15.44", + "version_check 0.9.2", + "yansi", ] [[package]] name = "percent-encoding" version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" [[package]] name = "percent-encoding" version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" [[package]] name = "pkg-config" -version = "0.3.18" +version = "0.3.19" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c" [[package]] name = "png" version = "0.16.7" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfe7f9f1c730833200b134370e1d5098964231af8450bce9b78ee3ab5278b970" dependencies = [ - "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "deflate 0.8.6 (registry+https://github.com/rust-lang/crates.io-index)", - "miniz_oxide 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", + "bitflags", + "crc32fast", + "deflate", + "miniz_oxide 0.3.7", ] [[package]] name = "polaris" version = "0.12.4" dependencies = [ - "anyhow 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)", - "ape 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "app_dirs 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "base64 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)", - "cookie 0.14.2 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-channel 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", - "diesel 1.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "diesel_migrations 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "flame 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "flamer 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "getopts 0.2.21 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "id3 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "image 0.23.7 (registry+https://github.com/rust-lang/crates.io-index)", - "lewton 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libsqlite3-sys 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "metaflac 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "mp3-duration 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "mp4ameta 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "opus_headers 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "pbkdf2 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", - "rayon 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "reqwest 0.9.24 (registry+https://github.com/rust-lang/crates.io-index)", - "rocket 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "rocket_contrib 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "rust-crypto 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)", - "rustfm-scrobble 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "sd-notify 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.56 (registry+https://github.com/rust-lang/crates.io-index)", - "simplelog 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - "toml 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", - "unix-daemonize 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "url 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "uuid 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "anyhow", + "ape", + "app_dirs", + "base64 0.12.3", + "cookie 0.14.3", + "crossbeam-channel 0.4.4", + "diesel", + "diesel_migrations", + "flame", + "flamer", + "getopts", + "http 0.2.1", + "id3", + "image", + "lewton", + "libsqlite3-sys", + "log 0.4.11", + "metaflac", + "mp3-duration", + "mp4ameta", + "opus_headers", + "pbkdf2", + "percent-encoding 2.1.0", + "rand 0.7.3", + "rayon", + "regex", + "reqwest", + "rocket", + "rocket_contrib", + "rust-crypto", + "rustfm-scrobble", + "sd-notify", + "serde", + "serde_derive", + "serde_json", + "simplelog", + "thiserror", + "time 0.1.44", + "toml 0.5.7", + "unix-daemonize", + "url 2.2.0", + "uuid 0.8.1", + "winapi 0.3.9", ] [[package]] name = "polyval" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ec3341498978de3bfd12d1b22f1af1de22818f5473a11e8a6ef997989e3a212" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "universal-hash 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.10", + "universal-hash", ] [[package]] name = "ppv-lite86" -version = "0.2.8" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857" [[package]] name = "proc-macro-hack" -version = "0.5.16" +version = "0.5.19" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" [[package]] name = "proc-macro2" version = "0.4.30" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759" dependencies = [ - "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "unicode-xid 0.1.0", ] [[package]] name = "proc-macro2" -version = "1.0.19" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e0704ee1a7e00d7bb417d0770ea303c1bccbabf0ef1667dae92b5967f5f8a71" dependencies = [ - "unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "unicode-xid 0.2.1", ] [[package]] name = "publicsuffix" version = "1.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bbaa49075179162b49acac1c6aa45fb4dafb5f13cf6794276d77bc7fd95757b" dependencies = [ - "error-chain 0.12.2 (registry+https://github.com/rust-lang/crates.io-index)", - "idna 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "url 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "error-chain", + "idna 0.2.0", + "lazy_static 1.4.0", + "regex", + "url 2.2.0", ] [[package]] name = "quote" version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a" [[package]] name = "quote" version = "0.6.13" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1" dependencies = [ - "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.30", ] [[package]] name = "quote" version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37" dependencies = [ - "proc-macro2 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 1.0.24", ] [[package]] name = "r2d2" version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "545c5bc2b880973c9c10e4067418407a0ccaa3091781d1671d46eb35107cb26f" dependencies = [ - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", - "scheduled-thread-pool 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.11", + "parking_lot 0.11.1", + "scheduled-thread-pool", ] [[package]] name = "rand" version = "0.3.23" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c" dependencies = [ - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "libc", + "rand 0.4.6", ] [[package]] name = "rand" version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" dependencies = [ - "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "fuchsia-cprng", + "libc", + "rand_core 0.3.1", + "rdrand", + "winapi 0.3.9", ] [[package]] name = "rand" version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca" dependencies = [ - "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_jitter 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.7", + "libc", + "rand_chacha 0.1.1", + "rand_core 0.4.2", + "rand_hc 0.1.0", + "rand_isaac", + "rand_jitter", + "rand_os", + "rand_pcg", + "rand_xorshift", + "winapi 0.3.9", ] [[package]] name = "rand" version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" dependencies = [ - "getrandom 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "getrandom", + "libc", + "rand_chacha 0.2.2", + "rand_core 0.5.1", + "rand_hc 0.2.0", ] [[package]] name = "rand_chacha" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" dependencies = [ - "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.7", + "rand_core 0.3.1", ] [[package]] name = "rand_chacha" version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" dependencies = [ - "ppv-lite86 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "ppv-lite86", + "rand_core 0.5.1", ] [[package]] name = "rand_core" version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" dependencies = [ - "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.2", ] [[package]] name = "rand_core" version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc" [[package]] name = "rand_core" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" dependencies = [ - "getrandom 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)", + "getrandom", ] [[package]] name = "rand_hc" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" dependencies = [ - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1", ] [[package]] name = "rand_hc" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" dependencies = [ - "rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.5.1", ] [[package]] name = "rand_isaac" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" dependencies = [ - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1", ] [[package]] name = "rand_jitter" version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b" dependencies = [ - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "libc", + "rand_core 0.4.2", + "winapi 0.3.9", ] [[package]] name = "rand_os" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071" dependencies = [ - "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "cloudabi 0.0.3", + "fuchsia-cprng", + "libc", + "rand_core 0.4.2", + "rdrand", + "winapi 0.3.9", ] [[package]] name = "rand_pcg" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44" dependencies = [ - "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.7", + "rand_core 0.4.2", ] [[package]] name = "rand_xorshift" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" dependencies = [ - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1", ] [[package]] name = "rayon" -version = "1.3.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b0d8e0819fadc20c74ea8373106ead0600e3a67ef1fe8da56e39b9ae7275674" dependencies = [ - "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", - "either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)", - "rayon-core 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 1.0.1", + "crossbeam-deque 0.8.0", + "either", + "rayon-core", ] [[package]] name = "rayon-core" -version = "1.7.1" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ab346ac5921dc62ffa9f89b7a773907511cdfa5490c572ae9be1be33e8afa4a" dependencies = [ - "crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-queue 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-channel 0.5.0", + "crossbeam-deque 0.8.0", + "crossbeam-utils 0.8.0", + "lazy_static 1.4.0", + "num_cpus", ] [[package]] name = "rdrand" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" dependencies = [ - "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1", ] [[package]] name = "redox_syscall" version = "0.1.57" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" [[package]] name = "regex" -version = "1.3.9" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38cf2c13ed4745de91a5eb834e11c00bcc3709e773173b2ce4c56c9fbde04b9c" dependencies = [ - "aho-corasick 0.7.13 (registry+https://github.com/rust-lang/crates.io-index)", - "memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "regex-syntax 0.6.18 (registry+https://github.com/rust-lang/crates.io-index)", - "thread_local 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "aho-corasick", + "memchr", + "regex-syntax", + "thread_local", ] [[package]] name = "regex-syntax" -version = "0.6.18" +version = "0.6.21" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b181ba2dcf07aaccad5448e8ead58db5b742cf85dfe035e2227f137a539a189" [[package]] name = "remove_dir_all" version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" dependencies = [ - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.9", ] [[package]] name = "reqwest" version = "0.9.24" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f88643aea3c1343c804950d7bf983bd2067f5ab59db6d613a08e05572f2714ab" dependencies = [ - "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "cookie 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", - "cookie_store 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "encoding_rs 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)", - "flate2 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "http 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.12.35 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper-tls 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "mime 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)", - "mime_guess 2.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "native-tls 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.56 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_urlencoded 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "uuid 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)", - "winreg 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "base64 0.10.1", + "bytes 0.4.12", + "cookie 0.12.0", + "cookie_store", + "encoding_rs", + "flate2", + "futures", + "http 0.1.21", + "hyper 0.12.35", + "hyper-tls", + "log 0.4.11", + "mime 0.3.16", + "mime_guess", + "native-tls", + "serde", + "serde_json", + "serde_urlencoded", + "time 0.1.44", + "tokio", + "tokio-executor", + "tokio-io", + "tokio-threadpool", + "tokio-timer", + "url 1.7.2", + "uuid 0.7.4", + "winreg", ] [[package]] name = "rocket" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fc7e5d6aaa32ace6893ae8a1875688ca7b07d6c2428ae88e704c3623c8866e9" dependencies = [ - "atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", - "base64 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)", - "pear 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "rocket_codegen 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "rocket_http 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "state 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "version_check 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "yansi 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "atty", + "base64 0.12.3", + "log 0.4.11", + "memchr", + "num_cpus", + "pear", + "rocket_codegen", + "rocket_http", + "state", + "time 0.1.44", + "toml 0.4.10", + "version_check 0.9.2", + "yansi", ] [[package]] name = "rocket_codegen" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "519154b16df5fe552a8f9cd76a97793a9f5d58e34f186ab79c7b29ce1d009358" dependencies = [ - "devise 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "indexmap 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)", - "rocket_http 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "version_check 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "yansi 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "devise", + "glob", + "indexmap", + "quote 0.6.13", + "rocket_http", + "version_check 0.9.2", + "yansi", ] [[package]] name = "rocket_contrib" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9465babd59cfb360669b60431db510f3dc3268d51ccd69fc9264e626681e596a" dependencies = [ - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "notify 4.0.15 (registry+https://github.com/rust-lang/crates.io-index)", - "rocket 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.56 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.11", + "notify", + "rocket", + "serde", + "serde_json", ] [[package]] name = "rocket_http" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9d087de7203c7a60a0ed5cd3a135b552dbfbed9932c52d49d083e8629935257" dependencies = [ - "cookie 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)", - "indexmap 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "pear 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "state 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "cookie 0.11.3", + "hyper 0.10.16", + "indexmap", + "pear", + "percent-encoding 1.0.1", + "smallvec 1.5.0", + "state", + "time 0.1.44", + "unicode-xid 0.1.0", ] [[package]] name = "rust-crypto" version = "0.2.36" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f76d05d3993fd5f4af9434e8e436db163a12a9d40e1a58a726f27a01dfd12a2a" dependencies = [ - "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", + "gcc", + "libc", + "rand 0.3.23", + "rustc-serialize", + "time 0.1.44", ] [[package]] name = "rustc-demangle" -version = "0.1.16" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e3bad0ee36814ca07d7968269dd4b7ec89ec2da10c4bb613928d3077083c232" [[package]] name = "rustc-serialize" version = "0.3.24" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda" [[package]] name = "rustc_version" version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" dependencies = [ - "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", + "semver", ] [[package]] name = "rustfm-scrobble" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1436d590305c0bc7cc312b80e5bfc2dee078c4d68d1e03883e90464fc75d110a" dependencies = [ - "md5 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "reqwest 0.9.24 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.56 (registry+https://github.com/rust-lang/crates.io-index)", - "wrapped-vec 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "md5", + "reqwest", + "serde", + "serde_json", + "wrapped-vec", ] [[package]] name = "ryu" version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e" [[package]] name = "safemem" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072" [[package]] name = "same-file" version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" dependencies = [ - "winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi-util", ] [[package]] name = "schannel" version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75" dependencies = [ - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.4.0", + "winapi 0.3.9", ] [[package]] name = "scheduled-thread-pool" version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc6f74fd1204073fa02d5d5d68bec8021be4c38690b61264b2fdb48083d0e7d7" dependencies = [ - "parking_lot 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.11.1", ] [[package]] name = "scoped_threadpool" version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" [[package]] name = "scopeguard" version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" [[package]] name = "sd-notify" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aef40838bbb143707f8309b1e92e6ba3225287592968ba6f6e3b6de4a9816486" [[package]] name = "security-framework" -version = "0.4.4" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1759c2e3c8580017a484a7ac56d3abc5a6c1feadf88db2f3633f12ae4268c69" dependencies = [ - "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "core-foundation 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "core-foundation-sys 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "security-framework-sys 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "bitflags", + "core-foundation", + "core-foundation-sys", + "libc", + "security-framework-sys", ] [[package]] name = "security-framework-sys" -version = "0.4.3" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f99b9d5e26d2a71633cc4f2ebae7cc9f874044e0c351a27e17892d76dce5678b" dependencies = [ - "core-foundation-sys 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", + "core-foundation-sys", + "libc", ] [[package]] name = "semver" version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" dependencies = [ - "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "semver-parser", ] [[package]] name = "semver-parser" version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.114" +version = "1.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b88fa983de7720629c9387e9f517353ed404164b1e482c970a90c1a4aaf7dc1a" dependencies = [ - "serde_derive 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.114" +version = "1.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbd1ae72adb44aab48f325a02444a5fc079349a8d804c1fc922aed3f7454c74e" dependencies = [ - "proc-macro2 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 1.0.24", + "quote 1.0.7", + "syn 1.0.50", ] [[package]] name = "serde_json" -version = "1.0.56" +version = "1.0.59" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcac07dbffa1c65e7f816ab9eba78eb142c6d44410f4eeba1e26e4f5dfa56b95" dependencies = [ - "itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "ryu 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", + "itoa", + "ryu", + "serde", ] [[package]] name = "serde_urlencoded" version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "642dd69105886af2efd227f75a520ec9b44a820d65bc133a9131f7d229fd165a" dependencies = [ - "dtoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", + "dtoa", + "itoa", + "serde", + "url 1.7.2", ] [[package]] name = "sha1" version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" [[package]] name = "sha2" version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a256f46ea78a0c0d9ff00077504903ac881a1dafdc20da66545699e7776b3e69" dependencies = [ - "block-buffer 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", - "digest 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", - "fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "opaque-debug 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "block-buffer 0.7.3", + "digest 0.8.1", + "fake-simd", + "opaque-debug 0.2.3", ] [[package]] name = "sha2" -version = "0.9.1" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e7aab86fe2149bad8c507606bdb3f4ef5e7b2380eb92350f56122cca72a42a8" dependencies = [ - "block-buffer 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "cpuid-bool 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "digest 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "opaque-debug 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "block-buffer 0.9.0", + "cfg-if 1.0.0", + "cpuid-bool", + "digest 0.9.0", + "opaque-debug 0.3.0", ] [[package]] name = "shell32-sys" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ee04b46101f57121c9da2b151988283b6beb79b34f5bb29a58ee48cb695122c" dependencies = [ - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.2.8", + "winapi-build", ] [[package]] name = "simplelog" version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b2736f58087298a448859961d3f4a0850b832e72619d75adc69da7993c2cd3c" dependencies = [ - "chrono 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "termcolor 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "chrono", + "log 0.4.11", + "termcolor", ] [[package]] name = "slab" version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" [[package]] name = "smallvec" version = "0.6.13" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7b0758c52e15a8b5e3691eae6cc559f08eee9406e548a4477ba4e67770a82b6" dependencies = [ - "maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "maybe-uninit", ] [[package]] name = "smallvec" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7acad6f34eb9e8a259d3283d1e8c1d34d7415943d4895f65cc73813c7396fc85" [[package]] name = "standback" -version = "0.2.9" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf906c8b8fc3f6ecd1046e01da1d8ddec83e48c8b08b84dcc02b585a6bedf5a8" dependencies = [ - "version_check 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "version_check 0.9.2", ] [[package]] name = "state" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3015a7d0a5fd5105c91c3710d42f9ccf0abfb287d62206484dcc67f9569a6483" [[package]] name = "stdweb" version = "0.4.20" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5" dependencies = [ - "discard 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "stdweb-derive 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)", - "stdweb-internal-macros 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", - "stdweb-internal-runtime 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "wasm-bindgen 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", + "discard", + "rustc_version", + "stdweb-derive", + "stdweb-internal-macros", + "stdweb-internal-runtime", + "wasm-bindgen", ] [[package]] name = "stdweb-derive" version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c87a60a40fccc84bef0652345bbbbbe20a605bf5d0ce81719fc476f5c03b50ef" dependencies = [ - "proc-macro2 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 1.0.24", + "quote 1.0.7", + "serde", + "serde_derive", + "syn 1.0.50", ] [[package]] name = "stdweb-internal-macros" version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58fa5ff6ad0d98d1ffa8cb115892b6e69d67799f6763e162a1c9db421dc22e11" dependencies = [ - "base-x 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.56 (registry+https://github.com/rust-lang/crates.io-index)", - "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)", + "base-x", + "proc-macro2 1.0.24", + "quote 1.0.7", + "serde", + "serde_derive", + "serde_json", + "sha1", + "syn 1.0.50", ] [[package]] name = "stdweb-internal-runtime" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0" [[package]] name = "string" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d24114bfcceb867ca7f71a0d3fe45d45619ec47a6fbfa98cb14e14250bfa5d6d" dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12", ] [[package]] name = "subtle" version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" [[package]] name = "subtle" -version = "2.2.3" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "343f3f510c2915908f155e94f17220b19ccfacf2a64a2a5d8004f2c3e311e7fd" [[package]] name = "syn" version = "0.11.11" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad" dependencies = [ - "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", - "synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.3.15", + "synom", + "unicode-xid 0.0.4", ] [[package]] name = "syn" version = "0.15.44" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5" dependencies = [ - "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.30", + "quote 0.6.13", + "unicode-xid 0.1.0", ] [[package]] name = "syn" -version = "1.0.35" +version = "1.0.50" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "443b4178719c5a851e1bde36ce12da21d74a0e60b4d982ec3385a933c812f0f6" dependencies = [ - "proc-macro2 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 1.0.24", + "quote 1.0.7", + "unicode-xid 0.2.1", ] [[package]] name = "synom" version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" dependencies = [ - "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", + "unicode-xid 0.0.4", ] [[package]] name = "synstructure" version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b834f2d66f734cb897113e34aaff2f1ab4719ca946f9a7358dba8f8064148701" dependencies = [ - "proc-macro2 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 1.0.24", + "quote 1.0.7", + "syn 1.0.50", + "unicode-xid 0.2.1", ] [[package]] name = "tempfile" version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.57 (registry+https://github.com/rust-lang/crates.io-index)", - "remove_dir_all 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.10", + "libc", + "rand 0.7.3", + "redox_syscall", + "remove_dir_all", + "winapi 0.3.9", ] [[package]] name = "termcolor" -version = "1.1.0" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4" dependencies = [ - "winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi-util", ] [[package]] name = "thiserror" -version = "1.0.20" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e9ae34b84616eedaaf1e9dd6026dbe00dcafa92aa0c8077cb69df1fcfe5e53e" dependencies = [ - "thiserror-impl 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)", + "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.20" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ba20f23e85b10754cd195504aebf6a27e2e6cbe28c17778a0c930724628dd56" dependencies = [ - "proc-macro2 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 1.0.24", + "quote 1.0.7", + "syn 1.0.50", ] [[package]] name = "thread-id" version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7fbf4c9d56b320106cd64fd024dadfa0be7cb4706725fc44a7d7ce952d820c1" dependencies = [ - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.57 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "libc", + "redox_syscall", + "winapi 0.3.9", ] [[package]] name = "thread_local" version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14" dependencies = [ - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.4.0", ] [[package]] name = "tiff" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "abeb4e3f32a8973722c0254189e6890358e72b1bf11becb287ee0b23c595a41d" dependencies = [ - "byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", - "miniz_oxide 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", + "jpeg-decoder", + "miniz_oxide 0.4.3", + "weezl", ] [[package]] name = "time" -version = "0.1.43" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" dependencies = [ - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "libc", + "wasi 0.10.0+wasi-snapshot-preview1", + "winapi 0.3.9", ] [[package]] name = "time" -version = "0.2.16" +version = "0.2.23" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bcdaeea317915d59b2b4cd3b5efcd156c309108664277793f5351700c02ce98b" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", - "standback 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", - "stdweb 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)", - "time-macros 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "version_check 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "const_fn", + "libc", + "standback", + "stdweb", + "time-macros", + "version_check 0.9.2", + "winapi 0.3.9", ] [[package]] name = "time-macros" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "957e9c6e26f12cb6d0dd7fc776bb67a706312e7299aed74c8dd5b17ebb27e2f1" dependencies = [ - "proc-macro-hack 0.5.16 (registry+https://github.com/rust-lang/crates.io-index)", - "time-macros-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro-hack", + "time-macros-impl", ] [[package]] name = "time-macros-impl" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5c3be1edfad6027c69f5491cf4cb310d1a71ecd6af742788c6ff8bced86b8fa" dependencies = [ - "proc-macro-hack 0.5.16 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "standback 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro-hack", + "proc-macro2 1.0.24", + "quote 1.0.7", + "standback", + "syn 1.0.50", ] [[package]] name = "tinyvec" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "238ce071d267c5710f9d31451efec16c5ee22de34df17cc05e56cbc92e967117" + +[[package]] +name = "tinyvec" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccf8dbc19eb42fba10e8feaaec282fb50e2c14b2726d6301dbfeed0f73306a6f" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" version = "0.1.22" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a09c0b5bb588872ab2f09afa13ee6e9dac11e10a0ec9e8e3ba39a5a5d530af6" dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.22 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-current-thread 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tcp 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12", + "futures", + "mio", + "num_cpus", + "tokio-current-thread", + "tokio-executor", + "tokio-io", + "tokio-reactor", + "tokio-tcp", + "tokio-threadpool", + "tokio-timer", ] [[package]] name = "tokio-buf" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fb220f46c53859a4b7ec083e41dec9778ff0b1851c0942b211edb89e0ccdc46" dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12", + "either", + "futures", ] [[package]] name = "tokio-current-thread" version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1de0e32a83f131e002238d7ccde18211c0a5397f60cbfffcb112868c2e0e20e" dependencies = [ - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "futures", + "tokio-executor", ] [[package]] name = "tokio-executor" version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb2d1b8f4548dbf5e1f7818512e9c406860678f29c300cdf0ebac72d1a3a1671" dependencies = [ - "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.7.2", + "futures", ] [[package]] name = "tokio-io" version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57fc868aae093479e3131e3d165c93b1c7474109d13c90ec0dda2a1bbfff0674" dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12", + "futures", + "log 0.4.11", ] [[package]] name = "tokio-reactor" version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09bc590ec4ba8ba87652da2068d150dcada2cfa2e07faae270a5e0409aa51351" dependencies = [ - "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.22 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-sync 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.7.2", + "futures", + "lazy_static 1.4.0", + "log 0.4.11", + "mio", + "num_cpus", + "parking_lot 0.9.0", + "slab", + "tokio-executor", + "tokio-io", + "tokio-sync", ] [[package]] name = "tokio-sync" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edfe50152bc8164fcc456dab7891fa9bf8beaf01c5ee7e1dd43a397c3cf87dee" dependencies = [ - "fnv 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv", + "futures", ] [[package]] name = "tokio-tcp" version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "98df18ed66e3b72e742f185882a9e201892407957e45fbff8da17ae7a7c51f72" dependencies = [ - "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.22 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12", + "futures", + "iovec", + "mio", + "tokio-io", + "tokio-reactor", ] [[package]] name = "tokio-threadpool" version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df720b6581784c118f0eb4310796b12b1d242a7eb95f716a8367855325c25f89" dependencies = [ - "crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-queue 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-deque 0.7.3", + "crossbeam-queue", + "crossbeam-utils 0.7.2", + "futures", + "lazy_static 1.4.0", + "log 0.4.11", + "num_cpus", + "slab", + "tokio-executor", ] [[package]] name = "tokio-timer" version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93044f2d313c95ff1cb7809ce9a7a05735b012288a888b62d4434fd58c94f296" dependencies = [ - "crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.7.2", + "futures", + "slab", + "tokio-executor", ] [[package]] name = "toml" version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" dependencies = [ - "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", ] [[package]] name = "toml" -version = "0.5.6" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75cf45bb0bef80604d001caaec0d09da99611b3c0fd39d3080468875cdb65645" dependencies = [ - "serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", ] [[package]] name = "traitobject" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "efd1f82c56340fdf16f2a953d7bda4f8fdffba13d93b00844c25572110b26079" [[package]] name = "try-lock" version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" [[package]] name = "try_from" version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "283d3b89e1368717881a9d51dad843cc435380d8109c9e47d38780a324698d8b" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.10", ] [[package]] name = "typeable" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1410f6f91f21d1612654e7cc69193b0334f909dcf2c790c4826254fbb86f8887" [[package]] name = "typenum" version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33" [[package]] name = "unicase" version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33" dependencies = [ - "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "version_check 0.1.5", ] [[package]] name = "unicase" version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6" dependencies = [ - "version_check 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "version_check 0.9.2", ] [[package]] name = "unicode-bidi" version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" dependencies = [ - "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "matches", ] [[package]] name = "unicode-normalization" -version = "0.1.13" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a13e63ab62dbe32aeee58d1c5408d35c36c392bba5d9d3142287219721afe606" dependencies = [ - "tinyvec 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tinyvec 1.1.0", ] [[package]] name = "unicode-width" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" [[package]] name = "unicode-xid" version = "0.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc" [[package]] name = "unicode-xid" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" [[package]] name = "unicode-xid" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564" [[package]] name = "universal-hash" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df0c900f2f9b4116803415878ff48b63da9edb268668e08cf9292d7503114a01" dependencies = [ - "generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)", - "subtle 2.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "generic-array 0.12.3", + "subtle 2.3.0", ] [[package]] name = "unix-daemonize" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "531faed80732acaa13d1016c66d6a9180b5045c4fcef8daa20bb2baf46b13907" dependencies = [ - "libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)", + "libc", ] [[package]] name = "url" version = "1.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" dependencies = [ - "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "idna 0.1.5", + "matches", + "percent-encoding 1.0.1", ] [[package]] name = "url" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5909f2b0817350449ed73e8bcd81c8c3c8d9a7a5d8acba4b27db277f1868976e" dependencies = [ - "idna 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "form_urlencoded", + "idna 0.2.0", + "matches", + "percent-encoding 2.1.0", ] [[package]] name = "uuid" version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90dbc611eb48397705a6b0f6e917da23ae517e4d127123d2cf7674206627d32a" dependencies = [ - "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5", ] [[package]] name = "uuid" version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fde2f6a4bea1d6e007c4ad38c6839fa71cbb63b6dbf5b595aa38dc9b1093c11" [[package]] name = "vcpkg" version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6454029bf181f092ad1b853286f23e2c507d8e8194d01d92da4a55c274a5508c" [[package]] name = "version_check" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" [[package]] name = "version_check" version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed" [[package]] name = "walkdir" version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "777182bc735b6424e1a57516d35ed72cb8019d85c8c9bf536dccb3445c1a2f7d" dependencies = [ - "same-file 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "same-file", + "winapi 0.3.9", + "winapi-util", ] [[package]] name = "want" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6395efa4784b027708f7451087e647ec73cc74f5d9bc2e418404248d679a230" dependencies = [ - "futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "try-lock 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "futures", + "log 0.4.11", + "try-lock", ] [[package]] name = "wasi" version = "0.9.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" + +[[package]] +name = "wasi" +version = "0.10.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" [[package]] name = "wasm-bindgen" -version = "0.2.65" +version = "0.2.68" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ac64ead5ea5f05873d7c12b545865ca2b8d28adfc50a49b84770a3a97265d42" dependencies = [ - "cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "wasm-bindgen-macro 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.10", + "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.65" +version = "0.2.68" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f22b422e2a757c35a73774860af8e112bff612ce6cb604224e8e47641a9e4f68" dependencies = [ - "bumpalo 3.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)", - "wasm-bindgen-shared 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", + "bumpalo", + "lazy_static 1.4.0", + "log 0.4.11", + "proc-macro2 1.0.24", + "quote 1.0.7", + "syn 1.0.50", + "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.65" +version = "0.2.68" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b13312a745c08c469f0b292dd2fcd6411dba5f7160f593da6ef69b64e407038" dependencies = [ - "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "wasm-bindgen-macro-support 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 1.0.7", + "wasm-bindgen-macro-support", ] [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.65" +version = "0.2.68" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f249f06ef7ee334cc3b8ff031bfc11ec99d00f34d86da7498396dc1e3b1498fe" dependencies = [ - "proc-macro2 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)", - "wasm-bindgen-backend 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", - "wasm-bindgen-shared 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 1.0.24", + "quote 1.0.7", + "syn 1.0.50", + "wasm-bindgen-backend", + "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.65" +version = "0.2.68" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d649a3145108d7d3fbcde896a468d1bd636791823c9921135218ad89be08307" + +[[package]] +name = "weezl" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e2bb9fc8309084dd7cd651336673844c1d47f8ef6d2091ec160b27f5c4aa277" [[package]] name = "winapi" version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" [[package]] name = "winapi" version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" dependencies = [ - "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", ] [[package]] name = "winapi-build" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" [[package]] name = "winapi-i686-pc-windows-gnu" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" dependencies = [ - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.9", ] [[package]] name = "winapi-x86_64-pc-windows-gnu" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "winreg" version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2986deb581c4fe11b621998a5e53361efe6b48a151178d0cd9eeffa4dc6acc9" dependencies = [ - "winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.9", ] [[package]] name = "wrapped-vec" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06c29bb4abe93d1c8ef79b60f270d0efcaa6c5c97aaaaaaa0d477ea72f5f9e45" dependencies = [ - "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.3.15", + "syn 0.11.11", ] [[package]] name = "ws2_32-sys" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" dependencies = [ - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.2.8", + "winapi-build", ] [[package]] name = "xdg" version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d089681aa106a86fade1b0128fb5daf07d5867a509ab036d99988dec80429a57" [[package]] name = "yansi" version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fc79f4a1e39857fc00c3f662cbf2651c771f00e9c15fe2abc341806bd46bd71" [[package]] name = "zeroize" -version = "1.1.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" - -[metadata] -"checksum addr2line 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1b6a2d3371669ab3ca9797670853d61402b03d0b4b9ebf33d677dfa720203072" -"checksum adler 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ee2a4ec343196209d6594e19543ae87a39f96d5534d7174822a3ad825dd6ed7e" -"checksum adler32 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "567b077b825e468cc974f0020d4082ee6e03132512f207ef1a02fd5d00d1f32d" -"checksum aead 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4cf01b9b56e767bb57b94ebf91a58b338002963785cdd7013e21c0d4679471e4" -"checksum aes 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "54eb1d8fe354e5fc611daf4f2ea97dd45a765f4f1e4512306ec183ae2e8f20c9" -"checksum aes-gcm 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "834a6bda386024dbb7c8fc51322856c10ffe69559f972261c868485f5759c638" -"checksum aes-soft 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cfd7e7ae3f9a1fb5c03b389fc6bb9a51400d0c13053f0dca698c832bfd893a0d" -"checksum aesni 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2f70a6b5f971e473091ab7cfb5ffac6cde81666c4556751d8d5620ead8abf100" -"checksum aho-corasick 0.7.13 (registry+https://github.com/rust-lang/crates.io-index)" = "043164d8ba5c4c3035fec9bbee8647c0261d788f3474306f93bb65901cae0e86" -"checksum anyhow 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)" = "85bb70cc08ec97ca5450e6eba421deeea5f172c0fc61f78b5357b2a8e8be195f" -"checksum ape 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ced866a80cef5e2218c00bea8f7cbcc6d3a9b1d358250f8a098b6a3e8db110ed" -"checksum app_dirs 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e73a24bad9bd6a94d6395382a6c69fe071708ae4409f763c5475e14ee896313d" -"checksum atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" -"checksum autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2" -"checksum autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d" -"checksum backtrace 0.3.50 (registry+https://github.com/rust-lang/crates.io-index)" = "46254cf2fdcdf1badb5934448c1bcbe046a56537b3987d96c51a7afc5d03f293" -"checksum base-x 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "1b20b618342cf9891c292c4f5ac2cde7287cc5c87e87e9c769d617793607dec1" -"checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e" -"checksum base64 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" -"checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643" -"checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" -"checksum block-buffer 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b" -"checksum block-buffer 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" -"checksum block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1c924d49bd09e7c06003acda26cd9742e796e34282ec6c1189404dee0c1f4774" -"checksum block-padding 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5" -"checksum bumpalo 3.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2e8c087f005730276d1096a652e92a8bacee2e2472bcc9715a74d2bec38b5820" -"checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" -"checksum bytemuck 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "37fa13df2292ecb479ec23aa06f4507928bef07839be9ef15281411076629431" -"checksum byteorder 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de" -"checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" -"checksum bytes 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38" -"checksum cc 1.0.58 (registry+https://github.com/rust-lang/crates.io-index)" = "f9a06fb2e53271d7c279ec1efea6ab691c35a2ae67ec0d91d7acec0caf13b518" -"checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" -"checksum chrono 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)" = "c74d84029116787153e02106bf53e66828452a4b325cc8652b788b5967c0a0b6" -"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" -"checksum cloudabi 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4344512281c643ae7638bbabc3af17a11307803ec8f0fcad9fae512a8bf36467" -"checksum color_quant 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0dbbb57365263e881e805dc77d94697c9118fd94d8da011240555aa7b23445bd" -"checksum cookie 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "5795cda0897252e34380a27baf884c53aa7ad9990329cdad96d4c5d027015d44" -"checksum cookie 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "888604f00b3db336d2af898ec3c1d5d0ddf5e6d462220f2ededc33a87ac4bbd5" -"checksum cookie 0.14.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1373a16a4937bc34efec7b391f9c1500c30b8478a701a4f44c9165cc0475a6e0" -"checksum cookie_store 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "46750b3f362965f197996c4448e4a0935e791bf7d6631bfce9ee0af3d24c919c" -"checksum core-foundation 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "57d24c7a13c43e870e37c1556b74555437870a04514f7685f5b354e090567171" -"checksum core-foundation-sys 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac" -"checksum cpuid-bool 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8aebca1129a03dc6dc2b127edd729435bbc4a37e1d5f4d7513165089ceb02634" -"checksum crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ba125de2af0df55319f41944744ad91c71113bf74a4646efff39afe1f6842db1" -"checksum crossbeam-channel 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "09ee0cc8804d5393478d743b035099520087a5186f3b93fa58cec08fa62407b6" -"checksum crossbeam-deque 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285" -"checksum crossbeam-epoch 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace" -"checksum crossbeam-queue 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "774ba60a54c213d409d5353bda12d49cd68d14e45036a285234c8d6f91f92570" -"checksum crossbeam-utils 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8" -"checksum crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5" -"checksum crypto-mac 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" -"checksum deflate 0.8.6 (registry+https://github.com/rust-lang/crates.io-index)" = "73770f8e1fe7d64df17ca66ad28994a0a623ea497fa69486e14984e715c5d174" -"checksum devise 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "74e04ba2d03c5fa0d954c061fc8c9c288badadffc272ebb87679a89846de3ed3" -"checksum devise_codegen 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "066ceb7928ca93a9bedc6d0e612a8a0424048b0ab1f75971b203d01420c055d7" -"checksum devise_core 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "cf41c59b22b5e3ec0ea55c7847e5f358d340f3a8d6d53a5cf4f1564967f96487" -"checksum diesel 1.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3e2de9deab977a153492a1468d1b1c0662c1cf39e5ea87d0c060ecd59ef18d8c" -"checksum diesel_derives 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "45f5098f628d02a7a0f68ddba586fb61e80edec3bdc1be3b921f4ceec60858d3" -"checksum diesel_migrations 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bf3cde8413353dc7f5d72fa8ce0b99a560a359d2c5ef1e5817ca731cd9008f4c" -"checksum digest 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5" -"checksum digest 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" -"checksum discard 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0" -"checksum dtoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "134951f4028bdadb9b84baf4232681efbf277da25144b9b0ad65df75946c422b" -"checksum either 1.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3" -"checksum encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "6b0d943856b990d12d3b55b359144ff341533e516d94098b1d3fc1ac666d36ec" -"checksum encoding-index-japanese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "04e8b2ff42e9a05335dbf8b5c6f7567e5591d0d916ccef4e0b1710d32a0d0c91" -"checksum encoding-index-korean 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "4dc33fb8e6bcba213fe2f14275f0963fd16f0a02c878e3095ecfdf5bee529d81" -"checksum encoding-index-simpchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "d87a7194909b9118fc707194baa434a4e3b0fb6a5a757c73c3adb07aa25031f7" -"checksum encoding-index-singlebyte 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3351d5acffb224af9ca265f435b859c7c01537c0849754d3db3fdf2bfe2ae84a" -"checksum encoding-index-tradchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fd0e20d5688ce3cab59eb3ef3a2083a5c77bf496cb798dc6fcdb75f323890c18" -"checksum encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569" -"checksum encoding_rs 0.8.23 (registry+https://github.com/rust-lang/crates.io-index)" = "e8ac63f94732332f44fe654443c46f6375d1939684c17b0afb6cb56b0456e171" -"checksum error-chain 0.12.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d371106cc88ffdfb1eabd7111e432da544f16f3e2d7bf1dfe8bf575f1df045cd" -"checksum failure 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86" -"checksum failure_derive 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4" -"checksum fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" -"checksum filetime 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "affc17579b132fc2461adf7c575cc6e8b134ebca52c51f5411388965227dc695" -"checksum flame 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1fc2706461e1ee94f55cab2ed2e3d34ae9536cfa830358ef80acff1a3dacab30" -"checksum flamer 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "36b732da54fd4ea34452f2431cf464ac7be94ca4b339c9cd3d3d12eb06fe7aab" -"checksum flate2 1.0.16 (registry+https://github.com/rust-lang/crates.io-index)" = "68c90b0fc46cf89d227cc78b40e494ff81287a92dd07631e5af0d06fe3cf885e" -"checksum fnv 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" -"checksum foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" -"checksum foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" -"checksum fsevent 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5ab7d1bd1bd33cc98b0889831b72da23c0aa4df9cec7e0702f46ecea04b35db6" -"checksum fsevent-sys 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f41b048a94555da0f42f1d632e2e19510084fb8e303b0daa2816e733fb3644a0" -"checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" -"checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" -"checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" -"checksum futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)" = "1b980f2816d6ee8673b6517b52cb0e808a180efc92e5c19d02cdda79066703ef" -"checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4" -"checksum gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)" = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2" -"checksum generic-array 0.12.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec" -"checksum generic-array 0.14.3 (registry+https://github.com/rust-lang/crates.io-index)" = "60fb4bb6bba52f78a471264d9a3b7d026cc0af47b22cd2cffbc0b787ca003e63" -"checksum getopts 0.2.21 (registry+https://github.com/rust-lang/crates.io-index)" = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5" -"checksum getrandom 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb" -"checksum ghash 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "9f0930ed19a7184089ea46d2fedead2f6dc2b674c5db4276b7da336c7cd83252" -"checksum gif 0.10.3 (registry+https://github.com/rust-lang/crates.io-index)" = "471d90201b3b223f3451cd4ad53e34295f16a1df17b1edf3736d47761c3981af" -"checksum gimli 0.22.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aaf91faf136cb47367fa430cd46e37a788775e7fa104f8b4bcb3861dc389b724" -"checksum glob 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574" -"checksum h2 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)" = "a5b34c246847f938a410a03c5458c7fee2274436675e76d8b903c08efc29c462" -"checksum hashbrown 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "34f595585f103464d8d2f6e9864682d74c1601fed5e07d62b1c9058dba8246fb" -"checksum hermit-abi 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "3deed196b6e7f9e44a2ae8d94225d80302d81208b1bb673fd21fe634645c85a9" -"checksum hex 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "644f9158b2f133fd50f5fb3242878846d9eb792e445c893805ff0e3824006e35" -"checksum hkdf 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3fa08a006102488bd9cd5b8013aabe84955cf5ae22e304c2caf655b633aefae3" -"checksum hmac 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5dcb5e64cda4c23119ab41ba960d1e170a774c8e4b9d9e6a9bc18aabf5e59695" -"checksum hmac 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840" -"checksum http 0.1.21 (registry+https://github.com/rust-lang/crates.io-index)" = "d6ccf5ede3a895d8856620237b2f02972c1bbc78d2965ad7fe8838d4a0ed41f0" -"checksum http 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "28d569972648b2c512421b5f2a405ad6ac9666547189d0c5477a3f200f3e02f9" -"checksum http-body 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6741c859c1b2463a423a1dbce98d418e6c3c3fc720fb0d45528657320920292d" -"checksum httparse 1.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "cd179ae861f0c2e53da70d892f5f3029f9594be0c41dc5269cd371691b1dc2f9" -"checksum hyper 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)" = "0a0652d9a2609a968c14be1a9ea00bf4b1d64e2e1f53a1b51b6fff3a6e829273" -"checksum hyper 0.12.35 (registry+https://github.com/rust-lang/crates.io-index)" = "9dbe6ed1438e1f8ad955a4701e9a944938e9519f6888d12d8558b645e247d5f6" -"checksum hyper-tls 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "3a800d6aa50af4b5850b2b0f659625ce9504df908e9733b635720483be26174f" -"checksum id3 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "02c11bb50ce1568516aefbe4b6564c3feaf15a8e5ccbea90fa652012446ae9bf" -"checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" -"checksum idna 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "02e2673c30ee86b5b96a9cb52ad15718aa1f966f5ab9ad54a8b95d5ca33120a9" -"checksum image 0.23.7 (registry+https://github.com/rust-lang/crates.io-index)" = "a2397fc43bd5648b7117aabb3c5e62d0e62c194826ec77b0b4d0c41e62744635" -"checksum indexmap 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5b88cd59ee5f71fea89a62248fc8f387d44400cefe05ef548466d61ced9029a7" -"checksum inotify 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4816c66d2c8ae673df83366c18341538f234a26d65a9ecea5c348b453ac1d02f" -"checksum inotify-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e74a1aa87c59aeff6ef2cc2fa62d41bc43f54952f55652656b18a02fd5e356c0" -"checksum instant 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "5b141fdc7836c525d4d594027d318c84161ca17aaf8113ab1f81ab93ae897485" -"checksum iovec 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e" -"checksum itoa 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6" -"checksum jpeg-decoder 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)" = "cc797adac5f083b8ff0ca6f6294a999393d76e197c36488e2ef732c4715f6fa3" -"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" -"checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" -"checksum lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73" -"checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" -"checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" -"checksum lewton 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "be42bea7971f4ba0ea1e215730c29bc1ff9bd2a9c10013912f42a8dcf8d77c0d" -"checksum libc 0.2.73 (registry+https://github.com/rust-lang/crates.io-index)" = "bd7d4bd64732af4bf3a67f367c27df8520ad7e230c5817b8ff485864d80242b9" -"checksum libsqlite3-sys 0.16.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5e5b95e89c330291768dc840238db7f9e204fd208511ab6319b56193a7f2ae25" -"checksum lock_api 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "c4da24a77a3d8a6d4862d95f72e6fdb9c09a643ecdb402d754004a557f2bec75" -"checksum lock_api 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "28247cc5a5be2f05fbcd76dd0cf2c7d3b5400cb978a28042abcd4fa0b3f8261c" -"checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b" -"checksum log 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)" = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b" -"checksum lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7d947cbb889ed21c2a84be6ffbaebf5b4e0f4340638cba0444907e38b56be084" -"checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" -"checksum maybe-uninit 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" -"checksum md5 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e6bcd6433cff03a4bfc3d9834d504467db1f1cf6d0ea765d37d330249ed629d" -"checksum memchr 2.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400" -"checksum memoffset 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c198b026e1bbf08a937e94c6c60f9ec4a2267f5b0d2eec9c1b21b061ce2be55f" -"checksum metaflac 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b302f8261cb9074954ff2e9e6c3c24a9297d2eec3a2fde2919ff515794d88a3c" -"checksum migrations_internals 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2b4fc84e4af020b837029e017966f86a1c2d5e83e64b589963d5047525995860" -"checksum migrations_macros 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9753f12909fd8d923f75ae5c3258cae1ed3c8ec052e1b38c93c21a6d157f789c" -"checksum mime 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ba626b8a6de5da682e1caa06bdb42a335aee5a84db8e5046a3e8ab17ba0a3ae0" -"checksum mime 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)" = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" -"checksum mime_guess 2.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2684d4c2e97d99848d30b324b00c8fcc7e5c897b7cbb5819b09e7c90e8baf212" -"checksum miniz_oxide 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435" -"checksum miniz_oxide 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "be0f75932c1f6cfae3c04000e40114adf955636e19040f9c0a2c380702aa1c7f" -"checksum mio 0.6.22 (registry+https://github.com/rust-lang/crates.io-index)" = "fce347092656428bc8eaf6201042cb551b8d67855af7374542a92a0fbfcac430" -"checksum mio-extras 2.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "52403fe290012ce777c4626790c8951324a2b9e3316b3143779c72b029742f19" -"checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" -"checksum mp3-duration 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "348bdc7300502f0801e5b57c448815713cd843b744ef9bda252a2698fdf90a0f" -"checksum mp4ameta 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d89d19e381a2fd7aeaa2ad50e10c8e5c6ab4a4e5310162fa5161c1333bc2e57d" -"checksum native-tls 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "2b0d88c06fe90d5ee94048ba40409ef1d9315d86f6f38c2efdaad4fb50c58b2d" -"checksum net2 0.2.34 (registry+https://github.com/rust-lang/crates.io-index)" = "2ba7c918ac76704fb42afcbbb43891e72731f3dcca3bef2a19786297baf14af7" -"checksum notify 4.0.15 (registry+https://github.com/rust-lang/crates.io-index)" = "80ae4a7688d1fab81c5bf19c64fc8db920be8d519ce6336ed4e7efe024724dbd" -"checksum num-integer 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "8d59457e662d541ba17869cf51cf177c0b5f0cbf476c66bdc90bf1edac4f875b" -"checksum num-iter 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e6b7c748f995c4c29c5f5ae0248536e04a5739927c74ec0fa564805094b9f" -"checksum num-rational 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a5b4d7360f362cfb50dde8143501e6940b22f644be75a4cc90b2d81968908138" -"checksum num-traits 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)" = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611" -"checksum num_cpus 1.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3" -"checksum object 0.20.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1ab52be62400ca80aa00285d25253d7f7c437b7375c4de678f5405d3afe82ca5" -"checksum ogg 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d79f1db9148be9d0e174bb3ac890f6030fcb1ed947267c5a91ee4c91b5a91e15" -"checksum ole32-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5d2c49021782e5233cd243168edfa8037574afed4eba4bbaf538b3d8d1789d8c" -"checksum opaque-debug 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c" -"checksum opaque-debug 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" -"checksum openssl 0.10.30 (registry+https://github.com/rust-lang/crates.io-index)" = "8d575eff3665419f9b83678ff2815858ad9d11567e082f5ac1814baba4e2bcb4" -"checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" -"checksum openssl-sys 0.9.58 (registry+https://github.com/rust-lang/crates.io-index)" = "a842db4709b604f0fe5d1170ae3565899be2ad3d9cbc72dedc789ac0511f78de" -"checksum opus_headers 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "afbb993947f111397c2bc536944f8dac7f54a4e73383d478efe1990b56404b60" -"checksum parking_lot 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a4893845fa2ca272e647da5d0e46660a314ead9c2fdd9a883aabc32e481a8733" -"checksum parking_lot 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252" -"checksum parking_lot_core 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b876b1b9e7ac6e1a74a6da34d25c42e17e8862aa409cbbbdcfc8d86c6f3bc62b" -"checksum parking_lot_core 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c361aa727dd08437f2f1447be8b59a33b0edd15e0fcee698f935613d9efbca9b" -"checksum pbkdf2 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "216eaa586a190f0a738f2f918511eecfa90f13295abec0e457cdebcceda80cbd" -"checksum pear 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5320f212db967792b67cfe12bd469d08afd6318a249bd917d5c19bc92200ab8a" -"checksum pear_codegen 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "bfc1c836fdc3d1ef87c348b237b5b5c4dff922156fb2d968f57734f9669768ca" -"checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" -"checksum percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" -"checksum pkg-config 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)" = "d36492546b6af1463394d46f0c834346f31548646f6ba10849802c9c9a27ac33" -"checksum png 0.16.7 (registry+https://github.com/rust-lang/crates.io-index)" = "dfe7f9f1c730833200b134370e1d5098964231af8450bce9b78ee3ab5278b970" -"checksum polyval 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7ec3341498978de3bfd12d1b22f1af1de22818f5473a11e8a6ef997989e3a212" -"checksum ppv-lite86 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "237a5ed80e274dbc66f86bd59c1e25edc039660be53194b5fe0a482e0f2612ea" -"checksum proc-macro-hack 0.5.16 (registry+https://github.com/rust-lang/crates.io-index)" = "7e0456befd48169b9f13ef0f0ad46d492cf9d2dbb918bcf38e01eed4ce3ec5e4" -"checksum proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)" = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759" -"checksum proc-macro2 1.0.19 (registry+https://github.com/rust-lang/crates.io-index)" = "04f5f085b5d71e2188cb8271e5da0161ad52c3f227a661a3c135fdf28e258b12" -"checksum publicsuffix 1.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3bbaa49075179162b49acac1c6aa45fb4dafb5f13cf6794276d77bc7fd95757b" -"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a" -"checksum quote 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)" = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1" -"checksum quote 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37" -"checksum r2d2 0.8.9 (registry+https://github.com/rust-lang/crates.io-index)" = "545c5bc2b880973c9c10e4067418407a0ccaa3091781d1671d46eb35107cb26f" -"checksum rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)" = "64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c" -"checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" -"checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca" -"checksum rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" -"checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" -"checksum rand_chacha 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" -"checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" -"checksum rand_core 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc" -"checksum rand_core 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" -"checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" -"checksum rand_hc 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" -"checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" -"checksum rand_jitter 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b" -"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071" -"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44" -"checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" -"checksum rayon 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "62f02856753d04e03e26929f820d0a0a337ebe71f849801eea335d464b349080" -"checksum rayon-core 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e92e15d89083484e11353891f1af602cc661426deb9564c298b270c726973280" -"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" -"checksum redox_syscall 0.1.57 (registry+https://github.com/rust-lang/crates.io-index)" = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" -"checksum regex 1.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6" -"checksum regex-syntax 0.6.18 (registry+https://github.com/rust-lang/crates.io-index)" = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8" -"checksum remove_dir_all 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" -"checksum reqwest 0.9.24 (registry+https://github.com/rust-lang/crates.io-index)" = "f88643aea3c1343c804950d7bf983bd2067f5ab59db6d613a08e05572f2714ab" -"checksum rocket 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6130967b369cfb8411b0b73e96fcba1229c32a9cc6f295d144f879bfced13c6e" -"checksum rocket_codegen 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "cb852e6da168fb948a8f2b798ba2e2f0e4fc860eae0efa9cf2bf0f5466bb0425" -"checksum rocket_contrib 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e3946ca815127041d8f64455561031d058c22ae1b135251502c5ea523cf9e14b" -"checksum rocket_http 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "1aff5a5480175f2f553a876b251e9350c74196128806d176da3a51c82aab5428" -"checksum rust-crypto 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)" = "f76d05d3993fd5f4af9434e8e436db163a12a9d40e1a58a726f27a01dfd12a2a" -"checksum rustc-demangle 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783" -"checksum rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)" = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda" -"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" -"checksum rustfm-scrobble 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a042217f152817116b5c4891ecb7b027d9593436144c8ebcf4ab14086d36c039" -"checksum ryu 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e" -"checksum safemem 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072" -"checksum same-file 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" -"checksum schannel 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75" -"checksum scheduled-thread-pool 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "dc6f74fd1204073fa02d5d5d68bec8021be4c38690b61264b2fdb48083d0e7d7" -"checksum scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" -"checksum scopeguard 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" -"checksum sd-notify 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "aef40838bbb143707f8309b1e92e6ba3225287592968ba6f6e3b6de4a9816486" -"checksum security-framework 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "64808902d7d99f78eaddd2b4e2509713babc3dc3c85ad6f4c447680f3c01e535" -"checksum security-framework-sys 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "17bf11d99252f512695eb468de5516e5cf75455521e69dfe343f3b74e4748405" -"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" -"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -"checksum serde 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)" = "5317f7588f0a5078ee60ef675ef96735a1442132dc645eb1d12c018620ed8cd3" -"checksum serde_derive 1.0.114 (registry+https://github.com/rust-lang/crates.io-index)" = "2a0be94b04690fbaed37cddffc5c134bf537c8e3329d53e982fe04c374978f8e" -"checksum serde_json 1.0.56 (registry+https://github.com/rust-lang/crates.io-index)" = "3433e879a558dde8b5e8feb2a04899cf34fdde1fafb894687e52105fc1162ac3" -"checksum serde_urlencoded 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "642dd69105886af2efd227f75a520ec9b44a820d65bc133a9131f7d229fd165a" -"checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" -"checksum sha2 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a256f46ea78a0c0d9ff00077504903ac881a1dafdc20da66545699e7776b3e69" -"checksum sha2 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2933378ddfeda7ea26f48c555bdad8bb446bf8a3d17832dc83e380d444cfb8c1" -"checksum shell32-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9ee04b46101f57121c9da2b151988283b6beb79b34f5bb29a58ee48cb695122c" -"checksum simplelog 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2b2736f58087298a448859961d3f4a0850b832e72619d75adc69da7993c2cd3c" -"checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" -"checksum smallvec 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)" = "f7b0758c52e15a8b5e3691eae6cc559f08eee9406e548a4477ba4e67770a82b6" -"checksum smallvec 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3757cb9d89161a2f24e1cf78efa0c1fcff485d18e3f55e0aa3480824ddaa0f3f" -"checksum standback 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)" = "b0437cfb83762844799a60e1e3b489d5ceb6a650fbacb86437badc1b6d87b246" -"checksum state 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7345c971d1ef21ffdbd103a75990a15eb03604fc8b8852ca8cb418ee1a099028" -"checksum stdweb 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)" = "d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5" -"checksum stdweb-derive 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "c87a60a40fccc84bef0652345bbbbbe20a605bf5d0ce81719fc476f5c03b50ef" -"checksum stdweb-internal-macros 0.2.9 (registry+https://github.com/rust-lang/crates.io-index)" = "58fa5ff6ad0d98d1ffa8cb115892b6e69d67799f6763e162a1c9db421dc22e11" -"checksum stdweb-internal-runtime 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0" -"checksum string 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d24114bfcceb867ca7f71a0d3fe45d45619ec47a6fbfa98cb14e14250bfa5d6d" -"checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" -"checksum subtle 2.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "502d53007c02d7605a05df1c1a73ee436952781653da5d0bf57ad608f66932c1" -"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad" -"checksum syn 0.15.44 (registry+https://github.com/rust-lang/crates.io-index)" = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5" -"checksum syn 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)" = "fb7f4c519df8c117855e19dd8cc851e89eb746fe7a73f0157e0d95fdec5369b0" -"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" -"checksum synstructure 0.12.4 (registry+https://github.com/rust-lang/crates.io-index)" = "b834f2d66f734cb897113e34aaff2f1ab4719ca946f9a7358dba8f8064148701" -"checksum tempfile 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9" -"checksum termcolor 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb6bfa289a4d7c5766392812c0a1f4c1ba45afa1ad47803c11e1f407d846d75f" -"checksum thiserror 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)" = "7dfdd070ccd8ccb78f4ad66bf1982dc37f620ef696c6b5028fe2ed83dd3d0d08" -"checksum thiserror-impl 1.0.20 (registry+https://github.com/rust-lang/crates.io-index)" = "bd80fc12f73063ac132ac92aceea36734f04a1d93c1240c6944e23a3b8841793" -"checksum thread-id 3.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c7fbf4c9d56b320106cd64fd024dadfa0be7cb4706725fc44a7d7ce952d820c1" -"checksum thread_local 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14" -"checksum tiff 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3f3b8a87c4da944c3f27e5943289171ac71a6150a79ff6bacfff06d159dfff2f" -"checksum time 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438" -"checksum time 0.2.16 (registry+https://github.com/rust-lang/crates.io-index)" = "3a51cadc5b1eec673a685ff7c33192ff7b7603d0b75446fb354939ee615acb15" -"checksum time-macros 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9ae9b6e9f095bc105e183e3cd493d72579be3181ad4004fceb01adbe9eecab2d" -"checksum time-macros-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e5c3be1edfad6027c69f5491cf4cb310d1a71ecd6af742788c6ff8bced86b8fa" -"checksum tinyvec 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "53953d2d3a5ad81d9f844a32f14ebb121f50b650cd59d0ee2a07cf13c617efed" -"checksum tokio 0.1.22 (registry+https://github.com/rust-lang/crates.io-index)" = "5a09c0b5bb588872ab2f09afa13ee6e9dac11e10a0ec9e8e3ba39a5a5d530af6" -"checksum tokio-buf 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8fb220f46c53859a4b7ec083e41dec9778ff0b1851c0942b211edb89e0ccdc46" -"checksum tokio-current-thread 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "b1de0e32a83f131e002238d7ccde18211c0a5397f60cbfffcb112868c2e0e20e" -"checksum tokio-executor 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "fb2d1b8f4548dbf5e1f7818512e9c406860678f29c300cdf0ebac72d1a3a1671" -"checksum tokio-io 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "57fc868aae093479e3131e3d165c93b1c7474109d13c90ec0dda2a1bbfff0674" -"checksum tokio-reactor 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "09bc590ec4ba8ba87652da2068d150dcada2cfa2e07faae270a5e0409aa51351" -"checksum tokio-sync 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "edfe50152bc8164fcc456dab7891fa9bf8beaf01c5ee7e1dd43a397c3cf87dee" -"checksum tokio-tcp 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "98df18ed66e3b72e742f185882a9e201892407957e45fbff8da17ae7a7c51f72" -"checksum tokio-threadpool 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)" = "df720b6581784c118f0eb4310796b12b1d242a7eb95f716a8367855325c25f89" -"checksum tokio-timer 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)" = "93044f2d313c95ff1cb7809ce9a7a05735b012288a888b62d4434fd58c94f296" -"checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" -"checksum toml 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ffc92d160b1eef40665be3a05630d003936a3bc7da7421277846c2613e92c71a" -"checksum traitobject 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "efd1f82c56340fdf16f2a953d7bda4f8fdffba13d93b00844c25572110b26079" -"checksum try-lock 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" -"checksum try_from 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "283d3b89e1368717881a9d51dad843cc435380d8109c9e47d38780a324698d8b" -"checksum typeable 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1410f6f91f21d1612654e7cc69193b0334f909dcf2c790c4826254fbb86f8887" -"checksum typenum 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33" -"checksum unicase 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33" -"checksum unicase 2.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6" -"checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" -"checksum unicode-normalization 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "6fb19cf769fa8c6a80a162df694621ebeb4dafb606470b2b2fce0be40a98a977" -"checksum unicode-width 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" -"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc" -"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" -"checksum unicode-xid 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564" -"checksum universal-hash 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "df0c900f2f9b4116803415878ff48b63da9edb268668e08cf9292d7503114a01" -"checksum unix-daemonize 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "531faed80732acaa13d1016c66d6a9180b5045c4fcef8daa20bb2baf46b13907" -"checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" -"checksum url 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "829d4a8476c35c9bf0bbce5a3b23f4106f79728039b726d292bb93bc106787cb" -"checksum uuid 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)" = "90dbc611eb48397705a6b0f6e917da23ae517e4d127123d2cf7674206627d32a" -"checksum uuid 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9fde2f6a4bea1d6e007c4ad38c6839fa71cbb63b6dbf5b595aa38dc9b1093c11" -"checksum vcpkg 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "6454029bf181f092ad1b853286f23e2c507d8e8194d01d92da4a55c274a5508c" -"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" -"checksum version_check 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed" -"checksum walkdir 2.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "777182bc735b6424e1a57516d35ed72cb8019d85c8c9bf536dccb3445c1a2f7d" -"checksum want 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b6395efa4784b027708f7451087e647ec73cc74f5d9bc2e418404248d679a230" -"checksum wasi 0.9.0+wasi-snapshot-preview1 (registry+https://github.com/rust-lang/crates.io-index)" = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" -"checksum wasm-bindgen 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)" = "f3edbcc9536ab7eababcc6d2374a0b7bfe13a2b6d562c5e07f370456b1a8f33d" -"checksum wasm-bindgen-backend 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)" = "89ed2fb8c84bfad20ea66b26a3743f3e7ba8735a69fe7d95118c33ec8fc1244d" -"checksum wasm-bindgen-macro 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)" = "eb071268b031a64d92fc6cf691715ca5a40950694d8f683c5bb43db7c730929e" -"checksum wasm-bindgen-macro-support 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)" = "cf592c807080719d1ff2f245a687cbadb3ed28b2077ed7084b47aba8b691f2c6" -"checksum wasm-bindgen-shared 0.2.65 (registry+https://github.com/rust-lang/crates.io-index)" = "72b6c0220ded549d63860c78c38f3bcc558d1ca3f4efa74942c536ddbbb55e87" -"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" -"checksum winapi 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" -"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" -"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" -"checksum winapi-util 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" -"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" -"checksum winreg 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b2986deb581c4fe11b621998a5e53361efe6b48a151178d0cd9eeffa4dc6acc9" -"checksum wrapped-vec 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "06c29bb4abe93d1c8ef79b60f270d0efcaa6c5c97aaaaaaa0d477ea72f5f9e45" -"checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" -"checksum xdg 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d089681aa106a86fade1b0128fb5daf07d5867a509ab036d99988dec80429a57" -"checksum yansi 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9fc79f4a1e39857fc00c3f662cbf2651c771f00e9c15fe2abc341806bd46bd71" -"checksum zeroize 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3cbac2ed2ba24cc90f5e06485ac8c7c1e5449fe8911aef4d8877218af021a5b8" +checksum = "05f33972566adbd2d3588b0491eb94b98b43695c4ef897903470ede4f3f5a28a" diff --git a/Cargo.toml b/Cargo.toml index 37556f7..0c2fcd8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -29,7 +29,7 @@ lewton = "0.10.1" log = "0.4.5" metaflac = "0.2.3" mp3-duration = "0.1.9" -mp4ameta = "0.7.0" +mp4ameta = "0.7.1" opus_headers = "0.1.2" pbkdf2 = "0.4" rand = "0.7" diff --git a/src/artwork.rs b/src/artwork.rs new file mode 100644 index 0000000..bf8d6e2 --- /dev/null +++ b/src/artwork.rs @@ -0,0 +1,118 @@ +use anyhow::*; +use image::DynamicImage; +use std::path::Path; + +use crate::utils; +use crate::utils::AudioFormat; + +pub fn read(image_path: &Path) -> Result<DynamicImage> { + match utils::get_audio_format(image_path) { + Some(AudioFormat::APE) => read_ape(image_path), + Some(AudioFormat::FLAC) => read_flac(image_path), + Some(AudioFormat::MP3) => read_id3(image_path), + Some(AudioFormat::MP4) => read_mp4(image_path), + Some(AudioFormat::MPC) => read_ape(image_path), + Some(AudioFormat::OGG) => read_vorbis(image_path), + Some(AudioFormat::OPUS) => read_opus(image_path), + None => Ok(image::open(image_path)?), + } +} + +fn read_ape(_: &Path) -> Result<DynamicImage> { + Err(crate::Error::msg("Embedded ape artworks not yet supported")) +} + +fn read_flac(path: &Path) -> Result<DynamicImage> { + let tag = metaflac::Tag::read_from_path(path)?; + + if let Some(p) = tag.pictures().next() { + return Ok(image::load_from_memory(&p.data)?); + } + + Err(crate::Error::msg(format!( + "Embedded flac artwork not found for file: {}", + path.display() + ))) +} + +fn read_id3(path: &Path) -> Result<DynamicImage> { + let tag = id3::Tag::read_from_path(path)?; + + if let Some(p) = tag.pictures().next() { + return Ok(image::load_from_memory(&p.data)?); + } + + Err(crate::Error::msg(format!( + "Embedded id3 artwork not found for file: {}", + path.display() + ))) +} + +fn read_mp4(path: &Path) -> Result<DynamicImage> { + let tag = mp4ameta::Tag::read_from_path(path)?; + + match tag.artwork().and_then(|d| d.image_data()) { + Some(v) => Ok(image::load_from_memory(v)?), + _ => Err(crate::Error::msg(format!( + "Embedded mp4 artwork not found for file: {}", + path.display() + ))), + } +} + +fn read_vorbis(_: &Path) -> Result<DynamicImage> { + Err(crate::Error::msg( + "Embedded vorbis artworks are not yet supported", + )) +} + +fn read_opus(_: &Path) -> Result<DynamicImage> { + Err(crate::Error::msg( + "Embedded opus artworks are not yet supported", + )) +} + +#[test] +fn test_read_artowork() { + let ext_img = image::open("test-data/artwork/Folder.png") + .unwrap() + .to_rgb8(); + let embedded_img = image::open("test-data/artwork/Embedded.png") + .unwrap() + .to_rgb8(); + + let folder_img = read(Path::new("test-data/artwork/Folder.png")) + .unwrap() + .to_rgb8(); + assert_eq!(folder_img, ext_img); + + let ape_img = read(Path::new("test-data/artwork/sample.ape")) + .map(|d| d.to_rgb8()) + .ok(); + assert_eq!(ape_img, None); + + let flac_img = read(Path::new("test-data/artwork/sample.flac")) + .unwrap() + .to_rgb8(); + assert_eq!(flac_img, embedded_img); + + let mp3_img = read(Path::new("test-data/artwork/sample.mp3")) + .unwrap() + .to_rgb8(); + assert_eq!(mp3_img, embedded_img); + + let m4a_img = read(Path::new("test-data/artwork/sample.m4a")) + .unwrap() + .to_rgb8(); + assert_eq!(m4a_img, embedded_img); + + let ogg_img = read(Path::new("test-data/artwork/sample.ogg")) + .map(|d| d.to_rgb8()) + .ok(); + assert_eq!(ogg_img, None); + + let opus_img = read(Path::new("test-data/artwork/sample.opus")) + .map(|d| d.to_rgb8()) + .ok(); + assert_eq!(opus_img, None); +} diff --git a/src/index/metadata.rs b/src/index/metadata.rs index 14d0fa5..f5a4b88 100644 --- a/src/index/metadata.rs +++ b/src/index/metadata.rs @@ -24,6 +24,7 @@ pub struct SongTags { pub album_artist: Option<String>, pub album: Option<String>, pub year: Option<i32>, + pub has_artwork: bool, } #[cfg_attr(feature = "profile-index", flame)] @@ -83,6 +84,7 @@ fn read_id3(path: &Path) -> Result<SongTags> { .map(|y| y as i32) .or_else(|| tag.date_released().and_then(|d| Some(d.year))) .or_else(|| tag.date_recorded().and_then(|d| Some(d.year))); + let has_artwork = tag.pictures().count() > 0; Ok(SongTags { artist, @@ -93,6 +95,7 @@ fn read_id3(path: &Path) -> Result<SongTags> { disc_number, track_number, year, + has_artwork, }) } @@ -143,6 +146,7 @@ fn read_ape(path: &Path) -> Result<SongTags> { disc_number, track_number, year, + has_artwork: false, }) } @@ -160,6 +164,7 @@ fn read_vorbis(path: &Path) -> Result<SongTags> { disc_number: None, track_number: None, year: None, + has_artwork: false, }; for (key, value) in source.comment_hdr.comment_list { @@ -193,6 +198,7 @@ fn read_opus(path: &Path) -> Result<SongTags> { disc_number: None, track_number: None, year: None, + has_artwork: false, }; for (key, value) in headers.comments.user_comments { @@ -230,6 +236,7 @@ fn read_flac(path: &Path) -> Result<SongTags> { } _ => None, }; + let has_artwork = tag.pictures().count() > 0; Ok(SongTags { artist: vorbis.artist().map(|v| v[0].clone()), @@ -240,6 +247,7 @@ fn read_flac(path: &Path) -> Result<SongTags> { disc_number, track_number: vorbis.track(), year, + has_artwork, }) } @@ -256,6 +264,7 @@ fn read_mp4(path: &Path) -> Result<SongTags> { disc_number: tag.disc_number().map(|d| d as u32), track_number: tag.track_number().map(|d| d as u32), year: tag.year().and_then(|v| v.parse::<i32>().ok()), + has_artwork: tag.artwork().is_some(), }) } @@ -270,6 +279,7 @@ fn test_read_metadata() { album: Some("TEST ALBUM".into()), duration: None, year: Some(2016), + has_artwork: false, }; let flac_sample_tag = SongTags { duration: Some(0), @@ -307,4 +317,29 @@ fn test_read_metadata() { read(Path::new("test-data/formats/sample.ape")).unwrap(), sample_tags ); + + let flac_artwork_tag = SongTags { + has_artwork: true, + ..flac_sample_tag + }; + let mp3_artwork_tag = SongTags { + has_artwork: true, + ..mp3_sample_tag + }; + let m4a_artwork_tag = SongTags { + has_artwork: true, + ..m4a_sample_tag + }; + assert_eq!( + read(Path::new("test-data/artwork/sample.mp3")).unwrap(), + mp3_artwork_tag + ); + assert_eq!( + read(Path::new("test-data/artwork/sample.flac")).unwrap(), + flac_artwork_tag + ); + assert_eq!( + read(Path::new("test-data/artwork/sample.m4a")).unwrap(), + m4a_artwork_tag + ); } diff --git a/src/index/test.rs b/src/index/test.rs index 6287e7c..0afe2a9 100644 --- a/src/index/test.rs +++ b/src/index/test.rs @@ -56,6 +56,37 @@ fn test_metadata() { ); } +#[test] +fn test_embedded_artwork() { + let mut song_path = PathBuf::new(); + song_path.push("test-data"); + song_path.push("small-collection"); + song_path.push("Tobokegao"); + song_path.push("Picnic"); + song_path.push("07 - なぜ (Why).mp3"); + + let db = db::get_test_db("artwork.sqlite"); + update(&db).unwrap(); + + let connection = db.connect().unwrap(); + let songs: Vec<Song> = songs::table + .filter(songs::title.eq("なぜ (Why?)")) + .load(&connection) + .unwrap(); + + assert_eq!(songs.len(), 1); + let song = &songs[0]; + assert_eq!(song.path, song_path.to_string_lossy().as_ref()); + assert_eq!(song.track_number, Some(7)); + assert_eq!(song.disc_number, None); + assert_eq!(song.title, Some("なぜ (Why?)".to_owned())); + assert_eq!(song.artist, Some("Tobokegao".to_owned())); + assert_eq!(song.album_artist, None); + assert_eq!(song.album, Some("Picnic".to_owned())); + assert_eq!(song.year, Some(2016)); + assert_eq!(song.artwork, Some(song_path.to_string_lossy().into_owned())); +} + #[test] fn test_browse_top_level() { let mut root_path = PathBuf::new(); diff --git a/src/index/update.rs b/src/index/update.rs index bc5eedb..a835045 100644 --- a/src/index/update.rs +++ b/src/index/update.rs @@ -114,7 +114,7 @@ impl IndexUpdater { )); // Find artwork - let artwork = { + let mut directory_artwork = { #[cfg(feature = "profile-index")] let _guard = flame::start_guard("artwork"); self.get_artwork(path).unwrap_or(None) @@ -200,6 +200,13 @@ impl IndexUpdater { .filter_map(song_metadata) .collect::<Vec<_>>(); + if directory_artwork.is_none() { + directory_artwork = song_tags + .iter() + .find(|(_, t)| t.has_artwork) + .map(|(p, _)| p.to_owned()); + } + for (file_path_string, tags) in song_tags { if tags.year.is_some() { inconsistent_directory_year |= @@ -223,6 +230,12 @@ impl IndexUpdater { directory_artist = tags.artist.as_ref().cloned(); } + let artwork_path = if tags.has_artwork { + Some(file_path_string.to_owned()) + } else { + directory_artwork.as_ref().cloned() + }; + let song = NewSong { path: file_path_string.to_owned(), parent: path_string.to_owned(), @@ -234,7 +247,7 @@ impl IndexUpdater { album_artist: tags.album_artist, album: tags.album, year: tags.year, - artwork: artwork.as_ref().cloned(), + artwork: artwork_path, }; self.push_song(song)?; @@ -255,7 +268,7 @@ impl IndexUpdater { NewDirectory { path: path_string.to_owned(), parent: parent_string, - artwork, + artwork: directory_artwork, album: directory_album, artist: directory_artist, year: directory_year, diff --git a/src/main.rs b/src/main.rs index 558f2f0..e2d3f41 100644 --- a/src/main.rs +++ b/src/main.rs @@ -34,6 +34,7 @@ mod lastfm; mod playlist; mod service; +mod artwork; mod thumbnails; mod ui; mod user; diff --git a/src/thumbnails.rs b/src/thumbnails.rs index 612aff6..a2a64a7 100644 --- a/src/thumbnails.rs +++ b/src/thumbnails.rs @@ -1,5 +1,4 @@ use anyhow::*; -use image; use image::imageops::FilterType; use image::{DynamicImage, GenericImage, GenericImageView, ImageBuffer, ImageOutputFormat}; use std::cmp; @@ -8,6 +7,8 @@ use std::fs::{DirBuilder, File}; use std::hash::{Hash, Hasher}; use std::path::*; +use crate::artwork; + pub struct ThumbnailsManager { thumbnails_path: PathBuf, } @@ -88,7 +89,7 @@ fn generate_thumbnail( image_path: &Path, thumbnailoptions: &ThumbnailOptions, ) -> Result<DynamicImage> { - let source_image = image::open(image_path)?; + let source_image = artwork::read(image_path)?; let (source_width, source_height) = source_image.dimensions(); let largest_dimension = cmp::max(source_width, source_height); let out_dimension = cmp::min(thumbnailoptions.max_dimension, largest_dimension); diff --git a/test-data/artwork/Embedded.png b/test-data/artwork/Embedded.png new file mode 100644 index 0000000000000000000000000000000000000000..d82dee70f569472a22c288a4abd6fc33c17a0498 GIT binary patch literal 141 zcmeAS@N?(olHy`uVBq!ia0vp^EFjFm1SHiab7}%9&H|6fVg?31We{epSZZGe6twqr zaSY**Wi(+p{U69>_zwm^1|yIG5`Y7^3`h+`6v&W@6?rQ+?a2#}fTydU%Q~loCIEwN BCpZ8A literal 0 HcmV?d00001 diff --git a/test-data/artwork/Folder.png b/test-data/artwork/Folder.png new file mode 100644 index 0000000000000000000000000000000000000000..1de8f081f2799006fd822f7c756e7eea138235b6 GIT binary patch literal 103 zcmeAS@N?(olHy`uVBq!ia0vp^EFjFm1SHiab7}%9&H|6fVg?31We{epSZZGe6qNLI saSY+Oo}A#o{2vVLnVFe|ne`YL4lQN<tKs?oEKm`Hr>mdKI;Vst0P9*A8vp<R literal 0 HcmV?d00001 diff --git a/test-data/artwork/sample.ape b/test-data/artwork/sample.ape new file mode 100644 index 0000000000000000000000000000000000000000..0aeb09ddfab7558c986df281d4ae16274775478d GIT binary patch literal 30106 zcmV(=K-s@dK|>&x4*&o(0000O000040000i00000a{vGU0000y0RR9_`G_R=`#Utn zf$15142tW}2LJ#7AOQfEPXGV`0000G0096*tN;Lf0000|Nk&GFpa1|@K~_a(ZFC?I z000010096*tN;LrSOEY601yCVVRT_Gp8x>7*P0YGCIA399<PzF4%=gdyFvx)OK>Wj z0;^#*TV&`giPZvw-<}t%hU9MSR}T(2OyD^r$vM;7CdCQO!xE4^;4PCt*mG+SNp3Y5 z!5EO{BtLK)_f8QoYi9F_tBA-*a6sVhQ4|{Yq3rc-v|4umrP_U3M0h_n`BDAHM_g$~ zS_odr^awiWv5sAy40Tr&XaJ`Iqy6d;XNb!`vrV^b3&}s#iNx%eFJYg2SQgN=d=dgd ze{1(%sA<%>I;OI9_-TOp_kvxOZJ^>7XG4-xZ8XN-nl*1QIZcP<v0*z`7gpOBg%`>H zNLEOWyb9m4%4L<^(?N%OW~O5hRJu;0!}iog{1Fi{AM}&qc==YL3{nf2f%y*(0KPM7 zYPoFyO|VP~#|xXZR?<Q0nA17my$lcNCoM7gp6gT0!x%ksI}9<O9COmif`Zx&{Z6c0 zH(*sOK`~b&Z+{sUV*JH>HU^o0To}J8BfN!Lc@i|vztY5%P82f!?-O9{$@1ta?jO0+ zMYStL_WzvsHLT^2q0P<QS5_CnY6rfi4QqmxE%+U``A*C{#bTL#Ses`Z+G-{}EX6iF z$l6as&hE+CAhK$2ak;oZMbZdFP0!$^2!gj{29QB@%)k0n%x3{2<?CKAxV-|F=Z6#? z+WD?kWyp(@p9tb+;bLRW4pKBHxx{-4y5zD->0&bnm@SfXOzLJT5>-!Zbnbj~u^@?v z?UYTAq_#`tmxi3eji7Q*?;VeRUeoJjMV!e)DQw>q3;XMa*InPURX3?}vbG@D62#YT zEyM{$x%~i*8-N|H7pTH~Mxw)vN_6U1C;tW7u$+iD!8VWawO94s59mfu;vYYQxa{pw z8PJWENrb%)kLFiY`a+Mu;gwlJ8$|kxArt3EGeN(=!~pe=FG_>@>t$IGgfWD{*D$U; z8%^eRJDVs}MU|id)1BNK3*P;R$KAq%7RO}e<kEW=q;_0E?;NyUVh?_di~Pie{etoF zdcFM#*~w>*intWS!N~B@617?wW>11t+C{ABW5#HIh%8X`@NTgAP^HbgHybLX*+-AX z(2P2kujX-L4%KYy<Z_S7z1vhL$Iff->Q#_rHL3=;ba3hND%aPsg!{5(@Dul`O}utz zH>r+Xei`VAK=h#4=*Y5%NFXaNR9?f%#b!Vx+1fw|f6_H;Jr(Q47E3`NR-Y&JV)qV$ zND$rdZib?nc0>wZ?;Qw)pHY)uZ|jJSjzwjY|K6wm0$X7Ie1AA3R_8B|GLZ_W)qhc; zP8*ZaKZ-Nl)3F}-CayCgWOFkAvQGSHx}3M*?RO9PEivRe>WHU+ce5Akjhy_l4%UyM zSg58_O~@A-Nd}<#{1c(V_6Kfy$_1?T$I?jv5xhEv{HYRNORqj7z6p(b);*SdGOoLI zl&F}f*f>y}EXlwMR$Hx(LK~2jHab!w<OxsT+ssZ62nck4IxzmhN2wAq)tf+{M&Nh@ zJC}K=c&fUVuBAJMb>04nX#!q;uR8Z8*!u1N&dGdIUP5!1(rcioC}bf6(Apzw+LIMm zN|Ib}S9VnuQKB+bm`Du*uUa|f9e-a{$iEaz3bkcH=O8QI3Y=zNH#)|Nt&;vb{H2BG zVYp}|C-C@!@tcaeB)Id#SOTtmDPEPy<U)QyDrXgnE=$#uDkZAoQDu{YHJ^)WTdei; z==ymEN|v=LF7;)(1QvyEAXKTwc7K_0z-A%f;ZVNP&?<@aYB#H2qYe4LOpiH`z-kxe zCCHVOwnW`8zFOgGY$8g+QxPct6PqcYYyebDseDQvANjvpdZT~l`X=@LK|LGi*DU0! z&QzpNv_(4?z~;U|oh^vfVdf3#*EpO}++b?+etbDwKV;jF%ixz^_^@Rz#${*e9J;SB z@p?6FTht@C6)Gc)mVL9@k*XzMV47{ZyL*}rKmLGnQ+yIBbY}a343wAz<K~gqB3)P4 z^g9XX991_r?cLL=Y{3twj+ab=2ZyO#5*(DQLaOZuQ*Unhun=1<sRf8*sf<PS64Qh! zlE}u_*L7ekXX@#au%eRNramLpbnhlp#Vn8vB8)p1YJ;)L=^*7DSVDDVt;3mUO)<!B z9lF;bwi%8p_T)W(nCGF_2%o2J%Y^6-$vwS}Q&9xxy&S=a*}B7xu5pFHM~Wn>PWyLZ z`EI>A5}rMXeRxm0eJt1WH1+NYTn=Iic7ymHutKu6o=uiyIETHQ%==FP)~qotHO`(z z=J6kJS6`x7)=5m7DIy6-()pi8UUr6|knV}~QGpRnx{-<B&%NSvdx;D{Bg_PT<3i)9 z)ir>5JnapOtbYF_;rZM1Xj_THtl@FQg%n(WI#afrD`i>VP}+@UWuxB9Q?`*zJN&jT zcbmGJt$4`x_!9MS9D)4bda#pP0ik<^O=6ys_XlW{+G3=SqO7!e3qO#&YTj{&sf1Wx zg!J2wf3wz=vRKqVBzRNRtsAHT2wx&+Nn6%HnnB!WG-v-60WGYbs}sYYhwm{3romTh zPVyB{B$cbllp|e`(}kgRP2kW##}Trjf6Z)4N`5_A>(kj*UXq(azQsxs2bGoy4)3sy zb9N4^uJTC0o`m(HfOVSePT712A9!7YYEZ6)C2w;+$tX&H@!_KKvrm>>ah{I4-w7w5 zKt9qrU0E{xV>kCf8nP;d^`cg0nOU{;S<{LW#e#)*DT*&<5C;&VHpceDUL;frEab?| z8P%+5ut1NYgG58wmqsS2@_8(N_7)0ru2Wjqeiepn9}vx^c;|%$`(J{Z`!Mmh!r#50 zawiz%P}Wtzdg_)r`F0zLHtCwHt_&~vaTFzs#6{PQE4rf42i%IRzMGeLb}nXRPBml( zC?Oe-4BP^P!b=nHtE87tg1WE51~u!#02=MMSRI(R_CIQIijyP}`f(<}vM%}9MX*yl z?tkT*mhP2r9=+yf7SzxQfzA5(TJ0sD9Bcf$J2CE_d7Y6AI{J-%Lro8J#%M5ewkvv9 z>saZEvB_k1mGgQbrh?3XIh)1F`en#hD#B@H^r#9!yI*A%T)Jg*Q+`X5h+yb0^S>Dc z@)Il&7FK*(e))~`2#d~Fa{Q69y3Jyt(#LU*n81v#+`tApX2URFQuYF=fYJT!W$Yrz z2w~PbVf}-1Le>SH$!}ja`Nz)SBdG(J*J@R803iA%L0&Uc%>F5}2S>KA($;Pd>VlL; zbUtG!j@j6nA*dz$W?P4k^z3^;kMAmbLP3h9z_b0T*$*C7>P;5&NvIOSIL@PyC$-{r z5?dRL07yw2EOVn-LtDB~Vb)Tt=;l{O5~v@S7at^{{7&ul`a|QBPcK}U>lsxQX*d}g zL9QTRK9)p5F}K?d-=5}dmLv%))o&>fNl_SwQ#`OR;QU4VZYd=KCMmINv-PE1h!QVi zTH_H~3Kd;|2=+Q0bf*ZgHgvEe&6<UbZaVGYUsdyoo)N7j(qc`bv^S9{o?dfreIH?p zzjl$B4nNYnbDN;wj9NLn050D!R<ic<y4PyOq{}ayobMCAe0UHT*g~hYf%HI8ZX*G3 zBGb}I;zx5ERlP^>|1dvq>+-_CR_y=0Z{*#wK=vwQkX{<mjYE_VDqe&s6O}O+4C>xQ zP$E|AI8NVPs}ywaGO0vINxY!;Dpr>YSTFGn;xhcR)Y6n;PEU*<cHZL>vIxC$!_xSk z2Q!1zQg5iu)!d7NLClQ}%B^8-$OE^PrWrlx9|*tZ0qYlODAKNn94^knAH?(O1QMck ze5^+dDA~eTWbJk3kRsMmtM&D3Cw%NQN`~qL>e8+1ZxgqVF6<miDe{}23h3}ocu4rg zUqEJ;VG!}r+;ftl{QVQ@vl$kW3@NMvwbx3wl-xly8Ur`~y8UOd{IHAWA^w39$qmI$ zSS}c{g_AbS`R**<KvcA}eqX(6l56py#N78brsq~?RJI2R4&aNy<mp^s1&2MsRBIPN z>2z3sB{4~KpA{}dV?pM|m)PAGs4^7iL-nz+DA+q4ZOvLKj`c2@;C_?9MkNLmMl?;D zgyC4%3{o^jN`Alj27?Q*Q9@qz9J3RmccRC>R6}@nIxj&wun2-wh*Q3p*c~|#Z{4V6 z(CH=fuM~EIEzh1ZE1AEmMdIrQ<|lYB#>-a1@jVk738*4!{X$DKv*Kid&jBjQled*z z9mUl4HZ4KiL`vNy5D-i4Tj0V|Rq?Ul1|f2aq<AH-*+b=Y&iKhU{gj`bOj=Yb-$^|g z@<51yn>&>}5DL3u){h0fFAe~{3sWyLp^)&~Jgg=D%5>lDONm284GG*_pc?PRgga*R zT{z|?WE42-IJ7^TJ#LOma`qypr=Zw&kg<Kc(%D=i4crer8psDJP_-!;s)tf*k~~%@ zFVF&ch=R$*1hC~_xQ}e5VqSnqS`CsuUkC7cO_zZ#%oOJ@Rm)Z@+j98|Zx^nnFwoB5 zcv)|oe#-p<dIi>X(hdMsKeES|$%3Xq69I0w%B<U()l_R7Gr!$OsrjX}!?dHn;Pjw% zjL|=N_&JKo3`~`A#D1l=8Za%^6e3UFy*SW<=cc8Zl`npo)t&8tBk+-I^I3+xV?izD zqI)wY6#VKD0m6VBrB^|w-ib79R^kFc>LAw;Xh;_y$F!?Naky3TQPoQQPKWh7lV<f5 z-i1z@akM!!>(c-})2cv9_YB88I^(l=uw&+BXo<lO&#)%rSFQSSwAc1ghnULK-d35g zj0d&DHJyy<87kf|e-UEI?_AImG!_Q#OK3d-IaF?6zOhA1yma~^TqftU_YK#adIo&& zXH!ubQ0I3J`K7;%%^CT?&|*$v-R&0OX4AHZ%-tTBpblj#+iVd}|I!*W)$-Odq8OWR zkRI7GQD=;t24YkThL!01#p=b1|3SL}3HDvL*Ia8d?%-Wh3uyBWi4+ua1GzV>qWn|? zbXe%<a~an-+aX0cciFT^b(2vtRaL*6@Gb}5RJneh>c*vq-`yQWAL34XZT`*SbJ_OT zJiLtclc6e!mx}8FAnaO3BL&2!XyF37iaX7Q%AtB632`K2?!Nw*B57WjxP7RnNB!0g z!{EXaKxI6|i@?i~W{XQ2AL3i>=g~zq<5D_Li6fr5q<kR&kvclvHqOC*l6()nuc@WI zcS-#4-Q0)|L3Pv?o<ezL1HuSSR(=s{%c+&Mw4{PdW}jzs(0?|VX-bbgP>RFIkomT^ z^8v-wSp>@?L~e8(enCEw5);>5!@6(ZSF#qXO)aiG+U>y+zTD%!k~j=(_)W(>w|?2e z)kIx~CzwDz2bJrb^mmEl@TRI!jCe?DRrp>J(({u-nq&SQf`~L|titq+f$QwcC%pB% z1Zqj%4pq7fsJ!~2|3~OeRusWP&C3?eMY}=MzbcC<@_`OeriW6yD5)Cj#Vy%=hZkNN z2BAB*=$m4)d+_(P2%wB>1xD1ni>;~4Jx5-Y?dLpd?l^hs7C3_y$d0+$?>H~_@Hl@t z!6;s)k7vl{(%XFR50%B!+1$OL0=~m<L|PLtdsX2HrRAtBI9?wBc&Jh<`DhP$;Ahmp zv55Y^uvI^=ALK87$IJYWE;5dMMz%kV%}6R?qA#k$KBESFjPR$}wNOq0zmZ?sb5ILT z8__60e@|x^ZX!^59h2awPnsr=;%`1M+qS_`$7ZuJz8h~>Hor`%Qz9fo9~eZ^Ir5Y^ zTi?m(E5j*DS;ZAgf^D7pk!6*j!iwRc0_!uKkzG&BL3zJ`HAdT*+rIO_$8_P4=K?(F zM^5-*JcH2Jz?3kGZy@<OFAgXLhOU_D+Ma_4`)3Bn8IdZbGFJ`WE4G;<e>+8<W#j`& zndZY^tRPlPtL0%3Sue|55oKCgx596P@nLbGBh!SQx)B~*=>n^^DP|<<Np{Ys#0y?? zXBcA>c|Jx{dl~qT>XA@9YgA#Ne>)oB_os?-@z<5MDz9J{kJ~6Jd7!_^I>3QCw`EU{ zkPW@a(A3l#)h+cTrVq;xnyr7kQq56eiMTAGZ%wle24?1nhdj|P^YxnCAIOlwLWxUX zzheAWSlpq9da1jXTBd$1TeE$rku(i;g>@t$P0zIh%8bXb8uD+cprcO8;`TDvGKft0 zZib4`b$X)HY;H`$zTrU?cr;xfFhc$?@mMh>Dv3|%P+dQ|9ag45_owc+{(DjbXoG5D z;3%XAYa9%ILLSuUQ_qcTJu)+18{q75IUfc7G*Fb;T67pFJGCLRzvjZD3x-s_<54z9 zM+cCTxVxCjS2Z9s*SdhM%WsT0pLcgsQrY}-x~lqsuvjrT2cVKGTV+N>VgLaSX;?0p zuVs)ZP-9=6rG57+Q_R3Cy(QSd%~|Izbr(}|YUlWE7zbQC{@t;GF^04sjBJJ<m8t#t zK>4i<FcvJ}?$dwQ(WL-FM^6f63j^QF;pALJFjrcskZzfapnve`JJC2g62i88i4`<C zvnhb%jT~9aYo#P{P6t?O!Tmz+#g$C+DcIMGuA$@mH;YEIiLP`f0i5HNRh9H!an)0v z6$cPKX;l>-bjbhBfh}{+9A8Xj4o+I{sXvk|r`!X-ot+|2y@E3RvLy;sj6Xe>8UYk1 zU?JhOnJd348boFoTv72vyqPqrfA!O_4AQsiN1U7&eKvbMO2DX@13}NC?aD`_Uy;-5 z;#8AaIm4@rmcWu}#2g2;&G(eKDIb$+4q^g%BVb_1^3*PyfjLmH;@`_YTR`UuWqbN| zei4%DhB(kVKVIpBv#b&s@dp-A&s+z3kB$aaxIk2tyU{-=5+@zh?Upy(3DTQg_Q5VI zJG2l9O-qkt{wECqtX#o3&8By;$?U_ZJsCKkE$oEjIm7NL4LN4W5;qyHL6av~y{QX` z4`u_5bS-keqe9M+@U-Cj&%grTFY+7Ic_}u=MNkRLSeC<`5O0Ue*>B9BZVYCk)4hpU zCfj0{q^qprt@Fq;eO^h0j%`~jD~fOYd5Q}wm<JvR8c49^kg7zLl(9+WWf7<|#n~aZ z&M16ZaWigtL@9goWWcwzOw85dj?bYSS0qQT>UU;6=ba$u?`TjKWm%8hmqj>pB+oma zwW{6Q%H~%M-LmbHBc!HdkHf#PgY5Y!@f!+f3h&OYGJQ^nx_a^oa)>~NvMZ)35si5C zFi}vt7QR91=CY#R*KnQqWCV;A50$^pd`yc^PF*Oq`Q4~D^wCY6`obGfL<A!=5tP@> z6w@rQe1*S)RA2{UepEu*h_a)c$VKjGV*@BU>S%va*;!t660R9@t9_ZcQSg6xf&n1C z@JzoSZS+{{-2+B~9M>vwmOGC}lx=55K5I^jD1E*wO!Wx7AOHNMWF2JW%Y1KMjyYAp z@~ZJU+1X#*c#uSAKhVaKC}Qh}QiYXK6AP&@B}l}&zn&yVh-`6zP!_;TA95T?iwgJq z%HQPs*7kIm(qBNuHKViHYkf-MwI{8{l=wuBiv`R}=j-_T)_3*|f2#0e^`Rs@C>_g_ zKS(g=46${B1R%3eR}&4duH52(gV+;jrk7Lg1o!_Iouv&CU-G9kR37l`VMlnU>zq_{ zO}@R8Uitv_oXclnc?p=1mY&<a07YQgJo<U>YJz^{AGY_d$?nS!v?})3glrJT{i}b@ zE~?{SzGVphysKe9wmu^t8~jdl>C&<zq~p99FQ)sG)K39D{jC&*?~@C<y}N?#tHtZM zOpu|I$=9d4EU@RK?R8yD(KlO$(h{2Yfp`>nm`Z}QR`D=8bzeL!5=d^ZJRPOd7n%@o z9YOR=E!{yA3|Jx2J$3N;_LhVMq&wHJxZB3C+pEpmX_V;^)xx%w2d9si;_1s%|Fm2r zBjc+QpdBTBe5oe2mPNVsR&bMXV5+y0R`7F%ao`ozn+Ams1Ym@wlf3VBVFqsl#jum< z0vJER>p1zfziBoxt&rNYGIpQ0f~ATj!l`h?*{CP(+UGY`-e35^lI`{eR#$==h|J~6 z+aG>xy8n@FK*d*~n7-$CxKAKn8RXVR^Ba!$N{BmVvQ=8P<`-GUTrv6nsaKPNBwjq^ z)x^ASDPGc1$7Ea*-JnSh`ZfEe;e7co`)DleQ!BcMOYnxePmF(p(?<P6b~wn0ukmLe zy}n~3)bnpzT(6O2;^d1wsOmaB@Brv|`ks?_?iv0Q5jN7dUp<T1fp*NEWt4Udt`?OB z>n?MTHdz59ut1nKXIe|z#C+F~(n95!aK?nLlBCufu>qbh)zn-GGwqBPDh#1_JLzW{ zQCw>pRTrx&4sz+I?AnoMdZ+>Y>9TlLY+bBb^_-afcWL@D6D=eHgSJN~;__>|vXVVM zE}Q^5FPP)7$cJI6uweG)KCC6d;I|r*^y$MFY96TN5~_hsU3_3!vJoR$pjXL4|FJM5 zou|?&_k>W=R|6j>+i~LyZM#{tt~$u2uJYOJE^_y`o50;3!r)!-(uxNN$%DOf{!YF6 z?}aXt2B=0=bqw&2xSocMRcwHtu6jlkG*5=D<=><UJputgBIXTKjxf4uX68&nQ98p7 z1ylS&=*jl-+(lth`bLLRdEa+dwQ@a-z*-+o{lL|Vu@CCEeCp@d9b?eMfyV`-+nAX! zDRvDUP05?}<C%PH6;NgZ^x);p2UbceeR^=2B1Y4vCwl#oiNh?|K#mYq)OIx~N!^S1 zj%fz5#rQIM-2QkheO+M|s*f9%>^xX?c9CSFm{AFW7+#>#`<R>^6w;ALxAwn>U;u6) ziLibHL1ln<TqD4RSduX2Ss~kaM<qw@V4f%<tu|5Rx{fQWrwy07_|M00XTUwrXO`WB zdwRwfsp5I^hHN&rcCVyz6z0Pu_>XjbyzkLIg>^m@w=qQ0K{p4akGv+ecrh8)aljqD z1M`%}H{g}|Ru)NXTjY6{f?Ixlv<x&(ad%Uy=SI$o&}~YH=C5dzq@Vhd4}NvdD$ui$ zmxu!`a>PBViRYeJ80c1(#$$V!RRxiNgnTOk5v1+gX*fP?jCtVa7dvhXX#0KPJv|HN zv5PbEReC;s8uXLX239JG#eAO!TlmEMa`;^c&{+GM!}$WaK|ZaaBL*F;U7a`QrcIir zn%1{Ss2x}+Ls=?Nf>iRI5RUF2Gf$q}lN%xyAg;eNA7sZYE%1+w?Ri6Sv(b>AK{SFb zg1teF<n-+SE=0vMwO64i(DYORN(Tb7%OI4AJ*dj81e0i1*x;|figwKSx8hNd${&3- zN^P-J&h`3um(CR1JSc>N_*^`+xj01zE^VPFOGE5Dv;t28Y%u4PFp4rBox$$nyfmpT z%m=q(vj7UNUk$>y&ANtp*T5}OU*hID(jmnJQ!5=$!&BPD9)o1iT09X+KoTF{cQuQk zMI-dW$uft;7s6_Aq~d8h^2vbQ$gh@vDg=H5Roaraw&ut0{z3}8ESiE3jb0pC>eq~X zfQl0t5`YWbiE=oRH98_d%w;2o>>;rN==bTn;m1F2ZKmo<q>9cV2HL9j5C>lely@?< z!{i=VPGLU2Yp@-}|5KIf5gRqz!9P${8M09G3+t9R-@Qr>Pvv0D-K)oQCP%PO>A$j3 zKAegdYplZ20SsVFa$qX5M;}%FN8rf~71kA+c}^AAM6B@a(DytWIxS%)Y~*le6%@8O z!(5z3AIgngp&!W=@)Y9nLaxYjjG}e^&_!lgI;`}T+0D+salBD>O_5{q4MUB~>glFh z$GTp2b&(4AURoUb8wmzvi-a%AXkP@wd_&d6?T@r@FDJtV6tDYh|DT^$qJDK9UC~D5 zS<vTM5GuO;tCBa5eohJGu+TN0RzWWKLO{#QUC;>^fc6U`py2F+7RSY%v6qYJ4CX^J z9_{L1`hOWirV_Ztz&SIdpYu$yoFf;$JIa?X<e3Kp%7bTM;a>P%MFzs)G7s)L=?O>$ znK?#%Op{G|63UjT?0DDQw{do(yxYtXd)nea>`8sD0n^U|JT2xiY=P}29I<hi>T{oq zc|-{068Bm1?{Hn@TmRDI#o9rLbI*f0+Ve~K1^l(ivp8*&^2-O2*_^;nX`LD5q1Bj6 zvpAa+eO}|emW4n0pi96I%Tkrk*Z(pnFxN;uH1fg6N0p7dHZ(g~_jVK=HG#EyuhaOy z;7i`N@3b?Jc$}kg&*xWtzga+4iFpmvc9LF$cfayLUGxPFuxNE|x{DdM{%ViuL$_dY zQFWnhWz}YRFTG3|e>zbq&&oNy!%U=KwE-s;@oWjXR%yg5&7c>wH+r)qNR{DSU?*)* zTs(DCVrIY_gyPi9KPsR{louc#A!=~7*rVgb!FNAub3|0l68MGR!c#Hmyr=hIfXwaJ zbkOR2IyY%u*1yI4<ET#*`h_#Z71gg^&n@#Xax)z$WhZ@E!AI`l5HfzifAiJK6Ephj z5fmDDb?++GN3n!EBb^UhO6g~2p9A8B({nn5lfq}qHLJo6&eUStR-L?wu+_7fc(5#R zoPUm+)6D{{pcAWKaf5T-BE6SO?+<Je-@4<D5vV}d;GNh+OE5GqXp}tAP&d*;^`Q!b zeinO!958S0@~JG2ftgAm+-g$Gt@#AmyB=uJs{aLQoW?x?ZM14x^%%hHyl(f=gTpC7 zPhqCFnPadRi2JldV^NG>y=?5u=^Ni4l;QdeD;X(_xMC+JwwU2pm9y<WV`$PPbKr8$ zP%&-RmR}P9yeTHnqHqHXOTRaadD~eYN*cWzRYFYsrN;oWdL>Za#W`r>dS$+#CjnP# z2#U<y%G#%4kJmREuuf#r;fDi@DqBwI!hJdg5T*Qa;F!O6{_>M)2u}eP{(n+et!dtp zXIA7-hn7V3<Mi;hT7P2B)WB~Q73#^M8OX+I(A&O2g?zZe=~Oh#Gl%s8uI|~DdcPqq z20EzFw0Ub@uP6!1Qh+D;ruUd`uc)9n(weyb?Rxdo2=3r9Vc1@0T1P7;+D8ODp@@aK zu;)kCCoX0;rVg@452VlDH$l;4w!z8nGdB`GS>v~TLTsrBBCROnAT8BF8$WCXHe*nw zIgPB|k;Q+gM&IkK>U58gDiV&Rpi<4?!Ll;me4q0XWoxc^9tC3BLzMsX15y10a7o=V z%3>boXJ+d#=Jo@YDQL2jA~6i!SV}=oYW8@)IQjYw9#zcnN-upCTA@vD@X-b3zzEfl zG?shVACkPnrnNrwR?34#;dwXr=?_^`_}t>xPCU&;qcx|n6jzUWf&&Rk0Uvp))vm4_ zZMgB^_E;2%jxBgwN@2DA55;X}#xPc)|1snOiG)i0gs4sa^X?Nrehak}U-{L4W#MQ6 zTcoG4=uPa2Z*AvpV^!p3*`Sk><)5d{i-Q~Vq3&vD%7CXQ>3<XlvmQ6UsNgrnSs*as zK7_lYoJnY3s^oF3_5)UyLTF&`kQ)sUwmKv{*e(?Cfx3<6JdWVgiezSm)kux%7X8eZ zLlD2~jl=F0xmBZ(<SM;}qyFZ$l3<vhjvH=6t;3{;KXMb=Tnwyv@E<rI&t3@~;d;h0 z{)T8W!ZRDeLg-mSg79x7swWes%)Gz-MFg9keKHW%45hf@&u_$NgcVT|dcWC=t$JFe zL$l>RqscZ7nf#6=nPRCl{mWho;*#qdNRFbU!LKvjkM6lCGmKER0;7;|1=a0hse;p` zCO_j8Mj|1&mfjRyn&#oh<Muvp)06Es`FoQqlO<sI7CGj4DKh1SX1!mSmFQLHD3(yT z6sD_{b3Zs1u?>X4UC2Dc@UY)Zk~;5n2|5vV@@yo6pprO0cn&N{>;9U_GTGQGX}ToA z61nn8AgVtEhvAcZ*e}`!qB7CpG}<%mLbIXK9~Pu?>074803X@ezSq4rG2dnD5WwGc zC=G`|YQ~mTBJx6mw2rhN>%?>O5xfvMwR^IxokM6wCA-1s9qSlE2bmORfPw>IOmV^e zOKE&9R*KXcxC7AkGOj?WQS1^GHv;a5Bz|W02c$~c|F?3wJf;>W<aS<_j}{kfOB=B% zhjhQ=9wyy8`|>9z=eoP>bzK0W=*5BKt6u6PNe4n9sc7l%V*o9-*L<r8+0#EL!)Jr| z?l<r0r+7^KYxEuAv#>2xI+PU6u2q9526$+P_|c)~YDlT{>!+O{W2D6tRrFVp#Tqi@ zfZbsk(6`d5|KGB=YD`nED&Fg|xU@^_J*TLactNoo{*p;TXnz_wb2xR1)I)T8f1_}p z?CalMeCJQrk-_7|Jio0n(56OOE96+n#V!RgAVphjui)$<!$pJ*sFj*#u6ZCpF9H73 zMUdHvfj4^8`I4z!u;lai>|Ui#Y}>-DGU42U$B5u4Q&_SinSCPSBnX<ll^&ZCzU(aF z4fh&N^Fj=|Kn<EvPeSK$uD*v8jJrX{j_TotsYP=Ka@nrlA?lBAwJ9(YPDeKQlq~&- z0{{1f@gz4&U`$muBc!IiDi%hZC=`Fuzxlm(jNh5lr9<Ey8{?MNnYat<S3=6nQY#g% zeCY8%dq?2AT3!Ahvpvr5pRs2Qt{23fd5*RzQf-kI>gQzUKTaEC`Nj7ZUHG@Er2GOa zjOoO*5;`gT@jN57J2<n<lwe1b33}yB7T*5JTac+=qW%&i+FUF}JNQJqE%<r^jLFy! zW7a7qsTsvEfFL7X(;)|+SSIlA^$KG}KSn+OKNe}mYMiavDlYeiCCItB2eD!SZgp!q zl@m_U@3eQL&g>qtA;g)1gz?>f5-^sGpoJ?PtBmMEx**K|;sR|K)sdtIm5{=^1}f^T z26b<de#904J-J!2jb<#esTRCsdzj_LCgGq&EzQQx2oiSMt`cR~fl@&!lKSb6h}5-q zpmC$O{g)Gga4+htxHWxivlfL5UZi1w;t)rhP>=7}*-eHoB%?q4F%<Bh1({~l*jVbz z5Nj6YtI^7UE;B^)QMwN-UQ}(C=~9ZkH>rd)^3cb<Q8rF&+p4l9_3)H7--^|Q{ZE)q z!C_z7JU^wWOWDj`nqFiAsWbtNPgZtIn)&<ZbmM7k`uuQ8L$1p>Es{nPuB+!2t1%Td z4AmRWyw77|h!N>7XOiOyHA!1}8^~kzD1uyak+w0_3%&|M1%-T@A8W}MeUf%y8d-V; z$U=O(zlNl7Ar6Q4x<tzUyG5T@G4qB>1u!jB2KZyg4h?_GVIPJQV>OVKCW?zMDmY#? zNAZOOS?(%JD>bR~_DpJj9omkw4jg{<1=c#J;bXn}vd@nXL1Via+79_5s&#g@O=m#} zb!Gzb6C~7vx{_kw2e#b~GUk5HMSFXQ{Iwu)4DdIJtbnc_gA*acDC2uiMy)F+7#lE? z3PVfVqn!r;N00UAK6GN2+bM&BvrU;~+Jk9}E;km`AnNPnq$Mzc_2f>Bx=zdeoZ28v zbnnxTVWi!Y-$6um^<c8xAZ7Hfqe%%K$lFyz%<<>zQE%CIbWCXC0SB>A%o>(9Pi?HX z)*@95G8_y`-{o4R2WIIQ1Y4bq)@%_{>k5Mnxx!#K_{pCYduvNJMo!~6*=@&J(fTB^ z?V><FpAKX@(AZ8nC&=)pN1AT~B;_6T;GcuKq;Tp+?kF?Ml;>ssbV5WuUs_peh>=0+ z=2(nX?uG+t)P1KejYo%mW(?n3>sXr(F!Bm15v`64Fgs0{d_yFdI)^Kr$RyK6+-bnw z1gXZNFPS_EJiuL6J4}RGUY$8yD|ie6S-I^#OF`qgN2|!Sdj!M0T?$<J4*HLt4VD{b z6L#E|RkijLjAGGzLCZvd#iU-x136In*QP=YVe_Cn^73B|fbzT0G}3pjFQjb&Ni3bY z@jt?h=Nx-3or+!{a}6bmvCGWyQ9FUqB^@hjlBDY25-Y`$>X}2=n1n6_t&$gm<Yi_Z z31x0!oLHPOlH7ZrHkIGO1p9&yhR#&@{<He^BMRt^iOpVfmJ7iLRRsKg_Han{rm|3R z&@^z&QQQ{xgsK`u)AtKdTp5BDPQ+aR)O_~?u(1!OGpIjjz>;A)i9Bo0`}QhLx|mv} zvo}Wyu&Y$VjIgI1TRG4$2!P6n%u3CnioYYM*Dj>D+}}5;)M1=J?-R)V*2}l>N?7t+ zlNtW^g57L-!TBLZm(*zG*yxPvw?{v2j7sJaElS)kx$<q>t2C?uo+65*Y{S03t5^d# z@re9wk|^mrPD}1-L3Q%CK#a;|gM>X%Vg-5CFzrBMwFcaksggx(Q*sO{M-`P&d>5ZI z>zQr9xjuSubBcg2NRy|CN^XU$SOkH|QJZVPd6kVXoz)ur;Dj(^mT~WxwFHv7WXAFC zKiXH+w3VR-WUu|+LpKe%*im@Nd2KvNCgYzf3z=N##DfHJ5E4<Au|A?#jrFf9#eL@J zyGwb(#EDcQ3D<$oG?Z5D(sw%#lmLjQ3k{649i~rz!E{m(WR~UlHzbn^2!aXj$@g}h zcY}Arg~0F;2@1d?U~U<MhZ(v<$|M(!vdaE^g_NLb$dRY_F%3n?Y+2V9mY-OYED(E_ zOBHwarw8_roEPSf9|*e`l4Kxa%AVso%E6&9Up6Tc6D~!RI#8e_2)w9$G{2xkkW1BK z)1s2<7Zjw2s%G#?-DU!yigU;)C%om>R;b$Nnn-=O=viIcExf;!p2o<j@`lsTPYf`3 z;0*wiO7g;NLz*HoG#LwvfwU5{3A{ud>;d;2z!B?k-U2d_WKujZA6b(c`n?8SnWhY~ zID8B~G<IlZxf@F$O|Wa7leuJ)et=ns6VA{6`&8a+xpo0!Et20%V8@!7d4mKfaPZ1* zdC}j{!t-!<k_jPs5My%0urhGY3Y8y|%hxB;lR%4Ai+;iOVWBr}EU-($6SvR_I;2`= zLWIf+)(zt1DFfFUH-czG`5^LtO@^GqBb*lMlJ__+`Gj^K^r2=_?Q%*prw?`yz=Sl# zSjfa%K0CSFRUd@)9D1-aCfKEXQhrI~ZYabqU=l?K1lI);6?qy<Up9H=g6D8+T~&{! zOyN0z{wj>&LGgrve72k)Nt6h84k_XbroCCUp)LgoYl?lGpN--!HNkruRD!t^sW=nc z^WuH|E*?s<C7x(`MVdTjw00($2JHvfoLy=wUF69PTcX&hrP`kim<oHB*tcH+L(G>E z@!^4eF=n+L241)SK2y-fPZ3G?T2_c*O#F6TkUHgLE#xS>N$%Lc75u`Kv2v+}rl;aD z5v(IkvtM_>xzGubLbH!^1?_?(WaZ2Rk3qShlZ?d}8MCh8K6su~K(flko$3x-;8#9s zi~Cp_nIGs~w}hnKzeacVopEw!?8J%Z8#<eZ<=m~ktQaa1=`dO*lj3UwP7y?==FukG zVJ+y=#zg+S%p?O=c~;J}f$0$IS*!QM*QX9{>B1?`wP!LVdlV<(>tX4MzT@+x^`bUx zVDHXvV7k#WfQ4Gf07-KF{HdNM>X4WmWvy+bLRT0T%cG(_{G;wC@Rxey11U#%q_@UC zNO*M2x=qsJH+b-B9UP2f!+wcmOwypG+RKaAzJh!odwu?zioF2tdn$I_;f+nJ)(_}A zL^~u)a<`Wr3k%e{mdX`iX-Z>g+ZPGnr-jo&6wdMZTWMH^xX>N?7`P!Oa&D442FUNY zvq2%>jpDIkE^cj7I5@|W3_uf=a&iWgw?Nk$g6Aibc{BgpVKW<WGX<Vrs<Ji~jQn>m zCSAQ4^X~`;)U*GZ$Oh;<|M+zF?3;joGxJU#@I~(c5t=OoKI<3#5~ivCDZ{KQhO`i2 zIWV;`(nRhJQD{jz*}{QBAY2uoz#S)%m(-oPgBBLK&3n3sDK>|vQ<`;+=nl@c5A*{~ z7HXHV{2LIspF0p5yS6CFQ0HWJ!dtm-Od+htLwp{a^y=-w>#4mTW4-cb-H<zHm{j+G zysuKXSr~jJwbTXRZM4&gw*Upn42=DY)mKmo8ggn;O`or-Palt*JOT{Yo(Ig)#SBEt z{yO<+WQPCYJ5pCydO+ltn2)r4tK(zs6EG$?P%cGd4^=hZHg6gq-H%7_h&rGOLg`xE zN%!`5_2@~h)QE!=Hg1DH^(4?I2<ga~NmAsEIMc#Klw#BHxNMGYMU@zxL5>`maEYPZ zD}`)uNCYW-qiP{`tfF1c4ctdl{#-wOC?%N_Ddu~`U>ItQSsBUP9Lo{W;S1piGa`fu zMDSfbj`R&$vlT+v2GvkvyyA~dJ!4+Xx?j9W-s2YpHoagRxImBrj3PW{O?-TI1vUsI zqtPF(z>~+PQm|?s-V0*FdE}TZP_w#m0kTq?npqa_3&8?DBuOOm<x#N12B84USUgZf z_A`r?%*Ppi1224d*Le(NH0C2y4~QA7G*yc-g?I$Z(lNGctx1SV{!(+9=)z{UEw<8z zImebMSe6vi!blawlXIXfX&OiJ%yDBu`L64I_z8n)tvpItJ56V_f@;9mpBKH5#k_~^ zOW_9fsct7Nqh?vk;XcG<5yyo%rFiKyB}uI;7ZhJCRHZefiKjeC?K&fi4+M35L<gxN zwPFp_?*HzXO*x6b(tk*$=Fel)Um!V#XljXK-RFA>rX51;Kx}6L4P2TfGC<v<K>nuv zK+kwthFb7JI}~&Lwj=?m9$zUxTq8zO&Vg+0naiiYtm@zRoY)?9q&W;l&k`o)Isgh| z{<W8aU_rjSG$>gpskFKizxxncM&=`)Lv`1mV6W~t;q8=LpV5`dkrgU0)+1mwkfR?a zNDgB}4T|2BJ?t~)|B`)q4<`9Jeg@xT*xcR_@6314W`kwsNPL%E#MF}ZXd~BA2b?p( zmY`saYJGe&V9AQUw)(;i_@AjKLV<}19L{k_M}eC#6s($^Jisfk8J(&s+{AN1AB;de z{<^%nwhG*th@4?1O=Wbn`^)^F&jbAXofQS2T&?C*$pR(YI1(3fPRS}>=G%8x1UoLv z&l0f{BptXB%?k&Qe7=<{wV#o9gv7Q_B(-;mecdA2d%WskvsOC*Y>1JDA!#M~P?l4L zD_a{`{%0D^8i#q133TK9f6woT1g7$rzS;HN_VkOtuEbj(owOYsS~sUm?p;WAX${s( zz6`e>4wXpy=Ir(Oph1U^3FjK^JZk7B$P(sl44d!%AkgX`BPkul@kgJdbC5Z6^hg^6 zCv#9is7^>&?<@9g1*ukAT?RQ1Cn+{ryQ%nFq90RHsXnqMk&<+@V$`v-R=GOz<_1#h zHSz2^43=6gq1#p{LC$}aJP`XRxHV&>CL)LM#35Xj*oP_V@VNjor<voQ!t82R=)!&k zqH7csk(StzUY(1Jw7wA%(PXR9i=(bIgD0h8bFbwMW|$m^jz~0yu`s`J1}LoH5C+PT zH=Hq_yEoa&S)7x1t;#Ar^~l2Rn6p|ENe@idG!s91wSFBojNkY<S7cg^*d*iKzw?O1 z6Q>^OEtmiw6IXtc;bt`M^~QW1gUD+gCelr*d~MvB2r2uR2<oU}$Z#4Qj52RTt4TW6 zfH|Vnfuyyi>V~t?%HWNuEq>Nct0;&mjcs$J{VN)LnJMvi&qtlN*0pYQN52t*4vtXh z=;QKChEo3)Fa_b!F}vOx#R@P|K(5RcHN6?u=O{x@gYi8$KMpNNX&tuoB4zt|Y)Y$8 z>BykQ5XoFMYmc;D+WDCISn=b4(~?8DHkOMt=v`h$g`0QB&~HhxjLc;~-CIpO#i0Oy zYVx2sX-!FXQYY<q1lR$RC*HT}0n+>XsMEY$#LuKQS9`t5G0;E%%I{gpXnruw%kg-J z;e=QlQSBTv9dL?fo1>sgbnSqjOiOQ0Z&}SSw=Sn&A}4Q`5P8D%Myq13GU!ZkJn6Qw zOM)F1yE@qUhBKk&Ln-W(Tr2XIhl&<RiU0NQt+?1<jCS?nz-7CAM+zht=kkUypnOWn z`|kdrzw*?YXb<eo-lei2SL7wH0(ocbu)?zTgDug1xldMAwfq8MO2gr1$-craQ1n2~ zNcyd`DT;`M6rT17w*DXW1g03*feH0D7qC%8bD4nSXj8xy?adiV(<3{z#srZx?Q4`L zt=;*i0VbtLqS`etJU^(DqTvEkd+e-$T+hWP`UcP8MQ)vNC8Y(S-QWhama0MhenRLx znCxwpIO;)p84>JykMeeY%5o*S+5{FA(%@o>eJX3QQ$9ll^{?iCW0_}-aAOCtQS3Vk zO-)&_j12=^`ysnRcB0JgaqL%>3|g4K`Ml|igd;D$Xny?mni5p2oEIC-^jIem+eQWy z8c=0-OsWdB3xs2MzB8RcHRP{h5s(?|)<f8u15H_pm?VFKiK-Ja_a7cAz#x54grKDm zjY+MH773D?4?d<wwl+JQmNf+r>RKYTJ^32A1dS+OOi&W`1QihrDK_)l@D*-~@IEIH zZm)caJ*_d(k``NusGwfuryXMCvRolLBMqHDYvXw&;f49K;mOGDLqB}e#B3inC!E&J zW<hrQuoh!Ne=n=vZwB^T=K-J$-aH?ir($R8GmhXKT%BDW_76RWTlkf(^5V}D$!Ye7 zdn+W2QBvovZ?KJxj=zx>X)0*{dmd&bk~u7dW3Z42ne4(ywR*b5jVa+3T%EK*0Ydf$ zk&|1uX(FuAqZUdp*iO+oNj1NBZts*^A=Lv{>ACXJGrI>?#Hq*J?541<HjSe576<cP zx5XAAM9Plkm0as0J~x%d+>IYB(3jCff3H<Ce$lRMp5Flr9u6o?S_Op!%Vsy@%prcf zX>`9LtU!T_D}5C$qErjdnqN6p9ZR3g^+VqXJD0?ux(=FD08L2T1*8)}(D{^CU}Q1H zOAr2=2WtbAYxpVH*gN`BzL~Qq<^xPACIQxu|NKu7GPV?l@j?2S3&SQ4kW;7@*FxTO z#r4l-9J^y)7Nt~M@Q09izD_Rs*?+G^;FR-UOLPaTVm{3~5Gmms=cXs-`6uwrXu<S$ z{_7mly8p>_*+C!FEZkf%j~6Mx0Q<sMgIn-{cfG4<p#0J^$QkdJ*$j^xrKEGm#S+6O zN(&I^e{NIRU&3#(zr`3n3pGl5$|I%sA7#c*`_V)wtz=cRT6;89ryk=rkr@moKQj2V zP^)aNC6h)P4=_2PRZ$t(qC=tc>TEAjPBsB(?HiCa!=J2HE?WR;a{Jeat#s+6hrK3r z)q38aSS>Xo%oec&v%1`XzMV@evup_nTwA94saE{mX1mm=M^B8wvg8IXHYnn~M#gm$ zJ+#iigIkZDkhQRP(|5mX&>0Z$@C1WBIpSe{nwjQ!%g$#hd-Pt_y5vEjI~OssK&2#B zhv<~%{oaqDHqM$m!&wbZJ|Z>4+rkj@rMZnC-Nh_khjc4dIo5aZ&q`-%i=oq|#qAgu zSmcf{eVi>1gTSPP9ek9hPSmaFk@*1&ZBneou~QRB=PI!TlA~h0d87FhqQflk9w|iP zy;;>VTcOb`KWXbkEdJ(zZM%$VP7|idOpEkNI|TMs0P5TU(AXs#f@YnCfzWfqkpD%2 zPp$bgi^AX$`44nGmA;F=?Lqc8tlps!z6o4}*(F+jlU%@7nT^JZn`(G2(J)wE`W7!+ zjJMyC<X?l}guiv7zZ%e1k9SVRB<#k^5UQJ>E2KNNsk7&ca%8mdi5joCZ!d$l&zE#X z86X0Wi$Ri9p&%Oi{bN)rmHc${>rJ@kz6^r=4hsgGb|ep({P2}j#EA3e^p$y|xM@L@ zLG&(z+WPQ{8R^jnqCEJ*5^Zn<(ZKOs;)th_+P%hZ=pMVJ&A=%uKH^_dzKj3d)XF*l zackvU=JTdQyrnAz#^(L$y1Pzpq1n(^vqW<)q5(#&j+AQdh`M#m5U_UeRm+)3CT?Pt z#l0eB0;nEz=Nul)@J{6M(<-t4SjjfYfbt0dfry=&@VwRLN!}36v>;UqBrP*EgXY#% z#yCjhh>9|?Pk!AWH2!Tk{9J+PYKjF<9DIrC!~6s*Jh8*2z8;?|Q(hwE)X!@nLo!w5 zW3A$f=6gM`<GjK;nG??b4)~MQKol?-I^)pRUInu>eq`<|lRNA`DyfjL>>_x&7k*<o zA#%o!k5TRLB%4h0w~H~@S00fXt|)r=N*)AV<CuQS>sy-uWPwHN{Xrh@Zb>PGSIMwz z3=duxQ0Fb>vGiKnQBh6D^vSV9Ri^DKpPQv><xfc`!jE#zQVg72nu=eX$_6;uWAPpM z1`576Y1k=q1`>@VYCkQ|EsW(h-0ZL@`cml|^oQh?4M-EZA{m^|m(e<UcYj?bc)xRk zU(v2a={Eo5#^dPt@>9$oF+?Vo*cG8W>RqKM^rh=Q$wnPd=LB3aN=o5R3plF*xVL@w z80|t?JwbhybS7eDdgFJnY`0I-G|ZR_UW|pUaPM^}N)u%A^?3M69cgW6wL}#G4|2i@ z;p;{44X)gLC3%JY?8L>r5KO_FS-Y_MEyWU<h54JmsdPq;8M=5^6kN7am+TJ&M4py^ zQG39fIH{!A7;iU$9P?E&lkJn&&kByXsjn!Ot-sx!0xSa0Gg48*U)f==Le(Vkw#+C& z^-3#N68(=Wah-iTF&BO>x_}o${4y=mz^=aYcQF#G;ON~Ax&g(uZyNDwPNj`3jC2(C zw%8X)&@c(W#!W%t%c*7Zf1eNfHAa#*J~rmgx8_4G?Z(rJ?!~1TMi%Agfi}wsHZkG$ zh`(ukZ^hXWr8vn}jz|p<B#b;B^yIQcW2cN$MoFj;6|$*T0G>3<Osps-LA2(SdATLn zm;G5vBQdwVNznso0@4P_5solnYA<H`wms#5V*owj<kfjen#}pq70S^$$$x2lYqUNs z<}?#Ni%r^5>|J9jG-OayWu+z9uybt*m9W1*2~d#gFPfN_{+L145Gat%o^hRRy6nlS zU~#<MgZ@vEWl_Hpqce2Hd^{-83^}r+&)?c+2I|6m?6TK{C+YpTwX9Dg#tUwm2cyNS z)B~L`ty9K$Uo0ywdBV%WOL}*=0K5LI{P$Z=E|re~!xp?}=sfKv?tP7#I(wpF_t-Ye zNP+#lv!4JK`en$TeZ087wl7f95=oAeKOwnvhbzF90Ub#yimp=%8vX#0Btk?>%}?hm z@jEjEZWDuaSU%D37~`(@N;x9Tu0<^c1gIEw%1Yy02|X>6YQ4(JsMK4E=`4Glkp|s8 zv0U!4%l+{$@6<^vyeHF@SqOE#6&%1cMJUDRGZukh;#Kklf0czwS#;}t@|ZKhs78i| z?8scuFbAA!F5EmM#uMK)z%q)!1%IBLo95VC{NVT_NyuC;Yi?3@VNT)H>W^V?{c2@* zWeRng++8~x9dlB*SIDSFzzR;|Xyljf5Azxfa9b4T`AF4Jk1PQ7P#+q?sDHq@Ns9D? zfg~oXZdI5uNvlEHRd;~bx`Sg~gw?EA5f=KWscLAeBydft)kz|8sM|BwHh!V6KHkw+ zKYyXPGf|VDm4pBo__S$JHUD`poh2)yrGJab4UccZ#5D^Te5+X_*~*O>iALz8ZGHax zVaFrgd&5i5+}fA~RPaD*NEzv~P;>f!t|3Dn*>W}RN1JwxLp_tsBuLtHRDcV2reOYJ zDQ8BedQ5+^7-ZqO$_9@@QlZXh2J<DfK@G`0ag{wu{*cHAA`JqJN9gDBqrA;pF@xND ztv9qtwFSA>JzUdmXzD)T(H^PS%bSiymIovZEb{6qfdUOb&iJ=}W?Crxvgn6$hV6ax zccx9SU~FSz+qP}nwrx#}H?}e1#I`*Xdt%#plZiLqxA*S3tAAk6_Bq{M>aOapA0Ad0 zTX>(b!y%p#4Q$hV_TIhl){ta7QhN_;9ehAtoDb9*Np;4A+aoL!#4S<CIyoF<1$;i! zp;1f~bCP<M-&V9=Po<q1+E{fIQVS=!XBJy@E>!wxUnmeBd{^(aVBdJ@EjR1sFJBkW zI)MYm`n7;s{K!#xqw}dWG+^JdUo9ySx*m0OCv)ZlK*wrFxBb%&goVYjn|v~q;+u)1 zCnX^i<1XZU+S3g}s9eKvt>9_6<&&>6KI>X62!t$jClF6W?-rVAgF5s!x^N=?tTq3j zyh7&biPCX>$$j=u?x}|g##Xa5V(BGCUZh!fO5a^le$}Gs{0WX2M<Fefm(?B(XvAnn zFB!IVHL<Pl%ha7tb556y{3wn9y}_w1jpO#I{VyeP7Dw?GceW#Mr%oMav-vuG!FAdA zn%^U`kg}~6)Yc2bl3|&o=9;9L*||#NWC}*KRSjOd$^waHueFfeovt{b=JRPM%f;lI zUV{3Aj^B%%t#oOf`cu2p{d@JDFOXtw-)Hite?69&@C{?2tgcSkgkcU$ILhf~*^^K5 z-DX2dJ({-Yw8c}V-e>#>?Fh>HMw{TY5F+*&KGk>YZjQ9PeM?ylJw9o8(fs{(NZA?r zu%s*Dw9g{PT=Z-|(GJ3OR@j^2@67TB4uKC6BWHul9~8h}bL61e-5X#}`gki+o^QBY z#1EAuSbe)CNs#_)5-Mv>!fJ$vNW~%xeyyIPet$b8V3~n$`D9xCAE_d%oK#bv`5@gn zOY33lN0l(awq^O`KNX5G<<HEC@n93&+sSIFOl{p%HkyDF=+wA%X1rrQ=HZXiY1DGP z>edit2gpwC4eHLPzadwcO4`mvAJN*wAVP8LIMWoaSr?r7YQ)n7y;UC;!!S2KNGJw? zE28*X=UhRILU&!Rq!*4<9s`v=FFn)PTITQ9D~+vn-$53wj{q$7H=`yHQfC(CQ+3+` zq@8GhxenNRz{x_FhN(Vc+e>ZDb{`!x8;Ku@#PMr_cFD@&`ehN4GhIfz`%*atvAc7g zK&<xjYpQrhLvupdwF;5C1uHxPg~Lohi@1r)tJ7oQUpFBdOakt%_|nZ00>x2!MZ3Y! z;Bgr^<BKDf+a*XMXQyZe&Oib>M7?u>xT|gfEFtPV=+Sa^MjUuRB@kTjy_@;sVtVkX zPqX)t3Z8{Hn3HlxNR)MRyN7{D8zeo<<pojEw_o)kLxM5=rzX9v(=tPJxT4QJM6a1! zqT47)E%bdK+U%k|4ubp*_2b|D**MQ7I;J{ikU5Zj9ya5$mJ)?<!y4_`fY^su?~8Qu ztgNkrF3|TbE-e`f$Ly=q^jQfkI`Wc%!)#z`=>*yv!CkZ-n~U2Y`4Y98$!X5ecWDeq zf+*^ipZuRlZ);lQ!bep$1T9D{^MC#dSVAueJ;t6zH+JqiioI%z%I<Q4NM^bMx3|p| z(eEJLl^FZEz+6Zbr{77pf$QJR`d;dOr3#zfKK{JVal{JwEgpm{5L@T){M7fM+R18G zGla)U_w(0s3}fJKLx+jC8g0Z69j{iLHT34DDXY&^_}Ur++nYBsMY@YU%nzFn7C6kK zpt_a^P+bm(9}Q#Q`l%3Kw);Fi-WtxYp^YiJ1f!KC9^GnAez40xB?NFBDMUAJj2nT$ zQ$iu00Dhx((b|4|Zu%=ExYGTG0K}~as!(hz2FH@sa}yj+qBFXtD$~8+D5M|Q=60+w z!CzhLzfq0Y%|yy#Lzd1s=AXMritbN&nTtsno_BIly0Tk;%LD@pk8L6HMP~2oKqG&t zVk3(0rS|g^bM{5!uV7muSMOhWY*-<xIZ5+8988NraGa}r8Vh87@}%+|+dV3OnmB@7 zcWS<4)OJ>4D{x;{dABS?h-k{C-;sh$GQU|qSfWdZphhZHc9x6;S2+}kGx9(E-d`&W zC8)j>9v<dQAiw*9pSU4Nd&!u`*ih12*pgf{lX~Vn>Iv^kwljK91r8VoMWi_YijBtU zyNmJ7#E8cWuykfY0p^om@cQi*qrjJ(X3_23ZyOJqZNmv;Dwyo^UOrE0u~ZNPDvj(m zM_a<sWZnW}R^(%VgSUtYpiQEQ6W2-05luw^x<SSwLC&5CJric!0tD#;v^*eiSgPO= zGYIwX83sGc=^e0#E@4gWG8QF4Ic|GspQd$4v^HfroKw9Yhi)q;dX~MLtT<c~vd}|o zLv0pw9<rr6(1zHjjNJd{)Mp%)espy|yHms=KlS5Smj>2o{E$k&SAAsvd0Qbtg@IFT zs;x=EPR>T33W6;?&d+V4{U~<FK2qhsb@Bt8wlOY)MW;}IeETm-D~mqbXrl{trBYXo zN)_Y*7q+ifIPr0h4G!v8o3nhs;wOQZS&;7L*M=NBS-ZUbAC*#!=QyLs{L5fBehy|+ zAk;gaawoJVxME3}OXdDI1|`OSQ%-Q0g^^*H-60EkFE&w80QF1Hrf>DQ2jrUS)zEYn ztBy(Kl>r$f@Wmz~%w+qbqy7wZk~(VcHh`F~pmW-YMJ~(wk^|Mt)h?uP;&UMm=>2t} z4C|79yHSKly$N1=A-CdYQ~+AkG|j5-kBLR_;_K;r1FI~V+!29uew>#+pz?(iGb%w! zTg$~c;edp1^Qa15&Zb}x>O%YFwb8kzD)LyTwZF_h9ps7~*5i&Ki6gVl`R;I3yZw`D z(hjE!Ca2*}YOPAavLXJ-VIR@Y1fx}GNFJp#996A1*{%Ds1lid*=?7bzrr6(UoZ?+C zqbzc9QKcG<fucRJG*cF98$?h<->!4`4^AeCA{{qajeh4I`?hs{8ci5dAvsk&<{D{F zCOvJ@nZAt`#{)%`uhi{$<MT~_6QSilGB|oD#@waq63R49p{dD&haJkD-lNu4Y(?pd zftquiYVpgD7aBhMa3%G&+befFft=zYL|Ia7)@(L?-<tA*at%{Qqf4;L{)jb+hW~9} zQFx#6s3F~yJpH-00^bkK0<r|NY;$#4e@{)Q`Hk^*up}x!e=>$sJz{W*mM&M{`yn8a zd3*iZa;*?a)fg;?CyZER0G3ht?1+$GK3@G{-5IzRDog!%b~`=pqY+wej2PA7uiQz2 zU2dGF)14ttWGO9U8BWE6J8lChQ*w{Kth7pk%(PV$%PIT=!DEOtQudK=%CFy~havjw z`nrMjJur-}&uo^Cg_HYH{we3Z5~?1Mhr_;_+u`6Y{0e2?)ZHU4ES<e!HSKD_{7Wv) zOKeuC(ig=XLVVsl1WIOY8G7d7Z52N`<)B7TG<U)Xp#JVR=2Zaa*_8xWL!#ekN-KAp z8>N(z7fiG)vbVtyH}%}&&O2ZUnt|19$|9@&F2<pPV;IYarKH-hN9nmI5-tN7e?()@ zR?#5K0t{AEu>P$a<xMTsFG$0!zk;fcTZ6r&!>;xq+hsHf_V7%HC_`%9BE#e`sCf-5 z^_&n*W9cbi@xljOLKfq|VdqCS!Onuo3(-5+&P5#P5=ov>6i4z2j|NK}k~e1f`r#oT zNVF$x4hl$`(n}?|807Cgu*SEV8ILV#EDc5$q|Lk4ug4E%B1$QD$kGpc;@qk?bE}w7 zIak%|1INam#-IOV5k4gxzyUx8XiM?WOZXf`PRC=eqA!kl-6(~_u94L1M#*nymw2v1 z7dUZZO6`$$w86t#zj7nx%ed?lH~#?7ONeEr?jL{ZJf|~Lnr201AcR<si<^=TdamTR z_=U$1o61q;;Oqqs4vi<Z*9U4rrNd3@vgS&a)i?sL0|nM100sPJ>XY9u;Jz4{=XfU+ zkYB5At8IG;evBdP8_wage_}i--HnXYCC3_(q2LoCUXotq{g<4tQzv7?%byGC30sfE zD795*MnijiXV1D&ijFLSso4K|*|M4Sq$BYPiHI$e<*g(Xoi{S9ryUpLC4hA;VgL|& z^*C=Gc*)XWn-|txngjwOy_UD2<NB27WsE%CO_D~tvlKkW&KSIE#ITZ*{XkROwFT6~ z#w^kQEqs$xIz4R1_2zr8nsquztR?E_@K{Pn|02eYv9yBcVU%((e~kZbX-G`o`aCt! zW$I^E&0iwfN!GL5DSQz-E9|IByr7D3O0^WEU3PZ~Qx*2A+nCQ7X^jW)f>qCu@~&?_ z3$L~)DX=#t?e<;7$7W(+V-QY&CK#t=w&t{d&ac|C!owaUIw8c<h+3on8!qgjvp!_# z23>dzT98jQuk!WL?)FT5|8x~zauQIEGGVBc4F{cxzNY+SqQF2zTa|NZ(^Vng$8|OZ zooilFyxP>8i;^6GXF3o?x4PauyZy0EP#zDmrMO>Ui3l3t()?{VCYzAQo}?+_+yRqX ze&(`5ILVBJ_T|zA0~eAB(X$r}-s$wd`^Y%wPuJzQeDqNcmm9-daD6-pkvpKh%(9Cz zn{EhZ{K?8^ZCqC8eg&4oRd~|1mu+Ai{xUkn^kdD&ezUfm*-1=SU+D!0-sC}5fV-k? zbZd1|@g^^}j$9cBJX?$RR`Hc$MD!>WCz-du0hc&V-?156G-t?T$3+ms##W#>7p_vm zX^LP=v3!If8Qgar(wbyeMKPu`P{)u7wdWd2)H-9WY*|6X!#iE_B1ob^$Cb=+zf<BC z-fNzjutxHaP=T$OCH=&OS_sW$5@zn{dS?<4J0f?aYkMAuH(izCx6J-@3Ih^1Me0g? zL3EXQ=pIGwwu4^v>GQg-G_~}DS^n`0(3rRTAZF2s4>*COz|22C{n)Z@Wa@l}&OZ@j ztT78r-~z{H_Ah}K4w-1-oBkJKb{NaUJ;94YSE7n+rmPyzwIeOJTtU4<Egfzylr_VG zaFE=;db8;xJL!wE4prm88TA@Qr2YN6ITyv@xyV0k?##(rLOGWR-yH`G1Bnap$ojBB ze~)Kp$U(|lXyPcZT19F6R?7;Sbv7r4JG;DnbT1cOO_ND1y@i_eSd>rz(#B-^2o&Ev zh#;70jH%(O%7Qj*y^>xf&L+*Qq>+9@dS(3!7H*0-e~5|x?7eB4#VfDu2f7l`5o3-7 zYDBaaKd){zri{nVniOtL_ig8K0)OKbRy;)0Pu{>gIMi0NZrB{p%4Z54oD2G8c{Mrm z+9QYIr!%R93?hP$wGU0dG}k@IJ&V3u8UMt~XEa{Zd?gAaDJA&byb-r=pri~rvpj!) zK9;Q}5A+Q()q%>WZ1wZ5;w)P4vx*Qmc$f6|1GL0r%CJw5b4A4hq?Jt1W5>#;mGRhp zZr-K2(1FiNS}<bnhHG@EwEd61wO)xRrYW)n*>Aat9uZ?0KV#=2w3hk4$s{)11N21= zFI|0SkE<*axa%kcV+TZ2u&kOg<2FE43<gsyu0l%}69b5_ieKA#^(1-+mL;)&cA0eJ z`AhA(oDU(+28!Qxvyhu>kCrp46-jW}dioY?3lQ4IXtyI}-F7u7F*$xd0KxEzSor3< z_K7^9Xq;nwg27uLRHbNxfG@!u6;Q|)t4?mt-4|9&=W<kFy1uj{az2?^#EcZ(3y`E( z%?#^p{<$ss3!>6&v6TIu^_wp~^*y3T7kL4PQa|e^6pJAK8WQAtO+@l|XbDr~zs4$? zfe$7!e|9A}iw(uQLJW*A6)Na3bX|)wcHYMa{>@VEkmehF0kP%v6pA=I9Im>&A&NsM zE|BOH!T4!<aS{ND(>_f%{rwMj^C8(XY-@fiecOl@1+z+$>8UuAwDq3r__0<K?q#2$ zxN3p-a(l7;UDE)AXqkI>fYl5p?3g}n)N1UhPGS{Wi*KA1uV*}WyO?n;htuJRj8z@8 zw+mHv5E<&aeyxDFKk1tmuJWpBDAf9jVAyaq&=irui4w7TjGTQk(tx)dEd_mb)eAGj zTZ@82zf@EQJ(f<eGTF&j^VV1Uz`NC4aMsU)4aNa{t;qK8a3&YW5PU&<fxe4;m1a3} z5AS6RFDZ!CmOo^ED31noo8#|n>cp5+-bek0wqo9FC3k*~&HAVH{YW(HHx45do`|=q z7Efg2ex^J2fHlrM^A_J@(lXmnH@V|lDC4(ZDWz-GG4CGvczf)}z14i#!eD*WStOSV z12NlK^`Wu4m5a}q+6VIunvDa5rS2*cajO%kBdaw=o`Ub^SK3OSnq6cZki9Z&LQ*j% zq@1{~azfUap}4-y_2xQ~_?t^-jI|tYx{s#tGeJ<$-j3@^rlb>BJGg2^kR3J?yrbS4 z+~LNi)npoY5$^{Qa=rAY89A%{t6<*Z;6&Z$b`@-e4?B_YW_r>XGOHXaDEajjmzN<i z6NYXC2C2h?rCg1PB=s=3JH$~DE}ObML&Uw_^Gf~t3souPGJ$>saU__t^VF;RP<RU9 zPYM24V|rcIi19-#Qk^IUw)+`_@awW4_u^Cm{f)UOwxrhwu<=c|4U)0th6e$j-%`@` z&0Fh`y&lNhQpD_ZnkpN)I;KL*f7P8DnYL;|4EUXgVQLVKm<o653u96MD!zAyVb!K` zi4({p09-bnAY-<OV)1!a@3D=f2X&;>)A?@S$h5%jg`nk6V08KeAt{zIWq8In`$zJ9 z2$Y+Ca417v25}d~(mThrOQ`w}7B)H1y^A1O*)lFgt`n7R<9uHQhj5@>u?>n2)6s}S z#H>seLsPTV^H6Xo6_DshLR>HKp+Dr|ec{1U>J?j5md2)Wq9nZLghMF{1&JUG8FP`9 z0R3&!d<~Z(zPTB7Ea9;Ne%aY)X~FM%x1$;pVf+k4u_r+Jxfe<oSEDBH=&Q>~-2)Pe zbrz5}#xayR_c(j@dcZXO$jR7zz|#^vY5H>bIu!zSn;`FRcv*_#3~xrSFRp%-@)u>F zpbr9&qx5t{K}B+lkI%0f%sOpH9!-1hwL2=K;9X||w$S!>QZD`lU0v(&>L<%2w%4u- zwI>S(^@jbvigE#gB;aljE=uqcL(c7wus+%<g|Y}iqBJ*rB_Xl_JZpWh8kac{S>xQX z{5f`e4@p|UtTP}BjXN;3))b@$B97rCCO>%uNl`!VE(XK3{<x`SW~Y7RVp+A<DX>os zTBy84Se@E_bCv}A!Wu2<T_6=f1fa=CcP}#*neFnbiguuOW`At8HdC>mtygSc#8OmU zpYk%51sBi^EfqX2lE1>MCM>sD*JHCvqHNWW#0`VRS6OGop(tPKl7QA!nBep(z?XlJ zLUX%-9PSk3C6~R9Uxi9rSIm(YCiL7J1~KO9hit<ppTlS7<6ByI%q6lWlDB;fFcDRx zLmISVPQ;fu0g`dyU*R^-d5=fw26Z!MSorllQYI2x+$@fq8lP8BMKDco+C*7l?2V6Y z3s~nFzP0_BiLEolbO<5GXSpapUxRjGg;E+LSS{3ybVGP_KQoKu`}Oy_l!qq9<vJrH zGwL8+<2nQR-jvufVPqVSs*9ic%z=<%7jt*h1T&UmLb3Q^Dd$R()4;)N8iSDH;8wwc z$p@#YyS^(jkEaZd!g4A;9v69^2qZ~`N#gJKv7oeK1hw4xQ5b33n=;8uJR}@GbF#X= zcX+)W@7s+Q{O`x(5GhZ#A-iPM)LRX#0SFEHb^MP~B-`V&%lWt!2Hi$Kr+Oi2b)3mZ zW#Hha<g<6)>D7sR%+mO&_mVjW2dw`DoaszDBuMA1*i$5RmMTY1MdBem@t#Zw1<gy$ zHEW$f1)fxp2@gfSGtQy*{yDA9NlfwTlDqO;bqru(j%xIEp#LGphmgBchAN-Whjj<C zzZ7kwe!p!~NDHpi*8T40Go%5XHO382bwie*Aatk2+bYc-!@NNJ3#Kh=o>v8^LO%`# ziqYo{q0Y$|Hfu1@1F86$S$sRT?&ljEECd~&=PW|1tWuw>JcCou!i4+cSsdQtTt8+j ziIi6Y7nG&;@lo5e+&DL9v*UHjadt9ZyfeXcKW*{eLW{zyA+pYKl(M}jJ(5wI>$Y{c z9D+f=J~WrCb5D(4p=w0fR`U@OXI6FOML7eC(XlAYWe6p`cI0pI!yz|$-UA|85`qv4 zf#V3*G@WjH$Zux>8Xpo&kTN-2P%B4Kh}=pdhpP@v|CWWW`xP(s?-F9B$c^fbhf3D7 zX#u558hwb76F9uNjWo%7%CD%}b!T2hA`dob@%U*zJccDd0Odqf7McZ3eilQ`0axqY zvXLCIPIlpDL*Tg6FD%f}7f%=8_RcxI*WjL&K4T<<a**fed#`JUtT$<vMp;V5j$~Q( zk@MbKKx9q{X+37RCJoOVD=&mS!8nl^06mEMJU?-r_e!nd`CiB8<5x)`@ERhIw3q)B zeqJ=H!;;YIBvEG!&zH2On%v?~&j9Na7QCNBiN0_BVdoE@P!IB8qEcv7@2}gWwVoNK zYW+85v6)>!V*ouW#4t}^MCFm+1|Cc4L11<LVNJ#~mc|v|#(R`>$?)}4vr?}*6R7QZ zXM4jQ+t_xx6r8mFNEzaEHt=GL8sBJ*c6^C9tR?<W8IqZ5+loD=3TxO;kP55|VYyuu zmN}-s=}+)231e1f#`Y*b0{{(jL-Z_6P2UqWxw-HpXpO)B)P3aAx7+iJSye!RBWW_k zxP*+_oQi!B!sx?j_!)t+bqp<J*>D^`WO{_M#29FOP-`&!gv#F6^NRL8kxJ%qx=!K2 z+b4jW=cf8{x>B*d%Hj}G6d2wCg>QdRID5rSMtW|G?OAfAt84F8Q1zLY;YvbeToy?& z1Cxe!y@~rQ?d2E!PUaz>zF0?gL;Ir7THP~k*?<A-a|t@~CS89{B*P68&&ISURRm>? zmt|N1M3~BrYJ)LabF_RGiw9AFQB;*JM8f`t?YI+f3py5<@y;+dytoHPSkth<T`H$w z|G;CCC~g!pObZs*Vg$$vEp~}VqJ?0K40FpU=oG2mz5)0Mrp&<B@%P+PbBt2(fZ7^~ zQ}g+6OX5fzZ-s;gCY-=3By(1YLwAMHjdJyF%0-V2r~<`2ys|P|xa(^%X^5>0`08s) z`ErcE1z=yt5Fb<3D`|AS-?ySpr_0^*IVNjr3HU%iL5;O>WPa1E)MmLLnJHwpXRHie zbbPB*Xh&MjquuS!BsD(JxXtFI$QjEt%mcJn8x8!T>6KFDrz5z-&@p)S=Tbs>&}E{( zG_K%>D;b<31R{EGIgA4vTE5O+ZcULyDugGx{9dqY&uBuR{M4jH&bh7Kqq1(zZ;a4y z&{1sFP*~tj?8=lGmF}{xolH{7<IX^nxugQ;f9oZJAxv2s+*=kH84fFo>X)!<foOf{ znuT{eik_7KUSgM>&EKV1%)+9C+$OgP+64-NTgp~o*{|W&_oH}1ZCEU$1t~<^O<b+` zO;XfU-Z-FLYP--afNo}app=yKfap+1mH>g?dR5$2<EJo#1n!JOlK$oXo+#8L5ND#) z7qjAz`day0Q;5E0mGwmZGI(8D>G!UDo&*e?vvde)L6IjRl#8@*vaIS%z0t8Uih`o$ z2gOVZ@s=@Un*+icPm#hEx!KVLU0an=ePzKCDeSkIFAs^@%{BOynESJ}tVII~ZwKUv z;qs&%t|*hx+nQ!^VUhiP5gE28MvI$3&LAXud&&4u7#sNjrDfPZm3dytH*g3oC<fUs zu$4XyLi%ni?w4)ex<OF6R(ciy_4CpVvCh??X_&0A%vQpPjG#avwMS;j-a8_ruyepn z{13vbngYu)6FZ`!YQ;7I?lASJn>u{4$u8Qb`MieBSFI>;XZ}=3i8NxGfc8i}vfRe; zW%-VwAcv9~Vj0wNqYTor;|8$~Lb<%L2}aJwN^E4A%*A!_cHX=*%<{S)x9Npkl;-BZ zNi`-{Wubb&HF-u9Lk>z4L-n19eja5aLq+6_^Ajo?8C-v;<uM(!yp5VWBn#1z=oY*u zh>SsWic}C>t5+iDfs)mS^0mwAaOh!27(3ViMvi}5vKKr32B`tz9Pz!-7144y2`8-d zD=qBy-U7LeS^Tf7!0thjfm^3nVN}HGYUS<@yivuoGurQPUq_@_duuVPJeml|2I{WQ zJs4jU{gG^n^YY#SL19P~vXgqA5&Gaf;4~fcXnF}lN?es?>Vs6CJU?TGTV~7(B@0U7 z(zMAJJdxc3jrO%=)8-TX8-mNUAhU$EyWCiwf3`8)Gx@%barI9A`jgU_jyX)VA!tE) z0`}~9Ik!=&N`RvlI8ZDWfHhGFTO%DQa6r|^oG=ve3wuwLNf(^PAZrjciRi-#{AQAO zj))OP%P=#XnelKO&pPdgJ*oo=ASv(+d9?uw9z-%khuxhjP0~`sT;JM~F%lRIm2_+R zdX&o+pkVQuStBcS>^sOF#B78m=~FP-LM@TX=8;OU1r&-o@7q0V^rd;ljil~Wwk1in zu=}&5_XGPHj+Ugvz+uN4ish=V4RHwv#6xUifW6YEFg-D<xNv7ythF$8t|s5wZMTvs zpg51OREWX&<3zU&qLt=Cvf|EDa5~jjh$zep5VC3;dqi-V%?Q)7NoW4tS%yp~qQOL# zm3=tf$#iwr{oq<^0K>29{J?;m@-)m)BWClXj<#n~@rf$?g)?kL5pb{^eH-QW<VFl| zWU{T&#Ifi}K~W3m?#05C-dPg*GY+YfObZIliLvOjFbiDTJn=(z=fpPP`ZXKfrfF${ z17*YTDAHXt-0g=AA%RrKP#n7;GL$CSNAFgQtBC5xbs{^`7Ugtv$r%6Bif3!x3+|K2 zd=~6#52C}*wEzSfaYtE~1QYb8wwRG{d~K8qF+YT$OBUhk+6S&j7bOWnE+)Qj6iqDl zQ<XP7=gJ0lLsLB20|M;otQ7Hx5c|dhd72M7o(IZx&?e26)&{gwqDj8kY}Z2bKzup% zz2eVD2|O2dj9@?QK~82j)S#@}H`Q|0M+YZTC_>0htH0T5#Ke$NcY_-c2-&7W1!=m- z35!TLKycp6vWMMxpF>D~XL_Rb$Ce#8r0>f#-s$~8k6|0Z{xL}60palHN>r+O0;z|k z+_p$1DeBB|917XbRN4#Z)z#=4&5P}4l#`3~7ZXe}qJFI9^PLS|Eu?@-uW!D{9Dh0| zqK7N-mBcbLHNP3uAqwtvwnhG6sN7>8ZOU6?9C^R?dUz!7MbK!Lu`j5!zxhzqeL5xB zP3>kcRLF24hPL+M_uqm8p&RO+V<SG8_%%HDxVDy^ys)<Ez8A*EY*6bzBeaV6o&*eJ zg%m3xdn_Q9cH<v3G1$^r#n40pI0Lmqo0$}iB-P>1cxJN;U>qxlRQQl{Xz38-E_cdi zA><TVvwuoCIa)+&VOB!cD@z*R040S9r78Vu>WW<cOc%g?S3Ymmllo4nWX3MRZx2~o zQq5Z#*5mp18w<{axmn`!K*%FhYV%`4D|173#u|b*UmMF8msno!Z$_5r7$)EWp6cgm zg+IHcNd3$&*oED!rzu#XPxE=_%P{gQ({DgxgiRtOH{PMpEz!^+_ZfE7sqs>yY2B8o za6qAZAsqyc_KsPev=O?iWkiW1n1e_L!*Q8yUk{K{jRxi^lD)04$<70?9S#bb&0&Y6 zw9X#07qy{R2?ZMNAiL}IlExo@EGlEYr&p4r0zEalwU?lCmaniXAKY(<*kkHk^pa<6 zIV(|Tm`Swvr>d>oG#v7@1*fbtF6u6t%T^sV4IJu+`r}iuJ~~vSZ8D;!yf~kILZfU! z8eJu)h6S=8__MjGJtBbPbG8I~D~2Xv0{Zq~wk`412xK$iX9i&}d;gpnOsV>|sM4&Y zsqQ*;NqK1($|E_$`XRP0;DwtbT%75Sc+^QSR25p*JC7mbyMCb-2`|L`55&**7%FxG zD<{|s==f_{3{GC`slZ{lZ@DJD7$Dv9ppNAksM6*?V139vo3nsl2P;Is<ak(0N<o2y zsv365CHRb14>Dqs*4~r-5j7F77Gh^^BjZBLeQiV_sANPofV6pc3rZrHEV-oD|Kv_7 zyo}W>RAU;d%_VDRieuW4AOltHiOF8X0qc`og%D9G*d^R)`k5<JXV#O5$I%iq+Mi?L z)i&4(Qe1#=M_t-VaP&0dbADQ>MUAduFIl5SeieletjKf)4M7(%Nv}2+CtCTXEP=cu zjg&gUuN+|XltANCt9C2?ck83k&mLP@QUpQ-a=+Tt0WD=2$v=p9A9@rNp>y={S6}mP zP(&_TlPxtDja<jyC7qu*L=K($FsK@yy9vdde9)m)rLs5b3GdnITA*u(Rgs7cf|O+M z+U9oY1n4|pPa3{EbOJmznNjy-IMWCF-jS=@Q+}IZ=<>u8-|S))dnC0Oow?)DEYD@C zX3T9ljf(^3%IW{`XBkH>Bqe7K-_5wS;8Z}pZCR%u+EWQ%)fSbgK*swz6{F_K3j~ic zZb+6QJk99~EanU^Fy+8#4^`if%YnGoF=?U9laUkI2{|0q*?<Nrnz`f6yv=t}it^MR zt~xwq%h=(Tm*=3{9iFX>?RZ_0tI?gAB2z_C(Ow2=3p$}eAmBG1Tk2)V>rVAA*0qQD zWSP^SwpB;VHZ_fP+Rx{*w-32jk|6-(dO2Voiq<rIkM#Jy(N}=ZZ|YX6QF@jc5Z}LV zg>2J$_=Xk6(y%rf3QhA}22!1Z-kTbeBU*a^5}$#VMCBQ*LoqWTeQf|3Sgy;@a*{)B z+YZovGCW)L@g8Cnnmh(cVY^bH0FZcxfW-}QC|bkcsxrZ>R+(1=UVFj;?@v~OaToZ3 zw*{+d#L$j4Y7k28i1h*dJf`2fo}p&0sLxuIk?I6)&xKYvnlRg>MzGq7wQj8O)FY7i z4mA|M^Z6SJrTFUYGL|C{j3c~|?#=A|3I>)dRX*T)x(1(HED<OfYW<@5UV8HAxxVDz zHwxr<oFm16X)HU`;B>#C)Aa#J9R=q{v_QRQM8OD)6A1%M?<)soDr6u>jDuiGS7~ke z?lFu1!u#i?-<A79p333Gp<rT8?P{&eqnV*A2M`}QuRGfW2Zk>Q@h+lp^glK>Qse3- zA(Y3qQo2rGL#GXght6sYJrqz1sb-ou%@Z^Qt*eMx`WeJ{fPyTIxVmx|E>ktwJ@Hl0 zePTGX+3Q?CsnmsZa&q|~&0QId3R*Y$F-LI~O3_3-vWJawdq%BJ-RTFqrM+M&?=a6J zBrJaCKj4pq+p4Per@JKuqCVKB@a^LQqcCAKe<j_8v8#}13L<cA>Aeo`Z)I^E$60A~ z$kYPOlO(txsClh8%T{(h8991s#G{*RDU_Z)AcijpTD9a{*X`{qtKj6%vklL+7aQX@ zTO^xr&56^7$-q?9gtuWfkeDw=JtwHfvL@{c4Nz95`nDE%>TSH{7$oc%XoscTX_LeR zt+S{lt#O&X^VT;`@os_^ReISmsr~whx*$BdIKa8K4UG&^Qt*&IT{YH3hB7yQW(Wi} zge7;EOwAf_@CEU&c3K~)a~)B`S}M`sP%zi-q-c6oS#4sXeV3cpG{H9$7xwj8o+d_Q z#`_zVwcb|KwNCzx2AaZ^sFhW(+#zN@T1h+}bB|4ukF5*8Mhk;)0BkzRS>?n($k7%# zD@o!y3<iq7$DgVI;WE`CRa=L7CrjKAQ3P&PQhD5T!)h+CCbg5@O2$c;F9GBM`Y$t; z2#zZU46HU@R~~y8G+w-}EM0@1VXG*Ve)Z@}wJ9aTjGvd|bTu2u7%ry9N~(w&!qQ2h zf&3T=^!@l4E}h;M{Czm<p!fCH+Y)?an{Lahu^P=0vd^iDvb+`~&B~5v1b*W#Rc?5C z%B3yl2sbKhfPx9Ybnela<rQ7p;47EM-fK!v@x?a)F5T-uOXNeOCcauRq*|d#8mmy9 zM<I0NnlHi+QHYsXah@Nx<m<y7yUa0ny(F1L%{j12wTKHz^jzerB~(w{p%ScGG%q17 zl3XsItf|Ud!pt>^+O;+><LR`J*tUk|aAd<EJ3}?pB6rvYmCrenNKk56t5mCWftEIY zOT$u*6&nkr9Xw3XxIQ@tnHJ`?O8zg}#3*j39YV38!3Jc9ZN?nQGZaX_9m`PO5#N^} zl+=XtQcFZzkDmCntn2wnAtH4ygC+GbSfFlhLu)hYF@@IBiNt<Q<6&Up_(WT|Fle5H zyQwR9x)nsR3Y*b6Sx0I}{7L#4Z$5;K0X2K$-8$d@i5b$EUC|=V&99qopltq%jAg-a zPG2nqChD{e#-f3$x8AIy>wgGF+WR7Ty(@8=>1KXxZBV|nHN=BT-DgaQ*L-dT#{c6- z82YN}!PyY37${Ydt>gTNpto#dwWG|;EB1&Vqku^<n8;Y@pURc3k;C(AQu4z-e*MVo zl(DkkrLD@H!9wO%JBh53yoh~9S@tcM0c-(O<;~)3%eJcqjtUO-s*bP_wPVU+)-Gdg zxWEmfo)HRy&VBE1IvrE72U+-atdiB@BtcN62n0HKTS$i6j5xWuOYMPD2sQ`?$_u?} zfdoL@sAAd~&-Q7GqnCicyd=7;i1Le2RRxvlzYr}277fT1s_Xls(E&>(n$0Z5W#ixM z(=b}%zqya!Jf)S8!z6d`&+4C;4Z{>T{^5hHv-<PMT4OWNm_3yxeKtOQrShy6@(SwJ zKDu^XF><9S?ySOXPDUcT=Ly{TBLi%UO|V`V;OWp`T1VJA64jt(c$;&Zu+Nw6R!e#0 zsk@AT<lCYRa(jUsSqGd*6QMzF*Nib|eMRB8t@xYjh5${^!{t;X)Vhvxm%|)Yj~Yc9 z*v+dFca}OFfZ36VzB2--nxyOF4g)iOPkfCU+X~sKvb1}YxI+=*5N&C>C}f@Q90v2% z@R8Od1WAE+-zIvt`PY6W7nk-;pl$pShJ%p|!B(ND@FFCwghp{x-UJ%*s0g?2`uSY& z9N!(2d^qKZS6h-#LJ2lnovaPfrvJdi7v<(dxZI=>b`|5Fb1+h(qgy=l4XQLZrCYTQ zRCr!ec(2;3{PS7S!=0sJu{EU3;IM6nvn8!N1ED99(L-*@skN6W(~ufJKvFkv$O)jn z^3=dluXQ&U-&;*@4Vw8pTLhxO5MEIHsj<K$To&r5H>-Uphxw&}t;J)4)P};h5mv>? z!?(UPSb%<tgMGy97t`9sUDOKt?LyxXRUSjhqEObT%Yv$sJkFfAR)*W;dm&lXLrehh zG-6QJ0?MCqf&9Ix4B4t3gP8AK`8UxNs~`MTbFcXW_0e&&|2Hzn7fXg(&}pF)y6M%3 zn|G|wbiixcF6Hlg?TgzsAOTpu%{&BcGod4`&2S>4Uu-c5>qIsvJZbntN<^W>iZ%UN zaf9tp5`4T%Qn_5R`vJc^pU-40xc@!wfXKKPe8jHIgU+ph>p)p?H`dJh$AG-*4X5m! zh{nnAER8t`#O@*3w=Ue`>F8u|{DAWFK{aHZ=#_Gdi&i6K<e;(k+^(3I92^E5|6QK~ zi4R2o7-(66zFVefVpQfLZ)O`!{;9IJ(&979`M<Qgzds9&P-jBo7r0(E=Sl6(tE%DF zE{aaO5m@3QJ<kD}_Vrd0sZyjFoaxF)G2yV)Q(k118ZLL%3GwxF6e)DrFjHLOyU#B_ z&PZ@nVZzEDd$sS2$cHa#*;A4y1Mq%aWJ|FcW(5CqQ#NQOLB2p>XQoX){0);QTf&bD zz<)WdvrYngwg|>mZ4yv6@VG!p3MncXFA_kg%|zDPv=}@DxVUwK+yhj*OX{qvFji0p zv`s@!Oqq#NJj5OoI*1^}=hI5SNl4hU!931bKj?7xQrN#890Ka_&4w3Y7obWfOY`Sf zC$AqUc_+U|n0I#tpQZDQoAGjzaQ*mwY~V49(AZqf;rE2~fTHsTO0?`MJH1zgQ~2-@ zMbiiIc99{;NCY9ZDRu^n=W|eUpEOo!#=>akzIg6h!dEPvBLJ*K|G_wu%AuG(O7d!2 zdkNk<BkUl-63BdqR6K!$I9GmKzB4KR0>P3M)dbH8x76c&7KV)|`LUj9RCA9ss}df2 z&Bo9O%)-yg!dLePpX-6$ccKZsjfHSsCRS1v{pLz@OBqZ)W=%pxuzxghGBnzqI!N2^ z3!WvXJdit*7=5F#ZtHj;gb3xc^<KSUL^9lzQ_#69*0~Ve=<@J`!t)sgX(5#kB|JT) zsbAef91~>OsxnAO3>>PL+X)J_pF@YUAX4K}ZaLt)l?GtB7menVG`z<PO6m7+OB1I% zcbZ3SbXr#&WB&$EJRj`)c|(xDBT+{D-52D2gi{b6sV+;#h)S9XgEEZ_o-Rn8@d8bu zsCQ^!a2J%H%fi&GG^JGC$tgis_5*E#sBQRS<fH8DmX4^%puVK#Igy%xP0hl!gO}Iu zEELSgRb>MDaN6DVU-?V6J^P26tImfJPcnD+po)`z45S?oLF<T;zQ^Mlk-#z@4UqMG z-YZWwdEdaK%vp6wy}x<suxMHfXcK87kw38LEB@WKLSP5mQ`Ma7`5C6oUo%=3#QUb_ z>F%1eyTX2B3gHXHn0Q!w(q~^U>{y9zoogQ3BmJn*?ub1+Zu`xUlZHFT+1_LNNs6pQ zY9-FVu8CWqsCv2ylb;XS#_3MJ)bJr1W~nWejYp7tRHI>j90?JXh?38L+*6DEMCzS^ zbKshVFL<n2OW!{z2<N6CICp36Oqe^fk6`R^2_L?Mh{8RQH)6noJ4^{H&SdsU)QLLH z@)nZ%sPY&WRnk$ciJb$QBEunZG{G<AahU2MV@fw=NN%ZkS42APgN=jQSRVtPqxsVJ zYch{J{l$*isW3@m<5f3c8w(j`Wb;kCTUo{XJid)F0aG6D7a@Jlp;TaBXk>hB|A)+{ z{;JFq87;PLo&iS}#$(Yhx5*oNxJ_iTCJbMzf~)V)6CfbYfUmTP|G)gdy958E%><E` zQB&9c>SYuqm1LAv#o@nTbqO_fVi9>!4TUedh^jim|DdU=e~Ev|iYWXKIdvIzd5JGM zbyYdAFF6(v88KCH$S;VMnS~Ps#KxSBc<~F95oZJc>OeqczXq^=0XSdq=Z89o1c(}l zItcMsmHDdjU-*{+U&{XvA|hXGQ4kG~FS9_@btF{3I;gMuuOf9-F}W}JAH^(8tRU*j zN^1XsvN5rLp%N@#DBk~~Qv^iyU%mfW@HM5f#6N~n{cl45sg)Sye;y#BETJwUC87OK zF4DoTk^iJ5{VIk3wqMP^3;ycWT}{ls!iAVv|C1nY<7Ni(Wf$CkNQ&5-dN}--ZAbmD zbYc@%cN;hN|H3Bz^2wJU{&B%SMdZKo|K<FXK=q%ZV`1X@@AmwsB6S;gdyD@*)4zWE NzpNnm-_c*qe*-u1hMWKZ literal 0 HcmV?d00001 diff --git a/test-data/artwork/sample.flac b/test-data/artwork/sample.flac new file mode 100644 index 0000000000000000000000000000000000000000..1cbe3bf24b43be052c49469ec0a61f0822e5c22c GIT binary patch literal 39532 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%0AKJ!4X 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 Bf#d)H literal 0 HcmV?d00001 diff --git a/test-data/artwork/sample.m4a b/test-data/artwork/sample.m4a new file mode 100644 index 0000000000000000000000000000000000000000..43f85bae21072bef4aa9c60cb6aae29299ecc936 GIT binary patch literal 5803 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 D5Zl&_ literal 0 HcmV?d00001 diff --git a/test-data/artwork/sample.mp3 b/test-data/artwork/sample.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..ccd719a8a350c4563ebc60fde43b036c775b1867 GIT binary patch literal 24142 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 literal 0 HcmV?d00001 diff --git a/test-data/artwork/sample.ogg b/test-data/artwork/sample.ogg new file mode 100644 index 0000000000000000000000000000000000000000..550329c9d55f82d91a659c94897082de543e6b69 GIT binary patch literal 15760 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 YdNQ9iIU6Und+y6jSBNhT2nY%NFYbGoE&u=k literal 0 HcmV?d00001 diff --git a/test-data/artwork/sample.opus b/test-data/artwork/sample.opus new file mode 100644 index 0000000000000000000000000000000000000000..b5291d53303bc4875f4cee6aebd909e5158ea5a5 GIT binary patch literal 7190 zcmdtnO-K|`902e)uJ+~Ere&pBb65!?O}94eu!nUWYSG=PnI|2RU~<=OVb>MMkGjaq zC<qKGq97>hl1N3TFe~g31(wyNLc)kTL>X9gvJbTXf8XYG?H2!Gm;daW$MAmhKK?U1 zdOU8j9G2a_KD!ac-LbLvtxBoh*<<gHSy4r)SH#^+6&<TDZdhG`U&g)R`#B3GSf5*Q zyAX<+t=@KDeT{c#O<iqmJ`}j&8%Q?vg#BDIxf*D0XbD&TDYK03kj?)(q6Q2eGI<GB zfW5_InbHa<4eH^r7U6z7or<YlR!20QQrpt0RIH<WIUH`ZxaRlP*6qMEG-_th2<_n^ zJ>s_$NvKkQr3o__X$d!IhJPD2M2iIVM)(0OZ-bWmwqwiHWa3~NSV-EXMGQ@zpe=?R z9^%cKY;<N9D{&(bY|5UtPF}6-rDJ%t@JeqQ94zy?{&|~QnEwwy*#Xgq!+>RoE{KO_ z^G*>X3a^|c*o(P9yzVP+Cq`tm4lxgi?XMp0B}Nn@I6UP*T>?=V8d8Z7Sqz7#Brb*M z9xogvMieRzPf1(`@xi_iO~i<7+96^>>yMfqVnlHsXQ1rG6%Z?qT&^ZYWG2o)NyM8V z&qvogVnk7dGf)!owrW!Jd?rR@j~yc3<DKh$Sw)N}j^iRDd$9=O(dk<*Vni0eMMe^f zA$A{gKOsgGzZ@bypp-uyC3lZ{8`n|Uiz^{USpRcsy=db)Dv9{``eJ(K8Zjc<itDH( zmO^yrw*DkW6f+KS6%sdZv567cRZJDK7gs}^e?4)M7*SZ5DkQNC;<vY-E)pZMN=y}! zxCUZ;qI859QA|0+wLrX6aoS6a$j)Lml)bnP;-#vtNn%8yV>Xn;a)_M+<3+@XEFZI> zB;vo^9=&gv7*RZOi0gsK&r}~KMq~q+@MSOJn}q`fU)~TS3O^=%N!$Q&f3kRr7?FK< eh#P^ZT)0W>wM}mQ4~M7%@ygtZKE(xZnSKMQU!q|E literal 0 HcmV?d00001 diff --git a/test-data/small-collection/Tobokegao/Picnic/07 - なぜ (Why).mp3 b/test-data/small-collection/Tobokegao/Picnic/07 - なぜ (Why).mp3 index cdf7bf24696a480fd37cbe76093ee4bf52ba50e8..5ad111db2bbce10d974119e16a5454c169885ce6 100644 GIT binary patch literal 41923 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 O)o*{h<$wL!dFbzG9II^r delta 110 zcmX?noau!om#2#{3qu0~gFxLxE-3*=A14L|1`Y-W=77xPyv*c@84AWBE<w&fK{g;Z zGB7k_2nllb2C`X!*j(S7Atb=n5Xj^P>IunD%Fj+sPt4!^a1s;C<`0uTGf)07iD&cU HX$d?4Kn5IO