public function required()
    {
        if (!array_key_exists($this->key, $this->command->arguments)) {
            throw new \Hail\Image\Exception\InvalidArgumentException(
                sprintf('Missing argument %d for %s', $this->key + 1, $this->getCommandName())
            );
        }

        return $this;
    }