[INFO] cloning repository https://github.com/kkoogqw/softcred-pbcwa
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kkoogqw/softcred-pbcwa" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkkoogqw%2Fsoftcred-pbcwa", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkkoogqw%2Fsoftcred-pbcwa'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3ed0ff0fd85ce87e048651fc78cf400b9efd2d96
[INFO] testing kkoogqw/softcred-pbcwa against try#db823df02fd0c2cf67b43025ac3fef3f2d743245 for pr-150681
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkkoogqw%2Fsoftcred-pbcwa" "/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/kkoogqw/softcred-pbcwa
[INFO] finished tweaking git repo https://github.com/kkoogqw/softcred-pbcwa
[INFO] tweaked toml for git repo https://github.com/kkoogqw/softcred-pbcwa written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/kkoogqw/softcred-pbcwa on toolchain db823df02fd0c2cf67b43025ac3fef3f2d743245
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/kkoogqw/softcred-pbcwa 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" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "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-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3491d2b101d4a2b7a725bc4bd73f86474a5a12e6b075ea2f7a84ee2c776295c3
[INFO] running `Command { std: "docker" "start" "-a" "3491d2b101d4a2b7a725bc4bd73f86474a5a12e6b075ea2f7a84ee2c776295c3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3491d2b101d4a2b7a725bc4bd73f86474a5a12e6b075ea2f7a84ee2c776295c3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3491d2b101d4a2b7a725bc4bd73f86474a5a12e6b075ea2f7a84ee2c776295c3", kill_on_drop: false }`
[INFO] [stdout] 3491d2b101d4a2b7a725bc4bd73f86474a5a12e6b075ea2f7a84ee2c776295c3
[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=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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f80ba7ba8deecb86d6233d0f9bc80b58e0ff73e5640f621ed3101948af43900c
[INFO] running `Command { std: "docker" "start" "-a" "f80ba7ba8deecb86d6233d0f9bc80b58e0ff73e5640f621ed3101948af43900c", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling keccak v0.1.5
[INFO] [stderr]    Compiling sp-std v2.0.1
[INFO] [stderr]    Compiling libc v0.2.175
[INFO] [stderr]    Compiling cc v1.2.33
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling num-bigint v0.3.3
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling clear_on_drop v0.2.5
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling ff v0.13.1
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling group v0.13.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling sha3 v0.10.8
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling zeroize v1.8.1
[INFO] [stderr]    Compiling merlin v3.0.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling bulletproofs v5.0.0 (/opt/rustwide/workdir/bulletproofs)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> bulletproofs/src/range_proof/party.rs:108:17
[INFO] [stdout]     |
[INFO] [stdout] 108 |             let mut point = -H_i;
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_bytes` is never used
[INFO] [stdout]    --> bulletproofs/src/inner_product_proof.rs:341:12
[INFO] [stdout]     |
[INFO] [stdout]  26 | impl InnerProductProof {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 341 |     pub fn to_bytes(&self) -> Vec<u8> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling gadgets v0.1.0 (/opt/rustwide/workdir/gadgets)
[INFO] [stdout] warning: unused imports: `sync::Arc` and `vec`
[INFO] [stdout]  --> gadgets/src/merkle_tree/mod.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{sync::Arc, vec};
[INFO] [stdout]   |           ^^^^^^^^^  ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> gadgets/src/merkle_tree/mod.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `allocate_statics_for_verifier`
[INFO] [stdout]  --> gadgets/src/poseidon/builder.rs:3:38
[INFO] [stdout]   |
[INFO] [stdout] 3 |         allocate_statics_for_prover, allocate_statics_for_verifier, constants,
[INFO] [stdout]   |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConstraintSystem`, `LinearCombination`, `R1CSError`, `R1CSProof`, `Variable`, and `Verifier`
[INFO] [stdout]   --> gadgets/src/poseidon/builder.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |         ConstraintSystem, LinearCombination, Prover, R1CSError, R1CSProof,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^          ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 11 |         Variable, Verifier,
[INFO] [stdout]    |         ^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BulletproofGens`, `R1CSProof`, and `Variable`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:7:65
[INFO] [stdout]    |
[INFO] [stdout]  7 |         ConstraintSystem, LinearCombination, Prover, R1CSError, R1CSProof,
[INFO] [stdout]    |                                                                 ^^^^^^^^^
[INFO] [stdout]  8 |         Variable, Verifier,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]  9 |     },
[INFO] [stdout] 10 |     BulletproofGens, PedersenGens,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `is_nonzero_gadget`, `is_zero_gadget`, and `scalar::get_scalar_from_hex`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |         scalar::get_scalar_from_hex,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 20 |     },
[INFO] [stdout] 21 |     zero_nonzero::{is_nonzero_gadget, is_zero_gadget},
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashMap` and `mem`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | use std::{collections::HashMap, mem};
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MDS_ENTRIES` and `ROUND_CONSTS`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:27:40
[INFO] [stdout]    |
[INFO] [stdout] 27 | use crate::poseidon::constants::x3_2::{MDS_ENTRIES, ROUND_CONSTS};
[INFO] [stdout]    |                                        ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash::Hash`
[INFO] [stdout]  --> gadgets/src/smt/mod.rs:4:52
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::{borrow::BorrowMut, collections::HashMap, hash::Hash};
[INFO] [stdout]   |                                                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BulletproofGens` and `PedersenGens`
[INFO] [stdout]  --> gadgets/src/utils/r1cs.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     BulletproofGens, PedersenGens,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Poseidon_permutation` and `get_scalar_from_hex`
[INFO] [stdout]   --> gadgets/src/lib.rs:13:50
[INFO] [stdout]    |
[INFO] [stdout] 13 |         Poseidon_hash_4, Poseidon_hash_4_gadget, Poseidon_permutation,
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |         scalar::{get_bits, get_scalar_from_hex},
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Rng`
[INFO] [stdout]    --> gadgets/src/lib.rs:339:29
[INFO] [stdout]     |
[INFO] [stdout] 339 |     use rand::{rngs::OsRng, Rng};
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]  --> gadgets/src/merkle_tree/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use group::ff::Field;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]   --> gadgets/src/poseidon/builder.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use group::ff::Field;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]  --> gadgets/src/poseidon/sbox.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use group::ff::Field;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use group::ff::Field;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]  --> gadgets/src/range/mod.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use group::ff::Field;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]   --> gadgets/src/lib.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | use group::ff::Field;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total_rounds`
[INFO] [stdout]   --> gadgets/src/lib.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let total_rounds = params.get_total_rounds();
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_rounds`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> gadgets/src/lib.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |     let mut rng: OsRng = OsRng::default();
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rng`
[INFO] [stdout]    --> gadgets/src/lib.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |     let mut rng: OsRng = OsRng::default();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_permutation` should have a snake case name
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn Poseidon_permutation(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_permutation`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_permutation_constraints` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub fn Poseidon_permutation_constraints<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_permutation_constraints`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_permutation_gadget` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:278:8
[INFO] [stdout]     |
[INFO] [stdout] 278 | pub fn Poseidon_permutation_gadget<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_permutation_gadget`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_2` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:311:8
[INFO] [stdout]     |
[INFO] [stdout] 311 | pub fn Poseidon_hash_2(xl: Scalar, xr: Scalar, params: &Poseidon) -> Scalar {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_2_constraints` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:329:8
[INFO] [stdout]     |
[INFO] [stdout] 329 | pub fn Poseidon_hash_2_constraints<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_2_constraints`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_2_gadget` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:356:8
[INFO] [stdout]     |
[INFO] [stdout] 356 | pub fn Poseidon_hash_2_gadget<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_2_gadget`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_4` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:379:8
[INFO] [stdout]     |
[INFO] [stdout] 379 | pub fn Poseidon_hash_4(inputs: [Scalar; 4], params: &Poseidon) -> Scalar {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_4_constraints` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:397:8
[INFO] [stdout]     |
[INFO] [stdout] 397 | pub fn Poseidon_hash_4_constraints<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_4_constraints`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_4_gadget` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:425:8
[INFO] [stdout]     |
[INFO] [stdout] 425 | pub fn Poseidon_hash_4_gadget<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_4_gadget`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling pbcwa v0.1.0 (/opt/rustwide/workdir/pbcwa)
[INFO] [stdout] warning: unused import: `attribute_tree::AttributeTree`
[INFO] [stdout]   --> pbcwa/src/credential.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         attribute_tree::AttributeTree,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AttributeTree`, `Attribute`, and `AuthenticationToken`
[INFO] [stdout]   --> pbcwa/src/issuer.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         AuthenticationToken, BlindTransformUserMessage1,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |         attribute_tree::{Attribute, AttributeTree},
[INFO] [stdout]    |                          ^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> pbcwa/src/issuer.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 80 |         if (tag == Scalar::ZERO || tag == self.secret) {
[INFO] [stdout]    |            ^                                         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 80 -         if (tag == Scalar::ZERO || tag == self.secret) {
[INFO] [stdout] 80 +         if tag == Scalar::ZERO || tag == self.secret  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bulletproofs::r1cs::R1CSError`
[INFO] [stdout]  --> pbcwa/src/utils/nizk_dleq.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bulletproofs::r1cs::R1CSError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bincode::de`
[INFO] [stdout]  --> pbcwa/src/utils/bulletproofs.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bincode::de;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `constrain_lc_with_scalar` and `self`
[INFO] [stdout]   --> pbcwa/src/utils/bulletproofs.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |         self, Poseidon_hash_2_constraints, allocate_statics_for_prover,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |         r1cs::{AllocatedQuantity, AllocatedScalar, constrain_lc_with_scalar},
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MerkleTree16x4Path` and `MerkleTree16x4`
[INFO] [stdout]  --> pbcwa/src/utils/attribute_tree.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 |     merkle_tree::{MerkleTree16x4, MerkleTree16x4Path},
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `params`
[INFO] [stdout]   --> pbcwa/src/credential.rs:99:9
[INFO] [stdout]    |
[INFO] [stdout] 99 |         params: Parameters,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_params`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attributes`
[INFO] [stdout]    --> pbcwa/src/credential.rs:394:9
[INFO] [stdout]     |
[INFO] [stdout] 394 |         attributes: Vec<Scalar>,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attributes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `policy`
[INFO] [stdout]    --> pbcwa/src/credential.rs:395:9
[INFO] [stdout]     |
[INFO] [stdout] 395 |         policy: String,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_policy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `secret`
[INFO] [stdout]    --> pbcwa/src/credential.rs:402:9
[INFO] [stdout]     |
[INFO] [stdout] 402 |         secret: &EphemeralSecret,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pub_token`
[INFO] [stdout]    --> pbcwa/src/credential.rs:403:9
[INFO] [stdout]     |
[INFO] [stdout] 403 |         pub_token: &PublicVerifiableToken,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pub_token`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> pbcwa/src/utils/bulletproofs.rs:259:9
[INFO] [stdout]     |
[INFO] [stdout] 259 |     let mut merkle_proof_vec = Vec::<Scalar>::new();
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> pbcwa/src/utils/bulletproofs.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut merkle_proof_vec = Vec::<Scalar>::new();
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `T` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub T: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub proof_V: PublicVerifiableToken,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_P` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub proof_P: R1CSProof,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case: `proof_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `T` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |     pub T: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `T` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub T: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub proof_V: DleqProof,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub proof_G: DlogProof,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case: `proof_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub proof_V: PublicVerifiableTokenExt,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_P` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub proof_P: R1CSProof,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case: `proof_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `T` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub T: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:91:9
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:156:13
[INFO] [stdout]     |
[INFO] [stdout] 156 |         let T = a * decrypted_cred;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `U` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 |         let U = a * params.G;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_V` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let _V = state.beta.invert() * message.V;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case (notice the capitalization): `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_T` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let _T = state.T;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_R1` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 |         let _R1 = epsilon.invert() * message.R1 + rho * params.G;
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `_r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_R2` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:206:13
[INFO] [stdout]     |
[INFO] [stdout] 206 |         let _R2 = (epsilon.invert() * state.beta.invert()) * message.R2
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `_r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:271:13
[INFO] [stdout]     |
[INFO] [stdout] 271 |         let T = a * decrypted_cred;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `U` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:272:13
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let U = a * params.G;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `G` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let G = gamma * params.G;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_V` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:316:13
[INFO] [stdout]     |
[INFO] [stdout] 316 |         let _V = state.beta.invert() * message.V;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case (notice the capitalization): `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_T` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:317:13
[INFO] [stdout]     |
[INFO] [stdout] 317 |         let _T = state.T;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_R1` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:323:13
[INFO] [stdout]     |
[INFO] [stdout] 323 |         let _R1 = epsilon.invert() * message.R1 + rho * params.G;
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `_r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_R2` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:324:13
[INFO] [stdout]     |
[INFO] [stdout] 324 |         let _R2 = (epsilon.invert() * state.beta.invert()) * message.R2
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `_r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `proof_V` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:366:13
[INFO] [stdout]     |
[INFO] [stdout] 366 |         let proof_V = nizk_dleq::DleqProof { c: state.c, s };
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `stmt_G` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:369:13
[INFO] [stdout]     |
[INFO] [stdout] 369 |         let stmt_G = nizk_dlog::DlogStatement {
[INFO] [stdout]     |             ^^^^^^ help: convert the identifier to snake case: `stmt_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `proof_G` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:378:13
[INFO] [stdout]     |
[INFO] [stdout] 378 |         let proof_G =
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case: `proof_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `CRH` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub CRH: Poseidon,
[INFO] [stdout]    |         ^^^ help: convert the identifier to snake case: `crh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub R1: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub R2: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let G = RistrettoPoint::random(&mut rng);
[INFO] [stdout]    |             ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `CRH` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let CRH = get_poseison_parameters(Some(PoseidonSbox::Exponentiation17));
[INFO] [stdout]    |             ^^^ help: convert the identifier to snake case: `crh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `U` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/issuer.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let U = (self.secret + message.token.tag) * message.token.rand_cred;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/issuer.rs:127:13
[INFO] [stdout]     |
[INFO] [stdout] 127 |         let R1 = r * self.params.G;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/issuer.rs:128:13
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let R2 = r * message.token.rand_cred;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `V` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/issuer.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let V = self.secret * message.token.rand_cred;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dlog.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `X` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dlog.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub X: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dlog.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let R = r * stmt.G;
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dlog.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let R = proof.s * stmt.G - proof.c * stmt.X;
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `X` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub X: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `A` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub A: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `B` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub B: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let R1 = r * stmt.G;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let R2 = r * stmt.A;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     let R1 = proof.s * stmt.G - proof.c * stmt.X;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     let R2 = proof.s * stmt.A - proof.c * stmt.B;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub C1: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case (notice the capitalization): `c1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub G1: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `g1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub G2: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `g2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub C2: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case (notice the capitalization): `c2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `H1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub H1: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `h1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `H2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub H2: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `h2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let R1 = r1 * stmt.H1 + r2 * stmt.H2;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let R2 = (-r1) * stmt.G1 + r2 * stmt.G2;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let R1 = proof.s1 * stmt.H1 + proof.s2 * stmt.H2 - proof.c * stmt.C2;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |     let R2 = (-proof.s1) * stmt.G1 + proof.s3 * stmt.G2 - proof.c * stmt.C1;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `X` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub X: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `A` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub A: RistrettoPoint, // issued credential
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let R1 = r * stmt.G;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let R2 = r * stmt.A;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let R1 = proof.s * stmt.G - proof.c * stmt.X;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     let R2 = (proof.s + proof.c * stmt.m) * stmt.A - proof.c * stmt.A;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling demo v0.1.0 (/opt/rustwide/workdir/demo)
[INFO] [stdout] warning: unused variable: `sec`
[INFO] [stdout]    --> demo/src/main.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 |     let (sec, token) = encrypted_cred
[INFO] [stdout]     |          ^^^ help: if this is intentional, prefix it with an underscore: `_sec`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commitment`
[INFO] [stdout]    --> demo/src/main.rs:264:9
[INFO] [stdout]     |
[INFO] [stdout] 264 |     let commitment = pc_gens.commit(message, random_scalar);
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commitment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> demo/src/main.rs:321:9
[INFO] [stdout]     |
[INFO] [stdout] 321 |     let mut prover = Prover::new(&pc_gens, &mut prover_transcript);
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> demo/src/main.rs:336:9
[INFO] [stdout]     |
[INFO] [stdout] 336 |     let mut verifier = Verifier::new(&mut verifier_transcript);
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> demo/src/main.rs:409:9
[INFO] [stdout]     |
[INFO] [stdout] 409 |     let mut verifier = Verifier::new(&mut verifier_transcript);
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `H1` should have a snake case name
[INFO] [stdout]    --> demo/src/main.rs:271:9
[INFO] [stdout]     |
[INFO] [stdout] 271 |     let H1 = pc_gens.B;
[INFO] [stdout]     |         ^^ help: convert the identifier to snake case: `h1`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `H2` should have a snake case name
[INFO] [stdout]    --> demo/src/main.rs:272:9
[INFO] [stdout]     |
[INFO] [stdout] 272 |     let H2 = pc_gens.B_blinding;
[INFO] [stdout]     |         ^^ help: convert the identifier to snake case: `h2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `CC` should have a snake case name
[INFO] [stdout]    --> demo/src/main.rs:274:9
[INFO] [stdout]     |
[INFO] [stdout] 274 |     let CC = random_scalar * H2 + message * H1;
[INFO] [stdout]     |         ^^ help: convert the identifier to snake case (notice the capitalization): `cc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 31.79s
[INFO] running `Command { std: "docker" "inspect" "f80ba7ba8deecb86d6233d0f9bc80b58e0ff73e5640f621ed3101948af43900c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f80ba7ba8deecb86d6233d0f9bc80b58e0ff73e5640f621ed3101948af43900c", kill_on_drop: false }`
[INFO] [stdout] f80ba7ba8deecb86d6233d0f9bc80b58e0ff73e5640f621ed3101948af43900c
[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=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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d7c3b8b3df3846dc5d5feca69c28d9122ea69f3e195cbc68582d41a234e04d00
[INFO] running `Command { std: "docker" "start" "-a" "d7c3b8b3df3846dc5d5feca69c28d9122ea69f3e195cbc68582d41a234e04d00", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling serde_json v1.0.142
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling csv-core v0.1.12
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling half v1.8.3
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling hex v0.3.2
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling csv v1.3.1
[INFO] [stderr]    Compiling serde_cbor v0.11.2
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling criterion-plot v0.4.5
[INFO] [stderr]    Compiling num-bigint v0.3.3
[INFO] [stderr]    Compiling bulletproofs v5.0.0 (/opt/rustwide/workdir/bulletproofs)
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> bulletproofs/src/range_proof/party.rs:108:17
[INFO] [stdout]     |
[INFO] [stdout] 108 |             let mut point = -H_i;
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_bytes` is never used
[INFO] [stdout]    --> bulletproofs/src/inner_product_proof.rs:341:12
[INFO] [stdout]     |
[INFO] [stdout]  26 | impl InnerProductProof {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 341 |     pub fn to_bytes(&self) -> Vec<u8> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling criterion v0.3.6
[INFO] [stderr]    Compiling gadgets v0.1.0 (/opt/rustwide/workdir/gadgets)
[INFO] [stdout] warning: unused imports: `sync::Arc` and `vec`
[INFO] [stdout]  --> gadgets/src/merkle_tree/mod.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{sync::Arc, vec};
[INFO] [stdout]   |           ^^^^^^^^^  ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> gadgets/src/merkle_tree/mod.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `allocate_statics_for_verifier`
[INFO] [stdout]  --> gadgets/src/poseidon/builder.rs:3:38
[INFO] [stdout]   |
[INFO] [stdout] 3 |         allocate_statics_for_prover, allocate_statics_for_verifier, constants,
[INFO] [stdout]   |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConstraintSystem`, `LinearCombination`, `R1CSError`, `R1CSProof`, `Variable`, and `Verifier`
[INFO] [stdout]   --> gadgets/src/poseidon/builder.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |         ConstraintSystem, LinearCombination, Prover, R1CSError, R1CSProof,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^          ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 11 |         Variable, Verifier,
[INFO] [stdout]    |         ^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BulletproofGens`, `R1CSProof`, and `Variable`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:7:65
[INFO] [stdout]    |
[INFO] [stdout]  7 |         ConstraintSystem, LinearCombination, Prover, R1CSError, R1CSProof,
[INFO] [stdout]    |                                                                 ^^^^^^^^^
[INFO] [stdout]  8 |         Variable, Verifier,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]  9 |     },
[INFO] [stdout] 10 |     BulletproofGens, PedersenGens,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `is_nonzero_gadget`, `is_zero_gadget`, and `scalar::get_scalar_from_hex`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |         scalar::get_scalar_from_hex,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 20 |     },
[INFO] [stdout] 21 |     zero_nonzero::{is_nonzero_gadget, is_zero_gadget},
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashMap` and `mem`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | use std::{collections::HashMap, mem};
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MDS_ENTRIES` and `ROUND_CONSTS`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:27:40
[INFO] [stdout]    |
[INFO] [stdout] 27 | use crate::poseidon::constants::x3_2::{MDS_ENTRIES, ROUND_CONSTS};
[INFO] [stdout]    |                                        ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash::Hash`
[INFO] [stdout]  --> gadgets/src/smt/mod.rs:4:52
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::{borrow::BorrowMut, collections::HashMap, hash::Hash};
[INFO] [stdout]   |                                                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BulletproofGens` and `PedersenGens`
[INFO] [stdout]  --> gadgets/src/utils/r1cs.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     BulletproofGens, PedersenGens,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_scalar_from_hex`
[INFO] [stdout]   --> gadgets/src/lib.rs:22:28
[INFO] [stdout]    |
[INFO] [stdout] 22 |         scalar::{get_bits, get_scalar_from_hex},
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Rng`
[INFO] [stdout]    --> gadgets/src/lib.rs:339:29
[INFO] [stdout]     |
[INFO] [stdout] 339 |     use rand::{rngs::OsRng, Rng};
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde::Serialize`
[INFO] [stdout]    --> gadgets/src/lib.rs:458:9
[INFO] [stdout]     |
[INFO] [stdout] 458 |     use serde::Serialize;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `sync::Arc` and `vec`
[INFO] [stdout]  --> gadgets/src/merkle_tree/mod.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{sync::Arc, vec};
[INFO] [stdout]   |           ^^^^^^^^^  ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> gadgets/src/merkle_tree/mod.rs:6:13
[INFO] [stdout]   |
[INFO] [stdout] 6 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `allocate_statics_for_verifier`
[INFO] [stdout]  --> gadgets/src/poseidon/builder.rs:3:38
[INFO] [stdout]   |
[INFO] [stdout] 3 |         allocate_statics_for_prover, allocate_statics_for_verifier, constants,
[INFO] [stdout]   |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConstraintSystem`, `LinearCombination`, `R1CSError`, `R1CSProof`, `Variable`, and `Verifier`
[INFO] [stdout]   --> gadgets/src/poseidon/builder.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |         ConstraintSystem, LinearCombination, Prover, R1CSError, R1CSProof,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^          ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 11 |         Variable, Verifier,
[INFO] [stdout]    |         ^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BulletproofGens`, `R1CSProof`, and `Variable`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:7:65
[INFO] [stdout]    |
[INFO] [stdout]  7 |         ConstraintSystem, LinearCombination, Prover, R1CSError, R1CSProof,
[INFO] [stdout]    |                                                                 ^^^^^^^^^
[INFO] [stdout]  8 |         Variable, Verifier,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]  9 |     },
[INFO] [stdout] 10 |     BulletproofGens, PedersenGens,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `is_nonzero_gadget`, `is_zero_gadget`, and `scalar::get_scalar_from_hex`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |         scalar::get_scalar_from_hex,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 20 |     },
[INFO] [stdout] 21 |     zero_nonzero::{is_nonzero_gadget, is_zero_gadget},
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashMap` and `mem`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | use std::{collections::HashMap, mem};
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MDS_ENTRIES` and `ROUND_CONSTS`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:27:40
[INFO] [stdout]    |
[INFO] [stdout] 27 | use crate::poseidon::constants::x3_2::{MDS_ENTRIES, ROUND_CONSTS};
[INFO] [stdout]    |                                        ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash::Hash`
[INFO] [stdout]  --> gadgets/src/smt/mod.rs:4:52
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::{borrow::BorrowMut, collections::HashMap, hash::Hash};
[INFO] [stdout]   |                                                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BulletproofGens` and `PedersenGens`
[INFO] [stdout]  --> gadgets/src/utils/r1cs.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     BulletproofGens, PedersenGens,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Poseidon_permutation` and `get_scalar_from_hex`
[INFO] [stdout]   --> gadgets/src/lib.rs:13:50
[INFO] [stdout]    |
[INFO] [stdout] 13 |         Poseidon_hash_4, Poseidon_hash_4_gadget, Poseidon_permutation,
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |         scalar::{get_bits, get_scalar_from_hex},
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Rng`
[INFO] [stdout]    --> gadgets/src/lib.rs:339:29
[INFO] [stdout]     |
[INFO] [stdout] 339 |     use rand::{rngs::OsRng, Rng};
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]  --> gadgets/src/merkle_tree/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use group::ff::Field;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]   --> gadgets/src/poseidon/builder.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use group::ff::Field;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]  --> gadgets/src/poseidon/sbox.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use group::ff::Field;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use group::ff::Field;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]  --> gadgets/src/range/mod.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use group::ff::Field;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]   --> gadgets/src/lib.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | use group::ff::Field;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]  --> gadgets/src/merkle_tree/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use group::ff::Field;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]   --> gadgets/src/poseidon/builder.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use group::ff::Field;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]  --> gadgets/src/poseidon/sbox.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use group::ff::Field;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]   --> gadgets/src/lib.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | use group::ff::Field;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use group::ff::Field;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `group::ff::Field`
[INFO] [stdout]  --> gadgets/src/range/mod.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use group::ff::Field;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total_rounds`
[INFO] [stdout]   --> gadgets/src/lib.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let total_rounds = params.get_total_rounds();
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_rounds`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> gadgets/src/lib.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |     let mut rng: OsRng = OsRng::default();
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rng`
[INFO] [stdout]    --> gadgets/src/lib.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |     let mut rng: OsRng = OsRng::default();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_permutation` should have a snake case name
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn Poseidon_permutation(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_permutation`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_permutation_constraints` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub fn Poseidon_permutation_constraints<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_permutation_constraints`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_permutation_gadget` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:278:8
[INFO] [stdout]     |
[INFO] [stdout] 278 | pub fn Poseidon_permutation_gadget<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_permutation_gadget`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_2` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:311:8
[INFO] [stdout]     |
[INFO] [stdout] 311 | pub fn Poseidon_hash_2(xl: Scalar, xr: Scalar, params: &Poseidon) -> Scalar {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_2_constraints` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:329:8
[INFO] [stdout]     |
[INFO] [stdout] 329 | pub fn Poseidon_hash_2_constraints<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_2_constraints`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_2_gadget` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:356:8
[INFO] [stdout]     |
[INFO] [stdout] 356 | pub fn Poseidon_hash_2_gadget<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_2_gadget`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_4` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:379:8
[INFO] [stdout]     |
[INFO] [stdout] 379 | pub fn Poseidon_hash_4(inputs: [Scalar; 4], params: &Poseidon) -> Scalar {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_4_constraints` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:397:8
[INFO] [stdout]     |
[INFO] [stdout] 397 | pub fn Poseidon_hash_4_constraints<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_4_constraints`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_4_gadget` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:425:8
[INFO] [stdout]     |
[INFO] [stdout] 425 | pub fn Poseidon_hash_4_gadget<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_4_gadget`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total_rounds`
[INFO] [stdout]   --> gadgets/src/lib.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let total_rounds = params.get_total_rounds();
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_rounds`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> gadgets/src/lib.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |     let mut rng: OsRng = OsRng::default();
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rng`
[INFO] [stdout]    --> gadgets/src/lib.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |     let mut rng: OsRng = OsRng::default();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transcript_label`
[INFO] [stdout]    --> gadgets/src/lib.rs:488:9
[INFO] [stdout]     |
[INFO] [stdout] 488 |         transcript_label: &'static [u8],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transcript_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total_rounds`
[INFO] [stdout]    --> gadgets/src/lib.rs:491:13
[INFO] [stdout]     |
[INFO] [stdout] 491 |         let total_rounds = s_params.get_total_rounds();
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_rounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dig`
[INFO] [stdout]    --> gadgets/src/lib.rs:616:13
[INFO] [stdout]     |
[INFO] [stdout] 616 |         let dig = poseidon_hash_4(par.clone(), b"test_label");
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_dig`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_permutation` should have a snake case name
[INFO] [stdout]   --> gadgets/src/poseidon/mod.rs:29:8
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub fn Poseidon_permutation(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_permutation`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_permutation_constraints` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub fn Poseidon_permutation_constraints<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_permutation_constraints`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_permutation_gadget` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:278:8
[INFO] [stdout]     |
[INFO] [stdout] 278 | pub fn Poseidon_permutation_gadget<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_permutation_gadget`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_2` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:311:8
[INFO] [stdout]     |
[INFO] [stdout] 311 | pub fn Poseidon_hash_2(xl: Scalar, xr: Scalar, params: &Poseidon) -> Scalar {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_2_constraints` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:329:8
[INFO] [stdout]     |
[INFO] [stdout] 329 | pub fn Poseidon_hash_2_constraints<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_2_constraints`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_2_gadget` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:356:8
[INFO] [stdout]     |
[INFO] [stdout] 356 | pub fn Poseidon_hash_2_gadget<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_2_gadget`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_4` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:379:8
[INFO] [stdout]     |
[INFO] [stdout] 379 | pub fn Poseidon_hash_4(inputs: [Scalar; 4], params: &Poseidon) -> Scalar {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_4_constraints` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:397:8
[INFO] [stdout]     |
[INFO] [stdout] 397 | pub fn Poseidon_hash_4_constraints<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_4_constraints`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `Poseidon_hash_4_gadget` should have a snake case name
[INFO] [stdout]    --> gadgets/src/poseidon/mod.rs:425:8
[INFO] [stdout]     |
[INFO] [stdout] 425 | pub fn Poseidon_hash_4_gadget<'a, CS: ConstraintSystem>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_4_gadget`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stdout]    --> bulletproofs/tests/r1cs.rs:259:10
[INFO] [stdout]     |
[INFO] [stdout] 259 |         .into_iter()
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 259 -         .into_iter()
[INFO] [stdout] 259 +         .iter()
[INFO] [stdout]     |
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 258 -     let (commitments, vars): (Vec<_>, Vec<_>) = [a1, a2, b1, b2, c1]
[INFO] [stdout] 259 -         .into_iter()
[INFO] [stdout] 258 +     let (commitments, vars): (Vec<_>, Vec<_>) = IntoIterator::into_iter([a1, a2, b1, b2, c1])
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `curve25519_dalek::Scalar::from_bits`: This constructor outputs scalars with undefined scalar-scalar arithmetic. See docs.
[INFO] [stdout]    --> bulletproofs/src/util.rs:312:25
[INFO] [stdout]     |
[INFO] [stdout] 312 |         let x = Scalar::from_bits(
[INFO] [stdout]     |                         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> bulletproofs/src/range_proof/party.rs:108:17
[INFO] [stdout]     |
[INFO] [stdout] 108 |             let mut point = -H_i;
[INFO] [stdout]     |                 ----^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling pbcwa v0.1.0 (/opt/rustwide/workdir/pbcwa)
[INFO] [stdout] warning: unused import: `attribute_tree::AttributeTree`
[INFO] [stdout]   --> pbcwa/src/credential.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         attribute_tree::AttributeTree,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AttributeTree`, `Attribute`, and `AuthenticationToken`
[INFO] [stdout]   --> pbcwa/src/issuer.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         AuthenticationToken, BlindTransformUserMessage1,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |         attribute_tree::{Attribute, AttributeTree},
[INFO] [stdout]    |                          ^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> pbcwa/src/issuer.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 80 |         if (tag == Scalar::ZERO || tag == self.secret) {
[INFO] [stdout]    |            ^                                         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 80 -         if (tag == Scalar::ZERO || tag == self.secret) {
[INFO] [stdout] 80 +         if tag == Scalar::ZERO || tag == self.secret  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bulletproofs::r1cs::R1CSError`
[INFO] [stdout]  --> pbcwa/src/utils/nizk_dleq.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bulletproofs::r1cs::R1CSError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bincode::de`
[INFO] [stdout]  --> pbcwa/src/utils/bulletproofs.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bincode::de;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `constrain_lc_with_scalar` and `self`
[INFO] [stdout]   --> pbcwa/src/utils/bulletproofs.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |         self, Poseidon_hash_2_constraints, allocate_statics_for_prover,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |         r1cs::{AllocatedQuantity, AllocatedScalar, constrain_lc_with_scalar},
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MerkleTree16x4Path` and `MerkleTree16x4`
[INFO] [stdout]  --> pbcwa/src/utils/attribute_tree.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 |     merkle_tree::{MerkleTree16x4, MerkleTree16x4Path},
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `attribute_tree::AttributeTree`
[INFO] [stdout]   --> pbcwa/src/credential.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         attribute_tree::AttributeTree,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AttributeTree`, `Attribute`, and `AuthenticationToken`
[INFO] [stdout]   --> pbcwa/src/issuer.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         AuthenticationToken, BlindTransformUserMessage1,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |         attribute_tree::{Attribute, AttributeTree},
[INFO] [stdout]    |                          ^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> pbcwa/src/issuer.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 80 |         if (tag == Scalar::ZERO || tag == self.secret) {
[INFO] [stdout]    |            ^                                         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 80 -         if (tag == Scalar::ZERO || tag == self.secret) {
[INFO] [stdout] 80 +         if tag == Scalar::ZERO || tag == self.secret  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bulletproofs::r1cs::R1CSError`
[INFO] [stdout]  --> pbcwa/src/utils/nizk_dleq.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bulletproofs::r1cs::R1CSError;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bincode::de`
[INFO] [stdout]  --> pbcwa/src/utils/bulletproofs.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bincode::de;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `constrain_lc_with_scalar` and `self`
[INFO] [stdout]   --> pbcwa/src/utils/bulletproofs.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |         self, Poseidon_hash_2_constraints, allocate_statics_for_prover,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |         r1cs::{AllocatedQuantity, AllocatedScalar, constrain_lc_with_scalar},
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MerkleTree16x4Path` and `MerkleTree16x4`
[INFO] [stdout]  --> pbcwa/src/utils/attribute_tree.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 |     merkle_tree::{MerkleTree16x4, MerkleTree16x4Path},
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `params`
[INFO] [stdout]   --> pbcwa/src/credential.rs:99:9
[INFO] [stdout]    |
[INFO] [stdout] 99 |         params: Parameters,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_params`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attributes`
[INFO] [stdout]    --> pbcwa/src/credential.rs:394:9
[INFO] [stdout]     |
[INFO] [stdout] 394 |         attributes: Vec<Scalar>,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attributes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `policy`
[INFO] [stdout]    --> pbcwa/src/credential.rs:395:9
[INFO] [stdout]     |
[INFO] [stdout] 395 |         policy: String,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_policy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `secret`
[INFO] [stdout]    --> pbcwa/src/credential.rs:402:9
[INFO] [stdout]     |
[INFO] [stdout] 402 |         secret: &EphemeralSecret,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pub_token`
[INFO] [stdout]    --> pbcwa/src/credential.rs:403:9
[INFO] [stdout]     |
[INFO] [stdout] 403 |         pub_token: &PublicVerifiableToken,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pub_token`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `params`
[INFO] [stdout]   --> pbcwa/src/credential.rs:99:9
[INFO] [stdout]    |
[INFO] [stdout] 99 |         params: Parameters,
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_params`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attributes`
[INFO] [stdout]    --> pbcwa/src/credential.rs:394:9
[INFO] [stdout]     |
[INFO] [stdout] 394 |         attributes: Vec<Scalar>,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attributes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `policy`
[INFO] [stdout]    --> pbcwa/src/credential.rs:395:9
[INFO] [stdout]     |
[INFO] [stdout] 395 |         policy: String,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_policy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `secret`
[INFO] [stdout]    --> pbcwa/src/credential.rs:402:9
[INFO] [stdout]     |
[INFO] [stdout] 402 |         secret: &EphemeralSecret,
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pub_token`
[INFO] [stdout]    --> pbcwa/src/credential.rs:403:9
[INFO] [stdout]     |
[INFO] [stdout] 403 |         pub_token: &PublicVerifiableToken,
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pub_token`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> pbcwa/src/utils/bulletproofs.rs:259:9
[INFO] [stdout]     |
[INFO] [stdout] 259 |     let mut merkle_proof_vec = Vec::<Scalar>::new();
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> pbcwa/src/utils/bulletproofs.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut merkle_proof_vec = Vec::<Scalar>::new();
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `T` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub T: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub proof_V: PublicVerifiableToken,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_P` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub proof_P: R1CSProof,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case: `proof_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `T` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |     pub T: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `T` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub T: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub proof_V: DleqProof,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub proof_G: DlogProof,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case: `proof_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub proof_V: PublicVerifiableTokenExt,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_P` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub proof_P: R1CSProof,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case: `proof_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `T` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub T: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:91:9
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:156:13
[INFO] [stdout]     |
[INFO] [stdout] 156 |         let T = a * decrypted_cred;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `U` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 |         let U = a * params.G;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_V` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let _V = state.beta.invert() * message.V;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case (notice the capitalization): `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_T` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let _T = state.T;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_R1` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 |         let _R1 = epsilon.invert() * message.R1 + rho * params.G;
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `_r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_R2` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:206:13
[INFO] [stdout]     |
[INFO] [stdout] 206 |         let _R2 = (epsilon.invert() * state.beta.invert()) * message.R2
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `_r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:271:13
[INFO] [stdout]     |
[INFO] [stdout] 271 |         let T = a * decrypted_cred;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `U` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:272:13
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let U = a * params.G;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `G` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let G = gamma * params.G;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_V` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:316:13
[INFO] [stdout]     |
[INFO] [stdout] 316 |         let _V = state.beta.invert() * message.V;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case (notice the capitalization): `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_T` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:317:13
[INFO] [stdout]     |
[INFO] [stdout] 317 |         let _T = state.T;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_R1` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:323:13
[INFO] [stdout]     |
[INFO] [stdout] 323 |         let _R1 = epsilon.invert() * message.R1 + rho * params.G;
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `_r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_R2` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:324:13
[INFO] [stdout]     |
[INFO] [stdout] 324 |         let _R2 = (epsilon.invert() * state.beta.invert()) * message.R2
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `_r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `proof_V` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:366:13
[INFO] [stdout]     |
[INFO] [stdout] 366 |         let proof_V = nizk_dleq::DleqProof { c: state.c, s };
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `stmt_G` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:369:13
[INFO] [stdout]     |
[INFO] [stdout] 369 |         let stmt_G = nizk_dlog::DlogStatement {
[INFO] [stdout]     |             ^^^^^^ help: convert the identifier to snake case: `stmt_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `proof_G` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:378:13
[INFO] [stdout]     |
[INFO] [stdout] 378 |         let proof_G =
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case: `proof_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> pbcwa/src/utils/bulletproofs.rs:259:9
[INFO] [stdout]     |
[INFO] [stdout] 259 |     let mut merkle_proof_vec = Vec::<Scalar>::new();
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `CRH` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub CRH: Poseidon,
[INFO] [stdout]    |         ^^^ help: convert the identifier to snake case: `crh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> pbcwa/src/utils/bulletproofs.rs:447:9
[INFO] [stdout]     |
[INFO] [stdout] 447 |     let mut merkle_proof_vec = Vec::<Scalar>::new();
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub R1: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `T` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub T: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub R2: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub proof_V: PublicVerifiableToken,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_P` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub proof_P: R1CSProof,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case: `proof_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `T` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |     pub T: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `T` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub T: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub proof_V: DleqProof,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub proof_G: DlogProof,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case: `proof_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub proof_V: PublicVerifiableTokenExt,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `proof_P` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |     pub proof_P: R1CSProof,
[INFO] [stdout]    |         ^^^^^^^ help: convert the identifier to snake case: `proof_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `T` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |     pub T: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/credential.rs:91:9
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:156:13
[INFO] [stdout]     |
[INFO] [stdout] 156 |         let T = a * decrypted_cred;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `U` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 |         let U = a * params.G;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_V` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let _V = state.beta.invert() * message.V;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case (notice the capitalization): `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_T` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let _T = state.T;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_R1` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 |         let _R1 = epsilon.invert() * message.R1 + rho * params.G;
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `_r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_R2` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:206:13
[INFO] [stdout]     |
[INFO] [stdout] 206 |         let _R2 = (epsilon.invert() * state.beta.invert()) * message.R2
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `_r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:271:13
[INFO] [stdout]     |
[INFO] [stdout] 271 |         let T = a * decrypted_cred;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `U` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:272:13
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let U = a * params.G;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `G` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let G = gamma * params.G;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_V` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:316:13
[INFO] [stdout]     |
[INFO] [stdout] 316 |         let _V = state.beta.invert() * message.V;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case (notice the capitalization): `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_T` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:317:13
[INFO] [stdout]     |
[INFO] [stdout] 317 |         let _T = state.T;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_R1` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:323:13
[INFO] [stdout]     |
[INFO] [stdout] 323 |         let _R1 = epsilon.invert() * message.R1 + rho * params.G;
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `_r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `_R2` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:324:13
[INFO] [stdout]     |
[INFO] [stdout] 324 |         let _R2 = (epsilon.invert() * state.beta.invert()) * message.R2
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `_r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `proof_V` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:366:13
[INFO] [stdout]     |
[INFO] [stdout] 366 |         let proof_V = nizk_dleq::DleqProof { c: state.c, s };
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `stmt_G` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:369:13
[INFO] [stdout]     |
[INFO] [stdout] 369 |         let stmt_G = nizk_dlog::DlogStatement {
[INFO] [stdout]     |             ^^^^^^ help: convert the identifier to snake case: `stmt_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `proof_G` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/credential.rs:378:13
[INFO] [stdout]     |
[INFO] [stdout] 378 |         let proof_G =
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case: `proof_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `CRH` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub CRH: Poseidon,
[INFO] [stdout]    |         ^^^ help: convert the identifier to snake case: `crh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub R1: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |     pub R2: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `V` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub V: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let G = RistrettoPoint::random(&mut rng);
[INFO] [stdout]    |             ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let G = RistrettoPoint::random(&mut rng);
[INFO] [stdout]    |             ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `CRH` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let CRH = get_poseison_parameters(Some(PoseidonSbox::Exponentiation17));
[INFO] [stdout]    |             ^^^ help: convert the identifier to snake case: `crh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `CRH` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/issuer.rs:60:13
[INFO] [stdout]    |
[INFO] [stdout] 60 |         let CRH = get_poseison_parameters(Some(PoseidonSbox::Exponentiation17));
[INFO] [stdout]    |             ^^^ help: convert the identifier to snake case: `crh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `U` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/issuer.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let U = (self.secret + message.token.tag) * message.token.rand_cred;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `U` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/issuer.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |         let U = (self.secret + message.token.tag) * message.token.rand_cred;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/issuer.rs:127:13
[INFO] [stdout]     |
[INFO] [stdout] 127 |         let R1 = r * self.params.G;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/issuer.rs:127:13
[INFO] [stdout]     |
[INFO] [stdout] 127 |         let R1 = r * self.params.G;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/issuer.rs:128:13
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let R2 = r * message.token.rand_cred;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/issuer.rs:128:13
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let R2 = r * message.token.rand_cred;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `V` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/issuer.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let V = self.secret * message.token.rand_cred;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `V` should have a snake case name
[INFO] [stdout]    --> pbcwa/src/issuer.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let V = self.secret * message.token.rand_cred;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dlog.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dlog.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `X` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dlog.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub X: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `X` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dlog.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub X: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dlog.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let R = r * stmt.G;
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dlog.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let R = proof.s * stmt.G - proof.c * stmt.X;
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dlog.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let R = r * stmt.G;
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dlog.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let R = proof.s * stmt.G - proof.c * stmt.X;
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `X` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub X: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `A` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub A: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `X` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub X: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `B` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub B: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `A` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub A: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let R1 = r * stmt.G;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let R2 = r * stmt.A;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `B` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub B: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let R1 = r * stmt.G;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     let R1 = proof.s * stmt.G - proof.c * stmt.X;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let R2 = r * stmt.A;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     let R2 = proof.s * stmt.A - proof.c * stmt.B;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub C1: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case (notice the capitalization): `c1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     let R1 = proof.s * stmt.G - proof.c * stmt.X;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_dleq.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     let R2 = proof.s * stmt.A - proof.c * stmt.B;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub G1: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `g1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub C1: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case (notice the capitalization): `c1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub G2: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `g2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub G1: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `g1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub C2: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case (notice the capitalization): `c2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub G2: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `g2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `H1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub H1: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `h1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `C2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub C2: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case (notice the capitalization): `c2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `H2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub H2: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `h2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `H1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub H1: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `h1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let R1 = r1 * stmt.H1 + r2 * stmt.H2;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `H2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub H2: RistrettoPoint,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `h2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let R2 = (-r1) * stmt.G1 + r2 * stmt.G2;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let R1 = proof.s1 * stmt.H1 + proof.s2 * stmt.H2 - proof.c * stmt.C2;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     let R1 = r1 * stmt.H1 + r2 * stmt.H2;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let R2 = (-r1) * stmt.G1 + r2 * stmt.G2;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |     let R2 = (-proof.s1) * stmt.G1 + proof.s3 * stmt.G2 - proof.c * stmt.C1;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let R1 = proof.s1 * stmt.H1 + proof.s2 * stmt.H2 - proof.c * stmt.C2;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `X` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub X: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_commit.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |     let R2 = (-proof.s1) * stmt.G1 + proof.s3 * stmt.G2 - proof.c * stmt.C1;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `A` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub A: RistrettoPoint, // issued credential
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `G` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub G: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let R1 = r * stmt.G;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `X` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub X: RistrettoPoint,
[INFO] [stdout]    |         ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let R2 = r * stmt.A;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let R1 = proof.s * stmt.G - proof.c * stmt.X;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `A` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub A: RistrettoPoint, // issued credential
[INFO] [stdout]    |         ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     let R2 = (proof.s + proof.c * stmt.m) * stmt.A - proof.c * stmt.A;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let R1 = r * stmt.G;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let R2 = r * stmt.A;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R1` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let R1 = proof.s * stmt.G - proof.c * stmt.X;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R2` should have a snake case name
[INFO] [stdout]   --> pbcwa/src/utils/nizk_cred.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     let R2 = (proof.s + proof.c * stmt.m) * stmt.A - proof.c * stmt.A;
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling demo v0.1.0 (/opt/rustwide/workdir/demo)
[INFO] [stdout] warning: unused variable: `sec`
[INFO] [stdout]    --> demo/src/main.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 |     let (sec, token) = encrypted_cred
[INFO] [stdout]     |          ^^^ help: if this is intentional, prefix it with an underscore: `_sec`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commitment`
[INFO] [stdout]    --> demo/src/main.rs:264:9
[INFO] [stdout]     |
[INFO] [stdout] 264 |     let commitment = pc_gens.commit(message, random_scalar);
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commitment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> demo/src/main.rs:321:9
[INFO] [stdout]     |
[INFO] [stdout] 321 |     let mut prover = Prover::new(&pc_gens, &mut prover_transcript);
[INFO] [stdout]     |         ----^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> demo/src/main.rs:336:9
[INFO] [stdout]     |
[INFO] [stdout] 336 |     let mut verifier = Verifier::new(&mut verifier_transcript);
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> demo/src/main.rs:409:9
[INFO] [stdout]     |
[INFO] [stdout] 409 |     let mut verifier = Verifier::new(&mut verifier_transcript);
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `H1` should have a snake case name
[INFO] [stdout]    --> demo/src/main.rs:271:9
[INFO] [stdout]     |
[INFO] [stdout] 271 |     let H1 = pc_gens.B;
[INFO] [stdout]     |         ^^ help: convert the identifier to snake case: `h1`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `H2` should have a snake case name
[INFO] [stdout]    --> demo/src/main.rs:272:9
[INFO] [stdout]     |
[INFO] [stdout] 272 |     let H2 = pc_gens.B_blinding;
[INFO] [stdout]     |         ^^ help: convert the identifier to snake case: `h2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `CC` should have a snake case name
[INFO] [stdout]    --> demo/src/main.rs:274:9
[INFO] [stdout]     |
[INFO] [stdout] 274 |     let CC = random_scalar * H2 + message * H1;
[INFO] [stdout]     |         ^^ help: convert the identifier to snake case (notice the capitalization): `cc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 30.17s
[INFO] running `Command { std: "docker" "inspect" "d7c3b8b3df3846dc5d5feca69c28d9122ea69f3e195cbc68582d41a234e04d00", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d7c3b8b3df3846dc5d5feca69c28d9122ea69f3e195cbc68582d41a234e04d00", kill_on_drop: false }`
[INFO] [stdout] d7c3b8b3df3846dc5d5feca69c28d9122ea69f3e195cbc68582d41a234e04d00
[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=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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+db823df02fd0c2cf67b43025ac3fef3f2d743245" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] ee7647e2852cfd883e833c947786ff023eff9e0e26f3f0ad8afa6c792f6b0f5a
[INFO] running `Command { std: "docker" "start" "-a" "ee7647e2852cfd883e833c947786ff023eff9e0e26f3f0ad8afa6c792f6b0f5a", kill_on_drop: false }`
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> bulletproofs/src/range_proof/party.rs:108:17
[INFO] [stderr]     |
[INFO] [stderr] 108 |             let mut point = -H_i;
[INFO] [stderr]     |                 ----^^^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `to_bytes` is never used
[INFO] [stderr]    --> bulletproofs/src/inner_product_proof.rs:341:12
[INFO] [stderr]     |
[INFO] [stderr]  26 | impl InnerProductProof {
[INFO] [stderr]     | ---------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 341 |     pub fn to_bytes(&self) -> Vec<u8> {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `bulletproofs` (lib) generated 2 warnings (run `cargo fix --lib -p bulletproofs` to apply 1 suggestion)
[INFO] [stderr] warning: unused imports: `sync::Arc` and `vec`
[INFO] [stderr]  --> gadgets/src/merkle_tree/mod.rs:1:11
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{sync::Arc, vec};
[INFO] [stderr]   |           ^^^^^^^^^  ^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stderr]  --> gadgets/src/merkle_tree/mod.rs:6:13
[INFO] [stderr]   |
[INFO] [stderr] 6 | use serde::{Deserialize, Serialize};
[INFO] [stderr]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `allocate_statics_for_verifier`
[INFO] [stderr]  --> gadgets/src/poseidon/builder.rs:3:38
[INFO] [stderr]   |
[INFO] [stderr] 3 |         allocate_statics_for_prover, allocate_statics_for_verifier, constants,
[INFO] [stderr]   |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ConstraintSystem`, `LinearCombination`, `R1CSError`, `R1CSProof`, `Variable`, and `Verifier`
[INFO] [stderr]   --> gadgets/src/poseidon/builder.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 |         ConstraintSystem, LinearCombination, Prover, R1CSError, R1CSProof,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^          ^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 11 |         Variable, Verifier,
[INFO] [stderr]    |         ^^^^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BulletproofGens`, `R1CSProof`, and `Variable`
[INFO] [stderr]   --> gadgets/src/poseidon/mod.rs:7:65
[INFO] [stderr]    |
[INFO] [stderr]  7 |         ConstraintSystem, LinearCombination, Prover, R1CSError, R1CSProof,
[INFO] [stderr]    |                                                                 ^^^^^^^^^
[INFO] [stderr]  8 |         Variable, Verifier,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]  9 |     },
[INFO] [stderr] 10 |     BulletproofGens, PedersenGens,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `is_nonzero_gadget`, `is_zero_gadget`, and `scalar::get_scalar_from_hex`
[INFO] [stderr]   --> gadgets/src/poseidon/mod.rs:19:9
[INFO] [stderr]    |
[INFO] [stderr] 19 |         scalar::get_scalar_from_hex,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 20 |     },
[INFO] [stderr] 21 |     zero_nonzero::{is_nonzero_gadget, is_zero_gadget},
[INFO] [stderr]    |                    ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `collections::HashMap` and `mem`
[INFO] [stderr]   --> gadgets/src/poseidon/mod.rs:25:11
[INFO] [stderr]    |
[INFO] [stderr] 25 | use std::{collections::HashMap, mem};
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `MDS_ENTRIES` and `ROUND_CONSTS`
[INFO] [stderr]   --> gadgets/src/poseidon/mod.rs:27:40
[INFO] [stderr]    |
[INFO] [stderr] 27 | use crate::poseidon::constants::x3_2::{MDS_ENTRIES, ROUND_CONSTS};
[INFO] [stderr]    |                                        ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `hash::Hash`
[INFO] [stderr]  --> gadgets/src/smt/mod.rs:4:52
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::{borrow::BorrowMut, collections::HashMap, hash::Hash};
[INFO] [stderr]   |                                                    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BulletproofGens` and `PedersenGens`
[INFO] [stderr]  --> gadgets/src/utils/r1cs.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 |     BulletproofGens, PedersenGens,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Poseidon_permutation` and `get_scalar_from_hex`
[INFO] [stderr]   --> gadgets/src/lib.rs:13:50
[INFO] [stderr]    |
[INFO] [stderr] 13 |         Poseidon_hash_4, Poseidon_hash_4_gadget, Poseidon_permutation,
[INFO] [stderr]    |                                                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 22 |         scalar::{get_bits, get_scalar_from_hex},
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Rng`
[INFO] [stderr]    --> gadgets/src/lib.rs:339:29
[INFO] [stderr]     |
[INFO] [stderr] 339 |     use rand::{rngs::OsRng, Rng};
[INFO] [stderr]     |                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `group::ff::Field`
[INFO] [stderr]  --> gadgets/src/merkle_tree/mod.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use group::ff::Field;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `group::ff::Field`
[INFO] [stderr]   --> gadgets/src/poseidon/builder.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 | use group::ff::Field;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `group::ff::Field`
[INFO] [stderr]  --> gadgets/src/poseidon/sbox.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use group::ff::Field;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `group::ff::Field`
[INFO] [stderr]   --> gadgets/src/poseidon/mod.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use group::ff::Field;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `group::ff::Field`
[INFO] [stderr]  --> gadgets/src/range/mod.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use group::ff::Field;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `group::ff::Field`
[INFO] [stderr]   --> gadgets/src/lib.rs:30:5
[INFO] [stderr]    |
[INFO] [stderr] 30 | use group::ff::Field;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `total_rounds`
[INFO] [stderr]   --> gadgets/src/lib.rs:48:9
[INFO] [stderr]    |
[INFO] [stderr] 48 |     let total_rounds = params.get_total_rounds();
[INFO] [stderr]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_rounds`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> gadgets/src/lib.rs:341:9
[INFO] [stderr]     |
[INFO] [stderr] 341 |     let mut rng: OsRng = OsRng::default();
[INFO] [stderr]     |         ----^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `rng`
[INFO] [stderr]    --> gadgets/src/lib.rs:341:9
[INFO] [stderr]     |
[INFO] [stderr] 341 |     let mut rng: OsRng = OsRng::default();
[INFO] [stderr]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stderr] 
[INFO] [stderr] warning: function `Poseidon_permutation` should have a snake case name
[INFO] [stderr]   --> gadgets/src/poseidon/mod.rs:29:8
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub fn Poseidon_permutation(
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_permutation`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `Poseidon_permutation_constraints` should have a snake case name
[INFO] [stderr]    --> gadgets/src/poseidon/mod.rs:126:8
[INFO] [stderr]     |
[INFO] [stderr] 126 | pub fn Poseidon_permutation_constraints<'a, CS: ConstraintSystem>(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_permutation_constraints`
[INFO] [stderr] 
[INFO] [stderr] warning: function `Poseidon_permutation_gadget` should have a snake case name
[INFO] [stderr]    --> gadgets/src/poseidon/mod.rs:278:8
[INFO] [stderr]     |
[INFO] [stderr] 278 | pub fn Poseidon_permutation_gadget<'a, CS: ConstraintSystem>(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_permutation_gadget`
[INFO] [stderr] 
[INFO] [stderr] warning: function `Poseidon_hash_2` should have a snake case name
[INFO] [stderr]    --> gadgets/src/poseidon/mod.rs:311:8
[INFO] [stderr]     |
[INFO] [stderr] 311 | pub fn Poseidon_hash_2(xl: Scalar, xr: Scalar, params: &Poseidon) -> Scalar {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_2`
[INFO] [stderr] 
[INFO] [stderr] warning: function `Poseidon_hash_2_constraints` should have a snake case name
[INFO] [stderr]    --> gadgets/src/poseidon/mod.rs:329:8
[INFO] [stderr]     |
[INFO] [stderr] 329 | pub fn Poseidon_hash_2_constraints<'a, CS: ConstraintSystem>(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_2_constraints`
[INFO] [stderr] 
[INFO] [stderr] warning: function `Poseidon_hash_2_gadget` should have a snake case name
[INFO] [stderr]    --> gadgets/src/poseidon/mod.rs:356:8
[INFO] [stderr]     |
[INFO] [stderr] 356 | pub fn Poseidon_hash_2_gadget<'a, CS: ConstraintSystem>(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_2_gadget`
[INFO] [stderr] 
[INFO] [stderr] warning: function `Poseidon_hash_4` should have a snake case name
[INFO] [stderr]    --> gadgets/src/poseidon/mod.rs:379:8
[INFO] [stderr]     |
[INFO] [stderr] 379 | pub fn Poseidon_hash_4(inputs: [Scalar; 4], params: &Poseidon) -> Scalar {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_4`
[INFO] [stderr] 
[INFO] [stderr] warning: function `Poseidon_hash_4_constraints` should have a snake case name
[INFO] [stderr]    --> gadgets/src/poseidon/mod.rs:397:8
[INFO] [stderr]     |
[INFO] [stderr] 397 | pub fn Poseidon_hash_4_constraints<'a, CS: ConstraintSystem>(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_4_constraints`
[INFO] [stderr] 
[INFO] [stderr] warning: function `Poseidon_hash_4_gadget` should have a snake case name
[INFO] [stderr]    --> gadgets/src/poseidon/mod.rs:425:8
[INFO] [stderr]     |
[INFO] [stderr] 425 | pub fn Poseidon_hash_4_gadget<'a, CS: ConstraintSystem>(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `poseidon_hash_4_gadget`
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to `<[T; N] as IntoIterator>::into_iter` in Rust 2021
[INFO] [stderr]    --> bulletproofs/tests/r1cs.rs:259:10
[INFO] [stderr]     |
[INFO] [stderr] 259 |         .into_iter()
[INFO] [stderr]     |          ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr]     = note: `#[warn(array_into_iter)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 259 -         .into_iter()
[INFO] [stderr] 259 +         .iter()
[INFO] [stderr]     |
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 258 -     let (commitments, vars): (Vec<_>, Vec<_>) = [a1, a2, b1, b2, c1]
[INFO] [stderr] 259 -         .into_iter()
[INFO] [stderr] 258 +     let (commitments, vars): (Vec<_>, Vec<_>) = IntoIterator::into_iter([a1, a2, b1, b2, c1])
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `get_scalar_from_hex`
[INFO] [stderr]   --> gadgets/src/lib.rs:22:28
[INFO] [stderr]    |
[INFO] [stderr] 22 |         scalar::{get_bits, get_scalar_from_hex},
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde::Serialize`
[INFO] [stderr]    --> gadgets/src/lib.rs:458:9
[INFO] [stderr]     |
[INFO] [stderr] 458 |     use serde::Serialize;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `transcript_label`
[INFO] [stderr]    --> gadgets/src/lib.rs:488:9
[INFO] [stderr]     |
[INFO] [stderr] 488 |         transcript_label: &'static [u8],
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transcript_label`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `total_rounds`
[INFO] [stderr]    --> gadgets/src/lib.rs:491:13
[INFO] [stderr]     |
[INFO] [stderr] 491 |         let total_rounds = s_params.get_total_rounds();
[INFO] [stderr]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_rounds`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `dig`
[INFO] [stderr]    --> gadgets/src/lib.rs:616:13
[INFO] [stderr]     |
[INFO] [stderr] 616 |         let dig = poseidon_hash_4(par.clone(), b"test_label");
[INFO] [stderr]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_dig`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `curve25519_dalek::Scalar::from_bits`: This constructor outputs scalars with undefined scalar-scalar arithmetic. See docs.
[INFO] [stderr]    --> bulletproofs/src/util.rs:312:25
[INFO] [stderr]     |
[INFO] [stderr] 312 |         let x = Scalar::from_bits(
[INFO] [stderr]     |                         ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `gadgets` (lib) generated 30 warnings (run `cargo fix --lib -p gadgets` to apply 15 suggestions)
[INFO] [stderr] warning: `bulletproofs` (test "r1cs") generated 1 warning (run `cargo fix --test "r1cs" -p bulletproofs` to apply 1 suggestion)
[INFO] [stderr] warning: `gadgets` (lib test) generated 34 warnings (29 duplicates) (run `cargo fix --lib -p gadgets --tests` to apply 5 suggestions)
[INFO] [stderr] warning: `bulletproofs` (lib test) generated 2 warnings (1 duplicate)
[INFO] [stderr] warning: unused import: `attribute_tree::AttributeTree`
[INFO] [stderr]   --> pbcwa/src/credential.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 |         attribute_tree::AttributeTree,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AttributeTree`, `Attribute`, and `AuthenticationToken`
[INFO] [stderr]   --> pbcwa/src/issuer.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 |         AuthenticationToken, BlindTransformUserMessage1,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 17 |         attribute_tree::{Attribute, AttributeTree},
[INFO] [stderr]    |                          ^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> pbcwa/src/issuer.rs:80:12
[INFO] [stderr]    |
[INFO] [stderr] 80 |         if (tag == Scalar::ZERO || tag == self.secret) {
[INFO] [stderr]    |            ^                                         ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 80 -         if (tag == Scalar::ZERO || tag == self.secret) {
[INFO] [stderr] 80 +         if tag == Scalar::ZERO || tag == self.secret  {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `bulletproofs::r1cs::R1CSError`
[INFO] [stderr]  --> pbcwa/src/utils/nizk_dleq.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use bulletproofs::r1cs::R1CSError;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `bincode::de`
[INFO] [stderr]  --> pbcwa/src/utils/bulletproofs.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use bincode::de;
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `constrain_lc_with_scalar` and `self`
[INFO] [stderr]   --> pbcwa/src/utils/bulletproofs.rs:14:9
[INFO] [stderr]    |
[INFO] [stderr] 14 |         self, Poseidon_hash_2_constraints, allocate_statics_for_prover,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 19 |         r1cs::{AllocatedQuantity, AllocatedScalar, constrain_lc_with_scalar},
[INFO] [stderr]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `MerkleTree16x4Path` and `MerkleTree16x4`
[INFO] [stderr]  --> pbcwa/src/utils/attribute_tree.rs:3:19
[INFO] [stderr]   |
[INFO] [stderr] 3 |     merkle_tree::{MerkleTree16x4, MerkleTree16x4Path},
[INFO] [stderr]   |                   ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `params`
[INFO] [stderr]   --> pbcwa/src/credential.rs:99:9
[INFO] [stderr]    |
[INFO] [stderr] 99 |         params: Parameters,
[INFO] [stderr]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_params`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `attributes`
[INFO] [stderr]    --> pbcwa/src/credential.rs:394:9
[INFO] [stderr]     |
[INFO] [stderr] 394 |         attributes: Vec<Scalar>,
[INFO] [stderr]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attributes`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `policy`
[INFO] [stderr]    --> pbcwa/src/credential.rs:395:9
[INFO] [stderr]     |
[INFO] [stderr] 395 |         policy: String,
[INFO] [stderr]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_policy`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `secret`
[INFO] [stderr]    --> pbcwa/src/credential.rs:402:9
[INFO] [stderr]     |
[INFO] [stderr] 402 |         secret: &EphemeralSecret,
[INFO] [stderr]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `pub_token`
[INFO] [stderr]    --> pbcwa/src/credential.rs:403:9
[INFO] [stderr]     |
[INFO] [stderr] 403 |         pub_token: &PublicVerifiableToken,
[INFO] [stderr]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pub_token`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> pbcwa/src/utils/bulletproofs.rs:259:9
[INFO] [stderr]     |
[INFO] [stderr] 259 |     let mut merkle_proof_vec = Vec::<Scalar>::new();
[INFO] [stderr]     |         ----^^^^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> pbcwa/src/utils/bulletproofs.rs:447:9
[INFO] [stderr]     |
[INFO] [stderr] 447 |     let mut merkle_proof_vec = Vec::<Scalar>::new();
[INFO] [stderr]     |         ----^^^^^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `T` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:36:9
[INFO] [stderr]    |
[INFO] [stderr] 36 |     pub T: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `V` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:37:9
[INFO] [stderr]    |
[INFO] [stderr] 37 |     pub V: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `proof_V` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:44:9
[INFO] [stderr]    |
[INFO] [stderr] 44 |     pub proof_V: PublicVerifiableToken,
[INFO] [stderr]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `proof_P` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:45:9
[INFO] [stderr]    |
[INFO] [stderr] 45 |     pub proof_P: R1CSProof,
[INFO] [stderr]    |         ^^^^^^^ help: convert the identifier to snake case: `proof_p`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `T` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:65:9
[INFO] [stderr]    |
[INFO] [stderr] 65 |     pub T: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `V` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:66:9
[INFO] [stderr]    |
[INFO] [stderr] 66 |     pub V: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `G` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:70:9
[INFO] [stderr]    |
[INFO] [stderr] 70 |     pub G: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `T` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:71:9
[INFO] [stderr]    |
[INFO] [stderr] 71 |     pub T: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `V` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:72:9
[INFO] [stderr]    |
[INFO] [stderr] 72 |     pub V: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `proof_V` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:73:9
[INFO] [stderr]    |
[INFO] [stderr] 73 |     pub proof_V: DleqProof,
[INFO] [stderr]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `proof_G` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:74:9
[INFO] [stderr]    |
[INFO] [stderr] 74 |     pub proof_G: DlogProof,
[INFO] [stderr]    |         ^^^^^^^ help: convert the identifier to snake case: `proof_g`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `proof_V` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:78:9
[INFO] [stderr]    |
[INFO] [stderr] 78 |     pub proof_V: PublicVerifiableTokenExt,
[INFO] [stderr]    |         ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `proof_P` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:79:9
[INFO] [stderr]    |
[INFO] [stderr] 79 |     pub proof_P: R1CSProof,
[INFO] [stderr]    |         ^^^^^^^ help: convert the identifier to snake case: `proof_p`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `T` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:89:9
[INFO] [stderr]    |
[INFO] [stderr] 89 |     pub T: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `V` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:90:9
[INFO] [stderr]    |
[INFO] [stderr] 90 |     pub V: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `G` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/credential.rs:91:9
[INFO] [stderr]    |
[INFO] [stderr] 91 |     pub G: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:156:13
[INFO] [stderr]     |
[INFO] [stderr] 156 |         let T = a * decrypted_cred;
[INFO] [stderr]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `U` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:157:13
[INFO] [stderr]     |
[INFO] [stderr] 157 |         let U = a * params.G;
[INFO] [stderr]     |             ^ help: convert the identifier to snake case (notice the capitalization): `u`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `_V` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:198:13
[INFO] [stderr]     |
[INFO] [stderr] 198 |         let _V = state.beta.invert() * message.V;
[INFO] [stderr]     |             ^^ help: convert the identifier to snake case (notice the capitalization): `_v`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `_T` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:199:13
[INFO] [stderr]     |
[INFO] [stderr] 199 |         let _T = state.T;
[INFO] [stderr]     |             ^^ help: convert the identifier to snake case: `_t`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `_R1` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:205:13
[INFO] [stderr]     |
[INFO] [stderr] 205 |         let _R1 = epsilon.invert() * message.R1 + rho * params.G;
[INFO] [stderr]     |             ^^^ help: convert the identifier to snake case: `_r1`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `_R2` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:206:13
[INFO] [stderr]     |
[INFO] [stderr] 206 |         let _R2 = (epsilon.invert() * state.beta.invert()) * message.R2
[INFO] [stderr]     |             ^^^ help: convert the identifier to snake case: `_r2`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `T` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:271:13
[INFO] [stderr]     |
[INFO] [stderr] 271 |         let T = a * decrypted_cred;
[INFO] [stderr]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `U` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:272:13
[INFO] [stderr]     |
[INFO] [stderr] 272 |         let U = a * params.G;
[INFO] [stderr]     |             ^ help: convert the identifier to snake case (notice the capitalization): `u`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `G` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:273:13
[INFO] [stderr]     |
[INFO] [stderr] 273 |         let G = gamma * params.G;
[INFO] [stderr]     |             ^ help: convert the identifier to snake case: `g`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `_V` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:316:13
[INFO] [stderr]     |
[INFO] [stderr] 316 |         let _V = state.beta.invert() * message.V;
[INFO] [stderr]     |             ^^ help: convert the identifier to snake case (notice the capitalization): `_v`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `_T` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:317:13
[INFO] [stderr]     |
[INFO] [stderr] 317 |         let _T = state.T;
[INFO] [stderr]     |             ^^ help: convert the identifier to snake case: `_t`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `_R1` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:323:13
[INFO] [stderr]     |
[INFO] [stderr] 323 |         let _R1 = epsilon.invert() * message.R1 + rho * params.G;
[INFO] [stderr]     |             ^^^ help: convert the identifier to snake case: `_r1`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `_R2` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:324:13
[INFO] [stderr]     |
[INFO] [stderr] 324 |         let _R2 = (epsilon.invert() * state.beta.invert()) * message.R2
[INFO] [stderr]     |             ^^^ help: convert the identifier to snake case: `_r2`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `proof_V` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:366:13
[INFO] [stderr]     |
[INFO] [stderr] 366 |         let proof_V = nizk_dleq::DleqProof { c: state.c, s };
[INFO] [stderr]     |             ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `proof_v`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `stmt_G` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:369:13
[INFO] [stderr]     |
[INFO] [stderr] 369 |         let stmt_G = nizk_dlog::DlogStatement {
[INFO] [stderr]     |             ^^^^^^ help: convert the identifier to snake case: `stmt_g`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `proof_G` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/credential.rs:378:13
[INFO] [stderr]     |
[INFO] [stderr] 378 |         let proof_G =
[INFO] [stderr]     |             ^^^^^^^ help: convert the identifier to snake case: `proof_g`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `G` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/issuer.rs:27:9
[INFO] [stderr]    |
[INFO] [stderr] 27 |     pub G: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `CRH` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/issuer.rs:28:9
[INFO] [stderr]    |
[INFO] [stderr] 28 |     pub CRH: Poseidon,
[INFO] [stderr]    |         ^^^ help: convert the identifier to snake case: `crh`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `R1` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/issuer.rs:42:9
[INFO] [stderr]    |
[INFO] [stderr] 42 |     pub R1: RistrettoPoint,
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `R2` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/issuer.rs:43:9
[INFO] [stderr]    |
[INFO] [stderr] 43 |     pub R2: RistrettoPoint,
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `V` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/issuer.rs:44:9
[INFO] [stderr]    |
[INFO] [stderr] 44 |     pub V: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `G` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/issuer.rs:59:13
[INFO] [stderr]    |
[INFO] [stderr] 59 |         let G = RistrettoPoint::random(&mut rng);
[INFO] [stderr]    |             ^ help: convert the identifier to snake case: `g`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `CRH` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/issuer.rs:60:13
[INFO] [stderr]    |
[INFO] [stderr] 60 |         let CRH = get_poseison_parameters(Some(PoseidonSbox::Exponentiation17));
[INFO] [stderr]    |             ^^^ help: convert the identifier to snake case: `crh`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `U` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/issuer.rs:100:13
[INFO] [stderr]     |
[INFO] [stderr] 100 |         let U = (self.secret + message.token.tag) * message.token.rand_cred;
[INFO] [stderr]     |             ^ help: convert the identifier to snake case (notice the capitalization): `u`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R1` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/issuer.rs:127:13
[INFO] [stderr]     |
[INFO] [stderr] 127 |         let R1 = r * self.params.G;
[INFO] [stderr]     |             ^^ help: convert the identifier to snake case: `r1`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R2` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/issuer.rs:128:13
[INFO] [stderr]     |
[INFO] [stderr] 128 |         let R2 = r * message.token.rand_cred;
[INFO] [stderr]     |             ^^ help: convert the identifier to snake case: `r2`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `V` should have a snake case name
[INFO] [stderr]    --> pbcwa/src/issuer.rs:129:13
[INFO] [stderr]     |
[INFO] [stderr] 129 |         let V = self.secret * message.token.rand_cred;
[INFO] [stderr]     |             ^ help: convert the identifier to snake case (notice the capitalization): `v`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `G` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_dlog.rs:10:9
[INFO] [stderr]    |
[INFO] [stderr] 10 |     pub G: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `X` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_dlog.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 |     pub X: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_dlog.rs:30:9
[INFO] [stderr]    |
[INFO] [stderr] 30 |     let R = r * stmt.G;
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `r`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_dlog.rs:51:9
[INFO] [stderr]    |
[INFO] [stderr] 51 |     let R = proof.s * stmt.G - proof.c * stmt.X;
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `r`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `G` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_dleq.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 12 |     pub G: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `X` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_dleq.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 |     pub X: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `A` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_dleq.rs:14:9
[INFO] [stderr]    |
[INFO] [stderr] 14 |     pub A: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `a`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `B` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_dleq.rs:15:9
[INFO] [stderr]    |
[INFO] [stderr] 15 |     pub B: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `b`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R1` should have a snake case name
[INFO] [stdout] 
[INFO] [stderr]   --> pbcwa/src/utils/nizk_dleq.rs:35:9
[INFO] [stdout] running 30 tests
[INFO] [stderr]    |
[INFO] [stderr] 35 |     let R1 = r * stmt.G;
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R2` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_dleq.rs:36:9
[INFO] [stderr]    |
[INFO] [stderr] 36 |     let R2 = r * stmt.A;
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R1` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_dleq.rs:62:9
[INFO] [stderr]    |
[INFO] [stderr] 62 |     let R1 = proof.s * stmt.G - proof.c * stmt.X;
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R2` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_dleq.rs:63:9
[INFO] [stderr]    |
[INFO] [stderr] 63 |     let R2 = proof.s * stmt.A - proof.c * stmt.B;
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `C1` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_commit.rs:15:9
[INFO] [stderr]    |
[INFO] [stderr] 15 |     pub C1: RistrettoPoint,
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case (notice the capitalization): `c1`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `G1` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_commit.rs:16:9
[INFO] [stderr]    |
[INFO] [stderr] 16 |     pub G1: RistrettoPoint,
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `g1`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `G2` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_commit.rs:17:9
[INFO] [stderr]    |
[INFO] [stderr] 17 |     pub G2: RistrettoPoint,
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `g2`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `C2` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_commit.rs:18:9
[INFO] [stderr]    |
[INFO] [stderr] 18 |     pub C2: RistrettoPoint,
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case (notice the capitalization): `c2`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `H1` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_commit.rs:19:9
[INFO] [stderr]    |
[INFO] [stderr] 19 |     pub H1: RistrettoPoint,
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `h1`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `H2` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_commit.rs:20:9
[INFO] [stderr]    |
[INFO] [stderr] 20 |     pub H2: RistrettoPoint,
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `h2`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R1` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_commit.rs:47:9
[INFO] [stderr]    |
[INFO] [stderr] 47 |     let R1 = r1 * stmt.H1 + r2 * stmt.H2;
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R2` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_commit.rs:48:9
[INFO] [stderr]    |
[INFO] [stderr] 48 |     let R2 = (-r1) * stmt.G1 + r2 * stmt.G2;
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R1` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_commit.rs:78:9
[INFO] [stderr]    |
[INFO] [stderr] 78 |     let R1 = proof.s1 * stmt.H1 + proof.s2 * stmt.H2 - proof.c * stmt.C2;
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R2` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_commit.rs:79:9
[INFO] [stderr]    |
[INFO] [stderr] 79 |     let R2 = (-proof.s1) * stmt.G1 + proof.s3 * stmt.G2 - proof.c * stmt.C1;
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `G` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_cred.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 |     pub G: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `g`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `X` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_cred.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 12 |     pub X: RistrettoPoint,
[INFO] [stderr]    |         ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `A` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_cred.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 |     pub A: RistrettoPoint, // issued credential
[INFO] [stderr]    |         ^ help: convert the identifier to snake case: `a`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R1` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_cred.rs:34:9
[INFO] [stderr]    |
[INFO] [stderr] 34 |     let R1 = r * stmt.G;
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R2` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_cred.rs:35:9
[INFO] [stderr]    |
[INFO] [stderr] 35 |     let R2 = r * stmt.A;
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R1` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_cred.rs:61:9
[INFO] [stderr]    |
[INFO] [stderr] 61 |     let R1 = proof.s * stmt.G - proof.c * stmt.X;
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `r1`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `R2` should have a snake case name
[INFO] [stderr]   --> pbcwa/src/utils/nizk_cred.rs:62:9
[INFO] [stderr]    |
[INFO] [stderr] 62 |     let R2 = (proof.s + proof.c * stmt.m) * stmt.A - proof.c * stmt.A;
[INFO] [stderr]    |         ^^ help: convert the identifier to snake case: `r2`
[INFO] [stderr] 
[INFO] [stderr] warning: `pbcwa` (lib) generated 86 warnings (run `cargo fix --lib -p pbcwa` to apply 14 suggestions)
[INFO] [stderr] warning: `pbcwa` (lib test) generated 86 warnings (86 duplicates)
[INFO] [stderr] warning: unused variable: `sec`
[INFO] [stderr]    --> demo/src/main.rs:191:10
[INFO] [stderr]     |
[INFO] [stderr] 191 |     let (sec, token) = encrypted_cred
[INFO] [stderr]     |          ^^^ help: if this is intentional, prefix it with an underscore: `_sec`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `commitment`
[INFO] [stderr]    --> demo/src/main.rs:264:9
[INFO] [stderr]     |
[INFO] [stderr] 264 |     let commitment = pc_gens.commit(message, random_scalar);
[INFO] [stderr]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commitment`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> demo/src/main.rs:321:9
[INFO] [stderr]     |
[INFO] [stderr] 321 |     let mut prover = Prover::new(&pc_gens, &mut prover_transcript);
[INFO] [stderr]     |         ----^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> demo/src/main.rs:336:9
[INFO] [stderr]     |
[INFO] [stderr] 336 |     let mut verifier = Verifier::new(&mut verifier_transcript);
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> demo/src/main.rs:409:9
[INFO] [stderr]     |
[INFO] [stderr] 409 |     let mut verifier = Verifier::new(&mut verifier_transcript);
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `H1` should have a snake case name
[INFO] [stderr]    --> demo/src/main.rs:271:9
[INFO] [stderr]     |
[INFO] [stderr] 271 |     let H1 = pc_gens.B;
[INFO] [stderr]     |         ^^ help: convert the identifier to snake case: `h1`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `H2` should have a snake case name
[INFO] [stderr]    --> demo/src/main.rs:272:9
[INFO] [stderr]     |
[INFO] [stderr] 272 |     let H2 = pc_gens.B_blinding;
[INFO] [stderr]     |         ^^ help: convert the identifier to snake case: `h2`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `CC` should have a snake case name
[INFO] [stderr]    --> demo/src/main.rs:274:9
[INFO] [stderr]     |
[INFO] [stderr] 274 |     let CC = random_scalar * H2 + message * H1;
[INFO] [stderr]     |         ^^ help: convert the identifier to snake case (notice the capitalization): `cc`
[INFO] [stderr] 
[INFO] [stderr] warning: `demo` (bin "demo" test) generated 8 warnings (run `cargo fix --bin "demo" -p demo --tests` to apply 5 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.18s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/bulletproofs-3eeec1d5f5a06239)
[INFO] [stdout] test inner_product_proof::tests::test_inner_product ... ok
[INFO] [stdout] test inner_product_proof::tests::make_ipp_1 ... ok
[INFO] [stdout] test generators::tests::aggregated_gens_iter_matches_flat_map ... ok
[INFO] [stdout] test inner_product_proof::tests::make_ipp_2 ... ok
[INFO] [stdout] test generators::tests::resizing_small_gens_matches_creating_bigger_gens ... ok
[INFO] [stdout] test linear_proof::tests::test_linear_proof_base ... ok
[INFO] [stdout] test inner_product_proof::tests::make_ipp_4 ... ok
[INFO] [stdout] test range_proof::tests::test_delta ... ok
[INFO] [stdout] test util::tests::exp_2_is_powers_of_2 ... ok
[INFO] [stdout] test util::tests::test_inner_product ... ok
[INFO] [stdout] test util::tests::test_scalar_exp ... ok
[INFO] [stdout] test util::tests::test_sum_of_powers ... ok
[INFO] [stdout] test util::tests::test_sum_of_powers_slow ... ok
[INFO] [stdout] test util::tests::tuple_of_scalars_clear_on_drop ... ok
[INFO] [stdout] test util::tests::vec_of_scalars_clear_on_drop ... ok
[INFO] [stdout] test range_proof::tests::detect_dishonest_dealer_during_aggregation ... ok
[INFO] [stdout] test linear_proof::tests::test_linear_proof_32 ... ok
[INFO] [stdout] test linear_proof::tests::test_linear_proof_16 ... ok
[INFO] [stdout] test range_proof::tests::create_and_verify_n_32_m_1 ... ok
[INFO] [stdout] test inner_product_proof::tests::make_ipp_32 ... ok
[INFO] [stdout] test linear_proof::tests::test_linear_proof_64 ... ok
[INFO] [stdout] test range_proof::tests::create_and_verify_n_32_m_2 ... ok
[INFO] [stdout] test range_proof::tests::create_and_verify_n_64_m_1 ... ok
[INFO] [stdout] test inner_product_proof::tests::make_ipp_64 ... ok
[INFO] [stdout] test range_proof::tests::create_and_verify_n_64_m_2 ... ok
[INFO] [stdout] test range_proof::tests::create_and_verify_n_32_m_4 ... ok
[INFO] [stdout] test range_proof::tests::detect_dishonest_party_during_aggregation ... ok
[INFO] [stdout] test range_proof::tests::create_and_verify_n_64_m_4 ... ok
[INFO] [stdout] test range_proof::tests::create_and_verify_n_32_m_8 ... ok
[INFO] [stdout] test range_proof::tests::create_and_verify_n_64_m_8 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 30 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 36.53s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/r1cs.rs (/opt/rustwide/target/debug/deps/r1cs-eae83fbbb39d7e34)
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test shuffle_gadget_test_1 ... ok
[INFO] [stdout] test shuffle_gadget_test_2 ... ok
[INFO] [stdout] test example_gadget_serialization_test ... FAILED
[INFO] [stdout] test shuffle_gadget_test_3 ... ok
[INFO] [stdout] test shuffle_gadget_test_5 ... ok
[INFO] [stdout] test example_gadget_test ... FAILED
[INFO] [stdout] test shuffle_gadget_test_4 ... ok
[INFO] [stdout] test range_proof_gadget ... FAILED
[INFO] [stdout] test shuffle_gadget_test_6 ... ok
[INFO] [stdout] test shuffle_gadget_test_7 ... ok
[INFO] [stdout] test shuffle_gadget_test_24 ... ok
[INFO] [stdout] test shuffle_gadget_test_42 ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- example_gadget_serialization_test stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'example_gadget_serialization_test' (56) panicked at bulletproofs/src/r1cs/prover.rs:189:3:
[INFO] [stdout] assertion failed: res == Scalar::ZERO
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59c7bd441222 - std[3f03f8b59f91bef1]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59c7bd441222 - std[3f03f8b59f91bef1]::backtrace_rs::backtrace::trace_unsynchronized::<std[3f03f8b59f91bef1]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59c7bd441222 - std[3f03f8b59f91bef1]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59c7bd441222 - <<std[3f03f8b59f91bef1]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[585f66e14d78f9ba]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59c7bd45622a - <core[585f66e14d78f9ba]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59c7bd45622a - core[585f66e14d78f9ba]::fmt::write
[INFO] [stdout]    6:     0x59c7bd4460d6 - std[3f03f8b59f91bef1]::io::default_write_fmt::<alloc[15e7b27aba85d2e2]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x59c7bd4460d6 - <alloc[15e7b27aba85d2e2]::vec::Vec<u8> as std[3f03f8b59f91bef1]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x59c7bd41f9bf - <std[3f03f8b59f91bef1]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59c7bd41f9bf - std[3f03f8b59f91bef1]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59c7bd439559 - std[3f03f8b59f91bef1]::panicking::default_hook
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59c7bd2cbd1e - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn for<'a, 'b> core[585f66e14d78f9ba]::ops::function::Fn<(&'a std[3f03f8b59f91bef1]::panic::PanicHookInfo<'b>,), Output = ()> + core[585f66e14d78f9ba]::marker::Sync + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::Fn<(&std[3f03f8b59f91bef1]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x59c7bd2cbd1e - test[30224e0cb089acd2]::test_main_with_exit_callback::<test[30224e0cb089acd2]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x59c7bd439712 - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn for<'a, 'b> core[585f66e14d78f9ba]::ops::function::Fn<(&'a std[3f03f8b59f91bef1]::panic::PanicHookInfo<'b>,), Output = ()> + core[585f66e14d78f9ba]::marker::Sync + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::Fn<(&std[3f03f8b59f91bef1]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x59c7bd439712 - std[3f03f8b59f91bef1]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x59c7bd41faaa - std[3f03f8b59f91bef1]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x59c7bd414c39 - std[3f03f8b59f91bef1]::sys::backtrace::__rust_end_short_backtrace::<std[3f03f8b59f91bef1]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59c7bd4208cd - __rustc[caa99d26c7bae192]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x59c7bd4568fc - core[585f66e14d78f9ba]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59c7bd4568c2 - core[585f66e14d78f9ba]::panicking::panic
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panicking.rs:150:5
[INFO] [stdout]   20:     0x59c7bd29e090 - <bulletproofs[ec32c7d97faaa0cb]::r1cs::prover::Prover<&mut merlin[13bd8766d928413c]::transcript::Transcript> as bulletproofs[ec32c7d97faaa0cb]::r1cs::constraint_system::ConstraintSystem>::constrain
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/src/r1cs/prover.rs:189:3
[INFO] [stdout]   21:     0x59c7bd29044f - r1cs[72c0a758ecc8d77d]::example_gadget::<bulletproofs[ec32c7d97faaa0cb]::r1cs::prover::Prover<&mut merlin[13bd8766d928413c]::transcript::Transcript>>
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/tests/r1cs.rs:238:8
[INFO] [stdout]   22:     0x59c7bd295394 - r1cs[72c0a758ecc8d77d]::example_gadget_proof
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/tests/r1cs.rs:264:5
[INFO] [stdout]   23:     0x59c7bd2961a7 - r1cs[72c0a758ecc8d77d]::example_gadget_roundtrip_serialization_helper
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/tests/r1cs.rs:342:32
[INFO] [stdout]   24:     0x59c7bd296da2 - r1cs[72c0a758ecc8d77d]::example_gadget_serialization_test
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/tests/r1cs.rs:364:13
[INFO] [stdout]   25:     0x59c7bd2939b7 - r1cs[72c0a758ecc8d77d]::example_gadget_serialization_test::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/tests/r1cs.rs:360:39
[INFO] [stdout]   26:     0x59c7bd2a6946 - <r1cs[72c0a758ecc8d77d]::example_gadget_serialization_test::{closure#0} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x59c7bd2c00cb - <fn() -> core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x59c7bd2c00cb - test[30224e0cb089acd2]::__rust_begin_short_backtrace::<core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>, fn() -> core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:663:18
[INFO] [stdout]   29:     0x59c7bd2cc92a - test[30224e0cb089acd2]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:686:74
[INFO] [stdout]   30:     0x59c7bd2cc92a - <core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   31:     0x59c7bd2cc92a - std[3f03f8b59f91bef1]::panicking::catch_unwind::do_call::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>, core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:581:40
[INFO] [stdout]   32:     0x59c7bd2cc92a - std[3f03f8b59f91bef1]::panicking::catch_unwind::<core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>, core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x59c7bd2cc92a - std[3f03f8b59f91bef1]::panic::catch_unwind::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>, core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x59c7bd2cc92a - test[30224e0cb089acd2]::run_test_in_process
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:686:27
[INFO] [stdout]   35:     0x59c7bd2cc92a - test[30224e0cb089acd2]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:607:43
[INFO] [stdout]   36:     0x59c7bd2c6df4 - test[30224e0cb089acd2]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:637:41
[INFO] [stdout]   37:     0x59c7bd2c6df4 - std[3f03f8b59f91bef1]::sys::backtrace::__rust_begin_short_backtrace::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   39:     0x59c7bd2cf422 - <core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   40:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::panicking::catch_unwind::do_call::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:581:40
[INFO] [stdout]   41:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::panicking::catch_unwind::<(), core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::panic::catch_unwind::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   44:     0x59c7bd2cf422 - <std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x59c7bd440acf - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn core[585f66e14d78f9ba]::ops::function::FnOnce<(), Output = ()> + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   46:     0x59c7bd440acf - <std[3f03f8b59f91bef1]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   47:     0x7e0bca4cbaa4 - <unknown>
[INFO] [stdout]   48:     0x7e0bca558a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- example_gadget_test stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'example_gadget_test' (57) panicked at bulletproofs/src/r1cs/prover.rs:189:3:
[INFO] [stdout] assertion failed: res == Scalar::ZERO
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59c7bd441222 - std[3f03f8b59f91bef1]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59c7bd441222 - std[3f03f8b59f91bef1]::backtrace_rs::backtrace::trace_unsynchronized::<std[3f03f8b59f91bef1]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59c7bd441222 - std[3f03f8b59f91bef1]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59c7bd441222 - <<std[3f03f8b59f91bef1]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[585f66e14d78f9ba]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59c7bd45622a - <core[585f66e14d78f9ba]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59c7bd45622a - core[585f66e14d78f9ba]::fmt::write
[INFO] [stdout]    6:     0x59c7bd4460d6 - std[3f03f8b59f91bef1]::io::default_write_fmt::<alloc[15e7b27aba85d2e2]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x59c7bd4460d6 - <alloc[15e7b27aba85d2e2]::vec::Vec<u8> as std[3f03f8b59f91bef1]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x59c7bd41f9bf - <std[3f03f8b59f91bef1]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59c7bd41f9bf - std[3f03f8b59f91bef1]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59c7bd439559 - std[3f03f8b59f91bef1]::panicking::default_hook
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59c7bd2cbd1e - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn for<'a, 'b> core[585f66e14d78f9ba]::ops::function::Fn<(&'a std[3f03f8b59f91bef1]::panic::PanicHookInfo<'b>,), Output = ()> + core[585f66e14d78f9ba]::marker::Sync + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::Fn<(&std[3f03f8b59f91bef1]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x59c7bd2cbd1e - test[30224e0cb089acd2]::test_main_with_exit_callback::<test[30224e0cb089acd2]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x59c7bd439712 - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn for<'a, 'b> core[585f66e14d78f9ba]::ops::function::Fn<(&'a std[3f03f8b59f91bef1]::panic::PanicHookInfo<'b>,), Output = ()> + core[585f66e14d78f9ba]::marker::Sync + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::Fn<(&std[3f03f8b59f91bef1]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x59c7bd439712 - std[3f03f8b59f91bef1]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x59c7bd41faaa - std[3f03f8b59f91bef1]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x59c7bd414c39 - std[3f03f8b59f91bef1]::sys::backtrace::__rust_end_short_backtrace::<std[3f03f8b59f91bef1]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59c7bd4208cd - __rustc[caa99d26c7bae192]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x59c7bd4568fc - core[585f66e14d78f9ba]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59c7bd4568c2 - core[585f66e14d78f9ba]::panicking::panic
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panicking.rs:150:5
[INFO] [stdout]   20:     0x59c7bd29e090 - <bulletproofs[ec32c7d97faaa0cb]::r1cs::prover::Prover<&mut merlin[13bd8766d928413c]::transcript::Transcript> as bulletproofs[ec32c7d97faaa0cb]::r1cs::constraint_system::ConstraintSystem>::constrain
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/src/r1cs/prover.rs:189:3
[INFO] [stdout]   21:     0x59c7bd29044f - r1cs[72c0a758ecc8d77d]::example_gadget::<bulletproofs[ec32c7d97faaa0cb]::r1cs::prover::Prover<&mut merlin[13bd8766d928413c]::transcript::Transcript>>
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/tests/r1cs.rs:238:8
[INFO] [stdout]   22:     0x59c7bd295394 - r1cs[72c0a758ecc8d77d]::example_gadget_proof
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/tests/r1cs.rs:264:5
[INFO] [stdout]   23:     0x59c7bd295e14 - r1cs[72c0a758ecc8d77d]::example_gadget_roundtrip_helper
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/tests/r1cs.rs:325:32
[INFO] [stdout]   24:     0x59c7bd296bc2 - r1cs[72c0a758ecc8d77d]::example_gadget_test
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/tests/r1cs.rs:356:13
[INFO] [stdout]   25:     0x59c7bd2936a7 - r1cs[72c0a758ecc8d77d]::example_gadget_test::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/tests/r1cs.rs:352:25
[INFO] [stdout]   26:     0x59c7bd2a66c6 - <r1cs[72c0a758ecc8d77d]::example_gadget_test::{closure#0} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x59c7bd2c00cb - <fn() -> core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x59c7bd2c00cb - test[30224e0cb089acd2]::__rust_begin_short_backtrace::<core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>, fn() -> core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:663:18
[INFO] [stdout]   29:     0x59c7bd2cc92a - test[30224e0cb089acd2]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:686:74
[INFO] [stdout]   30:     0x59c7bd2cc92a - <core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   31:     0x59c7bd2cc92a - std[3f03f8b59f91bef1]::panicking::catch_unwind::do_call::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>, core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:581:40
[INFO] [stdout]   32:     0x59c7bd2cc92a - std[3f03f8b59f91bef1]::panicking::catch_unwind::<core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>, core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x59c7bd2cc92a - std[3f03f8b59f91bef1]::panic::catch_unwind::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>, core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x59c7bd2cc92a - test[30224e0cb089acd2]::run_test_in_process
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:686:27
[INFO] [stdout]   35:     0x59c7bd2cc92a - test[30224e0cb089acd2]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:607:43
[INFO] [stdout]   36:     0x59c7bd2c6df4 - test[30224e0cb089acd2]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:637:41
[INFO] [stdout]   37:     0x59c7bd2c6df4 - std[3f03f8b59f91bef1]::sys::backtrace::__rust_begin_short_backtrace::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   39:     0x59c7bd2cf422 - <core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   40:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::panicking::catch_unwind::do_call::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:581:40
[INFO] [stdout]   41:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::panicking::catch_unwind::<(), core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::panic::catch_unwind::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   44:     0x59c7bd2cf422 - <std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x59c7bd440acf - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn core[585f66e14d78f9ba]::ops::function::FnOnce<(), Output = ()> + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   46:     0x59c7bd440acf - <std[3f03f8b59f91bef1]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   47:     0x7e0bca4cbaa4 - <unknown>
[INFO] [stdout]   48:     0x7e0bca558a64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- range_proof_gadget stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'range_proof_gadget' (58) panicked at bulletproofs/src/r1cs/prover.rs:189:3:
[INFO] [stdout] assertion failed: res == Scalar::ZERO
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59c7bd441222 - std[3f03f8b59f91bef1]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59c7bd441222 - std[3f03f8b59f91bef1]::backtrace_rs::backtrace::trace_unsynchronized::<std[3f03f8b59f91bef1]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59c7bd441222 - std[3f03f8b59f91bef1]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59c7bd441222 - <<std[3f03f8b59f91bef1]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[585f66e14d78f9ba]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59c7bd45622a - <core[585f66e14d78f9ba]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59c7bd45622a - core[585f66e14d78f9ba]::fmt::write
[INFO] [stdout]    6:     0x59c7bd4460d6 - std[3f03f8b59f91bef1]::io::default_write_fmt::<alloc[15e7b27aba85d2e2]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x59c7bd4460d6 - <alloc[15e7b27aba85d2e2]::vec::Vec<u8> as std[3f03f8b59f91bef1]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x59c7bd41f9bf - <std[3f03f8b59f91bef1]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59c7bd41f9bf - std[3f03f8b59f91bef1]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59c7bd439559 - std[3f03f8b59f91bef1]::panicking::default_hook
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59c7bd2cbd1e - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn for<'a, 'b> core[585f66e14d78f9ba]::ops::function::Fn<(&'a std[3f03f8b59f91bef1]::panic::PanicHookInfo<'b>,), Output = ()> + core[585f66e14d78f9ba]::marker::Sync + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::Fn<(&std[3f03f8b59f91bef1]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x59c7bd2cbd1e - test[30224e0cb089acd2]::test_main_with_exit_callback::<test[30224e0cb089acd2]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x59c7bd439712 - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn for<'a, 'b> core[585f66e14d78f9ba]::ops::function::Fn<(&'a std[3f03f8b59f91bef1]::panic::PanicHookInfo<'b>,), Output = ()> + core[585f66e14d78f9ba]::marker::Sync + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::Fn<(&std[3f03f8b59f91bef1]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x59c7bd439712 - std[3f03f8b59f91bef1]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x59c7bd41faaa - std[3f03f8b59f91bef1]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x59c7bd414c39 - std[3f03f8b59f91bef1]::sys::backtrace::__rust_end_short_backtrace::<std[3f03f8b59f91bef1]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59c7bd4208cd - __rustc[caa99d26c7bae192]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x59c7bd4568fc - core[585f66e14d78f9ba]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59c7bd4568c2 - core[585f66e14d78f9ba]::panicking::panic
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panicking.rs:150:5
[INFO] [stdout]   20:     0x59c7bd29e090 - <bulletproofs[ec32c7d97faaa0cb]::r1cs::prover::Prover<&mut merlin[13bd8766d928413c]::transcript::Transcript> as bulletproofs[ec32c7d97faaa0cb]::r1cs::constraint_system::ConstraintSystem>::constrain
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/src/r1cs/prover.rs:189:3
[INFO] [stdout]   21:     0x59c7bd28f8b0 - r1cs[72c0a758ecc8d77d]::range_proof::<bulletproofs[ec32c7d97faaa0cb]::r1cs::prover::Prover<&mut merlin[13bd8766d928413c]::transcript::Transcript>>
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/tests/r1cs.rs:399:8
[INFO] [stdout]   22:     0x59c7bd2948ca - r1cs[72c0a758ecc8d77d]::range_proof_helper
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/tests/r1cs.rs:436:17
[INFO] [stdout]   23:     0x59c7bd2969a4 - r1cs[72c0a758ecc8d77d]::range_proof_gadget
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/tests/r1cs.rs:418:17
[INFO] [stdout]   24:     0x59c7bd293677 - r1cs[72c0a758ecc8d77d]::range_proof_gadget::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/bulletproofs/tests/r1cs.rs:405:24
[INFO] [stdout]   25:     0x59c7bd2a6686 - <r1cs[72c0a758ecc8d77d]::range_proof_gadget::{closure#0} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x59c7bd2c00cb - <fn() -> core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x59c7bd2c00cb - test[30224e0cb089acd2]::__rust_begin_short_backtrace::<core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>, fn() -> core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:663:18
[INFO] [stdout]   28:     0x59c7bd2cc92a - test[30224e0cb089acd2]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:686:74
[INFO] [stdout]   29:     0x59c7bd2cc92a - <core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   30:     0x59c7bd2cc92a - std[3f03f8b59f91bef1]::panicking::catch_unwind::do_call::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>, core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:581:40
[INFO] [stdout]   31:     0x59c7bd2cc92a - std[3f03f8b59f91bef1]::panicking::catch_unwind::<core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>, core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:544:19
[INFO] [stdout]   32:     0x59c7bd2cc92a - std[3f03f8b59f91bef1]::panic::catch_unwind::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<test[30224e0cb089acd2]::run_test_in_process::{closure#0}>, core[585f66e14d78f9ba]::result::Result<(), alloc[15e7b27aba85d2e2]::string::String>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panic.rs:359:14
[INFO] [stdout]   33:     0x59c7bd2cc92a - test[30224e0cb089acd2]::run_test_in_process
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:686:27
[INFO] [stdout]   34:     0x59c7bd2cc92a - test[30224e0cb089acd2]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:607:43
[INFO] [stdout]   35:     0x59c7bd2c6df4 - test[30224e0cb089acd2]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/test/src/lib.rs:637:41
[INFO] [stdout]   36:     0x59c7bd2c6df4 - std[3f03f8b59f91bef1]::sys::backtrace::__rust_begin_short_backtrace::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   37:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   38:     0x59c7bd2cf422 - <core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   39:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::panicking::catch_unwind::do_call::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:581:40
[INFO] [stdout]   40:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::panicking::catch_unwind::<(), core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panicking.rs:544:19
[INFO] [stdout]   41:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::panic::catch_unwind::<core[585f66e14d78f9ba]::panic::unwind_safe::AssertUnwindSafe<std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/panic.rs:359:14
[INFO] [stdout]   42:     0x59c7bd2cf422 - std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked::<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   43:     0x59c7bd2cf422 - <std[3f03f8b59f91bef1]::thread::lifecycle::spawn_unchecked<test[30224e0cb089acd2]::run_test::{closure#1}, ()>::{closure#1} as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x59c7bd440acf - <alloc[15e7b27aba85d2e2]::boxed::Box<dyn core[585f66e14d78f9ba]::ops::function::FnOnce<(), Output = ()> + core[585f66e14d78f9ba]::marker::Send> as core[585f66e14d78f9ba]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   45:     0x59c7bd440acf - <std[3f03f8b59f91bef1]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/db823df02fd0c2cf67b43025ac3fef3f2d743245/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   46:     0x7e0bca4cbaa4 - <unknown>
[INFO] [stdout]   47:     0x7e0bca558a64 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     example_gadget_serialization_test
[INFO] [stdout]     example_gadget_test
[INFO] [stdout]     range_proof_gadget
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 9 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 10.26s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `-p bulletproofs --test r1cs`
[INFO] running `Command { std: "docker" "inspect" "ee7647e2852cfd883e833c947786ff023eff9e0e26f3f0ad8afa6c792f6b0f5a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ee7647e2852cfd883e833c947786ff023eff9e0e26f3f0ad8afa6c792f6b0f5a", kill_on_drop: false }`
[INFO] [stdout] ee7647e2852cfd883e833c947786ff023eff9e0e26f3f0ad8afa6c792f6b0f5a
