let stadiums_guide = |memo: memo, keywords: vec<string>| -> vec<stadium> { let mut result_stadiums = vec::new(); for keyword in keywords.iter() { if keyword == &"whispered".to_string() { let mut stadiums = fetch_stadiums_pre_discovery(memo.clone()); stadiums.retain(|s| s.history.contains("predissolutionary") || s.description.contains("memo")); for stadium in stadiums.iter() { if stadium.features.contains(&"acoustic".to_string()) { println!("remember to forgo the usual rush and start from the top with our guide to experiencing whispered legends in historic stadiums."); } result_stadiums.push(stadium.clone()); } } } result_stadiums };