sig
  type 'a t
  val label : ('BatReturn.t -> 'a) -> 'a
  val with_label : ('BatReturn.t -> 'a) -> 'a
  val return : 'BatReturn.t -> '-> 'b
end