optional handling of opts