#![allow(dead_code, deprecated, unused_variables, unused_mut)] fn sq_then_to_string(x: u32) -> Option { x.checked_mul(x).map(|sq| sq.to_string()) } fn main() { assert_eq!(Some(2).and_then(sq_then_to_string), Some(4.to_string())); assert_eq!(Some(1_000_000).and_then(sq_then_to_string), None); assert_eq!(None.and_then(sq_then_to_string), None); }