Correcting for mirroring bugs between r8882 and r8889.  The cause is as 
yet undiagnosed, but this patch updates Subversion to have correct content
according to our internal system.



git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@8893 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/dev/core/src/com/google/gwt/core/linker/CrossSiteIframeLinker.java b/dev/core/src/com/google/gwt/core/linker/CrossSiteIframeLinker.java
index dd019a9..861091c 100644
--- a/dev/core/src/com/google/gwt/core/linker/CrossSiteIframeLinker.java
+++ b/dev/core/src/com/google/gwt/core/linker/CrossSiteIframeLinker.java
@@ -18,6 +18,8 @@
 
 import com.google.gwt.core.ext.LinkerContext;
 import com.google.gwt.core.ext.TreeLogger;
+import com.google.gwt.core.ext.UnableToCompleteException;
+import com.google.gwt.core.ext.linker.ArtifactSet;
 import com.google.gwt.core.ext.linker.CompilationResult;
 import com.google.gwt.core.ext.linker.LinkerOrder;
 import com.google.gwt.core.ext.linker.Shardable;
@@ -28,6 +30,9 @@
 import com.google.gwt.dev.util.DefaultTextOutput;
 import com.google.gwt.dev.util.TextOutput;
 import com.google.gwt.dev.util.Util;
+import com.google.gwt.util.tools.Utility;
+
+import java.io.IOException;
 
 /**
  * This linker uses an iframe to hold the code and a script tag to download the
@@ -38,6 +43,20 @@
 @LinkerOrder(Order.PRIMARY)
 @Shardable
 public class CrossSiteIframeLinker extends SelectionScriptLinker {
+  // TODO(unnurg): For each of the following properties, decide whether to make
+  // it a gwt.xml configuration property, a constant which can be overridden
+  // by subclasses, or not configurable at all.
+  private static final String installLocationJsProperty = 
+    "com/google/gwt/core/ext/linker/impl/installLocationIframe.js";
+  private static final boolean processMetasProperty = true;
+  private static final String scriptBaseProperty = "";
+  private static final boolean startDownloadImmediatelyProperty = true;
+  
+  private static final String WAIT_FOR_BODY_LOADED_JS =
+    "com/google/gwt/core/ext/linker/impl/waitForBodyLoaded.js";
+  
+  private static final boolean waitForBodyLoadedProperty = true;
+
   @Override
   public String getDescription() {
     return "Cross-Site-Iframe";
@@ -46,23 +65,88 @@
   @Override
   protected byte[] generatePrimaryFragment(TreeLogger logger,
       LinkerContext context, CompilationResult result, String[] js) {
-    // Wrap the script code with its prefix and suffix
     TextOutput script = new DefaultTextOutput(context.isOutputCompact());
     script.print(getModulePrefix(context, result.getStrongName(), js.length > 1));
     script.print(js[0]);
     script.print(getModuleSuffix(logger, context));
-
-    // Rewrite the code so it can be installed with
-    // __MODULE_FUNC__.onScriptDownloaded
-
     StringBuffer out = new StringBuffer();
-    out.append(context.getModuleFunctionName());
-    out.append(".onScriptDownloaded(");
-    out.append(JsToStringGenerationVisitor.javaScriptString(script.toString()));
-    out.append(")");
+
+    if (startDownloadImmediatelyProperty) {
+      // Rewrite the code so it can be installed with
+      // __MODULE_FUNC__.onScriptDownloaded
+      out.append(context.getModuleFunctionName());
+      out.append(".onScriptDownloaded(");
+      out.append(JsToStringGenerationVisitor.javaScriptString(script.toString()));
+      out.append(")");
+    } else {
+      out.append(script.toString());
+    }
 
     return Util.getBytes(out.toString());
   }
+  
+  @Override
+  protected String generateSelectionScript(TreeLogger logger,
+      LinkerContext context, ArtifactSet artifacts) throws UnableToCompleteException {
+    StringBuffer selectionScript = getSelectionScriptStringBuffer(logger, context);
+    
+    String waitForBodyLoadedJs;
+    String installLocationJs;
+    String computeScriptBase;
+    String processMetas;
+
+    try {
+      waitForBodyLoadedJs = Utility.getFileFromClassPath(WAIT_FOR_BODY_LOADED_JS);
+      processMetas = Utility.getFileFromClassPath(PROCESS_METAS_JS);
+      installLocationJs = Utility.getFileFromClassPath(installLocationJsProperty);
+      computeScriptBase = Utility.getFileFromClassPath(COMPUTE_SCRIPT_BASE_JS);
+    } catch (IOException e) {
+      logger.log(TreeLogger.ERROR, "Unable to read selection script template",
+          e);
+      throw new UnableToCompleteException();
+    }
+    
+    replaceAll(selectionScript, "__INSTALL_LOCATION__", installLocationJs);
+
+    if (waitForBodyLoadedProperty) {
+      replaceAll(selectionScript, "__WAIT_FOR_BODY_LOADED__", waitForBodyLoadedJs);
+    } else {
+      String waitForBodyLoadedNullImpl = 
+      "function setupWaitForBodyLoad(callback) { callback(); }";
+      replaceAll(selectionScript, "__WAIT_FOR_BODY_LOADED__", waitForBodyLoadedNullImpl);
+    }
+
+    if (startDownloadImmediatelyProperty) {
+      replaceAll(selectionScript, "__START_DOWNLOAD_IMMEDIATELY__", "true");
+    } else {
+      replaceAll(selectionScript, "__START_DOWNLOAD_IMMEDIATELY__", "false");
+    }
+    
+    if (processMetasProperty) {
+      replaceAll(selectionScript, "__PROCESS_METAS__", processMetas);
+    } else {
+      String processMetasNullImpl =
+        "function processMetas() { }";
+      replaceAll(selectionScript, "__PROCESS_METAS__", processMetasNullImpl);
+    }
+    
+    String scriptBase = scriptBaseProperty;
+    if ("".equals(scriptBase)) {
+      replaceAll(selectionScript, "__COMPUTE_SCRIPT_BASE__", computeScriptBase);
+    } else {
+      String computeScriptBaseNullImpl =
+        "function computeScriptBase() { return '" + scriptBase + "';}";
+      replaceAll(selectionScript, "__COMPUTE_SCRIPT_BASE__", computeScriptBaseNullImpl);
+    }
+
+    // This method needs to be called after all of the .js files have been
+    // swapped into the selectionScript since it will fill in __MODULE_NAME__
+    // and many of the .js files contain that template variable
+    selectionScript =
+      processSelectionScriptCommon(selectionScript, logger, context);
+
+    return selectionScript.toString();
+  }
 
   @Override
   protected String getCompilationExtension(TreeLogger logger,
@@ -72,7 +156,7 @@
 
   @Override
   protected String getHostedFilename() {
-    return "hosted.js";
+    return "devmode.js";
   }
   
   @Override
@@ -91,17 +175,15 @@
   protected String getModuleSuffix(TreeLogger logger, LinkerContext context) {
     DefaultTextOutput out = new DefaultTextOutput(context.isOutputCompact());
 
-    out.print("$stats && $stats({moduleName:'" + context.getModuleName()
-        + "',sessionId:$sessionId"
-        + ",subSystem:'startup',evtGroup:'moduleStartup'"
-        + ",millis:(new Date()).getTime(),type:'moduleEvalEnd'});");
-
-    // Generate the call to tell the bootstrap code that we're ready to go.
+    out.print("$sendStats('moduleStartup', 'moduleEvalEnd');");
     out.newlineOpt();
-    out.print("if ($wnd." + context.getModuleFunctionName() + " && $wnd."
-        + context.getModuleFunctionName() + ".onScriptInstalled) $wnd."
-        + context.getModuleFunctionName() + ".onScriptInstalled(gwtOnLoad);");
+    out.print("gwtOnLoad("
+        + "__gwtModuleFunction.__errFn, "
+        + "__gwtModuleFunction.__moduleName, "
+        + "__gwtModuleFunction.__moduleBase, "
+        + "__gwtModuleFunction.__softPermutationId);");
     out.newlineOpt();
+    out.print("$sendStats('moduleStartup', 'end');");
 
     return out.toString();
   }
@@ -115,35 +197,27 @@
   private String getModulePrefix(LinkerContext context, String strongName,
       boolean supportRunAsync) {
     TextOutput out = new DefaultTextOutput(context.isOutputCompact());
-
+    out.print("var __gwtModuleFunction = $wnd." + context.getModuleFunctionName() + ";");
+    out.newlineOpt();
+    out.print("var $sendStats = __gwtModuleFunction.__sendStats;");
+    out.newlineOpt();
+    out.print("$sendStats('moduleStartup', 'moduleEvalStart');");
+    out.newlineOpt();
     out.print("var $gwt_version = \"" + About.getGwtVersionNum() + "\";");
     out.newlineOpt();
-    out.print("var $wnd = window.parent;");
-    out.newlineOpt();
-    out.print("var $doc = $wnd.document;");
-    out.newlineOpt();
-    out.print("var $moduleName, $moduleBase;");
-    out.newlineOpt();
     out.print("var $strongName = '" + strongName + "';");
     out.newlineOpt();
+    out.print("var $doc = $wnd.document;");
+
+    // Even though we call the $sendStats function in the code written in this
+    // linker, some of the compilation code still needs the $stats and $sessionId
+    // variables to be available.
     out.print("var $stats = $wnd.__gwtStatsEvent ? function(a) {return $wnd.__gwtStatsEvent(a);} : null;");
     out.newlineOpt();
     out.print("var $sessionId = $wnd.__gwtStatsSessionId ? $wnd.__gwtStatsSessionId : null;");
     out.newlineOpt();
 
-    out.print("$stats && $stats({moduleName:'" + context.getModuleName()
-        + "',sessionId:$sessionId"
-        + ",subSystem:'startup',evtGroup:'moduleStartup'"
-        + ",millis:(new Date()).getTime(),type:'moduleEvalStart'});");
-    out.newlineOpt();
-
-    if (supportRunAsync) {
-      out.print("var __gwtModuleFunction = $wnd.");
-      out.print(context.getModuleFunctionName());
-      out.print(";");
-      out.newlineOpt();
-    }
-
     return out.toString();
   }
+  
 }
diff --git a/dev/core/src/com/google/gwt/dev/Precompile.java b/dev/core/src/com/google/gwt/dev/Precompile.java
index 88f64ab..5b11870 100644
--- a/dev/core/src/com/google/gwt/dev/Precompile.java
+++ b/dev/core/src/com/google/gwt/dev/Precompile.java
@@ -40,8 +40,8 @@
 import com.google.gwt.dev.jjs.JsOutputOption;
 import com.google.gwt.dev.jjs.UnifiedAst;
 import com.google.gwt.dev.shell.CheckForUpdates;
-import com.google.gwt.dev.shell.StandardRebindOracle;
 import com.google.gwt.dev.shell.CheckForUpdates.UpdateResult;
+import com.google.gwt.dev.shell.StandardRebindOracle;
 import com.google.gwt.dev.util.CollapsedPropertyKey;
 import com.google.gwt.dev.util.Memory;
 import com.google.gwt.dev.util.Util;
@@ -57,6 +57,7 @@
 import com.google.gwt.dev.util.arg.ArgHandlerEnableAssertions;
 import com.google.gwt.dev.util.arg.ArgHandlerGenDir;
 import com.google.gwt.dev.util.arg.ArgHandlerMaxPermsPerPrecompile;
+import com.google.gwt.dev.util.arg.ArgHandlerOptimize;
 import com.google.gwt.dev.util.arg.ArgHandlerScriptStyle;
 import com.google.gwt.dev.util.arg.ArgHandlerSoyc;
 import com.google.gwt.dev.util.arg.ArgHandlerSoycDetailed;
@@ -119,6 +120,7 @@
       registerHandler(new ArgHandlerDisableUpdateCheck(options));
       registerHandler(new ArgHandlerDumpSignatures());
       registerHandler(new ArgHandlerMaxPermsPerPrecompile(options));
+      registerHandler(new ArgHandlerOptimize(options));
       registerHandler(new ArgHandlerCompileReport(options));
       registerHandler(new ArgHandlerSoyc(options));
       registerHandler(new ArgHandlerSoycDetailed(options));
@@ -167,6 +169,10 @@
       return maxPermsPerPrecompile;
     }
 
+    public int getOptimizationLevel() {
+      return jjsOptions.getOptimizationLevel();
+    }
+
     public JsOutputOption getOutput() {
       return jjsOptions.getOutput();
     }
@@ -239,10 +245,6 @@
       disableUpdateCheck = disabled;
     }
 
-    public void setDraftCompile(boolean draft) {
-      jjsOptions.setDraftCompile(draft);
-    }
-
     public void setEnableAssertions(boolean enableAssertions) {
       jjsOptions.setEnableAssertions(enableAssertions);
     }
@@ -259,6 +261,10 @@
       this.maxPermsPerPrecompile = maxPermsPerPrecompile;
     }
 
+    public void setOptimizationLevel(int level) {
+      jjsOptions.setOptimizationLevel(level);
+    }
+
     public void setOptimizePrecompile(boolean optimize) {
       jjsOptions.setOptimizePrecompile(optimize);
     }
diff --git a/dev/core/src/com/google/gwt/dev/jjs/JJSOptionsImpl.java b/dev/core/src/com/google/gwt/dev/jjs/JJSOptionsImpl.java
index 9df0ce8..88dae70 100644
--- a/dev/core/src/com/google/gwt/dev/jjs/JJSOptionsImpl.java
+++ b/dev/core/src/com/google/gwt/dev/jjs/JJSOptionsImpl.java
@@ -15,6 +15,8 @@
  */
 package com.google.gwt.dev.jjs;
 
+import com.google.gwt.dev.util.arg.OptionOptimize;
+
 import java.io.Serializable;
 
 /**
@@ -25,7 +27,6 @@
   private boolean aggressivelyOptimize = true;
   private boolean disableCastChecking = false;
   private boolean disableClassMetadata = false;
-  private boolean draftCompile = false;
   private boolean enableAssertions;
   private boolean optimizePrecompile = false;
   private JsOutputOption output = JsOutputOption.OBFUSCATED;
@@ -33,6 +34,7 @@
   private boolean soycEnabled = false;
   private boolean soycExtra = false;
   private boolean strict = false;
+  private int optimizationLevel = OptionOptimize.OPTIMIZE_LEVEL_MAX;
 
   public JJSOptionsImpl() {
   }
@@ -42,11 +44,11 @@
   }
 
   public void copyFrom(JJSOptions other) {
-    setAggressivelyOptimize(other.isAggressivelyOptimize());
     setCastCheckingDisabled(other.isCastCheckingDisabled());
     setClassMetadataDisabled(other.isClassMetadataDisabled());
-    setDraftCompile(other.isDraftCompile());
     setEnableAssertions(other.isEnableAssertions());
+    setAggressivelyOptimize(other.isAggressivelyOptimize());
+    setOptimizationLevel(other.getOptimizationLevel());
     setOutput(other.getOutput());
     setRunAsyncEnabled(other.isRunAsyncEnabled());
     setSoycEnabled(other.isSoycEnabled());
@@ -54,6 +56,10 @@
     setStrict(other.isStrict());
   }
 
+  public int getOptimizationLevel() {
+    return optimizationLevel;
+  }
+  
   public JsOutputOption getOutput() {
     return output;
   }
@@ -71,7 +77,7 @@
   }
 
   public boolean isDraftCompile() {
-    return draftCompile;
+    return optimizationLevel == OptionOptimize.OPTIMIZE_LEVEL_DRAFT;
   }
 
   public boolean isEnableAssertions() {
@@ -110,14 +116,14 @@
     disableClassMetadata = disabled;
   }
 
-  public void setDraftCompile(boolean draft) {
-    this.draftCompile = draft;
-  }
-
   public void setEnableAssertions(boolean enableAssertions) {
     this.enableAssertions = enableAssertions;
   }
 
+  public void setOptimizationLevel(int level) {
+    optimizationLevel = level;
+  }
+
   public void setOptimizePrecompile(boolean optimize) {
     optimizePrecompile = optimize;
   }
diff --git a/dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java b/dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java
index f34e6c8..804b279 100644
--- a/dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java
+++ b/dev/core/src/com/google/gwt/dev/jjs/JavaToJavaScriptCompiler.java
@@ -126,6 +126,7 @@
 import com.google.gwt.dev.util.Memory;
 import com.google.gwt.dev.util.TextOutput;
 import com.google.gwt.dev.util.Util;
+import com.google.gwt.dev.util.arg.OptionOptimize;
 import com.google.gwt.dev.util.collect.Maps;
 import com.google.gwt.dev.util.log.speedtracer.CompilerEventType;
 import com.google.gwt.dev.util.log.speedtracer.SpeedTracerLogger;
@@ -273,7 +274,8 @@
       ResolveRebinds.exec(jprogram, permutation.getOrderedRebindAnswers());
 
       // (4) Optimize the normalized Java AST for each permutation.
-      if (options.isDraftCompile()) {
+      int optimizationLevel = options.getOptimizationLevel();
+      if (optimizationLevel == OptionOptimize.OPTIMIZE_LEVEL_DRAFT) {
         draftOptimize(jprogram);
       } else {
         optimize(options, jprogram);
@@ -311,8 +313,8 @@
       EvalFunctionsAtTopScope.exec(jsProgram, map);
 
       // (9) Optimize the JS AST.
-      if (!options.isDraftCompile()) {
-        optimizeJs(jsProgram);
+      if (optimizationLevel > OptionOptimize.OPTIMIZE_LEVEL_DRAFT) {
+        optimizeJs(options, jsProgram);
       }
 
       /*
@@ -578,7 +580,7 @@
        * Don't optimizing early if this is a draft compile, or if there's only
        * one permutation.
        */
