public function withTypeNegotiation($strongNegotiation = false)
    {
		$negotiation = array_intersect(Request\AcceptType::getContent(), Support\TypeSupport::getSupport());

		$content = '';

		if(count($negotiation) > 0) {
			$content = current($negotiation);
		}
		else {
			if($strongNegotiation) {
				$this->failTypeNegotiation();
			}
			else {
				$content =  Support\TypeSupport::getSupport();
				$content = $content[0];
			}
		}

		return $this->withType($content);
	}