[INFO] cloning repository https://github.com/pablo-clueless/invoicer-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/pablo-clueless/invoicer-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpablo-clueless%2Finvoicer-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpablo-clueless%2Finvoicer-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 346f76b4d2e6667953de7fa1d071c69c482c0ec6 [INFO] testing pablo-clueless/invoicer-rust against beta-2026-04-21 for beta-1.96-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpablo-clueless%2Finvoicer-rust" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/pablo-clueless/invoicer-rust [INFO] finished tweaking git repo https://github.com/pablo-clueless/invoicer-rust [INFO] tweaked toml for git repo https://github.com/pablo-clueless/invoicer-rust written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/pablo-clueless/invoicer-rust on toolchain beta-2026-04-21 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/pablo-clueless/invoicer-rust 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" "+beta-2026-04-21" "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] [stderr] Downloading crates ... [INFO] [stderr] Downloaded jsonwebtoken v10.2.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6b3a30c210db19d0089d33c5cae2c1dc96f9946e36a3f53e5c42b282511b9b11 [INFO] running `Command { std: "docker" "start" "-a" "6b3a30c210db19d0089d33c5cae2c1dc96f9946e36a3f53e5c42b282511b9b11", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6b3a30c210db19d0089d33c5cae2c1dc96f9946e36a3f53e5c42b282511b9b11", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6b3a30c210db19d0089d33c5cae2c1dc96f9946e36a3f53e5c42b282511b9b11", kill_on_drop: false }` [INFO] [stdout] 6b3a30c210db19d0089d33c5cae2c1dc96f9946e36a3f53e5c42b282511b9b11 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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" "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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fb3942aa598407ed69ea1f6a21071379e417608f5163bb341aed102a4490564a [INFO] running `Command { std: "docker" "start" "-a" "fb3942aa598407ed69ea1f6a21071379e417608f5163bb341aed102a4490564a", kill_on_drop: false }` [INFO] [stderr] Compiling thiserror v2.0.17 [INFO] [stderr] Compiling time-core v0.1.6 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling pem v3.0.6 [INFO] [stderr] Compiling tokio v1.48.0 [INFO] [stderr] Compiling uuid v1.18.1 [INFO] [stderr] Compiling syn v2.0.110 [INFO] [stderr] Compiling time-macros v0.2.24 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling time v0.3.44 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling chrono v0.4.42 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling simple_asn1 v0.6.3 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling jsonwebtoken v10.2.0 [INFO] [stdout] error: at least one of the features "rust_crypto" or "aws_lc_rs" must be enabled [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/lib.rs:14:1 [INFO] [stdout] | [INFO] [stdout] 14 | compile_error!("at least one of the features \"rust_crypto\" or \"aws_lc_rs\" must be enabled"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Hs256Verifier` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/decoding.rs:324:38 [INFO] [stdout] | [INFO] [stdout] 324 | Algorithm::HS256 => Box::new(Hs256Verifier::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `Hs256Verifier` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Hs384Verifier` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/decoding.rs:325:38 [INFO] [stdout] | [INFO] [stdout] 325 | Algorithm::HS384 => Box::new(Hs384Verifier::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `Hs384Verifier` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Hs512Verifier` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/decoding.rs:326:38 [INFO] [stdout] | [INFO] [stdout] 326 | Algorithm::HS512 => Box::new(Hs512Verifier::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `Hs512Verifier` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Es256Verifier` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/decoding.rs:327:38 [INFO] [stdout] | [INFO] [stdout] 327 | Algorithm::ES256 => Box::new(Es256Verifier::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `Es256Verifier` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Es384Verifier` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/decoding.rs:328:38 [INFO] [stdout] | [INFO] [stdout] 328 | Algorithm::ES384 => Box::new(Es384Verifier::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `Es384Verifier` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Rsa256Verifier` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/decoding.rs:329:38 [INFO] [stdout] | [INFO] [stdout] 329 | Algorithm::RS256 => Box::new(Rsa256Verifier::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `Rsa256Verifier` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Rsa384Verifier` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/decoding.rs:330:38 [INFO] [stdout] | [INFO] [stdout] 330 | Algorithm::RS384 => Box::new(Rsa384Verifier::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `Rsa384Verifier` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Rsa512Verifier` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/decoding.rs:331:38 [INFO] [stdout] | [INFO] [stdout] 331 | Algorithm::RS512 => Box::new(Rsa512Verifier::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^^ use of undeclared type `Rsa512Verifier` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `RsaPss256Verifier` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/decoding.rs:332:38 [INFO] [stdout] | [INFO] [stdout] 332 | Algorithm::PS256 => Box::new(RsaPss256Verifier::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ use of undeclared type `RsaPss256Verifier` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `RsaPss384Verifier` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/decoding.rs:333:38 [INFO] [stdout] | [INFO] [stdout] 333 | Algorithm::PS384 => Box::new(RsaPss384Verifier::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ use of undeclared type `RsaPss384Verifier` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `RsaPss512Verifier` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/decoding.rs:334:38 [INFO] [stdout] | [INFO] [stdout] 334 | Algorithm::PS512 => Box::new(RsaPss512Verifier::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ use of undeclared type `RsaPss512Verifier` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `EdDSAVerifier` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/decoding.rs:335:38 [INFO] [stdout] | [INFO] [stdout] 335 | Algorithm::EdDSA => Box::new(EdDSAVerifier::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^ use of undeclared type `EdDSAVerifier` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Hs256Signer` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/encoding.rs:200:38 [INFO] [stdout] | [INFO] [stdout] 200 | Algorithm::HS256 => Box::new(Hs256Signer::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `Hs256Signer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Hs384Signer` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/encoding.rs:201:38 [INFO] [stdout] | [INFO] [stdout] 201 | Algorithm::HS384 => Box::new(Hs384Signer::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `Hs384Signer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Hs512Signer` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/encoding.rs:202:38 [INFO] [stdout] | [INFO] [stdout] 202 | Algorithm::HS512 => Box::new(Hs512Signer::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `Hs512Signer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Es256Signer` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/encoding.rs:203:38 [INFO] [stdout] | [INFO] [stdout] 203 | Algorithm::ES256 => Box::new(Es256Signer::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `Es256Signer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Es384Signer` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/encoding.rs:204:38 [INFO] [stdout] | [INFO] [stdout] 204 | Algorithm::ES384 => Box::new(Es384Signer::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `Es384Signer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Rsa256Signer` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/encoding.rs:205:38 [INFO] [stdout] | [INFO] [stdout] 205 | Algorithm::RS256 => Box::new(Rsa256Signer::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^ use of undeclared type `Rsa256Signer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Rsa384Signer` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/encoding.rs:206:38 [INFO] [stdout] | [INFO] [stdout] 206 | Algorithm::RS384 => Box::new(Rsa384Signer::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^ use of undeclared type `Rsa384Signer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `Rsa512Signer` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/encoding.rs:207:38 [INFO] [stdout] | [INFO] [stdout] 207 | Algorithm::RS512 => Box::new(Rsa512Signer::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^ use of undeclared type `Rsa512Signer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `RsaPss256Signer` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/encoding.rs:208:38 [INFO] [stdout] | [INFO] [stdout] 208 | Algorithm::PS256 => Box::new(RsaPss256Signer::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^^^ use of undeclared type `RsaPss256Signer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `RsaPss384Signer` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/encoding.rs:209:38 [INFO] [stdout] | [INFO] [stdout] 209 | Algorithm::PS384 => Box::new(RsaPss384Signer::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^^^ use of undeclared type `RsaPss384Signer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `RsaPss512Signer` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/encoding.rs:210:38 [INFO] [stdout] | [INFO] [stdout] 210 | Algorithm::PS512 => Box::new(RsaPss512Signer::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^^^^^ use of undeclared type `RsaPss512Signer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `EdDSASigner` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/encoding.rs:211:38 [INFO] [stdout] | [INFO] [stdout] 211 | Algorithm::EdDSA => Box::new(EdDSASigner::new(key)?) as Box, [INFO] [stdout] | ^^^^^^^^^^^ use of undeclared type `EdDSASigner` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `extract_rsa_public_key_components` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/jwk.rs:574:34 [INFO] [stdout] | [INFO] [stdout] 574 | let (n, e) = extract_rsa_public_key_components(&key.content)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `extract_ec_public_key_coordinates` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/jwk.rs:582:41 [INFO] [stdout] | [INFO] [stdout] 582 | let (curve, x, y) = extract_ec_public_key_coordinates(&key.content, alg)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `compute_digest` in this scope [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jsonwebtoken-10.2.0/src/jwk.rs:643:20 [INFO] [stdout] | [INFO] [stdout] 643 | b64_encode(compute_digest(pre.as_bytes(), hash_function)) [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0425, E0433. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0425`. [INFO] [stdout] [INFO] [stderr] error: could not compile `jsonwebtoken` (lib) due to 28 previous errors [INFO] running `Command { std: "docker" "inspect" "fb3942aa598407ed69ea1f6a21071379e417608f5163bb341aed102a4490564a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fb3942aa598407ed69ea1f6a21071379e417608f5163bb341aed102a4490564a", kill_on_drop: false }` [INFO] [stdout] fb3942aa598407ed69ea1f6a21071379e417608f5163bb341aed102a4490564a