-      if (!options.isDraftCompile() && !singlePermutation) {
+      if (options.getOptimizationLevel() > OptionOptimize.OPTIMIZE_LEVEL_DRAFT && !singlePermutation) {
         if (options.isOptimizePrecompile()) {
           /*
            * Go ahead and optimize early, so that each permutation will run
@@ -619,35 +621,17 @@
    * succeeds.
    */
   protected static void draftOptimize(JProgram jprogram) {
+    Event draftOptimizeEvent = SpeedTracerLogger.start(CompilerEventType.DRAFT_OPTIMIZE);
     /*
      * Record the beginning of optimizations; this turns on certain checks that
      * guard against problematic late construction of things like class
      * literals.
      */
     jprogram.beginOptimizations();
-
-    Event draftOptimizeEvent = SpeedTracerLogger.start(CompilerEventType.DRAFT_OPTIMIZE);
-
-    Event draftFinalizerEvent = SpeedTracerLogger.start(CompilerEventType.DRAFT_OPTIMIZE, "phase",
-        "finalizer");
     Finalizer.exec(jprogram);
-    draftFinalizerEvent.end();
-
-    Event draftMakeCallsStaticEvent =
-        SpeedTracerLogger.start(CompilerEventType.DRAFT_OPTIMIZE, "phase", "makeCallsStatic");
     MakeCallsStatic.exec(jprogram);
-    draftMakeCallsStaticEvent.end();
-
-    Event draftRecomputeEvent = SpeedTracerLogger.start(
-        CompilerEventType.DRAFT_OPTIMIZE, "phase", "recomputeAfterOptimizations");
     jprogram.typeOracle.recomputeAfterOptimizations();
-    draftRecomputeEvent.end();
-
-    Event draftDeadCode = SpeedTracerLogger.start(CompilerEventType.DRAFT_OPTIMIZE, "phase",
-        "deadCodeElimination");
     DeadCodeElimination.exec(jprogram);
-    draftDeadCode.end();
-
     draftOptimizeEvent.end();
   }
 
@@ -664,8 +648,12 @@
 
     List<OptimizerStats> allOptimizerStats = new ArrayList<OptimizerStats>();
     int counter = 0;
+    int optimizationLevel = options.getOptimizationLevel();    
     while (true) {
       counter++;
+      if (optimizationLevel < OptionOptimize.OPTIMIZE_LEVEL_MAX && counter > optimizationLevel) {
+        break;
+      }
       if (Thread.interrupted()) {
         optimizeEvent.end();
         throw new InterruptedException();
@@ -695,7 +683,7 @@
     optimizeEvent.end();
   }
 
-  protected static void optimizeJs(JsProgram jsProgram) throws InterruptedException {
+  protected static void optimizeJs(JJSOptions options, JsProgram jsProgram) throws InterruptedException {
     List<OptimizerStats> allOptimizerStats = new ArrayList<OptimizerStats>();
     int counter = 0;
     while (true) {
@@ -718,8 +706,9 @@
       allOptimizerStats.add(stats);
       
       optimizeJsEvent.end();
-      
-      if (!stats.didChange()) {
+      int optimizationLevel = options.getOptimizationLevel();
+      if ((optimizationLevel < OptionOptimize.OPTIMIZE_LEVEL_MAX && counter > optimizationLevel) 
+          || !stats.didChange()) {
         break;
       }
     }
diff --git a/dev/core/src/com/google/gwt/dev/jjs/impl/JsFunctionClusterer.java b/dev/core/src/com/google/gwt/dev/jjs/impl/JsFunctionClusterer.java
index 8f86eec..f18cda9 100644
--- a/dev/core/src/com/google/gwt/dev/jjs/impl/JsFunctionClusterer.java
+++ b/dev/core/src/com/google/gwt/dev/jjs/impl/JsFunctionClusterer.java
@@ -16,13 +16,13 @@
 package com.google.gwt.dev.jjs.impl;
 
 import com.google.gwt.core.ext.linker.StatementRanges;
+import com.google.gwt.dev.util.editdistance.GeneralEditDistance;
+import com.google.gwt.dev.util.editdistance.GeneralEditDistances;
 
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Comparator;
-import java.util.List;
 import java.util.LinkedList;
-import java.util.Iterator;
 import java.util.regex.Pattern;
 
 /**
@@ -33,19 +33,33 @@
  */
 public class JsFunctionClusterer extends JsAbstractTextTransformer {
 
-  private static Pattern functionPattern =
-      Pattern.compile("^(function |[A-Za-z0-9_$]+=function)");
+  /**
+   * Used by isFunctionDeclaration to check a statement is a function
+   * declaration or not. This should match standard declarations,
+   * such as "function a() { ... }" and "jslink.a=function() { ... }".
+   * The latter form is typically emitted by the cross-site linker.
+   */
+  private static final Pattern functionDeclarationPattern =
+      Pattern.compile("function |[a-zA-Z][.$_a-zA-Z0-9]*=function");
 
   /**
-   * Limit edit-distance search to MAX_DIST.
+   * Functions which have an edit-distance greater than this limit are
+   * considered equally different.
    */
-  private static final int MAX_DIST = 10;
-
   private static final int MAX_DISTANCE_LIMIT = 100;
 
-  private int[] clusteredIndices;
+  /**
+   * Maximum number of functions to search for minimal edit-distance
+   * before giving up.
+   */
+  private static final int SEARCH_LIMIT = 10;
 
-  private List<Integer> functionIndices;
+  /**
+   * Tells whether a statement is a function declaration or not.
+   */
+  private static boolean isFunctionDeclaration(String code) {
+    return functionDeclarationPattern.matcher(code).lookingAt();
+  }
 
   public JsFunctionClusterer(JsAbstractTextTransformer xformer) {
     super(xformer);
@@ -57,12 +71,12 @@
 
   @Override
   public void exec() {
-    functionIndices = new LinkedList<Integer>();
+    LinkedList<Integer> functionIndices = new LinkedList<Integer>();
 
     // gather up all of the indices of function decl statements
     for (int i = 0; i < statementRanges.numStatements(); i++) {
       String code = getJsForRange(i);
-      if (functionPattern.matcher(code).find()) {
+      if (isFunctionDeclaration(code)) {
         functionIndices.add(i);
       }
     }
@@ -75,29 +89,29 @@
     });
 
     // used to hold the new output order
-    clusteredIndices = new int[functionIndices.size()];
+    int[] clusteredIndices = new int[functionIndices.size()];
     int currentFunction = 0;
 
     // remove the first function and stick it in the output array
     clusteredIndices[currentFunction] = functionIndices.get(0);
     functionIndices.remove(0);
-
     while (!functionIndices.isEmpty()) {
-
       // get the last outputted function to match against
       String currentCode = getJsForRange(clusteredIndices[currentFunction]);
-      int bestDistance = 99999;
-      int bestIndex = 0;
-      int bestFunction = 0;
+      final GeneralEditDistance editDistance =
+        GeneralEditDistances.getLevenshteinDistance(currentCode);
 
-      Iterator<Integer> it = functionIndices.iterator();
+      int bestIndex = 0;
+      int bestFunction = functionIndices.getFirst();
+      int bestDistance = MAX_DISTANCE_LIMIT;
+
       int count = 0;
-      // search up to MAX_DIST functions for the best match
-      while (it.hasNext() && count < Math.min(MAX_DIST, functionIndices.size())) {
-        int functionIndex = it.next();
+      for (int functionIndex : functionIndices) {
+        if (count >= SEARCH_LIMIT) {
+          break;
+        }
         String testCode = getJsForRange(functionIndex);
-        int distanceLimit = Math.min(bestDistance, MAX_DISTANCE_LIMIT);
-        int dist = levdist(currentCode, testCode, distanceLimit);
+        int dist = editDistance.getDistance(testCode, bestDistance);
         if (dist < bestDistance) {
           bestDistance = dist;
           bestIndex = count;
@@ -120,73 +134,13 @@
     // Then output everything else that is not a function.
     for (int i = 0; i < statementRanges.numStatements(); i++) {
       String code = getJsForRange(i);
-      if (!code.startsWith("function")) {
+      if (!isFunctionDeclaration(code)) {
         addStatement(code, newJs, starts, ends);
       }
     }
     super.endStatements(newJs, starts, ends);
   }
 
-  /**
-   * Compute the Levenshtein distance between two strings, up to a distance
-   * limit.
-   */
-  private int levdist(String str1, String str2, int limit) {
-    if (str1.length() > str2.length()) {
-      return levdist(str2, str1, limit);
-    }
-    if (str1.length() == 0) {
-      return str2.length();
-    }
-    if (Math.abs(str1.length() - str2.length()) >= limit) {
-      return limit;
-    }
-
-    int str1len = str1.length();
-    int str2len = str2.length();
-
-    int lastRow[] = new int[str2len + 1];
-    int nextRow[] = new int[str2len + 1];
-
-    for (int j = 0; j <= Math.min(str2len, limit + 1); j++) {
-      lastRow[j] = j;
-    }
-
-    for (int i = 1; i <= str1len; i++) {
-      nextRow[0] = i;
-
-      if (i >= limit) {
-        nextRow[i - limit] = limit;
-      }
-      if (i >= limit + 1) {
-        nextRow[i - limit - 1] = limit;
-      }
-      if (i + limit <= str2len) {
-        nextRow[i + limit] = limit;
-      }
-      if (i + limit + 1 <= str2len) {
-        nextRow[i + limit + 1] = limit;
-      }
-
-      char c1 = str1.charAt(i - 1);
-
-      int j = Math.max(1, (i - limit + 1));
-      int jmax = Math.min(str2len, (i + limit - 1));
-
-      while (j <= jmax) {
-        char c2 = str2.charAt(j - 1);
-        int costSwap = c1 == c2 ? 0 : 1;
-        nextRow[j] =
-            Math.min(Math.min(lastRow[j] + 1, nextRow[j - 1] + 1), lastRow[j - 1] + costSwap);
-        j = j + 1;
-      }
-      int tmpRow[] = nextRow;
-      nextRow = lastRow;
-      lastRow = tmpRow;
-    }
-    return lastRow[Math.min(str2len, limit)];
-  }
-
   private int stmtSize(int index1) {
     return statementRanges.end(index1) - statementRanges.start(index1);
   }
diff --git a/plugins/webkit/English.lproj/InfoPlist.strings b/plugins/webkit/English.lproj/InfoPlist.strings
index 92beb1a..6260754 100644
--- a/plugins/webkit/English.lproj/InfoPlist.strings
+++ b/plugins/webkit/English.lproj/InfoPlist.strings
Binary files differ
diff --git a/samples/expenses/src/main/java/com/google/gwt/sample/expenses/client/request/EmployeeProxy.java b/samples/expenses/src/main/java/com/google/gwt/sample/expenses/client/request/EmployeeProxy.java
index 0728e9d..8cb3a09 100644
--- a/samples/expenses/src/main/java/com/google/gwt/sample/expenses/client/request/EmployeeProxy.java
+++ b/samples/expenses/src/main/java/com/google/gwt/sample/expenses/client/request/EmployeeProxy.java
@@ -1,12 +1,12 @@
 /*
  * Copyright 2010 Google Inc.
- * 
+ *
  * Licensed under the Apache License, Version 2.0 (the "License"); you may not
  * use this file except in compliance with the License. You may obtain a copy of
  * the License at
- * 
+ *
  * http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -32,15 +32,13 @@
   String getDisplayName();
 
   Long getId();
-  
+
   String getPassword();
 
   EmployeeProxy getSupervisor();
 
   String getUserName();
 
-  boolean isChanged();
-
   void setDepartment(String department);
 
   void setDisplayName(String displayName);
@@ -50,6 +48,6 @@
   void setSupervisor(EmployeeProxy supervisor);
 
   void setUserName(String userName);
-  
+
   EntityProxyId<EmployeeProxy> stableId();
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_am.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_am.java
index 9ed1410..8df33ed 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_am.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_am.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "am".
+ * Implementation of DateTimeFormatInfo for the "am" locale.
  */
 public class DateTimeFormatInfoImpl_am extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "ጡዋት",
         "ከሳዓት"
     };
@@ -32,35 +32,35 @@
 
   @Override
   public String dateFormatFull() {
-    return "EEEE፣ dd MMMM ቀን y G";
+    return "EEEE, d MMMM y";
   }
 
   @Override
   public String dateFormatLong() {
-    return "dd MMMM y";
+    return "d MMMM y";
   }
 
   @Override
   public String dateFormatMedium() {
-    return "MMM d y";
+    return "d MMM y";
   }
 
   @Override
   public String dateFormatShort() {
-    return "dd/MM/yy";
+    return "dd/MM/yyyy";
   }
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
-        "ዓ/ዓ",
-        "ዓ/ም"
+    return new String[] {
+        "ዓመተ ዓለም",
+        "ዓመተ ምሕረት"
     };
   }
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "ዓ/ዓ",
         "ዓ/ም"
     };
@@ -128,7 +128,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "ጃንዩወሪ",
         "ፌብሩወሪ",
         "ማርች",
@@ -145,13 +145,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "ጃ",
         "ፌ",
         "ማ",
@@ -168,13 +163,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "ጃንዩ",
         "ፌብሩ",
         "ማርች",
@@ -191,13 +181,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -207,17 +192,27 @@
 
   @Override
   public String timeFormatFull() {
-    return "hh:mm:ss a zzzz";
+    return "h:mm:ss a zzzz";
   }
 
   @Override
   public String timeFormatLong() {
-    return "hh:mm:ss a z";
+    return "h:mm:ss a z";
+  }
+
+  @Override
+  public String timeFormatMedium() {
+    return "h:mm:ss a";
+  }
+
+  @Override
+  public String timeFormatShort() {
+    return "h:mm a";
   }
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "እሑድ",
         "ሰኞ",
         "ማክሰኞ",
@@ -229,13 +224,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "እ",
         "ሰ",
         "ማ",
@@ -247,13 +237,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "እሑድ",
         "ሰኞ",
         "ማክሰ",
@@ -263,9 +248,4 @@
         "ቅዳሜ"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ar_OM.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ar_OM.java
index 1e30156..108ffea 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ar_OM.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ar_OM.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ar_OM".
+ * Implementation of DateTimeFormatInfo for the "ar_OM" locale.
  */
 public class DateTimeFormatInfoImpl_ar_OM extends DateTimeFormatInfoImpl_ar {
 
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ar_QA.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ar_QA.java
index 2080b58..bb326dc 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ar_QA.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ar_QA.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ar_QA".
+ * Implementation of DateTimeFormatInfo for the "ar_QA" locale.
  */
 public class DateTimeFormatInfoImpl_ar_QA extends DateTimeFormatInfoImpl_ar {
 
   @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "الأحد",
         "الاثنين",
         "الثلاثاء",
@@ -34,9 +34,4 @@
         "السبت"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ar_TN.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ar_TN.java
index f7f06ec..44e248f 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ar_TN.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ar_TN.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,14 +15,24 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ar_TN".
+ * Implementation of DateTimeFormatInfo for the "ar_TN" locale.
  */
 public class DateTimeFormatInfoImpl_ar_TN extends DateTimeFormatInfoImpl_ar {
 
   @Override
+  public String dateFormatMedium() {
+    return "yyyy/MM/dd";
+  }
+
+  @Override
+  public String dateFormatShort() {
+    return "yyyy/M/d";
+  }
+
+  @Override
   public String formatMonthNumDay() {
     return "M/d";
   }
@@ -39,7 +49,7 @@
 
   @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "الأحد",
         "الاثنين",
         "الثلاثاء",
@@ -49,9 +59,4 @@
         "السبت"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_as.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_as.java
index e9c6c7d..1c0cd45 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_as.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_as.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,18 +15,18 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "as".
+ * Implementation of DateTimeFormatInfo for the "as" locale.
  */
 public class DateTimeFormatInfoImpl_as extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
-        "পূৰ্বা",
-        "অপ"
+    return new String[] {
+        "পূৰ্বাহ্ণ",
+        "অপৰাহ্ণ"
     };
   }
 
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
@@ -60,38 +60,38 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
   }
 
   @Override
+  public int firstDayOfTheWeek() {
+    return 0;
+  }
+
+  @Override
   public String[] monthsFull() {
-    return new String[] { 
-        "জানুয়াৰী",
-        "ফেব্ৰুয়াৰী",
+    return new String[] {
+        "জানুৱাৰী",
+        "ফেব্ৰুৱাৰী",
         "মাৰ্চ",
         "এপ্ৰিল",
         "মে",
         "জুন",
         "জুলাই",
         "আগষ্ট",
-        "সেপ্টেম্বৰ",
+        "ছেপ্তেম্বৰ",
         "অক্টোবৰ",
-        "নভেম্বৰ",
-        "ডিসেম্বৰ"
+        "নৱেম্বৰ",
+        "ডিচেম্বৰ"
     };
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -108,13 +108,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "জানু",
         "ফেব্ৰু",
         "মাৰ্চ",
@@ -131,17 +126,22 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
+  public String[] quartersFull() {
+    return new String[] {
+        "প্ৰথম প্ৰহৰ",
+        "দ্বিতীয় প্ৰহৰ",
+        "তৃতীয় প্ৰহৰ",
+        "চতুৰ্থ প্ৰহৰ"
+    };
   }
 
   @Override
-  public String[] quartersFull() {
-    return new String[] { 
-        "Q1",
-        "Q2",
-        "Q3",
-        "Q4"
+  public String[] quartersShort() {
+    return new String[] {
+        "প্ৰথম প্ৰহৰ",
+        "দ্বিতীয় প্ৰহৰ",
+        "তৃতীয় প্ৰহৰ",
+        "চতুৰ্থ প্ৰহৰ"
     };
   }
 
@@ -167,7 +167,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "দেওবাৰ",
         "সোমবাৰ",
         "মঙ্গলবাৰ",
@@ -179,13 +179,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -197,13 +192,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "ৰবি",
         "সোম",
         "মঙ্গল",
@@ -215,11 +205,6 @@
   }
 
   @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
-
-  @Override
   public int weekendStart() {
     return 0;
   }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_bo.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_bo.java
index a655f4e..d7f5ba0 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_bo.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_bo.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,27 +15,22 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "bo".
+ * Implementation of DateTimeFormatInfo for the "bo" locale.
  */
 public class DateTimeFormatInfoImpl_bo extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "སྔ་དྲོ་",
         "ཕྱི་དྲོ་"
     };
   }
 
   @Override
-  public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
-  }
-
-  @Override
   public String dateFormatLong() {
     return "སྦྱི་ལོ་y MMMMའི་ཙེས་dད";
   }
@@ -46,13 +41,8 @@
   }
 
   @Override
-  public String dateFormatShort() {
-    return "yyyy-MM-dd";
-  }
-
-  @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "སྤྱི་ལོ་སྔོན།",
         "སྤྱི་ལོ།"
     };
@@ -60,13 +50,18 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "སྤྱི་ལོ་སྔོན།",
         "སྤྱི་ལོ།"
     };
   }
 
   @Override
+  public int firstDayOfTheWeek() {
+    return 0;
+  }
+
+  @Override
   public String formatYearMonthAbbrevDay() {
     return "སྦྱི་ལོ་y MMMའི་ཙེས་dད";
   }
@@ -78,7 +73,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "ཟླ་བ་དང་པོ་",
         "ཟླ་བ་གཉིས་པ་",
         "ཟླ་བ་སུམ་པ་",
@@ -95,13 +90,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -118,13 +108,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "ཟླ་༡",
         "ཟླ་༢",
         "ཟླ་༣",
@@ -141,13 +126,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "དུས་ཚིགས་དང་པོ།",
         "དུས་ཚིགས་གཉིས་པ།",
         "་དུས་ཚིགས་གསུམ་པ།",
@@ -157,7 +137,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "དུས་ཚིགས་དང་པོ།",
         "དུས་ཚིགས་གཉིས་པ།",
         "་དུས་ཚིགས་གསུམ་པ།",
@@ -166,28 +146,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "གཟའ་ཉི་མ་",
         "གཟའ་ཟླ་བ་",
         "གཟའ་མིག་དམར་",
@@ -199,13 +159,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "ཉི",
         "ཟླ",
         "མི",
@@ -217,13 +172,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "ཉི་མ་",
         "ཟླ་བ་",
         "མིག་དམར་",
@@ -233,9 +183,4 @@
         "སྤེན་པ་"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_byn.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_byn.java
index 587bd9b..a0120f4 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_byn.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_byn.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "byn".
+ * Implementation of DateTimeFormatInfo for the "byn" locale.
  */
 public class DateTimeFormatInfoImpl_byn extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "ፋዱስ ጃብ",
         "ፋዱስ ደምቢ"
     };
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "ይጅ",
         "ኣድ"
     };
@@ -60,7 +60,7 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "ይጅ",
         "ኣድ"
     };
@@ -68,7 +68,7 @@
 
   @Override
   public int firstDayOfTheWeek() {
-    return 1;
+    return 6;
   }
 
   @Override
@@ -128,7 +128,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "ልደትሪ",
         "ካብኽብቲ",
         "ክብላ",
@@ -145,13 +145,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "ል",
         "ካ",
         "ክ",
@@ -168,13 +163,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "ልደት",
         "ካብኽ",
         "ክብላ",
@@ -191,13 +181,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -206,8 +191,28 @@
   }
 
   @Override
+  public String timeFormatFull() {
+    return "h:mm:ss a zzzz";
+  }
+
+  @Override
+  public String timeFormatLong() {
+    return "h:mm:ss a z";
+  }
+
+  @Override
+  public String timeFormatMedium() {
+    return "h:mm:ss a";
+  }
+
+  @Override
+  public String timeFormatShort() {
+    return "h:mm a";
+  }
+
+  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "ሰንበር ቅዳዅ",
         "ሰኑ",
         "ሰሊጝ",
@@ -219,13 +224,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "ሰ",
         "ሰ",
         "ሰ",
@@ -237,13 +237,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "ሰ/ቅ",
         "ሰኑ",
         "ሰሊጝ",
@@ -253,9 +248,4 @@
         "ሰ/ሽ"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ca.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ca.java
index 407cf3f..e79d1f7 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ca.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ca.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ca".
+ * Implementation of DateTimeFormatInfo for the "ca" locale.
  */
 public class DateTimeFormatInfoImpl_ca extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "a.m.",
         "p.m."
     };
@@ -52,26 +52,21 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
-        "aC",
-        "dC"
+    return new String[] {
+        "abans de Crist",
+        "després de Crist"
     };
   }
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "aC",
         "dC"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatHour24Minute() {
     return "H:mm";
   }
@@ -113,7 +108,7 @@
 
   @Override
   public String formatYearMonthFull() {
-    return "LLLL y";
+    return "LLLL 'del' y";
   }
 
   @Override
@@ -148,7 +143,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "de gener",
         "de febrer",
         "de març",
@@ -166,7 +161,7 @@
 
   @Override
   public String[] monthsFullStandalone() {
-    return new String[] { 
+    return new String[] {
         "gener",
         "febrer",
         "març",
@@ -184,7 +179,25 @@
 
   @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
+        "G",
+        "F",
+        "M",
+        "A",
+        "M",
+        "J",
+        "J",
+        "A",
+        "S",
+        "O",
+        "N",
+        "D"
+    };
+  }
+
+  @Override
+  public String[] monthsNarrowStandalone() {
+    return new String[] {
         "g",
         "f",
         "m",
@@ -201,13 +214,26 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
+  public String[] monthsShort() {
+    return new String[] {
+        "de gen.",
+        "de febr.",
+        "de març",
+        "d’abr.",
+        "de maig",
+        "de juny",
+        "de jul.",
+        "d’ag.",
+        "de set.",
+        "d’oct.",
+        "de nov.",
+        "de des."
+    };
   }
 
   @Override
-  public String[] monthsShort() {
-    return new String[] { 
+  public String[] monthsShortStandalone() {
+    return new String[] {
         "gen.",
         "febr.",
         "març",
@@ -224,13 +250,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "1r trimestre",
         "2n trimestre",
         "3r trimestre",
@@ -240,7 +261,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "1T",
         "2T",
         "3T",
@@ -270,7 +291,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "diumenge",
         "dilluns",
         "dimarts",
@@ -283,12 +304,33 @@
 
   @Override
   public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
+    return new String[] {
+        "Diumenge",
+        "Dilluns",
+        "Dimarts",
+        "Dimecres",
+        "Dijous",
+        "Divendres",
+        "dissabte"
+    };
   }
 
   @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
+        "G",
+        "l",
+        "T",
+        "C",
+        "J",
+        "V",
+        "S"
+    };
+  }
+
+  @Override
+  public String[] weekdaysNarrowStandalone() {
+    return new String[] {
         "g",
         "l",
         "t",
@@ -300,13 +342,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "dg.",
         "dl.",
         "dt.",
@@ -319,7 +356,7 @@
 
   @Override
   public String[] weekdaysShortStandalone() {
-    return new String[] { 
+    return new String[] {
         "dg",
         "dl",
         "dt",
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_dz.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_dz.java
index 110526d..3c047e8 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_dz.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_dz.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "dz".
+ * Implementation of DateTimeFormatInfo for the "dz" locale.
  */
 public class DateTimeFormatInfoImpl_dz extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "སྔ་ཆ་",
         "ཕྱི་ཆ་"
     };
@@ -46,13 +46,8 @@
   }
 
   @Override
-  public String dateFormatShort() {
-    return "yyyy-MM-dd";
-  }
-
-  @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
@@ -60,18 +55,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatMonthFullWeekdayDay() {
     return "EEEE, MMMM d";
   }
@@ -128,7 +118,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "སྤྱི་ཟླཝ་དངཔ་",
         "སྤྱི་ཟླཝ་གཉིས་པ་",
         "སྤྱི་ཟླཝ་གསུམ་པ་",
@@ -145,13 +135,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -168,13 +153,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "ཟླ་ ༡",
         "ཟླ་ ༢",
         "ཟླ་ ༣",
@@ -191,13 +171,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "བཞི་དཔྱ་དང་པ་",
         "བཞི་དཔྱ་གཉིས་པ་",
         "བཞི་དཔྱ་གསུམ་པ་",
@@ -207,7 +182,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "བཞི་དཔྱ་༡",
         "བཞི་དཔྱ་༢",
         "བཞི་དཔྱ་༣",
@@ -216,6 +191,11 @@
   }
 
   @Override
+  public String timeFormat() {
+    return timeFormatLong();
+  }
+
+  @Override
   public String timeFormatFull() {
     return "ཆུ་ཚོད་ h སྐར་མ་ mm སྐར་ཆཱ་ ss a zzzz";
   }
@@ -237,7 +217,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "གཟའ་ཟླ་བ་",
         "གཟའ་མིག་དམར་",
         "གཟའ་ལྷག་པ་",
@@ -249,13 +229,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -267,13 +242,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "ཟླ་",
         "མིར་",
         "ལྷག་",
@@ -283,9 +253,4 @@
         "ཉི་"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_en.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_en.java
index 38b4bc1..7b47002 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_en.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_en.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,14 +15,39 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "en".
+ * Implementation of DateTimeFormatInfo for the "en" locale.
  */
 public class DateTimeFormatInfoImpl_en extends DateTimeFormatInfoImpl {
 
   @Override
+  public String dateFormatFull() {
+    return "EEEE, MMMM d, y";
+  }
+
+  @Override
+  public String dateFormatLong() {
+    return "MMMM d, y";
+  }
+
+  @Override
+  public String dateFormatMedium() {
+    return "MMM d, y";
+  }
+
+  @Override
+  public String dateFormatShort() {
+    return "M/d/yy";
+  }
+
+  @Override
+  public int firstDayOfTheWeek() {
+    return 0;
+  }
+
+  @Override
   public String formatMonthFullWeekdayDay() {
     return "EEEE, MMMM d";
   }
@@ -76,4 +101,24 @@
   public String formatYearQuarterShort() {
     return "Q y";
   }
+
+  @Override
+  public String timeFormatFull() {
+    return "h:mm:ss a zzzz";
+  }
+
+  @Override
+  public String timeFormatLong() {
+    return "h:mm:ss a z";
+  }
+
+  @Override
+  public String timeFormatMedium() {
+    return "h:mm:ss a";
+  }
+
+  @Override
+  public String timeFormatShort() {
+    return "h:mm a";
+  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_en_MT.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_en_MT.java
index 5903483..554d873 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_en_MT.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_en_MT.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "en_MT".
+ * Implementation of DateTimeFormatInfo for the "en_MT" locale.
  */
 public class DateTimeFormatInfoImpl_en_MT extends DateTimeFormatInfoImpl_en {
 
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_en_NZ.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_en_NZ.java
index 85433ae..769be2a 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_en_NZ.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_en_NZ.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "en_NZ".
+ * Implementation of DateTimeFormatInfo for the "en_NZ" locale.
  */
 public class DateTimeFormatInfoImpl_en_NZ extends DateTimeFormatInfoImpl_en {
 
@@ -43,11 +43,6 @@
   }
 
   @Override
-  public String formatMonthAbbrevDay() {
-    return "d MMM";
-  }
-
-  @Override
   public String formatMonthFullDay() {
     return "d MMMM";
   }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_AR.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_AR.java
index 7de9ea3..3825aed 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_AR.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_AR.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,14 +15,19 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "es_AR".
+ * Implementation of DateTimeFormatInfo for the "es_AR" locale.
  */
 public class DateTimeFormatInfoImpl_es_AR extends DateTimeFormatInfoImpl_es {
 
   @Override
+  public int firstDayOfTheWeek() {
+    return 0;
+  }
+
+  @Override
   public String formatYearMonthNum() {
     return "M-yyyy";
   }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_CO.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_CO.java
index c420522..f8e15db 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_CO.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_CO.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "es_CO".
+ * Implementation of DateTimeFormatInfo for the "es_CO" locale.
  */
 public class DateTimeFormatInfoImpl_es_CO extends DateTimeFormatInfoImpl_es {
 
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_PA.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_PA.java
index 0f2f7d8..ba1aa6c 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_PA.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_PA.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "es_PA".
+ * Implementation of DateTimeFormatInfo for the "es_PA" locale.
  */
 public class DateTimeFormatInfoImpl_es_PA extends DateTimeFormatInfoImpl_es {
 
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_PR.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_PR.java
index 1ddbf2a..df794f2 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_PR.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_es_PR.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "es_PR".
+ * Implementation of DateTimeFormatInfo for the "es_PR" locale.
  */
 public class DateTimeFormatInfoImpl_es_PR extends DateTimeFormatInfoImpl_es {
 
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fa.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fa.java
index dc90aee..b3c5f34 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fa.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fa.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,44 +15,69 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "fa".
+ * Implementation of DateTimeFormatInfo for the "fa" locale.
  */
 public class DateTimeFormatInfoImpl_fa extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "قبل از ظهر",
         "بعد از ظهر"
     };
   }
 
   @Override
+  public String dateFormat() {
+    return dateFormatLong();
+  }
+
+  @Override
   public String dateFormatFull() {
-    return "EEEE d MMMM y";
+    return "EEEE, MMMM d, y";
   }
 
   @Override
   public String dateFormatLong() {
-    return "d MMMM y";
+    return "MMMM d, y";
   }
 
   @Override
   public String dateFormatMedium() {
-    return "yyyy/M/d";
+    return "MMM d, y";
   }
 
   @Override
   public String dateFormatShort() {
-    return "yy/M/d";
+    return "M/d/yy";
+  }
+
+  @Override
+  public String dateTimeFull(String timePattern, String datePattern) {
+    return new java.lang.StringBuffer().append(datePattern).append("، ساعت ").append(timePattern).toString();
+  }
+
+  @Override
+  public String dateTimeLong(String timePattern, String datePattern) {
+    return new java.lang.StringBuffer().append(datePattern).append("، ساعت ").append(timePattern).toString();
+  }
+
+  @Override
+  public String dateTimeMedium(String timePattern, String datePattern) {
+    return new java.lang.StringBuffer().append(datePattern).append("،‏ ").append(timePattern).toString();
+  }
+
+  @Override
+  public String dateTimeShort(String timePattern, String datePattern) {
+    return new java.lang.StringBuffer().append(datePattern).append("،‏ ").append(timePattern).toString();
   }
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "قبل از میلاد",
         "میلادی"
     };
@@ -60,9 +85,9 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "ق.م.",
-        "م."
+        "ب. م."
     };
   }
 
@@ -148,15 +173,15 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "ژانویهٔ",
         "فوریهٔ",
         "مارس",
         "آوریل",
-        "مهٔ",
-        "ژوئن",
-        "ژوئیهٔ",
-        "اوت",
+        "می",
+        "جون",
+        "جولای",
+        "آگوست",
         "سپتامبر",
         "اکتبر",
         "نوامبر",
@@ -166,7 +191,7 @@
 
   @Override
   public String[] monthsFullStandalone() {
-    return new String[] { 
+    return new String[] {
         "ژانویه",
         "فوریه",
         "مارس",
@@ -184,12 +209,12 @@
 
   @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "ژ",
         "ف",
         "م",
         "آ",
-        "م",
+        "می",
         "ژ",
         "ژ",
         "ا",
@@ -201,38 +226,15 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "ژانویهٔ",
         "فوریهٔ",
         "مارس",
         "آوریل",
-        "مهٔ",
-        "ژوئن",
-        "ژوئیهٔ",
-        "اوت",
-        "سپتامبر",
-        "اکتبر",
-        "نوامبر",
-        "دسامبر"
-    };
-  }
-
-  @Override
-  public String[] monthsShortStandalone() {
-    return new String[] { 
-        "ژانویه",
-        "فوریه",
-        "مارس",
-        "آوریل",
-        "مه",
-        "ژوئن",
-        "ژوئیه",
+        "می",
+        "جون",
+        "جولای",
         "اوت",
         "سپتامبر",
         "اکتبر",
@@ -243,7 +245,7 @@
 
   @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "سه‌ماههٔ اول",
         "سه‌ماههٔ دوم",
         "سه‌ماههٔ سوم",
@@ -253,7 +255,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "س‌م۱",
         "س‌م۲",
         "س‌م۳",
@@ -283,7 +285,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "یکشنبه",
         "دوشنبه",
         "سه‌شنبه",
@@ -295,13 +297,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "ی",
         "د",
         "س",
@@ -313,13 +310,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "یکشنبه",
         "دوشنبه",
         "سه‌شنبه",
@@ -331,11 +323,6 @@
   }
 
   @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
-
-  @Override
   public int weekendEnd() {
     return 5;
   }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fa_AF.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fa_AF.java
index 3f1119e..3d41e61 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fa_AF.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fa_AF.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "fa_AF".
+ * Implementation of DateTimeFormatInfo for the "fa_AF" locale.
  */
 public class DateTimeFormatInfoImpl_fa_AF extends DateTimeFormatInfoImpl_fa {
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "جنوری",
         "فبروری",
         "مارچ",
@@ -42,7 +42,7 @@
 
   @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "ج",
         "ف",
         "م",
@@ -59,13 +59,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "جنو",
         "فوریهٔ",
         "مارس",
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fi.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fi.java
index 6611c93..5a9cfe8 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fi.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fi.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "fi".
+ * Implementation of DateTimeFormatInfo for the "fi" locale.
  */
 public class DateTimeFormatInfoImpl_fi extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "ap.",
         "ip."
     };
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "ennen Kristuksen syntymää",
         "jälkeen Kristuksen syntymän"
     };
@@ -60,18 +60,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "eKr.",
         "jKr."
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatHour12Minute() {
     return "h.mm a";
   }
@@ -163,7 +158,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "tammikuuta",
         "helmikuuta",
         "maaliskuuta",
@@ -181,7 +176,7 @@
 
   @Override
   public String[] monthsFullStandalone() {
-    return new String[] { 
+    return new String[] {
         "tammikuu",
         "helmikuu",
         "maaliskuu",
@@ -199,7 +194,7 @@
 
   @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "T",
         "H",
         "M",
@@ -216,13 +211,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "tammikuuta",
         "helmikuuta",
         "maaliskuuta",
@@ -240,7 +230,7 @@
 
   @Override
   public String[] monthsShortStandalone() {
-    return new String[] { 
+    return new String[] {
         "tammi",
         "helmi",
         "maalis",
@@ -258,7 +248,7 @@
 
   @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "1. neljännes",
         "2. neljännes",
         "3. neljännes",
@@ -268,7 +258,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "1. nelj.",
         "2. nelj.",
         "3. nelj.",
@@ -298,7 +288,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "sunnuntaina",
         "maanantaina",
         "tiistaina",
@@ -311,7 +301,7 @@
 
   @Override
   public String[] weekdaysFullStandalone() {
-    return new String[] { 
+    return new String[] {
         "sunnuntai",
         "maanantai",
         "tiistai",
@@ -324,7 +314,7 @@
 
   @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "S",
         "M",
         "T",
@@ -336,13 +326,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "su",
         "ma",
         "ti",
@@ -352,9 +337,4 @@
         "la"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fo.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fo.java
index 79ccf51..3de33fe 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fo.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_fo.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,14 +15,22 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "fo".
+ * Implementation of DateTimeFormatInfo for the "fo" locale.
  */
 public class DateTimeFormatInfoImpl_fo extends DateTimeFormatInfoImpl {
 
   @Override
+  public String[] ampms() {
+    return new String[] {
+        "f.p.",
+        "s.p."
+    };
+  }
+
+  @Override
   public String dateFormatFull() {
     return "EEEE dd MMMM y";
   }
@@ -44,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "fyrir Krist",
         "eftir Krist"
     };
@@ -52,13 +60,18 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "f.Kr.",
         "e.Kr."
     };
   }
 
   @Override
+  public int firstDayOfTheWeek() {
+    return 0;
+  }
+
+  @Override
   public String formatYearMonthAbbrevDay() {
     return "d. MMM y";
   }
@@ -80,7 +93,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "januar",
         "februar",
         "mars",
@@ -97,36 +110,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
-  public String[] monthsNarrow() {
-    return new String[] { 
-        "1",
-        "2",
-        "3",
-        "4",
-        "5",
-        "6",
-        "7",
-        "8",
-        "9",
-        "10",
-        "11",
-        "12"
-    };
-  }
-
-  @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "jan",
         "feb",
         "mar",
@@ -143,13 +128,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "1. kvartal",
         "2. kvartal",
         "3. kvartal",
@@ -159,7 +139,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "K1",
         "K2",
         "K3",
@@ -168,28 +148,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "sunnudagur",
         "mánadagur",
         "týsdagur",
@@ -201,31 +161,21 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
-        "1",
-        "2",
-        "3",
-        "4",
-        "5",
-        "6",
-        "7"
+    return new String[] {
+        "S",
+        "M",
+        "T",
+        "M",
+        "H",
+        "F",
+        "L"
     };
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "sun",
         "mán",
         "týs",
@@ -235,9 +185,4 @@
         "ley"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_gl.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_gl.java
index 5b57e0e..59feacc 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_gl.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_gl.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "gl".
+ * Implementation of DateTimeFormatInfo for the "gl" locale.
  */
 public class DateTimeFormatInfoImpl_gl extends DateTimeFormatInfoImpl {
 
@@ -44,7 +44,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "antes de Cristo",
         "despois de Cristo"
     };
@@ -52,18 +52,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "a.C.",
         "d.C."
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatMonthAbbrevDay() {
     return "d MMM";
   }
@@ -130,7 +125,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "Xaneiro",
         "Febreiro",
         "Marzo",
@@ -147,13 +142,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "X",
         "F",
         "M",
@@ -170,13 +160,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "Xan",
         "Feb",
         "Mar",
@@ -193,13 +178,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "1o trimestre",
         "2o trimestre",
         "3o trimestre",
@@ -209,7 +189,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "T1",
         "T2",
         "T3",
@@ -218,28 +198,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "Domingo",
         "Luns",
         "Martes",
@@ -251,13 +211,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "D",
         "L",
         "M",
@@ -269,13 +224,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "Dom",
         "Lun",
         "Mar",
@@ -285,9 +235,4 @@
         "Sáb"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_gu.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_gu.java
index 5ec5432..0559d3d 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_gu.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_gu.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,18 +15,18 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "gu".
+ * Implementation of DateTimeFormatInfo for the "gu" locale.
  */
 public class DateTimeFormatInfoImpl_gu extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
-        "am",
-        "pm"
+    return new String[] {
+        "પૂર્વ મધ્યાહ્ન",
+        "ઉત્તર મધ્યાહ્ન"
     };
   }
 
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "ઈસવીસન પૂર્વે",
         "ઇસવીસન"
     };
@@ -60,13 +60,18 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
-        "BCE",
-        "CE"
+    return new String[] {
+        "ઈલુના જન્મ પહેસાં",
+        "ઇસવીસન"
     };
   }
 
   @Override
+  public int firstDayOfTheWeek() {
+    return 0;
+  }
+
+  @Override
   public String formatHour12Minute() {
     return "hh:mm a";
   }
@@ -138,7 +143,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "જાન્યુઆરી",
         "ફેબ્રુઆરી",
         "માર્ચ",
@@ -155,13 +160,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "જા",
         "ફે",
         "મા",
@@ -178,13 +178,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "જાન્યુ",
         "ફેબ્રુ",
         "માર્ચ",
@@ -201,27 +196,22 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
-        "પહલી ત્રિમાસિક",
-        "બીજી ત્રિમાસિક",
-        "ત્રીજી ત્રિમાસિક",
-        "ચૌથી ત્રિમાસિક"
+    return new String[] {
+        "પેહલા હંત 1",
+        "ડૂસઋા હંત 2",
+        "તીસઋા હંત 3",
+        "ચૌતા હંત 4"
     };
   }
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
-        "ત્રિમાસિક ૧",
+    return new String[] {
+        "પેહલા હંત 1",
         "ત્રિમાસિક ૨",
         "ત્રિમાસિક ૩",
-        "ત્રિમાસિક ૪"
+        "ચૌતા હંત 4"
     };
   }
 
@@ -247,7 +237,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "રવિવાર",
         "સોમવાર",
         "મંગળવાર",
@@ -259,13 +249,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "ર",
         "સો",
         "મં",
@@ -277,13 +262,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "રવિ",
         "સોમ",
         "મંગળ",
@@ -295,11 +275,6 @@
   }
 
   @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
-
-  @Override
   public int weekendStart() {
     return 0;
   }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_he.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_he.java
index 22e8538..bb5c9e4 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_he.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_he.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,18 +15,18 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "he".
+ * Implementation of DateTimeFormatInfo for the "he" locale.
  */
 public class DateTimeFormatInfoImpl_he extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
-        "לפנה\"צ",
-        "אחה\"צ"
+    return new String[] {
+        "לפנה״צ",
+        "אחה״צ"
     };
   }
 
@@ -42,7 +42,7 @@
 
   @Override
   public String dateFormatMedium() {
-    return "dd/MM/yyyy";
+    return "d בMMM yyyy";
   }
 
   @Override
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "לפני הספירה",
         "לספירה"
     };
@@ -60,13 +60,18 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "לפנה״ס",
         "לסה״נ"
     };
   }
 
   @Override
+  public int firstDayOfTheWeek() {
+    return 0;
+  }
+
+  @Override
   public String formatMonthAbbrevDay() {
     return "d בMMM";
   }
@@ -133,7 +138,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "ינואר",
         "פברואר",
         "מרס",
@@ -150,13 +155,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -173,13 +173,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "ינו",
         "פבר",
         "מרס",
@@ -197,12 +192,25 @@
 
   @Override
   public String[] monthsShortStandalone() {
-    return monthsShort();
+    return new String[] {
+        "ינו׳",
+        "פבר׳",
+        "מרס",
+        "אפר׳",
+        "מאי",
+        "יונ׳",
+        "יול׳",
+        "אוג׳",
+        "ספט׳",
+        "אוק׳",
+        "נוב׳",
+        "דצמ׳"
+    };
   }
 
   @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "רבעון 1",
         "רבעון 2",
         "רבעון 3",
@@ -212,7 +220,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "רבעון 1",
         "רבעון 2",
         "רבעון 3",
@@ -221,28 +229,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "יום ראשון",
         "יום שני",
         "יום שלישי",
@@ -254,13 +242,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "א",
         "ב",
         "ג",
@@ -272,29 +255,19 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
-        "יום א'",
-        "יום ב'",
-        "יום ג'",
-        "יום ד'",
-        "יום ה'",
-        "יום ו'",
+    return new String[] {
+        "יום א׳",
+        "יום ב׳",
+        "יום ג׳",
+        "יום ד׳",
+        "יום ה׳",
+        "יום ו׳",
         "שבת"
     };
   }
 
   @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
-
-  @Override
   public int weekendEnd() {
     return 6;
   }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_hi.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_hi.java
index 454cc7f..625a7ad 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_hi.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_hi.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,14 +15,22 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "hi".
+ * Implementation of DateTimeFormatInfo for the "hi" locale.
  */
 public class DateTimeFormatInfoImpl_hi extends DateTimeFormatInfoImpl {
 
   @Override
+  public String[] ampms() {
+    return new String[] {
+        "पूर्वाह्न",
+        "अपराह्न"
+    };
+  }
+
+  @Override
   public String dateFormatFull() {
     return "EEEE, d MMMM y";
   }
@@ -44,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "ईसापूर्व",
         "सन"
     };
@@ -52,13 +60,18 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "ईसापूर्व",
         "सन"
     };
   }
 
   @Override
+  public int firstDayOfTheWeek() {
+    return 0;
+  }
+
+  @Override
   public String formatMonthAbbrevDay() {
     return "d MMM";
   }
@@ -115,7 +128,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "जनवरी",
         "फरवरी",
         "मार्च",
@@ -132,13 +145,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "ज",
         "फ़",
         "मा",
@@ -155,13 +163,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "जनवरी",
         "फरवरी",
         "मार्च",
@@ -178,51 +181,61 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
-        "प्रथम चौथाई",
-        "द्वितीय चौथाई",
-        "तृतीय चौथाई",
-        "चतुर्थ चौथाई"
+    return new String[] {
+        "तिमाही",
+        "दूसरी तिमाही",
+        "तीसरी तिमाही",
+        "चौथी तिमाही"
     };
   }
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
-        "प्रथम चौथाई",
-        "द्वितीय चौथाई",
-        "तृतीय चौथाई",
-        "चतुर्थ चौथाई"
+    return new String[] {
+        "तिमाही",
+        "दूसरी तिमाही",
+        "तीसरी तिमाही",
+        "चौथी तिमाही"
     };
   }
 
   @Override
+  public String timeFormatFull() {
+    return "h:mm:ss a zzzz";
+  }
+
+  @Override
+  public String timeFormatLong() {
+    return "h:mm:ss a z";
+  }
+
+  @Override
+  public String timeFormatMedium() {
+    return "h:mm:ss a";
+  }
+
+  @Override
+  public String timeFormatShort() {
+    return "h:mm a";
+  }
+
+  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "रविवार",
         "सोमवार",
         "मंगलवार",
         "बुधवार",
-        "गुरुवार",
+        "बृहस्पतिवार",
         "शुक्रवार",
         "शनिवार"
     };
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "र",
         "सो",
         "मं",
@@ -234,29 +247,19 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
-        "रवि",
-        "सोम",
-        "मंगल",
-        "बुध",
-        "गुरु",
-        "शुक्र",
-        "शनि"
+    return new String[] {
+        "रवि.",
+        "सोम.",
+        "मंगल.",
+        "बुध.",
+        "बृह.",
+        "शुक्र.",
+        "शनि."
     };
   }
 
   @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
