<%
  // default values
  content.brand='/brand.html';
  content.topnav='/topnav.html';
  content.leftnav=null;
  content.rightnav=null;

// As long as we have no translation for a specific language, we will use the general English text to keep the website updates as low as possible for new releases.
// Therefore some of the following languages are commented out and in the next line the general "brand.html" will be used.

  def brand = [:]
	brand["/"] = "/brand.html"
//	brand["/af/"] = "/af/brand.html"
	brand["/af/"] = "/brand.html"
//	brand["/am/"] = "/am/brand.html"
	brand["/am/"] = "/brand.html"
//	brand["/ar/"] = "/ar/brand.html"
	brand["/ar/"] = "/brand.html"
	brand["/ast/"] = "/ast/brand.html"
//	brand["/bg/"] = "/bg/brand.html"
	brand["/bg/"] = "/brand.html"
//	brand["/ca/"] = "/ca/brand.html"
	brand["/ca/"] = "/brand.html"
	brand["/cs/"] = "/cs/brand.html"
	brand["/da/"] = "/da/brand.html"
	brand["/de/"] = "/de/brand.html"
	brand["/el/"] = "/el/brand.html"
	brand["/es/"] = "/es/brand.html"
	brand["/et/"] = "/et/brand.html"
	brand["/eu/"] = "/eu/brand.html"
	brand["/fi/"] = "/fi/brand.html"
	brand["/fr/"] = "/fr/brand.html"
//	brand["/gd/"] = "/gd/brand.html"
	brand["/gd/"] = "/brand.html"
//	brand["/gl/"] = "/gl/brand.html"
	brand["/gl/"] = "/brand.html"
	brand["/he/"] = "/he/brand.html"
	brand["/hi/"] = "/hi/brand.html"
	brand["/hu/"] = "/hu/brand.html"
	brand["/hy/"] = "/hy/brand.html"
//	brand["/is/"] = "/is/brand.html"
	brand["/is/"] = "/brand.html"
	brand["/it/"] = "/it/brand.html"
//	brand["/ja/"] = "/ja/brand.html"
	brand["/ja/"] = "/brand.html"
//	brand["/kab/"] = "/kab/brand.html"
	brand["/kab/"] = "/brand.html"
//	brand["/km/"] = "/km/brand.html"
	brand["/km/"] = "/brand.html"
	brand["/ko/"] = "/ko/brand.html"
	brand["/lt/"] = "/lt/brand.html"
	brand["/nl/"] = "/nl/brand.html"
	brand["/no/"] = "/no/brand.html"
//	brand["/om/"] = "/om/brand.html"
	brand["/om/"] = "/brand.html"
	brand["/pl/"] = "/pl/brand.html"
	brand["/pt-br/"] = "/pt-br/brand.html"
	brand["/pt/"] = "/pt/brand.html"
	brand["/ro/"] = "/ro/brand.html"
//	brand["/ru/"] = "/ru/brand.html"
	brand["/ru/"] = "/brand.html"
	brand["/sk/"] = "/sk/brand.html"
//	brand["/sl/"] = "/sl/brand.html"
	brand["/sl/"] = "/brand.html"
	brand["/sr-cyrl/"] = "/sr-cyrl/brand.html"
	brand["/sr-latn/"] = "/sr-latn/brand.html"
//	brand["/sr/"] = "/sr/brand.html"
	brand["/sr/"] = "/brand.html"
	brand["/sv/"] = "/sv/brand.html"
//	brand["/ta/"] = "/ta/brand.html"
	brand["/ta/"] = "/brand.html"
//	brand["/th/"] = "/th/brand.html"
	brand["/th/"] = "/brand.html"
	brand["/tr/"] = "/tr/brand.html"
//	brand["/uk/"] = "/uk/brand.html"
	brand["/uk/"] = "/brand.html"
//	brand["/vi/"] = "/vi/brand.html"
	brand["/vi/"] = "/brand.html"
	brand["/xx/"] = "/xx/brand.html"
	brand["/zh-cn/"] = "/zh-cn/brand.html"
	brand["/zh-tw/"] = "/zh-tw/brand.html"
	brand["/zh/"] = "/zh/brand.html"

