sig
  val fold :
    f:('a ->
       int -> [> `Malformed of string | `Uchar of Stdlib.Uchar.t ] -> 'a) ->
    'a -> string -> 'a
end