[INFO] cloning repository https://github.com/Aidan-Jared/rust_algo_practice
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Aidan-Jared/rust_algo_practice" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAidan-Jared%2Frust_algo_practice", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAidan-Jared%2Frust_algo_practice'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d420170d932f67b408c5fe246732e6c2d05f38d4
[INFO] testing Aidan-Jared/rust_algo_practice against master#733b47ea4b1b86216f14ef56e49440c33933f230+rustflags=-Copt-level=3 for pr-138759
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAidan-Jared%2Frust_algo_practice" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Aidan-Jared/rust_algo_practice
[INFO] finished tweaking git repo https://github.com/Aidan-Jared/rust_algo_practice
[INFO] tweaked toml for git repo https://github.com/Aidan-Jared/rust_algo_practice written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Aidan-Jared/rust_algo_practice on toolchain 733b47ea4b1b86216f14ef56e49440c33933f230
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Aidan-Jared/rust_algo_practice 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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c780857d0e2872c82f42997c1712897d9c788a0eabdc18c200254e1e831e4216
[INFO] running `Command { std: "docker" "start" "-a" "c780857d0e2872c82f42997c1712897d9c788a0eabdc18c200254e1e831e4216", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c780857d0e2872c82f42997c1712897d9c788a0eabdc18c200254e1e831e4216", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c780857d0e2872c82f42997c1712897d9c788a0eabdc18c200254e1e831e4216", kill_on_drop: false }`
[INFO] [stdout] c780857d0e2872c82f42997c1712897d9c788a0eabdc18c200254e1e831e4216
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 03b95dfbeed8e67e919cb6a1417b756e47ad7062d7bd3a544b144ea33f204a33
[INFO] running `Command { std: "docker" "start" "-a" "03b95dfbeed8e67e919cb6a1417b756e47ad7062d7bd3a544b144ea33f204a33", kill_on_drop: false }`
[INFO] [stderr]    Compiling algorithims v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `DerefMut`, `Deref`, `self`, and `swap`
[INFO] [stdout]  --> src/binary_search.rs:1:39
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{cmp::{max, Ordering}, mem::{self, swap}, ops::{Deref, DerefMut}};
[INFO] [stdout]   |                                       ^^^^  ^^^^         ^^^^^  ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/DP.rs:333:33
[INFO] [stdout]     |
[INFO] [stdout] 333 |     let mut memo = vec![vec![-1;(1<<n)];n];
[INFO] [stdout]     |                                 ^    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 333 -     let mut memo = vec![vec![-1;(1<<n)];n];
[INFO] [stdout] 333 +     let mut memo = vec![vec![-1;1<<n];n];
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/divide_and_conquer.rs:121:5
[INFO] [stdout]     |
[INFO] [stdout] 112 | /     match target.cmp(&arr[0]) {
[INFO] [stdout] 113 | |         Ordering::Equal => {return Some(pivot);}
[INFO] [stdout] 114 | |         Ordering::Greater => {
[INFO] [stdout] 115 | |             return _bs(arr, &target, 0, pivot - 1);
[INFO] [stdout] ...   |
[INFO] [stdout] 119 | |         },
[INFO] [stdout] 120 | |     }
[INFO] [stdout]     | |_____- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout] 121 |       None
[INFO] [stdout]     |       ^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `res` is never read
[INFO] [stdout]   --> src/graphs.rs:88:17
[INFO] [stdout]    |
[INFO] [stdout] 88 |         let mut res: bool = false;
[INFO] [stdout]    |                 ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `res` is never read
[INFO] [stdout]    --> src/binary_search.rs:296:41
[INFO] [stdout]     |
[INFO] [stdout] 296 | ...                   let mut res = true;
[INFO] [stdout]     |                               ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `res` is never read
[INFO] [stdout]    --> src/binary_search.rs:308:41
[INFO] [stdout]     |
[INFO] [stdout] 308 | ...                   let mut res = true;
[INFO] [stdout]     |                               ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/greedy.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut node = HuffmanNode{ ch: None, freq: a.freq + b.freq, left: Some(Box::new(a)), right: Some(Box::new(b))};
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/greedy.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let mut s = "0".to_string();
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/divide_and_conquer.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 210 |     let k = start;
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i_mirror` is never read
[INFO] [stdout]    --> src/DP.rs:211:13
[INFO] [stdout]     |
[INFO] [stdout] 211 |     let mut i_mirror = 0;
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `diff`
[INFO] [stdout]    --> src/DP.rs:214:13
[INFO] [stdout]     |
[INFO] [stdout] 214 |     let mut diff = -1;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_diff`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/DP.rs:214:9
[INFO] [stdout]     |
[INFO] [stdout] 214 |     let mut diff = -1;
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/flow_network.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |         let mut adj_list = HashMap::new();
[INFO] [stdout]    |             ----^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source`
[INFO] [stdout]   --> src/flow_network.rs:95:21
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn dinic(&self, source: i32, sink: i32) -> i32 {
[INFO] [stdout]    |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sink`
[INFO] [stdout]   --> src/flow_network.rs:95:34
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn dinic(&self, source: i32, sink: i32) -> i32 {
[INFO] [stdout]    |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_sink`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/flow_network.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |         let mut max_flow = 0;
[INFO] [stdout]    |             ----^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `test3`
[INFO] [stdout]   --> src/main.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut test3 = vec![100, 91, 89, 70, 64, 53, 44, 21, 17, 10, 7, 3];
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_test3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut test3 = vec![100, 91, 89, 70, 64, 53, 44, 21, 17, 10, 7, 3];
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_sort` is never used
[INFO] [stdout]  --> src/sorting.rs:4:4
[INFO] [stdout]   |
[INFO] [stdout] 4 | fn merge_sort(arr: &Vec<i32>) -> Vec<i32>{
[INFO] [stdout]   |    ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge` is never used
[INFO] [stdout]   --> src/sorting.rs:16:4
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn merge(left: Vec<i32>, right: Vec<i32>) ->Vec<i32>{
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `quick_sort` is never used
[INFO] [stdout]   --> src/sorting.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn quick_sort(arr: &Vec<i32>) -> Vec<i32>{
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Graph` is never constructed
[INFO] [stdout]  --> src/graphs.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct Graph {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_edge`, `dfs`, `bfs`, and `has_cycle` are never used
[INFO] [stdout]   --> src/graphs.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Graph {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 11 |     fn new(adj_list: HashMap<i32, Vec<i32>>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     fn add_edge(&mut self, from: i32, to: i32) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn dfs(&self, start: i32) -> Vec<i32> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     fn bfs(&self, start: i32) -> Vec<i32> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     fn has_cycle(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WeightedGraph` is never constructed
[INFO] [stdout]    --> src/graphs.rs:101:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | struct WeightedGraph {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `dijkstra`, `bellman_ford`, and `floyd_warshall` are never used
[INFO] [stdout]    --> src/graphs.rs:106:8
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl WeightedGraph {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] 106 |     fn dijkstra(&self, start: i32) -> HashMap<i32, i32> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     fn bellman_ford(&self, start: i32) -> Result<HashMap<i32, i32>, &'static str> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |     fn floyd_warshall(&self) -> HashMap<(i32, i32), i32> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Edge` is never constructed
[INFO] [stdout]    --> src/graphs.rs:196:8
[INFO] [stdout]     |
[INFO] [stdout] 196 | struct Edge {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `kruskal_mst` is never used
[INFO] [stdout]    --> src/graphs.rs:214:4
[INFO] [stdout]     |
[INFO] [stdout] 214 | fn kruskal_mst(edges: Vec<Edge>, num_vertices: usize) -> Vec<Edge> {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_cycle` is never used
[INFO] [stdout]    --> src/graphs.rs:236:4
[INFO] [stdout]     |
[INFO] [stdout] 236 | fn has_cycle(mut edge: Edge, graph: &mut HashMap<i32, Edge>) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prim_mst` is never used
[INFO] [stdout]    --> src/graphs.rs:252:4
[INFO] [stdout]     |
[INFO] [stdout] 252 | fn prim_mst(graph: &WeightedGraph, start: i32) -> Vec<i32> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BST` is never constructed
[INFO] [stdout]  --> src/binary_search.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct BST<T: Ord + Clone> {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/binary_search.rs:11:8
[INFO] [stdout]     |
[INFO] [stdout] 10  | impl<T: Ord + Clone> BST<T> {
[INFO] [stdout]     | --------------------------- associated items in this implementation
[INFO] [stdout] 11  |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 19  |     fn insert(&mut self, value: T) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43  |     fn search(&self, value: &T) -> bool {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     fn inorder_traversal(&self) -> Vec<T> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     fn preorder_traversal(&self) -> Vec<T> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     fn postorder_traversal(&self) -> Vec<T> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     fn level_order_traversal(&self) -> Vec<Vec<T>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     fn find_min(&self) -> Option<&T> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 233 |     fn find_max(&self) -> Option<&T> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     fn height(&self) -> i32 {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 287 |     fn is_valid_bst(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Activity` is never constructed
[INFO] [stdout]  --> src/greedy.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Activity {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `activity_selection` is never used
[INFO] [stdout]   --> src/greedy.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn activity_selection(activities: Vec<Activity>) -> Vec<Activity> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HuffmanNode` is never constructed
[INFO] [stdout]   --> src/greedy.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct HuffmanNode {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_huffman_tree` is never used
[INFO] [stdout]   --> src/greedy.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn build_huffman_tree(text: &str) -> Option<Box<HuffmanNode>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_codes` is never used
[INFO] [stdout]   --> src/greedy.rs:54:4
[INFO] [stdout]    |
[INFO] [stdout] 54 | fn generate_codes(root: &HuffmanNode) -> HashMap<char, String> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `huffman_encode` is never used
[INFO] [stdout]   --> src/greedy.rs:85:4
[INFO] [stdout]    |
[INFO] [stdout] 85 | fn huffman_encode(text: &str) -> (String, HashMap<char, String>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `huffman_decode` is never used
[INFO] [stdout]    --> src/greedy.rs:102:4
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn huffman_decode(encoded: &str, codes: &HashMap<char, String>) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Job` is never constructed
[INFO] [stdout]    --> src/greedy.rs:119:8
[INFO] [stdout]     |
[INFO] [stdout] 119 | struct Job {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `job_scheduling_max_profit` is never used
[INFO] [stdout]    --> src/greedy.rs:127:4
[INFO] [stdout]     |
[INFO] [stdout] 127 | fn job_scheduling_max_profit(jobs: Vec<Job>) -> (Vec<Job>, i32) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_next_job` is never used
[INFO] [stdout]    --> src/greedy.rs:153:4
[INFO] [stdout]     |
[INFO] [stdout] 153 | fn find_next_job(i: usize, jobs: &Vec<Job>, mut start: Job) -> Vec<Job>{
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `coin_change` is never used
[INFO] [stdout]    --> src/greedy.rs:175:4
[INFO] [stdout]     |
[INFO] [stdout] 175 | fn coin_change (coins: &[i32], amount: i32) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `job_scheduling_min_lateness` is never used
[INFO] [stdout]    --> src/greedy.rs:202:4
[INFO] [stdout]     |
[INFO] [stdout] 202 | fn job_scheduling_min_lateness(jobs: Vec<Job>) -> Vec<Job> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fast_power` is never used
[INFO] [stdout]  --> src/divide_and_conquer.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn fast_power(base: i64, exp: i32) -> i64 {
[INFO] [stdout]   |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fast_power_mod` is never used
[INFO] [stdout]   --> src/divide_and_conquer.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn fast_power_mod(base: i64, exp: u32, modulus: i64) -> i64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binary_search` is never used
[INFO] [stdout]   --> src/divide_and_conquer.rs:48:4
[INFO] [stdout]    |
[INFO] [stdout] 48 | fn binary_search<T: Ord>(arr: &[T], target: &T) -> Option<usize> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `binary_search_first_occurrence` is never used
[INFO] [stdout]   --> src/divide_and_conquer.rs:68:4
[INFO] [stdout]    |
[INFO] [stdout] 68 | fn binary_search_first_occurrence<T: Ord>(arr: &[T], target: &T) -> Option<usize> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `search_rotated_array` is never used
[INFO] [stdout]   --> src/divide_and_conquer.rs:93:4
[INFO] [stdout]    |
[INFO] [stdout] 93 | fn search_rotated_array<T: Ord>(arr: &[T], target: &T) -> Option<usize> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_peak_element` is never used
[INFO] [stdout]    --> src/divide_and_conquer.rs:141:4
[INFO] [stdout]     |
[INFO] [stdout] 141 | fn find_peak_element<T: Ord>(arr: &[T]) -> usize{
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_sqrt` is never used
[INFO] [stdout]    --> src/divide_and_conquer.rs:172:4
[INFO] [stdout]     |
[INFO] [stdout] 172 | fn find_sqrt(n: usize) -> usize{
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_inversion` is never used
[INFO] [stdout]    --> src/divide_and_conquer.rs:189:4
[INFO] [stdout]     |
[INFO] [stdout] 189 | fn count_inversion<T: Ord>(arr: &[T]) -> usize{
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Matrix` is never constructed
[INFO] [stdout]    --> src/divide_and_conquer.rs:224:8
[INFO] [stdout]     |
[INFO] [stdout] 224 | struct Matrix<T> 
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_matrix`, `get_value`, `add`, and `dot` are never used
[INFO] [stdout]    --> src/divide_and_conquer.rs:238:8
[INFO] [stdout]     |
[INFO] [stdout] 232 | / impl <T> Matrix<T> 
[INFO] [stdout] 233 | | where T:Copy,
[INFO] [stdout] 234 | | T:Add<Output = T>,
[INFO] [stdout] 235 | | T:Sub<Output = T>,
[INFO] [stdout] 236 | | T:Mul<Output = T>
[INFO] [stdout]     | |_________________- associated items in this implementation
[INFO] [stdout] 237 |   {
[INFO] [stdout] 238 |       fn new(data: Vec<T>, n_columns:usize) -> Self{
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |       fn get_matrix<R: RangeBounds<usize>, U: RangeBounds<usize>>(&self, cols: R, rows: U) -> Matrix<T>
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |       fn get_value(&self, col: usize, row: usize) -> T{
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 263 |       fn add(&self, b: &Matrix<T>, sign: i32) -> Matrix<T>{
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 277 |       fn dot(&self, b: &Matrix<T>) -> Matrix<T>{
[INFO] [stdout]     |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fibonacci_dp` is never used
[INFO] [stdout]  --> src/DP.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn fibonacci_dp(n: usize) -> usize {
[INFO] [stdout]   |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fibonacci_memoized` is never used
[INFO] [stdout]   --> src/DP.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn fibonacci_memoized(n: usize, memo: &mut HashMap<usize, usize>) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_common_subsequence` is never used
[INFO] [stdout]   --> src/DP.rs:32:4
[INFO] [stdout]    |
[INFO] [stdout] 32 | fn longest_common_subsequence(s1: &str, s2: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `edit_distance` is never used
[INFO] [stdout]   --> src/DP.rs:49:4
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn edit_distance(s1: &str, s2: &str) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `coin_change` is never used
[INFO] [stdout]   --> src/DP.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn coin_change(coins: &[i32], amount: i32) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KnapsackItem` is never constructed
[INFO] [stdout]   --> src/DP.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 92 | struct KnapsackItem {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `knapsack_01` is never used
[INFO] [stdout]   --> src/DP.rs:97:4
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn knapsack_01(items: &[KnapsackItem], capacity: i32) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wildcard_matching` is never used
[INFO] [stdout]    --> src/DP.rs:117:4
[INFO] [stdout]     |
[INFO] [stdout] 117 | fn wildcard_matching(s: &str, pattern: &str) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `regular_expression_matching` is never used
[INFO] [stdout]    --> src/DP.rs:144:4
[INFO] [stdout]     |
[INFO] [stdout] 144 | fn regular_expression_matching(s: &str, pattern: &str) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `knapsack_01_with_items` is never used
[INFO] [stdout]    --> src/DP.rs:171:4
[INFO] [stdout]     |
[INFO] [stdout] 171 | fn knapsack_01_with_items(items: &[KnapsackItem], capacity: i32) -> (i32, Vec<usize>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_palindromic_substring` is never used
[INFO] [stdout]    --> src/DP.rs:198:4
[INFO] [stdout]     |
[INFO] [stdout] 198 | fn longest_palindromic_substring(s: &str) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_increasing_subsequence` is never used
[INFO] [stdout]    --> src/DP.rs:249:4
[INFO] [stdout]     |
[INFO] [stdout] 249 | fn longest_increasing_subsequence(arr: &[i32]) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lis_nlogn` is never used
[INFO] [stdout]    --> src/DP.rs:263:4
[INFO] [stdout]     |
[INFO] [stdout] 263 | fn lis_nlogn(arr: &[i32]) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `maximum_subarray_sum` is never used
[INFO] [stdout]    --> src/DP.rs:287:4
[INFO] [stdout]     |
[INFO] [stdout] 287 | fn maximum_subarray_sum(arr: &[i32]) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `maximum_product_subarray` is never used
[INFO] [stdout]    --> src/DP.rs:299:4
[INFO] [stdout]     |
[INFO] [stdout] 299 | fn maximum_product_subarray(arr: &[i32]) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `maximum_sum_non_adjacent` is never used
[INFO] [stdout]    --> src/DP.rs:311:4
[INFO] [stdout]     |
[INFO] [stdout] 311 | fn maximum_sum_non_adjacent(arr: &[i32]) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `house_robber_circular` is never used
[INFO] [stdout]    --> src/DP.rs:323:4
[INFO] [stdout]     |
[INFO] [stdout] 323 | fn house_robber_circular(arr: &[i32]) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `travelling_salesman_problem` is never used
[INFO] [stdout]    --> src/DP.rs:331:4
[INFO] [stdout]     |
[INFO] [stdout] 331 | fn travelling_salesman_problem(mut cost: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `matrix_chain_multiplication` is never used
[INFO] [stdout]    --> src/DP.rs:337:4
[INFO] [stdout]     |
[INFO] [stdout] 337 | fn matrix_chain_multiplication(dimensions: &[i32]) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `minimum_path_sum` is never used
[INFO] [stdout]    --> src/DP.rs:354:4
[INFO] [stdout]     |
[INFO] [stdout] 354 | fn minimum_path_sum(grid: Vec<Vec<i32>>) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FlowNetwork` is never constructed
[INFO] [stdout]  --> src/flow_network.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct FlowNetwork {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_edge`, `ford_fulkerson`, and `dinic` are never used
[INFO] [stdout]   --> src/flow_network.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl FlowNetwork {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 10 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     fn add_edge(&mut self, from: i32, to: i32, capacity: i32) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn ford_fulkerson(&self, source: i32, sink: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     fn dinic(&self, source: i32, sink: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `DP` should have a snake case name
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | mod DP;
[INFO] [stdout]   |     ^^ help: convert the identifier to snake case: `dp`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.70s
[INFO] running `Command { std: "docker" "inspect" "03b95dfbeed8e67e919cb6a1417b756e47ad7062d7bd3a544b144ea33f204a33", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "03b95dfbeed8e67e919cb6a1417b756e47ad7062d7bd3a544b144ea33f204a33", kill_on_drop: false }`
[INFO] [stdout] 03b95dfbeed8e67e919cb6a1417b756e47ad7062d7bd3a544b144ea33f204a33
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c7cb3dc842b5dfd4fc130bec37bfc5382b132a979274e82186dd5c5be7caf3eb
[INFO] running `Command { std: "docker" "start" "-a" "c7cb3dc842b5dfd4fc130bec37bfc5382b132a979274e82186dd5c5be7caf3eb", kill_on_drop: false }`
[INFO] [stderr]    Compiling algorithims v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `DerefMut`, `Deref`, `self`, and `swap`
[INFO] [stdout]  --> src/binary_search.rs:1:39
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{cmp::{max, Ordering}, mem::{self, swap}, ops::{Deref, DerefMut}};
[INFO] [stdout]   |                                       ^^^^  ^^^^         ^^^^^  ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/DP.rs:333:33
[INFO] [stdout]     |
[INFO] [stdout] 333 |     let mut memo = vec![vec![-1;(1<<n)];n];
[INFO] [stdout]     |                                 ^    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 333 -     let mut memo = vec![vec![-1;(1<<n)];n];
[INFO] [stdout] 333 +     let mut memo = vec![vec![-1;1<<n];n];
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/divide_and_conquer.rs:121:5
[INFO] [stdout]     |
[INFO] [stdout] 112 | /     match target.cmp(&arr[0]) {
[INFO] [stdout] 113 | |         Ordering::Equal => {return Some(pivot);}
[INFO] [stdout] 114 | |         Ordering::Greater => {
[INFO] [stdout] 115 | |             return _bs(arr, &target, 0, pivot - 1);
[INFO] [stdout] ...   |
[INFO] [stdout] 119 | |         },
[INFO] [stdout] 120 | |     }
[INFO] [stdout]     | |_____- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout] 121 |       None
[INFO] [stdout]     |       ^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `res` is never read
[INFO] [stdout]   --> src/graphs.rs:88:17
[INFO] [stdout]    |
[INFO] [stdout] 88 |         let mut res: bool = false;
[INFO] [stdout]    |                 ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `res` is never read
[INFO] [stdout]    --> src/binary_search.rs:296:41
[INFO] [stdout]     |
[INFO] [stdout] 296 | ...                   let mut res = true;
[INFO] [stdout]     |                               ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `res` is never read
[INFO] [stdout]    --> src/binary_search.rs:308:41
[INFO] [stdout]     |
[INFO] [stdout] 308 | ...                   let mut res = true;
[INFO] [stdout]     |                               ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/greedy.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut node = HuffmanNode{ ch: None, freq: a.freq + b.freq, left: Some(Box::new(a)), right: Some(Box::new(b))};
[INFO] [stdout]    |             ----^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/greedy.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let mut s = "0".to_string();
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]    --> src/divide_and_conquer.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 210 |     let k = start;
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `i_mirror` is never read
[INFO] [stdout]    --> src/DP.rs:211:13
[INFO] [stdout]     |
[INFO] [stdout] 211 |     let mut i_mirror = 0;
[INFO] [stdout]     |             ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `diff`
[INFO] [stdout]    --> src/DP.rs:214:13
[INFO] [stdout]     |
[INFO] [stdout] 214 |     let mut diff = -1;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_diff`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/DP.rs:214:9
[INFO] [stdout]     |
[INFO] [stdout] 214 |     let mut diff = -1;
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/flow_network.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |         let mut adj_list = HashMap::new();
[INFO] [stdout]    |             ----^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source`
[INFO] [stdout]   --> src/flow_network.rs:95:21
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn dinic(&self, source: i32, sink: i32) -> i32 {
[INFO] [stdout]    |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sink`
[INFO] [stdout]   --> src/flow_network.rs:95:34
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn dinic(&self, source: i32, sink: i32) -> i32 {
[INFO] [stdout]    |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_sink`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/flow_network.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |         let mut max_flow = 0;
[INFO] [stdout]    |             ----^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `test3`
[INFO] [stdout]   --> src/main.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut test3 = vec![100, 91, 89, 70, 64, 53, 44, 21, 17, 10, 7, 3];
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_test3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut test3 = vec![100, 91, 89, 70, 64, 53, 44, 21, 17, 10, 7, 3];
[INFO] [stdout]    |         ----^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `has_cycle` is never used
[INFO] [stdout]   --> src/graphs.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Graph {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 71 |     fn has_cycle(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WeightedGraph` is never constructed
[INFO] [stdout]    --> src/graphs.rs:101:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | struct WeightedGraph {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `dijkstra`, `bellman_ford`, and `floyd_warshall` are never used
[INFO] [stdout]    --> src/graphs.rs:106:8
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl WeightedGraph {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] 106 |     fn dijkstra(&self, start: i32) -> HashMap<i32, i32> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     fn bellman_ford(&self, start: i32) -> Result<HashMap<i32, i32>, &'static str> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |     fn floyd_warshall(&self) -> HashMap<(i32, i32), i32> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Edge` is never constructed
[INFO] [stdout]    --> src/graphs.rs:196:8
[INFO] [stdout]     |
[INFO] [stdout] 196 | struct Edge {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `kruskal_mst` is never used
[INFO] [stdout]    --> src/graphs.rs:214:4
[INFO] [stdout]     |
[INFO] [stdout] 214 | fn kruskal_mst(edges: Vec<Edge>, num_vertices: usize) -> Vec<Edge> {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_cycle` is never used
[INFO] [stdout]    --> src/graphs.rs:236:4
[INFO] [stdout]     |
[INFO] [stdout] 236 | fn has_cycle(mut edge: Edge, graph: &mut HashMap<i32, Edge>) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prim_mst` is never used
[INFO] [stdout]    --> src/graphs.rs:252:4
[INFO] [stdout]     |
[INFO] [stdout] 252 | fn prim_mst(graph: &WeightedGraph, start: i32) -> Vec<i32> {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/binary_search.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 10  | impl<T: Ord + Clone> BST<T> {
[INFO] [stdout]     | --------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 105 |     fn inorder_traversal(&self) -> Vec<T> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     fn preorder_traversal(&self) -> Vec<T> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     fn postorder_traversal(&self) -> Vec<T> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     fn level_order_traversal(&self) -> Vec<Vec<T>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     fn find_min(&self) -> Option<&T> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 233 |     fn find_max(&self) -> Option<&T> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     fn height(&self) -> i32 {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 287 |     fn is_valid_bst(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Activity` is never constructed
[INFO] [stdout]  --> src/greedy.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Activity {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `activity_selection` is never used
[INFO] [stdout]   --> src/greedy.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn activity_selection(activities: Vec<Activity>) -> Vec<Activity> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HuffmanNode` is never constructed
[INFO] [stdout]   --> src/greedy.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct HuffmanNode {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `build_huffman_tree` is never used
[INFO] [stdout]   --> src/greedy.rs:34:4
[INFO] [stdout]    |
[INFO] [stdout] 34 | fn build_huffman_tree(text: &str) -> Option<Box<HuffmanNode>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_codes` is never used
[INFO] [stdout]   --> src/greedy.rs:54:4
[INFO] [stdout]    |
[INFO] [stdout] 54 | fn generate_codes(root: &HuffmanNode) -> HashMap<char, String> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `huffman_encode` is never used
[INFO] [stdout]   --> src/greedy.rs:85:4
[INFO] [stdout]    |
[INFO] [stdout] 85 | fn huffman_encode(text: &str) -> (String, HashMap<char, String>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `huffman_decode` is never used
[INFO] [stdout]    --> src/greedy.rs:102:4
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn huffman_decode(encoded: &str, codes: &HashMap<char, String>) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Job` is never constructed
[INFO] [stdout]    --> src/greedy.rs:119:8
[INFO] [stdout]     |
[INFO] [stdout] 119 | struct Job {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `job_scheduling_max_profit` is never used
[INFO] [stdout]    --> src/greedy.rs:127:4
[INFO] [stdout]     |
[INFO] [stdout] 127 | fn job_scheduling_max_profit(jobs: Vec<Job>) -> (Vec<Job>, i32) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_next_job` is never used
[INFO] [stdout]    --> src/greedy.rs:153:4
[INFO] [stdout]     |
[INFO] [stdout] 153 | fn find_next_job(i: usize, jobs: &Vec<Job>, mut start: Job) -> Vec<Job>{
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `coin_change` is never used
[INFO] [stdout]    --> src/greedy.rs:175:4
[INFO] [stdout]     |
[INFO] [stdout] 175 | fn coin_change (coins: &[i32], amount: i32) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `job_scheduling_min_lateness` is never used
[INFO] [stdout]    --> src/greedy.rs:202:4
[INFO] [stdout]     |
[INFO] [stdout] 202 | fn job_scheduling_min_lateness(jobs: Vec<Job>) -> Vec<Job> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fast_power_mod` is never used
[INFO] [stdout]   --> src/divide_and_conquer.rs:23:4
[INFO] [stdout]    |
[INFO] [stdout] 23 | fn fast_power_mod(base: i64, exp: u32, modulus: i64) -> i64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_inversion` is never used
[INFO] [stdout]    --> src/divide_and_conquer.rs:189:4
[INFO] [stdout]     |
[INFO] [stdout] 189 | fn count_inversion<T: Ord>(arr: &[T]) -> usize{
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_value` is never used
[INFO] [stdout]    --> src/divide_and_conquer.rs:258:8
[INFO] [stdout]     |
[INFO] [stdout] 232 | / impl <T> Matrix<T> 
[INFO] [stdout] 233 | | where T:Copy,
[INFO] [stdout] 234 | | T:Add<Output = T>,
[INFO] [stdout] 235 | | T:Sub<Output = T>,
[INFO] [stdout] 236 | | T:Mul<Output = T>
[INFO] [stdout]     | |_________________- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 258 |       fn get_value(&self, col: usize, row: usize) -> T{
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `coin_change` is never used
[INFO] [stdout]   --> src/DP.rs:76:4
[INFO] [stdout]    |
[INFO] [stdout] 76 | fn coin_change(coins: &[i32], amount: i32) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `knapsack_01_with_items` is never used
[INFO] [stdout]    --> src/DP.rs:171:4
[INFO] [stdout]     |
[INFO] [stdout] 171 | fn knapsack_01_with_items(items: &[KnapsackItem], capacity: i32) -> (i32, Vec<usize>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest_increasing_subsequence` is never used
[INFO] [stdout]    --> src/DP.rs:249:4
[INFO] [stdout]     |
[INFO] [stdout] 249 | fn longest_increasing_subsequence(arr: &[i32]) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lis_nlogn` is never used
[INFO] [stdout]    --> src/DP.rs:263:4
[INFO] [stdout]     |
[INFO] [stdout] 263 | fn lis_nlogn(arr: &[i32]) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FlowNetwork` is never constructed
[INFO] [stdout]  --> src/flow_network.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct FlowNetwork {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_edge`, `ford_fulkerson`, and `dinic` are never used
[INFO] [stdout]   --> src/flow_network.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl FlowNetwork {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 10 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     fn add_edge(&mut self, from: i32, to: i32, capacity: i32) {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn ford_fulkerson(&self, source: i32, sink: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     fn dinic(&self, source: i32, sink: i32) -> i32 {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `DP` should have a snake case name
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | mod DP;
[INFO] [stdout]   |     ^^ help: convert the identifier to snake case: `dp`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.67s
[INFO] running `Command { std: "docker" "inspect" "c7cb3dc842b5dfd4fc130bec37bfc5382b132a979274e82186dd5c5be7caf3eb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c7cb3dc842b5dfd4fc130bec37bfc5382b132a979274e82186dd5c5be7caf3eb", kill_on_drop: false }`
[INFO] [stdout] c7cb3dc842b5dfd4fc130bec37bfc5382b132a979274e82186dd5c5be7caf3eb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a29c6f4ec5db8dd113e0cdc3c495098c85fa6ae9eb551445a8cac9fe71022227
[INFO] running `Command { std: "docker" "start" "-a" "a29c6f4ec5db8dd113e0cdc3c495098c85fa6ae9eb551445a8cac9fe71022227", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `DerefMut`, `Deref`, `self`, and `swap`
[INFO] [stderr]  --> src/binary_search.rs:1:39
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::{cmp::{max, Ordering}, mem::{self, swap}, ops::{Deref, DerefMut}};
[INFO] [stderr]   |                                       ^^^^  ^^^^         ^^^^^  ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around function argument
[INFO] [stderr]    --> src/DP.rs:333:33
[INFO] [stderr]     |
[INFO] [stderr] 333 |     let mut memo = vec![vec![-1;(1<<n)];n];
[INFO] [stderr]     |                                 ^    ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 333 -     let mut memo = vec![vec![-1;(1<<n)];n];
[INFO] [stderr] 333 +     let mut memo = vec![vec![-1;1<<n];n];
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable expression
[INFO] [stderr]    --> src/divide_and_conquer.rs:121:5
[INFO] [stderr]     |
[INFO] [stderr] 112 | /     match target.cmp(&arr[0]) {
[INFO] [stderr] 113 | |         Ordering::Equal => {return Some(pivot);}
[INFO] [stderr] 114 | |         Ordering::Greater => {
[INFO] [stderr] 115 | |             return _bs(arr, &target, 0, pivot - 1);
[INFO] [stderr] ...   |
[INFO] [stderr] 119 | |         },
[INFO] [stderr] 120 | |     }
[INFO] [stderr]     | |_____- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stderr] 121 |       None
[INFO] [stderr]     |       ^^^^ unreachable expression
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `res` is never read
[INFO] [stderr]   --> src/graphs.rs:88:17
[INFO] [stderr]    |
[INFO] [stderr] 88 |         let mut res: bool = false;
[INFO] [stderr]    |                 ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `res` is never read
[INFO] [stderr]    --> src/binary_search.rs:296:41
[INFO] [stderr]     |
[INFO] [stderr] 296 | ...                   let mut res = true;
[INFO] [stderr]     |                               ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `res` is never read
[INFO] [stderr]    --> src/binary_search.rs:308:41
[INFO] [stderr]     |
[INFO] [stderr] 308 | ...                   let mut res = true;
[INFO] [stderr]     |                               ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/greedy.rs:46:13
[INFO] [stderr]    |
[INFO] [stderr] 46 |         let mut node = HuffmanNode{ ch: None, freq: a.freq + b.freq, left: Some(Box::new(a)), right: Some(Box::new(b))};
[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: variable does not need to be mutable
[INFO] [stderr]   --> src/greedy.rs:57:9
[INFO] [stderr]    |
[INFO] [stderr] 57 |     let mut s = "0".to_string();
[INFO] [stderr]    |         ----^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `k`
[INFO] [stderr]    --> src/divide_and_conquer.rs:210:9
[INFO] [stderr]     |
[INFO] [stderr] 210 |     let k = start;
[INFO] [stderr]     |         ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `i_mirror` is never read
[INFO] [stderr]    --> src/DP.rs:211:13
[INFO] [stderr]     |
[INFO] [stderr] 211 |     let mut i_mirror = 0;
[INFO] [stderr]     |             ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `diff`
[INFO] [stderr]    --> src/DP.rs:214:13
[INFO] [stderr]     |
[INFO] [stderr] 214 |     let mut diff = -1;
[INFO] [stderr]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_diff`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/DP.rs:214:9
[INFO] [stderr]     |
[INFO] [stderr] 214 |     let mut diff = -1;
[INFO] [stderr]     |         ----^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/flow_network.rs:12:13
[INFO] [stderr]    |
[INFO] [stderr] 12 |         let mut adj_list = HashMap::new();
[INFO] [stderr]    |             ----^^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `source`
[INFO] [stderr]   --> src/flow_network.rs:95:21
[INFO] [stderr]    |
[INFO] [stderr] 95 |     fn dinic(&self, source: i32, sink: i32) -> i32 {
[INFO] [stderr]    |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_source`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `sink`
[INFO] [stderr]   --> src/flow_network.rs:95:34
[INFO] [stderr]    |
[INFO] [stderr] 95 |     fn dinic(&self, source: i32, sink: i32) -> i32 {
[INFO] [stderr]    |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_sink`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/flow_network.rs:97:13
[INFO] [stderr]    |
[INFO] [stderr] 97 |         let mut max_flow = 0;
[INFO] [stderr]    |             ----^^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `test3`
[INFO] [stderr]   --> src/main.rs:11:13
[INFO] [stderr]    |
[INFO] [stderr] 11 |     let mut test3 = vec![100, 91, 89, 70, 64, 53, 44, 21, 17, 10, 7, 3];
[INFO] [stderr]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_test3`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/main.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 |     let mut test3 = vec![100, 91, 89, 70, 64, 53, 44, 21, 17, 10, 7, 3];
[INFO] [stderr]    |         ----^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: method `has_cycle` is never used
[INFO] [stderr]   --> src/graphs.rs:71:8
[INFO] [stderr]    |
[INFO] [stderr] 10 | impl Graph {
[INFO] [stderr]    | ---------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 71 |     fn has_cycle(&self) -> bool {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `WeightedGraph` is never constructed
[INFO] [stderr]    --> src/graphs.rs:101:8
[INFO] [stderr]     |
[INFO] [stderr] 101 | struct WeightedGraph {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `dijkstra`, `bellman_ford`, and `floyd_warshall` are never used
[INFO] [stderr]    --> src/graphs.rs:106:8
[INFO] [stderr]     |
[INFO] [stderr] 105 | impl WeightedGraph {
[INFO] [stderr]     | ------------------ methods in this implementation
[INFO] [stderr] 106 |     fn dijkstra(&self, start: i32) -> HashMap<i32, i32> {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 131 |     fn bellman_ford(&self, start: i32) -> Result<HashMap<i32, i32>, &'static str> {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 159 |     fn floyd_warshall(&self) -> HashMap<(i32, i32), i32> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Edge` is never constructed
[INFO] [stderr]    --> src/graphs.rs:196:8
[INFO] [stderr]     |
[INFO] [stderr] 196 | struct Edge {
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `kruskal_mst` is never used
[INFO] [stderr]    --> src/graphs.rs:214:4
[INFO] [stderr]     |
[INFO] [stderr] 214 | fn kruskal_mst(edges: Vec<Edge>, num_vertices: usize) -> Vec<Edge> {
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `has_cycle` is never used
[INFO] [stderr]    --> src/graphs.rs:236:4
[INFO] [stderr]     |
[INFO] [stderr] 236 | fn has_cycle(mut edge: Edge, graph: &mut HashMap<i32, Edge>) -> bool {
[INFO] [stderr]     |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `prim_mst` is never used
[INFO] [stderr]    --> src/graphs.rs:252:4
[INFO] [stderr]     |
[INFO] [stderr] 252 | fn prim_mst(graph: &WeightedGraph, start: i32) -> Vec<i32> {
[INFO] [stderr]     |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]    --> src/binary_search.rs:105:8
[INFO] [stderr]     |
[INFO] [stderr] 10  | impl<T: Ord + Clone> BST<T> {
[INFO] [stderr]     | --------------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 105 |     fn inorder_traversal(&self) -> Vec<T> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 128 |     fn preorder_traversal(&self) -> Vec<T> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 149 |     fn postorder_traversal(&self) -> Vec<T> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 170 |     fn level_order_traversal(&self) -> Vec<Vec<T>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 225 |     fn find_min(&self) -> Option<&T> {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 233 |     fn find_max(&self) -> Option<&T> {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 241 |     fn height(&self) -> i32 {
[INFO] [stderr]     |        ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 287 |     fn is_valid_bst(&self) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Activity` is never constructed
[INFO] [stderr]  --> src/greedy.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | struct Activity {
[INFO] [stderr]   |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `activity_selection` is never used
[INFO] [stderr]   --> src/greedy.rs:10:4
[INFO] [stderr]    |
[INFO] [stderr] 10 | fn activity_selection(activities: Vec<Activity>) -> Vec<Activity> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `HuffmanNode` is never constructed
[INFO] [stderr]   --> src/greedy.rs:27:8
[INFO] [stderr]    |
[INFO] [stderr] 27 | struct HuffmanNode {
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `build_huffman_tree` is never used
[INFO] [stderr]   --> src/greedy.rs:34:4
[INFO] [stderr]    |
[INFO] [stderr] 34 | fn build_huffman_tree(text: &str) -> Option<Box<HuffmanNode>> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `generate_codes` is never used
[INFO] [stderr]   --> src/greedy.rs:54:4
[INFO] [stderr]    |
[INFO] [stderr] 54 | fn generate_codes(root: &HuffmanNode) -> HashMap<char, String> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `huffman_encode` is never used
[INFO] [stderr]   --> src/greedy.rs:85:4
[INFO] [stderr]    |
[INFO] [stderr] 85 | fn huffman_encode(text: &str) -> (String, HashMap<char, String>) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `huffman_decode` is never used
[INFO] [stderr]    --> src/greedy.rs:102:4
[INFO] [stderr]     |
[INFO] [stderr] 102 | fn huffman_decode(encoded: &str, codes: &HashMap<char, String>) -> String {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Job` is never constructed
[INFO] [stderr]    --> src/greedy.rs:119:8
[INFO] [stderr]     |
[INFO] [stderr] 119 | struct Job {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `job_scheduling_max_profit` is never used
[INFO] [stderr]    --> src/greedy.rs:127:4
[INFO] [stderr]     |
[INFO] [stderr] 127 | fn job_scheduling_max_profit(jobs: Vec<Job>) -> (Vec<Job>, i32) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `find_next_job` is never used
[INFO] [stderr]    --> src/greedy.rs:153:4
[INFO] [stderr]     |
[INFO] [stderr] 153 | fn find_next_job(i: usize, jobs: &Vec<Job>, mut start: Job) -> Vec<Job>{
[INFO] [stderr]     |    ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `coin_change` is never used
[INFO] [stderr]    --> src/greedy.rs:175:4
[INFO] [stderr]     |
[INFO] [stderr] 175 | fn coin_change (coins: &[i32], amount: i32) -> i32 {
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `job_scheduling_min_lateness` is never used
[INFO] [stderr]    --> src/greedy.rs:202:4
[INFO] [stderr]     |
[INFO] [stderr] 202 | fn job_scheduling_min_lateness(jobs: Vec<Job>) -> Vec<Job> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `fast_power_mod` is never used
[INFO] [stderr]   --> src/divide_and_conquer.rs:23:4
[INFO] [stderr]    |
[INFO] [stderr] 23 | fn fast_power_mod(base: i64, exp: u32, modulus: i64) -> i64 {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `count_inversion` is never used
[INFO] [stderr]    --> src/divide_and_conquer.rs:189:4
[INFO] [stderr]     |
[INFO] [stderr] 189 | fn count_inversion<T: Ord>(arr: &[T]) -> usize{
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_value` is never used
[INFO] [stderr]    --> src/divide_and_conquer.rs:258:8
[INFO] [stderr]     |
[INFO] [stderr] 232 | / impl <T> Matrix<T> 
[INFO] [stderr] 233 | | where T:Copy,
[INFO] [stderr] 234 | | T:Add<Output = T>,
[INFO] [stderr] 235 | | T:Sub<Output = T>,
[INFO] [stderr] 236 | | T:Mul<Output = T>
[INFO] [stderr]     | |_________________- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 258 |       fn get_value(&self, col: usize, row: usize) -> T{
[INFO] [stderr]     |          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `coin_change` is never used
[INFO] [stderr]   --> src/DP.rs:76:4
[INFO] [stderr]    |
[INFO] [stderr] 76 | fn coin_change(coins: &[i32], amount: i32) -> i32 {
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `knapsack_01_with_items` is never used
[INFO] [stderr]    --> src/DP.rs:171:4
[INFO] [stderr]     |
[INFO] [stderr] 171 | fn knapsack_01_with_items(items: &[KnapsackItem], capacity: i32) -> (i32, Vec<usize>) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `longest_increasing_subsequence` is never used
[INFO] [stderr]    --> src/DP.rs:249:4
[INFO] [stderr]     |
[INFO] [stderr] 249 | fn longest_increasing_subsequence(arr: &[i32]) -> usize {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `lis_nlogn` is never used
[INFO] [stderr]    --> src/DP.rs:263:4
[INFO] [stderr]     |
[INFO] [stderr] 263 | fn lis_nlogn(arr: &[i32]) -> usize {
[INFO] [stderr]     |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FlowNetwork` is never constructed
[INFO] [stderr]  --> src/flow_network.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | struct FlowNetwork {
[INFO] [stderr]   |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `add_edge`, `ford_fulkerson`, and `dinic` are never used
[INFO] [stderr]   --> src/flow_network.rs:10:8
[INFO] [stderr]    |
[INFO] [stderr] 9  | impl FlowNetwork {
[INFO] [stderr]    | ---------------- associated items in this implementation
[INFO] [stderr] 10 |     fn new() -> Self {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 16 |     fn add_edge(&mut self, from: i32, to: i32, capacity: i32) {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 45 |     fn ford_fulkerson(&self, source: i32, sink: i32) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 95 |     fn dinic(&self, source: i32, sink: i32) -> i32 {
[INFO] [stderr]    |        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: module `DP` should have a snake case name
[INFO] [stderr]  --> src/main.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | mod DP;
[INFO] [stderr]   |     ^^ help: convert the identifier to snake case: `dp`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `algorithims` (bin "algorithims" test) generated 48 warnings (run `cargo fix --bin "algorithims" --tests` to apply 8 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/algorithims-129c4af97efa41fa)
[INFO] [stdout] 
[INFO] [stdout] running 30 tests
[INFO] [stdout] test DP::test::edit_distance_test ... ok
[INFO] [stdout] test DP::test::house_robber_circular_test ... ok
[INFO] [stdout] test DP::test::maximum_subarray_sum_test ... ok
[INFO] [stdout] test DP::test::minimum_path_sum_test ... ok
[INFO] [stdout] test DP::test::matrix_chain_multiplication_test ... ok
[INFO] [stdout] test DP::test::maximum_subarray_prod_test ... ok
[INFO] [stdout] test DP::test::fibonacci_memo_test ... ok
[INFO] [stdout] test DP::test::travelling_salesman_problem_test ... ok
[INFO] [stdout] test DP::test::maximum_sum_non_adjacent_test ... ok
[INFO] [stdout] test DP::test::knapsack_01_test ... ok
[INFO] [stdout] test DP::test::regular_expression_test ... ok
[INFO] [stdout] test binary_search::test::insert ... ok
[INFO] [stdout] test binary_search::test::search ... ok
[INFO] [stdout] test divide_and_conquer::test::binary_search_fo_test ... ok
[INFO] [stdout] test divide_and_conquer::test::binary_search_rotated_test ... ok
[INFO] [stdout] test divide_and_conquer::test::binary_search_test ... ok
[INFO] [stdout] test divide_and_conquer::test::fast_power_test ... ok
[INFO] [stdout] test DP::test::wildcard_matching_test ... ok
[INFO] [stdout] test divide_and_conquer::test::find_peak_element_test ... ok
[INFO] [stdout] test divide_and_conquer::test::find_sqrt_test ... ok
[INFO] [stdout] test graphs::test::adding_edges_to_graph ... ok
[INFO] [stdout] test sorting::test::msort ... ok
[INFO] [stdout] test graphs::test::bredth_first_search ... ok
[INFO] [stdout] test graphs::test::depth_first_search ... ok
[INFO] [stdout] test divide_and_conquer::test::matrix_multiply_test ... ok
[INFO] [stdout] test sorting::test::qsort ... ok
[INFO] [stdout] test DP::test::longest_common_subsequence_test ... FAILED
[INFO] [stdout] test binary_search::test::delete ... FAILED
[INFO] [stdout] test DP::test::longest_palindromic_substring_test ... FAILED
[INFO] [stderr] error: test failed, to rerun pass `--bin algorithims`
[INFO] [stdout] test DP::test::fibonacci_dp_test ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- DP::test::longest_common_subsequence_test stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'DP::test::longest_common_subsequence_test' panicked at src/DP.rs:46:7:
[INFO] [stdout] index out of bounds: the len is 6 but the index is 6
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x56382749fa12 - std::backtrace_rs::backtrace::libunwind::trace::h73a647620bf1c49d
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x56382749fa12 - std::backtrace_rs::backtrace::trace_unsynchronized::hd4d513ed96cb3cb1
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x56382749fa12 - std::sys::backtrace::_print_fmt::h61bb95f7476aafa5
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x56382749fa12 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::ha2e7e3a01df69042
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5638274c4e93 - core::fmt::rt::Argument::fmt::hf14163372f0f9a76
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5638274c4e93 - core::fmt::write::h7cb8f63788cd01d2
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/fmt/mod.rs:1465:25
[INFO] [stdout]    6:     0x56382749c9a3 - std::io::default_write_fmt::h9ed739ccee8a150c
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x56382749c9a3 - std::io::Write::write_fmt::h1c0a32da913b32f1
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x56382749f862 - std::sys::backtrace::BacktraceLock::print::h3ec4d7883eb25e61
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5638274a0f7c - std::panicking::default_hook::{{closure}}::h29548987efd832cb
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:300:27
[INFO] [stdout]   10:     0x5638274a0dd2 - std::panicking::default_hook::ha25170a15c643514
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:324:9
[INFO] [stdout]   11:     0x563827468ef4 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h562adeecbf43c420
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   12:     0x563827468ef4 - test::test_main_with_exit_callback::{{closure}}::h97dd2a879d27e0e4
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5638274a195b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h7e85cbdbda26fdb7
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   14:     0x5638274a195b - std::panicking::rust_panic_with_hook::h0d81afcd829aa24b
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:841:13
[INFO] [stdout]   15:     0x5638274a172a - std::panicking::begin_panic_handler::{{closure}}::hc84a33f1202346cf
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:706:13
[INFO] [stdout]   16:     0x56382749ff09 - std::sys::backtrace::__rust_end_short_backtrace::h373067a14f6c59aa
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   17:     0x5638274a13bd - __rustc[beb0385846a06d21]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:697:5
[INFO] [stdout]   18:     0x5638274c3710 - core::panicking::panic_fmt::ha33fa2ae772efba9
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5638274c3871 - core::panicking::panic_bounds_check::hae8b7dcf0e85b3a1
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panicking.rs:280:5
[INFO] [stdout]   20:     0x56382742254c - algorithims::DP::longest_common_subsequence::h08f05e91add70d94
[INFO] [stdout]   21:     0x563827429ae5 - algorithims::DP::test::longest_common_subsequence_test::h29873a53491ff7c1
[INFO] [stdout]                                at /opt/rustwide/workdir/src/DP.rs:424:20
[INFO] [stdout]   22:     0x563827429ae5 - algorithims::DP::test::longest_common_subsequence_test::{{closure}}::hde1e76b858ea33a8
[INFO] [stdout]                                at /opt/rustwide/workdir/src/DP.rs:421:41
[INFO] [stdout]   23:     0x563827429ae5 - core::ops::function::FnOnce::call_once::h41fc5bd6a652ee22
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x56382746e62b - core::ops::function::FnOnce::call_once::hf84b9c3d864a6959
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x56382746e62b - test::__rust_begin_short_backtrace::h5724e31441c16fcb
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:648:18
[INFO] [stdout]   26:     0x56382746d86e - test::run_test_in_process::{{closure}}::hbc28c9aa91793d7d
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:671:74
[INFO] [stdout]   27:     0x56382746d86e - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hc17b0e238c0f8f3e
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   28:     0x56382746d86e - std::panicking::catch_unwind::do_call::hcdbce0d6dd6c83ce
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:589:40
[INFO] [stdout]   29:     0x56382746d86e - std::panicking::catch_unwind::h9477967ceea044e8
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:552:19
[INFO] [stdout]   30:     0x56382746d86e - std::panic::catch_unwind::h616a2e249da12e16
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x56382746d86e - test::run_test_in_process::h2758deb0f2e54430
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:671:27
[INFO] [stdout]   32:     0x56382746d86e - test::run_test::{{closure}}::habe5cd2564b18aaa
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:592:43
[INFO] [stdout]   33:     0x563827431414 - test::run_test::{{closure}}::h9a0a6928f1a15421
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:622:41
[INFO] [stdout]   34:     0x563827431414 - std::sys::backtrace::__rust_begin_short_backtrace::hd68b5332434a22ca
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:152:18
[INFO] [stdout]   35:     0x563827434dba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h264ddcc3098eacae
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   36:     0x563827434dba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h9fa39489749d6f3c
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   37:     0x563827434dba - std::panicking::catch_unwind::do_call::hb9a1944b9f85100f
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:589:40
[INFO] [stdout]   38:     0x563827434dba - std::panicking::catch_unwind::h0c6f100786c0dad8
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:552:19
[INFO] [stdout]   39:     0x563827434dba - std::panic::catch_unwind::hf6084e2723385823
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x563827434dba - std::thread::Builder::spawn_unchecked_::{{closure}}::hf0af58ce658143ad
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   41:     0x563827434dba - core::ops::function::FnOnce::call_once{{vtable.shim}}::h88a14f9b2e79f9de
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5638274a48b7 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf31256ba38644b65
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   43:     0x5638274a48b7 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h100ad77f3448041b
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   44:     0x5638274a48b7 - std::sys::pal::unix::thread::Thread::new::thread_start::h1a22ded422ce395b
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/pal/unix/thread.rs:97:17
[INFO] [stdout]   45:     0x7e251e945aa4 - <unknown>
[INFO] [stdout]   46:     0x7e251e9d2a34 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- binary_search::test::delete stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'binary_search::test::delete' panicked at src/binary_search.rs:397:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: BST { value: Some(12), left: Some(BST { value: Some(8), left: Some(BST { value: Some(5), left: None, right: None }), right: None }), right: Some(BST { value: Some(18), left: None, right: None }) }
[INFO] [stdout]  right: BST { value: Some(12), left: Some(BST { value: Some(8), left: Some(BST { value: Some(5), left: None, right: None }), right: Some(BST { value: Some(11), left: None, right: None }) }), right: Some(BST { value: Some(18), left: None, right: None }) }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x56382749fa12 - std::backtrace_rs::backtrace::libunwind::trace::h73a647620bf1c49d
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x56382749fa12 - std::backtrace_rs::backtrace::trace_unsynchronized::hd4d513ed96cb3cb1
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x56382749fa12 - std::sys::backtrace::_print_fmt::h61bb95f7476aafa5
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x56382749fa12 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::ha2e7e3a01df69042
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5638274c4e93 - core::fmt::rt::Argument::fmt::hf14163372f0f9a76
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5638274c4e93 - core::fmt::write::h7cb8f63788cd01d2
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/fmt/mod.rs:1465:25
[INFO] [stdout]    6:     0x56382749c9a3 - std::io::default_write_fmt::h9ed739ccee8a150c
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x56382749c9a3 - std::io::Write::write_fmt::h1c0a32da913b32f1
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x56382749f862 - std::sys::backtrace::BacktraceLock::print::h3ec4d7883eb25e61
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5638274a0f7c - std::panicking::default_hook::{{closure}}::h29548987efd832cb
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:300:27
[INFO] [stdout]   10:     0x5638274a0dd2 - std::panicking::default_hook::ha25170a15c643514
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:324:9
[INFO] [stdout]   11:     0x563827468ef4 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h562adeecbf43c420
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   12:     0x563827468ef4 - test::test_main_with_exit_callback::{{closure}}::h97dd2a879d27e0e4
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5638274a195b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h7e85cbdbda26fdb7
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   14:     0x5638274a195b - std::panicking::rust_panic_with_hook::h0d81afcd829aa24b
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:841:13
[INFO] [stdout]   15:     0x5638274a172a - std::panicking::begin_panic_handler::{{closure}}::hc84a33f1202346cf
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:706:13
[INFO] [stdout]   16:     0x56382749ff09 - std::sys::backtrace::__rust_end_short_backtrace::h373067a14f6c59aa
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   17:     0x5638274a13bd - __rustc[beb0385846a06d21]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:697:5
[INFO] [stdout]   18:     0x5638274c3710 - core::panicking::panic_fmt::ha33fa2ae772efba9
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5638274c39a7 - core::panicking::assert_failed_inner::h6a89cd271393c011
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panicking.rs:448:17
[INFO] [stdout]   20:     0x56382742aa9c - core::panicking::assert_failed::hef535f004ab1ff86
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panicking.rs:403:5
[INFO] [stdout]   21:     0x563827429587 - algorithims::binary_search::test::delete::h42f5d913d2e4625b
[INFO] [stdout]                                at /opt/rustwide/workdir/src/binary_search.rs:397:9
[INFO] [stdout]   22:     0x563827429fd9 - algorithims::binary_search::test::delete::{{closure}}::h4f835b688fe4f35c
[INFO] [stdout]                                at /opt/rustwide/workdir/src/binary_search.rs:374:16
[INFO] [stdout]   23:     0x563827429fd9 - core::ops::function::FnOnce::call_once::hc03cb24b1c4c10ed
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x56382746e62b - core::ops::function::FnOnce::call_once::hf84b9c3d864a6959
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x56382746e62b - test::__rust_begin_short_backtrace::h5724e31441c16fcb
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:648:18
[INFO] [stdout]   26:     0x56382746d86e - test::run_test_in_process::{{closure}}::hbc28c9aa91793d7d
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:671:74
[INFO] [stdout]   27:     0x56382746d86e - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hc17b0e238c0f8f3e
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   28:     0x56382746d86e - std::panicking::catch_unwind::do_call::hcdbce0d6dd6c83ce
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:589:40
[INFO] [stdout]   29:     0x56382746d86e - std::panicking::catch_unwind::h9477967ceea044e8
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:552:19
[INFO] [stdout]   30:     0x56382746d86e - std::panic::catch_unwind::h616a2e249da12e16
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x56382746d86e - test::run_test_in_process::h2758deb0f2e54430
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:671:27
[INFO] [stdout]   32:     0x56382746d86e - test::run_test::{{closure}}::habe5cd2564b18aaa
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:592:43
[INFO] [stdout]   33:     0x563827431414 - test::run_test::{{closure}}::h9a0a6928f1a15421
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:622:41
[INFO] [stdout]   34:     0x563827431414 - std::sys::backtrace::__rust_begin_short_backtrace::hd68b5332434a22ca
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:152:18
[INFO] [stdout]   35:     0x563827434dba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h264ddcc3098eacae
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   36:     0x563827434dba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h9fa39489749d6f3c
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   37:     0x563827434dba - std::panicking::catch_unwind::do_call::hb9a1944b9f85100f
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:589:40
[INFO] [stdout]   38:     0x563827434dba - std::panicking::catch_unwind::h0c6f100786c0dad8
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:552:19
[INFO] [stdout]   39:     0x563827434dba - std::panic::catch_unwind::hf6084e2723385823
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x563827434dba - std::thread::Builder::spawn_unchecked_::{{closure}}::hf0af58ce658143ad
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   41:     0x563827434dba - core::ops::function::FnOnce::call_once{{vtable.shim}}::h88a14f9b2e79f9de
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5638274a48b7 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf31256ba38644b65
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   43:     0x5638274a48b7 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h100ad77f3448041b
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   44:     0x5638274a48b7 - std::sys::pal::unix::thread::Thread::new::thread_start::h1a22ded422ce395b
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/pal/unix/thread.rs:97:17
[INFO] [stdout]   45:     0x7e251e945aa4 - <unknown>
[INFO] [stdout]   46:     0x7e251e9d2a34 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- DP::test::longest_palindromic_substring_test stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'DP::test::longest_palindromic_substring_test' panicked at src/DP.rs:228:47:
[INFO] [stdout] index out of bounds: the len is 14 but the index is 9223372036854775807
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x56382749fa12 - std::backtrace_rs::backtrace::libunwind::trace::h73a647620bf1c49d
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x56382749fa12 - std::backtrace_rs::backtrace::trace_unsynchronized::hd4d513ed96cb3cb1
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x56382749fa12 - std::sys::backtrace::_print_fmt::h61bb95f7476aafa5
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x56382749fa12 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::ha2e7e3a01df69042
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5638274c4e93 - core::fmt::rt::Argument::fmt::hf14163372f0f9a76
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5638274c4e93 - core::fmt::write::h7cb8f63788cd01d2
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/fmt/mod.rs:1465:25
[INFO] [stdout]    6:     0x56382749c9a3 - std::io::default_write_fmt::h9ed739ccee8a150c
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x56382749c9a3 - std::io::Write::write_fmt::h1c0a32da913b32f1
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x56382749f862 - std::sys::backtrace::BacktraceLock::print::h3ec4d7883eb25e61
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5638274a0f7c - std::panicking::default_hook::{{closure}}::h29548987efd832cb
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:300:27
[INFO] [stdout]   10:     0x5638274a0dd2 - std::panicking::default_hook::ha25170a15c643514
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:324:9
[INFO] [stdout]   11:     0x563827468ef4 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h562adeecbf43c420
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   12:     0x563827468ef4 - test::test_main_with_exit_callback::{{closure}}::h97dd2a879d27e0e4
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5638274a195b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h7e85cbdbda26fdb7
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   14:     0x5638274a195b - std::panicking::rust_panic_with_hook::h0d81afcd829aa24b
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:841:13
[INFO] [stdout]   15:     0x5638274a172a - std::panicking::begin_panic_handler::{{closure}}::hc84a33f1202346cf
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:706:13
[INFO] [stdout]   16:     0x56382749ff09 - std::sys::backtrace::__rust_end_short_backtrace::h373067a14f6c59aa
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:168:18
[INFO] [stdout]   17:     0x5638274a13bd - __rustc[beb0385846a06d21]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:697:5
[INFO] [stdout]   18:     0x5638274c3710 - core::panicking::panic_fmt::ha33fa2ae772efba9
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5638274c3871 - core::panicking::panic_bounds_check::hae8b7dcf0e85b3a1
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panicking.rs:280:5
[INFO] [stdout]   20:     0x563827423dbb - algorithims::DP::longest_palindromic_substring::h723fe14124421600
[INFO] [stdout]   21:     0x5638274264fd - algorithims::DP::test::longest_palindromic_substring_test::h7a15d24262060371
[INFO] [stdout]                                at /opt/rustwide/workdir/src/DP.rs:447:20
[INFO] [stdout]   22:     0x56382742a079 - algorithims::DP::test::longest_palindromic_substring_test::{{closure}}::h4880959011df7e85
[INFO] [stdout]                                at /opt/rustwide/workdir/src/DP.rs:445:44
[INFO] [stdout]   23:     0x56382742a079 - core::ops::function::FnOnce::call_once::hf40a50ff4ba51655
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x56382746e62b - core::ops::function::FnOnce::call_once::hf84b9c3d864a6959
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x56382746e62b - test::__rust_begin_short_backtrace::h5724e31441c16fcb
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:648:18
[INFO] [stdout]   26:     0x56382746d86e - test::run_test_in_process::{{closure}}::hbc28c9aa91793d7d
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:671:74
[INFO] [stdout]   27:     0x56382746d86e - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hc17b0e238c0f8f3e
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   28:     0x56382746d86e - std::panicking::catch_unwind::do_call::hcdbce0d6dd6c83ce
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:589:40
[INFO] [stdout]   29:     0x56382746d86e - std::panicking::catch_unwind::h9477967ceea044e8
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:552:19
[INFO] [stdout]   30:     0x56382746d86e - std::panic::catch_unwind::h616a2e249da12e16
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x56382746d86e - test::run_test_in_process::h2758deb0f2e54430
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:671:27
[INFO] [stdout]   32:     0x56382746d86e - test::run_test::{{closure}}::habe5cd2564b18aaa
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:592:43
[INFO] [stdout]   33:     0x563827431414 - test::run_test::{{closure}}::h9a0a6928f1a15421
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/test/src/lib.rs:622:41
[INFO] [stdout]   34:     0x563827431414 - std::sys::backtrace::__rust_begin_short_backtrace::hd68b5332434a22ca
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/backtrace.rs:152:18
[INFO] [stdout]   35:     0x563827434dba - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h264ddcc3098eacae
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   36:     0x563827434dba - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h9fa39489749d6f3c
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   37:     0x563827434dba - std::panicking::catch_unwind::do_call::hb9a1944b9f85100f
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:589:40
[INFO] [stdout]   38:     0x563827434dba - std::panicking::catch_unwind::h0c6f100786c0dad8
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panicking.rs:552:19
[INFO] [stdout]   39:     0x563827434dba - std::panic::catch_unwind::hf6084e2723385823
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x563827434dba - std::thread::Builder::spawn_unchecked_::{{closure}}::hf0af58ce658143ad
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   41:     0x563827434dba - core::ops::function::FnOnce::call_once{{vtable.shim}}::h88a14f9b2e79f9de
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5638274a48b7 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf31256ba38644b65
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   43:     0x5638274a48b7 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h100ad77f3448041b
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/alloc/src/boxed.rs:1971:9
[INFO] [stdout]   44:     0x5638274a48b7 - std::sys::pal::unix::thread::Thread::new::thread_start::h1a22ded422ce395b
[INFO] [stdout]                                at /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/std/src/sys/pal/unix/thread.rs:97:17
[INFO] [stdout]   45:     0x7e251e945aa4 - <unknown>
[INFO] [stdout]   46:     0x7e251e9d2a34 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     DP::test::longest_common_subsequence_test
[INFO] [stdout]     DP::test::longest_palindromic_substring_test
[INFO] [stdout]     binary_search::test::delete
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 27 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 57.41s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a29c6f4ec5db8dd113e0cdc3c495098c85fa6ae9eb551445a8cac9fe71022227", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a29c6f4ec5db8dd113e0cdc3c495098c85fa6ae9eb551445a8cac9fe71022227", kill_on_drop: false }`
[INFO] [stdout] a29c6f4ec5db8dd113e0cdc3c495098c85fa6ae9eb551445a8cac9fe71022227
