{"ast_node_type":"function","tokens":[{"end":67,"kind":"keyword","start":0,"text":"fn"}]}
    fn fold_predicate(&mut self, p: I::Predicate) -> I::Predicate {
        if p.flags().intersects(NEEDS_CANONICAL) { p.super_fold_with(self) } else { p }