function com_rosetta_RosettaStarterStoreGWT(){
  var $wnd_0 = window, $doc_0 = document, $stats = $wnd_0.__gwtStatsEvent?function(a){
    return $wnd_0.__gwtStatsEvent(a);
  }
  :null, scriptsDone, loadDone, bodyDone, base = '', metaProps = {}, values = [], providers = [], answers = [], onLoadErrorFunc, propertyErrorFunc;
  $stats && $stats({moduleName:'com.rosetta.RosettaStarterStoreGWT', subSystem:'startup', evtGroup:'bootstrap', millis:(new Date()).getTime(), type:'begin'});
  if (!$wnd_0.__gwt_stylesLoaded) {
    $wnd_0.__gwt_stylesLoaded = {};
  }
  if (!$wnd_0.__gwt_scriptsLoaded) {
    $wnd_0.__gwt_scriptsLoaded = {};
  }
  function isHostedMode(){
    var result = false;
    try {
      result = $wnd_0.external && ($wnd_0.external.gwtOnLoad && $wnd_0.location.search.indexOf('gwt.hybrid') == -1);
    }
     catch (e) {
    }
    isHostedMode = function(){
      return result;
    }
    ;
    return result;
  }

  function maybeStartModule(){
    if (scriptsDone && loadDone) {
      var iframe = $doc_0.getElementById('com.rosetta.RosettaStarterStoreGWT');
      var frameWnd = iframe.contentWindow;
      if (isHostedMode()) {
        frameWnd.__gwt_getProperty = function(name_0){
          return computePropValue(name_0);
        }
        ;
      }
      com_rosetta_RosettaStarterStoreGWT = null;
      frameWnd.gwtOnLoad(onLoadErrorFunc, 'com.rosetta.RosettaStarterStoreGWT', base);
      $stats && $stats({moduleName:'com.rosetta.RosettaStarterStoreGWT', subSystem:'startup', evtGroup:'moduleStartup', millis:(new Date()).getTime(), type:'end'});
    }
  }

  function computeScriptBase(){
    var thisScript, markerId = '__gwt_marker_com.rosetta.RosettaStarterStoreGWT', markerScript;
    $doc_0.write('<script id="' + markerId + '"><\/script>');
    markerScript = $doc_0.getElementById(markerId);
    thisScript = markerScript && markerScript.previousSibling;
    while (thisScript && thisScript.tagName != 'SCRIPT') {
      thisScript = thisScript.previousSibling;
    }
    function getDirectoryOfFile(path){
      var hashIndex = path.lastIndexOf('#');
      if (hashIndex == -1) {
        hashIndex = path.length;
      }
      var queryIndex = path.indexOf('?');
      if (queryIndex == -1) {
        queryIndex = path.length;
      }
      var slashIndex = path.lastIndexOf('/', Math.min(queryIndex, hashIndex));
      return slashIndex >= 0?path.substring(0, slashIndex + 1):'';
    }

    ;
    if (thisScript && thisScript.src) {
      base = getDirectoryOfFile(thisScript.src);
    }
    if (base == '') {
      var baseElements = $doc_0.getElementsByTagName('base');
      if (baseElements.length > 0) {
        base = baseElements[baseElements.length - 1].href;
      }
       else {
        base = getDirectoryOfFile($doc_0.location.href);
      }
    }
     else if (base.match(/^\w+:\/\//)) {
    }
     else {
      var img = $doc_0.createElement('img');
      img.src = base + 'clear.cache.gif';
      base = getDirectoryOfFile(img.src);
    }
    if (markerScript) {
      markerScript.parentNode.removeChild(markerScript);
    }
  }

  function processMetas(){
    var metas = document.getElementsByTagName('meta');
    for (var i = 0, n = metas.length; i < n; ++i) {
      var meta = metas[i], name_0 = meta.getAttribute('name'), content;
      if (name_0) {
        if (name_0 == 'gwt:property') {
          content = meta.getAttribute('content');
          if (content) {
            var value, eq = content.indexOf('=');
            if (eq >= 0) {
              name_0 = content.substring(0, eq);
              value = content.substring(eq + 1);
            }
             else {
              name_0 = content;
              value = '';
            }
            metaProps[name_0] = value;
          }
        }
         else if (name_0 == 'gwt:onPropertyErrorFn') {
          content = meta.getAttribute('content');
          if (content) {
            try {
              propertyErrorFunc = eval(content);
            }
             catch (e) {
              alert('Bad handler "' + content + '" for "gwt:onPropertyErrorFn"');
            }
          }
        }
         else if (name_0 == 'gwt:onLoadErrorFn') {
          content = meta.getAttribute('content');
          if (content) {
            try {
              onLoadErrorFunc = eval(content);
            }
             catch (e) {
              alert('Bad handler "' + content + '" for "gwt:onLoadErrorFn"');
            }
          }
        }
      }
    }
  }

  function __gwt_isKnownPropertyValue(propName, propValue){
    return propValue in values[propName];
  }

  function __gwt_getMetaProperty(name_0){
    var value = metaProps[name_0];
    return value == null?null:value;
  }

  function unflattenKeylistIntoAnswers(propValArray, value){
    var answer = answers;
    for (var i = 0, n = propValArray.length - 1; i < n; ++i) {
      answer = answer[propValArray[i]] || (answer[propValArray[i]] = []);
    }
    answer[propValArray[n]] = value;
  }

  function computePropValue(propName){
    var value = providers[propName](), allowedValuesMap = values[propName];
    if (value in allowedValuesMap) {
      return value;
    }
    var allowedValuesList = [];
    for (var k in allowedValuesMap) {
      allowedValuesList[allowedValuesMap[k]] = k;
    }
    if (propertyErrorFunc) {
      propertyErrorFunc(propName, allowedValuesList, value);
    }
    throw null;
  }

  var frameInjected;
  function maybeInjectFrame(){
    if (!frameInjected) {
      frameInjected = true;
      var iframe = $doc_0.createElement('iframe');
      iframe.src = "javascript:''";
      iframe.id = 'com.rosetta.RosettaStarterStoreGWT';
      iframe.style.cssText = 'position:absolute;width:0;height:0;border:none';
      iframe.tabIndex = -1;
      $doc_0.body.appendChild(iframe);
      $stats && $stats({moduleName:'com.rosetta.RosettaStarterStoreGWT', subSystem:'startup', evtGroup:'moduleStartup', millis:(new Date()).getTime(), type:'moduleRequested'});
      iframe.contentWindow.location.replace(base + strongName);
    }
  }

  providers['locale'] = function(){
    try {
      var locale;
      if (locale == null) {
        var args = location.search;
        var startLang = args.indexOf('locale=');
        if (startLang >= 0) {
          var language = args.substring(startLang);
          var begin = language.indexOf('=') + 1;
          var end = language.indexOf('&');
          if (end == -1) {
            end = language.length;
          }
          locale = language.substring(begin, end);
        }
      }
      if (locale == null) {
        locale = __gwt_getMetaProperty('locale');
      }
      if (locale == null) {
        locale = $wnd_0['__gwt_Locale'];
      }
      if (locale == null) {
        return 'default';
      }
      while (!__gwt_isKnownPropertyValue('locale', locale)) {
        var lastIndex = locale.lastIndexOf('_');
        if (lastIndex == -1) {
          locale = 'default';
          break;
        }
         else {
          locale = locale.substring(0, lastIndex);
        }
      }
      return locale;
    }
     catch (e) {
      alert('Unexpected exception in locale detection, using default: ' + e);
      return 'default';
    }
  }
  ;
  values['locale'] = {B10052:0, B10053:1, 'default':2, en_US:3};
  providers['selectorCapability'] = function(){
    if (document.querySelectorAll && /native/.test(document.querySelectorAll.toString())) {
      return 'native';
    }
    return 'js';
  }
  ;
  values['selectorCapability'] = {js:0, 'native':1};
  providers['user.agent'] = function(){
    var ua = navigator.userAgent.toLowerCase();
    var makeVersion = function(result){
      return parseInt(result[1]) * 1000 + parseInt(result[2]);
    }
    ;
    if (ua.indexOf('opera') != -1) {
      return 'opera';
    }
     else if (ua.indexOf('webkit') != -1) {
      return 'safari';
    }
     else if (ua.indexOf('msie') != -1) {
      if (document.documentMode >= 8) {
        return 'ie8';
      }
       else {
        var result_0 = /msie ([0-9]+)\.([0-9]+)/.exec(ua);
        if (result_0 && result_0.length == 3) {
          var v = makeVersion(result_0);
          if (v >= 6000) {
            return 'ie6';
          }
        }
      }
    }
     else if (ua.indexOf('gecko') != -1) {
      var result_0 = /rv:([0-9]+)\.([0-9]+)/.exec(ua);
      if (result_0 && result_0.length == 3) {
        if (makeVersion(result_0) >= 1008)
          return 'gecko1_8';
      }
      return 'gecko';
    }
    return 'unknown';
  }
  ;
  values['user.agent'] = {gecko:0, gecko1_8:1, ie6:2, ie8:3, opera:4, safari:5};
  com_rosetta_RosettaStarterStoreGWT.onScriptLoad = function(){
    if (frameInjected) {
      loadDone = true;
      maybeStartModule();
    }
  }
  ;
  com_rosetta_RosettaStarterStoreGWT.onInjectionDone = function(){
    scriptsDone = true;
    $stats && $stats({moduleName:'com.rosetta.RosettaStarterStoreGWT', subSystem:'startup', evtGroup:'loadExternalRefs', millis:(new Date()).getTime(), type:'end'});
    maybeStartModule();
  }
  ;
  computeScriptBase();
  var strongName;
  if (isHostedMode()) {
    if ($wnd_0.external.initModule && $wnd_0.external.initModule('com.rosetta.RosettaStarterStoreGWT')) {
      $wnd_0.location.reload();
      return;
    }
    strongName = 'hosted.html?com_rosetta_RosettaStarterStoreGWT';
  }
  processMetas();
  $stats && $stats({moduleName:'com.rosetta.RosettaStarterStoreGWT', subSystem:'startup', evtGroup:'bootstrap', millis:(new Date()).getTime(), type:'selectingPermutation'});
  if (!strongName) {
    try {
      unflattenKeylistIntoAnswers(['en_US', 'native', 'opera'], 'EEC7F1696D75B12EB9AD91F746B775DB.cache.html');
      unflattenKeylistIntoAnswers(['default', 'native', 'opera'], '0542839BF5905711DFBC98B07D2E6621.cache.html');
      unflattenKeylistIntoAnswers(['B10052', 'native', 'opera'], '6DDED53B01A5785445B221A5E36EA6BC.cache.html');
      unflattenKeylistIntoAnswers(['B10053', 'native', 'opera'], '75B906B7B857A6D68CFFA0A9FC09446E.cache.html');
      unflattenKeylistIntoAnswers(['en_US', 'native', 'ie8'], '23B0A278C7382BC893224E4A35DEED71.cache.html');
      unflattenKeylistIntoAnswers(['default', 'native', 'ie8'], '699F3D3F8CC583C0C914DDE986C6017C.cache.html');
      unflattenKeylistIntoAnswers(['B10052', 'native', 'ie8'], '431CEF722D7CC3ADB1BCFF2BC148BA4F.cache.html');
      unflattenKeylistIntoAnswers(['B10053', 'native', 'ie8'], 'E77D48D63932BD9EA5394BE71F85037C.cache.html');
      unflattenKeylistIntoAnswers(['en_US', 'native', 'ie6'], '64753E160640D5C221D6BB12D4656DAF.cache.html');
      unflattenKeylistIntoAnswers(['default', 'native', 'ie6'], '08D22ECB36FB702EFEF30F611219D7EB.cache.html');
      unflattenKeylistIntoAnswers(['B10052', 'native', 'ie6'], '9CC280B967CBB7DB3DD24F8EE8ED1BFA.cache.html');
      unflattenKeylistIntoAnswers(['B10053', 'native', 'ie6'], '9C493FC23CE7A07514655873105B55A2.cache.html');
      unflattenKeylistIntoAnswers(['en_US', 'native', 'gecko1_8'], '3EEB211F772AB0973C76049F2997C755.cache.html');
      unflattenKeylistIntoAnswers(['default', 'native', 'gecko1_8'], 'F76EBB67CF341C767A06A2000706F1F2.cache.html');
      unflattenKeylistIntoAnswers(['B10052', 'native', 'gecko1_8'], '49BA845EF8FB1CA470919EBD32283F5D.cache.html');
      unflattenKeylistIntoAnswers(['B10053', 'native', 'gecko1_8'], 'BD52C44FB622152B442EEFBF49240E09.cache.html');
      unflattenKeylistIntoAnswers(['en_US', 'native', 'safari'], '4D7468606B9EFA80C34376BB1308D4CD.cache.html');
      unflattenKeylistIntoAnswers(['default', 'native', 'safari'], 'ABE316CB87A5472D68860541409257B9.cache.html');
      unflattenKeylistIntoAnswers(['B10052', 'native', 'safari'], '8209DB11B355C70F2B9BB936498EA342.cache.html');
      unflattenKeylistIntoAnswers(['B10053', 'native', 'safari'], '94730CA9D196D071258C2A066DB54A5C.cache.html');
      unflattenKeylistIntoAnswers(['en_US', 'native', 'gecko'], '511A4D4D652197ACFB98F537DD59E81D.cache.html');
      unflattenKeylistIntoAnswers(['default', 'native', 'gecko'], '892114003A530E0160FE7E98A8E1194E.cache.html');
      unflattenKeylistIntoAnswers(['B10052', 'native', 'gecko'], '99909A7EA431BCF8F6EAD8C75DDCA395.cache.html');
      unflattenKeylistIntoAnswers(['B10053', 'native', 'gecko'], '4FDBFD3C9C274B1660ABE1FC08468C01.cache.html');
      unflattenKeylistIntoAnswers(['en_US', 'js', 'opera'], 'AAD5A357D749B9B816450791B5867DDE.cache.html');
      unflattenKeylistIntoAnswers(['default', 'js', 'opera'], '73A353864E7A7E52836912A1EA851F36.cache.html');
      unflattenKeylistIntoAnswers(['B10052', 'js', 'opera'], 'B57007BCA6189959D001E8CE71FAA1BD.cache.html');
      unflattenKeylistIntoAnswers(['B10053', 'js', 'opera'], '6A00621111B76787DD31C7984E05E9EB.cache.html');
      unflattenKeylistIntoAnswers(['en_US', 'js', 'ie8'], 'BB5A1B39F17B64242C33329775DDD575.cache.html');
      unflattenKeylistIntoAnswers(['default', 'js', 'ie8'], '6760277ADB86411A9A68298602347BE2.cache.html');
      unflattenKeylistIntoAnswers(['B10052', 'js', 'ie8'], 'BA8870DAB0AD19F5E8CAF2887B50FD96.cache.html');
      unflattenKeylistIntoAnswers(['B10053', 'js', 'ie8'], '023888FDF17187B182F313C15A6A3B6F.cache.html');
      unflattenKeylistIntoAnswers(['en_US', 'js', 'gecko1_8'], 'F81C959426BD8C8837625A2666C7C177.cache.html');
      unflattenKeylistIntoAnswers(['default', 'js', 'gecko1_8'], '088B1EFB3449D5E6F6E82E2CC4A1CEA1.cache.html');
      unflattenKeylistIntoAnswers(['B10052', 'js', 'gecko1_8'], 'CEF6B15447E58B92267D11E8122DD0DA.cache.html');
      unflattenKeylistIntoAnswers(['B10053', 'js', 'gecko1_8'], '89FD6CE1EC1DAAAB5C2E0195C3EB8297.cache.html');
      unflattenKeylistIntoAnswers(['en_US', 'js', 'ie6'], 'C849F837A683C923697053EE090F7C69.cache.html');
      unflattenKeylistIntoAnswers(['default', 'js', 'ie6'], 'D57C8BD28385798E11BE99EB733C27A3.cache.html');
      unflattenKeylistIntoAnswers(['B10052', 'js', 'ie6'], '1C0700E40BDB18A1A92721BEA3D27E6F.cache.html');
      unflattenKeylistIntoAnswers(['B10053', 'js', 'ie6'], '05A12113039D55EB4E8897BC39D75739.cache.html');
      unflattenKeylistIntoAnswers(['en_US', 'js', 'safari'], '5D4008DB4AD174BFE09B9006DCE401CA.cache.html');
      unflattenKeylistIntoAnswers(['default', 'js', 'safari'], 'D961CD9B4F33EC58041FB70B8A972F52.cache.html');
      unflattenKeylistIntoAnswers(['B10052', 'js', 'safari'], '60D3DE56C2604FC2DCE8DDC0999B5FDF.cache.html');
      unflattenKeylistIntoAnswers(['B10053', 'js', 'safari'], 'D9CED49AD125CD9C5024B4F3AA3C45C7.cache.html');
      unflattenKeylistIntoAnswers(['en_US', 'js', 'gecko'], '5AB5E7CED4498152235BF45ADA55E7F8.cache.html');
      unflattenKeylistIntoAnswers(['default', 'js', 'gecko'], '883700262D648DD379B2293B4D89B01C.cache.html');
      unflattenKeylistIntoAnswers(['B10052', 'js', 'gecko'], 'C54DDA77277D278CAFC9D725911A1893.cache.html');
      unflattenKeylistIntoAnswers(['B10053', 'js', 'gecko'], 'E398D555B391BF0AD549F78E2169398B.cache.html');
      strongName = answers[computePropValue('locale')][computePropValue('selectorCapability')][computePropValue('user.agent')];
    }
     catch (e) {
      return;
    }
  }
  var onBodyDoneTimerId;
  function onBodyDone(){
    if (!bodyDone) {
      bodyDone = true;
      if (!__gwt_stylesLoaded['gwt-log.css']) {
        var l = $doc_0.createElement('link');
        __gwt_stylesLoaded['gwt-log.css'] = l;
        l.setAttribute('rel', 'stylesheet');
        l.setAttribute('href', base + 'gwt-log.css');
        $doc_0.getElementsByTagName('head')[0].appendChild(l);
      }
      maybeStartModule();
      if ($doc_0.removeEventListener) {
        $doc_0.removeEventListener('DOMContentLoaded', onBodyDone, false);
      }
      if (onBodyDoneTimerId) {
        clearInterval(onBodyDoneTimerId);
      }
    }
  }

  if ($doc_0.addEventListener) {
    $doc_0.addEventListener('DOMContentLoaded', function(){
      maybeInjectFrame();
      onBodyDone();
    }
    , false);
  }
  var onBodyDoneTimerId = setInterval(function(){
    if (/loaded|complete/.test($doc_0.readyState)) {
      maybeInjectFrame();
      onBodyDone();
    }
  }
  , 50);
  $stats && $stats({moduleName:'com.rosetta.RosettaStarterStoreGWT', subSystem:'startup', evtGroup:'bootstrap', millis:(new Date()).getTime(), type:'end'});
  $stats && $stats({moduleName:'com.rosetta.RosettaStarterStoreGWT', subSystem:'startup', evtGroup:'loadExternalRefs', millis:(new Date()).getTime(), type:'begin'});
  $doc_0.write('<script defer="defer">com_rosetta_RosettaStarterStoreGWT.onInjectionDone(\'com.rosetta.RosettaStarterStoreGWT\')<\/script>');
}

com_rosetta_RosettaStarterStoreGWT();

