new macro for more functional Option handling