-
-  @Override
   public int weekendStart() {
     return 0;
   }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_hu.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_hu.java
index 3e19d46..fc6476c 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_hu.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_hu.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "hu".
+ * Implementation of DateTimeFormatInfo for the "hu" locale.
  */
 public class DateTimeFormatInfoImpl_hu extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "de.",
         "du."
     };
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "időszámításunk előtt",
         "időszámításunk szerint"
     };
@@ -60,18 +60,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "i. e.",
         "i. sz."
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatHour24Minute() {
     return "H:mm";
   }
@@ -143,7 +138,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "január",
         "február",
         "március",
@@ -160,13 +155,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "J",
         "F",
         "M",
@@ -183,13 +173,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "jan.",
         "febr.",
         "márc.",
@@ -206,13 +191,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "I. negyedév",
         "II. negyedév",
         "III. negyedév",
@@ -222,7 +202,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "N1",
         "N2",
         "N3",
@@ -252,7 +232,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "vasárnap",
         "hétfő",
         "kedd",
@@ -264,13 +244,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "V",
         "H",
         "K",
@@ -282,13 +257,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "V",
         "H",
         "K",
@@ -298,9 +268,4 @@
         "Szo"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ia.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ia.java
index b3619f8..bfeabb2 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ia.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ia.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,44 +15,29 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ia".
+ * Implementation of DateTimeFormatInfo for the "ia" locale.
  */
 public class DateTimeFormatInfoImpl_ia extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "a.m.",
         "p.m."
     };
   }
 
   @Override
