[INFO] crate grcov 0.4.3 is already in cache [INFO] extracting crate grcov 0.4.3 into work/ex/pr-61753/sources/master#8e948df707ea8a3c88c65bf2ffdcb2f1cf5491be/reg/grcov/0.4.3 [INFO] extracting crate grcov 0.4.3 into work/ex/pr-61753/sources/try#af22dfc7f56a5057c6b6120a65c74e7b6c1530af/reg/grcov/0.4.3 [INFO] validating manifest of grcov-0.4.3 on toolchain master#8e948df707ea8a3c88c65bf2ffdcb2f1cf5491be [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+8e948df707ea8a3c88c65bf2ffdcb2f1cf5491be-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of grcov-0.4.3 on toolchain try#af22dfc7f56a5057c6b6120a65c74e7b6c1530af [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+af22dfc7f56a5057c6b6120a65c74e7b6c1530af-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing grcov-0.4.3 [INFO] finished frobbing grcov-0.4.3 [INFO] frobbed toml for grcov-0.4.3 written to work/ex/pr-61753/sources/master#8e948df707ea8a3c88c65bf2ffdcb2f1cf5491be/reg/grcov/0.4.3/Cargo.toml [INFO] started frobbing grcov-0.4.3 [INFO] finished frobbing grcov-0.4.3 [INFO] frobbed toml for grcov-0.4.3 written to work/ex/pr-61753/sources/try#af22dfc7f56a5057c6b6120a65c74e7b6c1530af/reg/grcov/0.4.3/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+8e948df707ea8a3c88c65bf2ffdcb2f1cf5491be-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+af22dfc7f56a5057c6b6120a65c74e7b6c1530af-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+8e948df707ea8a3c88c65bf2ffdcb2f1cf5491be-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+af22dfc7f56a5057c6b6120a65c74e7b6c1530af-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking grcov-0.4.3 against try#af22dfc7f56a5057c6b6120a65c74e7b6c1530af for pr-61753 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-61753/worker-5/try#af22dfc7f56a5057c6b6120a65c74e7b6c1530af:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-61753/sources/try#af22dfc7f56a5057c6b6120a65c74e7b6c1530af/reg/grcov/0.4.3:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+af22dfc7f56a5057c6b6120a65c74e7b6c1530af-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 76c23d1e31833fecfd28b2a07786f6c99c4acc69ac540849616842a92bbb6f66 [INFO] running `"docker" "start" "-a" "76c23d1e31833fecfd28b2a07786f6c99c4acc69ac540849616842a92bbb6f66"` [INFO] [stderr] Checking flate2 v1.0.7 [INFO] [stderr] Checking crossbeam v0.4.1 [INFO] [stderr] Checking zip v0.4.2 [INFO] [stderr] Checking grcov v0.4.3 (/opt/crater/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/defs.rs:52:30 [INFO] [stderr] | [INFO] [stderr] 52 | pub type CovResultIter = Box>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(bare_trait_objects)] on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/producer.rs:23:18 [INFO] [stderr] | [INFO] [stderr] 23 | File(&'a mut Read), [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/producer.rs:117:34 [INFO] [stderr] | [INFO] [stderr] 117 | fn is_gcno_llvm(reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/producer.rs:123:31 [INFO] [stderr] | [INFO] [stderr] 123 | fn is_jacoco(reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/producer.rs:134:29 [INFO] [stderr] | [INFO] [stderr] 134 | fn is_info(reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/producer.rs:140:45 [INFO] [stderr] | [INFO] [stderr] 140 | fn check_file(file: FilePath, checker: &Fn(&mut Read) -> bool) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Read) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/producer.rs:140:53 [INFO] [stderr] | [INFO] [stderr] 140 | fn check_file(file: FilePath, checker: &Fn(&mut Read) -> bool) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/output.rs:11:68 [INFO] [stderr] | [INFO] [stderr] 11 | fn get_target_output_writable(output_file: Option<&String>) -> Box { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/output.rs:12:27 [INFO] [stderr] | [INFO] [stderr] 12 | let write_target: Box = match output_file { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reader.rs:330:56 [INFO] [stderr] | [INFO] [stderr] 330 | fn read_edges(fun: &mut GcovFunction, reader: &mut GcovReader) -> Result { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn GcovReader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reader.rs:377:22 [INFO] [stderr] | [INFO] [stderr] 377 | reader: &mut GcovReader, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn GcovReader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reader.rs:428:47 [INFO] [stderr] | [INFO] [stderr] 428 | fn read_functions(&mut self, reader: &mut GcovReader) -> Result<(), GcovError> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn GcovReader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reader.rs:528:22 [INFO] [stderr] | [INFO] [stderr] 528 | reader: &mut GcovReader, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn GcovReader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reader.rs:640:22 [INFO] [stderr] | [INFO] [stderr] 640 | writer: &mut Write, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/defs.rs:52:30 [INFO] [stderr] | [INFO] [stderr] 52 | pub type CovResultIter = Box>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(bare_trait_objects)] on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/producer.rs:23:18 [INFO] [stderr] | [INFO] [stderr] 23 | File(&'a mut Read), [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/producer.rs:117:34 [INFO] [stderr] | [INFO] [stderr] 117 | fn is_gcno_llvm(reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/producer.rs:123:31 [INFO] [stderr] | [INFO] [stderr] 123 | fn is_jacoco(reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/producer.rs:134:29 [INFO] [stderr] | [INFO] [stderr] 134 | fn is_info(reader: &mut Read) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/producer.rs:140:45 [INFO] [stderr] | [INFO] [stderr] 140 | fn check_file(file: FilePath, checker: &Fn(&mut Read) -> bool) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Read) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/producer.rs:140:53 [INFO] [stderr] | [INFO] [stderr] 140 | fn check_file(file: FilePath, checker: &Fn(&mut Read) -> bool) -> bool { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/output.rs:11:68 [INFO] [stderr] | [INFO] [stderr] 11 | fn get_target_output_writable(output_file: Option<&String>) -> Box { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/output.rs:12:27 [INFO] [stderr] | [INFO] [stderr] 12 | let write_target: Box = match output_file { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reader.rs:330:56 [INFO] [stderr] | [INFO] [stderr] 330 | fn read_edges(fun: &mut GcovFunction, reader: &mut GcovReader) -> Result { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn GcovReader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reader.rs:377:22 [INFO] [stderr] | [INFO] [stderr] 377 | reader: &mut GcovReader, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn GcovReader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reader.rs:428:47 [INFO] [stderr] | [INFO] [stderr] 428 | fn read_functions(&mut self, reader: &mut GcovReader) -> Result<(), GcovError> { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn GcovReader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reader.rs:528:22 [INFO] [stderr] | [INFO] [stderr] 528 | reader: &mut GcovReader, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn GcovReader` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/reader.rs:640:22 [INFO] [stderr] | [INFO] [stderr] 640 | writer: &mut Write, [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::str::::trim_right_matches': superseded by `trim_end_matches` [INFO] [stderr] --> src/parser.rs:481:48 [INFO] [stderr] | [INFO] [stderr] 481 | let class = sourcefile.trim_right_matches(".java"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_end_matches` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stderr] --> src/parser.rs:525:22 [INFO] [stderr] | [INFO] [stderr] 525 | .trim_left_matches('/') [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::str::::trim_right_matches': superseded by `trim_end_matches` [INFO] [stderr] --> src/parser.rs:481:48 [INFO] [stderr] | [INFO] [stderr] 481 | let class = sourcefile.trim_right_matches(".java"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_end_matches` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'core::str::::trim_left_matches': superseded by `trim_start_matches` [INFO] [stderr] --> src/parser.rs:525:22 [INFO] [stderr] | [INFO] [stderr] 525 | .trim_left_matches('/') [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `trim_start_matches` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:90:9 [INFO] [stderr] | [INFO] [stderr] 90 | for mut result in results.drain(..) { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:186:39 [INFO] [stderr] | [INFO] [stderr] 186 | ItemType::Buffers(mut buffers) => { [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/parser.rs:88:17 [INFO] [stderr] | [INFO] [stderr] 88 | let mut v = c.into_mut(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/parser.rs:294:29 [INFO] [stderr] | [INFO] [stderr] 294 | let mut v = c.into_mut(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/reader.rs:617:17 [INFO] [stderr] | [INFO] [stderr] 617 | let mut lines = match results.entry(&function.file_name) { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/reader.rs:698:17 [INFO] [stderr] | [INFO] [stderr] 698 | let mut res = match results.entry(&fun.file_name) { [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/reader.rs:740:41 [INFO] [stderr] | [INFO] [stderr] 740 | let mut v = c.into_mut(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/reader.rs:756:41 [INFO] [stderr] | [INFO] [stderr] 756 | let mut v = c.into_mut(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: method is never used: `collect_lines` [INFO] [stderr] --> src/reader.rs:614:5 [INFO] [stderr] | [INFO] [stderr] 614 | fn collect_lines(&self) -> HashMap<&str, HashMap> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `dump` [INFO] [stderr] --> src/reader.rs:636:5 [INFO] [stderr] | [INFO] [stderr] 636 | / fn dump( [INFO] [stderr] 637 | | &mut self, [INFO] [stderr] 638 | | path: &PathBuf, [INFO] [stderr] 639 | | file_name: &str, [INFO] [stderr] ... | [INFO] [stderr] 691 | | Ok(()) [INFO] [stderr] 692 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:90:9 [INFO] [stderr] | [INFO] [stderr] 90 | for mut result in results.drain(..) { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:186:39 [INFO] [stderr] | [INFO] [stderr] 186 | ItemType::Buffers(mut buffers) => { [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/parser.rs:88:17 [INFO] [stderr] | [INFO] [stderr] 88 | let mut v = c.into_mut(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/parser.rs:294:29 [INFO] [stderr] | [INFO] [stderr] 294 | let mut v = c.into_mut(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/reader.rs:617:17 [INFO] [stderr] | [INFO] [stderr] 617 | let mut lines = match results.entry(&function.file_name) { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/reader.rs:698:17 [INFO] [stderr] | [INFO] [stderr] 698 | let mut res = match results.entry(&fun.file_name) { [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/reader.rs:740:41 [INFO] [stderr] | [INFO] [stderr] 740 | let mut v = c.into_mut(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/reader.rs:756:41 [INFO] [stderr] | [INFO] [stderr] 756 | let mut v = c.into_mut(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 12.22s [INFO] running `"docker" "inspect" "76c23d1e31833fecfd28b2a07786f6c99c4acc69ac540849616842a92bbb6f66"` [INFO] running `"docker" "rm" "-f" "76c23d1e31833fecfd28b2a07786f6c99c4acc69ac540849616842a92bbb6f66"` [INFO] [stdout] 76c23d1e31833fecfd28b2a07786f6c99c4acc69ac540849616842a92bbb6f66