module type Foldable2 = sig .. end
sig
end
type 'a t
'a
val init : 'a t
'a t
val f : 'a t -> 'a -> 'a t
'a t -> 'a -> 'a t