[INFO] cloning repository https://github.com/R1tschY/advent_of_code_2020 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/R1tschY/advent_of_code_2020" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FR1tschY%2Fadvent_of_code_2020", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FR1tschY%2Fadvent_of_code_2020'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ddb505d9a7042b9d88a86aab75e4f10393d85070 [INFO] documenting R1tschY/advent_of_code_2020 against 1.61.0 for beta-1.62-rustdoc-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FR1tschY%2Fadvent_of_code_2020" "/workspace/builds/worker-39/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-39/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/R1tschY/advent_of_code_2020 on toolchain 1.61.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.61.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/R1tschY/advent_of_code_2020 [INFO] finished tweaking git repo https://github.com/R1tschY/advent_of_code_2020 [INFO] tweaked toml for git repo https://github.com/R1tschY/advent_of_code_2020 written to /workspace/builds/worker-39/source/Cargo.toml [INFO] crate git repo https://github.com/R1tschY/advent_of_code_2020 already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.61.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-39/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-39/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:d190cb871061d98bc6d0581d85cb2ecb09a0f8a142ba5463de30be9999fc3251" "/opt/rustwide/cargo-home/bin/cargo" "+1.61.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a09accb3ff0f75dfc5dba200b58cc443e02b8e0426b38807d1fa9c4056d7724a [INFO] running `Command { std: "docker" "start" "-a" "a09accb3ff0f75dfc5dba200b58cc443e02b8e0426b38807d1fa9c4056d7724a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a09accb3ff0f75dfc5dba200b58cc443e02b8e0426b38807d1fa9c4056d7724a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a09accb3ff0f75dfc5dba200b58cc443e02b8e0426b38807d1fa9c4056d7724a", kill_on_drop: false }` [INFO] [stdout] a09accb3ff0f75dfc5dba200b58cc443e02b8e0426b38807d1fa9c4056d7724a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-39/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-39/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" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d190cb871061d98bc6d0581d85cb2ecb09a0f8a142ba5463de30be9999fc3251" "/opt/rustwide/cargo-home/bin/cargo" "+1.61.0" "doc" "--frozen" "--no-deps" "--document-private-items" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 69a1d7e237d78ab334d6280519a8ce86cc52f73378063d6b05a2b926a9112d6c [INFO] running `Command { std: "docker" "start" "-a" "69a1d7e237d78ab334d6280519a8ce86cc52f73378063d6b05a2b926a9112d6c", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.3.4 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking regex-syntax v0.6.21 [INFO] [stderr] Checking thread_local v1.0.1 [INFO] [stderr] Checking aho-corasick v0.7.15 [INFO] [stderr] Checking regex v1.4.2 [INFO] [stderr] Checking aoc2020 v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Documenting aoc2020 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/lib.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/lib.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/lib.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::BufRead` [INFO] [stdout] --> src/lib.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::BufRead; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read src/bin/aoc09.txt: No such file or directory (os error 2) [INFO] [stdout] --> src/bin/aoc09.rs:49:23 [INFO] [stdout] | [INFO] [stdout] 49 | let value = calc1(include_str!("aoc09.txt"), 25).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read src/bin/aoc09.txt: No such file or directory (os error 2) [INFO] [stdout] --> src/bin/aoc09.rs:52:28 [INFO] [stdout] | [INFO] [stdout] 52 | println!("{:?}", calc2(include_str!("aoc09.txt"), value)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read src/bin/aoc10.txt: No such file or directory (os error 2) [INFO] [stdout] --> src/bin/aoc10.rs:61:28 [INFO] [stdout] | [INFO] [stdout] 61 | println!("{:?}", calc1(include_str!("aoc10.txt"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read src/bin/aoc01.txt: No such file or directory (os error 2) [INFO] [stdout] --> src/bin/aoc01.rs:34:28 [INFO] [stdout] | [INFO] [stdout] 34 | println!("{:?}", calc1(include_str!("aoc01.txt"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read src/bin/aoc10.txt: No such file or directory (os error 2) [INFO] [stdout] --> src/bin/aoc10.rs:62:28 [INFO] [stdout] | [INFO] [stdout] 62 | println!("{:?}", calc2(include_str!("aoc10.txt"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read src/bin/aoc01.txt: No such file or directory (os error 2) [INFO] [stdout] --> src/bin/aoc01.rs:35:28 [INFO] [stdout] | [INFO] [stdout] 35 | println!("{:?}", calc2(include_str!("aoc01.txt"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read src/bin/aoc03.txt: No such file or directory (os error 2) [INFO] [stdout] --> src/bin/aoc03.rs:58:28 [INFO] [stdout] | [INFO] [stdout] 58 | println!("{:?}", calc1(include_str!("aoc03.txt"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read src/bin/aoc03.txt: No such file or directory (os error 2) [INFO] [stdout] --> src/bin/aoc03.rs:59:28 [INFO] [stdout] | [INFO] [stdout] 59 | println!("{:?}", calc2(include_str!("aoc03.txt"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read src/bin/aoc08.txt: No such file or directory (os error 2) [INFO] [stdout] --> src/bin/aoc08.rs:92:28 [INFO] [stdout] | [INFO] [stdout] 92 | println!("{:?}", calc1(include_str!("aoc08.txt"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read src/bin/aoc08.txt: No such file or directory (os error 2) [INFO] [stdout] --> src/bin/aoc08.rs:93:28 [INFO] [stdout] | [INFO] [stdout] 93 | println!("{:?}", calc2(include_str!("aoc08.txt"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read src/bin/aoc04.txt: No such file or directory (os error 2) [INFO] [stdout] --> src/bin/aoc04.rs:70:28 [INFO] [stdout] | [INFO] [stdout] 70 | println!("{:?}", calc1(include_str!("aoc04.txt"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read src/bin/aoc04.txt: No such file or directory (os error 2) [INFO] [stdout] --> src/bin/aoc04.rs:71:28 [INFO] [stdout] | [INFO] [stdout] 71 | println!("{:?}", calc2(include_str!("aoc04.txt"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read src/bin/aoc05.txt: No such file or directory (os error 2) [INFO] [stdout] --> src/bin/aoc05.rs:39:28 [INFO] [stdout] | [INFO] [stdout] 39 | println!("{:?}", calc1(include_str!("aoc05.txt"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: couldn't read src/bin/aoc05.txt: No such file or directory (os error 2) [INFO] [stdout] --> src/bin/aoc05.rs:40:28 [INFO] [stdout] | [INFO] [stdout] 40 | println!("{:?}", calc2(include_str!("aoc05.txt"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `include_str` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: Compilation failed, aborting rustdoc [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: Compilation failed, aborting rustdoc [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: Compilation failed, aborting rustdoc [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: Compilation failed, aborting rustdoc [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: Compilation failed, aborting rustdoc [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not document `aoc2020` [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `rustdoc --edition=2018 --crate-type bin --crate-name aoc10 src/bin/aoc10.rs -o /opt/rustwide/target/doc --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --document-private-items -C metadata=8326907bbac532cd -L dependency=/opt/rustwide/target/debug/deps --extern aoc2020=/opt/rustwide/target/debug/deps/libaoc2020-f1736f3a05d7381a.rmeta --extern lazy_static=/opt/rustwide/target/debug/deps/liblazy_static-1479f2b7adeaa2b6.rmeta --extern regex=/opt/rustwide/target/debug/deps/libregex-7f7c07494e82902c.rmeta --cap-lints=warn --crate-version 0.1.0` (exit status: 1) [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not document `aoc2020` [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `rustdoc --edition=2018 --crate-type bin --crate-name aoc09 src/bin/aoc09.rs -o /opt/rustwide/target/doc --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --document-private-items -C metadata=8a9954067834a60c -L dependency=/opt/rustwide/target/debug/deps --extern aoc2020=/opt/rustwide/target/debug/deps/libaoc2020-f1736f3a05d7381a.rmeta --extern lazy_static=/opt/rustwide/target/debug/deps/liblazy_static-1479f2b7adeaa2b6.rmeta --extern regex=/opt/rustwide/target/debug/deps/libregex-7f7c07494e82902c.rmeta --cap-lints=warn --crate-version 0.1.0` (exit status: 1) [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not document `aoc2020` [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `rustdoc --edition=2018 --crate-type bin --crate-name aoc03 src/bin/aoc03.rs -o /opt/rustwide/target/doc --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --document-private-items -C metadata=8132d2eae3032b6d -L dependency=/opt/rustwide/target/debug/deps --extern aoc2020=/opt/rustwide/target/debug/deps/libaoc2020-f1736f3a05d7381a.rmeta --extern lazy_static=/opt/rustwide/target/debug/deps/liblazy_static-1479f2b7adeaa2b6.rmeta --extern regex=/opt/rustwide/target/debug/deps/libregex-7f7c07494e82902c.rmeta --cap-lints=warn --crate-version 0.1.0` (exit status: 1) [INFO] [stderr] error: could not document `aoc2020` [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `rustdoc --edition=2018 --crate-type bin --crate-name aoc01 src/bin/aoc01.rs -o /opt/rustwide/target/doc --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --document-private-items -C metadata=aec16b17b3167aa4 -L dependency=/opt/rustwide/target/debug/deps --extern aoc2020=/opt/rustwide/target/debug/deps/libaoc2020-f1736f3a05d7381a.rmeta --extern lazy_static=/opt/rustwide/target/debug/deps/liblazy_static-1479f2b7adeaa2b6.rmeta --extern regex=/opt/rustwide/target/debug/deps/libregex-7f7c07494e82902c.rmeta --cap-lints=warn --crate-version 0.1.0` (exit status: 1) [INFO] [stderr] error: could not document `aoc2020` [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `rustdoc --edition=2018 --crate-type bin --crate-name aoc08 src/bin/aoc08.rs -o /opt/rustwide/target/doc --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --document-private-items -C metadata=b0450ee5c8ac5d9f -L dependency=/opt/rustwide/target/debug/deps --extern aoc2020=/opt/rustwide/target/debug/deps/libaoc2020-f1736f3a05d7381a.rmeta --extern lazy_static=/opt/rustwide/target/debug/deps/liblazy_static-1479f2b7adeaa2b6.rmeta --extern regex=/opt/rustwide/target/debug/deps/libregex-7f7c07494e82902c.rmeta --cap-lints=warn --crate-version 0.1.0` (exit status: 1) [INFO] [stdout] error: Compilation failed, aborting rustdoc [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: Compilation failed, aborting rustdoc [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not document `aoc2020` [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `rustdoc --edition=2018 --crate-type bin --crate-name aoc05 src/bin/aoc05.rs -o /opt/rustwide/target/doc --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --document-private-items -C metadata=15468496ec23e790 -L dependency=/opt/rustwide/target/debug/deps --extern aoc2020=/opt/rustwide/target/debug/deps/libaoc2020-f1736f3a05d7381a.rmeta --extern lazy_static=/opt/rustwide/target/debug/deps/liblazy_static-1479f2b7adeaa2b6.rmeta --extern regex=/opt/rustwide/target/debug/deps/libregex-7f7c07494e82902c.rmeta --cap-lints=warn --crate-version 0.1.0` (exit status: 1) [INFO] [stderr] error: could not document `aoc2020` [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `rustdoc --edition=2018 --crate-type bin --crate-name aoc04 src/bin/aoc04.rs -o /opt/rustwide/target/doc --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --document-private-items -C metadata=55dcafe16402b4bb -L dependency=/opt/rustwide/target/debug/deps --extern aoc2020=/opt/rustwide/target/debug/deps/libaoc2020-f1736f3a05d7381a.rmeta --extern lazy_static=/opt/rustwide/target/debug/deps/liblazy_static-1479f2b7adeaa2b6.rmeta --extern regex=/opt/rustwide/target/debug/deps/libregex-7f7c07494e82902c.rmeta --cap-lints=warn --crate-version 0.1.0` (exit status: 1) [INFO] running `Command { std: "docker" "inspect" "69a1d7e237d78ab334d6280519a8ce86cc52f73378063d6b05a2b926a9112d6c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "69a1d7e237d78ab334d6280519a8ce86cc52f73378063d6b05a2b926a9112d6c", kill_on_drop: false }` [INFO] [stdout] 69a1d7e237d78ab334d6280519a8ce86cc52f73378063d6b05a2b926a9112d6c