[INFO] cloning repository https://github.com/ANAVHEOBA/starkcash
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ANAVHEOBA/starkcash" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FANAVHEOBA%2Fstarkcash", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FANAVHEOBA%2Fstarkcash'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7f905177f3c2378e8b41ddbfe2f0adde682e01c6
[INFO] checking ANAVHEOBA/starkcash against try#54cf65b8d066c082e536455049b95943cf30378f for pr-151920
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FANAVHEOBA%2Fstarkcash" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] [stderr] Updating files:  30% (614/1999)
Updating files:  31% (620/1999)
Updating files:  32% (640/1999)
Updating files:  33% (660/1999)
Updating files:  34% (680/1999)
Updating files:  35% (700/1999)
Updating files:  36% (720/1999)
Updating files:  37% (740/1999)
Updating files:  38% (760/1999)
Updating files:  39% (780/1999)
Updating files:  40% (800/1999)
Updating files:  41% (820/1999)
Updating files:  42% (840/1999)
Updating files:  43% (860/1999)
Updating files:  44% (880/1999)
Updating files:  45% (900/1999)
Updating files:  46% (920/1999)
Updating files:  47% (940/1999)
Updating files:  48% (960/1999)
Updating files:  49% (980/1999)
Updating files:  50% (1000/1999)
Updating files:  51% (1020/1999)
Updating files:  52% (1040/1999)
Updating files:  53% (1060/1999)
Updating files:  54% (1080/1999)
Updating files:  55% (1100/1999)
Updating files:  56% (1120/1999)
Updating files:  57% (1140/1999)
Updating files:  58% (1160/1999)
Updating files:  59% (1180/1999)
Updating files:  60% (1200/1999)
Updating files:  61% (1220/1999)
Updating files:  62% (1240/1999)
Updating files:  63% (1260/1999)
Updating files:  64% (1280/1999)
Updating files:  65% (1300/1999)
Updating files:  66% (1320/1999)
Updating files:  67% (1340/1999)
Updating files:  68% (1360/1999)
Updating files:  69% (1380/1999)
Updating files:  70% (1400/1999)
Updating files:  71% (1420/1999)
Updating files:  72% (1440/1999)
Updating files:  73% (1460/1999)
Updating files:  74% (1480/1999)
Updating files:  75% (1500/1999)
Updating files:  76% (1520/1999)
Updating files:  77% (1540/1999)
Updating files:  78% (1560/1999)
Updating files:  79% (1580/1999)
Updating files:  80% (1600/1999)
Updating files:  81% (1620/1999)
Updating files:  82% (1640/1999)
Updating files:  83% (1660/1999)
Updating files:  84% (1680/1999)
Updating files:  85% (1700/1999)
Updating files:  86% (1720/1999)
Updating files:  87% (1740/1999)
Updating files:  88% (1760/1999)
Updating files:  89% (1780/1999)
Updating files:  90% (1800/1999)
Updating files:  91% (1820/1999)
Updating files:  92% (1840/1999)
Updating files:  93% (1860/1999)
Updating files:  94% (1880/1999)
Updating files:  95% (1900/1999)
Updating files:  96% (1920/1999)
Updating files:  97% (1940/1999)
Updating files:  98% (1960/1999)
Updating files:  99% (1980/1999)
Updating files: 100% (1999/1999)
Updating files: 100% (1999/1999), done.
[INFO] started tweaking git repo https://github.com/ANAVHEOBA/starkcash
[INFO] removed 0 missing tests
[INFO] finished tweaking git repo https://github.com/ANAVHEOBA/starkcash
[INFO] tweaked toml for git repo https://github.com/ANAVHEOBA/starkcash written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ANAVHEOBA/starkcash on toolchain 54cf65b8d066c082e536455049b95943cf30378f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+54cf65b8d066c082e536455049b95943cf30378f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ANAVHEOBA/starkcash 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" "+54cf65b8d066c082e536455049b95943cf30378f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+54cf65b8d066c082e536455049b95943cf30378f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c4b5bf14985ed3cd78f21f3fa97238a130b60f9bc8411a73fd4b2d219a0b0b0e
[INFO] running `Command { std: "docker" "start" "-a" "c4b5bf14985ed3cd78f21f3fa97238a130b60f9bc8411a73fd4b2d219a0b0b0e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c4b5bf14985ed3cd78f21f3fa97238a130b60f9bc8411a73fd4b2d219a0b0b0e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c4b5bf14985ed3cd78f21f3fa97238a130b60f9bc8411a73fd4b2d219a0b0b0e", kill_on_drop: false }`
[INFO] [stdout] c4b5bf14985ed3cd78f21f3fa97238a130b60f9bc8411a73fd4b2d219a0b0b0e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+54cf65b8d066c082e536455049b95943cf30378f" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 446fcf2b2499b7c6c5c48c52c7594c4cab900edd3ae4b2183359d7d91897d157
[INFO] running `Command { std: "docker" "start" "-a" "446fcf2b2499b7c6c5c48c52c7594c4cab900edd3ae4b2183359d7d91897d157", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking hashbrown v0.13.2
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking ark-std v0.4.0
[INFO] [stderr]    Compiling ark-serialize-derive v0.4.2
[INFO] [stderr]    Compiling ark-ff-asm v0.4.2
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling ark-ff-macros v0.4.2
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]     Checking ark-serialize v0.4.2
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking ark-ff v0.4.2
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking ark-poly v0.4.2
[INFO] [stderr]     Checking ark-ec v0.4.2
[INFO] [stderr]     Checking ark-bn254 v0.4.0
[INFO] [stderr]     Checking light-poseidon v0.2.0
[INFO] [stderr]     Checking starkcash v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking starkcash-zkp v0.1.0 (/opt/rustwide/workdir/zkp)
[INFO] [stdout] error[E0599]: no method named `is_valid` found for enum `Result<T, E>` in the current scope
[INFO] [stdout]   --> tests/integration/cryptography/proof_tests.rs:26:19
[INFO] [stdout]    |
[INFO] [stdout] 26 |     assert!(proof.is_valid(), "Should generate valid proof");
[INFO] [stdout]    |                   ^^^^^^^^ method not found in `Result<Proof, ProofError>`
[INFO] [stdout]    |
[INFO] [stdout] note: the method `is_valid` exists on the type `Proof`
[INFO] [stdout]   --> src/module/cryptography/proof.rs:98:5
[INFO] [stdout]    |
[INFO] [stdout] 98 |     pub fn is_valid(&self) -> bool {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider using `Result::expect` to unwrap the `Proof` value, panicking if the value is a `Result::Err`
[INFO] [stdout]    |
[INFO] [stdout] 26 |     assert!(proof.expect("REASON").is_valid(), "Should generate valid proof");
[INFO] [stdout]    |                  +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `a` on type `Result<Proof, ProofError>`
[INFO] [stdout]   --> tests/integration/cryptography/proof_tests.rs:27:20
[INFO] [stdout]    |
[INFO] [stdout] 27 |     assert!(!proof.a.is_empty(), "Proof component A should not be empty");
[INFO] [stdout]    |                    ^ unknown field
[INFO] [stdout]    |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]    |
[INFO] [stdout] 27 |     assert!(!proof.unwrap().a.is_empty(), "Proof component A should not be empty");
[INFO] [stdout]    |                    +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `b` on type `Result<Proof, ProofError>`
[INFO] [stdout]   --> tests/integration/cryptography/proof_tests.rs:28:20
[INFO] [stdout]    |
[INFO] [stdout] 28 |     assert!(!proof.b.is_empty(), "Proof component B should not be empty");
[INFO] [stdout]    |                    ^ unknown field
[INFO] [stdout]    |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]    |
[INFO] [stdout] 28 |     assert!(!proof.unwrap().b.is_empty(), "Proof component B should not be empty");
[INFO] [stdout]    |                    +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `c` on type `Result<Proof, ProofError>`
[INFO] [stdout]   --> tests/integration/cryptography/proof_tests.rs:29:20
[INFO] [stdout]    |
[INFO] [stdout] 29 |     assert!(!proof.c.is_empty(), "Proof component C should not be empty");
[INFO] [stdout]    |                    ^ unknown field
[INFO] [stdout]    |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]    |
[INFO] [stdout] 29 |     assert!(!proof.unwrap().c.is_empty(), "Proof component C should not be empty");
[INFO] [stdout]    |                    +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:39:58
[INFO] [stdout]     |
[INFO] [stdout]  39 |     let is_valid = starkcash::cryptography::verify_proof(&proof, &public_inputs);
[INFO] [stdout]     |                    ------------------------------------- ^^^^^^ expected `&Proof`, found `&Result<Proof, ProofError>`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&Proof`
[INFO] [stdout]                found reference `&Result<Proof, ProofError>`
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> src/module/cryptography/proof.rs:338:8
[INFO] [stdout]     |
[INFO] [stdout] 338 | pub fn verify_proof(proof: &Proof, public_inputs: &PublicInputs) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:53:58
[INFO] [stdout]     |
[INFO] [stdout]  53 |     let is_valid = starkcash::cryptography::verify_proof(&proof, &wrong_inputs);
[INFO] [stdout]     |                    ------------------------------------- ^^^^^^ expected `&Proof`, found `&Result<Proof, ProofError>`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&Proof`
[INFO] [stdout]                found reference `&Result<Proof, ProofError>`
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> src/module/cryptography/proof.rs:338:8
[INFO] [stdout]     |
[INFO] [stdout] 338 | pub fn verify_proof(proof: &Proof, public_inputs: &PublicInputs) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `a` on type `Result<Proof, ProofError>`
[INFO] [stdout]   --> tests/integration/cryptography/proof_tests.rs:68:11
[INFO] [stdout]    |
[INFO] [stdout] 68 |     proof.a[0] = proof.a[0].wrapping_add(1);
[INFO] [stdout]    |           ^ unknown field
[INFO] [stdout]    |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]    |
[INFO] [stdout] 68 |     proof.unwrap().a[0] = proof.a[0].wrapping_add(1);
[INFO] [stdout]    |           +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `a` on type `Result<Proof, ProofError>`
[INFO] [stdout]   --> tests/integration/cryptography/proof_tests.rs:68:24
[INFO] [stdout]    |
[INFO] [stdout] 68 |     proof.a[0] = proof.a[0].wrapping_add(1);
[INFO] [stdout]    |                        ^ unknown field
[INFO] [stdout]    |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]    |
[INFO] [stdout] 68 |     proof.a[0] = proof.unwrap().a[0].wrapping_add(1);
[INFO] [stdout]    |                        +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:69:58
[INFO] [stdout]     |
[INFO] [stdout]  69 |     let is_valid = starkcash::cryptography::verify_proof(&proof, &public_inputs);
[INFO] [stdout]     |                    ------------------------------------- ^^^^^^ expected `&Proof`, found `&Result<Proof, ProofError>`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&Proof`
[INFO] [stdout]                found reference `&Result<Proof, ProofError>`
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> src/module/cryptography/proof.rs:338:8
[INFO] [stdout]     |
[INFO] [stdout] 338 | pub fn verify_proof(proof: &Proof, public_inputs: &PublicInputs) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:85:47
[INFO] [stdout]     |
[INFO] [stdout]  85 |         starkcash::cryptography::verify_proof(&proof1, &public_inputs),
[INFO] [stdout]     |         ------------------------------------- ^^^^^^^ expected `&Proof`, found `&Result<Proof, ProofError>`
[INFO] [stdout]     |         |
[INFO] [stdout]     |         arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&Proof`
[INFO] [stdout]                found reference `&Result<Proof, ProofError>`
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> src/module/cryptography/proof.rs:338:8
[INFO] [stdout]     |
[INFO] [stdout] 338 | pub fn verify_proof(proof: &Proof, public_inputs: &PublicInputs) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:89:47
[INFO] [stdout]     |
[INFO] [stdout]  89 |         starkcash::cryptography::verify_proof(&proof2, &public_inputs),
[INFO] [stdout]     |         ------------------------------------- ^^^^^^^ expected `&Proof`, found `&Result<Proof, ProofError>`
[INFO] [stdout]     |         |
[INFO] [stdout]     |         arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&Proof`
[INFO] [stdout]                found reference `&Result<Proof, ProofError>`
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> src/module/cryptography/proof.rs:338:8
[INFO] [stdout]     |
[INFO] [stdout] 338 | pub fn verify_proof(proof: &Proof, public_inputs: &PublicInputs) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `a` on type `Result<Proof, ProofError>`
[INFO] [stdout]   --> tests/integration/cryptography/proof_tests.rs:93:16
[INFO] [stdout]    |
[INFO] [stdout] 93 |         proof1.a, proof2.a,
[INFO] [stdout]    |                ^ unknown field
[INFO] [stdout]    |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]    |
[INFO] [stdout] 93 |         proof1.unwrap().a, proof2.a,
[INFO] [stdout]    |                +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `a` on type `Result<Proof, ProofError>`
[INFO] [stdout]   --> tests/integration/cryptography/proof_tests.rs:93:26
[INFO] [stdout]    |
[INFO] [stdout] 93 |         proof1.a, proof2.a,
[INFO] [stdout]    |                          ^ unknown field
[INFO] [stdout]    |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]    |
[INFO] [stdout] 93 |         proof1.a, proof2.unwrap().a,
[INFO] [stdout]    |                          +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `to_bytes` found for enum `Result<T, E>` in the current scope
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:105:28
[INFO] [stdout]     |
[INFO] [stdout] 105 |     let serialized = proof.to_bytes();
[INFO] [stdout]     |                            ^^^^^^^^ method not found in `Result<Proof, ProofError>`
[INFO] [stdout]     |
[INFO] [stdout] note: the method `to_bytes` exists on the type `Proof`
[INFO] [stdout]    --> src/module/cryptography/proof.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn to_bytes(&self) -> Vec<u8> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider using `Result::expect` to unwrap the `Proof` value, panicking if the value is a `Result::Err`
[INFO] [stdout]     |
[INFO] [stdout] 105 |     let serialized = proof.expect("REASON").to_bytes();
[INFO] [stdout]     |                           +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `a` on type `Result<Proof, ProofError>`
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:108:22
[INFO] [stdout]     |
[INFO] [stdout] 108 |     assert_eq!(proof.a, deserialized.a, "Component A should match");
[INFO] [stdout]     |                      ^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]     |
[INFO] [stdout] 108 |     assert_eq!(proof.unwrap().a, deserialized.a, "Component A should match");
[INFO] [stdout]     |                      +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `a` on type `Result<Proof, ProofError>`
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:108:38
[INFO] [stdout]     |
[INFO] [stdout] 108 |     assert_eq!(proof.a, deserialized.a, "Component A should match");
[INFO] [stdout]     |                                      ^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]     |
[INFO] [stdout] 108 |     assert_eq!(proof.a, deserialized.unwrap().a, "Component A should match");
[INFO] [stdout]     |                                      +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `b` on type `Result<Proof, ProofError>`
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:109:22
[INFO] [stdout]     |
[INFO] [stdout] 109 |     assert_eq!(proof.b, deserialized.b, "Component B should match");
[INFO] [stdout]     |                      ^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]     |
[INFO] [stdout] 109 |     assert_eq!(proof.unwrap().b, deserialized.b, "Component B should match");
[INFO] [stdout]     |                      +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `b` on type `Result<Proof, ProofError>`
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:109:38
[INFO] [stdout]     |
[INFO] [stdout] 109 |     assert_eq!(proof.b, deserialized.b, "Component B should match");
[INFO] [stdout]     |                                      ^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]     |
[INFO] [stdout] 109 |     assert_eq!(proof.b, deserialized.unwrap().b, "Component B should match");
[INFO] [stdout]     |                                      +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `c` on type `Result<Proof, ProofError>`
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:110:22
[INFO] [stdout]     |
[INFO] [stdout] 110 |     assert_eq!(proof.c, deserialized.c, "Component C should match");
[INFO] [stdout]     |                      ^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]     |
[INFO] [stdout] 110 |     assert_eq!(proof.unwrap().c, deserialized.c, "Component C should match");
[INFO] [stdout]     |                      +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `c` on type `Result<Proof, ProofError>`
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:110:38
[INFO] [stdout]     |
[INFO] [stdout] 110 |     assert_eq!(proof.c, deserialized.c, "Component C should match");
[INFO] [stdout]     |                                      ^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: one of the expressions' fields has a field of the same name
[INFO] [stdout]     |
[INFO] [stdout] 110 |     assert_eq!(proof.c, deserialized.unwrap().c, "Component C should match");
[INFO] [stdout]     |                                      +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:113:47
[INFO] [stdout]     |
[INFO] [stdout] 113 |         starkcash::cryptography::verify_proof(&deserialized, &public_inputs),
[INFO] [stdout]     |         ------------------------------------- ^^^^^^^^^^^^^ expected `&Proof`, found `&Result<Proof, ProofError>`
[INFO] [stdout]     |         |
[INFO] [stdout]     |         arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&Proof`
[INFO] [stdout]                found reference `&Result<Proof, ProofError>`
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> src/module/cryptography/proof.rs:338:8
[INFO] [stdout]     |
[INFO] [stdout] 338 | pub fn verify_proof(proof: &Proof, public_inputs: &PublicInputs) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `to_bytes` found for enum `Result<T, E>` in the current scope
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:137:16
[INFO] [stdout]     |
[INFO] [stdout] 137 |         proof1.to_bytes().len(),
[INFO] [stdout]     |                ^^^^^^^^ method not found in `Result<Proof, ProofError>`
[INFO] [stdout]     |
[INFO] [stdout] note: the method `to_bytes` exists on the type `Proof`
[INFO] [stdout]    --> src/module/cryptography/proof.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn to_bytes(&self) -> Vec<u8> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider using `Result::expect` to unwrap the `Proof` value, panicking if the value is a `Result::Err`
[INFO] [stdout]     |
[INFO] [stdout] 137 |         proof1.expect("REASON").to_bytes().len(),
[INFO] [stdout]     |               +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `to_bytes` found for enum `Result<T, E>` in the current scope
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:138:16
[INFO] [stdout]     |
[INFO] [stdout] 138 |         proof2.to_bytes().len(),
[INFO] [stdout]     |                ^^^^^^^^ method not found in `Result<Proof, ProofError>`
[INFO] [stdout]     |
[INFO] [stdout] note: the method `to_bytes` exists on the type `Proof`
[INFO] [stdout]    --> src/module/cryptography/proof.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn to_bytes(&self) -> Vec<u8> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider using `Result::expect` to unwrap the `Proof` value, panicking if the value is a `Result::Err`
[INFO] [stdout]     |
[INFO] [stdout] 138 |         proof2.expect("REASON").to_bytes().len(),
[INFO] [stdout]     |               +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `to_bytes` found for enum `Result<T, E>` in the current scope
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:142:16
[INFO] [stdout]     |
[INFO] [stdout] 142 |         proof2.to_bytes().len(),
[INFO] [stdout]     |                ^^^^^^^^ method not found in `Result<Proof, ProofError>`
[INFO] [stdout]     |
[INFO] [stdout] note: the method `to_bytes` exists on the type `Proof`
[INFO] [stdout]    --> src/module/cryptography/proof.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn to_bytes(&self) -> Vec<u8> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider using `Result::expect` to unwrap the `Proof` value, panicking if the value is a `Result::Err`
[INFO] [stdout]     |
[INFO] [stdout] 142 |         proof2.expect("REASON").to_bytes().len(),
[INFO] [stdout]     |               +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `to_bytes` found for enum `Result<T, E>` in the current scope
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:143:16
[INFO] [stdout]     |
[INFO] [stdout] 143 |         proof3.to_bytes().len(),
[INFO] [stdout]     |                ^^^^^^^^ method not found in `Result<Proof, ProofError>`
[INFO] [stdout]     |
[INFO] [stdout] note: the method `to_bytes` exists on the type `Proof`
[INFO] [stdout]    --> src/module/cryptography/proof.rs:105:5
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn to_bytes(&self) -> Vec<u8> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider using `Result::expect` to unwrap the `Proof` value, panicking if the value is a `Result::Err`
[INFO] [stdout]     |
[INFO] [stdout] 143 |         proof3.expect("REASON").to_bytes().len(),
[INFO] [stdout]     |               +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:179:55
[INFO] [stdout]     |
[INFO] [stdout] 179 |         let _ = starkcash::cryptography::verify_proof(&proof, &public_inputs);
[INFO] [stdout]     |                 ------------------------------------- ^^^^^^ expected `&Proof`, found `&Result<Proof, ProofError>`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&Proof`
[INFO] [stdout]                found reference `&Result<Proof, ProofError>`
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> src/module/cryptography/proof.rs:338:8
[INFO] [stdout]     |
[INFO] [stdout] 338 | pub fn verify_proof(proof: &Proof, public_inputs: &PublicInputs) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `is_valid` found for enum `Result<T, E>` in the current scope
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:210:24
[INFO] [stdout]     |
[INFO] [stdout] 210 |         assert!(!proof.is_valid(), "Empty path should produce invalid proof");
[INFO] [stdout]     |                        ^^^^^^^^ method not found in `Result<Proof, ProofError>`
[INFO] [stdout]     |
[INFO] [stdout] note: the method `is_valid` exists on the type `Proof`
[INFO] [stdout]    --> src/module/cryptography/proof.rs:98:5
[INFO] [stdout]     |
[INFO] [stdout]  98 |     pub fn is_valid(&self) -> bool {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider using `Result::expect` to unwrap the `Proof` value, panicking if the value is a `Result::Err`
[INFO] [stdout]     |
[INFO] [stdout] 210 |         assert!(!proof.expect("REASON").is_valid(), "Empty path should produce invalid proof");
[INFO] [stdout]     |                       +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `is_valid` found for enum `Result<T, E>` in the current scope
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:232:20
[INFO] [stdout]     |
[INFO] [stdout] 232 |             !proof.is_valid(),
[INFO] [stdout]     |                    ^^^^^^^^ method not found in `Result<Proof, ProofError>`
[INFO] [stdout]     |
[INFO] [stdout] note: the method `is_valid` exists on the type `Proof`
[INFO] [stdout]    --> src/module/cryptography/proof.rs:98:5
[INFO] [stdout]     |
[INFO] [stdout]  98 |     pub fn is_valid(&self) -> bool {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider using `Result::expect` to unwrap the `Proof` value, panicking if the value is a `Result::Err`
[INFO] [stdout]     |
[INFO] [stdout] 232 |             !proof.expect("REASON").is_valid(),
[INFO] [stdout]     |                   +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:252:58
[INFO] [stdout]     |
[INFO] [stdout] 252 |     let is_valid = starkcash::cryptography::verify_proof(&proof, &public_inputs);
[INFO] [stdout]     |                    ------------------------------------- ^^^^^^ expected `&Proof`, found `&Result<Proof, ProofError>`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&Proof`
[INFO] [stdout]                found reference `&Result<Proof, ProofError>`
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> src/module/cryptography/proof.rs:338:8
[INFO] [stdout]     |
[INFO] [stdout] 338 | pub fn verify_proof(proof: &Proof, public_inputs: &PublicInputs) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> tests/integration/cryptography/proof_tests.rs:269:58
[INFO] [stdout]     |
[INFO] [stdout] 269 |     let is_valid = starkcash::cryptography::verify_proof(&proof, &public_inputs);
[INFO] [stdout]     |                    ------------------------------------- ^^^^^^ expected `&Proof`, found `&Result<Proof, ProofError>`
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&Proof`
[INFO] [stdout]                found reference `&Result<Proof, ProofError>`
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> src/module/cryptography/proof.rs:338:8
[INFO] [stdout]     |
[INFO] [stdout] 338 | pub fn verify_proof(proof: &Proof, public_inputs: &PublicInputs) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0599, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `starkcash` (test "cryptography_integration") due to 30 previous errors
[INFO] running `Command { std: "docker" "inspect" "446fcf2b2499b7c6c5c48c52c7594c4cab900edd3ae4b2183359d7d91897d157", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "446fcf2b2499b7c6c5c48c52c7594c4cab900edd3ae4b2183359d7d91897d157", kill_on_drop: false }`
[INFO] [stdout] 446fcf2b2499b7c6c5c48c52c7594c4cab900edd3ae4b2183359d7d91897d157
