I think the exception might better be `\InvalidArgumentException` or `\RuntimeException`