(() => {const validDbxLocales = [
  "en",
  "en_GB",
  "da_DK",
  "de",
  "es",
  "es_ES",
  "fr",
  "id",
  "it",
  "ja",
  "ko",
  "ms",
  "nb_NO",
  "nl_NL",
  "pl",
  "pt_BR",
  "ru",
  "sv_SE",
  "th_TH",
  "zh_CN",
  "zh_TW",
  "uk_UA",
]
function mapToDbxLocale(rawLocale) {
  const dataCmsLangToDbxLocale = {
    'en-us': 'en', // English - United States
    'id-id': 'id', // Indonesian
    'ms-my': 'ms', // Malaysian
    'es-es': 'es_ES', // Spanish
    'es-la': 'es', // Spanish - Latin America
    'da-dk': 'da_DK', // Danish
    'en-gb': 'en_GB', // UK English
    'fr-fr': 'fr', // French
    'it-it': 'it', // Italian
    'nl-nl': 'nl_NL', // Dutch Netherlands
    'nb-no': 'nb_NO', // Norwegian
    'pl-pl': 'pl', // Polish
    'pt-br': 'pt_BR', // Brazilian Portuguese
    'ru-ru': 'ru', // Russian
    'sv-se': 'sv_SE', // Swedish
    'uk-ua': 'uk_UA', // Ukrainian
    'th-th': 'th_TH', // Thai
    'zh-cn': 'zh_CN', // Chinese - simplified
    'zh-tw': 'zh_TW', // Chinese - traditional
    'ja-jp': 'ja', // Japanese
    'ko-kr': 'ko', // Korean
    'de-de': 'de', // German
  }
  if (dataCmsLangToDbxLocale[rawLocale] !== undefined) {
    return dataCmsLangToDbxLocale[rawLocale];
  }
  return rawLocale;
}

function getRawLocale() {
  if (window && window.dbxPithosConfig && window.dbxPithosConfig.locale) {
    return window.dbxPithosConfig.locale;
  }

  try {
    var cookieStr = String(document.cookie);
    var cookieObj = cookieStr.split(/\s*;\s*/)
      .reduce((o,nv) => {
        return Object.assign(o, {
          [nv.split('=')[0]]: nv.split('=').splice(1).join('=')
        })},{});
    if (cookieObj.locale) {
      return cookieObj.locale;
    }
  } catch(e) {}

  if (document && document.documentElement && document.documentElement.lang) {
    return document.documentElement.lang;
  }

  if (document && document.documentElement && document.documentElement.getAttribute("data-cms-lang")) {
    return document.documentElement.getAttribute("data-cms-lang");
  }

  return undefined;
}

function inferLocale(defaultLocale) {
  var locale = defaultLocale;

  var rawLocale = getRawLocale();

  if (!!rawLocale) {
    var mappedLocale = mapToDbxLocale(rawLocale);

    if (validDbxLocales.includes(mappedLocale)) {
      locale = mappedLocale;
    }
  }

  return locale;
}
(function () {
  const expectedOrigin = "https://www.dropbox.com";
  if (location.origin !== expectedOrigin) {
    return;
  }
  const shouldBeSandboxed =
    !!document.documentElement.getAttribute('data-cms-lang') &&
    typeof window.sandbox_verifier !== 'undefined';
  let isActuallySandboxed = false;
  try {
    void sessionStorage;
  } catch {
    isActuallySandboxed = true;
  }
  const sandboxed = shouldBeSandboxed && isActuallySandboxed;
  if (true && !sandboxed) {
    return;
  }

  window.dbxPithosConfig = {};

  let noI18nScriptUrls = ["https://cfl.dropboxstatic.com/static/pithos/c33_crownpeak_script.bundle-vfl_XHuCT.js"];
  let i18nScriptUrls = [];

  var locale = inferLocale("en");

  if (locale === "en") {
    noI18nScriptUrls.push(...i18nScriptUrls);
    i18nScriptUrls = [];
    window.dbxPithosConfig.i18nStrings = {};
  }

  const pithosNonce = [...document.scripts].filter(
    node=> node.src && decodeURIComponent(
        node.src.split('#')[0].split('?')[0]
    ).startsWith("https://www.dropbox.com/pithos/c33_crownpeak_script")
    &&node.nonce
  ).map(node=>node.nonce)[0];

  for (const scriptUrl of noI18nScriptUrls) {
    const script = document.createElement('script');
    script.src = scriptUrl;
    script.async = true;
    script.nonce = pithosNonce;
    document.head.appendChild(script);
  }

  if (i18nScriptUrls.length > 0) {
    const localizedStringsUrl = "https://" + "cfl.dropboxstatic.com" + `/static/pithos/lang/${locale}.json`
    fetch(localizedStringsUrl)
      .then((response) => {
        if (!response.ok) {
          locale = "en";
          return {};
        }
        return response.json();
      })
      .then((data) => {
        window.dbxPithosConfig.i18nStrings = data;
        for (const scriptUrl of i18nScriptUrls) {
          const script = document.createElement('script');
          script.src = scriptUrl;
          script.async = true;
          script.nonce = pithosNonce;
          document.head.appendChild(script);
        }
      });
  }

  window.dbxPithosConfig.locale = locale;
})();
})()