Content-language: cs
Content-type: text/html; charset=UTF-8
Body:----------cs--
<!--#set var="CONTENT_LANGUAGE" value="cs"
--><!--#set var="TITLE" value="Varianta má sama více variant!"
--><!--#include virtual="include/top.html" -->

    Varianta požadované entity má sama více variant. Přístup není možný.

<!--#include virtual="include/bottom.html" -->
----------cs--

Content-language: de
Content-type: text/html; charset=UTF-8
Body:----------de--
<!--#set var="CONTENT_LANGUAGE" value="de"
--><!--#set var="TITLE" value="Variante ebenfalls ver&auml;nderlich!"
--><!--#include virtual="include/top.html" -->

    Ein Zugriff auf das angeforderte Objekt bzw. einer
    Variante dieses Objektes ist nicht m&ouml;glich, da es ebenfalls
    ein variables Objekt darstellt.

<!--#include virtual="include/bottom.html" -->
----------de--

Content-language: en
Content-type: text/html; charset=UTF-8
Body:----------en--
<!--#set var="TITLE" value="Variant also varies!"
--><!--#include virtual="include/top.html" -->

    A variant for the requested entity
    is itself a negotiable resource.
    Access not possible.

<!--#include virtual="include/bottom.html" -->
----------en--

Content-language: es
Content-type: text/html
Body:----------es--
<!--#set var="TITLE" value="La variante tambi&eacute;n varia!" -->
<!--#include virtual="include/top.html" -->

   Una variante de la entidad solicitada es por si misma
   un recurso negociable.
   No es posible tener acceso a la entidad.

<!--#include virtual="include/bottom.html" -->
----------es--

Content-language: fr
Content-type: text/html; charset=UTF-8
Body:----------fr--
<!--#set var="CONTENT_LANGUAGE" value="fr"
--><!--#set var="TITLE" value="La variante varie elle-m&ecirc;me!"
--><!--#include virtual="include/top.html" -->

    Une variante pour l'entit&eacute; demand&eacute;e
    est elle-m&ecirc;me une ressource n&eacute;gociable.
    L'acc&egrave;s est impossible.

<!--#include virtual="include/bottom.html" -->  
----------fr--

Content-language: ga
Content-type: text/html; charset=UTF-8
Body:----------ga--
<!--#set var="TITLE" value="Athraitheach intr&aacute;chta!"
--><!--#include virtual="include/top.html" -->

    Is &eacute; ceann de na athraitha&iacute; 
    don aon&aacute;n iarraithe acmhainn 
    intr&aacute;chta f&eacute;in.
    Rochtain dodh&eacute;anta.

<!--#include virtual="include/bottom.html" -->
----------ga--

Content-language: it
Content-type: text/html; charset=UTF-8
Body:----------it--
<!--#set var="CONTENT_LANGUAGE" value="it"
--><!--#set var="TITLE" value="La versione variante varia essa stessa!"
--><!--#include virtual="include/top.html" -->

    Non &egrave; possibile accedere all'entit&agrave;
    richiesta perch&eacute; &egrave; essa stessa
    una risorsa negoziabile.

<!--#include virtual="include/bottom.html" -->
----------it--

Content-language: ja
Content-type: text/html; charset=UTF-8
Body:----------ja--
<!--#set var="CONTENT_LANGUAGE" value="ja"
--><!--#set var="TITLE" value="Variant also varies!"
--><!--#include virtual="include/top.html" -->

    リクエストされたものの variant
    はそれ自体もまた、ネゴシエーション可能なリソースです。
    アクセスできませんでした。

<!--#include virtual="include/bottom.html" -->
----------ja--

Content-language: ko
Content-type: text/html; charset=UTF-8
Body:----------ko--
<!--#set var="CONTENT_LANGUAGE" value="ko"
--><!--#set var="TITLE" value="형태를 결정할 수 없음!"
--><!--#include virtual="include/top.html" -->

    요청한 객체의 형태 또한 여러 형태를 가지고 있어서
    접근이 불가능합니다.

<!--#include virtual="include/bottom.html" -->
----------ko--