-  public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
-  }
-
-  @Override
-  public String dateFormatLong() {
-    return "y MMMM d";
-  }
-
-  @Override
-  public String dateFormatMedium() {
-    return "y MMM d";
-  }
-
-  @Override
   public String dateFormatShort() {
     return "yy/MM/dd";
   }
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "ante Christo",
         "post Christo"
     };
@@ -60,18 +45,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "a.Chr.",
         "p.Chr."
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatMonthFullWeekdayDay() {
     return "EEEE, MMMM d";
   }
@@ -128,7 +108,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "januario",
         "februario",
         "martio",
@@ -145,13 +125,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -168,13 +143,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "jan",
         "feb",
         "mar",
@@ -191,13 +161,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "1-me trimestre",
         "2-nde trimestre",
         "3-tie trimestre",
@@ -207,7 +172,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "T1",
         "T2",
         "T3",
@@ -216,28 +181,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "dominica",
         "lunedi",
         "martedi",
@@ -249,13 +194,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -267,13 +207,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "dom",
         "lun",
         "mar",
@@ -283,9 +218,4 @@
         "sab"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_id.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_id.java
index 1a3269a..4e1d310 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_id.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_id.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "id".
+ * Implementation of DateTimeFormatInfo for the "id" locale.
  */
 public class DateTimeFormatInfoImpl_id extends DateTimeFormatInfoImpl {
 
@@ -44,26 +44,21 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
-        "BCE",
-        "CE"
+    return new String[] {
+        "SM",
+        "M"
     };
   }
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
-        "BCE",
-        "CE"
+    return new String[] {
+        "SM",
+        "M"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatHour24Minute() {
     return "HH.mm";
   }
@@ -125,7 +120,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "Januari",
         "Februari",
         "Maret",
@@ -142,36 +137,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
-  public String[] monthsNarrow() {
-    return new String[] { 
-        "1",
-        "2",
-        "3",
-        "4",
-        "5",
-        "6",
-        "7",
-        "8",
-        "9",
-        "10",
-        "11",
-        "12"
-    };
-  }
-
-  @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "Jan",
         "Feb",
         "Mar",
@@ -188,13 +155,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "kuartal pertama",
         "kuartal kedua",
         "kuartal ketiga",
@@ -204,7 +166,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "K1",
         "K2",
         "K3",
@@ -214,27 +176,27 @@
 
   @Override
   public String timeFormatFull() {
-    return "H:mm:ss zzzz";
+    return "H.mm.ss zzzz";
   }
 
   @Override
   public String timeFormatLong() {
-    return "HH:mm:ss z";
+    return "HH.mm.ss z";
   }
 
   @Override
   public String timeFormatMedium() {
-    return "HH:mm:ss";
+    return "HH.mm.ss";
   }
 
   @Override
   public String timeFormatShort() {
-    return "HH:mm";
+    return "HH.mm";
   }
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "Minggu",
         "Senin",
         "Selasa",
@@ -246,31 +208,21 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
-        "1",
-        "2",
-        "3",
-        "4",
-        "5",
-        "6",
-        "7"
+    return new String[] {
+        "M",
+        "S",
+        "S",
+        "R",
+        "K",
+        "J",
+        "S"
     };
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "Min",
         "Sen",
         "Sel",
@@ -280,9 +232,4 @@
         "Sab"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ig.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ig.java
index 0ad72ea..dc87036 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ig.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ig.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ig".
+ * Implementation of DateTimeFormatInfo for the "ig" locale.
  */
 public class DateTimeFormatInfoImpl_ig extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "A.M.",
         "P.M."
     };
@@ -32,27 +32,27 @@
 
   @Override
   public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
+    return "EEEE, d MMMM y";
   }
 
   @Override
   public String dateFormatLong() {
-    return "y MMMM d";
+    return "d MMMM y";
   }
 
   @Override
   public String dateFormatMedium() {
-    return "y MMM d";
+    return "d MMM y";
   }
 
   @Override
   public String dateFormatShort() {
-    return "yy/MM/dd";
+    return "dd/MM/yyyy";
   }
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "Tupu Kristi",
         "Afọ Kristi"
     };
@@ -60,18 +60,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "T.K.",
         "A.K."
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatMonthFullWeekdayDay() {
     return "EEEE, MMMM d";
   }
@@ -128,7 +123,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "Jenụwarị",
         "Febrụwarị",
         "Maachị",
@@ -145,13 +140,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -168,13 +158,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "Jen",
         "Feb",
         "Maa",
@@ -191,43 +176,48 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
+  public String[] quartersFull() {
+    return new String[] {
+        "Ọkara 1",
+        "Ọkara 2",
+        "Ọkara 3",
+        "Ọkara 4"
+    };
   }
 
   @Override
-  public String[] quartersFull() {
-    return new String[] { 
-        "Q1",
-        "Q2",
-        "Q3",
-        "Q4"
+  public String[] quartersShort() {
+    return new String[] {
+        "Ọ1",
+        "Ọ2",
+        "Ọ3",
+        "Ọ4"
     };
   }
 
   @Override
   public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
+    return "h:mm:ss a zzzz";
   }
 
   @Override
   public String timeFormatLong() {
-    return "HH:mm:ss z";
+    return "h:mm:ss a z";
   }
 
   @Override
   public String timeFormatMedium() {
-    return "HH:mm:ss";
+    return "h:mm:ss a";
   }
 
   @Override
   public String timeFormatShort() {
-    return "HH:mm";
+    return "h:mm a";
   }
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "Mbọsị Ụka",
         "Mọnde",
         "Tiuzdee",
@@ -239,13 +229,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -257,13 +242,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "Ụka",
         "Mọn",
         "Tiu",
@@ -273,9 +253,4 @@
         "Sat"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_it.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_it.java
index e8c6cc9..7662420 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_it.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_it.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "it".
+ * Implementation of DateTimeFormatInfo for the "it" locale.
  */
 public class DateTimeFormatInfoImpl_it extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "m.",
         "p."
     };
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "a.C.",
         "d.C"
     };
@@ -60,18 +60,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "aC",
         "dC"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatHour12Minute() {
     return "hh:mm a";
   }
@@ -148,7 +143,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "gennaio",
         "febbraio",
         "marzo",
