[INFO] cloning repository https://github.com/morgana-proofs/GKR-MSM
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/morgana-proofs/GKR-MSM" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmorgana-proofs%2FGKR-MSM", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmorgana-proofs%2FGKR-MSM'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] eed5f322389baf72acedd37c032bd47db1ef1b44
[INFO] building morgana-proofs/GKR-MSM against try#334963c956d25708feab489a3816ae63f639355d for pr-135216-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmorgana-proofs%2FGKR-MSM" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/morgana-proofs/GKR-MSM on toolchain 334963c956d25708feab489a3816ae63f639355d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+334963c956d25708feab489a3816ae63f639355d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/morgana-proofs/GKR-MSM
[INFO] removed 0 missing examples
[INFO] finished tweaking git repo https://github.com/morgana-proofs/GKR-MSM
[INFO] tweaked toml for git repo https://github.com/morgana-proofs/GKR-MSM written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/morgana-proofs/GKR-MSM 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" "+334963c956d25708feab489a3816ae63f639355d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+334963c956d25708feab489a3816ae63f639355d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2edd92d771b843be3e0460876db1748e403641e4a86126075cd52ff9d8b4ed63
[INFO] running `Command { std: "docker" "start" "-a" "2edd92d771b843be3e0460876db1748e403641e4a86126075cd52ff9d8b4ed63", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2edd92d771b843be3e0460876db1748e403641e4a86126075cd52ff9d8b4ed63", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2edd92d771b843be3e0460876db1748e403641e4a86126075cd52ff9d8b4ed63", kill_on_drop: false }`
[INFO] [stdout] 2edd92d771b843be3e0460876db1748e403641e4a86126075cd52ff9d8b4ed63
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+334963c956d25708feab489a3816ae63f639355d" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 44afbfb05668ee93ea26f799a2b6462e1a95c37eb2a639fb2b532e7b8c763d29
[INFO] running `Command { std: "docker" "start" "-a" "44afbfb05668ee93ea26f799a2b6462e1a95c37eb2a639fb2b532e7b8c763d29", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.87
[INFO] [stderr]    Compiling unicode-ident v1.0.13
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]    Compiling libc v0.2.159
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling once_cell v1.20.2
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling syn v2.0.79
[INFO] [stderr]    Compiling crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling serde v1.0.210
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling tracing-core v0.1.33
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling regex-automata v0.4.8
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling pin-project-lite v0.2.14
[INFO] [stderr]    Compiling overload v0.1.1
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling nu-ansi-term v0.46.0
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling regex-automata v0.1.10
[INFO] [stderr]    Compiling regex v1.11.0
[INFO] [stderr]    Compiling thread_local v1.1.8
[INFO] [stderr]    Compiling serde_json v1.0.128
[INFO] [stderr]    Compiling matchers v0.1.0
[INFO] [stderr]    Compiling itoa v1.0.11
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling ryu v1.0.18
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling anstyle-parse v0.2.5
[INFO] [stderr]    Compiling generic-array v0.12.4
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.1
[INFO] [stderr]    Compiling byte-tools v0.3.1
[INFO] [stderr]    Compiling anstyle-query v1.1.1
[INFO] [stderr]    Compiling unicode-width v0.1.14
[INFO] [stderr]    Compiling colorchoice v1.0.2
[INFO] [stderr]    Compiling anstyle v1.0.8
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling block-padding v0.1.5
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling anstream v0.6.15
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling csv-core v0.1.11
[INFO] [stderr]    Compiling keccak v0.1.5
[INFO] [stderr]    Compiling ark-serialize-derive v0.4.2
[INFO] [stderr]    Compiling ark-ff-macros v0.4.2
[INFO] [stderr]    Compiling ark-ff-asm v0.4.2
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling clap_lex v0.7.2
[INFO] [stderr]    Compiling half v1.8.3
[INFO] [stderr]    Compiling thiserror v1.0.64
[INFO] [stderr]    Compiling criterion-plot v0.4.5
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling tracing-attributes v0.1.28
[INFO] [stderr]    Compiling clap_derive v4.5.18
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.64
[INFO] [stderr]    Compiling zeroize v1.8.1
[INFO] [stderr]    Compiling bytemuck_derive v1.8.0
[INFO] [stderr]    Compiling serde_derive v1.0.210
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling serde_cbor v0.11.2
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling tracing-subscriber v0.3.19
[INFO] [stderr]    Compiling clap_builder v4.5.22
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling hashbrown v0.13.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling csv v1.3.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling block-buffer v0.7.3
[INFO] [stderr]    Compiling ark-std v0.4.0
[INFO] [stderr]    Compiling digest v0.8.1
[INFO] [stderr]    Compiling term_size v0.3.2
[INFO] [stderr]    Compiling ark-serialize v0.4.2
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling allocator-api2 v0.2.18
[INFO] [stderr]    Compiling opaque-debug v0.2.3
[INFO] [stderr]    Compiling ark-ff v0.4.2
[INFO] [stderr]    Compiling oorandom v11.1.4
[INFO] [stderr]    Compiling sha3 v0.8.2
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling clap v4.5.22
[INFO] [stderr]    Compiling tracing-texray v0.2.0
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling bytemuck v1.19.0
[INFO] [stderr]    Compiling merlin v3.0.0
[INFO] [stderr]    Compiling criterion v0.3.6
[INFO] [stderr]    Compiling unroll v0.1.5
[INFO] [stderr]    Compiling colored v2.1.0
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling nu-ansi-term v0.50.1
[INFO] [stderr]    Compiling seq-macro v0.3.5
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling tracing-tree v0.4.0
[INFO] [stderr]    Compiling tracing-span-tree v0.1.1
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling hashcaster v0.1.0 (https://github.com/morgana-proofs/hashcaster.git#d9891c06)
[INFO] [stderr]    Compiling ark-poly v0.4.2
[INFO] [stderr]    Compiling ark-ec v0.4.2
[INFO] [stderr]    Compiling ark-bls12-381 v0.4.0
[INFO] [stderr]    Compiling ark-curve25519 v0.4.0
[INFO] [stderr]    Compiling liblasso v0.4.0 (https://github.com/rebenkoy/liblasso.git?branch=master#925a7a74)
[INFO] [stderr]    Compiling ark-ed-on-bls12-381-bandersnatch v0.4.0
[INFO] [stderr]    Compiling GKR-MSM v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `InterOp`
[INFO] [stdout]   --> src/gkr_msm_simple.rs:23:53
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::polynomial::fragmented::{FragmentedPoly, InterOp, Shape};
[INFO] [stdout]    |                                                     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Add`, `Index`, `Mul`, and `Sub`
[INFO] [stdout]  --> src/utils.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::ops::{Add, Index, Mul, Sub};
[INFO] [stdout]   |                ^^^  ^^^^^  ^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::utils::math::Math`
[INFO] [stdout]   --> src/utils.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use liblasso::utils::math::Math;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::PrimInt`
[INFO] [stdout]   --> src/utils.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use num_traits::PrimInt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/utils.rs:283:20
[INFO] [stdout]     |
[INFO] [stdout] 283 |             acc += (_multiplier - multiplier);         
[INFO] [stdout]     |                    ^                        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 283 -             acc += (_multiplier - multiplier);         
[INFO] [stdout] 283 +             acc += _multiplier - multiplier;         
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/utils.rs:285:27
[INFO] [stdout]     |
[INFO] [stdout] 285 |             multiplier *= (F::one() - pt[i]);
[INFO] [stdout]     |                           ^                ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 285 -             multiplier *= (F::one() - pt[i]);
[INFO] [stdout] 285 +             multiplier *= F::one() - pt[i];
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::OnceLock`
[INFO] [stdout]  --> src/protocol/bintree.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::OnceLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Itertools`
[INFO] [stdout]  --> src/protocol/bintree.rs:6:25
[INFO] [stdout]   |
[INFO] [stdout] 6 | use itertools::{Either, Itertools};
[INFO] [stdout]   |                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `InterOp`
[INFO] [stdout]   --> src/protocol/bintree.rs:11:53
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::polynomial::fragmented::{FragmentedPoly, InterOp};
[INFO] [stdout]    |                                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]  --> src/protocol/sumcheck.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_ff::{Field, PrimeField};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `multicore`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:435:15
[INFO] [stdout]     |
[INFO] [stdout] 435 |         #[cfg(feature = "multicore")]
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `default`, `memprof`, `parallel`, and `prof`
[INFO] [stdout]     = help: consider adding `multicore` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `multicore`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:438:19
[INFO] [stdout]     |
[INFO] [stdout] 438 |         #[cfg(not(feature = "multicore"))]
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `default`, `memprof`, `parallel`, and `prof`
[INFO] [stdout]     = help: consider adding `multicore` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `multicore`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:492:15
[INFO] [stdout]     |
[INFO] [stdout] 492 |         #[cfg(feature = "multicore")]
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `default`, `memprof`, `parallel`, and `prof`
[INFO] [stdout]     = help: consider adding `multicore` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `multicore`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:503:19
[INFO] [stdout]     |
[INFO] [stdout] 503 |         #[cfg(not(feature = "multicore"))]
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `default`, `memprof`, `parallel`, and `prof`
[INFO] [stdout]     = help: consider adding `multicore` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/protocol/split.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fix_var_bot`
[INFO] [stdout]  --> src/protocol/split.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::utils::{fix_var_bot, fix_var_top};
[INFO] [stdout]   |                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/protocol/triangle.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::OnceLock`
[INFO] [stdout]  --> src/protocol/triangle.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::OnceLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EdwardsProjective`
[INFO] [stdout]  --> src/protocol/triangle.rs:5:40
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_ed_on_bls12_381_bandersnatch::{EdwardsProjective};
[INFO] [stdout]   |                                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SplitProver`, `SplitVerifier`, and `Split`
[INFO] [stdout]   --> src/protocol/triangle.rs:12:289
[INFO] [stdout]    |
[INFO] [stdout] 12 | ..., SumcheckPolyMapVerifier, to_multieval}, split::{Split, SplitProver, SplitVerifier}}, transcript::{Challenge, TranscriptReceiver}};
[INFO] [stdout]    |                                                      ^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `InterOp`
[INFO] [stdout]   --> src/protocol/triangle.rs:14:53
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::polynomial::fragmented::{FragmentedPoly, InterOp};
[INFO] [stdout]    |                                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `fix_var_bot` and `fix_var_top`
[INFO] [stdout]  --> src/protocol/split_at.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::utils::{fix_var_bot, fix_var_top};
[INFO] [stdout]   |                    ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Pointer`
[INFO] [stdout]  --> src/protocol/generic_gkr.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::{Debug, Formatter, Pointer};
[INFO] [stdout]   |                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::OnceLock`
[INFO] [stdout]  --> src/protocol/generic_gkr.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::OnceLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Either` and `Itertools`
[INFO] [stdout]  --> src/protocol/generic_gkr.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use itertools::{Either, Itertools};
[INFO] [stdout]   |                 ^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `InterOp`
[INFO] [stdout]   --> src/protocol/generic_gkr.rs:12:53
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::polynomial::fragmented::{FragmentedPoly, InterOp};
[INFO] [stdout]    |                                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::VecDeque` and `process::Output`
[INFO] [stdout]  --> src/copoly.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{cmp::min, collections::VecDeque, mem::{transmute, MaybeUninit}, process::Output, sync::{Arc, OnceLock}, vec};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^^^^^^                                 ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::once`
[INFO] [stdout]  --> src/copoly.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::iter::once;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `repeat_n`
[INFO] [stdout]   --> src/copoly.rs:10:28
[INFO] [stdout]    |
[INFO] [stdout] 10 | use itertools::{Itertools, repeat_n};
[INFO] [stdout]    |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::poly::dense_mlpoly::DensePolynomial`
[INFO] [stdout]   --> src/copoly.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use liblasso::poly::dense_mlpoly::DensePolynomial;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::poly::eq_poly::EqPolynomial`
[INFO] [stdout]   --> src/copoly.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use liblasso::poly::eq_poly::EqPolynomial;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FragmentedPoly`
[INFO] [stdout]   --> src/copoly.rs:15:64
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::polynomial::fragmented::{Fragment, FragmentContent, FragmentedPoly, Shape};
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Consts` and `Data`
[INFO] [stdout]   --> src/copoly.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::polynomial::fragmented::FragmentContent::{Consts, Data};
[INFO] [stdout]    |                                                      ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/copoly.rs:206:31
[INFO] [stdout]     |
[INFO] [stdout] 206 |                 let is_leaf = (depth == total_logsize - (query.logsize as usize));
[INFO] [stdout]     |                               ^                                                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 206 -                 let is_leaf = (depth == total_logsize - (query.logsize as usize));
[INFO] [stdout] 206 +                 let is_leaf = depth == total_logsize - (query.logsize as usize);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/copoly.rs:690:59
[INFO] [stdout]     |
[INFO] [stdout] 690 |                 .map(|(a, b)| { *b = point[i] * *a; *a *= (F::one() - point[i]) })
[INFO] [stdout]     |                                                           ^                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 690 -                 .map(|(a, b)| { *b = point[i] * *a; *a *= (F::one() - point[i]) })
[INFO] [stdout] 690 +                 .map(|(a, b)| { *b = point[i] * *a; *a *= F::one() - point[i] })
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::Once`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::iter::Once;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::MaybeUninit`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::mem::MaybeUninit;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndexMut`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::{Add, AddAssign, Index, IndexMut, Mul, MulAssign, Sub, SubAssign};
[INFO] [stdout]   |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::bn::TwistType::D`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ark_ec::bn::TwistType::D;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::plumbing::UnindexedConsumer`
[INFO] [stdout]   --> src/polynomial/fragmented.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use rayon::iter::plumbing::UnindexedConsumer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/polynomial/format_helpers.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 |         if (shape.fragments.len() > 2 || shape.fragments.len() == 0) {
[INFO] [stdout]    |            ^                                                       ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 17 -         if (shape.fragments.len() > 2 || shape.fragments.len() == 0) {
[INFO] [stdout] 17 +         if shape.fragments.len() > 2 || shape.fragments.len() == 0 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BigInteger`
[INFO] [stdout]  --> src/cleanup/proof_transcript.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_ff::{BigInteger, PrimeField};
[INFO] [stdout]   |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/cleanup/proof_transcript.rs:42:24
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let bytesize = ((bitsize + 7) / 8);
[INFO] [stdout]    |                        ^                 ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 42 -         let bytesize = ((bitsize + 7) / 8);
[INFO] [stdout] 42 +         let bytesize = (bitsize + 7) / 8;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsSharedMutPtr`, `UnsafeIndexRawMut`, and `UnsafeIndexRaw`
[INFO] [stdout]  --> src/cleanup/protocols/sumcheck.rs:3:29
[INFO] [stdout]   |
[INFO] [stdout] 3 | use hashcaster::ptr_utils::{AsSharedMutPtr, UnsafeIndexRaw, UnsafeIndexRawMut};
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eq_poly::EqPolynomial`
[INFO] [stdout]  --> src/cleanup/protocols/sumcheck.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use liblasso::poly::{eq_poly::EqPolynomial, unipoly::UniPoly};
[INFO] [stdout]   |                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::AddAssign`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::ops::AddAssign;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_bls12_381::Fr`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_bls12_381::Fr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::utils::math::Math`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use liblasso::utils::math::Math;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntoParallelIterator` and `IntoParallelRefIterator`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:10:44
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::iter::{IndexedParallelIterator, IntoParallelIterator, IntoParallelRefIterator, IntoParallelRefMutIterator, ParallelIterator};
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ProtocolProver`, `ProtocolVerifier`, and `Protocol`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:14:33
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::protocol::protocol::{Protocol, ProtocolProver, ProtocolVerifier};
[INFO] [stdout]    |                                 ^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eq_poly_sequence_last`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:23:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::utils::{eq_eval, eq_poly_sequence_from_multiplier_last, eq_poly_sequence_last, make_gamma_pows, zip_with_gamma};
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::protocols::gkrs::gkr::GKRLayer`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/dense_eq.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::cleanup::protocols::gkrs::gkr::GKRLayer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EqWrapper` and `GammaWrapper`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/dense_eq.rs:13:43
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::cleanup::protocols::sumcheck::{EqWrapper, FoldToSumcheckable, GammaWrapper, GenericSumcheckProtocol, SinglePointClaims};
[INFO] [stdout]    |                                           ^^^^^^^^^                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eq_poly_sequence_last`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/dense_eq.rs:15:47
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::utils::{eq_eval, eq_poly_sequence, eq_poly_sequence_last, make_gamma_pows, zip_with_gamma};
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AlgFnSO` and `AlgFn`
[INFO] [stdout]   --> src/cleanup/protocols/splits.rs:10:36
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO, IdAlgFn};
[INFO] [stdout]    |                                    ^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/gkr.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ark_ff::PrimeField;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/gkr.rs:6:43
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]   |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/bintree_add.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/bintree_add.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]   --> src/cleanup/protocols/gkrs/bintree_add.rs:18:43
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::polys::common::MapSplit`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/triangle_add.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::cleanup::polys::common::MapSplit;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cmp::min` and `iter::repeat_n`
[INFO] [stdout]  --> src/cleanup/protocols/pushforward/pushforward.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{cmp::min, iter::repeat_n, marker::PhantomData};
[INFO] [stdout]   |           ^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::CurveGroup`
[INFO] [stdout]  --> src/cleanup/protocols/pushforward/pushforward.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_ec::CurveGroup;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::log2`
[INFO] [stdout]  --> src/cleanup/protocols/pushforward/pushforward.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ark_std::log2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsSharedMutPtr` and `UnsafeIndexRawMut`
[INFO] [stdout]  --> src/cleanup/protocols/pushforward/pushforward.rs:8:29
[INFO] [stdout]   |
[INFO] [stdout] 8 | use hashcaster::ptr_utils::{AsSharedMutPtr, UnsafeIndexRawMut};
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `eq_poly::EqPolynomial` and `unipoly::UniPoly`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | use liblasso::poly::{eq_poly::EqPolynomial, unipoly::UniPoly};
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `current_num_threads` and `repeatn`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rayon::{current_num_threads, iter::{repeatn, IndexedParallelIterator, IntoParallelIterator, IntoParallelRefIterator, ParallelIterator...
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::VariableBaseMSM`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use ark_ec::VariableBaseMSM;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::msm_nonaffine`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::msm_nonaffine;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PointClaim`, `eq_eval`, and `eq_sum`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:21:256
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...e, PointClaim}, verifier_polys::{EqPoly, EqTruncPoly, SelectorPoly, VerifierPoly}}, utils::{algfn::AlgFnUtils, arith::evaluate_poly}}, cleanup::polys::vecvec::VecVecPolynomial, utils::{eq_eval, eq_sum, m...
[INFO] [stdout]    |       ^^^^^^^^^^                                                                                                                                                                            ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Densify`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:22:37
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::cleanup::polys::common::{Densify, EvaluateAtPoint};
[INFO] [stdout]    |                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SumClaim` and `SumcheckVerifierConfig`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:23:113
[INFO] [stdout]    |
[INFO] [stdout] 23 | ..._univar, DenseSumcheckObjectSO, SinglePointClaims, SumClaim, SumcheckVerifierConfig}, sumchecks::vecvec_eq::Sumcheckable};
[INFO] [stdout]    |                                                       ^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::TwistedEdwardsConfig`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::utils::TwistedEdwardsConfig;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsSharedMUMutPtr`, `UninitArr`, and `UnsafeIndexRawMut`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/logup_mainphase.rs:21:29
[INFO] [stdout]    |
[INFO] [stdout] 21 | use hashcaster::ptr_utils::{AsSharedMUMutPtr, UninitArr, UnsafeIndexRawMut};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::IntoParallelIterator`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/logup_mainphase.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use rayon::iter::IntoParallelIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `protocols::sumcheck::PointClaim`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/logup_mainphase.rs:27:81
[INFO] [stdout]    |
[INFO] [stdout] 27 | use crate::cleanup::{proof_transcript::TProofTranscript2, protocol2::Protocol2, protocols::sumcheck::PointClaim, utils::algfn::AlgFnUtils};
[INFO] [stdout]    |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/logup_mainphase.rs:28:43
[INFO] [stdout]    |
[INFO] [stdout] 28 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CurveConfig` and `Group`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ark_ec::{CurveConfig, Group};
[INFO] [stdout]   |              ^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Affine` and `Projective`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:2:31
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ark_ec::twisted_edwards::{Affine, Projective};
[INFO] [stdout]   |                               ^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ed_on_bls12_381_bandersnatch::BandersnatchConfig`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ark_ed_on_bls12_381_bandersnatch::BandersnatchConfig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::UniformRand`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_std::UniformRand;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `repeat_n`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use itertools::{repeat_n, Itertools};
[INFO] [stdout]   |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Densify`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::cleanup::polys::common::{Densify, MapSplit};
[INFO] [stdout]   |                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProofTranscript2`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger_ending.rs:10:40
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::cleanup::proof_transcript::{ProofTranscript2, TProofTranscript2};
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GKRLayer` and `SimpleGKR`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger_ending.rs:13:44
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::cleanup::protocols::gkrs::gkr::{GKRLayer, SimpleGKR};
[INFO] [stdout]    |                                            ^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::utils::arith::evaluate_poly`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger_ending.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::cleanup::utils::arith::evaluate_poly;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `build_points`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger_ending.rs:22:20
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::utils::{build_points, TwistedEdwardsConfig};
[INFO] [stdout]    |                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DenseSumcheckObjectSO`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger.rs:6:54
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::cleanup::protocols::sumcheck::{gamma_rlc, DenseSumcheckObjectSO, PointClaim, SinglePointClaims};
[INFO] [stdout]   |                                                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ed_on_bls12_381_bandersnatch::BandersnatchConfig`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use ark_ed_on_bls12_381_bandersnatch::BandersnatchConfig;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::log2`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use ark_std::log2;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use itertools::Itertools;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `One`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:17:18
[INFO] [stdout]    |
[INFO] [stdout] 17 | use num_traits::{One, Zero};
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `repeat`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:19:17
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::iter::{repeat, repeat_n};
[INFO] [stdout]    |                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Index`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use std::ops::Index;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `event` and `info`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:22:15
[INFO] [stdout]    |
[INFO] [stdout] 22 | use tracing::{event, info, info_span, instrument};
[INFO] [stdout]    |               ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::protocols::sumchecks::dense_eq::DenseDeg2Sumcheck`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::cleanup::protocols::sumchecks::dense_eq::DenseDeg2Sumcheck;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AlgFnSO` and `AlgFn`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:25:36
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                    ^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::utils::arith::evaluate_poly`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use crate::cleanup::utils::arith::evaluate_poly;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::pairing::Pairing`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:421:9
[INFO] [stdout]     |
[INFO] [stdout] 421 |     use ark_ec::pairing::Pairing;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Display`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:428:9
[INFO] [stdout]     |
[INFO] [stdout] 428 |     use std::fmt::Display;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BigInt`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:429:18
[INFO] [stdout]     |
[INFO] [stdout] 429 |     use ark_ff::{BigInt, BigInteger256};
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::Pow`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:430:9
[INFO] [stdout]     |
[INFO] [stdout] 430 |     use num_traits::Pow;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Level` and `span`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:431:31
[INFO] [stdout]     |
[INFO] [stdout] 431 |     use tracing::{instrument, span, Level};
[INFO] [stdout]     |                               ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::polys::common::Densify`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:432:9
[INFO] [stdout]     |
[INFO] [stdout] 432 |     use crate::cleanup::polys::common::Densify;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DenseSumcheckObject` and `FoldToSumcheckable`
[INFO] [stdout]  --> src/cleanup/protocols/multiopen_reduction.rs:7:54
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::cleanup::protocols::sumcheck::{gamma_rlc, DenseSumcheckObject, DenseSumcheckObjectSO, FoldToSumcheckable, GenericSumcheckProto...
[INFO] [stdout]   |                                                      ^^^^^^^^^^^^^^^^^^^                         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eq_poly_sequence_last`
[INFO] [stdout]   --> src/cleanup/protocols/multiopen_reduction.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::utils::{eq_poly_sequence_last, make_gamma_pows};
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_bls12_381::Fr`
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |     use ark_bls12_381::Fr;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `affine_twisted_edwards_add_l1` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:151:17
[INFO] [stdout]     |
[INFO] [stdout] 151 |     make_algfn!(affine_twisted_edwards_add_l1(2, 4, 3));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AffineTwistedEdwardsAddL1`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `affine_twisted_edwards_add_l2` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:152:17
[INFO] [stdout]     |
[INFO] [stdout] 152 |     make_algfn!(affine_twisted_edwards_add_l2(2, 3, 3));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AffineTwistedEdwardsAddL2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `affine_twisted_edwards_add_l3` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:153:17
[INFO] [stdout]     |
[INFO] [stdout] 153 |     make_algfn!(affine_twisted_edwards_add_l3(2, 3, 3));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AffineTwistedEdwardsAddL3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `twisted_edwards_add_l1` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:154:17
[INFO] [stdout]     |
[INFO] [stdout] 154 |     make_algfn!(twisted_edwards_add_l1(2, 6, 4));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `TwistedEdwardsAddL1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `twisted_edwards_add_l2` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:155:17
[INFO] [stdout]     |
[INFO] [stdout] 155 |     make_algfn!(twisted_edwards_add_l2(2, 4, 4));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `TwistedEdwardsAddL2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `twisted_edwards_add_l3` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:156:17
[INFO] [stdout]     |
[INFO] [stdout] 156 |     make_algfn!(twisted_edwards_add_l3(2, 4, 3));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `TwistedEdwardsAddL3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `triangle_twisted_edwards_add_l1` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:157:17
[INFO] [stdout]     |
[INFO] [stdout] 157 |     make_algfn!(triangle_twisted_edwards_add_l1(2, 12, 12)); 
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `TriangleTwistedEdwardsAddL1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsSharedMUConstPtr`
[INFO] [stdout]  --> src/cleanup/utils/algfn.rs:6:29
[INFO] [stdout]   |
[INFO] [stdout] 6 | use hashcaster::ptr_utils::{AsSharedMUConstPtr, AsSharedMUMutPtr, AsSharedMutPtr, UninitArr, UnsafeIndexRawMut};
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::poly::eq_poly::EqPolynomial`
[INFO] [stdout]  --> src/cleanup/utils/arith.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use liblasso::poly::eq_poly::EqPolynomial;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::current_num_threads`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rayon::current_num_threads;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoParallelIterator`
[INFO] [stdout]   --> src/cleanup/polys/dense.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::iter::{IntoParallelIterator, ParallelIterator};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParallelSliceMut`
[INFO] [stdout]   --> src/cleanup/polys/dense.rs:12:37
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rayon::prelude::{ParallelSlice, ParallelSliceMut};
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AddAssign`, `Add`, `Mul`, `SubAssign`, and `Sub`
[INFO] [stdout]  --> src/cleanup/polys/vecvec.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ops::{Add, AddAssign, Mul, Range, Sub, SubAssign};
[INFO] [stdout]   |                ^^^  ^^^^^^^^^  ^^^         ^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/cleanup/polys/vecvec.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::copoly::PrefixFold`
[INFO] [stdout]   --> src/cleanup/polys/vecvec.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::copoly::PrefixFold;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/polynomial_with_zeros.rs:93:16
[INFO] [stdout]    |
[INFO] [stdout] 93 |         *self*=(F::one() - *f);
[INFO] [stdout]    |                ^             ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 93 -         *self*=(F::one() - *f);
[INFO] [stdout] 93 +         *self*=F::one() - *f;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/polynomial_with_zeros.rs:361:21
[INFO] [stdout]     |
[INFO] [stdout] 361 |                 *l*=(F::one() - *f);
[INFO] [stdout]     |                     ^             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 361 -                 *l*=(F::one() - *f);
[INFO] [stdout] 361 +                 *l*=F::one() - *f;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:112:14
[INFO] [stdout]     |
[INFO] [stdout] 112 |     for i in (0..n){
[INFO] [stdout]     |              ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 112 -     for i in (0..n){
[INFO] [stdout] 112 +     for i in 0..n {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:113:18
[INFO] [stdout]     |
[INFO] [stdout] 113 |         for j in (0..num_limbs){
[INFO] [stdout]     |                  ^            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 113 -         for j in (0..num_limbs){
[INFO] [stdout] 113 +         for j in 0..num_limbs {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:114:22
[INFO] [stdout]     |
[INFO] [stdout] 114 |             for k in (0..m){
[INFO] [stdout]     |                      ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 114 -             for k in (0..m){
[INFO] [stdout] 114 +             for k in 0..m {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:66:20
[INFO] [stdout]    |
[INFO] [stdout] 66 |             res *= (n-i);
[INFO] [stdout]    |                    ^   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 66 -             res *= (n-i);
[INFO] [stdout] 66 +             res *= n-i;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:67:20
[INFO] [stdout]    |
[INFO] [stdout] 67 |             res /= (i+1); 
[INFO] [stdout]    |                    ^   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 67 -             res /= (i+1); 
[INFO] [stdout] 67 +             res /= i+1; 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:81:20
[INFO] [stdout]    |
[INFO] [stdout] 81 |             res += (F2::from(P[P.len() - i - 1]) * F2::from(binomial(degree+1, i + 1)));
[INFO] [stdout]    |                    ^                                                                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 81 -             res += (F2::from(P[P.len() - i - 1]) * F2::from(binomial(degree+1, i + 1)));
[INFO] [stdout] 81 +             res += F2::from(P[P.len() - i - 1]) * F2::from(binomial(degree+1, i + 1));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:82:20
[INFO] [stdout]    |
[INFO] [stdout] 82 |             res -= (F2::from(P[P.len() - i - 2]) * F2::from(binomial(degree+1, i + 2)));
[INFO] [stdout]    |                    ^                                                                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 82 -             res -= (F2::from(P[P.len() - i - 2]) * F2::from(binomial(degree+1, i + 2)));
[INFO] [stdout] 82 +             res -= F2::from(P[P.len() - i - 2]) * F2::from(binomial(degree+1, i + 2));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:85:20
[INFO] [stdout]    |
[INFO] [stdout] 85 |             res += (F2::from(P[P.len() - degree - 1]));
[INFO] [stdout]    |                    ^                                 ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 85 -             res += (F2::from(P[P.len() - degree - 1]));
[INFO] [stdout] 85 +             res += F2::from(P[P.len() - degree - 1]);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:100:20
[INFO] [stdout]     |
[INFO] [stdout] 100 |             res += (F2::from(P[i]) * F2::from(binomial(degree+1, i+1)));
[INFO] [stdout]     |                    ^                                                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 100 -             res += (F2::from(P[i]) * F2::from(binomial(degree+1, i+1)));
[INFO] [stdout] 100 +             res += F2::from(P[i]) * F2::from(binomial(degree+1, i+1));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:101:20
[INFO] [stdout]     |
[INFO] [stdout] 101 |             res -= (F2::from(P[i+1]) * F2::from(binomial(degree+1, i + 2)));
[INFO] [stdout]     |                    ^                                                      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 101 -             res -= (F2::from(P[i+1]) * F2::from(binomial(degree+1, i + 2)));
[INFO] [stdout] 101 +             res -= F2::from(P[i+1]) * F2::from(binomial(degree+1, i + 2));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:105:20
[INFO] [stdout]     |
[INFO] [stdout] 105 |             res += (F2::from(P[degree]));
[INFO] [stdout]     |                    ^                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 105 -             res += (F2::from(P[degree]));
[INFO] [stdout] 105 +             res += F2::from(P[degree]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:118:18
[INFO] [stdout]     |
[INFO] [stdout] 118 |         for _ in (0..l){
[INFO] [stdout]     |                  ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 118 -         for _ in (0..l){
[INFO] [stdout] 118 +         for _ in 0..l {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:130:18
[INFO] [stdout]     |
[INFO] [stdout] 130 |         for _ in (0..l/2){
[INFO] [stdout]     |                  ^      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 130 -         for _ in (0..l/2){
[INFO] [stdout] 130 +         for _ in 0..l/2 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:147:29
[INFO] [stdout]     |
[INFO] [stdout] 147 |                 acc[i+j] += (P1[i]*P2[j])
[INFO] [stdout]     |                             ^           ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 147 -                 acc[i+j] += (P1[i]*P2[j])
[INFO] [stdout] 147 +                 acc[i+j] += P1[i]*P2[j]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:214:24
[INFO] [stdout]     |
[INFO] [stdout] 214 |             let sign = ((a > 0) != (b > 0));
[INFO] [stdout]     |                        ^                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 214 -             let sign = ((a > 0) != (b > 0));
[INFO] [stdout] 214 +             let sign = (a > 0) != (b > 0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 195 |         c: todo!(),
[INFO] [stdout]     |            ------- any code following this expression is unreachable
[INFO] [stdout] 196 |         d: todo!(),
[INFO] [stdout]     |            ^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `todo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:209:27
[INFO] [stdout]     |
[INFO] [stdout] 208 |         phase_2_comm: todo!(),
[INFO] [stdout]     |                       ------- any code following this expression is unreachable
[INFO] [stdout] 209 |         d_bucketed_basis: todo!(),
[INFO] [stdout]     |                           ^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `todo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 | use ark_ff::{BigInteger, Field, PrimeField};
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]  --> src/msm_nonaffine.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rayon::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFn`
[INFO] [stdout]   --> src/utils.rs:20:36
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]   --> src/utils.rs:20:43
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]  --> src/protocol/bintree.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_std::iterable::Iterable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]  --> src/protocol/generic_gkr.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ark_std::iterable::Iterable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Zero`
[INFO] [stdout]  --> src/copoly.rs:9:33
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ark_ff::{Field, PrimeField, Zero};
[INFO] [stdout]   |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]  --> src/copoly.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ark_ff::{Field, PrimeField, Zero};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::hash::{Hash, Hasher};
[INFO] [stdout]   |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RngCore`
[INFO] [stdout]   --> src/polynomial/fragmented.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 | use ark_std::rand::{Rng, RngCore};
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ark_std::iterable::Iterable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndexedParallelIterator`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::iter::{IndexedParallelIterator, IntoParallelIterator, IntoParallelRefIterator, IntoParallelRefMutIterator, ParallelIterator};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_ff::{Field, PrimeField};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::copoly::Copolynomial`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::copoly::Copolynomial;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:24:43
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/dense_eq.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_std::iterable::Iterable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/dense_eq.rs:16:43
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFn`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/gkr.rs:6:36
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]   |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RngCore`
[INFO] [stdout]  --> src/cleanup/polys/vecvec.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ark_std::rand::{Rng, RngCore};
[INFO] [stdout]   |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/cleanup/polys/vecvec.rs:1:34
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::{Debug, Formatter, Write};
[INFO] [stdout]   |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GKRLayer`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/triangle_add.rs:7:44
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::cleanup::protocols::gkrs::gkr::{GKRLayer, SimpleGKR};
[INFO] [stdout]   |                                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::Zero`
[INFO] [stdout]   --> src/cleanup/polys/vecvec.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use num_traits::Zero;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `One`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:14:18
[INFO] [stdout]    |
[INFO] [stdout] 14 | use num_traits::{One, Zero};
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]   --> src/cleanup/polys/vecvec.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RngCore`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rand::{Rng, RngCore};
[INFO] [stdout]   |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::Zero`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use num_traits::Zero;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ark_ff::{Field, PrimeField};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `One`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | use num_traits::{One, Zero};
[INFO] [stdout]   |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Zero`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:8:23
[INFO] [stdout]   |
[INFO] [stdout] 8 | use num_traits::{One, Zero};
[INFO] [stdout]   |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/gkr_msm_simple.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn load(file: &mut File) -> Self {
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/gkr_msm_simple.rs:55:24
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn dump(&self, file: &mut File) {
[INFO] [stdout]    |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tmp`
[INFO] [stdout]    --> src/gkr_msm_simple.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |     let tmp = _points_table_poly.0.len().log_2();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_tmp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/sumcheck.rs:345:9
[INFO] [stdout]     |
[INFO] [stdout] 345 |         mut args: Self::Trace,
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `accum`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:434:17
[INFO] [stdout]     |
[INFO] [stdout] 434 |         let mut accum = vec![vec![F::zero(); combined_degree + 1]; mle_half];
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_accum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/sumcheck.rs:434:13
[INFO] [stdout]     |
[INFO] [stdout] 434 |         let mut accum = vec![vec![F::zero(); combined_degree + 1]; mle_half];
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]    --> src/protocol/triangle.rs:186:39
[INFO] [stdout]     |
[INFO] [stdout] 186 |             TriangleAddLayer::SplitAt(split, var_idx) => {
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]    --> src/protocol/triangle.rs:217:39
[INFO] [stdout]     |
[INFO] [stdout] 217 |             TriangleAddLayer::SplitAt(split, var_idx) => {
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proof`
[INFO] [stdout]    --> src/protocol/triangle.rs:239:34
[INFO] [stdout]     |
[INFO] [stdout] 239 |                     Some((claim, proof)) => Some((Self::ClaimsNew::Single(claim), Self::Proof::SplitAt))
[INFO] [stdout]     |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_proof`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/triangle.rs:332:71
[INFO] [stdout]     |
[INFO] [stdout] 332 | pub fn make_triangle_add_params<F: PrimeField + TwistedEdwardsConfig>(mut num_vars: usize, split_var_idx: usize) -> TriangleAddParams<F> {
[INFO] [stdout]     |                                                                       ----^^^^^^^^
[INFO] [stdout]     |                                                                       |
[INFO] [stdout]     |                                                                       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:181:36
[INFO] [stdout]     |
[INFO] [stdout] 181 |             BintreeAddLayer::Split(split) => {
[INFO] [stdout]     |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:212:36
[INFO] [stdout]     |
[INFO] [stdout] 212 |             BintreeAddLayer::Split(split) => {
[INFO] [stdout]     |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proof`
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:233:30
[INFO] [stdout]     |
[INFO] [stdout] 233 |                 Some((claim, proof)) => Some((Self::ClaimsNew::Single(claim), Self::Proof::Split))
[INFO] [stdout]     |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_proof`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `label`
[INFO] [stdout]   --> src/transcript.rs:54:34
[INFO] [stdout]    |
[INFO] [stdout] 54 |     fn append_message(&mut self, label: &'static [u8], msg: &[u8]) {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/transcript.rs:54:56
[INFO] [stdout]    |
[INFO] [stdout] 54 |     fn append_message(&mut self, label: &'static [u8], msg: &[u8]) {
[INFO] [stdout]    |                                                        ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `label`
[INFO] [stdout]   --> src/transcript.rs:57:48
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn append_point<G2: CurveGroup>(&mut self, label: &'static[u8], point: impl Into<G2::Affine>) {
[INFO] [stdout]    |                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `point`
[INFO] [stdout]   --> src/transcript.rs:57:69
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn append_point<G2: CurveGroup>(&mut self, label: &'static[u8], point: impl Into<G2::Affine>) {
[INFO] [stdout]    |                                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `label`
[INFO] [stdout]   --> src/transcript.rs:85:34
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn append_message(&mut self, label: &'static [u8], msg: &[u8]) {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/commitments/kzg.rs:99:17
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub fn load(file: &mut File) -> Self {
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]    --> src/commitments/kzg.rs:103:24
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn dump(&self, file: &mut File) {
[INFO] [stdout]     |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/commitments/knuckles.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn load(file: &mut File) -> Self {
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/commitments/knuckles.rs:91:24
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn dump(&self, file: &mut File) {
[INFO] [stdout]    |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dedup_consts_len`
[INFO] [stdout]    --> src/copoly.rs:499:13
[INFO] [stdout]     |
[INFO] [stdout] 499 |             dedup_consts_len,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: try ignoring the field: `dedup_consts_len: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shape`
[INFO] [stdout]    --> src/copoly.rs:757:30
[INFO] [stdout]     |
[INFO] [stdout] 757 |     fn take_shape(&mut self, shape: Arc<OnceLock<Shape>>) {
[INFO] [stdout]     |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `split_consts` is never read
[INFO] [stdout]    --> src/polynomial/fragmented.rs:537:17
[INFO] [stdout]     |
[INFO] [stdout] 537 |         let mut split_consts = 0;
[INFO] [stdout]     |                 ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/polynomial/fragmented.rs:615:13
[INFO] [stdout]     |
[INFO] [stdout] 615 |         let mut tgt = [&mut l_data, &mut r_data];
[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]    --> src/polynomial/fragmented.rs:697:13
[INFO] [stdout]     |
[INFO] [stdout] 697 |         let mut target_iter = target.fragments.iter();
[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]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:229:13
[INFO] [stdout]     |
[INFO] [stdout] 229 |         let mut sumcheckable = self.sumcheckable.take();
[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]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:232:18
[INFO] [stdout]     |
[INFO] [stdout] 232 |             Some(mut sumcheckable) => {
[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]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:315:13
[INFO] [stdout]     |
[INFO] [stdout] 315 |         let mut col_pad_results = self.func.exec(&inputs).collect_vec();
[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]   --> src/cleanup/protocols/gkrs/triangle_add.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |         let mut advices = builder::witness::build(
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `image`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let image = buckets_transposed
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_image`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `phase_1_comm`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     let phase_1_comm = PipMSMPhase1Comm {
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_phase_1_comm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commitment_log_multiplicity`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 145 |     commitment_log_multiplicity: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commitment_log_multiplicity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commitment_key`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:146:5
[INFO] [stdout]     |
[INFO] [stdout] 146 |     commitment_key: &KnucklesProvingKey<Ctx>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commitment_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_matrix_commitments`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:396:13
[INFO] [stdout]     |
[INFO] [stdout] 396 |         let num_matrix_commitments = y_size.div_ceil(comm_mul);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_matrix_commitments`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r_y`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:575:13
[INFO] [stdout]     |
[INFO] [stdout] 575 |         let r_y = r_y.to_vec();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_r_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r_d`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:856:13
[INFO] [stdout]     |
[INFO] [stdout] 856 |         let r_d = r_d.to_vec();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_r_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r_c`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:858:13
[INFO] [stdout]     |
[INFO] [stdout] 858 |         let r_c = r_c.to_vec();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_r_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d_logsize`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:861:13
[INFO] [stdout]     |
[INFO] [stdout] 861 |         let d_logsize = self.d_logsize;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_d_logsize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f_prod3`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:911:13
[INFO] [stdout]     |
[INFO] [stdout] 911 |         let f_prod3 = Prod3Fn::<F>::new();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_f_prod3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f_inv`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:914:13
[INFO] [stdout]     |
[INFO] [stdout] 914 |         let f_inv = AddInversesFn::<F>::new();
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_f_inv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:923:13
[INFO] [stdout]     |
[INFO] [stdout] 923 |         for i in 0 .. x_logsize + y_logsize {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transcript`
[INFO] [stdout]   --> src/cleanup/protocols/zero_check.rs:24:21
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn prove(&self, transcript: &mut Transcript, mut claims: Self::ClaimsBefore, advice: Self::ProverInput) -> (Self::ClaimsAfter, Self::...
[INFO] [stdout]    |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transcript`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `advice`
[INFO] [stdout]   --> src/cleanup/protocols/zero_check.rs:24:82
[INFO] [stdout]    |
[INFO] [stdout] 24 | ... claims: Self::ClaimsBefore, advice: Self::ProverInput) -> (Self::ClaimsAfter, Self::ProverOutput) {
[INFO] [stdout]    |                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_advice`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let mut pfs = PushForwardState::new(
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_msm`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:516:13
[INFO] [stdout]     |
[INFO] [stdout] 516 |         let expected_msm = BandersnatchConfig::msm(&points, &coefs).unwrap();
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_msm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cleanup/protocols/multiopen_reduction.rs:82:33
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let ((_, output_point), mut poly_evs) = generic_protocol_config.prove(transcript, so.claim, so);
[INFO] [stdout]    |                                 ----^^^^^^^^
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/cleanup/utils/algfn.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         for i in 0..n_outs {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `inputs` is never read
[INFO] [stdout]    --> src/cleanup/polys/dense.rs:128:17
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let mut inputs = polys.iter().map(|_| F::zero()).collect_vec();
[INFO] [stdout]     |                 ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cleanup/polys/dense.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut row_chunked_iterator = (0..iter_ins[0].len()).map(|_| {
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `inputs` is never read
[INFO] [stdout]    --> src/cleanup/polys/vecvec.rs:521:17
[INFO] [stdout]     |
[INFO] [stdout] 521 |         let mut inputs = inputs.clone();
[INFO] [stdout]     |                 ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lsum`
[INFO] [stdout]   --> src/n_n_o/n_n_sumcheck.rs:98:13
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let lsum: Vec<_> = lpolys.iter().map(|p| p.sum()).collect();
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_lsum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rsum`
[INFO] [stdout]   --> src/n_n_o/n_n_sumcheck.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |         let rsum: Vec<_> = rpolys.iter().map(|p| p.sum()).collect();
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_rsum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `log_len`
[INFO] [stdout]    --> src/n_n_o/polynomial_with_zeros.rs:354:19
[INFO] [stdout]     |
[INFO] [stdout] 354 |         let (len, log_len) = (self.evals[0].len, self.evals[0].log_len);
[INFO] [stdout]     |                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_log_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/n_n_o/polynomial_with_zeros.rs:383:28
[INFO] [stdout]     |
[INFO] [stdout] 383 |     pub fn evaluate(&self, r: &[F]) -> F
[INFO] [stdout]     |                            ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]    --> src/n_n_o/polynomial_with_zeros.rs:522:18
[INFO] [stdout]     |
[INFO] [stdout] 522 |             let (len, _log_len) = (self.evals[0].len, self.evals[0].log_len);
[INFO] [stdout]     |                  ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c1`
[INFO] [stdout]   --> src/n_n_o/cleanup/matrix_poly.rs:90:14
[INFO] [stdout]    |
[INFO] [stdout] 90 |     let (b1, c1) = a1.overflowing_add(x1);
[INFO] [stdout]    |              ^^ help: if this is intentional, prefix it with an underscore: `_c1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:111:13
[INFO] [stdout]     |
[INFO] [stdout] 111 |     let mut b = false;
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |     let mut b = false;
[INFO] [stdout]     |         ----^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p_o`
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:296:48
[INFO] [stdout]     |
[INFO] [stdout] 296 |         let (SinglePointClaims { point, evs }, p_o) = triple_prod.prove(transcript, SumClaim{sum: sum_claim}, (Arc::new(Pxy), Px, Py));
[INFO] [stdout]     |                                                ^^^ help: if this is intentional, prefix it with an underscore: `_p_o`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Px`
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:319:14
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |              ^^ help: if this is intentional, prefix it with an underscore: `_Px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Py`
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:319:18
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |                  ^^ help: if this is intentional, prefix it with an underscore: `_Py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:49:27
[INFO] [stdout]    |
[INFO] [stdout] 49 |         (0..v.len()).map(|i|{
[INFO] [stdout]    |                           ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `new_carry` is never read
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:230:21
[INFO] [stdout]     |
[INFO] [stdout] 230 |             let mut new_carry = false;
[INFO] [stdout]     |                     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `new_borrow` is never read
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:250:21
[INFO] [stdout]     |
[INFO] [stdout] 250 |             let mut new_borrow = false;
[INFO] [stdout]     |                     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bit_columns`, `point_column`, `gkr_proof`, and `output` are never read
[INFO] [stdout]   --> src/gkr_msm_simple.rs:74:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct MSMProof<G: CurveGroup> {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 74 |     bit_columns: Vec<G>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 75 |     point_column: G,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 76 |     gkr_proof: BintreeProof<G::ScalarField>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 77 |     output: Vec<G::ScalarField>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ev_folded` is never read
[INFO] [stdout]   --> src/protocol/sumcheck.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct SumcheckPolyMapProver<F: PrimeField> {
[INFO] [stdout]    |            --------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     ev_folded: Option<F>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mapping` and `SplitAt` are never constructed
[INFO] [stdout]   --> src/protocol/triangle.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub enum TriangleAddLayer<F: PrimeField> {
[INFO] [stdout]    |          ---------------- variants in this enum
[INFO] [stdout] 21 |     Mapping(PolynomialMapping<F>),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 22 |     SplitAt(usize, usize),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TriangleAddLayer` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new_split` and `new_pmap` are never used
[INFO] [stdout]   --> src/protocol/triangle.rs:59:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl<F: PrimeField> TriangleAddLayer<F> {
[INFO] [stdout]    | --------------------------------------- associated functions in this implementation
[INFO] [stdout] 59 |     pub fn new_split(num_polys: usize, var_idx: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn new_pmap(f: Box<dyn Fn(&[F]) -> Vec<F> + Send + Sync>, degree: usize, num_i: usize, num_o: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TriangleAddParams` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:268:10
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub type TriangleAddParams<F: PrimeField> = GenericGKRParams<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TriangleAddProtocol` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:269:10
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub type TriangleAddProtocol<F: PrimeField> = GenericGKRProtocol<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TriangleAddProver` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:270:10
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub type TriangleAddProver<F: PrimeField> = GenericGKRProver<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TriangleAddVerifier` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:271:10
[INFO] [stdout]     |
[INFO] [stdout] 271 | pub type TriangleAddVerifier<F: PrimeField> = GenericGKRVerifier<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `t1_l1` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:273:8
[INFO] [stdout]     |
[INFO] [stdout] 273 | pub fn t1_l1<F: Field + TwistedEdwardsConfig>(pts: &[F]) -> Vec<F> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `l1_at` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:288:8
[INFO] [stdout]     |
[INFO] [stdout] 288 | pub fn l1_at<F: Field + TwistedEdwardsConfig>(depth: usize, pts: &[F]) -> Vec<F> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `l2_at` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:299:8
[INFO] [stdout]     |
[INFO] [stdout] 299 | pub fn l2_at<F: Field + TwistedEdwardsConfig>(depth: usize, pts: &[F]) -> Vec<F> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `l3_at` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:309:8
[INFO] [stdout]     |
[INFO] [stdout] 309 | pub fn l3_at<F: Field + TwistedEdwardsConfig>(depth: usize, pts: &[F]) -> Vec<F> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `l1_i_at` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:319:8
[INFO] [stdout]     |
[INFO] [stdout] 319 | pub fn l1_i_at(depth: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `l2_i_at` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:323:8
[INFO] [stdout]     |
[INFO] [stdout] 323 | pub fn l2_i_at(depth: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `l3_i_at` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:327:8
[INFO] [stdout]     |
[INFO] [stdout] 327 | pub fn l3_i_at(depth: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_triangle_add_params` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:332:8
[INFO] [stdout]     |
[INFO] [stdout] 332 | pub fn make_triangle_add_params<F: PrimeField + TwistedEdwardsConfig>(mut num_vars: usize, split_var_idx: usize) -> TriangleAddParams<F> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mapping` and `Split` are never constructed
[INFO] [stdout]   --> src/protocol/generic_gkr.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum BintreeAddLayer<F: PrimeField> {
[INFO] [stdout]    |          --------------- variants in this enum
[INFO] [stdout] 16 |     Mapping(PolynomialMapping<F>),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 17 |     Split(usize),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BintreeAddLayer` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new_split` and `new_pmap` are never used
[INFO] [stdout]   --> src/protocol/generic_gkr.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 53 | impl<F: PrimeField> BintreeAddLayer<F> {
[INFO] [stdout]    | -------------------------------------- associated functions in this implementation
[INFO] [stdout] 54 |     pub fn new_split(num_polys: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub fn new_pmap(f: Box<dyn Fn(&[F]) -> Vec<F> + Send + Sync>, degree: usize, num_i: usize, num_o: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ComponentProof` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:284:11
[INFO] [stdout]     |
[INFO] [stdout] 284 | pub trait ComponentProof<F: PrimeField> {}
[INFO] [stdout]     |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ComponentProver` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:286:11
[INFO] [stdout]     |
[INFO] [stdout] 286 | pub trait ComponentProver<F: PrimeField> {}
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ComponentVerifier` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:288:11
[INFO] [stdout]     |
[INFO] [stdout] 288 | pub trait ComponentVerifier<F: PrimeField> {}
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:314:12
[INFO] [stdout]     |
[INFO] [stdout] 313 | impl<F: PrimeField, R: GKRComponentRegistry<F>> GenericGKRParams<F, R> {
[INFO] [stdout]     | ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] 314 |     pub fn new(layers: Vec<R::Layer>, num_vars: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `BintreeParams` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:551:10
[INFO] [stdout]     |
[INFO] [stdout] 551 | pub type BintreeParams<F: PrimeField> = GenericGKRParams<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `BintreeProtocol` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:553:10
[INFO] [stdout]     |
[INFO] [stdout] 553 | pub type BintreeProtocol<F: PrimeField> = GenericGKRProtocol<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `BintreeProver` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:554:10
[INFO] [stdout]     |
[INFO] [stdout] 554 | pub type BintreeProver<F: PrimeField> = GenericGKRProver<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `BintreeVerifier` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:555:10
[INFO] [stdout]     |
[INFO] [stdout] 555 | pub type BintreeVerifier<F: PrimeField> = GenericGKRVerifier<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `poly` is never read
[INFO] [stdout]  --> src/polynomial/format_helpers.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct RowFormatPoly<F: PrimeField> {
[INFO] [stdout]   |            ------------- field in this struct
[INFO] [stdout] 6 |     poly: FragmentedPoly<F>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `split_var` is never read
[INFO] [stdout]   --> src/cleanup/protocols/gkrs/triangle_add.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct TriangleAdd<F: PrimeField, Transcript: TProofTranscript2> {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 53 |     gkr: SimpleGKR<SinglePointClaims<F>, SplitVecVecMapGKRAdvice<F>, Transcript, TriangleAddWG<F>>,
[INFO] [stdout] 54 |     split_var: SplitIdx,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `multirow_vars`, `bucket_vars`, and `horizontal_vars` are never read
[INFO] [stdout]    --> src/cleanup/protocols/pippenger_ending.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub struct PippengerBucketed<F: PrimeField + TwistedEdwardsConfig, Transcript: TProofTranscript2> {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 103 |     pub multirow_vars: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 104 |     pub bucket_vars: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 105 |     pub horizontal_vars: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vecvec_domain` is never used
[INFO] [stdout]    --> src/cleanup/protocols/pippenger_ending.rs:161:8
[INFO] [stdout]     |
[INFO] [stdout] 161 | pub fn vecvec_domain<F: PrimeField>(input: &VecVecPolynomial<F>) -> VecVecPolynomial<F> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `gamma`, `folded_f`, and `degree` are never read
[INFO] [stdout]   --> src/n_n_o/n_n_sumcheck.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct NonNatOpen<FNat: PrimeField> {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     gamma: Option<FNat>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     folded_f: Option<Arc<dyn Fn(&[FNat]) -> FNat + Sync + Send>>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 32 |     degree: usize,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NonNatOpen` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `num_limbs_in_fe` is never read
[INFO] [stdout]   --> src/n_n_o/cleanup/non_native_evs.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct Eqpoly<F: Zero>{
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 43 |     pub evals: Vec<F>,
[INFO] [stdout] 44 |     num_limbs_in_fe: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Eqpoly` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `GKR_MSM` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = help: convert the identifier to snake case: `gkr_msm`
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/triangle.rs:268:31
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub type TriangleAddParams<F: PrimeField> = GenericGKRParams<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |                             --^^^^^^^^^^
[INFO] [stdout]     |                             | |
[INFO] [stdout]     |                             | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                             help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout]     = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/triangle.rs:269:33
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub type TriangleAddProtocol<F: PrimeField> = GenericGKRProtocol<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |                               --^^^^^^^^^^
[INFO] [stdout]     |                               | |
[INFO] [stdout]     |                               | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                               help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/triangle.rs:270:31
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub type TriangleAddProver<F: PrimeField> = GenericGKRProver<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |                             --^^^^^^^^^^
[INFO] [stdout]     |                             | |
[INFO] [stdout]     |                             | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                             help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/triangle.rs:271:33
[INFO] [stdout]     |
[INFO] [stdout] 271 | pub type TriangleAddVerifier<F: PrimeField> = GenericGKRVerifier<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |                               --^^^^^^^^^^
[INFO] [stdout]     |                               | |
[INFO] [stdout]     |                               | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                               help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:551:27
[INFO] [stdout]     |
[INFO] [stdout] 551 | pub type BintreeParams<F: PrimeField> = GenericGKRParams<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |                         --^^^^^^^^^^
[INFO] [stdout]     |                         | |
[INFO] [stdout]     |                         | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                         help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:553:29
[INFO] [stdout]     |
[INFO] [stdout] 553 | pub type BintreeProtocol<F: PrimeField> = GenericGKRProtocol<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |                           --^^^^^^^^^^
[INFO] [stdout]     |                           | |
[INFO] [stdout]     |                           | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                           help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:554:27
[INFO] [stdout]     |
[INFO] [stdout] 554 | pub type BintreeProver<F: PrimeField> = GenericGKRProver<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |                         --^^^^^^^^^^
[INFO] [stdout]     |                         | |
[INFO] [stdout]     |                         | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                         help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:555:29
[INFO] [stdout]     |
[INFO] [stdout] 555 | pub type BintreeVerifier<F: PrimeField> = GenericGKRVerifier<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |                           --^^^^^^^^^^
[INFO] [stdout]     |                           | |
[INFO] [stdout]     |                           | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                           help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `N` should have a snake case name
[INFO] [stdout]    --> src/polynomial/fragmented.rs:528:13
[INFO] [stdout]     |
[INFO] [stdout] 528 |         let N = self.len();
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `M` should have a snake case name
[INFO] [stdout]    --> src/polynomial/fragmented.rs:560:21
[INFO] [stdout]     |
[INFO] [stdout] 560 |                 let M = source.fragments[0].len;
[INFO] [stdout]     |                     ^ help: convert the identifier to snake case: `m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Pxy` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/matrix_poly.rs:97:40
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn make_prover_response<F: PrimeField>(Pxy: &[u64], Px: &[u64], Py: &[u64], num_limbs: usize) -> Vec<F> 
[INFO] [stdout]    |                                        ^^^ help: convert the identifier to snake case: `pxy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Px` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/matrix_poly.rs:97:53
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn make_prover_response<F: PrimeField>(Pxy: &[u64], Px: &[u64], Py: &[u64], num_limbs: usize) -> Vec<F> 
[INFO] [stdout]    |                                                     ^^ help: convert the identifier to snake case: `px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Py` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/matrix_poly.rs:97:65
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn make_prover_response<F: PrimeField>(Pxy: &[u64], Px: &[u64], Py: &[u64], num_limbs: usize) -> Vec<F> 
[INFO] [stdout]    |                                                                 ^^ help: convert the identifier to snake case: `py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P1` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 |         let P1 = acc[k*num_limbs .. k*num_limbs + num_limbs].iter().map(|limbs| limbs_to_fe(limbs)).collect_vec();
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `p1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P2` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:125:13
[INFO] [stdout]     |
[INFO] [stdout] 125 |         let P2 = Py[k*num_limbs.. k*num_limbs + num_limbs].iter().map(|limb| F::from(*limb)).collect_vec();
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `p2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Pxy` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:272:13
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let Pxy = &native_repr.values;
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `pxy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Px` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:277:14
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |              ^^ help: convert the identifier to snake case: `px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Py` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:277:18
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |                  ^^ help: convert the identifier to snake case: `py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Pxy` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:292:13
[INFO] [stdout]     |
[INFO] [stdout] 292 |         let Pxy = Pxy.iter().map(|x| F::from(*x)).collect();
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `pxy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Px` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |         let Px = Px.iter().map(|x| F::from(*x)).collect();
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Py` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:294:13
[INFO] [stdout]     |
[INFO] [stdout] 294 |         let Py = Py.iter().map(|x| F::from(*x)).collect();
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Px` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:319:14
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |              ^^ help: convert the identifier to snake case: `px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Py` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:319:18
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |                  ^^ help: convert the identifier to snake case: `py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:12:43
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn coeffs_to_evals_univar<F1, F2>(P: &[F1], degree: usize) -> Vec<F2>
[INFO] [stdout]    |                                           ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:44:44
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub fn coeffs_to_evals_with_precompute(P: &[i128], desired_len: usize) -> Vec<i128>{
[INFO] [stdout]    |                                            ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:74:33
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn extend_evals<F1, F2>(P: &[F1], degree: usize) -> F2
[INFO] [stdout]    |                                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:94:43
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn extend_evals_backwards<F1, F2>(P: &[F1], degree: usize) -> F2
[INFO] [stdout]    |                                           ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:113:33
[INFO] [stdout]     |
[INFO] [stdout] 113 |     pub fn extend_evals_by_l<F>(P: &mut Vec<F>, degree: usize, l: usize)
[INFO] [stdout]     |                                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:125:44
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub fn extend_evals_by_2l_symmetric<F>(P: &[F], degree: usize, l: usize) -> Vec<F>
[INFO] [stdout]     |                                            ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:129:17
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let mut P: Vec<_> = P.to_vec();
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P1` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:140:41
[INFO] [stdout]     |
[INFO] [stdout] 140 |     pub fn multiply_two_polys_coeffs<F>(P1: &[F], P2:&[F]) -> Vec<F>
[INFO] [stdout]     |                                         ^^ help: convert the identifier to snake case: `p1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P2` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:140:51
[INFO] [stdout]     |
[INFO] [stdout] 140 |     pub fn multiply_two_polys_coeffs<F>(P1: &[F], P2:&[F]) -> Vec<F>
[INFO] [stdout]     |                                                   ^^ help: convert the identifier to snake case: `p2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `big_num_to_bits_F` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:334:12
[INFO] [stdout]     |
[INFO] [stdout] 334 |     pub fn big_num_to_bits_F<F: PrimeField, const N: usize>(x: BigInt<N>) -> Vec<F>
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `big_num_to_bits_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 40.02s
[INFO] running `Command { std: "docker" "inspect" "44afbfb05668ee93ea26f799a2b6462e1a95c37eb2a639fb2b532e7b8c763d29", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "44afbfb05668ee93ea26f799a2b6462e1a95c37eb2a639fb2b532e7b8c763d29", kill_on_drop: false }`
[INFO] [stdout] 44afbfb05668ee93ea26f799a2b6462e1a95c37eb2a639fb2b532e7b8c763d29
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+334963c956d25708feab489a3816ae63f639355d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b0ba1f338e2612215ff1926401d3a2e7ad87119721dd9b03cbea9e751500d23e
[INFO] running `Command { std: "docker" "start" "-a" "b0ba1f338e2612215ff1926401d3a2e7ad87119721dd9b03cbea9e751500d23e", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling semver v1.0.23
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling hashbrown v0.15.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling winnow v0.6.20
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling toml_datetime v0.6.8
[INFO] [stderr]    Compiling serde_json v1.0.128
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling indexmap v2.6.0
[INFO] [stderr]    Compiling csv-core v0.1.11
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling csv v1.3.0
[INFO] [stderr]    Compiling rstest_macros v0.23.0
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling test-case-core v3.3.1
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling toml_edit v0.22.22
[INFO] [stderr]    Compiling criterion v0.3.6
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]    Compiling relative-path v1.9.3
[INFO] [stderr]    Compiling test-case-macros v3.3.1
[INFO] [stderr]    Compiling regex-automata v0.4.8
[INFO] [stderr]    Compiling futures-timer v3.0.3
[INFO] [stderr]    Compiling test-case v3.3.1
[INFO] [stderr]    Compiling proc-macro-crate v3.2.0
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling liblasso v0.4.0 (https://github.com/rebenkoy/liblasso.git?branch=master#925a7a74)
[INFO] [stderr]    Compiling regex v1.11.0
[INFO] [stderr]    Compiling GKR-MSM v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `InterOp`
[INFO] [stdout]   --> src/gkr_msm_simple.rs:23:53
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::polynomial::fragmented::{FragmentedPoly, InterOp, Shape};
[INFO] [stdout]    |                                                     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Add`, `Index`, `Mul`, and `Sub`
[INFO] [stdout]  --> src/utils.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::ops::{Add, Index, Mul, Sub};
[INFO] [stdout]   |                ^^^  ^^^^^  ^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::utils::math::Math`
[INFO] [stdout]   --> src/utils.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use liblasso::utils::math::Math;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::PrimInt`
[INFO] [stdout]   --> src/utils.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use num_traits::PrimInt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/utils.rs:283:20
[INFO] [stdout]     |
[INFO] [stdout] 283 |             acc += (_multiplier - multiplier);         
[INFO] [stdout]     |                    ^                        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 283 -             acc += (_multiplier - multiplier);         
[INFO] [stdout] 283 +             acc += _multiplier - multiplier;         
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/utils.rs:285:27
[INFO] [stdout]     |
[INFO] [stdout] 285 |             multiplier *= (F::one() - pt[i]);
[INFO] [stdout]     |                           ^                ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 285 -             multiplier *= (F::one() - pt[i]);
[INFO] [stdout] 285 +             multiplier *= F::one() - pt[i];
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::OnceLock`
[INFO] [stdout]  --> src/protocol/bintree.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::OnceLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Itertools`
[INFO] [stdout]  --> src/protocol/bintree.rs:6:25
[INFO] [stdout]   |
[INFO] [stdout] 6 | use itertools::{Either, Itertools};
[INFO] [stdout]   |                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `InterOp`
[INFO] [stdout]   --> src/protocol/bintree.rs:11:53
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::polynomial::fragmented::{FragmentedPoly, InterOp};
[INFO] [stdout]    |                                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]  --> src/protocol/sumcheck.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_ff::{Field, PrimeField};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `multicore`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:435:15
[INFO] [stdout]     |
[INFO] [stdout] 435 |         #[cfg(feature = "multicore")]
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `default`, `memprof`, `parallel`, and `prof`
[INFO] [stdout]     = help: consider adding `multicore` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `multicore`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:438:19
[INFO] [stdout]     |
[INFO] [stdout] 438 |         #[cfg(not(feature = "multicore"))]
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `default`, `memprof`, `parallel`, and `prof`
[INFO] [stdout]     = help: consider adding `multicore` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `multicore`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:492:15
[INFO] [stdout]     |
[INFO] [stdout] 492 |         #[cfg(feature = "multicore")]
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `default`, `memprof`, `parallel`, and `prof`
[INFO] [stdout]     = help: consider adding `multicore` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `multicore`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:503:19
[INFO] [stdout]     |
[INFO] [stdout] 503 |         #[cfg(not(feature = "multicore"))]
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `default`, `memprof`, `parallel`, and `prof`
[INFO] [stdout]     = help: consider adding `multicore` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/protocol/split.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fix_var_bot`
[INFO] [stdout]  --> src/protocol/split.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::utils::{fix_var_bot, fix_var_top};
[INFO] [stdout]   |                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/protocol/triangle.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::OnceLock`
[INFO] [stdout]  --> src/protocol/triangle.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::OnceLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EdwardsProjective`
[INFO] [stdout]  --> src/protocol/triangle.rs:5:40
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_ed_on_bls12_381_bandersnatch::{EdwardsProjective};
[INFO] [stdout]   |                                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SplitProver`, `SplitVerifier`, and `Split`
[INFO] [stdout]   --> src/protocol/triangle.rs:12:289
[INFO] [stdout]    |
[INFO] [stdout] 12 | ..., SumcheckPolyMapVerifier, to_multieval}, split::{Split, SplitProver, SplitVerifier}}, transcript::{Challenge, TranscriptReceiver}};
[INFO] [stdout]    |                                                      ^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `InterOp`
[INFO] [stdout]   --> src/protocol/triangle.rs:14:53
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::polynomial::fragmented::{FragmentedPoly, InterOp};
[INFO] [stdout]    |                                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `fix_var_bot` and `fix_var_top`
[INFO] [stdout]  --> src/protocol/split_at.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::utils::{fix_var_bot, fix_var_top};
[INFO] [stdout]   |                    ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Pointer`
[INFO] [stdout]  --> src/protocol/generic_gkr.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::{Debug, Formatter, Pointer};
[INFO] [stdout]   |                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::OnceLock`
[INFO] [stdout]  --> src/protocol/generic_gkr.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::OnceLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Either` and `Itertools`
[INFO] [stdout]  --> src/protocol/generic_gkr.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use itertools::{Either, Itertools};
[INFO] [stdout]   |                 ^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `InterOp`
[INFO] [stdout]   --> src/protocol/generic_gkr.rs:12:53
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::polynomial::fragmented::{FragmentedPoly, InterOp};
[INFO] [stdout]    |                                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::VecDeque` and `process::Output`
[INFO] [stdout]  --> src/copoly.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{cmp::min, collections::VecDeque, mem::{transmute, MaybeUninit}, process::Output, sync::{Arc, OnceLock}, vec};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^^^^^^                                 ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::once`
[INFO] [stdout]  --> src/copoly.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::iter::once;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `repeat_n`
[INFO] [stdout]   --> src/copoly.rs:10:28
[INFO] [stdout]    |
[INFO] [stdout] 10 | use itertools::{Itertools, repeat_n};
[INFO] [stdout]    |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::poly::dense_mlpoly::DensePolynomial`
[INFO] [stdout]   --> src/copoly.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use liblasso::poly::dense_mlpoly::DensePolynomial;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::poly::eq_poly::EqPolynomial`
[INFO] [stdout]   --> src/copoly.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use liblasso::poly::eq_poly::EqPolynomial;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FragmentedPoly`
[INFO] [stdout]   --> src/copoly.rs:15:64
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::polynomial::fragmented::{Fragment, FragmentContent, FragmentedPoly, Shape};
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Consts` and `Data`
[INFO] [stdout]   --> src/copoly.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::polynomial::fragmented::FragmentContent::{Consts, Data};
[INFO] [stdout]    |                                                      ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/copoly.rs:206:31
[INFO] [stdout]     |
[INFO] [stdout] 206 |                 let is_leaf = (depth == total_logsize - (query.logsize as usize));
[INFO] [stdout]     |                               ^                                                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 206 -                 let is_leaf = (depth == total_logsize - (query.logsize as usize));
[INFO] [stdout] 206 +                 let is_leaf = depth == total_logsize - (query.logsize as usize);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/copoly.rs:690:59
[INFO] [stdout]     |
[INFO] [stdout] 690 |                 .map(|(a, b)| { *b = point[i] * *a; *a *= (F::one() - point[i]) })
[INFO] [stdout]     |                                                           ^                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 690 -                 .map(|(a, b)| { *b = point[i] * *a; *a *= (F::one() - point[i]) })
[INFO] [stdout] 690 +                 .map(|(a, b)| { *b = point[i] * *a; *a *= F::one() - point[i] })
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::Once`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::iter::Once;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::MaybeUninit`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::mem::MaybeUninit;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndexMut`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::{Add, AddAssign, Index, IndexMut, Mul, MulAssign, Sub, SubAssign};
[INFO] [stdout]   |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::bn::TwistType::D`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ark_ec::bn::TwistType::D;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::plumbing::UnindexedConsumer`
[INFO] [stdout]   --> src/polynomial/fragmented.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use rayon::iter::plumbing::UnindexedConsumer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/polynomial/format_helpers.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 |         if (shape.fragments.len() > 2 || shape.fragments.len() == 0) {
[INFO] [stdout]    |            ^                                                       ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 17 -         if (shape.fragments.len() > 2 || shape.fragments.len() == 0) {
[INFO] [stdout] 17 +         if shape.fragments.len() > 2 || shape.fragments.len() == 0 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BigInteger`
[INFO] [stdout]  --> src/cleanup/proof_transcript.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_ff::{BigInteger, PrimeField};
[INFO] [stdout]   |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/cleanup/proof_transcript.rs:42:24
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let bytesize = ((bitsize + 7) / 8);
[INFO] [stdout]    |                        ^                 ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 42 -         let bytesize = ((bitsize + 7) / 8);
[INFO] [stdout] 42 +         let bytesize = (bitsize + 7) / 8;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsSharedMutPtr`, `UnsafeIndexRawMut`, and `UnsafeIndexRaw`
[INFO] [stdout]  --> src/cleanup/protocols/sumcheck.rs:3:29
[INFO] [stdout]   |
[INFO] [stdout] 3 | use hashcaster::ptr_utils::{AsSharedMutPtr, UnsafeIndexRaw, UnsafeIndexRawMut};
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eq_poly::EqPolynomial`
[INFO] [stdout]  --> src/cleanup/protocols/sumcheck.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use liblasso::poly::{eq_poly::EqPolynomial, unipoly::UniPoly};
[INFO] [stdout]   |                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::AddAssign`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::ops::AddAssign;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_bls12_381::Fr`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_bls12_381::Fr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::utils::math::Math`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use liblasso::utils::math::Math;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntoParallelIterator` and `IntoParallelRefIterator`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:10:44
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::iter::{IndexedParallelIterator, IntoParallelIterator, IntoParallelRefIterator, IntoParallelRefMutIterator, ParallelIterator};
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ProtocolProver`, `ProtocolVerifier`, and `Protocol`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:14:33
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::protocol::protocol::{Protocol, ProtocolProver, ProtocolVerifier};
[INFO] [stdout]    |                                 ^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eq_poly_sequence_last`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:23:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::utils::{eq_eval, eq_poly_sequence_from_multiplier_last, eq_poly_sequence_last, make_gamma_pows, zip_with_gamma};
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::protocols::gkrs::gkr::GKRLayer`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/dense_eq.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::cleanup::protocols::gkrs::gkr::GKRLayer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EqWrapper` and `GammaWrapper`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/dense_eq.rs:13:43
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::cleanup::protocols::sumcheck::{EqWrapper, FoldToSumcheckable, GammaWrapper, GenericSumcheckProtocol, SinglePointClaims};
[INFO] [stdout]    |                                           ^^^^^^^^^                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eq_poly_sequence_last`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/dense_eq.rs:15:47
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::utils::{eq_eval, eq_poly_sequence, eq_poly_sequence_last, make_gamma_pows, zip_with_gamma};
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AlgFnSO` and `AlgFn`
[INFO] [stdout]   --> src/cleanup/protocols/splits.rs:10:36
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO, IdAlgFn};
[INFO] [stdout]    |                                    ^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/gkr.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ark_ff::PrimeField;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/gkr.rs:6:43
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]   |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/bintree_add.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/bintree_add.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]   --> src/cleanup/protocols/gkrs/bintree_add.rs:18:43
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::polys::common::MapSplit`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/triangle_add.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::cleanup::polys::common::MapSplit;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cmp::min` and `iter::repeat_n`
[INFO] [stdout]  --> src/cleanup/protocols/pushforward/pushforward.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{cmp::min, iter::repeat_n, marker::PhantomData};
[INFO] [stdout]   |           ^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::CurveGroup`
[INFO] [stdout]  --> src/cleanup/protocols/pushforward/pushforward.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_ec::CurveGroup;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::log2`
[INFO] [stdout]  --> src/cleanup/protocols/pushforward/pushforward.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ark_std::log2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsSharedMutPtr` and `UnsafeIndexRawMut`
[INFO] [stdout]  --> src/cleanup/protocols/pushforward/pushforward.rs:8:29
[INFO] [stdout]   |
[INFO] [stdout] 8 | use hashcaster::ptr_utils::{AsSharedMutPtr, UnsafeIndexRawMut};
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `eq_poly::EqPolynomial` and `unipoly::UniPoly`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | use liblasso::poly::{eq_poly::EqPolynomial, unipoly::UniPoly};
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `current_num_threads` and `repeatn`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rayon::{current_num_threads, iter::{repeatn, IndexedParallelIterator, IntoParallelIterator, IntoParallelRefIterator, ParallelIterator...
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::VariableBaseMSM`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use ark_ec::VariableBaseMSM;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::msm_nonaffine`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::msm_nonaffine;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PointClaim`, `eq_eval`, and `eq_sum`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:21:256
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...e, PointClaim}, verifier_polys::{EqPoly, EqTruncPoly, SelectorPoly, VerifierPoly}}, utils::{algfn::AlgFnUtils, arith::evaluate_poly}}, cleanup::polys::vecvec::VecVecPolynomial, utils::{eq_eval, eq_sum, m...
[INFO] [stdout]    |       ^^^^^^^^^^                                                                                                                                                                            ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Densify`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:22:37
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::cleanup::polys::common::{Densify, EvaluateAtPoint};
[INFO] [stdout]    |                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SumClaim` and `SumcheckVerifierConfig`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:23:113
[INFO] [stdout]    |
[INFO] [stdout] 23 | ..._univar, DenseSumcheckObjectSO, SinglePointClaims, SumClaim, SumcheckVerifierConfig}, sumchecks::vecvec_eq::Sumcheckable};
[INFO] [stdout]    |                                                       ^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::TwistedEdwardsConfig`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::utils::TwistedEdwardsConfig;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsSharedMUMutPtr`, `UninitArr`, and `UnsafeIndexRawMut`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/logup_mainphase.rs:21:29
[INFO] [stdout]    |
[INFO] [stdout] 21 | use hashcaster::ptr_utils::{AsSharedMUMutPtr, UninitArr, UnsafeIndexRawMut};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::IntoParallelIterator`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/logup_mainphase.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use rayon::iter::IntoParallelIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `protocols::sumcheck::PointClaim`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/logup_mainphase.rs:27:81
[INFO] [stdout]    |
[INFO] [stdout] 27 | use crate::cleanup::{proof_transcript::TProofTranscript2, protocol2::Protocol2, protocols::sumcheck::PointClaim, utils::algfn::AlgFnUtils};
[INFO] [stdout]    |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/logup_mainphase.rs:28:43
[INFO] [stdout]    |
[INFO] [stdout] 28 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CurveConfig` and `Group`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:1:14
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ark_ec::{CurveConfig, Group};
[INFO] [stdout]   |              ^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Affine` and `Projective`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:2:31
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ark_ec::twisted_edwards::{Affine, Projective};
[INFO] [stdout]   |                               ^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ed_on_bls12_381_bandersnatch::BandersnatchConfig`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ark_ed_on_bls12_381_bandersnatch::BandersnatchConfig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::UniformRand`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_std::UniformRand;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `repeat_n`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use itertools::{repeat_n, Itertools};
[INFO] [stdout]   |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Densify`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:9:37
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::cleanup::polys::common::{Densify, MapSplit};
[INFO] [stdout]   |                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ProofTranscript2`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger_ending.rs:10:40
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::cleanup::proof_transcript::{ProofTranscript2, TProofTranscript2};
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GKRLayer` and `SimpleGKR`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger_ending.rs:13:44
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::cleanup::protocols::gkrs::gkr::{GKRLayer, SimpleGKR};
[INFO] [stdout]    |                                            ^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::utils::arith::evaluate_poly`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger_ending.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::cleanup::utils::arith::evaluate_poly;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `build_points`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger_ending.rs:22:20
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::utils::{build_points, TwistedEdwardsConfig};
[INFO] [stdout]    |                    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DenseSumcheckObjectSO`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger.rs:6:54
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::cleanup::protocols::sumcheck::{gamma_rlc, DenseSumcheckObjectSO, PointClaim, SinglePointClaims};
[INFO] [stdout]   |                                                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ed_on_bls12_381_bandersnatch::BandersnatchConfig`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use ark_ed_on_bls12_381_bandersnatch::BandersnatchConfig;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::log2`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use ark_std::log2;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use itertools::Itertools;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `One`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:17:18
[INFO] [stdout]    |
[INFO] [stdout] 17 | use num_traits::{One, Zero};
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `repeat`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:19:17
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::iter::{repeat, repeat_n};
[INFO] [stdout]    |                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Index`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use std::ops::Index;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `event` and `info`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:22:15
[INFO] [stdout]    |
[INFO] [stdout] 22 | use tracing::{event, info, info_span, instrument};
[INFO] [stdout]    |               ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::protocols::sumchecks::dense_eq::DenseDeg2Sumcheck`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::cleanup::protocols::sumchecks::dense_eq::DenseDeg2Sumcheck;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AlgFnSO` and `AlgFn`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:25:36
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                    ^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::utils::arith::evaluate_poly`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use crate::cleanup::utils::arith::evaluate_poly;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::pairing::Pairing`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:421:9
[INFO] [stdout]     |
[INFO] [stdout] 421 |     use ark_ec::pairing::Pairing;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Display`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:428:9
[INFO] [stdout]     |
[INFO] [stdout] 428 |     use std::fmt::Display;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BigInt`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:429:18
[INFO] [stdout]     |
[INFO] [stdout] 429 |     use ark_ff::{BigInt, BigInteger256};
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::Pow`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:430:9
[INFO] [stdout]     |
[INFO] [stdout] 430 |     use num_traits::Pow;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Level` and `span`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:431:31
[INFO] [stdout]     |
[INFO] [stdout] 431 |     use tracing::{instrument, span, Level};
[INFO] [stdout]     |                               ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::polys::common::Densify`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:432:9
[INFO] [stdout]     |
[INFO] [stdout] 432 |     use crate::cleanup::polys::common::Densify;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DenseSumcheckObject` and `FoldToSumcheckable`
[INFO] [stdout]  --> src/cleanup/protocols/multiopen_reduction.rs:7:54
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::cleanup::protocols::sumcheck::{gamma_rlc, DenseSumcheckObject, DenseSumcheckObjectSO, FoldToSumcheckable, GenericSumcheckProto...
[INFO] [stdout]   |                                                      ^^^^^^^^^^^^^^^^^^^                         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eq_poly_sequence_last`
[INFO] [stdout]   --> src/cleanup/protocols/multiopen_reduction.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::utils::{eq_poly_sequence_last, make_gamma_pows};
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_bls12_381::Fr`
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |     use ark_bls12_381::Fr;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `affine_twisted_edwards_add_l1` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:151:17
[INFO] [stdout]     |
[INFO] [stdout] 151 |     make_algfn!(affine_twisted_edwards_add_l1(2, 4, 3));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AffineTwistedEdwardsAddL1`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `affine_twisted_edwards_add_l2` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:152:17
[INFO] [stdout]     |
[INFO] [stdout] 152 |     make_algfn!(affine_twisted_edwards_add_l2(2, 3, 3));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AffineTwistedEdwardsAddL2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `affine_twisted_edwards_add_l3` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:153:17
[INFO] [stdout]     |
[INFO] [stdout] 153 |     make_algfn!(affine_twisted_edwards_add_l3(2, 3, 3));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AffineTwistedEdwardsAddL3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `twisted_edwards_add_l1` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:154:17
[INFO] [stdout]     |
[INFO] [stdout] 154 |     make_algfn!(twisted_edwards_add_l1(2, 6, 4));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `TwistedEdwardsAddL1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `twisted_edwards_add_l2` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:155:17
[INFO] [stdout]     |
[INFO] [stdout] 155 |     make_algfn!(twisted_edwards_add_l2(2, 4, 4));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `TwistedEdwardsAddL2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `twisted_edwards_add_l3` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:156:17
[INFO] [stdout]     |
[INFO] [stdout] 156 |     make_algfn!(twisted_edwards_add_l3(2, 4, 3));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `TwistedEdwardsAddL3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `triangle_twisted_edwards_add_l1` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:157:17
[INFO] [stdout]     |
[INFO] [stdout] 157 |     make_algfn!(triangle_twisted_edwards_add_l1(2, 12, 12)); 
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `TriangleTwistedEdwardsAddL1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsSharedMUConstPtr`
[INFO] [stdout]  --> src/cleanup/utils/algfn.rs:6:29
[INFO] [stdout]   |
[INFO] [stdout] 6 | use hashcaster::ptr_utils::{AsSharedMUConstPtr, AsSharedMUMutPtr, AsSharedMutPtr, UninitArr, UnsafeIndexRawMut};
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::poly::eq_poly::EqPolynomial`
[INFO] [stdout]  --> src/cleanup/utils/arith.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use liblasso::poly::eq_poly::EqPolynomial;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::current_num_threads`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rayon::current_num_threads;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoParallelIterator`
[INFO] [stdout]   --> src/cleanup/polys/dense.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::iter::{IntoParallelIterator, ParallelIterator};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParallelSliceMut`
[INFO] [stdout]   --> src/cleanup/polys/dense.rs:12:37
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rayon::prelude::{ParallelSlice, ParallelSliceMut};
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AddAssign`, `Add`, `Mul`, `SubAssign`, and `Sub`
[INFO] [stdout]  --> src/cleanup/polys/vecvec.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ops::{Add, AddAssign, Mul, Range, Sub, SubAssign};
[INFO] [stdout]   |                ^^^  ^^^^^^^^^  ^^^         ^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/cleanup/polys/vecvec.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::copoly::PrefixFold`
[INFO] [stdout]   --> src/cleanup/polys/vecvec.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::copoly::PrefixFold;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/polynomial_with_zeros.rs:93:16
[INFO] [stdout]    |
[INFO] [stdout] 93 |         *self*=(F::one() - *f);
[INFO] [stdout]    |                ^             ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 93 -         *self*=(F::one() - *f);
[INFO] [stdout] 93 +         *self*=F::one() - *f;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/polynomial_with_zeros.rs:361:21
[INFO] [stdout]     |
[INFO] [stdout] 361 |                 *l*=(F::one() - *f);
[INFO] [stdout]     |                     ^             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 361 -                 *l*=(F::one() - *f);
[INFO] [stdout] 361 +                 *l*=F::one() - *f;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:112:14
[INFO] [stdout]     |
[INFO] [stdout] 112 |     for i in (0..n){
[INFO] [stdout]     |              ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 112 -     for i in (0..n){
[INFO] [stdout] 112 +     for i in 0..n {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:113:18
[INFO] [stdout]     |
[INFO] [stdout] 113 |         for j in (0..num_limbs){
[INFO] [stdout]     |                  ^            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 113 -         for j in (0..num_limbs){
[INFO] [stdout] 113 +         for j in 0..num_limbs {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:114:22
[INFO] [stdout]     |
[INFO] [stdout] 114 |             for k in (0..m){
[INFO] [stdout]     |                      ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 114 -             for k in (0..m){
[INFO] [stdout] 114 +             for k in 0..m {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:66:20
[INFO] [stdout]    |
[INFO] [stdout] 66 |             res *= (n-i);
[INFO] [stdout]    |                    ^   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 66 -             res *= (n-i);
[INFO] [stdout] 66 +             res *= n-i;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:67:20
[INFO] [stdout]    |
[INFO] [stdout] 67 |             res /= (i+1); 
[INFO] [stdout]    |                    ^   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 67 -             res /= (i+1); 
[INFO] [stdout] 67 +             res /= i+1; 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:81:20
[INFO] [stdout]    |
[INFO] [stdout] 81 |             res += (F2::from(P[P.len() - i - 1]) * F2::from(binomial(degree+1, i + 1)));
[INFO] [stdout]    |                    ^                                                                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 81 -             res += (F2::from(P[P.len() - i - 1]) * F2::from(binomial(degree+1, i + 1)));
[INFO] [stdout] 81 +             res += F2::from(P[P.len() - i - 1]) * F2::from(binomial(degree+1, i + 1));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:82:20
[INFO] [stdout]    |
[INFO] [stdout] 82 |             res -= (F2::from(P[P.len() - i - 2]) * F2::from(binomial(degree+1, i + 2)));
[INFO] [stdout]    |                    ^                                                                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 82 -             res -= (F2::from(P[P.len() - i - 2]) * F2::from(binomial(degree+1, i + 2)));
[INFO] [stdout] 82 +             res -= F2::from(P[P.len() - i - 2]) * F2::from(binomial(degree+1, i + 2));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:85:20
[INFO] [stdout]    |
[INFO] [stdout] 85 |             res += (F2::from(P[P.len() - degree - 1]));
[INFO] [stdout]    |                    ^                                 ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 85 -             res += (F2::from(P[P.len() - degree - 1]));
[INFO] [stdout] 85 +             res += F2::from(P[P.len() - degree - 1]);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:100:20
[INFO] [stdout]     |
[INFO] [stdout] 100 |             res += (F2::from(P[i]) * F2::from(binomial(degree+1, i+1)));
[INFO] [stdout]     |                    ^                                                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 100 -             res += (F2::from(P[i]) * F2::from(binomial(degree+1, i+1)));
[INFO] [stdout] 100 +             res += F2::from(P[i]) * F2::from(binomial(degree+1, i+1));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:101:20
[INFO] [stdout]     |
[INFO] [stdout] 101 |             res -= (F2::from(P[i+1]) * F2::from(binomial(degree+1, i + 2)));
[INFO] [stdout]     |                    ^                                                      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 101 -             res -= (F2::from(P[i+1]) * F2::from(binomial(degree+1, i + 2)));
[INFO] [stdout] 101 +             res -= F2::from(P[i+1]) * F2::from(binomial(degree+1, i + 2));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:105:20
[INFO] [stdout]     |
[INFO] [stdout] 105 |             res += (F2::from(P[degree]));
[INFO] [stdout]     |                    ^                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 105 -             res += (F2::from(P[degree]));
[INFO] [stdout] 105 +             res += F2::from(P[degree]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:118:18
[INFO] [stdout]     |
[INFO] [stdout] 118 |         for _ in (0..l){
[INFO] [stdout]     |                  ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 118 -         for _ in (0..l){
[INFO] [stdout] 118 +         for _ in 0..l {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:130:18
[INFO] [stdout]     |
[INFO] [stdout] 130 |         for _ in (0..l/2){
[INFO] [stdout]     |                  ^      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 130 -         for _ in (0..l/2){
[INFO] [stdout] 130 +         for _ in 0..l/2 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:147:29
[INFO] [stdout]     |
[INFO] [stdout] 147 |                 acc[i+j] += (P1[i]*P2[j])
[INFO] [stdout]     |                             ^           ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 147 -                 acc[i+j] += (P1[i]*P2[j])
[INFO] [stdout] 147 +                 acc[i+j] += P1[i]*P2[j]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:214:24
[INFO] [stdout]     |
[INFO] [stdout] 214 |             let sign = ((a > 0) != (b > 0));
[INFO] [stdout]     |                        ^                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 214 -             let sign = ((a > 0) != (b > 0));
[INFO] [stdout] 214 +             let sign = (a > 0) != (b > 0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rstest v0.23.0
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 195 |         c: todo!(),
[INFO] [stdout]     |            ------- any code following this expression is unreachable
[INFO] [stdout] 196 |         d: todo!(),
[INFO] [stdout]     |            ^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `todo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:209:27
[INFO] [stdout]     |
[INFO] [stdout] 208 |         phase_2_comm: todo!(),
[INFO] [stdout]     |                       ------- any code following this expression is unreachable
[INFO] [stdout] 209 |         d_bucketed_basis: todo!(),
[INFO] [stdout]     |                           ^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `todo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 | use ark_ff::{BigInteger, Field, PrimeField};
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]  --> src/msm_nonaffine.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rayon::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFn`
[INFO] [stdout]   --> src/utils.rs:20:36
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]   --> src/utils.rs:20:43
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]  --> src/protocol/bintree.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_std::iterable::Iterable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]  --> src/protocol/generic_gkr.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ark_std::iterable::Iterable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Zero`
[INFO] [stdout]  --> src/copoly.rs:9:33
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ark_ff::{Field, PrimeField, Zero};
[INFO] [stdout]   |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]  --> src/copoly.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ark_ff::{Field, PrimeField, Zero};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::hash::{Hash, Hasher};
[INFO] [stdout]   |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RngCore`
[INFO] [stdout]   --> src/polynomial/fragmented.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 | use ark_std::rand::{Rng, RngCore};
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ark_std::iterable::Iterable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndexedParallelIterator`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::iter::{IndexedParallelIterator, IntoParallelIterator, IntoParallelRefIterator, IntoParallelRefMutIterator, ParallelIterator};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_ff::{Field, PrimeField};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::copoly::Copolynomial`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::copoly::Copolynomial;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:24:43
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/dense_eq.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_std::iterable::Iterable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/dense_eq.rs:16:43
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFn`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/gkr.rs:6:36
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]   |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RngCore`
[INFO] [stdout]  --> src/cleanup/polys/vecvec.rs:7:26
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ark_std::rand::{Rng, RngCore};
[INFO] [stdout]   |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/cleanup/polys/vecvec.rs:1:34
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::{Debug, Formatter, Write};
[INFO] [stdout]   |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GKRLayer`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/triangle_add.rs:7:44
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::cleanup::protocols::gkrs::gkr::{GKRLayer, SimpleGKR};
[INFO] [stdout]   |                                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::Zero`
[INFO] [stdout]   --> src/cleanup/polys/vecvec.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use num_traits::Zero;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `One`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:14:18
[INFO] [stdout]    |
[INFO] [stdout] 14 | use num_traits::{One, Zero};
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]   --> src/cleanup/polys/vecvec.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RngCore`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rand::{Rng, RngCore};
[INFO] [stdout]   |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::Zero`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use num_traits::Zero;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ark_ff::{Field, PrimeField};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `One`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | use num_traits::{One, Zero};
[INFO] [stdout]   |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Zero`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:8:23
[INFO] [stdout]   |
[INFO] [stdout] 8 | use num_traits::{One, Zero};
[INFO] [stdout]   |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `InterOp`
[INFO] [stdout]   --> src/gkr_msm_simple.rs:23:53
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::polynomial::fragmented::{FragmentedPoly, InterOp, Shape};
[INFO] [stdout]    |                                                     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Add`, `Index`, `Mul`, and `Sub`
[INFO] [stdout]  --> src/utils.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::ops::{Add, Index, Mul, Sub};
[INFO] [stdout]   |                ^^^  ^^^^^  ^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::utils::math::Math`
[INFO] [stdout]   --> src/utils.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use liblasso::utils::math::Math;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::PrimInt`
[INFO] [stdout]   --> src/utils.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use num_traits::PrimInt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/utils.rs:283:20
[INFO] [stdout]     |
[INFO] [stdout] 283 |             acc += (_multiplier - multiplier);         
[INFO] [stdout]     |                    ^                        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 283 -             acc += (_multiplier - multiplier);         
[INFO] [stdout] 283 +             acc += _multiplier - multiplier;         
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/utils.rs:285:27
[INFO] [stdout]     |
[INFO] [stdout] 285 |             multiplier *= (F::one() - pt[i]);
[INFO] [stdout]     |                           ^                ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 285 -             multiplier *= (F::one() - pt[i]);
[INFO] [stdout] 285 +             multiplier *= F::one() - pt[i];
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Itertools`
[INFO] [stdout]  --> src/protocol/bintree.rs:6:25
[INFO] [stdout]   |
[INFO] [stdout] 6 | use itertools::{Either, Itertools};
[INFO] [stdout]   |                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]  --> src/protocol/sumcheck.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_ff::{Field, PrimeField};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `multicore`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:435:15
[INFO] [stdout]     |
[INFO] [stdout] 435 |         #[cfg(feature = "multicore")]
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `default`, `memprof`, `parallel`, and `prof`
[INFO] [stdout]     = help: consider adding `multicore` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `multicore`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:438:19
[INFO] [stdout]     |
[INFO] [stdout] 438 |         #[cfg(not(feature = "multicore"))]
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `default`, `memprof`, `parallel`, and `prof`
[INFO] [stdout]     = help: consider adding `multicore` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `multicore`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:492:15
[INFO] [stdout]     |
[INFO] [stdout] 492 |         #[cfg(feature = "multicore")]
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `default`, `memprof`, `parallel`, and `prof`
[INFO] [stdout]     = help: consider adding `multicore` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `multicore`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:503:19
[INFO] [stdout]     |
[INFO] [stdout] 503 |         #[cfg(not(feature = "multicore"))]
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected values for `feature` are: `default`, `memprof`, `parallel`, and `prof`
[INFO] [stdout]     = help: consider adding `multicore` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `merlin::Transcript`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:712:9
[INFO] [stdout]     |
[INFO] [stdout] 712 |     use merlin::Transcript;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::utils::twisted_edwards_ops::fns::affine_twisted_edwards_add_l1`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:713:9
[INFO] [stdout]     |
[INFO] [stdout] 713 |     use crate::cleanup::utils::twisted_edwards_ops::fns::affine_twisted_edwards_add_l1;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/protocol/split.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fix_var_bot`
[INFO] [stdout]  --> src/protocol/split.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::utils::{fix_var_bot, fix_var_top};
[INFO] [stdout]   |                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/protocol/triangle.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EdwardsProjective`
[INFO] [stdout]  --> src/protocol/triangle.rs:5:40
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_ed_on_bls12_381_bandersnatch::{EdwardsProjective};
[INFO] [stdout]   |                                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SplitProver`, `SplitVerifier`, and `Split`
[INFO] [stdout]   --> src/protocol/triangle.rs:12:289
[INFO] [stdout]    |
[INFO] [stdout] 12 | ..., SumcheckPolyMapVerifier, to_multieval}, split::{Split, SplitProver, SplitVerifier}}, transcript::{Challenge, TranscriptReceiver}};
[INFO] [stdout]    |                                                      ^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Group`
[INFO] [stdout]    --> src/protocol/triangle.rs:704:34
[INFO] [stdout]     |
[INFO] [stdout] 704 |         use ark_ec::{CurveGroup, Group};
[INFO] [stdout]     |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::BigInt`
[INFO] [stdout]    --> src/protocol/triangle.rs:706:13
[INFO] [stdout]     |
[INFO] [stdout] 706 |         use ark_ff::BigInt;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `fix_var_bot` and `fix_var_top`
[INFO] [stdout]  --> src/protocol/split_at.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::utils::{fix_var_bot, fix_var_top};
[INFO] [stdout]   |                    ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::fix_var_bot`
[INFO] [stdout]    --> src/protocol/split_at.rs:141:9
[INFO] [stdout]     |
[INFO] [stdout] 141 |     use crate::utils::fix_var_bot;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Pointer`
[INFO] [stdout]  --> src/protocol/generic_gkr.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::{Debug, Formatter, Pointer};
[INFO] [stdout]   |                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Either` and `Itertools`
[INFO] [stdout]  --> src/protocol/generic_gkr.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use itertools::{Either, Itertools};
[INFO] [stdout]   |                 ^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Field` and `PrimeField`
[INFO] [stdout]    --> src/commitments/knuckles.rs:315:18
[INFO] [stdout]     |
[INFO] [stdout] 315 |     use ark_ff::{Field, PrimeField};
[INFO] [stdout]     |                  ^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ev`
[INFO] [stdout]    --> src/commitments/knuckles.rs:320:35
[INFO] [stdout]     |
[INFO] [stdout] 320 |     use crate::commitments::kzg::{ev, random_kzg_pk};
[INFO] [stdout]     |                                   ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::VecDeque` and `process::Output`
[INFO] [stdout]  --> src/copoly.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{cmp::min, collections::VecDeque, mem::{transmute, MaybeUninit}, process::Output, sync::{Arc, OnceLock}, vec};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^^^^^^                                 ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::once`
[INFO] [stdout]  --> src/copoly.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::iter::once;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `repeat_n`
[INFO] [stdout]   --> src/copoly.rs:10:28
[INFO] [stdout]    |
[INFO] [stdout] 10 | use itertools::{Itertools, repeat_n};
[INFO] [stdout]    |                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::poly::dense_mlpoly::DensePolynomial`
[INFO] [stdout]   --> src/copoly.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use liblasso::poly::dense_mlpoly::DensePolynomial;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::poly::eq_poly::EqPolynomial`
[INFO] [stdout]   --> src/copoly.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use liblasso::poly::eq_poly::EqPolynomial;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FragmentedPoly`
[INFO] [stdout]   --> src/copoly.rs:15:64
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::polynomial::fragmented::{Fragment, FragmentContent, FragmentedPoly, Shape};
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Consts` and `Data`
[INFO] [stdout]   --> src/copoly.rs:16:54
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::polynomial::fragmented::FragmentContent::{Consts, Data};
[INFO] [stdout]    |                                                      ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/copoly.rs:206:31
[INFO] [stdout]     |
[INFO] [stdout] 206 |                 let is_leaf = (depth == total_logsize - (query.logsize as usize));
[INFO] [stdout]     |                               ^                                                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 206 -                 let is_leaf = (depth == total_logsize - (query.logsize as usize));
[INFO] [stdout] 206 +                 let is_leaf = depth == total_logsize - (query.logsize as usize);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/copoly.rs:690:59
[INFO] [stdout]     |
[INFO] [stdout] 690 |                 .map(|(a, b)| { *b = point[i] * *a; *a *= (F::one() - point[i]) })
[INFO] [stdout]     |                                                           ^                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 690 -                 .map(|(a, b)| { *b = point[i] * *a; *a *= (F::one() - point[i]) })
[INFO] [stdout] 690 +                 .map(|(a, b)| { *b = point[i] * *a; *a *= F::one() - point[i] })
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::MaybeUninit`
[INFO] [stdout]    --> src/copoly.rs:839:9
[INFO] [stdout]     |
[INFO] [stdout] 839 |     use std::mem::MaybeUninit;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:1:33
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashMap, HashSet};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::Once`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::iter::Once;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::MaybeUninit`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::mem::MaybeUninit;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndexMut`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::{Add, AddAssign, Index, IndexMut, Mul, MulAssign, Sub, SubAssign};
[INFO] [stdout]   |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::bn::TwistType::D`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ark_ec::bn::TwistType::D;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::plumbing::UnindexedConsumer`
[INFO] [stdout]   --> src/polynomial/fragmented.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use rayon::iter::plumbing::UnindexedConsumer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::OnceCell`
[INFO] [stdout]    --> src/polynomial/fragmented.rs:915:9
[INFO] [stdout]     |
[INFO] [stdout] 915 |     use std::cell::OnceCell;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RwLockWriteGuard`, `RwLock`, `TryLockError`, and `TryLockResult`
[INFO] [stdout]    --> src/polynomial/fragmented.rs:917:36
[INFO] [stdout]     |
[INFO] [stdout] 917 |     use std::sync::{Arc, OnceLock, RwLock, RwLockWriteGuard, TryLockError, TryLockResult};
[INFO] [stdout]     |                                    ^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/polynomial/format_helpers.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 |         if (shape.fragments.len() > 2 || shape.fragments.len() == 0) {
[INFO] [stdout]    |            ^                                                       ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 17 -         if (shape.fragments.len() > 2 || shape.fragments.len() == 0) {
[INFO] [stdout] 17 +         if shape.fragments.len() > 2 || shape.fragments.len() == 0 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BigInteger`
[INFO] [stdout]  --> src/cleanup/proof_transcript.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_ff::{BigInteger, PrimeField};
[INFO] [stdout]   |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/cleanup/proof_transcript.rs:42:24
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let bytesize = ((bitsize + 7) / 8);
[INFO] [stdout]    |                        ^                 ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 42 -         let bytesize = ((bitsize + 7) / 8);
[INFO] [stdout] 42 +         let bytesize = (bitsize + 7) / 8;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsSharedMutPtr`, `UnsafeIndexRawMut`, and `UnsafeIndexRaw`
[INFO] [stdout]  --> src/cleanup/protocols/sumcheck.rs:3:29
[INFO] [stdout]   |
[INFO] [stdout] 3 | use hashcaster::ptr_utils::{AsSharedMutPtr, UnsafeIndexRaw, UnsafeIndexRawMut};
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eq_poly::EqPolynomial`
[INFO] [stdout]  --> src/cleanup/protocols/sumcheck.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use liblasso::poly::{eq_poly::EqPolynomial, unipoly::UniPoly};
[INFO] [stdout]   |                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CurveGroup` and `Group`
[INFO] [stdout]    --> src/cleanup/protocols/sumcheck.rs:894:31
[INFO] [stdout]     |
[INFO] [stdout] 894 |     use ark_ec::{CurveConfig, CurveGroup, Group};
[INFO] [stdout]     |                               ^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::AddAssign`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::ops::AddAssign;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_bls12_381::Fr`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_bls12_381::Fr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::utils::math::Math`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use liblasso::utils::math::Math;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntoParallelIterator` and `IntoParallelRefIterator`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:10:44
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::iter::{IndexedParallelIterator, IntoParallelIterator, IntoParallelRefIterator, IntoParallelRefMutIterator, ParallelIterator};
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ProtocolProver`, `ProtocolVerifier`, and `Protocol`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:14:33
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::protocol::protocol::{Protocol, ProtocolProver, ProtocolVerifier};
[INFO] [stdout]    |                                 ^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eq_poly_sequence_last`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:23:68
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::utils::{eq_eval, eq_poly_sequence_from_multiplier_last, eq_poly_sequence_last, make_gamma_pows, zip_with_gamma};
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Index`
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:483:9
[INFO] [stdout]     |
[INFO] [stdout] 483 |     use std::ops::Index;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MontCurveConfig` and `TECurveConfig`
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:487:35
[INFO] [stdout]     |
[INFO] [stdout] 487 |     use ark_ec::twisted_edwards::{MontCurveConfig, TECurveConfig};
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PrimeField`
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:489:25
[INFO] [stdout]     |
[INFO] [stdout] 489 |     use ark_ff::{Field, PrimeField};
[INFO] [stdout]     |                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:559:31
[INFO] [stdout]     |
[INFO] [stdout] 559 |                         *a += (n * dense_eqpoly[i])
[INFO] [stdout]     |                               ^                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 559 -                         *a += (n * dense_eqpoly[i])
[INFO] [stdout] 559 +                         *a += n * dense_eqpoly[i]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::protocols::gkrs::gkr::GKRLayer`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/dense_eq.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::cleanup::protocols::gkrs::gkr::GKRLayer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EqWrapper` and `GammaWrapper`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/dense_eq.rs:13:43
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::cleanup::protocols::sumcheck::{EqWrapper, FoldToSumcheckable, GammaWrapper, GenericSumcheckProtocol, SinglePointClaims};
[INFO] [stdout]    |                                           ^^^^^^^^^                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eq_poly_sequence_last`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/dense_eq.rs:15:47
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::utils::{eq_eval, eq_poly_sequence, eq_poly_sequence_last, make_gamma_pows, zip_with_gamma};
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MontCurveConfig` and `TECurveConfig`
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/dense_eq.rs:244:35
[INFO] [stdout]     |
[INFO] [stdout] 244 |     use ark_ec::twisted_edwards::{MontCurveConfig, TECurveConfig};
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/dense_eq.rs:302:31
[INFO] [stdout]     |
[INFO] [stdout] 302 |                         *a += (n * dense_eqpoly[i])
[INFO] [stdout]     |                               ^                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 302 -                         *a += (n * dense_eqpoly[i])
[INFO] [stdout] 302 +                         *a += n * dense_eqpoly[i]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AlgFnSO` and `AlgFn`
[INFO] [stdout]   --> src/cleanup/protocols/splits.rs:10:36
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO, IdAlgFn};
[INFO] [stdout]    |                                    ^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/gkr.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ark_ff::PrimeField;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/gkr.rs:6:43
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]   |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/bintree_add.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/bintree_add.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use itertools::Itertools;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]   --> src/cleanup/protocols/gkrs/bintree_add.rs:18:43
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `One`
[INFO] [stdout]    --> src/cleanup/protocols/gkrs/bintree_add.rs:388:22
[INFO] [stdout]     |
[INFO] [stdout] 388 |     use num_traits::{One, Zero};
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::polys::common::MapSplit`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/triangle_add.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::cleanup::polys::common::MapSplit;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/cleanup/protocols/gkrs/triangle_add.rs:329:26
[INFO] [stdout]     |
[INFO] [stdout] 329 |         let chunk_size = (1 << (num_vars - split_var.hi_usize(num_vars)));
[INFO] [stdout]     |                          ^                                              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 329 -         let chunk_size = (1 << (num_vars - split_var.hi_usize(num_vars)));
[INFO] [stdout] 329 +         let chunk_size = 1 << (num_vars - split_var.hi_usize(num_vars));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cmp::min` and `iter::repeat_n`
[INFO] [stdout]  --> src/cleanup/protocols/pushforward/pushforward.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::{cmp::min, iter::repeat_n, marker::PhantomData};
[INFO] [stdout]   |           ^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::CurveGroup`
[INFO] [stdout]  --> src/cleanup/protocols/pushforward/pushforward.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_ec::CurveGroup;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::log2`
[INFO] [stdout]  --> src/cleanup/protocols/pushforward/pushforward.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ark_std::log2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsSharedMutPtr` and `UnsafeIndexRawMut`
[INFO] [stdout]  --> src/cleanup/protocols/pushforward/pushforward.rs:8:29
[INFO] [stdout]   |
[INFO] [stdout] 8 | use hashcaster::ptr_utils::{AsSharedMutPtr, UnsafeIndexRawMut};
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `eq_poly::EqPolynomial` and `unipoly::UniPoly`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | use liblasso::poly::{eq_poly::EqPolynomial, unipoly::UniPoly};
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `current_num_threads` and `repeatn`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rayon::{current_num_threads, iter::{repeatn, IndexedParallelIterator, IntoParallelIterator, IntoParallelRefIterator, ParallelIterator...
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::VariableBaseMSM`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use ark_ec::VariableBaseMSM;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::msm_nonaffine`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::msm_nonaffine;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PointClaim`, `eq_eval`, and `eq_sum`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:21:256
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...e, PointClaim}, verifier_polys::{EqPoly, EqTruncPoly, SelectorPoly, VerifierPoly}}, utils::{algfn::AlgFnUtils, arith::evaluate_poly}}, cleanup::polys::vecvec::VecVecPolynomial, utils::{eq_eval, eq_sum, m...
[INFO] [stdout]    |       ^^^^^^^^^^                                                                                                                                                                            ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Densify`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:22:37
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::cleanup::polys::common::{Densify, EvaluateAtPoint};
[INFO] [stdout]    |                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SumClaim` and `SumcheckVerifierConfig`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:23:113
[INFO] [stdout]    |
[INFO] [stdout] 23 | ..._univar, DenseSumcheckObjectSO, SinglePointClaims, SumClaim, SumcheckVerifierConfig}, sumchecks::vecvec_eq::Sumcheckable};
[INFO] [stdout]    |                                                       ^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::TwistedEdwardsConfig`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::utils::TwistedEdwardsConfig;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `G1Affine` and `G1Projective`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:976:25
[INFO] [stdout]     |
[INFO] [stdout] 976 |     use ark_bls12_381::{G1Affine, G1Projective, g1::Config};
[INFO] [stdout]     |                         ^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Group`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:977:31
[INFO] [stdout]     |
[INFO] [stdout] 977 |     use ark_ec::{CurveConfig, Group};
[INFO] [stdout]     |                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::Field`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:979:9
[INFO] [stdout]     |
[INFO] [stdout] 979 |     use ark_ff::Field;
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EqPolynomial`, `self`, and `utils::transcript`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:981:36
[INFO] [stdout]     |
[INFO] [stdout] 981 |     use liblasso::{poly::eq_poly::{self, EqPolynomial}, utils::transcript};
[INFO] [stdout]     |                                    ^^^^  ^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsSharedMUMutPtr`, `UninitArr`, and `UnsafeIndexRawMut`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/logup_mainphase.rs:21:29
[INFO] [stdout]    |
[INFO] [stdout] 21 | use hashcaster::ptr_utils::{AsSharedMUMutPtr, UninitArr, UnsafeIndexRawMut};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter::IntoParallelIterator`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/logup_mainphase.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use rayon::iter::IntoParallelIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `protocols::sumcheck::PointClaim`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/logup_mainphase.rs:27:81
[INFO] [stdout]    |
[INFO] [stdout] 27 | use crate::cleanup::{proof_transcript::TProofTranscript2, protocol2::Protocol2, protocols::sumcheck::PointClaim, utils::algfn::AlgFnUtils};
[INFO] [stdout]    |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/logup_mainphase.rs:28:43
[INFO] [stdout]    |
[INFO] [stdout] 28 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `protocols::sumcheck::evaluate_univar`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/logup_mainphase.rs:247:62
[INFO] [stdout]     |
[INFO] [stdout] 247 |     use crate::cleanup::{proof_transcript::ProofTranscript2, protocols::sumcheck::evaluate_univar, utils::arith::evaluate_poly};
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `One`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/logup_mainphase.rs:250:48
[INFO] [stdout]     |
[INFO] [stdout] 250 |     use ark_std::{UniformRand, test_rng, Zero, One};
[INFO] [stdout]     |                                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Group`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger_ending.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ark_ec::{CurveConfig, Group};
[INFO] [stdout]   |                           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GKRLayer` and `SimpleGKR`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger_ending.rs:13:44
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::cleanup::protocols::gkrs::gkr::{GKRLayer, SimpleGKR};
[INFO] [stdout]    |                                            ^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::One`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger_ending.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |     use num_traits::One;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `One`
[INFO] [stdout]    --> src/cleanup/protocols/verifier_polys.rs:148:48
[INFO] [stdout]     |
[INFO] [stdout] 148 |     use ark_std::{UniformRand, test_rng, Zero, One};
[INFO] [stdout]     |                                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DenseSumcheckObjectSO`
[INFO] [stdout]  --> src/cleanup/protocols/pippenger.rs:6:54
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::cleanup::protocols::sumcheck::{gamma_rlc, DenseSumcheckObjectSO, PointClaim, SinglePointClaims};
[INFO] [stdout]   |                                                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::log2`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use ark_std::log2;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `itertools::Itertools`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use itertools::Itertools;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `One`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:17:18
[INFO] [stdout]    |
[INFO] [stdout] 17 | use num_traits::{One, Zero};
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `repeat`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:19:17
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::iter::{repeat, repeat_n};
[INFO] [stdout]    |                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Index`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use std::ops::Index;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `event` and `info`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:22:15
[INFO] [stdout]    |
[INFO] [stdout] 22 | use tracing::{event, info, info_span, instrument};
[INFO] [stdout]    |               ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::protocols::sumchecks::dense_eq::DenseDeg2Sumcheck`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use crate::cleanup::protocols::sumchecks::dense_eq::DenseDeg2Sumcheck;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AlgFnSO` and `AlgFn`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:25:36
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                    ^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::utils::arith::evaluate_poly`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use crate::cleanup::utils::arith::evaluate_poly;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::pairing::Pairing`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:421:9
[INFO] [stdout]     |
[INFO] [stdout] 421 |     use ark_ec::pairing::Pairing;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Display`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:428:9
[INFO] [stdout]     |
[INFO] [stdout] 428 |     use std::fmt::Display;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BigInt`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:429:18
[INFO] [stdout]     |
[INFO] [stdout] 429 |     use ark_ff::{BigInt, BigInteger256};
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::Pow`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:430:9
[INFO] [stdout]     |
[INFO] [stdout] 430 |     use num_traits::Pow;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Level` and `span`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:431:31
[INFO] [stdout]     |
[INFO] [stdout] 431 |     use tracing::{instrument, span, Level};
[INFO] [stdout]     |                               ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::cleanup::polys::common::Densify`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:432:9
[INFO] [stdout]     |
[INFO] [stdout] 432 |     use crate::cleanup::polys::common::Densify;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:611:9
[INFO] [stdout]     |
[INFO] [stdout] 611 |     use std::collections::HashMap;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::Group`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:612:9
[INFO] [stdout]     |
[INFO] [stdout] 612 |     use ark_ec::Group;
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::twisted_edwards::Projective`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:613:9
[INFO] [stdout]     |
[INFO] [stdout] 613 |     use ark_ec::twisted_edwards::Projective;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `build_points`, `prettify_coords`, and `prettify_points`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:619:24
[INFO] [stdout]     |
[INFO] [stdout] 619 |     use crate::utils::{build_points, prettify_coords, prettify_points};
[INFO] [stdout]     |                        ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Field` and `PrimeField`
[INFO] [stdout]    --> src/cleanup/protocols/opening.rs:149:18
[INFO] [stdout]     |
[INFO] [stdout] 149 |     use ark_ff::{Field, PrimeField};
[INFO] [stdout]     |                  ^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ev`
[INFO] [stdout]    --> src/cleanup/protocols/opening.rs:154:35
[INFO] [stdout]     |
[INFO] [stdout] 154 |     use crate::commitments::kzg::{ev, random_kzg_pk};
[INFO] [stdout]     |                                   ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DenseSumcheckObject` and `FoldToSumcheckable`
[INFO] [stdout]  --> src/cleanup/protocols/multiopen_reduction.rs:7:54
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::cleanup::protocols::sumcheck::{gamma_rlc, DenseSumcheckObject, DenseSumcheckObjectSO, FoldToSumcheckable, GenericSumcheckProto...
[INFO] [stdout]   |                                                      ^^^^^^^^^^^^^^^^^^^                         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `eq_poly_sequence_last`
[INFO] [stdout]   --> src/cleanup/protocols/multiopen_reduction.rs:10:20
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::utils::{eq_poly_sequence_last, make_gamma_pows};
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_bls12_381::Fr`
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:105:9
[INFO] [stdout]     |
[INFO] [stdout] 105 |     use ark_bls12_381::Fr;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `affine_twisted_edwards_add_l1` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:151:17
[INFO] [stdout]     |
[INFO] [stdout] 151 |     make_algfn!(affine_twisted_edwards_add_l1(2, 4, 3));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AffineTwistedEdwardsAddL1`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `affine_twisted_edwards_add_l2` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:152:17
[INFO] [stdout]     |
[INFO] [stdout] 152 |     make_algfn!(affine_twisted_edwards_add_l2(2, 3, 3));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AffineTwistedEdwardsAddL2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `affine_twisted_edwards_add_l3` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:153:17
[INFO] [stdout]     |
[INFO] [stdout] 153 |     make_algfn!(affine_twisted_edwards_add_l3(2, 3, 3));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AffineTwistedEdwardsAddL3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `twisted_edwards_add_l1` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:154:17
[INFO] [stdout]     |
[INFO] [stdout] 154 |     make_algfn!(twisted_edwards_add_l1(2, 6, 4));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `TwistedEdwardsAddL1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `twisted_edwards_add_l2` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:155:17
[INFO] [stdout]     |
[INFO] [stdout] 155 |     make_algfn!(twisted_edwards_add_l2(2, 4, 4));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `TwistedEdwardsAddL2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `twisted_edwards_add_l3` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:156:17
[INFO] [stdout]     |
[INFO] [stdout] 156 |     make_algfn!(twisted_edwards_add_l3(2, 4, 3));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `TwistedEdwardsAddL3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `triangle_twisted_edwards_add_l1` should have an upper camel case name
[INFO] [stdout]    --> src/cleanup/utils/twisted_edwards_ops.rs:157:17
[INFO] [stdout]     |
[INFO] [stdout] 157 |     make_algfn!(triangle_twisted_edwards_add_l1(2, 12, 12)); 
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `TriangleTwistedEdwardsAddL1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsSharedMUConstPtr`
[INFO] [stdout]  --> src/cleanup/utils/algfn.rs:6:29
[INFO] [stdout]   |
[INFO] [stdout] 6 | use hashcaster::ptr_utils::{AsSharedMUConstPtr, AsSharedMUMutPtr, AsSharedMutPtr, UninitArr, UnsafeIndexRawMut};
[INFO] [stdout]   |                             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `liblasso::poly::eq_poly::EqPolynomial`
[INFO] [stdout]  --> src/cleanup/utils/arith.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use liblasso::poly::eq_poly::EqPolynomial;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::current_num_threads`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rayon::current_num_threads;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IntoParallelIterator`
[INFO] [stdout]   --> src/cleanup/polys/dense.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::iter::{IntoParallelIterator, ParallelIterator};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParallelSliceMut`
[INFO] [stdout]   --> src/cleanup/polys/dense.rs:12:37
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rayon::prelude::{ParallelSlice, ParallelSliceMut};
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AddAssign`, `Add`, `Mul`, `SubAssign`, and `Sub`
[INFO] [stdout]  --> src/cleanup/polys/vecvec.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ops::{Add, AddAssign, Mul, Range, Sub, SubAssign};
[INFO] [stdout]   |                ^^^  ^^^^^^^^^  ^^^         ^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::copoly::PrefixFold`
[INFO] [stdout]   --> src/cleanup/polys/vecvec.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::copoly::PrefixFold;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::fields::MontConfig`
[INFO] [stdout]    --> src/cleanup/polys/vecvec.rs:703:9
[INFO] [stdout]     |
[INFO] [stdout] 703 |     use ark_ff::fields::MontConfig;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/polynomial_with_zeros.rs:93:16
[INFO] [stdout]    |
[INFO] [stdout] 93 |         *self*=(F::one() - *f);
[INFO] [stdout]    |                ^             ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 93 -         *self*=(F::one() - *f);
[INFO] [stdout] 93 +         *self*=F::one() - *f;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/polynomial_with_zeros.rs:361:21
[INFO] [stdout]     |
[INFO] [stdout] 361 |                 *l*=(F::one() - *f);
[INFO] [stdout]     |                     ^             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 361 -                 *l*=(F::one() - *f);
[INFO] [stdout] 361 +                 *l*=F::one() - *f;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:112:14
[INFO] [stdout]     |
[INFO] [stdout] 112 |     for i in (0..n){
[INFO] [stdout]     |              ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 112 -     for i in (0..n){
[INFO] [stdout] 112 +     for i in 0..n {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:113:18
[INFO] [stdout]     |
[INFO] [stdout] 113 |         for j in (0..num_limbs){
[INFO] [stdout]     |                  ^            ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 113 -         for j in (0..num_limbs){
[INFO] [stdout] 113 +         for j in 0..num_limbs {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:114:22
[INFO] [stdout]     |
[INFO] [stdout] 114 |             for k in (0..m){
[INFO] [stdout]     |                      ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 114 -             for k in (0..m){
[INFO] [stdout] 114 +             for k in 0..m {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:66:20
[INFO] [stdout]    |
[INFO] [stdout] 66 |             res *= (n-i);
[INFO] [stdout]    |                    ^   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 66 -             res *= (n-i);
[INFO] [stdout] 66 +             res *= n-i;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:67:20
[INFO] [stdout]    |
[INFO] [stdout] 67 |             res /= (i+1); 
[INFO] [stdout]    |                    ^   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 67 -             res /= (i+1); 
[INFO] [stdout] 67 +             res /= i+1; 
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:81:20
[INFO] [stdout]    |
[INFO] [stdout] 81 |             res += (F2::from(P[P.len() - i - 1]) * F2::from(binomial(degree+1, i + 1)));
[INFO] [stdout]    |                    ^                                                                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 81 -             res += (F2::from(P[P.len() - i - 1]) * F2::from(binomial(degree+1, i + 1)));
[INFO] [stdout] 81 +             res += F2::from(P[P.len() - i - 1]) * F2::from(binomial(degree+1, i + 1));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:82:20
[INFO] [stdout]    |
[INFO] [stdout] 82 |             res -= (F2::from(P[P.len() - i - 2]) * F2::from(binomial(degree+1, i + 2)));
[INFO] [stdout]    |                    ^                                                                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 82 -             res -= (F2::from(P[P.len() - i - 2]) * F2::from(binomial(degree+1, i + 2)));
[INFO] [stdout] 82 +             res -= F2::from(P[P.len() - i - 2]) * F2::from(binomial(degree+1, i + 2));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:85:20
[INFO] [stdout]    |
[INFO] [stdout] 85 |             res += (F2::from(P[P.len() - degree - 1]));
[INFO] [stdout]    |                    ^                                 ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 85 -             res += (F2::from(P[P.len() - degree - 1]));
[INFO] [stdout] 85 +             res += F2::from(P[P.len() - degree - 1]);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:100:20
[INFO] [stdout]     |
[INFO] [stdout] 100 |             res += (F2::from(P[i]) * F2::from(binomial(degree+1, i+1)));
[INFO] [stdout]     |                    ^                                                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 100 -             res += (F2::from(P[i]) * F2::from(binomial(degree+1, i+1)));
[INFO] [stdout] 100 +             res += F2::from(P[i]) * F2::from(binomial(degree+1, i+1));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:101:20
[INFO] [stdout]     |
[INFO] [stdout] 101 |             res -= (F2::from(P[i+1]) * F2::from(binomial(degree+1, i + 2)));
[INFO] [stdout]     |                    ^                                                      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 101 -             res -= (F2::from(P[i+1]) * F2::from(binomial(degree+1, i + 2)));
[INFO] [stdout] 101 +             res -= F2::from(P[i+1]) * F2::from(binomial(degree+1, i + 2));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:105:20
[INFO] [stdout]     |
[INFO] [stdout] 105 |             res += (F2::from(P[degree]));
[INFO] [stdout]     |                    ^                   ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 105 -             res += (F2::from(P[degree]));
[INFO] [stdout] 105 +             res += F2::from(P[degree]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:118:18
[INFO] [stdout]     |
[INFO] [stdout] 118 |         for _ in (0..l){
[INFO] [stdout]     |                  ^    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 118 -         for _ in (0..l){
[INFO] [stdout] 118 +         for _ in 0..l {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:130:18
[INFO] [stdout]     |
[INFO] [stdout] 130 |         for _ in (0..l/2){
[INFO] [stdout]     |                  ^      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 130 -         for _ in (0..l/2){
[INFO] [stdout] 130 +         for _ in 0..l/2 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:147:29
[INFO] [stdout]     |
[INFO] [stdout] 147 |                 acc[i+j] += (P1[i]*P2[j])
[INFO] [stdout]     |                             ^           ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 147 -                 acc[i+j] += (P1[i]*P2[j])
[INFO] [stdout] 147 +                 acc[i+j] += P1[i]*P2[j]
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:214:24
[INFO] [stdout]     |
[INFO] [stdout] 214 |             let sign = ((a > 0) != (b > 0));
[INFO] [stdout]     |                        ^                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 214 -             let sign = ((a > 0) != (b > 0));
[INFO] [stdout] 214 +             let sign = (a > 0) != (b > 0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/gkr_msm_simple.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn load(file: &mut File) -> Self {
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/gkr_msm_simple.rs:55:24
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn dump(&self, file: &mut File) {
[INFO] [stdout]    |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tmp`
[INFO] [stdout]    --> src/gkr_msm_simple.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |     let tmp = _points_table_poly.0.len().log_2();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_tmp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/sumcheck.rs:345:9
[INFO] [stdout]     |
[INFO] [stdout] 345 |         mut args: Self::Trace,
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `accum`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:434:17
[INFO] [stdout]     |
[INFO] [stdout] 434 |         let mut accum = vec![vec![F::zero(); combined_degree + 1]; mle_half];
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_accum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/sumcheck.rs:434:13
[INFO] [stdout]     |
[INFO] [stdout] 434 |         let mut accum = vec![vec![F::zero(); combined_degree + 1]; mle_half];
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]    --> src/protocol/triangle.rs:186:39
[INFO] [stdout]     |
[INFO] [stdout] 186 |             TriangleAddLayer::SplitAt(split, var_idx) => {
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]    --> src/protocol/triangle.rs:217:39
[INFO] [stdout]     |
[INFO] [stdout] 217 |             TriangleAddLayer::SplitAt(split, var_idx) => {
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proof`
[INFO] [stdout]    --> src/protocol/triangle.rs:239:34
[INFO] [stdout]     |
[INFO] [stdout] 239 |                     Some((claim, proof)) => Some((Self::ClaimsNew::Single(claim), Self::Proof::SplitAt))
[INFO] [stdout]     |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_proof`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/triangle.rs:332:71
[INFO] [stdout]     |
[INFO] [stdout] 332 | pub fn make_triangle_add_params<F: PrimeField + TwistedEdwardsConfig>(mut num_vars: usize, split_var_idx: usize) -> TriangleAddParams<F> {
[INFO] [stdout]     |                                                                       ----^^^^^^^^
[INFO] [stdout]     |                                                                       |
[INFO] [stdout]     |                                                                       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:181:36
[INFO] [stdout]     |
[INFO] [stdout] 181 |             BintreeAddLayer::Split(split) => {
[INFO] [stdout]     |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:212:36
[INFO] [stdout]     |
[INFO] [stdout] 212 |             BintreeAddLayer::Split(split) => {
[INFO] [stdout]     |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proof`
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:233:30
[INFO] [stdout]     |
[INFO] [stdout] 233 |                 Some((claim, proof)) => Some((Self::ClaimsNew::Single(claim), Self::Proof::Split))
[INFO] [stdout]     |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_proof`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `label`
[INFO] [stdout]   --> src/transcript.rs:54:34
[INFO] [stdout]    |
[INFO] [stdout] 54 |     fn append_message(&mut self, label: &'static [u8], msg: &[u8]) {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/transcript.rs:54:56
[INFO] [stdout]    |
[INFO] [stdout] 54 |     fn append_message(&mut self, label: &'static [u8], msg: &[u8]) {
[INFO] [stdout]    |                                                        ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `label`
[INFO] [stdout]   --> src/transcript.rs:57:48
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn append_point<G2: CurveGroup>(&mut self, label: &'static[u8], point: impl Into<G2::Affine>) {
[INFO] [stdout]    |                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `point`
[INFO] [stdout]   --> src/transcript.rs:57:69
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn append_point<G2: CurveGroup>(&mut self, label: &'static[u8], point: impl Into<G2::Affine>) {
[INFO] [stdout]    |                                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `label`
[INFO] [stdout]   --> src/transcript.rs:85:34
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn append_message(&mut self, label: &'static [u8], msg: &[u8]) {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/commitments/kzg.rs:99:17
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub fn load(file: &mut File) -> Self {
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]    --> src/commitments/kzg.rs:103:24
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn dump(&self, file: &mut File) {
[INFO] [stdout]     |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/commitments/knuckles.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn load(file: &mut File) -> Self {
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/commitments/knuckles.rs:91:24
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn dump(&self, file: &mut File) {
[INFO] [stdout]    |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dedup_consts_len`
[INFO] [stdout]    --> src/copoly.rs:499:13
[INFO] [stdout]     |
[INFO] [stdout] 499 |             dedup_consts_len,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: try ignoring the field: `dedup_consts_len: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shape`
[INFO] [stdout]    --> src/copoly.rs:757:30
[INFO] [stdout]     |
[INFO] [stdout] 757 |     fn take_shape(&mut self, shape: Arc<OnceLock<Shape>>) {
[INFO] [stdout]     |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `split_consts` is never read
[INFO] [stdout]    --> src/polynomial/fragmented.rs:537:17
[INFO] [stdout]     |
[INFO] [stdout] 537 |         let mut split_consts = 0;
[INFO] [stdout]     |                 ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/polynomial/fragmented.rs:615:13
[INFO] [stdout]     |
[INFO] [stdout] 615 |         let mut tgt = [&mut l_data, &mut r_data];
[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]    --> src/polynomial/fragmented.rs:697:13
[INFO] [stdout]     |
[INFO] [stdout] 697 |         let mut target_iter = target.fragments.iter();
[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]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:229:13
[INFO] [stdout]     |
[INFO] [stdout] 229 |         let mut sumcheckable = self.sumcheckable.take();
[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]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:232:18
[INFO] [stdout]     |
[INFO] [stdout] 232 |             Some(mut sumcheckable) => {
[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]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:315:13
[INFO] [stdout]     |
[INFO] [stdout] 315 |         let mut col_pad_results = self.func.exec(&inputs).collect_vec();
[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]   --> src/cleanup/protocols/gkrs/triangle_add.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |         let mut advices = builder::witness::build(
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `image`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let image = buckets_transposed
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_image`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `phase_1_comm`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     let phase_1_comm = PipMSMPhase1Comm {
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_phase_1_comm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commitment_log_multiplicity`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 145 |     commitment_log_multiplicity: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commitment_log_multiplicity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commitment_key`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:146:5
[INFO] [stdout]     |
[INFO] [stdout] 146 |     commitment_key: &KnucklesProvingKey<Ctx>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commitment_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_matrix_commitments`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:396:13
[INFO] [stdout]     |
[INFO] [stdout] 396 |         let num_matrix_commitments = y_size.div_ceil(comm_mul);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_matrix_commitments`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r_y`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:575:13
[INFO] [stdout]     |
[INFO] [stdout] 575 |         let r_y = r_y.to_vec();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_r_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r_d`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:856:13
[INFO] [stdout]     |
[INFO] [stdout] 856 |         let r_d = r_d.to_vec();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_r_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r_c`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:858:13
[INFO] [stdout]     |
[INFO] [stdout] 858 |         let r_c = r_c.to_vec();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_r_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d_logsize`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:861:13
[INFO] [stdout]     |
[INFO] [stdout] 861 |         let d_logsize = self.d_logsize;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_d_logsize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f_prod3`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:911:13
[INFO] [stdout]     |
[INFO] [stdout] 911 |         let f_prod3 = Prod3Fn::<F>::new();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_f_prod3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f_inv`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:914:13
[INFO] [stdout]     |
[INFO] [stdout] 914 |         let f_inv = AddInversesFn::<F>::new();
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_f_inv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:923:13
[INFO] [stdout]     |
[INFO] [stdout] 923 |         for i in 0 .. x_logsize + y_logsize {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transcript`
[INFO] [stdout]   --> src/cleanup/protocols/zero_check.rs:24:21
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn prove(&self, transcript: &mut Transcript, mut claims: Self::ClaimsBefore, advice: Self::ProverInput) -> (Self::ClaimsAfter, Self::...
[INFO] [stdout]    |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transcript`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `advice`
[INFO] [stdout]   --> src/cleanup/protocols/zero_check.rs:24:82
[INFO] [stdout]    |
[INFO] [stdout] 24 | ... claims: Self::ClaimsBefore, advice: Self::ProverInput) -> (Self::ClaimsAfter, Self::ProverOutput) {
[INFO] [stdout]    |                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_advice`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let mut pfs = PushForwardState::new(
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_msm`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:516:13
[INFO] [stdout]     |
[INFO] [stdout] 516 |         let expected_msm = BandersnatchConfig::msm(&points, &coefs).unwrap();
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_msm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cleanup/protocols/multiopen_reduction.rs:82:33
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let ((_, output_point), mut poly_evs) = generic_protocol_config.prove(transcript, so.claim, so);
[INFO] [stdout]    |                                 ----^^^^^^^^
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/cleanup/utils/algfn.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         for i in 0..n_outs {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `inputs` is never read
[INFO] [stdout]    --> src/cleanup/polys/dense.rs:128:17
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let mut inputs = polys.iter().map(|_| F::zero()).collect_vec();
[INFO] [stdout]     |                 ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cleanup/polys/dense.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut row_chunked_iterator = (0..iter_ins[0].len()).map(|_| {
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `inputs` is never read
[INFO] [stdout]    --> src/cleanup/polys/vecvec.rs:521:17
[INFO] [stdout]     |
[INFO] [stdout] 521 |         let mut inputs = inputs.clone();
[INFO] [stdout]     |                 ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lsum`
[INFO] [stdout]   --> src/n_n_o/n_n_sumcheck.rs:98:13
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let lsum: Vec<_> = lpolys.iter().map(|p| p.sum()).collect();
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_lsum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rsum`
[INFO] [stdout]   --> src/n_n_o/n_n_sumcheck.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |         let rsum: Vec<_> = rpolys.iter().map(|p| p.sum()).collect();
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_rsum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `log_len`
[INFO] [stdout]    --> src/n_n_o/polynomial_with_zeros.rs:354:19
[INFO] [stdout]     |
[INFO] [stdout] 354 |         let (len, log_len) = (self.evals[0].len, self.evals[0].log_len);
[INFO] [stdout]     |                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_log_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/n_n_o/polynomial_with_zeros.rs:383:28
[INFO] [stdout]     |
[INFO] [stdout] 383 |     pub fn evaluate(&self, r: &[F]) -> F
[INFO] [stdout]     |                            ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]    --> src/n_n_o/polynomial_with_zeros.rs:522:18
[INFO] [stdout]     |
[INFO] [stdout] 522 |             let (len, _log_len) = (self.evals[0].len, self.evals[0].log_len);
[INFO] [stdout]     |                  ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c1`
[INFO] [stdout]   --> src/n_n_o/cleanup/matrix_poly.rs:90:14
[INFO] [stdout]    |
[INFO] [stdout] 90 |     let (b1, c1) = a1.overflowing_add(x1);
[INFO] [stdout]    |              ^^ help: if this is intentional, prefix it with an underscore: `_c1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:111:13
[INFO] [stdout]     |
[INFO] [stdout] 111 |     let mut b = false;
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |     let mut b = false;
[INFO] [stdout]     |         ----^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p_o`
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:296:48
[INFO] [stdout]     |
[INFO] [stdout] 296 |         let (SinglePointClaims { point, evs }, p_o) = triple_prod.prove(transcript, SumClaim{sum: sum_claim}, (Arc::new(Pxy), Px, Py));
[INFO] [stdout]     |                                                ^^^ help: if this is intentional, prefix it with an underscore: `_p_o`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Px`
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:319:14
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |              ^^ help: if this is intentional, prefix it with an underscore: `_Px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Py`
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:319:18
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |                  ^^ help: if this is intentional, prefix it with an underscore: `_Py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:49:27
[INFO] [stdout]    |
[INFO] [stdout] 49 |         (0..v.len()).map(|i|{
[INFO] [stdout]    |                           ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `new_carry` is never read
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:230:21
[INFO] [stdout]     |
[INFO] [stdout] 230 |             let mut new_carry = false;
[INFO] [stdout]     |                     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `new_borrow` is never read
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:250:21
[INFO] [stdout]     |
[INFO] [stdout] 250 |             let mut new_borrow = false;
[INFO] [stdout]     |                     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bit_columns`, `point_column`, `gkr_proof`, and `output` are never read
[INFO] [stdout]   --> src/gkr_msm_simple.rs:74:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct MSMProof<G: CurveGroup> {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 74 |     bit_columns: Vec<G>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 75 |     point_column: G,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 76 |     gkr_proof: BintreeProof<G::ScalarField>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 77 |     output: Vec<G::ScalarField>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ev_folded` is never read
[INFO] [stdout]   --> src/protocol/sumcheck.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct SumcheckPolyMapProver<F: PrimeField> {
[INFO] [stdout]    |            --------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     ev_folded: Option<F>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mapping` and `SplitAt` are never constructed
[INFO] [stdout]   --> src/protocol/triangle.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub enum TriangleAddLayer<F: PrimeField> {
[INFO] [stdout]    |          ---------------- variants in this enum
[INFO] [stdout] 21 |     Mapping(PolynomialMapping<F>),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 22 |     SplitAt(usize, usize),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TriangleAddLayer` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new_split` and `new_pmap` are never used
[INFO] [stdout]   --> src/protocol/triangle.rs:59:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | impl<F: PrimeField> TriangleAddLayer<F> {
[INFO] [stdout]    | --------------------------------------- associated functions in this implementation
[INFO] [stdout] 59 |     pub fn new_split(num_polys: usize, var_idx: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn new_pmap(f: Box<dyn Fn(&[F]) -> Vec<F> + Send + Sync>, degree: usize, num_i: usize, num_o: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TriangleAddParams` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:268:10
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub type TriangleAddParams<F: PrimeField> = GenericGKRParams<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TriangleAddProtocol` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:269:10
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub type TriangleAddProtocol<F: PrimeField> = GenericGKRProtocol<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TriangleAddProver` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:270:10
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub type TriangleAddProver<F: PrimeField> = GenericGKRProver<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TriangleAddVerifier` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:271:10
[INFO] [stdout]     |
[INFO] [stdout] 271 | pub type TriangleAddVerifier<F: PrimeField> = GenericGKRVerifier<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `t1_l1` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:273:8
[INFO] [stdout]     |
[INFO] [stdout] 273 | pub fn t1_l1<F: Field + TwistedEdwardsConfig>(pts: &[F]) -> Vec<F> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `l1_at` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:288:8
[INFO] [stdout]     |
[INFO] [stdout] 288 | pub fn l1_at<F: Field + TwistedEdwardsConfig>(depth: usize, pts: &[F]) -> Vec<F> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `l2_at` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:299:8
[INFO] [stdout]     |
[INFO] [stdout] 299 | pub fn l2_at<F: Field + TwistedEdwardsConfig>(depth: usize, pts: &[F]) -> Vec<F> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `l3_at` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:309:8
[INFO] [stdout]     |
[INFO] [stdout] 309 | pub fn l3_at<F: Field + TwistedEdwardsConfig>(depth: usize, pts: &[F]) -> Vec<F> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `l1_i_at` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:319:8
[INFO] [stdout]     |
[INFO] [stdout] 319 | pub fn l1_i_at(depth: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `l2_i_at` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:323:8
[INFO] [stdout]     |
[INFO] [stdout] 323 | pub fn l2_i_at(depth: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `l3_i_at` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:327:8
[INFO] [stdout]     |
[INFO] [stdout] 327 | pub fn l3_i_at(depth: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_triangle_add_params` is never used
[INFO] [stdout]    --> src/protocol/triangle.rs:332:8
[INFO] [stdout]     |
[INFO] [stdout] 332 | pub fn make_triangle_add_params<F: PrimeField + TwistedEdwardsConfig>(mut num_vars: usize, split_var_idx: usize) -> TriangleAddParams<F> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mapping` and `Split` are never constructed
[INFO] [stdout]   --> src/protocol/generic_gkr.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum BintreeAddLayer<F: PrimeField> {
[INFO] [stdout]    |          --------------- variants in this enum
[INFO] [stdout] 16 |     Mapping(PolynomialMapping<F>),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 17 |     Split(usize),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BintreeAddLayer` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new_split` and `new_pmap` are never used
[INFO] [stdout]   --> src/protocol/generic_gkr.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 53 | impl<F: PrimeField> BintreeAddLayer<F> {
[INFO] [stdout]    | -------------------------------------- associated functions in this implementation
[INFO] [stdout] 54 |     pub fn new_split(num_polys: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub fn new_pmap(f: Box<dyn Fn(&[F]) -> Vec<F> + Send + Sync>, degree: usize, num_i: usize, num_o: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ComponentProof` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:284:11
[INFO] [stdout]     |
[INFO] [stdout] 284 | pub trait ComponentProof<F: PrimeField> {}
[INFO] [stdout]     |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ComponentProver` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:286:11
[INFO] [stdout]     |
[INFO] [stdout] 286 | pub trait ComponentProver<F: PrimeField> {}
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ComponentVerifier` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:288:11
[INFO] [stdout]     |
[INFO] [stdout] 288 | pub trait ComponentVerifier<F: PrimeField> {}
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:314:12
[INFO] [stdout]     |
[INFO] [stdout] 313 | impl<F: PrimeField, R: GKRComponentRegistry<F>> GenericGKRParams<F, R> {
[INFO] [stdout]     | ---------------------------------------------------------------------- associated function in this implementation
[INFO] [stdout] 314 |     pub fn new(layers: Vec<R::Layer>, num_vars: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `BintreeParams` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:551:10
[INFO] [stdout]     |
[INFO] [stdout] 551 | pub type BintreeParams<F: PrimeField> = GenericGKRParams<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `BintreeProtocol` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:553:10
[INFO] [stdout]     |
[INFO] [stdout] 553 | pub type BintreeProtocol<F: PrimeField> = GenericGKRProtocol<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `BintreeProver` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:554:10
[INFO] [stdout]     |
[INFO] [stdout] 554 | pub type BintreeProver<F: PrimeField> = GenericGKRProver<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `BintreeVerifier` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:555:10
[INFO] [stdout]     |
[INFO] [stdout] 555 | pub type BintreeVerifier<F: PrimeField> = GenericGKRVerifier<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `poly` is never read
[INFO] [stdout]  --> src/polynomial/format_helpers.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct RowFormatPoly<F: PrimeField> {
[INFO] [stdout]   |            ------------- field in this struct
[INFO] [stdout] 6 |     poly: FragmentedPoly<F>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `split_var` is never read
[INFO] [stdout]   --> src/cleanup/protocols/gkrs/triangle_add.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct TriangleAdd<F: PrimeField, Transcript: TProofTranscript2> {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 53 |     gkr: SimpleGKR<SinglePointClaims<F>, SplitVecVecMapGKRAdvice<F>, Transcript, TriangleAddWG<F>>,
[INFO] [stdout] 54 |     split_var: SplitIdx,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `multirow_vars`, `bucket_vars`, and `horizontal_vars` are never read
[INFO] [stdout]    --> src/cleanup/protocols/pippenger_ending.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub struct PippengerBucketed<F: PrimeField + TwistedEdwardsConfig, Transcript: TProofTranscript2> {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 103 |     pub multirow_vars: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 104 |     pub bucket_vars: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 105 |     pub horizontal_vars: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vecvec_domain` is never used
[INFO] [stdout]    --> src/cleanup/protocols/pippenger_ending.rs:161:8
[INFO] [stdout]     |
[INFO] [stdout] 161 | pub fn vecvec_domain<F: PrimeField>(input: &VecVecPolynomial<F>) -> VecVecPolynomial<F> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `gamma`, `folded_f`, and `degree` are never read
[INFO] [stdout]   --> src/n_n_o/n_n_sumcheck.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct NonNatOpen<FNat: PrimeField> {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     gamma: Option<FNat>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     folded_f: Option<Arc<dyn Fn(&[FNat]) -> FNat + Sync + Send>>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 32 |     degree: usize,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NonNatOpen` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `num_limbs_in_fe` is never read
[INFO] [stdout]   --> src/n_n_o/cleanup/non_native_evs.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct Eqpoly<F: Zero>{
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 43 |     pub evals: Vec<F>,
[INFO] [stdout] 44 |     num_limbs_in_fe: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Eqpoly` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `GKR_MSM` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = help: convert the identifier to snake case: `gkr_msm`
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/triangle.rs:268:31
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub type TriangleAddParams<F: PrimeField> = GenericGKRParams<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |                             --^^^^^^^^^^
[INFO] [stdout]     |                             | |
[INFO] [stdout]     |                             | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                             help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout]     = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/triangle.rs:269:33
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub type TriangleAddProtocol<F: PrimeField> = GenericGKRProtocol<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |                               --^^^^^^^^^^
[INFO] [stdout]     |                               | |
[INFO] [stdout]     |                               | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                               help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/triangle.rs:270:31
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub type TriangleAddProver<F: PrimeField> = GenericGKRProver<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |                             --^^^^^^^^^^
[INFO] [stdout]     |                             | |
[INFO] [stdout]     |                             | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                             help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/triangle.rs:271:33
[INFO] [stdout]     |
[INFO] [stdout] 271 | pub type TriangleAddVerifier<F: PrimeField> = GenericGKRVerifier<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |                               --^^^^^^^^^^
[INFO] [stdout]     |                               | |
[INFO] [stdout]     |                               | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                               help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:551:27
[INFO] [stdout]     |
[INFO] [stdout] 551 | pub type BintreeParams<F: PrimeField> = GenericGKRParams<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |                         --^^^^^^^^^^
[INFO] [stdout]     |                         | |
[INFO] [stdout]     |                         | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                         help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:553:29
[INFO] [stdout]     |
[INFO] [stdout] 553 | pub type BintreeProtocol<F: PrimeField> = GenericGKRProtocol<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |                           --^^^^^^^^^^
[INFO] [stdout]     |                           | |
[INFO] [stdout]     |                           | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                           help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:554:27
[INFO] [stdout]     |
[INFO] [stdout] 554 | pub type BintreeProver<F: PrimeField> = GenericGKRProver<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |                         --^^^^^^^^^^
[INFO] [stdout]     |                         | |
[INFO] [stdout]     |                         | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                         help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:555:29
[INFO] [stdout]     |
[INFO] [stdout] 555 | pub type BintreeVerifier<F: PrimeField> = GenericGKRVerifier<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |                           --^^^^^^^^^^
[INFO] [stdout]     |                           | |
[INFO] [stdout]     |                           | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                           help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `N` should have a snake case name
[INFO] [stdout]    --> src/polynomial/fragmented.rs:528:13
[INFO] [stdout]     |
[INFO] [stdout] 528 |         let N = self.len();
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `M` should have a snake case name
[INFO] [stdout]    --> src/polynomial/fragmented.rs:560:21
[INFO] [stdout]     |
[INFO] [stdout] 560 |                 let M = source.fragments[0].len;
[INFO] [stdout]     |                     ^ help: convert the identifier to snake case: `m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Pxy` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/matrix_poly.rs:97:40
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn make_prover_response<F: PrimeField>(Pxy: &[u64], Px: &[u64], Py: &[u64], num_limbs: usize) -> Vec<F> 
[INFO] [stdout]    |                                        ^^^ help: convert the identifier to snake case: `pxy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Px` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/matrix_poly.rs:97:53
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn make_prover_response<F: PrimeField>(Pxy: &[u64], Px: &[u64], Py: &[u64], num_limbs: usize) -> Vec<F> 
[INFO] [stdout]    |                                                     ^^ help: convert the identifier to snake case: `px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Py` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/matrix_poly.rs:97:65
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn make_prover_response<F: PrimeField>(Pxy: &[u64], Px: &[u64], Py: &[u64], num_limbs: usize) -> Vec<F> 
[INFO] [stdout]    |                                                                 ^^ help: convert the identifier to snake case: `py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P1` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 |         let P1 = acc[k*num_limbs .. k*num_limbs + num_limbs].iter().map(|limbs| limbs_to_fe(limbs)).collect_vec();
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `p1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P2` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:125:13
[INFO] [stdout]     |
[INFO] [stdout] 125 |         let P2 = Py[k*num_limbs.. k*num_limbs + num_limbs].iter().map(|limb| F::from(*limb)).collect_vec();
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `p2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Pxy` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:272:13
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let Pxy = &native_repr.values;
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `pxy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Px` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:277:14
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |              ^^ help: convert the identifier to snake case: `px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Py` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:277:18
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |                  ^^ help: convert the identifier to snake case: `py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Pxy` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:292:13
[INFO] [stdout]     |
[INFO] [stdout] 292 |         let Pxy = Pxy.iter().map(|x| F::from(*x)).collect();
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `pxy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Px` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |         let Px = Px.iter().map(|x| F::from(*x)).collect();
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Py` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:294:13
[INFO] [stdout]     |
[INFO] [stdout] 294 |         let Py = Py.iter().map(|x| F::from(*x)).collect();
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Px` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:319:14
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |              ^^ help: convert the identifier to snake case: `px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Py` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:319:18
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |                  ^^ help: convert the identifier to snake case: `py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:12:43
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn coeffs_to_evals_univar<F1, F2>(P: &[F1], degree: usize) -> Vec<F2>
[INFO] [stdout]    |                                           ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:44:44
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub fn coeffs_to_evals_with_precompute(P: &[i128], desired_len: usize) -> Vec<i128>{
[INFO] [stdout]    |                                            ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:74:33
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn extend_evals<F1, F2>(P: &[F1], degree: usize) -> F2
[INFO] [stdout]    |                                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:94:43
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn extend_evals_backwards<F1, F2>(P: &[F1], degree: usize) -> F2
[INFO] [stdout]    |                                           ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:113:33
[INFO] [stdout]     |
[INFO] [stdout] 113 |     pub fn extend_evals_by_l<F>(P: &mut Vec<F>, degree: usize, l: usize)
[INFO] [stdout]     |                                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:125:44
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub fn extend_evals_by_2l_symmetric<F>(P: &[F], degree: usize, l: usize) -> Vec<F>
[INFO] [stdout]     |                                            ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:129:17
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let mut P: Vec<_> = P.to_vec();
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P1` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:140:41
[INFO] [stdout]     |
[INFO] [stdout] 140 |     pub fn multiply_two_polys_coeffs<F>(P1: &[F], P2:&[F]) -> Vec<F>
[INFO] [stdout]     |                                         ^^ help: convert the identifier to snake case: `p1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P2` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:140:51
[INFO] [stdout]     |
[INFO] [stdout] 140 |     pub fn multiply_two_polys_coeffs<F>(P1: &[F], P2:&[F]) -> Vec<F>
[INFO] [stdout]     |                                                   ^^ help: convert the identifier to snake case: `p2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `big_num_to_bits_F` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:334:12
[INFO] [stdout]     |
[INFO] [stdout] 334 |     pub fn big_num_to_bits_F<F: PrimeField, const N: usize>(x: BigInt<N>) -> Vec<F>
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `big_num_to_bits_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Debug`
[INFO] [stdout]  --> examples/pippenger.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::fmt::Debug;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing::dispatcher::DefaultGuard`
[INFO] [stdout]  --> examples/pippenger.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tracing::dispatcher::DefaultGuard;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Layer`, `Registry`, `fmt`, and `reload`
[INFO] [stdout]   --> examples/pippenger.rs:13:37
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tracing_subscriber::{EnvFilter, fmt, prelude::*, reload, Registry, Layer};
[INFO] [stdout]    |                                     ^^^              ^^^^^^  ^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing_subscriber::fmt::format::FmtSpan`
[INFO] [stdout]   --> examples/pippenger.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tracing_subscriber::fmt::format::FmtSpan;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Layered`
[INFO] [stdout]   --> examples/pippenger.rs:15:33
[INFO] [stdout]    |
[INFO] [stdout] 15 | use tracing_subscriber::layer::{Layered, SubscriberExt};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TryInitError`
[INFO] [stdout]   --> examples/pippenger.rs:16:51
[INFO] [stdout]    |
[INFO] [stdout] 16 | use tracing_subscriber::util::{SubscriberInitExt, TryInitError};
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tracing_tree::HierarchicalLayer`
[INFO] [stdout]   --> examples/pippenger.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use tracing_tree::HierarchicalLayer;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `trace`
[INFO] [stdout]   --> examples/nn.rs:67:10
[INFO] [stdout]    |
[INFO] [stdout] 67 |     let (trace, image_polys) = SumcheckPolyMap::witness(polys.clone(), &params);
[INFO] [stdout]    |          ^^^^^ help: if this is intentional, prefix it with an underscore: `_trace`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `image_polys`
[INFO] [stdout]   --> examples/nn.rs:67:17
[INFO] [stdout]    |
[INFO] [stdout] 67 |     let (trace, image_polys) = SumcheckPolyMap::witness(polys.clone(), &params);
[INFO] [stdout]    |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_image_polys`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `point`
[INFO] [stdout]   --> examples/nn.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     let point: Vec<F> = (0..(num_vars as u64)).map(|i| F::from(i * 13)).collect();
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v_transcript`
[INFO] [stdout]    --> examples/nn.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |     let mut v_transcript: IndexedProofTranscript<G1Projective, _> = IndexedProofTranscript::new(TestTranscript::as_this(&p_transcript.tra...
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_v_transcript`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> examples/nn.rs:157:9
[INFO] [stdout]     |
[INFO] [stdout] 157 |     let mut p_transcript: IndexedProofTranscript<G1Projective, _> = IndexedProofTranscript::new(TestTranscript::new());
[INFO] [stdout]     |         ----^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> examples/nn.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 158 |     let mut v_transcript: IndexedProofTranscript<G1Projective, _> = IndexedProofTranscript::new(TestTranscript::as_this(&p_transcript.tra...
[INFO] [stdout]     |         ----^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `combfunc` is never used
[INFO] [stdout]   --> examples/nn.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn combfunc<F: PrimeField>(i: &[F]) -> Vec<F> {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prepare_inputs` is never used
[INFO] [stdout]   --> examples/nn.rs:48:4
[INFO] [stdout]    |
[INFO] [stdout] 48 | fn prepare_inputs<F: PrimeField>(){
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 195 |         c: todo!(),
[INFO] [stdout]     |            ------- any code following this expression is unreachable
[INFO] [stdout] 196 |         d: todo!(),
[INFO] [stdout]     |            ^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `todo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:209:27
[INFO] [stdout]     |
[INFO] [stdout] 208 |         phase_2_comm: todo!(),
[INFO] [stdout]     |                       ------- any code following this expression is unreachable
[INFO] [stdout] 209 |         d_bucketed_basis: todo!(),
[INFO] [stdout]     |                           ^^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `todo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prelude`
[INFO] [stdout]   --> examples/pippenger.rs:13:42
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tracing_subscriber::{EnvFilter, fmt, prelude::*, reload, Registry, Layer};
[INFO] [stdout]    |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Subscriber`
[INFO] [stdout]  --> examples/pippenger.rs:8:38
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tracing::{info_span, instrument, Subscriber};
[INFO] [stdout]   |                                      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time_records`
[INFO] [stdout]    --> examples/pippenger.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |     let time_records = transcript_p.time_records();
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_time_records`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]  --> src/msm_nonaffine.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rayon::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFn`
[INFO] [stdout]   --> src/utils.rs:20:36
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFnSO`
[INFO] [stdout]   --> src/utils.rs:20:43
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]  --> src/protocol/bintree.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_std::iterable::Iterable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UniformRand`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:708:29
[INFO] [stdout]     |
[INFO] [stdout] 708 |     use ark_std::{test_rng, UniformRand};
[INFO] [stdout]     |                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RngCore`
[INFO] [stdout]    --> src/protocol/triangle.rs:356:30
[INFO] [stdout]     |
[INFO] [stdout] 356 |     use ark_std::rand::{Rng, RngCore};
[INFO] [stdout]     |                              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]  --> src/protocol/generic_gkr.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ark_std::iterable::Iterable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 | use ark_ff::{BigInteger, Field, PrimeField};
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Zero`
[INFO] [stdout]  --> src/copoly.rs:9:33
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ark_ff::{Field, PrimeField, Zero};
[INFO] [stdout]   |                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]  --> src/copoly.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ark_ff::{Field, PrimeField, Zero};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/polynomial/fragmented.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::hash::{Hash, Hasher};
[INFO] [stdout]   |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RngCore`
[INFO] [stdout]   --> src/polynomial/fragmented.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 | use ark_std::rand::{Rng, RngCore};
[INFO] [stdout]    |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ark_std::iterable::Iterable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndexedParallelIterator`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::iter::{IndexedParallelIterator, IntoParallelIterator, IntoParallelRefIterator, IntoParallelRefMutIterator, ParallelIterator};
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:5:14
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_ff::{Field, PrimeField};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::copoly::Copolynomial`
[INFO] [stdout]   --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::copoly::Copolynomial;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::sumcheck::Sumcheckable`
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:498:9
[INFO] [stdout]     |
[INFO] [stdout] 498 |     use crate::protocol::sumcheck::Sumcheckable as OldSumcheckable;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::copoly::Copolynomial`
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:495:9
[INFO] [stdout]     |
[INFO] [stdout] 495 |     use crate::copoly::Copolynomial;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]  --> src/cleanup/protocols/sumchecks/dense_eq.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_std::iterable::Iterable;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/cleanup/polys/vecvec.rs:1:34
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::{Debug, Formatter, Write};
[INFO] [stdout]   |                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AlgFn`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/gkr.rs:6:36
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::cleanup::utils::algfn::{AlgFn, AlgFnSO};
[INFO] [stdout]   |                                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]   --> src/cleanup/polys/vecvec.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RngCore`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rand::{Rng, RngCore};
[INFO] [stdout]   |                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RandomlyGeneratedPoly`
[INFO] [stdout]    --> src/cleanup/protocols/gkrs/bintree_add.rs:390:60
[INFO] [stdout]     |
[INFO] [stdout] 390 |     use crate::cleanup::polys::common::{Densify, MapSplit, RandomlyGeneratedPoly};
[INFO] [stdout]     |                                                            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]    --> src/cleanup/protocols/gkrs/bintree_add.rs:381:9
[INFO] [stdout]     |
[INFO] [stdout] 381 |     use std::error::Error;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GKRLayer`
[INFO] [stdout]  --> src/cleanup/protocols/gkrs/triangle_add.rs:7:44
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::cleanup::protocols::gkrs::gkr::{GKRLayer, SimpleGKR};
[INFO] [stdout]   |                                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]    --> src/cleanup/protocols/gkrs/triangle_add.rs:265:9
[INFO] [stdout]     |
[INFO] [stdout] 265 |     use ark_std::iterable::Iterable;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `One`
[INFO] [stdout]   --> src/cleanup/protocols/pushforward/pushforward.rs:14:18
[INFO] [stdout]    |
[INFO] [stdout] 14 | use num_traits::{One, Zero};
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ark_ff::{Field, PrimeField};
[INFO] [stdout]   |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Zero`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:8:23
[INFO] [stdout]   |
[INFO] [stdout] 8 | use num_traits::{One, Zero};
[INFO] [stdout]   |                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `One`
[INFO] [stdout]  --> src/cleanup/polys/dense.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | use num_traits::{One, Zero};
[INFO] [stdout]   |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/gkr_msm_simple.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn load(file: &mut File) -> Self {
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/gkr_msm_simple.rs:55:24
[INFO] [stdout]    |
[INFO] [stdout] 55 |     pub fn dump(&self, file: &mut File) {
[INFO] [stdout]    |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tmp`
[INFO] [stdout]    --> src/gkr_msm_simple.rs:168:9
[INFO] [stdout]     |
[INFO] [stdout] 168 |     let tmp = _points_table_poly.0.len().log_2();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_tmp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_scalar_bits`
[INFO] [stdout]    --> src/gkr_msm_simple.rs:375:13
[INFO] [stdout]     |
[INFO] [stdout] 375 |         let num_scalar_bits = 1 << log_num_scalar_bits;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_scalar_bits`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_bit_columns`
[INFO] [stdout]    --> src/gkr_msm_simple.rs:378:13
[INFO] [stdout]     |
[INFO] [stdout] 378 |         let num_bit_columns = 1 << log_num_bit_columns;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_bit_columns`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_args`
[INFO] [stdout]    --> src/utils.rs:431:13
[INFO] [stdout]     |
[INFO] [stdout] 431 |         let n_args = 3;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_args`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/utils.rs:470:13
[INFO] [stdout]     |
[INFO] [stdout] 470 |         for i in 0..100 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_args`
[INFO] [stdout]    --> src/utils.rs:471:17
[INFO] [stdout]     |
[INFO] [stdout] 471 |             let n_args = 3;
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_args`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/utils.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |         for i in 0..100 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_args`
[INFO] [stdout]    --> src/utils.rs:510:17
[INFO] [stdout]     |
[INFO] [stdout] 510 |             let n_args = 3;
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_args`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split_idx`
[INFO] [stdout]    --> src/utils.rs:505:9
[INFO] [stdout]     |
[INFO] [stdout] 505 |         split_idx: SplitIdx
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_split_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/sumcheck.rs:345:9
[INFO] [stdout]     |
[INFO] [stdout] 345 |         mut args: Self::Trace,
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `accum`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:434:17
[INFO] [stdout]     |
[INFO] [stdout] 434 |         let mut accum = vec![vec![F::zero(); combined_degree + 1]; mle_half];
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_accum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/sumcheck.rs:434:13
[INFO] [stdout]     |
[INFO] [stdout] 434 |         let mut accum = vec![vec![F::zero(); combined_degree + 1]; mle_half];
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `e_res` is assigned to, but never used
[INFO] [stdout]    --> src/protocol/sumcheck.rs:780:17
[INFO] [stdout]     |
[INFO] [stdout] 780 |         let mut e_res = e_prover.round(gamma_c, &mut e_p_transcript);
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_e_res` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `e_res` is never read
[INFO] [stdout]    --> src/protocol/sumcheck.rs:784:13
[INFO] [stdout]     |
[INFO] [stdout] 784 |             e_res = e_prover.round(challenge, &mut e_p_transcript);
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `e_res` is assigned to, but never used
[INFO] [stdout]    --> src/protocol/sumcheck.rs:870:17
[INFO] [stdout]     |
[INFO] [stdout] 870 |         let mut e_res = e_prover.round(gamma_c, &mut e_p_transcript);
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_e_res` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `e_res` is never read
[INFO] [stdout]    --> src/protocol/sumcheck.rs:874:13
[INFO] [stdout]     |
[INFO] [stdout] 874 |             e_res = e_prover.round(challenge, &mut e_p_transcript);
[INFO] [stdout]     |             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `j`
[INFO] [stdout]    --> src/protocol/sumcheck.rs:920:66
[INFO] [stdout]     |
[INFO] [stdout] 920 |         let polys: Vec<FragmentedPoly<Fr>> = (0..num_polys).map(|j| FragmentedPoly::rand_with_shape(gen, shape.clone())).collect();
[INFO] [stdout]     |                                                                  ^ help: if this is intentional, prefix it with an underscore: `_j`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unexpected_evals`
[INFO] [stdout]    --> src/protocol/split.rs:163:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |         let unexpected_evals : Vec<_> = polys.iter().map(|poly| poly.evaluate(&unexpected_point)).collect();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unexpected_evals`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]    --> src/protocol/triangle.rs:186:39
[INFO] [stdout]     |
[INFO] [stdout] 186 |             TriangleAddLayer::SplitAt(split, var_idx) => {
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]    --> src/protocol/triangle.rs:217:39
[INFO] [stdout]     |
[INFO] [stdout] 217 |             TriangleAddLayer::SplitAt(split, var_idx) => {
[INFO] [stdout]     |                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proof`
[INFO] [stdout]    --> src/protocol/triangle.rs:239:34
[INFO] [stdout]     |
[INFO] [stdout] 239 |                     Some((claim, proof)) => Some((Self::ClaimsNew::Single(claim), Self::Proof::SplitAt))
[INFO] [stdout]     |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_proof`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/triangle.rs:332:71
[INFO] [stdout]     |
[INFO] [stdout] 332 | pub fn make_triangle_add_params<F: PrimeField + TwistedEdwardsConfig>(mut num_vars: usize, split_var_idx: usize) -> TriangleAddParams<F> {
[INFO] [stdout]     |                                                                       ----^^^^^^^^
[INFO] [stdout]     |                                                                       |
[INFO] [stdout]     |                                                                       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gen`
[INFO] [stdout]    --> src/protocol/triangle.rs:426:17
[INFO] [stdout]     |
[INFO] [stdout] 426 |             let gen = &mut test_rng();
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_gen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sector_size`
[INFO] [stdout]    --> src/protocol/triangle.rs:489:40
[INFO] [stdout]     |
[INFO] [stdout] 489 |                     let (d, split_var, sector_size) = gen(rng, num_vars, num_splits);
[INFO] [stdout]     |                                        ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sector_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gen`
[INFO] [stdout]    --> src/protocol/triangle.rs:549:17
[INFO] [stdout]     |
[INFO] [stdout] 549 |             let gen = &mut test_rng();
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_gen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sector_size`
[INFO] [stdout]    --> src/protocol/triangle.rs:619:40
[INFO] [stdout]     |
[INFO] [stdout] 619 |                     let (d, split_var, sector_size) = gen(rng, num_vars, num_splits);
[INFO] [stdout]     |                                        ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sector_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sector_size`
[INFO] [stdout]    --> src/protocol/triangle.rs:784:51
[INFO] [stdout]     |
[INFO] [stdout] 784 |                     let (points, data, split_var, sector_size) = gen(rng, num_vars);
[INFO] [stdout]     |                                                   ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sector_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `trace`
[INFO] [stdout]    --> src/protocol/triangle.rs:793:26
[INFO] [stdout]     |
[INFO] [stdout] 793 |                     let (trace, output) = TriangleAddProtocol::witness(input.clone(), &params);
[INFO] [stdout]     |                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_trace`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out_vecs`
[INFO] [stdout]    --> src/protocol/triangle.rs:794:25
[INFO] [stdout]     |
[INFO] [stdout] 794 |                     let out_vecs = output.iter().map(|p| p.vec()).collect_vec();
[INFO] [stdout]     |                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_out_vecs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/triangle.rs:797:25
[INFO] [stdout]     |
[INFO] [stdout] 797 |                     for mut chunk in points_vec.chunks(1 << (points_vec.len().log_2() - split_var)) {
[INFO] [stdout]     |                         ----^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sector_size`
[INFO] [stdout]    --> src/protocol/triangle.rs:950:51
[INFO] [stdout]     |
[INFO] [stdout] 950 |                     let (points, data, split_var, sector_size) = gen(rng, num_vars);
[INFO] [stdout]     |                                                   ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sector_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `points_vec`
[INFO] [stdout]    --> src/protocol/triangle.rs:953:25
[INFO] [stdout]     |
[INFO] [stdout] 953 |                     let points_vec = points.vec();
[INFO] [stdout]     |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_points_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:181:36
[INFO] [stdout]     |
[INFO] [stdout] 181 |             BintreeAddLayer::Split(split) => {
[INFO] [stdout]     |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:212:36
[INFO] [stdout]     |
[INFO] [stdout] 212 |             BintreeAddLayer::Split(split) => {
[INFO] [stdout]     |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proof`
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:233:30
[INFO] [stdout]     |
[INFO] [stdout] 233 |                 Some((claim, proof)) => Some((Self::ClaimsNew::Single(claim), Self::Proof::Split))
[INFO] [stdout]     |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_proof`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `label`
[INFO] [stdout]   --> src/transcript.rs:54:34
[INFO] [stdout]    |
[INFO] [stdout] 54 |     fn append_message(&mut self, label: &'static [u8], msg: &[u8]) {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/transcript.rs:54:56
[INFO] [stdout]    |
[INFO] [stdout] 54 |     fn append_message(&mut self, label: &'static [u8], msg: &[u8]) {
[INFO] [stdout]    |                                                        ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `label`
[INFO] [stdout]   --> src/transcript.rs:57:48
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn append_point<G2: CurveGroup>(&mut self, label: &'static[u8], point: impl Into<G2::Affine>) {
[INFO] [stdout]    |                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `point`
[INFO] [stdout]   --> src/transcript.rs:57:69
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn append_point<G2: CurveGroup>(&mut self, label: &'static[u8], point: impl Into<G2::Affine>) {
[INFO] [stdout]    |                                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `label`
[INFO] [stdout]   --> src/transcript.rs:85:34
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn append_message(&mut self, label: &'static [u8], msg: &[u8]) {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/commitments/kzg.rs:99:17
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub fn load(file: &mut File) -> Self {
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]    --> src/commitments/kzg.rs:103:24
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn dump(&self, file: &mut File) {
[INFO] [stdout]     |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/commitments/knuckles.rs:87:17
[INFO] [stdout]    |
[INFO] [stdout] 87 |     pub fn load(file: &mut File) -> Self {
[INFO] [stdout]    |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]   --> src/commitments/knuckles.rs:91:24
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn dump(&self, file: &mut File) {
[INFO] [stdout]    |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]    --> src/commitments/knuckles.rs:337:14
[INFO] [stdout]     |
[INFO] [stdout] 337 |         let (t, opening) = knuckles_pk.compute_t(&poly, &point);
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dedup_consts_len`
[INFO] [stdout]    --> src/copoly.rs:499:13
[INFO] [stdout]     |
[INFO] [stdout] 499 |             dedup_consts_len,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: try ignoring the field: `dedup_consts_len: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shape`
[INFO] [stdout]    --> src/copoly.rs:757:30
[INFO] [stdout]     |
[INFO] [stdout] 757 |     fn take_shape(&mut self, shape: Arc<OnceLock<Shape>>) {
[INFO] [stdout]     |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/copoly.rs:988:13
[INFO] [stdout]     |
[INFO] [stdout] 988 |         let mut y : Vec<Fr> = repeat_with(|| Fr::rand(rng)).take(6).collect();
[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]     --> src/copoly.rs:1098:13
[INFO] [stdout]      |
[INFO] [stdout] 1098 |         let mut shape = Arc::new(OnceLock::new());
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `split_consts` is never read
[INFO] [stdout]    --> src/polynomial/fragmented.rs:537:17
[INFO] [stdout]     |
[INFO] [stdout] 537 |         let mut split_consts = 0;
[INFO] [stdout]     |                 ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/polynomial/fragmented.rs:615:13
[INFO] [stdout]     |
[INFO] [stdout] 615 |         let mut tgt = [&mut l_data, &mut r_data];
[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]    --> src/polynomial/fragmented.rs:697:13
[INFO] [stdout]     |
[INFO] [stdout] 697 |         let mut target_iter = target.fragments.iter();
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]    --> src/polynomial/fragmented.rs:933:17
[INFO] [stdout]     |
[INFO] [stdout] 933 |             let split = shape.full_split();
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `el`
[INFO] [stdout]    --> src/polynomial/fragmented.rs:943:17
[INFO] [stdout]     |
[INFO] [stdout] 943 |             let el = v.iter().cloned().step_by(2).collect_vec();
[INFO] [stdout]     |                 ^^ help: if this is intentional, prefix it with an underscore: `_el`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `er`
[INFO] [stdout]    --> src/polynomial/fragmented.rs:944:17
[INFO] [stdout]     |
[INFO] [stdout] 944 |             let er = v.iter().cloned().skip(1).step_by(2).collect_vec();
[INFO] [stdout]     |                 ^^ help: if this is intentional, prefix it with an underscore: `_er`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]    --> src/polynomial/fragmented.rs:959:17
[INFO] [stdout]     |
[INFO] [stdout] 959 |             let split = shape.full_split();
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split`
[INFO] [stdout]     --> src/polynomial/fragmented.rs:1053:14
[INFO] [stdout]      |
[INFO] [stdout] 1053 |         let (split, perm) = shape.full_split();
[INFO] [stdout]      |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_split`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/polynomial/fragmented.rs:1268:13
[INFO] [stdout]      |
[INFO] [stdout] 1268 |         let mut rng = &mut test_rng();
[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]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:229:13
[INFO] [stdout]     |
[INFO] [stdout] 229 |         let mut sumcheckable = self.sumcheckable.take();
[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]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:232:18
[INFO] [stdout]     |
[INFO] [stdout] 232 |             Some(mut sumcheckable) => {
[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]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:315:13
[INFO] [stdout]     |
[INFO] [stdout] 315 |         let mut col_pad_results = self.func.exec(&inputs).collect_vec();
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:521:13
[INFO] [stdout]     |
[INFO] [stdout] 521 |         for i in 0..100 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f2`
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:542:17
[INFO] [stdout]     |
[INFO] [stdout] 542 |             let f2 = f.clone();
[INFO] [stdout]     |                 ^^ help: if this is intentional, prefix it with an underscore: `_f2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sum_claim`
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:551:17
[INFO] [stdout]     |
[INFO] [stdout] 551 |             let sum_claim = (0 .. 1 << num_vars).map(|i| f.exec(& [0, 1, 2, 3, 4, 5, 6].map(|j| dense_data[j][i]))).sum::<Fr>();
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sum_claim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_row_len`
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:565:17
[INFO] [stdout]     |
[INFO] [stdout] 565 |             let max_row_len = data.iter().map(|poly| poly.data.iter().map(|row| row.len())).flatten().max().unwrap();
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_row_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:583:17
[INFO] [stdout]     |
[INFO] [stdout] 583 |             for i in 0..num_vars {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:530:17
[INFO] [stdout]     |
[INFO] [stdout] 530 |             let mut data_l = generator(
[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]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:546:17
[INFO] [stdout]     |
[INFO] [stdout] 546 |             let mut point = (0..num_vars).map(|_| Fr::rand(rng)).collect_vec();
[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]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:548:17
[INFO] [stdout]     |
[INFO] [stdout] 548 |             let mut dense_eqpoly = eq_poly_sequence_last(&point).unwrap();
[INFO] [stdout]     |                 ----^^^^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:612:13
[INFO] [stdout]     |
[INFO] [stdout] 612 |         for i in 0..100 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:621:17
[INFO] [stdout]     |
[INFO] [stdout] 621 |             let mut data_l = generator(
[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]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:640:17
[INFO] [stdout]     |
[INFO] [stdout] 640 |             let mut sumcheck = VecVecDeg2Sumcheck::new(
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/dense_eq.rs:263:13
[INFO] [stdout]     |
[INFO] [stdout] 263 |         for i in 0..100 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f2`
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/dense_eq.rs:280:17
[INFO] [stdout]     |
[INFO] [stdout] 280 |             let f2 = f.clone();
[INFO] [stdout]     |                 ^^ help: if this is intentional, prefix it with an underscore: `_f2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/dense_eq.rs:266:17
[INFO] [stdout]     |
[INFO] [stdout] 266 |             let mut data_l = Vec::rand_points::<BandersnatchConfig, _>(
[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]    --> src/cleanup/protocols/sumchecks/dense_eq.rs:289:17
[INFO] [stdout]     |
[INFO] [stdout] 289 |             let mut point = (0..num_vars).map(|_| Fr::rand(rng)).collect_vec();
[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]    --> src/cleanup/protocols/sumchecks/dense_eq.rs:291:17
[INFO] [stdout]     |
[INFO] [stdout] 291 |             let mut dense_eqpoly = eq_poly_sequence_last(&point).unwrap();
[INFO] [stdout]     |                 ----^^^^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split_last`
[INFO] [stdout]    --> src/cleanup/protocols/gkrs/bintree_add.rs:468:13
[INFO] [stdout]     |
[INFO] [stdout] 468 |         let split_last = false;
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_split_last`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cleanup/protocols/gkrs/triangle_add.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |         let mut advices = builder::witness::build(
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/cleanup/protocols/gkrs/triangle_add.rs:295:63
[INFO] [stdout]     |
[INFO] [stdout] 295 |         let input_points = (0..(1 << (num_vars)) as u64).map(|i| {
[INFO] [stdout]     |                                                               ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cleanup/protocols/gkrs/triangle_add.rs:311:13
[INFO] [stdout]     |
[INFO] [stdout] 311 |         let mut wg = TriangleAddWG::new(inputs, num_vars - 2, split_var);
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `image`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:181:9
[INFO] [stdout]     |
[INFO] [stdout] 181 |     let image = buckets_transposed
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_image`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `phase_1_comm`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     let phase_1_comm = PipMSMPhase1Comm {
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_phase_1_comm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commitment_log_multiplicity`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 145 |     commitment_log_multiplicity: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commitment_log_multiplicity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commitment_key`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:146:5
[INFO] [stdout]     |
[INFO] [stdout] 146 |     commitment_key: &KnucklesProvingKey<Ctx>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commitment_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_matrix_commitments`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:396:13
[INFO] [stdout]     |
[INFO] [stdout] 396 |         let num_matrix_commitments = y_size.div_ceil(comm_mul);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_matrix_commitments`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r_y`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:575:13
[INFO] [stdout]     |
[INFO] [stdout] 575 |         let r_y = r_y.to_vec();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_r_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r_d`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:856:13
[INFO] [stdout]     |
[INFO] [stdout] 856 |         let r_d = r_d.to_vec();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_r_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r_c`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:858:13
[INFO] [stdout]     |
[INFO] [stdout] 858 |         let r_c = r_c.to_vec();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_r_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d_logsize`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:861:13
[INFO] [stdout]     |
[INFO] [stdout] 861 |         let d_logsize = self.d_logsize;
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_d_logsize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f_prod3`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:911:13
[INFO] [stdout]     |
[INFO] [stdout] 911 |         let f_prod3 = Prod3Fn::<F>::new();
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_f_prod3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f_inv`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:914:13
[INFO] [stdout]     |
[INFO] [stdout] 914 |         let f_inv = AddInversesFn::<F>::new();
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_f_inv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/pushforward.rs:923:13
[INFO] [stdout]     |
[INFO] [stdout] 923 |         for i in 0 .. x_logsize + y_logsize {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]     --> src/cleanup/protocols/pushforward/pushforward.rs:1000:13
[INFO] [stdout]      |
[INFO] [stdout] 1000 |         for i in 0..3 {
[INFO] [stdout]      |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]     --> src/cleanup/protocols/pushforward/pushforward.rs:1062:13
[INFO] [stdout]      |
[INFO] [stdout] 1062 |         for i in 0..2 {
[INFO] [stdout]      |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r_y`
[INFO] [stdout]     --> src/cleanup/protocols/pushforward/pushforward.rs:1127:13
[INFO] [stdout]      |
[INFO] [stdout] 1127 |         let r_y = r_y.to_vec();
[INFO] [stdout]      |             ^^^ help: if this is intentional, prefix it with an underscore: `_r_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gamma`
[INFO] [stdout]     --> src/cleanup/protocols/pushforward/pushforward.rs:1163:38
[INFO] [stdout]      |
[INFO] [stdout] 1163 | ...   let (PushforwardFinalClaims{ gamma, claims_about_matrix: output_claim_p, ..}, _) = pushforward.prove(&mut transcript, claim.clone()...
[INFO] [stdout]      |                                    ^^^^^ help: try ignoring the field: `gamma: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cleanup/protocols/pushforward/logup_mainphase.rs:288:17
[INFO] [stdout]     |
[INFO] [stdout] 288 |             let mut quotient : Vec<_> = (0 .. (1 << logsize)).map(|_| {
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total_num_vars`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger_ending.rs:182:13
[INFO] [stdout]     |
[INFO] [stdout] 182 |         let total_num_vars = multirow_vars + bucket_vars + point_vars;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_num_vars`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cleanup/protocols/pippenger_ending.rs:194:13
[INFO] [stdout]     |
[INFO] [stdout] 194 |         let mut bintree_triangle_wg = PippengerEndingWG::new(
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transcript`
[INFO] [stdout]   --> src/cleanup/protocols/zero_check.rs:24:21
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn prove(&self, transcript: &mut Transcript, mut claims: Self::ClaimsBefore, advice: Self::ProverInput) -> (Self::ClaimsAfter, Self::...
[INFO] [stdout]    |                     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transcript`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `advice`
[INFO] [stdout]   --> src/cleanup/protocols/zero_check.rs:24:82
[INFO] [stdout]    |
[INFO] [stdout] 24 | ... claims: Self::ClaimsBefore, advice: Self::ProverInput) -> (Self::ClaimsAfter, Self::ProverOutput) {
[INFO] [stdout]    |                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_advice`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cleanup/protocols/pippenger.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let mut pfs = PushForwardState::new(
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expected_msm`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:516:13
[INFO] [stdout]     |
[INFO] [stdout] 516 |         let expected_msm = BandersnatchConfig::msm(&points, &coefs).unwrap();
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected_msm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rng`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:623:13
[INFO] [stdout]     |
[INFO] [stdout] 623 |         let rng = &mut test_rng();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `time_records`
[INFO] [stdout]    --> src/cleanup/protocols/pippenger.rs:639:13
[INFO] [stdout]     |
[INFO] [stdout] 639 |         let time_records = transcript_p.time_records();
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_time_records`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/cleanup/protocols/multiopen_reduction.rs:82:33
[INFO] [stdout]    |
[INFO] [stdout] 82 |         let ((_, output_point), mut poly_evs) = generic_protocol_config.prove(transcript, so.claim, so);
[INFO] [stdout]    |                                 ----^^^^^^^^
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/cleanup/utils/algfn.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |         for i in 0..n_outs {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `inputs` is never read
[INFO] [stdout]    --> src/cleanup/polys/dense.rs:128:17
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let mut inputs = polys.iter().map(|_| F::zero()).collect_vec();
[INFO] [stdout]     |                 ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cleanup/polys/dense.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut row_chunked_iterator = (0..iter_ins[0].len()).map(|_| {
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `inputs` is never read
[INFO] [stdout]    --> src/cleanup/polys/vecvec.rs:521:17
[INFO] [stdout]     |
[INFO] [stdout] 521 |         let mut inputs = inputs.clone();
[INFO] [stdout]     |                 ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/cleanup/polys/vecvec.rs:721:13
[INFO] [stdout]     |
[INFO] [stdout] 721 |         for i in 0..(num_vars - vertical_vars) {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/cleanup/polys/vecvec.rs:753:13
[INFO] [stdout]     |
[INFO] [stdout] 753 |         for i in 0..(num_vars - num_vertical_vars) {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_args`
[INFO] [stdout]    --> src/cleanup/polys/vecvec.rs:806:13
[INFO] [stdout]     |
[INFO] [stdout] 806 |         let n_args = 3;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_args`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/cleanup/polys/vecvec.rs:827:13
[INFO] [stdout]     |
[INFO] [stdout] 827 |         for i in 0..100 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_args`
[INFO] [stdout]    --> src/cleanup/polys/vecvec.rs:828:17
[INFO] [stdout]     |
[INFO] [stdout] 828 |             let n_args = 3;
[INFO] [stdout]     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_args`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_args`
[INFO] [stdout]    --> src/cleanup/polys/vecvec.rs:855:13
[INFO] [stdout]     |
[INFO] [stdout] 855 |         let n_args = 3;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_args`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lsum`
[INFO] [stdout]   --> src/n_n_o/n_n_sumcheck.rs:98:13
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let lsum: Vec<_> = lpolys.iter().map(|p| p.sum()).collect();
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_lsum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rsum`
[INFO] [stdout]   --> src/n_n_o/n_n_sumcheck.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |         let rsum: Vec<_> = rpolys.iter().map(|p| p.sum()).collect();
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_rsum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `log_len`
[INFO] [stdout]    --> src/n_n_o/polynomial_with_zeros.rs:354:19
[INFO] [stdout]     |
[INFO] [stdout] 354 |         let (len, log_len) = (self.evals[0].len, self.evals[0].log_len);
[INFO] [stdout]     |                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_log_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/n_n_o/polynomial_with_zeros.rs:383:28
[INFO] [stdout]     |
[INFO] [stdout] 383 |     pub fn evaluate(&self, r: &[F]) -> F
[INFO] [stdout]     |                            ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `len`
[INFO] [stdout]    --> src/n_n_o/polynomial_with_zeros.rs:522:18
[INFO] [stdout]     |
[INFO] [stdout] 522 |             let (len, _log_len) = (self.evals[0].len, self.evals[0].log_len);
[INFO] [stdout]     |                  ^^^ help: if this is intentional, prefix it with an underscore: `_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c1`
[INFO] [stdout]   --> src/n_n_o/cleanup/matrix_poly.rs:90:14
[INFO] [stdout]    |
[INFO] [stdout] 90 |     let (b1, c1) = a1.overflowing_add(x1);
[INFO] [stdout]    |              ^^ help: if this is intentional, prefix it with an underscore: `_c1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:111:13
[INFO] [stdout]     |
[INFO] [stdout] 111 |     let mut b = false;
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |     let mut b = false;
[INFO] [stdout]     |         ----^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rng`
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:192:13
[INFO] [stdout]     |
[INFO] [stdout] 192 |         let rng = &mut test_rng();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:206:13
[INFO] [stdout]     |
[INFO] [stdout] 206 |         let r = make_prover_response::<Fq>(&coeffs1, &coeffs2, &coeffs3, num_limbs as usize);
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p_o`
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:296:48
[INFO] [stdout]     |
[INFO] [stdout] 296 |         let (SinglePointClaims { point, evs }, p_o) = triple_prod.prove(transcript, SumClaim{sum: sum_claim}, (Arc::new(Pxy), Px, Py));
[INFO] [stdout]     |                                                ^^^ help: if this is intentional, prefix it with an underscore: `_p_o`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Px`
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:319:14
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |              ^^ help: if this is intentional, prefix it with an underscore: `_Px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `Py`
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:319:18
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |                  ^^ help: if this is intentional, prefix it with an underscore: `_Py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `s`
[INFO] [stdout]    --> src/n_n_o/cleanup/non_native_evs.rs:136:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let s = (Fq::zero()).into_bigint().as_ref().len();
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `limb_size`
[INFO] [stdout]    --> src/n_n_o/cleanup/non_native_evs.rs:159:14
[INFO] [stdout]     |
[INFO] [stdout] 159 |         let (limb_size, num_limbs) = (64, 6);
[INFO] [stdout]     |              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_limb_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `poly`
[INFO] [stdout]    --> src/n_n_o/cleanup/non_native_evs.rs:164:13
[INFO] [stdout]     |
[INFO] [stdout] 164 |         let poly : Eqpoly<u64> = Eqpoly::new(&pt, num_limbs);
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_poly`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `poly`
[INFO] [stdout]    --> src/n_n_o/cleanup/non_native_evs.rs:165:13
[INFO] [stdout]     |
[INFO] [stdout] 165 |         let poly : Eqpoly<Fr> = Eqpoly::new(&pt, num_limbs);
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_poly`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:49:27
[INFO] [stdout]    |
[INFO] [stdout] 49 |         (0..v.len()).map(|i|{
[INFO] [stdout]    |                           ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `new_carry` is never read
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:230:21
[INFO] [stdout]     |
[INFO] [stdout] 230 |             let mut new_carry = false;
[INFO] [stdout]     |                     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `new_borrow` is never read
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:250:21
[INFO] [stdout]     |
[INFO] [stdout] 250 |             let mut new_borrow = false;
[INFO] [stdout]     |                     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `limb_len`
[INFO] [stdout]   --> src/n_n_o/tests.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let limb_len = roundup_to_pow2( Fq::MODULUS_BIT_SIZE  as usize / num_limbs);
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_limb_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `limb_len`
[INFO] [stdout]    --> src/n_n_o/tests.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |     let limb_len = roundup_to_pow2( Fq::MODULUS_BIT_SIZE  as usize / num_limbs);
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_limb_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `check_sum1`
[INFO] [stdout]    --> src/n_n_o/tests.rs:136:13
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let check_sum1 = p1_evals.iter()
[INFO] [stdout]     |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_check_sum1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rng`
[INFO] [stdout]    --> src/n_n_o/tests.rs:170:13
[INFO] [stdout]     |
[INFO] [stdout] 170 |     let mut rng  = test_rng();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `limb_len`
[INFO] [stdout]    --> src/n_n_o/tests.rs:172:9
[INFO] [stdout]     |
[INFO] [stdout] 172 |     let limb_len = roundup_to_pow2( Fq::MODULUS_BIT_SIZE  as usize / num_limbs);
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_limb_len`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `log_poly_size`
[INFO] [stdout]    --> src/n_n_o/tests.rs:175:9
[INFO] [stdout]     |
[INFO] [stdout] 175 |     let log_poly_size = 3u64;
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_log_poly_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/n_n_o/tests.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |     let mut rng  = test_rng();
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bit_columns`, `point_column`, `gkr_proof`, and `output` are never read
[INFO] [stdout]   --> src/gkr_msm_simple.rs:74:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct MSMProof<G: CurveGroup> {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 74 |     bit_columns: Vec<G>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 75 |     point_column: G,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 76 |     gkr_proof: BintreeProof<G::ScalarField>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 77 |     output: Vec<G::ScalarField>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ev_folded` is never read
[INFO] [stdout]   --> src/protocol/sumcheck.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct SumcheckPolyMapProver<F: PrimeField> {
[INFO] [stdout]    |            --------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     ev_folded: Option<F>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ComponentProof` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:284:11
[INFO] [stdout]     |
[INFO] [stdout] 284 | pub trait ComponentProof<F: PrimeField> {}
[INFO] [stdout]     |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ComponentProver` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:286:11
[INFO] [stdout]     |
[INFO] [stdout] 286 | pub trait ComponentProver<F: PrimeField> {}
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ComponentVerifier` is never used
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:288:11
[INFO] [stdout]     |
[INFO] [stdout] 288 | pub trait ComponentVerifier<F: PrimeField> {}
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `poly` is never read
[INFO] [stdout]  --> src/polynomial/format_helpers.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct RowFormatPoly<F: PrimeField> {
[INFO] [stdout]   |            ------------- field in this struct
[INFO] [stdout] 6 |     poly: FragmentedPoly<F>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `F` is never used
[INFO] [stdout]    --> src/cleanup/protocols/sumchecks/vecvec_eq.rs:610:14
[INFO] [stdout]     |
[INFO] [stdout] 610 |         type F = <BandersnatchConfig as CurveConfig>::BaseField;
[INFO] [stdout]     |              ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `F` is never used
[INFO] [stdout]    --> src/cleanup/protocols/gkrs/bintree_add.rs:410:14
[INFO] [stdout]     |
[INFO] [stdout] 410 |         type F = <BandersnatchConfig as CurveConfig>::BaseField;
[INFO] [stdout]     |              ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `F` is never used
[INFO] [stdout]    --> src/cleanup/protocols/gkrs/bintree_add.rs:463:14
[INFO] [stdout]     |
[INFO] [stdout] 463 |         type F = <BandersnatchConfig as CurveConfig>::BaseField;
[INFO] [stdout]     |              ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `F` is never used
[INFO] [stdout]    --> src/cleanup/protocols/gkrs/bintree_add.rs:516:14
[INFO] [stdout]     |
[INFO] [stdout] 516 |         type F = <BandersnatchConfig as CurveConfig>::BaseField;
[INFO] [stdout]     |              ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `F` is never used
[INFO] [stdout]    --> src/cleanup/protocols/gkrs/bintree_add.rs:574:14
[INFO] [stdout]     |
[INFO] [stdout] 574 |         type F = <BandersnatchConfig as CurveConfig>::BaseField;
[INFO] [stdout]     |              ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `split_var` is never read
[INFO] [stdout]   --> src/cleanup/protocols/gkrs/triangle_add.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct TriangleAdd<F: PrimeField, Transcript: TProofTranscript2> {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 53 |     gkr: SimpleGKR<SinglePointClaims<F>, SplitVecVecMapGKRAdvice<F>, Transcript, TriangleAddWG<F>>,
[INFO] [stdout] 54 |     split_var: SplitIdx,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `multirow_vars`, `bucket_vars`, and `horizontal_vars` are never read
[INFO] [stdout]    --> src/cleanup/protocols/pippenger_ending.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub struct PippengerBucketed<F: PrimeField + TwistedEdwardsConfig, Transcript: TProofTranscript2> {
[INFO] [stdout]     |            ----------------- fields in this struct
[INFO] [stdout] 103 |     pub multirow_vars: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 104 |     pub bucket_vars: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] 105 |     pub horizontal_vars: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `F` is never used
[INFO] [stdout]    --> src/cleanup/protocols/pippenger_ending.rs:183:14
[INFO] [stdout]     |
[INFO] [stdout] 183 |         type F = <BandersnatchConfig as CurveConfig>::BaseField;
[INFO] [stdout]     |              ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `gamma`, `folded_f`, and `degree` are never read
[INFO] [stdout]   --> src/n_n_o/n_n_sumcheck.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct NonNatOpen<FNat: PrimeField> {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     gamma: Option<FNat>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     folded_f: Option<Arc<dyn Fn(&[FNat]) -> FNat + Sync + Send>>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 32 |     degree: usize,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NonNatOpen` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `num_limbs_in_fe` is never read
[INFO] [stdout]   --> src/n_n_o/cleanup/non_native_evs.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct Eqpoly<F: Zero>{
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 43 |     pub evals: Vec<F>,
[INFO] [stdout] 44 |     num_limbs_in_fe: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Eqpoly` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/triangle.rs:268:31
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub type TriangleAddParams<F: PrimeField> = GenericGKRParams<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |                             --^^^^^^^^^^
[INFO] [stdout]     |                             | |
[INFO] [stdout]     |                             | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                             help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout]     = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/triangle.rs:269:33
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub type TriangleAddProtocol<F: PrimeField> = GenericGKRProtocol<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |                               --^^^^^^^^^^
[INFO] [stdout]     |                               | |
[INFO] [stdout]     |                               | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                               help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/triangle.rs:270:31
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub type TriangleAddProver<F: PrimeField> = GenericGKRProver<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |                             --^^^^^^^^^^
[INFO] [stdout]     |                             | |
[INFO] [stdout]     |                             | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                             help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/triangle.rs:271:33
[INFO] [stdout]     |
[INFO] [stdout] 271 | pub type TriangleAddVerifier<F: PrimeField> = GenericGKRVerifier<F, TriangleAddComponent<F>>;
[INFO] [stdout]     |                               --^^^^^^^^^^
[INFO] [stdout]     |                               | |
[INFO] [stdout]     |                               | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                               help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:551:27
[INFO] [stdout]     |
[INFO] [stdout] 551 | pub type BintreeParams<F: PrimeField> = GenericGKRParams<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |                         --^^^^^^^^^^
[INFO] [stdout]     |                         | |
[INFO] [stdout]     |                         | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                         help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:553:29
[INFO] [stdout]     |
[INFO] [stdout] 553 | pub type BintreeProtocol<F: PrimeField> = GenericGKRProtocol<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |                           --^^^^^^^^^^
[INFO] [stdout]     |                           | |
[INFO] [stdout]     |                           | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                           help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:554:27
[INFO] [stdout]     |
[INFO] [stdout] 554 | pub type BintreeProver<F: PrimeField> = GenericGKRProver<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |                         --^^^^^^^^^^
[INFO] [stdout]     |                         | |
[INFO] [stdout]     |                         | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                         help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> src/protocol/generic_gkr.rs:555:29
[INFO] [stdout]     |
[INFO] [stdout] 555 | pub type BintreeVerifier<F: PrimeField> = GenericGKRVerifier<F, BintreeAddComponent<F>>;
[INFO] [stdout]     |                           --^^^^^^^^^^
[INFO] [stdout]     |                           | |
[INFO] [stdout]     |                           | will not be checked at usage sites of the type alias
[INFO] [stdout]     |                           help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `N` should have a snake case name
[INFO] [stdout]    --> src/commitments/knuckles.rs:330:13
[INFO] [stdout]     |
[INFO] [stdout] 330 |         let N = 1 << num_vars;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `n`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `N` should have a snake case name
[INFO] [stdout]    --> src/polynomial/fragmented.rs:528:13
[INFO] [stdout]     |
[INFO] [stdout] 528 |         let N = self.len();
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `M` should have a snake case name
[INFO] [stdout]    --> src/polynomial/fragmented.rs:560:21
[INFO] [stdout]     |
[INFO] [stdout] 560 |                 let M = source.fragments[0].len;
[INFO] [stdout]     |                     ^ help: convert the identifier to snake case: `m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Pxy` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/matrix_poly.rs:97:40
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn make_prover_response<F: PrimeField>(Pxy: &[u64], Px: &[u64], Py: &[u64], num_limbs: usize) -> Vec<F> 
[INFO] [stdout]    |                                        ^^^ help: convert the identifier to snake case: `pxy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Px` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/matrix_poly.rs:97:53
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn make_prover_response<F: PrimeField>(Pxy: &[u64], Px: &[u64], Py: &[u64], num_limbs: usize) -> Vec<F> 
[INFO] [stdout]    |                                                     ^^ help: convert the identifier to snake case: `px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Py` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/matrix_poly.rs:97:65
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn make_prover_response<F: PrimeField>(Pxy: &[u64], Px: &[u64], Py: &[u64], num_limbs: usize) -> Vec<F> 
[INFO] [stdout]    |                                                                 ^^ help: convert the identifier to snake case: `py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P1` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 |         let P1 = acc[k*num_limbs .. k*num_limbs + num_limbs].iter().map(|limbs| limbs_to_fe(limbs)).collect_vec();
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `p1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P2` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:125:13
[INFO] [stdout]     |
[INFO] [stdout] 125 |         let P2 = Py[k*num_limbs.. k*num_limbs + num_limbs].iter().map(|limb| F::from(*limb)).collect_vec();
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `p2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Pxy` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:272:13
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let Pxy = &native_repr.values;
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `pxy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Px` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:277:14
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |              ^^ help: convert the identifier to snake case: `px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Py` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:277:18
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |                  ^^ help: convert the identifier to snake case: `py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Pxy` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:292:13
[INFO] [stdout]     |
[INFO] [stdout] 292 |         let Pxy = Pxy.iter().map(|x| F::from(*x)).collect();
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `pxy`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Px` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:293:13
[INFO] [stdout]     |
[INFO] [stdout] 293 |         let Px = Px.iter().map(|x| F::from(*x)).collect();
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Py` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:294:13
[INFO] [stdout]     |
[INFO] [stdout] 294 |         let Py = Py.iter().map(|x| F::from(*x)).collect();
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Px` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:319:14
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |              ^^ help: convert the identifier to snake case: `px`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Py` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/matrix_poly.rs:319:18
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let (Px, Py) = eq_poly.evals.split_at(mid);
[INFO] [stdout]     |                  ^^ help: convert the identifier to snake case: `py`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:12:43
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn coeffs_to_evals_univar<F1, F2>(P: &[F1], degree: usize) -> Vec<F2>
[INFO] [stdout]    |                                           ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:44:44
[INFO] [stdout]    |
[INFO] [stdout] 44 |     pub fn coeffs_to_evals_with_precompute(P: &[i128], desired_len: usize) -> Vec<i128>{
[INFO] [stdout]    |                                            ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:74:33
[INFO] [stdout]    |
[INFO] [stdout] 74 |     pub fn extend_evals<F1, F2>(P: &[F1], degree: usize) -> F2
[INFO] [stdout]    |                                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]   --> src/n_n_o/cleanup/utils.rs:94:43
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn extend_evals_backwards<F1, F2>(P: &[F1], degree: usize) -> F2
[INFO] [stdout]    |                                           ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:113:33
[INFO] [stdout]     |
[INFO] [stdout] 113 |     pub fn extend_evals_by_l<F>(P: &mut Vec<F>, degree: usize, l: usize)
[INFO] [stdout]     |                                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:125:44
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub fn extend_evals_by_2l_symmetric<F>(P: &[F], degree: usize, l: usize) -> Vec<F>
[INFO] [stdout]     |                                            ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:129:17
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let mut P: Vec<_> = P.to_vec();
[INFO] [stdout]     |                 ^ help: convert the identifier to snake case: `p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P1` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:140:41
[INFO] [stdout]     |
[INFO] [stdout] 140 |     pub fn multiply_two_polys_coeffs<F>(P1: &[F], P2:&[F]) -> Vec<F>
[INFO] [stdout]     |                                         ^^ help: convert the identifier to snake case: `p1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `P2` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:140:51
[INFO] [stdout]     |
[INFO] [stdout] 140 |     pub fn multiply_two_polys_coeffs<F>(P1: &[F], P2:&[F]) -> Vec<F>
[INFO] [stdout]     |                                                   ^^ help: convert the identifier to snake case: `p2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `big_num_to_bits_F` should have a snake case name
[INFO] [stdout]    --> src/n_n_o/cleanup/utils.rs:334:12
[INFO] [stdout]     |
[INFO] [stdout] 334 |     pub fn big_num_to_bits_F<F: PrimeField, const N: usize>(x: BigInt<N>) -> Vec<F>
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `big_num_to_bits_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 25.78s
[INFO] running `Command { std: "docker" "inspect" "b0ba1f338e2612215ff1926401d3a2e7ad87119721dd9b03cbea9e751500d23e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b0ba1f338e2612215ff1926401d3a2e7ad87119721dd9b03cbea9e751500d23e", kill_on_drop: false }`
[INFO] [stdout] b0ba1f338e2612215ff1926401d3a2e7ad87119721dd9b03cbea9e751500d23e
