[glibc] * Fri Nov 18 2011 Jeff Law <law at redhat.com> - 2.14.90-19 - Check malloc areana atomically - Don'

Jeffrey Law law at fedoraproject.org
Mon Nov 21 17:34:42 UTC 2011


commit 5d47a9295a1a3751a14066edd9989b2acf74e8e1
Author: Jeff Law <law at redhat.com>
Date:   Mon Nov 21 10:33:40 2011 -0700

    * Fri Nov 18 2011 Jeff Law <law at redhat.com> - 2.14.90-19
      - Check malloc areana atomically
      - Don't call reused_arena when _int_new_arena failed (#753601)
    
    * Wed Nov 16 2011 Jeff Law <law at redhat.com> - 2.14.90-18
      - Fix grouping and reuse other locales in various locales (BZ#13147)
    
    * Tue Nov 15 2011 Jeff Law <law at redhat.com> - 2.14.90-17
      Revert bogus commits/rebasing of Nov 14, Nov 11 and Nov 8.  Sources
      should be equivalent to Fedora 16's initial release.
    
    Pulled into master (f17)

 glibc-arenalock.patch      |  146 ++++
 glibc-localegrouping.patch | 1660 ++++++++++++++++++++++++++++++++++++++++++++
 glibc.spec                 |   17 +-
 3 files changed, 1822 insertions(+), 1 deletions(-)
---
diff --git a/glibc-arenalock.patch b/glibc-arenalock.patch
new file mode 100644
index 0000000..56ea56d
--- /dev/null
+++ b/glibc-arenalock.patch
@@ -0,0 +1,146 @@
+commit 77cdc054e02069d72dcf54a9ad7d7df3a24bcb01
+Author: Andreas Schwab <schwab at redhat.com>
+Date:   Wed Nov 9 17:14:39 2011 +0100
+
+    Check malloc arana limit atomically
+
+diff --git a/ChangeLog b/ChangeLog
+index bf09161..edd7dd8 100644
+--- a/ChangeLog
++++ b/ChangeLog
+@@ -1,3 +1,14 @@
++2011-11-14  Andreas Schwab  <schwab at redhat.com>
++
++	* malloc/arena.c (arena_get2): Don't call reused_arena when
++	_int_new_arena failed.
++
++2011-11-10  Andreas Schwab  <schwab at redhat.com>
++
++	* malloc/arena.c (_int_new_arena): Don't increment narenas.
++	(reused_arena): Don't check arena limit.
++	(arena_get2): Atomically check arena limit.
++
+ 2011-10-19  Andreas Schwab  <schwab at redhat.com>
+ 
+ 	* sysdeps/x86_64/fpu/math_private.h (libc_feupdateenv): Use
+diff --git a/malloc/arena.c b/malloc/arena.c
+index 9114fd2..042cac8 100644
+--- a/malloc/arena.c
++++ b/malloc/arena.c
+@@ -747,8 +747,6 @@ _int_new_arena(size_t size)
+   main_arena.next = a;
+ 
+ #ifdef PER_THREAD
+-  ++narenas;
+-
+   (void)mutex_unlock(&list_lock);
+ #endif
+ 
+@@ -786,30 +784,6 @@ get_free_list (void)
+ static mstate
+ reused_arena (void)
+ {
+-  if (narenas <= mp_.arena_test)
+-    return NULL;
+-
+-  static int narenas_limit;
+-  if (narenas_limit == 0)
+-    {
+-      if (mp_.arena_max != 0)
+-	narenas_limit = mp_.arena_max;
+-      else
+-	{
+-	  int n  = __get_nprocs ();
+-
+-	  if (n >= 1)
+-	    narenas_limit = NARENAS_FROM_NCORES (n);
+-	  else
+-	    /* We have no information about the system.  Assume two
+-	       cores.  */
+-	    narenas_limit = NARENAS_FROM_NCORES (2);
+-	}
+-    }
+-
+-  if (narenas < narenas_limit)
+-    return NULL;
+-
+   mstate result;
+   static mstate next_to_use;
+   if (next_to_use == NULL)
+@@ -844,10 +818,41 @@ arena_get2(mstate a_tsd, size_t size)
+   mstate a;
+ 
+ #ifdef PER_THREAD
+-  if ((a = get_free_list ()) == NULL
+-      && (a = reused_arena ()) == NULL)
+-    /* Nothing immediately available, so generate a new arena.  */
+-    a = _int_new_arena(size);
++  static size_t narenas_limit;
++
++  a = get_free_list ();
++  if (a == NULL)
++    {
++      /* Nothing immediately available, so generate a new arena.  */
++      if (narenas_limit == 0)
++	{
++	  if (mp_.arena_max != 0)
++	    narenas_limit = mp_.arena_max;
++	  else
++	    {
++	      int n  = __get_nprocs ();
++
++	      if (n >= 1)
++		narenas_limit = NARENAS_FROM_NCORES (n);
++	      else
++		/* We have no information about the system.  Assume two
++		   cores.  */
++		narenas_limit = NARENAS_FROM_NCORES (2);
++	    }
++	}
++    repeat:;
++      size_t n = narenas;
++      if (__builtin_expect (n <= mp_.arena_test || n < narenas_limit, 0))
++	{
++	  if (catomic_compare_and_exchange_bool_acq(&narenas, n + 1, n))
++	    goto repeat;
++	  a = _int_new_arena (size);
++	  if (__builtin_expect (a != NULL, 1))
++	    return a;
++	  catomic_decrement(&narenas);
++	}
++      a = reused_arena ();
++    }
+ #else
+   if(!a_tsd)
+     a = a_tsd = &main_arena;
+
+commit a5fb313cb7b7e692fd4684916aaa98e03ec7e8b6
+Author: Andreas Schwab <schwab at redhat.com>
+Date:   Mon Nov 14 11:41:52 2011 +0100
+
+    Don't call reused_arena when _int_new_arena failed
+
+diff --git a/malloc/arena.c b/malloc/arena.c
+index 042cac8..cb8548b 100644
+--- a/malloc/arena.c
++++ b/malloc/arena.c
+@@ -844,14 +844,14 @@ arena_get2(mstate a_tsd, size_t size)
+       size_t n = narenas;
+       if (__builtin_expect (n <= mp_.arena_test || n < narenas_limit, 0))
+ 	{
+-	  if (catomic_compare_and_exchange_bool_acq(&narenas, n + 1, n))
++	  if (catomic_compare_and_exchange_bool_acq (&narenas, n + 1, n))
+ 	    goto repeat;
+ 	  a = _int_new_arena (size);
+-	  if (__builtin_expect (a != NULL, 1))
+-	    return a;
+-	  catomic_decrement(&narenas);
++	  if (__builtin_expect (a == NULL, 0))
++	    catomic_decrement (&narenas);
+ 	}
+-      a = reused_arena ();
++      else
++	a = reused_arena ();
+     }
+ #else
+   if(!a_tsd)
diff --git a/glibc-localegrouping.patch b/glibc-localegrouping.patch
new file mode 100644
index 0000000..13ca55b
--- /dev/null
+++ b/glibc-localegrouping.patch
@@ -0,0 +1,1660 @@
+commit 4b19cd7aef8511714947e658077c85f51c29ef65
+Author: Ulrich Drepper <drepper at gmail.com>
+Date:   Fri Nov 11 11:25:45 2011 -0500
+
+    Fix grouping and reuse other locales in various locales
+
+diff --git a/NEWS b/NEWS
+index 6223bae..ad0ef1d 100644
+--- a/NEWS
++++ b/NEWS
+*************** Version 2.15
+*** 11,17 ****
+  
+    6779, 6783, 9696, 11589, 12403, 12847, 12868, 12852, 12874, 12885, 12907,
+    12922, 12935, 13007, 13021, 13067, 13068, 13090, 13092, 13114, 13118,
+!   13123, 13134, 13138, 13150, 13179, 13192, 13268, 13291
+  
+  * New program pldd to list loaded object of a process
+    Implemented by Ulrich Drepper.
+--- 11,17 ----
+  
+    6779, 6783, 9696, 11589, 12403, 12847, 12868, 12852, 12874, 12885, 12907,
+    12922, 12935, 13007, 13021, 13067, 13068, 13090, 13092, 13114, 13118,
+!   13123, 13134, 13138, 13147, 13150, 13179, 13192, 13268, 13291
+  
+  * New program pldd to list loaded object of a process
+    Implemented by Ulrich Drepper.
+diff --git a/localedata/ChangeLog b/localedata/ChangeLog
+index dc2b8a0..8bd381f 100644
+--- a/localedata/ChangeLog
++++ b/localedata/ChangeLog
+@@ -1,3 +1,30 @@
++2011-11-11  Ulrich Drepper  <drepper at gmail.com>
++
++	[BZ #13147]
++	* locales/de_AT: Use de_DE for LC_NUMERIC.
++	* locales/es_BO: Use es_ES for LC_MESSAGES and LC_NUMERIC.
++	* locales/es_CL: Likewise.
++	* locales/es_CO: Likewise.
++	* locales/es_DO: Likewise.
++	* locales/es_EC: Likewise.
++	* locales/es_GT: Likewise.
++	* locales/es_HN: Likewise.
++	* locales/es_MX: Likewise.
++	* locales/es_NI: Likewise.
++	* locales/es_PA: Likewise.
++	* locales/es_PE: Likewise.
++	* locales/es_PR: Likewise.
++	* locales/es_PY: Likewise.
++	* locales/es_SV: Likewise.
++	* locales/es_UY: Likewise.
++	* locales/es_VE: Likewise.
++	* locales/es_ES: Fix LC_NUMERIC.
++	* locales/es_CR: Use es_ES for LC_MESSAGES.
++	* locales/fr_BE: Actually use grouping in LC_NUMERIC.
++	* locales/fr_CA: Use fr_FR for LC_MESSAGES and LC_NUMERIC.
++	* locales/fr_CH: Use de_CH for LC_NUMERIC.
++	* locales/fr_LU: Use same grouping in LC_NUMERIC as in LC_MONETARY.
++
+ 2011-10-15  Ulrich Drepper  <drepper at gmail.com>
+ 
+ 	* Makefile (tests): Add tst-setlocale2:
+diff --git a/localedata/locales/de_AT b/localedata/locales/de_AT
+index 4e0b7fb..b3adf90 100644
+--- a/localedata/locales/de_AT
++++ b/localedata/locales/de_AT
+@@ -78,41 +78,39 @@ n_sign_posn               1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point             "<U002C>"
+-thousands_sep             ""
+-grouping                  0;0
++copy "de_DE"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0053><U006F><U006E>";"<U004D><U006F><U006E>";/
+-        "<U0044><U0069><U0065>";"<U004D><U0069><U0074>";/
+-        "<U0044><U006F><U006E>";"<U0046><U0072><U0065>";/
+-        "<U0053><U0061><U006D>"
++	"<U0044><U0069><U0065>";"<U004D><U0069><U0074>";/
++	"<U0044><U006F><U006E>";"<U0046><U0072><U0065>";/
++	"<U0053><U0061><U006D>"
+ day     "<U0053><U006F><U006E><U006E><U0074><U0061><U0067>";/
+-        "<U004D><U006F><U006E><U0074><U0061><U0067>";/
+-        "<U0044><U0069><U0065><U006E><U0073><U0074><U0061><U0067>";/
+-        "<U004D><U0069><U0074><U0074><U0077><U006F><U0063><U0068>";/
+-        "<U0044><U006F><U006E><U006E><U0065><U0072><U0073><U0074><U0061><U0067>";/
+-        "<U0046><U0072><U0065><U0069><U0074><U0061><U0067>";/
+-        "<U0053><U0061><U006D><U0073><U0074><U0061><U0067>"
++	"<U004D><U006F><U006E><U0074><U0061><U0067>";/
++	"<U0044><U0069><U0065><U006E><U0073><U0074><U0061><U0067>";/
++	"<U004D><U0069><U0074><U0074><U0077><U006F><U0063><U0068>";/
++	"<U0044><U006F><U006E><U006E><U0065><U0072><U0073><U0074><U0061><U0067>";/
++	"<U0046><U0072><U0065><U0069><U0074><U0061><U0067>";/
++	"<U0053><U0061><U006D><U0073><U0074><U0061><U0067>"
+ abmon   "<U004A><U00E4><U006E>";"<U0046><U0065><U0062>";/
+-        "<U004D><U00E4><U0072>";"<U0041><U0070><U0072>";/
+-        "<U004D><U0061><U0069>";"<U004A><U0075><U006E>";/
+-        "<U004A><U0075><U006C>";"<U0041><U0075><U0067>";/
+-        "<U0053><U0065><U0070>";"<U004F><U006B><U0074>";/
+-        "<U004E><U006F><U0076>";"<U0044><U0065><U007A>"
++	"<U004D><U00E4><U0072>";"<U0041><U0070><U0072>";/
++	"<U004D><U0061><U0069>";"<U004A><U0075><U006E>";/
++	"<U004A><U0075><U006C>";"<U0041><U0075><U0067>";/
++	"<U0053><U0065><U0070>";"<U004F><U006B><U0074>";/
++	"<U004E><U006F><U0076>";"<U0044><U0065><U007A>"
+ mon     "<U004A><U00E4><U006E><U006E><U0065><U0072>";/
+-        "<U0046><U0065><U0062><U0065><U0072>";/
+-        "<U004D><U00E4><U0072><U007A>";/
+-        "<U0041><U0070><U0072><U0069><U006C>";/
+-        "<U004D><U0061><U0069>";/
+-        "<U004A><U0075><U006E><U0069>";/
+-        "<U004A><U0075><U006C><U0069>";/
+-        "<U0041><U0075><U0067><U0075><U0073><U0074>";/
+-        "<U0053><U0065><U0070><U0074><U0065><U006D><U0062><U0065><U0072>";/
+-        "<U004F><U006B><U0074><U006F><U0062><U0065><U0072>";/
+-        "<U004E><U006F><U0076><U0065><U006D><U0062><U0065><U0072>";/
+-        "<U0044><U0065><U007A><U0065><U006D><U0062><U0065><U0072>"
++	"<U0046><U0065><U0062><U0065><U0072>";/
++	"<U004D><U00E4><U0072><U007A>";/
++	"<U0041><U0070><U0072><U0069><U006C>";/
++	"<U004D><U0061><U0069>";/
++	"<U004A><U0075><U006E><U0069>";/
++	"<U004A><U0075><U006C><U0069>";/
++	"<U0041><U0075><U0067><U0075><U0073><U0074>";/
++	"<U0053><U0065><U0070><U0074><U0065><U006D><U0062><U0065><U0072>";/
++	"<U004F><U006B><U0074><U006F><U0062><U0065><U0072>";/
++	"<U004E><U006F><U0076><U0065><U006D><U0062><U0065><U0072>";/
++	"<U0044><U0065><U007A><U0065><U006D><U0062><U0065><U0072>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0059><U002D><U0025><U006D><U002D><U0025><U0064>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_BO b/localedata/locales/es_BO
+index c77bb1d..6964311 100644
+--- a/localedata/locales/es_BO
++++ b/localedata/locales/es_BO
+@@ -56,8 +56,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -79,41 +78,39 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002C>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_CL b/localedata/locales/es_CL
+index ff44fa8..fe5b6d9 100644
+--- a/localedata/locales/es_CL
++++ b/localedata/locales/es_CL
+@@ -56,8 +56,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -79,41 +78,39 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002C>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_CO b/localedata/locales/es_CO
+index 4c1de13..5db5d6d 100644
+--- a/localedata/locales/es_CO
++++ b/localedata/locales/es_CO
+@@ -56,8 +56,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -79,41 +78,39 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002C>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_CR b/localedata/locales/es_CR
+index 6cff560..f998c86 100644
+--- a/localedata/locales/es_CR
++++ b/localedata/locales/es_CR
+@@ -47,8 +47,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -79,34 +78,34 @@ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0059>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_DO b/localedata/locales/es_DO
+index fcd0f9e..7cf54cf 100644
+--- a/localedata/locales/es_DO
++++ b/localedata/locales/es_DO
+@@ -56,8 +56,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -79,41 +78,39 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002E>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_EC b/localedata/locales/es_EC
+index b8d4c8f..480f6ef 100644
+--- a/localedata/locales/es_EC
++++ b/localedata/locales/es_EC
+@@ -56,8 +56,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -79,41 +78,39 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002C>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_ES b/localedata/locales/es_ES
+index fba4125..fcf90cb 100644
+--- a/localedata/locales/es_ES
++++ b/localedata/locales/es_ES
+@@ -85,40 +85,40 @@ END LC_MONETARY
+ 
+ LC_NUMERIC
+ decimal_point        "<U002C>"
+-thousands_sep        ""
+-grouping             0;0
++thousands_sep        "<U002E>"
++grouping             3;3
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_GT b/localedata/locales/es_GT
+index 455b076..49d369f 100644
+--- a/localedata/locales/es_GT
++++ b/localedata/locales/es_GT
+@@ -55,8 +55,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -78,9 +77,7 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002E>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+diff --git a/localedata/locales/es_HN b/localedata/locales/es_HN
+index 53892b4..a809188 100644
+--- a/localedata/locales/es_HN
++++ b/localedata/locales/es_HN
+@@ -56,8 +56,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -79,41 +78,39 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002E>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_MX b/localedata/locales/es_MX
+index 91dac23..7a1cccc 100644
+--- a/localedata/locales/es_MX
++++ b/localedata/locales/es_MX
+@@ -56,8 +56,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -79,41 +78,39 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002E>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_NI b/localedata/locales/es_NI
+index c0c395f..207f2da 100644
+--- a/localedata/locales/es_NI
++++ b/localedata/locales/es_NI
+@@ -47,8 +47,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -70,9 +69,7 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002E>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+diff --git a/localedata/locales/es_PA b/localedata/locales/es_PA
+index 10d6d82..ae5cd3a 100644
+--- a/localedata/locales/es_PA
++++ b/localedata/locales/es_PA
+@@ -56,8 +56,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -79,41 +78,39 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002E>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_PE b/localedata/locales/es_PE
+index 634c927..da1a640 100644
+--- a/localedata/locales/es_PE
++++ b/localedata/locales/es_PE
+@@ -56,8 +56,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -79,41 +78,39 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002E>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_PR b/localedata/locales/es_PR
+index 546b6c2..53496d4 100644
+--- a/localedata/locales/es_PR
++++ b/localedata/locales/es_PR
+@@ -47,8 +47,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -70,41 +69,39 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002E>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_PY b/localedata/locales/es_PY
+index 2c31b2f..ce226ba 100644
+--- a/localedata/locales/es_PY
++++ b/localedata/locales/es_PY
+@@ -56,8 +56,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -79,41 +78,39 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002C>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_SV b/localedata/locales/es_SV
+index 3b6be32..d99b6cf 100644
+--- a/localedata/locales/es_SV
++++ b/localedata/locales/es_SV
+@@ -56,8 +56,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -79,9 +78,7 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002E>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+diff --git a/localedata/locales/es_UY b/localedata/locales/es_UY
+index 8b7ed0d..cbb7d5a 100644
+--- a/localedata/locales/es_UY
++++ b/localedata/locales/es_UY
+@@ -56,8 +56,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -79,41 +78,39 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002C>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/es_VE b/localedata/locales/es_VE
+index ca6637a..1ec2dff 100644
+--- a/localedata/locales/es_VE
++++ b/localedata/locales/es_VE
+@@ -56,8 +56,7 @@ copy "es_ES"
+ END LC_CTYPE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "es_ES"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -79,41 +78,39 @@ n_sign_posn          1
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point        "<U002C>"
+-thousands_sep        ""
+-grouping             0;0
++copy "es_ES"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U006F><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
+-        "<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
+-        "<U0073><U00E1><U0062>"
++	"<U006D><U0061><U0072>";"<U006D><U0069><U00E9>";/
++	"<U006A><U0075><U0065>";"<U0076><U0069><U0065>";/
++	"<U0073><U00E1><U0062>"
+ day     "<U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+-        "<U006C><U0075><U006E><U0065><U0073>";/
+-        "<U006D><U0061><U0072><U0074><U0065><U0073>";/
+-        "<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
+-        "<U006A><U0075><U0065><U0076><U0065><U0073>";/
+-        "<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
+-        "<U0073><U00E1><U0062><U0061><U0064><U006F>"
++	"<U006C><U0075><U006E><U0065><U0073>";/
++	"<U006D><U0061><U0072><U0074><U0065><U0073>";/
++	"<U006D><U0069><U00E9><U0072><U0063><U006F><U006C><U0065><U0073>";/
++	"<U006A><U0075><U0065><U0076><U0065><U0073>";/
++	"<U0076><U0069><U0065><U0072><U006E><U0065><U0073>";/
++	"<U0073><U00E1><U0062><U0061><U0064><U006F>"
+ abmon   "<U0065><U006E><U0065>";"<U0066><U0065><U0062>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
+-        "<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0062><U0072>";/
++	"<U006D><U0061><U0079>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U006C>";"<U0061><U0067><U006F>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U0069><U0063>"
+ mon     "<U0065><U006E><U0065><U0072><U006F>";/
+-        "<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
+-        "<U006D><U0061><U0072><U007A><U006F>";/
+-        "<U0061><U0062><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0079><U006F>";/
+-        "<U006A><U0075><U006E><U0069><U006F>";/
+-        "<U006A><U0075><U006C><U0069><U006F>";/
+-        "<U0061><U0067><U006F><U0073><U0074><U006F>";/
+-        "<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U0065><U0062><U0072><U0065><U0072><U006F>";/
++	"<U006D><U0061><U0072><U007A><U006F>";/
++	"<U0061><U0062><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0079><U006F>";/
++	"<U006A><U0075><U006E><U0069><U006F>";/
++	"<U006A><U0075><U006C><U0069><U006F>";/
++	"<U0061><U0067><U006F><U0073><U0074><U006F>";/
++	"<U0073><U0065><U0070><U0074><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U0075><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0069><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U0069><U0063><U0069><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/fr_BE b/localedata/locales/fr_BE
+index f9c911a..43beac5 100644
+--- a/localedata/locales/fr_BE
++++ b/localedata/locales/fr_BE
+@@ -79,7 +79,7 @@ END LC_MONETARY
+ LC_NUMERIC
+ decimal_point             "<U002C>"
+ thousands_sep             "<U002E>"
+-grouping                  0;0
++grouping                  3;3
+ END LC_NUMERIC
+ 
+ LC_TIME
+diff --git a/localedata/locales/fr_CA b/localedata/locales/fr_CA
+index 992a4b1..21eb670 100644
+--- a/localedata/locales/fr_CA
++++ b/localedata/locales/fr_CA
+@@ -55,8 +55,7 @@ copy "en_CA"
+ END LC_COLLATE
+ 
+ LC_MESSAGES
+-yesexpr "<U005E><U005B><U006F><U004F><U0079><U0059><U005D><U002E><U002A>"
+-noexpr  "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
++copy "fr_FR"
+ END LC_MESSAGES
+ 
+ LC_MONETARY
+@@ -78,41 +77,39 @@ n_sign_posn               0
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point             "<U002C>"
+-thousands_sep             "<U0020>"
+-grouping                  0;0
++copy "fr_FR"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U0069><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0065><U0072>";/
+-        "<U006A><U0065><U0075>";"<U0076><U0065><U006E>";/
+-        "<U0073><U0061><U006D>"
++	"<U006D><U0061><U0072>";"<U006D><U0065><U0072>";/
++	"<U006A><U0065><U0075>";"<U0076><U0065><U006E>";/
++	"<U0073><U0061><U006D>"
+ day     "<U0064><U0069><U006D><U0061><U006E><U0063><U0068><U0065>";/
+-        "<U006C><U0075><U006E><U0064><U0069>";/
+-        "<U006D><U0061><U0072><U0064><U0069>";/
+-        "<U006D><U0065><U0072><U0063><U0072><U0065><U0064><U0069>";/
+-        "<U006A><U0065><U0075><U0064><U0069>";/
+-        "<U0076><U0065><U006E><U0064><U0072><U0065><U0064><U0069>";/
+-        "<U0073><U0061><U006D><U0065><U0064><U0069>"
++	"<U006C><U0075><U006E><U0064><U0069>";/
++	"<U006D><U0061><U0072><U0064><U0069>";/
++	"<U006D><U0065><U0072><U0063><U0072><U0065><U0064><U0069>";/
++	"<U006A><U0065><U0075><U0064><U0069>";/
++	"<U0076><U0065><U006E><U0064><U0072><U0065><U0064><U0069>";/
++	"<U0073><U0061><U006D><U0065><U0064><U0069>"
+ abmon   "<U006A><U0061><U006E>";"<U0066><U00E9><U0076>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0076><U0072>";/
+-        "<U006D><U0061><U0069>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U0069>";"<U0061><U006F><U00FB>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U00E9><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0076><U0072>";/
++	"<U006D><U0061><U0069>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U0069>";"<U0061><U006F><U00FB>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U00E9><U0063>"
+ mon     "<U006A><U0061><U006E><U0076><U0069><U0065><U0072>";/
+-        "<U0066><U00E9><U0076><U0072><U0069><U0065><U0072>";/
+-        "<U006D><U0061><U0072><U0073>";/
+-        "<U0061><U0076><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0069>";/
+-        "<U006A><U0075><U0069><U006E>";/
+-        "<U006A><U0075><U0069><U006C><U006C><U0065><U0074>";/
+-        "<U0061><U006F><U00FB><U0074>";/
+-        "<U0073><U0065><U0070><U0074><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U006F><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U00E9><U0063><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U00E9><U0076><U0072><U0069><U0065><U0072>";/
++	"<U006D><U0061><U0072><U0073>";/
++	"<U0061><U0076><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0069>";/
++	"<U006A><U0075><U0069><U006E>";/
++	"<U006A><U0075><U0069><U006C><U006C><U0065><U0074>";/
++	"<U0061><U006F><U00FB><U0074>";/
++	"<U0073><U0065><U0070><U0074><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U006F><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U00E9><U0063><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0059><U002D><U0025><U006D><U002D><U0025><U0064>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/fr_CH b/localedata/locales/fr_CH
+index 7cb6282..5ab6af1 100644
+--- a/localedata/locales/fr_CH
++++ b/localedata/locales/fr_CH
+@@ -64,41 +64,39 @@ copy  "de_CH"
+ END LC_MONETARY
+ 
+ LC_NUMERIC
+-decimal_point             "<U002C>"
+-thousands_sep             ""
+-grouping                  0;0
++copy "de_CH"
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U0069><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0065><U0072>";/
+-        "<U006A><U0065><U0075>";"<U0076><U0065><U006E>";/
+-        "<U0073><U0061><U006D>"
++	"<U006D><U0061><U0072>";"<U006D><U0065><U0072>";/
++	"<U006A><U0065><U0075>";"<U0076><U0065><U006E>";/
++	"<U0073><U0061><U006D>"
+ day     "<U0064><U0069><U006D><U0061><U006E><U0063><U0068><U0065>";/
+-        "<U006C><U0075><U006E><U0064><U0069>";/
+-        "<U006D><U0061><U0072><U0064><U0069>";/
+-        "<U006D><U0065><U0072><U0063><U0072><U0065><U0064><U0069>";/
+-        "<U006A><U0065><U0075><U0064><U0069>";/
+-        "<U0076><U0065><U006E><U0064><U0072><U0065><U0064><U0069>";/
+-        "<U0073><U0061><U006D><U0065><U0064><U0069>"
++	"<U006C><U0075><U006E><U0064><U0069>";/
++	"<U006D><U0061><U0072><U0064><U0069>";/
++	"<U006D><U0065><U0072><U0063><U0072><U0065><U0064><U0069>";/
++	"<U006A><U0065><U0075><U0064><U0069>";/
++	"<U0076><U0065><U006E><U0064><U0072><U0065><U0064><U0069>";/
++	"<U0073><U0061><U006D><U0065><U0064><U0069>"
+ abmon   "<U006A><U0061><U006E>";"<U0066><U00E9><U0076>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0076><U0072>";/
+-        "<U006D><U0061><U0069>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U0069>";"<U0061><U006F><U00FB>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U00E9><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0076><U0072>";/
++	"<U006D><U0061><U0069>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U0069>";"<U0061><U006F><U00FB>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U00E9><U0063>"
+ mon     "<U006A><U0061><U006E><U0076><U0069><U0065><U0072>";/
+-        "<U0066><U00E9><U0076><U0072><U0069><U0065><U0072>";/
+-        "<U006D><U0061><U0072><U0073>";/
+-        "<U0061><U0076><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0069>";/
+-        "<U006A><U0075><U0069><U006E>";/
+-        "<U006A><U0075><U0069><U006C><U006C><U0065><U0074>";/
+-        "<U0061><U006F><U00FB><U0074>";/
+-        "<U0073><U0065><U0070><U0074><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U006F><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U00E9><U0063><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U00E9><U0076><U0072><U0069><U0065><U0072>";/
++	"<U006D><U0061><U0072><U0073>";/
++	"<U0061><U0076><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0069>";/
++	"<U006A><U0075><U0069><U006E>";/
++	"<U006A><U0075><U0069><U006C><U006C><U0065><U0074>";/
++	"<U0061><U006F><U00FB><U0074>";/
++	"<U0073><U0065><U0070><U0074><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U006F><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U00E9><U0063><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002E><U0020><U0025><U006D><U002E><U0020><U0025><U0079>"
+ t_fmt   "<U0025><U0054>"
+diff --git a/localedata/locales/fr_LU b/localedata/locales/fr_LU
+index 80b29b6..8cb90b3 100644
+--- a/localedata/locales/fr_LU
++++ b/localedata/locales/fr_LU
+@@ -78,40 +78,40 @@ END LC_MONETARY
+ 
+ LC_NUMERIC
+ decimal_point             "<U002C>"
+-thousands_sep             ""
+-grouping                  0;0
++thousands_sep             "<U0020>"
++grouping                  3;3
+ END LC_NUMERIC
+ 
+ LC_TIME
+ abday   "<U0064><U0069><U006D>";"<U006C><U0075><U006E>";/
+-        "<U006D><U0061><U0072>";"<U006D><U0065><U0072>";/
+-        "<U006A><U0065><U0075>";"<U0076><U0065><U006E>";/
+-        "<U0073><U0061><U006D>"
++	"<U006D><U0061><U0072>";"<U006D><U0065><U0072>";/
++	"<U006A><U0065><U0075>";"<U0076><U0065><U006E>";/
++	"<U0073><U0061><U006D>"
+ day     "<U0064><U0069><U006D><U0061><U006E><U0063><U0068><U0065>";/
+-        "<U006C><U0075><U006E><U0064><U0069>";/
+-        "<U006D><U0061><U0072><U0064><U0069>";/
+-        "<U006D><U0065><U0072><U0063><U0072><U0065><U0064><U0069>";/
+-        "<U006A><U0065><U0075><U0064><U0069>";/
+-        "<U0076><U0065><U006E><U0064><U0072><U0065><U0064><U0069>";/
+-        "<U0073><U0061><U006D><U0065><U0064><U0069>"
++	"<U006C><U0075><U006E><U0064><U0069>";/
++	"<U006D><U0061><U0072><U0064><U0069>";/
++	"<U006D><U0065><U0072><U0063><U0072><U0065><U0064><U0069>";/
++	"<U006A><U0065><U0075><U0064><U0069>";/
++	"<U0076><U0065><U006E><U0064><U0072><U0065><U0064><U0069>";/
++	"<U0073><U0061><U006D><U0065><U0064><U0069>"
+ abmon   "<U006A><U0061><U006E>";"<U0066><U00E9><U0076>";/
+-        "<U006D><U0061><U0072>";"<U0061><U0076><U0072>";/
+-        "<U006D><U0061><U0069>";"<U006A><U0075><U006E>";/
+-        "<U006A><U0075><U0069>";"<U0061><U006F><U00FB>";/
+-        "<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
+-        "<U006E><U006F><U0076>";"<U0064><U00E9><U0063>"
++	"<U006D><U0061><U0072>";"<U0061><U0076><U0072>";/
++	"<U006D><U0061><U0069>";"<U006A><U0075><U006E>";/
++	"<U006A><U0075><U0069>";"<U0061><U006F><U00FB>";/
++	"<U0073><U0065><U0070>";"<U006F><U0063><U0074>";/
++	"<U006E><U006F><U0076>";"<U0064><U00E9><U0063>"
+ mon     "<U006A><U0061><U006E><U0076><U0069><U0065><U0072>";/
+-        "<U0066><U00E9><U0076><U0072><U0069><U0065><U0072>";/
+-        "<U006D><U0061><U0072><U0073>";/
+-        "<U0061><U0076><U0072><U0069><U006C>";/
+-        "<U006D><U0061><U0069>";/
+-        "<U006A><U0075><U0069><U006E>";/
+-        "<U006A><U0075><U0069><U006C><U006C><U0065><U0074>";/
+-        "<U0061><U006F><U00FB><U0074>";/
+-        "<U0073><U0065><U0070><U0074><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U006F><U0063><U0074><U006F><U0062><U0072><U0065>";/
+-        "<U006E><U006F><U0076><U0065><U006D><U0062><U0072><U0065>";/
+-        "<U0064><U00E9><U0063><U0065><U006D><U0062><U0072><U0065>"
++	"<U0066><U00E9><U0076><U0072><U0069><U0065><U0072>";/
++	"<U006D><U0061><U0072><U0073>";/
++	"<U0061><U0076><U0072><U0069><U006C>";/
++	"<U006D><U0061><U0069>";/
++	"<U006A><U0075><U0069><U006E>";/
++	"<U006A><U0075><U0069><U006C><U006C><U0065><U0074>";/
++	"<U0061><U006F><U00FB><U0074>";/
++	"<U0073><U0065><U0070><U0074><U0065><U006D><U0062><U0072><U0065>";/
++	"<U006F><U0063><U0074><U006F><U0062><U0072><U0065>";/
++	"<U006E><U006F><U0076><U0065><U006D><U0062><U0072><U0065>";/
++	"<U0064><U00E9><U0063><U0065><U006D><U0062><U0072><U0065>"
+ d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+ d_fmt   "<U0025><U0064><U002E><U0025><U006D><U002E><U0025><U0059>"
+ t_fmt   "<U0025><U0054>"
diff --git a/glibc.spec b/glibc.spec
index fb3cd14..d77f8d4 100644
--- a/glibc.spec
+++ b/glibc.spec
@@ -28,7 +28,7 @@
 Summary: The GNU libc libraries
 Name: glibc
 Version: %{glibcversion}
-Release: 15
+Release: 19
 # GPLv2+ is used in a bunch of programs, LGPLv2+ is used for libraries.
 # Things that are linked directly into dynamically linked programs
 # and shared libraries (e.g. crt files, lib*_nonshared.a) have an additional
@@ -43,6 +43,8 @@ Source2: %{glibcsrcdir}-fedora.tar.xz
 Patch0: %{name}-fedora.patch
 Patch1: %{name}-ia64-lib64.patch
 Patch2: %{name}-no-leaf-attribute.patch
+Patch3: %{name}-localegrouping.patch
+Patch4: %{name}-arenalock.patch
 Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 Obsoletes: glibc-profile < 2.4
 Obsoletes: nss_db
@@ -262,6 +264,8 @@ rm -rf %{glibcportsdir}
 %endif
 %endif
 %patch2 -p1
+%patch3 -p1
+%patch4 -p1
 
 # A lot of programs still misuse memcpy when they have to use
 # memmove. The memcpy implementation below is not tolerant at
@@ -1114,6 +1118,17 @@ rm -f *.filelist*
 %endif
 
 %changelog
+* Fri Nov 18 2011 Jeff Law <law at redhat.com> - 2.14.90-19
+  - Check malloc areana atomically 
+  - Don't call reused_arena when _int_new_arena failed (#753601)
+  
+* Wed Nov 16 2011 Jeff Law <law at redhat.com> - 2.14.90-18
+  - Fix grouping and reuse other locales in various locales (BZ#13147)
+  
+* Tue Nov 15 2011 Jeff Law <law at redhat.com> - 2.14.90-17
+  Revert bogus commits/rebasing of Nov 14, Nov 11 and Nov 8.  Sources
+  should be equivalent to Fedora 16's initial release.
+
 * Wed Oct 26 2011 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.14.90-15
 - Rebuilt for glibc bug#747377
 


More information about the scm-commits mailing list