[INFO] updating cached repository https://github.com/orglofch/neat-rust [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 778545c1d29792db6aac2236bca0d8335beb3a86 [INFO] checking orglofch/neat-rust against master#45d050cde277b22a755847338f2acc2c7b834141 for pr-71393 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Forglofch%2Fneat-rust" "/workspace/builds/worker-6/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-6/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/orglofch/neat-rust on toolchain 45d050cde277b22a755847338f2acc2c7b834141 [INFO] running `"/workspace/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/orglofch/neat-rust [INFO] finished tweaking git repo https://github.com/orglofch/neat-rust [INFO] tweaked toml for git repo https://github.com/orglofch/neat-rust written to /workspace/builds/worker-6/source/Cargo.toml [INFO] crate git repo https://github.com/orglofch/neat-rust already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+45d050cde277b22a755847338f2acc2c7b834141" "check" "--frozen" "--all" "--all-targets"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 43bd690d026dde0735028441b97d4c6363843214011aa7a412ad70313652e355 [INFO] running `"docker" "start" "-a" "43bd690d026dde0735028441b97d4c6363843214011aa7a412ad70313652e355"` [INFO] [stderr] Checking libc v0.2.33 [INFO] [stderr] Checking rand v0.5.3 [INFO] [stderr] Checking neat-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused imports: `GenomeConfig`, `Genome` [INFO] [stderr] --> src/speciation.rs:3:14 [INFO] [stderr] | [INFO] [stderr] 3 | use genome::{Genome, GenomeConfig, Population}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_species_size` [INFO] [stderr] --> src/config.rs:102:21 [INFO] [stderr] | [INFO] [stderr] 102 | let new_species_size = population.len() as f32 * species_fitness_by_proto_id.get(&proto_id).unwrap() / [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_species_size` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rng` [INFO] [stderr] --> src/genome.rs:604:46 [INFO] [stderr] | [INFO] [stderr] 604 | fn mutate_remove_node(&mut self, rng: &mut R) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `EPSILON` [INFO] [stderr] --> src/activation.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | const EPSILON: f32 = 1e-7; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `eval` [INFO] [stderr] --> src/activation.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | pub(crate) fn eval(&self, val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sigmoid_activation` [INFO] [stderr] --> src/activation.rs:52:4 [INFO] [stderr] | [INFO] [stderr] 52 | fn sigmoid_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `tanh_activation` [INFO] [stderr] --> src/activation.rs:57:4 [INFO] [stderr] | [INFO] [stderr] 57 | fn tanh_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sin_activation` [INFO] [stderr] --> src/activation.rs:62:4 [INFO] [stderr] | [INFO] [stderr] 62 | fn sin_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gauss_activation` [INFO] [stderr] --> src/activation.rs:67:4 [INFO] [stderr] | [INFO] [stderr] 67 | fn gauss_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `relu_activation` [INFO] [stderr] --> src/activation.rs:72:4 [INFO] [stderr] | [INFO] [stderr] 72 | fn relu_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `softplus_activation` [INFO] [stderr] --> src/activation.rs:77:4 [INFO] [stderr] | [INFO] [stderr] 77 | fn softplus_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `identity_activation` [INFO] [stderr] --> src/activation.rs:82:4 [INFO] [stderr] | [INFO] [stderr] 82 | fn identity_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `clamped_activation` [INFO] [stderr] --> src/activation.rs:87:4 [INFO] [stderr] | [INFO] [stderr] 87 | fn clamped_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `inv_activation` [INFO] [stderr] --> src/activation.rs:92:4 [INFO] [stderr] | [INFO] [stderr] 92 | fn inv_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ln_activation` [INFO] [stderr] --> src/activation.rs:98:4 [INFO] [stderr] | [INFO] [stderr] 98 | fn ln_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `exp_activation` [INFO] [stderr] --> src/activation.rs:103:4 [INFO] [stderr] | [INFO] [stderr] 103 | fn exp_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `abs_activation` [INFO] [stderr] --> src/activation.rs:108:4 [INFO] [stderr] | [INFO] [stderr] 108 | fn abs_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `hat_activation` [INFO] [stderr] --> src/activation.rs:113:4 [INFO] [stderr] | [INFO] [stderr] 113 | fn hat_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `square_activation` [INFO] [stderr] --> src/activation.rs:118:4 [INFO] [stderr] | [INFO] [stderr] 118 | fn square_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `cube_activation` [INFO] [stderr] --> src/activation.rs:123:4 [INFO] [stderr] | [INFO] [stderr] 123 | fn cube_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sinc_activation` [INFO] [stderr] --> src/activation.rs:128:4 [INFO] [stderr] | [INFO] [stderr] 128 | fn sinc_activation(val: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `aggregate` [INFO] [stderr] --> src/aggregation.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | pub(crate) fn aggregate(&self, values: Vec) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sum_aggregation` [INFO] [stderr] --> src/aggregation.rs:29:4 [INFO] [stderr] | [INFO] [stderr] 29 | fn sum_aggregation(values: Vec) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `product_aggregation` [INFO] [stderr] --> src/aggregation.rs:34:4 [INFO] [stderr] | [INFO] [stderr] 34 | fn product_aggregation(values: Vec) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `max_aggregation` [INFO] [stderr] --> src/aggregation.rs:39:4 [INFO] [stderr] | [INFO] [stderr] 39 | fn max_aggregation(values: Vec) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `min_aggregation` [INFO] [stderr] --> src/aggregation.rs:44:4 [INFO] [stderr] | [INFO] [stderr] 44 | fn min_aggregation(values: Vec) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `abs_max_aggregation` [INFO] [stderr] --> src/aggregation.rs:49:4 [INFO] [stderr] | [INFO] [stderr] 49 | fn abs_max_aggregation(values: Vec) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `median_aggregation` [INFO] [stderr] --> src/aggregation.rs:54:4 [INFO] [stderr] | [INFO] [stderr] 54 | fn median_aggregation(values: Vec) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `mean_aggregation` [INFO] [stderr] --> src/aggregation.rs:69:4 [INFO] [stderr] | [INFO] [stderr] 69 | fn mean_aggregation(values: Vec) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `activate` [INFO] [stderr] --> src/gene.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | pub(crate) fn activate(&self, values: &Vec) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `crossover` [INFO] [stderr] --> src/gene.rs:49:5 [INFO] [stderr] | [INFO] [stderr] 49 | pub(crate) fn crossover(&self, other: &NodeGene) -> NodeGene { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `activate` [INFO] [stderr] --> src/gene.rs:90:5 [INFO] [stderr] | [INFO] [stderr] 90 | pub(crate) fn activate(&self, value: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `crossover` [INFO] [stderr] --> src/gene.rs:95:5 [INFO] [stderr] | [INFO] [stderr] 95 | pub(crate) fn crossover(&self, other: &ConnectionGene) -> ConnectionGene { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `activate` [INFO] [stderr] --> src/genome.rs:187:5 [INFO] [stderr] | [INFO] [stderr] 187 | pub(crate) fn activate(&self, inputs: &HashMap<&'a str, f32>) -> HashMap<&'a str, f32> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `crossover` [INFO] [stderr] --> src/genome.rs:367:5 [INFO] [stderr] | [INFO] [stderr] 367 | pub(crate) fn crossover(&self, other: &Genome, genome_config: &mut GenomeConfig) -> Genome { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `mutate_remove_connection` [INFO] [stderr] --> src/genome.rs:536:5 [INFO] [stderr] | [INFO] [stderr] 536 | fn mutate_remove_connection(&mut self, rng: &mut R) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `mutate_remove_node` [INFO] [stderr] --> src/genome.rs:604:5 [INFO] [stderr] | [INFO] [stderr] 604 | fn mutate_remove_node(&mut self, rng: &mut R) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 37 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused imports: `GenomeConfig`, `Genome` [INFO] [stderr] --> src/speciation.rs:3:14 [INFO] [stderr] | [INFO] [stderr] 3 | use genome::{Genome, GenomeConfig, Population}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_species_size` [INFO] [stderr] --> src/config.rs:102:21 [INFO] [stderr] | [INFO] [stderr] 102 | let new_species_size = population.len() as f32 * species_fitness_by_proto_id.get(&proto_id).unwrap() / [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_species_size` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rng` [INFO] [stderr] --> src/genome.rs:604:46 [INFO] [stderr] | [INFO] [stderr] 604 | fn mutate_remove_node(&mut self, rng: &mut R) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_species_size` [INFO] [stderr] --> src/config.rs:102:21 [INFO] [stderr] | [INFO] [stderr] 102 | let new_species_size = population.len() as f32 * species_fitness_by_proto_id.get(&proto_id).unwrap() / [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_species_size` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rng` [INFO] [stderr] --> src/genome.rs:604:46 [INFO] [stderr] | [INFO] [stderr] 604 | fn mutate_remove_node(&mut self, rng: &mut R) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stderr] [INFO] [stderr] warning: method is never used: `crossover` [INFO] [stderr] --> src/gene.rs:49:5 [INFO] [stderr] | [INFO] [stderr] 49 | pub(crate) fn crossover(&self, other: &NodeGene) -> NodeGene { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `crossover` [INFO] [stderr] --> src/gene.rs:95:5 [INFO] [stderr] | [INFO] [stderr] 95 | pub(crate) fn crossover(&self, other: &ConnectionGene) -> ConnectionGene { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `crossover` [INFO] [stderr] --> src/genome.rs:367:5 [INFO] [stderr] | [INFO] [stderr] 367 | pub(crate) fn crossover(&self, other: &Genome, genome_config: &mut GenomeConfig) -> Genome { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `mutate_remove_connection` [INFO] [stderr] --> src/genome.rs:536:5 [INFO] [stderr] | [INFO] [stderr] 536 | fn mutate_remove_connection(&mut self, rng: &mut R) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `mutate_remove_node` [INFO] [stderr] --> src/genome.rs:604:5 [INFO] [stderr] | [INFO] [stderr] 604 | fn mutate_remove_node(&mut self, rng: &mut R) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 8 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: method is never used: `mutate_remove_node` [INFO] [stderr] --> src/genome.rs:604:5 [INFO] [stderr] | [INFO] [stderr] 604 | fn mutate_remove_node(&mut self, rng: &mut R) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 3 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_species_size` [INFO] [stderr] --> src/config.rs:102:21 [INFO] [stderr] | [INFO] [stderr] 102 | let new_species_size = population.len() as f32 * species_fitness_by_proto_id.get(&proto_id).unwrap() / [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_species_size` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rng` [INFO] [stderr] --> src/genome.rs:604:46 [INFO] [stderr] | [INFO] [stderr] 604 | fn mutate_remove_node(&mut self, rng: &mut R) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stderr] [INFO] [stderr] warning: method is never used: `mutate_remove_node` [INFO] [stderr] --> src/genome.rs:604:5 [INFO] [stderr] | [INFO] [stderr] 604 | fn mutate_remove_node(&mut self, rng: &mut R) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 3 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 5.56s [INFO] running `"docker" "inspect" "43bd690d026dde0735028441b97d4c6363843214011aa7a412ad70313652e355"` [INFO] running `"docker" "rm" "-f" "43bd690d026dde0735028441b97d4c6363843214011aa7a412ad70313652e355"` [INFO] [stdout] 43bd690d026dde0735028441b97d4c6363843214011aa7a412ad70313652e355