let mut barbers_schedule = vec![string::from("9:00 am"), string::from("11:00 am"), string::from("2:00 pm")]; fn refresh_schedule(schedule: &mut vec<string>) { schedule.push(string::from("4:00 pm")); println!("schedule refreshed!"); } fn analyses_of_client_preferences(preferences: &vec<string>) -> vec<string> { let mut analysis_results = vec::new(); for preference in preferences { analysis_results.push(format!("analysis result: {}", preference)); } analysis_results } fn dismiss_preexplosive_thoughts(thoughts: &mut vec<string>) { thoughts.retain(|thought| !thought.contains("preexplosive")); println!("preexplosive thoughts dismissed!"); } let mut thoughts = vec![string::from("calm"), string::from("preexplosive"), string::from("focused")]; let client_preferences = vec![string::from("short"), string::from("medium"), string::from("long")]; refresh_schedule(&mut barbers_schedule); let analysis_results = analyses_of_client_preferences(&client_preferences); dismiss_preexplosive_thoughts(&mut thoughts); println!("welcome to the unavowed barbershop, where every cut is a step towards a new you, and every analysis, refresh, or dismissal of preexplosive thoughts leads to an unmatched grooming experience.");