[INFO] cloning repository https://github.com/TwoWatts/RunicEncoder [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TwoWatts/RunicEncoder" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTwoWatts%2FRunicEncoder", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTwoWatts%2FRunicEncoder'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] cfd1b5986b72e4833b0a145a3635dcd9ef7e64c1 [INFO] checking TwoWatts/RunicEncoder against master#385fa9d845dd326c6bbfd58c22244215e431948a for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTwoWatts%2FRunicEncoder" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/TwoWatts/RunicEncoder on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/TwoWatts/RunicEncoder [INFO] finished tweaking git repo https://github.com/TwoWatts/RunicEncoder [INFO] tweaked toml for git repo https://github.com/TwoWatts/RunicEncoder written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/TwoWatts/RunicEncoder 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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded contour_tracing v1.0.12 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 03fe28563a506495ecb1435a480de8871057d50e5e980c664b68a856c3e931c7 [INFO] running `Command { std: "docker" "start" "-a" "03fe28563a506495ecb1435a480de8871057d50e5e980c664b68a856c3e931c7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "03fe28563a506495ecb1435a480de8871057d50e5e980c664b68a856c3e931c7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "03fe28563a506495ecb1435a480de8871057d50e5e980c664b68a856c3e931c7", kill_on_drop: false }` [INFO] [stdout] 03fe28563a506495ecb1435a480de8871057d50e5e980c664b68a856c3e931c7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 72af0ac0bcf25112564e1dd0cec0780ab4560b4c7acb7c166a8ee69568128018 [INFO] running `Command { std: "docker" "start" "-a" "72af0ac0bcf25112564e1dd0cec0780ab4560b4c7acb7c166a8ee69568128018", kill_on_drop: false }` [INFO] [stderr] Compiling crossbeam-utils v0.8.18 [INFO] [stderr] Compiling libc v0.2.151 [INFO] [stderr] Checking simd-adler32 v0.3.7 [INFO] [stderr] Compiling rayon-core v1.12.0 [INFO] [stderr] Compiling proc-macro2 v1.0.73 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Checking miniz_oxide v0.7.1 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Checking weezl v0.1.7 [INFO] [stderr] Checking flate2 v1.0.28 [INFO] [stderr] Checking crossbeam-epoch v0.9.17 [INFO] [stderr] Checking flume v0.11.0 [INFO] [stderr] Checking zune-inflate v0.2.54 [INFO] [stderr] Compiling quote v1.0.34 [INFO] [stderr] Checking crossbeam-deque v0.8.4 [INFO] [stderr] Checking fdeflate v0.3.3 [INFO] [stderr] Checking lebe v0.5.2 [INFO] [stderr] Checking bit_field v0.10.2 [INFO] [stderr] Compiling syn v2.0.45 [INFO] [stderr] Checking bytemuck v1.14.0 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Checking half v2.2.1 [INFO] [stderr] Compiling openssl v0.10.62 [INFO] [stderr] Checking getrandom v0.2.11 [INFO] [stderr] Checking qoi v0.4.1 [INFO] [stderr] Checking rayon v1.8.0 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking exr v1.71.0 [INFO] [stderr] Checking png v0.17.10 [INFO] [stderr] Checking gif v0.12.0 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking hex v0.3.2 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Compiling openssl-sys v0.9.98 [INFO] [stderr] Checking jpeg-decoder v0.3.0 [INFO] [stderr] Checking tiff v0.9.0 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Checking image v0.24.7 [INFO] [stderr] Checking contour_tracing v1.0.12 [INFO] [stderr] Checking crypto-hash v0.3.4 [INFO] [stderr] Checking square_encoder v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/mat.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DynamicImage` [INFO] [stdout] --> src/mat.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use image::{DynamicImage, GenericImageView, Rgb}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/mat.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `image::Rgb` [INFO] [stdout] --> src/main.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use image::Rgb; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/mat.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DynamicImage` [INFO] [stdout] --> src/mat.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | use image::{DynamicImage, GenericImageView, Rgb}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/mat.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `image::Rgb` [INFO] [stdout] --> src/main.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use image::Rgb; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GenericImageView` [INFO] [stdout] --> src/mat.rs:3:27 [INFO] [stdout] | [INFO] [stdout] 3 | use image::{DynamicImage, GenericImageView, Rgb}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/mat.rs:64:25 [INFO] [stdout] | [INFO] [stdout] 64 | let mut pixel = rgb.get_pixel(xx, yy).0; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `height` [INFO] [stdout] --> src/mat.rs:173:21 [INFO] [stdout] | [INFO] [stdout] 173 | let (width, height) = buf.dimensions(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/mat.rs:229:17 [INFO] [stdout] | [INFO] [stdout] 229 | for i in 0..imperfection { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `background_rgb` [INFO] [stdout] --> src/mat.rs:319:13 [INFO] [stdout] | [INFO] [stdout] 319 | let background_rgb = self.secondary; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_background_rgb` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `keep_going` is never read [INFO] [stdout] --> src/cli.rs:61:17 [INFO] [stdout] | [INFO] [stdout] 61 | keep_going = false; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> src/cli.rs:64:17 [INFO] [stdout] | [INFO] [stdout] 64 | Err(error) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `keep_going` is never read [INFO] [stdout] --> src/cli.rs:81:17 [INFO] [stdout] | [INFO] [stdout] 81 | keep_going = false; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> src/cli.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | Err(error) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/cli.rs:104:33 [INFO] [stdout] | [INFO] [stdout] 104 | ... let mut name = entry.file_name().into_string().unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/main.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | let args: Vec = std::env::args().collect(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `text_bytes` [INFO] [stdout] --> src/main.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | let text_bytes = text.as_bytes(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_text_bytes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_image_grid` is never used [INFO] [stdout] --> src/mat.rs:75:8 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn read_image_grid(image_grid: Vec>, char_width: u32, char_height: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_input` is never used [INFO] [stdout] --> src/mat.rs:185:12 [INFO] [stdout] | [INFO] [stdout] 151 | impl Mat { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 185 | pub fn get_input(&self) -> &String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/main.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 48 | if rune_idx >= 0 && rune_idx < avail_runes.len() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GenericImageView` [INFO] [stdout] --> src/mat.rs:3:27 [INFO] [stdout] | [INFO] [stdout] 3 | use image::{DynamicImage, GenericImageView, Rgb}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 19 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/mat.rs:64:25 [INFO] [stdout] | [INFO] [stdout] 64 | let mut pixel = rgb.get_pixel(xx, yy).0; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `height` [INFO] [stdout] --> src/mat.rs:173:21 [INFO] [stdout] | [INFO] [stdout] 173 | let (width, height) = buf.dimensions(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/mat.rs:229:17 [INFO] [stdout] | [INFO] [stdout] 229 | for i in 0..imperfection { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `background_rgb` [INFO] [stdout] --> src/mat.rs:319:13 [INFO] [stdout] | [INFO] [stdout] 319 | let background_rgb = self.secondary; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_background_rgb` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `keep_going` is never read [INFO] [stdout] --> src/cli.rs:61:17 [INFO] [stdout] | [INFO] [stdout] 61 | keep_going = false; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> src/cli.rs:64:17 [INFO] [stdout] | [INFO] [stdout] 64 | Err(error) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `keep_going` is never read [INFO] [stdout] --> src/cli.rs:81:17 [INFO] [stdout] | [INFO] [stdout] 81 | keep_going = false; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `error` [INFO] [stdout] --> src/cli.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | Err(error) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_error` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/cli.rs:104:33 [INFO] [stdout] | [INFO] [stdout] 104 | ... let mut name = entry.file_name().into_string().unwrap(); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/main.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | let args: Vec = std::env::args().collect(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `text_bytes` [INFO] [stdout] --> src/main.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | let text_bytes = text.as_bytes(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_text_bytes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_image_grid` is never used [INFO] [stdout] --> src/mat.rs:75:8 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn read_image_grid(image_grid: Vec>, char_width: u32, char_height: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_input` is never used [INFO] [stdout] --> src/mat.rs:185:12 [INFO] [stdout] | [INFO] [stdout] 151 | impl Mat { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 185 | pub fn get_input(&self) -> &String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/main.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 48 | if rune_idx >= 0 && rune_idx < avail_runes.len() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 19 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 24.97s [INFO] running `Command { std: "docker" "inspect" "72af0ac0bcf25112564e1dd0cec0780ab4560b4c7acb7c166a8ee69568128018", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "72af0ac0bcf25112564e1dd0cec0780ab4560b4c7acb7c166a8ee69568128018", kill_on_drop: false }` [INFO] [stdout] 72af0ac0bcf25112564e1dd0cec0780ab4560b4c7acb7c166a8ee69568128018