[INFO] cloning repository https://github.com/aditya2337/learn-algorithms
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/aditya2337/learn-algorithms" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faditya2337%2Flearn-algorithms", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faditya2337%2Flearn-algorithms'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] aef65b374234414a932c7b41b2d6fcceae562728
[INFO] testing aditya2337/learn-algorithms against 1.76.0 for beta-1.77-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faditya2337%2Flearn-algorithms" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/aditya2337/learn-algorithms on toolchain 1.76.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/aditya2337/learn-algorithms
[INFO] finished tweaking git repo https://github.com/aditya2337/learn-algorithms
[INFO] tweaked toml for git repo https://github.com/aditya2337/learn-algorithms written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/aditya2337/learn-algorithms already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rstest_macros v0.17.0
[INFO] [stderr]   Downloaded rstest v0.17.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c039a9ca1e4cda6cfc99b0e1a983e3e144f083337faddf68666175a1c416f281
[INFO] running `Command { std: "docker" "start" "-a" "c039a9ca1e4cda6cfc99b0e1a983e3e144f083337faddf68666175a1c416f281", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c039a9ca1e4cda6cfc99b0e1a983e3e144f083337faddf68666175a1c416f281", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c039a9ca1e4cda6cfc99b0e1a983e3e144f083337faddf68666175a1c416f281", kill_on_drop: false }`
[INFO] [stdout] c039a9ca1e4cda6cfc99b0e1a983e3e144f083337faddf68666175a1c416f281
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c6a2a8b9158dbb09607be40bd518f78ba5b874229ef7205db5d6e052f28484b8
[INFO] running `Command { std: "docker" "start" "-a" "c6a2a8b9158dbb09607be40bd518f78ba5b874229ef7205db5d6e052f28484b8", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.59
[INFO] [stderr]    Compiling quote v1.0.28
[INFO] [stderr]    Compiling unicode-ident v1.0.9
[INFO] [stderr]    Compiling futures-core v0.3.28
[INFO] [stderr]    Compiling semver v1.0.17
[INFO] [stderr]    Compiling futures-channel v0.3.28
[INFO] [stderr]    Compiling futures-sink v0.3.28
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling futures-timer v3.0.2
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling rstest_macros v0.17.0
[INFO] [stderr]    Compiling syn v2.0.18
[INFO] [stderr]    Compiling futures-macro v0.3.28
[INFO] [stderr]    Compiling futures-util v0.3.28
[INFO] [stderr]    Compiling futures-executor v0.3.28
[INFO] [stderr]    Compiling futures v0.3.28
[INFO] [stderr]    Compiling rstest v0.17.0
[INFO] [stderr]    Compiling scripts v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/binary_tree/breadth_first_traversal.rs:3:32
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::types::{BinaryTree, Node};
[INFO] [stdout]   |                                ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `mem`, `ops::Index`
[INFO] [stdout]  --> src/linked_lists/linked_lists.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt::Debug, mem, ptr, ops::Index};
[INFO] [stdout]   |                       ^^^       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/path_finding.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 |         if (i >= maze.len()) {
[INFO] [stdout]    |            ^               ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 21 -         if (i >= maze.len()) {
[INFO] [stdout] 21 +         if i >= maze.len() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/path_finding.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 |         if (walk(
[INFO] [stdout]    |            ^
[INFO] [stdout] ...
[INFO] [stdout] 80 |         )) {
[INFO] [stdout]    |          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 73 ~         if walk(
[INFO] [stdout] 74 |             maze,
[INFO] [stdout]  ...
[INFO] [stdout] 79 |             path,
[INFO] [stdout] 80 ~         ) {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/queue.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let mut current_node = self.head.take();
[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 `pre_order_traversal` is never used
[INFO] [stdout]  --> src/binary_tree/binary_tree_pre_order.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn pre_order_traversal<T: std::clone::Clone>(head: &Link<T>) -> Vec<T> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `walk` is never used
[INFO] [stdout]  --> src/binary_tree/binary_tree_pre_order.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn walk<T: Clone>(node: &Link<T>, path: &mut Vec<T>) {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `breadth_first_traversal` is never used
[INFO] [stdout]  --> src/binary_tree/breadth_first_traversal.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn breadth_first_traversal<T: Clone>(tree: &BinaryTree<T>) -> Vec<T> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `push_to_queue` is never used
[INFO] [stdout]   --> src/binary_tree/breadth_first_traversal.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn push_to_queue<T>(value: Option<T>, queue: &mut Queue<T>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_mock_tree` is never used
[INFO] [stdout]  --> src/binary_tree/mock_tree.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn get_mock_tree() -> BinaryTree<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/types.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 9  | / impl<T> BinaryTree<T>
[INFO] [stdout] 10 | | where
[INFO] [stdout] 11 | |     T: Debug,
[INFO] [stdout]    | |_____________- associated function in this implementation
[INFO] [stdout] 12 |   {
[INFO] [stdout] 13 |       pub fn new() -> Self {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/types.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | / impl<T> Node<T>
[INFO] [stdout] 26 | | where
[INFO] [stdout] 27 | |     T: Debug,
[INFO] [stdout]    | |_____________- associated function in this implementation
[INFO] [stdout] 28 |   {
[INFO] [stdout] 29 |       pub fn new(value: T) -> Self {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tree` is never read
[INFO] [stdout]  --> src/binary_tree/BST.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct BinarySearchTree {
[INFO] [stdout]   |        ---------------- field in this struct
[INFO] [stdout] 5 |     tree: BinaryTree<i32>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `BinarySearchTree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `insert`, and `delete` are never used
[INFO] [stdout]   --> src/binary_tree/BST.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout] 8  | impl BinarySearchTree {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 9  |     pub fn new(tree: BinaryTree<i32>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub fn insert(&mut self, item: i32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn delete(mut self, item: i32) -> Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_value_node` is never used
[INFO] [stdout]   --> src/binary_tree/BST.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn min_value_node(node: &Node<i32>) -> &Node<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_node` is never used
[INFO] [stdout]   --> src/binary_tree/BST.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn delete_node(node: Link<i32>, item: i32) -> Link<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `walk_and_insert` is never used
[INFO] [stdout]   --> src/binary_tree/BST.rs:73:4
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn walk_and_insert(node: &mut Node<i32>, item: i32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `val`, `left_child`, `right_child`, and `height` are never read
[INFO] [stdout]   --> src/binary_tree/AVL_tree.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout] 6  | struct AVLNode {
[INFO] [stdout]    |        ------- fields in this struct
[INFO] [stdout] 7  |     val: i32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 8  |     left_child: Link,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 9  |     right_child: Link,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 10 |     height: usize,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AVLNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/binary_tree/AVL_tree.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl AVLNode {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 14 |     pub fn new(val: i32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn height(node: &Link) -> usize {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn get_left_height(&self) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     fn get_right_height(&self) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     fn balance_factor(&self) -> i8 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     fn update_height(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     fn rotate_left(&mut self) -> Link {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     fn rotate_right(&mut self) -> Link {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     fn balance(&mut self) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 92 |     pub fn insert(&mut self, val: i32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `root` is never read
[INFO] [stdout]    --> src/binary_tree/AVL_tree.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 101 | struct AVLTree {
[INFO] [stdout]     |        ------- field in this struct
[INFO] [stdout] 102 |     root: Link,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AVLTree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `insert` are never used
[INFO] [stdout]    --> src/binary_tree/AVL_tree.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl AVLTree {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 106 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn insert(&mut self, val: i32) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `walk_and_insert` is never used
[INFO] [stdout]    --> src/binary_tree/AVL_tree.rs:121:4
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn walk_and_insert(node: &mut AVLNode, new_node: AVLNode) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `length` and `harr` are never read
[INFO] [stdout]  --> src/heap.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct MinHeap {
[INFO] [stdout]   |            ------- fields in this struct
[INFO] [stdout] 3 |     length: usize,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 4 |     harr: Vec<i32>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `MinHeap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/heap.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout] 7  | impl MinHeap {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 8  |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     fn get_left_child_idx(&self, i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn get_right_child_idx(&self, i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn get_parent_idx(&self, i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn swap_up(&mut self, idx: usize) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn swap_down(&mut self, idx: usize) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn insert(&mut self, item: i32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn delete_min(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn delete_element(&mut self, item: i32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `head`, `tail`, and `length` are never read
[INFO] [stdout]  --> src/linked_lists/doubly_linked_list.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct DoublyLinkedList<T> {
[INFO] [stdout]   |        ---------------- fields in this struct
[INFO] [stdout] 7 |     head: Link<T>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 8 |     tail: Link<T>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 9 |     length: usize,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `DoublyLinkedList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `append_front`, `append`, `pop`, and `pop_front` are never used
[INFO] [stdout]   --> src/linked_lists/doubly_linked_list.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<T> DoublyLinkedList<T> {
[INFO] [stdout]    | --------------------------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn append_front(&mut self, val: T) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn append(&mut self, val: T) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn pop(&mut self) -> Option<T> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn pop_front(&mut self) -> Option<T> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `val`, `next`, and `prev` are never read
[INFO] [stdout]   --> src/linked_lists/doubly_linked_list.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 92 | struct Node<T> {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 93 |     val: T,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 94 |     next: Link<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 95 |     prev: Link<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linked_lists/doubly_linked_list.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 97 | impl<T> Node<T> {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 98 |     pub fn new(val: T) -> Rc<RefCell<Self>> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `next` are never read
[INFO] [stdout]  --> src/linked_lists/linked_lists.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Node<T> {
[INFO] [stdout]   |            ---- fields in this struct
[INFO] [stdout] 7 |     value: T,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout] 8 |     next: Link<T>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linked_lists/linked_lists.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<T> Node<T> {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 12 |     pub fn new(value: T) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `head` and `tail` are never read
[INFO] [stdout]   --> src/linked_lists/linked_lists.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct LinkedList<T> {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 19 |     head: Link<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 20 |     tail: *mut Node<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LinkedList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/linked_lists/linked_lists.rs:27:12
[INFO] [stdout]     |
[INFO] [stdout] 23  | / impl<T> LinkedList<T>
[INFO] [stdout] 24  | | where
[INFO] [stdout] 25  | |     T: Debug,
[INFO] [stdout]     | |_____________- associated items in this implementation
[INFO] [stdout] 26  |   {
[INFO] [stdout] 27  |       pub fn new() -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 34  |       pub fn get_length(&self) -> i32 {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51  |       fn check_idx_validity(&self, &idx: &i32) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57  |       pub fn insert_at(&mut self, value: T, idx: i32) -> bool {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79  |       pub fn delete_at(&mut self, idx: i32) -> bool {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |       pub fn append(&mut self, value: T) {
[INFO] [stdout]     |              ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |       fn prepend(&self) {}
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_ll` is never used
[INFO] [stdout]    --> src/linked_lists/linked_lists.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub fn test_ll() {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/linked_lists/merge_linked_list.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl ListNode {
[INFO] [stdout]   | ------------- associated function in this implementation
[INFO] [stdout] 8 |     #[inline]
[INFO] [stdout] 9 |     fn new(val: i32) -> Self {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_two_lists` is never used
[INFO] [stdout]   --> src/linked_lists/merge_linked_list.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn merge_two_lists(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_linked_list` is never used
[INFO] [stdout]   --> src/linked_lists/merge_linked_list.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn create_linked_list(nums: Vec<i32>) -> Option<Box<ListNode>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/linked_lists/reverse_linked_list.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl ListNode {
[INFO] [stdout]   | ------------- associated function in this implementation
[INFO] [stdout] 8 |     #[inline]
[INFO] [stdout] 9 |     fn new(val: i32) -> Self {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reverse_list` is never used
[INFO] [stdout]   --> src/linked_lists/reverse_linked_list.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn reverse_list(head: Option<Box<ListNode>>) -> Option<Box<ListNode>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_linked_list` is never used
[INFO] [stdout]   --> src/linked_lists/reverse_linked_list.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn create_linked_list(nums: Vec<i32>) -> Option<Box<ListNode>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `matrix_multiply` is never used
[INFO] [stdout]  --> src/matrix_multiply.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn matrix_multiply(a: &Vec<Vec<i32>>, b: &Vec<Vec<i32>>) -> Vec<Vec<i32>> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/path_finding.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl Point {
[INFO] [stdout]   | ---------- associated function in this implementation
[INFO] [stdout] 8 |     pub fn new(x: isize, y: isize) -> Self {
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Maze` is never used
[INFO] [stdout]   --> src/path_finding.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | type Maze = Vec<String>;
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_path` is never used
[INFO] [stdout]   --> src/path_finding.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn find_path(maze: Maze, wall: char, start: Point, end: Point) -> Vec<Point> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `walk` is never used
[INFO] [stdout]   --> src/path_finding.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn walk(
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `next` is never read
[INFO] [stdout]  --> src/queue.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Node<T> {
[INFO] [stdout]   |            ---- field in this struct
[INFO] [stdout] 7 |     pub value: T,
[INFO] [stdout] 8 |     next: Link<T>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/queue.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<T> Node<T> {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 12 |     pub fn new(value: T) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `head` and `tail` are never read
[INFO] [stdout]   --> src/queue.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct Queue<T> {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 19 |     pub length: i32,
[INFO] [stdout] 20 |     head: Link<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 21 |     tail: *mut Node<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Queue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `enqueue`, `dequeue`, and `peek` are never used
[INFO] [stdout]   --> src/queue.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl<T> Queue<T> {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 25 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn enqueue(&mut self, item: T) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn dequeue(&mut self) -> Option<T> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     fn peek(&self) -> &Link<T> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search_insert` is never used
[INFO] [stdout]  --> src/search_insert_pos.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn search_insert(nums: Vec<i32>, target: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search_idx` is never used
[INFO] [stdout]  --> src/search_insert_pos.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn search_idx(start_idx: usize, end_idx: usize, target: i32, nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PRICES` is never used
[INFO] [stdout]  --> src/dynamic_programming/rod_cutting.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const PRICES: [u8; 40] = [
[INFO] [stdout]   |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rod_cut_recursively` is never used
[INFO] [stdout]  --> src/dynamic_programming/rod_cutting.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn rod_cut_recursively(idx: usize) -> u8 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rod_cut_top_down` is never used
[INFO] [stdout]   --> src/dynamic_programming/rod_cutting.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn rod_cut_top_down(idx: usize) -> u8 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `memoized_cut_rod_aux` is never used
[INFO] [stdout]   --> src/dynamic_programming/rod_cutting.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn memoized_cut_rod_aux(idx: usize, r: &mut Vec<u8>) -> u8 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rod_cut_bottom_up` is never used
[INFO] [stdout]   --> src/dynamic_programming/rod_cutting.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn rod_cut_bottom_up(idx: usize) -> u8 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array` is never used
[INFO] [stdout]  --> src/dynamic_programming/maximum_subarray.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn max_sub_array(nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array_iterative` is never used
[INFO] [stdout]  --> src/dynamic_programming/maximum_subarray.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn max_sub_array_iterative(nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array_recursive` is never used
[INFO] [stdout]   --> src/dynamic_programming/maximum_subarray.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn max_sub_array_recursive(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array_linear` is never used
[INFO] [stdout]   --> src/dynamic_programming/maximum_subarray.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn max_sub_array_linear(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array_kadane` is never used
[INFO] [stdout]   --> src/dynamic_programming/maximum_subarray.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub fn max_sub_array_kadane(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `length_of_lis` is never used
[INFO] [stdout]  --> src/dynamic_programming/longest_increasing_subsequence.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn length_of_lis(nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `climb_stairs` is never used
[INFO] [stdout]  --> src/dynamic_programming/climbing_stairs.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn climb_stairs(n: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `coin_change` is never used
[INFO] [stdout]  --> src/dynamic_programming/coin_change.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn coin_change(coins: Vec<i32>, amount: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal_min_coins` is never used
[INFO] [stdout]   --> src/dynamic_programming/coin_change.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn cal_min_coins(coins: &Vec<i32>, amount: i32, dp: &mut Vec<i32>) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal_min_coins_bottom_up` is never used
[INFO] [stdout]   --> src/dynamic_programming/coin_change.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn cal_min_coins_bottom_up(coins: &Vec<i32>, amount: i32) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `word_break` is never used
[INFO] [stdout]  --> src/dynamic_programming/word_break.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn word_break(s: String, word_dict: Vec<String>) -> bool {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rob` is never used
[INFO] [stdout]  --> src/dynamic_programming/house_robber.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn rob(nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `heap` and `size` are never read
[INFO] [stdout]  --> src/sorting/heap_sort.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct Heap {
[INFO] [stdout]   |        ---- fields in this struct
[INFO] [stdout] 3 |     heap: Vec<i32>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 4 |     size: usize,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Heap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `heapify`, `sort`, `delete`, `left_idx`, and `right_idx` are never used
[INFO] [stdout]   --> src/sorting/heap_sort.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout] 7  | impl Heap {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 8  |     pub fn new(arr: Vec<i32>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn heapify(&mut self, idx: usize) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn sort(&mut self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     fn delete(&mut self) -> i32 {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     fn left_idx(&self, i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     fn right_idx(&self, i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `srt` is never used
[INFO] [stdout]  --> src/sorting/bubble_sort.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn srt<'a>(unsorted_list: &'a mut Vec<i32>) -> &'a Vec<i32> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `swap` is never used
[INFO] [stdout]   --> src/sorting/bubble_sort.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn swap(previous_idx: usize, next_idx: usize, list: &mut Vec<i32>) -> &Vec<i32> {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sort` is never used
[INFO] [stdout]  --> src/sorting/counting_sort.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn sort(a: Vec<usize>) -> Vec<usize> {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sort` is never used
[INFO] [stdout]  --> src/sorting/insertion_sort.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn sort(arr: &mut Vec<i32>) {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sort` is never used
[INFO] [stdout]  --> src/sorting/merge_sort.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn sort(arr: &mut Vec<i32>, p: usize, r: usize) {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge` is never used
[INFO] [stdout]   --> src/sorting/merge_sort.rs:14:4
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn merge(arr: &mut Vec<i32>, p: usize, q: usize, r: usize) {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new_sort` is never used
[INFO] [stdout]  --> src/sorting/quick_sort.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn new_sort(list: &mut Vec<i32>, lo: usize, hi: usize) {
[INFO] [stdout]   |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `partition` is never used
[INFO] [stdout]   --> src/sorting/quick_sort.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn partition(list: &mut Vec<i32>, lo: usize, hi: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `WeightedAdjacencyMatrix` is never used
[INFO] [stdout]  --> src/graphs/bfs.rs:3:6
[INFO] [stdout]   |
[INFO] [stdout] 3 | type WeightedAdjacencyMatrix = Vec<Vec<i32>>;
[INFO] [stdout]   |      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bfs` is never used
[INFO] [stdout]  --> src/graphs/bfs.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn bfs(graph: WeightedAdjacencyMatrix, source: i32, needle: i32) -> Option<Vec<i32>> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `BST` should have a snake case name
[INFO] [stdout]  --> src/binary_tree/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub mod BST;
[INFO] [stdout]   |         ^^^ help: convert the identifier to snake case: `bst`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `AVL_tree` should have a snake case name
[INFO] [stdout]  --> src/binary_tree/mod.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub mod AVL_tree;
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `avl_tree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 81 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 5.99s
[INFO] running `Command { std: "docker" "inspect" "c6a2a8b9158dbb09607be40bd518f78ba5b874229ef7205db5d6e052f28484b8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c6a2a8b9158dbb09607be40bd518f78ba5b874229ef7205db5d6e052f28484b8", kill_on_drop: false }`
[INFO] [stdout] c6a2a8b9158dbb09607be40bd518f78ba5b874229ef7205db5d6e052f28484b8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9f6e143340a2eacfbea64af6f25591b40c61b9807d89958974ce8f92b6662736
[INFO] running `Command { std: "docker" "start" "-a" "9f6e143340a2eacfbea64af6f25591b40c61b9807d89958974ce8f92b6662736", kill_on_drop: false }`
[INFO] [stderr]    Compiling scripts v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/binary_tree/breadth_first_traversal.rs:3:32
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::types::{BinaryTree, Node};
[INFO] [stdout]   |                                ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `mem`, `ops::Index`
[INFO] [stdout]  --> src/linked_lists/linked_lists.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt::Debug, mem, ptr, ops::Index};
[INFO] [stdout]   |                       ^^^       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/path_finding.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 |         if (i >= maze.len()) {
[INFO] [stdout]    |            ^               ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 21 -         if (i >= maze.len()) {
[INFO] [stdout] 21 +         if i >= maze.len() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/path_finding.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 |         if (walk(
[INFO] [stdout]    |            ^
[INFO] [stdout] ...
[INFO] [stdout] 80 |         )) {
[INFO] [stdout]    |          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 73 ~         if walk(
[INFO] [stdout] 74 |             maze,
[INFO] [stdout]  ...
[INFO] [stdout] 79 |             path,
[INFO] [stdout] 80 ~         ) {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/queue.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let mut current_node = self.head.take();
[INFO] [stdout]    |             ----^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nums`
[INFO] [stdout]   --> src/search_insert_pos.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let nums = vec![1, 3, 5, 6];
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_nums`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `length` is never read
[INFO] [stdout]  --> src/heap.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct MinHeap {
[INFO] [stdout]   |            ------- field in this struct
[INFO] [stdout] 3 |     length: usize,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `MinHeap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_right_child_idx` is never used
[INFO] [stdout]   --> src/heap.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 7  | impl MinHeap {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn get_right_child_idx(&self, i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `head`, `tail`, and `length` are never read
[INFO] [stdout]  --> src/linked_lists/doubly_linked_list.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct DoublyLinkedList<T> {
[INFO] [stdout]   |        ---------------- fields in this struct
[INFO] [stdout] 7 |     head: Link<T>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 8 |     tail: Link<T>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 9 |     length: usize,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `DoublyLinkedList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `append_front`, `append`, `pop`, and `pop_front` are never used
[INFO] [stdout]   --> src/linked_lists/doubly_linked_list.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<T> DoublyLinkedList<T> {
[INFO] [stdout]    | --------------------------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn append_front(&mut self, val: T) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn append(&mut self, val: T) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn pop(&mut self) -> Option<T> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn pop_front(&mut self) -> Option<T> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `val`, `next`, and `prev` are never read
[INFO] [stdout]   --> src/linked_lists/doubly_linked_list.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 92 | struct Node<T> {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 93 |     val: T,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 94 |     next: Link<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 95 |     prev: Link<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linked_lists/doubly_linked_list.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 97 | impl<T> Node<T> {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 98 |     pub fn new(val: T) -> Rc<RefCell<Self>> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `next` are never read
[INFO] [stdout]  --> src/linked_lists/linked_lists.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Node<T> {
[INFO] [stdout]   |            ---- fields in this struct
[INFO] [stdout] 7 |     value: T,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout] 8 |     next: Link<T>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linked_lists/linked_lists.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<T> Node<T> {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 12 |     pub fn new(value: T) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `head` and `tail` are never read
[INFO] [stdout]   --> src/linked_lists/linked_lists.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct LinkedList<T> {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 19 |     head: Link<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 20 |     tail: *mut Node<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LinkedList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/linked_lists/linked_lists.rs:27:12
[INFO] [stdout]     |
[INFO] [stdout] 23  | / impl<T> LinkedList<T>
[INFO] [stdout] 24  | | where
[INFO] [stdout] 25  | |     T: Debug,
[INFO] [stdout]     | |_____________- associated items in this implementation
[INFO] [stdout] 26  |   {
[INFO] [stdout] 27  |       pub fn new() -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 34  |       pub fn get_length(&self) -> i32 {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51  |       fn check_idx_validity(&self, &idx: &i32) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57  |       pub fn insert_at(&mut self, value: T, idx: i32) -> bool {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79  |       pub fn delete_at(&mut self, idx: i32) -> bool {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |       pub fn append(&mut self, value: T) {
[INFO] [stdout]     |              ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |       fn prepend(&self) {}
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_ll` is never used
[INFO] [stdout]    --> src/linked_lists/linked_lists.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub fn test_ll() {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/linked_lists/reverse_linked_list.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl ListNode {
[INFO] [stdout]   | ------------- associated function in this implementation
[INFO] [stdout] 8 |     #[inline]
[INFO] [stdout] 9 |     fn new(val: i32) -> Self {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array_iterative` is never used
[INFO] [stdout]  --> src/dynamic_programming/maximum_subarray.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn max_sub_array_iterative(nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array_recursive` is never used
[INFO] [stdout]   --> src/dynamic_programming/maximum_subarray.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn max_sub_array_recursive(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array_linear` is never used
[INFO] [stdout]   --> src/dynamic_programming/maximum_subarray.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn max_sub_array_linear(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal_min_coins` is never used
[INFO] [stdout]   --> src/dynamic_programming/coin_change.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn cal_min_coins(coins: &Vec<i32>, amount: i32, dp: &mut Vec<i32>) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `srt` is never used
[INFO] [stdout]  --> src/sorting/bubble_sort.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn srt<'a>(unsorted_list: &'a mut Vec<i32>) -> &'a Vec<i32> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `swap` is never used
[INFO] [stdout]   --> src/sorting/bubble_sort.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn swap(previous_idx: usize, next_idx: usize, list: &mut Vec<i32>) -> &Vec<i32> {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `WeightedAdjacencyMatrix` is never used
[INFO] [stdout]  --> src/graphs/bfs.rs:3:6
[INFO] [stdout]   |
[INFO] [stdout] 3 | type WeightedAdjacencyMatrix = Vec<Vec<i32>>;
[INFO] [stdout]   |      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bfs` is never used
[INFO] [stdout]  --> src/graphs/bfs.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn bfs(graph: WeightedAdjacencyMatrix, source: i32, needle: i32) -> Option<Vec<i32>> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `BST` should have a snake case name
[INFO] [stdout]  --> src/binary_tree/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub mod BST;
[INFO] [stdout]   |         ^^^ help: convert the identifier to snake case: `bst`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `AVL_tree` should have a snake case name
[INFO] [stdout]  --> src/binary_tree/mod.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub mod AVL_tree;
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `avl_tree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 28 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.62s
[INFO] running `Command { std: "docker" "inspect" "9f6e143340a2eacfbea64af6f25591b40c61b9807d89958974ce8f92b6662736", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9f6e143340a2eacfbea64af6f25591b40c61b9807d89958974ce8f92b6662736", kill_on_drop: false }`
[INFO] [stdout] 9f6e143340a2eacfbea64af6f25591b40c61b9807d89958974ce8f92b6662736
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 715b4615e0d8544790f2b65ac543324ea404fddda8626f632f45e13ce7ca8942
[INFO] running `Command { std: "docker" "start" "-a" "715b4615e0d8544790f2b65ac543324ea404fddda8626f632f45e13ce7ca8942", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `Node`
[INFO] [stderr]  --> src/binary_tree/breadth_first_traversal.rs:3:32
[INFO] [stderr]   |
[INFO] [stderr] 3 | use super::types::{BinaryTree, Node};
[INFO] [stderr]   |                                ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `mem`, `ops::Index`
[INFO] [stderr]  --> src/linked_lists/linked_lists.rs:1:23
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{fmt::Debug, mem, ptr, ops::Index};
[INFO] [stderr]   |                       ^^^       ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/path_finding.rs:21:12
[INFO] [stderr]    |
[INFO] [stderr] 21 |         if (i >= maze.len()) {
[INFO] [stderr]    |            ^               ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 21 -         if (i >= maze.len()) {
[INFO] [stderr] 21 +         if i >= maze.len() {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/path_finding.rs:73:12
[INFO] [stderr]    |
[INFO] [stderr] 73 |         if (walk(
[INFO] [stderr]    |            ^
[INFO] [stderr] ...
[INFO] [stderr] 80 |         )) {
[INFO] [stderr]    |          ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 73 ~         if walk(
[INFO] [stderr] 74 |             maze,
[INFO] [stderr]  ...
[INFO] [stderr] 79 |             path,
[INFO] [stderr] 80 ~         ) {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/queue.rs:54:13
[INFO] [stderr]    |
[INFO] [stderr] 54 |         let mut current_node = self.head.take();
[INFO] [stderr]    |             ----^^^^^^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `nums`
[INFO] [stderr]   --> src/search_insert_pos.rs:47:13
[INFO] [stderr]    |
[INFO] [stderr] 47 |         let nums = vec![1, 3, 5, 6];
[INFO] [stderr]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_nums`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `length` is never read
[INFO] [stderr]  --> src/heap.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | pub struct MinHeap {
[INFO] [stderr]   |            ------- field in this struct
[INFO] [stderr] 3 |     length: usize,
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `MinHeap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_right_child_idx` is never used
[INFO] [stderr]   --> src/heap.rs:19:8
[INFO] [stderr]    |
[INFO] [stderr] 7  | impl MinHeap {
[INFO] [stderr]    | ------------ method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 19 |     fn get_right_child_idx(&self, i: usize) -> usize {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `head`, `tail`, and `length` are never read
[INFO] [stderr]  --> src/linked_lists/doubly_linked_list.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | struct DoublyLinkedList<T> {
[INFO] [stderr]   |        ---------------- fields in this struct
[INFO] [stderr] 7 |     head: Link<T>,
[INFO] [stderr]   |     ^^^^
[INFO] [stderr] 8 |     tail: Link<T>,
[INFO] [stderr]   |     ^^^^
[INFO] [stderr] 9 |     length: usize,
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `DoublyLinkedList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `append_front`, `append`, `pop`, and `pop_front` are never used
[INFO] [stderr]   --> src/linked_lists/doubly_linked_list.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl<T> DoublyLinkedList<T> {
[INFO] [stderr]    | --------------------------- associated items in this implementation
[INFO] [stderr] 12 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 20 |     pub fn append_front(&mut self, val: T) {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 36 |     pub fn append(&mut self, val: T) {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 53 |     pub fn pop(&mut self) -> Option<T> {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 70 |     pub fn pop_front(&mut self) -> Option<T> {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `val`, `next`, and `prev` are never read
[INFO] [stderr]   --> src/linked_lists/doubly_linked_list.rs:93:5
[INFO] [stderr]    |
[INFO] [stderr] 92 | struct Node<T> {
[INFO] [stderr]    |        ---- fields in this struct
[INFO] [stderr] 93 |     val: T,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 94 |     next: Link<T>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 95 |     prev: Link<T>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/linked_lists/doubly_linked_list.rs:98:12
[INFO] [stderr]    |
[INFO] [stderr] 97 | impl<T> Node<T> {
[INFO] [stderr]    | --------------- associated function in this implementation
[INFO] [stderr] 98 |     pub fn new(val: T) -> Rc<RefCell<Self>> {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `value` and `next` are never read
[INFO] [stderr]  --> src/linked_lists/linked_lists.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub struct Node<T> {
[INFO] [stderr]   |            ---- fields in this struct
[INFO] [stderr] 7 |     value: T,
[INFO] [stderr]   |     ^^^^^
[INFO] [stderr] 8 |     next: Link<T>,
[INFO] [stderr]   |     ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/linked_lists/linked_lists.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl<T> Node<T> {
[INFO] [stderr]    | --------------- associated function in this implementation
[INFO] [stderr] 12 |     pub fn new(value: T) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `head` and `tail` are never read
[INFO] [stderr]   --> src/linked_lists/linked_lists.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub struct LinkedList<T> {
[INFO] [stderr]    |            ---------- fields in this struct
[INFO] [stderr] 19 |     head: Link<T>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 20 |     tail: *mut Node<T>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `LinkedList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/linked_lists/linked_lists.rs:27:12
[INFO] [stderr]     |
[INFO] [stderr] 23  | / impl<T> LinkedList<T>
[INFO] [stderr] 24  | | where
[INFO] [stderr] 25  | |     T: Debug,
[INFO] [stderr]     | |_____________- associated items in this implementation
[INFO] [stderr] 26  |   {
[INFO] [stderr] 27  |       pub fn new() -> Self {
[INFO] [stderr]     |              ^^^
[INFO] [stderr] ...
[INFO] [stderr] 34  |       pub fn get_length(&self) -> i32 {
[INFO] [stderr]     |              ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 51  |       fn check_idx_validity(&self, &idx: &i32) {
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 57  |       pub fn insert_at(&mut self, value: T, idx: i32) -> bool {
[INFO] [stderr]     |              ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 79  |       pub fn delete_at(&mut self, idx: i32) -> bool {
[INFO] [stderr]     |              ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 106 |       pub fn append(&mut self, value: T) {
[INFO] [stderr]     |              ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 120 |       fn prepend(&self) {}
[INFO] [stderr]     |          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test_ll` is never used
[INFO] [stderr]    --> src/linked_lists/linked_lists.rs:123:8
[INFO] [stderr]     |
[INFO] [stderr] 123 | pub fn test_ll() {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]  --> src/linked_lists/reverse_linked_list.rs:9:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | impl ListNode {
[INFO] [stderr]   | ------------- associated function in this implementation
[INFO] [stderr] 8 |     #[inline]
[INFO] [stderr] 9 |     fn new(val: i32) -> Self {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `max_sub_array_iterative` is never used
[INFO] [stderr]  --> src/dynamic_programming/maximum_subarray.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn max_sub_array_iterative(nums: Vec<i32>) -> i32 {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `max_sub_array_recursive` is never used
[INFO] [stderr]   --> src/dynamic_programming/maximum_subarray.rs:25:8
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub fn max_sub_array_recursive(nums: Vec<i32>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `max_sub_array_linear` is never used
[INFO] [stderr]   --> src/dynamic_programming/maximum_subarray.rs:43:8
[INFO] [stderr]    |
[INFO] [stderr] 43 | pub fn max_sub_array_linear(nums: Vec<i32>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `cal_min_coins` is never used
[INFO] [stderr]   --> src/dynamic_programming/coin_change.rs:12:4
[INFO] [stderr]    |
[INFO] [stderr] 12 | fn cal_min_coins(coins: &Vec<i32>, amount: i32, dp: &mut Vec<i32>) -> i32 {
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `srt` is never used
[INFO] [stderr]  --> src/sorting/bubble_sort.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn srt<'a>(unsorted_list: &'a mut Vec<i32>) -> &'a Vec<i32> {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `swap` is never used
[INFO] [stderr]   --> src/sorting/bubble_sort.rs:29:4
[INFO] [stderr]    |
[INFO] [stderr] 29 | fn swap(previous_idx: usize, next_idx: usize, list: &mut Vec<i32>) -> &Vec<i32> {
[INFO] [stderr]    |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `WeightedAdjacencyMatrix` is never used
[INFO] [stderr]  --> src/graphs/bfs.rs:3:6
[INFO] [stderr]   |
[INFO] [stderr] 3 | type WeightedAdjacencyMatrix = Vec<Vec<i32>>;
[INFO] [stderr]   |      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `bfs` is never used
[INFO] [stderr]  --> src/graphs/bfs.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn bfs(graph: WeightedAdjacencyMatrix, source: i32, needle: i32) -> Option<Vec<i32>> {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: module `BST` should have a snake case name
[INFO] [stderr]  --> src/binary_tree/mod.rs:5:9
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub mod BST;
[INFO] [stderr]   |         ^^^ help: convert the identifier to snake case: `bst`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: module `AVL_tree` should have a snake case name
[INFO] [stderr]  --> src/binary_tree/mod.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub mod AVL_tree;
[INFO] [stderr]   |         ^^^^^^^^ help: convert the identifier to snake case: `avl_tree`
[INFO] [stderr] 
[INFO] [stderr] warning: `scripts` (bin "scripts" test) generated 28 warnings (run `cargo fix --bin "scripts" --tests` to apply 6 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/scripts-0e6d2f0f4bc90ed7)
[INFO] [stdout] 
[INFO] [stdout] running 44 tests
[INFO] [stdout] test binary_tree::binary_tree_pre_order::tests::test_pre_order ... ok
[INFO] [stdout] test binary_tree::BST::tests::bst ... ok
[INFO] [stdout] test binary_tree::AVL_tree::tests::test_avl ... ok
[INFO] [stdout] test binary_tree::breadth_first_traversal::tests::breadth_first ... ok
[INFO] [stdout] test dynamic_programming::climbing_stairs::tests::climb_stairs_test_1::case_1 ... ok
[INFO] [stdout] test dynamic_programming::climbing_stairs::tests::climb_stairs_test_1::case_2 ... ok
[INFO] [stdout] test dynamic_programming::climbing_stairs::tests::climb_stairs_test_1::case_3 ... ok
[INFO] [stdout] test dynamic_programming::climbing_stairs::tests::climb_stairs_test_1::case_4 ... ok
[INFO] [stdout] test dynamic_programming::climbing_stairs::tests::climb_stairs_test_1::case_5 ... ok
[INFO] [stdout] test dynamic_programming::coin_change::tests::coin_change_test::case_1 ... ok
[INFO] [stdout] test dynamic_programming::coin_change::tests::coin_change_test::case_2 ... ok
[INFO] [stdout] test dynamic_programming::coin_change::tests::coin_change_test::case_3 ... ok
[INFO] [stdout] test dynamic_programming::coin_change::tests::coin_change_test::case_4 ... ok
[INFO] [stdout] test dynamic_programming::coin_change::tests::coin_change_test::case_5 ... ok
[INFO] [stdout] test dynamic_programming::house_robber::tests::rob_test::case_1 ... ok
[INFO] [stdout] test dynamic_programming::house_robber::tests::rob_test::case_2 ... ok
[INFO] [stdout] test dynamic_programming::house_robber::tests::rob_test::case_3 ... ok
[INFO] [stdout] test dynamic_programming::house_robber::tests::rob_test::case_4 ... ok
[INFO] [stdout] test dynamic_programming::longest_increasing_subsequence::tests::length_of_lis_test_1 ... ok
[INFO] [stdout] test dynamic_programming::longest_increasing_subsequence::tests::length_of_lis_test_2 ... ok
[INFO] [stdout] test dynamic_programming::longest_increasing_subsequence::tests::length_of_lis_test_3 ... ok
[INFO] [stdout] test dynamic_programming::longest_increasing_subsequence::tests::length_of_lis_test_4 ... ok
[INFO] [stdout] test dynamic_programming::maximum_subarray::tests::max_sub_array_test_1 ... ok
[INFO] [stdout] test dynamic_programming::maximum_subarray::tests::max_sub_array_test_2 ... ok
[INFO] [stdout] test dynamic_programming::maximum_subarray::tests::max_sub_array_test_3 ... ok
[INFO] [stdout] test dynamic_programming::maximum_subarray::tests::max_sub_array_test_4 ... ok
[INFO] [stdout] test heap::tests::test_heap ... ok
[INFO] [stdout] test linked_lists::merge_linked_list::tests::test_merge ... ok
[INFO] [stdout] test queue::tests::test_queue ... ok
[INFO] [stdout] test matrix_multiply::tests::test_matrix_multiply ... ok
[INFO] [stdout] test search_insert_pos::tests::test_search ... ok
[INFO] [stdout] test sorting::merge_sort::tests::test_merge_sort ... ok
[INFO] [stdout] test sorting::counting_sort::tests::test_count_sort ... ok
[INFO] [stdout] test linked_lists::reverse_linked_list::tests::test_merge ... ok
[INFO] [stdout] test path_finding::tests::test_path_finder ... ok
[INFO] [stdout] test dynamic_programming::coin_change::tests::coin_change_test::case_6 ... ok
[INFO] [stdout] test sorting::merge_sort::tests::test_merge ... ok
[INFO] [stdout] test matrix_multiply::tests::test_matrix_multiply_empty ... ok
[INFO] [stdout] test sorting::heap_sort::tests::test_heap ... ok
[INFO] [stdout] test sorting::quick_sort::tests::test_quick_sort ... ok
[INFO] [stdout] test sorting::insertion_sort::tests::test_insertion_sort ... ok
[INFO] [stdout] test dynamic_programming::word_break::tests::word_break_test::case_1 ... FAILED
[INFO] [stdout] test matrix_multiply::tests::test_matrix_multiply_wrong_size - should panic ... ok
[INFO] [stdout] test dynamic_programming::rod_cutting::tests::test_rod_cut ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- dynamic_programming::word_break::tests::word_break_test::case_1 stdout ----
[INFO] [stdout] thread 'dynamic_programming::word_break::tests::word_break_test::case_1' panicked at src/dynamic_programming/word_break.rs:36:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: false
[INFO] [stdout]  right: true
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x564113e41306 - std::backtrace_rs::backtrace::libunwind::trace::hbee8a7973eeb6c93
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
[INFO] [stdout]    1:     0x564113e41306 - std::backtrace_rs::backtrace::trace_unsynchronized::hc8ac75eea3aa6899
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x564113e41306 - std::sys_common::backtrace::_print_fmt::hc7f3e3b5298b1083
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x564113e41306 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hbb235daedd7c6190
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x564113e6a150 - core::fmt::rt::Argument::fmt::h76c38a80d925a410
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/fmt/rt.rs:142:9
[INFO] [stdout]    5:     0x564113e6a150 - core::fmt::write::h3ed6aeaa977c8e45
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/fmt/mod.rs:1120:17
[INFO] [stdout]    6:     0x564113e3ed6f - std::io::Write::write_fmt::h1299aa7741865f2b
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/io/mod.rs:1810:15
[INFO] [stdout]    7:     0x564113e410e4 - std::sys_common::backtrace::_print::h5d645a07e0fcfdbb
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x564113e410e4 - std::sys_common::backtrace::print::h85035a511aafe7a8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x564113e42e57 - std::panicking::default_hook::{{closure}}::hcce8cea212785a25
[INFO] [stdout]   10:     0x564113e42b3d - std::panicking::default_hook::hf5fcb0f213fe709a
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:289:9
[INFO] [stdout]   11:     0x564113e10117 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h60265c2dfa87ee34
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   12:     0x564113e10117 - test::test_main::{{closure}}::h77865bd3127078c6
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:138:21
[INFO] [stdout]   13:     0x564113e43476 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hbc5ccf4eb663e1e5
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   14:     0x564113e43476 - std::panicking::rust_panic_with_hook::h095fccf1dc9379ee
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:783:13
[INFO] [stdout]   15:     0x564113e431c2 - std::panicking::begin_panic_handler::{{closure}}::h032ba12139b353db
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:657:13
[INFO] [stdout]   16:     0x564113e41806 - std::sys_common::backtrace::__rust_end_short_backtrace::h9259bc2ff8fd0f76
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x564113e42f20 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:645:5
[INFO] [stdout]   18:     0x564113db9cd5 - core::panicking::panic_fmt::h784f20a50eaab275
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panicking.rs:72:14
[INFO] [stdout]   19:     0x564113dba10b - core::panicking::assert_failed_inner::hbf94b40c37b92af0
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panicking.rs:342:17
[INFO] [stdout]   20:     0x564113dcab4e - core::panicking::assert_failed::h0cb208f5ca1235bb
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panicking.rs:297:5
[INFO] [stdout]   21:     0x564113dc795f - scripts::dynamic_programming::word_break::tests::word_break_test::hce5473dc76c1185f
[INFO] [stdout]                                at /opt/rustwide/workdir/src/dynamic_programming/word_break.rs:36:9
[INFO] [stdout]   22:     0x564113dc7b4a - scripts::dynamic_programming::word_break::tests::word_break_test::case_1::h9f3d4239b033041c
[INFO] [stdout]                                at /opt/rustwide/workdir/src/dynamic_programming/word_break.rs:29:5
[INFO] [stdout]   23:     0x564113dc7987 - scripts::dynamic_programming::word_break::tests::word_break_test::case_1::{{closure}}::h69a16f3fb6263e5d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/dynamic_programming/word_break.rs:29:14
[INFO] [stdout]   24:     0x564113dc8d26 - core::ops::function::FnOnce::call_once::h0f7ab46f1c34b75c
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x564113e159ef - core::ops::function::FnOnce::call_once::h8dc6907944022cf6
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x564113e159ef - test::__rust_begin_short_backtrace::haae1a87433f1efb3
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:627:18
[INFO] [stdout]   27:     0x564113e14771 - test::run_test_in_process::{{closure}}::h8c7decfa7c14e152
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:650:60
[INFO] [stdout]   28:     0x564113e14771 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h19e6ff056d9d21e9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   29:     0x564113e14771 - std::panicking::try::do_call::h89c848fcaa37c035
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
[INFO] [stdout]   30:     0x564113e14771 - std::panicking::try::h57ab3dc74e2839b8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
[INFO] [stdout]   31:     0x564113e14771 - std::panic::catch_unwind::hfb6a1b1abc120fb9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
[INFO] [stdout]   32:     0x564113e14771 - test::run_test_in_process::h5ae2f9875edd562d
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:650:27
[INFO] [stdout]   33:     0x564113e14771 - test::run_test::{{closure}}::h35d7300d8928a067
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:573:43
[INFO] [stdout]   34:     0x564113ddbaa6 - test::run_test::{{closure}}::h7525ced405d23d1b
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:601:41
[INFO] [stdout]   35:     0x564113ddbaa6 - std::sys_common::backtrace::__rust_begin_short_backtrace::h4e7db78ce05afad8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   36:     0x564113de0b07 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hcfbcb64f1a1b3482
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/thread/mod.rs:529:17
[INFO] [stdout]   37:     0x564113de0b07 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h9d89c5c4108bd689
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   38:     0x564113de0b07 - std::panicking::try::do_call::h8a4869bc94ec50c9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
[INFO] [stdout]   39:     0x564113de0b07 - std::panicking::try::h9a576f20ff81ac30
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
[INFO] [stdout]   40:     0x564113de0b07 - std::panic::catch_unwind::hbcb4e3f860ef9830
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
[INFO] [stdout]   41:     0x564113de0b07 - std::thread::Builder::spawn_unchecked_::{{closure}}::h93c79a6be1505948
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/thread/mod.rs:528:30
[INFO] [stdout]   42:     0x564113de0b07 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h426d96740c81bdaf
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x564113e47f25 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h12de4fc57affb195
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   44:     0x564113e47f25 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3c619f45059d5cf1
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   45:     0x564113e47f25 - std::sys::unix::thread::Thread::new::thread_start::hbac657605e4b7389
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys/unix/thread.rs:108:17
[INFO] [stdout]   46:     0x7fb876966ac3 - <unknown>
[INFO] [stdout]   47:     0x7fb8769f7bf4 - __clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     dynamic_programming::word_break::tests::word_break_test::case_1
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 43 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.61s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin scripts`
[INFO] running `Command { std: "docker" "inspect" "715b4615e0d8544790f2b65ac543324ea404fddda8626f632f45e13ce7ca8942", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "715b4615e0d8544790f2b65ac543324ea404fddda8626f632f45e13ce7ca8942", kill_on_drop: false }`
[INFO] [stdout] 715b4615e0d8544790f2b65ac543324ea404fddda8626f632f45e13ce7ca8942
[INFO] testing aditya2337/learn-algorithms against beta-2024-02-10 for beta-1.77-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faditya2337%2Flearn-algorithms" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/aditya2337/learn-algorithms on toolchain beta-2024-02-10
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-02-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/aditya2337/learn-algorithms
[INFO] finished tweaking git repo https://github.com/aditya2337/learn-algorithms
[INFO] tweaked toml for git repo https://github.com/aditya2337/learn-algorithms written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/aditya2337/learn-algorithms already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-02-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5bb4987f6421b30e3006980c68a945fe187556e6d3b9b9219cdaa685c1c71456
[INFO] running `Command { std: "docker" "start" "-a" "5bb4987f6421b30e3006980c68a945fe187556e6d3b9b9219cdaa685c1c71456", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5bb4987f6421b30e3006980c68a945fe187556e6d3b9b9219cdaa685c1c71456", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5bb4987f6421b30e3006980c68a945fe187556e6d3b9b9219cdaa685c1c71456", kill_on_drop: false }`
[INFO] [stdout] 5bb4987f6421b30e3006980c68a945fe187556e6d3b9b9219cdaa685c1c71456
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e3db66bd9ec893e8281eae98e71d3427bde4e3207ad17bdece6f718e3b436905
[INFO] running `Command { std: "docker" "start" "-a" "e3db66bd9ec893e8281eae98e71d3427bde4e3207ad17bdece6f718e3b436905", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.59
[INFO] [stderr]    Compiling quote v1.0.28
[INFO] [stderr]    Compiling unicode-ident v1.0.9
[INFO] [stderr]    Compiling futures-core v0.3.28
[INFO] [stderr]    Compiling semver v1.0.17
[INFO] [stderr]    Compiling futures-channel v0.3.28
[INFO] [stderr]    Compiling futures-sink v0.3.28
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling futures-timer v3.0.2
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling rstest_macros v0.17.0
[INFO] [stderr]    Compiling syn v2.0.18
[INFO] [stderr]    Compiling futures-macro v0.3.28
[INFO] [stderr]    Compiling futures-util v0.3.28
[INFO] [stderr]    Compiling futures-executor v0.3.28
[INFO] [stderr]    Compiling futures v0.3.28
[INFO] [stderr]    Compiling rstest v0.17.0
[INFO] [stderr]    Compiling scripts v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/binary_tree/breadth_first_traversal.rs:3:32
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::types::{BinaryTree, Node};
[INFO] [stdout]   |                                ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `mem`, `ops::Index`
[INFO] [stdout]  --> src/linked_lists/linked_lists.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt::Debug, mem, ptr, ops::Index};
[INFO] [stdout]   |                       ^^^       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/path_finding.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 |         if (i >= maze.len()) {
[INFO] [stdout]    |            ^               ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 21 -         if (i >= maze.len()) {
[INFO] [stdout] 21 +         if i >= maze.len() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/path_finding.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 |         if (walk(
[INFO] [stdout]    |            ^
[INFO] [stdout] ...
[INFO] [stdout] 80 |         )) {
[INFO] [stdout]    |          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 73 ~         if walk(
[INFO] [stdout] 74 |             maze,
[INFO] [stdout]  ...
[INFO] [stdout] 79 |             path,
[INFO] [stdout] 80 ~         ) {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/queue.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let mut current_node = self.head.take();
[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 `pre_order_traversal` is never used
[INFO] [stdout]  --> src/binary_tree/binary_tree_pre_order.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn pre_order_traversal<T: std::clone::Clone>(head: &Link<T>) -> Vec<T> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `walk` is never used
[INFO] [stdout]  --> src/binary_tree/binary_tree_pre_order.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn walk<T: Clone>(node: &Link<T>, path: &mut Vec<T>) {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `breadth_first_traversal` is never used
[INFO] [stdout]  --> src/binary_tree/breadth_first_traversal.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn breadth_first_traversal<T: Clone>(tree: &BinaryTree<T>) -> Vec<T> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `push_to_queue` is never used
[INFO] [stdout]   --> src/binary_tree/breadth_first_traversal.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn push_to_queue<T>(value: Option<T>, queue: &mut Queue<T>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_mock_tree` is never used
[INFO] [stdout]  --> src/binary_tree/mock_tree.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn get_mock_tree() -> BinaryTree<i32> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/types.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 9  | / impl<T> BinaryTree<T>
[INFO] [stdout] 10 | | where
[INFO] [stdout] 11 | |     T: Debug,
[INFO] [stdout]    | |_____________- associated function in this implementation
[INFO] [stdout] 12 |   {
[INFO] [stdout] 13 |       pub fn new() -> Self {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/binary_tree/types.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | / impl<T> Node<T>
[INFO] [stdout] 26 | | where
[INFO] [stdout] 27 | |     T: Debug,
[INFO] [stdout]    | |_____________- associated function in this implementation
[INFO] [stdout] 28 |   {
[INFO] [stdout] 29 |       pub fn new(value: T) -> Self {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tree` is never read
[INFO] [stdout]  --> src/binary_tree/BST.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct BinarySearchTree {
[INFO] [stdout]   |        ---------------- field in this struct
[INFO] [stdout] 5 |     tree: BinaryTree<i32>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `BinarySearchTree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `insert`, and `delete` are never used
[INFO] [stdout]   --> src/binary_tree/BST.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout] 8  | impl BinarySearchTree {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 9  |     pub fn new(tree: BinaryTree<i32>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub fn insert(&mut self, item: i32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn delete(mut self, item: i32) -> Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `min_value_node` is never used
[INFO] [stdout]   --> src/binary_tree/BST.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn min_value_node(node: &Node<i32>) -> &Node<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_node` is never used
[INFO] [stdout]   --> src/binary_tree/BST.rs:39:4
[INFO] [stdout]    |
[INFO] [stdout] 39 | fn delete_node(node: Link<i32>, item: i32) -> Link<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `walk_and_insert` is never used
[INFO] [stdout]   --> src/binary_tree/BST.rs:73:4
[INFO] [stdout]    |
[INFO] [stdout] 73 | fn walk_and_insert(node: &mut Node<i32>, item: i32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `val`, `left_child`, `right_child`, and `height` are never read
[INFO] [stdout]   --> src/binary_tree/AVL_tree.rs:7:5
[INFO] [stdout]    |
[INFO] [stdout] 6  | struct AVLNode {
[INFO] [stdout]    |        ------- fields in this struct
[INFO] [stdout] 7  |     val: i32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 8  |     left_child: Link,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 9  |     right_child: Link,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 10 |     height: usize,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AVLNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/binary_tree/AVL_tree.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl AVLNode {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 14 |     pub fn new(val: i32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn height(node: &Link) -> usize {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn get_left_height(&self) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     fn get_right_height(&self) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     fn balance_factor(&self) -> i8 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     fn update_height(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     fn rotate_left(&mut self) -> Link {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     fn rotate_right(&mut self) -> Link {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 73 |     fn balance(&mut self) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 92 |     pub fn insert(&mut self, val: i32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `root` is never read
[INFO] [stdout]    --> src/binary_tree/AVL_tree.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 101 | struct AVLTree {
[INFO] [stdout]     |        ------- field in this struct
[INFO] [stdout] 102 |     root: Link,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AVLTree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `insert` are never used
[INFO] [stdout]    --> src/binary_tree/AVL_tree.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl AVLTree {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 106 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn insert(&mut self, val: i32) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `walk_and_insert` is never used
[INFO] [stdout]    --> src/binary_tree/AVL_tree.rs:121:4
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn walk_and_insert(node: &mut AVLNode, new_node: AVLNode) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `length` and `harr` are never read
[INFO] [stdout]  --> src/heap.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct MinHeap {
[INFO] [stdout]   |            ------- fields in this struct
[INFO] [stdout] 3 |     length: usize,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 4 |     harr: Vec<i32>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `MinHeap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/heap.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout] 7  | impl MinHeap {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 8  |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     fn get_left_child_idx(&self, i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn get_right_child_idx(&self, i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn get_parent_idx(&self, i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn swap_up(&mut self, idx: usize) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     fn swap_down(&mut self, idx: usize) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn insert(&mut self, item: i32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn delete_min(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn delete_element(&mut self, item: i32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `head`, `tail`, and `length` are never read
[INFO] [stdout]  --> src/linked_lists/doubly_linked_list.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct DoublyLinkedList<T> {
[INFO] [stdout]   |        ---------------- fields in this struct
[INFO] [stdout] 7 |     head: Link<T>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 8 |     tail: Link<T>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 9 |     length: usize,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `DoublyLinkedList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `append_front`, `append`, `pop`, and `pop_front` are never used
[INFO] [stdout]   --> src/linked_lists/doubly_linked_list.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<T> DoublyLinkedList<T> {
[INFO] [stdout]    | --------------------------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn append_front(&mut self, val: T) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn append(&mut self, val: T) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn pop(&mut self) -> Option<T> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn pop_front(&mut self) -> Option<T> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `val`, `next`, and `prev` are never read
[INFO] [stdout]   --> src/linked_lists/doubly_linked_list.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 92 | struct Node<T> {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 93 |     val: T,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 94 |     next: Link<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 95 |     prev: Link<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linked_lists/doubly_linked_list.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 97 | impl<T> Node<T> {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 98 |     pub fn new(val: T) -> Rc<RefCell<Self>> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `next` are never read
[INFO] [stdout]  --> src/linked_lists/linked_lists.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Node<T> {
[INFO] [stdout]   |            ---- fields in this struct
[INFO] [stdout] 7 |     value: T,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout] 8 |     next: Link<T>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linked_lists/linked_lists.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<T> Node<T> {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 12 |     pub fn new(value: T) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `head` and `tail` are never read
[INFO] [stdout]   --> src/linked_lists/linked_lists.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct LinkedList<T> {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 19 |     head: Link<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 20 |     tail: *mut Node<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LinkedList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/linked_lists/linked_lists.rs:27:12
[INFO] [stdout]     |
[INFO] [stdout] 23  | / impl<T> LinkedList<T>
[INFO] [stdout] 24  | | where
[INFO] [stdout] 25  | |     T: Debug,
[INFO] [stdout]     | |_____________- associated items in this implementation
[INFO] [stdout] 26  |   {
[INFO] [stdout] 27  |       pub fn new() -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 34  |       pub fn get_length(&self) -> i32 {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51  |       fn check_idx_validity(&self, &idx: &i32) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57  |       pub fn insert_at(&mut self, value: T, idx: i32) -> bool {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79  |       pub fn delete_at(&mut self, idx: i32) -> bool {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |       pub fn append(&mut self, value: T) {
[INFO] [stdout]     |              ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |       fn prepend(&self) {}
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_ll` is never used
[INFO] [stdout]    --> src/linked_lists/linked_lists.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub fn test_ll() {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/linked_lists/merge_linked_list.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl ListNode {
[INFO] [stdout]   | ------------- associated function in this implementation
[INFO] [stdout] 8 |     #[inline]
[INFO] [stdout] 9 |     fn new(val: i32) -> Self {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_two_lists` is never used
[INFO] [stdout]   --> src/linked_lists/merge_linked_list.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn merge_two_lists(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_linked_list` is never used
[INFO] [stdout]   --> src/linked_lists/merge_linked_list.rs:38:4
[INFO] [stdout]    |
[INFO] [stdout] 38 | fn create_linked_list(nums: Vec<i32>) -> Option<Box<ListNode>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/linked_lists/reverse_linked_list.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl ListNode {
[INFO] [stdout]   | ------------- associated function in this implementation
[INFO] [stdout] 8 |     #[inline]
[INFO] [stdout] 9 |     fn new(val: i32) -> Self {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reverse_list` is never used
[INFO] [stdout]   --> src/linked_lists/reverse_linked_list.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn reverse_list(head: Option<Box<ListNode>>) -> Option<Box<ListNode>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_linked_list` is never used
[INFO] [stdout]   --> src/linked_lists/reverse_linked_list.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn create_linked_list(nums: Vec<i32>) -> Option<Box<ListNode>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `matrix_multiply` is never used
[INFO] [stdout]  --> src/matrix_multiply.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn matrix_multiply(a: &Vec<Vec<i32>>, b: &Vec<Vec<i32>>) -> Vec<Vec<i32>> {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/path_finding.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl Point {
[INFO] [stdout]   | ---------- associated function in this implementation
[INFO] [stdout] 8 |     pub fn new(x: isize, y: isize) -> Self {
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Maze` is never used
[INFO] [stdout]   --> src/path_finding.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | type Maze = Vec<String>;
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_path` is never used
[INFO] [stdout]   --> src/path_finding.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn find_path(maze: Maze, wall: char, start: Point, end: Point) -> Vec<Point> {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `walk` is never used
[INFO] [stdout]   --> src/path_finding.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn walk(
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `next` is never read
[INFO] [stdout]  --> src/queue.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Node<T> {
[INFO] [stdout]   |            ---- field in this struct
[INFO] [stdout] 7 |     pub value: T,
[INFO] [stdout] 8 |     next: Link<T>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/queue.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<T> Node<T> {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 12 |     pub fn new(value: T) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `head` and `tail` are never read
[INFO] [stdout]   --> src/queue.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct Queue<T> {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 19 |     pub length: i32,
[INFO] [stdout] 20 |     head: Link<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 21 |     tail: *mut Node<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Queue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `enqueue`, `dequeue`, and `peek` are never used
[INFO] [stdout]   --> src/queue.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl<T> Queue<T> {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 25 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn enqueue(&mut self, item: T) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn dequeue(&mut self) -> Option<T> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     fn peek(&self) -> &Link<T> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search_insert` is never used
[INFO] [stdout]  --> src/search_insert_pos.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn search_insert(nums: Vec<i32>, target: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search_idx` is never used
[INFO] [stdout]  --> src/search_insert_pos.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn search_idx(start_idx: usize, end_idx: usize, target: i32, nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PRICES` is never used
[INFO] [stdout]  --> src/dynamic_programming/rod_cutting.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const PRICES: [u8; 40] = [
[INFO] [stdout]   |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rod_cut_recursively` is never used
[INFO] [stdout]  --> src/dynamic_programming/rod_cutting.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn rod_cut_recursively(idx: usize) -> u8 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rod_cut_top_down` is never used
[INFO] [stdout]   --> src/dynamic_programming/rod_cutting.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn rod_cut_top_down(idx: usize) -> u8 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `memoized_cut_rod_aux` is never used
[INFO] [stdout]   --> src/dynamic_programming/rod_cutting.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn memoized_cut_rod_aux(idx: usize, r: &mut Vec<u8>) -> u8 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rod_cut_bottom_up` is never used
[INFO] [stdout]   --> src/dynamic_programming/rod_cutting.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn rod_cut_bottom_up(idx: usize) -> u8 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array` is never used
[INFO] [stdout]  --> src/dynamic_programming/maximum_subarray.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn max_sub_array(nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array_iterative` is never used
[INFO] [stdout]  --> src/dynamic_programming/maximum_subarray.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn max_sub_array_iterative(nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array_recursive` is never used
[INFO] [stdout]   --> src/dynamic_programming/maximum_subarray.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn max_sub_array_recursive(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array_linear` is never used
[INFO] [stdout]   --> src/dynamic_programming/maximum_subarray.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn max_sub_array_linear(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array_kadane` is never used
[INFO] [stdout]   --> src/dynamic_programming/maximum_subarray.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub fn max_sub_array_kadane(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `length_of_lis` is never used
[INFO] [stdout]  --> src/dynamic_programming/longest_increasing_subsequence.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn length_of_lis(nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `climb_stairs` is never used
[INFO] [stdout]  --> src/dynamic_programming/climbing_stairs.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn climb_stairs(n: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `coin_change` is never used
[INFO] [stdout]  --> src/dynamic_programming/coin_change.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn coin_change(coins: Vec<i32>, amount: i32) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal_min_coins` is never used
[INFO] [stdout]   --> src/dynamic_programming/coin_change.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn cal_min_coins(coins: &Vec<i32>, amount: i32, dp: &mut Vec<i32>) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal_min_coins_bottom_up` is never used
[INFO] [stdout]   --> src/dynamic_programming/coin_change.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn cal_min_coins_bottom_up(coins: &Vec<i32>, amount: i32) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `word_break` is never used
[INFO] [stdout]  --> src/dynamic_programming/word_break.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn word_break(s: String, word_dict: Vec<String>) -> bool {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rob` is never used
[INFO] [stdout]  --> src/dynamic_programming/house_robber.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn rob(nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `heap` and `size` are never read
[INFO] [stdout]  --> src/sorting/heap_sort.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct Heap {
[INFO] [stdout]   |        ---- fields in this struct
[INFO] [stdout] 3 |     heap: Vec<i32>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 4 |     size: usize,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Heap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `heapify`, `sort`, `delete`, `left_idx`, and `right_idx` are never used
[INFO] [stdout]   --> src/sorting/heap_sort.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout] 7  | impl Heap {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 8  |     pub fn new(arr: Vec<i32>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn heapify(&mut self, idx: usize) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn sort(&mut self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     fn delete(&mut self) -> i32 {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     fn left_idx(&self, i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     fn right_idx(&self, i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `srt` is never used
[INFO] [stdout]  --> src/sorting/bubble_sort.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn srt<'a>(unsorted_list: &'a mut Vec<i32>) -> &'a Vec<i32> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `swap` is never used
[INFO] [stdout]   --> src/sorting/bubble_sort.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn swap(previous_idx: usize, next_idx: usize, list: &mut Vec<i32>) -> &Vec<i32> {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sort` is never used
[INFO] [stdout]  --> src/sorting/counting_sort.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn sort(a: Vec<usize>) -> Vec<usize> {
[INFO] [stdout]   |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sort` is never used
[INFO] [stdout]  --> src/sorting/insertion_sort.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn sort(arr: &mut Vec<i32>) {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sort` is never used
[INFO] [stdout]  --> src/sorting/merge_sort.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn sort(arr: &mut Vec<i32>, p: usize, r: usize) {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge` is never used
[INFO] [stdout]   --> src/sorting/merge_sort.rs:14:4
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn merge(arr: &mut Vec<i32>, p: usize, q: usize, r: usize) {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new_sort` is never used
[INFO] [stdout]  --> src/sorting/quick_sort.rs:1:4
[INFO] [stdout]   |
[INFO] [stdout] 1 | fn new_sort(list: &mut Vec<i32>, lo: usize, hi: usize) {
[INFO] [stdout]   |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `partition` is never used
[INFO] [stdout]   --> src/sorting/quick_sort.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn partition(list: &mut Vec<i32>, lo: usize, hi: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `WeightedAdjacencyMatrix` is never used
[INFO] [stdout]  --> src/graphs/bfs.rs:3:6
[INFO] [stdout]   |
[INFO] [stdout] 3 | type WeightedAdjacencyMatrix = Vec<Vec<i32>>;
[INFO] [stdout]   |      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bfs` is never used
[INFO] [stdout]  --> src/graphs/bfs.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn bfs(graph: WeightedAdjacencyMatrix, source: i32, needle: i32) -> Option<Vec<i32>> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `BST` should have a snake case name
[INFO] [stdout]  --> src/binary_tree/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub mod BST;
[INFO] [stdout]   |         ^^^ help: convert the identifier to snake case: `bst`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `AVL_tree` should have a snake case name
[INFO] [stdout]  --> src/binary_tree/mod.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub mod AVL_tree;
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `avl_tree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 81 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 5.71s
[INFO] running `Command { std: "docker" "inspect" "e3db66bd9ec893e8281eae98e71d3427bde4e3207ad17bdece6f718e3b436905", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e3db66bd9ec893e8281eae98e71d3427bde4e3207ad17bdece6f718e3b436905", kill_on_drop: false }`
[INFO] [stdout] e3db66bd9ec893e8281eae98e71d3427bde4e3207ad17bdece6f718e3b436905
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f3e91f7e7b9b219fff4206dd37283d8fa1c98a21d3bab4c73fe803cbea4376a4
[INFO] running `Command { std: "docker" "start" "-a" "f3e91f7e7b9b219fff4206dd37283d8fa1c98a21d3bab4c73fe803cbea4376a4", kill_on_drop: false }`
[INFO] [stderr]    Compiling scripts v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/binary_tree/breadth_first_traversal.rs:3:32
[INFO] [stdout]   |
[INFO] [stdout] 3 | use super::types::{BinaryTree, Node};
[INFO] [stdout]   |                                ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `mem`, `ops::Index`
[INFO] [stdout]  --> src/linked_lists/linked_lists.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt::Debug, mem, ptr, ops::Index};
[INFO] [stdout]   |                       ^^^       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/path_finding.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 |         if (i >= maze.len()) {
[INFO] [stdout]    |            ^               ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 21 -         if (i >= maze.len()) {
[INFO] [stdout] 21 +         if i >= maze.len() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/path_finding.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 |         if (walk(
[INFO] [stdout]    |            ^
[INFO] [stdout] ...
[INFO] [stdout] 80 |         )) {
[INFO] [stdout]    |          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 73 ~         if walk(
[INFO] [stdout] 74 |             maze,
[INFO] [stdout]  ...
[INFO] [stdout] 79 |             path,
[INFO] [stdout] 80 ~         ) {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/queue.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let mut current_node = self.head.take();
[INFO] [stdout]    |             ----^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nums`
[INFO] [stdout]   --> src/search_insert_pos.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let nums = vec![1, 3, 5, 6];
[INFO] [stdout]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_nums`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `length` is never read
[INFO] [stdout]  --> src/heap.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct MinHeap {
[INFO] [stdout]   |            ------- field in this struct
[INFO] [stdout] 3 |     length: usize,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `MinHeap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_right_child_idx` is never used
[INFO] [stdout]   --> src/heap.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 7  | impl MinHeap {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn get_right_child_idx(&self, i: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `head`, `tail`, and `length` are never read
[INFO] [stdout]  --> src/linked_lists/doubly_linked_list.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct DoublyLinkedList<T> {
[INFO] [stdout]   |        ---------------- fields in this struct
[INFO] [stdout] 7 |     head: Link<T>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 8 |     tail: Link<T>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 9 |     length: usize,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `DoublyLinkedList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `append_front`, `append`, `pop`, and `pop_front` are never used
[INFO] [stdout]   --> src/linked_lists/doubly_linked_list.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<T> DoublyLinkedList<T> {
[INFO] [stdout]    | --------------------------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn append_front(&mut self, val: T) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn append(&mut self, val: T) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn pop(&mut self) -> Option<T> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn pop_front(&mut self) -> Option<T> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `val`, `next`, and `prev` are never read
[INFO] [stdout]   --> src/linked_lists/doubly_linked_list.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 92 | struct Node<T> {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 93 |     val: T,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 94 |     next: Link<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 95 |     prev: Link<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linked_lists/doubly_linked_list.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 97 | impl<T> Node<T> {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 98 |     pub fn new(val: T) -> Rc<RefCell<Self>> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `value` and `next` are never read
[INFO] [stdout]  --> src/linked_lists/linked_lists.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Node<T> {
[INFO] [stdout]   |            ---- fields in this struct
[INFO] [stdout] 7 |     value: T,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout] 8 |     next: Link<T>,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/linked_lists/linked_lists.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl<T> Node<T> {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 12 |     pub fn new(value: T) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `head` and `tail` are never read
[INFO] [stdout]   --> src/linked_lists/linked_lists.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct LinkedList<T> {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 19 |     head: Link<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 20 |     tail: *mut Node<T>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LinkedList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/linked_lists/linked_lists.rs:27:12
[INFO] [stdout]     |
[INFO] [stdout] 23  | / impl<T> LinkedList<T>
[INFO] [stdout] 24  | | where
[INFO] [stdout] 25  | |     T: Debug,
[INFO] [stdout]     | |_____________- associated items in this implementation
[INFO] [stdout] 26  |   {
[INFO] [stdout] 27  |       pub fn new() -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 34  |       pub fn get_length(&self) -> i32 {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51  |       fn check_idx_validity(&self, &idx: &i32) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57  |       pub fn insert_at(&mut self, value: T, idx: i32) -> bool {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79  |       pub fn delete_at(&mut self, idx: i32) -> bool {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |       pub fn append(&mut self, value: T) {
[INFO] [stdout]     |              ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |       fn prepend(&self) {}
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_ll` is never used
[INFO] [stdout]    --> src/linked_lists/linked_lists.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub fn test_ll() {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/linked_lists/reverse_linked_list.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl ListNode {
[INFO] [stdout]   | ------------- associated function in this implementation
[INFO] [stdout] 8 |     #[inline]
[INFO] [stdout] 9 |     fn new(val: i32) -> Self {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array_iterative` is never used
[INFO] [stdout]  --> src/dynamic_programming/maximum_subarray.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn max_sub_array_iterative(nums: Vec<i32>) -> i32 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array_recursive` is never used
[INFO] [stdout]   --> src/dynamic_programming/maximum_subarray.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn max_sub_array_recursive(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `max_sub_array_linear` is never used
[INFO] [stdout]   --> src/dynamic_programming/maximum_subarray.rs:43:8
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub fn max_sub_array_linear(nums: Vec<i32>) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cal_min_coins` is never used
[INFO] [stdout]   --> src/dynamic_programming/coin_change.rs:12:4
[INFO] [stdout]    |
[INFO] [stdout] 12 | fn cal_min_coins(coins: &Vec<i32>, amount: i32, dp: &mut Vec<i32>) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `srt` is never used
[INFO] [stdout]  --> src/sorting/bubble_sort.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn srt<'a>(unsorted_list: &'a mut Vec<i32>) -> &'a Vec<i32> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `swap` is never used
[INFO] [stdout]   --> src/sorting/bubble_sort.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn swap(previous_idx: usize, next_idx: usize, list: &mut Vec<i32>) -> &Vec<i32> {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `WeightedAdjacencyMatrix` is never used
[INFO] [stdout]  --> src/graphs/bfs.rs:3:6
[INFO] [stdout]   |
[INFO] [stdout] 3 | type WeightedAdjacencyMatrix = Vec<Vec<i32>>;
[INFO] [stdout]   |      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bfs` is never used
[INFO] [stdout]  --> src/graphs/bfs.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn bfs(graph: WeightedAdjacencyMatrix, source: i32, needle: i32) -> Option<Vec<i32>> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `BST` should have a snake case name
[INFO] [stdout]  --> src/binary_tree/mod.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub mod BST;
[INFO] [stdout]   |         ^^^ help: convert the identifier to snake case: `bst`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `AVL_tree` should have a snake case name
[INFO] [stdout]  --> src/binary_tree/mod.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub mod AVL_tree;
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `avl_tree`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 28 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.56s
[INFO] running `Command { std: "docker" "inspect" "f3e91f7e7b9b219fff4206dd37283d8fa1c98a21d3bab4c73fe803cbea4376a4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f3e91f7e7b9b219fff4206dd37283d8fa1c98a21d3bab4c73fe803cbea4376a4", kill_on_drop: false }`
[INFO] [stdout] f3e91f7e7b9b219fff4206dd37283d8fa1c98a21d3bab4c73fe803cbea4376a4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 6a062aec950e2f8968d29a6cda44c4d9898cb14d5b959e9c0189ec8fcf4e126e
[INFO] running `Command { std: "docker" "start" "-a" "6a062aec950e2f8968d29a6cda44c4d9898cb14d5b959e9c0189ec8fcf4e126e", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `Node`
[INFO] [stderr]  --> src/binary_tree/breadth_first_traversal.rs:3:32
[INFO] [stderr]   |
[INFO] [stderr] 3 | use super::types::{BinaryTree, Node};
[INFO] [stderr]   |                                ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `mem`, `ops::Index`
[INFO] [stderr]  --> src/linked_lists/linked_lists.rs:1:23
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{fmt::Debug, mem, ptr, ops::Index};
[INFO] [stderr]   |                       ^^^       ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/path_finding.rs:21:12
[INFO] [stderr]    |
[INFO] [stderr] 21 |         if (i >= maze.len()) {
[INFO] [stderr]    |            ^               ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 21 -         if (i >= maze.len()) {
[INFO] [stderr] 21 +         if i >= maze.len() {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/path_finding.rs:73:12
[INFO] [stderr]    |
[INFO] [stderr] 73 |         if (walk(
[INFO] [stderr]    |            ^
[INFO] [stderr] ...
[INFO] [stderr] 80 |         )) {
[INFO] [stderr]    |          ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 73 ~         if walk(
[INFO] [stderr] 74 |             maze,
[INFO] [stderr]  ...
[INFO] [stderr] 79 |             path,
[INFO] [stderr] 80 ~         ) {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/queue.rs:54:13
[INFO] [stderr]    |
[INFO] [stderr] 54 |         let mut current_node = self.head.take();
[INFO] [stderr]    |             ----^^^^^^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `nums`
[INFO] [stderr]   --> src/search_insert_pos.rs:47:13
[INFO] [stderr]    |
[INFO] [stderr] 47 |         let nums = vec![1, 3, 5, 6];
[INFO] [stderr]    |             ^^^^ help: if this is intentional, prefix it with an underscore: `_nums`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `length` is never read
[INFO] [stderr]  --> src/heap.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | pub struct MinHeap {
[INFO] [stderr]   |            ------- field in this struct
[INFO] [stderr] 3 |     length: usize,
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `MinHeap` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_right_child_idx` is never used
[INFO] [stderr]   --> src/heap.rs:19:8
[INFO] [stderr]    |
[INFO] [stderr] 7  | impl MinHeap {
[INFO] [stderr]    | ------------ method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 19 |     fn get_right_child_idx(&self, i: usize) -> usize {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `head`, `tail`, and `length` are never read
[INFO] [stderr]  --> src/linked_lists/doubly_linked_list.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | struct DoublyLinkedList<T> {
[INFO] [stderr]   |        ---------------- fields in this struct
[INFO] [stderr] 7 |     head: Link<T>,
[INFO] [stderr]   |     ^^^^
[INFO] [stderr] 8 |     tail: Link<T>,
[INFO] [stderr]   |     ^^^^
[INFO] [stderr] 9 |     length: usize,
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `DoublyLinkedList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `append_front`, `append`, `pop`, and `pop_front` are never used
[INFO] [stderr]   --> src/linked_lists/doubly_linked_list.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl<T> DoublyLinkedList<T> {
[INFO] [stderr]    | --------------------------- associated items in this implementation
[INFO] [stderr] 12 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 20 |     pub fn append_front(&mut self, val: T) {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 36 |     pub fn append(&mut self, val: T) {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 53 |     pub fn pop(&mut self) -> Option<T> {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 70 |     pub fn pop_front(&mut self) -> Option<T> {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `val`, `next`, and `prev` are never read
[INFO] [stderr]   --> src/linked_lists/doubly_linked_list.rs:93:5
[INFO] [stderr]    |
[INFO] [stderr] 92 | struct Node<T> {
[INFO] [stderr]    |        ---- fields in this struct
[INFO] [stderr] 93 |     val: T,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 94 |     next: Link<T>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 95 |     prev: Link<T>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/linked_lists/doubly_linked_list.rs:98:12
[INFO] [stderr]    |
[INFO] [stderr] 97 | impl<T> Node<T> {
[INFO] [stderr]    | --------------- associated function in this implementation
[INFO] [stderr] 98 |     pub fn new(val: T) -> Rc<RefCell<Self>> {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `value` and `next` are never read
[INFO] [stderr]  --> src/linked_lists/linked_lists.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub struct Node<T> {
[INFO] [stderr]   |            ---- fields in this struct
[INFO] [stderr] 7 |     value: T,
[INFO] [stderr]   |     ^^^^^
[INFO] [stderr] 8 |     next: Link<T>,
[INFO] [stderr]   |     ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `Node` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/linked_lists/linked_lists.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl<T> Node<T> {
[INFO] [stderr]    | --------------- associated function in this implementation
[INFO] [stderr] 12 |     pub fn new(value: T) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `head` and `tail` are never read
[INFO] [stderr]   --> src/linked_lists/linked_lists.rs:19:5
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub struct LinkedList<T> {
[INFO] [stderr]    |            ---------- fields in this struct
[INFO] [stderr] 19 |     head: Link<T>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 20 |     tail: *mut Node<T>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `LinkedList` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/linked_lists/linked_lists.rs:27:12
[INFO] [stderr]     |
[INFO] [stderr] 23  | / impl<T> LinkedList<T>
[INFO] [stderr] 24  | | where
[INFO] [stderr] 25  | |     T: Debug,
[INFO] [stderr]     | |_____________- associated items in this implementation
[INFO] [stderr] 26  |   {
[INFO] [stderr] 27  |       pub fn new() -> Self {
[INFO] [stderr]     |              ^^^
[INFO] [stderr] ...
[INFO] [stderr] 34  |       pub fn get_length(&self) -> i32 {
[INFO] [stderr]     |              ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 51  |       fn check_idx_validity(&self, &idx: &i32) {
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 57  |       pub fn insert_at(&mut self, value: T, idx: i32) -> bool {
[INFO] [stderr]     |              ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 79  |       pub fn delete_at(&mut self, idx: i32) -> bool {
[INFO] [stderr]     |              ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 106 |       pub fn append(&mut self, value: T) {
[INFO] [stderr]     |              ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 120 |       fn prepend(&self) {}
[INFO] [stderr]     |          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test_ll` is never used
[INFO] [stderr]    --> src/linked_lists/linked_lists.rs:123:8
[INFO] [stderr]     |
[INFO] [stderr] 123 | pub fn test_ll() {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]  --> src/linked_lists/reverse_linked_list.rs:9:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | impl ListNode {
[INFO] [stderr]   | ------------- associated function in this implementation
[INFO] [stderr] 8 |     #[inline]
[INFO] [stderr] 9 |     fn new(val: i32) -> Self {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `max_sub_array_iterative` is never used
[INFO] [stderr]  --> src/dynamic_programming/maximum_subarray.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub fn max_sub_array_iterative(nums: Vec<i32>) -> i32 {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `max_sub_array_recursive` is never used
[INFO] [stderr]   --> src/dynamic_programming/maximum_subarray.rs:25:8
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub fn max_sub_array_recursive(nums: Vec<i32>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `max_sub_array_linear` is never used
[INFO] [stderr]   --> src/dynamic_programming/maximum_subarray.rs:43:8
[INFO] [stderr]    |
[INFO] [stderr] 43 | pub fn max_sub_array_linear(nums: Vec<i32>) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `cal_min_coins` is never used
[INFO] [stderr]   --> src/dynamic_programming/coin_change.rs:12:4
[INFO] [stderr]    |
[INFO] [stderr] 12 | fn cal_min_coins(coins: &Vec<i32>, amount: i32, dp: &mut Vec<i32>) -> i32 {
[INFO] [stderr]    |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `srt` is never used
[INFO] [stderr]  --> src/sorting/bubble_sort.rs:1:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub fn srt<'a>(unsorted_list: &'a mut Vec<i32>) -> &'a Vec<i32> {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `swap` is never used
[INFO] [stderr]   --> src/sorting/bubble_sort.rs:29:4
[INFO] [stderr]    |
[INFO] [stderr] 29 | fn swap(previous_idx: usize, next_idx: usize, list: &mut Vec<i32>) -> &Vec<i32> {
[INFO] [stderr]    |    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `WeightedAdjacencyMatrix` is never used
[INFO] [stderr]  --> src/graphs/bfs.rs:3:6
[INFO] [stderr]   |
[INFO] [stderr] 3 | type WeightedAdjacencyMatrix = Vec<Vec<i32>>;
[INFO] [stderr]   |      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `bfs` is never used
[INFO] [stderr]  --> src/graphs/bfs.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn bfs(graph: WeightedAdjacencyMatrix, source: i32, needle: i32) -> Option<Vec<i32>> {
[INFO] [stderr]   |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: module `BST` should have a snake case name
[INFO] [stderr]  --> src/binary_tree/mod.rs:5:9
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub mod BST;
[INFO] [stderr]   |         ^^^ help: convert the identifier to snake case: `bst`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: module `AVL_tree` should have a snake case name
[INFO] [stderr]  --> src/binary_tree/mod.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub mod AVL_tree;
[INFO] [stderr]   |         ^^^^^^^^ help: convert the identifier to snake case: `avl_tree`
[INFO] [stderr] 
[INFO] [stderr] warning: `scripts` (bin "scripts" test) generated 28 warnings (run `cargo fix --bin "scripts" --tests` to apply 6 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/scripts-c3b83b1f185ae131)
[INFO] [stdout] 
[INFO] [stdout] running 44 tests
[INFO] [stdout] test binary_tree::AVL_tree::tests::test_avl ... ok
[INFO] [stdout] test binary_tree::BST::tests::bst ... ok
[INFO] [stdout] test binary_tree::binary_tree_pre_order::tests::test_pre_order ... ok
[INFO] [stdout] test binary_tree::breadth_first_traversal::tests::breadth_first ... ok
[INFO] [stdout] test dynamic_programming::climbing_stairs::tests::climb_stairs_test_1::case_1 ... ok
[INFO] [stdout] test dynamic_programming::climbing_stairs::tests::climb_stairs_test_1::case_2 ... ok
[INFO] [stdout] test dynamic_programming::climbing_stairs::tests::climb_stairs_test_1::case_3 ... ok
[INFO] [stdout] test dynamic_programming::climbing_stairs::tests::climb_stairs_test_1::case_4 ... ok
[INFO] [stdout] test dynamic_programming::climbing_stairs::tests::climb_stairs_test_1::case_5 ... ok
[INFO] [stdout] test dynamic_programming::coin_change::tests::coin_change_test::case_1 ... ok
[INFO] [stdout] test dynamic_programming::coin_change::tests::coin_change_test::case_2 ... ok
[INFO] [stdout] test dynamic_programming::coin_change::tests::coin_change_test::case_3 ... ok
[INFO] [stdout] test dynamic_programming::coin_change::tests::coin_change_test::case_4 ... ok
[INFO] [stdout] test dynamic_programming::coin_change::tests::coin_change_test::case_5 ... ok
[INFO] [stdout] test dynamic_programming::house_robber::tests::rob_test::case_1 ... ok
[INFO] [stdout] test dynamic_programming::house_robber::tests::rob_test::case_2 ... ok
[INFO] [stdout] test dynamic_programming::house_robber::tests::rob_test::case_3 ... ok
[INFO] [stdout] test dynamic_programming::house_robber::tests::rob_test::case_4 ... ok
[INFO] [stdout] test dynamic_programming::longest_increasing_subsequence::tests::length_of_lis_test_2 ... ok
[INFO] [stdout] test dynamic_programming::longest_increasing_subsequence::tests::length_of_lis_test_3 ... ok
[INFO] [stdout] test dynamic_programming::longest_increasing_subsequence::tests::length_of_lis_test_4 ... ok
[INFO] [stdout] test dynamic_programming::maximum_subarray::tests::max_sub_array_test_1 ... ok
[INFO] [stdout] test dynamic_programming::longest_increasing_subsequence::tests::length_of_lis_test_1 ... ok
[INFO] [stdout] test dynamic_programming::maximum_subarray::tests::max_sub_array_test_2 ... ok
[INFO] [stdout] test dynamic_programming::maximum_subarray::tests::max_sub_array_test_3 ... ok
[INFO] [stdout] test dynamic_programming::maximum_subarray::tests::max_sub_array_test_4 ... ok
[INFO] [stdout] test heap::tests::test_heap ... ok
[INFO] [stdout] test matrix_multiply::tests::test_matrix_multiply ... ok
[INFO] [stdout] test linked_lists::merge_linked_list::tests::test_merge ... ok
[INFO] [stdout] test linked_lists::reverse_linked_list::tests::test_merge ... ok
[INFO] [stdout] test matrix_multiply::tests::test_matrix_multiply_empty ... ok
[INFO] [stdout] test queue::tests::test_queue ... ok
[INFO] [stdout] test search_insert_pos::tests::test_search ... ok
[INFO] [stdout] test sorting::counting_sort::tests::test_count_sort ... ok
[INFO] [stdout] test sorting::heap_sort::tests::test_heap ... ok
[INFO] [stdout] test sorting::merge_sort::tests::test_merge ... ok
[INFO] [stdout] test sorting::merge_sort::tests::test_merge_sort ... ok
[INFO] [stdout] test sorting::quick_sort::tests::test_quick_sort ... ok
[INFO] [stdout] test sorting::insertion_sort::tests::test_insertion_sort ... ok
[INFO] [stdout] test path_finding::tests::test_path_finder ... ok
[INFO] [stdout] test dynamic_programming::coin_change::tests::coin_change_test::case_6 ... ok
[INFO] [stdout] test dynamic_programming::word_break::tests::word_break_test::case_1 ... FAILED
[INFO] [stdout] test matrix_multiply::tests::test_matrix_multiply_wrong_size - should panic ... ok
[INFO] [stdout] test dynamic_programming::rod_cutting::tests::test_rod_cut ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- dynamic_programming::word_break::tests::word_break_test::case_1 stdout ----
[INFO] [stdout] thread 'dynamic_programming::word_break::tests::word_break_test::case_1' panicked at src/dynamic_programming/word_break.rs:36:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: false
[INFO] [stdout]  right: true
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x562e2675bce6 - std::backtrace_rs::backtrace::libunwind::trace::h140b6deb6a45c671
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
[INFO] [stdout]    1:     0x562e2675bce6 - std::backtrace_rs::backtrace::trace_unsynchronized::h8450d7e4e9219aed
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x562e2675bce6 - std::sys_common::backtrace::_print_fmt::hbd28e5e6c6fc3a3f
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x562e2675bce6 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hb058f285768cf98e
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x562e26784960 - core::fmt::rt::Argument::fmt::h87dec7a95127da24
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/fmt/rt.rs:142:9
[INFO] [stdout]    5:     0x562e26784960 - core::fmt::write::h873f89a91a4832db
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/fmt/mod.rs:1120:17
[INFO] [stdout]    6:     0x562e2675953f - std::io::Write::write_fmt::h90f651e9e694a4bb
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/io/mod.rs:1846:15
[INFO] [stdout]    7:     0x562e2675bac4 - std::sys_common::backtrace::_print::h7719d1529d9a9e13
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x562e2675bac4 - std::sys_common::backtrace::print::haa3afbd0e7947108
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x562e2675d837 - std::panicking::default_hook::{{closure}}::h10e3de2ec0eaff22
[INFO] [stdout]   10:     0x562e2675d51d - std::panicking::default_hook::hbdc1b1b7fe073dab
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:289:9
[INFO] [stdout]   11:     0x562e2672b5e7 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h20f7887d7cd0a330
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   12:     0x562e2672b5e7 - test::test_main::{{closure}}::hc125a615957b5cb1
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:138:21
[INFO] [stdout]   13:     0x562e2675de56 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h8c19e0590f8443c4
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   14:     0x562e2675de56 - std::panicking::rust_panic_with_hook::hb81692602460473d
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:785:13
[INFO] [stdout]   15:     0x562e2675dba2 - std::panicking::begin_panic_handler::{{closure}}::h2470593aa2678e9c
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:659:13
[INFO] [stdout]   16:     0x562e2675c1e6 - std::sys_common::backtrace::__rust_end_short_backtrace::h560bb50225b0562b
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x562e2675d8f4 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:647:5
[INFO] [stdout]   18:     0x562e266d6775 - core::panicking::panic_fmt::h29b6f262f6458dc3
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/panicking.rs:72:14
[INFO] [stdout]   19:     0x562e266d6bab - core::panicking::assert_failed_inner::h2c4dd574e44796db
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/panicking.rs:342:17
[INFO] [stdout]   20:     0x562e266de31e - core::panicking::assert_failed::h50924e587c555017
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/panicking.rs:297:5
[INFO] [stdout]   21:     0x562e266e375f - scripts::dynamic_programming::word_break::tests::word_break_test::hde9234a77935aa50
[INFO] [stdout]                                at /opt/rustwide/workdir/src/dynamic_programming/word_break.rs:36:9
[INFO] [stdout]   22:     0x562e266db86a - scripts::dynamic_programming::word_break::tests::word_break_test::case_1::h040c50261f45dbfc
[INFO] [stdout]                                at /opt/rustwide/workdir/src/dynamic_programming/word_break.rs:29:5
[INFO] [stdout]   23:     0x562e266db6a7 - scripts::dynamic_programming::word_break::tests::word_break_test::case_1::{{closure}}::h1df6285cf583e28c
[INFO] [stdout]                                at /opt/rustwide/workdir/src/dynamic_programming/word_break.rs:29:14
[INFO] [stdout]   24:     0x562e266dcd26 - core::ops::function::FnOnce::call_once::hcd7a2bd114ea7900
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x562e267311df - core::ops::function::FnOnce::call_once::h692fe6f34484199f
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x562e267311df - test::__rust_begin_short_backtrace::h48b62e76bd60e2de
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:621:18
[INFO] [stdout]   27:     0x562e26730001 - test::run_test_in_process::{{closure}}::h1c68597526ef43db
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:644:60
[INFO] [stdout]   28:     0x562e26730001 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hcae98092997f976b
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   29:     0x562e26730001 - std::panicking::try::do_call::h8d1548c2f5bb535a
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:554:40
[INFO] [stdout]   30:     0x562e26730001 - std::panicking::try::hbb7a2054f484688e
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:518:19
[INFO] [stdout]   31:     0x562e26730001 - std::panic::catch_unwind::h696d12d9d80497c2
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panic.rs:142:14
[INFO] [stdout]   32:     0x562e26730001 - test::run_test_in_process::h053367a7217c825b
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:644:27
[INFO] [stdout]   33:     0x562e26730001 - test::run_test::{{closure}}::hfa524e9fabcba78e
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:567:43
[INFO] [stdout]   34:     0x562e266f7466 - test::run_test::{{closure}}::h2c4d0bb741ef7f9f
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:595:41
[INFO] [stdout]   35:     0x562e266f7466 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0d2c708415550075
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   36:     0x562e266fc427 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h76e2635840d7293f
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/thread/mod.rs:529:17
[INFO] [stdout]   37:     0x562e266fc427 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::haa640b67a810a214
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   38:     0x562e266fc427 - std::panicking::try::do_call::h41892e3bc2807ab5
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:554:40
[INFO] [stdout]   39:     0x562e266fc427 - std::panicking::try::h861a16d180681c80
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:518:19
[INFO] [stdout]   40:     0x562e266fc427 - std::panic::catch_unwind::h8195f9064b1509fa
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panic.rs:142:14
[INFO] [stdout]   41:     0x562e266fc427 - std::thread::Builder::spawn_unchecked_::{{closure}}::h73cc419da1217371
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/thread/mod.rs:528:30
[INFO] [stdout]   42:     0x562e266fc427 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h79dc6499ff073b09
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x562e267621f5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::ha718e8cdc51a5182
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   44:     0x562e267621f5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h86072abc877c5474
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   45:     0x562e267621f5 - std::sys::pal::unix::thread::Thread::new::thread_start::hac4056197c365894
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys/pal/unix/thread.rs:108:17
[INFO] [stdout]   46:     0x7f8e2f8b7ac3 - <unknown>
[INFO] [stdout]   47:     0x7f8e2f948bf4 - __clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     dynamic_programming::word_break::tests::word_break_test::case_1
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 43 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.63s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin scripts`
[INFO] running `Command { std: "docker" "inspect" "6a062aec950e2f8968d29a6cda44c4d9898cb14d5b959e9c0189ec8fcf4e126e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6a062aec950e2f8968d29a6cda44c4d9898cb14d5b959e9c0189ec8fcf4e126e", kill_on_drop: false }`
[INFO] [stdout] 6a062aec950e2f8968d29a6cda44c4d9898cb14d5b959e9c0189ec8fcf4e126e
