diff options
Diffstat (limited to 'lib/uniwbrk')
| -rw-r--r-- | lib/uniwbrk/u-wordbreaks.h | 70 | ||||
| -rw-r--r-- | lib/uniwbrk/u16-wordbreaks.c | 4 | ||||
| -rw-r--r-- | lib/uniwbrk/u32-wordbreaks.c | 4 | ||||
| -rw-r--r-- | lib/uniwbrk/u8-wordbreaks.c | 4 | ||||
| -rw-r--r-- | lib/uniwbrk/ulc-wordbreaks.c | 4 | ||||
| -rw-r--r-- | lib/uniwbrk/wbrkprop.h | 710 | ||||
| -rw-r--r-- | lib/uniwbrk/wbrktable.c | 70 | ||||
| -rw-r--r-- | lib/uniwbrk/wbrktable.h | 7 | ||||
| -rw-r--r-- | lib/uniwbrk/wordbreak-property.c | 4 | 
9 files changed, 714 insertions, 163 deletions
| diff --git a/lib/uniwbrk/u-wordbreaks.h b/lib/uniwbrk/u-wordbreaks.h index 5b0fce72..47d1e83d 100644 --- a/lib/uniwbrk/u-wordbreaks.h +++ b/lib/uniwbrk/u-wordbreaks.h @@ -1,5 +1,5 @@  /* Word breaks in UTF-8/UTF-16/UTF-32 strings.  -*- coding: utf-8 -*- -   Copyright (C) 2009-2016 Free Software Foundation, Inc. +   Copyright (C) 2009-2017 Free Software Foundation, Inc.     Written by Bruno Haible <bruno@clisp.org>, 2009.     This program is free software: you can redistribute it and/or @@ -22,7 +22,7 @@     Lesser General Public License for more details.     You should have received a copy of the GNU Lesser General Public License -   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */ +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */  void  FUNC (const UNIT *s, size_t n, char *p) @@ -48,6 +48,8 @@ FUNC (const UNIT *s, size_t n, char *p)           -1 at the very beginning of the string.  */        int secondlast_compchar_prop = -1; +      size_t ri_count = 0; +        /* Don't break inside multibyte characters.  */        memset (p, 0, n); @@ -60,10 +62,10 @@ FUNC (const UNIT *s, size_t n, char *p)            /* No break at the start of the string.  */            if (last_char_prop >= 0)              { -              /* No break between CR and LF.  */ +              /* No break between CR and LF (WB3).  */                if (last_char_prop == WBP_CR && prop == WBP_LF)                  /* *p = 0 */; -              /* Break before and after newlines.  */ +              /* Break before and after newlines (WB3a, WB3b).  */                else if ((last_char_prop == WBP_CR                          || last_char_prop == WBP_LF                          || last_char_prop == WBP_NEWLINE) @@ -71,8 +73,12 @@ FUNC (const UNIT *s, size_t n, char *p)                             || prop == WBP_LF                             || prop == WBP_NEWLINE))                  *p = 1; +              /* No break within emoji zwj sequence (WB3c).  */ +              else if (last_char_prop == WBP_ZWJ && +                       (prop == WBP_GAZ || prop == WBP_EBG)) +                /* *p = 0 */;                /* Ignore Format and Extend characters.  */ -              else if (!(prop == WBP_EXTEND || prop == WBP_FORMAT)) +              else if (!(prop == WBP_EXTEND || prop == WBP_FORMAT || prop == WBP_ZWJ))                  {                    /* No break in these situations (see UAX #29): @@ -84,16 +90,8 @@ FUNC (const UNIT *s, size_t n, char *p)                    Numeric × (MidNum | MidNumLet | SQ)      Numeric      (WB12)                                                          HL × DQ HL      (WB7b)                                                          HL DQ × HL      (WB7c) -                                   (ALetter | HL) × (ALetter | HL)      (WB5) -                                          (ALetter | HL) × Numeric      (WB9) -                                          Numeric × (ALetter | HL)      (WB10) -                                                 Numeric × Numeric      (WB8) -                                                      HL × SQ           (WB7a) -                                                Katakana × Katakana     (WB13) -                     (ALetter | HL | Numeric | Katakana) × ExtendNumLet (WB13a) -                                            ExtendNumLet × ExtendNumLet (WB13a) -                    ExtendNumLet × (ALetter | HL | Numeric | Katakana)  (WB13b) -                               Regional_Indicator × Regional_Indicator  (WB13c) +                                                ^ (RI RI)* RI × RI      (WB15) +                                            [^RI] (RI RI)* RI × RI      (WB16)                     */                    /* No break across certain punctuation.  Also, disable word                       breaks that were recognized earlier (due to lookahead of @@ -117,27 +115,29 @@ FUNC (const UNIT *s, size_t n, char *p)                        *last_compchar_ptr = 0;                        /* *p = 0; */                      } -                  /* Break after Format and Extend characters.  */ +                  /* Break before RI, if odd number of RI's are +                     preceding (WB15, WB16).  */ +                  else if (last_compchar_prop == WBP_RI && prop == WBP_RI) +                    { +                      if (ri_count % 2 == 0) +                        *p = 1; +                      /* else *p = 0 */ +                    } +                  /* Break after Format and Extend character.  */                    else if (last_compchar_prop == WBP_EXTEND                             || last_compchar_prop == WBP_FORMAT)                      *p = 1;                    else                      { -                      /* Normalize property value to table index, -                         skipping 5 properties: WBP_EXTEND, -                         WBP_FORMAT, WBP_NEWLINE, WBP_CR, and -                         WBP_LF.  */ -                      int last_compchar_prop_index = last_compchar_prop; -                      int prop_index = prop; - -                      if (last_compchar_prop_index >= WBP_EXTEND) -                        last_compchar_prop_index -= 5; - -                      if (prop_index >= WBP_EXTEND) -                        prop_index -= 5; +                      int last_compchar_index = +                        uniwbrk_prop_index[last_compchar_prop]; +                      int index = uniwbrk_prop_index[prop]; +                      /* Break between unknown pair (WB999).  */ +                      if (last_compchar_index < 0 || index < 0) +                        *p = 1;                        /* Perform a single table lookup.  */ -                      if (uniwbrk_table[last_compchar_prop_index][prop_index]) +                      else if (uniwbrk_table[last_compchar_index][index])                          *p = 1;                        /* else *p = 0; */                      } @@ -145,17 +145,23 @@ FUNC (const UNIT *s, size_t n, char *p)              }            last_char_prop = prop; -          /* Ignore Format and Extend characters, except at the start -             of the line.  */ + +          /* Ignore Format and Extend characters, except at the +             start of the line.  */            if (last_compchar_prop < 0                || last_compchar_prop == WBP_CR                || last_compchar_prop == WBP_LF                || last_compchar_prop == WBP_NEWLINE -              || !(prop == WBP_EXTEND || prop == WBP_FORMAT)) +              || !(prop == WBP_EXTEND || prop == WBP_FORMAT || prop == WBP_ZWJ))              {                secondlast_compchar_prop = last_compchar_prop;                last_compchar_prop = prop;                last_compchar_ptr = p; + +              if (prop == WBP_RI) +                ri_count++; +              else +                ri_count = 0;              }            s += count; diff --git a/lib/uniwbrk/u16-wordbreaks.c b/lib/uniwbrk/u16-wordbreaks.c index 0d785524..9d0cdfee 100644 --- a/lib/uniwbrk/u16-wordbreaks.c +++ b/lib/uniwbrk/u16-wordbreaks.c @@ -1,5 +1,5 @@  /* Word breaks in UTF-16 strings. -   Copyright (C) 2009-2016 Free Software Foundation, Inc. +   Copyright (C) 2009-2017 Free Software Foundation, Inc.     Written by Bruno Haible <bruno@clisp.org>, 2009.     This program is free software: you can redistribute it and/or @@ -22,7 +22,7 @@     Lesser General Public License for more details.     You should have received a copy of the GNU Lesser General Public License -   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */ +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */  #include <config.h> diff --git a/lib/uniwbrk/u32-wordbreaks.c b/lib/uniwbrk/u32-wordbreaks.c index b86cdc2f..8ec108b8 100644 --- a/lib/uniwbrk/u32-wordbreaks.c +++ b/lib/uniwbrk/u32-wordbreaks.c @@ -1,5 +1,5 @@  /* Word breaks in UTF-32 strings. -   Copyright (C) 2009-2016 Free Software Foundation, Inc. +   Copyright (C) 2009-2017 Free Software Foundation, Inc.     Written by Bruno Haible <bruno@clisp.org>, 2009.     This program is free software: you can redistribute it and/or @@ -22,7 +22,7 @@     Lesser General Public License for more details.     You should have received a copy of the GNU Lesser General Public License -   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */ +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */  #include <config.h> diff --git a/lib/uniwbrk/u8-wordbreaks.c b/lib/uniwbrk/u8-wordbreaks.c index 6d692e5d..4eb983e0 100644 --- a/lib/uniwbrk/u8-wordbreaks.c +++ b/lib/uniwbrk/u8-wordbreaks.c @@ -1,5 +1,5 @@  /* Word breaks in UTF-8 strings. -   Copyright (C) 2009-2016 Free Software Foundation, Inc. +   Copyright (C) 2009-2017 Free Software Foundation, Inc.     Written by Bruno Haible <bruno@clisp.org>, 2009.     This program is free software: you can redistribute it and/or @@ -22,7 +22,7 @@     Lesser General Public License for more details.     You should have received a copy of the GNU Lesser General Public License -   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */ +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */  #include <config.h> diff --git a/lib/uniwbrk/ulc-wordbreaks.c b/lib/uniwbrk/ulc-wordbreaks.c index 892c1472..d3028ac6 100644 --- a/lib/uniwbrk/ulc-wordbreaks.c +++ b/lib/uniwbrk/ulc-wordbreaks.c @@ -1,5 +1,5 @@  /* Word breaks in strings. -   Copyright (C) 2001-2003, 2006-2016 Free Software Foundation, Inc. +   Copyright (C) 2001-2003, 2006-2017 Free Software Foundation, Inc.     Written by Bruno Haible <bruno@clisp.org>, 2009.     This program is free software: you can redistribute it and/or @@ -22,7 +22,7 @@     Lesser General Public License for more details.     You should have received a copy of the GNU Lesser General Public License -   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */ +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */  #include <config.h> diff --git a/lib/uniwbrk/wbrkprop.h b/lib/uniwbrk/wbrkprop.h index 393fb58b..df1556f5 100644 --- a/lib/uniwbrk/wbrkprop.h +++ b/lib/uniwbrk/wbrkprop.h @@ -1,6 +1,6 @@  /* DO NOT EDIT! GENERATED AUTOMATICALLY! */  /* Line breaking properties of Unicode characters.  */ -/* Generated automatically by gen-uni-tables.c for Unicode 8.0.0.  */ +/* Generated automatically by gen-uni-tables.c for Unicode 9.0.0.  */  /* Copyright (C) 2000-2002, 2004, 2007-2009 Free Software Foundation, Inc. @@ -24,7 +24,7 @@     GNU General Public License for more details.     You should have received a copy of the GNU General Public License -   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */ +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */  #define wbrkprop_header_0 16  #define wbrkprop_header_1 15 @@ -36,7 +36,7 @@ typedef struct    {      int level1[15];      int level2[3 << 9]; -    unsigned char level3[158 << 7]; +    unsigned char level3[174 << 7];    }  wbrkprop_t;  static const wbrkprop_t uniwbrkprop = @@ -55,10 +55,10 @@ static const wbrkprop_t uniwbrkprop =       5120,  5248,  5376,  5504,  5632,  5760,  5888,  6016,       6144,  6272,   256,  6400,   256,   256,  6528,  6656,       6784,  6912,  7040,  7168,    -1,    -1,    -1,    -1, -       -1,  7296,    -1,    -1,    -1,    -1,    -1,    -1, +       -1,  7296,    -1,    -1,  7424,  7552,  7680,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -     7424,  7552,  7680,  7808,  7936,    -1,    -1,    -1, -     8064,  8192,  8320,  8448,    -1,  8576,  8704,    -1, +     7808,  7936,  8064,  8192,  8320,    -1,    -1,    -1, +     8448,  8576,  8704,  8832,    -1,  8960,  9088,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, @@ -87,8 +87,8 @@ static const wbrkprop_t uniwbrkprop =         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        256,   256,   256,   256,   256,   256,   256,   256, -      256,  8832,   256,   256,  8960,  9088,  9216,  9344, -     9472,  9600,  9728,  9856,  9984, 10112, 10240, 10368, +      256,  9216,   256,   256,  9344,  9472,  9600,  9728, +     9856,  9984, 10112, 10240, 10368, 10496, 10624, 10752,        256,   256,   256,   256,   256,   256,   256,   256,        256,   256,   256,   256,   256,   256,   256,   256,        256,   256,   256,   256,   256,   256,   256,   256, @@ -99,7 +99,7 @@ static const wbrkprop_t uniwbrkprop =        256,   256,   256,   256,   256,   256,   256,   256,        256,   256,   256,   256,   256,   256,   256,   256,        256,   256,   256,   256,   256,   256,   256,   256, -      256,   256,   256,   256,   256,   256,   256, 10496, +      256,   256,   256,   256,   256,   256,   256, 10880,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, @@ -108,38 +108,36 @@ static const wbrkprop_t uniwbrkprop =         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -       -1,    -1,    -1,    -1,    -1,    -1, 10624, 10752, -      256,   256, 10880, 11008, 11136, 11264, 11392, 11520, -    11648, 11776, 11904, 12032,    -1, 12160, 12288, 12416, -      256, 12544, 12672,    -1,   256,   256, 12800,    -1, -    12928, 13056, 13184, 13312, 13440, 13568, 13696, 13824, -    13952, 14080,    -1,    -1,    -1,    -1,    -1,    -1, -    14208, 14336, 14464, 14592, 14720, 14848, 14976,    -1, -       -1, 15104,    -1, 15232, 15360, 15488, 15616,    -1, -       -1, 15744,    -1,    -1,    -1, 15872,    -1,    -1, -       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -      256,   256,   256,   256,   256,   256,   256, 16000, -    16128,   256, 16256,    -1,    -1,    -1,    -1,    -1, +       -1,    -1,    -1,    -1,    -1,    -1, 11008, 11136, +      256,   256, 11264, 11392, 11520, 11648, 11776, 11904, +    12032, 12160, 12288, 12416,    -1, 12544, 12672, 12800, +      256, 12928, 13056,    -1,   256,   256, 13184,    -1, +    13312, 13440, 13568, 13696, 13824, 13952, 14080, 14208, +    14336, 14464,    -1,    -1,    -1,    -1,    -1,    -1, +    14592, 14720, 14848, 14976, 15104, 15232, 15360,    -1, +    15488, 15616,    -1, 15744, 15872, 16000, 16128,    -1, +       -1, 16256,    -1,    -1,    -1, 16384,    -1,    -1, +    16512, 16640,    -1,    -1,    -1,    -1,    -1,    -1, +      256,   256,   256,   256,   256,   256,   256, 16768, +    16896,   256, 17024,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        256,   256,   256,   256,   256,   256,   256,   256, -    16384,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, +    17152,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -      256,   256,   256,   256, 16512,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, +      256,   256,   256,   256, 17280,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -      256,   256,   256,   256, 16640, 16768, 16896, 17024, -       -1,    -1,    -1,    -1,    -1,    -1, 17152, 17280,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, +      256,   256,   256,   256, 17408, 17536, 17664, 17792, +       -1,    -1,    -1,    -1,    -1,    -1, 17920, 18048,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, @@ -154,27 +152,29 @@ static const wbrkprop_t uniwbrkprop =         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -    17408,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -    17536, 17664,    -1,    -1,    -1,    -1,    -1,    -1, +    18176,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, +    18304, 18432,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -       -1,    -1, 17792, 17920, 18048,    -1,    -1,    -1, -    18176, 18304, 18432,   256,   256, 18560, 18688, 18816, -       -1,    -1,    -1,    -1, 18944, 19072,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, +       -1,    -1, 18560, 18688, 18816,    -1,    -1,    -1, +    18944, 19072, 19200,   256,   256, 19328, 19456, 19584, +       -1,    -1,    -1,    -1, 19712, 19840,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -      256, 19200,    -1,    -1,    -1,    -1,    -1,    -1, -       -1,    -1,    -1,    -1, 19328, 19456,    -1,    -1, -       -1,    -1, 19584, 19712,    -1,    -1,    -1,    -1, +    19968,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, +      256, 20096, 20224,    -1,    -1,    -1,    -1,    -1, +       -1,    -1,    -1,    -1, 20352, 20480,    -1,    -1, +       -1,    -1, 20608, 20736,    -1,    -1,    -1, 20864, +    20992, 21120, 21248, 21376, 21504, 21632,    -1,    -1, +       -1,    -1, 21760,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, -    19840,    -1, 19968, 20096,    -1,    -1,    -1,    -1, +    21888,    -1, 22016, 22144,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,         -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1, @@ -701,18 +701,18 @@ static const wbrkprop_t uniwbrkprop =      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, -    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_ALETTER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_FORMAT, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, @@ -944,7 +944,7 @@ static const wbrkprop_t uniwbrkprop =      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_ALETTER, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER, @@ -997,7 +997,7 @@ static const wbrkprop_t uniwbrkprop =      WBP_EXTEND, WBP_OTHER, WBP_EXTEND, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_ALETTER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_EXTEND, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_EXTEND,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_EXTEND, WBP_EXTEND, @@ -1553,7 +1553,7 @@ static const wbrkprop_t uniwbrkprop =      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, -    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_EXTEND, WBP_EXTEND, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, @@ -1808,9 +1808,9 @@ static const wbrkprop_t uniwbrkprop =      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, @@ -1870,7 +1870,7 @@ static const wbrkprop_t uniwbrkprop =      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, @@ -1939,7 +1939,7 @@ static const wbrkprop_t uniwbrkprop =      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_EXTEND, WBP_EXTEND, WBP_FORMAT, WBP_FORMAT, +    WBP_EXTEND, WBP_ZWJ, WBP_FORMAT, WBP_FORMAT,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_MIDNUMLET, WBP_MIDNUMLET, WBP_OTHER, WBP_OTHER, @@ -1947,7 +1947,7 @@ static const wbrkprop_t uniwbrkprop =      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_MIDNUMLET, WBP_OTHER, WBP_OTHER, WBP_MIDLETTER,      WBP_NEWLINE, WBP_NEWLINE, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_OTHER, +    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_EXTENDNUMLET,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, @@ -2096,6 +2096,102 @@ static const wbrkprop_t uniwbrkprop =      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_EB, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_EB, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_EB, WBP_EB, +    WBP_EB, WBP_EB, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_GAZ, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, @@ -2587,7 +2683,7 @@ static const wbrkprop_t uniwbrkprop =      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, -    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, @@ -2657,7 +2753,7 @@ static const wbrkprop_t uniwbrkprop =      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, -    WBP_EXTEND, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_EXTEND, WBP_EXTEND, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, @@ -3388,25 +3484,25 @@ static const wbrkprop_t uniwbrkprop =      WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,      WBP_NUMERIC, WBP_NUMERIC, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, @@ -3935,7 +4031,7 @@ static const wbrkprop_t uniwbrkprop =      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_EXTEND, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, @@ -4028,6 +4124,38 @@ static const wbrkprop_t uniwbrkprop =      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, +    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, +    WBP_NUMERIC, WBP_NUMERIC, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, @@ -4242,6 +4370,70 @@ static const wbrkprop_t uniwbrkprop =      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_OTHER, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, +    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, +    WBP_NUMERIC, WBP_NUMERIC, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_OTHER, WBP_OTHER, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_OTHER, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, @@ -4584,7 +4776,7 @@ static const wbrkprop_t uniwbrkprop =      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, @@ -5040,6 +5232,38 @@ static const wbrkprop_t uniwbrkprop =      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_OTHER, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_OTHER, WBP_OTHER, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_OTHER, WBP_EXTEND, +    WBP_EXTEND, WBP_OTHER, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, @@ -5073,6 +5297,38 @@ static const wbrkprop_t uniwbrkprop =      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, +    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, +    WBP_NUMERIC, WBP_NUMERIC, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,      WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, @@ -5200,6 +5456,262 @@ static const wbrkprop_t uniwbrkprop =      WBP_RI, WBP_RI, WBP_RI, WBP_RI,      WBP_RI, WBP_RI, WBP_RI, WBP_RI,      WBP_RI, WBP_RI, WBP_RI, WBP_RI, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_EB, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_EB, +    WBP_EB, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_EB, WBP_EB, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_EM, +    WBP_EM, WBP_EM, WBP_EM, WBP_EM, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_EB, WBP_EB, +    WBP_OTHER, WBP_OTHER, WBP_EB, WBP_EB, +    WBP_EB, WBP_EB, WBP_EB, WBP_EB, +    WBP_EB, WBP_EB, WBP_EB, WBP_EB, +    WBP_EB, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_EBG, WBP_EBG, +    WBP_EBG, WBP_EBG, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_EB, WBP_OTHER, +    WBP_EB, WBP_EB, WBP_EB, WBP_EB, +    WBP_EB, WBP_EB, WBP_EB, WBP_EB, +    WBP_EB, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_EB, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_EB, WBP_EB, WBP_EB, +    WBP_OTHER, WBP_EB, WBP_EB, WBP_EB, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_GAZ, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_EB, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_EB, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_EB, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_EB, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_EB, WBP_EB, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_GAZ, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_EB, WBP_EB, WBP_EB, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_EB, +    WBP_EB, WBP_EB, WBP_EB, WBP_EB, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_EB, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_EB, WBP_EB, WBP_EB, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_EB, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_EB, WBP_EB, WBP_EB, WBP_EB, +    WBP_EB, WBP_EB, WBP_EB, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_EB, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_EB, WBP_OTHER, WBP_OTHER, WBP_EB, +    WBP_EB, WBP_EB, WBP_EB, WBP_EB, +    WBP_EB, WBP_EB, WBP_OTHER, WBP_OTHER, +    WBP_EB, WBP_EB, WBP_EB, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, +    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_FORMAT, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, @@ -5208,30 +5720,30 @@ static const wbrkprop_t uniwbrkprop =      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,      WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, -    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, +    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,      WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, diff --git a/lib/uniwbrk/wbrktable.c b/lib/uniwbrk/wbrktable.c index 3b9f7834..57a6511d 100644 --- a/lib/uniwbrk/wbrktable.c +++ b/lib/uniwbrk/wbrktable.c @@ -1,5 +1,5 @@  /* Word break auxiliary table.  -*- coding: utf-8 -*- -   Copyright (C) 2009-2016 Free Software Foundation, Inc. +   Copyright (C) 2009-2017 Free Software Foundation, Inc.     Written by Bruno Haible <bruno@clisp.org>, 2009.     This program is free software: you can redistribute it and/or @@ -22,13 +22,39 @@     Lesser General Public License for more details.     You should have received a copy of the GNU Lesser General Public License -   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */ +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */  #include <config.h>  /* Specification.  */  #include "wbrktable.h" +const int uniwbrk_prop_index[22] = +{ +   0, /* WBP_OTHER */ +   1, /* WBP_KATAKANA */ +   2, /* WBP_ALETTER */ +   3, /* WBP_MIDNUMLET */ +   4, /* WBP_MIDLETTER */ +   5, /* WBP_MIDNUM */ +   6, /* WBP_NUMERIC */ +   7, /* WBP_EXTENDNUMLET */ +  -1, /* WBP_EXTEND */ +  -1, /* WBP_FORMAT */ +  -1, /* WBP_NEWLINE */ +  -1, /* WBP_CR */ +  -1, /* WBP_LF */ +  -1, /* WBP_RI */ +   8, /* WBP_DQ */ +   9, /* WBP_SQ */ +  10, /* WBP_HL */ +  -1, /* WBP_ZWJ */ +  11, /* WBP_EB */ +  12, /* WBP_EM */ +  -1, /* WBP_GAZ */ +  13  /* WBP_EBG */ +}; +  /* This table contains the following rules (see UAX #29):                             last         current @@ -42,24 +68,30 @@  (ALetter | HL | Numeric | Katakana) × ExtendNumLet                    (WB13a)                         ExtendNumLet × ExtendNumLet                    (WB13a)                     ExtendNumLet × (ALetter | HL | Numeric | Katakana) (WB13b) -                 Regional_Indicator × Regional_Indicator              (WB13c) +                     (E_Base | EBG) × E_Modifier                      (WB14) + +   Note that the following rules are not handled here but in the loop in u-wordbreaks.h: +   - The rules need to look back or look ahead the second character (WB6, WB7, WB7b, WB7c, WB11, WB12) +   - The rules with a higher precedence over the "ignore" rule (WB4), such as WB3c   */ -const unsigned char uniwbrk_table[12][12] = -{        /* current:      OTHER        MIDNUMLET    NUMERIC     DQ         */ -         /*                 KATAKANA     MIDLETTER    EXTENDNUMLET  SQ     */ -         /*                   ALETTER      MIDNUM           RI          HL */ +const unsigned char uniwbrk_table[14][14] = +{        /* current:        OTHER       MIDNUMLET   NUMERIC     SQ          EM      */ +         /*                     KATAKANA    MIDLETTER   EXNUMLET    HL          EBG */ +         /*                         ALETTER     MIDNUM      DQ          EB          */    /* last */ -  /* WBP_OTHER */        {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1 }, -  /* WBP_KATAKANA */     {  1,  0,  1,  1,  1,  1,  1,  0,  1,  1,  1,  1 }, -  /* WBP_ALETTER */      {  1,  1,  0,  1,  1,  1,  0,  0,  1,  1,  1,  0 }, -  /* WBP_MIDNUMLET */    {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1 }, -  /* WBP_MIDLETTER */    {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1 }, -  /* WBP_MIDNUM */       {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1 }, -  /* WBP_NUMERIC */      {  1,  1,  0,  1,  1,  1,  0,  0,  1,  1,  1,  0 }, -  /* WBP_EXTENDNUMLET */ {  1,  0,  0,  1,  1,  1,  0,  0,  1,  1,  1,  0 }, -  /* WBP_RI */           {  1,  1,  1,  1,  1,  1,  1,  1,  0,  1,  1,  1 }, -  /* WBP_DQ */           {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1 }, -  /* WBP_SQ */           {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1 }, -  /* WBP_HL */           {  1,  1,  0,  1,  1,  1,  0,  0,  1,  1,  0,  0 } +  /* WBP_OTHER */        {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1 }, +  /* WBP_KATAKANA */     {  1,  0,  1,  1,  1,  1,  1,  0,  1,  1,  1,  1,  1,  1 }, +  /* WBP_ALETTER */      {  1,  1,  0,  1,  1,  1,  0,  0,  1,  1,  0,  1,  1,  1 }, +  /* WBP_MIDNUMLET */    {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1 }, +  /* WBP_MIDLETTER */    {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1 }, +  /* WBP_MIDNUM */       {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1 }, +  /* WBP_NUMERIC */      {  1,  1,  0,  1,  1,  1,  0,  0,  1,  1,  0,  1,  1,  1 }, +  /* WBP_EXTENDNUMLET */ {  1,  0,  0,  1,  1,  1,  0,  0,  1,  1,  0,  1,  1,  1 }, +  /* WBP_DQ */           {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1 }, +  /* WBP_SQ */           {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1 }, +  /* WBP_HL */           {  1,  1,  0,  1,  1,  1,  0,  0,  1,  0,  0,  1,  1,  1 }, +  /* WBP_EB */           {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  0,  1 }, +  /* WBP_EM */           {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1 }, +  /* WBP_EBG */          {  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  0,  1 }  }; diff --git a/lib/uniwbrk/wbrktable.h b/lib/uniwbrk/wbrktable.h index cf39bad1..f96ce68a 100644 --- a/lib/uniwbrk/wbrktable.h +++ b/lib/uniwbrk/wbrktable.h @@ -1,5 +1,5 @@  /* Word break auxiliary table. -   Copyright (C) 2009-2016 Free Software Foundation, Inc. +   Copyright (C) 2009-2017 Free Software Foundation, Inc.     Written by Bruno Haible <bruno@clisp.org>, 2009.     This program is free software: you can redistribute it and/or @@ -22,6 +22,7 @@     Lesser General Public License for more details.     You should have received a copy of the GNU Lesser General Public License -   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */ +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */ -extern const unsigned char uniwbrk_table[12][12]; +extern const int uniwbrk_prop_index[22]; +extern const unsigned char uniwbrk_table[14][14]; diff --git a/lib/uniwbrk/wordbreak-property.c b/lib/uniwbrk/wordbreak-property.c index 5587bbe2..fa8a9a82 100644 --- a/lib/uniwbrk/wordbreak-property.c +++ b/lib/uniwbrk/wordbreak-property.c @@ -1,5 +1,5 @@  /* Word break property. -   Copyright (C) 2001-2003, 2006-2016 Free Software Foundation, Inc. +   Copyright (C) 2001-2003, 2006-2017 Free Software Foundation, Inc.     Written by Bruno Haible <bruno@clisp.org>, 2009.     This program is free software: you can redistribute it and/or @@ -22,7 +22,7 @@     Lesser General Public License for more details.     You should have received a copy of the GNU Lesser General Public License -   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */ +   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */  #include <config.h> | 
