simplify Option.constructor