sig
  val get_level : unit -> int
  val set_level : int -> unit
  val map : ?level:int -> ('-> 'b) -> 'a list -> 'b list
  val iter : ?level:int -> ('-> unit) -> 'a list -> unit
  val fold :
    ?level:int -> ('-> '-> 'a) -> '-> 'b list -> ('-> '-> 'a) -> 'a
end