clean up option type and-then method to do the Right Thing