Content-language: nl
Content-type: text/html; charset=UTF-8
Body:----------nl--
<!--#set var="CONTENT_LANGUAGE" value="nl"
--><!--#set var="TITLE" value="Variant varieert ook!"
--><!--#include virtual="include/top.html" -->

    Een variant van het gevraagde object
    is op zich ook een te onderhandelen variant.
    Toegang is niet mogelijk.

<!--#include virtual="include/bottom.html" -->
----------nl--

Content-language: nb
Content-type: text/html; charset=UTF-8
Body:----------nb--
<!--#set var="CONTENT_LANGUAGE" value="nb"
--><!--#set var="TITLE" value="Variant varierer også!"
--><!--#include virtual="include/top.html" -->

    En variant av den forespurte enheten er i seg selv en forhandelbar
    ressurs. Tilgang ikke mulig.

<!--#include virtual="include/bottom.html" -->
----------nb--

Content-language: pl
Content-type: text/html; charset=UTF-8
Body:----------pl--
<!--#set var="CONTENT_LANGUAGE" value="pl"
--><!--#set var="TITLE" value="Wariant jest wariantowy!"
--><!--#include virtual="include/top.html" -->

    Wariant &#380;&#261;danego zasobu jest r&#243;wnie&#380; zasobem negocjowalnym.
    Dost&#281;p jest niemo&#380;liwy.

<!--#include virtual="include/bottom.html" -->
----------pl--

Content-language: pt-br
Content-type: text/html; charset=UTF-8
Body:-------pt-br--
<!--#set var="CONTENT_LANGUAGE" value="pt-br"
--><!--#set var="TITLE" value="Variante auto-negoci&aacute;vel!"
--><!--#include virtual="include/top.html" -->

    Uma variante da entidade de requisi&ccedil;&atilde;o
	&eacute; por si mesma um recurso negoci&aacute;vel.
    Acesso n&atilde;o &eacute; poss&iacute;vel.

<!--#include virtual="include/bottom.html" -->
-------pt-br--

Content-language: pt
Content-type: text/html; charset=ISO-8859-1
Body:----------pt--
<!--#set var="TITLE" value="Variante tamb&eacute;m varia!"
--><!--#include virtual="include/top.html" -->

	A variante relativa &agrave; entidade pedida &eacute; ela mesma
	um recurso negoci&aacute;vel. N&atilde;o &eacute; poss&iacute;vel
	ter acesso.

<!--#include virtual="include/bottom.html" -->
----------pt--

Content-language: ro
Content-type: text/html; charset=UTF-8
Body:----------ro--
<!--#set var="CONTENT_LANGUAGE" value="ro"
--><!--#set var="TITLE" value="Varianta deasemenea variaza!"
--><!--#include virtual="include/top.html" -->

    O varianta pentru entitatea ceruta
    este ea insasi o resursa negociabila.
    Accesul nu este posibil.

<!--#include virtual="include/bottom.html" -->
----------ro--

Content-language: sr
Content-type: text/html; charset=UTF-8
Body:----------sr--
<!--#set var="CONTENT_LANGUAGE" value="sr"
--><!--#set var="TITLE" value="Варијанта такође варира!"
--><!--#include virtual="include/top.html" -->

    Варијанта захтеваног ентитета
    је и сама ресурс који постоји у више варијанти.
    Приступ није могућ.

<!--#include virtual="include/bottom.html" -->
----------sr--

Content-language: sv
Content-type: text/html; charset=UTF-8
Body:----------sv--
<!--#set var="CONTENT_LANGUAGE" value="sv"
--><!--#set var="TITLE" value="Variant also varies!"
--><!--#include virtual="include/top.html" -->

    En variant av den f&ouml;rfr&aring;gade enheten &auml;r i
    sig sj&auml;lv en giltig resurs. &Aring;tkomst &auml;r inte
    m&ouml;jlig.

<!--#include virtual="include/bottom.html" -->
----------sv--

Content-language: tr
Content-type: text/html; charset=UTF-8
Body:----------tr--
<!--#set var="CONTENT_LANGUAGE" value="tr"
--><!--#set var="TITLE" value="Gösterim çeşitleri de çeşitli!"
--><!--#include virtual="include/top.html" -->

    İstenen gösterim çeşidinin kendisi zaten kendi içinde uzlaşımlı.
    Erişim mümkün değil.

<!--#include virtual="include/bottom.html" -->
----------tr--
