[INFO] updating cached repository glennpratt/my-rust-intro [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/glennpratt/my-rust-intro [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/glennpratt/my-rust-intro" "work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/gh/glennpratt/my-rust-intro"` [INFO] [stderr] Cloning into 'work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/gh/glennpratt/my-rust-intro'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/glennpratt/my-rust-intro" "work/ex/pr-60914/sources/try#f45cc3094ee337acd688771b9234318046b0572d/gh/glennpratt/my-rust-intro"` [INFO] [stderr] Cloning into 'work/ex/pr-60914/sources/try#f45cc3094ee337acd688771b9234318046b0572d/gh/glennpratt/my-rust-intro'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] e30800fd98e5b0234d806f7e4c3936820a8dbf50 [INFO] sha for GitHub repo glennpratt/my-rust-intro: e30800fd98e5b0234d806f7e4c3936820a8dbf50 [INFO] validating manifest of glennpratt/my-rust-intro on toolchain master#39401465da4ce27aeeb2c2a26133ac35c63aa515 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+39401465da4ce27aeeb2c2a26133ac35c63aa515-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of glennpratt/my-rust-intro on toolchain try#f45cc3094ee337acd688771b9234318046b0572d [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+f45cc3094ee337acd688771b9234318046b0572d-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing glennpratt/my-rust-intro [INFO] finished frobbing glennpratt/my-rust-intro [INFO] frobbed toml for glennpratt/my-rust-intro written to work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/gh/glennpratt/my-rust-intro/Cargo.toml [INFO] started frobbing glennpratt/my-rust-intro [INFO] finished frobbing glennpratt/my-rust-intro [INFO] frobbed toml for glennpratt/my-rust-intro written to work/ex/pr-60914/sources/try#f45cc3094ee337acd688771b9234318046b0572d/gh/glennpratt/my-rust-intro/Cargo.toml [INFO] crate glennpratt/my-rust-intro already has a lockfile, it will not be regenerated [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+39401465da4ce27aeeb2c2a26133ac35c63aa515-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] error: the lock file /mnt/crater-raid/crater/work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/gh/glennpratt/my-rust-intro/Cargo.lock needs to be updated but --locked was passed to prevent this [INFO] the lockfile is outdated, regenerating it [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+39401465da4ce27aeeb2c2a26133ac35c63aa515-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] [stderr] Updating git repository `https://github.com/rust-lang/semver.git` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+f45cc3094ee337acd688771b9234318046b0572d-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] [stderr] Updating git repository `https://github.com/rust-lang/semver.git` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+39401465da4ce27aeeb2c2a26133ac35c63aa515-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+f45cc3094ee337acd688771b9234318046b0572d-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking glennpratt/my-rust-intro against try#f45cc3094ee337acd688771b9234318046b0572d for pr-60914 [INFO] running `"docker" "create" "-v" "/mnt/crater-raid/crater/work/local/target-dirs/pr-60914/worker-0/try#f45cc3094ee337acd688771b9234318046b0572d:/opt/crater/target:rw,Z" "-v" "/mnt/crater-raid/crater/work/ex/pr-60914/sources/try#f45cc3094ee337acd688771b9234318046b0572d/gh/glennpratt/my-rust-intro:/opt/crater/workdir:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/crater-raid/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" "+f45cc3094ee337acd688771b9234318046b0572d-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 73b90a22d21a0ecc902a12a4bba4f69af8fcaf55e52d1b7666e03cfdd05bf41e [INFO] running `"docker" "start" "-a" "73b90a22d21a0ecc902a12a4bba4f69af8fcaf55e52d1b7666e03cfdd05bf41e"` [INFO] [stderr] Checking rust-intro v0.0.1-dev (/opt/crater/workdir) [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:46:20 [INFO] [stderr] | [INFO] [stderr] 46 | for i in range(0u, 10u) { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:46:24 [INFO] [stderr] | [INFO] [stderr] 46 | for i in range(0u, 10u) { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: expected one of `)`, `,`, `.`, `?`, or an operator, found `{` [INFO] [stderr] --> src/main.rs:47:22 [INFO] [stderr] | [INFO] [stderr] 47 | spawn(proc() { [INFO] [stderr] | ^ expected one of `)`, `,`, `.`, `?`, or an operator here [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:56:20 [INFO] [stderr] | [INFO] [stderr] 56 | for i in range(0u, 3u) { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:56:24 [INFO] [stderr] | [INFO] [stderr] 56 | for i in range(0u, 3u) { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: expected one of `)`, `,`, `.`, `?`, or an operator, found `{` [INFO] [stderr] --> src/main.rs:58:22 [INFO] [stderr] | [INFO] [stderr] 58 | spawn(proc() { [INFO] [stderr] | ^ expected one of `)`, `,`, `.`, `?`, or an operator here [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:46:20 [INFO] [stderr] | [INFO] [stderr] 46 | for i in range(0u, 10u) { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:46:24 [INFO] [stderr] | [INFO] [stderr] 46 | for i in range(0u, 10u) { [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: expected one of `)`, `,`, `.`, `?`, or an operator, found `{` [INFO] [stderr] --> src/main.rs:47:22 [INFO] [stderr] | [INFO] [stderr] 47 | spawn(proc() { [INFO] [stderr] | ^ expected one of `)`, `,`, `.`, `?`, or an operator here [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:56:20 [INFO] [stderr] | [INFO] [stderr] 56 | for i in range(0u, 3u) { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:56:24 [INFO] [stderr] | [INFO] [stderr] 56 | for i in range(0u, 3u) { [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: expected one of `)`, `,`, `.`, `?`, or an operator, found `{` [INFO] [stderr] --> src/main.rs:58:22 [INFO] [stderr] | [INFO] [stderr] 58 | spawn(proc() { [INFO] [stderr] | ^ expected one of `)`, `,`, `.`, `?`, or an operator here [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:23:16 [INFO] [stderr] | [INFO] [stderr] 23 | major: 1u, [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:24:16 [INFO] [stderr] | [INFO] [stderr] 24 | minor: 2u, [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:25:16 [INFO] [stderr] | [INFO] [stderr] 25 | patch: 3u, [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:54:50 [INFO] [stderr] | [INFO] [stderr] 54 | let numbers_mutex = Arc::new(Mutex::new(vec![1i, 2i, 3i])); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:54:54 [INFO] [stderr] | [INFO] [stderr] 54 | let numbers_mutex = Arc::new(Mutex::new(vec![1i, 2i, 3i])); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:54:58 [INFO] [stderr] | [INFO] [stderr] 54 | let numbers_mutex = Arc::new(Mutex::new(vec![1i, 2i, 3i])); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:71:18 [INFO] [stderr] | [INFO] [stderr] 71 | let vec = vec![1i, 2, 3]; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:23:16 [INFO] [stderr] | [INFO] [stderr] 23 | major: 1u, [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:24:16 [INFO] [stderr] | [INFO] [stderr] 24 | minor: 2u, [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:25:16 [INFO] [stderr] | [INFO] [stderr] 25 | patch: 3u, [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:54:50 [INFO] [stderr] | [INFO] [stderr] 54 | let numbers_mutex = Arc::new(Mutex::new(vec![1i, 2i, 3i])); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:54:54 [INFO] [stderr] | [INFO] [stderr] 54 | let numbers_mutex = Arc::new(Mutex::new(vec![1i, 2i, 3i])); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:54:58 [INFO] [stderr] | [INFO] [stderr] 54 | let numbers_mutex = Arc::new(Mutex::new(vec![1i, 2i, 3i])); [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error: invalid width `` for integer literal [INFO] [stderr] --> src/main.rs:71:18 [INFO] [stderr] | [INFO] [stderr] 71 | let vec = vec![1i, 2, 3]; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = help: valid widths are 8, 16, 32, 64 and 128 [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `range` in this scope [INFO] [stderr] --> src/main.rs:46:14 [INFO] [stderr] | [INFO] [stderr] 46 | for i in range(0u, 10u) { [INFO] [stderr] | ^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `spawn` in this scope [INFO] [stderr] --> src/main.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | spawn(proc() { [INFO] [stderr] | ^^^^^ not found in this scope [INFO] [stderr] help: possible candidate is found in another module, you can import it into scope [INFO] [stderr] | [INFO] [stderr] 3 | use std::thread::spawn; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `proc` in this scope [INFO] [stderr] --> src/main.rs:47:15 [INFO] [stderr] | [INFO] [stderr] 47 | spawn(proc() { [INFO] [stderr] | ^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `range` in this scope [INFO] [stderr] --> src/main.rs:56:14 [INFO] [stderr] | [INFO] [stderr] 56 | for i in range(0u, 3u) { [INFO] [stderr] | ^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `spawn` in this scope [INFO] [stderr] --> src/main.rs:58:9 [INFO] [stderr] | [INFO] [stderr] 58 | spawn(proc() { [INFO] [stderr] | ^^^^^ not found in this scope [INFO] [stderr] help: possible candidate is found in another module, you can import it into scope [INFO] [stderr] | [INFO] [stderr] 3 | use std::thread::spawn; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `proc` in this scope [INFO] [stderr] --> src/main.rs:58:15 [INFO] [stderr] | [INFO] [stderr] 58 | spawn(proc() { [INFO] [stderr] | ^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `range` in this scope [INFO] [stderr] --> src/main.rs:60:22 [INFO] [stderr] | [INFO] [stderr] 60 | for j in range(0, 3) { (*nums)[j] += 1 } [INFO] [stderr] | ^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `range` in this scope [INFO] [stderr] --> src/main.rs:46:14 [INFO] [stderr] | [INFO] [stderr] 46 | for i in range(0u, 10u) { [INFO] [stderr] | ^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `spawn` in this scope [INFO] [stderr] --> src/main.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | spawn(proc() { [INFO] [stderr] | ^^^^^ not found in this scope [INFO] [stderr] help: possible candidate is found in another module, you can import it into scope [INFO] [stderr] | [INFO] [stderr] 3 | use std::thread::spawn; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `proc` in this scope [INFO] [stderr] --> src/main.rs:47:15 [INFO] [stderr] | [INFO] [stderr] 47 | spawn(proc() { [INFO] [stderr] | ^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `range` in this scope [INFO] [stderr] --> src/main.rs:56:14 [INFO] [stderr] | [INFO] [stderr] 56 | for i in range(0u, 3u) { [INFO] [stderr] | ^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `spawn` in this scope [INFO] [stderr] --> src/main.rs:58:9 [INFO] [stderr] | [INFO] [stderr] 58 | spawn(proc() { [INFO] [stderr] | ^^^^^ not found in this scope [INFO] [stderr] help: possible candidate is found in another module, you can import it into scope [INFO] [stderr] | [INFO] [stderr] 3 | use std::thread::spawn; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `proc` in this scope [INFO] [stderr] --> src/main.rs:58:15 [INFO] [stderr] | [INFO] [stderr] 58 | spawn(proc() { [INFO] [stderr] | ^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `range` in this scope [INFO] [stderr] --> src/main.rs:60:22 [INFO] [stderr] | [INFO] [stderr] 60 | for j in range(0, 3) { (*nums)[j] += 1 } [INFO] [stderr] | ^^^^^ not found in this scope [INFO] [stderr] [INFO] [stderr] error[E0614]: type `std::result::Result>, std::sync::PoisonError>>>` cannot be dereferenced [INFO] [stderr] --> src/main.rs:60:36 [INFO] [stderr] | [INFO] [stderr] 60 | for j in range(0, 3) { (*nums)[j] += 1 } [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0614]: type `std::result::Result>, std::sync::PoisonError>>>` cannot be dereferenced [INFO] [stderr] --> src/main.rs:61:52 [INFO] [stderr] | [INFO] [stderr] 61 | println!("nums in thread {} is {}", i, *nums); [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0614]: type `std::result::Result>, std::sync::PoisonError>>>` cannot be dereferenced [INFO] [stderr] --> src/main.rs:65:36 [INFO] [stderr] | [INFO] [stderr] 65 | println!("numbers in main {}", *numbers); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to 23 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0425, E0614. [INFO] [stderr] For more information about an error, try `rustc --explain E0425`. [INFO] [stderr] error: Could not compile `rust-intro`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error[E0614]: type `std::result::Result>, std::sync::PoisonError>>>` cannot be dereferenced [INFO] [stderr] --> src/main.rs:60:36 [INFO] [stderr] | [INFO] [stderr] 60 | for j in range(0, 3) { (*nums)[j] += 1 } [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0614]: type `std::result::Result>, std::sync::PoisonError>>>` cannot be dereferenced [INFO] [stderr] --> src/main.rs:61:52 [INFO] [stderr] | [INFO] [stderr] 61 | println!("nums in thread {} is {}", i, *nums); [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0614]: type `std::result::Result>, std::sync::PoisonError>>>` cannot be dereferenced [INFO] [stderr] --> src/main.rs:65:36 [INFO] [stderr] | [INFO] [stderr] 65 | println!("numbers in main {}", *numbers); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: aborting due to 23 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0425, E0614. [INFO] [stderr] For more information about an error, try `rustc --explain E0425`. [INFO] [stderr] error: Could not compile `rust-intro`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "73b90a22d21a0ecc902a12a4bba4f69af8fcaf55e52d1b7666e03cfdd05bf41e"` [INFO] running `"docker" "rm" "-f" "73b90a22d21a0ecc902a12a4bba4f69af8fcaf55e52d1b7666e03cfdd05bf41e"` [INFO] [stdout] 73b90a22d21a0ecc902a12a4bba4f69af8fcaf55e52d1b7666e03cfdd05bf41e