pub fn elaborate_predicates<'tcx>(
    tcx: TyCtxt,
    predicates: impl Iterator<Item = Predicate>
) -> Elaborator