diff options
| author | Sam Varshavchik | 2020-07-10 06:57:02 -0400 |
|---|---|---|
| committer | Sam Varshavchik | 2020-07-12 15:56:45 -0400 |
| commit | 1983c1a71f9dfde6a02d7b3cc4af3209feb98ca6 (patch) | |
| tree | 7af545984ccf3164b13533150af2c4d9f006dacd | |
| parent | 7a9293cd28b293b793793368237d8856cfb0eff4 (diff) | |
| download | courier-libs-1983c1a71f9dfde6a02d7b3cc4af3209feb98ca6.tar.bz2 | |
API cleanup.
Cleanup to use naming consistent with the spec. Exposed the underlying
bidi character type.
| -rw-r--r-- | unicode/Makefile.am | 2 | ||||
| -rw-r--r-- | unicode/bidi_class.h | 4904 | ||||
| -rw-r--r-- | unicode/bidi_classnames.h | 46 | ||||
| -rw-r--r-- | unicode/biditest.C | 6 | ||||
| -rw-r--r-- | unicode/book.xml | 77 | ||||
| -rw-r--r-- | unicode/courier-unicode.h.in | 32 | ||||
| -rw-r--r-- | unicode/m4/courier-unicode.m4 | 6 | ||||
| -rw-r--r-- | unicode/mkbidiclass.pl | 4 | ||||
| -rw-r--r-- | unicode/mkbidiclassnames.pl | 6 | ||||
| -rw-r--r-- | unicode/unicode_bidi.c | 338 |
10 files changed, 2730 insertions, 2691 deletions
diff --git a/unicode/Makefile.am b/unicode/Makefile.am index 081965e..a3dad14 100644 --- a/unicode/Makefile.am +++ b/unicode/Makefile.am @@ -266,7 +266,7 @@ bidi_mirroring.h: BidiMirroring.txt mkbidi.pl mv bidi_mirroring.h.tmp bidi_mirroring.h bidi_classnames.h: unicode_bidi.c mkbidiclassnames.pl - @PERL@ $(srcdir)/mkbidiclassnames.pl <$(srcdir)/unicode_bidi.c >bidi_classnames.h.tmp + @PERL@ $(srcdir)/mkbidiclassnames.pl <$(srcdir)/courier-unicode.h.in >bidi_classnames.h.tmp mv bidi_classnames.h.tmp bidi_classnames.h endif diff --git a/unicode/bidi_class.h b/unicode/bidi_class.h index c5e68ba..767f2a9 100644 --- a/unicode/bidi_class.h +++ b/unicode/bidi_class.h @@ -2453,2458 +2453,2458 @@ static const uint8_t unicode_rangetab[][2]={ {0x10fffe & 0xFF, 0x10ffff & 0xFF}}; static const uint8_t unicode_classtab[]={ - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_S, - UNICODE_BIDI_CLASS_B, - UNICODE_BIDI_CLASS_S, - UNICODE_BIDI_CLASS_WS, - UNICODE_BIDI_CLASS_B, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_B, - UNICODE_BIDI_CLASS_S, - UNICODE_BIDI_CLASS_WS, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ES, - UNICODE_BIDI_CLASS_CS, - UNICODE_BIDI_CLASS_ES, - UNICODE_BIDI_CLASS_CS, - UNICODE_BIDI_CLASS_EN, - UNICODE_BIDI_CLASS_CS, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_B, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_CS, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_EN, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_EN, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_AN, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_CS, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_AN, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_AN, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_AN, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_EN, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_AN, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_WS, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_WS, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_WS, - UNICODE_BIDI_CLASS_B, - UNICODE_BIDI_CLASS_LRE, - UNICODE_BIDI_CLASS_RLE, - UNICODE_BIDI_CLASS_PDF, - UNICODE_BIDI_CLASS_LRO, - UNICODE_BIDI_CLASS_RLO, - UNICODE_BIDI_CLASS_CS, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_CS, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_WS, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_LRI, - UNICODE_BIDI_CLASS_RLI, - UNICODE_BIDI_CLASS_FSI, - UNICODE_BIDI_CLASS_PDI, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_EN, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_EN, - UNICODE_BIDI_CLASS_ES, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_EN, - UNICODE_BIDI_CLASS_ES, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ES, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_EN, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_WS, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_ES, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_CS, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_CS, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_CS, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ES, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ES, - UNICODE_BIDI_CLASS_CS, - UNICODE_BIDI_CLASS_ES, - UNICODE_BIDI_CLASS_CS, - UNICODE_BIDI_CLASS_EN, - UNICODE_BIDI_CLASS_CS, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_EN, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_AN, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_AN, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_EN, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_EN, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_EN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_BN}; + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_S, + UNICODE_BIDI_TYPE_B, + UNICODE_BIDI_TYPE_S, + UNICODE_BIDI_TYPE_WS, + UNICODE_BIDI_TYPE_B, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_B, + UNICODE_BIDI_TYPE_S, + UNICODE_BIDI_TYPE_WS, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ES, + UNICODE_BIDI_TYPE_CS, + UNICODE_BIDI_TYPE_ES, + UNICODE_BIDI_TYPE_CS, + UNICODE_BIDI_TYPE_EN, + UNICODE_BIDI_TYPE_CS, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_B, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_CS, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_EN, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_EN, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_AN, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_CS, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_AN, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_AN, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_AN, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_EN, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_AN, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_WS, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_WS, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_WS, + UNICODE_BIDI_TYPE_B, + UNICODE_BIDI_TYPE_LRE, + UNICODE_BIDI_TYPE_RLE, + UNICODE_BIDI_TYPE_PDF, + UNICODE_BIDI_TYPE_LRO, + UNICODE_BIDI_TYPE_RLO, + UNICODE_BIDI_TYPE_CS, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_CS, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_WS, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_LRI, + UNICODE_BIDI_TYPE_RLI, + UNICODE_BIDI_TYPE_FSI, + UNICODE_BIDI_TYPE_PDI, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_EN, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_EN, + UNICODE_BIDI_TYPE_ES, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_EN, + UNICODE_BIDI_TYPE_ES, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ES, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_EN, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_WS, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_ES, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_CS, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_CS, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_CS, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ES, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ES, + UNICODE_BIDI_TYPE_CS, + UNICODE_BIDI_TYPE_ES, + UNICODE_BIDI_TYPE_CS, + UNICODE_BIDI_TYPE_EN, + UNICODE_BIDI_TYPE_CS, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_EN, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_AN, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_AN, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_EN, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_EN, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_EN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_BN}; static const size_t unicode_indextab[]={ 0, diff --git a/unicode/bidi_classnames.h b/unicode/bidi_classnames.h index 61cf80b..8654f76 100644 --- a/unicode/bidi_classnames.h +++ b/unicode/bidi_classnames.h @@ -1,23 +1,23 @@ -{"AL", UNICODE_BIDI_CLASS_AL}, -{"AN", UNICODE_BIDI_CLASS_AN}, -{"B", UNICODE_BIDI_CLASS_B}, -{"BN", UNICODE_BIDI_CLASS_BN}, -{"CS", UNICODE_BIDI_CLASS_CS}, -{"EN", UNICODE_BIDI_CLASS_EN}, -{"ES", UNICODE_BIDI_CLASS_ES}, -{"ET", UNICODE_BIDI_CLASS_ET}, -{"FSI", UNICODE_BIDI_CLASS_FSI}, -{"L", UNICODE_BIDI_CLASS_L}, -{"LRE", UNICODE_BIDI_CLASS_LRE}, -{"LRI", UNICODE_BIDI_CLASS_LRI}, -{"LRO", UNICODE_BIDI_CLASS_LRO}, -{"NSM", UNICODE_BIDI_CLASS_NSM}, -{"ON", UNICODE_BIDI_CLASS_ON}, -{"PDF", UNICODE_BIDI_CLASS_PDF}, -{"PDI", UNICODE_BIDI_CLASS_PDI}, -{"R", UNICODE_BIDI_CLASS_R}, -{"RLE", UNICODE_BIDI_CLASS_RLE}, -{"RLI", UNICODE_BIDI_CLASS_RLI}, -{"RLO", UNICODE_BIDI_CLASS_RLO}, -{"S", UNICODE_BIDI_CLASS_S}, -{"WS", UNICODE_BIDI_CLASS_WS}, +{"AL", UNICODE_BIDI_TYPE_AL}, +{"AN", UNICODE_BIDI_TYPE_AN}, +{"B", UNICODE_BIDI_TYPE_B}, +{"BN", UNICODE_BIDI_TYPE_BN}, +{"CS", UNICODE_BIDI_TYPE_CS}, +{"EN", UNICODE_BIDI_TYPE_EN}, +{"ES", UNICODE_BIDI_TYPE_ES}, +{"ET", UNICODE_BIDI_TYPE_ET}, +{"FSI", UNICODE_BIDI_TYPE_FSI}, +{"L", UNICODE_BIDI_TYPE_L}, +{"LRE", UNICODE_BIDI_TYPE_LRE}, +{"LRI", UNICODE_BIDI_TYPE_LRI}, +{"LRO", UNICODE_BIDI_TYPE_LRO}, +{"NSM", UNICODE_BIDI_TYPE_NSM}, +{"ON", UNICODE_BIDI_TYPE_ON}, +{"PDF", UNICODE_BIDI_TYPE_PDF}, +{"PDI", UNICODE_BIDI_TYPE_PDI}, +{"R", UNICODE_BIDI_TYPE_R}, +{"RLE", UNICODE_BIDI_TYPE_RLE}, +{"RLI", UNICODE_BIDI_TYPE_RLI}, +{"RLO", UNICODE_BIDI_TYPE_RLO}, +{"S", UNICODE_BIDI_TYPE_S}, +{"WS", UNICODE_BIDI_TYPE_WS}, diff --git a/unicode/biditest.C b/unicode/biditest.C index 61841a1..6343866 100644 --- a/unicode/biditest.C +++ b/unicode/biditest.C @@ -352,14 +352,14 @@ extern "C" { static const struct { char classname[8]; - enum_bidi_class_t classenum; + enum_bidi_type_t classenum; } bidiclassnames[]={ #include "bidi_classnames.h" }; -const char *bidi_classname(enum_bidi_class_t classenum) +const char *bidi_classname(enum_bidi_type_t classenum) { for (const auto &cn:bidiclassnames) { @@ -375,7 +375,7 @@ static const char *lookup_classname(const std::string &s) abort(); } -enum_bidi_class_t fudge_unicode_bidi(size_t i) +enum_bidi_type_t fudge_unicode_bidi(size_t i) { if (i >= testcase.size()) { diff --git a/unicode/book.xml b/unicode/book.xml index ee4b5e5..64a0635 100644 --- a/unicode/book.xml +++ b/unicode/book.xml @@ -307,9 +307,9 @@ See COPYING for distribution information. <refsynopsisdiv> <funcsynopsis> <funcsynopsisinfo>#include <courier-unicode.h></funcsynopsisinfo> - <funcsynopsisinfo>unicode_bidi_level_t lr=UNICODE_BIDI_LR</funcsynopsisinfo> + <funcsynopsisinfo>unicode_bidi_level_t lr=UNICODE_BIDI_LR;</funcsynopsisinfo> <funcprototype> - <funcdef>void unicode_bidi_calc</funcdef> + <funcdef>void <function>unicode_bidi_calc</function></funcdef> <paramdef>const char32_t *<parameter>p</parameter></paramdef> <paramdef>size_t <parameter>n</parameter></paramdef> <paramdef>unicode_bidi_level_t *<parameter>levels</parameter></paramdef> @@ -317,7 +317,7 @@ See COPYING for distribution information. </funcprototype> <funcprototype> - <funcdef>void unicode_bidi_reorder</funcdef> + <funcdef>void <function>unicode_bidi_reorder</function></funcdef> <paramdef>char32_t *<parameter>string</parameter></paramdef> <paramdef>unicode_bidi_level_t *<parameter>levels</parameter></paramdef> <paramdef>size_t <parameter>n</parameter></paramdef> @@ -335,6 +335,11 @@ See COPYING for distribution information. <paramdef>char32_t <parameter>c</parameter></paramdef> <paramdef>unicode_bracket_type_t *<parameter>ret</parameter></paramdef> </funcprototype> + + <funcprototype> + <funcdef>enum_bidi_type_t <function>unicode_bidi_type</function></funcdef> + <paramdef>char32_t <parameter>c</parameter></paramdef> + </funcprototype> </funcsynopsis> </refsynopsisdiv> <refsect1> @@ -344,15 +349,17 @@ See COPYING for distribution information. <function>unicode_bidi_calc</function>() and <function>unicode_bidi_reorder</function>() implement the - <ulink url="https://www.unicode.org/reports/tr9/tr9-&tr9ver;.html"> Unicode Bi-directional algorithm</ulink>. + <ulink url="https://www.unicode.org/reports/tr9/tr9-&tr9ver;.html"> Unicode Bi-Directional algorithm</ulink>. </para> <para> The first two parameters to <function>unicode_bidi_calc</function>() are a unicode string and the number of characters in the Unicode string. <parameter>levels</parameter> points to a buffer of - <classname>unicode_bidi_level_t</classname> values which the - caller is responsible for allocating and deallocating, and has + <classname>unicode_bidi_level_t</classname> values. + The caller is responsible for allocating and deallocating this + buffer, of + size <parameter>n</parameter>, the same number of values as the number of characters in the Unicode string. </para> @@ -360,7 +367,7 @@ See COPYING for distribution information. <function>unicode_bidi_calc</function>() calculates the embedding level of each character and fills in the <parameter>levels</parameter> buffer (executes all steps of the - bidirectional algorithm up to step L1). + bidirectional algorithm up to, and including, step L1). A <literal>NULL</literal> <parameter>initial_embedding</parameter> value calculates the default paragraph embedding value. A pointer to a <literal>UNICODE_BIDI_LR</literal> or @@ -370,14 +377,15 @@ See COPYING for distribution information. <para> <function>unicode_bidi_calc</function>() calculates each - character's embedding value; an even value for left-to-right text - or an odd value for right-to-left text. A - <classname>UNICODE_BIDI_SKIP</classname> embedding level value - specifies a character whose embedding value is unspecified. - This is used for embedding and override markers which can be + character's directional embedding value: an even value for + left-to-right text or an odd value for right-to-left text. + Unicode characters with an unspecified directional embedding + value are specified by the + <classname>UNICODE_BIDI_SKIP</classname> embedding level value. + This indicates embedding and override markers, which can be removed from the string (together with this embedding value) from the string and the embedding value itself). This can be - done before or after <function>unicode_bidi_reorder</function>. + done before or after <function>unicode_bidi_reorder</function>(). </para> <refsect2> @@ -394,44 +402,53 @@ See COPYING for distribution information. <para> A non-<literal>NULL</literal> <parameter>reorder_callback</parameter> gets invoked to report - each reveversed character range. The callback's first parameter + each reversed character range. The callback's first parameter is the index of the first reversed character, the second parameter - is the number of reversed characters. + is the number of reversed characters, starting at the given + index of the Unicode string. The third parameter is the <parameter>arg</parameter> passthrough parameter. </para> <para> + <function>unicode_bidi_reorder</function> modifies its + <parameter>string</parameter> and <parameter>levels</parameter>. <parameter>reorder_callback</parameter> gets invoked after reversing each consecutive range of values in the <parameter>string</parameter> and <parameter>levels</parameter> - buffers. For example: <quote>reorder_callback(5, 2, arg)</quote> - reports that character indexes #5 and #6 got reverse in the - string. + buffers. For example: <quote>reorder_callback(5, 7, arg)</quote> + reports that character indexes #5 through #11 got reversed. </para> <para> - Specifying a NULL <parameter>string</parameter> leaves the + A NULL <parameter>string</parameter> pointer leaves the <parameter>levels</parameter> buffer unchanged, but still invokes the <parameter>reorder_callback</parameter> as if - the character string, and their values, were reversed. + the character string, and their embedding values, were reversed. </para> </refsect2> <refsect2> <title>Miscellaneous utility functions</title> <para> + <function>unicode_bidi_type</function> + looks up each character's bidirectional character type. + </para> + <para> <function>unicode_bidi_mirror</function> returns the glyph that's a mirror image of the parameter (i.e. an open parenthesis for a close parenthesis, and vice - versa); or the same value if there is no mirror image. + versa); or the same value if there is no mirror image + (this is the <literal>Bidi_Mirrored=Yes</literal> property). </para> <para> <function>unicode_bidi_bracket_type</function> looks up each bracket character and returns its opposite, or the same value if the character is not a bracket that has an - opposing bracket character. + opposing bracket character + (this is the <literal>Bidi_Paired_Bracket_type</literal> + property). A non-NULL <parameter>ret</parameter> gets initialized to either <literal>UNICODE_BIDI_o</literal>, <literal>UNICODE_BIDI_c</literal> or @@ -2028,7 +2045,7 @@ See COPYING for distribution information. <funcprototype> <funcdef>std::vector<unicode_bidi_level_t> <function>unicode::bidi_calc</function></funcdef> <paramdef>const std::u32string &<parameter>string</parameter></paramdef> - <paramdef>unicode_bidi_level_t<parameter>embedding_level</parameter></paramdef> + <paramdef>unicode_bidi_level_t <parameter>embedding_level</parameter></paramdef> </funcprototype> </funcsynopsis> @@ -2036,7 +2053,7 @@ See COPYING for distribution information. <funcprototype> <funcdef>int <function>unicode::bidi_reorder</function></funcdef> <paramdef>std::u32string &<parameter>string</parameter></paramdef> - <paramdef>std::vector<unicode_bidi_level_t> &<parameter> embedding_level</parameter></paramdef> + <paramdef>std::vector<unicode_bidi_level_t> &<parameter>embedding_level</parameter></paramdef> <paramdef>const std::function<void (size_t, size_t)> &<parameter>reorder_callback</parameter></paramdef> </funcprototype> </funcsynopsis> @@ -2099,6 +2116,18 @@ See COPYING for distribution information. they get reordered. </para> </refsect1> + <refsect1> + <title>SEE ALSO</title> + <para> + <link linkend="courier-unicode"> + <citerefentry> + <refentrytitle>courier-unicode</refentrytitle> + <manvolnum>7</manvolnum></citerefentry></link>, + <link linkend="unicode_bidi"> + <citerefentry><refentrytitle>unicode_bidi</refentrytitle> + <manvolnum>3</manvolnum></citerefentry></link>. + </para> + </refsect1> </refentry> diff --git a/unicode/courier-unicode.h.in b/unicode/courier-unicode.h.in index b8c88f4..55a7152 100644 --- a/unicode/courier-unicode.h.in +++ b/unicode/courier-unicode.h.in @@ -557,6 +557,9 @@ size_t unicode_wbscan_end(unicode_wbscan_info_t i); ** unicode_bidi_bracket_type() returns the same character and ** UNICODE_BIDI_n if the given character does not have these properties. ** +** unicode_bidi_type() looks up the bidirectional character type of the +** given Unicode character. +** ** unicode_bidi_calc() implements the Unicode Bidirectional Algorithm up to ** step L1. ** @@ -613,6 +616,35 @@ extern void unicode_bidi_reorder(char32_t *p, void *), void *arg); +/* BIDI_TYPE_LIST */ +typedef enum { + UNICODE_BIDI_TYPE_AL, + UNICODE_BIDI_TYPE_AN, + UNICODE_BIDI_TYPE_B, + UNICODE_BIDI_TYPE_BN, + UNICODE_BIDI_TYPE_CS, + UNICODE_BIDI_TYPE_EN, + UNICODE_BIDI_TYPE_ES, + UNICODE_BIDI_TYPE_ET, + UNICODE_BIDI_TYPE_FSI, + UNICODE_BIDI_TYPE_L, + UNICODE_BIDI_TYPE_LRE, + UNICODE_BIDI_TYPE_LRI, + UNICODE_BIDI_TYPE_LRO, + UNICODE_BIDI_TYPE_NSM, + UNICODE_BIDI_TYPE_ON, + UNICODE_BIDI_TYPE_PDF, + UNICODE_BIDI_TYPE_PDI, + UNICODE_BIDI_TYPE_R, + UNICODE_BIDI_TYPE_RLE, + UNICODE_BIDI_TYPE_RLI, + UNICODE_BIDI_TYPE_RLO, + UNICODE_BIDI_TYPE_S, + UNICODE_BIDI_TYPE_WS, +} enum_bidi_type_t; + +extern enum_bidi_type_t unicode_bidi_type(char32_t c); + /* ** A buffer that holds unicode characters, and dynamically grows as needed. */ diff --git a/unicode/m4/courier-unicode.m4 b/unicode/m4/courier-unicode.m4 index 2ed55c9..349206c 100644 --- a/unicode/m4/courier-unicode.m4 +++ b/unicode/m4/courier-unicode.m4 @@ -61,13 +61,13 @@ AC_TRY_COMPILE([ #define COURIER_UNICODE_VERSION 0 #endif -#if COURIER_UNICODE_VERSION < 210 -#error "courier-unicode 2.1 library is required" +#if COURIER_UNICODE_VERSION < 220 +#error "courier-unicode 2.2 library is required" #endif ],[],[], AC_MSG_ERROR([ -ERROR: The Courier Unicode Library 2.1 header files appear not to be installed. +ERROR: The Courier Unicode Library 2.2 header files appear not to be installed. You may need to upgrade the library or install a separate development subpackage in addition to the main package.]) ) diff --git a/unicode/mkbidiclass.pl b/unicode/mkbidiclass.pl index 073dad3..5c902a7 100644 --- a/unicode/mkbidiclass.pl +++ b/unicode/mkbidiclass.pl @@ -45,10 +45,10 @@ while (defined($_=<F>)) grep { #if ($prevl + 1 < $$_[0]) #{ - # $obj->range($prevl+1, $$_[0]-1, "UNICODE_BIDI_CLASS_$$_[2]"); + # $obj->range($prevl+1, $$_[0]-1, "UNICODE_BIDI_TYPE_$$_[2]"); #} #$prevl = $$_[1]; - $obj->range($$_[0], $$_[1], "UNICODE_BIDI_CLASS_$$_[2]"); + $obj->range($$_[0], $$_[1], "UNICODE_BIDI_TYPE_$$_[2]"); } sort { $$a[0] <=> $$b[0] } @table; $obj->output; diff --git a/unicode/mkbidiclassnames.pl b/unicode/mkbidiclassnames.pl index d3324a9..0bb6d1e 100644 --- a/unicode/mkbidiclassnames.pl +++ b/unicode/mkbidiclassnames.pl @@ -5,7 +5,7 @@ use warnings; while (<>) { - last if m@^/\* BIDI_CLASS_LIST@; + last if m@^/\* BIDI_TYPE_LIST@; } while (<>) @@ -15,7 +15,7 @@ while (<>) next if /^\s*$/; next if m@/\*@; - die unless /UNICODE_BIDI_CLASS_(.*),/; + die unless /UNICODE_BIDI_TYPE_(.*),/; - print "{\"$1\", UNICODE_BIDI_CLASS_$1},\n"; + print "{\"$1\", UNICODE_BIDI_TYPE_$1},\n"; } diff --git a/unicode/unicode_bidi.c b/unicode/unicode_bidi.c index 9e7fcf4..da15966 100644 --- a/unicode/unicode_bidi.c +++ b/unicode/unicode_bidi.c @@ -86,38 +86,11 @@ char32_t unicode_bidi_bracket_type(char32_t c, return c; } -/* BIDI_CLASS_LIST */ -typedef enum { - UNICODE_BIDI_CLASS_AL, - UNICODE_BIDI_CLASS_AN, - UNICODE_BIDI_CLASS_B, - UNICODE_BIDI_CLASS_BN, - UNICODE_BIDI_CLASS_CS, - UNICODE_BIDI_CLASS_EN, - UNICODE_BIDI_CLASS_ES, - UNICODE_BIDI_CLASS_ET, - UNICODE_BIDI_CLASS_FSI, - UNICODE_BIDI_CLASS_L, - UNICODE_BIDI_CLASS_LRE, - UNICODE_BIDI_CLASS_LRI, - UNICODE_BIDI_CLASS_LRO, - UNICODE_BIDI_CLASS_NSM, - UNICODE_BIDI_CLASS_ON, - UNICODE_BIDI_CLASS_PDF, - UNICODE_BIDI_CLASS_PDI, - UNICODE_BIDI_CLASS_R, - UNICODE_BIDI_CLASS_RLE, - UNICODE_BIDI_CLASS_RLI, - UNICODE_BIDI_CLASS_RLO, - UNICODE_BIDI_CLASS_S, - UNICODE_BIDI_CLASS_WS, -} enum_bidi_class_t; - #include "bidi_class.h" #ifdef BIDI_DEBUG -enum_bidi_class_t fudge_unicode_bidi(size_t); -const char *bidi_classname(enum_bidi_class_t); +enum_bidi_type_t fudge_unicode_bidi(size_t); +const char *bidi_classname(enum_bidi_type_t); #endif #define max_depth 125 @@ -129,15 +102,15 @@ typedef enum { } directional_override_status_t; #define is_isolate_initiator(c) \ - ((c) == UNICODE_BIDI_CLASS_LRI || \ - (c) == UNICODE_BIDI_CLASS_RLI || \ - (c) == UNICODE_BIDI_CLASS_FSI) + ((c) == UNICODE_BIDI_TYPE_LRI || \ + (c) == UNICODE_BIDI_TYPE_RLI || \ + (c) == UNICODE_BIDI_TYPE_FSI) #define is_embedding_initiator(c) \ - ((c) == UNICODE_BIDI_CLASS_LRE || \ - (c) == UNICODE_BIDI_CLASS_RLE || \ - (c) == UNICODE_BIDI_CLASS_LRO || \ - (c) == UNICODE_BIDI_CLASS_RLO) + ((c) == UNICODE_BIDI_TYPE_LRE || \ + (c) == UNICODE_BIDI_TYPE_RLE || \ + (c) == UNICODE_BIDI_TYPE_LRO || \ + (c) == UNICODE_BIDI_TYPE_RLO) /* BD13 implementation */ @@ -199,7 +172,7 @@ struct isolating_run_sequence_s { struct level_runs runs; unicode_bidi_level_t embedding_level; /* This seq's embedding level */ - enum_bidi_class_t sos, eos; + enum_bidi_type_t sos, eos; }; /* An iterator for an isolating run sequence */ @@ -482,8 +455,8 @@ typedef struct { unicode_bidi_level_t paragraph_embedding_level; const char32_t *chars; - enum_bidi_class_t *classes; - enum_bidi_class_t *orig_classes; + enum_bidi_type_t *classes; + enum_bidi_type_t *orig_classes; unicode_bidi_level_t *levels; size_t size; int overflow_isolate_count; @@ -553,7 +526,7 @@ static void directional_status_stack_push } static unicode_bidi_level_t -compute_paragraph_embedding_level(const enum_bidi_class_t *p, +compute_paragraph_embedding_level(const enum_bidi_type_t *p, size_t i, size_t j) { unicode_bidi_level_t in_isolation=0; @@ -562,7 +535,7 @@ compute_paragraph_embedding_level(const enum_bidi_class_t *p, { if (is_isolate_initiator(p[i])) ++in_isolation; - else if (p[i] == UNICODE_BIDI_CLASS_PDI) + else if (p[i] == UNICODE_BIDI_TYPE_PDI) { if (in_isolation) --in_isolation; @@ -570,12 +543,12 @@ compute_paragraph_embedding_level(const enum_bidi_class_t *p, if (in_isolation == 0) { - if (p[i] == UNICODE_BIDI_CLASS_AL || - p[i] == UNICODE_BIDI_CLASS_R) + if (p[i] == UNICODE_BIDI_TYPE_AL || + p[i] == UNICODE_BIDI_TYPE_R) { return 1; } - if (p[i] == UNICODE_BIDI_CLASS_L) + if (p[i] == UNICODE_BIDI_TYPE_L) break; } } @@ -584,7 +557,7 @@ compute_paragraph_embedding_level(const enum_bidi_class_t *p, static directional_status_stack_t directional_status_stack_init(const char32_t *chars, - enum_bidi_class_t *classes, size_t n, + enum_bidi_type_t *classes, size_t n, unicode_bidi_level_t *levels, const unicode_bidi_level_t *initial_embedding_level) @@ -602,11 +575,11 @@ directional_status_stack_init(const char32_t *chars, if (n) { - classes=(enum_bidi_class_t *) - malloc(sizeof(enum_bidi_class_t)*n); + classes=(enum_bidi_type_t *) + malloc(sizeof(enum_bidi_type_t)*n); if (!classes) abort(); - memcpy(classes, stack->classes, sizeof(enum_bidi_class_t)*n); + memcpy(classes, stack->classes, sizeof(enum_bidi_type_t)*n); } else { @@ -650,10 +623,22 @@ static void directional_status_stack_deinit(directional_status_stack_t stack) static void unicode_bidi_b(const char32_t *p, size_t n, - enum_bidi_class_t *buf, + enum_bidi_type_t *buf, unicode_bidi_level_t *bufp, const unicode_bidi_level_t *initial_embedding_level); +enum_bidi_type_t unicode_bidi_type(char32_t c) +{ + return (enum_bidi_type_t) + unicode_tab_lookup(c, + unicode_indextab, + sizeof(unicode_indextab) + /sizeof(unicode_indextab[0]), + unicode_rangetab, + unicode_classtab, + UNICODE_BIDI_TYPE_L); +} + void unicode_bidi_calc(const char32_t *p, size_t n, unicode_bidi_level_t *bufp, const unicode_bidi_level_t *initial_embedding_level) { @@ -664,19 +649,12 @@ void unicode_bidi_calc(const char32_t *p, size_t n, unicode_bidi_level_t *bufp, ** process it. */ - enum_bidi_class_t *buf= - (enum_bidi_class_t *)malloc(n * sizeof(enum_bidi_class_t)); + enum_bidi_type_t *buf= + (enum_bidi_type_t *)malloc(n * sizeof(enum_bidi_type_t)); for (size_t i=0; i<n; ++i) { - buf[i]=(enum_bidi_class_t) - unicode_tab_lookup(p[i], - unicode_indextab, - sizeof(unicode_indextab) - /sizeof(unicode_indextab[0]), - unicode_rangetab, - unicode_classtab, - UNICODE_BIDI_CLASS_L); + buf[i]=unicode_bidi_type(p[i]); #ifdef UNICODE_BIDI_TEST UNICODE_BIDI_TEST(i); #endif @@ -695,7 +673,7 @@ static void unicode_bidi_cl(directional_status_stack_t stack); static void unicode_bidi_b(const char32_t *p, size_t n, - enum_bidi_class_t *buf, + enum_bidi_type_t *buf, unicode_bidi_level_t *bufp, const unicode_bidi_level_t *initial_embedding_level) { @@ -717,8 +695,8 @@ static void unicode_bidi_b(const char32_t *p, #define RESET_CLASS(p,stack) do { \ switch ((stack)->head->directional_override_status) { \ case do_neutral: break; \ - case do_left_to_right: (p)=UNICODE_BIDI_CLASS_L; break; \ - case do_right_to_left: (p)=UNICODE_BIDI_CLASS_R; break; \ + case do_left_to_right: (p)=UNICODE_BIDI_TYPE_L; break; \ + case do_right_to_left: (p)=UNICODE_BIDI_TYPE_R; break; \ } \ } while(0) @@ -732,8 +710,8 @@ void dump_sequence_info(directional_status_stack_t stack, struct isolating_run_sequence_s *seq) { fprintf(DEBUGDUMP, "Sequence: sos: %c, eos: %c:", - (seq->sos == UNICODE_BIDI_CLASS_L ? 'L':'R'), - (seq->eos == UNICODE_BIDI_CLASS_L ? 'L':'R')); + (seq->sos == UNICODE_BIDI_TYPE_L ? 'L':'R'), + (seq->eos == UNICODE_BIDI_TYPE_L ? 'L':'R')); for (size_t i=0; i<seq->runs.n_level_runs; ++i) { @@ -783,7 +761,7 @@ static void unicode_bidi_cl(directional_status_stack_t stack) ++embedding_level) switch (stack->classes[i]) { - case UNICODE_BIDI_CLASS_RLE: + case UNICODE_BIDI_TYPE_RLE: /* X2 */ NEXT_ODD_EMBEDDING_LEVEL; @@ -803,7 +781,7 @@ static void unicode_bidi_cl(directional_status_stack_t stack) } } break; - case UNICODE_BIDI_CLASS_LRE: + case UNICODE_BIDI_TYPE_LRE: /* X3 */ NEXT_EVEN_EMBEDDING_LEVEL; @@ -825,7 +803,7 @@ static void unicode_bidi_cl(directional_status_stack_t stack) } break; - case UNICODE_BIDI_CLASS_RLO: + case UNICODE_BIDI_TYPE_RLO: /* X4 */ NEXT_ODD_EMBEDDING_LEVEL; @@ -846,7 +824,7 @@ static void unicode_bidi_cl(directional_status_stack_t stack) } break; - case UNICODE_BIDI_CLASS_LRO: + case UNICODE_BIDI_TYPE_LRO: /* X5 */ NEXT_EVEN_EMBEDDING_LEVEL; @@ -870,9 +848,9 @@ static void unicode_bidi_cl(directional_status_stack_t stack) break; } - enum_bidi_class_t cur_class=stack->classes[i]; + enum_bidi_type_t cur_class=stack->classes[i]; - if (cur_class == UNICODE_BIDI_CLASS_FSI) { + if (cur_class == UNICODE_BIDI_TYPE_FSI) { /* X5c */ size_t j=i; @@ -883,7 +861,7 @@ static void unicode_bidi_cl(directional_status_stack_t stack) { if (is_isolate_initiator(stack->classes[j])) ++in_isolation; - else if (stack->classes[j] == UNICODE_BIDI_CLASS_PDI) + else if (stack->classes[j] == UNICODE_BIDI_TYPE_PDI) { if (--in_isolation == 0) break; @@ -892,12 +870,12 @@ static void unicode_bidi_cl(directional_status_stack_t stack) cur_class=compute_paragraph_embedding_level (stack->classes, i+1, j) == 1 - ? UNICODE_BIDI_CLASS_RLI - : UNICODE_BIDI_CLASS_LRI; + ? UNICODE_BIDI_TYPE_RLI + : UNICODE_BIDI_TYPE_LRI; } switch (cur_class) { - case UNICODE_BIDI_CLASS_RLI: + case UNICODE_BIDI_TYPE_RLI: /* X5a */ stack->levels[i]=stack->head->embedding_level; RESET_CLASS(stack->classes[i],stack); @@ -919,7 +897,7 @@ static void unicode_bidi_cl(directional_status_stack_t stack) } break; - case UNICODE_BIDI_CLASS_LRI: + case UNICODE_BIDI_TYPE_LRI: /* X5b */ stack->levels[i]=stack->head->embedding_level; RESET_CLASS(stack->classes[i],stack); @@ -946,17 +924,17 @@ static void unicode_bidi_cl(directional_status_stack_t stack) } switch (stack->orig_classes[i]) { - case UNICODE_BIDI_CLASS_BN: - case UNICODE_BIDI_CLASS_B: - case UNICODE_BIDI_CLASS_RLE: - case UNICODE_BIDI_CLASS_LRE: - case UNICODE_BIDI_CLASS_RLO: - case UNICODE_BIDI_CLASS_LRO: - case UNICODE_BIDI_CLASS_PDF: - case UNICODE_BIDI_CLASS_RLI: - case UNICODE_BIDI_CLASS_LRI: - case UNICODE_BIDI_CLASS_FSI: - case UNICODE_BIDI_CLASS_PDI: + case UNICODE_BIDI_TYPE_BN: + case UNICODE_BIDI_TYPE_B: + case UNICODE_BIDI_TYPE_RLE: + case UNICODE_BIDI_TYPE_LRE: + case UNICODE_BIDI_TYPE_RLO: + case UNICODE_BIDI_TYPE_LRO: + case UNICODE_BIDI_TYPE_PDF: + case UNICODE_BIDI_TYPE_RLI: + case UNICODE_BIDI_TYPE_LRI: + case UNICODE_BIDI_TYPE_FSI: + case UNICODE_BIDI_TYPE_PDI: break; default: /* X6 */ @@ -965,7 +943,7 @@ static void unicode_bidi_cl(directional_status_stack_t stack) break; } - if (stack->classes[i] == UNICODE_BIDI_CLASS_PDI) + if (stack->classes[i] == UNICODE_BIDI_TYPE_PDI) { /* X6a */ if (stack->overflow_isolate_count > 0) @@ -1011,7 +989,7 @@ static void unicode_bidi_cl(directional_status_stack_t stack) RESET_CLASS(stack->classes[i],stack); } - if (stack->classes[i] == UNICODE_BIDI_CLASS_PDF) + if (stack->classes[i] == UNICODE_BIDI_TYPE_PDF) { /* X7 */ @@ -1033,7 +1011,7 @@ static void unicode_bidi_cl(directional_status_stack_t stack) } } - if (stack->classes[i] == UNICODE_BIDI_CLASS_B) + if (stack->classes[i] == UNICODE_BIDI_TYPE_B) { /* X8 */ @@ -1044,12 +1022,12 @@ static void unicode_bidi_cl(directional_status_stack_t stack) /* X9 */ #define IS_X9(class) \ - ((class) == UNICODE_BIDI_CLASS_RLE || \ - (class) == UNICODE_BIDI_CLASS_LRE || \ - (class) == UNICODE_BIDI_CLASS_RLO || \ - (class) == UNICODE_BIDI_CLASS_LRO || \ - (class) == UNICODE_BIDI_CLASS_PDF || \ - (class) == UNICODE_BIDI_CLASS_BN) + ((class) == UNICODE_BIDI_TYPE_RLE || \ + (class) == UNICODE_BIDI_TYPE_LRE || \ + (class) == UNICODE_BIDI_TYPE_RLO || \ + (class) == UNICODE_BIDI_TYPE_LRO || \ + (class) == UNICODE_BIDI_TYPE_PDF || \ + (class) == UNICODE_BIDI_TYPE_BN) size_t next_pdi=0; struct isolating_run_sequence_s *current_irs=0; @@ -1128,7 +1106,7 @@ static void unicode_bidi_cl(directional_status_stack_t stack) for (struct isolating_run_sequence_s *p= stack->isolating_run_sequences.head; p; p=p->next) { - p->sos=p->eos=UNICODE_BIDI_CLASS_L; + p->sos=p->eos=UNICODE_BIDI_TYPE_L; irs_iterator beg_iter=irs_begin(p), end_iter=irs_end(p); @@ -1178,9 +1156,9 @@ static void unicode_bidi_cl(directional_status_stack_t stack) after=end; if (before & 1) - p->sos=UNICODE_BIDI_CLASS_R; + p->sos=UNICODE_BIDI_TYPE_R; if (after & 1) - p->eos=UNICODE_BIDI_CLASS_R; + p->eos=UNICODE_BIDI_TYPE_R; #ifdef BIDI_DEBUG @@ -1225,17 +1203,17 @@ static void unicode_bidi_cl(directional_status_stack_t stack) continue; switch (stack->orig_classes[i]) { - case UNICODE_BIDI_CLASS_WS: - case UNICODE_BIDI_CLASS_FSI: - case UNICODE_BIDI_CLASS_LRI: - case UNICODE_BIDI_CLASS_RLI: - case UNICODE_BIDI_CLASS_PDI: + case UNICODE_BIDI_TYPE_WS: + case UNICODE_BIDI_TYPE_FSI: + case UNICODE_BIDI_TYPE_LRI: + case UNICODE_BIDI_TYPE_RLI: + case UNICODE_BIDI_TYPE_PDI: if (seen_sb) stack->levels[i]= stack->paragraph_embedding_level; break; - case UNICODE_BIDI_CLASS_S: - case UNICODE_BIDI_CLASS_B: + case UNICODE_BIDI_TYPE_S: + case UNICODE_BIDI_TYPE_B: stack->levels[i]=stack->paragraph_embedding_level; seen_sb=1; break; @@ -1250,38 +1228,38 @@ static void unicode_bidi_w(directional_status_stack_t stack, struct isolating_run_sequence_s *seq) { irs_iterator iter=irs_begin(seq), end=irs_end(seq); - enum_bidi_class_t previous_type=seq->sos; + enum_bidi_type_t previous_type=seq->sos; - enum_bidi_class_t strong_type=UNICODE_BIDI_CLASS_R; + enum_bidi_type_t strong_type=UNICODE_BIDI_TYPE_R; while (irs_compare(&iter, &end)) { - if (stack->classes[iter.i] == UNICODE_BIDI_CLASS_NSM) + if (stack->classes[iter.i] == UNICODE_BIDI_TYPE_NSM) { /* W1 */ stack->classes[iter.i] = is_isolate_initiator(previous_type) || - previous_type == UNICODE_BIDI_CLASS_PDI - ? UNICODE_BIDI_CLASS_ON + previous_type == UNICODE_BIDI_TYPE_PDI + ? UNICODE_BIDI_TYPE_ON : previous_type; } /* W2 */ - if (stack->classes[iter.i] == UNICODE_BIDI_CLASS_EN && - strong_type == UNICODE_BIDI_CLASS_AL) + if (stack->classes[iter.i] == UNICODE_BIDI_TYPE_EN && + strong_type == UNICODE_BIDI_TYPE_AL) { - stack->classes[iter.i] = UNICODE_BIDI_CLASS_AN; + stack->classes[iter.i] = UNICODE_BIDI_TYPE_AN; } /* W2 */ previous_type=stack->classes[iter.i]; switch (previous_type) { - case UNICODE_BIDI_CLASS_R: - case UNICODE_BIDI_CLASS_L: - case UNICODE_BIDI_CLASS_AL: + case UNICODE_BIDI_TYPE_R: + case UNICODE_BIDI_TYPE_L: + case UNICODE_BIDI_TYPE_AL: strong_type=previous_type; break; default: @@ -1293,31 +1271,31 @@ static void unicode_bidi_w(directional_status_stack_t stack, iter=irs_begin(seq); - previous_type=UNICODE_BIDI_CLASS_L; + previous_type=UNICODE_BIDI_TYPE_L; int not_eol=irs_compare(&iter, &end); while (not_eol) { /* W3 */ - if (stack->classes[iter.i] == UNICODE_BIDI_CLASS_AL) - stack->classes[iter.i] = UNICODE_BIDI_CLASS_R; + if (stack->classes[iter.i] == UNICODE_BIDI_TYPE_AL) + stack->classes[iter.i] = UNICODE_BIDI_TYPE_R; /* W4 */ - enum_bidi_class_t this_type=stack->classes[iter.i]; + enum_bidi_type_t this_type=stack->classes[iter.i]; irs_incr(&iter); not_eol=irs_compare(&iter, &end); if (not_eol && ( - (this_type == UNICODE_BIDI_CLASS_ES && - previous_type == UNICODE_BIDI_CLASS_EN) + (this_type == UNICODE_BIDI_TYPE_ES && + previous_type == UNICODE_BIDI_TYPE_EN) || - (this_type == UNICODE_BIDI_CLASS_CS && - (previous_type == UNICODE_BIDI_CLASS_EN || - previous_type == UNICODE_BIDI_CLASS_AN) + (this_type == UNICODE_BIDI_TYPE_CS && + (previous_type == UNICODE_BIDI_TYPE_EN || + previous_type == UNICODE_BIDI_TYPE_AN) ) ) && stack->classes[iter.i] == previous_type) @@ -1337,11 +1315,11 @@ static void unicode_bidi_w(directional_status_stack_t stack, /* W5 */ - previous_type=UNICODE_BIDI_CLASS_L; /* Doesn't match any part of W5 */ + previous_type=UNICODE_BIDI_TYPE_L; /* Doesn't match any part of W5 */ while (irs_compare(&iter, &end)) { - if (stack->classes[iter.i] != UNICODE_BIDI_CLASS_ET) + if (stack->classes[iter.i] != UNICODE_BIDI_TYPE_ET) { previous_type=stack->classes[iter.i]; irs_incr(&iter); @@ -1349,9 +1327,9 @@ static void unicode_bidi_w(directional_status_stack_t stack, } /* ET after EN */ - if (previous_type == UNICODE_BIDI_CLASS_EN) + if (previous_type == UNICODE_BIDI_TYPE_EN) { - stack->classes[iter.i] = UNICODE_BIDI_CLASS_EN; + stack->classes[iter.i] = UNICODE_BIDI_TYPE_EN; irs_incr(&iter); continue; } @@ -1364,15 +1342,15 @@ static void unicode_bidi_w(directional_status_stack_t stack, { previous_type=stack->classes[iter.i]; - if (previous_type == UNICODE_BIDI_CLASS_ET) + if (previous_type == UNICODE_BIDI_TYPE_ET) continue; - if (previous_type == UNICODE_BIDI_CLASS_EN) + if (previous_type == UNICODE_BIDI_TYPE_EN) { while (irs_compare(&start, &iter)) { stack->classes[start.i]= - UNICODE_BIDI_CLASS_EN; + UNICODE_BIDI_TYPE_EN; irs_incr(&start); } } @@ -1386,11 +1364,11 @@ static void unicode_bidi_w(directional_status_stack_t stack, irs_compare(&iter, &end); irs_incr(&iter)) { switch (stack->classes[iter.i]) { - case UNICODE_BIDI_CLASS_ET: - case UNICODE_BIDI_CLASS_ES: - case UNICODE_BIDI_CLASS_CS: + case UNICODE_BIDI_TYPE_ET: + case UNICODE_BIDI_TYPE_ES: + case UNICODE_BIDI_TYPE_CS: /* W6 */ - stack->classes[iter.i]=UNICODE_BIDI_CLASS_ON; + stack->classes[iter.i]=UNICODE_BIDI_TYPE_ON; break; default: break; @@ -1405,12 +1383,12 @@ static void unicode_bidi_w(directional_status_stack_t stack, while (irs_compare(&iter, &end)) { switch (stack->classes[iter.i]) { - case UNICODE_BIDI_CLASS_L: - case UNICODE_BIDI_CLASS_R: + case UNICODE_BIDI_TYPE_L: + case UNICODE_BIDI_TYPE_R: previous_type=stack->classes[iter.i]; break; - case UNICODE_BIDI_CLASS_EN: - if (previous_type == UNICODE_BIDI_CLASS_L) + case UNICODE_BIDI_TYPE_EN: + if (previous_type == UNICODE_BIDI_TYPE_L) stack->classes[iter.i]=previous_type; break; default: @@ -1499,22 +1477,22 @@ static void unicode_bidi_n(directional_status_stack_t stack, ** we record these facts there. */ - enum_bidi_class_t eoclass=stack->classes[iter.i]; + enum_bidi_type_t eoclass=stack->classes[iter.i]; #define ADJUST_EOCLASS(eoclass) do { \ \ - if ((eoclass) == UNICODE_BIDI_CLASS_EN || \ - (eoclass) == UNICODE_BIDI_CLASS_AN) \ - (eoclass)=UNICODE_BIDI_CLASS_R; \ + if ((eoclass) == UNICODE_BIDI_TYPE_EN || \ + (eoclass) == UNICODE_BIDI_TYPE_AN) \ + (eoclass)=UNICODE_BIDI_TYPE_R; \ } while (0) ADJUST_EOCLASS(eoclass); #define E_CLASS (seq->embedding_level & 1 ? \ - UNICODE_BIDI_CLASS_R:UNICODE_BIDI_CLASS_L) + UNICODE_BIDI_TYPE_R:UNICODE_BIDI_TYPE_L) #define O_CLASS (seq->embedding_level & 1 ? \ - UNICODE_BIDI_CLASS_L:UNICODE_BIDI_CLASS_R) + UNICODE_BIDI_TYPE_L:UNICODE_BIDI_TYPE_R) if (eoclass == E_CLASS) { @@ -1543,12 +1521,12 @@ static void unicode_bidi_n(directional_status_stack_t stack, stack->classes[p->start.i]= stack->classes[p->end.i]= seq->embedding_level & 1 - ? UNICODE_BIDI_CLASS_R - : UNICODE_BIDI_CLASS_L; + ? UNICODE_BIDI_TYPE_R + : UNICODE_BIDI_TYPE_L; set=1; } else if (p->has_o) { - enum_bidi_class_t strong_type=seq->sos; + enum_bidi_type_t strong_type=seq->sos; iter=p->start; @@ -1556,14 +1534,14 @@ static void unicode_bidi_n(directional_status_stack_t stack, { irs_decr(&iter); - enum_bidi_class_t eoclass= + enum_bidi_type_t eoclass= stack->classes[iter.i]; ADJUST_EOCLASS(eoclass); switch (eoclass) { - case UNICODE_BIDI_CLASS_L: - case UNICODE_BIDI_CLASS_R: + case UNICODE_BIDI_TYPE_L: + case UNICODE_BIDI_TYPE_R: break; default: continue; @@ -1584,14 +1562,14 @@ static void unicode_bidi_n(directional_status_stack_t stack, if (set) { - enum_bidi_class_t strong_type= + enum_bidi_type_t strong_type= stack->classes[p->end.i]; while (irs_incr(&p->end), irs_compare(&p->end, &end)) { if (stack->orig_classes[p->end.i] != - UNICODE_BIDI_CLASS_NSM) + UNICODE_BIDI_TYPE_NSM) break; stack->classes[p->end.i]=strong_type; @@ -1604,16 +1582,16 @@ static void unicode_bidi_n(directional_status_stack_t stack, /* N1 */ #define IS_NI(class) \ - ((class) == UNICODE_BIDI_CLASS_B || \ - (class) == UNICODE_BIDI_CLASS_S || \ - (class) == UNICODE_BIDI_CLASS_WS || \ - (class) == UNICODE_BIDI_CLASS_ON || \ - (class) == UNICODE_BIDI_CLASS_FSI || \ - (class) == UNICODE_BIDI_CLASS_LRI || \ - (class) == UNICODE_BIDI_CLASS_RLI || \ - (class) == UNICODE_BIDI_CLASS_PDI) + ((class) == UNICODE_BIDI_TYPE_B || \ + (class) == UNICODE_BIDI_TYPE_S || \ + (class) == UNICODE_BIDI_TYPE_WS || \ + (class) == UNICODE_BIDI_TYPE_ON || \ + (class) == UNICODE_BIDI_TYPE_FSI || \ + (class) == UNICODE_BIDI_TYPE_LRI || \ + (class) == UNICODE_BIDI_TYPE_RLI || \ + (class) == UNICODE_BIDI_TYPE_PDI) - enum_bidi_class_t prev_type=seq->sos; + enum_bidi_type_t prev_type=seq->sos; for (iter=beg; irs_compare(&iter, &end); ) { @@ -1621,26 +1599,26 @@ static void unicode_bidi_n(directional_status_stack_t stack, ** N1 */ - enum_bidi_class_t this_type=stack->classes[iter.i]; + enum_bidi_type_t this_type=stack->classes[iter.i]; ADJUST_EOCLASS(this_type); if (!IS_NI(this_type)) { switch (this_type) { - case UNICODE_BIDI_CLASS_L: - case UNICODE_BIDI_CLASS_R: + case UNICODE_BIDI_TYPE_L: + case UNICODE_BIDI_TYPE_R: prev_type=this_type; break; default: - prev_type=UNICODE_BIDI_CLASS_ON; // Marker. + prev_type=UNICODE_BIDI_TYPE_ON; // Marker. break; } irs_incr(&iter); continue; } - enum_bidi_class_t next_type=seq->eos; + enum_bidi_type_t next_type=seq->eos; irs_iterator start=iter; @@ -1652,17 +1630,17 @@ static void unicode_bidi_n(directional_status_stack_t stack, continue; } - enum_bidi_class_t other_type=stack->classes[iter.i]; + enum_bidi_type_t other_type=stack->classes[iter.i]; ADJUST_EOCLASS(other_type); switch (other_type) { - case UNICODE_BIDI_CLASS_L: - case UNICODE_BIDI_CLASS_R: + case UNICODE_BIDI_TYPE_L: + case UNICODE_BIDI_TYPE_R: next_type=other_type; break; default: - next_type=UNICODE_BIDI_CLASS_BN; /* Marker */ + next_type=UNICODE_BIDI_TYPE_BN; /* Marker */ break; } break; @@ -1690,8 +1668,8 @@ static void unicode_bidi_n(directional_status_stack_t stack, { stack->classes[iter.i]= stack->levels[iter.i] & 1 ? - UNICODE_BIDI_CLASS_R : - UNICODE_BIDI_CLASS_L; /* N2 */ + UNICODE_BIDI_TYPE_R : + UNICODE_BIDI_TYPE_L; /* N2 */ } irs_incr(&iter); } @@ -1708,11 +1686,11 @@ static void unicode_bidi_n(directional_status_stack_t stack, if ((stack->levels[iter.i] & 1) == 0) { switch (stack->classes[iter.i]) { - case UNICODE_BIDI_CLASS_R: + case UNICODE_BIDI_TYPE_R: ++stack->levels[iter.i]; break; - case UNICODE_BIDI_CLASS_AN: - case UNICODE_BIDI_CLASS_EN: + case UNICODE_BIDI_TYPE_AN: + case UNICODE_BIDI_TYPE_EN: stack->levels[iter.i] += 2; break; default: break; @@ -1721,9 +1699,9 @@ static void unicode_bidi_n(directional_status_stack_t stack, else { switch (stack->classes[iter.i]) { - case UNICODE_BIDI_CLASS_L: - case UNICODE_BIDI_CLASS_AN: - case UNICODE_BIDI_CLASS_EN: + case UNICODE_BIDI_TYPE_L: + case UNICODE_BIDI_TYPE_AN: + case UNICODE_BIDI_TYPE_EN: ++stack->levels[iter.i]; break; default: break; |