@@ -166,7 +161,7 @@
 
   @Override
   public String[] monthsFullStandalone() {
-    return new String[] { 
+    return new String[] {
         "Gennaio",
         "Febbraio",
         "Marzo",
@@ -184,7 +179,7 @@
 
   @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "G",
         "F",
         "M",
@@ -201,13 +196,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "gen",
         "feb",
         "mar",
@@ -224,13 +214,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "1o trimestre",
         "2o trimestre",
         "3o trimestre",
@@ -240,7 +225,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "T1",
         "T2",
         "T3",
@@ -249,28 +234,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH.mm.ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH.mm.ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH.mm.ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH.mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "domenica",
         "lunedì",
         "martedì",
@@ -283,7 +248,7 @@
 
   @Override
   public String[] weekdaysFullStandalone() {
-    return new String[] { 
+    return new String[] {
         "Domenica",
         "Lunedì",
         "Martedì",
@@ -296,7 +261,7 @@
 
   @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "D",
         "L",
         "M",
@@ -308,13 +273,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "dom",
         "lun",
         "mar",
@@ -324,9 +284,4 @@
         "sab"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_it_CH.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_it_CH.java
index 582ab1a..51cdaba 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_it_CH.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_it_CH.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "it_CH".
+ * Implementation of DateTimeFormatInfo for the "it_CH" locale.
  */
 public class DateTimeFormatInfoImpl_it_CH extends DateTimeFormatInfoImpl_it {
 
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kam.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kam.java
index 0024114..0029f96 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kam.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kam.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,44 +15,52 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "kam".
+ * Implementation of DateTimeFormatInfo for the "kam" locale.
  */
 public class DateTimeFormatInfoImpl_kam extends DateTimeFormatInfoImpl {
 
   @Override
+  public String[] ampms() {
+    return new String[] {
+        "Ĩyakwakya",
+        "Ĩyawĩoo"
+    };
+  }
+
+  @Override
   public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
+    return "EEEE, d MMMM y";
   }
 
   @Override
   public String dateFormatLong() {
-    return "y MMMM d";
+    return "d MMMM y";
   }
 
   @Override
   public String dateFormatMedium() {
-    return "y MMM d";
+    return "d MMM y";
   }
 
   @Override
   public String dateFormatShort() {
-    return "yy/MM/dd";
+    return "dd/MM/yyyy";
   }
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
-        "mbee wa yesu",
-        "IY"
+    return new String[] {
+        "Mbee wa Yesũ",
+        "Ĩtina wa Yesũ"
     };
   }
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "MY",
         "IY"
     };
@@ -60,7 +68,7 @@
 
   @Override
   public int firstDayOfTheWeek() {
-    return 1;
+    return 6;
   }
 
   @Override
@@ -120,154 +128,134 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
-        "Mwei wa mbee",
-        "Mwei wa keli",
-        "Mwei wa katatu",
-        "Mwei wa kanne",
-        "Mwei wa katano",
-        "Mwei wa thanthatu",
-        "Mwei wa muonza",
-        "Mwei wa nyanya",
-        "Mwei wa kenda",
-        "Mwei wa ikumi",
-        "Mwei wa ikumi na imwe",
-        "Mwei wa ikumi na ili"
+    return new String[] {
+        "Mwai wa mbee",
+        "Mwai wa kelĩ",
+        "Mwai wa katatũ",
+        "Mwai wa kana",
+        "Mwai wa katano",
+        "Mwai wa thanthatũ",
+        "Mwai wa muonza",
+        "Mwai wa nyaanya",
+        "Mwai wa kenda",
+        "Mwai wa ĩkumi",
+        "Mwai wa ĩkumi na ĩmwe",
+        "Mwai wa ĩkumi na ilĩ"
     };
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
-        "1",
-        "2",
-        "3",
-        "4",
-        "5",
-        "6",
-        "7",
-        "8",
-        "9",
-        "10",
-        "11",
-        "12"
+    return new String[] {
+        "M",
+        "K",
+        "K",
+        "K",
+        "K",
+        "T",
+        "M",
+        "N",
+        "K",
+        "Ĩ",
+        "Ĩ",
+        "Ĩ"
     };
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
-        "Mwei wa mbee",
-        "Mwei wa keli",
-        "Mwei wa katatu",
-        "Mwei wa kanne",
-        "Mwei wa katano",
-        "Mwei wa thanthatu",
-        "Mwei wa muonza",
-        "Mwei wa nyanya",
-        "Mwei wa kenda",
-        "Mwei wa ikumi",
-        "Mwei wa ikumi na imwe",
-        "Mwei wa ikumi na ili"
+    return new String[] {
+        "Mbe",
+        "Kel",
+        "Ktũ",
+        "Kan",
+        "Ktn",
+        "Tha",
+        "Moo",
+        "Nya",
+        "Knd",
+        "Ĩku",
+        "Ĩkm",
+        "Ĩkl"
     };
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
+  public String[] quartersFull() {
+    return new String[] {
+        "Lovo ya mbee",
+        "Lovo ya kelĩ",
+        "Lovo ya katatũ",
+        "Lovo ya kana"
+    };
   }
 
   @Override
-  public String[] quartersFull() {
-    return new String[] { 
-        "Q1",
-        "Q2",
-        "Q3",
-        "Q4"
+  public String[] quartersShort() {
+    return new String[] {
+        "L1",
+        "L2",
+        "L3",
+        "L4"
     };
   }
 
   @Override
   public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
+    return "h:mm:ss a zzzz";
   }
 
   @Override
   public String timeFormatLong() {
-    return "HH:mm:ss z";
+    return "h:mm:ss a z";
   }
 
   @Override
   public String timeFormatMedium() {
-    return "HH:mm:ss";
+    return "h:mm:ss a";
   }
 
   @Override
   public String timeFormatShort() {
-    return "HH:mm";
+    return "h:mm a";
   }
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
-        "Jumapili",
-        "Jumatatu",
-        "Jumanne",
-        "Jumatano",
-        "Alamisi",
-        "Ijumaa",
-        "Jumamosi"
+    return new String[] {
+        "Wa kyumwa",
+        "Wa kwambĩlĩlya",
+        "Wa kelĩ",
+        "Wa katatũ",
+        "Wa kana",
+        "Wa katano",
+        "Wa thanthatũ"
     };
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
-        "1",
-        "2",
-        "3",
-        "4",
-        "5",
-        "6",
-        "7"
+    return new String[] {
+        "Y",
+        "W",
+        "E",
+        "A",
+        "A",
+        "A",
+        "A"
     };
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
-        "Jpl",
-        "Jtt",
-        "Jnn",
-        "Jtn",
-        "Alh",
-        "Ijm",
-        "Jms"
+    return new String[] {
+        "Wky",
+        "Wkw",
+        "Wkl",
+        "Wtũ",
+        "Wkn",
+        "Wtn",
+        "Wth"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kcg.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kcg.java
index 23f186a..199861f 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kcg.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kcg.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,36 +15,21 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "kcg".
+ * Implementation of DateTimeFormatInfo for the "kcg" locale.
  */
 public class DateTimeFormatInfoImpl_kcg extends DateTimeFormatInfoImpl {
 
   @Override
-  public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
-  }
-
-  @Override
-  public String dateFormatLong() {
-    return "y MMMM d";
-  }
-
-  @Override
-  public String dateFormatMedium() {
-    return "y MMM d";
-  }
-
-  @Override
   public String dateFormatShort() {
     return "yy/MM/dd";
   }
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "Gabanin Miladi",
         "Miladi"
     };
@@ -52,18 +37,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "GM",
         "M"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatMonthFullWeekdayDay() {
     return "EEEE, MMMM d";
   }
@@ -120,7 +100,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "Zwat Juwung",
         "Zwat Swiyang",
         "Zwat Tsat",
@@ -137,13 +117,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -160,13 +135,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "Juw",
         "Swi",
         "Tsa",
@@ -183,13 +153,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -198,28 +163,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "Ladi",
         "Tanii",
         "Talata",
@@ -231,13 +176,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -249,13 +189,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "Lad",
         "Tan",
         "Tal",
@@ -265,9 +200,4 @@
         "Asa"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kk.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kk.java
index dde211f..1072e9c 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kk.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kk.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "kk".
+ * Implementation of DateTimeFormatInfo for the "kk" locale.
  */
 public class DateTimeFormatInfoImpl_kk extends DateTimeFormatInfoImpl {
 
@@ -44,7 +44,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
@@ -52,18 +52,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatYearMonthAbbrevDay() {
     return "d MMM y 'ж'.";
   }
@@ -85,7 +80,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "қаңтар",
         "ақпан",
         "наурыз",
@@ -102,13 +97,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -125,13 +115,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "қаң.",
         "ақп.",
         "нау.",
@@ -148,13 +133,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -163,28 +143,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "жексені",
         "дуйсенбі",
         "сейсенбі",
@@ -196,13 +156,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -214,13 +169,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "жс.",
         "дс.",
         "сс.",
@@ -230,9 +180,4 @@
         "сһ."
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kn.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kn.java
index 68f1a8d..456da90 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kn.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kn.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "kn".
+ * Implementation of DateTimeFormatInfo for the "kn" locale.
  */
 public class DateTimeFormatInfoImpl_kn extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "am",
         "pm"
     };
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "ಈಸಪೂವ೯.",
         "ಕ್ರಿಸ್ತ ಶಕ"
     };
@@ -60,13 +60,18 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
   }
 
   @Override
+  public int firstDayOfTheWeek() {
+    return 0;
+  }
+
+  @Override
   public String formatHour12Minute() {
     return "hh:mm a";
   }
@@ -138,7 +143,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "ಜನವರೀ",
         "ಫೆಬ್ರವರೀ",
         "ಮಾರ್ಚ್",
@@ -155,13 +160,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "ಜ",
         "ಫೆ",
         "ಮಾ",
@@ -178,13 +178,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "ಜನವರೀ",
         "ಫೆಬ್ರವರೀ",
         "ಮಾರ್ಚ್",
@@ -201,13 +196,18 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
+  public String[] quartersFull() {
+    return new String[] {
+        "ಒಂದು 1",
+        "ಎರಡು 2",
+        "ಮೂರು 3",
+        "ನಾಲೃಕ 4"
+    };
   }
 
   @Override
-  public String[] quartersFull() {
-    return new String[] { 
+  public String[] quartersShort() {
+    return new String[] {
         "ಒಂದು 1",
         "ಎರಡು 2",
         "ಮೂರು 3",
@@ -237,7 +237,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "ರವಿವಾರ",
         "ಸೋಮವಾರ",
         "ಮಂಗಳವಾರ",
@@ -249,13 +249,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "ರ",
         "ಸೋ",
         "ಮಂ",
@@ -267,13 +262,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "ರ.",
         "ಸೋ.",
         "ಮಂ.",
@@ -285,11 +275,6 @@
   }
 
   @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
-
-  @Override
   public int weekendStart() {
     return 0;
   }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kpe.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kpe.java
index 23db0bd..bedda13 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kpe.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_kpe.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,36 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "kpe".
+ * Implementation of DateTimeFormatInfo for the "kpe" locale.
  */
 public class DateTimeFormatInfoImpl_kpe extends DateTimeFormatInfoImpl {
 
   @Override
-  public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
-  }
-
-  @Override
-  public String dateFormatLong() {
-    return "y MMMM d";
-  }
-
-  @Override
-  public String dateFormatMedium() {
-    return "y MMM d";
-  }
-
-  @Override
-  public String dateFormatShort() {
-    return "yy/MM/dd";
-  }
-
-  @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
@@ -52,18 +32,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatMonthFullWeekdayDay() {
     return "EEEE, MMMM d";
   }
@@ -120,7 +95,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -137,13 +112,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -160,13 +130,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -183,13 +148,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -198,28 +158,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -231,13 +171,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -249,13 +184,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -265,9 +195,4 @@
         "7"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ku_SY.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ku_SY.java
index e7aa08e..dd4dd57 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ku_SY.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ku_SY.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,15 +15,162 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ku_SY".
+ * Implementation of DateTimeFormatInfo for the "ku_SY" locale.
  */
 public class DateTimeFormatInfoImpl_ku_SY extends DateTimeFormatInfoImpl_ku {
 
   @Override
+  public String[] ampms() {
+    return new String[] {
+        "BN",
+        "PN"
+    };
+  }
+
+  @Override
+  public String[] erasFull() {
+    return new String[] {
+        "BZ",
+        "PZ"
+    };
+  }
+
+  @Override
+  public String[] erasShort() {
+    return new String[] {
+        "BZ",
+        "PZ"
+    };
+  }
+
+  @Override
   public int firstDayOfTheWeek() {
     return 0;
   }
+
+  @Override
+  public String[] monthsFull() {
+    return new String[] {
+        "çile",
+        "sibat",
+        "adar",
+        "nîsan",
+        "gulan",
+        "hezîran",
+        "7",
+        "8",
+        "9",
+        "10",
+        "11",
+        "12"
+    };
+  }
+
+  @Override
+  public String[] monthsNarrow() {
+    return new String[] {
+        "ç",
+        "s",
+        "a",
+        "n",
+        "g",
+        "h",
+        "7",
+        "8",
+        "9",
+        "10",
+        "11",
+        "12"
+    };
+  }
+
+  @Override
+  public String[] monthsShort() {
+    return new String[] {
+        "çil",
+        "sib",
+        "adr",
+        "nîs",
+        "gul",
+        "hez",
+        "tîr",
+        "8",
+        "9",
+        "10",
+        "11",
+        "12"
+    };
+  }
+
+  @Override
+  public String[] quartersFull() {
+    return new String[] {
+        "Ç1",
+        "Ç2",
+        "Ç3",
+        "Ç4"
+    };
+  }
+
+  @Override
+  public String[] quartersShort() {
+    return new String[] {
+        "Ç1",
+        "Ç2",
+        "Ç3",
+        "Ç4"
+    };
+  }
+
+  @Override
+  public String[] weekdaysFull() {
+    return new String[] {
+        "yekşem",
+        "duşem",
+        "şê",
+        "çarşem",
+        "pêncşem",
+        "în",
+        "şemî"
+    };
+  }
+
+  @Override
+  public String[] weekdaysNarrow() {
+    return new String[] {
+        "y",
+        "d",
+        "s",
+        "ç",
+        "p",
+        "î",
+        "ş"
+    };
+  }
+
+  @Override
+  public String[] weekdaysShort() {
+    return new String[] {
+        "yş",
+        "dş",
+        "sş",
+        "çş",
+        "pş",
+        "în",
+        "ş"
+    };
+  }
+
+  @Override
+  public int weekendEnd() {
+    return 6;
+  }
+
+  @Override
+  public int weekendStart() {
+    return 5;
+  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ln.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ln.java
index c0922fb..ccfb809 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ln.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ln.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,36 +15,21 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ln".
+ * Implementation of DateTimeFormatInfo for the "ln" locale.
  */
 public class DateTimeFormatInfoImpl_ln extends DateTimeFormatInfoImpl {
 
   @Override
-  public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
-  }
-
-  @Override
-  public String dateFormatLong() {
-    return "y MMMM d";
-  }
-
-  @Override
-  public String dateFormatMedium() {
-    return "y MMM d";
-  }
-
-  @Override
   public String dateFormatShort() {
     return "yy/MM/dd";
   }
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "libosó ya Y.-K.",
         "nsima ya Y.-K."
     };
@@ -52,18 +37,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "libosó ya Y.-K.",
         "nsima ya Y.-K."
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatMonthFullWeekdayDay() {
     return "EEEE, MMMM d";
   }
@@ -120,7 +100,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "sánzá ya yambo",
         "sánzá ya míbalé",
         "sánzá ya mísáto",
@@ -137,13 +117,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -160,13 +135,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "s1",
         "s2",
         "s3",
@@ -183,13 +153,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "sánzá mísáto ya yambo",
         "sánzá mísáto ya míbalé",
         "sánzá mísáto ya mísáto",
@@ -199,7 +164,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "SM1",
         "SM2",
         "SM3",
@@ -208,28 +173,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "eyenga",
         "mokɔlɔ ya libosó",
         "mokɔlɔ ya míbalé",
@@ -241,13 +186,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -259,13 +199,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "eye",
         "m1",
         "m2",
@@ -275,9 +210,4 @@
         "mps"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_mn.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_mn.java
index f3d3726..9f7722f 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_mn.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_mn.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,36 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "mn".
+ * Implementation of DateTimeFormatInfo for the "mn" locale.
  */
 public class DateTimeFormatInfoImpl_mn extends DateTimeFormatInfoImpl {
 
   @Override
-  public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
-  }
-
-  @Override
-  public String dateFormatLong() {
-    return "y MMMM d";
-  }
-
-  @Override
-  public String dateFormatMedium() {
-    return "y MMM d";
-  }
-
-  @Override
-  public String dateFormatShort() {
-    return "yy/MM/dd";
-  }
-
-  @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "манай эриний өмнөх",
         "манай эриний"
     };
@@ -52,7 +32,7 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "м.э.ө",
         "м.э."
     };
@@ -115,7 +95,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "Хулгана",
         "Үхэр",
         "Бар",
@@ -132,13 +112,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -155,13 +130,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "хул",
         "үхэ",
         "бар",
@@ -178,13 +148,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "дөрөвний нэг",
         "дөрөвний хоёр",
         "дөрөвний гурав",
@@ -194,7 +159,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "1/4",
         "2/4",
         "3/4",
@@ -203,28 +168,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "ням",
         "даваа",
         "мягмар",
@@ -236,13 +181,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -254,13 +194,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "Ня",
         "Да",
         "Мя",
@@ -270,9 +205,4 @@
         "Бя"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_nb.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_nb.java
index 5c6afc7..78a52a3 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_nb.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_nb.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "nb".
+ * Implementation of DateTimeFormatInfo for the "nb" locale.
  */
 public class DateTimeFormatInfoImpl_nb extends DateTimeFormatInfoImpl {
 
@@ -44,7 +44,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "f.Kr.",
         "e.Kr."
     };
@@ -52,18 +52,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "f.Kr.",
         "e.Kr."
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatMinuteSecond() {
     return "mm.ss";
   }
@@ -135,7 +130,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "januar",
         "februar",
         "mars",
@@ -152,13 +147,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "jan.",
         "feb.",
         "mars",
@@ -175,13 +165,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "1. kvartal",
         "2. kvartal",
         "3. kvartal",
@@ -191,7 +176,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "K1",
         "K2",
         "K3",
@@ -201,27 +186,12 @@
 
   @Override
   public String timeFormatFull() {
-    return "'kl'. HH.mm.ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH.mm.ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH.mm.ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH.mm";
+    return "'kl'. HH:mm:ss zzzz";
   }
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "søndag",
         "mandag",
         "tirsdag",
@@ -233,13 +203,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "S",
         "M",
         "T",
@@ -251,13 +216,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "søn.",
         "man.",
         "tir.",
@@ -270,6 +230,14 @@
 
   @Override
   public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
+    return new String[] {
+        "sø.",
+        "ma.",
+        "ti.",
+        "on.",
+        "to.",
+        "fr.",
+        "lø."
+    };
   }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_nds.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_nds.java
index ddee894..49862b5 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_nds.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_nds.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,36 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "nds".
+ * Implementation of DateTimeFormatInfo for the "nds" locale.
  */
 public class DateTimeFormatInfoImpl_nds extends DateTimeFormatInfoImpl {
 
   @Override
-  public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
-  }
-
-  @Override
-  public String dateFormatLong() {
-    return "y MMMM d";
-  }
-
-  @Override
-  public String dateFormatMedium() {
-    return "y MMM d";
-  }
-
-  @Override
-  public String dateFormatShort() {
-    return "yyyy-MM-dd";
-  }
-
-  @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
@@ -52,18 +32,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatMonthFullWeekdayDay() {
     return "EEEE, MMMM d";
   }
@@ -120,7 +95,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -137,13 +112,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -160,13 +130,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -183,13 +148,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -198,28 +158,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -231,13 +171,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -249,13 +184,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -265,9 +195,4 @@
         "7"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ne.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ne.java
index f4a36a1..2bf4824 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ne.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ne.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,44 +15,24 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ne".
+ * Implementation of DateTimeFormatInfo for the "ne" locale.
  */
 public class DateTimeFormatInfoImpl_ne extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "पूर्व मध्यान्ह",
         "उत्तर मध्यान्ह"
     };
   }
 
   @Override
-  public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
-  }
-
-  @Override
-  public String dateFormatLong() {
-    return "y MMMM d";
-  }
-
-  @Override
-  public String dateFormatMedium() {
-    return "y MMM d";
-  }
-
-  @Override
-  public String dateFormatShort() {
-    return "yy/MM/dd";
-  }
-
-  @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "ईसा पूर्व",
         "सन्"
     };
@@ -60,20 +40,15 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "ईसा पूर्व",
         "सन्"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "जनवरी",
         "फेब्रुअरी",
         "मार्च",
@@ -90,13 +65,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "१",
         "२",
         "३",
@@ -113,13 +83,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "जन",
         "फेब",
         "मार्च",
@@ -136,13 +101,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "पहिलो सत्र",
         "दोस्रो सत्र",
         "तेस्रो सत्र",
@@ -151,28 +111,18 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
+  public String[] quartersShort() {
+    return new String[] {
+        "पहिलो सत्र",
+        "दोस्रो सत्र",
+        "तेस्रो सत्र",
+        "चौथो सत्र"
+    };
   }
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "आइतबार",
         "सोमबार",
         "मङ्गलबार",
@@ -184,13 +134,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "१",
         "२",
         "३",
@@ -202,13 +147,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "आइत",
         "सोम",
         "मङ्गल",
@@ -218,9 +158,4 @@
         "शनि"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ne_IN.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ne_IN.java
index c7186cc..f8cc394 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ne_IN.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ne_IN.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,19 +15,78 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ne_IN".
+ * Implementation of DateTimeFormatInfo for the "ne_IN" locale.
  */
 public class DateTimeFormatInfoImpl_ne_IN extends DateTimeFormatInfoImpl_ne {
 
   @Override
+  public String[] ampms() {
+    return new String[] {
+        "पूर्वाह्न",
+        "अपराह्न"
+    };
+  }
+
+  @Override
   public int firstDayOfTheWeek() {
     return 0;
   }
 
   @Override
+  public String[] monthsFull() {
+    return new String[] {
+        "जनवरी",
+        "फरवरी",
+        "मार्च",
+        "अप्रेल",
+        "मई",
+        "जुन",
+        "जुलाई",
+        "अगस्त",
+        "सेप्टेम्बर",
+        "अक्टोबर",
+        "नोभेम्बर",
+        "दिसम्बर"
+    };
+  }
+
+  @Override
+  public String[] quartersFull() {
+    return new String[] {
+        "पहिलो पाउ",
+        "दोस्रो पाउ",
+        "तेस्रो पाउ",
+        "चौथो पाउ"
+    };
+  }
+
+  @Override
+  public String[] quartersShort() {
+    return new String[] {
+        "पहिलो पाउ",
+        "दोस्रो पाउ",
+        "तेस्रो पाउ",
+        "चौथो पाउ"
+    };
+  }
+
+  @Override
+  public String[] weekdaysFull() {
+    return new String[] {
+        "आइतवार",
+        "सोमवार",
+        "मङ्गलवार",
+        "बुधवार",
+        "बिहीवार",
+        "शुक्रवार",
+        "शनिवार"
+    };
+  }
+
+  @Override
   public int weekendStart() {
     return 0;
   }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_nl_BE.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_nl_BE.java
index 860c1b6..c7a9997 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_nl_BE.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_nl_BE.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "nl_BE".
+ * Implementation of DateTimeFormatInfo for the "nl_BE" locale.
  */
 public class DateTimeFormatInfoImpl_nl_BE extends DateTimeFormatInfoImpl_nl {
 
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ny.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ny.java
index 44e0544..f87c46f 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ny.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ny.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,44 +15,27 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ny".
+ * Implementation of DateTimeFormatInfo for the "ny" locale.
  */
 public class DateTimeFormatInfoImpl_ny extends DateTimeFormatInfoImpl {
 
   @Override
-  public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
-  }
-
-  @Override
-  public String dateFormatLong() {
-    return "y MMMM d";
-  }
-
-  @Override
-  public String dateFormatMedium() {
-    return "y MMM d";
-  }
-
-  @Override
-  public String dateFormatShort() {
-    return "yy/MM/dd";
-  }
-
-  @Override
   public String[] erasFull() {
-    return new String[] { 
-        "BC",
-        "AD"
+    return new String[] {
+        "BCE",
+        "CE"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
+  public String[] erasShort() {
+    return new String[] {
+        "BCE",
+        "CE"
+    };
   }
 
   @Override
@@ -112,7 +95,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "Januwale",
         "Febuluwale",
         "Malichi",
@@ -129,13 +112,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -152,13 +130,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "Jan",
         "Feb",
         "Mal",
@@ -175,13 +148,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -190,28 +158,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "Lamulungu",
         "Lolemba",
         "Lachiwiri",
@@ -223,13 +171,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -241,13 +184,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "Mul",
         "Lem",
         "Wir",
@@ -257,9 +195,4 @@
         "Wer"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_oc.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_oc.java
index dacb4e2..26bb6c4 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_oc.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_oc.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,36 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "oc".
+ * Implementation of DateTimeFormatInfo for the "oc" locale.
  */
 public class DateTimeFormatInfoImpl_oc extends DateTimeFormatInfoImpl {
 
   @Override
-  public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
-  }
-
-  @Override
-  public String dateFormatLong() {
-    return "y MMMM d";
-  }
-
-  @Override
-  public String dateFormatMedium() {
-    return "y MMM d";
-  }
-
-  @Override
-  public String dateFormatShort() {
-    return "yyyy-MM-dd";
-  }
-
-  @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
@@ -52,18 +32,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatMonthFullWeekdayDay() {
     return "EEEE, MMMM d";
   }
@@ -120,7 +95,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "genièr",
         "febrièr",
         "març",
@@ -137,13 +112,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -160,13 +130,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "genièr",
         "febrièr",
         "març",
@@ -183,13 +148,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -198,28 +158,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "Dimenge",
         "diluns",
         "dimarç",
@@ -231,13 +171,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -249,13 +184,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "Dimenge",
         "diluns",
         "dimarç",
@@ -265,9 +195,4 @@
         "dissabte"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_or.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_or.java
index 2425b34..0aeafe5 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_or.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_or.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "or".
+ * Implementation of DateTimeFormatInfo for the "or" locale.
  */
 public class DateTimeFormatInfoImpl_or extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "am",
         "pm"
     };
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
@@ -60,13 +60,18 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
   }
 
   @Override
+  public int firstDayOfTheWeek() {
+    return 0;
+  }
+
+  @Override
   public String formatMonthNumDay() {
     return "d-M";
   }
@@ -118,7 +123,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "ଜାନୁଆରୀ",
         "ଫେବ୍ରୁୟାରୀ",
         "ମାର୍ଚ୍ଚ",
@@ -135,13 +140,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "ଜା",
         "ଫେ",
         "ମା",
@@ -158,13 +158,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "ଜାନୁଆରୀ",
         "ଫେବ୍ରୁୟାରୀ",
         "ମାର୍ଚ୍ଚ",
@@ -181,13 +176,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -196,8 +186,28 @@
   }
 
   @Override
+  public String timeFormatFull() {
+    return "h:mm:ss a zzzz";
+  }
+
+  @Override
+  public String timeFormatLong() {
+    return "h:mm:ss a z";
+  }
+
+  @Override
+  public String timeFormatMedium() {
+    return "h:mm:ss a";
+  }
+
+  @Override
+  public String timeFormatShort() {
+    return "h:mm a";
+  }
+
+  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "ରବିବାର",
         "ସୋମବାର",
         "ମଙ୍ଗଳବାର",
@@ -209,13 +219,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "ର",
         "ସୋ",
         "ମ",
@@ -227,13 +232,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "ରବି",
         "ସୋମ",
         "ମଙ୍ଗଳ",
@@ -245,11 +245,6 @@
   }
 
   @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
-
-  @Override
   public int weekendStart() {
     return 0;
   }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pa_PK.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pa_PK.java
index f01a6df..87c2a0b 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pa_PK.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pa_PK.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,24 +15,29 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "pa_PK".
+ * Implementation of DateTimeFormatInfo for the "pa_PK" locale.
  */
 public class DateTimeFormatInfoImpl_pa_PK extends DateTimeFormatInfoImpl_pa {
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "ايساپورو",
         "سں"
     };
   }
 
   @Override
+  public int firstDayOfTheWeek() {
+    return 0;
+  }
+
+  @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "جنوری",
         "فروری",
         "مارچ",
@@ -49,13 +54,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "جنوری",
         "فروری",
         "مارچ",
@@ -72,13 +72,18 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
+  public String[] quartersFull() {
+    return new String[] {
+        "چوتھاي پہلاں",
+        "چوتھاي دوجا",
+        "چوتھاي تيجا",
+        "چوتھاي چوتھا"
+    };
   }
 
   @Override
-  public String[] quartersFull() {
-    return new String[] { 
+  public String[] quartersShort() {
+    return new String[] {
         "چوتھاي پہلاں",
         "چوتھاي دوجا",
         "چوتھاي تيجا",
@@ -88,7 +93,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "اتوار",
         "پیر",
         "منگل",
@@ -98,14 +103,4 @@
         "ہفتہ"
     };
   }
-
-  @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
-  public int weekendStart() {
-    return 6;
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pl.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pl.java
index fbe52a9..59a2c3a 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pl.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pl.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "pl".
+ * Implementation of DateTimeFormatInfo for the "pl" locale.
  */
 public class DateTimeFormatInfoImpl_pl extends DateTimeFormatInfoImpl {
 
@@ -39,12 +39,32 @@
 
   @Override
   public String dateFormatShort() {
-    return "dd-MM-yy";
+    return "dd-MM-yyyy";
+  }
+
+  @Override
+  public String dateTimeFull(String timePattern, String datePattern) {
+    return new java.lang.StringBuffer().append(datePattern).append(", ").append(timePattern).toString();
+  }
+
+  @Override
+  public String dateTimeLong(String timePattern, String datePattern) {
+    return new java.lang.StringBuffer().append(datePattern).append(", ").append(timePattern).toString();
+  }
+
+  @Override
+  public String dateTimeMedium(String timePattern, String datePattern) {
+    return new java.lang.StringBuffer().append(datePattern).append(", ").append(timePattern).toString();
+  }
+
+  @Override
+  public String dateTimeShort(String timePattern, String datePattern) {
+    return new java.lang.StringBuffer().append(datePattern).append(", ").append(timePattern).toString();
   }
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "p.n.e.",
         "n.e."
     };
@@ -52,18 +72,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "p.n.e.",
         "n.e."
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatHour12Minute() {
     return "hh:mm a";
   }
@@ -95,7 +110,7 @@
 
   @Override
   public String formatYearMonthAbbrev() {
-    return "LLL y";
+    return "MMM y";
   }
 
   @Override
@@ -140,7 +155,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "stycznia",
         "lutego",
         "marca",
@@ -158,7 +173,7 @@
 
   @Override
   public String[] monthsFullStandalone() {
-    return new String[] { 
+    return new String[] {
         "styczeń",
         "luty",
         "marzec",
@@ -176,7 +191,7 @@
 
   @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "s",
         "l",
         "m",
@@ -193,13 +208,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "sty",
         "lut",
         "mar",
@@ -216,13 +226,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "I kwartał",
         "II kwartał",
         "III kwartał",
@@ -232,7 +237,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "K1",
         "K2",
         "K3",
@@ -241,28 +246,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "niedziela",
         "poniedziałek",
         "wtorek",
@@ -274,13 +259,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "N",
         "P",
         "W",
@@ -292,13 +272,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "niedz.",
         "pon.",
         "wt.",
@@ -308,9 +283,4 @@
         "sob."
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ps.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ps.java
index 3e30994..bb6698c 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ps.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ps.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ps".
+ * Implementation of DateTimeFormatInfo for the "ps" locale.
  */
 public class DateTimeFormatInfoImpl_ps extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "غ.م.",
         "غ.و."
     };
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "ق.م.",
         "م."
     };
@@ -60,7 +60,7 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "ق.م.",
         "م."
     };
@@ -68,7 +68,7 @@
 
   @Override
   public int firstDayOfTheWeek() {
-    return 6;
+    return 0;
   }
 
   @Override
@@ -103,7 +103,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "جنوري",
         "فبروري",
         "مارچ",
@@ -120,13 +120,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -143,36 +138,26 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
-        "1",
-        "2",
-        "3",
-        "4",
-        "مـی",
+    return new String[] {
+        "جنوري",
+        "فبروري",
+        "مارچ",
+        "اپریل",
+        "می",
         "جون",
-        "7",
-        "8",
-        "9",
-        "10",
-        "11",
-        "12"
+        "جولای",
+        "اګست",
+        "سپتمبر",
+        "اکتوبر",
+        "نومبر",
+        "دسمبر"
     };
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -202,7 +187,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "یکشنبه",
         "دوشنبه",
         "سه‌شنبه",
@@ -214,13 +199,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -232,35 +212,15 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
-        "1",
-        "2",
-        "3",
-        "4",
-        "5",
-        "6",
-        "7"
+    return new String[] {
+        "یکشنبه",
+        "دوشنبه",
+        "سه‌شنبه",
+        "چهارشنبه",
+        "پنجشنبه",
+        "جمعه",
+        "شنبه"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
-
-  @Override
-  public int weekendEnd() {
-    return 5;
-  }
-
-  @Override
-  public int weekendStart() {
-    return 4;
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pt_PT.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pt_PT.java
index a59307e..f7c62a9 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pt_PT.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pt_PT.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,18 +15,18 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "pt_PT".
+ * Implementation of DateTimeFormatInfo for the "pt_PT" locale.
  */
 public class DateTimeFormatInfoImpl_pt_PT extends DateTimeFormatInfoImpl_pt {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
-        "Antes do meio-dia",
-        "Depois do meio-dia"
+    return new String[] {
+        "a.m.",
+        "p.m."
     };
   }
 
@@ -57,7 +57,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "Janeiro",
         "Fevereiro",
         "Março",
@@ -74,13 +74,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "Jan",
         "Fev",
         "Mar",
@@ -97,17 +92,25 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "1.º trimestre",
         "2.º trimestre",
         "3.º trimestre",
         "4.º trimestre"
     };
   }
+
+  @Override
+  public String[] weekdaysFull() {
+    return new String[] {
+        "Domingo",
+        "Segunda-feira",
+        "Terça-feira",
+        "Quarta-feira",
+        "Quinta-feira",
+        "Sexta-feira",
+        "Sábado"
+    };
+  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ru_UA.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ru_UA.java
index 1458bf1..81f27c1 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ru_UA.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ru_UA.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ru_UA".
+ * Implementation of DateTimeFormatInfo for the "ru_UA" locale.
  */
 public class DateTimeFormatInfoImpl_ru_UA extends DateTimeFormatInfoImpl_ru {
 
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_rw.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_rw.java
index 7939abc..af93033 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_rw.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_rw.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,36 +15,21 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "rw".
+ * Implementation of DateTimeFormatInfo for the "rw" locale.
  */
 public class DateTimeFormatInfoImpl_rw extends DateTimeFormatInfoImpl {
 
   @Override
-  public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
-  }
-
-  @Override
-  public String dateFormatLong() {
-    return "y MMMM d";
-  }
-
-  @Override
-  public String dateFormatMedium() {
-    return "y MMM d";
-  }
-
-  @Override
   public String dateFormatShort() {
     return "yy/MM/dd";
   }
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
@@ -52,25 +37,20 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatYearMonthNumDay() {
     return "y/M/d";
   }
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "Mutarama",
         "Gashyantare",
         "Werurwe",
@@ -87,13 +67,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -110,13 +85,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "mut.",
         "gas.",
         "wer.",
@@ -133,13 +103,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "igihembwe cya mbere",
         "igihembwe cya kabiri",
         "igihembwe cya gatatu",
@@ -149,7 +114,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "I1",
         "I2",
         "I3",
@@ -158,28 +123,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "Ku cyumweru",
         "Kuwa mbere",
         "Kuwa kabiri",
@@ -191,13 +136,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -209,13 +149,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "cyu.",
         "mbe.",
         "kab.",
@@ -225,9 +160,4 @@
         "gnd."
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_sa.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_sa.java
index c4a8edf..710c210 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_sa.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_sa.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "sa".
+ * Implementation of DateTimeFormatInfo for the "sa" locale.
  */
 public class DateTimeFormatInfoImpl_sa extends DateTimeFormatInfoImpl {
 
@@ -44,7 +44,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
@@ -60,7 +60,7 @@
 
   @Override
   public int firstDayOfTheWeek() {
-    return 1;
+    return 0;
   }
 
   @Override
@@ -120,7 +120,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -137,13 +137,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -160,13 +155,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -183,13 +173,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -219,7 +204,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -231,13 +216,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -249,13 +229,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -267,7 +242,7 @@
   }
 
   @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
+  public int weekendStart() {
+    return 0;
   }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_si.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_si.java
index 67b57c7..e86823d 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_si.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_si.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "si".
+ * Implementation of DateTimeFormatInfo for the "si" locale.
  */
 public class DateTimeFormatInfoImpl_si extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "පෙ.ව.",
         "ප.ව."
     };
@@ -36,23 +36,13 @@
   }
 
   @Override
-  public String dateFormatLong() {
-    return "y MMMM d";
-  }
-
-  @Override
-  public String dateFormatMedium() {
-    return "y MMM d";
-  }
-
-  @Override
   public String dateFormatShort() {
     return "yyyy/MM/dd";
   }
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "ක්‍රිස්තු පූර්‍ව",
         "ක්‍රිස්තු වර්‍ෂ"
     };
@@ -60,25 +50,20 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "ක්‍රි.පූ.",
         "ක්‍රි.ව."
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatYearMonthNumDay() {
     return "y/M/d";
   }
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "ජනවාර",
         "පෙබරවාර",
         "මාර්ත",
@@ -95,13 +80,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "ජ",
         "පෙ",
         "මා",
@@ -118,13 +98,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "ජන",
         "පෙබ",
         "මාර්ත",
@@ -141,13 +116,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "1 වන කාර්තුව",
         "2 වන කාර්තුව",
         "3 වන කාර්තුව",
@@ -157,7 +127,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "කාර්:1",
         "කාර්:2",
         "කාර්:3",
@@ -166,8 +136,28 @@
   }
 
   @Override
+  public String timeFormatFull() {
+    return "h:mm:ss a zzzz";
+  }
+
+  @Override
+  public String timeFormatLong() {
+    return "h:mm:ss a z";
+  }
+
+  @Override
+  public String timeFormatMedium() {
+    return "h:mm:ss a";
+  }
+
+  @Override
+  public String timeFormatShort() {
+    return "h:mm a";
+  }
+
+  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "ඉරිදා",
         "සඳුදා",
         "අඟහරුවාදා",
@@ -179,13 +169,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "ඉ",
         "ස",
         "අ",
@@ -197,13 +182,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "ඉරි",
         "සඳු",
         "අඟ",
@@ -213,9 +193,4 @@
         "සෙන"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_sk.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_sk.java
index 728a9c7..8de51f1 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_sk.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_sk.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "sk".
+ * Implementation of DateTimeFormatInfo for the "sk" locale.
  */
 public class DateTimeFormatInfoImpl_sk extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "dopoludnia",
         "popoludní"
     };
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "pred n.l.",
         "n.l."
     };