// As long as we have no translation for a specific language, we will use the general English text to keep the website updates as low as possible for new releases.
// Therefore some of the following languages are commented out and in the next line the general "brand.html" will be used.

  def topnav = [:]
	topnav["/"] = "/topnav.html"
//	topnav["/af/"] = "/af/topnav.html"
	topnav["/af/"] = "/topnav.html"
//	topnav["/am/"] = "/am/topnav.html"
	topnav["/am/"] = "/topnav.html"
//	topnav["/ar/"] = "/ar/topnav.html"
	topnav["/ar/"] = "/topnav.html"
	topnav["/ast/"] = "/ast/topnav.html"
//	topnav["/bg/"] = "/bg/topnav.html"
	topnav["/bg/"] = "/topnav.html"
//	topnav["/ca/"] = "/ca/topnav.html"
	topnav["/ca/"] = "/topnav.html"
	topnav["/cs/"] = "/cs/topnav.html"
	topnav["/da/"] = "/da/topnav.html"
	topnav["/de/"] = "/de/topnav.html"
	topnav["/el/"] = "/el/topnav.html"
	topnav["/es/"] = "/es/topnav.html"
	topnav["/et/"] = "/et/topnav.html"
	topnav["/eu/"] = "/eu/topnav.html"
	topnav["/fi/"] = "/fi/topnav.html"
	topnav["/fr/"] = "/fr/topnav.html"
//	topnav["/gd/"] = "/gd/topnav.html"
	topnav["/gd/"] = "/topnav.html"
//	topnav["/gl/"] = "/gl/topnav.html"
	topnav["/gl/"] = "/topnav.html"
	topnav["/he/"] = "/he/topnav.html"
	topnav["/hi/"] = "/hi/topnav.html"
	topnav["/hu/"] = "/hu/topnav.html"
	topnav["/hy/"] = "/hy/topnav.html"
//	topnav["/is/"] = "/is/topnav.html"
	topnav["/is/"] = "/topnav.html"
	topnav["/it/"] = "/it/topnav.html"
//	topnav["/ja/"] = "/ja/topnav.html"
	topnav["/ja/"] = "/topnav.html"
//	topnav["/kab/"] = "/kab/topnav.html"
	topnav["/kab/"] = "/topnav.html"
//	topnav["/km/"] = "/km/topnav.html"
	topnav["/km/"] = "/topnav.html"
	topnav["/ko/"] = "/ko/topnav.html"
	topnav["/l10n/"] = "/l10n/topnav.html"
	topnav["/lt/"] = "/lt/topnav.html"
	topnav["/nl/"] = "/nl/topnav.html"
	topnav["/no/"] = "/no/topnav.html"
//	topnav["/om/"] = "/om/topnav.html"
	topnav["/om/"] = "/topnav.html"
	topnav["/pl/"] = "/pl/topnav.html"
	topnav["/pt-br/"] = "/pt-br/topnav.html"
	topnav["/pt/"] = "/pt/topnav.html"
	topnav["/ro/"] = "/ro/topnav.html"
//	topnav["/ru/"] = "/ru/topnav.html"
	topnav["/ru/"] = "/topnav.html"
	topnav["/sk/"] = "/sk/topnav.html"
//	topnav["/sl/"] = "/sl/topnav.html"
	topnav["/sl/"] = "/topnav.html"
	topnav["/sr-cyrl/"] = "/sr-cyrl/topnav.html"
	topnav["/sr-latn/"] = "/sr-latn/topnav.html"
//	topnav["/sr/"] = "/sr/topnav.html"
	topnav["/sr/"] = "/topnav.html"
	topnav["/sv/"] = "/sv/topnav.html"
//	topnav["/ta/"] = "/ta/topnav.html"
	topnav["/ta/"] = "/topnav.html"
//	topnav["/th/"] = "/th/topnav.html"
	topnav["/th/"] = "/topnav.html"
	topnav["/tr/"] = "/tr/topnav.html"
