drop the checkOptionalArgument method, it was buggy.