@@ -60,18 +60,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "pred n.l.",
         "n.l."
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatHour24Minute() {
     return "H:mm";
   }
@@ -148,7 +143,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "januára",
         "februára",
         "marca",
@@ -166,7 +161,7 @@
 
   @Override
   public String[] monthsFullStandalone() {
-    return new String[] { 
+    return new String[] {
         "január",
         "február",
         "marec",
@@ -184,7 +179,7 @@
 
   @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "j",
         "f",
         "m",
@@ -201,13 +196,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "jan",
         "feb",
         "mar",
@@ -224,13 +214,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "1. štvrťrok",
         "2. štvrťrok",
         "3. štvrťrok",
@@ -260,7 +245,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "nedeľa",
         "pondelok",
         "utorok",
@@ -272,13 +257,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "N",
         "P",
         "U",
@@ -290,13 +270,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "ne",
         "po",
         "ut",
@@ -306,9 +281,4 @@
         "so"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_sr.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_sr.java
index 5d85b5e..b2d8952 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_sr.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_sr.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "sr".
+ * Implementation of DateTimeFormatInfo for the "sr" locale.
  */
 public class DateTimeFormatInfoImpl_sr extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "пре подне",
         "поподне"
     };
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "Пре нове ере",
         "Нове ере"
     };
@@ -60,18 +60,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "п. н. е.",
-        "н. е"
+        "н. е."
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatHour12Minute() {
     return "hh.mm a";
   }
@@ -107,11 +102,6 @@
   }
 
   @Override
-  public String formatMonthFullWeekdayDay() {
-    return "EEEE d. MMMM";
-  }
-
-  @Override
   public String formatYearMonthAbbrev() {
     return "MMM. y";
   }
@@ -122,11 +112,6 @@
   }
 
   @Override
-  public String formatYearMonthFull() {
-    return "MMMM. y";
-  }
-
-  @Override
   public String formatYearMonthFullDay() {
     return "d. MMMM y.";
   }
@@ -143,7 +128,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "јануар",
         "фебруар",
         "март",
@@ -160,13 +145,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "ј",
         "ф",
         "м",
@@ -183,13 +163,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "јан",
         "феб",
         "мар",
@@ -206,13 +181,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Прво тромесечје",
         "Друго тромесечје",
         "Треће тромесечје",
@@ -222,7 +192,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "К1",
         "К2",
         "К3",
@@ -252,7 +222,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "недеља",
         "понедељак",
         "уторак",
@@ -264,13 +234,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "н",
         "п",
         "у",
@@ -282,13 +247,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "нед",
         "пон",
         "уто",
@@ -298,9 +258,4 @@
         "суб"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_st.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_st.java
index 55071fe..da863b8 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_st.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_st.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,44 +15,27 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "st".
+ * Implementation of DateTimeFormatInfo for the "st" locale.
  */
 public class DateTimeFormatInfoImpl_st extends DateTimeFormatInfoImpl {
 
   @Override
-  public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
-  }
-
-  @Override
-  public String dateFormatLong() {
-    return "y MMMM d";
-  }
-
-  @Override
-  public String dateFormatMedium() {
-    return "y MMM d";
-  }
-
-  @Override
-  public String dateFormatShort() {
-    return "yy/MM/dd";
-  }
-
-  @Override
   public String[] erasFull() {
-    return new String[] { 
-        "BC",
-        "AD"
+    return new String[] {
+        "BCE",
+        "CE"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
+  public String[] erasShort() {
+    return new String[] {
+        "BCE",
+        "CE"
+    };
   }
 
   @Override
@@ -112,7 +95,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "Phesekgong",
         "Hlakola",
         "Hlakubele",
@@ -129,13 +112,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -152,13 +130,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "Phe",
         "Kol",
         "Ube",
@@ -175,13 +148,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -190,28 +158,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "Sontaha",
         "Mmantaha",
         "Labobedi",
@@ -223,13 +171,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -241,13 +184,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "Son",
         "Mma",
         "Bed",
@@ -257,9 +195,4 @@
         "Moq"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_tg.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_tg.java
index 37f909e..aefc4da 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_tg.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_tg.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,44 +15,29 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "tg".
+ * Implementation of DateTimeFormatInfo for the "tg" locale.
  */
 public class DateTimeFormatInfoImpl_tg extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "пе. чо.",
         "па. чо."
     };
   }
 
   @Override
-  public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
-  }
-
-  @Override
-  public String dateFormatLong() {
-    return "y MMMM d";
-  }
-
-  @Override
-  public String dateFormatMedium() {
-    return "y MMM d";
-  }
-
-  @Override
   public String dateFormatShort() {
     return "yy/MM/dd";
   }
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "Пеш аз милод",
         "ПаМ"
     };
