fn partition( set: &BTreeSet<String>, predicate: impl Fn(&str) -> bool, ) -> (BTreeSet<String>, BTreeSet<String>)