private function constructNegotiationReporter() {
		switch ($_SESSION[self::SESSION][self::STATE]) {
			case self::NEGOTIATION_COMPLETE:
			case self::NEGOTIATION_FAILED: {
				$this->ready = true;
				$this->apiUrl = (isset($_SESSION[self::SESSION][self::API_URL]) ? $_SESSION[self::SESSION][self::API_URL] : null);
				$this->token = (isset($_SESSION[self::SESSION][self::TOKEN]) ? $_SESSION[self::SESSION][self::TOKEN] : null);
				$this->isApiToken = (isset($_SESSION[self::SESSION][self::IS_API_TOKEN]) ? $_SESSION[self::SESSION][self::IS_API_TOKEN] : false);
				$this->user = (isset($_SESSION[self::SESSION][self::USER]) ? $_SESSION[self::SESSION][self::USER] : null);
				$this->error = (isset($_SESSION[self::SESSION][self::ERROR]) ? $_SESSION[self::SESSION][self::ERROR] : null);
				unset($_SESSION[self::SESSION]);
				$_SESSION[self::SESSION][self::STATE] = $state;
				break;
			}
			default: {
				$this->ready = false;
			}
		}
	}