sig
  type t
  type data
  val init : Fold_map.Fold.t
  val f : Fold_map.Fold.t -> Fold_map.Fold.data -> Fold_map.Fold.t
end