[INFO] fetching crate icm20948 0.0.1... [INFO] testing icm20948-0.0.1 against 1.59.0 for beta-1.60-1 [INFO] extracting crate icm20948 0.0.1 into /workspace/builds/worker-11/source [INFO] validating manifest of crates.io crate icm20948 0.0.1 on toolchain 1.59.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.59.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate icm20948 0.0.1 [INFO] finished tweaking crates.io crate icm20948 0.0.1 [INFO] tweaked toml for crates.io crate icm20948 0.0.1 written to /workspace/builds/worker-11/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.59.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.59.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e76087b1aa6d22f58aed61608b63ba1970ae10e67f588c33198265cea831c55a [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "e76087b1aa6d22f58aed61608b63ba1970ae10e67f588c33198265cea831c55a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e76087b1aa6d22f58aed61608b63ba1970ae10e67f588c33198265cea831c55a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e76087b1aa6d22f58aed61608b63ba1970ae10e67f588c33198265cea831c55a", kill_on_drop: false }` [INFO] [stdout] e76087b1aa6d22f58aed61608b63ba1970ae10e67f588c33198265cea831c55a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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=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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e5cd133c6af735f91001c9e91ce0300c28726f594b99a16b4d8262e0165c6a72 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "e5cd133c6af735f91001c9e91ce0300c28726f594b99a16b4d8262e0165c6a72", kill_on_drop: false }` [INFO] [stderr] Compiling cortex-m-semihosting v0.3.7 [INFO] [stderr] Compiling embedded-hal v0.2.7 [INFO] [stderr] Compiling cortex-m v0.7.4 [INFO] [stderr] Compiling bit-byte-structs v0.0.3 [INFO] [stderr] Compiling icm20948 v0.0.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:431:13 [INFO] [stdout] | [INFO] [stdout] 431 | let result = self.duty_cycle.read(interface)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `delay` [INFO] [stdout] --> src/lib.rs:441:9 [INFO] [stdout] | [INFO] [stdout] 441 | delay: &mut dyn DelayMs, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_delay` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `delay` [INFO] [stdout] --> src/lib.rs:585:9 [INFO] [stdout] | [INFO] [stdout] 585 | delay: &mut dyn DelayMs, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_delay` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `spi_bus` [INFO] [stdout] --> src/lib.rs:649:16 [INFO] [stdout] | [INFO] [stdout] 649 | pub fn new(spi_bus: &mut SPI, cs: &mut CS) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spi_bus` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cs` [INFO] [stdout] --> src/lib.rs:649:35 [INFO] [stdout] | [INFO] [stdout] 649 | pub fn new(spi_bus: &mut SPI, cs: &mut CS) -> Result { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_cs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i2c_bus` [INFO] [stdout] --> src/lib.rs:705:16 [INFO] [stdout] | [INFO] [stdout] 705 | pub fn new(i2c_bus: &mut I2C) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_i2c_bus` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ICM20X_B0_PWR_MGMT_2` [INFO] [stdout] --> src/lib.rs:66:1 [INFO] [stdout] | [INFO] [stdout] 66 | const ICM20X_B0_PWR_MGMT_2: u8 = 0x07; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ICM20X_B3_I2C_MST_CTRL` [INFO] [stdout] --> src/lib.rs:79:1 [INFO] [stdout] | [INFO] [stdout] 79 | const ICM20X_B3_I2C_MST_CTRL: u8 = 0x01; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ICM20X_B3_I2C_MST_DELAY_CTRL` [INFO] [stdout] --> src/lib.rs:80:1 [INFO] [stdout] | [INFO] [stdout] 80 | const ICM20X_B3_I2C_MST_DELAY_CTRL: u8 = 0x02; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `GRAVECONST` [INFO] [stdout] --> src/lib.rs:82:1 [INFO] [stdout] | [INFO] [stdout] 82 | const GRAVECONST: f32 = 9.81; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `setup_mag` [INFO] [stdout] --> src/lib.rs:753:8 [INFO] [stdout] | [INFO] [stdout] 753 | fn setup_mag(&self, i2c_bus: &mut I2C) -> Result<(), ICMError> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 11 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.22s [INFO] running `Command { std: "docker" "inspect" "e5cd133c6af735f91001c9e91ce0300c28726f594b99a16b4d8262e0165c6a72", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e5cd133c6af735f91001c9e91ce0300c28726f594b99a16b4d8262e0165c6a72", kill_on_drop: false }` [INFO] [stdout] e5cd133c6af735f91001c9e91ce0300c28726f594b99a16b4d8262e0165c6a72 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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=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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 5749b1f02d743cbe07e9f634e8a6eab257722b08d2083ea583915812096f05bf [INFO] running `Command { std: "docker" "start" "-a" "5749b1f02d743cbe07e9f634e8a6eab257722b08d2083ea583915812096f05bf", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.119 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:431:13 [INFO] [stdout] | [INFO] [stdout] 431 | let result = self.duty_cycle.read(interface)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `delay` [INFO] [stdout] --> src/lib.rs:441:9 [INFO] [stdout] | [INFO] [stdout] 441 | delay: &mut dyn DelayMs, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_delay` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `delay` [INFO] [stdout] --> src/lib.rs:585:9 [INFO] [stdout] | [INFO] [stdout] 585 | delay: &mut dyn DelayMs, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_delay` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `spi_bus` [INFO] [stdout] --> src/lib.rs:649:16 [INFO] [stdout] | [INFO] [stdout] 649 | pub fn new(spi_bus: &mut SPI, cs: &mut CS) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spi_bus` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cs` [INFO] [stdout] --> src/lib.rs:649:35 [INFO] [stdout] | [INFO] [stdout] 649 | pub fn new(spi_bus: &mut SPI, cs: &mut CS) -> Result { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_cs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i2c_bus` [INFO] [stdout] --> src/lib.rs:705:16 [INFO] [stdout] | [INFO] [stdout] 705 | pub fn new(i2c_bus: &mut I2C) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_i2c_bus` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ICM20X_B0_PWR_MGMT_2` [INFO] [stdout] --> src/lib.rs:66:1 [INFO] [stdout] | [INFO] [stdout] 66 | const ICM20X_B0_PWR_MGMT_2: u8 = 0x07; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ICM20X_B3_I2C_MST_CTRL` [INFO] [stdout] --> src/lib.rs:79:1 [INFO] [stdout] | [INFO] [stdout] 79 | const ICM20X_B3_I2C_MST_CTRL: u8 = 0x01; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ICM20X_B3_I2C_MST_DELAY_CTRL` [INFO] [stdout] --> src/lib.rs:80:1 [INFO] [stdout] | [INFO] [stdout] 80 | const ICM20X_B3_I2C_MST_DELAY_CTRL: u8 = 0x02; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `GRAVECONST` [INFO] [stdout] --> src/lib.rs:82:1 [INFO] [stdout] | [INFO] [stdout] 82 | const GRAVECONST: f32 = 9.81; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `setup_mag` [INFO] [stdout] --> src/lib.rs:753:8 [INFO] [stdout] | [INFO] [stdout] 753 | fn setup_mag(&self, i2c_bus: &mut I2C) -> Result<(), ICMError> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 11 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling nix v0.23.1 [INFO] [stderr] Compiling serial-core v0.4.0 [INFO] [stderr] Compiling termios v0.2.2 [INFO] [stderr] Compiling ioctl-rs v0.1.6 [INFO] [stderr] Compiling serial-unix v0.4.0 [INFO] [stderr] Compiling spidev v0.5.1 [INFO] [stderr] Compiling i2cdev v0.5.1 [INFO] [stderr] Compiling gpio-cdev v0.5.1 [INFO] [stderr] Compiling sysfs_gpio v0.6.1 [INFO] [stderr] Compiling linux-embedded-hal v0.3.2 [INFO] [stderr] Compiling icm20948 v0.0.1 (/opt/rustwide/workdir) [INFO] [stderr] error: could not compile `icm20948` due to 2 previous errors [INFO] [stdout] error[E0061]: this function takes 1 argument but 2 arguments were supplied [INFO] [stdout] --> tests/intergration_test.rs:56:23 [INFO] [stdout] | [INFO] [stdout] 56 | let mut icm_obj = ICMI2C::new(&mut i2c, ICM20948_CHIP_ADR).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^ -------- ----------------- supplied 2 arguments [INFO] [stdout] | | [INFO] [stdout] | expected 1 argument [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/lib.rs:705:12 [INFO] [stdout] | [INFO] [stdout] 705 | pub fn new(i2c_bus: &mut I2C) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to previous error [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:431:13 [INFO] [stdout] | [INFO] [stdout] 431 | let result = self.duty_cycle.read(interface)?; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `delay` [INFO] [stdout] --> src/lib.rs:441:9 [INFO] [stdout] | [INFO] [stdout] 441 | delay: &mut dyn DelayMs, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_delay` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `delay` [INFO] [stdout] --> src/lib.rs:585:9 [INFO] [stdout] | [INFO] [stdout] 585 | delay: &mut dyn DelayMs, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_delay` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `spi_bus` [INFO] [stdout] --> src/lib.rs:649:16 [INFO] [stdout] | [INFO] [stdout] 649 | pub fn new(spi_bus: &mut SPI, cs: &mut CS) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spi_bus` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cs` [INFO] [stdout] --> src/lib.rs:649:35 [INFO] [stdout] | [INFO] [stdout] 649 | pub fn new(spi_bus: &mut SPI, cs: &mut CS) -> Result { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_cs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i2c_bus` [INFO] [stdout] --> src/lib.rs:705:16 [INFO] [stdout] | [INFO] [stdout] 705 | pub fn new(i2c_bus: &mut I2C) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_i2c_bus` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ICM20X_B0_PWR_MGMT_2` [INFO] [stdout] --> src/lib.rs:66:1 [INFO] [stdout] | [INFO] [stdout] 66 | const ICM20X_B0_PWR_MGMT_2: u8 = 0x07; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ICM20X_B3_I2C_MST_CTRL` [INFO] [stdout] --> src/lib.rs:79:1 [INFO] [stdout] | [INFO] [stdout] 79 | const ICM20X_B3_I2C_MST_CTRL: u8 = 0x01; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `ICM20X_B3_I2C_MST_DELAY_CTRL` [INFO] [stdout] --> src/lib.rs:80:1 [INFO] [stdout] | [INFO] [stdout] 80 | const ICM20X_B3_I2C_MST_DELAY_CTRL: u8 = 0x02; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `GRAVECONST` [INFO] [stdout] --> src/lib.rs:82:1 [INFO] [stdout] | [INFO] [stdout] 82 | const GRAVECONST: f32 = 9.81; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `setup_mag` [INFO] [stdout] --> src/lib.rs:753:8 [INFO] [stdout] | [INFO] [stdout] 753 | fn setup_mag(&self, i2c_bus: &mut I2C) -> Result<(), ICMError> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 11 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "5749b1f02d743cbe07e9f634e8a6eab257722b08d2083ea583915812096f05bf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5749b1f02d743cbe07e9f634e8a6eab257722b08d2083ea583915812096f05bf", kill_on_drop: false }` [INFO] [stdout] 5749b1f02d743cbe07e9f634e8a6eab257722b08d2083ea583915812096f05bf