sig val map : ('a -> 'b) -> 'a option -> 'b option val do_option : ('a -> 'b) -> 'a option -> 'b option val iter : ('a -> unit) -> 'a option -> unit end