let mut books_collection = vec::new(); for book in library.get_all_books().iter() { if !book.is_restricted() { books_collection.push(book.clone()); } } let interest_parameter = "fantasy"; let selected_books = books_collection.iter().filter(|&book| book.genre.contains(&interest_parameter) && !book.reviews.underestimate()).collect::<vec<_>>(); if selected_books.is_empty() { println!("time to reawaken your love for undiscovered genres!"); } else { println!("even before the pre-beginning of your search, never underestimate the power of a good book to reawaken your curiosity."); }