[INFO] fetching crate ms_toollib 1.4.2...
[INFO] testing ms_toollib-1.4.2 against 1.69.0 for beta-1.70-1
[INFO] extracting crate ms_toollib 1.4.2 into /workspace/builds/worker-1-tc1/source
[INFO] validating manifest of crates.io crate ms_toollib 1.4.2 on toolchain 1.69.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate ms_toollib 1.4.2
[INFO] finished tweaking crates.io crate ms_toollib 1.4.2
[INFO] tweaked toml for crates.io crate ms_toollib 1.4.2 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" __CARGO_TEST_CHANNEL_OVERRIDE_DO_NOT_USE_THIS="nightly" "/workspace/cargo-home/bin/cargo" "+1.69.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded mapr v0.8.0
[INFO] [stderr]   Downloaded kstring v1.0.6
[INFO] [stderr]   Downloaded anymap2 v0.13.0
[INFO] [stderr]   Downloaded liquid v0.23.1
[INFO] [stderr]   Downloaded liquid-derive v0.23.1
[INFO] [stderr]   Downloaded liquid-lib v0.23.1
[INFO] [stderr]   Downloaded liquid-core v0.23.2
[INFO] [stderr]   Downloaded tract-onnx-opl v0.15.8
[INFO] [stderr]   Downloaded tract-hir v0.15.8
[INFO] [stderr]   Downloaded tract-nnef v0.15.8
[INFO] [stderr]   Downloaded tract-onnx v0.15.8
[INFO] [stderr]   Downloaded tract-linalg v0.15.8
[INFO] [stderr]   Downloaded tract-data v0.15.8
[INFO] [stderr]   Downloaded tract-core v0.15.8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e23757b9e6881919460ed9bd3d0a9a9d9a2133272d819d4272700b23cafe933b
[INFO] running `Command { std: "docker" "start" "-a" "e23757b9e6881919460ed9bd3d0a9a9d9a2133272d819d4272700b23cafe933b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e23757b9e6881919460ed9bd3d0a9a9d9a2133272d819d4272700b23cafe933b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e23757b9e6881919460ed9bd3d0a9a9d9a2133272d819d4272700b23cafe933b", kill_on_drop: false }`
[INFO] [stdout] e23757b9e6881919460ed9bd3d0a9a9d9a2133272d819d4272700b23cafe933b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] eac5022af3d920a5ab8821a49aea2553afbcd988276b14f0be8cbba592db5a99
[INFO] running `Command { std: "docker" "start" "-a" "eac5022af3d920a5ab8821a49aea2553afbcd988276b14f0be8cbba592db5a99", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling libc v0.2.142
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling either v1.8.1
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling thiserror v1.0.40
[INFO] [stderr]    Compiling anyhow v1.0.71
[INFO] [stderr]    Compiling proc-macro-hack v0.5.20+deprecated
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling ucd-trie v0.1.5
[INFO] [stderr]    Compiling pest v2.6.0
[INFO] [stderr]    Compiling aho-corasick v1.0.1
[INFO] [stderr]    Compiling unicode-segmentation v1.10.1
[INFO] [stderr]    Compiling regex-syntax v0.7.1
[INFO] [stderr]    Compiling proc-quote-impl v0.3.2
[INFO] [stderr]    Compiling serde v1.0.160
[INFO] [stderr]    Compiling pest_meta v2.6.0
[INFO] [stderr]    Compiling time v0.1.45
[INFO] [stderr]    Compiling iana-time-zone v0.1.56
[INFO] [stderr]    Compiling chrono v0.4.24
[INFO] [stderr]    Compiling num-bigint v0.4.3
[INFO] [stderr]    Compiling anymap2 v0.13.0
[INFO] [stderr]    Compiling doc-comment v0.3.3
[INFO] [stderr]    Compiling pest_generator v2.6.0
[INFO] [stderr]    Compiling matrixmultiply v0.3.4
[INFO] [stderr]    Compiling percent-encoding v2.2.0
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling regex v1.8.1
[INFO] [stderr]    Compiling tinyvec v1.6.0
[INFO] [stderr]    Compiling proc-quote v0.4.0
[INFO] [stderr]    Compiling pest_derive v2.6.0
[INFO] [stderr]    Compiling smallvec v1.10.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling unicode-normalization v0.1.22
[INFO] [stderr]    Compiling walkdir v2.3.3
[INFO] [stderr]    Compiling num-complex v0.4.3
[INFO] [stderr]    Compiling kstring v1.0.6
[INFO] [stderr]    Compiling cc v1.0.79
[INFO] [stderr]    Compiling io-lifetimes v1.0.10
[INFO] [stderr]    Compiling paste v1.0.12
[INFO] [stderr]    Compiling ndarray v0.15.6
[INFO] [stderr]    Compiling rustix v0.37.18
[INFO] [stderr]    Compiling half v1.8.2
[INFO] [stderr]    Compiling maplit v1.0.2
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling which v4.4.0
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling linux-raw-sys v0.3.6
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling downcast-rs v1.2.0
[INFO] [stderr]    Compiling bytes v1.4.0
[INFO] [stderr]    Compiling dyn-clone v1.0.11
[INFO] [stderr]    Compiling liquid-derive v0.23.1
[INFO] [stderr]    Compiling enum-ordinalize v3.1.12
[INFO] [stderr]    Compiling prost-derive v0.9.0
[INFO] [stderr]    Compiling derive-new v0.5.9
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]    Compiling educe v0.4.22
[INFO] [stderr]    Compiling prost-build v0.9.0
[INFO] [stderr]    Compiling fixedbitset v0.4.2
[INFO] [stderr]    Compiling fastrand v1.9.0
[INFO] [stderr]    Compiling petgraph v0.6.3
[INFO] [stderr]    Compiling miniz_oxide v0.7.1
[INFO] [stderr]    Compiling liquid-core v0.23.2
[INFO] [stderr]    Compiling tempfile v3.5.0
[INFO] [stderr]    Compiling prost v0.9.0
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]    Compiling filetime v0.2.21
[INFO] [stderr]    Compiling xattr v0.2.3
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling multimap v0.8.3
[INFO] [stderr]    Compiling tar v0.4.38
[INFO] [stderr]    Compiling prost-types v0.9.0
[INFO] [stderr]    Compiling flate2 v1.0.26
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling getrandom v0.2.9
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling liquid-lib v0.23.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling tract-data v0.15.8
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling mapr v0.8.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling tract-onnx v0.15.8
[INFO] [stderr]    Compiling liquid v0.23.1
[INFO] [stderr]    Compiling tract-linalg v0.15.8
[INFO] [stderr]    Compiling tract-core v0.15.8
[INFO] [stderr]    Compiling tract-nnef v0.15.8
[INFO] [stderr]    Compiling tract-hir v0.15.8
[INFO] [stderr]    Compiling tract-onnx-opl v0.15.8
[INFO] [stderr]    Compiling ms_toollib v1.4.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::board`
[INFO] [stdout]   --> src/utils.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::board;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH`
[INFO] [stdout]  --> src/miscellaneous.rs:2:26
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::time::{Instant, SystemTime, UNIX_EPOCH};
[INFO] [stdout]   |                          ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `C_query`, `cal_table_minenum_enum`, `enuOneStep`, `enum_comb`, `refresh_matrix`
[INFO] [stdout]  --> src/algorithms.rs:2:25
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cal3BV, cal3BV_exp, cal_table_minenum_enum, cal_table_minenum_recursion, chunk_matrixes,
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     combine, enuOneStep, enum_comb, find_a_border_cell, laymine, laymine_op, legalize_board,
[INFO] [stdout]   |              ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 4 |     refresh_board, refresh_matrix, refresh_matrixs, refresh_matrixses, unsolvable_structure,
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^
[INFO] [stdout] 5 |     BigNumber, C_query, C,
[INFO] [stdout]   |                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rng`, `SeedableRng`, `rngs::StdRng`
[INFO] [stdout]   --> src/algorithms.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | use rand::{rngs::StdRng, Rng, SeedableRng};
[INFO] [stdout]    |            ^^^^^^^^^^^^  ^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time`
[INFO] [stdout]   --> src/algorithms.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use std::time;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused label
[INFO] [stdout]    --> src/algorithms.rs:924:5
[INFO] [stdout]     |
[INFO] [stdout] 924 |     'inner: for i in 0..xs_cell_num + 1 {
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_labels)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::MouseState`
[INFO] [stdout]  --> src/videos/avf_video.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::MouseState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::miscellaneous::s_to_ms`
[INFO] [stdout]  --> src/videos/avf_video.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::miscellaneous::s_to_ms;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cal_board_numbers`
[INFO] [stdout]  --> src/videos/avf_video.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::utils::{cal_board_numbers};
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::MouseState`
[INFO] [stdout]  --> src/videos/rmv_video.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::MouseState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::miscellaneous::s_to_ms`
[INFO] [stdout]  --> src/videos/rmv_video.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::miscellaneous::s_to_ms;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::miscellaneous::s_to_ms`
[INFO] [stdout]  --> src/videos/evf_video.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::miscellaneous::s_to_ms;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::MouseState`
[INFO] [stdout]  --> src/videos/evf_video.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::MouseState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `solve_direct`, `solve_enumerate`, `solve_minus`
[INFO] [stdout]  --> src/videos/analyse_methods.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::algorithms::{solve_direct, solve_enumerate, solve_minus};
[INFO] [stdout]   |                         ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `refresh_matrix`, `refresh_matrixs`
[INFO] [stdout]  --> src/videos/analyse_methods.rs:2:38
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::utils::{is_good_chording, refresh_matrix, refresh_matrixs};
[INFO] [stdout]   |                                      ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ErrReadVideoReason`, `VideoActionStateRecorder`
[INFO] [stdout]  --> src/videos/analyse_methods.rs:4:44
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::videos::base_video::{BaseVideo, ErrReadVideoReason, VideoActionStateRecorder};
[INFO] [stdout]   |                                            ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::prelude`
[INFO] [stdout]   --> src/algorithms.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use rand::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_end`
[INFO] [stdout]    --> src/utils.rs:993:13
[INFO] [stdout]     |
[INFO] [stdout] 993 |         let is_end = cal_table_minenum_recursion_step(
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_end`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `min_op_id` is never read
[INFO] [stdout]     --> src/utils.rs:1428:29
[INFO] [stdout]      |
[INFO] [stdout] 1428 | ...                   min_op_id = board[x][y - 1];
[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: unused variable: `e`
[INFO] [stdout]    --> src/algorithms.rs:515:29
[INFO] [stdout]     |
[INFO] [stdout] 515 |                         Err(e) => {
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Num3BV` is assigned to, but never used
[INFO] [stdout]    --> src/algorithms.rs:695:21
[INFO] [stdout]     |
[INFO] [stdout] 695 |             let mut Num3BV;
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_Num3BV` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `Num3BV` is never read
[INFO] [stdout]    --> src/algorithms.rs:721:13
[INFO] [stdout]     |
[INFO] [stdout] 721 |             Num3BV = cal3BV(&Board_);
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]    --> src/algorithms.rs:963:13
[INFO] [stdout]     |
[INFO] [stdout] 963 |         for u in 0..3 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]     --> src/algorithms.rs:1057:9
[INFO] [stdout]      |
[INFO] [stdout] 1057 |     for i in 0..16 {
[INFO] [stdout]      |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]     --> src/algorithms.rs:1076:9
[INFO] [stdout]      |
[INFO] [stdout] 1076 |     for id in 0..n {
[INFO] [stdout]      |         ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board_of_game_input`
[INFO] [stdout]     --> src/algorithms.rs:1220:9
[INFO] [stdout]      |
[INFO] [stdout] 1220 |     let board_of_game_input: Vec<Vec<f32>> = board_of_game
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_board_of_game_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]     --> src/algorithms.rs:1219:49
[INFO] [stdout]      |
[INFO] [stdout] 1219 | pub fn agent_step(board_of_game: Vec<Vec<i32>>, pos: (usize, usize)) -> Result<usize, String> {
[INFO] [stdout]      |                                                 ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `flag_need` is never read
[INFO] [stdout]     --> src/algorithms.rs:1303:13
[INFO] [stdout]      |
[INFO] [stdout] 1303 |     let mut flag_need = true;
[INFO] [stdout]      |             ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `num` is assigned to, but never used
[INFO] [stdout]     --> src/videos/base_video.rs:1397:17
[INFO] [stdout]      |
[INFO] [stdout] 1397 |         let mut num = 0;
[INFO] [stdout]      |                 ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_num` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/utils.rs:893:13
[INFO] [stdout]     |
[INFO] [stdout] 893 |         let mut AddedTable = enumerateSub(NewId.len(), ExtraMine as usize);
[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]   --> src/algorithms.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let mut matrixColumn = xs[b].len();
[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/algorithms.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut matrixRow = bs[b].len();
[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/algorithms.rs:208:5
[INFO] [stdout]     |
[INFO] [stdout] 208 |     mut mine_num: f64,
[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/algorithms.rs:638:13
[INFO] [stdout]     |
[INFO] [stdout] 638 |         let mut not_mine;
[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/algorithms.rs:695:17
[INFO] [stdout]     |
[INFO] [stdout] 695 |             let mut Num3BV;
[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/algorithms.rs:1310:13
[INFO] [stdout]      |
[INFO] [stdout] 1310 |         let mut As = &mut Ases[t];
[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/algorithms.rs:1311:13
[INFO] [stdout]      |
[INFO] [stdout] 1311 |         let mut xs = &mut xses[t];
[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/algorithms.rs:1312:13
[INFO] [stdout]      |
[INFO] [stdout] 1312 |         let mut bs = &mut bses[t];
[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/OBR.rs:470:21
[INFO] [stdout]     |
[INFO] [stdout] 470 |                 let mut max_num = xx[i];
[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/OBR.rs:555:13
[INFO] [stdout]     |
[INFO] [stdout] 555 |         let mut x = self.data.clone();
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enum_comb` is never used
[INFO] [stdout]    --> src/utils.rs:767:8
[INFO] [stdout]     |
[INFO] [stdout] 767 | pub fn enum_comb(
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal_table_minenum_enum` is never used
[INFO] [stdout]     --> src/utils.rs:1079:8
[INFO] [stdout]      |
[INFO] [stdout] 1079 | pub fn cal_table_minenum_enum(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `div_usize` is never used
[INFO] [stdout]    --> src/utils.rs:677:12
[INFO] [stdout]     |
[INFO] [stdout] 677 |     pub fn div_usize(&mut self, k: usize) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `data_vec`, `r_2`, and `c_2` are never read
[INFO] [stdout]   --> src/OBR.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub struct ImageBoard {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 10 |     data_vec: Vec<usize>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     r_2: usize,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 16 |     c_1: usize,
[INFO] [stdout] 17 |     c_2: usize,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `OBR` should have a snake case name
[INFO] [stdout]   --> src/lib.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 | mod OBR;
[INFO] [stdout]    |     ^^^ help: convert the identifier to snake case: `obr`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:18:19
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn cal_op(mut Board: Vec<Vec<i32>>) -> usize {
[INFO] [stdout]    |                   ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Op` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut Op = 0;
[INFO] [stdout]    |             ^^ help: convert the identifier to snake case (notice the capitalization): `op`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `infectBoard` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn infectBoard(mut Board: Vec<Vec<i32>>, x: usize, y: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]    |    ^^^^^^^^^^^ help: convert the identifier to snake case: `infect_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:34:20
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn infectBoard(mut Board: Vec<Vec<i32>>, x: usize, y: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]    |                    ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `BoardofGame` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     BoardofGame: &Vec<Vec<i32>>,
[INFO] [stdout]    |     ^^^^^^^^^^^ help: convert the identifier to snake case: `boardof_game`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MatrixA` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |     let mut MatrixA: Vec<Vec<i32>> = Vec::new();
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `matrix_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Matrixx` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let mut Matrixx: Vec<(usize, usize)> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case: `matrixx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Matrixb` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:101:13
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let mut Matrixb: Vec<i32> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case: `matrixb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MatrixARowNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let mut MatrixARowNum = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_arow_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MatrixAColumnNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 |     let mut MatrixAColumnNum = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_acolumn_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `idMatrixx` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:126:37
[INFO] [stdout]     |
[INFO] [stdout] 126 | ...                   for idMatrixx in 0..MatrixAColumnNum {
[INFO] [stdout]     |                           ^^^^^^^^^ help: convert the identifier to snake case: `id_matrixx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Ases` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:294:13
[INFO] [stdout]     |
[INFO] [stdout] 294 |     let mut Ases = vec![];
[INFO] [stdout]     |             ^^^^ help: convert the identifier to snake case: `ases`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:297:14
[INFO] [stdout]     |
[INFO] [stdout] 297 |     let (mut As, mut xs, mut bs, _, _) = refresh_matrixs(board_of_game);
[INFO] [stdout]     |              ^^
[INFO] [stdout]     |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]     |
[INFO] [stdout] 297 |     let (mut r#as, mut xs, mut bs, _, _) = refresh_matrixs(board_of_game);
[INFO] [stdout]     |              ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MineNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:441:43
[INFO] [stdout]     |
[INFO] [stdout] 441 | pub fn laymine(row: usize, column: usize, MineNum: usize, X0: usize, Y0: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]     |                                           ^^^^^^^ help: convert the identifier to snake case: `mine_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `X0` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:441:59
[INFO] [stdout]     |
[INFO] [stdout] 441 | pub fn laymine(row: usize, column: usize, MineNum: usize, X0: usize, Y0: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]     |                                                           ^^ help: convert the identifier to snake case (notice the capitalization): `x0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Y0` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:441:70
[INFO] [stdout]     |
[INFO] [stdout] 441 | pub fn laymine(row: usize, column: usize, MineNum: usize, X0: usize, Y0: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]     |                                                                      ^^ help: convert the identifier to snake case (notice the capitalization): `y0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:443:13
[INFO] [stdout]     |
[INFO] [stdout] 443 |     let mut Board1Dim: Vec<i32> = vec![];
[INFO] [stdout]     |             ^^^^^^^^^ help: convert the identifier to snake case: `board1_dim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim_2` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:457:13
[INFO] [stdout]     |
[INFO] [stdout] 457 |     let mut Board1Dim_2: Vec<i32> = vec![];
[INFO] [stdout]     |             ^^^^^^^^^^^ help: convert the identifier to snake case: `board1_dim_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:467:13
[INFO] [stdout]     |
[INFO] [stdout] 467 |     let mut Board: Vec<Vec<i32>> = vec![vec![0; column]; row];
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MineNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:491:5
[INFO] [stdout]     |
[INFO] [stdout] 491 |     MineNum: usize,
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `mine_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `X0` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:492:5
[INFO] [stdout]     |
[INFO] [stdout] 492 |     X0: usize,
[INFO] [stdout]     |     ^^ help: convert the identifier to snake case (notice the capitalization): `x0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Y0` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:493:5
[INFO] [stdout]     |
[INFO] [stdout] 493 |     Y0: usize,
[INFO] [stdout]     |     ^^ help: convert the identifier to snake case (notice the capitalization): `y0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `areaOp` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:495:13
[INFO] [stdout]     |
[INFO] [stdout] 495 |     let mut areaOp = 9;
[INFO] [stdout]     |             ^^^^^^ help: convert the identifier to snake case: `area_op`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:508:13
[INFO] [stdout]     |
[INFO] [stdout] 508 |     let mut Board1Dim = vec![0; area - MineNum];
[INFO] [stdout]     |             ^^^^^^^^^ help: convert the identifier to snake case: `board1_dim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:520:13
[INFO] [stdout]     |
[INFO] [stdout] 520 |     let mut Board = vec![vec![0; column]; row];
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal3BVonIsland` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:543:8
[INFO] [stdout]     |
[INFO] [stdout] 543 | pub fn cal3BVonIsland(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `cal3_bvon_island`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:543:23
[INFO] [stdout]     |
[INFO] [stdout] 543 | pub fn cal3BVonIsland(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]     |                       ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Num3BVonIsland` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:547:13
[INFO] [stdout]     |
[INFO] [stdout] 547 |     let mut Num3BVonIsland = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `num3_bvon_island`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal3BV` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:569:8
[INFO] [stdout]     |
[INFO] [stdout] 569 | pub fn cal3BV(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]     |        ^^^^^^ help: convert the identifier to snake case: `cal3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:569:15
[INFO] [stdout]     |
[INFO] [stdout] 569 | pub fn cal3BV(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]     |               ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:576:5
[INFO] [stdout]     |
[INFO] [stdout] 576 |     Board: &Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `BoardofGame` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:577:5
[INFO] [stdout]     |
[INFO] [stdout] 577 |     BoardofGame: &mut Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to snake case: `boardof_game`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ClickedPoses` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:578:9
[INFO] [stdout]     |
[INFO] [stdout] 578 |     mut ClickedPoses: Vec<(usize, usize)>,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: convert the identifier to snake case: `clicked_poses`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `C` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:691:8
[INFO] [stdout]     |
[INFO] [stdout] 691 | pub fn C(n: usize, k: usize) -> BigNumber {
[INFO] [stdout]     |        ^ help: convert the identifier to snake case (notice the capitalization): `c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `C_query` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:707:8
[INFO] [stdout]     |
[INFO] [stdout] 707 | pub fn C_query<T, U>(n: T, k: U) -> usize
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `c_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MatrixA` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:728:5
[INFO] [stdout]     |
[INFO] [stdout] 728 |     MatrixA: &Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `matrix_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Matrixx` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:729:5
[INFO] [stdout]     |
[INFO] [stdout] 729 |     Matrixx: &Vec<(usize, usize)>,
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `matrixx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:734:13
[INFO] [stdout]     |
[INFO] [stdout] 734 |     let mut matrixA_squeeze = MatrixA.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:768:5
[INFO] [stdout]     |
[INFO] [stdout] 768 |     matrixA_squeeze: &Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Matrixb` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:770:5
[INFO] [stdout]     |
[INFO] [stdout] 770 |     Matrixb: &Vec<i32>,
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `matrixb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enumerateSub` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:860:4
[INFO] [stdout]     |
[INFO] [stdout] 860 | fn enumerateSub(Col: usize, MineNum: usize) -> Vec<Vec<usize>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^ help: convert the identifier to snake case: `enumerate_sub`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Col` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:860:17
[INFO] [stdout]     |
[INFO] [stdout] 860 | fn enumerateSub(Col: usize, MineNum: usize) -> Vec<Vec<usize>> {
[INFO] [stdout]     |                 ^^^ help: convert the identifier to snake case (notice the capitalization): `col`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MineNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:860:29
[INFO] [stdout]     |
[INFO] [stdout] 860 | fn enumerateSub(Col: usize, MineNum: usize) -> Vec<Vec<usize>> {
[INFO] [stdout]     |                             ^^^^^^^ help: convert the identifier to snake case: `mine_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Out` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:861:13
[INFO] [stdout]     |
[INFO] [stdout] 861 |     let mut Out: Vec<Vec<usize>> = vec![];
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case (notice the capitalization): `out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enuOneStep` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:873:8
[INFO] [stdout]     |
[INFO] [stdout] 873 | pub fn enuOneStep(mut AllTable: Vec<Vec<usize>>, TableId: Vec<usize>, b: i32) -> Vec<Vec<usize>> {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `enu_one_step`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `AllTable` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:873:23
[INFO] [stdout]     |
[INFO] [stdout] 873 | pub fn enuOneStep(mut AllTable: Vec<Vec<usize>>, TableId: Vec<usize>, b: i32) -> Vec<Vec<usize>> {
[INFO] [stdout]     |                       ^^^^^^^^ help: convert the identifier to snake case: `all_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `TableId` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:873:50
[INFO] [stdout]     |
[INFO] [stdout] 873 | pub fn enuOneStep(mut AllTable: Vec<Vec<usize>>, TableId: Vec<usize>, b: i32) -> Vec<Vec<usize>> {
[INFO] [stdout]     |                                                  ^^^^^^^ help: convert the identifier to snake case: `table_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `NewId` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:875:13
[INFO] [stdout]     |
[INFO] [stdout] 875 |     let mut NewId: Vec<usize> = vec![];
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `new_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `DelId` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:881:13
[INFO] [stdout]     |
[INFO] [stdout] 881 |     let mut DelId = vec![];
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `del_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ExtraMine` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:883:17
[INFO] [stdout]     |
[INFO] [stdout] 883 |         let mut ExtraMine = b;
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `extra_mine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `AddedTable` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:893:17
[INFO] [stdout]     |
[INFO] [stdout] 893 |         let mut AddedTable = enumerateSub(NewId.len(), ExtraMine as usize);
[INFO] [stdout]     |                 ^^^^^^^^^^ help: convert the identifier to snake case: `added_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:938:5
[INFO] [stdout]     |
[INFO] [stdout] 938 |     matrixA_squeeze: &Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1015:5
[INFO] [stdout]      |
[INFO] [stdout] 1015 |     matrixA_squeeze: &Vec<Vec<i32>>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1080:5
[INFO] [stdout]      |
[INFO] [stdout] 1080 |     matrixA_squeeze: &Vec<Vec<i32>>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `BoardCheck` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1166:29
[INFO] [stdout]      |
[INFO] [stdout] 1166 | pub fn unsolvable_structure(BoardCheck: &Vec<Vec<i32>>) -> bool {
[INFO] [stdout]      |                             ^^^^^^^^^^ help: convert the identifier to snake case: `board_check`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1169:13
[INFO] [stdout]      |
[INFO] [stdout] 1169 |     let mut Board = vec![vec![0; column]; row];
[INFO] [stdout]      |             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal3BV_exp` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1387:8
[INFO] [stdout]      |
[INFO] [stdout] 1387 | pub fn cal3BV_exp(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]      |        ^^^^^^^^^^ help: convert the identifier to snake case: `cal3_bv_exp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1387:19
[INFO] [stdout]      |
[INFO] [stdout] 1387 | pub fn cal3BV_exp(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]      |                   ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     As: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]    |
[INFO] [stdout] 48 |     r#as: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]    |     ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixColumn` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let mut matrixColumn = xs[b].len();
[INFO] [stdout]    |                 ^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_column`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixRow` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut matrixRow = bs[b].len();
[INFO] [stdout]    |                 ^^^^^^^^^ help: convert the identifier to snake case: `matrix_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ADval1` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:68:25
[INFO] [stdout]    |
[INFO] [stdout] 68 |                 let mut ADval1 = vec![];
[INFO] [stdout]    |                         ^^^^^^ help: convert the identifier to snake case: `adval1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ADvaln1` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:69:25
[INFO] [stdout]    |
[INFO] [stdout] 69 |                 let mut ADvaln1 = vec![];
[INFO] [stdout]    |                         ^^^^^^^ help: convert the identifier to snake case: `advaln1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `FlagAdj` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:70:25
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 let mut FlagAdj = false;
[INFO] [stdout]    |                         ^^^^^^^ help: convert the identifier to snake case: `flag_adj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `bDval` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:83:25
[INFO] [stdout]    |
[INFO] [stdout] 83 |                     let bDval = bs[b][i] - bs[b][j];
[INFO] [stdout]    |                         ^^^^^ help: convert the identifier to snake case: `b_dval`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:141:5
[INFO] [stdout]     |
[INFO] [stdout] 141 |     As: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]     |     ^^
[INFO] [stdout]     |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]     |
[INFO] [stdout] 141 |     r#as: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]     |     ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixColumn` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:151:17
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let mut matrixColumn = xs[b].len();
[INFO] [stdout]     |                 ^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_column`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixRow` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:152:17
[INFO] [stdout]     |
[INFO] [stdout] 152 |         let mut matrixRow = bs[b].len();
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `matrix_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze_s` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:238:13
[INFO] [stdout]     |
[INFO] [stdout] 238 |     let mut matrixA_squeeze_s: Vec<Vec<Vec<i32>>> = vec![];
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:242:14
[INFO] [stdout]     |
[INFO] [stdout] 242 |         let (matrixA_squeeze, matrixx_squeeze, combination_relationship) =
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:356:13
[INFO] [stdout]     |
[INFO] [stdout] 356 |     let mut T = BigNumber { a: 0.0, b: 0 };
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:551:5
[INFO] [stdout]     |
[INFO] [stdout] 551 |     As: &Vec<Vec<Vec<i32>>>,
[INFO] [stdout]     |     ^^
[INFO] [stdout]     |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]     |
[INFO] [stdout] 551 |     r#as: &Vec<Vec<Vec<i32>>>,
[INFO] [stdout]     |     ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze_s` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:563:13
[INFO] [stdout]     |
[INFO] [stdout] 563 |     let mut matrixA_squeeze_s: Vec<Vec<Vec<i32>>> = vec![];
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:569:14
[INFO] [stdout]     |
[INFO] [stdout] 569 |         let (matrixA_squeeze, matrixx_squeeze, combination_relationship) = combine(&As[i], &xs[i]);
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `isVictory` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:605:4
[INFO] [stdout]     |
[INFO] [stdout] 605 | fn isVictory(board_of_game: &Vec<Vec<i32>>, Board: &Vec<Vec<i32>>) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^ help: convert the identifier to snake case: `is_victory`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:605:45
[INFO] [stdout]     |
[INFO] [stdout] 605 | fn isVictory(board_of_game: &Vec<Vec<i32>>, Board: &Vec<Vec<i32>>) -> bool {
[INFO] [stdout]     |                                             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:621:20
[INFO] [stdout]     |
[INFO] [stdout] 621 | pub fn is_solvable(Board: &Vec<Vec<i32>>, x0: usize, y0: usize) -> bool {
[INFO] [stdout]     |                    ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:636:18
[INFO] [stdout]     |
[INFO] [stdout] 636 |         let (mut As, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]     |                  ^^
[INFO] [stdout]     |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]     |
[INFO] [stdout] 636 |         let (mut r#as, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]     |                  ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Num3BV` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:695:21
[INFO] [stdout]     |
[INFO] [stdout] 695 |             let mut Num3BV;
[INFO] [stdout]     |                     ^^^^^^ help: convert the identifier to snake case: `num3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:697:21
[INFO] [stdout]     |
[INFO] [stdout] 697 |             let mut Board = vec![vec![0; column]; row];
[INFO] [stdout]     |                     ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board_` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:706:21
[INFO] [stdout]     |
[INFO] [stdout] 706 |                 let Board_ = laymine_op(row, column, mine_num, x0, y0);
[INFO] [stdout]     |                     ^^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board_` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:720:17
[INFO] [stdout]     |
[INFO] [stdout] 720 |             let Board_ = laymine_op(row, column, mine_num, x0, y0);
[INFO] [stdout]     |                 ^^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:756:13
[INFO] [stdout]     |
[INFO] [stdout] 756 |     let mut Board;
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Ases` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:894:10
[INFO] [stdout]     |
[INFO] [stdout] 894 |     let (Ases, xses, mut bses) = refresh_matrixses(&bg);
[INFO] [stdout]     |          ^^^^ help: convert the identifier to snake case: `ases`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As_0` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:900:9
[INFO] [stdout]     |
[INFO] [stdout] 900 |     let As_0;
[INFO] [stdout]     |         ^^^^ help: convert the identifier to snake case: `as_0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sample_3BVs_exp` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1052:8
[INFO] [stdout]      |
[INFO] [stdout] 1052 | pub fn sample_3BVs_exp(x0: usize, y0: usize, n: usize) -> [usize; 382] {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `sample_3_bvs_exp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1077:17
[INFO] [stdout]      |
[INFO] [stdout] 1077 |         let mut Board1Dim = [0; 479];
[INFO] [stdout]      |                 ^^^^^^^^^ help: convert the identifier to snake case: `board1_dim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim_2` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1083:17
[INFO] [stdout]      |
[INFO] [stdout] 1083 |         let mut Board1Dim_2 = [0; 480];
[INFO] [stdout]      |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `board1_dim_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1093:17
[INFO] [stdout]      |
[INFO] [stdout] 1093 |         let mut Board: Vec<Vec<i32>> = vec![vec![0; 30]; 16];
[INFO] [stdout]      |                 ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `OBR_cell` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1114:4
[INFO] [stdout]      |
[INFO] [stdout] 1114 | fn OBR_cell(
[INFO] [stdout]      |    ^^^^^^^^ help: convert the identifier to snake case: `obr_cell`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `OBR_board` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1180:8
[INFO] [stdout]      |
[INFO] [stdout] 1180 | pub fn OBR_board(
[INFO] [stdout]      |        ^^^^^^^^^ help: convert the identifier to snake case: `obr_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1257:14
[INFO] [stdout]      |
[INFO] [stdout] 1257 |     let (mut As, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]      |              ^^
[INFO] [stdout]      |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]      |
[INFO] [stdout] 1257 |     let (mut r#as, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]      |              ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1265:5
[INFO] [stdout]      |
[INFO] [stdout] 1265 |     As: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]      |     ^^
[INFO] [stdout]      |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]      |
[INFO] [stdout] 1265 |     r#as: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]      |     ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Ases` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1304:14
[INFO] [stdout]      |
[INFO] [stdout] 1304 |     let (mut Ases, mut xses, mut bses) = refresh_matrixses(&board_of_game);
[INFO] [stdout]      |              ^^^^ help: convert the identifier to snake case: `ases`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1310:17
[INFO] [stdout]      |
[INFO] [stdout] 1310 |         let mut As = &mut Ases[t];
[INFO] [stdout]      |                 ^^
[INFO] [stdout]      |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]      |
[INFO] [stdout] 1310 |         let mut r#as = &mut Ases[t];
[INFO] [stdout]      |                 ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1366:14
[INFO] [stdout]      |
[INFO] [stdout] 1366 |     let (mut As, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]      |              ^^
[INFO] [stdout]      |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]      |
[INFO] [stdout] 1366 |     let (mut r#as, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]      |              ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_3BV` should have a snake case name
[INFO] [stdout]    --> src/board.rs:192:12
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn get_3BV(&mut self) -> usize {
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to snake case: `get_3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `flagedList` should have a snake case name
[INFO] [stdout]   --> src/videos/base_video.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     flagedList: Vec<(usize, usize)>, // 记录哪些雷曾经被标过，则再标这些雷不记为ce
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `flaged_list`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `flagChordingUseful` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:185:17
[INFO] [stdout]     |
[INFO] [stdout] 185 |         let mut flagChordingUseful = false; // 双击有效的基础上，周围是否有未打开的格子
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `flag_chording_useful`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `chordingCells` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:186:17
[INFO] [stdout]     |
[INFO] [stdout] 186 |         let mut chordingCells = vec![]; // 未打开的格子的集合
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: convert the identifier to snake case: `chording_cells`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `flagedNum` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:187:17
[INFO] [stdout]     |
[INFO] [stdout] 187 |         let mut flagedNum = 0; // 双击点周围的标雷数
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `flaged_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `surround3BV` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:188:17
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let mut surround3BV = 0; // 周围的3BV
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `surround3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `num_is_3BV` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:230:8
[INFO] [stdout]     |
[INFO] [stdout] 230 |     fn num_is_3BV(&self, x: usize, y: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `num_is_3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `K` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:338:26
[INFO] [stdout]     |
[INFO] [stdout] 338 |     fn narrow(&mut self, K: usize) {
[INFO] [stdout]     |                          ^ help: convert the identifier to snake case (notice the capitalization): `k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `KK` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:347:17
[INFO] [stdout]     |
[INFO] [stdout] 347 |         let mut KK = vec![0.0; K * K];
[INFO] [stdout]     |                 ^^ help: convert the identifier to snake case (notice the capitalization): `kk`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MID` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:348:13
[INFO] [stdout]     |
[INFO] [stdout] 348 |         let MID = (K * K) / 2;
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `mid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:521:13
[INFO] [stdout]     |
[INFO] [stdout] 521 |         for L in &lines {
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `N` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:550:13
[INFO] [stdout]     |
[INFO] [stdout] 550 |         let N = ((lines[lineslen - 1] - lines[0] + 2) as f32 / (max_j as f32 / 4.0)) as usize;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 153 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1m 40s
[INFO] running `Command { std: "docker" "inspect" "eac5022af3d920a5ab8821a49aea2553afbcd988276b14f0be8cbba592db5a99", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eac5022af3d920a5ab8821a49aea2553afbcd988276b14f0be8cbba592db5a99", kill_on_drop: false }`
[INFO] [stdout] eac5022af3d920a5ab8821a49aea2553afbcd988276b14f0be8cbba592db5a99
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f7a5a0c55b5687e4350321a810035026771f7181a406429a74b28365ea2121eb
[INFO] running `Command { std: "docker" "start" "-a" "f7a5a0c55b5687e4350321a810035026771f7181a406429a74b28365ea2121eb", kill_on_drop: false }`
[INFO] [stderr]    Compiling bencher v0.1.5
[INFO] [stdout] warning: unused import: `crate::board`
[INFO] [stdout]   --> src/utils.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::board;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH`
[INFO] [stdout]  --> src/miscellaneous.rs:2:26
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::time::{Instant, SystemTime, UNIX_EPOCH};
[INFO] [stdout]   |                          ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `C_query`, `cal_table_minenum_enum`, `enuOneStep`, `enum_comb`, `refresh_matrix`
[INFO] [stdout]  --> src/algorithms.rs:2:25
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cal3BV, cal3BV_exp, cal_table_minenum_enum, cal_table_minenum_recursion, chunk_matrixes,
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     combine, enuOneStep, enum_comb, find_a_border_cell, laymine, laymine_op, legalize_board,
[INFO] [stdout]   |              ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 4 |     refresh_board, refresh_matrix, refresh_matrixs, refresh_matrixses, unsolvable_structure,
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^
[INFO] [stdout] 5 |     BigNumber, C_query, C,
[INFO] [stdout]   |                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rng`, `SeedableRng`, `rngs::StdRng`
[INFO] [stdout]   --> src/algorithms.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | use rand::{rngs::StdRng, Rng, SeedableRng};
[INFO] [stdout]    |            ^^^^^^^^^^^^  ^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time`
[INFO] [stdout]   --> src/algorithms.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use std::time;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused label
[INFO] [stdout]    --> src/algorithms.rs:924:5
[INFO] [stdout]     |
[INFO] [stdout] 924 |     'inner: for i in 0..xs_cell_num + 1 {
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_labels)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::MouseState`
[INFO] [stdout]  --> src/videos/avf_video.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::MouseState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::miscellaneous::s_to_ms`
[INFO] [stdout]  --> src/videos/avf_video.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::miscellaneous::s_to_ms;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cal_board_numbers`
[INFO] [stdout]  --> src/videos/avf_video.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::utils::{cal_board_numbers};
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::MouseState`
[INFO] [stdout]  --> src/videos/rmv_video.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::MouseState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::miscellaneous::s_to_ms`
[INFO] [stdout]  --> src/videos/rmv_video.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::miscellaneous::s_to_ms;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::miscellaneous::s_to_ms`
[INFO] [stdout]  --> src/videos/evf_video.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::miscellaneous::s_to_ms;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::MouseState`
[INFO] [stdout]  --> src/videos/evf_video.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::MouseState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `solve_direct`, `solve_enumerate`, `solve_minus`
[INFO] [stdout]  --> src/videos/analyse_methods.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::algorithms::{solve_direct, solve_enumerate, solve_minus};
[INFO] [stdout]   |                         ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `refresh_matrix`, `refresh_matrixs`
[INFO] [stdout]  --> src/videos/analyse_methods.rs:2:38
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::utils::{is_good_chording, refresh_matrix, refresh_matrixs};
[INFO] [stdout]   |                                      ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ErrReadVideoReason`, `VideoActionStateRecorder`
[INFO] [stdout]  --> src/videos/analyse_methods.rs:4:44
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::videos::base_video::{BaseVideo, ErrReadVideoReason, VideoActionStateRecorder};
[INFO] [stdout]   |                                            ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::prelude`
[INFO] [stdout]   --> src/algorithms.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use rand::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_end`
[INFO] [stdout]    --> src/utils.rs:993:13
[INFO] [stdout]     |
[INFO] [stdout] 993 |         let is_end = cal_table_minenum_recursion_step(
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_end`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `min_op_id` is never read
[INFO] [stdout]     --> src/utils.rs:1428:29
[INFO] [stdout]      |
[INFO] [stdout] 1428 | ...                   min_op_id = board[x][y - 1];
[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: unused variable: `e`
[INFO] [stdout]    --> src/algorithms.rs:515:29
[INFO] [stdout]     |
[INFO] [stdout] 515 |                         Err(e) => {
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Num3BV` is assigned to, but never used
[INFO] [stdout]    --> src/algorithms.rs:695:21
[INFO] [stdout]     |
[INFO] [stdout] 695 |             let mut Num3BV;
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_Num3BV` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `Num3BV` is never read
[INFO] [stdout]    --> src/algorithms.rs:721:13
[INFO] [stdout]     |
[INFO] [stdout] 721 |             Num3BV = cal3BV(&Board_);
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]    --> src/algorithms.rs:963:13
[INFO] [stdout]     |
[INFO] [stdout] 963 |         for u in 0..3 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]     --> src/algorithms.rs:1057:9
[INFO] [stdout]      |
[INFO] [stdout] 1057 |     for i in 0..16 {
[INFO] [stdout]      |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]     --> src/algorithms.rs:1076:9
[INFO] [stdout]      |
[INFO] [stdout] 1076 |     for id in 0..n {
[INFO] [stdout]      |         ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board_of_game_input`
[INFO] [stdout]     --> src/algorithms.rs:1220:9
[INFO] [stdout]      |
[INFO] [stdout] 1220 |     let board_of_game_input: Vec<Vec<f32>> = board_of_game
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_board_of_game_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]     --> src/algorithms.rs:1219:49
[INFO] [stdout]      |
[INFO] [stdout] 1219 | pub fn agent_step(board_of_game: Vec<Vec<i32>>, pos: (usize, usize)) -> Result<usize, String> {
[INFO] [stdout]      |                                                 ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `flag_need` is never read
[INFO] [stdout]     --> src/algorithms.rs:1303:13
[INFO] [stdout]      |
[INFO] [stdout] 1303 |     let mut flag_need = true;
[INFO] [stdout]      |             ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `num` is assigned to, but never used
[INFO] [stdout]     --> src/videos/base_video.rs:1397:17
[INFO] [stdout]      |
[INFO] [stdout] 1397 |         let mut num = 0;
[INFO] [stdout]      |                 ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_num` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/utils.rs:893:13
[INFO] [stdout]     |
[INFO] [stdout] 893 |         let mut AddedTable = enumerateSub(NewId.len(), ExtraMine as usize);
[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]   --> src/algorithms.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let mut matrixColumn = xs[b].len();
[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/algorithms.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut matrixRow = bs[b].len();
[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/algorithms.rs:208:5
[INFO] [stdout]     |
[INFO] [stdout] 208 |     mut mine_num: f64,
[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/algorithms.rs:638:13
[INFO] [stdout]     |
[INFO] [stdout] 638 |         let mut not_mine;
[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/algorithms.rs:695:17
[INFO] [stdout]     |
[INFO] [stdout] 695 |             let mut Num3BV;
[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/algorithms.rs:1310:13
[INFO] [stdout]      |
[INFO] [stdout] 1310 |         let mut As = &mut Ases[t];
[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/algorithms.rs:1311:13
[INFO] [stdout]      |
[INFO] [stdout] 1311 |         let mut xs = &mut xses[t];
[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/algorithms.rs:1312:13
[INFO] [stdout]      |
[INFO] [stdout] 1312 |         let mut bs = &mut bses[t];
[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/OBR.rs:470:21
[INFO] [stdout]     |
[INFO] [stdout] 470 |                 let mut max_num = xx[i];
[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/OBR.rs:555:13
[INFO] [stdout]     |
[INFO] [stdout] 555 |         let mut x = self.data.clone();
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enum_comb` is never used
[INFO] [stdout]    --> src/utils.rs:767:8
[INFO] [stdout]     |
[INFO] [stdout] 767 | pub fn enum_comb(
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal_table_minenum_enum` is never used
[INFO] [stdout]     --> src/utils.rs:1079:8
[INFO] [stdout]      |
[INFO] [stdout] 1079 | pub fn cal_table_minenum_enum(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `div_usize` is never used
[INFO] [stdout]    --> src/utils.rs:677:12
[INFO] [stdout]     |
[INFO] [stdout] 677 |     pub fn div_usize(&mut self, k: usize) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `data_vec`, `r_2`, and `c_2` are never read
[INFO] [stdout]   --> src/OBR.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub struct ImageBoard {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 10 |     data_vec: Vec<usize>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     r_2: usize,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 16 |     c_1: usize,
[INFO] [stdout] 17 |     c_2: usize,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `OBR` should have a snake case name
[INFO] [stdout]   --> src/lib.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 | mod OBR;
[INFO] [stdout]    |     ^^^ help: convert the identifier to snake case: `obr`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:18:19
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn cal_op(mut Board: Vec<Vec<i32>>) -> usize {
[INFO] [stdout]    |                   ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Op` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut Op = 0;
[INFO] [stdout]    |             ^^ help: convert the identifier to snake case (notice the capitalization): `op`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `infectBoard` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn infectBoard(mut Board: Vec<Vec<i32>>, x: usize, y: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]    |    ^^^^^^^^^^^ help: convert the identifier to snake case: `infect_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:34:20
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn infectBoard(mut Board: Vec<Vec<i32>>, x: usize, y: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]    |                    ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `BoardofGame` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     BoardofGame: &Vec<Vec<i32>>,
[INFO] [stdout]    |     ^^^^^^^^^^^ help: convert the identifier to snake case: `boardof_game`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MatrixA` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |     let mut MatrixA: Vec<Vec<i32>> = Vec::new();
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `matrix_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Matrixx` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let mut Matrixx: Vec<(usize, usize)> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case: `matrixx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Matrixb` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:101:13
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let mut Matrixb: Vec<i32> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case: `matrixb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MatrixARowNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let mut MatrixARowNum = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_arow_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MatrixAColumnNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 |     let mut MatrixAColumnNum = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_acolumn_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `idMatrixx` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:126:37
[INFO] [stdout]     |
[INFO] [stdout] 126 | ...                   for idMatrixx in 0..MatrixAColumnNum {
[INFO] [stdout]     |                           ^^^^^^^^^ help: convert the identifier to snake case: `id_matrixx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Ases` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:294:13
[INFO] [stdout]     |
[INFO] [stdout] 294 |     let mut Ases = vec![];
[INFO] [stdout]     |             ^^^^ help: convert the identifier to snake case: `ases`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:297:14
[INFO] [stdout]     |
[INFO] [stdout] 297 |     let (mut As, mut xs, mut bs, _, _) = refresh_matrixs(board_of_game);
[INFO] [stdout]     |              ^^
[INFO] [stdout]     |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]     |
[INFO] [stdout] 297 |     let (mut r#as, mut xs, mut bs, _, _) = refresh_matrixs(board_of_game);
[INFO] [stdout]     |              ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MineNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:441:43
[INFO] [stdout]     |
[INFO] [stdout] 441 | pub fn laymine(row: usize, column: usize, MineNum: usize, X0: usize, Y0: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]     |                                           ^^^^^^^ help: convert the identifier to snake case: `mine_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `X0` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:441:59
[INFO] [stdout]     |
[INFO] [stdout] 441 | pub fn laymine(row: usize, column: usize, MineNum: usize, X0: usize, Y0: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]     |                                                           ^^ help: convert the identifier to snake case (notice the capitalization): `x0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Y0` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:441:70
[INFO] [stdout]     |
[INFO] [stdout] 441 | pub fn laymine(row: usize, column: usize, MineNum: usize, X0: usize, Y0: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]     |                                                                      ^^ help: convert the identifier to snake case (notice the capitalization): `y0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:443:13
[INFO] [stdout]     |
[INFO] [stdout] 443 |     let mut Board1Dim: Vec<i32> = vec![];
[INFO] [stdout]     |             ^^^^^^^^^ help: convert the identifier to snake case: `board1_dim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim_2` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:457:13
[INFO] [stdout]     |
[INFO] [stdout] 457 |     let mut Board1Dim_2: Vec<i32> = vec![];
[INFO] [stdout]     |             ^^^^^^^^^^^ help: convert the identifier to snake case: `board1_dim_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:467:13
[INFO] [stdout]     |
[INFO] [stdout] 467 |     let mut Board: Vec<Vec<i32>> = vec![vec![0; column]; row];
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MineNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:491:5
[INFO] [stdout]     |
[INFO] [stdout] 491 |     MineNum: usize,
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `mine_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `X0` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:492:5
[INFO] [stdout]     |
[INFO] [stdout] 492 |     X0: usize,
[INFO] [stdout]     |     ^^ help: convert the identifier to snake case (notice the capitalization): `x0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Y0` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:493:5
[INFO] [stdout]     |
[INFO] [stdout] 493 |     Y0: usize,
[INFO] [stdout]     |     ^^ help: convert the identifier to snake case (notice the capitalization): `y0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `areaOp` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:495:13
[INFO] [stdout]     |
[INFO] [stdout] 495 |     let mut areaOp = 9;
[INFO] [stdout]     |             ^^^^^^ help: convert the identifier to snake case: `area_op`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:508:13
[INFO] [stdout]     |
[INFO] [stdout] 508 |     let mut Board1Dim = vec![0; area - MineNum];
[INFO] [stdout]     |             ^^^^^^^^^ help: convert the identifier to snake case: `board1_dim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:520:13
[INFO] [stdout]     |
[INFO] [stdout] 520 |     let mut Board = vec![vec![0; column]; row];
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal3BVonIsland` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:543:8
[INFO] [stdout]     |
[INFO] [stdout] 543 | pub fn cal3BVonIsland(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `cal3_bvon_island`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:543:23
[INFO] [stdout]     |
[INFO] [stdout] 543 | pub fn cal3BVonIsland(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]     |                       ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Num3BVonIsland` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:547:13
[INFO] [stdout]     |
[INFO] [stdout] 547 |     let mut Num3BVonIsland = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `num3_bvon_island`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal3BV` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:569:8
[INFO] [stdout]     |
[INFO] [stdout] 569 | pub fn cal3BV(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]     |        ^^^^^^ help: convert the identifier to snake case: `cal3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:569:15
[INFO] [stdout]     |
[INFO] [stdout] 569 | pub fn cal3BV(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]     |               ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:576:5
[INFO] [stdout]     |
[INFO] [stdout] 576 |     Board: &Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `BoardofGame` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:577:5
[INFO] [stdout]     |
[INFO] [stdout] 577 |     BoardofGame: &mut Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to snake case: `boardof_game`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ClickedPoses` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:578:9
[INFO] [stdout]     |
[INFO] [stdout] 578 |     mut ClickedPoses: Vec<(usize, usize)>,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: convert the identifier to snake case: `clicked_poses`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `C` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:691:8
[INFO] [stdout]     |
[INFO] [stdout] 691 | pub fn C(n: usize, k: usize) -> BigNumber {
[INFO] [stdout]     |        ^ help: convert the identifier to snake case (notice the capitalization): `c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `C_query` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:707:8
[INFO] [stdout]     |
[INFO] [stdout] 707 | pub fn C_query<T, U>(n: T, k: U) -> usize
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `c_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MatrixA` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:728:5
[INFO] [stdout]     |
[INFO] [stdout] 728 |     MatrixA: &Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `matrix_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Matrixx` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:729:5
[INFO] [stdout]     |
[INFO] [stdout] 729 |     Matrixx: &Vec<(usize, usize)>,
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `matrixx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:734:13
[INFO] [stdout]     |
[INFO] [stdout] 734 |     let mut matrixA_squeeze = MatrixA.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:768:5
[INFO] [stdout]     |
[INFO] [stdout] 768 |     matrixA_squeeze: &Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Matrixb` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:770:5
[INFO] [stdout]     |
[INFO] [stdout] 770 |     Matrixb: &Vec<i32>,
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `matrixb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enumerateSub` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:860:4
[INFO] [stdout]     |
[INFO] [stdout] 860 | fn enumerateSub(Col: usize, MineNum: usize) -> Vec<Vec<usize>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^ help: convert the identifier to snake case: `enumerate_sub`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Col` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:860:17
[INFO] [stdout]     |
[INFO] [stdout] 860 | fn enumerateSub(Col: usize, MineNum: usize) -> Vec<Vec<usize>> {
[INFO] [stdout]     |                 ^^^ help: convert the identifier to snake case (notice the capitalization): `col`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MineNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:860:29
[INFO] [stdout]     |
[INFO] [stdout] 860 | fn enumerateSub(Col: usize, MineNum: usize) -> Vec<Vec<usize>> {
[INFO] [stdout]     |                             ^^^^^^^ help: convert the identifier to snake case: `mine_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Out` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:861:13
[INFO] [stdout]     |
[INFO] [stdout] 861 |     let mut Out: Vec<Vec<usize>> = vec![];
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case (notice the capitalization): `out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enuOneStep` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:873:8
[INFO] [stdout]     |
[INFO] [stdout] 873 | pub fn enuOneStep(mut AllTable: Vec<Vec<usize>>, TableId: Vec<usize>, b: i32) -> Vec<Vec<usize>> {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `enu_one_step`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `AllTable` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:873:23
[INFO] [stdout]     |
[INFO] [stdout] 873 | pub fn enuOneStep(mut AllTable: Vec<Vec<usize>>, TableId: Vec<usize>, b: i32) -> Vec<Vec<usize>> {
[INFO] [stdout]     |                       ^^^^^^^^ help: convert the identifier to snake case: `all_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `TableId` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:873:50
[INFO] [stdout]     |
[INFO] [stdout] 873 | pub fn enuOneStep(mut AllTable: Vec<Vec<usize>>, TableId: Vec<usize>, b: i32) -> Vec<Vec<usize>> {
[INFO] [stdout]     |                                                  ^^^^^^^ help: convert the identifier to snake case: `table_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `NewId` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:875:13
[INFO] [stdout]     |
[INFO] [stdout] 875 |     let mut NewId: Vec<usize> = vec![];
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `new_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `DelId` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:881:13
[INFO] [stdout]     |
[INFO] [stdout] 881 |     let mut DelId = vec![];
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `del_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ExtraMine` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:883:17
[INFO] [stdout]     |
[INFO] [stdout] 883 |         let mut ExtraMine = b;
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `extra_mine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `AddedTable` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:893:17
[INFO] [stdout]     |
[INFO] [stdout] 893 |         let mut AddedTable = enumerateSub(NewId.len(), ExtraMine as usize);
[INFO] [stdout]     |                 ^^^^^^^^^^ help: convert the identifier to snake case: `added_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:938:5
[INFO] [stdout]     |
[INFO] [stdout] 938 |     matrixA_squeeze: &Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1015:5
[INFO] [stdout]      |
[INFO] [stdout] 1015 |     matrixA_squeeze: &Vec<Vec<i32>>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1080:5
[INFO] [stdout]      |
[INFO] [stdout] 1080 |     matrixA_squeeze: &Vec<Vec<i32>>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `BoardCheck` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1166:29
[INFO] [stdout]      |
[INFO] [stdout] 1166 | pub fn unsolvable_structure(BoardCheck: &Vec<Vec<i32>>) -> bool {
[INFO] [stdout]      |                             ^^^^^^^^^^ help: convert the identifier to snake case: `board_check`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1169:13
[INFO] [stdout]      |
[INFO] [stdout] 1169 |     let mut Board = vec![vec![0; column]; row];
[INFO] [stdout]      |             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal3BV_exp` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1387:8
[INFO] [stdout]      |
[INFO] [stdout] 1387 | pub fn cal3BV_exp(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]      |        ^^^^^^^^^^ help: convert the identifier to snake case: `cal3_bv_exp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1387:19
[INFO] [stdout]      |
[INFO] [stdout] 1387 | pub fn cal3BV_exp(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]      |                   ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     As: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]    |
[INFO] [stdout] 48 |     r#as: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]    |     ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixColumn` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let mut matrixColumn = xs[b].len();
[INFO] [stdout]    |                 ^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_column`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixRow` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut matrixRow = bs[b].len();
[INFO] [stdout]    |                 ^^^^^^^^^ help: convert the identifier to snake case: `matrix_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ADval1` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:68:25
[INFO] [stdout]    |
[INFO] [stdout] 68 |                 let mut ADval1 = vec![];
[INFO] [stdout]    |                         ^^^^^^ help: convert the identifier to snake case: `adval1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ADvaln1` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:69:25
[INFO] [stdout]    |
[INFO] [stdout] 69 |                 let mut ADvaln1 = vec![];
[INFO] [stdout]    |                         ^^^^^^^ help: convert the identifier to snake case: `advaln1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `FlagAdj` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:70:25
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 let mut FlagAdj = false;
[INFO] [stdout]    |                         ^^^^^^^ help: convert the identifier to snake case: `flag_adj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `bDval` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:83:25
[INFO] [stdout]    |
[INFO] [stdout] 83 |                     let bDval = bs[b][i] - bs[b][j];
[INFO] [stdout]    |                         ^^^^^ help: convert the identifier to snake case: `b_dval`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:141:5
[INFO] [stdout]     |
[INFO] [stdout] 141 |     As: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]     |     ^^
[INFO] [stdout]     |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]     |
[INFO] [stdout] 141 |     r#as: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]     |     ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixColumn` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:151:17
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let mut matrixColumn = xs[b].len();
[INFO] [stdout]     |                 ^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_column`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixRow` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:152:17
[INFO] [stdout]     |
[INFO] [stdout] 152 |         let mut matrixRow = bs[b].len();
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `matrix_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze_s` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:238:13
[INFO] [stdout]     |
[INFO] [stdout] 238 |     let mut matrixA_squeeze_s: Vec<Vec<Vec<i32>>> = vec![];
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:242:14
[INFO] [stdout]     |
[INFO] [stdout] 242 |         let (matrixA_squeeze, matrixx_squeeze, combination_relationship) =
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:356:13
[INFO] [stdout]     |
[INFO] [stdout] 356 |     let mut T = BigNumber { a: 0.0, b: 0 };
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:551:5
[INFO] [stdout]     |
[INFO] [stdout] 551 |     As: &Vec<Vec<Vec<i32>>>,
[INFO] [stdout]     |     ^^
[INFO] [stdout]     |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]     |
[INFO] [stdout] 551 |     r#as: &Vec<Vec<Vec<i32>>>,
[INFO] [stdout]     |     ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze_s` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:563:13
[INFO] [stdout]     |
[INFO] [stdout] 563 |     let mut matrixA_squeeze_s: Vec<Vec<Vec<i32>>> = vec![];
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:569:14
[INFO] [stdout]     |
[INFO] [stdout] 569 |         let (matrixA_squeeze, matrixx_squeeze, combination_relationship) = combine(&As[i], &xs[i]);
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `isVictory` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:605:4
[INFO] [stdout]     |
[INFO] [stdout] 605 | fn isVictory(board_of_game: &Vec<Vec<i32>>, Board: &Vec<Vec<i32>>) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^ help: convert the identifier to snake case: `is_victory`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:605:45
[INFO] [stdout]     |
[INFO] [stdout] 605 | fn isVictory(board_of_game: &Vec<Vec<i32>>, Board: &Vec<Vec<i32>>) -> bool {
[INFO] [stdout]     |                                             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:621:20
[INFO] [stdout]     |
[INFO] [stdout] 621 | pub fn is_solvable(Board: &Vec<Vec<i32>>, x0: usize, y0: usize) -> bool {
[INFO] [stdout]     |                    ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:636:18
[INFO] [stdout]     |
[INFO] [stdout] 636 |         let (mut As, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]     |                  ^^
[INFO] [stdout]     |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]     |
[INFO] [stdout] 636 |         let (mut r#as, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]     |                  ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Num3BV` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:695:21
[INFO] [stdout]     |
[INFO] [stdout] 695 |             let mut Num3BV;
[INFO] [stdout]     |                     ^^^^^^ help: convert the identifier to snake case: `num3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:697:21
[INFO] [stdout]     |
[INFO] [stdout] 697 |             let mut Board = vec![vec![0; column]; row];
[INFO] [stdout]     |                     ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board_` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:706:21
[INFO] [stdout]     |
[INFO] [stdout] 706 |                 let Board_ = laymine_op(row, column, mine_num, x0, y0);
[INFO] [stdout]     |                     ^^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board_` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:720:17
[INFO] [stdout]     |
[INFO] [stdout] 720 |             let Board_ = laymine_op(row, column, mine_num, x0, y0);
[INFO] [stdout]     |                 ^^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:756:13
[INFO] [stdout]     |
[INFO] [stdout] 756 |     let mut Board;
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Ases` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:894:10
[INFO] [stdout]     |
[INFO] [stdout] 894 |     let (Ases, xses, mut bses) = refresh_matrixses(&bg);
[INFO] [stdout]     |          ^^^^ help: convert the identifier to snake case: `ases`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As_0` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:900:9
[INFO] [stdout]     |
[INFO] [stdout] 900 |     let As_0;
[INFO] [stdout]     |         ^^^^ help: convert the identifier to snake case: `as_0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sample_3BVs_exp` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1052:8
[INFO] [stdout]      |
[INFO] [stdout] 1052 | pub fn sample_3BVs_exp(x0: usize, y0: usize, n: usize) -> [usize; 382] {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `sample_3_bvs_exp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1077:17
[INFO] [stdout]      |
[INFO] [stdout] 1077 |         let mut Board1Dim = [0; 479];
[INFO] [stdout]      |                 ^^^^^^^^^ help: convert the identifier to snake case: `board1_dim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim_2` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1083:17
[INFO] [stdout]      |
[INFO] [stdout] 1083 |         let mut Board1Dim_2 = [0; 480];
[INFO] [stdout]      |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `board1_dim_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1093:17
[INFO] [stdout]      |
[INFO] [stdout] 1093 |         let mut Board: Vec<Vec<i32>> = vec![vec![0; 30]; 16];
[INFO] [stdout]      |                 ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `OBR_cell` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1114:4
[INFO] [stdout]      |
[INFO] [stdout] 1114 | fn OBR_cell(
[INFO] [stdout]      |    ^^^^^^^^ help: convert the identifier to snake case: `obr_cell`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `OBR_board` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1180:8
[INFO] [stdout]      |
[INFO] [stdout] 1180 | pub fn OBR_board(
[INFO] [stdout]      |        ^^^^^^^^^ help: convert the identifier to snake case: `obr_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1257:14
[INFO] [stdout]      |
[INFO] [stdout] 1257 |     let (mut As, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]      |              ^^
[INFO] [stdout]      |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]      |
[INFO] [stdout] 1257 |     let (mut r#as, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]      |              ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1265:5
[INFO] [stdout]      |
[INFO] [stdout] 1265 |     As: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]      |     ^^
[INFO] [stdout]      |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]      |
[INFO] [stdout] 1265 |     r#as: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]      |     ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Ases` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1304:14
[INFO] [stdout]      |
[INFO] [stdout] 1304 |     let (mut Ases, mut xses, mut bses) = refresh_matrixses(&board_of_game);
[INFO] [stdout]      |              ^^^^ help: convert the identifier to snake case: `ases`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1310:17
[INFO] [stdout]      |
[INFO] [stdout] 1310 |         let mut As = &mut Ases[t];
[INFO] [stdout]      |                 ^^
[INFO] [stdout]      |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]      |
[INFO] [stdout] 1310 |         let mut r#as = &mut Ases[t];
[INFO] [stdout]      |                 ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1366:14
[INFO] [stdout]      |
[INFO] [stdout] 1366 |     let (mut As, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]      |              ^^
[INFO] [stdout]      |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]      |
[INFO] [stdout] 1366 |     let (mut r#as, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]      |              ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_3BV` should have a snake case name
[INFO] [stdout]    --> src/board.rs:192:12
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn get_3BV(&mut self) -> usize {
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to snake case: `get_3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `flagedList` should have a snake case name
[INFO] [stdout]   --> src/videos/base_video.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     flagedList: Vec<(usize, usize)>, // 记录哪些雷曾经被标过，则再标这些雷不记为ce
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `flaged_list`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `flagChordingUseful` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:185:17
[INFO] [stdout]     |
[INFO] [stdout] 185 |         let mut flagChordingUseful = false; // 双击有效的基础上，周围是否有未打开的格子
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `flag_chording_useful`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `chordingCells` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:186:17
[INFO] [stdout]     |
[INFO] [stdout] 186 |         let mut chordingCells = vec![]; // 未打开的格子的集合
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: convert the identifier to snake case: `chording_cells`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `flagedNum` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:187:17
[INFO] [stdout]     |
[INFO] [stdout] 187 |         let mut flagedNum = 0; // 双击点周围的标雷数
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `flaged_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `surround3BV` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:188:17
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let mut surround3BV = 0; // 周围的3BV
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `surround3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `num_is_3BV` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:230:8
[INFO] [stdout]     |
[INFO] [stdout] 230 |     fn num_is_3BV(&self, x: usize, y: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `num_is_3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `K` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:338:26
[INFO] [stdout]     |
[INFO] [stdout] 338 |     fn narrow(&mut self, K: usize) {
[INFO] [stdout]     |                          ^ help: convert the identifier to snake case (notice the capitalization): `k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `KK` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:347:17
[INFO] [stdout]     |
[INFO] [stdout] 347 |         let mut KK = vec![0.0; K * K];
[INFO] [stdout]     |                 ^^ help: convert the identifier to snake case (notice the capitalization): `kk`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MID` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:348:13
[INFO] [stdout]     |
[INFO] [stdout] 348 |         let MID = (K * K) / 2;
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `mid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:521:13
[INFO] [stdout]     |
[INFO] [stdout] 521 |         for L in &lines {
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `N` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:550:13
[INFO] [stdout]     |
[INFO] [stdout] 550 |         let N = ((lines[lineslen - 1] - lines[0] + 2) as f32 / (max_j as f32 / 4.0)) as usize;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 153 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling ms_toollib v1.4.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `is_solvable`
[INFO] [stdout]  --> tests/test_engines.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     is_solvable, mark_board, solve_direct, solve_enumerate, is_able_to_solve,
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> tests/test_analyse.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |     thread::sleep_ms(600);
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cal_is_op_possibility_cells`, `cal_possibility_onboard`, `cal_possibility`, `is_solvable`, `mark_board`, `solve_direct`, `solve_enumerate`
[INFO] [stdout]  --> tests/test_getmatrix.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cal_is_op_possibility_cells, cal_possibility, cal_possibility_onboard, is_solvable,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 3 |     solve_enumerate, solve_direct, mark_board
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> tests/test_analyse.rs:145:13
[INFO] [stdout]     |
[INFO] [stdout] 145 |     thread::sleep_ms(20);
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cal_table_minenum_recursion`, `combine`, `refresh_matrix`, `refresh_matrixs`
[INFO] [stdout]  --> tests/test_getmatrix.rs:5:18
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ms_toollib::{cal_table_minenum_recursion, combine, refresh_matrix, refresh_matrixs, 
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> tests/test_analyse.rs:149:13
[INFO] [stdout]     |
[INFO] [stdout] 149 |     thread::sleep_ms(20);
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> tests/test_analyse.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |     thread::sleep_ms(20);
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> tests/test_analyse.rs:153:13
[INFO] [stdout]     |
[INFO] [stdout] 153 |     thread::sleep_ms(20);
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> tests/test_analyse.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |     thread::sleep_ms(50);
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> tests/test_analyse.rs:160:13
[INFO] [stdout]     |
[INFO] [stdout] 160 |     thread::sleep_ms(50);
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> tests/test_analyse.rs:162:13
[INFO] [stdout]     |
[INFO] [stdout] 162 |     thread::sleep_ms(50);
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> tests/test_analyse.rs:164:13
[INFO] [stdout]     |
[INFO] [stdout] 164 |     thread::sleep_ms(50);
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> tests/test_analyse.rs:166:13
[INFO] [stdout]     |
[INFO] [stdout] 166 |     thread::sleep_ms(50);
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep`
[INFO] [stdout]    --> tests/test_analyse.rs:169:13
[INFO] [stdout]     |
[INFO] [stdout] 169 |     thread::sleep_ms(50);
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> tests/test_getmatrix.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let mut game_board = vec![
[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]    --> tests/test_engines.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |     let mut game_board = vec![
[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]    --> tests/test_analyse.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 |     let mut board=522u16.to_le_bytes();
[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: function `AvfVideo_works` should have a snake case name
[INFO] [stdout]   --> tests/test_analyse.rs:28:4
[INFO] [stdout]    |
[INFO] [stdout] 28 | fn AvfVideo_works() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `avf_video_works`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `RmvVideo_works` should have a snake case name
[INFO] [stdout]   --> tests/test_analyse.rs:59:4
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn RmvVideo_works() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `rmv_video_works`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `EvfVideo_works` should have a snake case name
[INFO] [stdout]   --> tests/test_analyse.rs:88:4
[INFO] [stdout]    |
[INFO] [stdout] 88 | fn EvfVideo_works() {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `evf_video_works`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `BaseVideo_works` should have a snake case name
[INFO] [stdout]    --> tests/test_analyse.rs:128:4
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn BaseVideo_works() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `base_video_works`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::board`
[INFO] [stdout]   --> src/utils.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::board;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH`
[INFO] [stdout]  --> src/miscellaneous.rs:2:26
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::time::{Instant, SystemTime, UNIX_EPOCH};
[INFO] [stdout]   |                          ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `C_query`, `cal_table_minenum_enum`, `enuOneStep`, `enum_comb`, `refresh_matrix`
[INFO] [stdout]  --> src/algorithms.rs:2:25
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cal3BV, cal3BV_exp, cal_table_minenum_enum, cal_table_minenum_recursion, chunk_matrixes,
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     combine, enuOneStep, enum_comb, find_a_border_cell, laymine, laymine_op, legalize_board,
[INFO] [stdout]   |              ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 4 |     refresh_board, refresh_matrix, refresh_matrixs, refresh_matrixses, unsolvable_structure,
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^
[INFO] [stdout] 5 |     BigNumber, C_query, C,
[INFO] [stdout]   |                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rng`, `SeedableRng`, `rngs::StdRng`
[INFO] [stdout]   --> src/algorithms.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | use rand::{rngs::StdRng, Rng, SeedableRng};
[INFO] [stdout]    |            ^^^^^^^^^^^^  ^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time`
[INFO] [stdout]   --> src/algorithms.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use std::time;
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused label
[INFO] [stdout]    --> src/algorithms.rs:924:5
[INFO] [stdout]     |
[INFO] [stdout] 924 |     'inner: for i in 0..xs_cell_num + 1 {
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_labels)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::MouseState`
[INFO] [stdout]  --> src/videos/avf_video.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::MouseState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::miscellaneous::s_to_ms`
[INFO] [stdout]  --> src/videos/avf_video.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::miscellaneous::s_to_ms;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cal_board_numbers`
[INFO] [stdout]  --> src/videos/avf_video.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::utils::{cal_board_numbers};
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::MouseState`
[INFO] [stdout]  --> src/videos/rmv_video.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::MouseState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::miscellaneous::s_to_ms`
[INFO] [stdout]  --> src/videos/rmv_video.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::miscellaneous::s_to_ms;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::miscellaneous::s_to_ms`
[INFO] [stdout]  --> src/videos/evf_video.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::miscellaneous::s_to_ms;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::MouseState`
[INFO] [stdout]  --> src/videos/evf_video.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::MouseState;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `solve_direct`, `solve_enumerate`, `solve_minus`
[INFO] [stdout]  --> src/videos/analyse_methods.rs:1:25
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::algorithms::{solve_direct, solve_enumerate, solve_minus};
[INFO] [stdout]   |                         ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `refresh_matrix`, `refresh_matrixs`
[INFO] [stdout]  --> src/videos/analyse_methods.rs:2:38
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::utils::{is_good_chording, refresh_matrix, refresh_matrixs};
[INFO] [stdout]   |                                      ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ErrReadVideoReason`, `VideoActionStateRecorder`
[INFO] [stdout]  --> src/videos/analyse_methods.rs:4:44
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::videos::base_video::{BaseVideo, ErrReadVideoReason, VideoActionStateRecorder};
[INFO] [stdout]   |                                            ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::prelude`
[INFO] [stdout]   --> src/algorithms.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use rand::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `is_end`
[INFO] [stdout]    --> src/utils.rs:993:13
[INFO] [stdout]     |
[INFO] [stdout] 993 |         let is_end = cal_table_minenum_recursion_step(
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_end`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `min_op_id` is never read
[INFO] [stdout]     --> src/utils.rs:1428:29
[INFO] [stdout]      |
[INFO] [stdout] 1428 | ...                   min_op_id = board[x][y - 1];
[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: unused variable: `aa`
[INFO] [stdout]     --> src/utils.rs:1645:10
[INFO] [stdout]      |
[INFO] [stdout] 1645 |     let (aa, xx, bb) = chunk_matrix(a, x, b);
[INFO] [stdout]      |          ^^ help: if this is intentional, prefix it with an underscore: `_aa`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bb`
[INFO] [stdout]     --> src/utils.rs:1645:18
[INFO] [stdout]      |
[INFO] [stdout] 1645 |     let (aa, xx, bb) = chunk_matrix(a, x, b);
[INFO] [stdout]      |                  ^^ help: if this is intentional, prefix it with an underscore: `_bb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/algorithms.rs:515:29
[INFO] [stdout]     |
[INFO] [stdout] 515 |                         Err(e) => {
[INFO] [stdout]     |                             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Num3BV` is assigned to, but never used
[INFO] [stdout]    --> src/algorithms.rs:695:21
[INFO] [stdout]     |
[INFO] [stdout] 695 |             let mut Num3BV;
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_Num3BV` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `Num3BV` is never read
[INFO] [stdout]    --> src/algorithms.rs:721:13
[INFO] [stdout]     |
[INFO] [stdout] 721 |             Num3BV = cal3BV(&Board_);
[INFO] [stdout]     |             ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `u`
[INFO] [stdout]    --> src/algorithms.rs:963:13
[INFO] [stdout]     |
[INFO] [stdout] 963 |         for u in 0..3 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_u`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]     --> src/algorithms.rs:1057:9
[INFO] [stdout]      |
[INFO] [stdout] 1057 |     for i in 0..16 {
[INFO] [stdout]      |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]     --> src/algorithms.rs:1076:9
[INFO] [stdout]      |
[INFO] [stdout] 1076 |     for id in 0..n {
[INFO] [stdout]      |         ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board_of_game_input`
[INFO] [stdout]     --> src/algorithms.rs:1220:9
[INFO] [stdout]      |
[INFO] [stdout] 1220 |     let board_of_game_input: Vec<Vec<f32>> = board_of_game
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_board_of_game_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]     --> src/algorithms.rs:1219:49
[INFO] [stdout]      |
[INFO] [stdout] 1219 | pub fn agent_step(board_of_game: Vec<Vec<i32>>, pos: (usize, usize)) -> Result<usize, String> {
[INFO] [stdout]      |                                                 ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `flag_need` is never read
[INFO] [stdout]     --> src/algorithms.rs:1303:13
[INFO] [stdout]      |
[INFO] [stdout] 1303 |     let mut flag_need = true;
[INFO] [stdout]      |             ^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `num` is assigned to, but never used
[INFO] [stdout]     --> src/videos/base_video.rs:1397:17
[INFO] [stdout]      |
[INFO] [stdout] 1397 |         let mut num = 0;
[INFO] [stdout]      |                 ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_num` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/utils.rs:893:13
[INFO] [stdout]     |
[INFO] [stdout] 893 |         let mut AddedTable = enumerateSub(NewId.len(), ExtraMine as usize);
[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]     --> src/utils.rs:1637:9
[INFO] [stdout]      |
[INFO] [stdout] 1637 |     let mut a = 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/utils.rs:1643:9
[INFO] [stdout]      |
[INFO] [stdout] 1643 |     let mut x = vec![(1, 2), (3, 4), (5, 6), (7, 8)];
[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/utils.rs:1644:9
[INFO] [stdout]      |
[INFO] [stdout] 1644 |     let mut b = vec![1, 2, 3, 4];
[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/algorithms.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let mut matrixColumn = xs[b].len();
[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/algorithms.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut matrixRow = bs[b].len();
[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/algorithms.rs:208:5
[INFO] [stdout]     |
[INFO] [stdout] 208 |     mut mine_num: f64,
[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/algorithms.rs:638:13
[INFO] [stdout]     |
[INFO] [stdout] 638 |         let mut not_mine;
[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/algorithms.rs:695:17
[INFO] [stdout]     |
[INFO] [stdout] 695 |             let mut Num3BV;
[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/algorithms.rs:1310:13
[INFO] [stdout]      |
[INFO] [stdout] 1310 |         let mut As = &mut Ases[t];
[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/algorithms.rs:1311:13
[INFO] [stdout]      |
[INFO] [stdout] 1311 |         let mut xs = &mut xses[t];
[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/algorithms.rs:1312:13
[INFO] [stdout]      |
[INFO] [stdout] 1312 |         let mut bs = &mut bses[t];
[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/OBR.rs:470:21
[INFO] [stdout]     |
[INFO] [stdout] 470 |                 let mut max_num = xx[i];
[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/OBR.rs:555:13
[INFO] [stdout]     |
[INFO] [stdout] 555 |         let mut x = self.data.clone();
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enum_comb` is never used
[INFO] [stdout]    --> src/utils.rs:767:8
[INFO] [stdout]     |
[INFO] [stdout] 767 | pub fn enum_comb(
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal_table_minenum_enum` is never used
[INFO] [stdout]     --> src/utils.rs:1079:8
[INFO] [stdout]      |
[INFO] [stdout] 1079 | pub fn cal_table_minenum_enum(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `div_usize` is never used
[INFO] [stdout]    --> src/utils.rs:677:12
[INFO] [stdout]     |
[INFO] [stdout] 677 |     pub fn div_usize(&mut self, k: usize) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `data_vec`, `r_2`, and `c_2` are never read
[INFO] [stdout]   --> src/OBR.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub struct ImageBoard {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 10 |     data_vec: Vec<usize>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     r_2: usize,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 16 |     c_1: usize,
[INFO] [stdout] 17 |     c_2: usize,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `OBR` should have a snake case name
[INFO] [stdout]   --> src/lib.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 | mod OBR;
[INFO] [stdout]    |     ^^^ help: convert the identifier to snake case: `obr`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:18:19
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn cal_op(mut Board: Vec<Vec<i32>>) -> usize {
[INFO] [stdout]    |                   ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Op` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut Op = 0;
[INFO] [stdout]    |             ^^ help: convert the identifier to snake case (notice the capitalization): `op`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `infectBoard` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn infectBoard(mut Board: Vec<Vec<i32>>, x: usize, y: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]    |    ^^^^^^^^^^^ help: convert the identifier to snake case: `infect_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:34:20
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn infectBoard(mut Board: Vec<Vec<i32>>, x: usize, y: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]    |                    ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `BoardofGame` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     BoardofGame: &Vec<Vec<i32>>,
[INFO] [stdout]    |     ^^^^^^^^^^^ help: convert the identifier to snake case: `boardof_game`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MatrixA` should have a snake case name
[INFO] [stdout]   --> src/utils.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |     let mut MatrixA: Vec<Vec<i32>> = Vec::new();
[INFO] [stdout]    |             ^^^^^^^ help: convert the identifier to snake case: `matrix_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Matrixx` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:100:13
[INFO] [stdout]     |
[INFO] [stdout] 100 |     let mut Matrixx: Vec<(usize, usize)> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case: `matrixx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Matrixb` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:101:13
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let mut Matrixb: Vec<i32> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^ help: convert the identifier to snake case: `matrixb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MatrixARowNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let mut MatrixARowNum = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_arow_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MatrixAColumnNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:103:13
[INFO] [stdout]     |
[INFO] [stdout] 103 |     let mut MatrixAColumnNum = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_acolumn_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `idMatrixx` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:126:37
[INFO] [stdout]     |
[INFO] [stdout] 126 | ...                   for idMatrixx in 0..MatrixAColumnNum {
[INFO] [stdout]     |                           ^^^^^^^^^ help: convert the identifier to snake case: `id_matrixx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Ases` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:294:13
[INFO] [stdout]     |
[INFO] [stdout] 294 |     let mut Ases = vec![];
[INFO] [stdout]     |             ^^^^ help: convert the identifier to snake case: `ases`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:297:14
[INFO] [stdout]     |
[INFO] [stdout] 297 |     let (mut As, mut xs, mut bs, _, _) = refresh_matrixs(board_of_game);
[INFO] [stdout]     |              ^^
[INFO] [stdout]     |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]     |
[INFO] [stdout] 297 |     let (mut r#as, mut xs, mut bs, _, _) = refresh_matrixs(board_of_game);
[INFO] [stdout]     |              ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MineNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:441:43
[INFO] [stdout]     |
[INFO] [stdout] 441 | pub fn laymine(row: usize, column: usize, MineNum: usize, X0: usize, Y0: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]     |                                           ^^^^^^^ help: convert the identifier to snake case: `mine_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `X0` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:441:59
[INFO] [stdout]     |
[INFO] [stdout] 441 | pub fn laymine(row: usize, column: usize, MineNum: usize, X0: usize, Y0: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]     |                                                           ^^ help: convert the identifier to snake case (notice the capitalization): `x0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Y0` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:441:70
[INFO] [stdout]     |
[INFO] [stdout] 441 | pub fn laymine(row: usize, column: usize, MineNum: usize, X0: usize, Y0: usize) -> Vec<Vec<i32>> {
[INFO] [stdout]     |                                                                      ^^ help: convert the identifier to snake case (notice the capitalization): `y0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:443:13
[INFO] [stdout]     |
[INFO] [stdout] 443 |     let mut Board1Dim: Vec<i32> = vec![];
[INFO] [stdout]     |             ^^^^^^^^^ help: convert the identifier to snake case: `board1_dim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim_2` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:457:13
[INFO] [stdout]     |
[INFO] [stdout] 457 |     let mut Board1Dim_2: Vec<i32> = vec![];
[INFO] [stdout]     |             ^^^^^^^^^^^ help: convert the identifier to snake case: `board1_dim_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:467:13
[INFO] [stdout]     |
[INFO] [stdout] 467 |     let mut Board: Vec<Vec<i32>> = vec![vec![0; column]; row];
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MineNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:491:5
[INFO] [stdout]     |
[INFO] [stdout] 491 |     MineNum: usize,
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `mine_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `X0` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:492:5
[INFO] [stdout]     |
[INFO] [stdout] 492 |     X0: usize,
[INFO] [stdout]     |     ^^ help: convert the identifier to snake case (notice the capitalization): `x0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Y0` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:493:5
[INFO] [stdout]     |
[INFO] [stdout] 493 |     Y0: usize,
[INFO] [stdout]     |     ^^ help: convert the identifier to snake case (notice the capitalization): `y0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `areaOp` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:495:13
[INFO] [stdout]     |
[INFO] [stdout] 495 |     let mut areaOp = 9;
[INFO] [stdout]     |             ^^^^^^ help: convert the identifier to snake case: `area_op`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:508:13
[INFO] [stdout]     |
[INFO] [stdout] 508 |     let mut Board1Dim = vec![0; area - MineNum];
[INFO] [stdout]     |             ^^^^^^^^^ help: convert the identifier to snake case: `board1_dim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:520:13
[INFO] [stdout]     |
[INFO] [stdout] 520 |     let mut Board = vec![vec![0; column]; row];
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal3BVonIsland` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:543:8
[INFO] [stdout]     |
[INFO] [stdout] 543 | pub fn cal3BVonIsland(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `cal3_bvon_island`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:543:23
[INFO] [stdout]     |
[INFO] [stdout] 543 | pub fn cal3BVonIsland(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]     |                       ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Num3BVonIsland` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:547:13
[INFO] [stdout]     |
[INFO] [stdout] 547 |     let mut Num3BVonIsland = 0;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `num3_bvon_island`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal3BV` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:569:8
[INFO] [stdout]     |
[INFO] [stdout] 569 | pub fn cal3BV(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]     |        ^^^^^^ help: convert the identifier to snake case: `cal3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:569:15
[INFO] [stdout]     |
[INFO] [stdout] 569 | pub fn cal3BV(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]     |               ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:576:5
[INFO] [stdout]     |
[INFO] [stdout] 576 |     Board: &Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `BoardofGame` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:577:5
[INFO] [stdout]     |
[INFO] [stdout] 577 |     BoardofGame: &mut Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to snake case: `boardof_game`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ClickedPoses` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:578:9
[INFO] [stdout]     |
[INFO] [stdout] 578 |     mut ClickedPoses: Vec<(usize, usize)>,
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: convert the identifier to snake case: `clicked_poses`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `C` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:691:8
[INFO] [stdout]     |
[INFO] [stdout] 691 | pub fn C(n: usize, k: usize) -> BigNumber {
[INFO] [stdout]     |        ^ help: convert the identifier to snake case (notice the capitalization): `c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `C_query` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:707:8
[INFO] [stdout]     |
[INFO] [stdout] 707 | pub fn C_query<T, U>(n: T, k: U) -> usize
[INFO] [stdout]     |        ^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `c_query`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MatrixA` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:728:5
[INFO] [stdout]     |
[INFO] [stdout] 728 |     MatrixA: &Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `matrix_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Matrixx` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:729:5
[INFO] [stdout]     |
[INFO] [stdout] 729 |     Matrixx: &Vec<(usize, usize)>,
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `matrixx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:734:13
[INFO] [stdout]     |
[INFO] [stdout] 734 |     let mut matrixA_squeeze = MatrixA.clone();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:768:5
[INFO] [stdout]     |
[INFO] [stdout] 768 |     matrixA_squeeze: &Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Matrixb` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:770:5
[INFO] [stdout]     |
[INFO] [stdout] 770 |     Matrixb: &Vec<i32>,
[INFO] [stdout]     |     ^^^^^^^ help: convert the identifier to snake case: `matrixb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enumerateSub` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:860:4
[INFO] [stdout]     |
[INFO] [stdout] 860 | fn enumerateSub(Col: usize, MineNum: usize) -> Vec<Vec<usize>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^ help: convert the identifier to snake case: `enumerate_sub`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Col` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:860:17
[INFO] [stdout]     |
[INFO] [stdout] 860 | fn enumerateSub(Col: usize, MineNum: usize) -> Vec<Vec<usize>> {
[INFO] [stdout]     |                 ^^^ help: convert the identifier to snake case (notice the capitalization): `col`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MineNum` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:860:29
[INFO] [stdout]     |
[INFO] [stdout] 860 | fn enumerateSub(Col: usize, MineNum: usize) -> Vec<Vec<usize>> {
[INFO] [stdout]     |                             ^^^^^^^ help: convert the identifier to snake case: `mine_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Out` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:861:13
[INFO] [stdout]     |
[INFO] [stdout] 861 |     let mut Out: Vec<Vec<usize>> = vec![];
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case (notice the capitalization): `out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enuOneStep` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:873:8
[INFO] [stdout]     |
[INFO] [stdout] 873 | pub fn enuOneStep(mut AllTable: Vec<Vec<usize>>, TableId: Vec<usize>, b: i32) -> Vec<Vec<usize>> {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `enu_one_step`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `AllTable` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:873:23
[INFO] [stdout]     |
[INFO] [stdout] 873 | pub fn enuOneStep(mut AllTable: Vec<Vec<usize>>, TableId: Vec<usize>, b: i32) -> Vec<Vec<usize>> {
[INFO] [stdout]     |                       ^^^^^^^^ help: convert the identifier to snake case: `all_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `TableId` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:873:50
[INFO] [stdout]     |
[INFO] [stdout] 873 | pub fn enuOneStep(mut AllTable: Vec<Vec<usize>>, TableId: Vec<usize>, b: i32) -> Vec<Vec<usize>> {
[INFO] [stdout]     |                                                  ^^^^^^^ help: convert the identifier to snake case: `table_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `NewId` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:875:13
[INFO] [stdout]     |
[INFO] [stdout] 875 |     let mut NewId: Vec<usize> = vec![];
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `new_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `DelId` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:881:13
[INFO] [stdout]     |
[INFO] [stdout] 881 |     let mut DelId = vec![];
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `del_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ExtraMine` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:883:17
[INFO] [stdout]     |
[INFO] [stdout] 883 |         let mut ExtraMine = b;
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `extra_mine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `AddedTable` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:893:17
[INFO] [stdout]     |
[INFO] [stdout] 893 |         let mut AddedTable = enumerateSub(NewId.len(), ExtraMine as usize);
[INFO] [stdout]     |                 ^^^^^^^^^^ help: convert the identifier to snake case: `added_table`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/utils.rs:938:5
[INFO] [stdout]     |
[INFO] [stdout] 938 |     matrixA_squeeze: &Vec<Vec<i32>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1015:5
[INFO] [stdout]      |
[INFO] [stdout] 1015 |     matrixA_squeeze: &Vec<Vec<i32>>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1080:5
[INFO] [stdout]      |
[INFO] [stdout] 1080 |     matrixA_squeeze: &Vec<Vec<i32>>,
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `BoardCheck` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1166:29
[INFO] [stdout]      |
[INFO] [stdout] 1166 | pub fn unsolvable_structure(BoardCheck: &Vec<Vec<i32>>) -> bool {
[INFO] [stdout]      |                             ^^^^^^^^^^ help: convert the identifier to snake case: `board_check`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1169:13
[INFO] [stdout]      |
[INFO] [stdout] 1169 |     let mut Board = vec![vec![0; column]; row];
[INFO] [stdout]      |             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal3BV_exp` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1387:8
[INFO] [stdout]      |
[INFO] [stdout] 1387 | pub fn cal3BV_exp(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]      |        ^^^^^^^^^^ help: convert the identifier to snake case: `cal3_bv_exp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]     --> src/utils.rs:1387:19
[INFO] [stdout]      |
[INFO] [stdout] 1387 | pub fn cal3BV_exp(Board: &Vec<Vec<i32>>) -> usize {
[INFO] [stdout]      |                   ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     As: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]    |
[INFO] [stdout] 48 |     r#as: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]    |     ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixColumn` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:61:17
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let mut matrixColumn = xs[b].len();
[INFO] [stdout]    |                 ^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_column`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixRow` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut matrixRow = bs[b].len();
[INFO] [stdout]    |                 ^^^^^^^^^ help: convert the identifier to snake case: `matrix_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ADval1` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:68:25
[INFO] [stdout]    |
[INFO] [stdout] 68 |                 let mut ADval1 = vec![];
[INFO] [stdout]    |                         ^^^^^^ help: convert the identifier to snake case: `adval1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `ADvaln1` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:69:25
[INFO] [stdout]    |
[INFO] [stdout] 69 |                 let mut ADvaln1 = vec![];
[INFO] [stdout]    |                         ^^^^^^^ help: convert the identifier to snake case: `advaln1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `FlagAdj` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:70:25
[INFO] [stdout]    |
[INFO] [stdout] 70 |                 let mut FlagAdj = false;
[INFO] [stdout]    |                         ^^^^^^^ help: convert the identifier to snake case: `flag_adj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `bDval` should have a snake case name
[INFO] [stdout]   --> src/algorithms.rs:83:25
[INFO] [stdout]    |
[INFO] [stdout] 83 |                     let bDval = bs[b][i] - bs[b][j];
[INFO] [stdout]    |                         ^^^^^ help: convert the identifier to snake case: `b_dval`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:141:5
[INFO] [stdout]     |
[INFO] [stdout] 141 |     As: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]     |     ^^
[INFO] [stdout]     |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]     |
[INFO] [stdout] 141 |     r#as: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]     |     ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixColumn` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:151:17
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let mut matrixColumn = xs[b].len();
[INFO] [stdout]     |                 ^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_column`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixRow` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:152:17
[INFO] [stdout]     |
[INFO] [stdout] 152 |         let mut matrixRow = bs[b].len();
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `matrix_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze_s` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:238:13
[INFO] [stdout]     |
[INFO] [stdout] 238 |     let mut matrixA_squeeze_s: Vec<Vec<Vec<i32>>> = vec![];
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:242:14
[INFO] [stdout]     |
[INFO] [stdout] 242 |         let (matrixA_squeeze, matrixx_squeeze, combination_relationship) =
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `T` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:356:13
[INFO] [stdout]     |
[INFO] [stdout] 356 |     let mut T = BigNumber { a: 0.0, b: 0 };
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:551:5
[INFO] [stdout]     |
[INFO] [stdout] 551 |     As: &Vec<Vec<Vec<i32>>>,
[INFO] [stdout]     |     ^^
[INFO] [stdout]     |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]     |
[INFO] [stdout] 551 |     r#as: &Vec<Vec<Vec<i32>>>,
[INFO] [stdout]     |     ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze_s` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:563:13
[INFO] [stdout]     |
[INFO] [stdout] 563 |     let mut matrixA_squeeze_s: Vec<Vec<Vec<i32>>> = vec![];
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze_s`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `matrixA_squeeze` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:569:14
[INFO] [stdout]     |
[INFO] [stdout] 569 |         let (matrixA_squeeze, matrixx_squeeze, combination_relationship) = combine(&As[i], &xs[i]);
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `matrix_a_squeeze`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `isVictory` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:605:4
[INFO] [stdout]     |
[INFO] [stdout] 605 | fn isVictory(board_of_game: &Vec<Vec<i32>>, Board: &Vec<Vec<i32>>) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^ help: convert the identifier to snake case: `is_victory`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:605:45
[INFO] [stdout]     |
[INFO] [stdout] 605 | fn isVictory(board_of_game: &Vec<Vec<i32>>, Board: &Vec<Vec<i32>>) -> bool {
[INFO] [stdout]     |                                             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:621:20
[INFO] [stdout]     |
[INFO] [stdout] 621 | pub fn is_solvable(Board: &Vec<Vec<i32>>, x0: usize, y0: usize) -> bool {
[INFO] [stdout]     |                    ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:636:18
[INFO] [stdout]     |
[INFO] [stdout] 636 |         let (mut As, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]     |                  ^^
[INFO] [stdout]     |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]     |
[INFO] [stdout] 636 |         let (mut r#as, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]     |                  ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Num3BV` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:695:21
[INFO] [stdout]     |
[INFO] [stdout] 695 |             let mut Num3BV;
[INFO] [stdout]     |                     ^^^^^^ help: convert the identifier to snake case: `num3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:697:21
[INFO] [stdout]     |
[INFO] [stdout] 697 |             let mut Board = vec![vec![0; column]; row];
[INFO] [stdout]     |                     ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board_` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:706:21
[INFO] [stdout]     |
[INFO] [stdout] 706 |                 let Board_ = laymine_op(row, column, mine_num, x0, y0);
[INFO] [stdout]     |                     ^^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board_` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:720:17
[INFO] [stdout]     |
[INFO] [stdout] 720 |             let Board_ = laymine_op(row, column, mine_num, x0, y0);
[INFO] [stdout]     |                 ^^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:756:13
[INFO] [stdout]     |
[INFO] [stdout] 756 |     let mut Board;
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Ases` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:894:10
[INFO] [stdout]     |
[INFO] [stdout] 894 |     let (Ases, xses, mut bses) = refresh_matrixses(&bg);
[INFO] [stdout]     |          ^^^^ help: convert the identifier to snake case: `ases`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As_0` should have a snake case name
[INFO] [stdout]    --> src/algorithms.rs:900:9
[INFO] [stdout]     |
[INFO] [stdout] 900 |     let As_0;
[INFO] [stdout]     |         ^^^^ help: convert the identifier to snake case: `as_0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sample_3BVs_exp` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1052:8
[INFO] [stdout]      |
[INFO] [stdout] 1052 | pub fn sample_3BVs_exp(x0: usize, y0: usize, n: usize) -> [usize; 382] {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `sample_3_bvs_exp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1077:17
[INFO] [stdout]      |
[INFO] [stdout] 1077 |         let mut Board1Dim = [0; 479];
[INFO] [stdout]      |                 ^^^^^^^^^ help: convert the identifier to snake case: `board1_dim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board1Dim_2` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1083:17
[INFO] [stdout]      |
[INFO] [stdout] 1083 |         let mut Board1Dim_2 = [0; 480];
[INFO] [stdout]      |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `board1_dim_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Board` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1093:17
[INFO] [stdout]      |
[INFO] [stdout] 1093 |         let mut Board: Vec<Vec<i32>> = vec![vec![0; 30]; 16];
[INFO] [stdout]      |                 ^^^^^ help: convert the identifier to snake case: `board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `OBR_cell` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1114:4
[INFO] [stdout]      |
[INFO] [stdout] 1114 | fn OBR_cell(
[INFO] [stdout]      |    ^^^^^^^^ help: convert the identifier to snake case: `obr_cell`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `OBR_board` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1180:8
[INFO] [stdout]      |
[INFO] [stdout] 1180 | pub fn OBR_board(
[INFO] [stdout]      |        ^^^^^^^^^ help: convert the identifier to snake case: `obr_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1257:14
[INFO] [stdout]      |
[INFO] [stdout] 1257 |     let (mut As, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]      |              ^^
[INFO] [stdout]      |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]      |
[INFO] [stdout] 1257 |     let (mut r#as, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]      |              ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1265:5
[INFO] [stdout]      |
[INFO] [stdout] 1265 |     As: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]      |     ^^
[INFO] [stdout]      |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]      |
[INFO] [stdout] 1265 |     r#as: &mut Vec<Vec<Vec<i32>>>,
[INFO] [stdout]      |     ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Ases` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1304:14
[INFO] [stdout]      |
[INFO] [stdout] 1304 |     let (mut Ases, mut xses, mut bses) = refresh_matrixses(&board_of_game);
[INFO] [stdout]      |              ^^^^ help: convert the identifier to snake case: `ases`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1310:17
[INFO] [stdout]      |
[INFO] [stdout] 1310 |         let mut As = &mut Ases[t];
[INFO] [stdout]      |                 ^^
[INFO] [stdout]      |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]      |
[INFO] [stdout] 1310 |         let mut r#as = &mut Ases[t];
[INFO] [stdout]      |                 ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `As` should have a snake case name
[INFO] [stdout]     --> src/algorithms.rs:1366:14
[INFO] [stdout]      |
[INFO] [stdout] 1366 |     let (mut As, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]      |              ^^
[INFO] [stdout]      |
[INFO] [stdout] help: rename the identifier or convert it to a snake case raw identifier
[INFO] [stdout]      |
[INFO] [stdout] 1366 |     let (mut r#as, mut xs, mut bs, _, _) = refresh_matrixs(&board_of_game);
[INFO] [stdout]      |              ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_3BV` should have a snake case name
[INFO] [stdout]    --> src/board.rs:192:12
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn get_3BV(&mut self) -> usize {
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to snake case: `get_3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `flagedList` should have a snake case name
[INFO] [stdout]   --> src/videos/base_video.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     flagedList: Vec<(usize, usize)>, // 记录哪些雷曾经被标过，则再标这些雷不记为ce
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `flaged_list`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `flagChordingUseful` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:185:17
[INFO] [stdout]     |
[INFO] [stdout] 185 |         let mut flagChordingUseful = false; // 双击有效的基础上，周围是否有未打开的格子
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `flag_chording_useful`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `chordingCells` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:186:17
[INFO] [stdout]     |
[INFO] [stdout] 186 |         let mut chordingCells = vec![]; // 未打开的格子的集合
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: convert the identifier to snake case: `chording_cells`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `flagedNum` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:187:17
[INFO] [stdout]     |
[INFO] [stdout] 187 |         let mut flagedNum = 0; // 双击点周围的标雷数
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `flaged_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `surround3BV` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:188:17
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let mut surround3BV = 0; // 周围的3BV
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: convert the identifier to snake case: `surround3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `num_is_3BV` should have a snake case name
[INFO] [stdout]    --> src/videos/base_video.rs:230:8
[INFO] [stdout]     |
[INFO] [stdout] 230 |     fn num_is_3BV(&self, x: usize, y: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^ help: convert the identifier to snake case: `num_is_3_bv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `K` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:338:26
[INFO] [stdout]     |
[INFO] [stdout] 338 |     fn narrow(&mut self, K: usize) {
[INFO] [stdout]     |                          ^ help: convert the identifier to snake case (notice the capitalization): `k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `KK` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:347:17
[INFO] [stdout]     |
[INFO] [stdout] 347 |         let mut KK = vec![0.0; K * K];
[INFO] [stdout]     |                 ^^ help: convert the identifier to snake case (notice the capitalization): `kk`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `MID` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:348:13
[INFO] [stdout]     |
[INFO] [stdout] 348 |         let MID = (K * K) / 2;
[INFO] [stdout]     |             ^^^ help: convert the identifier to snake case: `mid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `L` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:521:13
[INFO] [stdout]     |
[INFO] [stdout] 521 |         for L in &lines {
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `l`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `N` should have a snake case name
[INFO] [stdout]    --> src/OBR.rs:550:13
[INFO] [stdout]     |
[INFO] [stdout] 550 |         let N = ((lines[lineslen - 1] - lines[0] + 2) as f32 / (max_j as f32 / 4.0)) as usize;
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note: LC_ALL="C" PATH="/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" VSLANG="1033" "cc" "-m64" "/tmp/rustcRryDVh/symbols.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.0.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.1.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.10.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.11.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.12.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.13.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.14.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.15.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.2.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.3.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.4.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.5.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.6.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.7.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.8.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.test_engines.84b705fe-cgu.9.rcgu.o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59.46phsihzlxrf0irs.rcgu.o" "-Wl,--as-needed" "-L" "/opt/rustwide/target/debug/deps" "-L" "/opt/rustwide/target/debug/build/tract-linalg-9c24c6510dfd2377/out" "-L" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libtest-7791a6353d4a7929.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgetopts-7b17724e9ce90a72.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunicode_width-596f8ce9d30a755e.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_std-da04f86254de594f.rlib" "/opt/rustwide/target/debug/deps/libms_toollib-91d531596dbc85e0.rlib" "/opt/rustwide/target/debug/deps/libtract_onnx-530ea399bf24d9ab.rlib" "/opt/rustwide/target/debug/deps/libmapr-2e8fbedbe98acad4.rlib" "/opt/rustwide/target/debug/deps/libtract_onnx_opl-b66febcaebcc0ea7.rlib" "/opt/rustwide/target/debug/deps/libtract_nnef-46c5bf59ff9cce79.rlib" "/opt/rustwide/target/debug/deps/libflate2-c7a608a0d7e7a072.rlib" "/opt/rustwide/target/debug/deps/libminiz_oxide-ee4a4762805ca1dc.rlib" "/opt/rustwide/target/debug/deps/libadler-478247d24f5486f3.rlib" "/opt/rustwide/target/debug/deps/libcrc32fast-104e9b895f0c2d44.rlib" "/opt/rustwide/target/debug/deps/libwalkdir-f48fd0e5425183a1.rlib" "/opt/rustwide/target/debug/deps/libsame_file-fab28c3c81b2d2fa.rlib" "/opt/rustwide/target/debug/deps/libtar-ef9310a423ebe245.rlib" "/opt/rustwide/target/debug/deps/libxattr-5288098a0b5c5502.rlib" "/opt/rustwide/target/debug/deps/libfiletime-222d50d7365d8308.rlib" "/opt/rustwide/target/debug/deps/libbyteorder-50c19e9bd62c942c.rlib" "/opt/rustwide/target/debug/deps/libnom-80076cd7dd0be791.rlib" "/opt/rustwide/target/debug/deps/libmemchr-687b4049a32a2866.rlib" "/opt/rustwide/target/debug/deps/libprost-61bd3d4ea8751130.rlib" "/opt/rustwide/target/debug/deps/libbytes-e760d6ac9a2f6963.rlib" "/opt/rustwide/target/debug/deps/libtract_hir-6d38f6ae8b91d233.rlib" "/opt/rustwide/target/debug/deps/libtract_core-293a8a3471a2f6d3.rlib" "/opt/rustwide/target/debug/deps/libtract_linalg-82160a13286fb5b8.rlib" "/opt/rustwide/target/debug/deps/libdyn_clone-e9cc5ecb301fed49.rlib" "/opt/rustwide/target/debug/deps/libtract_data-a58fe438c07da562.rlib" "/opt/rustwide/target/debug/deps/libhalf-141f900c246fe8e7.rlib" "/opt/rustwide/target/debug/deps/libmaplit-abdbce8b4ce371d0.rlib" "/opt/rustwide/target/debug/deps/liblazy_static-a15e1ed0a3c31761.rlib" "/opt/rustwide/target/debug/deps/libsmallvec-22f2447eab0ca59b.rlib" "/opt/rustwide/target/debug/deps/libndarray-059361a60f19de31.rlib" "/opt/rustwide/target/debug/deps/libmatrixmultiply-bd20ca457a4324e4.rlib" "/opt/rustwide/target/debug/deps/libnum_complex-55878a4a8f772ce6.rlib" "/opt/rustwide/target/debug/deps/librawpointer-93a89706954c673d.rlib" "/opt/rustwide/target/debug/deps/libdowncast_rs-33b247181bdb1a12.rlib" "/opt/rustwide/target/debug/deps/libbit_set-d77ae1617525bb37.rlib" "/opt/rustwide/target/debug/deps/libbit_vec-ffc8dfb7fb6568b2.rlib" "/opt/rustwide/target/debug/deps/libanyhow-2a8b4879abb5c883.rlib" "/opt/rustwide/target/debug/deps/libnum_integer-68948763b1937029.rlib" "/opt/rustwide/target/debug/deps/libnum_traits-b237925f6bfbb7f7.rlib" "/opt/rustwide/target/debug/deps/liblog-b7002f1ab15c8d8b.rlib" "/opt/rustwide/target/debug/deps/librand-fbc1e23b2a61e55e.rlib" "/opt/rustwide/target/debug/deps/librand_chacha-1011df681e4d15da.rlib" "/opt/rustwide/target/debug/deps/libppv_lite86-c3ad053967cc551c.rlib" "/opt/rustwide/target/debug/deps/librand_core-e5a8f0f991f76bbb.rlib" "/opt/rustwide/target/debug/deps/libgetrandom-5d46253a319b81ee.rlib" "/opt/rustwide/target/debug/deps/liblibc-b7b14a0fe316ec96.rlib" "/opt/rustwide/target/debug/deps/libcfg_if-e5e118dd7d121aaa.rlib" "/opt/rustwide/target/debug/deps/libitertools-ea912201e9c13d48.rlib" "/opt/rustwide/target/debug/deps/libeither-cac85af8160ee6c4.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-89bc084783fdc439.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-8bee4b287d4367c1.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-d61707aed80694c0.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libmemchr-d85366256f22345b.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-96069b86b8a8cae9.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-d19d53abf68dfa6c.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-787cbccd19d64ac6.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_detect-b3837a36b830e0d0.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-e3deb0e7e3f04966.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-dabbb79c9815def4.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-305b01f34c9409f2.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-f833521df6074e73.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-9ac333113350d171.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-1c126114322d0eee.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-bad9164fdeeecf92.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-f9374b1e480fa681.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-207f06e41d9603af.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-7e2768e66e984e85.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-957b4aff41f8cd46.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/test_engines-47c350e09fd31a59" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
[INFO] [stdout]   = note: collect2: fatal error: ld terminated with signal 9 [Killed]
[INFO] [stdout]           compilation terminated.
[INFO] [stdout]           
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error; 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ms_toollib` due to 2 previous errors; 2 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note: LC_ALL="C" PATH="/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" VSLANG="1033" "cc" "-m64" "/tmp/rustcJkzpDx/symbols.o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc.test_getmatrix.6530910c-cgu.0.rcgu.o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc.test_getmatrix.6530910c-cgu.1.rcgu.o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc.test_getmatrix.6530910c-cgu.10.rcgu.o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc.test_getmatrix.6530910c-cgu.11.rcgu.o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc.test_getmatrix.6530910c-cgu.12.rcgu.o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc.test_getmatrix.6530910c-cgu.2.rcgu.o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc.test_getmatrix.6530910c-cgu.3.rcgu.o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc.test_getmatrix.6530910c-cgu.4.rcgu.o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc.test_getmatrix.6530910c-cgu.5.rcgu.o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc.test_getmatrix.6530910c-cgu.6.rcgu.o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc.test_getmatrix.6530910c-cgu.7.rcgu.o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc.test_getmatrix.6530910c-cgu.8.rcgu.o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc.test_getmatrix.6530910c-cgu.9.rcgu.o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc.yfynzw4dq3msmzs.rcgu.o" "-Wl,--as-needed" "-L" "/opt/rustwide/target/debug/deps" "-L" "/opt/rustwide/target/debug/build/tract-linalg-9c24c6510dfd2377/out" "-L" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libtest-7791a6353d4a7929.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgetopts-7b17724e9ce90a72.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunicode_width-596f8ce9d30a755e.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_std-da04f86254de594f.rlib" "/opt/rustwide/target/debug/deps/libms_toollib-91d531596dbc85e0.rlib" "/opt/rustwide/target/debug/deps/libtract_onnx-530ea399bf24d9ab.rlib" "/opt/rustwide/target/debug/deps/libmapr-2e8fbedbe98acad4.rlib" "/opt/rustwide/target/debug/deps/libtract_onnx_opl-b66febcaebcc0ea7.rlib" "/opt/rustwide/target/debug/deps/libtract_nnef-46c5bf59ff9cce79.rlib" "/opt/rustwide/target/debug/deps/libflate2-c7a608a0d7e7a072.rlib" "/opt/rustwide/target/debug/deps/libminiz_oxide-ee4a4762805ca1dc.rlib" "/opt/rustwide/target/debug/deps/libadler-478247d24f5486f3.rlib" "/opt/rustwide/target/debug/deps/libcrc32fast-104e9b895f0c2d44.rlib" "/opt/rustwide/target/debug/deps/libwalkdir-f48fd0e5425183a1.rlib" "/opt/rustwide/target/debug/deps/libsame_file-fab28c3c81b2d2fa.rlib" "/opt/rustwide/target/debug/deps/libtar-ef9310a423ebe245.rlib" "/opt/rustwide/target/debug/deps/libxattr-5288098a0b5c5502.rlib" "/opt/rustwide/target/debug/deps/libfiletime-222d50d7365d8308.rlib" "/opt/rustwide/target/debug/deps/libbyteorder-50c19e9bd62c942c.rlib" "/opt/rustwide/target/debug/deps/libnom-80076cd7dd0be791.rlib" "/opt/rustwide/target/debug/deps/libmemchr-687b4049a32a2866.rlib" "/opt/rustwide/target/debug/deps/libprost-61bd3d4ea8751130.rlib" "/opt/rustwide/target/debug/deps/libbytes-e760d6ac9a2f6963.rlib" "/opt/rustwide/target/debug/deps/libtract_hir-6d38f6ae8b91d233.rlib" "/opt/rustwide/target/debug/deps/libtract_core-293a8a3471a2f6d3.rlib" "/opt/rustwide/target/debug/deps/libtract_linalg-82160a13286fb5b8.rlib" "/opt/rustwide/target/debug/deps/libdyn_clone-e9cc5ecb301fed49.rlib" "/opt/rustwide/target/debug/deps/libtract_data-a58fe438c07da562.rlib" "/opt/rustwide/target/debug/deps/libhalf-141f900c246fe8e7.rlib" "/opt/rustwide/target/debug/deps/libmaplit-abdbce8b4ce371d0.rlib" "/opt/rustwide/target/debug/deps/liblazy_static-a15e1ed0a3c31761.rlib" "/opt/rustwide/target/debug/deps/libsmallvec-22f2447eab0ca59b.rlib" "/opt/rustwide/target/debug/deps/libndarray-059361a60f19de31.rlib" "/opt/rustwide/target/debug/deps/libmatrixmultiply-bd20ca457a4324e4.rlib" "/opt/rustwide/target/debug/deps/libnum_complex-55878a4a8f772ce6.rlib" "/opt/rustwide/target/debug/deps/librawpointer-93a89706954c673d.rlib" "/opt/rustwide/target/debug/deps/libdowncast_rs-33b247181bdb1a12.rlib" "/opt/rustwide/target/debug/deps/libbit_set-d77ae1617525bb37.rlib" "/opt/rustwide/target/debug/deps/libbit_vec-ffc8dfb7fb6568b2.rlib" "/opt/rustwide/target/debug/deps/libanyhow-2a8b4879abb5c883.rlib" "/opt/rustwide/target/debug/deps/libnum_integer-68948763b1937029.rlib" "/opt/rustwide/target/debug/deps/libnum_traits-b237925f6bfbb7f7.rlib" "/opt/rustwide/target/debug/deps/liblog-b7002f1ab15c8d8b.rlib" "/opt/rustwide/target/debug/deps/librand-fbc1e23b2a61e55e.rlib" "/opt/rustwide/target/debug/deps/librand_chacha-1011df681e4d15da.rlib" "/opt/rustwide/target/debug/deps/libppv_lite86-c3ad053967cc551c.rlib" "/opt/rustwide/target/debug/deps/librand_core-e5a8f0f991f76bbb.rlib" "/opt/rustwide/target/debug/deps/libgetrandom-5d46253a319b81ee.rlib" "/opt/rustwide/target/debug/deps/liblibc-b7b14a0fe316ec96.rlib" "/opt/rustwide/target/debug/deps/libcfg_if-e5e118dd7d121aaa.rlib" "/opt/rustwide/target/debug/deps/libitertools-ea912201e9c13d48.rlib" "/opt/rustwide/target/debug/deps/libeither-cac85af8160ee6c4.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-89bc084783fdc439.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-8bee4b287d4367c1.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-d61707aed80694c0.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libmemchr-d85366256f22345b.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-96069b86b8a8cae9.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-d19d53abf68dfa6c.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-787cbccd19d64ac6.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_detect-b3837a36b830e0d0.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-e3deb0e7e3f04966.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-dabbb79c9815def4.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-305b01f34c9409f2.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-f833521df6074e73.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-9ac333113350d171.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-1c126114322d0eee.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-bad9164fdeeecf92.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-f9374b1e480fa681.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-207f06e41d9603af.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-7e2768e66e984e85.rlib" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-957b4aff41f8cd46.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/opt/rustwide/rustup-home/toolchains/1.69.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/test_getmatrix-62a33cfade09aabc" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
[INFO] [stdout]   = note: collect2: fatal error: ld terminated with signal 9 [Killed]
[INFO] [stdout]           compilation terminated.
[INFO] [stdout]           
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error; 3 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ms_toollib` due to 2 previous errors; 3 warnings emitted
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 158 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "f7a5a0c55b5687e4350321a810035026771f7181a406429a74b28365ea2121eb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f7a5a0c55b5687e4350321a810035026771f7181a406429a74b28365ea2121eb", kill_on_drop: false }`
[INFO] [stdout] f7a5a0c55b5687e4350321a810035026771f7181a406429a74b28365ea2121eb