//	topnav["/uk/"] = "/uk/topnav.html"
	topnav["/uk/"] = "/topnav.html"
	topnav["/vi/"] = "/vi/topnav.html"
	topnav["/xx/"] = "/xx/topnav.html"
	topnav["/zh-cn/"] = "/zh-cn/topnav.html"
	topnav["/zh-tw/"] = "/zh-tw/topnav.html"
	topnav["/zh/"] = "/zh/topnav.html"

  def leftnav = [:]
	leftnav["/api/"] = "/api/leftnav.html"
	leftnav["/da/product/"] = "/da/product/leftnav.html"
	leftnav["/da/why/"] = "/da/why/leftnav.html"
	leftnav["/de/product/"] = "/de/product/leftnav.html"
	leftnav["/eo/product/"] = "/eo/product/leftnav.html"
	leftnav["/eo/why/"] = "/eo/why/leftnav.html"
	leftnav["/es/noticias/"] = "/es/noticias/leftnav.html"
	leftnav["/es/participar/"] = "/es/participar/leftnav.html"
	leftnav["/es/por-que/"] = "/es/por-que/leftnav.html"
	leftnav["/es/producto/"] = "/es/producto/leftnav.html"
	leftnav["/eu/product/"] = "/eu/product/leftnav.html"
	leftnav["/eu/why/"] = "/eu/why/leftnav.html"
	leftnav["/he/product/"] = "/he/product/leftnav.html"
	leftnav["/he/why/"] = "/he/why/leftnav.html"
	leftnav["/hu/product/"] = "/hu/product/leftnav.html"
	leftnav["/hu/why/"] = "/hu/why/leftnav.html"
	leftnav["/hy/product/"] = "/hy/product/leftnav.html"
	leftnav["/ko/product/"] = "/ko/product/leftnav.html"
	leftnav["/l10n/"] = "/l10n/leftnav.html"
	leftnav["/lt/product/"] = "/lt/product/leftnav.html"
	leftnav["/lt/why/"] = "/lt/why/leftnav.html"
	leftnav["/nl/product/"] = "/nl/product/leftnav.html"
	leftnav["/nl/why/"] = "/nl/why/leftnav.html"
	leftnav["/no/product/"] = "/no/product/leftnav.html"
	leftnav["/no/why/"] = "/no/why/leftnav.html"
	leftnav["/pl/product/"] = "/pl/product/leftnav.html"
	leftnav["/pl/why/"] = "/pl/why/leftnav.html"
	leftnav["/product/"] = "/product/leftnav.html"
	leftnav["/pt/product/"] = "/pt/product/leftnav.html"
	leftnav["/pt/why/"] = "/pt/why/leftnav.html"
	leftnav["/ru/why/"] = "/ru/why/leftnav.html"
	leftnav["/sr-cyrl/product/"] = "/sr-cyrl/product/leftnav.html"
	leftnav["/sr-cyrl/why/"] = "/sr-cyrl/why/leftnav.html"
	leftnav["/sr-latn/product/"] = "/sr-latn/product/leftnav.html"
	leftnav["/sr-latn/why/"] = "/sr-latn/why/leftnav.html"
	leftnav["/sv/product/"] = "/sv/product/leftnav.html"
	leftnav["/tr/product/"] = "/tr/product/leftnav.html"
	leftnav["/tr/why/"] = "/tr/why/leftnav.html"
	leftnav["/why/"] = "/why/leftnav.html"
	leftnav["/xx/product/"] = "/xx/product/leftnav.html"
	leftnav["/xx/why/"] = "/xx/why/leftnav.html"

  def rightnav = [:]
	rightnav["/l10n/"]="/l10n/rightnav.html"

  def n=content.ssi.length;
  for (int i=0; i<n; i++ ) {
      def key = content.ssi[i]
      if ( brand[key] ) content.brand = brand[key];
      if ( topnav[key] ) content.topnav = topnav[key];
      if ( leftnav[key] ) content.leftnav = leftnav[key];
      if ( rightnav[key] ) content.rightnav = rightnav[key];
  }
%>