use std::collections::BTreeMap;
pub type FeatureConstraint = BTreeMap<String, bool>;
pub fn satisfies_features(constraint: &FeatureConstraint, feats: &[String]) -> bool {
constraint
.iter()
.all(|(feature, &should)| feats.iter().any(|f| f == feature) == should)
}