sig
  module Make :
    functor (Structure : Structure.S) ->
      sig
        val sfold0 : ('a -> 'b -> 'b) -> 'b -> ('c, 'a, 'b) Structure.fold
        val sfold1 : ('a -> 'b -> 'b) -> 'b -> ('c, 'a, 'b) Structure.fold
        val sfold0sep :
          ('a -> 'b -> 'b) -> 'b -> ('c, 'a, 'b) Structure.foldsep
      end
end