sig
  type 'a return = private { return : 'b. '-> 'b; }
  val with_return : ('With_return.return -> 'a) -> 'a
end