@@ -60,18 +45,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "ПеМ",
         "ПаМ"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatMonthFullWeekdayDay() {
     return "EEEE, MMMM d";
   }
@@ -128,7 +108,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "Январ",
         "Феврал",
         "Март",
@@ -145,13 +125,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -168,13 +143,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "Янв",
         "Фев",
         "Мар",
@@ -191,13 +161,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -206,28 +171,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "Якшанбе",
         "Душанбе",
         "Сешанбе",
@@ -239,13 +184,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -257,13 +197,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "Яшб",
         "Дшб",
         "Сшб",
@@ -273,9 +208,4 @@
         "Шнб"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_th.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_th.java
index 0ecb342..8b62b27 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_th.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_th.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "th".
+ * Implementation of DateTimeFormatInfo for the "th" locale.
  */
 public class DateTimeFormatInfoImpl_th extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "ก่อนเที่ยง",
         "หลังเที่ยง"
     };
@@ -51,8 +51,28 @@
   }
 
   @Override
+  public String dateTimeFull(String timePattern, String datePattern) {
+    return new java.lang.StringBuffer().append(datePattern).append(", ").append(timePattern).toString();
+  }
+
+  @Override
+  public String dateTimeLong(String timePattern, String datePattern) {
+    return new java.lang.StringBuffer().append(datePattern).append(", ").append(timePattern).toString();
+  }
+
+  @Override
+  public String dateTimeMedium(String timePattern, String datePattern) {
+    return new java.lang.StringBuffer().append(datePattern).append(", ").append(timePattern).toString();
+  }
+
+  @Override
+  public String dateTimeShort(String timePattern, String datePattern) {
+    return new java.lang.StringBuffer().append(datePattern).append(", ").append(timePattern).toString();
+  }
+
+  @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "ปีก่อนคริสต์ศักราช",
         "คริสต์ศักราช"
     };
@@ -60,13 +80,18 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "ปีก่อน ค.ศ.",
         "ค.ศ."
     };
   }
 
   @Override
+  public int firstDayOfTheWeek() {
+    return 0;
+  }
+
+  @Override
   public String formatHour12Minute() {
     return "H:mm";
   }
@@ -87,43 +112,28 @@
   }
 
   @Override
-  public String formatMinuteSecond() {
-    return "m ├'F13': s┤";
-  }
-
-  @Override
-  public String formatMonthAbbrev() {
-    return "MMM";
-  }
-
-  @Override
   public String formatMonthAbbrevDay() {
-    return "d ├'F3': MMM┤";
-  }
-
-  @Override
-  public String formatMonthFull() {
-    return "MMMM";
+    return "d MMM";
   }
 
   @Override
   public String formatMonthFullDay() {
-    return "d ├'F3': MMMM┤";
+    return "d MMMM";
   }
 
   @Override
   public String formatMonthFullWeekdayDay() {
-    return "d ├'F3': MMMM┤ ├'F6': EEEE┤";
+    return "EEEE d MMMM";
   }
 
   @Override
   public String formatMonthNumDay() {
-    return "M ├'F7': d┤";
+    return "d/M";
   }
 
   @Override
   public String formatYearMonthAbbrev() {
-    return "y ├'F3': MMM┤";
+    return "MMM y";
   }
 
   @Override
@@ -133,7 +143,7 @@
 
   @Override
   public String formatYearMonthFull() {
-    return "y ├'F3': MMMM┤";
+    return "MMMM y";
   }
 
   @Override
@@ -143,7 +153,7 @@
 
   @Override
   public String formatYearMonthNum() {
-    return "y ├'F3': M┤";
+    return "M/yyyy";
   }
 
   @Override
@@ -153,22 +163,22 @@
 
   @Override
   public String formatYearMonthWeekdayDay() {
-    return "d MMM y ├'F6': EEE┤";
+    return "EEE d MMM y";
   }
 
   @Override
   public String formatYearQuarterFull() {
-    return "y ├'F2': QQQQ┤";
+    return "QQQQ yyyy";
   }
 
   @Override
   public String formatYearQuarterShort() {
-    return "y ├'F2': Q┤";
+    return "Q yyyy";
   }
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "มกราคม",
         "กุมภาพันธ์",
         "มีนาคม",
@@ -185,36 +195,26 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
-        "ม.ค.",
-        "ก.พ.",
-        "มี.ค.",
-        "เม.ย.",
-        "พ.ค.",
-        "มิ.ย.",
-        "ก.ค.",
-        "ส.ค.",
-        "ก.ย.",
-        "ต.ค.",
-        "พ.ย.",
-        "ธ.ค."
+    return new String[] {
+        "ม",
+        "ก",
+        "ม",
+        "ม",
+        "พ",
+        "ม",
+        "ก",
+        "ส",
+        "ก",
+        "ต",
+        "พ",
+        "ธ"
     };
   }
 
   @Override
   public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
-  public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "ม.ค.",
         "ก.พ.",
         "มี.ค.",
@@ -231,13 +231,26 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
+  public String[] monthsShort() {
+    return new String[] {
+        "ม.ค.",
+        "ก.พ.",
+        "มี.ค.",
+        "เม.ย.",
+        "พ.ค.",
+        "มิ.ย.",
+        "ก.ค.",
+        "ส.ค.",
+        "ก.ย.",
+        "ต.ค.",
+        "พ.ย.",
+        "ธ.ค."
+    };
   }
 
   @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "ไตรมาส 1",
         "ไตรมาส 2",
         "ไตรมาส 3",
@@ -267,7 +280,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "วันอาทิตย์",
         "วันจันทร์",
         "วันอังคาร",
@@ -279,13 +292,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "อ",
         "จ",
         "อ",
@@ -297,13 +305,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "อา.",
         "จ.",
         "อ.",
@@ -313,9 +316,4 @@
         "ส."
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ti.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ti.java
index a059e8c..23799a3 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ti.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ti.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ti".
+ * Implementation of DateTimeFormatInfo for the "ti" locale.
  */
 public class DateTimeFormatInfoImpl_ti extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "ንጉሆ ሰዓተ",
         "ድሕር ሰዓት"
     };
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "ዓ/ዓ",
         "ዓ/ም"
     };
@@ -60,7 +60,7 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "ዓ/ዓ",
         "ዓ/ም"
     };
@@ -128,7 +128,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "ጃንዩወሪ",
         "ፌብሩወሪ",
         "ማርች",
@@ -145,13 +145,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "ጃ",
         "ፌ",
         "ማ",
@@ -168,13 +163,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "ጃንዩ",
         "ፌብሩ",
         "ማርች",
@@ -191,13 +181,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -206,8 +191,28 @@
   }
 
   @Override
+  public String timeFormatFull() {
+    return "h:mm:ss a zzzz";
+  }
+
+  @Override
+  public String timeFormatLong() {
+    return "h:mm:ss a z";
+  }
+
+  @Override
+  public String timeFormatMedium() {
+    return "h:mm:ss a";
+  }
+
+  @Override
+  public String timeFormatShort() {
+    return "h:mm a";
+  }
+
+  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "ሰንበት",
         "ሰኑይ",
         "ሠሉስ",
@@ -219,13 +224,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "ሰ",
         "ሰ",
         "ሠ",
@@ -237,14 +237,9 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
-        "ሰንበ",
+    return new String[] {
+        "ሰንበት",
         "ሰኑይ",
         "ሠሉስ",
         "ረቡዕ",
@@ -253,9 +248,4 @@
         "ቀዳም"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_tr.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_tr.java
index 6747902..c376868 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_tr.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_tr.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "tr".
+ * Implementation of DateTimeFormatInfo for the "tr" locale.
  */
 public class DateTimeFormatInfoImpl_tr extends DateTimeFormatInfoImpl {
 
@@ -44,7 +44,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "Milattan Önce",
         "Milattan Sonra"
     };
@@ -52,18 +52,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "MÖ",
         "MS"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatMonthAbbrevDay() {
     return "dd MMM";
   }
@@ -110,7 +105,7 @@
 
   @Override
   public String formatYearMonthNumDay() {
-    return "d.M.y";
+    return "d M y";
   }
 
   @Override
@@ -130,7 +125,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "Ocak",
         "Şubat",
         "Mart",
@@ -147,13 +142,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "O",
         "Ş",
         "M",
@@ -170,13 +160,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "Oca",
         "Şub",
         "Mar",
@@ -193,13 +178,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "1. çeyrek",
         "2. çeyrek",
         "3. çeyrek",
@@ -209,7 +189,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "Ç1",
         "Ç2",
         "Ç3",
@@ -218,28 +198,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "Pazar",
         "Pazartesi",
         "Salı",
@@ -251,13 +211,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "P",
         "P",
         "S",
@@ -269,13 +224,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "Paz",
         "Pzt",
         "Sal",
@@ -285,9 +235,4 @@
         "Cmt"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_tt.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_tt.java
index 42edd19..a408011 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_tt.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_tt.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "tt".
+ * Implementation of DateTimeFormatInfo for the "tt" locale.
  */
 public class DateTimeFormatInfoImpl_tt extends DateTimeFormatInfoImpl {
 
@@ -44,7 +44,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
@@ -52,18 +52,13 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "BCE",
         "CE"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
-  }
-
-  @Override
   public String formatMonthFullWeekdayDay() {
     return "EEEE, MMMM d";
   }
@@ -120,7 +115,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -137,13 +132,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -160,13 +150,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -183,13 +168,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -198,6 +178,11 @@
   }
 
   @Override
+  public String timeFormatFull() {
+    return "h:mm:ss a zzzz";
+  }
+
+  @Override
   public String timeFormatLong() {
     return "H:mm:ss z";
   }
@@ -214,7 +199,7 @@
 
   @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -226,13 +211,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -244,13 +224,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -260,9 +235,4 @@
         "7"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ur.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ur.java
