[INFO] cloning repository https://github.com/emacsist/socks-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/emacsist/socks-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Femacsist%2Fsocks-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Femacsist%2Fsocks-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1f71ff31525e036f29453aa3063496d9f3e3681f
[INFO] checking emacsist/socks-rs against try#b1f2594eac607c1f051534800237eeedb5590a49 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Femacsist%2Fsocks-rs" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/emacsist/socks-rs
[INFO] finished tweaking git repo https://github.com/emacsist/socks-rs
[INFO] tweaked toml for git repo https://github.com/emacsist/socks-rs written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/emacsist/socks-rs on toolchain b1f2594eac607c1f051534800237eeedb5590a49
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/emacsist/socks-rs already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e36ca228d27ac6ab15d86e93c55a2e45f240ff04b855e3f4b677d1d9a07dfc79
[INFO] running `Command { std: "docker" "start" "-a" "e36ca228d27ac6ab15d86e93c55a2e45f240ff04b855e3f4b677d1d9a07dfc79", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e36ca228d27ac6ab15d86e93c55a2e45f240ff04b855e3f4b677d1d9a07dfc79", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e36ca228d27ac6ab15d86e93c55a2e45f240ff04b855e3f4b677d1d9a07dfc79", kill_on_drop: false }`
[INFO] [stdout] e36ca228d27ac6ab15d86e93c55a2e45f240ff04b855e3f4b677d1d9a07dfc79
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 536e5ac2da8f9accd361e682df45ccfd3c339345590629d68b130289c73f7623
[INFO] running `Command { std: "docker" "start" "-a" "536e5ac2da8f9accd361e682df45ccfd3c339345590629d68b130289c73f7623", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.21
[INFO] [stderr]    Compiling memchr v2.3.3
[INFO] [stderr]    Compiling syn v1.0.40
[INFO] [stderr]    Compiling serde_derive v1.0.115
[INFO] [stderr]    Compiling byteorder v1.3.4
[INFO] [stderr]    Compiling libc v0.2.77
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]    Compiling serde v1.0.115
[INFO] [stderr]     Checking thread_local v1.0.1
[INFO] [stderr]     Checking block-cipher v0.8.0
[INFO] [stderr]     Checking regex-syntax v0.6.18
[INFO] [stderr]    Compiling serde_json v1.0.57
[INFO] [stderr]     Checking humantime v1.3.0
[INFO] [stderr]     Checking itoa v0.4.6
[INFO] [stderr]     Checking termcolor v1.1.0
[INFO] [stderr]     Checking aho-corasick v0.7.13
[INFO] [stderr]     Checking aes-soft v0.5.0
[INFO] [stderr]     Checking once_cell v1.4.1
[INFO] [stderr]     Checking aes v0.5.0
[INFO] [stderr]    Compiling quote v1.0.7
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking regex v1.3.9
[INFO] [stderr]     Checking env_logger v0.7.1
[INFO] [stderr]     Checking ss v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/utils/lib.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::{error, info, debug};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]  --> src/utils/lib.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::{error, info, debug};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]   --> src/utils/lib.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         Err(err) => {
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ipAddr` should have a snake case name
[INFO] [stdout]   --> src/utils/lib.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let ipAddr: Result<IpAddr, AddrParseError> = self.server.parse();
[INFO] [stdout]    |             ^^^^^^ help: convert the identifier to snake case: `ip_addr`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `err`
[INFO] [stdout]   --> src/utils/lib.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         Err(err) => {
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_err`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ipAddr` should have a snake case name
[INFO] [stdout]   --> src/utils/lib.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let ipAddr: Result<IpAddr, AddrParseError> = self.server.parse();
[INFO] [stdout]    |             ^^^^^^ help: convert the identifier to snake case: `ip_addr`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Ipv4Addr` and `SocketAddrV4`
[INFO] [stdout]  --> src/client/client.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::net::{SocketAddrV4, Ipv4Addr, TcpListener, TcpStream};
[INFO] [stdout]   |                ^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Ipv4Addr` and `SocketAddrV4`
[INFO] [stdout]  --> src/client/client.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::net::{SocketAddrV4, Ipv4Addr, TcpListener, TcpStream};
[INFO] [stdout]   |                ^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufReader`, `BufWriter`, `Error`, `Read`, and `self`
[INFO] [stdout]  --> src/client/client.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{self, Read, Error, Write, BufReader, BufWriter};
[INFO] [stdout]   |               ^^^^  ^^^^  ^^^^^         ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufReader`, `BufWriter`, `Error`, `Read`, and `self`
[INFO] [stdout]  --> src/client/client.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{self, Read, Error, Write, BufReader, BufWriter};
[INFO] [stdout]   |               ^^^^  ^^^^  ^^^^^         ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `utils::socks5`
[INFO] [stdout]  --> src/client/client.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use utils::socks5;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `utils::socks5`
[INFO] [stdout]  --> src/client/client.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use utils::socks5;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/client/client.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 |                     Ok(mut ss_client_stream) => {
[INFO] [stdout]    |                        ----^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/client/client.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 |                     Ok(mut ss_client_stream) => {
[INFO] [stdout]    |                        ----^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/client/client.rs:53:21
[INFO] [stdout]    |
[INFO] [stdout] 53 |                     server_stream.write_all(&mut data[0..n]);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 53 |                     let _ = server_stream.write_all(&mut data[0..n]);
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/client/client.rs:53:21
[INFO] [stdout]    |
[INFO] [stdout] 53 |                     server_stream.write_all(&mut data[0..n]);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 53 |                     let _ = server_stream.write_all(&mut data[0..n]);
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/client/client.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 |                     ss_client_stream.write_all(&mut data[0..n]);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 61 |                     let _ = ss_client_stream.write_all(&mut data[0..n]);
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/client/client.rs:61:21
[INFO] [stdout]    |
[INFO] [stdout] 61 |                     ss_client_stream.write_all(&mut data[0..n]);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 61 |                     let _ = ss_client_stream.write_all(&mut data[0..n]);
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SocketAddrV4`
[INFO] [stdout]  --> src/server/server.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::net::{SocketAddrV4, Ipv4Addr, TcpListener, TcpStream, SocketAddr, IpAddr, Ipv6Addr};
[INFO] [stdout]   |                ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error` and `Read`
[INFO] [stdout]  --> src/server/server.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{Read, Error, Write};
[INFO] [stdout]   |               ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SocketAddrV4`
[INFO] [stdout]  --> src/server/server.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::net::{SocketAddrV4, Ipv4Addr, TcpListener, TcpStream, SocketAddr, IpAddr, Ipv6Addr};
[INFO] [stdout]   |                ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error` and `Read`
[INFO] [stdout]  --> src/server/server.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{Read, Error, Write};
[INFO] [stdout]   |               ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server/server.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 |     let (mut buffer, n) = utils::read_stream(ss_local_stream);
[INFO] [stdout]    |          ----^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server/server.rs:84:10
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let (mut buffer, _) = utils::read_stream(ss_local_stream);
[INFO] [stdout]    |          ----^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server/server.rs:85:17
[INFO] [stdout]    |
[INFO] [stdout] 85 |     if let Some(mut buf) = buffer {
[INFO] [stdout]    |                 ----^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server/server.rs:166:17
[INFO] [stdout]     |
[INFO] [stdout] 166 | ...   let mut data= [&[0x05u8, socks5::REP_OK, 0x00, socks5::ATYPE_IP4], &ip_bytes[..], &remote_addr.port().to_be_bytes()].concat();
[INFO] [stdout]     |           ----^^^^
[INFO] [stdout]     |           |
[INFO] [stdout]     |           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server/server.rs:171:17
[INFO] [stdout]     |
[INFO] [stdout] 171 | ...   let mut data= [&[0x05u8, socks5::REP_OK, 0x00, socks5::ATYPE_IP6], &ip_bytes[..], &remote_addr.port().to_be_bytes()].concat();
[INFO] [stdout]     |           ----^^^^
[INFO] [stdout]     |           |
[INFO] [stdout]     |           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server/server.rs:193:10
[INFO] [stdout]     |
[INFO] [stdout] 193 |     let (mut buffer, _) = utils::read_stream(ss_local_stream);
[INFO] [stdout]     |          ----^^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server/server.rs:194:17
[INFO] [stdout]     |
[INFO] [stdout] 194 |     if let Some(mut buf) = buffer {
[INFO] [stdout]     |                 ----^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/server/server.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         ss_local_stream.write_all(&mut data);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let _ = ss_local_stream.write_all(&mut data);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/server/server.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |             ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let _ = ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/server/server.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |             ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 95 |             let _ = ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:127:25
[INFO] [stdout]     |
[INFO] [stdout] 127 |                         remote_tcp_stream.write_all(&mut data[0..n]);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 127 |                         let _ = remote_tcp_stream.write_all(&mut data[0..n]);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:128:25
[INFO] [stdout]     |
[INFO] [stdout] 128 |                         remote_tcp_stream.flush();
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 128 |                         let _ = remote_tcp_stream.flush();
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:134:25
[INFO] [stdout]     |
[INFO] [stdout] 134 |                         ss_local_stream.write_all(&mut data[0..n]);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 134 |                         let _ = ss_local_stream.write_all(&mut data[0..n]);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:135:25
[INFO] [stdout]     |
[INFO] [stdout] 135 |                         ss_local_stream.flush();
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 135 |                         let _ = ss_local_stream.flush();
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:167:13
[INFO] [stdout]     |
[INFO] [stdout] 167 |             ss_local_stream.write_all(&data);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 167 |             let _ = ss_local_stream.write_all(&data);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:172:13
[INFO] [stdout]     |
[INFO] [stdout] 172 |             ss_local_stream.write_all(&data);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 172 |             let _ = ss_local_stream.write_all(&data);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |             ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 198 |             let _ = ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:203:13
[INFO] [stdout]     |
[INFO] [stdout] 203 |             ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 203 |             let _ = ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:216:13
[INFO] [stdout]     |
[INFO] [stdout] 216 |             ss_local_stream.write_all(&[socks5::VER, socks5::USER_PASS_OK]);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 216 |             let _ = ss_local_stream.write_all(&[socks5::VER, socks5::USER_PASS_OK]);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |             ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 220 |             let _ = ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server/server.rs:46:10
[INFO] [stdout]    |
[INFO] [stdout] 46 |     let (mut buffer, n) = utils::read_stream(ss_local_stream);
[INFO] [stdout]    |          ----^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server/server.rs:84:10
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let (mut buffer, _) = utils::read_stream(ss_local_stream);
[INFO] [stdout]    |          ----^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server/server.rs:85:17
[INFO] [stdout]    |
[INFO] [stdout] 85 |     if let Some(mut buf) = buffer {
[INFO] [stdout]    |                 ----^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server/server.rs:166:17
[INFO] [stdout]     |
[INFO] [stdout] 166 | ...   let mut data= [&[0x05u8, socks5::REP_OK, 0x00, socks5::ATYPE_IP4], &ip_bytes[..], &remote_addr.port().to_be_bytes()].concat();
[INFO] [stdout]     |           ----^^^^
[INFO] [stdout]     |           |
[INFO] [stdout]     |           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server/server.rs:171:17
[INFO] [stdout]     |
[INFO] [stdout] 171 | ...   let mut data= [&[0x05u8, socks5::REP_OK, 0x00, socks5::ATYPE_IP6], &ip_bytes[..], &remote_addr.port().to_be_bytes()].concat();
[INFO] [stdout]     |           ----^^^^
[INFO] [stdout]     |           |
[INFO] [stdout]     |           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server/server.rs:193:10
[INFO] [stdout]     |
[INFO] [stdout] 193 |     let (mut buffer, _) = utils::read_stream(ss_local_stream);
[INFO] [stdout]     |          ----^^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/server/server.rs:194:17
[INFO] [stdout]     |
[INFO] [stdout] 194 |     if let Some(mut buf) = buffer {
[INFO] [stdout]     |                 ----^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/server/server.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         ss_local_stream.write_all(&mut data);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let _ = ss_local_stream.write_all(&mut data);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/server/server.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |             ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let _ = ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/server/server.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |             ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 95 |             let _ = ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:127:25
[INFO] [stdout]     |
[INFO] [stdout] 127 |                         remote_tcp_stream.write_all(&mut data[0..n]);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 127 |                         let _ = remote_tcp_stream.write_all(&mut data[0..n]);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:128:25
[INFO] [stdout]     |
[INFO] [stdout] 128 |                         remote_tcp_stream.flush();
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 128 |                         let _ = remote_tcp_stream.flush();
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:134:25
[INFO] [stdout]     |
[INFO] [stdout] 134 |                         ss_local_stream.write_all(&mut data[0..n]);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 134 |                         let _ = ss_local_stream.write_all(&mut data[0..n]);
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:135:25
[INFO] [stdout]     |
[INFO] [stdout] 135 |                         ss_local_stream.flush();
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 135 |                         let _ = ss_local_stream.flush();
[INFO] [stdout]     |                         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:167:13
[INFO] [stdout]     |
[INFO] [stdout] 167 |             ss_local_stream.write_all(&data);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 167 |             let _ = ss_local_stream.write_all(&data);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:172:13
[INFO] [stdout]     |
[INFO] [stdout] 172 |             ss_local_stream.write_all(&data);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 172 |             let _ = ss_local_stream.write_all(&data);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |             ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 198 |             let _ = ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:203:13
[INFO] [stdout]     |
[INFO] [stdout] 203 |             ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 203 |             let _ = ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:216:13
[INFO] [stdout]     |
[INFO] [stdout] 216 |             ss_local_stream.write_all(&[socks5::VER, socks5::USER_PASS_OK]);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 216 |             let _ = ss_local_stream.write_all(&[socks5::VER, socks5::USER_PASS_OK]);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/server/server.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |             ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 220 |             let _ = ss_local_stream.write_all(&[socks5::VER, 0xff]);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.05s
[INFO] running `Command { std: "docker" "inspect" "536e5ac2da8f9accd361e682df45ccfd3c339345590629d68b130289c73f7623", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "536e5ac2da8f9accd361e682df45ccfd3c339345590629d68b130289c73f7623", kill_on_drop: false }`
[INFO] [stdout] 536e5ac2da8f9accd361e682df45ccfd3c339345590629d68b130289c73f7623
