Nov 09 16:38:15.763 INFO checking ammongit/markov-music against master#653da4fd006c97625247acd7e076d0782cdc149b for pr-55632 Nov 09 16:38:15.764 INFO running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-55632/worker-4/master#653da4fd006c97625247acd7e076d0782cdc149b:/target:rw,Z" "-v" "/mnt/big/crater/work/local/test-source/worker-4/pr-55632/master#653da4fd006c97625247acd7e076d0782cdc149b:/source:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/source" "-e" "USER_ID=1000" "-e" "CMD=cargo +653da4fd006c97625247acd7e076d0782cdc149b-alt check --frozen --all --all-targets" "-e" "CARGO_TARGET_DIR=/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/cargo-home" "-e" "RUSTUP_HOME=/rustup-home" "-m" "1536M" "--network" "none" "crater"` Nov 09 16:38:15.938 INFO blam! 5d7a6f62c47b0cca5d2e9e952c67a6daabf17c2fdf761c396a982833ad93d023 Nov 09 16:38:15.940 INFO running `"docker" "start" "-a" "5d7a6f62c47b0cca5d2e9e952c67a6daabf17c2fdf761c396a982833ad93d023"` Nov 09 16:38:16.457 INFO kablam! usermod: no changes Nov 09 16:38:16.635 INFO kablam! Compiling libsqlite3-sys v0.9.1 Nov 09 16:38:16.643 INFO kablam! Checking term_size v0.3.0 Nov 09 16:38:16.643 INFO kablam! Checking atty v0.2.2 Nov 09 16:38:16.644 INFO kablam! Checking thread-id v3.2.0 Nov 09 16:38:16.644 INFO kablam! Checking mpd v0.0.12 Nov 09 16:38:16.644 INFO kablam! Compiling serde_derive_internals v0.19.0 Nov 09 16:38:16.644 INFO kablam! Compiling diesel_derives v1.1.0 Nov 09 16:38:18.754 INFO kablam! Checking simple-logging v2.0.1 Nov 09 16:38:19.105 INFO kablam! Checking textwrap v0.7.0 Nov 09 16:38:21.616 INFO kablam! Checking clap v2.26.0 Nov 09 16:38:24.207 INFO kablam! Compiling serde_derive v1.0.27 Nov 09 16:38:29.154 INFO kablam! Checking diesel v1.1.1 Nov 09 16:38:35.975 INFO kablam! Checking serde v1.0.11 Nov 09 16:38:46.309 INFO kablam! Checking toml v0.4.4 Nov 09 16:38:50.079 INFO kablam! Checking markov-music v0.1.0 (/source) Nov 09 16:38:51.719 INFO kablam! warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. Nov 09 16:38:51.719 INFO kablam! --> src/utils.rs:25:40 Nov 09 16:38:51.719 INFO kablam! | Nov 09 16:38:51.719 INFO kablam! 25 | pub static ref HOME_DIR: PathBuf = env::home_dir().expect("Unable to get home directory"); Nov 09 16:38:51.719 INFO kablam! | ^^^^^^^^^^^^^ Nov 09 16:38:51.719 INFO kablam! | Nov 09 16:38:51.719 INFO kablam! = note: #[warn(deprecated)] on by default Nov 09 16:38:51.719 INFO kablam! Nov 09 16:38:51.939 INFO kablam! warning: use of deprecated item 'std::env::home_dir': This function's behavior is unexpected and probably not what you want. Consider using the home_dir function from https://crates.io/crates/dirs instead. Nov 09 16:38:51.939 INFO kablam! --> src/utils.rs:25:40 Nov 09 16:38:51.939 INFO kablam! | Nov 09 16:38:51.939 INFO kablam! 25 | pub static ref HOME_DIR: PathBuf = env::home_dir().expect("Unable to get home directory"); Nov 09 16:38:51.939 INFO kablam! | ^^^^^^^^^^^^^ Nov 09 16:38:51.939 INFO kablam! | Nov 09 16:38:51.939 INFO kablam! = note: #[warn(deprecated)] on by default Nov 09 16:38:51.939 INFO kablam! Nov 09 16:38:52.291 INFO kablam! warning: function is never used: `random_key` Nov 09 16:38:52.291 INFO kablam! --> src/choose.rs:29:1 Nov 09 16:38:52.291 INFO kablam! | Nov 09 16:38:52.291 INFO kablam! 29 | pub fn random_key<'a, K: Eq + Hash, V>(map: &'a HashMap, rng: &mut Rng) -> Option<&'a K> { Nov 09 16:38:52.291 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.291 INFO kablam! | Nov 09 16:38:52.291 INFO kablam! = note: #[warn(dead_code)] on by default Nov 09 16:38:52.291 INFO kablam! Nov 09 16:38:52.291 INFO kablam! warning: function is never used: `roulette_wheel` Nov 09 16:38:52.291 INFO kablam! --> src/choose.rs:34:1 Nov 09 16:38:52.291 INFO kablam! | Nov 09 16:38:52.291 INFO kablam! 34 | pub fn roulette_wheel<'a, K: Eq + Hash>(map: &'a HashMap, rng: &mut Rng) -> Option<&'a K> { Nov 09 16:38:52.291 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.291 INFO kablam! Nov 09 16:38:52.291 INFO kablam! warning: method is never used: `modify_weight` Nov 09 16:38:52.291 INFO kablam! --> src/markov.rs:47:5 Nov 09 16:38:52.291 INFO kablam! | Nov 09 16:38:52.291 INFO kablam! 47 | pub fn modify_weight(&mut self, prev: T, next: T, diff: f32) { Nov 09 16:38:52.291 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.291 INFO kablam! Nov 09 16:38:52.291 INFO kablam! warning: method is never used: `clear` Nov 09 16:38:52.291 INFO kablam! --> src/markov.rs:55:5 Nov 09 16:38:52.291 INFO kablam! | Nov 09 16:38:52.291 INFO kablam! 55 | / pub fn clear(&mut self, item: &U) Nov 09 16:38:52.291 INFO kablam! 56 | | where U: Borrow, Nov 09 16:38:52.291 INFO kablam! 57 | | U: ?Sized, Nov 09 16:38:52.291 INFO kablam! 58 | | { Nov 09 16:38:52.291 INFO kablam! ... | Nov 09 16:38:52.291 INFO kablam! 61 | | } Nov 09 16:38:52.291 INFO kablam! 62 | | } Nov 09 16:38:52.291 INFO kablam! | |_____^ Nov 09 16:38:52.291 INFO kablam! Nov 09 16:38:52.291 INFO kablam! warning: method is never used: `start` Nov 09 16:38:52.291 INFO kablam! --> src/markov.rs:64:5 Nov 09 16:38:52.291 INFO kablam! | Nov 09 16:38:52.291 INFO kablam! 64 | pub fn start(&self, rng: &mut Rng) -> Option<&T> { Nov 09 16:38:52.291 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.291 INFO kablam! Nov 09 16:38:52.291 INFO kablam! warning: method is never used: `next` Nov 09 16:38:52.291 INFO kablam! --> src/markov.rs:68:5 Nov 09 16:38:52.291 INFO kablam! | Nov 09 16:38:52.291 INFO kablam! 68 | / pub fn next(&self, current: &U, rng: &mut Rng) -> Option<&T> Nov 09 16:38:52.291 INFO kablam! 69 | | where U: Borrow, Nov 09 16:38:52.291 INFO kablam! 70 | | U: ?Sized, Nov 09 16:38:52.291 INFO kablam! 71 | | { Nov 09 16:38:52.291 INFO kablam! ... | Nov 09 16:38:52.291 INFO kablam! 75 | | } Nov 09 16:38:52.291 INFO kablam! 76 | | } Nov 09 16:38:52.291 INFO kablam! | |_____^ Nov 09 16:38:52.291 INFO kablam! Nov 09 16:38:52.291 INFO kablam! warning: method is never used: `possible_next` Nov 09 16:38:52.291 INFO kablam! --> src/markov.rs:78:5 Nov 09 16:38:52.291 INFO kablam! | Nov 09 16:38:52.291 INFO kablam! 78 | / pub fn possible_next(&self, current: &U) -> Option<&HashMap> Nov 09 16:38:52.291 INFO kablam! 79 | | where U: Borrow, Nov 09 16:38:52.291 INFO kablam! 80 | | U: ?Sized, Nov 09 16:38:52.291 INFO kablam! 81 | | { Nov 09 16:38:52.291 INFO kablam! 82 | | self.assocs.get(current.borrow()) Nov 09 16:38:52.291 INFO kablam! 83 | | } Nov 09 16:38:52.291 INFO kablam! | |_____^ Nov 09 16:38:52.291 INFO kablam! Nov 09 16:38:52.291 INFO kablam! warning: function is never used: `split_cmd` Nov 09 16:38:52.291 INFO kablam! --> src/socket.rs:28:1 Nov 09 16:38:52.291 INFO kablam! | Nov 09 16:38:52.291 INFO kablam! 28 | fn split_cmd(command: &mut str) -> (&mut str, &mut str) { Nov 09 16:38:52.291 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.291 INFO kablam! Nov 09 16:38:52.291 INFO kablam! warning: struct is never constructed: `SocketServer` Nov 09 16:38:52.291 INFO kablam! --> src/socket.rs:36:1 Nov 09 16:38:52.292 INFO kablam! | Nov 09 16:38:52.292 INFO kablam! 36 | pub struct SocketServer { Nov 09 16:38:52.292 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.292 INFO kablam! Nov 09 16:38:52.292 INFO kablam! warning: method is never used: `bind` Nov 09 16:38:52.292 INFO kablam! --> src/socket.rs:41:5 Nov 09 16:38:52.292 INFO kablam! | Nov 09 16:38:52.292 INFO kablam! 41 | pub fn bind(config: &DaemonConfig) -> Result { Nov 09 16:38:52.292 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.292 INFO kablam! Nov 09 16:38:52.292 INFO kablam! warning: method is never used: `wait` Nov 09 16:38:52.292 INFO kablam! --> src/socket.rs:47:5 Nov 09 16:38:52.292 INFO kablam! | Nov 09 16:38:52.292 INFO kablam! 47 | pub fn wait(&self) -> Result<()> { Nov 09 16:38:52.292 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.292 INFO kablam! Nov 09 16:38:52.292 INFO kablam! warning: method is never used: `respond` Nov 09 16:38:52.292 INFO kablam! --> src/socket.rs:58:5 Nov 09 16:38:52.292 INFO kablam! | Nov 09 16:38:52.292 INFO kablam! 58 | fn respond(&self, command: &mut str) -> Result<&'static str> { Nov 09 16:38:52.292 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.292 INFO kablam! Nov 09 16:38:52.292 INFO kablam! warning: method is never used: `set_recommend` Nov 09 16:38:52.292 INFO kablam! --> src/socket.rs:72:5 Nov 09 16:38:52.292 INFO kablam! | Nov 09 16:38:52.292 INFO kablam! 72 | fn set_recommend(&self, arg: &mut str) -> &'static str { Nov 09 16:38:52.292 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.292 INFO kablam! Nov 09 16:38:52.292 INFO kablam! warning: function is never used: `empty_mut_str` Nov 09 16:38:52.292 INFO kablam! --> src/utils.rs:29:1 Nov 09 16:38:52.292 INFO kablam! | Nov 09 16:38:52.292 INFO kablam! 29 | pub fn empty_mut_str() -> &'static mut str { Nov 09 16:38:52.292 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.292 INFO kablam! Nov 09 16:38:52.292 INFO kablam! warning: function is never used: `sigmoid` Nov 09 16:38:52.292 INFO kablam! --> src/utils.rs:34:1 Nov 09 16:38:52.292 INFO kablam! | Nov 09 16:38:52.292 INFO kablam! 34 | pub fn sigmoid(n: f32) -> f32 { Nov 09 16:38:52.292 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.292 INFO kablam! Nov 09 16:38:52.475 INFO kablam! warning: function is never used: `random_key` Nov 09 16:38:52.475 INFO kablam! --> src/choose.rs:29:1 Nov 09 16:38:52.475 INFO kablam! | Nov 09 16:38:52.475 INFO kablam! 29 | pub fn random_key<'a, K: Eq + Hash, V>(map: &'a HashMap, rng: &mut Rng) -> Option<&'a K> { Nov 09 16:38:52.475 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.475 INFO kablam! | Nov 09 16:38:52.475 INFO kablam! = note: #[warn(dead_code)] on by default Nov 09 16:38:52.475 INFO kablam! Nov 09 16:38:52.475 INFO kablam! warning: function is never used: `roulette_wheel` Nov 09 16:38:52.475 INFO kablam! --> src/choose.rs:34:1 Nov 09 16:38:52.475 INFO kablam! | Nov 09 16:38:52.475 INFO kablam! 34 | pub fn roulette_wheel<'a, K: Eq + Hash>(map: &'a HashMap, rng: &mut Rng) -> Option<&'a K> { Nov 09 16:38:52.475 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.475 INFO kablam! Nov 09 16:38:52.475 INFO kablam! warning: method is never used: `modify_weight` Nov 09 16:38:52.476 INFO kablam! --> src/markov.rs:47:5 Nov 09 16:38:52.476 INFO kablam! | Nov 09 16:38:52.476 INFO kablam! 47 | pub fn modify_weight(&mut self, prev: T, next: T, diff: f32) { Nov 09 16:38:52.476 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.476 INFO kablam! Nov 09 16:38:52.476 INFO kablam! warning: method is never used: `clear` Nov 09 16:38:52.476 INFO kablam! --> src/markov.rs:55:5 Nov 09 16:38:52.476 INFO kablam! | Nov 09 16:38:52.476 INFO kablam! 55 | / pub fn clear(&mut self, item: &U) Nov 09 16:38:52.476 INFO kablam! 56 | | where U: Borrow, Nov 09 16:38:52.476 INFO kablam! 57 | | U: ?Sized, Nov 09 16:38:52.476 INFO kablam! 58 | | { Nov 09 16:38:52.476 INFO kablam! ... | Nov 09 16:38:52.476 INFO kablam! 61 | | } Nov 09 16:38:52.476 INFO kablam! 62 | | } Nov 09 16:38:52.476 INFO kablam! | |_____^ Nov 09 16:38:52.476 INFO kablam! Nov 09 16:38:52.476 INFO kablam! warning: method is never used: `start` Nov 09 16:38:52.476 INFO kablam! --> src/markov.rs:64:5 Nov 09 16:38:52.476 INFO kablam! | Nov 09 16:38:52.476 INFO kablam! 64 | pub fn start(&self, rng: &mut Rng) -> Option<&T> { Nov 09 16:38:52.476 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.477 INFO kablam! Nov 09 16:38:52.477 INFO kablam! warning: method is never used: `next` Nov 09 16:38:52.477 INFO kablam! --> src/markov.rs:68:5 Nov 09 16:38:52.477 INFO kablam! | Nov 09 16:38:52.477 INFO kablam! 68 | / pub fn next(&self, current: &U, rng: &mut Rng) -> Option<&T> Nov 09 16:38:52.477 INFO kablam! 69 | | where U: Borrow, Nov 09 16:38:52.477 INFO kablam! 70 | | U: ?Sized, Nov 09 16:38:52.477 INFO kablam! 71 | | { Nov 09 16:38:52.477 INFO kablam! ... | Nov 09 16:38:52.477 INFO kablam! 75 | | } Nov 09 16:38:52.477 INFO kablam! 76 | | } Nov 09 16:38:52.477 INFO kablam! | |_____^ Nov 09 16:38:52.477 INFO kablam! Nov 09 16:38:52.477 INFO kablam! warning: method is never used: `possible_next` Nov 09 16:38:52.477 INFO kablam! --> src/markov.rs:78:5 Nov 09 16:38:52.477 INFO kablam! | Nov 09 16:38:52.477 INFO kablam! 78 | / pub fn possible_next(&self, current: &U) -> Option<&HashMap> Nov 09 16:38:52.477 INFO kablam! 79 | | where U: Borrow, Nov 09 16:38:52.477 INFO kablam! 80 | | U: ?Sized, Nov 09 16:38:52.477 INFO kablam! 81 | | { Nov 09 16:38:52.477 INFO kablam! 82 | | self.assocs.get(current.borrow()) Nov 09 16:38:52.478 INFO kablam! 83 | | } Nov 09 16:38:52.478 INFO kablam! | |_____^ Nov 09 16:38:52.478 INFO kablam! Nov 09 16:38:52.478 INFO kablam! warning: function is never used: `split_cmd` Nov 09 16:38:52.478 INFO kablam! --> src/socket.rs:28:1 Nov 09 16:38:52.478 INFO kablam! | Nov 09 16:38:52.478 INFO kablam! 28 | fn split_cmd(command: &mut str) -> (&mut str, &mut str) { Nov 09 16:38:52.478 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.478 INFO kablam! Nov 09 16:38:52.478 INFO kablam! warning: struct is never constructed: `SocketServer` Nov 09 16:38:52.478 INFO kablam! --> src/socket.rs:36:1 Nov 09 16:38:52.478 INFO kablam! | Nov 09 16:38:52.478 INFO kablam! 36 | pub struct SocketServer { Nov 09 16:38:52.478 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.478 INFO kablam! Nov 09 16:38:52.478 INFO kablam! warning: method is never used: `bind` Nov 09 16:38:52.478 INFO kablam! --> src/socket.rs:41:5 Nov 09 16:38:52.478 INFO kablam! | Nov 09 16:38:52.478 INFO kablam! 41 | pub fn bind(config: &DaemonConfig) -> Result { Nov 09 16:38:52.478 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.478 INFO kablam! Nov 09 16:38:52.478 INFO kablam! warning: method is never used: `wait` Nov 09 16:38:52.479 INFO kablam! --> src/socket.rs:47:5 Nov 09 16:38:52.479 INFO kablam! | Nov 09 16:38:52.479 INFO kablam! 47 | pub fn wait(&self) -> Result<()> { Nov 09 16:38:52.479 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.479 INFO kablam! Nov 09 16:38:52.479 INFO kablam! warning: method is never used: `respond` Nov 09 16:38:52.479 INFO kablam! --> src/socket.rs:58:5 Nov 09 16:38:52.479 INFO kablam! | Nov 09 16:38:52.479 INFO kablam! 58 | fn respond(&self, command: &mut str) -> Result<&'static str> { Nov 09 16:38:52.479 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.479 INFO kablam! Nov 09 16:38:52.479 INFO kablam! warning: method is never used: `set_recommend` Nov 09 16:38:52.479 INFO kablam! --> src/socket.rs:72:5 Nov 09 16:38:52.479 INFO kablam! | Nov 09 16:38:52.479 INFO kablam! 72 | fn set_recommend(&self, arg: &mut str) -> &'static str { Nov 09 16:38:52.479 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.479 INFO kablam! Nov 09 16:38:52.479 INFO kablam! warning: function is never used: `empty_mut_str` Nov 09 16:38:52.479 INFO kablam! --> src/utils.rs:29:1 Nov 09 16:38:52.479 INFO kablam! | Nov 09 16:38:52.479 INFO kablam! 29 | pub fn empty_mut_str() -> &'static mut str { Nov 09 16:38:52.479 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.479 INFO kablam! Nov 09 16:38:52.480 INFO kablam! warning: function is never used: `sigmoid` Nov 09 16:38:52.480 INFO kablam! --> src/utils.rs:34:1 Nov 09 16:38:52.480 INFO kablam! | Nov 09 16:38:52.480 INFO kablam! 34 | pub fn sigmoid(n: f32) -> f32 { Nov 09 16:38:52.480 INFO kablam! | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 09 16:38:52.480 INFO kablam! Nov 09 16:38:52.505 INFO kablam! Finished dev [unoptimized + debuginfo] target(s) in 36.01s Nov 09 16:38:52.514 INFO kablam! su: No module specific data is present Nov 09 16:38:52.855 INFO running `"docker" "rm" "-f" "5d7a6f62c47b0cca5d2e9e952c67a6daabf17c2fdf761c396a982833ad93d023"` Nov 09 16:38:52.934 INFO blam! 5d7a6f62c47b0cca5d2e9e952c67a6daabf17c2fdf761c396a982833ad93d023