sig
  val may : ('-> unit) -> 'a option -> unit
  val map_default : ('-> 'b) -> '-> 'a option -> 'b
end