you know how you check for both `val.pattern` and `val.format`? we can just make `format` the option, not `pattern`. that way we don't have to check for both parameters.