index 403ce7a..8a71012 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ur.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ur.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,16 +15,16 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ur".
+ * Implementation of DateTimeFormatInfo for the "ur" locale.
  */
 public class DateTimeFormatInfoImpl_ur extends DateTimeFormatInfoImpl {
 
   @Override
   public String[] ampms() {
-    return new String[] { 
+    return new String[] {
         "قبل دوپہر",
         "بعد دوپہر"
     };
@@ -52,7 +52,7 @@
 
   @Override
   public String[] erasFull() {
-    return new String[] { 
+    return new String[] {
         "قبل مسيح",
         "عيسوی سن"
     };
@@ -60,13 +60,18 @@
 
   @Override
   public String[] erasShort() {
-    return new String[] { 
+    return new String[] {
         "ق م",
         "عيسوی سن"
     };
   }
 
   @Override
+  public int firstDayOfTheWeek() {
+    return 0;
+  }
+
+  @Override
   public String formatYearMonthAbbrevDay() {
     return "d, MMM y";
   }
@@ -88,7 +93,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "جنوری",
         "فروری",
         "مار چ",
@@ -105,13 +110,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "ج",
         "ف",
         "م",
@@ -128,13 +128,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "جنوری",
         "فروری",
         "مار چ",
@@ -151,13 +146,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "پہلی سہ ماہی",
         "دوسری سہ ماہی",
         "تيسری سہ ماہی",
@@ -167,7 +157,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "1سہ ماہی",
         "2سہ ماہی",
         "3سہ ماہی",
@@ -176,8 +166,28 @@
   }
 
   @Override
+  public String timeFormatFull() {
+    return "h:mm:ss a zzzz";
+  }
+
+  @Override
+  public String timeFormatLong() {
+    return "h:mm:ss a z";
+  }
+
+  @Override
+  public String timeFormatMedium() {
+    return "h:mm:ss a";
+  }
+
+  @Override
+  public String timeFormatShort() {
+    return "h:mm a";
+  }
+
+  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "اتوار",
         "پير",
         "منگل",
@@ -189,13 +199,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "ا",
         "پ",
         "م",
@@ -207,21 +212,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return new String[] { 
-        "1",
-        "2",
-        "3",
-        "4",
-        "5",
-        "6",
-        "7"
-    };
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "اتوار",
         "پير",
         "منگل",
@@ -231,9 +223,4 @@
         "ہفتہ"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ve.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ve.java
index 879f223..b204d79 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ve.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_ve.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,44 +15,27 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "ve".
+ * Implementation of DateTimeFormatInfo for the "ve" locale.
  */
 public class DateTimeFormatInfoImpl_ve extends DateTimeFormatInfoImpl {
 
   @Override
-  public String dateFormatFull() {
-    return "EEEE, y MMMM dd";
-  }
-
-  @Override
-  public String dateFormatLong() {
-    return "y MMMM d";
-  }
-
-  @Override
-  public String dateFormatMedium() {
-    return "y MMM d";
-  }
-
-  @Override
-  public String dateFormatShort() {
-    return "yy/MM/dd";
-  }
-
-  @Override
   public String[] erasFull() {
-    return new String[] { 
-        "BC",
-        "AD"
+    return new String[] {
+        "BCE",
+        "CE"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
+  public String[] erasShort() {
+    return new String[] {
+        "BCE",
+        "CE"
+    };
   }
 
   @Override
@@ -112,7 +95,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "Phando",
         "Luhuhi",
         "Ṱhafamuhwe",
@@ -129,13 +112,8 @@
   }
 
   @Override
-  public String[] monthsFullStandalone() {
-    return monthsFull();
-  }
-
-  @Override
   public String[] monthsNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -152,13 +130,8 @@
   }
 
   @Override
-  public String[] monthsNarrowStandalone() {
-    return monthsNarrow();
-  }
-
-  @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "Pha",
         "Luh",
         "Ṱha",
@@ -175,13 +148,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Kotara ya u thoma",
         "Kotara ya vhuvhili",
         "Kotara ya vhuraru",
@@ -191,7 +159,7 @@
 
   @Override
   public String[] quartersShort() {
-    return new String[] { 
+    return new String[] {
         "K1",
         "K2",
         "K3",
@@ -200,28 +168,8 @@
   }
 
   @Override
-  public String timeFormatFull() {
-    return "HH:mm:ss zzzz";
-  }
-
-  @Override
-  public String timeFormatLong() {
-    return "HH:mm:ss z";
-  }
-
-  @Override
-  public String timeFormatMedium() {
-    return "HH:mm:ss";
-  }
-
-  @Override
-  public String timeFormatShort() {
-    return "HH:mm";
-  }
-
-  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "Swondaha",
         "Musumbuluwo",
         "Ḽavhuvhili",
@@ -233,13 +181,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "1",
         "2",
         "3",
@@ -251,13 +194,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "Swo",
         "Mus",
         "Vhi",
@@ -267,9 +205,4 @@
         "Mug"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_zu.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_zu.java
index 3106f60..e8dd4bd 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_zu.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_zu.java
@@ -6,7 +6,7 @@
  * the License at
  * 
  * http://www.apache.org/licenses/LICENSE-2.0
- *
+ * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -15,10 +15,10 @@
  */
 package com.google.gwt.i18n.client.impl.cldr;
 
-// DO NOT EDIT - GENERATED FROM CLDR DATA
+// DO NOT EDIT - GENERATED FROM CLDR AND ICU DATA
 
 /**
- * Implementation of DateTimeFormatInfo for locale "zu".
+ * Implementation of DateTimeFormatInfo for the "zu" locale.
  */
 public class DateTimeFormatInfoImpl_zu extends DateTimeFormatInfoImpl {
 
@@ -38,21 +38,19 @@
   }
 
   @Override
-  public String dateFormatShort() {
-    return "yyyy-MM-dd";
-  }
-
-  @Override
   public String[] erasFull() {
-    return new String[] { 
-        "BC",
-        "AD"
+    return new String[] {
+        "BCE",
+        "CE"
     };
   }
 
   @Override
-  public int firstDayOfTheWeek() {
-    return 1;
+  public String[] erasShort() {
+    return new String[] {
+        "BCE",
+        "CE"
+    };
   }
 
   @Override
@@ -72,7 +70,7 @@
 
   @Override
   public String[] monthsFull() {
-    return new String[] { 
+    return new String[] {
         "Januwari",
         "Februwari",
         "Mashi",
@@ -90,7 +88,7 @@
 
   @Override
   public String[] monthsFullStandalone() {
-    return new String[] { 
+    return new String[] {
         "uJanuwari",
         "uFebruwari",
         "uMashi",
@@ -108,7 +106,7 @@
 
   @Override
   public String[] monthsShort() {
-    return new String[] { 
+    return new String[] {
         "Jan",
         "Feb",
         "Mas",
@@ -125,13 +123,8 @@
   }
 
   @Override
-  public String[] monthsShortStandalone() {
-    return monthsShort();
-  }
-
-  @Override
   public String[] quartersFull() {
-    return new String[] { 
+    return new String[] {
         "Q1",
         "Q2",
         "Q3",
@@ -140,8 +133,28 @@
   }
 
   @Override
+  public String timeFormatFull() {
+    return "h:mm:ss a zzzz";
+  }
+
+  @Override
+  public String timeFormatLong() {
+    return "h:mm:ss a z";
+  }
+
+  @Override
+  public String timeFormatMedium() {
+    return "h:mm:ss a";
+  }
+
+  @Override
+  public String timeFormatShort() {
+    return "h:mm a";
+  }
+
+  @Override
   public String[] weekdaysFull() {
-    return new String[] { 
+    return new String[] {
         "Sonto",
         "Msombuluko",
         "Lwesibili",
@@ -153,13 +166,8 @@
   }
 
   @Override
-  public String[] weekdaysFullStandalone() {
-    return weekdaysFull();
-  }
-
-  @Override
   public String[] weekdaysNarrow() {
-    return new String[] { 
+    return new String[] {
         "S",
         "M",
         "B",
@@ -171,13 +179,8 @@
   }
 
   @Override
-  public String[] weekdaysNarrowStandalone() {
-    return weekdaysNarrow();
-  }
-
-  @Override
   public String[] weekdaysShort() {
-    return new String[] { 
+    return new String[] {
         "Son",
         "Mso",
         "Bil",
@@ -187,9 +190,4 @@
         "Mgq"
     };
   }
-
-  @Override
-  public String[] weekdaysShortStandalone() {
-    return weekdaysShort();
-  }
 }
diff --git a/user/src/com/google/gwt/i18n/rebind/cldr/ListPatterns_nl.properties b/user/src/com/google/gwt/i18n/rebind/cldr/ListPatterns_nl.properties
index 9664e93..0d34cc1 100644
--- a/user/src/com/google/gwt/i18n/rebind/cldr/ListPatterns_nl.properties
+++ b/user/src/com/google/gwt/i18n/rebind/cldr/ListPatterns_nl.properties
@@ -1,4 +1,4 @@
 2={0} en {1}
 start={0}, {1}
 middle={0}, {1}
-end={0}, en {1}
+end={0} en {1}
diff --git a/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonProxyListRequest.java b/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonProxyListRequest.java
index 34fc8d3..baee250 100644
--- a/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonProxyListRequest.java
+++ b/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonProxyListRequest.java
@@ -16,7 +16,7 @@
 package com.google.gwt.requestfactory.client.impl;
 
 import com.google.gwt.requestfactory.shared.EntityProxy;
-import com.google.gwt.requestfactory.shared.ProxyListRequest;
+import com.google.gwt.requestfactory.shared.Request;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -39,7 +39,7 @@
     AbstractJsonProxyListRequest<T extends EntityProxy,
     R extends AbstractJsonProxyListRequest<T, R>>
     extends AbstractJsonProxyCollectionRequest<List<T>, T, R>
-    implements ProxyListRequest<T> {
+    implements Request<List<T>> {
   protected final ProxySchema<?> schema;
 
   public AbstractJsonProxyListRequest(ProxySchema<? extends T> schema,
diff --git a/user/src/com/google/gwt/requestfactory/rebind/RequestFactoryGenerator.java b/user/src/com/google/gwt/requestfactory/rebind/RequestFactoryGenerator.java
index 76483ed..9be4279 100644
--- a/user/src/com/google/gwt/requestfactory/rebind/RequestFactoryGenerator.java
+++ b/user/src/com/google/gwt/requestfactory/rebind/RequestFactoryGenerator.java
@@ -55,9 +55,7 @@
 import com.google.gwt.requestfactory.server.ReflectionBasedOperationRegistry;
 import com.google.gwt.requestfactory.shared.EntityProxy;
 import com.google.gwt.requestfactory.shared.EntityProxyId;
-import com.google.gwt.requestfactory.shared.ProxyListRequest;
-import com.google.gwt.requestfactory.shared.ProxyRequest;
-import com.google.gwt.requestfactory.shared.ProxySetRequest;
+import com.google.gwt.requestfactory.shared.Request;
 import com.google.gwt.requestfactory.shared.RequestFactory;
 import com.google.gwt.requestfactory.shared.WriteOperation;
 import com.google.gwt.requestfactory.shared.impl.CollectionProperty;
@@ -136,6 +134,7 @@
   private JClassType listType;
   private JClassType setType;
   private JClassType entityProxyType;
+  private JClassType mainRequestType;
 
   private final Set<JClassType> generatedProxyTypes = new HashSet<JClassType>();
 
@@ -148,6 +147,7 @@
     listType = typeOracle.findType(List.class.getName());
     setType = typeOracle.findType(Set.class.getName());
     entityProxyType = typeOracle.findType(EntityProxy.class.getName());
+    mainRequestType = typeOracle.findType(Request.class.getName());
 
     // Get a reference to the type that the generator should implement
     JClassType interfaceType = typeOracle.findType(interfaceName);
@@ -183,6 +183,10 @@
   }
 
   private String asInnerImplClass(String className, JClassType outerClassName) {
+    if (outerClassName.isParameterized() != null) {
+      // outerClassName is of form List<EmployeeProxy>
+      outerClassName = outerClassName.isParameterized().getTypeArgs()[0];
+    }
     className = outerClassName.getQualifiedSourceName() + "Impl." + className;
     return className;
   }
@@ -226,11 +230,11 @@
       throws UnableToCompleteException {
     TypeOracle typeOracle = generatorContext.getTypeOracle();
 
-    if (!publicProxyType.isAssignableTo(entityProxyType)) {
-      return;
+    if (publicProxyType.isParameterized() != null) {
+      // handle publicProxyType = List<EmployeeProxy>
+      publicProxyType = publicProxyType.isParameterized().getTypeArgs()[0];
     }
-
-    if (publicProxyType.equals(entityProxyType)) {
+    if (!publicProxyType.isAssignableTo(entityProxyType)) {
       return;
     }
     if (generatedProxyTypes.contains(publicProxyType)) {
@@ -681,7 +685,7 @@
           throw new UnableToCompleteException();
         }
       }
-      if (isProxyCollectionRequest(typeOracle, requestType)) {
+      if (isRequestObjectCollectionRequest(typeOracle, requestType)) {
         Class<?> colType = getCollectionType(typeOracle, requestType);
         assert colType != null;
         requestClassName = asInnerImplClass(colType == List.class
@@ -777,12 +781,6 @@
    */
   private Class<?> getCollectionType(TypeOracle typeOracle,
       JClassType requestType) {
-    if (requestType.isAssignableTo(typeOracle.findType(ProxyListRequest.class.getName()))) {
-      return List.class;
-    }
-    if (requestType.isAssignableTo(typeOracle.findType(ProxySetRequest.class.getName()))) {
-      return Set.class;
-    }
     JClassType retType = requestType.isParameterized().getTypeArgs()[0];
     if (retType.isParameterized() != null) {
       JClassType leafType = retType.isParameterized().getTypeArgs()[0];
@@ -920,14 +918,12 @@
     return requestType.isParameterized().getTypeArgs()[0].isAssignableTo(typeOracle.findType(Long.class.getName()));
   }
 
-  private boolean isProxyCollectionRequest(TypeOracle typeOracle,
-      JClassType requestType) {
-    return requestType.isAssignableTo(typeOracle.findType(ProxyListRequest.class.getName()))
-        || requestType.isAssignableTo(typeOracle.findType(ProxySetRequest.class.getName()));
-  }
-
   private boolean isProxyRequest(TypeOracle typeOracle, JClassType requestType) {
-    return requestType.isAssignableTo(typeOracle.findType(ProxyRequest.class.getName()));
+    if (requestType.isParameterized() != null && requestType.isAssignableTo(mainRequestType)) {
+      JClassType leafType = requestType.isParameterized().getTypeArgs()[0];
+      return leafType.isAssignableTo(entityProxyType);
+    }
+    return false;
   }
 
   private boolean isProxyType(TypeOracle typeOracle, JClassType requestType) {
diff --git a/user/src/com/google/gwt/requestfactory/server/ReflectionBasedOperationRegistry.java b/user/src/com/google/gwt/requestfactory/server/ReflectionBasedOperationRegistry.java
index f485425..ead2af7 100644
--- a/user/src/com/google/gwt/requestfactory/server/ReflectionBasedOperationRegistry.java
+++ b/user/src/com/google/gwt/requestfactory/server/ReflectionBasedOperationRegistry.java
@@ -66,8 +66,12 @@
       return domainClass.getCanonicalName();
     }
 
+    public Method getDomainMethod() {
+      return domainMethod;
+    }
+
     public String getDomainMethodName() {
-      return domainMethod.getName();
+      return getDomainMethod().getName();
     }
 
     public Class<?>[] getParameterTypes() {
@@ -91,13 +95,12 @@
           if (!dtoClass.equals(domainReturnType)) {
             throw new IllegalArgumentException(
                 "Type mismatch between " + domainMethod + " return type, and "
-                    + requestReturnType + "'s DataTransferObject annotation "
+                    + requestReturnType + "'s ProxyFor annotation "
                     + dtoClass);
           }
         } else {
           throw new IllegalArgumentException(
-              "Missing DataTransferObject " + "annotation on record type "
-                  + requestReturnType);
+              "Missing ProxyFor annotation on proxy type " + requestReturnType);
         }
         return requestReturnType;
       }
@@ -109,10 +112,6 @@
       return isInstance;
     }
 
-    public boolean isReturnTypeList() {
-      return List.class.isAssignableFrom(domainMethod.getReturnType());
-    }
-
     public String name() {
       return requestClass.getCanonicalName() + SCOPE_SEPARATOR
           + getDomainMethodName();
@@ -160,7 +159,7 @@
       if (params.length == 1) {
         if (params[0] instanceof ParameterizedType) {
           // if type is for example, RequestObject<List<T>> we return T
-          return (Class<?>) ((ParameterizedType) params[0]).getRawType();
+          return (Class<?>) ((ParameterizedType) params[0]).getActualTypeArguments()[0];
         }
         // else, it might be a case like List<T> in which case we return T
         return (Class<Object>) params[0];
diff --git a/user/src/com/google/gwt/requestfactory/shared/UserInformationRequest.java b/user/src/com/google/gwt/requestfactory/shared/UserInformationRequest.java
index 2333632..f6aff3e 100644
--- a/user/src/com/google/gwt/requestfactory/shared/UserInformationRequest.java
+++ b/user/src/com/google/gwt/requestfactory/shared/UserInformationRequest.java
@@ -25,6 +25,6 @@
 @Service(UserInformation.class)
 public interface UserInformationRequest {
 
-  ProxyRequest<UserInformationProxy> getCurrentUserInformation(String redirectUrl);
+  Request<UserInformationProxy> getCurrentUserInformation(String redirectUrl);
  
 }
diff --git a/user/src/com/google/gwt/view/client/SingleSelectionModel.java b/user/src/com/google/gwt/view/client/SingleSelectionModel.java
index bc8fa12..831a74f 100644
--- a/user/src/com/google/gwt/view/client/SingleSelectionModel.java
+++ b/user/src/com/google/gwt/view/client/SingleSelectionModel.java
@@ -34,6 +34,7 @@
   // Pending selection change
   private boolean newSelected;
   private T newSelectedObject = null;
+  private boolean newSelectedPending;
 
   /**
    * Constructs a SingleSelectionModel without a key provider.
@@ -41,7 +42,7 @@
   public SingleSelectionModel() {
     super(null);
   }
-  
+
   /**
    * Constructs a SingleSelectionModel with the given key provider.
    *
@@ -71,6 +72,7 @@
   public void setSelected(T object, boolean selected) {
     newSelectedObject = object;
     newSelected = selected;
+    newSelectedPending = true;
     scheduleSelectionChangeEvent();
   }
 
@@ -83,11 +85,11 @@
   }
 
   private void resolveChanges() {
-    if (newSelectedObject == null) {
+    if (!newSelectedPending) {
       return;
     }
 
-    Object key = getKey(newSelectedObject);
+    Object key = (newSelectedObject == null) ? null : getKey(newSelectedObject);
     boolean sameKey = curKey == null ? key == null : curKey.equals(key);
     boolean changed = false;
     if (newSelected) {
@@ -101,6 +103,7 @@
     }
 
     newSelectedObject = null;
+    newSelectedPending = false;
 
     // Fire a selection change event.
     if (changed) {
diff --git a/user/test/com/google/gwt/cell/client/CellTestBase.java b/user/test/com/google/gwt/cell/client/CellTestBase.java
index 28c6082..cdbee13 100644
--- a/user/test/com/google/gwt/cell/client/CellTestBase.java
+++ b/user/test/com/google/gwt/cell/client/CellTestBase.java
@@ -108,7 +108,7 @@
 
   @Override
   public String getModuleName() {
-    return "com.google.gwt.cell.Cell";
+    return "com.google.gwt.cell.CellTest";
   }
 
   public void testDependsOnSelection() {
diff --git a/user/test/com/google/gwt/i18n/client/I18N2Test.java b/user/test/com/google/gwt/i18n/client/I18N2Test.java
index 98cf5a1..08a1d57 100644
--- a/user/test/com/google/gwt/i18n/client/I18N2Test.java
+++ b/user/test/com/google/gwt/i18n/client/I18N2Test.java
@@ -52,7 +52,7 @@
     assertEquals("This {0} would be an argument if not quoted", m.quotedArg());
     assertEquals("Total is US$11,305.01", m.currencyFormat(11305.01));
     assertEquals("Default number format is 1,017.1", m.defaultNumberFormat(1017.1));
-    assertEquals("It is 12:01 PM on Saturday, December 1, 2007",
+    assertEquals("It is 12:01 on Saturday, 2007 December 01",
         m.getTimeDate(new Date(107, 11, 1, 12, 1, 2)));
     assertEquals("13 widgets", m.pluralWidgetsOther(13));
 //    assertEquals("A widget", m.pluralWidgetsOther(1));
diff --git a/user/test/com/google/gwt/requestfactory/client/EditorTest.java b/user/test/com/google/gwt/requestfactory/client/EditorTest.java
index 69e9da9..32161dd 100644
--- a/user/test/com/google/gwt/requestfactory/client/EditorTest.java
+++ b/user/test/com/google/gwt/requestfactory/client/EditorTest.java
@@ -24,11 +24,10 @@
 import com.google.gwt.editor.client.HasEditorDelegate;
 import com.google.gwt.editor.client.HasEditorErrors;
 import com.google.gwt.editor.client.adapters.SimpleEditor;
-import com.google.gwt.requestfactory.shared.ProxyRequest;
 import com.google.gwt.requestfactory.shared.Receiver;
+import com.google.gwt.requestfactory.shared.Request;
 import com.google.gwt.requestfactory.shared.SimpleBarProxy;
 import com.google.gwt.requestfactory.shared.SimpleFooProxy;
-
 import com.google.gwt.requestfactory.shared.Violation;
 
 import java.util.Arrays;
@@ -153,7 +152,7 @@
             assertNotNull(editor.delegate.subscribe());
 
             // Simulate edits occurring elsewhere in the module
-            ProxyRequest<SimpleFooProxy> request = req.simpleFooRequest().persistAndReturnSelf(
+            Request<SimpleFooProxy> request = req.simpleFooRequest().persistAndReturnSelf(
                 response);
             SimpleBarProxy newBar = req.create(SimpleBarProxy.class);
             newBar = request.edit(newBar);
diff --git a/user/test/com/google/gwt/requestfactory/client/RequestFactoryTestBase.java b/user/test/com/google/gwt/requestfactory/client/RequestFactoryTestBase.java
index 19a7810..44531b4 100644
--- a/user/test/com/google/gwt/requestfactory/client/RequestFactoryTestBase.java
+++ b/user/test/com/google/gwt/requestfactory/client/RequestFactoryTestBase.java
@@ -40,8 +40,7 @@
    */
   protected class SimpleFooEventHandler<P extends EntityProxy>
       implements EntityProxyChange.Handler<P> {
-    int acquireEventCount = 0;
-    int createEventCount = 0;
+    int persistEventCount = 0;
     int deleteEventCount = 0;
     int totalEventCount = 0;
     int updateEventCount = 0;
@@ -49,8 +48,7 @@
     public void onProxyChange(EntityProxyChange<P> event) {
       totalEventCount++;
       switch (event.getWriteOperation()) {
-        case ACQUIRE: acquireEventCount++; break;
-        case CREATE: createEventCount++; break;
+        case PERSIST: persistEventCount++; break;
         case DELETE: deleteEventCount++; break;
         case UPDATE: updateEventCount++; break;
         default: break;
diff --git a/user/test/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImplTest.java b/user/test/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImplTest.java
index b03a01f..18163af 100644
--- a/user/test/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImplTest.java
+++ b/user/test/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImplTest.java
@@ -84,7 +84,7 @@
         valueStore, requestFactory);
     String json = deltaValueStore.toJson();
     JSONObject jsonObject = (JSONObject) JSONParser.parseLenient(json);
-    assertFalse(jsonObject.containsKey(WriteOperation.CREATE.getUnObfuscatedEnumName()));
+    assertFalse(jsonObject.containsKey(WriteOperation.PERSIST.getUnObfuscatedEnumName()));
   }
 
   public void testCreateUpdate() {
@@ -96,7 +96,7 @@
     deltaValueStore.set(SimpleFooProxyProperties.userName, created, "harry");
     assertTrue(deltaValueStore.isChanged());
     JSONObject changeProxy = testAndGetChangeProxy(deltaValueStore.toJson(),
-        WriteOperation.CREATE);
+        WriteOperation.PERSIST);
     assertEquals("harry", changeProxy.get("userName").isString().stringValue());
   }
 
@@ -112,7 +112,7 @@
     deltaValueStore.set(SimpleFooProxyProperties.userName, created, "harry");
     assertTrue(deltaValueStore.isChanged());
     JSONObject changeProxy = testAndGetChangeProxy(deltaValueStore.toJson(),
-        WriteOperation.CREATE);
+        WriteOperation.PERSIST);
     assertEquals(
         "harry",
         changeProxy.get(SimpleFooProxyProperties.userName.getName()).isString().stringValue());
@@ -157,11 +157,11 @@
     String jsonString = deltaValueStore.toJson();
     JSONObject jsonObject = (JSONObject) JSONParser.parseLenient(jsonString);
     assertFalse(jsonObject.containsKey(WriteOperation.DELETE.getUnObfuscatedEnumName()));
-    assertTrue(jsonObject.containsKey(WriteOperation.CREATE.getUnObfuscatedEnumName()));
+    assertTrue(jsonObject.containsKey(WriteOperation.PERSIST.getUnObfuscatedEnumName()));
     assertTrue(jsonObject.containsKey(WriteOperation.UPDATE.getUnObfuscatedEnumName()));
 
     JSONArray createOperationArray = jsonObject.get(
-        WriteOperation.CREATE.getUnObfuscatedEnumName()).isArray();
+        WriteOperation.PERSIST.getUnObfuscatedEnumName()).isArray();
     assertEquals(1, createOperationArray.size());
     assertEquals(
         "harry",
diff --git a/user/test/com/google/gwt/requestfactory/shared/SimpleBarRequest.java b/user/test/com/google/gwt/requestfactory/shared/SimpleBarRequest.java
index 51d4879..ca7a16a 100644
--- a/user/test/com/google/gwt/requestfactory/shared/SimpleBarRequest.java
+++ b/user/test/com/google/gwt/requestfactory/shared/SimpleBarRequest.java
@@ -16,6 +16,7 @@
 package com.google.gwt.requestfactory.shared;
 
 import java.util.List;
+import java.util.Set;
 
 /**
  * Do nothing test interface.
@@ -25,19 +26,19 @@
 
   Request<Long> countSimpleBar();
 
-  ProxyListRequest<SimpleBarProxy> findAll();
+  Request<List<SimpleBarProxy>> findAll();
 
-  ProxySetRequest<SimpleBarProxy> findAsSet();
+  Request<Set<SimpleBarProxy>> findAsSet();
   
-  ProxyRequest<SimpleBarProxy> findSimpleBarById(String id);
+  Request<SimpleBarProxy> findSimpleBarById(String id);
 
   @Instance
   Request<Void> persist(SimpleBarProxy proxy);
 
   @Instance
-  ProxyRequest<SimpleBarProxy> persistAndReturnSelf(SimpleBarProxy proxy);
+  Request<SimpleBarProxy> persistAndReturnSelf(SimpleBarProxy proxy);
 
   Request<Void> reset();
 
-  ProxyRequest<SimpleBarProxy> returnFirst(List<SimpleBarProxy> proxy);
+  Request<SimpleBarProxy> returnFirst(List<SimpleBarProxy> proxy);
 }
diff --git a/user/test/com/google/gwt/uibinder/test/client/HandlerDemo.ui.xml b/user/test/com/google/gwt/uibinder/test/client/HandlerDemo.ui.xml
index 6640802..5c72902 100644
--- a/user/test/com/google/gwt/uibinder/test/client/HandlerDemo.ui.xml
+++ b/user/test/com/google/gwt/uibinder/test/client/HandlerDemo.ui.xml
@@ -1,6 +1,7 @@
 <ui:UiBinder
   xmlns:ui='urn:ui:com.google.gwt.uibinder'
-  xmlns:gwt='urn:import:com.google.gwt.user.client.ui'>
+  xmlns:gwt='urn:import:com.google.gwt.user.client.ui'
+  xmlns:test="urn:import:com.google.gwt.uibinder.test.client">
 
   <gwt:FlowPanel>
     <gwt:Button ui:field="buttonClick" text="ClickEvent test for Button"/>
@@ -14,6 +15,13 @@
 
     <gwt:Label text="ValueChangeEvent test" />
     <gwt:TextBox ui:field="textBoxValueChange"/>
+
+    <gwt:Tree ui:field="tree" />
+
+    <test:CustomEventWidget ui:field="customEventWidget">
+      Click to test UiBinder custom events.
+    </test:CustomEventWidget>
+
   </gwt:FlowPanel>
 
 </ui:UiBinder>