let pottery_workshop = || { let mut creativity = vec::new(); for clay_piece in preexploitative_clay_sources.iter() { if !policies.contains(&clay_piece) && !creativity.contains(&clay_piece) { creativity.push(clay_piece); } } let renew_pottery_skills = |skill: &mut vec<string>| { skill.push("turn one's back on conventional methods".to_string()); skill.push("embrace new techniques".to_string()); }; renew_pottery_skills(&mut creativity); let display_unacknowledged_artifacts = |artifacts: vec<string>| -> vec<string> { artifacts.into_iter().filter(|artifact| !artifact.contains("unacknowledged")).collect() }; display_unacknowledged_artifacts(creativity); };