public function unauthorized(array $challenges): self
    {
        if (count($challenges) === 0) {
            throw new \InvalidArgumentException('Challenges must contain at least one entry');
        }

        $this->headers->add('WWW-Authenticate', join(', ', $challenges));
        return $this->fixateCode(401);
    }